diff --git a/app.py b/app.py index e0b461b5ee34ef57fad93fc7014febfada2cd09f..b3b5abb3423a4ff5a50a580481ad0b4dfeb68d09 100644 --- a/app.py +++ b/app.py @@ -1,9 +1,9 @@ import os; os.environ['no_proxy'] = '*' # 避免代理网络产生意外污染 help_menu_description = \ -"""Github源代码开源和更新[地址🚀](https://github.com/binary-husky/gpt_academic), +"""Github源代码开源和更新[地址🚀](https://github.com/binary-husky/gpt_academic), 感谢热情的[开发者们❤️](https://github.com/binary-husky/gpt_academic/graphs/contributors). -常见问题请查阅[项目Wiki](https://github.com/binary-husky/gpt_academic/wiki), +常见问题请查阅[项目Wiki](https://github.com/binary-husky/gpt_academic/wiki), 如遇到Bug请前往[Bug反馈](https://github.com/binary-husky/gpt_academic/issues). 普通对话使用说明: 1. 输入问题; 2. 点击提交 基础功能区使用说明: 1. 输入文本; 2. 点击任意基础功能区按钮 @@ -15,27 +15,27 @@ help_menu_description = \ def main(): import subprocess, sys - subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'https://fastly.jsdelivr.net/gh/binary-husky/gradio-fix@gpt-academic/release/gradio-3.32.7-py3-none-any.whl']) + subprocess.check_call([sys.executable, '-m', 'pip', 'install', 'https://public.agent-matrix.com/publish/gradio-3.32.8-py3-none-any.whl']) import gradio as gr - if gr.__version__ not in ['3.32.6', '3.32.7']: + if gr.__version__ not in ['3.32.8']: raise ModuleNotFoundError("使用项目内置Gradio获取最优体验! 请运行 `pip install -r requirements.txt` 指令安装内置Gradio及其他依赖, 详情信息见requirements.txt.") from request_llms.bridge_all import predict from toolbox import format_io, find_free_port, on_file_uploaded, on_report_generated, get_conf, ArgsGeneralWrapper, load_chat_cookies, DummyWith # 建议您复制一个config_private.py放自己的秘密, 如API和代理网址 proxies, WEB_PORT, LLM_MODEL, CONCURRENT_COUNT, AUTHENTICATION = get_conf('proxies', 'WEB_PORT', 'LLM_MODEL', 'CONCURRENT_COUNT', 'AUTHENTICATION') CHATBOT_HEIGHT, LAYOUT, AVAIL_LLM_MODELS, AUTO_CLEAR_TXT = get_conf('CHATBOT_HEIGHT', 'LAYOUT', 'AVAIL_LLM_MODELS', 'AUTO_CLEAR_TXT') - ENABLE_AUDIO, AUTO_CLEAR_TXT, PATH_LOGGING, AVAIL_THEMES, THEME = get_conf('ENABLE_AUDIO', 'AUTO_CLEAR_TXT', 'PATH_LOGGING', 'AVAIL_THEMES', 'THEME') + ENABLE_AUDIO, AUTO_CLEAR_TXT, PATH_LOGGING, AVAIL_THEMES, THEME, ADD_WAIFU = get_conf('ENABLE_AUDIO', 'AUTO_CLEAR_TXT', 'PATH_LOGGING', 'AVAIL_THEMES', 'THEME', 'ADD_WAIFU') DARK_MODE, NUM_CUSTOM_BASIC_BTN, SSL_KEYFILE, SSL_CERTFILE = get_conf('DARK_MODE', 'NUM_CUSTOM_BASIC_BTN', 'SSL_KEYFILE', 'SSL_CERTFILE') INIT_SYS_PROMPT = get_conf('INIT_SYS_PROMPT') # 如果WEB_PORT是-1, 则随机选取WEB端口 PORT = find_free_port() if WEB_PORT <= 0 else WEB_PORT from check_proxy import get_current_version - from themes.theme import adjust_theme, advanced_css, theme_declaration - from themes.theme import js_code_for_css_changing, js_code_for_darkmode_init, js_code_for_toggle_darkmode, js_code_for_persistent_cookie_init + from themes.theme import adjust_theme, advanced_css, theme_declaration, js_code_clear, js_code_reset, js_code_show_or_hide, js_code_show_or_hide_group2 + from themes.theme import js_code_for_css_changing, js_code_for_toggle_darkmode, js_code_for_persistent_cookie_init from themes.theme import load_dynamic_theme, to_cookie_str, from_cookie_str, init_cookie title_html = f"
.*?)(?<=\n) # the code block
(?P=fence)[ ]*$ # closing fence
- '''),
- re.MULTILINE | re.DOTALL | re.VERBOSE
+ """
+ ),
+ re.MULTILINE | re.DOTALL | re.VERBOSE,
)
def get_line_range(re_match_obj, txt):
start_pos, end_pos = re_match_obj.regs[0]
- num_newlines_before = txt[:start_pos+1].count('\n')
+ num_newlines_before = txt[: start_pos + 1].count("\n")
line_start = num_newlines_before
- line_end = num_newlines_before + txt[start_pos:end_pos].count('\n')+1
+ line_end = num_newlines_before + txt[start_pos:end_pos].count("\n") + 1
return line_start, line_end
@@ -181,14 +174,16 @@ def fix_code_segment_indent(txt):
txt_tmp = txt
while True:
re_match_obj = FENCED_BLOCK_RE.search(txt_tmp)
- if not re_match_obj: break
- if len(lines) == 0: lines = txt.split("\n")
-
+ if not re_match_obj:
+ break
+ if len(lines) == 0:
+ lines = txt.split("\n")
+
# 清空 txt_tmp 对应的位置方便下次搜索
start_pos, end_pos = re_match_obj.regs[0]
- txt_tmp = txt_tmp[:start_pos] + ' '*(end_pos-start_pos) + txt_tmp[end_pos:]
+ txt_tmp = txt_tmp[:start_pos] + " " * (end_pos - start_pos) + txt_tmp[end_pos:]
line_start, line_end = get_line_range(re_match_obj, txt)
-
+
# 获取公共缩进
shared_indent_cnt = 1e5
for i in range(line_start, line_end):
@@ -202,26 +197,26 @@ def fix_code_segment_indent(txt):
num_spaces_should_be = math.ceil(shared_indent_cnt / 4) * 4
for i in range(line_start, line_end):
add_n = num_spaces_should_be - shared_indent_cnt
- lines[i] = ' ' * add_n + lines[i]
- if not change_any: # 遇到第一个
+ lines[i] = " " * add_n + lines[i]
+ if not change_any: # 遇到第一个
change_any = True
if change_any:
- return '\n'.join(lines)
+ return "\n".join(lines)
else:
return txt
-
-
-@lru_cache(maxsize=128) # 使用 lru缓存 加快转换速度
+
+
+@lru_cache(maxsize=128) # 使用 lru缓存 加快转换速度
def markdown_convertion(txt):
"""
将Markdown格式的文本转换为HTML格式。如果包含数学公式,则先将公式转换为HTML格式。
"""
pre = ''
- suf = ''
+ suf = ""
if txt.startswith(pre) and txt.endswith(suf):
# print('警告,输入了已经经过转化的字符串,二次转化可能出问题')
- return txt # 已经被转化过,不需要再次转化
+ return txt # 已经被转化过,不需要再次转化
find_equation_pattern = r'\n"""
+
+ # 添加Live2D
+ if ADD_WAIFU:
+ for jsf in [
+ "file=themes/waifu_plugin/jquery.min.js",
+ "file=themes/waifu_plugin/jquery-ui.min.js",
+ ]:
+ js += f"""\n"""
+ return js
\ No newline at end of file
diff --git a/themes/contrast.py b/themes/contrast.py
index 9a4b56fd7f07abd9d0fca1c7925398662817e4eb..1e98837755de43f0eb99b02dd4d344064ee600da 100644
--- a/themes/contrast.py
+++ b/themes/contrast.py
@@ -67,22 +67,9 @@ def adjust_theme():
button_cancel_text_color_dark="white",
)
- js = ""
- for jsf in [
- os.path.join(theme_dir, "common.js"),
- os.path.join(theme_dir, "mermaid.min.js"),
- os.path.join(theme_dir, "mermaid_loader.js"),
- ]:
- with open(jsf, "r", encoding="utf8") as f:
- js += f""
-
- # 添加一个萌萌的看板娘
- if ADD_WAIFU:
- js += """
-
-
-
- """
+ from themes.common import get_common_html_javascript_code
+ js = get_common_html_javascript_code()
+
if not hasattr(gr, "RawTemplateResponse"):
gr.RawTemplateResponse = gr.routes.templates.TemplateResponse
gradio_original_template_fn = gr.RawTemplateResponse
diff --git a/themes/default.py b/themes/default.py
index b8e943197033c29d6df8b45fd61fc55eda2ebb00..a65b0119f36b694c41abd06609eeeee96f958a21 100644
--- a/themes/default.py
+++ b/themes/default.py
@@ -67,22 +67,8 @@ def adjust_theme():
button_cancel_text_color_dark="white",
)
- js = ""
- for jsf in [
- os.path.join(theme_dir, "common.js"),
- os.path.join(theme_dir, "mermaid.min.js"),
- os.path.join(theme_dir, "mermaid_loader.js"),
- ]:
- with open(jsf, "r", encoding="utf8") as f:
- js += f""
-
- # 添加一个萌萌的看板娘
- if ADD_WAIFU:
- js += """
-
-
-
- """
+ from themes.common import get_common_html_javascript_code
+ js = get_common_html_javascript_code()
if not hasattr(gr, "RawTemplateResponse"):
gr.RawTemplateResponse = gr.routes.templates.TemplateResponse
gradio_original_template_fn = gr.RawTemplateResponse
diff --git a/themes/gradios.py b/themes/gradios.py
index 68f15df88dbd98f84251b7117316b51a50740f78..14d88a2996df118e4ac4a21717a4568df2d04226 100644
--- a/themes/gradios.py
+++ b/themes/gradios.py
@@ -31,23 +31,9 @@ def adjust_theme():
THEME = THEME.lstrip("huggingface-")
set_theme = set_theme.from_hub(THEME.lower())
- js = ""
- for jsf in [
- os.path.join(theme_dir, "common.js"),
- os.path.join(theme_dir, "mermaid.min.js"),
- os.path.join(theme_dir, "mermaid_loader.js"),
- ]:
- with open(jsf, "r", encoding="utf8") as f:
- js += f""
-
-
- # 添加一个萌萌的看板娘
- if ADD_WAIFU:
- js += """
-
-
-
- """
+ from themes.common import get_common_html_javascript_code
+ js = get_common_html_javascript_code()
+
if not hasattr(gr, "RawTemplateResponse"):
gr.RawTemplateResponse = gr.routes.templates.TemplateResponse
gradio_original_template_fn = gr.RawTemplateResponse
diff --git a/themes/green.py b/themes/green.py
index 84287417436274b83a09caeb6dc2c9c72b30badc..b16249a8e712b7387a3b5fcca332cf435bdaf1fb 100644
--- a/themes/green.py
+++ b/themes/green.py
@@ -76,22 +76,8 @@ def adjust_theme():
chatbot_code_background_color_dark="*neutral_950",
)
- js = ""
- for jsf in [
- os.path.join(theme_dir, "common.js"),
- os.path.join(theme_dir, "mermaid.min.js"),
- os.path.join(theme_dir, "mermaid_loader.js"),
- ]:
- with open(jsf, "r", encoding="utf8") as f:
- js += f""
-
- # 添加一个萌萌的看板娘
- if ADD_WAIFU:
- js += """
-
-
-
- """
+ from themes.common import get_common_html_javascript_code
+ js = get_common_html_javascript_code()
with open(os.path.join(theme_dir, "green.js"), "r", encoding="utf8") as f:
js += f""
diff --git a/themes/mermaid.min.js b/themes/mermaid.min.js
index 87df8091797d85c18867a1e49be8dd0860c0553a..b842822bd75fdc06508b732335864a2ffd66a418 100644
--- a/themes/mermaid.min.js
+++ b/themes/mermaid.min.js
@@ -1,1589 +1 @@
-(function(T2,G0){typeof exports=="object"&&typeof module<"u"?module.exports=G0():typeof define=="function"&&define.amd?define(G0):(T2=typeof globalThis<"u"?globalThis:T2||self,T2.mermaid=G0())})(this,function(){"use strict";var VPn=Object.defineProperty;var UPn=(T2,G0,Ar)=>G0 in T2?VPn(T2,G0,{enumerable:!0,configurable:!0,writable:!0,value:Ar}):T2[G0]=Ar;var CL=(T2,G0,Ar)=>(UPn(T2,typeof G0!="symbol"?G0+"":G0,Ar),Ar);function T2(r){for(var i=[],o=1;o>>0,l;for(l=0;l0)for(o=0;o=0;return(b?o?"+":"":"-")+Math.pow(10,Math.max(0,f)).toString().substr(1)+l}var Tie=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,az=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,Cie={},_T={};function Ki(r,i,o,l){var f=l;typeof l=="string"&&(f=function(){return this[l]()}),r&&(_T[r]=f),i&&(_T[i[0]]=function(){return Sm(f.apply(this,arguments),i[1],i[2])}),o&&(_T[o]=function(){return this.localeData().ordinal(f.apply(this,arguments),r)})}function $_t(r){return r.match(/\[[\s\S]/)?r.replace(/^\[|\]$/g,""):r.replace(/\\/g,"")}function H_t(r){var i=r.match(Tie),o,l;for(o=0,l=i.length;o=0&&az.test(r);)r=r.replace(az,l),az.lastIndex=0,o-=1;return r}var z_t={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"};function G_t(r){var i=this._longDateFormat[r],o=this._longDateFormat[r.toUpperCase()];return i||!o?i:(this._longDateFormat[r]=o.match(Tie).map(function(l){return l==="MMMM"||l==="MM"||l==="DD"||l==="dddd"?l.slice(1):l}).join(""),this._longDateFormat[r])}var V_t="Invalid date";function U_t(){return this._invalidDate}var q_t="%d",Y_t=/\d{1,2}/;function W_t(r){return this._ordinal.replace("%d",r)}var K_t={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function X_t(r,i,o,l){var f=this._relativeTime[o];return Cm(f)?f(r,i,o,l):f.replace(/%d/i,r)}function Q_t(r,i){var o=this._relativeTime[r>0?"future":"past"];return Cm(o)?o(i):o.replace(/%s/i,i)}var ML={};function nd(r,i){var o=r.toLowerCase();ML[o]=ML[o+"s"]=ML[i]=r}function S2(r){return typeof r=="string"?ML[r]||ML[r.toLowerCase()]:void 0}function Sie(r){var i={},o,l;for(l in r)Mo(r,l)&&(o=S2(l),o&&(i[o]=r[l]));return i}var r9e={};function rd(r,i){r9e[r]=i}function Z_t(r){var i=[],o;for(o in r)Mo(r,o)&&i.push({unit:o,priority:r9e[o]});return i.sort(function(l,f){return l.priority-f.priority}),i}function cz(r){return r%4===0&&r%100!==0||r%400===0}function A2(r){return r<0?Math.ceil(r)||0:Math.floor(r)}function Fa(r){var i=+r,o=0;return i!==0&&isFinite(i)&&(o=A2(i)),o}function TT(r,i){return function(o){return o!=null?(i9e(this,r,o),Ar.updateOffset(this,i),this):uz(this,r)}}function uz(r,i){return r.isValid()?r._d["get"+(r._isUTC?"UTC":"")+i]():NaN}function i9e(r,i,o){r.isValid()&&!isNaN(o)&&(i==="FullYear"&&cz(r.year())&&r.month()===1&&r.date()===29?(o=Fa(o),r._d["set"+(r._isUTC?"UTC":"")+i](o,r.month(),bz(o,r.month()))):r._d["set"+(r._isUTC?"UTC":"")+i](o))}function J_t(r){return r=S2(r),Cm(this[r])?this[r]():this}function eTt(r,i){if(typeof r=="object"){r=Sie(r);var o=Z_t(r),l,f=o.length;for(l=0;l68?1900:2e3)};var g9e=TT("FullYear",!0);function mTt(){return cz(this.year())}function yTt(r,i,o,l,f,b,d){var w;return r<100&&r>=0?(w=new Date(r+400,i,o,l,f,b,d),isFinite(w.getFullYear())&&w.setFullYear(r)):w=new Date(r,i,o,l,f,b,d),w}function OL(r){var i,o;return r<100&&r>=0?(o=Array.prototype.slice.call(arguments),o[0]=r+400,i=new Date(Date.UTC.apply(null,o)),isFinite(i.getUTCFullYear())&&i.setUTCFullYear(r)):i=new Date(Date.UTC.apply(null,arguments)),i}function vz(r,i,o){var l=7+i-o,f=(7+OL(r,0,l).getUTCDay()-i)%7;return-f+l-1}function p9e(r,i,o,l,f){var b=(7+o-l)%7,d=vz(r,l,f),w=1+7*(i-1)+b+d,y,k;return w<=0?(y=r-1,k=IL(y)+w):w>IL(r)?(y=r+1,k=w-IL(r)):(y=r,k=w),{year:y,dayOfYear:k}}function NL(r,i,o){var l=vz(r.year(),i,o),f=Math.floor((r.dayOfYear()-l-1)/7)+1,b,d;return f<1?(d=r.year()-1,b=f+N3(d,i,o)):f>N3(r.year(),i,o)?(b=f-N3(r.year(),i,o),d=r.year()+1):(d=r.year(),b=f),{week:b,year:d}}function N3(r,i,o){var l=vz(r,i,o),f=vz(r+1,i,o);return(IL(r)-l+f)/7}Ki("w",["ww",2],"wo","week"),Ki("W",["WW",2],"Wo","isoWeek"),nd("week","w"),nd("isoWeek","W"),rd("week",5),rd("isoWeek",5),ci("w",wu),ci("ww",wu,op),ci("W",wu),ci("WW",wu,op),LL(["w","ww","W","WW"],function(r,i,o,l){i[l.substr(0,1)]=Fa(r)});function kTt(r){return NL(r,this._week.dow,this._week.doy).week}var xTt={dow:0,doy:6};function ETt(){return this._week.dow}function _Tt(){return this._week.doy}function TTt(r){var i=this.localeData().week(this);return r==null?i:this.add((r-i)*7,"d")}function CTt(r){var i=NL(this,1,4).week;return r==null?i:this.add((r-i)*7,"d")}Ki("d",0,"do","day"),Ki("dd",0,0,function(r){return this.localeData().weekdaysMin(this,r)}),Ki("ddd",0,0,function(r){return this.localeData().weekdaysShort(this,r)}),Ki("dddd",0,0,function(r){return this.localeData().weekdays(this,r)}),Ki("e",0,0,"weekday"),Ki("E",0,0,"isoWeekday"),nd("day","d"),nd("weekday","e"),nd("isoWeekday","E"),rd("day",11),rd("weekday",11),rd("isoWeekday",11),ci("d",wu),ci("e",wu),ci("E",wu),ci("dd",function(r,i){return i.weekdaysMinRegex(r)}),ci("ddd",function(r,i){return i.weekdaysShortRegex(r)}),ci("dddd",function(r,i){return i.weekdaysRegex(r)}),LL(["dd","ddd","dddd"],function(r,i,o,l){var f=o._locale.weekdaysParse(r,l,o._strict);f!=null?i.d=f:ba(o).invalidWeekday=r}),LL(["d","e","E"],function(r,i,o,l){i[l]=Fa(r)});function STt(r,i){return typeof r!="string"?r:isNaN(r)?(r=i.weekdaysParse(r),typeof r=="number"?r:null):parseInt(r,10)}function ATt(r,i){return typeof r=="string"?i.weekdaysParse(r)%7||7:isNaN(r)?null:r}function Lie(r,i){return r.slice(i,7).concat(r.slice(0,i))}var MTt="Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),b9e="Sun_Mon_Tue_Wed_Thu_Fri_Sat".split("_"),DTt="Su_Mo_Tu_We_Th_Fr_Sa".split("_"),LTt=DL,ITt=DL,OTt=DL;function NTt(r,i){var o=mv(this._weekdays)?this._weekdays:this._weekdays[r&&r!==!0&&this._weekdays.isFormat.test(i)?"format":"standalone"];return r===!0?Lie(o,this._week.dow):r?o[r.day()]:o}function PTt(r){return r===!0?Lie(this._weekdaysShort,this._week.dow):r?this._weekdaysShort[r.day()]:this._weekdaysShort}function BTt(r){return r===!0?Lie(this._weekdaysMin,this._week.dow):r?this._weekdaysMin[r.day()]:this._weekdaysMin}function FTt(r,i,o){var l,f,b,d=r.toLocaleLowerCase();if(!this._weekdaysParse)for(this._weekdaysParse=[],this._shortWeekdaysParse=[],this._minWeekdaysParse=[],l=0;l<7;++l)b=Tm([2e3,1]).day(l),this._minWeekdaysParse[l]=this.weekdaysMin(b,"").toLocaleLowerCase(),this._shortWeekdaysParse[l]=this.weekdaysShort(b,"").toLocaleLowerCase(),this._weekdaysParse[l]=this.weekdays(b,"").toLocaleLowerCase();return o?i==="dddd"?(f=ih.call(this._weekdaysParse,d),f!==-1?f:null):i==="ddd"?(f=ih.call(this._shortWeekdaysParse,d),f!==-1?f:null):(f=ih.call(this._minWeekdaysParse,d),f!==-1?f:null):i==="dddd"?(f=ih.call(this._weekdaysParse,d),f!==-1||(f=ih.call(this._shortWeekdaysParse,d),f!==-1)?f:(f=ih.call(this._minWeekdaysParse,d),f!==-1?f:null)):i==="ddd"?(f=ih.call(this._shortWeekdaysParse,d),f!==-1||(f=ih.call(this._weekdaysParse,d),f!==-1)?f:(f=ih.call(this._minWeekdaysParse,d),f!==-1?f:null)):(f=ih.call(this._minWeekdaysParse,d),f!==-1||(f=ih.call(this._weekdaysParse,d),f!==-1)?f:(f=ih.call(this._shortWeekdaysParse,d),f!==-1?f:null))}function RTt(r,i,o){var l,f,b;if(this._weekdaysParseExact)return FTt.call(this,r,i,o);for(this._weekdaysParse||(this._weekdaysParse=[],this._minWeekdaysParse=[],this._shortWeekdaysParse=[],this._fullWeekdaysParse=[]),l=0;l<7;l++){if(f=Tm([2e3,1]).day(l),o&&!this._fullWeekdaysParse[l]&&(this._fullWeekdaysParse[l]=new RegExp("^"+this.weekdays(f,"").replace(".","\\.?")+"$","i"),this._shortWeekdaysParse[l]=new RegExp("^"+this.weekdaysShort(f,"").replace(".","\\.?")+"$","i"),this._minWeekdaysParse[l]=new RegExp("^"+this.weekdaysMin(f,"").replace(".","\\.?")+"$","i")),this._weekdaysParse[l]||(b="^"+this.weekdays(f,"")+"|^"+this.weekdaysShort(f,"")+"|^"+this.weekdaysMin(f,""),this._weekdaysParse[l]=new RegExp(b.replace(".",""),"i")),o&&i==="dddd"&&this._fullWeekdaysParse[l].test(r))return l;if(o&&i==="ddd"&&this._shortWeekdaysParse[l].test(r))return l;if(o&&i==="dd"&&this._minWeekdaysParse[l].test(r))return l;if(!o&&this._weekdaysParse[l].test(r))return l}}function jTt(r){if(!this.isValid())return r!=null?this:NaN;var i=this._isUTC?this._d.getUTCDay():this._d.getDay();return r!=null?(r=STt(r,this.localeData()),this.add(r-i,"d")):i}function $Tt(r){if(!this.isValid())return r!=null?this:NaN;var i=(this.day()+7-this.localeData()._week.dow)%7;return r==null?i:this.add(r-i,"d")}function HTt(r){if(!this.isValid())return r!=null?this:NaN;if(r!=null){var i=ATt(r,this.localeData());return this.day(this.day()%7?i:i-7)}else return this.day()||7}function zTt(r){return this._weekdaysParseExact?(Mo(this,"_weekdaysRegex")||Iie.call(this),r?this._weekdaysStrictRegex:this._weekdaysRegex):(Mo(this,"_weekdaysRegex")||(this._weekdaysRegex=LTt),this._weekdaysStrictRegex&&r?this._weekdaysStrictRegex:this._weekdaysRegex)}function GTt(r){return this._weekdaysParseExact?(Mo(this,"_weekdaysRegex")||Iie.call(this),r?this._weekdaysShortStrictRegex:this._weekdaysShortRegex):(Mo(this,"_weekdaysShortRegex")||(this._weekdaysShortRegex=ITt),this._weekdaysShortStrictRegex&&r?this._weekdaysShortStrictRegex:this._weekdaysShortRegex)}function VTt(r){return this._weekdaysParseExact?(Mo(this,"_weekdaysRegex")||Iie.call(this),r?this._weekdaysMinStrictRegex:this._weekdaysMinRegex):(Mo(this,"_weekdaysMinRegex")||(this._weekdaysMinRegex=OTt),this._weekdaysMinStrictRegex&&r?this._weekdaysMinStrictRegex:this._weekdaysMinRegex)}function Iie(){function r(E,T){return T.length-E.length}var i=[],o=[],l=[],f=[],b,d,w,y,k;for(b=0;b<7;b++)d=Tm([2e3,1]).day(b),w=cp(this.weekdaysMin(d,"")),y=cp(this.weekdaysShort(d,"")),k=cp(this.weekdays(d,"")),i.push(w),o.push(y),l.push(k),f.push(w),f.push(y),f.push(k);i.sort(r),o.sort(r),l.sort(r),f.sort(r),this._weekdaysRegex=new RegExp("^("+f.join("|")+")","i"),this._weekdaysShortRegex=this._weekdaysRegex,this._weekdaysMinRegex=this._weekdaysRegex,this._weekdaysStrictRegex=new RegExp("^("+l.join("|")+")","i"),this._weekdaysShortStrictRegex=new RegExp("^("+o.join("|")+")","i"),this._weekdaysMinStrictRegex=new RegExp("^("+i.join("|")+")","i")}function Oie(){return this.hours()%12||12}function UTt(){return this.hours()||24}Ki("H",["HH",2],0,"hour"),Ki("h",["hh",2],0,Oie),Ki("k",["kk",2],0,UTt),Ki("hmm",0,0,function(){return""+Oie.apply(this)+Sm(this.minutes(),2)}),Ki("hmmss",0,0,function(){return""+Oie.apply(this)+Sm(this.minutes(),2)+Sm(this.seconds(),2)}),Ki("Hmm",0,0,function(){return""+this.hours()+Sm(this.minutes(),2)}),Ki("Hmmss",0,0,function(){return""+this.hours()+Sm(this.minutes(),2)+Sm(this.seconds(),2)});function v9e(r,i){Ki(r,0,0,function(){return this.localeData().meridiem(this.hours(),this.minutes(),i)})}v9e("a",!0),v9e("A",!1),nd("hour","h"),rd("hour",13);function w9e(r,i){return i._meridiemParse}ci("a",w9e),ci("A",w9e),ci("H",wu),ci("h",wu),ci("k",wu),ci("HH",wu,op),ci("hh",wu,op),ci("kk",wu,op),ci("hmm",o9e),ci("hmmss",c9e),ci("Hmm",o9e),ci("Hmmss",c9e),Mc(["H","HH"],of),Mc(["k","kk"],function(r,i,o){var l=Fa(r);i[of]=l===24?0:l}),Mc(["a","A"],function(r,i,o){o._isPm=o._locale.isPM(r),o._meridiem=r}),Mc(["h","hh"],function(r,i,o){i[of]=Fa(r),ba(o).bigHour=!0}),Mc("hmm",function(r,i,o){var l=r.length-2;i[of]=Fa(r.substr(0,l)),i[kv]=Fa(r.substr(l)),ba(o).bigHour=!0}),Mc("hmmss",function(r,i,o){var l=r.length-4,f=r.length-2;i[of]=Fa(r.substr(0,l)),i[kv]=Fa(r.substr(l,2)),i[O3]=Fa(r.substr(f)),ba(o).bigHour=!0}),Mc("Hmm",function(r,i,o){var l=r.length-2;i[of]=Fa(r.substr(0,l)),i[kv]=Fa(r.substr(l))}),Mc("Hmmss",function(r,i,o){var l=r.length-4,f=r.length-2;i[of]=Fa(r.substr(0,l)),i[kv]=Fa(r.substr(l,2)),i[O3]=Fa(r.substr(f))});function qTt(r){return(r+"").toLowerCase().charAt(0)==="p"}var YTt=/[ap]\.?m?\.?/i,WTt=TT("Hours",!0);function KTt(r,i,o){return r>11?o?"pm":"PM":o?"am":"AM"}var m9e={calendar:R_t,longDateFormat:z_t,invalidDate:V_t,ordinal:q_t,dayOfMonthOrdinalParse:Y_t,relativeTime:K_t,months:uTt,monthsShort:u9e,week:xTt,weekdays:MTt,weekdaysMin:DTt,weekdaysShort:b9e,meridiemParse:YTt},Nu={},PL={},BL;function XTt(r,i){var o,l=Math.min(r.length,i.length);for(o=0;o0;){if(f=wz(b.slice(0,o).join("-")),f)return f;if(l&&l.length>=o&&XTt(b,l)>=o-1)break;o--}i++}return BL}function ZTt(r){return r.match("^[^/\\\\]*$")!=null}function wz(r){var i=null,o;if(Nu[r]===void 0&&typeof module<"u"&&module&&module.exports&&ZTt(r))try{i=BL._abbr,o=require,o("./locale/"+r),r6(i)}catch{Nu[r]=null}return Nu[r]}function r6(r,i){var o;return r&&(V0(i)?o=P3(r):o=Nie(r,i),o?BL=o:typeof console<"u"&&console.warn&&console.warn("Locale "+r+" not found. Did you forget to load it?")),BL._abbr}function Nie(r,i){if(i!==null){var o,l=m9e;if(i.abbr=r,Nu[r]!=null)t9e("defineLocaleOverride","use moment.updateLocale(localeName, config) to change an existing locale. moment.defineLocale(localeName, config) should only be used for creating a new locale See http://momentjs.com/guides/#/warnings/define-locale/ for more info."),l=Nu[r]._config;else if(i.parentLocale!=null)if(Nu[i.parentLocale]!=null)l=Nu[i.parentLocale]._config;else if(o=wz(i.parentLocale),o!=null)l=o._config;else return PL[i.parentLocale]||(PL[i.parentLocale]=[]),PL[i.parentLocale].push({name:r,config:i}),null;return Nu[r]=new Eie(xie(l,i)),PL[r]&&PL[r].forEach(function(f){Nie(f.name,f.config)}),r6(r),Nu[r]}else return delete Nu[r],null}function JTt(r,i){if(i!=null){var o,l,f=m9e;Nu[r]!=null&&Nu[r].parentLocale!=null?Nu[r].set(xie(Nu[r]._config,i)):(l=wz(r),l!=null&&(f=l._config),i=xie(f,i),l==null&&(i.abbr=r),o=new Eie(i),o.parentLocale=Nu[r],Nu[r]=o),r6(r)}else Nu[r]!=null&&(Nu[r].parentLocale!=null?(Nu[r]=Nu[r].parentLocale,r===r6()&&r6(r)):Nu[r]!=null&&delete Nu[r]);return Nu[r]}function P3(r){var i;if(r&&r._locale&&r._locale._abbr&&(r=r._locale._abbr),!r)return BL;if(!mv(r)){if(i=wz(r),i)return i;r=[r]}return QTt(r)}function eCt(){return _ie(Nu)}function Pie(r){var i,o=r._a;return o&&ba(r).overflow===-2&&(i=o[I3]<0||o[I3]>11?I3:o[Am]<1||o[Am]>bz(o[id],o[I3])?Am:o[of]<0||o[of]>24||o[of]===24&&(o[kv]!==0||o[O3]!==0||o[D8]!==0)?of:o[kv]<0||o[kv]>59?kv:o[O3]<0||o[O3]>59?O3:o[D8]<0||o[D8]>999?D8:-1,ba(r)._overflowDayOfYear&&(iAm)&&(i=Am),ba(r)._overflowWeeks&&i===-1&&(i=aTt),ba(r)._overflowWeekday&&i===-1&&(i=oTt),ba(r).overflow=i),r}var tCt=/^\s*((?:[+-]\d{6}|\d{4})-(?:\d\d-\d\d|W\d\d-\d|W\d\d|\d\d\d|\d\d))(?:(T| )(\d\d(?::\d\d(?::\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,nCt=/^\s*((?:[+-]\d{6}|\d{4})(?:\d\d\d\d|W\d\d\d|W\d\d|\d\d\d|\d\d|))(?:(T| )(\d\d(?:\d\d(?:\d\d(?:[.,]\d+)?)?)?)([+-]\d\d(?::?\d\d)?|\s*Z)?)?$/,rCt=/Z|[+-]\d\d(?::?\d\d)?/,mz=[["YYYYYY-MM-DD",/[+-]\d{6}-\d\d-\d\d/],["YYYY-MM-DD",/\d{4}-\d\d-\d\d/],["GGGG-[W]WW-E",/\d{4}-W\d\d-\d/],["GGGG-[W]WW",/\d{4}-W\d\d/,!1],["YYYY-DDD",/\d{4}-\d{3}/],["YYYY-MM",/\d{4}-\d\d/,!1],["YYYYYYMMDD",/[+-]\d{10}/],["YYYYMMDD",/\d{8}/],["GGGG[W]WWE",/\d{4}W\d{3}/],["GGGG[W]WW",/\d{4}W\d{2}/,!1],["YYYYDDD",/\d{7}/],["YYYYMM",/\d{6}/,!1],["YYYY",/\d{4}/,!1]],Bie=[["HH:mm:ss.SSSS",/\d\d:\d\d:\d\d\.\d+/],["HH:mm:ss,SSSS",/\d\d:\d\d:\d\d,\d+/],["HH:mm:ss",/\d\d:\d\d:\d\d/],["HH:mm",/\d\d:\d\d/],["HHmmss.SSSS",/\d\d\d\d\d\d\.\d+/],["HHmmss,SSSS",/\d\d\d\d\d\d,\d+/],["HHmmss",/\d\d\d\d\d\d/],["HHmm",/\d\d\d\d/],["HH",/\d\d/]],iCt=/^\/?Date\((-?\d+)/i,sCt=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),?\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|([+-]\d{4}))$/,aCt={UT:0,GMT:0,EDT:-4*60,EST:-5*60,CDT:-5*60,CST:-6*60,MDT:-6*60,MST:-7*60,PDT:-7*60,PST:-8*60};function k9e(r){var i,o,l=r._i,f=tCt.exec(l)||nCt.exec(l),b,d,w,y,k=mz.length,E=Bie.length;if(f){for(ba(r).iso=!0,i=0,o=k;iIL(d)||r._dayOfYear===0)&&(ba(r)._overflowDayOfYear=!0),o=OL(d,0,r._dayOfYear),r._a[I3]=o.getUTCMonth(),r._a[Am]=o.getUTCDate()),i=0;i<3&&r._a[i]==null;++i)r._a[i]=l[i]=f[i];for(;i<7;i++)r._a[i]=l[i]=r._a[i]==null?i===2?1:0:r._a[i];r._a[of]===24&&r._a[kv]===0&&r._a[O3]===0&&r._a[D8]===0&&(r._nextDay=!0,r._a[of]=0),r._d=(r._useUTC?OL:yTt).apply(null,l),b=r._useUTC?r._d.getUTCDay():r._d.getDay(),r._tzm!=null&&r._d.setUTCMinutes(r._d.getUTCMinutes()-r._tzm),r._nextDay&&(r._a[of]=24),r._w&&typeof r._w.d<"u"&&r._w.d!==b&&(ba(r).weekdayMismatch=!0)}}function gCt(r){var i,o,l,f,b,d,w,y,k;i=r._w,i.GG!=null||i.W!=null||i.E!=null?(b=1,d=4,o=ST(i.GG,r._a[id],NL(mu(),1,4).year),l=ST(i.W,1),f=ST(i.E,1),(f<1||f>7)&&(y=!0)):(b=r._locale._week.dow,d=r._locale._week.doy,k=NL(mu(),b,d),o=ST(i.gg,r._a[id],k.year),l=ST(i.w,k.week),i.d!=null?(f=i.d,(f<0||f>6)&&(y=!0)):i.e!=null?(f=i.e+b,(i.e<0||i.e>6)&&(y=!0)):f=b),l<1||l>N3(o,b,d)?ba(r)._overflowWeeks=!0:y!=null?ba(r)._overflowWeekday=!0:(w=p9e(o,l,f,b,d),r._a[id]=w.year,r._dayOfYear=w.dayOfYear)}Ar.ISO_8601=function(){},Ar.RFC_2822=function(){};function Rie(r){if(r._f===Ar.ISO_8601){k9e(r);return}if(r._f===Ar.RFC_2822){x9e(r);return}r._a=[],ba(r).empty=!0;var i=""+r._i,o,l,f,b,d,w=i.length,y=0,k,E;for(f=n9e(r._f,r._locale).match(Tie)||[],E=f.length,o=0;o0&&ba(r).unusedInput.push(d),i=i.slice(i.indexOf(l)+l.length),y+=l.length),_T[b]?(l?ba(r).empty=!1:ba(r).unusedTokens.push(b),sTt(b,l,r)):r._strict&&!l&&ba(r).unusedTokens.push(b);ba(r).charsLeftOver=w-y,i.length>0&&ba(r).unusedInput.push(i),r._a[of]<=12&&ba(r).bigHour===!0&&r._a[of]>0&&(ba(r).bigHour=void 0),ba(r).parsedDateParts=r._a.slice(0),ba(r).meridiem=r._meridiem,r._a[of]=pCt(r._locale,r._a[of],r._meridiem),k=ba(r).era,k!==null&&(r._a[id]=r._locale.erasConvertYear(k,r._a[id])),Fie(r),Pie(r)}function pCt(r,i,o){var l;return o==null?i:r.meridiemHour!=null?r.meridiemHour(i,o):(r.isPM!=null&&(l=r.isPM(o),l&&i<12&&(i+=12),!l&&i===12&&(i=0)),i)}function bCt(r){var i,o,l,f,b,d,w=!1,y=r._f.length;if(y===0){ba(r).invalidFormat=!0,r._d=new Date(NaN);return}for(f=0;fthis?this:r:sz()});function T9e(r,i){var o,l;if(i.length===1&&mv(i[0])&&(i=i[0]),!i.length)return mu();for(o=i[0],l=1;lthis.clone().month(0).utcOffset()||this.utcOffset()>this.clone().month(5).utcOffset()}function FCt(){if(!V0(this._isDSTShifted))return this._isDSTShifted;var r={},i;return kie(r,this),r=E9e(r),r._a?(i=r._isUTC?Tm(r._a):mu(r._a),this._isDSTShifted=this.isValid()&&ACt(r._a,i.toArray())>0):this._isDSTShifted=!1,this._isDSTShifted}function RCt(){return this.isValid()?!this._isUTC:!1}function jCt(){return this.isValid()?this._isUTC:!1}function S9e(){return this.isValid()?this._isUTC&&this._offset===0:!1}var $Ct=/^(-|\+)?(?:(\d*)[. ])?(\d+):(\d+)(?::(\d+)(\.\d*)?)?$/,HCt=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function xv(r,i){var o=r,l=null,f,b,d;return kz(r)?o={ms:r._milliseconds,d:r._days,M:r._months}:L3(r)||!isNaN(+r)?(o={},i?o[i]=+r:o.milliseconds=+r):(l=$Ct.exec(r))?(f=l[1]==="-"?-1:1,o={y:0,d:Fa(l[Am])*f,h:Fa(l[of])*f,m:Fa(l[kv])*f,s:Fa(l[O3])*f,ms:Fa(jie(l[D8]*1e3))*f}):(l=HCt.exec(r))?(f=l[1]==="-"?-1:1,o={y:L8(l[2],f),M:L8(l[3],f),w:L8(l[4],f),d:L8(l[5],f),h:L8(l[6],f),m:L8(l[7],f),s:L8(l[8],f)}):o==null?o={}:typeof o=="object"&&("from"in o||"to"in o)&&(d=zCt(mu(o.from),mu(o.to)),o={},o.ms=d.milliseconds,o.M=d.months),b=new yz(o),kz(r)&&Mo(r,"_locale")&&(b._locale=r._locale),kz(r)&&Mo(r,"_isValid")&&(b._isValid=r._isValid),b}xv.fn=yz.prototype,xv.invalid=SCt;function L8(r,i){var o=r&&parseFloat(r.replace(",","."));return(isNaN(o)?0:o)*i}function A9e(r,i){var o={};return o.months=i.month()-r.month()+(i.year()-r.year())*12,r.clone().add(o.months,"M").isAfter(i)&&--o.months,o.milliseconds=+i-+r.clone().add(o.months,"M"),o}function zCt(r,i){var o;return r.isValid()&&i.isValid()?(i=Hie(i,r),r.isBefore(i)?o=A9e(r,i):(o=A9e(i,r),o.milliseconds=-o.milliseconds,o.months=-o.months),o):{milliseconds:0,months:0}}function M9e(r,i){return function(o,l){var f,b;return l!==null&&!isNaN(+l)&&(t9e(i,"moment()."+i+"(period, number) is deprecated. Please use moment()."+i+"(number, period). See http://momentjs.com/guides/#/warnings/add-inverted-param/ for more info."),b=o,o=l,l=b),f=xv(o,l),D9e(this,f,r),this}}function D9e(r,i,o,l){var f=i._milliseconds,b=jie(i._days),d=jie(i._months);!r.isValid()||(l=l==null?!0:l,d&&h9e(r,uz(r,"Month")+d*o),b&&i9e(r,"Date",uz(r,"Date")+b*o),f&&r._d.setTime(r._d.valueOf()+f*o),l&&Ar.updateOffset(r,b||d))}var GCt=M9e(1,"add"),VCt=M9e(-1,"subtract");function L9e(r){return typeof r=="string"||r instanceof String}function UCt(r){return yv(r)||SL(r)||L9e(r)||L3(r)||YCt(r)||qCt(r)||r===null||r===void 0}function qCt(r){var i=M8(r)&&!vie(r),o=!1,l=["years","year","y","months","month","M","days","day","d","dates","date","D","hours","hour","h","minutes","minute","m","seconds","second","s","milliseconds","millisecond","ms"],f,b,d=l.length;for(f=0;fo.valueOf():o.valueOf()9999?oz(o,i?"YYYYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYYYY-MM-DD[T]HH:mm:ss.SSSZ"):Cm(Date.prototype.toISOString)?i?this.toDate().toISOString():new Date(this.valueOf()+this.utcOffset()*60*1e3).toISOString().replace("Z",oz(o,"Z")):oz(o,i?"YYYY-MM-DD[T]HH:mm:ss.SSS[Z]":"YYYY-MM-DD[T]HH:mm:ss.SSSZ")}function oSt(){if(!this.isValid())return"moment.invalid(/* "+this._i+" */)";var r="moment",i="",o,l,f,b;return this.isLocal()||(r=this.utcOffset()===0?"moment.utc":"moment.parseZone",i="Z"),o="["+r+'("]',l=0<=this.year()&&this.year()<=9999?"YYYY":"YYYYYY",f="-MM-DD[T]HH:mm:ss.SSS",b=i+'[")]',this.format(o+l+f+b)}function cSt(r){r||(r=this.isUtc()?Ar.defaultFormatUtc:Ar.defaultFormat);var i=oz(this,r);return this.localeData().postformat(i)}function uSt(r,i){return this.isValid()&&(yv(r)&&r.isValid()||mu(r).isValid())?xv({to:this,from:r}).locale(this.locale()).humanize(!i):this.localeData().invalidDate()}function lSt(r){return this.from(mu(),r)}function hSt(r,i){return this.isValid()&&(yv(r)&&r.isValid()||mu(r).isValid())?xv({from:this,to:r}).locale(this.locale()).humanize(!i):this.localeData().invalidDate()}function fSt(r){return this.to(mu(),r)}function I9e(r){var i;return r===void 0?this._locale._abbr:(i=P3(r),i!=null&&(this._locale=i),this)}var O9e=C2("moment().lang() is deprecated. Instead, use moment().localeData() to get the language configuration. Use moment().locale() to change languages.",function(r){return r===void 0?this.localeData():this.locale(r)});function N9e(){return this._locale}var Ez=1e3,AT=60*Ez,_z=60*AT,P9e=(365*400+97)*24*_z;function MT(r,i){return(r%i+i)%i}function B9e(r,i,o){return r<100&&r>=0?new Date(r+400,i,o)-P9e:new Date(r,i,o).valueOf()}function F9e(r,i,o){return r<100&&r>=0?Date.UTC(r+400,i,o)-P9e:Date.UTC(r,i,o)}function dSt(r){var i,o;if(r=S2(r),r===void 0||r==="millisecond"||!this.isValid())return this;switch(o=this._isUTC?F9e:B9e,r){case"year":i=o(this.year(),0,1);break;case"quarter":i=o(this.year(),this.month()-this.month()%3,1);break;case"month":i=o(this.year(),this.month(),1);break;case"week":i=o(this.year(),this.month(),this.date()-this.weekday());break;case"isoWeek":i=o(this.year(),this.month(),this.date()-(this.isoWeekday()-1));break;case"day":case"date":i=o(this.year(),this.month(),this.date());break;case"hour":i=this._d.valueOf(),i-=MT(i+(this._isUTC?0:this.utcOffset()*AT),_z);break;case"minute":i=this._d.valueOf(),i-=MT(i,AT);break;case"second":i=this._d.valueOf(),i-=MT(i,Ez);break}return this._d.setTime(i),Ar.updateOffset(this,!0),this}function gSt(r){var i,o;if(r=S2(r),r===void 0||r==="millisecond"||!this.isValid())return this;switch(o=this._isUTC?F9e:B9e,r){case"year":i=o(this.year()+1,0,1)-1;break;case"quarter":i=o(this.year(),this.month()-this.month()%3+3,1)-1;break;case"month":i=o(this.year(),this.month()+1,1)-1;break;case"week":i=o(this.year(),this.month(),this.date()-this.weekday()+7)-1;break;case"isoWeek":i=o(this.year(),this.month(),this.date()-(this.isoWeekday()-1)+7)-1;break;case"day":case"date":i=o(this.year(),this.month(),this.date()+1)-1;break;case"hour":i=this._d.valueOf(),i+=_z-MT(i+(this._isUTC?0:this.utcOffset()*AT),_z)-1;break;case"minute":i=this._d.valueOf(),i+=AT-MT(i,AT)-1;break;case"second":i=this._d.valueOf(),i+=Ez-MT(i,Ez)-1;break}return this._d.setTime(i),Ar.updateOffset(this,!0),this}function pSt(){return this._d.valueOf()-(this._offset||0)*6e4}function bSt(){return Math.floor(this.valueOf()/1e3)}function vSt(){return new Date(this.valueOf())}function wSt(){var r=this;return[r.year(),r.month(),r.date(),r.hour(),r.minute(),r.second(),r.millisecond()]}function mSt(){var r=this;return{years:r.year(),months:r.month(),date:r.date(),hours:r.hours(),minutes:r.minutes(),seconds:r.seconds(),milliseconds:r.milliseconds()}}function ySt(){return this.isValid()?this.toISOString():null}function kSt(){return mie(this)}function xSt(){return n6({},ba(this))}function ESt(){return ba(this).overflow}function _St(){return{input:this._i,format:this._f,locale:this._locale,isUTC:this._isUTC,strict:this._strict}}Ki("N",0,0,"eraAbbr"),Ki("NN",0,0,"eraAbbr"),Ki("NNN",0,0,"eraAbbr"),Ki("NNNN",0,0,"eraName"),Ki("NNNNN",0,0,"eraNarrow"),Ki("y",["y",1],"yo","eraYear"),Ki("y",["yy",2],0,"eraYear"),Ki("y",["yyy",3],0,"eraYear"),Ki("y",["yyyy",4],0,"eraYear"),ci("N",Gie),ci("NN",Gie),ci("NNN",Gie),ci("NNNN",PSt),ci("NNNNN",BSt),Mc(["N","NN","NNN","NNNN","NNNNN"],function(r,i,o,l){var f=o._locale.erasParse(r,l,o._strict);f?ba(o).era=f:ba(o).invalidEra=r}),ci("y",CT),ci("yy",CT),ci("yyy",CT),ci("yyyy",CT),ci("yo",FSt),Mc(["y","yy","yyy","yyyy"],id),Mc(["yo"],function(r,i,o,l){var f;o._locale._eraYearOrdinalRegex&&(f=r.match(o._locale._eraYearOrdinalRegex)),o._locale.eraYearOrdinalParse?i[id]=o._locale.eraYearOrdinalParse(r,f):i[id]=parseInt(r,10)});function TSt(r,i){var o,l,f,b=this._eras||P3("en")._eras;for(o=0,l=b.length;o=0)return b[l]}function SSt(r,i){var o=r.since<=r.until?1:-1;return i===void 0?Ar(r.since).year():Ar(r.since).year()+(i-r.offset)*o}function ASt(){var r,i,o,l=this.localeData().eras();for(r=0,i=l.length;rb&&(i=b),VSt.call(this,r,i,o,l,f))}function VSt(r,i,o,l,f){var b=p9e(r,i,o,l,f),d=OL(b.year,0,b.dayOfYear);return this.year(d.getUTCFullYear()),this.month(d.getUTCMonth()),this.date(d.getUTCDate()),this}Ki("Q",0,"Qo","quarter"),nd("quarter","Q"),rd("quarter",7),ci("Q",s9e),Mc("Q",function(r,i){i[I3]=(Fa(r)-1)*3});function USt(r){return r==null?Math.ceil((this.month()+1)/3):this.month((r-1)*3+this.month()%3)}Ki("D",["DD",2],"Do","date"),nd("date","D"),rd("date",9),ci("D",wu),ci("DD",wu,op),ci("Do",function(r,i){return r?i._dayOfMonthOrdinalParse||i._ordinalParse:i._dayOfMonthOrdinalParseLenient}),Mc(["D","DD"],Am),Mc("Do",function(r,i){i[Am]=Fa(r.match(wu)[0])});var j9e=TT("Date",!0);Ki("DDD",["DDDD",3],"DDDo","dayOfYear"),nd("dayOfYear","DDD"),rd("dayOfYear",4),ci("DDD",hz),ci("DDDD",a9e),Mc(["DDD","DDDD"],function(r,i,o){o._dayOfYear=Fa(r)});function qSt(r){var i=Math.round((this.clone().startOf("day")-this.clone().startOf("year"))/864e5)+1;return r==null?i:this.add(r-i,"d")}Ki("m",["mm",2],0,"minute"),nd("minute","m"),rd("minute",14),ci("m",wu),ci("mm",wu,op),Mc(["m","mm"],kv);var YSt=TT("Minutes",!1);Ki("s",["ss",2],0,"second"),nd("second","s"),rd("second",15),ci("s",wu),ci("ss",wu,op),Mc(["s","ss"],O3);var WSt=TT("Seconds",!1);Ki("S",0,0,function(){return~~(this.millisecond()/100)}),Ki(0,["SS",2],0,function(){return~~(this.millisecond()/10)}),Ki(0,["SSS",3],0,"millisecond"),Ki(0,["SSSS",4],0,function(){return this.millisecond()*10}),Ki(0,["SSSSS",5],0,function(){return this.millisecond()*100}),Ki(0,["SSSSSS",6],0,function(){return this.millisecond()*1e3}),Ki(0,["SSSSSSS",7],0,function(){return this.millisecond()*1e4}),Ki(0,["SSSSSSSS",8],0,function(){return this.millisecond()*1e5}),Ki(0,["SSSSSSSSS",9],0,function(){return this.millisecond()*1e6}),nd("millisecond","ms"),rd("millisecond",16),ci("S",hz,s9e),ci("SS",hz,op),ci("SSS",hz,a9e);var i6,$9e;for(i6="SSSS";i6.length<=9;i6+="S")ci(i6,CT);function KSt(r,i){i[D8]=Fa(("0."+r)*1e3)}for(i6="S";i6.length<=9;i6+="S")Mc(i6,KSt);$9e=TT("Milliseconds",!1),Ki("z",0,0,"zoneAbbr"),Ki("zz",0,0,"zoneName");function XSt(){return this._isUTC?"UTC":""}function QSt(){return this._isUTC?"Coordinated Universal Time":""}var xr=AL.prototype;xr.add=GCt,xr.calendar=XCt,xr.clone=QCt,xr.diff=iSt,xr.endOf=gSt,xr.format=cSt,xr.from=uSt,xr.fromNow=lSt,xr.to=hSt,xr.toNow=fSt,xr.get=J_t,xr.invalidAt=ESt,xr.isAfter=ZCt,xr.isBefore=JCt,xr.isBetween=eSt,xr.isSame=tSt,xr.isSameOrAfter=nSt,xr.isSameOrBefore=rSt,xr.isValid=kSt,xr.lang=O9e,xr.locale=I9e,xr.localeData=N9e,xr.max=kCt,xr.min=yCt,xr.parsingFlags=xSt,xr.set=eTt,xr.startOf=dSt,xr.subtract=VCt,xr.toArray=wSt,xr.toObject=mSt,xr.toDate=vSt,xr.toISOString=aSt,xr.inspect=oSt,typeof Symbol<"u"&&Symbol.for!=null&&(xr[Symbol.for("nodejs.util.inspect.custom")]=function(){return"Moment<"+this.format()+">"}),xr.toJSON=ySt,xr.toString=sSt,xr.unix=bSt,xr.valueOf=pSt,xr.creationData=_St,xr.eraName=ASt,xr.eraNarrow=MSt,xr.eraAbbr=DSt,xr.eraYear=LSt,xr.year=g9e,xr.isLeapYear=mTt,xr.weekYear=RSt,xr.isoWeekYear=jSt,xr.quarter=xr.quarters=USt,xr.month=f9e,xr.daysInMonth=bTt,xr.week=xr.weeks=TTt,xr.isoWeek=xr.isoWeeks=CTt,xr.weeksInYear=zSt,xr.weeksInWeekYear=GSt,xr.isoWeeksInYear=$St,xr.isoWeeksInISOWeekYear=HSt,xr.date=j9e,xr.day=xr.days=jTt,xr.weekday=$Tt,xr.isoWeekday=HTt,xr.dayOfYear=qSt,xr.hour=xr.hours=WTt,xr.minute=xr.minutes=YSt,xr.second=xr.seconds=WSt,xr.millisecond=xr.milliseconds=$9e,xr.utcOffset=DCt,xr.utc=ICt,xr.local=OCt,xr.parseZone=NCt,xr.hasAlignedHourOffset=PCt,xr.isDST=BCt,xr.isLocal=RCt,xr.isUtcOffset=jCt,xr.isUtc=S9e,xr.isUTC=S9e,xr.zoneAbbr=XSt,xr.zoneName=QSt,xr.dates=C2("dates accessor is deprecated. Use date instead.",j9e),xr.months=C2("months accessor is deprecated. Use month instead",f9e),xr.years=C2("years accessor is deprecated. Use year instead",g9e),xr.zone=C2("moment().zone is deprecated, use moment().utcOffset instead. http://momentjs.com/guides/#/warnings/zone/",LCt),xr.isDSTShifted=C2("isDSTShifted is deprecated. See http://momentjs.com/guides/#/warnings/dst-shifted/ for more information",FCt);function ZSt(r){return mu(r*1e3)}function JSt(){return mu.apply(null,arguments).parseZone()}function H9e(r){return r}var Do=Eie.prototype;Do.calendar=j_t,Do.longDateFormat=G_t,Do.invalidDate=U_t,Do.ordinal=W_t,Do.preparse=H9e,Do.postformat=H9e,Do.relativeTime=X_t,Do.pastFuture=Q_t,Do.set=F_t,Do.eras=TSt,Do.erasParse=CSt,Do.erasConvertYear=SSt,Do.erasAbbrRegex=OSt,Do.erasNameRegex=ISt,Do.erasNarrowRegex=NSt,Do.months=fTt,Do.monthsShort=dTt,Do.monthsParse=pTt,Do.monthsRegex=wTt,Do.monthsShortRegex=vTt,Do.week=kTt,Do.firstDayOfYear=_Tt,Do.firstDayOfWeek=ETt,Do.weekdays=NTt,Do.weekdaysMin=BTt,Do.weekdaysShort=PTt,Do.weekdaysParse=RTt,Do.weekdaysRegex=zTt,Do.weekdaysShortRegex=GTt,Do.weekdaysMinRegex=VTt,Do.isPM=qTt,Do.meridiem=KTt;function Cz(r,i,o,l){var f=P3(),b=Tm().set(l,i);return f[o](b,r)}function z9e(r,i,o){if(L3(r)&&(i=r,r=void 0),r=r||"",i!=null)return Cz(r,i,o,"month");var l,f=[];for(l=0;l<12;l++)f[l]=Cz(r,l,o,"month");return f}function Uie(r,i,o,l){typeof r=="boolean"?(L3(i)&&(o=i,i=void 0),i=i||""):(i=r,o=i,r=!1,L3(i)&&(o=i,i=void 0),i=i||"");var f=P3(),b=r?f._week.dow:0,d,w=[];if(o!=null)return Cz(i,(o+b)%7,l,"day");for(d=0;d<7;d++)w[d]=Cz(i,(d+b)%7,l,"day");return w}function eAt(r,i){return z9e(r,i,"months")}function tAt(r,i){return z9e(r,i,"monthsShort")}function nAt(r,i,o){return Uie(r,i,o,"weekdays")}function rAt(r,i,o){return Uie(r,i,o,"weekdaysShort")}function iAt(r,i,o){return Uie(r,i,o,"weekdaysMin")}r6("en",{eras:[{since:"0001-01-01",until:1/0,offset:1,name:"Anno Domini",narrow:"AD",abbr:"AD"},{since:"0000-12-31",until:-1/0,offset:1,name:"Before Christ",narrow:"BC",abbr:"BC"}],dayOfMonthOrdinalParse:/\d{1,2}(th|st|nd|rd)/,ordinal:function(r){var i=r%10,o=Fa(r%100/10)===1?"th":i===1?"st":i===2?"nd":i===3?"rd":"th";return r+o}}),Ar.lang=C2("moment.lang is deprecated. Use moment.locale instead.",r6),Ar.langData=C2("moment.langData is deprecated. Use moment.localeData instead.",P3);var B3=Math.abs;function sAt(){var r=this._data;return this._milliseconds=B3(this._milliseconds),this._days=B3(this._days),this._months=B3(this._months),r.milliseconds=B3(r.milliseconds),r.seconds=B3(r.seconds),r.minutes=B3(r.minutes),r.hours=B3(r.hours),r.months=B3(r.months),r.years=B3(r.years),this}function G9e(r,i,o,l){var f=xv(i,o);return r._milliseconds+=l*f._milliseconds,r._days+=l*f._days,r._months+=l*f._months,r._bubble()}function aAt(r,i){return G9e(this,r,i,1)}function oAt(r,i){return G9e(this,r,i,-1)}function V9e(r){return r<0?Math.floor(r):Math.ceil(r)}function cAt(){var r=this._milliseconds,i=this._days,o=this._months,l=this._data,f,b,d,w,y;return r>=0&&i>=0&&o>=0||r<=0&&i<=0&&o<=0||(r+=V9e(qie(o)+i)*864e5,i=0,o=0),l.milliseconds=r%1e3,f=A2(r/1e3),l.seconds=f%60,b=A2(f/60),l.minutes=b%60,d=A2(b/60),l.hours=d%24,i+=A2(d/24),y=A2(U9e(i)),o+=y,i-=V9e(qie(y)),w=A2(o/12),o%=12,l.days=i,l.months=o,l.years=w,this}function U9e(r){return r*4800/146097}function qie(r){return r*146097/4800}function uAt(r){if(!this.isValid())return NaN;var i,o,l=this._milliseconds;if(r=S2(r),r==="month"||r==="quarter"||r==="year")switch(i=this._days+l/864e5,o=this._months+U9e(i),r){case"month":return o;case"quarter":return o/3;case"year":return o/12}else switch(i=this._days+Math.round(qie(this._months)),r){case"week":return i/7+l/6048e5;case"day":return i+l/864e5;case"hour":return i*24+l/36e5;case"minute":return i*1440+l/6e4;case"second":return i*86400+l/1e3;case"millisecond":return Math.floor(i*864e5)+l;default:throw new Error("Unknown unit "+r)}}function lAt(){return this.isValid()?this._milliseconds+this._days*864e5+this._months%12*2592e6+Fa(this._months/12)*31536e6:NaN}function F3(r){return function(){return this.as(r)}}var hAt=F3("ms"),fAt=F3("s"),dAt=F3("m"),gAt=F3("h"),pAt=F3("d"),bAt=F3("w"),vAt=F3("M"),wAt=F3("Q"),mAt=F3("y");function yAt(){return xv(this)}function kAt(r){return r=S2(r),this.isValid()?this[r+"s"]():NaN}function I8(r){return function(){return this.isValid()?this._data[r]:NaN}}var xAt=I8("milliseconds"),EAt=I8("seconds"),_At=I8("minutes"),TAt=I8("hours"),CAt=I8("days"),SAt=I8("months"),AAt=I8("years");function MAt(){return A2(this.days()/7)}var R3=Math.round,DT={ss:44,s:45,m:45,h:22,d:26,w:null,M:11};function DAt(r,i,o,l,f){return f.relativeTime(i||1,!!o,r,l)}function LAt(r,i,o,l){var f=xv(r).abs(),b=R3(f.as("s")),d=R3(f.as("m")),w=R3(f.as("h")),y=R3(f.as("d")),k=R3(f.as("M")),E=R3(f.as("w")),T=R3(f.as("y")),C=b<=o.ss&&["s",b]||b0,C[4]=l,DAt.apply(null,C)}function IAt(r){return r===void 0?R3:typeof r=="function"?(R3=r,!0):!1}function OAt(r,i){return DT[r]===void 0?!1:i===void 0?DT[r]:(DT[r]=i,r==="s"&&(DT.ss=i-1),!0)}function NAt(r,i){if(!this.isValid())return this.localeData().invalidDate();var o=!1,l=DT,f,b;return typeof r=="object"&&(i=r,r=!1),typeof r=="boolean"&&(o=r),typeof i=="object"&&(l=Object.assign({},DT,i),i.s!=null&&i.ss==null&&(l.ss=i.s-1)),f=this.localeData(),b=LAt(this,!o,l,f),o&&(b=f.pastFuture(+this,b)),f.postformat(b)}var Yie=Math.abs;function LT(r){return(r>0)-(r<0)||+r}function Sz(){if(!this.isValid())return this.localeData().invalidDate();var r=Yie(this._milliseconds)/1e3,i=Yie(this._days),o=Yie(this._months),l,f,b,d,w=this.asSeconds(),y,k,E,T;return w?(l=A2(r/60),f=A2(l/60),r%=60,l%=60,b=A2(o/12),o%=12,d=r?r.toFixed(3).replace(/\.?0+$/,""):"",y=w<0?"-":"",k=LT(this._months)!==LT(w)?"-":"",E=LT(this._days)!==LT(w)?"-":"",T=LT(this._milliseconds)!==LT(w)?"-":"",y+"P"+(b?k+b+"Y":"")+(o?k+o+"M":"")+(i?E+i+"D":"")+(f||l||r?"T":"")+(f?T+f+"H":"")+(l?T+l+"M":"")+(r?T+d+"S":"")):"P0D"}var vo=yz.prototype;vo.isValid=CCt,vo.abs=sAt,vo.add=aAt,vo.subtract=oAt,vo.as=uAt,vo.asMilliseconds=hAt,vo.asSeconds=fAt,vo.asMinutes=dAt,vo.asHours=gAt,vo.asDays=pAt,vo.asWeeks=bAt,vo.asMonths=vAt,vo.asQuarters=wAt,vo.asYears=mAt,vo.valueOf=lAt,vo._bubble=cAt,vo.clone=yAt,vo.get=kAt,vo.milliseconds=xAt,vo.seconds=EAt,vo.minutes=_At,vo.hours=TAt,vo.days=CAt,vo.weeks=MAt,vo.months=SAt,vo.years=AAt,vo.humanize=NAt,vo.toISOString=Sz,vo.toString=Sz,vo.toJSON=Sz,vo.locale=I9e,vo.localeData=N9e,vo.toIsoString=C2("toIsoString() is deprecated. Please use toISOString() instead (notice the capitals)",Sz),vo.lang=O9e,Ki("X",0,0,"unix"),Ki("x",0,0,"valueOf"),ci("x",dz),ci("X",nTt),Mc("X",function(r,i,o){o._d=new Date(parseFloat(r)*1e3)}),Mc("x",function(r,i,o){o._d=new Date(Fa(r))});//! moment.js
-Ar.version="2.29.4",P_t(mu),Ar.fn=xr,Ar.min=xCt,Ar.max=ECt,Ar.now=_Ct,Ar.utc=Tm,Ar.unix=ZSt,Ar.months=eAt,Ar.isDate=SL,Ar.locale=r6,Ar.invalid=sz,Ar.duration=xv,Ar.isMoment=yv,Ar.weekdays=nAt,Ar.parseZone=JSt,Ar.localeData=P3,Ar.isDuration=kz,Ar.monthsShort=tAt,Ar.weekdaysMin=iAt,Ar.defineLocale=Nie,Ar.updateLocale=JTt,Ar.locales=eCt,Ar.weekdaysShort=rAt,Ar.normalizeUnits=S2,Ar.relativeTimeRounding=IAt,Ar.relativeTimeThreshold=OAt,Ar.calendarFormat=KCt,Ar.prototype=xr,Ar.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS:"YYYY-MM-DDTHH:mm:ss",DATETIME_LOCAL_MS:"YYYY-MM-DDTHH:mm:ss.SSS",DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_SECONDS:"HH:mm:ss",TIME_MS:"HH:mm:ss.SSS",WEEK:"GGGG-[W]WW",MONTH:"YYYY-MM"};const j3={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},Se={trace:(...r)=>{},debug:(...r)=>{},info:(...r)=>{},warn:(...r)=>{},error:(...r)=>{},fatal:(...r)=>{}},Wie=function(r="fatal"){let i=j3.fatal;typeof r=="string"?(r=r.toLowerCase(),r in j3&&(i=j3[r])):typeof r=="number"&&(i=r),Se.trace=()=>{},Se.debug=()=>{},Se.info=()=>{},Se.warn=()=>{},Se.error=()=>{},Se.fatal=()=>{},i<=j3.fatal&&(Se.fatal=console.error?console.error.bind(console,M2("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",M2("FATAL"))),i<=j3.error&&(Se.error=console.error?console.error.bind(console,M2("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",M2("ERROR"))),i<=j3.warn&&(Se.warn=console.warn?console.warn.bind(console,M2("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",M2("WARN"))),i<=j3.info&&(Se.info=console.info?console.info.bind(console,M2("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",M2("INFO"))),i<=j3.debug&&(Se.debug=console.debug?console.debug.bind(console,M2("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",M2("DEBUG"))),i<=j3.trace&&(Se.trace=console.debug?console.debug.bind(console,M2("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",M2("TRACE")))},M2=r=>`%c${Ar().format("ss.SSS")} : ${r} : `;var Mm=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function q9e(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var Kie={};Object.defineProperty(Kie,"__esModule",{value:!0});var $3=Kie.sanitizeUrl=void 0,PAt=/^([^\w]*)(javascript|data|vbscript)/im,BAt=/(\w+)(^\w|;)?/g,FAt=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,RAt=/^([^:]+):/gm,jAt=[".","/"];function $At(r){return jAt.indexOf(r[0])>-1}function HAt(r){return r.replace(BAt,function(i,o){return String.fromCharCode(o)})}function zAt(r){var i=HAt(r||"").replace(FAt,"").trim();if(!i)return"about:blank";if($At(i))return i;var o=i.match(RAt);if(!o)return i;var l=o[0];return PAt.test(l)?"about:blank":i}$3=Kie.sanitizeUrl=zAt;function Az(r,i){return r==null||i==null?NaN:ri?1:r>=i?0:NaN}function GAt(r,i){return r==null||i==null?NaN:ir?1:i>=r?0:NaN}function Xie(r){let i,o,l;r.length!==2?(i=Az,o=(w,y)=>Az(r(w),y),l=(w,y)=>r(w)-y):(i=r===Az||r===GAt?r:VAt,o=r,l=r);function f(w,y,k=0,E=w.length){if(k>>1;o(w[T],y)<0?k=T+1:E=T}while(k>>1;o(w[T],y)<=0?k=T+1:E=T}while(kk&&l(w[T-1],y)>-l(w[T],y)?T-1:T}return{left:f,center:d,right:b}}function VAt(){return 0}function UAt(r){return r===null?NaN:+r}const qAt=Xie(Az).right;Xie(UAt).center;const YAt=qAt;class Y9e extends Map{constructor(i,o=XAt){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:o}}),i!=null)for(const[l,f]of i)this.set(l,f)}get(i){return super.get(W9e(this,i))}has(i){return super.has(W9e(this,i))}set(i,o){return super.set(WAt(this,i),o)}delete(i){return super.delete(KAt(this,i))}}function W9e({_intern:r,_key:i},o){const l=i(o);return r.has(l)?r.get(l):o}function WAt({_intern:r,_key:i},o){const l=i(o);return r.has(l)?r.get(l):(r.set(l,o),o)}function KAt({_intern:r,_key:i},o){const l=i(o);return r.has(l)&&(o=r.get(l),r.delete(l)),o}function XAt(r){return r!==null&&typeof r=="object"?r.valueOf():r}var Qie=Math.sqrt(50),Zie=Math.sqrt(10),Jie=Math.sqrt(2);function QAt(r,i,o){var l,f=-1,b,d,w;if(i=+i,r=+r,o=+o,r===i&&o>0)return[r];if((l=i0){let y=Math.round(r/w),k=Math.round(i/w);for(y*wi&&--k,d=new Array(b=k-y+1);++fi&&--k,d=new Array(b=k-y+1);++f=0?(b>=Qie?10:b>=Zie?5:b>=Jie?2:1)*Math.pow(10,f):-Math.pow(10,-f)/(b>=Qie?10:b>=Zie?5:b>=Jie?2:1)}function ese(r,i,o){var l=Math.abs(i-r)/Math.max(0,o),f=Math.pow(10,Math.floor(Math.log(l)/Math.LN10)),b=l/f;return b>=Qie?f*=10:b>=Zie?f*=5:b>=Jie&&(f*=2),i=l)&&(o=l);else{let l=-1;for(let f of r)(f=i(f,++l,r))!=null&&(o=f)&&(o=f)}return o}function JAt(r,i){let o;if(i===void 0)for(const l of r)l!=null&&(o>l||o===void 0&&l>=l)&&(o=l);else{let l=-1;for(let f of r)(f=i(f,++l,r))!=null&&(o>f||o===void 0&&f>=f)&&(o=f)}return o}function eMt(r){return r}var Mz=1,tse=2,nse=3,Dz=4,X9e=1e-6;function tMt(r){return"translate("+r+",0)"}function nMt(r){return"translate(0,"+r+")"}function rMt(r){return i=>+r(i)}function iMt(r,i){return i=Math.max(0,r.bandwidth()-i*2)/2,r.round()&&(i=Math.round(i)),o=>+r(o)+i}function sMt(){return!this.__axis}function Q9e(r,i){var o=[],l=null,f=null,b=6,d=6,w=3,y=typeof window<"u"&&window.devicePixelRatio>1?0:.5,k=r===Mz||r===Dz?-1:1,E=r===Dz||r===tse?"x":"y",T=r===Mz||r===nse?tMt:nMt;function C(S){var L=l==null?i.ticks?i.ticks.apply(i,o):i.domain():l,O=f==null?i.tickFormat?i.tickFormat.apply(i,o):eMt:f,B=Math.max(b,0)+w,N=i.range(),F=+N[0]+y,R=+N[N.length-1]+y,q=(i.bandwidth?iMt:rMt)(i.copy(),y),X=S.selection?S.selection():S,te=X.selectAll(".domain").data([null]),H=X.selectAll(".tick").data(L,i).order(),Y=H.exit(),z=H.enter().append("g").attr("class","tick"),W=H.select("line"),Z=H.select("text");te=te.merge(te.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),H=H.merge(z),W=W.merge(z.append("line").attr("stroke","currentColor").attr(E+"2",k*b)),Z=Z.merge(z.append("text").attr("fill","currentColor").attr(E,k*B).attr("dy",r===Mz?"0em":r===nse?"0.71em":"0.32em")),S!==X&&(te=te.transition(S),H=H.transition(S),W=W.transition(S),Z=Z.transition(S),Y=Y.transition(S).attr("opacity",X9e).attr("transform",function(G){return isFinite(G=q(G))?T(G+y):this.getAttribute("transform")}),z.attr("opacity",X9e).attr("transform",function(G){var ae=this.parentNode.__axis;return T((ae&&isFinite(ae=ae(G))?ae:q(G))+y)})),Y.remove(),te.attr("d",r===Dz||r===tse?d?"M"+k*d+","+F+"H"+y+"V"+R+"H"+k*d:"M"+y+","+F+"V"+R:d?"M"+F+","+k*d+"V"+y+"H"+R+"V"+k*d:"M"+F+","+y+"H"+R),H.attr("opacity",1).attr("transform",function(G){return T(q(G)+y)}),W.attr(E+"2",k*b),Z.attr(E,k*B).text(O),X.filter(sMt).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",r===tse?"start":r===Dz?"end":"middle"),X.each(function(){this.__axis=q})}return C.scale=function(S){return arguments.length?(i=S,C):i},C.ticks=function(){return o=Array.from(arguments),C},C.tickArguments=function(S){return arguments.length?(o=S==null?[]:Array.from(S),C):o.slice()},C.tickValues=function(S){return arguments.length?(l=S==null?null:Array.from(S),C):l&&l.slice()},C.tickFormat=function(S){return arguments.length?(f=S,C):f},C.tickSize=function(S){return arguments.length?(b=d=+S,C):b},C.tickSizeInner=function(S){return arguments.length?(b=+S,C):b},C.tickSizeOuter=function(S){return arguments.length?(d=+S,C):d},C.tickPadding=function(S){return arguments.length?(w=+S,C):w},C.offset=function(S){return arguments.length?(y=+S,C):y},C}function aMt(r){return Q9e(Mz,r)}function oMt(r){return Q9e(nse,r)}var cMt={value:()=>{}};function Z9e(){for(var r=0,i=arguments.length,o={},l;r=0&&(l=o.slice(f+1),o=o.slice(0,f)),o&&!i.hasOwnProperty(o))throw new Error("unknown type: "+o);return{type:o,name:l}})}Lz.prototype=Z9e.prototype={constructor:Lz,on:function(r,i){var o=this._,l=uMt(r+"",o),f,b=-1,d=l.length;if(arguments.length<2){for(;++b0)for(var o=new Array(f),l=0,f,b;l=0&&(i=r.slice(0,o))!=="xmlns"&&(r=r.slice(o+1)),e_e.hasOwnProperty(i)?{space:e_e[i],local:r}:r}function hMt(r){return function(){var i=this.ownerDocument,o=this.namespaceURI;return o===rse&&i.documentElement.namespaceURI===rse?i.createElement(r):i.createElementNS(o,r)}}function fMt(r){return function(){return this.ownerDocument.createElementNS(r.space,r.local)}}function t_e(r){var i=Iz(r);return(i.local?fMt:hMt)(i)}function dMt(){}function ise(r){return r==null?dMt:function(){return this.querySelector(r)}}function gMt(r){typeof r!="function"&&(r=ise(r));for(var i=this._groups,o=i.length,l=new Array(o),f=0;f=R&&(R=F+1);!(X=B[R])&&++R=0;)(d=l[f])&&(b&&d.compareDocumentPosition(b)^4&&b.parentNode.insertBefore(d,b),b=d);return this}function RMt(r){r||(r=jMt);function i(T,C){return T&&C?r(T.__data__,C.__data__):!T-!C}for(var o=this._groups,l=o.length,f=new Array(l),b=0;bi?1:r>=i?0:NaN}function $Mt(){var r=arguments[0];return arguments[0]=this,r.apply(null,arguments),this}function HMt(){return Array.from(this)}function zMt(){for(var r=this._groups,i=0,o=r.length;i1?this.each((i==null?JMt:typeof i=="function"?tDt:eDt)(r,i,o==null?"":o)):IT(this.node(),r)}function IT(r,i){return r.style.getPropertyValue(i)||o_e(r).getComputedStyle(r,null).getPropertyValue(i)}function rDt(r){return function(){delete this[r]}}function iDt(r,i){return function(){this[r]=i}}function sDt(r,i){return function(){var o=i.apply(this,arguments);o==null?delete this[r]:this[r]=o}}function aDt(r,i){return arguments.length>1?this.each((i==null?rDt:typeof i=="function"?sDt:iDt)(r,i)):this.node()[r]}function c_e(r){return r.trim().split(/^|\s+/)}function sse(r){return r.classList||new u_e(r)}function u_e(r){this._node=r,this._names=c_e(r.getAttribute("class")||"")}u_e.prototype={add:function(r){var i=this._names.indexOf(r);i<0&&(this._names.push(r),this._node.setAttribute("class",this._names.join(" ")))},remove:function(r){var i=this._names.indexOf(r);i>=0&&(this._names.splice(i,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(r){return this._names.indexOf(r)>=0}};function l_e(r,i){for(var o=sse(r),l=-1,f=i.length;++l=0&&(o=i.slice(l+1),i=i.slice(0,l)),{type:i,name:o}})}function NDt(r){return function(){var i=this.__on;if(!!i){for(var o=0,l=-1,f=i.length,b;o>8&15|i>>4&240,i>>4&15|i&240,(i&15)<<4|i&15,1):o===8?Bz(i>>24&255,i>>16&255,i>>8&255,(i&255)/255):o===4?Bz(i>>12&15|i>>8&240,i>>8&15|i>>4&240,i>>4&15|i&240,((i&15)<<4|i&15)/255):null):(i=GDt.exec(r))?new sd(i[1],i[2],i[3],1):(i=VDt.exec(r))?new sd(i[1]*255/100,i[2]*255/100,i[3]*255/100,1):(i=UDt.exec(r))?Bz(i[1],i[2],i[3],i[4]):(i=qDt.exec(r))?Bz(i[1]*255/100,i[2]*255/100,i[3]*255/100,i[4]):(i=YDt.exec(r))?y_e(i[1],i[2]/100,i[3]/100,1):(i=WDt.exec(r))?y_e(i[1],i[2]/100,i[3]/100,i[4]):d_e.hasOwnProperty(r)?b_e(d_e[r]):r==="transparent"?new sd(NaN,NaN,NaN,0):null}function b_e(r){return new sd(r>>16&255,r>>8&255,r&255,1)}function Bz(r,i,o,l){return l<=0&&(r=i=o=NaN),new sd(r,i,o,l)}function v_e(r){return r instanceof O8||(r=N8(r)),r?(r=r.rgb(),new sd(r.r,r.g,r.b,r.opacity)):new sd}function cse(r,i,o,l){return arguments.length===1?v_e(r):new sd(r,i,o,l==null?1:l)}function sd(r,i,o,l){this.r=+r,this.g=+i,this.b=+o,this.opacity=+l}jL(sd,cse,Nz(O8,{brighter(r){return r=r==null?Pz:Math.pow(Pz,r),new sd(this.r*r,this.g*r,this.b*r,this.opacity)},darker(r){return r=r==null?$L:Math.pow($L,r),new sd(this.r*r,this.g*r,this.b*r,this.opacity)},rgb(){return this},clamp(){return new sd(P8(this.r),P8(this.g),P8(this.b),Fz(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:w_e,formatHex:w_e,formatHex8:QDt,formatRgb:m_e,toString:m_e}));function w_e(){return`#${B8(this.r)}${B8(this.g)}${B8(this.b)}`}function QDt(){return`#${B8(this.r)}${B8(this.g)}${B8(this.b)}${B8((isNaN(this.opacity)?1:this.opacity)*255)}`}function m_e(){const r=Fz(this.opacity);return`${r===1?"rgb(":"rgba("}${P8(this.r)}, ${P8(this.g)}, ${P8(this.b)}${r===1?")":`, ${r})`}`}function Fz(r){return isNaN(r)?1:Math.max(0,Math.min(1,r))}function P8(r){return Math.max(0,Math.min(255,Math.round(r)||0))}function B8(r){return r=P8(r),(r<16?"0":"")+r.toString(16)}function y_e(r,i,o,l){return l<=0?r=i=o=NaN:o<=0||o>=1?r=i=NaN:i<=0&&(r=NaN),new Ev(r,i,o,l)}function k_e(r){if(r instanceof Ev)return new Ev(r.h,r.s,r.l,r.opacity);if(r instanceof O8||(r=N8(r)),!r)return new Ev;if(r instanceof Ev)return r;r=r.rgb();var i=r.r/255,o=r.g/255,l=r.b/255,f=Math.min(i,o,l),b=Math.max(i,o,l),d=NaN,w=b-f,y=(b+f)/2;return w?(i===b?d=(o-l)/w+(o0&&y<1?0:d,new Ev(d,w,y,r.opacity)}function ZDt(r,i,o,l){return arguments.length===1?k_e(r):new Ev(r,i,o,l==null?1:l)}function Ev(r,i,o,l){this.h=+r,this.s=+i,this.l=+o,this.opacity=+l}jL(Ev,ZDt,Nz(O8,{brighter(r){return r=r==null?Pz:Math.pow(Pz,r),new Ev(this.h,this.s,this.l*r,this.opacity)},darker(r){return r=r==null?$L:Math.pow($L,r),new Ev(this.h,this.s,this.l*r,this.opacity)},rgb(){var r=this.h%360+(this.h<0)*360,i=isNaN(r)||isNaN(this.s)?0:this.s,o=this.l,l=o+(o<.5?o:1-o)*i,f=2*o-l;return new sd(use(r>=240?r-240:r+120,f,l),use(r,f,l),use(r<120?r+240:r-120,f,l),this.opacity)},clamp(){return new Ev(x_e(this.h),Rz(this.s),Rz(this.l),Fz(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const r=Fz(this.opacity);return`${r===1?"hsl(":"hsla("}${x_e(this.h)}, ${Rz(this.s)*100}%, ${Rz(this.l)*100}%${r===1?")":`, ${r})`}`}}));function x_e(r){return r=(r||0)%360,r<0?r+360:r}function Rz(r){return Math.max(0,Math.min(1,r||0))}function use(r,i,o){return(r<60?i+(o-i)*r/60:r<180?o:r<240?i+(o-i)*(240-r)/60:i)*255}const JDt=Math.PI/180,eLt=180/Math.PI,jz=18,E_e=.96422,__e=1,T_e=.82521,C_e=4/29,NT=6/29,S_e=3*NT*NT,tLt=NT*NT*NT;function A_e(r){if(r instanceof Lm)return new Lm(r.l,r.a,r.b,r.opacity);if(r instanceof H3)return M_e(r);r instanceof sd||(r=v_e(r));var i=dse(r.r),o=dse(r.g),l=dse(r.b),f=lse((.2225045*i+.7168786*o+.0606169*l)/__e),b,d;return i===o&&o===l?b=d=f:(b=lse((.4360747*i+.3850649*o+.1430804*l)/E_e),d=lse((.0139322*i+.0971045*o+.7141733*l)/T_e)),new Lm(116*f-16,500*(b-f),200*(f-d),r.opacity)}function nLt(r,i,o,l){return arguments.length===1?A_e(r):new Lm(r,i,o,l==null?1:l)}function Lm(r,i,o,l){this.l=+r,this.a=+i,this.b=+o,this.opacity=+l}jL(Lm,nLt,Nz(O8,{brighter(r){return new Lm(this.l+jz*(r==null?1:r),this.a,this.b,this.opacity)},darker(r){return new Lm(this.l-jz*(r==null?1:r),this.a,this.b,this.opacity)},rgb(){var r=(this.l+16)/116,i=isNaN(this.a)?r:r+this.a/500,o=isNaN(this.b)?r:r-this.b/200;return i=E_e*hse(i),r=__e*hse(r),o=T_e*hse(o),new sd(fse(3.1338561*i-1.6168667*r-.4906146*o),fse(-.9787684*i+1.9161415*r+.033454*o),fse(.0719453*i-.2289914*r+1.4052427*o),this.opacity)}}));function lse(r){return r>tLt?Math.pow(r,1/3):r/S_e+C_e}function hse(r){return r>NT?r*r*r:S_e*(r-C_e)}function fse(r){return 255*(r<=.0031308?12.92*r:1.055*Math.pow(r,1/2.4)-.055)}function dse(r){return(r/=255)<=.04045?r/12.92:Math.pow((r+.055)/1.055,2.4)}function rLt(r){if(r instanceof H3)return new H3(r.h,r.c,r.l,r.opacity);if(r instanceof Lm||(r=A_e(r)),r.a===0&&r.b===0)return new H3(NaN,0()=>r;function D_e(r,i){return function(o){return r+o*i}}function iLt(r,i,o){return r=Math.pow(r,o),i=Math.pow(i,o)-r,o=1/o,function(l){return Math.pow(r+l*i,o)}}function sLt(r,i){var o=i-r;return o?D_e(r,o>180||o<-180?o-360*Math.round(o/360):o):$z(isNaN(r)?i:r)}function aLt(r){return(r=+r)==1?zL:function(i,o){return o-i?iLt(i,o,r):$z(isNaN(i)?o:i)}}function zL(r,i){var o=i-r;return o?D_e(r,o):$z(isNaN(r)?i:r)}const Hz=function r(i){var o=aLt(i);function l(f,b){var d=o((f=cse(f)).r,(b=cse(b)).r),w=o(f.g,b.g),y=o(f.b,b.b),k=zL(f.opacity,b.opacity);return function(E){return f.r=d(E),f.g=w(E),f.b=y(E),f.opacity=k(E),f+""}}return l.gamma=r,l}(1);function oLt(r,i){i||(i=[]);var o=r?Math.min(i.length,r.length):0,l=i.slice(),f;return function(b){for(f=0;fo&&(b=i.slice(o,b),w[d]?w[d]+=b:w[++d]=b),(l=l[0])===(f=f[0])?w[d]?w[d]+=f:w[++d]=f:(w[++d]=null,y.push({i:d,x:_v(l,f)})),o=bse.lastIndex;return o180?E+=360:E-k>180&&(k+=360),C.push({i:T.push(f(T)+"rotate(",null,l)-2,x:_v(k,E)})):E&&T.push(f(T)+"rotate("+E+l)}function w(k,E,T,C){k!==E?C.push({i:T.push(f(T)+"skewX(",null,l)-2,x:_v(k,E)}):E&&T.push(f(T)+"skewX("+E+l)}function y(k,E,T,C,S,L){if(k!==T||E!==C){var O=S.push(f(S)+"scale(",null,",",null,")");L.push({i:O-4,x:_v(k,T)},{i:O-2,x:_v(E,C)})}else(T!==1||C!==1)&&S.push(f(S)+"scale("+T+","+C+")")}return function(k,E){var T=[],C=[];return k=r(k),E=r(E),b(k.translateX,k.translateY,E.translateX,E.translateY,T,C),d(k.rotate,E.rotate,T,C),w(k.skewX,E.skewX,T,C),y(k.scaleX,k.scaleY,E.scaleX,E.scaleY,T,C),k=E=null,function(S){for(var L=-1,O=C.length,B;++L=0&&r._call.call(void 0,i),r=r._next;--PT}function R_e(){F8=(Vz=qL.now())+Uz,PT=GL=0;try{xLt()}finally{PT=0,_Lt(),F8=0}}function ELt(){var r=qL.now(),i=r-Vz;i>P_e&&(Uz-=i,Vz=r)}function _Lt(){for(var r,i=Gz,o,l=1/0;i;)i._call?(l>i._time&&(l=i._time),r=i,i=i._next):(o=i._next,i._next=null,i=r?r._next=o:Gz=o);UL=r,yse(l)}function yse(r){if(!PT){GL&&(GL=clearTimeout(GL));var i=r-F8;i>24?(r<1/0&&(GL=setTimeout(R_e,r-qL.now()-Uz)),VL&&(VL=clearInterval(VL))):(VL||(Vz=qL.now(),VL=setInterval(ELt,P_e)),PT=1,B_e(R_e))}}function j_e(r,i,o){var l=new qz;return i=i==null?0:+i,l.restart(f=>{l.stop(),r(f+i)},i,o),l}var TLt=Z9e("start","end","cancel","interrupt"),CLt=[],$_e=0,H_e=1,kse=2,Yz=3,z_e=4,xse=5,Wz=6;function Kz(r,i,o,l,f,b){var d=r.__transition;if(!d)r.__transition={};else if(o in d)return;SLt(r,o,{name:i,index:l,group:f,on:TLt,tween:CLt,time:b.time,delay:b.delay,duration:b.duration,ease:b.ease,timer:null,state:$_e})}function Ese(r,i){var o=Tv(r,i);if(o.state>$_e)throw new Error("too late; already scheduled");return o}function Im(r,i){var o=Tv(r,i);if(o.state>Yz)throw new Error("too late; already running");return o}function Tv(r,i){var o=r.__transition;if(!o||!(o=o[i]))throw new Error("transition not found");return o}function SLt(r,i,o){var l=r.__transition,f;l[i]=o,o.timer=F_e(b,0,o.time);function b(k){o.state=H_e,o.timer.restart(d,o.delay,o.time),o.delay<=k&&d(k-o.delay)}function d(k){var E,T,C,S;if(o.state!==H_e)return y();for(E in l)if(S=l[E],S.name===o.name){if(S.state===Yz)return j_e(d);S.state===z_e?(S.state=Wz,S.timer.stop(),S.on.call("interrupt",r,r.__data__,S.index,S.group),delete l[E]):+Ekse&&l.state=0&&(i=i.slice(0,o)),!i||i==="start"})}function iIt(r,i,o){var l,f,b=rIt(i)?Ese:Im;return function(){var d=b(this,r),w=d.on;w!==l&&(f=(l=w).copy()).on(i,o),d.on=f}}function sIt(r,i){var o=this._id;return arguments.length<2?Tv(this.node(),o).on.on(r):this.each(iIt(o,r,i))}function aIt(r){return function(){var i=this.parentNode;for(var o in this.__transition)if(+o!==r)return;i&&i.removeChild(this)}}function oIt(){return this.on("end.remove",aIt(this._id))}function cIt(r){var i=this._name,o=this._id;typeof r!="function"&&(r=ise(r));for(var l=this._groups,f=l.length,b=new Array(f),d=0;dR8)if(!(Math.abs(E*w-y*k)>R8)||!f)this._+="L"+(this._x1=r)+","+(this._y1=i);else{var C=o-b,S=l-d,L=w*w+y*y,O=C*C+S*S,B=Math.sqrt(L),N=Math.sqrt(T),F=f*Math.tan((Tse-Math.acos((L+T-O)/(2*B*N)))/2),R=F/N,q=F/B;Math.abs(R-1)>R8&&(this._+="L"+(r+R*k)+","+(i+R*E)),this._+="A"+f+","+f+",0,0,"+ +(E*C>k*S)+","+(this._x1=r+q*w)+","+(this._y1=i+q*y)}},arc:function(r,i,o,l,f,b){r=+r,i=+i,o=+o,b=!!b;var d=o*Math.cos(l),w=o*Math.sin(l),y=r+d,k=i+w,E=1^b,T=b?l-f:f-l;if(o<0)throw new Error("negative radius: "+o);this._x1===null?this._+="M"+y+","+k:(Math.abs(this._x1-y)>R8||Math.abs(this._y1-k)>R8)&&(this._+="L"+y+","+k),o&&(T<0&&(T=T%Cse+Cse),T>OIt?this._+="A"+o+","+o+",0,1,"+E+","+(r-d)+","+(i-w)+"A"+o+","+o+",0,1,"+E+","+(this._x1=y)+","+(this._y1=k):T>R8&&(this._+="A"+o+","+o+",0,"+ +(T>=Tse)+","+E+","+(this._x1=r+o*Math.cos(f))+","+(this._y1=i+o*Math.sin(f))))},rect:function(r,i,o,l){this._+="M"+(this._x0=this._x1=+r)+","+(this._y0=this._y1=+i)+"h"+ +o+"v"+ +l+"h"+-o+"Z"},toString:function(){return this._}};function NIt(r){if(!r.ok)throw new Error(r.status+" "+r.statusText);return r.text()}function PIt(r,i){return fetch(r,i).then(NIt)}function BIt(r){return(i,o)=>PIt(i,o).then(l=>new DOMParser().parseFromString(l,r))}var FIt=BIt("image/svg+xml");function RIt(r){return Math.abs(r=Math.round(r))>=1e21?r.toLocaleString("en").replace(/,/g,""):r.toString(10)}function Xz(r,i){if((o=(r=i?r.toExponential(i-1):r.toExponential()).indexOf("e"))<0)return null;var o,l=r.slice(0,o);return[l.length>1?l[0]+l.slice(2):l,+r.slice(o+1)]}function BT(r){return r=Xz(Math.abs(r)),r?r[1]:NaN}function jIt(r,i){return function(o,l){for(var f=o.length,b=[],d=0,w=r[0],y=0;f>0&&w>0&&(y+w+1>l&&(w=Math.max(1,l-y)),b.push(o.substring(f-=w,f+w)),!((y+=w+1)>l));)w=r[d=(d+1)%r.length];return b.reverse().join(i)}}function $It(r){return function(i){return i.replace(/[0-9]/g,function(o){return r[+o]})}}var HIt=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Qz(r){if(!(i=HIt.exec(r)))throw new Error("invalid format: "+r);var i;return new Mse({fill:i[1],align:i[2],sign:i[3],symbol:i[4],zero:i[5],width:i[6],comma:i[7],precision:i[8]&&i[8].slice(1),trim:i[9],type:i[10]})}Qz.prototype=Mse.prototype;function Mse(r){this.fill=r.fill===void 0?" ":r.fill+"",this.align=r.align===void 0?">":r.align+"",this.sign=r.sign===void 0?"-":r.sign+"",this.symbol=r.symbol===void 0?"":r.symbol+"",this.zero=!!r.zero,this.width=r.width===void 0?void 0:+r.width,this.comma=!!r.comma,this.precision=r.precision===void 0?void 0:+r.precision,this.trim=!!r.trim,this.type=r.type===void 0?"":r.type+""}Mse.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function zIt(r){e:for(var i=r.length,o=1,l=-1,f;o0&&(l=0);break}return l>0?r.slice(0,l)+r.slice(f+1):r}var q_e;function GIt(r,i){var o=Xz(r,i);if(!o)return r+"";var l=o[0],f=o[1],b=f-(q_e=Math.max(-8,Math.min(8,Math.floor(f/3)))*3)+1,d=l.length;return b===d?l:b>d?l+new Array(b-d+1).join("0"):b>0?l.slice(0,b)+"."+l.slice(b):"0."+new Array(1-b).join("0")+Xz(r,Math.max(0,i+b-1))[0]}function Y_e(r,i){var o=Xz(r,i);if(!o)return r+"";var l=o[0],f=o[1];return f<0?"0."+new Array(-f).join("0")+l:l.length>f+1?l.slice(0,f+1)+"."+l.slice(f+1):l+new Array(f-l.length+2).join("0")}const W_e={"%":(r,i)=>(r*100).toFixed(i),b:r=>Math.round(r).toString(2),c:r=>r+"",d:RIt,e:(r,i)=>r.toExponential(i),f:(r,i)=>r.toFixed(i),g:(r,i)=>r.toPrecision(i),o:r=>Math.round(r).toString(8),p:(r,i)=>Y_e(r*100,i),r:Y_e,s:GIt,X:r=>Math.round(r).toString(16).toUpperCase(),x:r=>Math.round(r).toString(16)};function K_e(r){return r}var X_e=Array.prototype.map,Q_e=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function VIt(r){var i=r.grouping===void 0||r.thousands===void 0?K_e:jIt(X_e.call(r.grouping,Number),r.thousands+""),o=r.currency===void 0?"":r.currency[0]+"",l=r.currency===void 0?"":r.currency[1]+"",f=r.decimal===void 0?".":r.decimal+"",b=r.numerals===void 0?K_e:$It(X_e.call(r.numerals,String)),d=r.percent===void 0?"%":r.percent+"",w=r.minus===void 0?"\u2212":r.minus+"",y=r.nan===void 0?"NaN":r.nan+"";function k(T){T=Qz(T);var C=T.fill,S=T.align,L=T.sign,O=T.symbol,B=T.zero,N=T.width,F=T.comma,R=T.precision,q=T.trim,X=T.type;X==="n"?(F=!0,X="g"):W_e[X]||(R===void 0&&(R=12),q=!0,X="g"),(B||C==="0"&&S==="=")&&(B=!0,C="0",S="=");var te=O==="$"?o:O==="#"&&/[boxX]/.test(X)?"0"+X.toLowerCase():"",H=O==="$"?l:/[%p]/.test(X)?d:"",Y=W_e[X],z=/[defgprs%]/.test(X);R=R===void 0?6:/[gprs]/.test(X)?Math.max(1,Math.min(21,R)):Math.max(0,Math.min(20,R));function W(Z){var G=te,ae=H,$,ge,ee;if(X==="c")ae=Y(Z)+ae,Z="";else{Z=+Z;var de=Z<0||1/Z<0;if(Z=isNaN(Z)?y:Y(Math.abs(Z),R),q&&(Z=zIt(Z)),de&&+Z==0&&L!=="+"&&(de=!1),G=(de?L==="("?L:w:L==="-"||L==="("?"":L)+G,ae=(X==="s"?Q_e[8+q_e/3]:"")+ae+(de&&L==="("?")":""),z){for($=-1,ge=Z.length;++$ee||ee>57){ae=(ee===46?f+Z.slice($+1):Z.slice($))+ae,Z=Z.slice(0,$);break}}}F&&!B&&(Z=i(Z,1/0));var re=G.length+Z.length+ae.length,ke=re>1)+G+Z+ae+ke.slice(re);break;default:Z=ke+G+Z+ae;break}return b(Z)}return W.toString=function(){return T+""},W}function E(T,C){var S=k((T=Qz(T),T.type="f",T)),L=Math.max(-8,Math.min(8,Math.floor(BT(C)/3)))*3,O=Math.pow(10,-L),B=Q_e[8+L/3];return function(N){return S(O*N)+B}}return{format:k,formatPrefix:E}}var Zz,Z_e,J_e;UIt({thousands:",",grouping:[3],currency:["$",""]});function UIt(r){return Zz=VIt(r),Z_e=Zz.format,J_e=Zz.formatPrefix,Zz}function qIt(r){return Math.max(0,-BT(Math.abs(r)))}function YIt(r,i){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(BT(i)/3)))*3-BT(Math.abs(r)))}function WIt(r,i){return r=Math.abs(r),i=Math.abs(i)-r,Math.max(0,BT(i)-BT(r))+1}function Dse(r,i){switch(arguments.length){case 0:break;case 1:this.range(r);break;default:this.range(i).domain(r);break}return this}const eTe=Symbol("implicit");function tTe(){var r=new Y9e,i=[],o=[],l=eTe;function f(b){let d=r.get(b);if(d===void 0){if(l!==eTe)return l;r.set(b,d=i.push(b)-1)}return o[d%o.length]}return f.domain=function(b){if(!arguments.length)return i.slice();i=[],r=new Y9e;for(const d of b)r.has(d)||r.set(d,i.push(d)-1);return f},f.range=function(b){return arguments.length?(o=Array.from(b),f):o.slice()},f.unknown=function(b){return arguments.length?(l=b,f):l},f.copy=function(){return tTe(i,o).unknown(l)},Dse.apply(f,arguments),f}function KIt(r){return function(){return r}}function XIt(r){return+r}var nTe=[0,1];function FT(r){return r}function Lse(r,i){return(i-=r=+r)?function(o){return(o-r)/i}:KIt(isNaN(i)?NaN:.5)}function QIt(r,i){var o;return r>i&&(o=r,r=i,i=o),function(l){return Math.max(r,Math.min(i,l))}}function ZIt(r,i,o){var l=r[0],f=r[1],b=i[0],d=i[1];return f2?JIt:ZIt,y=k=null,T}function T(C){return C==null||isNaN(C=+C)?b:(y||(y=w(r.map(l),i,o)))(l(d(C)))}return T.invert=function(C){return d(f((k||(k=w(i,r.map(l),_v)))(C)))},T.domain=function(C){return arguments.length?(r=Array.from(C,XIt),E()):r.slice()},T.range=function(C){return arguments.length?(i=Array.from(C),E()):i.slice()},T.rangeRound=function(C){return i=Array.from(C),o=gLt,E()},T.clamp=function(C){return arguments.length?(d=C?!0:FT,E()):d!==FT},T.interpolate=function(C){return arguments.length?(o=C,E()):o},T.unknown=function(C){return arguments.length?(b=C,T):b},function(C,S){return l=C,f=S,E()}}function iTe(){return eOt()(FT,FT)}function tOt(r,i,o,l){var f=ese(r,i,o),b;switch(l=Qz(l==null?",f":l),l.type){case"s":{var d=Math.max(Math.abs(r),Math.abs(i));return l.precision==null&&!isNaN(b=YIt(f,d))&&(l.precision=b),J_e(l,d)}case"":case"e":case"g":case"p":case"r":{l.precision==null&&!isNaN(b=WIt(f,Math.max(Math.abs(r),Math.abs(i))))&&(l.precision=b-(l.type==="e"));break}case"f":case"%":{l.precision==null&&!isNaN(b=qIt(f))&&(l.precision=b-(l.type==="%")*2);break}}return Z_e(l)}function nOt(r){var i=r.domain;return r.ticks=function(o){var l=i();return QAt(l[0],l[l.length-1],o==null?10:o)},r.tickFormat=function(o,l){var f=i();return tOt(f[0],f[f.length-1],o==null?10:o,l)},r.nice=function(o){o==null&&(o=10);var l=i(),f=0,b=l.length-1,d=l[f],w=l[b],y,k,E=10;for(w0;){if(k=K9e(d,w,o),k===y)return l[f]=d,l[b]=w,i(l);if(k>0)d=Math.floor(d/k)*k,w=Math.ceil(w/k)*k;else if(k<0)d=Math.ceil(d*k)/k,w=Math.floor(w*k)/k;else break;y=k}return r},r}function sTe(){var r=iTe();return r.copy=function(){return rTe(r,sTe())},Dse.apply(r,arguments),nOt(r)}function rOt(r,i){r=r.slice();var o=0,l=r.length-1,f=r[o],b=r[l],d;return b0))return y;do y.push(k=new Date(+b)),i(b,w),r(b);while(k=d)for(;r(d),!b(d);)d.setTime(d-1)},function(d,w){if(d>=d)if(w<0)for(;++w<=0;)for(;i(d,-1),!b(d););else for(;--w>=0;)for(;i(d,1),!b(d););})},o&&(f.count=function(b,d){return Ise.setTime(+b),Ose.setTime(+d),r(Ise),r(Ose),Math.floor(o(Ise,Ose))},f.every=function(b){return b=Math.floor(b),!isFinite(b)||!(b>0)?null:b>1?f.filter(l?function(d){return l(d)%b===0}:function(d){return f.count(0,d)%b===0}):f}),f}var Jz=Uf(function(){},function(r,i){r.setTime(+r+i)},function(r,i){return i-r});Jz.every=function(r){return r=Math.floor(r),!isFinite(r)||!(r>0)?null:r>1?Uf(function(i){i.setTime(Math.floor(i/r)*r)},function(i,o){i.setTime(+i+o*r)},function(i,o){return(o-i)/r}):Jz};const iOt=Jz;Jz.range;const V3=1e3,D2=V3*60,U3=D2*60,j8=U3*24,Nse=j8*7,aTe=j8*30,Pse=j8*365;var oTe=Uf(function(r){r.setTime(r-r.getMilliseconds())},function(r,i){r.setTime(+r+i*V3)},function(r,i){return(i-r)/V3},function(r){return r.getUTCSeconds()});const YL=oTe;oTe.range;var cTe=Uf(function(r){r.setTime(r-r.getMilliseconds()-r.getSeconds()*V3)},function(r,i){r.setTime(+r+i*D2)},function(r,i){return(i-r)/D2},function(r){return r.getMinutes()});const eG=cTe;cTe.range;var uTe=Uf(function(r){r.setTime(r-r.getMilliseconds()-r.getSeconds()*V3-r.getMinutes()*D2)},function(r,i){r.setTime(+r+i*U3)},function(r,i){return(i-r)/U3},function(r){return r.getHours()});const tG=uTe;uTe.range;var lTe=Uf(r=>r.setHours(0,0,0,0),(r,i)=>r.setDate(r.getDate()+i),(r,i)=>(i-r-(i.getTimezoneOffset()-r.getTimezoneOffset())*D2)/j8,r=>r.getDate()-1);const RT=lTe;lTe.range;function $8(r){return Uf(function(i){i.setDate(i.getDate()-(i.getDay()+7-r)%7),i.setHours(0,0,0,0)},function(i,o){i.setDate(i.getDate()+o*7)},function(i,o){return(o-i-(o.getTimezoneOffset()-i.getTimezoneOffset())*D2)/Nse})}var jT=$8(0),nG=$8(1),sOt=$8(2),aOt=$8(3),$T=$8(4),oOt=$8(5),cOt=$8(6);jT.range,nG.range,sOt.range,aOt.range,$T.range,oOt.range,cOt.range;var hTe=Uf(function(r){r.setDate(1),r.setHours(0,0,0,0)},function(r,i){r.setMonth(r.getMonth()+i)},function(r,i){return i.getMonth()-r.getMonth()+(i.getFullYear()-r.getFullYear())*12},function(r){return r.getMonth()});const rG=hTe;hTe.range;var Bse=Uf(function(r){r.setMonth(0,1),r.setHours(0,0,0,0)},function(r,i){r.setFullYear(r.getFullYear()+i)},function(r,i){return i.getFullYear()-r.getFullYear()},function(r){return r.getFullYear()});Bse.every=function(r){return!isFinite(r=Math.floor(r))||!(r>0)?null:Uf(function(i){i.setFullYear(Math.floor(i.getFullYear()/r)*r),i.setMonth(0,1),i.setHours(0,0,0,0)},function(i,o){i.setFullYear(i.getFullYear()+o*r)})};const H8=Bse;Bse.range;var fTe=Uf(function(r){r.setUTCSeconds(0,0)},function(r,i){r.setTime(+r+i*D2)},function(r,i){return(i-r)/D2},function(r){return r.getUTCMinutes()});const uOt=fTe;fTe.range;var dTe=Uf(function(r){r.setUTCMinutes(0,0,0)},function(r,i){r.setTime(+r+i*U3)},function(r,i){return(i-r)/U3},function(r){return r.getUTCHours()});const lOt=dTe;dTe.range;var gTe=Uf(function(r){r.setUTCHours(0,0,0,0)},function(r,i){r.setUTCDate(r.getUTCDate()+i)},function(r,i){return(i-r)/j8},function(r){return r.getUTCDate()-1});const Fse=gTe;gTe.range;function z8(r){return Uf(function(i){i.setUTCDate(i.getUTCDate()-(i.getUTCDay()+7-r)%7),i.setUTCHours(0,0,0,0)},function(i,o){i.setUTCDate(i.getUTCDate()+o*7)},function(i,o){return(o-i)/Nse})}var Rse=z8(0),iG=z8(1),hOt=z8(2),fOt=z8(3),HT=z8(4),dOt=z8(5),gOt=z8(6);Rse.range,iG.range,hOt.range,fOt.range,HT.range,dOt.range,gOt.range;var pTe=Uf(function(r){r.setUTCDate(1),r.setUTCHours(0,0,0,0)},function(r,i){r.setUTCMonth(r.getUTCMonth()+i)},function(r,i){return i.getUTCMonth()-r.getUTCMonth()+(i.getUTCFullYear()-r.getUTCFullYear())*12},function(r){return r.getUTCMonth()});const pOt=pTe;pTe.range;var jse=Uf(function(r){r.setUTCMonth(0,1),r.setUTCHours(0,0,0,0)},function(r,i){r.setUTCFullYear(r.getUTCFullYear()+i)},function(r,i){return i.getUTCFullYear()-r.getUTCFullYear()},function(r){return r.getUTCFullYear()});jse.every=function(r){return!isFinite(r=Math.floor(r))||!(r>0)?null:Uf(function(i){i.setUTCFullYear(Math.floor(i.getUTCFullYear()/r)*r),i.setUTCMonth(0,1),i.setUTCHours(0,0,0,0)},function(i,o){i.setUTCFullYear(i.getUTCFullYear()+o*r)})};const zT=jse;jse.range;function bTe(r,i,o,l,f,b){const d=[[YL,1,V3],[YL,5,5*V3],[YL,15,15*V3],[YL,30,30*V3],[b,1,D2],[b,5,5*D2],[b,15,15*D2],[b,30,30*D2],[f,1,U3],[f,3,3*U3],[f,6,6*U3],[f,12,12*U3],[l,1,j8],[l,2,2*j8],[o,1,Nse],[i,1,aTe],[i,3,3*aTe],[r,1,Pse]];function w(k,E,T){const C=EB).right(d,C);if(S===d.length)return r.every(ese(k/Pse,E/Pse,T));if(S===0)return iOt.every(Math.max(ese(k,E,T),1));const[L,O]=d[C/d[S-1][2]53)return null;"w"in xe||(xe.w=1),"Z"in xe?(je=Hse(WL(xe.y,0,1)),me=je.getUTCDay(),je=me>4||me===0?iG.ceil(je):iG(je),je=Fse.offset(je,(xe.V-1)*7),xe.y=je.getUTCFullYear(),xe.m=je.getUTCMonth(),xe.d=je.getUTCDate()+(xe.w+6)%7):(je=$se(WL(xe.y,0,1)),me=je.getDay(),je=me>4||me===0?nG.ceil(je):nG(je),je=RT.offset(je,(xe.V-1)*7),xe.y=je.getFullYear(),xe.m=je.getMonth(),xe.d=je.getDate()+(xe.w+6)%7)}else("W"in xe||"U"in xe)&&("w"in xe||(xe.w="u"in xe?xe.u%7:"W"in xe?1:0),me="Z"in xe?Hse(WL(xe.y,0,1)).getUTCDay():$se(WL(xe.y,0,1)).getDay(),xe.m=0,xe.d="W"in xe?(xe.w+6)%7+xe.W*7-(me+5)%7:xe.w+xe.U*7-(me+6)%7);return"Z"in xe?(xe.H+=xe.Z/100|0,xe.M+=xe.Z%100,Hse(xe)):$se(xe)}}function Y(Oe,Le,$e,xe){for(var Ae=0,je=Le.length,me=$e.length,vt,ve;Ae=me)return-1;if(vt=Le.charCodeAt(Ae++),vt===37){if(vt=Le.charAt(Ae++),ve=X[vt in vTe?Le.charAt(Ae++):vt],!ve||(xe=ve(Oe,$e,xe))<0)return-1}else if(vt!=$e.charCodeAt(xe++))return-1}return xe}function z(Oe,Le,$e){var xe=k.exec(Le.slice($e));return xe?(Oe.p=E.get(xe[0].toLowerCase()),$e+xe[0].length):-1}function W(Oe,Le,$e){var xe=S.exec(Le.slice($e));return xe?(Oe.w=L.get(xe[0].toLowerCase()),$e+xe[0].length):-1}function Z(Oe,Le,$e){var xe=T.exec(Le.slice($e));return xe?(Oe.w=C.get(xe[0].toLowerCase()),$e+xe[0].length):-1}function G(Oe,Le,$e){var xe=N.exec(Le.slice($e));return xe?(Oe.m=F.get(xe[0].toLowerCase()),$e+xe[0].length):-1}function ae(Oe,Le,$e){var xe=O.exec(Le.slice($e));return xe?(Oe.m=B.get(xe[0].toLowerCase()),$e+xe[0].length):-1}function $(Oe,Le,$e){return Y(Oe,i,Le,$e)}function ge(Oe,Le,$e){return Y(Oe,o,Le,$e)}function ee(Oe,Le,$e){return Y(Oe,l,Le,$e)}function de(Oe){return d[Oe.getDay()]}function re(Oe){return b[Oe.getDay()]}function ke(Oe){return y[Oe.getMonth()]}function Ce(Oe){return w[Oe.getMonth()]}function _e(Oe){return f[+(Oe.getHours()>=12)]}function Te(Oe){return 1+~~(Oe.getMonth()/3)}function Be(Oe){return d[Oe.getUTCDay()]}function Ge(Oe){return b[Oe.getUTCDay()]}function Xe(Oe){return y[Oe.getUTCMonth()]}function Ee(Oe){return w[Oe.getUTCMonth()]}function Ze(Oe){return f[+(Oe.getUTCHours()>=12)]}function Ie(Oe){return 1+~~(Oe.getUTCMonth()/3)}return{format:function(Oe){var Le=te(Oe+="",R);return Le.toString=function(){return Oe},Le},parse:function(Oe){var Le=H(Oe+="",!1);return Le.toString=function(){return Oe},Le},utcFormat:function(Oe){var Le=te(Oe+="",q);return Le.toString=function(){return Oe},Le},utcParse:function(Oe){var Le=H(Oe+="",!0);return Le.toString=function(){return Oe},Le}}}var vTe={"-":"",_:" ",0:"0"},qf=/^\s*\d+/,mOt=/^%/,yOt=/[\\^$*+?|[\]().{}]/g;function Lo(r,i,o){var l=r<0?"-":"",f=(l?-r:r)+"",b=f.length;return l+(b[i.toLowerCase(),o]))}function xOt(r,i,o){var l=qf.exec(i.slice(o,o+1));return l?(r.w=+l[0],o+l[0].length):-1}function EOt(r,i,o){var l=qf.exec(i.slice(o,o+1));return l?(r.u=+l[0],o+l[0].length):-1}function _Ot(r,i,o){var l=qf.exec(i.slice(o,o+2));return l?(r.U=+l[0],o+l[0].length):-1}function TOt(r,i,o){var l=qf.exec(i.slice(o,o+2));return l?(r.V=+l[0],o+l[0].length):-1}function COt(r,i,o){var l=qf.exec(i.slice(o,o+2));return l?(r.W=+l[0],o+l[0].length):-1}function wTe(r,i,o){var l=qf.exec(i.slice(o,o+4));return l?(r.y=+l[0],o+l[0].length):-1}function mTe(r,i,o){var l=qf.exec(i.slice(o,o+2));return l?(r.y=+l[0]+(+l[0]>68?1900:2e3),o+l[0].length):-1}function SOt(r,i,o){var l=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(i.slice(o,o+6));return l?(r.Z=l[1]?0:-(l[2]+(l[3]||"00")),o+l[0].length):-1}function AOt(r,i,o){var l=qf.exec(i.slice(o,o+1));return l?(r.q=l[0]*3-3,o+l[0].length):-1}function MOt(r,i,o){var l=qf.exec(i.slice(o,o+2));return l?(r.m=l[0]-1,o+l[0].length):-1}function yTe(r,i,o){var l=qf.exec(i.slice(o,o+2));return l?(r.d=+l[0],o+l[0].length):-1}function DOt(r,i,o){var l=qf.exec(i.slice(o,o+3));return l?(r.m=0,r.d=+l[0],o+l[0].length):-1}function kTe(r,i,o){var l=qf.exec(i.slice(o,o+2));return l?(r.H=+l[0],o+l[0].length):-1}function LOt(r,i,o){var l=qf.exec(i.slice(o,o+2));return l?(r.M=+l[0],o+l[0].length):-1}function IOt(r,i,o){var l=qf.exec(i.slice(o,o+2));return l?(r.S=+l[0],o+l[0].length):-1}function OOt(r,i,o){var l=qf.exec(i.slice(o,o+3));return l?(r.L=+l[0],o+l[0].length):-1}function NOt(r,i,o){var l=qf.exec(i.slice(o,o+6));return l?(r.L=Math.floor(l[0]/1e3),o+l[0].length):-1}function POt(r,i,o){var l=mOt.exec(i.slice(o,o+1));return l?o+l[0].length:-1}function BOt(r,i,o){var l=qf.exec(i.slice(o));return l?(r.Q=+l[0],o+l[0].length):-1}function FOt(r,i,o){var l=qf.exec(i.slice(o));return l?(r.s=+l[0],o+l[0].length):-1}function xTe(r,i){return Lo(r.getDate(),i,2)}function ROt(r,i){return Lo(r.getHours(),i,2)}function jOt(r,i){return Lo(r.getHours()%12||12,i,2)}function $Ot(r,i){return Lo(1+RT.count(H8(r),r),i,3)}function ETe(r,i){return Lo(r.getMilliseconds(),i,3)}function HOt(r,i){return ETe(r,i)+"000"}function zOt(r,i){return Lo(r.getMonth()+1,i,2)}function GOt(r,i){return Lo(r.getMinutes(),i,2)}function VOt(r,i){return Lo(r.getSeconds(),i,2)}function UOt(r){var i=r.getDay();return i===0?7:i}function qOt(r,i){return Lo(jT.count(H8(r)-1,r),i,2)}function _Te(r){var i=r.getDay();return i>=4||i===0?$T(r):$T.ceil(r)}function YOt(r,i){return r=_Te(r),Lo($T.count(H8(r),r)+(H8(r).getDay()===4),i,2)}function WOt(r){return r.getDay()}function KOt(r,i){return Lo(nG.count(H8(r)-1,r),i,2)}function XOt(r,i){return Lo(r.getFullYear()%100,i,2)}function QOt(r,i){return r=_Te(r),Lo(r.getFullYear()%100,i,2)}function ZOt(r,i){return Lo(r.getFullYear()%1e4,i,4)}function JOt(r,i){var o=r.getDay();return r=o>=4||o===0?$T(r):$T.ceil(r),Lo(r.getFullYear()%1e4,i,4)}function eNt(r){var i=r.getTimezoneOffset();return(i>0?"-":(i*=-1,"+"))+Lo(i/60|0,"0",2)+Lo(i%60,"0",2)}function TTe(r,i){return Lo(r.getUTCDate(),i,2)}function tNt(r,i){return Lo(r.getUTCHours(),i,2)}function nNt(r,i){return Lo(r.getUTCHours()%12||12,i,2)}function rNt(r,i){return Lo(1+Fse.count(zT(r),r),i,3)}function CTe(r,i){return Lo(r.getUTCMilliseconds(),i,3)}function iNt(r,i){return CTe(r,i)+"000"}function sNt(r,i){return Lo(r.getUTCMonth()+1,i,2)}function aNt(r,i){return Lo(r.getUTCMinutes(),i,2)}function oNt(r,i){return Lo(r.getUTCSeconds(),i,2)}function cNt(r){var i=r.getUTCDay();return i===0?7:i}function uNt(r,i){return Lo(Rse.count(zT(r)-1,r),i,2)}function STe(r){var i=r.getUTCDay();return i>=4||i===0?HT(r):HT.ceil(r)}function lNt(r,i){return r=STe(r),Lo(HT.count(zT(r),r)+(zT(r).getUTCDay()===4),i,2)}function hNt(r){return r.getUTCDay()}function fNt(r,i){return Lo(iG.count(zT(r)-1,r),i,2)}function dNt(r,i){return Lo(r.getUTCFullYear()%100,i,2)}function gNt(r,i){return r=STe(r),Lo(r.getUTCFullYear()%100,i,2)}function pNt(r,i){return Lo(r.getUTCFullYear()%1e4,i,4)}function bNt(r,i){var o=r.getUTCDay();return r=o>=4||o===0?HT(r):HT.ceil(r),Lo(r.getUTCFullYear()%1e4,i,4)}function vNt(){return"+0000"}function ATe(){return"%"}function MTe(r){return+r}function DTe(r){return Math.floor(+r/1e3)}var GT,sG;wNt({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function wNt(r){return GT=wOt(r),sG=GT.format,GT.parse,GT.utcFormat,GT.utcParse,GT}function mNt(r){return new Date(r)}function yNt(r){return r instanceof Date?+r:+new Date(+r)}function LTe(r,i,o,l,f,b,d,w,y,k){var E=iTe(),T=E.invert,C=E.domain,S=k(".%L"),L=k(":%S"),O=k("%I:%M"),B=k("%I %p"),N=k("%a %d"),F=k("%b %d"),R=k("%B"),q=k("%Y");function X(te){return(y(te)1?0:r<-1?QL:Math.acos(r)}function OTe(r){return r>=1?aG:r<=-1?-aG:Math.asin(r)}function _Nt(r){return r.innerRadius}function TNt(r){return r.outerRadius}function CNt(r){return r.startAngle}function SNt(r){return r.endAngle}function ANt(r){return r&&r.padAngle}function MNt(r,i,o,l,f,b,d,w){var y=o-r,k=l-i,E=d-f,T=w-b,C=T*y-E*k;if(!(C*C$*$+ge*ge&&(Y=W,z=Z),{cx:Y,cy:z,x01:-E,y01:-T,x11:Y*(f/X-1),y11:z*(f/X-1)}}function ZL(){var r=_Nt,i=TNt,o=sh(0),l=null,f=CNt,b=SNt,d=ANt,w=null;function y(){var k,E,T=+r.apply(this,arguments),C=+i.apply(this,arguments),S=f.apply(this,arguments)-aG,L=b.apply(this,arguments)-aG,O=ITe(L-S),B=L>S;if(w||(w=k=Ase()),Cod))w.moveTo(0,0);else if(O>oG-od)w.moveTo(C*G8(S),C*Om(S)),w.arc(0,0,C,S,L,!B),T>od&&(w.moveTo(T*G8(L),T*Om(L)),w.arc(0,0,T,L,S,B));else{var N=S,F=L,R=S,q=L,X=O,te=O,H=d.apply(this,arguments)/2,Y=H>od&&(l?+l.apply(this,arguments):VT(T*T+C*C)),z=zse(ITe(C-T)/2,+o.apply(this,arguments)),W=z,Z=z,G,ae;if(Y>od){var $=OTe(Y/T*Om(H)),ge=OTe(Y/C*Om(H));(X-=$*2)>od?($*=B?1:-1,R+=$,q-=$):(X=0,R=q=(S+L)/2),(te-=ge*2)>od?(ge*=B?1:-1,N+=ge,F-=ge):(te=0,N=F=(S+L)/2)}var ee=C*G8(N),de=C*Om(N),re=T*G8(q),ke=T*Om(q);if(z>od){var Ce=C*G8(F),_e=C*Om(F),Te=T*G8(R),Be=T*Om(R),Ge;if(Ood?Z>od?(G=cG(Te,Be,ee,de,C,Z,B),ae=cG(Ce,_e,re,ke,C,Z,B),w.moveTo(G.cx+G.x01,G.cy+G.y01),Zod)||!(X>od)?w.lineTo(re,ke):W>od?(G=cG(re,ke,Ce,_e,T,-W,B),ae=cG(ee,de,Te,Be,T,-W,B),w.lineTo(G.cx+G.x01,G.cy+G.y01),Wr?1:i>=r?0:NaN}function ONt(r){return r}function NNt(){var r=ONt,i=INt,o=null,l=sh(0),f=sh(oG),b=sh(0);function d(w){var y,k=(w=NTe(w)).length,E,T,C=0,S=new Array(k),L=new Array(k),O=+l.apply(this,arguments),B=Math.min(oG,Math.max(-oG,f.apply(this,arguments)-O)),N,F=Math.min(Math.abs(B)/k,b.apply(this,arguments)),R=F*(B<0?-1:1),q;for(y=0;y0&&(C+=q);for(i!=null?S.sort(function(X,te){return i(L[X],L[te])}):o!=null&&S.sort(function(X,te){return o(w[X],w[te])}),y=0,T=C?(B-k*R)/C:0;y0?q*T:0)+R,L[E]={data:w[E],index:y,value:q,startAngle:O,endAngle:N,padAngle:F};return L}return d.value=function(w){return arguments.length?(r=typeof w=="function"?w:sh(+w),d):r},d.sortValues=function(w){return arguments.length?(i=w,o=null,d):i},d.sort=function(w){return arguments.length?(o=w,i=null,d):o},d.startAngle=function(w){return arguments.length?(l=typeof w=="function"?w:sh(+w),d):l},d.endAngle=function(w){return arguments.length?(f=typeof w=="function"?w:sh(+w),d):f},d.padAngle=function(w){return arguments.length?(b=typeof w=="function"?w:sh(+w),d):b},d}class BTe{constructor(i,o){this._context=i,this._x=o}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(i,o){switch(i=+i,o=+o,this._point){case 0:{this._point=1,this._line?this._context.lineTo(i,o):this._context.moveTo(i,o);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+i)/2,this._y0,this._x0,o,i,o):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+o)/2,i,this._y0,i,o);break}}this._x0=i,this._y0=o}}function PNt(r){return new BTe(r,!0)}function BNt(r){return new BTe(r,!1)}function s6(){}function uG(r,i,o){r._context.bezierCurveTo((2*r._x0+r._x1)/3,(2*r._y0+r._y1)/3,(r._x0+2*r._x1)/3,(r._y0+2*r._y1)/3,(r._x0+4*r._x1+i)/6,(r._y0+4*r._y1+o)/6)}function lG(r){this._context=r}lG.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:uG(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(r,i){switch(r=+r,i=+i,this._point){case 0:this._point=1,this._line?this._context.lineTo(r,i):this._context.moveTo(r,i);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:uG(this,r,i);break}this._x0=this._x1,this._x1=r,this._y0=this._y1,this._y1=i}};function UT(r){return new lG(r)}function FTe(r){this._context=r}FTe.prototype={areaStart:s6,areaEnd:s6,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(r,i){switch(r=+r,i=+i,this._point){case 0:this._point=1,this._x2=r,this._y2=i;break;case 1:this._point=2,this._x3=r,this._y3=i;break;case 2:this._point=3,this._x4=r,this._y4=i,this._context.moveTo((this._x0+4*this._x1+r)/6,(this._y0+4*this._y1+i)/6);break;default:uG(this,r,i);break}this._x0=this._x1,this._x1=r,this._y0=this._y1,this._y1=i}};function FNt(r){return new FTe(r)}function RTe(r){this._context=r}RTe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(r,i){switch(r=+r,i=+i,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var o=(this._x0+4*this._x1+r)/6,l=(this._y0+4*this._y1+i)/6;this._line?this._context.lineTo(o,l):this._context.moveTo(o,l);break;case 3:this._point=4;default:uG(this,r,i);break}this._x0=this._x1,this._x1=r,this._y0=this._y1,this._y1=i}};function RNt(r){return new RTe(r)}function jTe(r,i){this._basis=new lG(r),this._beta=i}jTe.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var r=this._x,i=this._y,o=r.length-1;if(o>0)for(var l=r[0],f=i[0],b=r[o]-l,d=i[o]-f,w=-1,y;++w<=o;)y=w/o,this._basis.point(this._beta*r[w]+(1-this._beta)*(l+y*b),this._beta*i[w]+(1-this._beta)*(f+y*d));this._x=this._y=null,this._basis.lineEnd()},point:function(r,i){this._x.push(+r),this._y.push(+i)}};const jNt=function r(i){function o(l){return i===1?new lG(l):new jTe(l,i)}return o.beta=function(l){return r(+l)},o}(.85);function hG(r,i,o){r._context.bezierCurveTo(r._x1+r._k*(r._x2-r._x0),r._y1+r._k*(r._y2-r._y0),r._x2+r._k*(r._x1-i),r._y2+r._k*(r._y1-o),r._x2,r._y2)}function Gse(r,i){this._context=r,this._k=(1-i)/6}Gse.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:hG(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(r,i){switch(r=+r,i=+i,this._point){case 0:this._point=1,this._line?this._context.lineTo(r,i):this._context.moveTo(r,i);break;case 1:this._point=2,this._x1=r,this._y1=i;break;case 2:this._point=3;default:hG(this,r,i);break}this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=i}};const $Nt=function r(i){function o(l){return new Gse(l,i)}return o.tension=function(l){return r(+l)},o}(0);function Vse(r,i){this._context=r,this._k=(1-i)/6}Vse.prototype={areaStart:s6,areaEnd:s6,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(r,i){switch(r=+r,i=+i,this._point){case 0:this._point=1,this._x3=r,this._y3=i;break;case 1:this._point=2,this._context.moveTo(this._x4=r,this._y4=i);break;case 2:this._point=3,this._x5=r,this._y5=i;break;default:hG(this,r,i);break}this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=i}};const HNt=function r(i){function o(l){return new Vse(l,i)}return o.tension=function(l){return r(+l)},o}(0);function Use(r,i){this._context=r,this._k=(1-i)/6}Use.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(r,i){switch(r=+r,i=+i,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:hG(this,r,i);break}this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=i}};const zNt=function r(i){function o(l){return new Use(l,i)}return o.tension=function(l){return r(+l)},o}(0);function qse(r,i,o){var l=r._x1,f=r._y1,b=r._x2,d=r._y2;if(r._l01_a>od){var w=2*r._l01_2a+3*r._l01_a*r._l12_a+r._l12_2a,y=3*r._l01_a*(r._l01_a+r._l12_a);l=(l*w-r._x0*r._l12_2a+r._x2*r._l01_2a)/y,f=(f*w-r._y0*r._l12_2a+r._y2*r._l01_2a)/y}if(r._l23_a>od){var k=2*r._l23_2a+3*r._l23_a*r._l12_a+r._l12_2a,E=3*r._l23_a*(r._l23_a+r._l12_a);b=(b*k+r._x1*r._l23_2a-i*r._l12_2a)/E,d=(d*k+r._y1*r._l23_2a-o*r._l12_2a)/E}r._context.bezierCurveTo(l,f,b,d,r._x2,r._y2)}function $Te(r,i){this._context=r,this._alpha=i}$Te.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(r,i){if(r=+r,i=+i,this._point){var o=this._x2-r,l=this._y2-i;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(o*o+l*l,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(r,i):this._context.moveTo(r,i);break;case 1:this._point=2;break;case 2:this._point=3;default:qse(this,r,i);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=i}};const GNt=function r(i){function o(l){return i?new $Te(l,i):new Gse(l,0)}return o.alpha=function(l){return r(+l)},o}(.5);function HTe(r,i){this._context=r,this._alpha=i}HTe.prototype={areaStart:s6,areaEnd:s6,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(r,i){if(r=+r,i=+i,this._point){var o=this._x2-r,l=this._y2-i;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(o*o+l*l,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=r,this._y3=i;break;case 1:this._point=2,this._context.moveTo(this._x4=r,this._y4=i);break;case 2:this._point=3,this._x5=r,this._y5=i;break;default:qse(this,r,i);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=i}};const VNt=function r(i){function o(l){return i?new HTe(l,i):new Vse(l,0)}return o.alpha=function(l){return r(+l)},o}(.5);function zTe(r,i){this._context=r,this._alpha=i}zTe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(r,i){if(r=+r,i=+i,this._point){var o=this._x2-r,l=this._y2-i;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(o*o+l*l,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:qse(this,r,i);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=r,this._y0=this._y1,this._y1=this._y2,this._y2=i}};const UNt=function r(i){function o(l){return i?new zTe(l,i):new Use(l,0)}return o.alpha=function(l){return r(+l)},o}(.5);function GTe(r){this._context=r}GTe.prototype={areaStart:s6,areaEnd:s6,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(r,i){r=+r,i=+i,this._point?this._context.lineTo(r,i):(this._point=1,this._context.moveTo(r,i))}};function qNt(r){return new GTe(r)}function VTe(r){return r<0?-1:1}function UTe(r,i,o){var l=r._x1-r._x0,f=i-r._x1,b=(r._y1-r._y0)/(l||f<0&&-0),d=(o-r._y1)/(f||l<0&&-0),w=(b*f+d*l)/(l+f);return(VTe(b)+VTe(d))*Math.min(Math.abs(b),Math.abs(d),.5*Math.abs(w))||0}function qTe(r,i){var o=r._x1-r._x0;return o?(3*(r._y1-r._y0)/o-i)/2:i}function Yse(r,i,o){var l=r._x0,f=r._y0,b=r._x1,d=r._y1,w=(b-l)/3;r._context.bezierCurveTo(l+w,f+w*i,b-w,d-w*o,b,d)}function fG(r){this._context=r}fG.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Yse(this,this._t0,qTe(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(r,i){var o=NaN;if(r=+r,i=+i,!(r===this._x1&&i===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(r,i):this._context.moveTo(r,i);break;case 1:this._point=2;break;case 2:this._point=3,Yse(this,qTe(this,o=UTe(this,r,i)),o);break;default:Yse(this,this._t0,o=UTe(this,r,i));break}this._x0=this._x1,this._x1=r,this._y0=this._y1,this._y1=i,this._t0=o}}};function YTe(r){this._context=new WTe(r)}(YTe.prototype=Object.create(fG.prototype)).point=function(r,i){fG.prototype.point.call(this,i,r)};function WTe(r){this._context=r}WTe.prototype={moveTo:function(r,i){this._context.moveTo(i,r)},closePath:function(){this._context.closePath()},lineTo:function(r,i){this._context.lineTo(i,r)},bezierCurveTo:function(r,i,o,l,f,b){this._context.bezierCurveTo(i,r,l,o,b,f)}};function YNt(r){return new fG(r)}function WNt(r){return new YTe(r)}function KTe(r){this._context=r}KTe.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var r=this._x,i=this._y,o=r.length;if(o)if(this._line?this._context.lineTo(r[0],i[0]):this._context.moveTo(r[0],i[0]),o===2)this._context.lineTo(r[1],i[1]);else for(var l=XTe(r),f=XTe(i),b=0,d=1;d=0;--i)f[i]=(d[i]-f[i+1])/b[i];for(b[o-1]=(r[o]+f[o-1])/2,i=0;i=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(r,i){switch(r=+r,i=+i,this._point){case 0:this._point=1,this._line?this._context.lineTo(r,i):this._context.moveTo(r,i);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,i),this._context.lineTo(r,i);else{var o=this._x*(1-this._t)+r*this._t;this._context.lineTo(o,this._y),this._context.lineTo(o,i)}break}}this._x=r,this._y=i}};function XNt(r){return new dG(r,.5)}function QNt(r){return new dG(r,0)}function ZNt(r){return new dG(r,1)}function qT(r,i,o){this.k=r,this.x=i,this.y=o}qT.prototype={constructor:qT,scale:function(r){return r===1?this:new qT(this.k*r,this.x,this.y)},translate:function(r,i){return r===0&i===0?this:new qT(this.k,this.x+this.k*r,this.y+this.k*i)},apply:function(r){return[r[0]*this.k+this.x,r[1]*this.k+this.y]},applyX:function(r){return r*this.k+this.x},applyY:function(r){return r*this.k+this.y},invert:function(r){return[(r[0]-this.x)/this.k,(r[1]-this.y)/this.k]},invertX:function(r){return(r-this.x)/this.k},invertY:function(r){return(r-this.y)/this.k},rescaleX:function(r){return r.copy().domain(r.range().map(this.invertX,this).map(r.invert,r))},rescaleY:function(r){return r.copy().domain(r.range().map(this.invertY,this).map(r.invert,r))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}},new qT(1,0,0),qT.prototype;/*! @license DOMPurify 2.4.3 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/2.4.3/LICENSE */function a6(r){return a6=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(i){return typeof i}:function(i){return i&&typeof Symbol=="function"&&i.constructor===Symbol&&i!==Symbol.prototype?"symbol":typeof i},a6(r)}function Wse(r,i){return Wse=Object.setPrototypeOf||function(l,f){return l.__proto__=f,l},Wse(r,i)}function JNt(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function gG(r,i,o){return JNt()?gG=Reflect.construct:gG=function(f,b,d){var w=[null];w.push.apply(w,b);var y=Function.bind.apply(f,w),k=new y;return d&&Wse(k,d.prototype),k},gG.apply(null,arguments)}function Cv(r){return ePt(r)||tPt(r)||nPt(r)||rPt()}function ePt(r){if(Array.isArray(r))return Kse(r)}function tPt(r){if(typeof Symbol<"u"&&r[Symbol.iterator]!=null||r["@@iterator"]!=null)return Array.from(r)}function nPt(r,i){if(!!r){if(typeof r=="string")return Kse(r,i);var o=Object.prototype.toString.call(r).slice(8,-1);if(o==="Object"&&r.constructor&&(o=r.constructor.name),o==="Map"||o==="Set")return Array.from(r);if(o==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(o))return Kse(r,i)}}function Kse(r,i){(i==null||i>r.length)&&(i=r.length);for(var o=0,l=new Array(i);o1?o-1:0),f=1;f/gm),wPt=Sv(/\${[\w\W]*}/gm),mPt=Sv(/^data-[\-\w.\u00B7-\uFFFF]/),yPt=Sv(/^aria-[\-\w]+$/),kPt=Sv(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),xPt=Sv(/^(?:\w+script|data):/i),EPt=Sv(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),_Pt=Sv(/^html$/i),TPt=function(){return typeof window>"u"?null:window},CPt=function(i,o){if(a6(i)!=="object"||typeof i.createPolicy!="function")return null;var l=null,f="data-tt-policy-suffix";o.currentScript&&o.currentScript.hasAttribute(f)&&(l=o.currentScript.getAttribute(f));var b="dompurify"+(l?"#"+l:"");try{return i.createPolicy(b,{createHTML:function(w){return w},createScriptURL:function(w){return w}})}catch{return console.warn("TrustedTypes policy "+b+" could not be created."),null}};function iCe(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:TPt(),i=function(bt){return iCe(bt)};if(i.version="2.4.3",i.removed=[],!r||!r.document||r.document.nodeType!==9)return i.isSupported=!1,i;var o=r.document,l=r.document,f=r.DocumentFragment,b=r.HTMLTemplateElement,d=r.Node,w=r.Element,y=r.NodeFilter,k=r.NamedNodeMap,E=k===void 0?r.NamedNodeMap||r.MozNamedAttrMap:k,T=r.HTMLFormElement,C=r.DOMParser,S=r.trustedTypes,L=w.prototype,O=vG(L,"cloneNode"),B=vG(L,"nextSibling"),N=vG(L,"childNodes"),F=vG(L,"parentNode");if(typeof b=="function"){var R=l.createElement("template");R.content&&R.content.ownerDocument&&(l=R.content.ownerDocument)}var q=CPt(S,o),X=q?q.createHTML(""):"",te=l,H=te.implementation,Y=te.createNodeIterator,z=te.createDocumentFragment,W=te.getElementsByTagName,Z=o.importNode,G={};try{G=U8(l).documentMode?l.documentMode:{}}catch{}var ae={};i.isSupported=typeof F=="function"&&H&&typeof H.createHTMLDocument<"u"&&G!==9;var $=bPt,ge=vPt,ee=wPt,de=mPt,re=yPt,ke=xPt,Ce=EPt,_e=kPt,Te=null,Be=xa({},[].concat(Cv(eCe),Cv(Jse),Cv(eae),Cv(tae),Cv(tCe))),Ge=null,Xe=xa({},[].concat(Cv(nCe),Cv(nae),Cv(rCe),Cv(wG))),Ee=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Ze=null,Ie=null,Oe=!0,Le=!0,$e=!1,xe=!1,Ae=!1,je=!1,me=!1,vt=!1,ve=!1,Zt=!1,nt=!0,xn=!1,cn="user-content-",jt=!0,ot=!1,be={},We=null,ct=xa({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Yt=null,Ut=xa({},["audio","video","img","source","image","track"]),Wn=null,Gt=xa({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Rn="http://www.w3.org/1998/Math/MathML",si="http://www.w3.org/2000/svg",$r="http://www.w3.org/1999/xhtml",nr=$r,Kn=!1,Jt=null,en=xa({},[Rn,si,$r],Qse),In,hn=["application/xhtml+xml","text/html"],Fr="text/html",Pt,ei=null,nn=l.createElement("form"),hi=function(bt){return bt instanceof RegExp||bt instanceof Function},Hi=function(bt){ei&&ei===bt||((!bt||a6(bt)!=="object")&&(bt={}),bt=U8(bt),In=hn.indexOf(bt.PARSER_MEDIA_TYPE)===-1?In=Fr:In=bt.PARSER_MEDIA_TYPE,Pt=In==="application/xhtml+xml"?Qse:bG,Te="ALLOWED_TAGS"in bt?xa({},bt.ALLOWED_TAGS,Pt):Be,Ge="ALLOWED_ATTR"in bt?xa({},bt.ALLOWED_ATTR,Pt):Xe,Jt="ALLOWED_NAMESPACES"in bt?xa({},bt.ALLOWED_NAMESPACES,Qse):en,Wn="ADD_URI_SAFE_ATTR"in bt?xa(U8(Gt),bt.ADD_URI_SAFE_ATTR,Pt):Gt,Yt="ADD_DATA_URI_TAGS"in bt?xa(U8(Ut),bt.ADD_DATA_URI_TAGS,Pt):Ut,We="FORBID_CONTENTS"in bt?xa({},bt.FORBID_CONTENTS,Pt):ct,Ze="FORBID_TAGS"in bt?xa({},bt.FORBID_TAGS,Pt):{},Ie="FORBID_ATTR"in bt?xa({},bt.FORBID_ATTR,Pt):{},be="USE_PROFILES"in bt?bt.USE_PROFILES:!1,Oe=bt.ALLOW_ARIA_ATTR!==!1,Le=bt.ALLOW_DATA_ATTR!==!1,$e=bt.ALLOW_UNKNOWN_PROTOCOLS||!1,xe=bt.SAFE_FOR_TEMPLATES||!1,Ae=bt.WHOLE_DOCUMENT||!1,vt=bt.RETURN_DOM||!1,ve=bt.RETURN_DOM_FRAGMENT||!1,Zt=bt.RETURN_TRUSTED_TYPE||!1,me=bt.FORCE_BODY||!1,nt=bt.SANITIZE_DOM!==!1,xn=bt.SANITIZE_NAMED_PROPS||!1,jt=bt.KEEP_CONTENT!==!1,ot=bt.IN_PLACE||!1,_e=bt.ALLOWED_URI_REGEXP||_e,nr=bt.NAMESPACE||$r,bt.CUSTOM_ELEMENT_HANDLING&&hi(bt.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Ee.tagNameCheck=bt.CUSTOM_ELEMENT_HANDLING.tagNameCheck),bt.CUSTOM_ELEMENT_HANDLING&&hi(bt.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Ee.attributeNameCheck=bt.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),bt.CUSTOM_ELEMENT_HANDLING&&typeof bt.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(Ee.allowCustomizedBuiltInElements=bt.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),xe&&(Le=!1),ve&&(vt=!0),be&&(Te=xa({},Cv(tCe)),Ge=[],be.html===!0&&(xa(Te,eCe),xa(Ge,nCe)),be.svg===!0&&(xa(Te,Jse),xa(Ge,nae),xa(Ge,wG)),be.svgFilters===!0&&(xa(Te,eae),xa(Ge,nae),xa(Ge,wG)),be.mathMl===!0&&(xa(Te,tae),xa(Ge,rCe),xa(Ge,wG))),bt.ADD_TAGS&&(Te===Be&&(Te=U8(Te)),xa(Te,bt.ADD_TAGS,Pt)),bt.ADD_ATTR&&(Ge===Xe&&(Ge=U8(Ge)),xa(Ge,bt.ADD_ATTR,Pt)),bt.ADD_URI_SAFE_ATTR&&xa(Wn,bt.ADD_URI_SAFE_ATTR,Pt),bt.FORBID_CONTENTS&&(We===ct&&(We=U8(We)),xa(We,bt.FORBID_CONTENTS,Pt)),jt&&(Te["#text"]=!0),Ae&&xa(Te,["html","head","body"]),Te.table&&(xa(Te,["tbody"]),delete Ze.tbody),Wd&&Wd(bt),ei=bt)},ss=xa({},["mi","mo","mn","ms","mtext"]),ls=xa({},["foreignobject","desc","title","annotation-xml"]),vs=xa({},["title","style","font","a","script"]),ti=xa({},Jse);xa(ti,eae),xa(ti,gPt);var zi=xa({},tae);xa(zi,pPt);var as=function(bt){var $n=F(bt);(!$n||!$n.tagName)&&($n={namespaceURI:nr,tagName:"template"});var Er=bG(bt.tagName),Ss=bG($n.tagName);return Jt[bt.namespaceURI]?bt.namespaceURI===si?$n.namespaceURI===$r?Er==="svg":$n.namespaceURI===Rn?Er==="svg"&&(Ss==="annotation-xml"||ss[Ss]):Boolean(ti[Er]):bt.namespaceURI===Rn?$n.namespaceURI===$r?Er==="math":$n.namespaceURI===si?Er==="math"&&ls[Ss]:Boolean(zi[Er]):bt.namespaceURI===$r?$n.namespaceURI===si&&!ls[Ss]||$n.namespaceURI===Rn&&!ss[Ss]?!1:!zi[Er]&&(vs[Er]||!ti[Er]):!!(In==="application/xhtml+xml"&&Jt[bt.namespaceURI]):!1},ai=function(bt){JL(i.removed,{element:bt});try{bt.parentNode.removeChild(bt)}catch{try{bt.outerHTML=X}catch{bt.remove()}}},hc=function(bt,$n){try{JL(i.removed,{attribute:$n.getAttributeNode(bt),from:$n})}catch{JL(i.removed,{attribute:null,from:$n})}if($n.removeAttribute(bt),bt==="is"&&!Ge[bt])if(vt||ve)try{ai($n)}catch{}else try{$n.setAttribute(bt,"")}catch{}},xu=function(bt){var $n,Er;if(me)bt=" "+bt;else{var Ss=lPt(bt,/^[\r\n\t ]+/);Er=Ss&&Ss[0]}In==="application/xhtml+xml"&&nr===$r&&(bt=''+bt+"");var wo=q?q.createHTML(bt):bt;if(nr===$r)try{$n=new C().parseFromString(wo,In)}catch{}if(!$n||!$n.documentElement){$n=H.createDocument(nr,"template",null);try{$n.documentElement.innerHTML=Kn?X:wo}catch{}}var Po=$n.body||$n.documentElement;return bt&&Er&&Po.insertBefore(l.createTextNode(Er),Po.childNodes[0]||null),nr===$r?W.call($n,Ae?"html":"body")[0]:Ae?$n.documentElement:Po},No=function(bt){return Y.call(bt.ownerDocument||bt,bt,y.SHOW_ELEMENT|y.SHOW_COMMENT|y.SHOW_TEXT,null,!1)},Si=function(bt){return bt instanceof T&&(typeof bt.nodeName!="string"||typeof bt.textContent!="string"||typeof bt.removeChild!="function"||!(bt.attributes instanceof E)||typeof bt.removeAttribute!="function"||typeof bt.setAttribute!="function"||typeof bt.namespaceURI!="string"||typeof bt.insertBefore!="function"||typeof bt.hasChildNodes!="function")},Yc=function(bt){return a6(d)==="object"?bt instanceof d:bt&&a6(bt)==="object"&&typeof bt.nodeType=="number"&&typeof bt.nodeName=="string"},lh=function(bt,$n,Er){!ae[bt]||uPt(ae[bt],function(Ss){Ss.call(i,$n,Er,ei)})},su=function(bt){var $n;if(lh("beforeSanitizeElements",bt,null),Si(bt)||Kd(/[\u0080-\uFFFF]/,bt.nodeName))return ai(bt),!0;var Er=Pt(bt.nodeName);if(lh("uponSanitizeElement",bt,{tagName:Er,allowedTags:Te}),bt.hasChildNodes()&&!Yc(bt.firstElementChild)&&(!Yc(bt.content)||!Yc(bt.content.firstElementChild))&&Kd(/<[/\w]/g,bt.innerHTML)&&Kd(/<[/\w]/g,bt.textContent)||Er==="select"&&Kd(/=0;--Ra)Ss.insertBefore(O(wo[Ra],!0),B(bt))}return ai(bt),!0}return bt instanceof w&&!as(bt)||(Er==="noscript"||Er==="noembed")&&Kd(/<\/no(script|embed)/i,bt.innerHTML)?(ai(bt),!0):(xe&&bt.nodeType===3&&($n=bt.textContent,$n=Av($n,$," "),$n=Av($n,ge," "),$n=Av($n,ee," "),bt.textContent!==$n&&(JL(i.removed,{element:bt.cloneNode()}),bt.textContent=$n)),lh("afterSanitizeElements",bt,null),!1)},Ru=function(bt,$n,Er){if(nt&&($n==="id"||$n==="name")&&(Er in l||Er in nn))return!1;if(!(Le&&!Ie[$n]&&Kd(de,$n))){if(!(Oe&&Kd(re,$n))){if(!Ge[$n]||Ie[$n]){if(!(fc(bt)&&(Ee.tagNameCheck instanceof RegExp&&Kd(Ee.tagNameCheck,bt)||Ee.tagNameCheck instanceof Function&&Ee.tagNameCheck(bt))&&(Ee.attributeNameCheck instanceof RegExp&&Kd(Ee.attributeNameCheck,$n)||Ee.attributeNameCheck instanceof Function&&Ee.attributeNameCheck($n))||$n==="is"&&Ee.allowCustomizedBuiltInElements&&(Ee.tagNameCheck instanceof RegExp&&Kd(Ee.tagNameCheck,Er)||Ee.tagNameCheck instanceof Function&&Ee.tagNameCheck(Er))))return!1}else if(!Wn[$n]){if(!Kd(_e,Av(Er,Ce,""))){if(!(($n==="src"||$n==="xlink:href"||$n==="href")&&bt!=="script"&&hPt(Er,"data:")===0&&Yt[bt])){if(!($e&&!Kd(ke,Av(Er,Ce,"")))){if(Er)return!1}}}}}}return!0},fc=function(bt){return bt.indexOf("-")>0},Ll=function(bt){var $n,Er,Ss,wo;lh("beforeSanitizeAttributes",bt,null);var Po=bt.attributes;if(!!Po){var Ra={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Ge};for(wo=Po.length;wo--;){$n=Po[wo];var Eu=$n,Lc=Eu.name,bd=Eu.namespaceURI;if(Er=Lc==="value"?$n.value:fPt($n.value),Ss=Pt(Lc),Ra.attrName=Ss,Ra.attrValue=Er,Ra.keepAttr=!0,Ra.forceKeepAttr=void 0,lh("uponSanitizeAttribute",bt,Ra),Er=Ra.attrValue,!Ra.forceKeepAttr&&(hc(Lc,bt),!!Ra.keepAttr)){if(Kd(/\/>/i,Er)){hc(Lc,bt);continue}xe&&(Er=Av(Er,$," "),Er=Av(Er,ge," "),Er=Av(Er,ee," "));var hh=Pt(bt.nodeName);if(!!Ru(hh,Ss,Er)){if(xn&&(Ss==="id"||Ss==="name")&&(hc(Lc,bt),Er=cn+Er),q&&a6(S)==="object"&&typeof S.getAttributeType=="function"&&!bd)switch(S.getAttributeType(hh,Ss)){case"TrustedHTML":Er=q.createHTML(Er);break;case"TrustedScriptURL":Er=q.createScriptURL(Er);break}try{bd?bt.setAttributeNS(bd,Lc,Er):bt.setAttribute(Lc,Er),JTe(i.removed)}catch{}}}}lh("afterSanitizeAttributes",bt,null)}},ol=function Ur(bt){var $n,Er=No(bt);for(lh("beforeSanitizeShadowDOM",bt,null);$n=Er.nextNode();)lh("uponSanitizeShadowNode",$n,null),!su($n)&&($n.content instanceof f&&Ur($n.content),Ll($n));lh("afterSanitizeShadowDOM",bt,null)};return i.sanitize=function(Ur){var bt=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},$n,Er,Ss,wo,Po;if(Kn=!Ur,Kn&&(Ur=""),typeof Ur!="string"&&!Yc(Ur)){if(typeof Ur.toString!="function")throw Zse("toString is not a function");if(Ur=Ur.toString(),typeof Ur!="string")throw Zse("dirty is not a string, aborting")}if(!i.isSupported){if(a6(r.toStaticHTML)==="object"||typeof r.toStaticHTML=="function"){if(typeof Ur=="string")return r.toStaticHTML(Ur);if(Yc(Ur))return r.toStaticHTML(Ur.outerHTML)}return Ur}if(je||Hi(bt),i.removed=[],typeof Ur=="string"&&(ot=!1),ot){if(Ur.nodeName){var Ra=Pt(Ur.nodeName);if(!Te[Ra]||Ze[Ra])throw Zse("root node is forbidden and cannot be sanitized in-place")}}else if(Ur instanceof d)$n=xu(""),Er=$n.ownerDocument.importNode(Ur,!0),Er.nodeType===1&&Er.nodeName==="BODY"||Er.nodeName==="HTML"?$n=Er:$n.appendChild(Er);else{if(!vt&&!xe&&!Ae&&Ur.indexOf("<")===-1)return q&&Zt?q.createHTML(Ur):Ur;if($n=xu(Ur),!$n)return vt?null:Zt?X:""}$n&&me&&ai($n.firstChild);for(var Eu=No(ot?Ur:$n);Ss=Eu.nextNode();)Ss.nodeType===3&&Ss===wo||su(Ss)||(Ss.content instanceof f&&ol(Ss.content),Ll(Ss),wo=Ss);if(wo=null,ot)return Ur;if(vt){if(ve)for(Po=z.call($n.ownerDocument);$n.firstChild;)Po.appendChild($n.firstChild);else Po=$n;return Ge.shadowroot&&(Po=Z.call(o,Po,!0)),Po}var Lc=Ae?$n.outerHTML:$n.innerHTML;return Ae&&Te["!doctype"]&&$n.ownerDocument&&$n.ownerDocument.doctype&&$n.ownerDocument.doctype.name&&Kd(_Pt,$n.ownerDocument.doctype.name)&&(Lc="
-`+Lc),xe&&(Lc=Av(Lc,$," "),Lc=Av(Lc,ge," "),Lc=Av(Lc,ee," ")),q&&Zt?q.createHTML(Lc):Lc},i.setConfig=function(Ur){Hi(Ur),je=!0},i.clearConfig=function(){ei=null,je=!1},i.isValidAttribute=function(Ur,bt,$n){ei||Hi({});var Er=Pt(Ur),Ss=Pt(bt);return Ru(Er,Ss,$n)},i.addHook=function(Ur,bt){typeof bt=="function"&&(ae[Ur]=ae[Ur]||[],JL(ae[Ur],bt))},i.removeHook=function(Ur){if(ae[Ur])return JTe(ae[Ur])},i.removeHooks=function(Ur){ae[Ur]&&(ae[Ur]=[])},i.removeAllHooks=function(){ae={}},i}var eI=iCe();const SPt=r=>r?oCe(r).replace(/\\n/g,"#br#").split("#br#"):[""],sCe=r=>eI.sanitize(r),aCe=(r,i)=>{var o;if(((o=i.flowchart)==null?void 0:o.htmlLabels)!==!1){const l=i.securityLevel;l==="antiscript"||l==="strict"?r=sCe(r):l!=="loose"&&(r=oCe(r),r=r.replace(//g,">"),r=r.replace(/=/g,"="),r=LPt(r))}return r},up=(r,i)=>r&&(i.dompurifyConfig?r=eI.sanitize(aCe(r,i),i.dompurifyConfig).toString():r=eI.sanitize(aCe(r,i),{FORBID_TAGS:["style"]}).toString(),r),APt=(r,i)=>typeof r=="string"?up(r,i):r.flat().map(o=>up(o,i)),mG=/
/gi,MPt=r=>mG.test(r),DPt=r=>r.split(mG),LPt=r=>r.replace(/#br#/g,"
"),oCe=r=>r.replace(mG,"#br#"),IPt=r=>{let i="";return r&&(i=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,i=i.replaceAll(/\(/g,"\\("),i=i.replaceAll(/\)/g,"\\)")),i},cf=r=>!(r===!1||["false","null","0"].includes(String(r).trim().toLowerCase())),o6=function(r){let i=r;if(r.split("~").length-1>=2){let o=i;do i=o,o=i.replace(/~([^\s,:;]+)~/,"<$1>");while(o!=i);return o6(o)}else return i},Cs={getRows:SPt,sanitizeText:up,sanitizeTextOrArray:APt,hasBreaks:MPt,splitBreaks:DPt,lineBreakRegex:mG,removeScript:sCe,getUrl:IPt,evaluate:cf},yG={min:{r:0,g:0,b:0,s:0,l:0,a:0},max:{r:255,g:255,b:255,h:360,s:100,l:100,a:1},clamp:{r:r=>r>=255?255:r<0?0:r,g:r=>r>=255?255:r<0?0:r,b:r=>r>=255?255:r<0?0:r,h:r=>r%360,s:r=>r>=100?100:r<0?0:r,l:r=>r>=100?100:r<0?0:r,a:r=>r>=1?1:r<0?0:r},toLinear:r=>{const i=r/255;return r>.03928?Math.pow((i+.055)/1.055,2.4):i/12.92},hue2rgb:(r,i,o)=>(o<0&&(o+=1),o>1&&(o-=1),o<1/6?r+(i-r)*6*o:o<1/2?i:o<2/3?r+(i-r)*(2/3-o)*6:r),hsl2rgb:({h:r,s:i,l:o},l)=>{if(!i)return o*2.55;r/=360,i/=100,o/=100;const f=o<.5?o*(1+i):o+i-o*i,b=2*o-f;switch(l){case"r":return yG.hue2rgb(b,f,r+1/3)*255;case"g":return yG.hue2rgb(b,f,r)*255;case"b":return yG.hue2rgb(b,f,r-1/3)*255}},rgb2hsl:({r,g:i,b:o},l)=>{r/=255,i/=255,o/=255;const f=Math.max(r,i,o),b=Math.min(r,i,o),d=(f+b)/2;if(l==="l")return d*100;if(f===b)return 0;const w=f-b,y=d>.5?w/(2-f-b):w/(f+b);if(l==="s")return y*100;switch(f){case r:return((i-o)/w+(ii>o?Math.min(i,Math.max(o,r)):Math.min(o,Math.max(i,r)),round:r=>Math.round(r*1e10)/1e10},unit:{dec2hex:r=>{const i=Math.round(r).toString(16);return i.length>1?i:`0${i}`}}},c6={};for(let r=0;r<=255;r++)c6[r]=Bs.unit.dec2hex(r);const cd={ALL:0,RGB:1,HSL:2};class OPt{constructor(){this.type=cd.ALL}get(){return this.type}set(i){if(this.type&&this.type!==i)throw new Error("Cannot change both RGB and HSL channels at the same time");this.type=i}reset(){this.type=cd.ALL}is(i){return this.type===i}}const NPt=OPt;class PPt{constructor(i,o){this.color=o,this.changed=!1,this.data=i,this.type=new NPt}set(i,o){return this.color=o,this.changed=!1,this.data=i,this.type.type=cd.ALL,this}_ensureHSL(){const i=this.data,{h:o,s:l,l:f}=i;o===void 0&&(i.h=Bs.channel.rgb2hsl(i,"h")),l===void 0&&(i.s=Bs.channel.rgb2hsl(i,"s")),f===void 0&&(i.l=Bs.channel.rgb2hsl(i,"l"))}_ensureRGB(){const i=this.data,{r:o,g:l,b:f}=i;o===void 0&&(i.r=Bs.channel.hsl2rgb(i,"r")),l===void 0&&(i.g=Bs.channel.hsl2rgb(i,"g")),f===void 0&&(i.b=Bs.channel.hsl2rgb(i,"b"))}get r(){const i=this.data,o=i.r;return!this.type.is(cd.HSL)&&o!==void 0?o:(this._ensureHSL(),Bs.channel.hsl2rgb(i,"r"))}get g(){const i=this.data,o=i.g;return!this.type.is(cd.HSL)&&o!==void 0?o:(this._ensureHSL(),Bs.channel.hsl2rgb(i,"g"))}get b(){const i=this.data,o=i.b;return!this.type.is(cd.HSL)&&o!==void 0?o:(this._ensureHSL(),Bs.channel.hsl2rgb(i,"b"))}get h(){const i=this.data,o=i.h;return!this.type.is(cd.RGB)&&o!==void 0?o:(this._ensureRGB(),Bs.channel.rgb2hsl(i,"h"))}get s(){const i=this.data,o=i.s;return!this.type.is(cd.RGB)&&o!==void 0?o:(this._ensureRGB(),Bs.channel.rgb2hsl(i,"s"))}get l(){const i=this.data,o=i.l;return!this.type.is(cd.RGB)&&o!==void 0?o:(this._ensureRGB(),Bs.channel.rgb2hsl(i,"l"))}get a(){return this.data.a}set r(i){this.type.set(cd.RGB),this.changed=!0,this.data.r=i}set g(i){this.type.set(cd.RGB),this.changed=!0,this.data.g=i}set b(i){this.type.set(cd.RGB),this.changed=!0,this.data.b=i}set h(i){this.type.set(cd.HSL),this.changed=!0,this.data.h=i}set s(i){this.type.set(cd.HSL),this.changed=!0,this.data.s=i}set l(i){this.type.set(cd.HSL),this.changed=!0,this.data.l=i}set a(i){this.changed=!0,this.data.a=i}}const BPt=PPt,kG=new BPt({r:0,g:0,b:0,a:0},"transparent"),cCe={re:/^#((?:[a-f0-9]{2}){2,4}|[a-f0-9]{3})$/i,parse:r=>{if(r.charCodeAt(0)!==35)return;const i=r.match(cCe.re);if(!i)return;const o=i[1],l=parseInt(o,16),f=o.length,b=f%4===0,d=f>4,w=d?1:17,y=d?8:4,k=b?0:-1,E=d?255:15;return kG.set({r:(l>>y*(k+3)&E)*w,g:(l>>y*(k+2)&E)*w,b:(l>>y*(k+1)&E)*w,a:b?(l&E)*w/255:1},r)},stringify:r=>{const{r:i,g:o,b:l,a:f}=r;return f<1?`#${c6[Math.round(i)]}${c6[Math.round(o)]}${c6[Math.round(l)]}${c6[Math.round(f*255)]}`:`#${c6[Math.round(i)]}${c6[Math.round(o)]}${c6[Math.round(l)]}`}},tI=cCe,xG={re:/^hsla?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(?:deg|grad|rad|turn)?)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?%)(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e-?\d+)?(%)?))?\s*?\)$/i,hueRe:/^(.+?)(deg|grad|rad|turn)$/i,_hue2deg:r=>{const i=r.match(xG.hueRe);if(i){const[,o,l]=i;switch(l){case"grad":return Bs.channel.clamp.h(parseFloat(o)*.9);case"rad":return Bs.channel.clamp.h(parseFloat(o)*180/Math.PI);case"turn":return Bs.channel.clamp.h(parseFloat(o)*360)}}return Bs.channel.clamp.h(parseFloat(r))},parse:r=>{const i=r.charCodeAt(0);if(i!==104&&i!==72)return;const o=r.match(xG.re);if(!o)return;const[,l,f,b,d,w]=o;return kG.set({h:xG._hue2deg(l),s:Bs.channel.clamp.s(parseFloat(f)),l:Bs.channel.clamp.l(parseFloat(b)),a:d?Bs.channel.clamp.a(w?parseFloat(d)/100:parseFloat(d)):1},r)},stringify:r=>{const{h:i,s:o,l,a:f}=r;return f<1?`hsla(${Bs.lang.round(i)}, ${Bs.lang.round(o)}%, ${Bs.lang.round(l)}%, ${f})`:`hsl(${Bs.lang.round(i)}, ${Bs.lang.round(o)}%, ${Bs.lang.round(l)}%)`}},EG=xG,_G={colors:{aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyanaqua:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",gold:"#ffd700",goldenrod:"#daa520",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavender:"#e6e6fa",lavenderblush:"#fff0f5",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",transparent:"#00000000",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"},parse:r=>{r=r.toLowerCase();const i=_G.colors[r];if(!!i)return tI.parse(i)},stringify:r=>{const i=tI.stringify(r);for(const o in _G.colors)if(_G.colors[o]===i)return o}},uCe=_G,lCe={re:/^rgba?\(\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))\s*?(?:,|\s)\s*?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?))(?:\s*?(?:,|\/)\s*?\+?(-?(?:\d+(?:\.\d+)?|(?:\.\d+))(?:e\d+)?(%?)))?\s*?\)$/i,parse:r=>{const i=r.charCodeAt(0);if(i!==114&&i!==82)return;const o=r.match(lCe.re);if(!o)return;const[,l,f,b,d,w,y,k,E]=o;return kG.set({r:Bs.channel.clamp.r(f?parseFloat(l)*2.55:parseFloat(l)),g:Bs.channel.clamp.g(d?parseFloat(b)*2.55:parseFloat(b)),b:Bs.channel.clamp.b(y?parseFloat(w)*2.55:parseFloat(w)),a:k?Bs.channel.clamp.a(E?parseFloat(k)/100:parseFloat(k)):1},r)},stringify:r=>{const{r:i,g:o,b:l,a:f}=r;return f<1?`rgba(${Bs.lang.round(i)}, ${Bs.lang.round(o)}, ${Bs.lang.round(l)}, ${Bs.lang.round(f)})`:`rgb(${Bs.lang.round(i)}, ${Bs.lang.round(o)}, ${Bs.lang.round(l)})`}},TG=lCe,Nm={format:{keyword:uCe,hex:tI,rgb:TG,rgba:TG,hsl:EG,hsla:EG},parse:r=>{if(typeof r!="string")return r;const i=tI.parse(r)||TG.parse(r)||EG.parse(r)||uCe.parse(r);if(i)return i;throw new Error(`Unsupported color format: "${r}"`)},stringify:r=>!r.changed&&r.color?r.color:r.type.is(cd.HSL)||r.data.r===void 0?EG.stringify(r):r.a<1||!Number.isInteger(r.r)||!Number.isInteger(r.g)||!Number.isInteger(r.b)?TG.stringify(r):tI.stringify(r)},hCe=(r,i)=>{const o=Nm.parse(r);for(const l in i)o[l]=Bs.channel.clamp[l](i[l]);return Nm.stringify(o)},nI=(r,i,o=0,l=1)=>{if(typeof r!="number")return hCe(r,{a:i});const f=kG.set({r:Bs.channel.clamp.r(r),g:Bs.channel.clamp.g(i),b:Bs.channel.clamp.b(o),a:Bs.channel.clamp.a(l)});return Nm.stringify(f)},FPt=r=>{const{r:i,g:o,b:l}=Nm.parse(r),f=.2126*Bs.channel.toLinear(i)+.7152*Bs.channel.toLinear(o)+.0722*Bs.channel.toLinear(l);return Bs.lang.round(f)},RPt=r=>FPt(r)>=.5,fCe=r=>!RPt(r),dCe=(r,i,o)=>{const l=Nm.parse(r),f=l[i],b=Bs.channel.clamp[i](f+o);return f!==b&&(l[i]=b),Nm.stringify(l)},is=(r,i)=>dCe(r,"l",i),Ds=(r,i)=>dCe(r,"l",-i),vn=(r,i)=>{const o=Nm.parse(r),l={};for(const f in i)!i[f]||(l[f]=o[f]+i[f]);return hCe(r,l)},jPt=(r,i,o=50)=>{const{r:l,g:f,b,a:d}=Nm.parse(r),{r:w,g:y,b:k,a:E}=Nm.parse(i),T=o/100,C=T*2-1,S=d-E,O=((C*S===-1?C:(C+S)/(1+C*S))+1)/2,B=1-O,N=l*O+w*B,F=f*O+y*B,R=b*O+k*B,q=d*T+E*(1-T);return nI(N,F,R,q)},Kr=(r,i=100)=>{const o=Nm.parse(r);return o.r=255-o.r,o.g=255-o.g,o.b=255-o.b,jPt(o,r,i)},Xd=(r,i)=>i?vn(r,{s:-40,l:10}):vn(r,{s:-40,l:-10}),CG="#ffffff",SG="#f2f2f2";class $Pt{constructor(){this.background="#f4f4f4",this.primaryColor="#fff4dd",this.noteBkgColor="#fff5ad",this.noteTextColor="#333",this.THEME_COLOR_LIMIT=12,this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px"}updateColors(){if(this.primaryTextColor=this.primaryTextColor||(this.darkMode?"#eee":"#333"),this.secondaryColor=this.secondaryColor||vn(this.primaryColor,{h:-120}),this.tertiaryColor=this.tertiaryColor||vn(this.primaryColor,{h:180,l:5}),this.primaryBorderColor=this.primaryBorderColor||Xd(this.primaryColor,this.darkMode),this.secondaryBorderColor=this.secondaryBorderColor||Xd(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=this.tertiaryBorderColor||Xd(this.tertiaryColor,this.darkMode),this.noteBorderColor=this.noteBorderColor||Xd(this.noteBkgColor,this.darkMode),this.noteBkgColor=this.noteBkgColor||"#fff5ad",this.noteTextColor=this.noteTextColor||"#333",this.secondaryTextColor=this.secondaryTextColor||Kr(this.secondaryColor),this.tertiaryTextColor=this.tertiaryTextColor||Kr(this.tertiaryColor),this.lineColor=this.lineColor||Kr(this.background),this.textColor=this.textColor||this.primaryTextColor,this.nodeBkg=this.nodeBkg||this.primaryColor,this.mainBkg=this.mainBkg||this.primaryColor,this.nodeBorder=this.nodeBorder||this.primaryBorderColor,this.clusterBkg=this.clusterBkg||this.tertiaryColor,this.clusterBorder=this.clusterBorder||this.tertiaryBorderColor,this.defaultLinkColor=this.defaultLinkColor||this.lineColor,this.titleColor=this.titleColor||this.tertiaryTextColor,this.edgeLabelBackground=this.edgeLabelBackground||(this.darkMode?Ds(this.secondaryColor,30):this.secondaryColor),this.nodeTextColor=this.nodeTextColor||this.primaryTextColor,this.actorBorder=this.actorBorder||this.primaryBorderColor,this.actorBkg=this.actorBkg||this.mainBkg,this.actorTextColor=this.actorTextColor||this.primaryTextColor,this.actorLineColor=this.actorLineColor||"grey",this.labelBoxBkgColor=this.labelBoxBkgColor||this.actorBkg,this.signalColor=this.signalColor||this.textColor,this.signalTextColor=this.signalTextColor||this.textColor,this.labelBoxBorderColor=this.labelBoxBorderColor||this.actorBorder,this.labelTextColor=this.labelTextColor||this.actorTextColor,this.loopTextColor=this.loopTextColor||this.actorTextColor,this.activationBorderColor=this.activationBorderColor||Ds(this.secondaryColor,10),this.activationBkgColor=this.activationBkgColor||this.secondaryColor,this.sequenceNumberColor=this.sequenceNumberColor||Kr(this.lineColor),this.sectionBkgColor=this.sectionBkgColor||this.tertiaryColor,this.altSectionBkgColor=this.altSectionBkgColor||"white",this.sectionBkgColor=this.sectionBkgColor||this.secondaryColor,this.sectionBkgColor2=this.sectionBkgColor2||this.primaryColor,this.excludeBkgColor=this.excludeBkgColor||"#eeeeee",this.taskBorderColor=this.taskBorderColor||this.primaryBorderColor,this.taskBkgColor=this.taskBkgColor||this.primaryColor,this.activeTaskBorderColor=this.activeTaskBorderColor||this.primaryColor,this.activeTaskBkgColor=this.activeTaskBkgColor||is(this.primaryColor,23),this.gridColor=this.gridColor||"lightgrey",this.doneTaskBkgColor=this.doneTaskBkgColor||"lightgrey",this.doneTaskBorderColor=this.doneTaskBorderColor||"grey",this.critBorderColor=this.critBorderColor||"#ff8888",this.critBkgColor=this.critBkgColor||"red",this.todayLineColor=this.todayLineColor||"red",this.taskTextColor=this.taskTextColor||this.textColor,this.taskTextOutsideColor=this.taskTextOutsideColor||this.textColor,this.taskTextLightColor=this.taskTextLightColor||this.textColor,this.taskTextColor=this.taskTextColor||this.primaryTextColor,this.taskTextDarkColor=this.taskTextDarkColor||this.textColor,this.taskTextClickableColor=this.taskTextClickableColor||"#003163",this.personBorder=this.personBorder||this.primaryBorderColor,this.personBkg=this.personBkg||this.mainBkg,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||this.tertiaryColor,this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.nodeBorder,this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.specialStateColor=this.lineColor,this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||vn(this.primaryColor,{h:30}),this.cScale4=this.cScale4||vn(this.primaryColor,{h:60}),this.cScale5=this.cScale5||vn(this.primaryColor,{h:90}),this.cScale6=this.cScale6||vn(this.primaryColor,{h:120}),this.cScale7=this.cScale7||vn(this.primaryColor,{h:150}),this.cScale8=this.cScale8||vn(this.primaryColor,{h:210,l:150}),this.cScale9=this.cScale9||vn(this.primaryColor,{h:270}),this.cScale10=this.cScale10||vn(this.primaryColor,{h:300}),this.cScale11=this.cScale11||vn(this.primaryColor,{h:330}),this.darkMode)for(let o=0;o{this[l]=i[l]}),this.updateColors(),o.forEach(l=>{this[l]=i[l]})}}const HPt=r=>{const i=new $Pt;return i.calculate(r),i};class zPt{constructor(){this.background="#333",this.primaryColor="#1f2020",this.secondaryColor=is(this.primaryColor,16),this.tertiaryColor=vn(this.primaryColor,{h:-160}),this.primaryBorderColor=Kr(this.background),this.secondaryBorderColor=Xd(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Xd(this.tertiaryColor,this.darkMode),this.primaryTextColor=Kr(this.primaryColor),this.secondaryTextColor=Kr(this.secondaryColor),this.tertiaryTextColor=Kr(this.tertiaryColor),this.lineColor=Kr(this.background),this.textColor=Kr(this.background),this.mainBkg="#1f2020",this.secondBkg="calculated",this.mainContrastColor="lightgrey",this.darkTextColor=is(Kr("#323D47"),10),this.lineColor="calculated",this.border1="#81B1DB",this.border2=nI(255,255,255,.25),this.arrowheadColor="calculated",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#181818",this.textColor="#ccc",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#F9FFFE",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="calculated",this.activationBkgColor="calculated",this.sequenceNumberColor="black",this.sectionBkgColor=Ds("#EAE8D9",30),this.altSectionBkgColor="calculated",this.sectionBkgColor2="#EAE8D9",this.taskBorderColor=nI(255,255,255,70),this.taskBkgColor="calculated",this.taskTextColor="calculated",this.taskTextLightColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor=nI(255,255,255,50),this.activeTaskBkgColor="#81B1DB",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="grey",this.critBorderColor="#E83737",this.critBkgColor="#E83737",this.taskTextDarkColor="calculated",this.todayLineColor="#DB5757",this.personBorder="calculated",this.personBkg="calculated",this.labelColor="calculated",this.errorBkgColor="#a44141",this.errorTextColor="#ddd"}updateColors(){this.secondBkg=is(this.mainBkg,16),this.lineColor=this.mainContrastColor,this.arrowheadColor=this.mainContrastColor,this.nodeBkg=this.mainBkg,this.nodeBorder=this.border1,this.clusterBkg=this.secondBkg,this.clusterBorder=this.border2,this.defaultLinkColor=this.lineColor,this.edgeLabelBackground=is(this.labelBackground,25),this.actorBorder=this.border1,this.actorBkg=this.mainBkg,this.actorTextColor=this.mainContrastColor,this.actorLineColor=this.mainContrastColor,this.signalColor=this.mainContrastColor,this.signalTextColor=this.mainContrastColor,this.labelBoxBkgColor=this.actorBkg,this.labelBoxBorderColor=this.actorBorder,this.labelTextColor=this.mainContrastColor,this.loopTextColor=this.mainContrastColor,this.noteBorderColor=this.secondaryBorderColor,this.noteBkgColor=this.secondBkg,this.noteTextColor=this.secondaryTextColor,this.activationBorderColor=this.border1,this.activationBkgColor=this.secondBkg,this.altSectionBkgColor=this.background,this.taskBkgColor=is(this.mainBkg,23),this.taskTextColor=this.darkTextColor,this.taskTextLightColor=this.mainContrastColor,this.taskTextOutsideColor=this.taskTextLightColor,this.gridColor=this.mainContrastColor,this.doneTaskBkgColor=this.mainContrastColor,this.taskTextDarkColor=this.darkTextColor,this.transitionColor=this.transitionColor||this.lineColor,this.transitionLabelColor=this.transitionLabelColor||this.textColor,this.stateLabelColor=this.stateLabelColor||this.stateBkg||this.primaryTextColor,this.stateBkg=this.stateBkg||this.mainBkg,this.labelBackgroundColor=this.labelBackgroundColor||this.stateBkg,this.compositeBackground=this.compositeBackground||this.background||this.tertiaryColor,this.altBackground=this.altBackground||"#555",this.compositeTitleBackground=this.compositeTitleBackground||this.mainBkg,this.compositeBorder=this.compositeBorder||this.nodeBorder,this.innerEndBackground=this.primaryBorderColor,this.specialStateColor="#f4f4f4",this.errorBkgColor=this.errorBkgColor||this.tertiaryColor,this.errorTextColor=this.errorTextColor||this.tertiaryTextColor,this.fillType0=this.primaryColor,this.fillType1=this.secondaryColor,this.fillType2=vn(this.primaryColor,{h:64}),this.fillType3=vn(this.secondaryColor,{h:64}),this.fillType4=vn(this.primaryColor,{h:-64}),this.fillType5=vn(this.secondaryColor,{h:-64}),this.fillType6=vn(this.primaryColor,{h:128}),this.fillType7=vn(this.secondaryColor,{h:128}),this.cScale1=this.cScale1||"#0b0000",this.cScale2=this.cScale2||"#4d1037",this.cScale3=this.cScale3||"#3f5258",this.cScale4=this.cScale4||"#4f2f1b",this.cScale5=this.cScale5||"#6e0a0a",this.cScale6=this.cScale6||"#3b0048",this.cScale7=this.cScale7||"#995a01",this.cScale8=this.cScale8||"#154706",this.cScale9=this.cScale9||"#161722",this.cScale10=this.cScale10||"#00296f",this.cScale11=this.cScale11||"#01629c",this.cScale12=this.cScale12||"#010029",this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||vn(this.primaryColor,{h:30}),this.cScale4=this.cScale4||vn(this.primaryColor,{h:60}),this.cScale5=this.cScale5||vn(this.primaryColor,{h:90}),this.cScale6=this.cScale6||vn(this.primaryColor,{h:120}),this.cScale7=this.cScale7||vn(this.primaryColor,{h:150}),this.cScale8=this.cScale8||vn(this.primaryColor,{h:210}),this.cScale9=this.cScale9||vn(this.primaryColor,{h:270}),this.cScale10=this.cScale10||vn(this.primaryColor,{h:300}),this.cScale11=this.cScale11||vn(this.primaryColor,{h:330});for(let i=0;i{this[l]=i[l]}),this.updateColors(),o.forEach(l=>{this[l]=i[l]})}}const GPt=r=>{const i=new zPt;return i.calculate(r),i};class VPt{constructor(){this.background="#f4f4f4",this.primaryColor="#ECECFF",this.secondaryColor=vn(this.primaryColor,{h:120}),this.secondaryColor="#ffffde",this.tertiaryColor=vn(this.primaryColor,{h:-160}),this.primaryBorderColor=Xd(this.primaryColor,this.darkMode),this.secondaryBorderColor=Xd(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Xd(this.tertiaryColor,this.darkMode),this.primaryTextColor=Kr(this.primaryColor),this.secondaryTextColor=Kr(this.secondaryColor),this.tertiaryTextColor=Kr(this.tertiaryColor),this.lineColor=Kr(this.background),this.textColor=Kr(this.background),this.background="white",this.mainBkg="#ECECFF",this.secondBkg="#ffffde",this.lineColor="#333333",this.border1="#9370DB",this.border2="#aaaa33",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.labelBackground="#e8e8e8",this.textColor="#333",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="calculated",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="grey",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="calculated",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="calculated",this.taskTextColor=this.taskTextLightColor,this.taskTextDarkColor="calculated",this.taskTextOutsideColor=this.taskTextDarkColor,this.taskTextClickableColor="calculated",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBorderColor="calculated",this.critBkgColor="calculated",this.todayLineColor="calculated",this.sectionBkgColor=nI(102,102,255,.49),this.altSectionBkgColor="white",this.sectionBkgColor2="#fff400",this.taskBorderColor="#534fbc",this.taskBkgColor="#8a90dd",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="#534fbc",this.activeTaskBkgColor="#bfc7ff",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder="calculated",this.personBkg="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222",this.updateColors()}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||vn(this.primaryColor,{h:30}),this.cScale4=this.cScale4||vn(this.primaryColor,{h:60}),this.cScale5=this.cScale5||vn(this.primaryColor,{h:90}),this.cScale6=this.cScale6||vn(this.primaryColor,{h:120}),this.cScale7=this.cScale7||vn(this.primaryColor,{h:150}),this.cScale8=this.cScale8||vn(this.primaryColor,{h:210}),this.cScale9=this.cScale9||vn(this.primaryColor,{h:270}),this.cScale10=this.cScale10||vn(this.primaryColor,{h:300}),this.cScale11=this.cScale11||vn(this.primaryColor,{h:330}),this["cScalePeer"+1]=this["cScalePeer"+1]||Ds(this.secondaryColor,45),this["cScalePeer"+2]=this["cScalePeer"+2]||Ds(this.tertiaryColor,40);for(let i=0;i{this[l]=i[l]}),this.updateColors(),o.forEach(l=>{this[l]=i[l]})}}const UPt=r=>{const i=new VPt;return i.calculate(r),i};class qPt{constructor(){this.background="#f4f4f4",this.primaryColor="#cde498",this.secondaryColor="#cdffb2",this.background="white",this.mainBkg="#cde498",this.secondBkg="#cdffb2",this.lineColor="green",this.border1="#13540c",this.border2="#6eaa49",this.arrowheadColor="green",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.tertiaryColor=is("#cde498",10),this.primaryBorderColor=Xd(this.primaryColor,this.darkMode),this.secondaryBorderColor=Xd(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Xd(this.tertiaryColor,this.darkMode),this.primaryTextColor=Kr(this.primaryColor),this.secondaryTextColor=Kr(this.secondaryColor),this.tertiaryTextColor=Kr(this.primaryColor),this.lineColor=Kr(this.background),this.textColor=Kr(this.background),this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="#333",this.edgeLabelBackground="#e8e8e8",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="black",this.actorLineColor="grey",this.signalColor="#333",this.signalTextColor="#333",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="#326932",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="#fff5ad",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="#6eaa49",this.altSectionBkgColor="white",this.sectionBkgColor2="#6eaa49",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="#487e3a",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="black",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="lightgrey",this.doneTaskBkgColor="lightgrey",this.doneTaskBorderColor="grey",this.critBorderColor="#ff8888",this.critBkgColor="red",this.todayLineColor="red",this.personBorder="calculated",this.personBkg="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.cScale0=this.cScale0||this.primaryColor,this.cScale1=this.cScale1||this.secondaryColor,this.cScale2=this.cScale2||this.tertiaryColor,this.cScale3=this.cScale3||vn(this.primaryColor,{h:30}),this.cScale4=this.cScale4||vn(this.primaryColor,{h:60}),this.cScale5=this.cScale5||vn(this.primaryColor,{h:90}),this.cScale6=this.cScale6||vn(this.primaryColor,{h:120}),this.cScale7=this.cScale7||vn(this.primaryColor,{h:150}),this.cScale8=this.cScale8||vn(this.primaryColor,{h:210}),this.cScale9=this.cScale9||vn(this.primaryColor,{h:270}),this.cScale10=this.cScale10||vn(this.primaryColor,{h:300}),this.cScale11=this.cScale11||vn(this.primaryColor,{h:330}),this["cScalePeer"+1]=this["cScalePeer"+1]||Ds(this.secondaryColor,45),this["cScalePeer"+2]=this["cScalePeer"+2]||Ds(this.tertiaryColor,40);for(let i=0;i{this[l]=i[l]}),this.updateColors(),o.forEach(l=>{this[l]=i[l]})}}const YPt=r=>{const i=new qPt;return i.calculate(r),i};class WPt{constructor(){this.primaryColor="#eee",this.contrast="#707070",this.secondaryColor=is(this.contrast,55),this.background="#ffffff",this.tertiaryColor=vn(this.primaryColor,{h:-160}),this.primaryBorderColor=Xd(this.primaryColor,this.darkMode),this.secondaryBorderColor=Xd(this.secondaryColor,this.darkMode),this.tertiaryBorderColor=Xd(this.tertiaryColor,this.darkMode),this.primaryTextColor=Kr(this.primaryColor),this.secondaryTextColor=Kr(this.secondaryColor),this.tertiaryTextColor=Kr(this.tertiaryColor),this.lineColor=Kr(this.background),this.textColor=Kr(this.background),this.mainBkg="#eee",this.secondBkg="calculated",this.lineColor="#666",this.border1="#999",this.border2="calculated",this.note="#ffa",this.text="#333",this.critical="#d42",this.done="#bbb",this.arrowheadColor="#333333",this.fontFamily='"trebuchet ms", verdana, arial, sans-serif',this.fontSize="16px",this.THEME_COLOR_LIMIT=12,this.nodeBkg="calculated",this.nodeBorder="calculated",this.clusterBkg="calculated",this.clusterBorder="calculated",this.defaultLinkColor="calculated",this.titleColor="calculated",this.edgeLabelBackground="white",this.actorBorder="calculated",this.actorBkg="calculated",this.actorTextColor="calculated",this.actorLineColor="calculated",this.signalColor="calculated",this.signalTextColor="calculated",this.labelBoxBkgColor="calculated",this.labelBoxBorderColor="calculated",this.labelTextColor="calculated",this.loopTextColor="calculated",this.noteBorderColor="calculated",this.noteBkgColor="calculated",this.noteTextColor="calculated",this.activationBorderColor="#666",this.activationBkgColor="#f4f4f4",this.sequenceNumberColor="white",this.sectionBkgColor="calculated",this.altSectionBkgColor="white",this.sectionBkgColor2="calculated",this.excludeBkgColor="#eeeeee",this.taskBorderColor="calculated",this.taskBkgColor="calculated",this.taskTextLightColor="white",this.taskTextColor="calculated",this.taskTextDarkColor="calculated",this.taskTextOutsideColor="calculated",this.taskTextClickableColor="#003163",this.activeTaskBorderColor="calculated",this.activeTaskBkgColor="calculated",this.gridColor="calculated",this.doneTaskBkgColor="calculated",this.doneTaskBorderColor="calculated",this.critBkgColor="calculated",this.critBorderColor="calculated",this.todayLineColor="calculated",this.personBorder="calculated",this.personBkg="calculated",this.labelColor="black",this.errorBkgColor="#552222",this.errorTextColor="#552222"}updateColors(){this.secondBkg=is(this.contrast,55),this.border2=this.contrast,this.cScale0=this.cScale0||"#555",this.cScale1=this.cScale1||"#F4F4F4",this.cScale2=this.cScale2||"#555",this.cScale3=this.cScale3||"#BBB",this.cScale4=this.cScale4||"#777",this.cScale5=this.cScale5||"#999",this.cScale6=this.cScale6||"#DDD",this.cScale7=this.cScale7||"#FFF",this.cScale8=this.cScale8||"#DDD",this.cScale9=this.cScale9||"#BBB",this.cScale10=this.cScale10||"#999",this.cScale11=this.cScale11||"#777";for(let i=0;i{this[l]=i[l]}),this.updateColors(),o.forEach(l=>{this[l]=i[l]})}}const q3={base:{getThemeVariables:HPt},dark:{getThemeVariables:GPt},default:{getThemeVariables:UPt},forest:{getThemeVariables:YPt},neutral:{getThemeVariables:r=>{const i=new WPt;return i.calculate(r),i}}},u6={theme:"default",themeVariables:q3.default.getThemeVariables(),themeCSS:void 0,maxTextSize:5e4,darkMode:!1,fontFamily:'"trebuchet ms", verdana, arial, sans-serif;',logLevel:5,securityLevel:"strict",startOnLoad:!0,arrowMarkerAbsolute:!1,secure:["secure","securityLevel","startOnLoad","maxTextSize"],deterministicIds:!1,deterministicIDSeed:void 0,flowchart:{titleTopMargin:25,diagramPadding:8,htmlLabels:!0,nodeSpacing:50,rankSpacing:50,curve:"basis",padding:15,useMaxWidth:!0,defaultRenderer:"dagre-wrapper"},sequence:{hideUnusedParticipants:!1,activationWidth:10,diagramMarginX:50,diagramMarginY:10,actorMargin:50,width:150,height:65,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",mirrorActors:!0,forceMenus:!1,bottomMarginAdj:1,useMaxWidth:!0,rightAngles:!1,showSequenceNumbers:!1,actorFontSize:14,actorFontFamily:'"Open Sans", sans-serif',actorFontWeight:400,noteFontSize:14,noteFontFamily:'"trebuchet ms", verdana, arial, sans-serif',noteFontWeight:400,noteAlign:"center",messageFontSize:16,messageFontFamily:'"trebuchet ms", verdana, arial, sans-serif',messageFontWeight:400,wrap:!1,wrapPadding:10,labelBoxWidth:50,labelBoxHeight:20,messageFont:function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},noteFont:function(){return{fontFamily:this.noteFontFamily,fontSize:this.noteFontSize,fontWeight:this.noteFontWeight}},actorFont:function(){return{fontFamily:this.actorFontFamily,fontSize:this.actorFontSize,fontWeight:this.actorFontWeight}}},gantt:{titleTopMargin:25,barHeight:20,barGap:4,topPadding:50,rightPadding:75,leftPadding:75,gridLineStartPadding:35,fontSize:11,sectionFontSize:11,numberSectionStyles:4,axisFormat:"%Y-%m-%d",tickInterval:void 0,useMaxWidth:!0,topAxis:!1,useWidth:void 0},journey:{diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,useMaxWidth:!0,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"]},timeline:{diagramMarginX:50,diagramMarginY:10,leftMargin:150,width:150,height:50,boxMargin:10,boxTextMargin:5,noteMargin:10,messageMargin:35,messageAlign:"center",bottomMarginAdj:1,useMaxWidth:!0,rightAngles:!1,taskFontSize:14,taskFontFamily:'"Open Sans", sans-serif',taskMargin:50,activationWidth:10,textPlacement:"fo",actorColours:["#8FBC8F","#7CFC00","#00FFFF","#20B2AA","#B0E0E6","#FFFFE0"],sectionFills:["#191970","#8B008B","#4B0082","#2F4F4F","#800000","#8B4513","#00008B"],sectionColours:["#fff"],disableMulticolor:!1},class:{titleTopMargin:25,arrowMarkerAbsolute:!1,dividerMargin:10,padding:5,textHeight:10,useMaxWidth:!0,defaultRenderer:"dagre-wrapper"},state:{titleTopMargin:25,dividerMargin:10,sizeUnit:5,padding:8,textHeight:10,titleShift:-15,noteMargin:10,forkWidth:70,forkHeight:7,miniPadding:2,fontSizeFactor:5.02,fontSize:24,labelHeight:16,edgeLengthFactor:"20",compositTitleSize:35,radius:5,useMaxWidth:!0,defaultRenderer:"dagre-wrapper"},er:{titleTopMargin:25,diagramPadding:20,layoutDirection:"TB",minEntityWidth:100,minEntityHeight:75,entityPadding:15,stroke:"gray",fill:"honeydew",fontSize:12,useMaxWidth:!0},pie:{useWidth:void 0,useMaxWidth:!0},requirement:{useWidth:void 0,useMaxWidth:!0,rect_fill:"#f9f9f9",text_color:"#333",rect_border_size:"0.5px",rect_border_color:"#bbb",rect_min_width:200,rect_min_height:200,fontSize:14,rect_padding:10,line_height:20},gitGraph:{titleTopMargin:25,diagramPadding:8,nodeLabel:{width:75,height:100,x:-25,y:0},mainBranchName:"main",mainBranchOrder:0,showCommitLabel:!0,showBranches:!0,rotateCommitLabel:!0},c4:{useWidth:void 0,diagramMarginX:50,diagramMarginY:10,c4ShapeMargin:50,c4ShapePadding:20,width:216,height:60,boxMargin:10,useMaxWidth:!0,c4ShapeInRow:4,nextLinePaddingX:0,c4BoundaryInRow:2,personFontSize:14,personFontFamily:'"Open Sans", sans-serif',personFontWeight:"normal",external_personFontSize:14,external_personFontFamily:'"Open Sans", sans-serif',external_personFontWeight:"normal",systemFontSize:14,systemFontFamily:'"Open Sans", sans-serif',systemFontWeight:"normal",external_systemFontSize:14,external_systemFontFamily:'"Open Sans", sans-serif',external_systemFontWeight:"normal",system_dbFontSize:14,system_dbFontFamily:'"Open Sans", sans-serif',system_dbFontWeight:"normal",external_system_dbFontSize:14,external_system_dbFontFamily:'"Open Sans", sans-serif',external_system_dbFontWeight:"normal",system_queueFontSize:14,system_queueFontFamily:'"Open Sans", sans-serif',system_queueFontWeight:"normal",external_system_queueFontSize:14,external_system_queueFontFamily:'"Open Sans", sans-serif',external_system_queueFontWeight:"normal",boundaryFontSize:14,boundaryFontFamily:'"Open Sans", sans-serif',boundaryFontWeight:"normal",messageFontSize:12,messageFontFamily:'"Open Sans", sans-serif',messageFontWeight:"normal",containerFontSize:14,containerFontFamily:'"Open Sans", sans-serif',containerFontWeight:"normal",external_containerFontSize:14,external_containerFontFamily:'"Open Sans", sans-serif',external_containerFontWeight:"normal",container_dbFontSize:14,container_dbFontFamily:'"Open Sans", sans-serif',container_dbFontWeight:"normal",external_container_dbFontSize:14,external_container_dbFontFamily:'"Open Sans", sans-serif',external_container_dbFontWeight:"normal",container_queueFontSize:14,container_queueFontFamily:'"Open Sans", sans-serif',container_queueFontWeight:"normal",external_container_queueFontSize:14,external_container_queueFontFamily:'"Open Sans", sans-serif',external_container_queueFontWeight:"normal",componentFontSize:14,componentFontFamily:'"Open Sans", sans-serif',componentFontWeight:"normal",external_componentFontSize:14,external_componentFontFamily:'"Open Sans", sans-serif',external_componentFontWeight:"normal",component_dbFontSize:14,component_dbFontFamily:'"Open Sans", sans-serif',component_dbFontWeight:"normal",external_component_dbFontSize:14,external_component_dbFontFamily:'"Open Sans", sans-serif',external_component_dbFontWeight:"normal",component_queueFontSize:14,component_queueFontFamily:'"Open Sans", sans-serif',component_queueFontWeight:"normal",external_component_queueFontSize:14,external_component_queueFontFamily:'"Open Sans", sans-serif',external_component_queueFontWeight:"normal",wrap:!0,wrapPadding:10,personFont:function(){return{fontFamily:this.personFontFamily,fontSize:this.personFontSize,fontWeight:this.personFontWeight}},external_personFont:function(){return{fontFamily:this.external_personFontFamily,fontSize:this.external_personFontSize,fontWeight:this.external_personFontWeight}},systemFont:function(){return{fontFamily:this.systemFontFamily,fontSize:this.systemFontSize,fontWeight:this.systemFontWeight}},external_systemFont:function(){return{fontFamily:this.external_systemFontFamily,fontSize:this.external_systemFontSize,fontWeight:this.external_systemFontWeight}},system_dbFont:function(){return{fontFamily:this.system_dbFontFamily,fontSize:this.system_dbFontSize,fontWeight:this.system_dbFontWeight}},external_system_dbFont:function(){return{fontFamily:this.external_system_dbFontFamily,fontSize:this.external_system_dbFontSize,fontWeight:this.external_system_dbFontWeight}},system_queueFont:function(){return{fontFamily:this.system_queueFontFamily,fontSize:this.system_queueFontSize,fontWeight:this.system_queueFontWeight}},external_system_queueFont:function(){return{fontFamily:this.external_system_queueFontFamily,fontSize:this.external_system_queueFontSize,fontWeight:this.external_system_queueFontWeight}},containerFont:function(){return{fontFamily:this.containerFontFamily,fontSize:this.containerFontSize,fontWeight:this.containerFontWeight}},external_containerFont:function(){return{fontFamily:this.external_containerFontFamily,fontSize:this.external_containerFontSize,fontWeight:this.external_containerFontWeight}},container_dbFont:function(){return{fontFamily:this.container_dbFontFamily,fontSize:this.container_dbFontSize,fontWeight:this.container_dbFontWeight}},external_container_dbFont:function(){return{fontFamily:this.external_container_dbFontFamily,fontSize:this.external_container_dbFontSize,fontWeight:this.external_container_dbFontWeight}},container_queueFont:function(){return{fontFamily:this.container_queueFontFamily,fontSize:this.container_queueFontSize,fontWeight:this.container_queueFontWeight}},external_container_queueFont:function(){return{fontFamily:this.external_container_queueFontFamily,fontSize:this.external_container_queueFontSize,fontWeight:this.external_container_queueFontWeight}},componentFont:function(){return{fontFamily:this.componentFontFamily,fontSize:this.componentFontSize,fontWeight:this.componentFontWeight}},external_componentFont:function(){return{fontFamily:this.external_componentFontFamily,fontSize:this.external_componentFontSize,fontWeight:this.external_componentFontWeight}},component_dbFont:function(){return{fontFamily:this.component_dbFontFamily,fontSize:this.component_dbFontSize,fontWeight:this.component_dbFontWeight}},external_component_dbFont:function(){return{fontFamily:this.external_component_dbFontFamily,fontSize:this.external_component_dbFontSize,fontWeight:this.external_component_dbFontWeight}},component_queueFont:function(){return{fontFamily:this.component_queueFontFamily,fontSize:this.component_queueFontSize,fontWeight:this.component_queueFontWeight}},external_component_queueFont:function(){return{fontFamily:this.external_component_queueFontFamily,fontSize:this.external_component_queueFontSize,fontWeight:this.external_component_queueFontWeight}},boundaryFont:function(){return{fontFamily:this.boundaryFontFamily,fontSize:this.boundaryFontSize,fontWeight:this.boundaryFontWeight}},messageFont:function(){return{fontFamily:this.messageFontFamily,fontSize:this.messageFontSize,fontWeight:this.messageFontWeight}},person_bg_color:"#08427B",person_border_color:"#073B6F",external_person_bg_color:"#686868",external_person_border_color:"#8A8A8A",system_bg_color:"#1168BD",system_border_color:"#3C7FC0",system_db_bg_color:"#1168BD",system_db_border_color:"#3C7FC0",system_queue_bg_color:"#1168BD",system_queue_border_color:"#3C7FC0",external_system_bg_color:"#999999",external_system_border_color:"#8A8A8A",external_system_db_bg_color:"#999999",external_system_db_border_color:"#8A8A8A",external_system_queue_bg_color:"#999999",external_system_queue_border_color:"#8A8A8A",container_bg_color:"#438DD5",container_border_color:"#3C7FC0",container_db_bg_color:"#438DD5",container_db_border_color:"#3C7FC0",container_queue_bg_color:"#438DD5",container_queue_border_color:"#3C7FC0",external_container_bg_color:"#B3B3B3",external_container_border_color:"#A6A6A6",external_container_db_bg_color:"#B3B3B3",external_container_db_border_color:"#A6A6A6",external_container_queue_bg_color:"#B3B3B3",external_container_queue_border_color:"#A6A6A6",component_bg_color:"#85BBF0",component_border_color:"#78A8D8",component_db_bg_color:"#85BBF0",component_db_border_color:"#78A8D8",component_queue_bg_color:"#85BBF0",component_queue_border_color:"#78A8D8",external_component_bg_color:"#CCCCCC",external_component_border_color:"#BFBFBF",external_component_db_bg_color:"#CCCCCC",external_component_db_border_color:"#BFBFBF",external_component_queue_bg_color:"#CCCCCC",external_component_queue_border_color:"#BFBFBF"},mindmap:{useMaxWidth:!0,padding:10,maxNodeWidth:200},fontSize:16};u6.class&&(u6.class.arrowMarkerAbsolute=u6.arrowMarkerAbsolute),u6.gitGraph&&(u6.gitGraph.arrowMarkerAbsolute=u6.arrowMarkerAbsolute);const gCe=(r,i="")=>Object.keys(r).reduce((o,l)=>Array.isArray(r[l])?o:typeof r[l]=="object"&&r[l]!==null?[...o,i+l,...gCe(r[l],"")]:[...o,i+l],[]),KPt=gCe(u6,""),XPt=u6;/*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT */function pCe(r){return typeof r>"u"||r===null}function QPt(r){return typeof r=="object"&&r!==null}function ZPt(r){return Array.isArray(r)?r:pCe(r)?[]:[r]}function JPt(r,i){var o,l,f,b;if(i)for(b=Object.keys(i),o=0,l=b.length;ow&&(b=" ... ",i=l-w+b.length),o-l>w&&(d=" ...",o=l+w-d.length),{str:b+r.slice(i,o).replace(/\t/g,"\u2192")+d,pos:l-i+b.length}}function iae(r,i){return Qd.repeat(" ",i-r.length)+r}function cBt(r,i){if(i=Object.create(i||null),!r.buffer)return null;i.maxLength||(i.maxLength=79),typeof i.indent!="number"&&(i.indent=1),typeof i.linesBefore!="number"&&(i.linesBefore=3),typeof i.linesAfter!="number"&&(i.linesAfter=2);for(var o=/\r?\n|\r|\0/g,l=[0],f=[],b,d=-1;b=o.exec(r.buffer);)f.push(b.index),l.push(b.index+b[0].length),r.position<=b.index&&d<0&&(d=l.length-2);d<0&&(d=l.length-1);var w="",y,k,E=Math.min(r.line+i.linesAfter,f.length).toString().length,T=i.maxLength-(i.indent+E+3);for(y=1;y<=i.linesBefore&&!(d-y<0);y++)k=rae(r.buffer,l[d-y],f[d-y],r.position-(l[d]-l[d-y]),T),w=Qd.repeat(" ",i.indent)+iae((r.line-y+1).toString(),E)+" | "+k.str+`
-`+w;for(k=rae(r.buffer,l[d],f[d],r.position,T),w+=Qd.repeat(" ",i.indent)+iae((r.line+1).toString(),E)+" | "+k.str+`
-`,w+=Qd.repeat("-",i.indent+E+3+k.pos)+`^
-`,y=1;y<=i.linesAfter&&!(d+y>=f.length);y++)k=rae(r.buffer,l[d+y],f[d+y],r.position-(l[d]-l[d+y]),T),w+=Qd.repeat(" ",i.indent)+iae((r.line+y+1).toString(),E)+" | "+k.str+`
-`;return w.replace(/\n$/,"")}var uBt=cBt,lBt=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],hBt=["scalar","sequence","mapping"];function fBt(r){var i={};return r!==null&&Object.keys(r).forEach(function(o){r[o].forEach(function(l){i[String(l)]=o})}),i}function dBt(r,i){if(i=i||{},Object.keys(i).forEach(function(o){if(lBt.indexOf(o)===-1)throw new Y3('Unknown option "'+o+'" is met in definition of "'+r+'" YAML type.')}),this.options=i,this.tag=r,this.kind=i.kind||null,this.resolve=i.resolve||function(){return!0},this.construct=i.construct||function(o){return o},this.instanceOf=i.instanceOf||null,this.predicate=i.predicate||null,this.represent=i.represent||null,this.representName=i.representName||null,this.defaultStyle=i.defaultStyle||null,this.multi=i.multi||!1,this.styleAliases=fBt(i.styleAliases||null),hBt.indexOf(this.kind)===-1)throw new Y3('Unknown kind "'+this.kind+'" is specified for "'+r+'" YAML type.')}var ud=dBt;function vCe(r,i){var o=[];return r[i].forEach(function(l){var f=o.length;o.forEach(function(b,d){b.tag===l.tag&&b.kind===l.kind&&b.multi===l.multi&&(f=d)}),o[f]=l}),o}function gBt(){var r={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},i,o;function l(f){f.multi?(r.multi[f.kind].push(f),r.multi.fallback.push(f)):r[f.kind][f.tag]=r.fallback[f.tag]=f}for(i=0,o=arguments.length;i=0?"0b"+r.toString(2):"-0b"+r.toString(2).slice(1)},octal:function(r){return r>=0?"0o"+r.toString(8):"-0o"+r.toString(8).slice(1)},decimal:function(r){return r.toString(10)},hexadecimal:function(r){return r>=0?"0x"+r.toString(16).toUpperCase():"-0x"+r.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),NBt=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function PBt(r){return!(r===null||!NBt.test(r)||r[r.length-1]==="_")}function BBt(r){var i,o;return i=r.replace(/_/g,"").toLowerCase(),o=i[0]==="-"?-1:1,"+-".indexOf(i[0])>=0&&(i=i.slice(1)),i===".inf"?o===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:i===".nan"?NaN:o*parseFloat(i,10)}var FBt=/^[-+]?[0-9]+e/;function RBt(r,i){var o;if(isNaN(r))switch(i){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===r)switch(i){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===r)switch(i){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(Qd.isNegativeZero(r))return"-0.0";return o=r.toString(10),FBt.test(o)?o.replace("e",".e"):o}function jBt(r){return Object.prototype.toString.call(r)==="[object Number]"&&(r%1!==0||Qd.isNegativeZero(r))}var $Bt=new ud("tag:yaml.org,2002:float",{kind:"scalar",resolve:PBt,construct:BBt,predicate:jBt,represent:RBt,defaultStyle:"lowercase"}),HBt=wCe.extend({implicit:[xBt,CBt,OBt,$Bt]}),zBt=HBt,mCe=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),yCe=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function GBt(r){return r===null?!1:mCe.exec(r)!==null||yCe.exec(r)!==null}function VBt(r){var i,o,l,f,b,d,w,y=0,k=null,E,T,C;if(i=mCe.exec(r),i===null&&(i=yCe.exec(r)),i===null)throw new Error("Date resolve error");if(o=+i[1],l=+i[2]-1,f=+i[3],!i[4])return new Date(Date.UTC(o,l,f));if(b=+i[4],d=+i[5],w=+i[6],i[7]){for(y=i[7].slice(0,3);y.length<3;)y+="0";y=+y}return i[9]&&(E=+i[10],T=+(i[11]||0),k=(E*60+T)*6e4,i[9]==="-"&&(k=-k)),C=new Date(Date.UTC(o,l,f,b,d,w,y)),k&&C.setTime(C.getTime()-k),C}function UBt(r){return r.toISOString()}var qBt=new ud("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:GBt,construct:VBt,instanceOf:Date,represent:UBt});function YBt(r){return r==="<<"||r===null}var WBt=new ud("tag:yaml.org,2002:merge",{kind:"scalar",resolve:YBt}),aae=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
-\r`;function KBt(r){if(r===null)return!1;var i,o,l=0,f=r.length,b=aae;for(o=0;o64)){if(i<0)return!1;l+=6}return l%8===0}function XBt(r){var i,o,l=r.replace(/[\r\n=]/g,""),f=l.length,b=aae,d=0,w=[];for(i=0;i>16&255),w.push(d>>8&255),w.push(d&255)),d=d<<6|b.indexOf(l.charAt(i));return o=f%4*6,o===0?(w.push(d>>16&255),w.push(d>>8&255),w.push(d&255)):o===18?(w.push(d>>10&255),w.push(d>>2&255)):o===12&&w.push(d>>4&255),new Uint8Array(w)}function QBt(r){var i="",o=0,l,f,b=r.length,d=aae;for(l=0;l>18&63],i+=d[o>>12&63],i+=d[o>>6&63],i+=d[o&63]),o=(o<<8)+r[l];return f=b%3,f===0?(i+=d[o>>18&63],i+=d[o>>12&63],i+=d[o>>6&63],i+=d[o&63]):f===2?(i+=d[o>>10&63],i+=d[o>>4&63],i+=d[o<<2&63],i+=d[64]):f===1&&(i+=d[o>>2&63],i+=d[o<<4&63],i+=d[64],i+=d[64]),i}function ZBt(r){return Object.prototype.toString.call(r)==="[object Uint8Array]"}var JBt=new ud("tag:yaml.org,2002:binary",{kind:"scalar",resolve:KBt,construct:XBt,predicate:ZBt,represent:QBt}),eFt=Object.prototype.hasOwnProperty,tFt=Object.prototype.toString;function nFt(r){if(r===null)return!0;var i=[],o,l,f,b,d,w=r;for(o=0,l=w.length;o>10)+55296,(r-65536&1023)+56320)}for(var ACe=new Array(256),MCe=new Array(256),WT=0;WT<256;WT++)ACe[WT]=SCe(WT)?1:0,MCe[WT]=SCe(WT);function xFt(r,i){this.input=r,this.filename=i.filename||null,this.schema=i.schema||dFt,this.onWarning=i.onWarning||null,this.legacy=i.legacy||!1,this.json=i.json||!1,this.listener=i.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=r.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function DCe(r,i){var o={name:r.filename,buffer:r.input.slice(0,-1),position:r.position,line:r.line,column:r.position-r.lineStart};return o.snippet=uBt(o),new Y3(i,o)}function ji(r,i){throw DCe(r,i)}function DG(r,i){r.onWarning&&r.onWarning.call(null,DCe(r,i))}var LCe={YAML:function(i,o,l){var f,b,d;i.version!==null&&ji(i,"duplication of %YAML directive"),l.length!==1&&ji(i,"YAML directive accepts exactly one argument"),f=/^([0-9]+)\.([0-9]+)$/.exec(l[0]),f===null&&ji(i,"ill-formed argument of the YAML directive"),b=parseInt(f[1],10),d=parseInt(f[2],10),b!==1&&ji(i,"unacceptable YAML version of the document"),i.version=l[0],i.checkLineBreaks=d<2,d!==1&&d!==2&&DG(i,"unsupported YAML version of the document")},TAG:function(i,o,l){var f,b;l.length!==2&&ji(i,"TAG directive accepts exactly two arguments"),f=l[0],b=l[1],_Ce.test(f)||ji(i,"ill-formed tag handle (first argument) of the TAG directive"),l6.call(i.tagMap,f)&&ji(i,'there is a previously declared suffix for "'+f+'" tag handle'),TCe.test(b)||ji(i,"ill-formed tag prefix (second argument) of the TAG directive");try{b=decodeURIComponent(b)}catch{ji(i,"tag prefix is malformed: "+b)}i.tagMap[f]=b}};function h6(r,i,o,l){var f,b,d,w;if(i1&&(r.result+=Qd.repeat(`
-`,i-1))}function EFt(r,i,o){var l,f,b,d,w,y,k,E,T=r.kind,C=r.result,S;if(S=r.input.charCodeAt(r.position),U0(S)||YT(S)||S===35||S===38||S===42||S===33||S===124||S===62||S===39||S===34||S===37||S===64||S===96||(S===63||S===45)&&(f=r.input.charCodeAt(r.position+1),U0(f)||o&&YT(f)))return!1;for(r.kind="scalar",r.result="",b=d=r.position,w=!1;S!==0;){if(S===58){if(f=r.input.charCodeAt(r.position+1),U0(f)||o&&YT(f))break}else if(S===35){if(l=r.input.charCodeAt(r.position-1),U0(l))break}else{if(r.position===r.lineStart&&LG(r)||o&&YT(S))break;if(Pm(S))if(y=r.line,k=r.lineStart,E=r.lineIndent,Fh(r,!1,-1),r.lineIndent>=i){w=!0,S=r.input.charCodeAt(r.position);continue}else{r.position=d,r.line=y,r.lineStart=k,r.lineIndent=E;break}}w&&(h6(r,b,d,!1),uae(r,r.line-y),b=d=r.position,w=!1),q8(S)||(d=r.position+1),S=r.input.charCodeAt(++r.position)}return h6(r,b,d,!1),r.result?!0:(r.kind=T,r.result=C,!1)}function _Ft(r,i){var o,l,f;if(o=r.input.charCodeAt(r.position),o!==39)return!1;for(r.kind="scalar",r.result="",r.position++,l=f=r.position;(o=r.input.charCodeAt(r.position))!==0;)if(o===39)if(h6(r,l,r.position,!0),o=r.input.charCodeAt(++r.position),o===39)l=r.position,r.position++,f=r.position;else return!0;else Pm(o)?(h6(r,l,f,!0),uae(r,Fh(r,!1,i)),l=f=r.position):r.position===r.lineStart&&LG(r)?ji(r,"unexpected end of the document within a single quoted scalar"):(r.position++,f=r.position);ji(r,"unexpected end of the stream within a single quoted scalar")}function TFt(r,i){var o,l,f,b,d,w;if(w=r.input.charCodeAt(r.position),w!==34)return!1;for(r.kind="scalar",r.result="",r.position++,o=l=r.position;(w=r.input.charCodeAt(r.position))!==0;){if(w===34)return h6(r,o,r.position,!0),r.position++,!0;if(w===92){if(h6(r,o,r.position,!0),w=r.input.charCodeAt(++r.position),Pm(w))Fh(r,!1,i);else if(w<256&&ACe[w])r.result+=MCe[w],r.position++;else if((d=mFt(w))>0){for(f=d,b=0;f>0;f--)w=r.input.charCodeAt(++r.position),(d=wFt(w))>=0?b=(b<<4)+d:ji(r,"expected hexadecimal character");r.result+=kFt(b),r.position++}else ji(r,"unknown escape sequence");o=l=r.position}else Pm(w)?(h6(r,o,l,!0),uae(r,Fh(r,!1,i)),o=l=r.position):r.position===r.lineStart&&LG(r)?ji(r,"unexpected end of the document within a double quoted scalar"):(r.position++,l=r.position)}ji(r,"unexpected end of the stream within a double quoted scalar")}function CFt(r,i){var o=!0,l,f,b,d=r.tag,w,y=r.anchor,k,E,T,C,S,L=Object.create(null),O,B,N,F;if(F=r.input.charCodeAt(r.position),F===91)E=93,S=!1,w=[];else if(F===123)E=125,S=!0,w={};else return!1;for(r.anchor!==null&&(r.anchorMap[r.anchor]=w),F=r.input.charCodeAt(++r.position);F!==0;){if(Fh(r,!0,i),F=r.input.charCodeAt(r.position),F===E)return r.position++,r.tag=d,r.anchor=y,r.kind=S?"mapping":"sequence",r.result=w,!0;o?F===44&&ji(r,"expected the node content, but found ','"):ji(r,"missed comma between flow collection entries"),B=O=N=null,T=C=!1,F===63&&(k=r.input.charCodeAt(r.position+1),U0(k)&&(T=C=!0,r.position++,Fh(r,!0,i))),l=r.line,f=r.lineStart,b=r.position,XT(r,i,AG,!1,!0),B=r.tag,O=r.result,Fh(r,!0,i),F=r.input.charCodeAt(r.position),(C||r.line===l)&&F===58&&(T=!0,F=r.input.charCodeAt(++r.position),Fh(r,!0,i),XT(r,i,AG,!1,!0),N=r.result),S?KT(r,w,L,B,O,N,l,f,b):T?w.push(KT(r,null,L,B,O,N,l,f,b)):w.push(O),Fh(r,!0,i),F=r.input.charCodeAt(r.position),F===44?(o=!0,F=r.input.charCodeAt(++r.position)):o=!1}ji(r,"unexpected end of the stream within a flow collection")}function SFt(r,i){var o,l,f=oae,b=!1,d=!1,w=i,y=0,k=!1,E,T;if(T=r.input.charCodeAt(r.position),T===124)l=!1;else if(T===62)l=!0;else return!1;for(r.kind="scalar",r.result="";T!==0;)if(T=r.input.charCodeAt(++r.position),T===43||T===45)oae===f?f=T===43?ECe:gFt:ji(r,"repeat of a chomping mode identifier");else if((E=yFt(T))>=0)E===0?ji(r,"bad explicit indentation width of a block scalar; it cannot be less than one"):d?ji(r,"repeat of an indentation width identifier"):(w=i+E-1,d=!0);else break;if(q8(T)){do T=r.input.charCodeAt(++r.position);while(q8(T));if(T===35)do T=r.input.charCodeAt(++r.position);while(!Pm(T)&&T!==0)}for(;T!==0;){for(cae(r),r.lineIndent=0,T=r.input.charCodeAt(r.position);(!d||r.lineIndentw&&(w=r.lineIndent),Pm(T)){y++;continue}if(r.lineIndenti)&&y!==0)ji(r,"bad indentation of a sequence entry");else if(r.lineIndenti)&&(B&&(d=r.line,w=r.lineStart,y=r.position),XT(r,i,MG,!0,f)&&(B?L=r.result:O=r.result),B||(KT(r,T,C,S,L,O,d,w,y),S=L=O=null),Fh(r,!0,-1),F=r.input.charCodeAt(r.position)),(r.line===b||r.lineIndent>i)&&F!==0)ji(r,"bad indentation of a mapping entry");else if(r.lineIndenti?y=1:r.lineIndent===i?y=0:r.lineIndenti?y=1:r.lineIndent===i?y=0:r.lineIndent tag; it should be "scalar", not "'+r.kind+'"'),T=0,C=r.implicitTypes.length;T"),r.result!==null&&L.kind!==r.kind&&ji(r,"unacceptable node kind for !<"+r.tag+'> tag; it should be "'+L.kind+'", not "'+r.kind+'"'),L.resolve(r.result,r.tag)?(r.result=L.construct(r.result,r.tag),r.anchor!==null&&(r.anchorMap[r.anchor]=r.result)):ji(r,"cannot resolve a node with !<"+r.tag+"> explicit tag")}return r.listener!==null&&r.listener("close",r),r.tag!==null||r.anchor!==null||E}function IFt(r){var i=r.position,o,l,f,b=!1,d;for(r.version=null,r.checkLineBreaks=r.legacy,r.tagMap=Object.create(null),r.anchorMap=Object.create(null);(d=r.input.charCodeAt(r.position))!==0&&(Fh(r,!0,-1),d=r.input.charCodeAt(r.position),!(r.lineIndent>0||d!==37));){for(b=!0,d=r.input.charCodeAt(++r.position),o=r.position;d!==0&&!U0(d);)d=r.input.charCodeAt(++r.position);for(l=r.input.slice(o,r.position),f=[],l.length<1&&ji(r,"directive name must not be less than one character in length");d!==0;){for(;q8(d);)d=r.input.charCodeAt(++r.position);if(d===35){do d=r.input.charCodeAt(++r.position);while(d!==0&&!Pm(d));break}if(Pm(d))break;for(o=r.position;d!==0&&!U0(d);)d=r.input.charCodeAt(++r.position);f.push(r.input.slice(o,r.position))}d!==0&&cae(r),l6.call(LCe,l)?LCe[l](r,l,f):DG(r,'unknown document directive "'+l+'"')}if(Fh(r,!0,-1),r.lineIndent===0&&r.input.charCodeAt(r.position)===45&&r.input.charCodeAt(r.position+1)===45&&r.input.charCodeAt(r.position+2)===45?(r.position+=3,Fh(r,!0,-1)):b&&ji(r,"directives end mark is expected"),XT(r,r.lineIndent-1,MG,!1,!0),Fh(r,!0,-1),r.checkLineBreaks&&bFt.test(r.input.slice(i,r.position))&&DG(r,"non-ASCII line breaks are interpreted as content"),r.documents.push(r.result),r.position===r.lineStart&&LG(r)){r.input.charCodeAt(r.position)===46&&(r.position+=3,Fh(r,!0,-1));return}if(r.position"u"&&(o=i,i=null);var l=NCe(r,o);if(typeof i!="function")return l;for(var f=0,b=l.length;f{for(const{id:i,detector:o,loader:l}of r)FCe(i,o,l)},FCe=(r,i,o)=>{IG[r]?Se.error(`Detector with key ${r} already exists`):IG[r]={detector:i,loader:o},Se.debug(`Detector with key ${r} added${o?" with loader":""}`)},GFt=r=>IG[r].loader,hae=function(r,i,o){const{depth:l,clobber:f}=Object.assign({depth:2,clobber:!1},o);return Array.isArray(i)&&!Array.isArray(r)?(i.forEach(b=>hae(r,b,o)),r):Array.isArray(i)&&Array.isArray(r)?(i.forEach(b=>{r.includes(b)||r.push(b)}),r):r===void 0||l<=0?r!=null&&typeof r=="object"&&typeof i=="object"?Object.assign(r,i):i:(i!==void 0&&typeof r=="object"&&typeof i=="object"&&Object.keys(i).forEach(b=>{typeof i[b]=="object"&&(r[b]===void 0||typeof r[b]=="object")?(r[b]===void 0&&(r[b]=Array.isArray(i[b])?[]:{}),r[b]=hae(r[b],i[b],{depth:l-1,clobber:f})):(f||typeof r[b]!="object"&&typeof i[b]!="object")&&(r[b]=i[b])}),r)},Yf=hae;var VFt=typeof global=="object"&&global&&global.Object===Object&&global;const RCe=VFt;var UFt=typeof self=="object"&&self&&self.Object===Object&&self,qFt=RCe||UFt||Function("return this")();const Mv=qFt;var YFt=Mv.Symbol;const I2=YFt;var jCe=Object.prototype,WFt=jCe.hasOwnProperty,KFt=jCe.toString,iI=I2?I2.toStringTag:void 0;function XFt(r){var i=WFt.call(r,iI),o=r[iI];try{r[iI]=void 0;var l=!0}catch{}var f=KFt.call(r);return l&&(i?r[iI]=o:delete r[iI]),f}var QFt=Object.prototype,ZFt=QFt.toString;function JFt(r){return ZFt.call(r)}var eRt="[object Null]",tRt="[object Undefined]",$Ce=I2?I2.toStringTag:void 0;function Y8(r){return r==null?r===void 0?tRt:eRt:$Ce&&$Ce in Object(r)?XFt(r):JFt(r)}function lp(r){var i=typeof r;return r!=null&&(i=="object"||i=="function")}var nRt="[object AsyncFunction]",rRt="[object Function]",iRt="[object GeneratorFunction]",sRt="[object Proxy]";function QT(r){if(!lp(r))return!1;var i=Y8(r);return i==rRt||i==iRt||i==nRt||i==sRt}var aRt=Mv["__core-js_shared__"];const fae=aRt;var HCe=function(){var r=/[^.]+$/.exec(fae&&fae.keys&&fae.keys.IE_PROTO||"");return r?"Symbol(src)_1."+r:""}();function oRt(r){return!!HCe&&HCe in r}var cRt=Function.prototype,uRt=cRt.toString;function W8(r){if(r!=null){try{return uRt.call(r)}catch{}try{return r+""}catch{}}return""}var lRt=/[\\^$.*+?()[\]{}|]/g,hRt=/^\[object .+?Constructor\]$/,fRt=Function.prototype,dRt=Object.prototype,gRt=fRt.toString,pRt=dRt.hasOwnProperty,bRt=RegExp("^"+gRt.call(pRt).replace(lRt,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function vRt(r){if(!lp(r)||oRt(r))return!1;var i=QT(r)?bRt:hRt;return i.test(W8(r))}function wRt(r,i){return r==null?void 0:r[i]}function K8(r,i){var o=wRt(r,i);return vRt(o)?o:void 0}var mRt=K8(Object,"create");const sI=mRt;function yRt(){this.__data__=sI?sI(null):{},this.size=0}function kRt(r){var i=this.has(r)&&delete this.__data__[r];return this.size-=i?1:0,i}var xRt="__lodash_hash_undefined__",ERt=Object.prototype,_Rt=ERt.hasOwnProperty;function TRt(r){var i=this.__data__;if(sI){var o=i[r];return o===xRt?void 0:o}return _Rt.call(i,r)?i[r]:void 0}var CRt=Object.prototype,SRt=CRt.hasOwnProperty;function ARt(r){var i=this.__data__;return sI?i[r]!==void 0:SRt.call(i,r)}var MRt="__lodash_hash_undefined__";function DRt(r,i){var o=this.__data__;return this.size+=this.has(r)?0:1,o[r]=sI&&i===void 0?MRt:i,this}function X8(r){var i=-1,o=r==null?0:r.length;for(this.clear();++i-1}function FRt(r,i){var o=this.__data__,l=OG(o,r);return l<0?(++this.size,o.push([r,i])):o[l][1]=i,this}function W3(r){var i=-1,o=r==null?0:r.length;for(this.clear();++ib.args);Q8(f),l=Yf(l,[...f])}else l=o.args;if(l){let f=lae(r,i);["config"].forEach(b=>{l[b]!==void 0&&(f==="flowchart-v2"&&(f="flowchart"),l[f]=l[b],delete l[b])})}return l},zCe=function(r,i=null){try{const o=new RegExp(`[%]{2}(?![{]${YRt.source})(?=[}][%]{2}).*
-`,"ig");r=r.trim().replace(o,"").replace(/'/gm,'"'),Se.debug(`Detecting diagram directive${i!==null?" type:"+i:""} based on the text:${r}`);let l;const f=[];for(;(l=dae.exec(r))!==null;)if(l.index===dae.lastIndex&&dae.lastIndex++,l&&!i||i&&l[1]&&l[1].match(i)||i&&l[2]&&l[2].match(i)){const b=l[1]?l[1]:l[2],d=l[3]?l[3].trim():l[4]?JSON.parse(l[4].trim()):null;f.push({type:b,args:d})}return f.length===0&&f.push({type:r,args:null}),f.length===1?f[0]:f}catch(o){return Se.error(`ERROR: ${o.message} - Unable to parse directive
- ${i!==null?" type:"+i:""} based on the text:${r}`),{type:null,args:null}}},KRt=function(r,i){for(const[o,l]of i.entries())if(l.match(r))return o;return-1};function q0(r,i){if(!r)return i;const o=`curve${r.charAt(0).toUpperCase()+r.slice(1)}`;return qRt[o]||i}function XRt(r,i){const o=r.trim();if(o)return i.securityLevel!=="loose"?$3(o):o}const QRt=(r,...i)=>{const o=r.split("."),l=o.length-1,f=o[l];let b=window;for(let d=0;d{o+=PG(b,i),i=b});let l=o/2,f;return i=void 0,r.forEach(b=>{if(i&&!f){const d=PG(b,i);if(d=1&&(f={x:b.x,y:b.y}),w>0&&w<1&&(f={x:(1-w)*i.x+w*b.x,y:(1-w)*i.y+w*b.y})}}i=b}),f}function JRt(r){return r.length===1?r[0]:ZRt(r)}const ejt=(r,i,o)=>{let l;Se.info(`our points ${JSON.stringify(i)}`),i[0]!==o&&(i=i.reverse());let b=25,d;l=void 0,i.forEach(E=>{if(l&&!d){const T=PG(E,l);if(T=1&&(d={x:E.x,y:E.y}),C>0&&C<1&&(d={x:(1-C)*l.x+C*E.x,y:(1-C)*l.y+C*E.y})}}l=E});const w=r?10:5,y=Math.atan2(i[0].y-d.y,i[0].x-d.x),k={x:0,y:0};return k.x=Math.sin(y)*w+(i[0].x+d.x)/2,k.y=-Math.cos(y)*w+(i[0].y+d.y)/2,k};function tjt(r,i,o){let l=JSON.parse(JSON.stringify(o)),f;Se.info("our points",l),i!=="start_left"&&i!=="start_right"&&(l=l.reverse()),l.forEach(T=>{f=T});let d=25+r,w;f=void 0,l.forEach(T=>{if(f&&!w){const C=PG(T,f);if(C=1&&(w={x:T.x,y:T.y}),S>0&&S<1&&(w={x:(1-S)*f.x+S*T.x,y:(1-S)*f.y+S*T.y})}}f=T});const y=10+r*.5,k=Math.atan2(l[0].y-w.y,l[0].x-w.x),E={x:0,y:0};return E.x=Math.sin(k)*y+(l[0].x+w.x)/2,E.y=-Math.cos(k)*y+(l[0].y+w.y)/2,i==="start_left"&&(E.x=Math.sin(k+Math.PI)*y+(l[0].x+w.x)/2,E.y=-Math.cos(k+Math.PI)*y+(l[0].y+w.y)/2),i==="end_right"&&(E.x=Math.sin(k-Math.PI)*y+(l[0].x+w.x)/2-5,E.y=-Math.cos(k-Math.PI)*y+(l[0].y+w.y)/2-5),i==="end_left"&&(E.x=Math.sin(k)*y+(l[0].x+w.x)/2-5,E.y=-Math.cos(k)*y+(l[0].y+w.y)/2-5),E}function Dv(r){let i="",o="";for(const l of r)l!==void 0&&(l.startsWith("color:")||l.startsWith("text-align:")?o=o+l+";":i=i+l+";");return{style:i,labelStyle:o}}let GCe=0;const VCe=()=>(GCe++,"id-"+Math.random().toString(36).substr(2,12)+"-"+GCe);function njt(r){let i="";const o="0123456789abcdef",l=o.length;for(let f=0;fnjt(r.length),rjt=function(){return{x:0,y:0,fill:void 0,anchor:"start",style:"#666",width:100,height:100,textMargin:0,rx:0,ry:0,valign:void 0}},ijt=function(r,i){const o=i.text.replace(Cs.lineBreakRegex," "),[,l]=oI(i.fontSize),f=r.append("text");f.attr("x",i.x),f.attr("y",i.y),f.style("text-anchor",i.anchor),f.style("font-family",i.fontFamily),f.style("font-size",l),f.style("font-weight",i.fontWeight),f.attr("fill",i.fill),i.class!==void 0&&f.attr("class",i.class);const b=f.append("tspan");return b.attr("x",i.x+i.textMargin*2),b.attr("fill",i.fill),b.text(o),f},qCe=JT((r,i,o)=>{if(!r||(o=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",joinWith:"
"},o),Cs.lineBreakRegex.test(r)))return r;const l=r.split(" "),f=[];let b="";return l.forEach((d,w)=>{const y=Bm(`${d} `,o),k=Bm(b,o);if(y>i){const{hyphenatedStrings:C,remainingWord:S}=sjt(d,i,"-",o);f.push(b,...C),b=S}else k+y>=i?(f.push(b),b=d):b=[b,d].filter(Boolean).join(" ");w+1===l.length&&f.push(b)}),f.filter(d=>d!=="").join(o.joinWith)},(r,i,o)=>`${r}${i}${o.fontSize}${o.fontWeight}${o.fontFamily}${o.joinWith}`),sjt=JT((r,i,o="-",l)=>{l=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:0},l);const f=[...r],b=[];let d="";return f.forEach((w,y)=>{const k=`${d}${w}`;if(Bm(k,l)>=i){const T=y+1,C=f.length===T,S=`${k}${o}`;b.push(C?k:S),d=""}else d=k}),{hyphenatedStrings:b,remainingWord:d}},(r,i,o="-",l)=>`${r}${i}${o}${l.fontSize}${l.fontWeight}${l.fontFamily}`);function gae(r,i){return i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial",margin:15},i),pae(r,i).height}function Bm(r,i){return i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},i),pae(r,i).width}const pae=JT((r,i)=>{i=Object.assign({fontSize:12,fontWeight:400,fontFamily:"Arial"},i);const{fontSize:o,fontFamily:l,fontWeight:f}=i;if(!r)return{width:0,height:0};const[,b]=oI(o),d=["sans-serif",l],w=r.split(Cs.lineBreakRegex),y=[],k=Cn("body");if(!k.remove)return{width:0,height:0,lineHeight:0};const E=k.append("svg");for(const C of d){let S=0;const L={width:0,height:0,lineHeight:0};for(const O of w){const B=rjt();B.text=O;const N=ijt(E,B).style("font-size",b).style("font-weight",f).style("font-family",C),F=(N._groups||N)[0][0].getBBox();L.width=Math.round(Math.max(L.width,F.width)),S=Math.round(F.height),L.height+=S,L.lineHeight=Math.round(Math.max(L.lineHeight,S))}y.push(L)}E.remove();const T=isNaN(y[1].height)||isNaN(y[1].width)||isNaN(y[1].lineHeight)||y[0].height>y[1].height&&y[0].width>y[1].width&&y[0].lineHeight>y[1].lineHeight?0:1;return y[T]},(r,i)=>`${r}${i.fontSize}${i.fontWeight}${i.fontFamily}`),ajt=class{constructor(i,o){this.deterministic=i,this.seed=o,this.count=o?o.length:0}next(){return this.deterministic?this.count++:Date.now()}};let BG;const ojt=function(r){return BG=BG||document.createElement("div"),r=escape(r).replace(/%26/g,"&").replace(/%23/g,"#").replace(/%3B/g,";"),BG.innerHTML=r,unescape(BG.textContent)},Q8=r=>{if(Se.debug("directiveSanitizer called with",r),typeof r=="object"&&(r.length?r.forEach(i=>Q8(i)):Object.keys(r).forEach(i=>{Se.debug("Checking key",i),i.startsWith("__")&&(Se.debug("sanitize deleting __ option",i),delete r[i]),i.includes("proto")&&(Se.debug("sanitize deleting proto option",i),delete r[i]),i.includes("constr")&&(Se.debug("sanitize deleting constr option",i),delete r[i]),i.includes("themeCSS")&&(Se.debug("sanitizing themeCss option"),r[i]=FG(r[i])),i.includes("fontFamily")&&(Se.debug("sanitizing fontFamily option"),r[i]=FG(r[i])),i.includes("altFontFamily")&&(Se.debug("sanitizing altFontFamily option"),r[i]=FG(r[i])),KPt.includes(i)?typeof r[i]=="object"&&(Se.debug("sanitize deleting object",i),Q8(r[i])):(Se.debug("sanitize deleting option",i),delete r[i])})),r.themeVariables){const i=Object.keys(r.themeVariables);for(const o of i){const l=r.themeVariables[o];l&&l.match&&!l.match(/^[\d "#%(),.;A-Za-z]+$/)&&(r.themeVariables[o]="")}}Se.debug("After sanitization",r)},FG=r=>{let i=0,o=0;for(const l of r){if(i{if(!l)return;const f=r.node().getBBox();r.append("text").text(l).attr("x",f.x+f.width/2).attr("y",-o).attr("class",i)},oI=r=>{if(typeof r=="number")return[r,r+"px"];const i=parseInt(r,10);return Number.isNaN(i)?[void 0,void 0]:r===String(i)?[i,r+"px"]:[i,r]},Fs={assignWithDepth:Yf,wrapLabel:qCe,calculateTextHeight:gae,calculateTextWidth:Bm,calculateTextDimensions:pae,detectInit:WRt,detectDirective:zCe,isSubstringInArray:KRt,interpolateToCurve:q0,calcLabelPosition:JRt,calcCardinalityPosition:ejt,calcTerminalLabelPosition:tjt,formatUrl:XRt,getStylesFromArray:Dv,generateId:VCe,random:UCe,runFunc:QRt,entityDecode:ojt,initIdGenerator:ajt,directiveSanitizer:Q8,sanitizeCss:FG,insertTitle:ujt,parseFontSize:oI};var YCe="comm",WCe="rule",KCe="decl",ljt="@import",hjt="@keyframes",fjt=Math.abs,vae=String.fromCharCode;function XCe(r){return r.trim()}function wae(r,i,o){return r.replace(i,o)}function djt(r,i){return r.indexOf(i)}function RG(r,i){return r.charCodeAt(i)|0}function cI(r,i,o){return r.slice(i,o)}function f6(r){return r.length}function QCe(r){return r.length}function jG(r,i){return i.push(r),r}var $G=1,eC=1,ZCe=0,O2=0,Rh=0,tC="";function mae(r,i,o,l,f,b,d){return{value:r,root:i,parent:o,type:l,props:f,children:b,line:$G,column:eC,length:d,return:""}}function gjt(){return Rh}function pjt(){return Rh=O2>0?RG(tC,--O2):0,eC--,Rh===10&&(eC=1,$G--),Rh}function Lv(){return Rh=O22||yae(Rh)>3?"":" "}function mjt(r,i){for(;--i&&Lv()&&!(Rh<48||Rh>102||Rh>57&&Rh<65||Rh>70&&Rh<97););return zG(r,HG()+(i<6&&Z8()==32&&Lv()==32))}function xae(r){for(;Lv();)switch(Rh){case r:return O2;case 34:case 39:r!==34&&r!==39&&xae(Rh);break;case 40:r===41&&xae(r);break;case 92:Lv();break}return O2}function yjt(r,i){for(;Lv()&&r+Rh!==47+10;)if(r+Rh===42+42&&Z8()===47)break;return"/*"+zG(i,O2-1)+"*"+vae(r===47?r:Lv())}function kjt(r){for(;!yae(Z8());)Lv();return zG(r,O2)}function xjt(r){return vjt(GG("",null,null,null,[""],r=bjt(r),0,[0],r))}function GG(r,i,o,l,f,b,d,w,y){for(var k=0,E=0,T=d,C=0,S=0,L=0,O=1,B=1,N=1,F=0,R="",q=f,X=b,te=l,H=R;B;)switch(L=F,F=Lv()){case 40:if(L!=108&&RG(H,T-1)==58){djt(H+=wae(kae(F),"&","&\f"),"&\f")!=-1&&(N=-1);break}case 34:case 39:case 91:H+=kae(F);break;case 9:case 10:case 13:case 32:H+=wjt(L);break;case 92:H+=mjt(HG()-1,7);continue;case 47:switch(Z8()){case 42:case 47:jG(Ejt(yjt(Lv(),HG()),i,o),y);break;default:H+="/"}break;case 123*O:w[k++]=f6(H)*N;case 125*O:case 59:case 0:switch(F){case 0:case 125:B=0;case 59+E:S>0&&f6(H)-T&&jG(S>32?eSe(H+";",l,o,T-1):eSe(wae(H," ","")+";",l,o,T-2),y);break;case 59:H+=";";default:if(jG(te=JCe(H,i,o,k,E,f,w,R,q=[],X=[],T),b),F===123)if(E===0)GG(H,i,te,te,q,b,T,w,X);else switch(C){case 100:case 109:case 115:GG(r,te,te,l&&jG(JCe(r,te,te,0,0,f,w,R,f,q=[],T),X),f,X,T,w,l?q:X);break;default:GG(H,te,te,te,[""],X,0,w,X)}}k=E=S=0,O=N=1,R=H="",T=d;break;case 58:T=1+f6(H),S=L;default:if(O<1){if(F==123)--O;else if(F==125&&O++==0&&pjt()==125)continue}switch(H+=vae(F),F*O){case 38:N=E>0?1:(H+="\f",-1);break;case 44:w[k++]=(f6(H)-1)*N,N=1;break;case 64:Z8()===45&&(H+=kae(Lv())),C=Z8(),E=T=f6(R=H+=kjt(HG())),F++;break;case 45:L===45&&f6(H)==2&&(O=0)}}return b}function JCe(r,i,o,l,f,b,d,w,y,k,E){for(var T=f-1,C=f===0?b:[""],S=QCe(C),L=0,O=0,B=0;L0?C[N]+" "+F:wae(F,/&\f/g,C[N])))&&(y[B++]=R);return mae(r,i,o,f===0?WCe:w,y,k,E)}function Ejt(r,i,o){return mae(r,i,o,YCe,vae(gjt()),cI(r,2,-2),0)}function eSe(r,i,o,l){return mae(r,i,o,KCe,cI(r,0,l),cI(r,l+1,-1),l)}function Eae(r,i){for(var o="",l=QCe(r),f=0;f{let o=Yf({},r),l={};for(const f of i)iSe(f),l=Yf(l,f);if(o=Yf(o,l),l.theme&&l.theme in q3){const f=Yf({},tSe),b=Yf(f.themeVariables||{},l.themeVariables);o.theme&&o.theme in q3&&(o.themeVariables=q3[o.theme].getThemeVariables(b))}return uI=o,oSe(uI),uI},Tjt=r=>(Y0=Yf({},nC),Y0=Yf(Y0,r),r.theme&&q3[r.theme]&&(Y0.themeVariables=q3[r.theme].getThemeVariables(r.themeVariables)),UG(Y0,rC),Y0),Cjt=r=>{tSe=Yf({},r)},Sjt=r=>(Y0=Yf(Y0,r),UG(Y0,rC),Y0),nSe=()=>Yf({},Y0),rSe=r=>(oSe(r),Yf(uI,r),ht()),ht=()=>Yf({},uI),iSe=r=>{var i;["secure",...(i=Y0.secure)!=null?i:[]].forEach(o=>{r[o]!==void 0&&(Se.debug(`Denied attempt to modify a secure key ${o}`,r[o]),delete r[o])}),Object.keys(r).forEach(o=>{o.indexOf("__")===0&&delete r[o]}),Object.keys(r).forEach(o=>{typeof r[o]=="string"&&(r[o].includes("<")||r[o].includes(">")||r[o].includes("url(data:"))&&delete r[o],typeof r[o]=="object"&&iSe(r[o])})},_ae=r=>{r.fontFamily&&(r.themeVariables?r.themeVariables.fontFamily||(r.themeVariables={fontFamily:r.fontFamily}):r.themeVariables={fontFamily:r.fontFamily}),rC.push(r),UG(Y0,rC)},lI=(r=Y0)=>{rC=[],UG(r,rC)};var sSe=(r=>(r.LAZY_LOAD_DEPRECATED="The configuration options lazyLoadedDiagrams and loadExternalDiagramsAtStartup are deprecated. Please use registerExternalDiagrams instead.",r))(sSe||{});const aSe={},Ajt=r=>{aSe[r]||(Se.warn(sSe[r]),aSe[r]=!0)},oSe=r=>{!r||(r.lazyLoadedDiagrams||r.loadExternalDiagramsAtStartup)&&Ajt("LAZY_LOAD_DEPRECATED")},Mjt=function(r,i){for(let o of i)r.attr(o[0],o[1])},Djt=function(r,i,o){let l=new Map;return o?(l.set("width","100%"),l.set("style",`max-width: ${i}px;`)):(l.set("height",r),l.set("width",i)),l},Iv=function(r,i,o,l){const f=Djt(i,o,l);Mjt(r,f)},J8=function(r,i,o,l){const f=i.node().getBBox(),b=f.width,d=f.height;Se.info(`SVG bounds: ${b}x${d}`,f);let w=0,y=0;Se.info(`Graph bounds: ${w}x${y}`,r),w=b+o*2,y=d+o*2,Se.info(`Calculated bounds: ${w}x${y}`),Iv(i,y,w,l);const k=`${f.x-o} ${f.y-o} ${f.width+2*o} ${f.height+2*o}`;i.attr("viewBox",k)},hI=r=>`g.classGroup text {
- fill: ${r.nodeBorder};
- fill: ${r.classText};
- stroke: none;
- font-family: ${r.fontFamily};
- font-size: 10px;
-
- .title {
- font-weight: bolder;
- }
-
-}
-
-.nodeLabel, .edgeLabel {
- color: ${r.classText};
-}
-.edgeLabel .label rect {
- fill: ${r.mainBkg};
-}
-.label text {
- fill: ${r.classText};
-}
-.edgeLabel .label span {
- background: ${r.mainBkg};
-}
-
-.classTitle {
- font-weight: bolder;
-}
-.node rect,
- .node circle,
- .node ellipse,
- .node polygon,
- .node path {
- fill: ${r.mainBkg};
- stroke: ${r.nodeBorder};
- stroke-width: 1px;
- }
-
-
-.divider {
- stroke: ${r.nodeBorder};
- stroke: 1;
-}
-
-g.clickable {
- cursor: pointer;
-}
-
-g.classGroup rect {
- fill: ${r.mainBkg};
- stroke: ${r.nodeBorder};
-}
-
-g.classGroup line {
- stroke: ${r.nodeBorder};
- stroke-width: 1;
-}
-
-.classLabel .box {
- stroke: none;
- stroke-width: 0;
- fill: ${r.mainBkg};
- opacity: 0.5;
-}
-
-.classLabel .label {
- fill: ${r.nodeBorder};
- font-size: 10px;
-}
-
-.relation {
- stroke: ${r.lineColor};
- stroke-width: 1;
- fill: none;
-}
-
-.dashed-line{
- stroke-dasharray: 3;
-}
-
-.dotted-line{
- stroke-dasharray: 1 2;
-}
-
-#compositionStart, .composition {
- fill: ${r.lineColor} !important;
- stroke: ${r.lineColor} !important;
- stroke-width: 1;
-}
-
-#compositionEnd, .composition {
- fill: ${r.lineColor} !important;
- stroke: ${r.lineColor} !important;
- stroke-width: 1;
-}
-
-#dependencyStart, .dependency {
- fill: ${r.lineColor} !important;
- stroke: ${r.lineColor} !important;
- stroke-width: 1;
-}
-
-#dependencyStart, .dependency {
- fill: ${r.lineColor} !important;
- stroke: ${r.lineColor} !important;
- stroke-width: 1;
-}
-
-#extensionStart, .extension {
- fill: ${r.mainBkg} !important;
- stroke: ${r.lineColor} !important;
- stroke-width: 1;
-}
-
-#extensionEnd, .extension {
- fill: ${r.mainBkg} !important;
- stroke: ${r.lineColor} !important;
- stroke-width: 1;
-}
-
-#aggregationStart, .aggregation {
- fill: ${r.mainBkg} !important;
- stroke: ${r.lineColor} !important;
- stroke-width: 1;
-}
-
-#aggregationEnd, .aggregation {
- fill: ${r.mainBkg} !important;
- stroke: ${r.lineColor} !important;
- stroke-width: 1;
-}
-
-#lollipopStart, .lollipop {
- fill: ${r.mainBkg} !important;
- stroke: ${r.lineColor} !important;
- stroke-width: 1;
-}
-
-#lollipopEnd, .lollipop {
- fill: ${r.mainBkg} !important;
- stroke: ${r.lineColor} !important;
- stroke-width: 1;
-}
-
-.edgeTerminals {
- font-size: 11px;
-}
-
-.classTitleText {
- text-anchor: middle;
- font-size: 18px;
- fill: ${r.textColor};
-}
-`,cSe=r=>`
- .entityBox {
- fill: ${r.mainBkg};
- stroke: ${r.nodeBorder};
- }
-
- .attributeBoxOdd {
- fill: ${r.attributeBackgroundColorOdd};
- stroke: ${r.nodeBorder};
- }
-
- .attributeBoxEven {
- fill: ${r.attributeBackgroundColorEven};
- stroke: ${r.nodeBorder};
- }
-
- .relationshipLabelBox {
- fill: ${r.tertiaryColor};
- opacity: 0.7;
- background-color: ${r.tertiaryColor};
- rect {
- opacity: 0.5;
- }
- }
-
- .relationshipLine {
- stroke: ${r.lineColor};
- }
-
- .entityTitleText {
- text-anchor: middle;
- font-size: 18px;
- fill: ${r.textColor};
- }
-`,Tae=()=>"",qG=r=>`.label {
- font-family: ${r.fontFamily};
- color: ${r.nodeTextColor||r.textColor};
- }
- .cluster-label text {
- fill: ${r.titleColor};
- }
- .cluster-label span {
- color: ${r.titleColor};
- }
-
- .label text,span {
- fill: ${r.nodeTextColor||r.textColor};
- color: ${r.nodeTextColor||r.textColor};
- }
-
- .node rect,
- .node circle,
- .node ellipse,
- .node polygon,
- .node path {
- fill: ${r.mainBkg};
- stroke: ${r.nodeBorder};
- stroke-width: 1px;
- }
-
- .node .label {
- text-align: center;
- }
- .node.clickable {
- cursor: pointer;
- }
-
- .arrowheadPath {
- fill: ${r.arrowheadColor};
- }
-
- .edgePath .path {
- stroke: ${r.lineColor};
- stroke-width: 2.0px;
- }
-
- .flowchart-link {
- stroke: ${r.lineColor};
- fill: none;
- }
-
- .edgeLabel {
- background-color: ${r.edgeLabelBackground};
- rect {
- opacity: 0.5;
- background-color: ${r.edgeLabelBackground};
- fill: ${r.edgeLabelBackground};
- }
- text-align: center;
- }
-
- .cluster rect {
- fill: ${r.clusterBkg};
- stroke: ${r.clusterBorder};
- stroke-width: 1px;
- }
-
- .cluster text {
- fill: ${r.titleColor};
- }
-
- .cluster span {
- color: ${r.titleColor};
- }
- /* .cluster div {
- color: ${r.titleColor};
- } */
-
- div.mermaidTooltip {
- position: absolute;
- text-align: center;
- max-width: 200px;
- padding: 2px;
- font-family: ${r.fontFamily};
- font-size: 12px;
- background: ${r.tertiaryColor};
- border: 1px solid ${r.border2};
- border-radius: 2px;
- pointer-events: none;
- z-index: 100;
- }
-
- .flowchartTitleText {
- text-anchor: middle;
- font-size: 18px;
- fill: ${r.textColor};
- }
-`,uSe=r=>`
- .mermaid-main-font {
- font-family: "trebuchet ms", verdana, arial, sans-serif;
- font-family: var(--mermaid-font-family);
- }
- .exclude-range {
- fill: ${r.excludeBkgColor};
- }
-
- .section {
- stroke: none;
- opacity: 0.2;
- }
-
- .section0 {
- fill: ${r.sectionBkgColor};
- }
-
- .section2 {
- fill: ${r.sectionBkgColor2};
- }
-
- .section1,
- .section3 {
- fill: ${r.altSectionBkgColor};
- opacity: 0.2;
- }
-
- .sectionTitle0 {
- fill: ${r.titleColor};
- }
-
- .sectionTitle1 {
- fill: ${r.titleColor};
- }
-
- .sectionTitle2 {
- fill: ${r.titleColor};
- }
-
- .sectionTitle3 {
- fill: ${r.titleColor};
- }
-
- .sectionTitle {
- text-anchor: start;
- // font-size: ${r.ganttFontSize};
- // text-height: 14px;
- font-family: 'trebuchet ms', verdana, arial, sans-serif;
- font-family: var(--mermaid-font-family);
-
- }
-
-
- /* Grid and axis */
-
- .grid .tick {
- stroke: ${r.gridColor};
- opacity: 0.8;
- shape-rendering: crispEdges;
- text {
- font-family: ${r.fontFamily};
- fill: ${r.textColor};
- }
- }
-
- .grid path {
- stroke-width: 0;
- }
-
-
- /* Today line */
-
- .today {
- fill: none;
- stroke: ${r.todayLineColor};
- stroke-width: 2px;
- }
-
-
- /* Task styling */
-
- /* Default task */
-
- .task {
- stroke-width: 2;
- }
-
- .taskText {
- text-anchor: middle;
- font-family: 'trebuchet ms', verdana, arial, sans-serif;
- font-family: var(--mermaid-font-family);
- }
-
- // .taskText:not([font-size]) {
- // font-size: ${r.ganttFontSize};
- // }
-
- .taskTextOutsideRight {
- fill: ${r.taskTextDarkColor};
- text-anchor: start;
- // font-size: ${r.ganttFontSize};
- font-family: 'trebuchet ms', verdana, arial, sans-serif;
- font-family: var(--mermaid-font-family);
-
- }
-
- .taskTextOutsideLeft {
- fill: ${r.taskTextDarkColor};
- text-anchor: end;
- // font-size: ${r.ganttFontSize};
- }
-
- /* Special case clickable */
- .task.clickable {
- cursor: pointer;
- }
- .taskText.clickable {
- cursor: pointer;
- fill: ${r.taskTextClickableColor} !important;
- font-weight: bold;
- }
-
- .taskTextOutsideLeft.clickable {
- cursor: pointer;
- fill: ${r.taskTextClickableColor} !important;
- font-weight: bold;
- }
-
- .taskTextOutsideRight.clickable {
- cursor: pointer;
- fill: ${r.taskTextClickableColor} !important;
- font-weight: bold;
- }
-
- /* Specific task settings for the sections*/
-
- .taskText0,
- .taskText1,
- .taskText2,
- .taskText3 {
- fill: ${r.taskTextColor};
- }
-
- .task0,
- .task1,
- .task2,
- .task3 {
- fill: ${r.taskBkgColor};
- stroke: ${r.taskBorderColor};
- }
-
- .taskTextOutside0,
- .taskTextOutside2
- {
- fill: ${r.taskTextOutsideColor};
- }
-
- .taskTextOutside1,
- .taskTextOutside3 {
- fill: ${r.taskTextOutsideColor};
- }
-
-
- /* Active task */
-
- .active0,
- .active1,
- .active2,
- .active3 {
- fill: ${r.activeTaskBkgColor};
- stroke: ${r.activeTaskBorderColor};
- }
-
- .activeText0,
- .activeText1,
- .activeText2,
- .activeText3 {
- fill: ${r.taskTextDarkColor} !important;
- }
-
-
- /* Completed task */
-
- .done0,
- .done1,
- .done2,
- .done3 {
- stroke: ${r.doneTaskBorderColor};
- fill: ${r.doneTaskBkgColor};
- stroke-width: 2;
- }
-
- .doneText0,
- .doneText1,
- .doneText2,
- .doneText3 {
- fill: ${r.taskTextDarkColor} !important;
- }
-
-
- /* Tasks on the critical line */
-
- .crit0,
- .crit1,
- .crit2,
- .crit3 {
- stroke: ${r.critBorderColor};
- fill: ${r.critBkgColor};
- stroke-width: 2;
- }
-
- .activeCrit0,
- .activeCrit1,
- .activeCrit2,
- .activeCrit3 {
- stroke: ${r.critBorderColor};
- fill: ${r.activeTaskBkgColor};
- stroke-width: 2;
- }
-
- .doneCrit0,
- .doneCrit1,
- .doneCrit2,
- .doneCrit3 {
- stroke: ${r.critBorderColor};
- fill: ${r.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: ${r.taskTextDarkColor} !important;
- }
-
- .activeCritText0,
- .activeCritText1,
- .activeCritText2,
- .activeCritText3 {
- fill: ${r.taskTextDarkColor} !important;
- }
-
- .titleText {
- text-anchor: middle;
- font-size: 18px;
- fill: ${r.textColor} ;
- font-family: 'trebuchet ms', verdana, arial, sans-serif;
- font-family: var(--mermaid-font-family);
- }
-`,lSe=()=>"",hSe=r=>`
- .pieCircle{
- stroke: ${r.pieStrokeColor};
- stroke-width : ${r.pieStrokeWidth};
- opacity : ${r.pieOpacity};
- }
- .pieTitleText {
- text-anchor: middle;
- font-size: ${r.pieTitleTextSize};
- fill: ${r.pieTitleTextColor};
- font-family: ${r.fontFamily};
- }
- .slice {
- font-family: ${r.fontFamily};
- fill: ${r.pieSectionTextColor};
- font-size:${r.pieSectionTextSize};
- // fill: white;
- }
- .legend text {
- fill: ${r.pieLegendTextColor};
- font-family: ${r.fontFamily};
- font-size: ${r.pieLegendTextSize};
- }
-`,fSe=r=>`
-
- marker {
- fill: ${r.relationColor};
- stroke: ${r.relationColor};
- }
-
- marker.cross {
- stroke: ${r.lineColor};
- }
-
- svg {
- font-family: ${r.fontFamily};
- font-size: ${r.fontSize};
- }
-
- .reqBox {
- fill: ${r.requirementBackground};
- fill-opacity: 100%;
- stroke: ${r.requirementBorderColor};
- stroke-width: ${r.requirementBorderSize};
- }
-
- .reqTitle, .reqLabel{
- fill: ${r.requirementTextColor};
- }
- .reqLabelBox {
- fill: ${r.relationLabelBackground};
- fill-opacity: 100%;
- }
-
- .req-title-line {
- stroke: ${r.requirementBorderColor};
- stroke-width: ${r.requirementBorderSize};
- }
- .relationshipLine {
- stroke: ${r.relationColor};
- stroke-width: 1;
- }
- .relationshipLabel {
- fill: ${r.relationLabelColor};
- }
-
-`,dSe=r=>`.actor {
- stroke: ${r.actorBorder};
- fill: ${r.actorBkg};
- }
-
- text.actor > tspan {
- fill: ${r.actorTextColor};
- stroke: none;
- }
-
- .actor-line {
- stroke: ${r.actorLineColor};
- }
-
- .messageLine0 {
- stroke-width: 1.5;
- stroke-dasharray: none;
- stroke: ${r.signalColor};
- }
-
- .messageLine1 {
- stroke-width: 1.5;
- stroke-dasharray: 2, 2;
- stroke: ${r.signalColor};
- }
-
- #arrowhead path {
- fill: ${r.signalColor};
- stroke: ${r.signalColor};
- }
-
- .sequenceNumber {
- fill: ${r.sequenceNumberColor};
- }
-
- #sequencenumber {
- fill: ${r.signalColor};
- }
-
- #crosshead path {
- fill: ${r.signalColor};
- stroke: ${r.signalColor};
- }
-
- .messageText {
- fill: ${r.signalTextColor};
- stroke: none;
- }
-
- .labelBox {
- stroke: ${r.labelBoxBorderColor};
- fill: ${r.labelBoxBkgColor};
- }
-
- .labelText, .labelText > tspan {
- fill: ${r.labelTextColor};
- stroke: none;
- }
-
- .loopText, .loopText > tspan {
- fill: ${r.loopTextColor};
- stroke: none;
- }
-
- .loopLine {
- stroke-width: 2px;
- stroke-dasharray: 2, 2;
- stroke: ${r.labelBoxBorderColor};
- fill: ${r.labelBoxBorderColor};
- }
-
- .note {
- //stroke: #decc93;
- stroke: ${r.noteBorderColor};
- fill: ${r.noteBkgColor};
- }
-
- .noteText, .noteText > tspan {
- fill: ${r.noteTextColor};
- stroke: none;
- }
-
- .activation0 {
- fill: ${r.activationBkgColor};
- stroke: ${r.activationBorderColor};
- }
-
- .activation1 {
- fill: ${r.activationBkgColor};
- stroke: ${r.activationBorderColor};
- }
-
- .activation2 {
- fill: ${r.activationBkgColor};
- stroke: ${r.activationBorderColor};
- }
-
- .actorPopupMenu {
- position: absolute;
- }
-
- .actorPopupMenuPanel {
- position: absolute;
- fill: ${r.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: ${r.actorBorder};
- fill: ${r.actorBkg};
- }
- .actor-man circle, line {
- stroke: ${r.actorBorder};
- fill: ${r.actorBkg};
- stroke-width: 2px;
- }
-`,YG=r=>`
-defs #statediagram-barbEnd {
- fill: ${r.transitionColor};
- stroke: ${r.transitionColor};
- }
-g.stateGroup text {
- fill: ${r.nodeBorder};
- stroke: none;
- font-size: 10px;
-}
-g.stateGroup text {
- fill: ${r.textColor};
- stroke: none;
- font-size: 10px;
-
-}
-g.stateGroup .state-title {
- font-weight: bolder;
- fill: ${r.stateLabelColor};
-}
-
-g.stateGroup rect {
- fill: ${r.mainBkg};
- stroke: ${r.nodeBorder};
-}
-
-g.stateGroup line {
- stroke: ${r.lineColor};
- stroke-width: 1;
-}
-
-.transition {
- stroke: ${r.transitionColor};
- stroke-width: 1;
- fill: none;
-}
-
-.stateGroup .composit {
- fill: ${r.background};
- border-bottom: 1px
-}
-
-.stateGroup .alt-composit {
- fill: #e0e0e0;
- border-bottom: 1px
-}
-
-.state-note {
- stroke: ${r.noteBorderColor};
- fill: ${r.noteBkgColor};
-
- text {
- fill: ${r.noteTextColor};
- stroke: none;
- font-size: 10px;
- }
-}
-
-.stateLabel .box {
- stroke: none;
- stroke-width: 0;
- fill: ${r.mainBkg};
- opacity: 0.5;
-}
-
-.edgeLabel .label rect {
- fill: ${r.labelBackgroundColor};
- opacity: 0.5;
-}
-.edgeLabel .label text {
- fill: ${r.transitionLabelColor||r.tertiaryTextColor};
-}
-.label div .edgeLabel {
- color: ${r.transitionLabelColor||r.tertiaryTextColor};
-}
-
-.stateLabel text {
- fill: ${r.stateLabelColor};
- font-size: 10px;
- font-weight: bold;
-}
-
-.node circle.state-start {
- fill: ${r.specialStateColor};
- stroke: ${r.specialStateColor};
-}
-
-.node .fork-join {
- fill: ${r.specialStateColor};
- stroke: ${r.specialStateColor};
-}
-
-.node circle.state-end {
- fill: ${r.innerEndBackground};
- stroke: ${r.background};
- stroke-width: 1.5
-}
-.end-state-inner {
- fill: ${r.compositeBackground||r.background};
- // stroke: ${r.background};
- stroke-width: 1.5
-}
-
-.node rect {
- fill: ${r.stateBkg||r.mainBkg};
- stroke: ${r.stateBorder||r.nodeBorder};
- stroke-width: 1px;
-}
-.node polygon {
- fill: ${r.mainBkg};
- stroke: ${r.stateBorder||r.nodeBorder};;
- stroke-width: 1px;
-}
-#statediagram-barbEnd {
- fill: ${r.lineColor};
-}
-
-.statediagram-cluster rect {
- fill: ${r.compositeTitleBackground};
- stroke: ${r.stateBorder||r.nodeBorder};
- stroke-width: 1px;
-}
-
-.cluster-label, .nodeLabel {
- color: ${r.stateLabelColor};
-}
-
-.statediagram-cluster rect.outer {
- rx: 5px;
- ry: 5px;
-}
-.statediagram-state .divider {
- stroke: ${r.stateBorder||r.nodeBorder};
-}
-
-.statediagram-state .title-state {
- rx: 5px;
- ry: 5px;
-}
-.statediagram-cluster.statediagram-cluster .inner {
- fill: ${r.compositeBackground||r.background};
-}
-.statediagram-cluster.statediagram-cluster-alt .inner {
- fill: ${r.altBackground?r.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: ${r.altBackground?r.altBackground:"#efefef"};
-}
-
-.note-edge {
- stroke-dasharray: 5;
-}
-
-.statediagram-note rect {
- fill: ${r.noteBkgColor};
- stroke: ${r.noteBorderColor};
- stroke-width: 1px;
- rx: 0;
- ry: 0;
-}
-.statediagram-note rect {
- fill: ${r.noteBkgColor};
- stroke: ${r.noteBorderColor};
- stroke-width: 1px;
- rx: 0;
- ry: 0;
-}
-
-.statediagram-note text {
- fill: ${r.noteTextColor};
-}
-
-.statediagram-note .nodeLabel {
- color: ${r.noteTextColor};
-}
-.statediagram .edgeLabel {
- color: red; // ${r.noteTextColor};
-}
-
-#dependencyStart, #dependencyEnd {
- fill: ${r.lineColor};
- stroke: ${r.lineColor};
- stroke-width: 1;
-}
-
-.statediagramTitleText {
- text-anchor: middle;
- font-size: 18px;
- fill: ${r.textColor};
-}
-`,gSe=r=>`.label {
- font-family: 'trebuchet ms', verdana, arial, sans-serif;
- font-family: var(--mermaid-font-family);
- color: ${r.textColor};
- }
- .mouth {
- stroke: #666;
- }
-
- line {
- stroke: ${r.textColor}
- }
-
- .legend {
- fill: ${r.textColor};
- }
-
- .label text {
- fill: #333;
- }
- .label {
- color: ${r.textColor}
- }
-
- .face {
- ${r.faceColor?`fill: ${r.faceColor}`:"fill: #FFF8DC"};
- stroke: #999;
- }
-
- .node rect,
- .node circle,
- .node ellipse,
- .node polygon,
- .node path {
- fill: ${r.mainBkg};
- stroke: ${r.nodeBorder};
- stroke-width: 1px;
- }
-
- .node .label {
- text-align: center;
- }
- .node.clickable {
- cursor: pointer;
- }
-
- .arrowheadPath {
- fill: ${r.arrowheadColor};
- }
-
- .edgePath .path {
- stroke: ${r.lineColor};
- stroke-width: 1.5px;
- }
-
- .flowchart-link {
- stroke: ${r.lineColor};
- fill: none;
- }
-
- .edgeLabel {
- background-color: ${r.edgeLabelBackground};
- rect {
- opacity: 0.5;
- }
- text-align: center;
- }
-
- .cluster rect {
- }
-
- .cluster text {
- fill: ${r.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: ${r.tertiaryColor};
- border: 1px solid ${r.border2};
- border-radius: 2px;
- pointer-events: none;
- z-index: 100;
- }
-
- .task-type-0, .section-type-0 {
- ${r.fillType0?`fill: ${r.fillType0}`:""};
- }
- .task-type-1, .section-type-1 {
- ${r.fillType0?`fill: ${r.fillType1}`:""};
- }
- .task-type-2, .section-type-2 {
- ${r.fillType0?`fill: ${r.fillType2}`:""};
- }
- .task-type-3, .section-type-3 {
- ${r.fillType0?`fill: ${r.fillType3}`:""};
- }
- .task-type-4, .section-type-4 {
- ${r.fillType0?`fill: ${r.fillType4}`:""};
- }
- .task-type-5, .section-type-5 {
- ${r.fillType0?`fill: ${r.fillType5}`:""};
- }
- .task-type-6, .section-type-6 {
- ${r.fillType0?`fill: ${r.fillType6}`:""};
- }
- .task-type-7, .section-type-7 {
- ${r.fillType0?`fill: ${r.fillType7}`:""};
- }
-
- .actor-0 {
- ${r.actor0?`fill: ${r.actor0}`:""};
- }
- .actor-1 {
- ${r.actor1?`fill: ${r.actor1}`:""};
- }
- .actor-2 {
- ${r.actor2?`fill: ${r.actor2}`:""};
- }
- .actor-3 {
- ${r.actor3?`fill: ${r.actor3}`:""};
- }
- .actor-4 {
- ${r.actor4?`fill: ${r.actor4}`:""};
- }
- .actor-5 {
- ${r.actor5?`fill: ${r.actor5}`:""};
- }
-`,pSe=r=>`.person {
- stroke: ${r.personBorder};
- fill: ${r.personBkg};
- }
-`,WG={flowchart:qG,"flowchart-v2":qG,sequence:dSe,gantt:uSe,classDiagram:hI,"classDiagram-v2":hI,class:hI,stateDiagram:YG,state:YG,info:lSe,pie:hSe,er:cSe,error:Tae,journey:gSe,requirement:fSe,c4:pSe},Ljt=(r,i,o)=>{let l="";return r in WG&&WG[r]?l=WG[r](o):Se.warn(`No theme found for ${r}`),` & {
- font-family: ${o.fontFamily};
- font-size: ${o.fontSize};
- fill: ${o.textColor}
- }
-
- /* Classes common for multiple diagrams */
-
- & .error-icon {
- fill: ${o.errorBkgColor};
- }
- & .error-text {
- fill: ${o.errorTextColor};
- stroke: ${o.errorTextColor};
- }
-
- & .edge-thickness-normal {
- stroke-width: 2px;
- }
- & .edge-thickness-thick {
- stroke-width: 3.5px
- }
- & .edge-pattern-solid {
- stroke-dasharray: 0;
- }
-
- & .edge-pattern-dashed{
- stroke-dasharray: 3;
- }
- .edge-pattern-dotted {
- stroke-dasharray: 2;
- }
-
- & .marker {
- fill: ${o.lineColor};
- stroke: ${o.lineColor};
- }
- & .marker.cross {
- stroke: ${o.lineColor};
- }
-
- & svg {
- font-family: ${o.fontFamily};
- font-size: ${o.fontSize};
- }
-
- ${l}
-
- ${i}
-`},Ijt=(r,i)=>{WG[r]=i},Ojt=Ljt;let Cae="",KG="",Sae="";const Aae=r=>up(r,ht()),W0=function(){Cae="",Sae="",KG=""},K0=function(r){Cae=Aae(r).replace(/^\s+/g,"")},hp=function(){return Cae||KG},fp=function(r){Sae=Aae(r).replace(/\n\s+/g,`
-`)},dp=function(){return Sae},Ov=function(r){KG=Aae(r)},Nv=function(){return KG},bSe=Object.freeze(Object.defineProperty({__proto__:null,clear:W0,setAccTitle:K0,getAccTitle:hp,setAccDescription:fp,getAccDescription:dp,setDiagramTitle:Ov,getDiagramTitle:Nv,default:{setAccTitle:K0,getAccTitle:hp,setDiagramTitle:Ov,getDiagramTitle:Nv,getAccDescription:dp,setAccDescription:fp,clear:W0}},Symbol.toStringTag,{value:"Module"}));let e7={};const Mae=function(r,i,o,l){Se.debug("parseDirective is being called",i,o,l);try{if(i!==void 0)switch(i=i.trim(),o){case"open_directive":e7={};break;case"type_directive":if(!e7)throw new Error("currentDirective is undefined");e7.type=i.toLowerCase();break;case"arg_directive":if(!e7)throw new Error("currentDirective is undefined");e7.args=JSON.parse(i);break;case"close_directive":Njt(r,e7,l),e7=void 0;break}}catch(f){Se.error(`Error while rendering sequenceDiagram directive: ${i} jison context: ${o}`),Se.error(f.message)}},Njt=function(r,i,o){switch(Se.info(`Directive type=${i.type} with args:`,i.args),i.type){case"init":case"initialize":{["config"].forEach(l=>{i.args[l]!==void 0&&(o==="flowchart-v2"&&(o="flowchart"),i.args[o]=i.args[l],delete i.args[l])}),Se.info("sanitize in handleDirective",i.args),Q8(i.args),Se.info("sanitize in handleDirective (done)",i.args),_ae(i.args);break}case"wrap":case"nowrap":r&&r.setWrap&&r.setWrap(i.type==="wrap");break;case"themeCss":Se.warn("themeCss encountered");break;default:Se.warn(`Unhandled directive: source: '%%{${i.type}: ${JSON.stringify(i.args?i.args:{})}}%%`,i);break}},Pjt=Se,Bjt=Wie,fI=ht,Fjt=r=>up(r,fI()),vSe=J8,Rjt=()=>bSe,jjt=(r,i,o,l)=>Mae(r,i,o,l),XG={},uf=(r,i,o)=>{if(XG[r])throw new Error(`Diagram ${r} already registered.`);XG[r]=i,o&&FCe(r,o),Ijt(r,i.styles),i.injectUtils&&i.injectUtils(Pjt,Bjt,fI,Fjt,vSe,Rjt(),jjt)},wSe=r=>{if(r in XG)return XG[r];throw new Error(`Diagram ${r} not found.`)};var Dae=function(){var r=function(Y,z,W,Z){for(W=W||{},Z=Y.length;Z--;W[Y[Z]]=z);return W},i=[1,4],o=[1,7],l=[1,5],f=[1,9],b=[1,6],d=[2,6],w=[1,16],y=[6,8,14,20,22,24,25,27,29,32,37,40,50,55],k=[8,14,20,22,24,25,27,29,32,37,40],E=[8,13,14,20,22,24,25,27,29,32,37,40],T=[1,26],C=[6,8,14,50,55],S=[8,14,55],L=[1,53],O=[1,52],B=[8,14,30,33,35,38,55],N=[1,67],F=[1,68],R=[1,69],q=[8,14,33,35,42,55],X={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,GG:6,document:7,EOF:8,":":9,DIR:10,options:11,body:12,OPT:13,NL:14,line:15,statement:16,commitStatement:17,mergeStatement:18,cherryPickStatement:19,acc_title:20,acc_title_value:21,acc_descr:22,acc_descr_value:23,acc_descr_multiline_value:24,section:25,branchStatement:26,CHECKOUT:27,ref:28,BRANCH:29,ORDER:30,NUM:31,CHERRY_PICK:32,COMMIT_ID:33,STR:34,COMMIT_TAG:35,EMPTYSTR:36,MERGE:37,COMMIT_TYPE:38,commitType:39,COMMIT:40,commit_arg:41,COMMIT_MSG:42,NORMAL:43,REVERSE:44,HIGHLIGHT:45,openDirective:46,typeDirective:47,closeDirective:48,argDirective:49,open_directive:50,type_directive:51,arg_directive:52,close_directive:53,ID:54,";":55,$accept:0,$end:1},terminals_:{2:"error",6:"GG",8:"EOF",9:":",10:"DIR",13:"OPT",14:"NL",20:"acc_title",21:"acc_title_value",22:"acc_descr",23:"acc_descr_value",24:"acc_descr_multiline_value",25:"section",27:"CHECKOUT",29:"BRANCH",30:"ORDER",31:"NUM",32:"CHERRY_PICK",33:"COMMIT_ID",34:"STR",35:"COMMIT_TAG",36:"EMPTYSTR",37:"MERGE",38:"COMMIT_TYPE",40:"COMMIT",42:"COMMIT_MSG",43:"NORMAL",44:"REVERSE",45:"HIGHLIGHT",50:"open_directive",51:"type_directive",52:"arg_directive",53:"close_directive",54:"ID",55:";"},productions_:[0,[3,2],[3,2],[3,3],[3,4],[3,5],[7,0],[7,2],[11,2],[11,1],[12,0],[12,2],[15,2],[15,1],[16,1],[16,1],[16,1],[16,2],[16,2],[16,1],[16,1],[16,1],[16,2],[26,2],[26,4],[19,3],[19,5],[19,5],[19,5],[19,5],[18,2],[18,4],[18,4],[18,4],[18,6],[18,6],[18,6],[18,6],[18,6],[18,6],[18,8],[18,8],[18,8],[18,8],[18,8],[18,8],[17,2],[17,3],[17,3],[17,5],[17,5],[17,3],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,3],[17,5],[17,5],[17,5],[17,5],[17,5],[17,5],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,7],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[17,9],[41,0],[41,1],[39,1],[39,1],[39,1],[5,3],[5,5],[46,1],[47,1],[49,1],[48,1],[28,1],[28,1],[4,1],[4,1],[4,1]],performAction:function(z,W,Z,G,ae,$,ge){var ee=$.length-1;switch(ae){case 3:return $[ee];case 4:return $[ee-1];case 5:return G.setDirection($[ee-3]),$[ee-1];case 7:G.setOptions($[ee-1]),this.$=$[ee];break;case 8:$[ee-1]+=$[ee],this.$=$[ee-1];break;case 10:this.$=[];break;case 11:$[ee-1].push($[ee]),this.$=$[ee-1];break;case 12:this.$=$[ee-1];break;case 17:this.$=$[ee].trim(),G.setAccTitle(this.$);break;case 18:case 19:this.$=$[ee].trim(),G.setAccDescription(this.$);break;case 20:G.addSection($[ee].substr(8)),this.$=$[ee].substr(8);break;case 22:G.checkout($[ee]);break;case 23:G.branch($[ee]);break;case 24:G.branch($[ee-2],$[ee]);break;case 25:G.cherryPick($[ee],"",void 0);break;case 26:G.cherryPick($[ee-2],"",$[ee]);break;case 27:case 29:G.cherryPick($[ee-2],"","");break;case 28:G.cherryPick($[ee],"",$[ee-2]);break;case 30:G.merge($[ee],"","","");break;case 31:G.merge($[ee-2],$[ee],"","");break;case 32:G.merge($[ee-2],"",$[ee],"");break;case 33:G.merge($[ee-2],"","",$[ee]);break;case 34:G.merge($[ee-4],$[ee],"",$[ee-2]);break;case 35:G.merge($[ee-4],"",$[ee],$[ee-2]);break;case 36:G.merge($[ee-4],"",$[ee-2],$[ee]);break;case 37:G.merge($[ee-4],$[ee-2],$[ee],"");break;case 38:G.merge($[ee-4],$[ee-2],"",$[ee]);break;case 39:G.merge($[ee-4],$[ee],$[ee-2],"");break;case 40:G.merge($[ee-6],$[ee-4],$[ee-2],$[ee]);break;case 41:G.merge($[ee-6],$[ee],$[ee-4],$[ee-2]);break;case 42:G.merge($[ee-6],$[ee-4],$[ee],$[ee-2]);break;case 43:G.merge($[ee-6],$[ee-2],$[ee-4],$[ee]);break;case 44:G.merge($[ee-6],$[ee],$[ee-2],$[ee-4]);break;case 45:G.merge($[ee-6],$[ee-2],$[ee],$[ee-4]);break;case 46:G.commit($[ee]);break;case 47:G.commit("","",G.commitType.NORMAL,$[ee]);break;case 48:G.commit("","",$[ee],"");break;case 49:G.commit("","",$[ee],$[ee-2]);break;case 50:G.commit("","",$[ee-2],$[ee]);break;case 51:G.commit("",$[ee],G.commitType.NORMAL,"");break;case 52:G.commit("",$[ee-2],G.commitType.NORMAL,$[ee]);break;case 53:G.commit("",$[ee],G.commitType.NORMAL,$[ee-2]);break;case 54:G.commit("",$[ee-2],$[ee],"");break;case 55:G.commit("",$[ee],$[ee-2],"");break;case 56:G.commit("",$[ee-4],$[ee-2],$[ee]);break;case 57:G.commit("",$[ee-4],$[ee],$[ee-2]);break;case 58:G.commit("",$[ee-2],$[ee-4],$[ee]);break;case 59:G.commit("",$[ee],$[ee-4],$[ee-2]);break;case 60:G.commit("",$[ee],$[ee-2],$[ee-4]);break;case 61:G.commit("",$[ee-2],$[ee],$[ee-4]);break;case 62:G.commit($[ee],"",G.commitType.NORMAL,"");break;case 63:G.commit($[ee],"",G.commitType.NORMAL,$[ee-2]);break;case 64:G.commit($[ee-2],"",G.commitType.NORMAL,$[ee]);break;case 65:G.commit($[ee-2],"",$[ee],"");break;case 66:G.commit($[ee],"",$[ee-2],"");break;case 67:G.commit($[ee],$[ee-2],G.commitType.NORMAL,"");break;case 68:G.commit($[ee-2],$[ee],G.commitType.NORMAL,"");break;case 69:G.commit($[ee-4],"",$[ee-2],$[ee]);break;case 70:G.commit($[ee-4],"",$[ee],$[ee-2]);break;case 71:G.commit($[ee-2],"",$[ee-4],$[ee]);break;case 72:G.commit($[ee],"",$[ee-4],$[ee-2]);break;case 73:G.commit($[ee],"",$[ee-2],$[ee-4]);break;case 74:G.commit($[ee-2],"",$[ee],$[ee-4]);break;case 75:G.commit($[ee-4],$[ee],$[ee-2],"");break;case 76:G.commit($[ee-4],$[ee-2],$[ee],"");break;case 77:G.commit($[ee-2],$[ee],$[ee-4],"");break;case 78:G.commit($[ee],$[ee-2],$[ee-4],"");break;case 79:G.commit($[ee],$[ee-4],$[ee-2],"");break;case 80:G.commit($[ee-2],$[ee-4],$[ee],"");break;case 81:G.commit($[ee-4],$[ee],G.commitType.NORMAL,$[ee-2]);break;case 82:G.commit($[ee-4],$[ee-2],G.commitType.NORMAL,$[ee]);break;case 83:G.commit($[ee-2],$[ee],G.commitType.NORMAL,$[ee-4]);break;case 84:G.commit($[ee],$[ee-2],G.commitType.NORMAL,$[ee-4]);break;case 85:G.commit($[ee],$[ee-4],G.commitType.NORMAL,$[ee-2]);break;case 86:G.commit($[ee-2],$[ee-4],G.commitType.NORMAL,$[ee]);break;case 87:G.commit($[ee-6],$[ee-4],$[ee-2],$[ee]);break;case 88:G.commit($[ee-6],$[ee-4],$[ee],$[ee-2]);break;case 89:G.commit($[ee-6],$[ee-2],$[ee-4],$[ee]);break;case 90:G.commit($[ee-6],$[ee],$[ee-4],$[ee-2]);break;case 91:G.commit($[ee-6],$[ee-2],$[ee],$[ee-4]);break;case 92:G.commit($[ee-6],$[ee],$[ee-2],$[ee-4]);break;case 93:G.commit($[ee-4],$[ee-6],$[ee-2],$[ee]);break;case 94:G.commit($[ee-4],$[ee-6],$[ee],$[ee-2]);break;case 95:G.commit($[ee-2],$[ee-6],$[ee-4],$[ee]);break;case 96:G.commit($[ee],$[ee-6],$[ee-4],$[ee-2]);break;case 97:G.commit($[ee-2],$[ee-6],$[ee],$[ee-4]);break;case 98:G.commit($[ee],$[ee-6],$[ee-2],$[ee-4]);break;case 99:G.commit($[ee],$[ee-4],$[ee-2],$[ee-6]);break;case 100:G.commit($[ee-2],$[ee-4],$[ee],$[ee-6]);break;case 101:G.commit($[ee],$[ee-2],$[ee-4],$[ee-6]);break;case 102:G.commit($[ee-2],$[ee],$[ee-4],$[ee-6]);break;case 103:G.commit($[ee-4],$[ee-2],$[ee],$[ee-6]);break;case 104:G.commit($[ee-4],$[ee],$[ee-2],$[ee-6]);break;case 105:G.commit($[ee-2],$[ee-4],$[ee-6],$[ee]);break;case 106:G.commit($[ee],$[ee-4],$[ee-6],$[ee-2]);break;case 107:G.commit($[ee-2],$[ee],$[ee-6],$[ee-4]);break;case 108:G.commit($[ee],$[ee-2],$[ee-6],$[ee-4]);break;case 109:G.commit($[ee-4],$[ee-2],$[ee-6],$[ee]);break;case 110:G.commit($[ee-4],$[ee],$[ee-6],$[ee-2]);break;case 111:this.$="";break;case 112:this.$=$[ee];break;case 113:this.$=G.commitType.NORMAL;break;case 114:this.$=G.commitType.REVERSE;break;case 115:this.$=G.commitType.HIGHLIGHT;break;case 118:G.parseDirective("%%{","open_directive");break;case 119:G.parseDirective($[ee],"type_directive");break;case 120:$[ee]=$[ee].trim().replace(/'/g,'"'),G.parseDirective($[ee],"arg_directive");break;case 121:G.parseDirective("}%%","close_directive","gitGraph");break}},table:[{3:1,4:2,5:3,6:i,8:o,14:l,46:8,50:f,55:b},{1:[3]},{3:10,4:2,5:3,6:i,8:o,14:l,46:8,50:f,55:b},{3:11,4:2,5:3,6:i,8:o,14:l,46:8,50:f,55:b},{7:12,8:d,9:[1,13],10:[1,14],11:15,14:w},r(y,[2,124]),r(y,[2,125]),r(y,[2,126]),{47:17,51:[1,18]},{51:[2,118]},{1:[2,1]},{1:[2,2]},{8:[1,19]},{7:20,8:d,11:15,14:w},{9:[1,21]},r(k,[2,10],{12:22,13:[1,23]}),r(E,[2,9]),{9:[1,25],48:24,53:T},r([9,53],[2,119]),{1:[2,3]},{8:[1,27]},{7:28,8:d,11:15,14:w},{8:[2,7],14:[1,31],15:29,16:30,17:32,18:33,19:34,20:[1,35],22:[1,36],24:[1,37],25:[1,38],26:39,27:[1,40],29:[1,44],32:[1,43],37:[1,42],40:[1,41]},r(E,[2,8]),r(C,[2,116]),{49:45,52:[1,46]},r(C,[2,121]),{1:[2,4]},{8:[1,47]},r(k,[2,11]),{4:48,8:o,14:l,55:b},r(k,[2,13]),r(S,[2,14]),r(S,[2,15]),r(S,[2,16]),{21:[1,49]},{23:[1,50]},r(S,[2,19]),r(S,[2,20]),r(S,[2,21]),{28:51,34:L,54:O},r(S,[2,111],{41:54,33:[1,57],34:[1,59],35:[1,55],38:[1,56],42:[1,58]}),{28:60,34:L,54:O},{33:[1,61],35:[1,62]},{28:63,34:L,54:O},{48:64,53:T},{53:[2,120]},{1:[2,5]},r(k,[2,12]),r(S,[2,17]),r(S,[2,18]),r(S,[2,22]),r(B,[2,122]),r(B,[2,123]),r(S,[2,46]),{34:[1,65]},{39:66,43:N,44:F,45:R},{34:[1,70]},{34:[1,71]},r(S,[2,112]),r(S,[2,30],{33:[1,72],35:[1,74],38:[1,73]}),{34:[1,75]},{34:[1,76],36:[1,77]},r(S,[2,23],{30:[1,78]}),r(C,[2,117]),r(S,[2,47],{33:[1,80],38:[1,79],42:[1,81]}),r(S,[2,48],{33:[1,83],35:[1,82],42:[1,84]}),r(q,[2,113]),r(q,[2,114]),r(q,[2,115]),r(S,[2,51],{35:[1,85],38:[1,86],42:[1,87]}),r(S,[2,62],{33:[1,90],35:[1,88],38:[1,89]}),{34:[1,91]},{39:92,43:N,44:F,45:R},{34:[1,93]},r(S,[2,25],{35:[1,94]}),{33:[1,95]},{33:[1,96]},{31:[1,97]},{39:98,43:N,44:F,45:R},{34:[1,99]},{34:[1,100]},{34:[1,101]},{34:[1,102]},{34:[1,103]},{34:[1,104]},{39:105,43:N,44:F,45:R},{34:[1,106]},{34:[1,107]},{39:108,43:N,44:F,45:R},{34:[1,109]},r(S,[2,31],{35:[1,111],38:[1,110]}),r(S,[2,32],{33:[1,113],35:[1,112]}),r(S,[2,33],{33:[1,114],38:[1,115]}),{34:[1,116],36:[1,117]},{34:[1,118]},{34:[1,119]},r(S,[2,24]),r(S,[2,49],{33:[1,120],42:[1,121]}),r(S,[2,53],{38:[1,122],42:[1,123]}),r(S,[2,63],{33:[1,125],38:[1,124]}),r(S,[2,50],{33:[1,126],42:[1,127]}),r(S,[2,55],{35:[1,128],42:[1,129]}),r(S,[2,66],{33:[1,131],35:[1,130]}),r(S,[2,52],{38:[1,132],42:[1,133]}),r(S,[2,54],{35:[1,134],42:[1,135]}),r(S,[2,67],{35:[1,137],38:[1,136]}),r(S,[2,64],{33:[1,139],38:[1,138]}),r(S,[2,65],{33:[1,141],35:[1,140]}),r(S,[2,68],{35:[1,143],38:[1,142]}),{39:144,43:N,44:F,45:R},{34:[1,145]},{34:[1,146]},{34:[1,147]},{34:[1,148]},{39:149,43:N,44:F,45:R},r(S,[2,26]),r(S,[2,27]),r(S,[2,28]),r(S,[2,29]),{34:[1,150]},{34:[1,151]},{39:152,43:N,44:F,45:R},{34:[1,153]},{39:154,43:N,44:F,45:R},{34:[1,155]},{34:[1,156]},{34:[1,157]},{34:[1,158]},{34:[1,159]},{34:[1,160]},{34:[1,161]},{39:162,43:N,44:F,45:R},{34:[1,163]},{34:[1,164]},{34:[1,165]},{39:166,43:N,44:F,45:R},{34:[1,167]},{39:168,43:N,44:F,45:R},{34:[1,169]},{34:[1,170]},{34:[1,171]},{39:172,43:N,44:F,45:R},{34:[1,173]},r(S,[2,37],{35:[1,174]}),r(S,[2,38],{38:[1,175]}),r(S,[2,36],{33:[1,176]}),r(S,[2,39],{35:[1,177]}),r(S,[2,34],{38:[1,178]}),r(S,[2,35],{33:[1,179]}),r(S,[2,60],{42:[1,180]}),r(S,[2,73],{33:[1,181]}),r(S,[2,61],{42:[1,182]}),r(S,[2,84],{38:[1,183]}),r(S,[2,74],{33:[1,184]}),r(S,[2,83],{38:[1,185]}),r(S,[2,59],{42:[1,186]}),r(S,[2,72],{33:[1,187]}),r(S,[2,58],{42:[1,188]}),r(S,[2,78],{35:[1,189]}),r(S,[2,71],{33:[1,190]}),r(S,[2,77],{35:[1,191]}),r(S,[2,57],{42:[1,192]}),r(S,[2,85],{38:[1,193]}),r(S,[2,56],{42:[1,194]}),r(S,[2,79],{35:[1,195]}),r(S,[2,80],{35:[1,196]}),r(S,[2,86],{38:[1,197]}),r(S,[2,70],{33:[1,198]}),r(S,[2,81],{38:[1,199]}),r(S,[2,69],{33:[1,200]}),r(S,[2,75],{35:[1,201]}),r(S,[2,76],{35:[1,202]}),r(S,[2,82],{38:[1,203]}),{34:[1,204]},{39:205,43:N,44:F,45:R},{34:[1,206]},{34:[1,207]},{39:208,43:N,44:F,45:R},{34:[1,209]},{34:[1,210]},{34:[1,211]},{34:[1,212]},{39:213,43:N,44:F,45:R},{34:[1,214]},{39:215,43:N,44:F,45:R},{34:[1,216]},{34:[1,217]},{34:[1,218]},{34:[1,219]},{34:[1,220]},{34:[1,221]},{34:[1,222]},{39:223,43:N,44:F,45:R},{34:[1,224]},{34:[1,225]},{34:[1,226]},{39:227,43:N,44:F,45:R},{34:[1,228]},{39:229,43:N,44:F,45:R},{34:[1,230]},{34:[1,231]},{34:[1,232]},{39:233,43:N,44:F,45:R},r(S,[2,40]),r(S,[2,42]),r(S,[2,41]),r(S,[2,43]),r(S,[2,45]),r(S,[2,44]),r(S,[2,101]),r(S,[2,102]),r(S,[2,99]),r(S,[2,100]),r(S,[2,104]),r(S,[2,103]),r(S,[2,108]),r(S,[2,107]),r(S,[2,106]),r(S,[2,105]),r(S,[2,110]),r(S,[2,109]),r(S,[2,98]),r(S,[2,97]),r(S,[2,96]),r(S,[2,95]),r(S,[2,93]),r(S,[2,94]),r(S,[2,92]),r(S,[2,91]),r(S,[2,90]),r(S,[2,89]),r(S,[2,87]),r(S,[2,88])],defaultActions:{9:[2,118],10:[2,1],11:[2,2],19:[2,3],27:[2,4],46:[2,120],47:[2,5]},parseError:function(z,W){if(W.recoverable)this.trace(z);else{var Z=new Error(z);throw Z.hash=W,Z}},parse:function(z){var W=this,Z=[0],G=[],ae=[null],$=[],ge=this.table,ee="",de=0,re=0,ke=2,Ce=1,_e=$.slice.call(arguments,1),Te=Object.create(this.lexer),Be={yy:{}};for(var Ge in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ge)&&(Be.yy[Ge]=this.yy[Ge]);Te.setInput(z,Be.yy),Be.yy.lexer=Te,Be.yy.parser=this,typeof Te.yylloc>"u"&&(Te.yylloc={});var Xe=Te.yylloc;$.push(Xe);var Ee=Te.options&&Te.options.ranges;typeof Be.yy.parseError=="function"?this.parseError=Be.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ze(){var Zt;return Zt=G.pop()||Te.lex()||Ce,typeof Zt!="number"&&(Zt instanceof Array&&(G=Zt,Zt=G.pop()),Zt=W.symbols_[Zt]||Zt),Zt}for(var Ie,Oe,Le,$e,xe={},Ae,je,me,vt;;){if(Oe=Z[Z.length-1],this.defaultActions[Oe]?Le=this.defaultActions[Oe]:((Ie===null||typeof Ie>"u")&&(Ie=Ze()),Le=ge[Oe]&&ge[Oe][Ie]),typeof Le>"u"||!Le.length||!Le[0]){var ve="";vt=[];for(Ae in ge[Oe])this.terminals_[Ae]&&Ae>ke&&vt.push("'"+this.terminals_[Ae]+"'");Te.showPosition?ve="Parse error on line "+(de+1)+`:
-`+Te.showPosition()+`
-Expecting `+vt.join(", ")+", got '"+(this.terminals_[Ie]||Ie)+"'":ve="Parse error on line "+(de+1)+": Unexpected "+(Ie==Ce?"end of input":"'"+(this.terminals_[Ie]||Ie)+"'"),this.parseError(ve,{text:Te.match,token:this.terminals_[Ie]||Ie,line:Te.yylineno,loc:Xe,expected:vt})}if(Le[0]instanceof Array&&Le.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Oe+", token: "+Ie);switch(Le[0]){case 1:Z.push(Ie),ae.push(Te.yytext),$.push(Te.yylloc),Z.push(Le[1]),Ie=null,re=Te.yyleng,ee=Te.yytext,de=Te.yylineno,Xe=Te.yylloc;break;case 2:if(je=this.productions_[Le[1]][1],xe.$=ae[ae.length-je],xe._$={first_line:$[$.length-(je||1)].first_line,last_line:$[$.length-1].last_line,first_column:$[$.length-(je||1)].first_column,last_column:$[$.length-1].last_column},Ee&&(xe._$.range=[$[$.length-(je||1)].range[0],$[$.length-1].range[1]]),$e=this.performAction.apply(xe,[ee,re,de,Be.yy,Le[1],ae,$].concat(_e)),typeof $e<"u")return $e;je&&(Z=Z.slice(0,-1*je*2),ae=ae.slice(0,-1*je),$=$.slice(0,-1*je)),Z.push(this.productions_[Le[1]][0]),ae.push(xe.$),$.push(xe._$),me=ge[Z[Z.length-2]][Z[Z.length-1]],Z.push(me);break;case 3:return!0}}return!0}},te=function(){var Y={EOF:1,parseError:function(W,Z){if(this.yy.parser)this.yy.parser.parseError(W,Z);else throw new Error(W)},setInput:function(z,W){return this.yy=W||this.yy||{},this._input=z,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var z=this._input[0];this.yytext+=z,this.yyleng++,this.offset++,this.match+=z,this.matched+=z;var W=z.match(/(?:\r\n?|\n).*/g);return W?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),z},unput:function(z){var W=z.length,Z=z.split(/(?:\r\n?|\n)/g);this._input=z+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-W),this.offset-=W;var G=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 ae=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===G.length?this.yylloc.first_column:0)+G[G.length-Z.length].length-Z[0].length:this.yylloc.first_column-W},this.options.ranges&&(this.yylloc.range=[ae[0],ae[0]+this.yyleng-W]),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(z){this.unput(this.match.slice(z))},pastInput:function(){var z=this.matched.substr(0,this.matched.length-this.match.length);return(z.length>20?"...":"")+z.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var z=this.match;return z.length<20&&(z+=this._input.substr(0,20-z.length)),(z.substr(0,20)+(z.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var z=this.pastInput(),W=new Array(z.length+1).join("-");return z+this.upcomingInput()+`
-`+W+"^"},test_match:function(z,W){var Z,G,ae;if(this.options.backtrack_lexer&&(ae={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&&(ae.yylloc.range=this.yylloc.range.slice(0))),G=z[0].match(/(?:\r\n?|\n).*/g),G&&(this.yylineno+=G.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:G?G[G.length-1].length-G[G.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+z[0].length},this.yytext+=z[0],this.match+=z[0],this.matches=z,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(z[0].length),this.matched+=z[0],Z=this.performAction.call(this,this.yy,this,W,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Z)return Z;if(this._backtrack){for(var $ in ae)this[$]=ae[$];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var z,W,Z,G;this._more||(this.yytext="",this.match="");for(var ae=this._currentRules(),$=0;$W[0].length)){if(W=Z,G=$,this.options.backtrack_lexer){if(z=this.test_match(Z,ae[$]),z!==!1)return z;if(this._backtrack){W=!1;continue}else return!1}else if(!this.options.flex)break}return W?(z=this.test_match(W,ae[G]),z!==!1?z:!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 W=this.next();return W||this.lex()},begin:function(W){this.conditionStack.push(W)},popState:function(){var W=this.conditionStack.length-1;return W>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(W){return W=this.conditionStack.length-1-Math.abs(W||0),W>=0?this.conditionStack[W]:"INITIAL"},pushState:function(W){this.begin(W)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(W,Z,G,ae){switch(G){case 0:return this.begin("open_directive"),50;case 1:return this.begin("type_directive"),51;case 2:return this.popState(),this.begin("arg_directive"),9;case 3:return this.popState(),this.popState(),53;case 4:return 52;case 5:return this.begin("acc_title"),20;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),22;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:return 14;case 13:break;case 14:break;case 15:return 6;case 16:return 40;case 17:return 33;case 18:return 38;case 19:return 42;case 20:return 43;case 21:return 44;case 22:return 45;case 23:return 35;case 24:return 29;case 25:return 30;case 26:return 37;case 27:return 32;case 28:return 27;case 29:return 10;case 30:return 10;case 31:return 9;case 32:return"CARET";case 33:this.begin("options");break;case 34:this.popState();break;case 35:return 13;case 36:return 36;case 37:this.begin("string");break;case 38:this.popState();break;case 39:return 34;case 40:return 31;case 41:return 54;case 42:return 8}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:gitGraph\b)/i,/^(?:commit(?=\s|$))/i,/^(?:id:)/i,/^(?:type:)/i,/^(?:msg:)/i,/^(?:NORMAL\b)/i,/^(?:REVERSE\b)/i,/^(?:HIGHLIGHT\b)/i,/^(?:tag:)/i,/^(?:branch(?=\s|$))/i,/^(?:order:)/i,/^(?:merge(?=\s|$))/i,/^(?:cherry-pick(?=\s|$))/i,/^(?:checkout(?=\s|$))/i,/^(?:LR\b)/i,/^(?:BT\b)/i,/^(?::)/i,/^(?:\^)/i,/^(?:options\r?\n)/i,/^(?:[ \r\n\t]+end\b)/i,/^(?:[\s\S]+(?=[ \r\n\t]+end))/i,/^(?:["]["])/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[0-9]+(?=\s|$))/i,/^(?:\w([-\./\w]*[-\w])?)/i,/^(?:$)/i,/^(?:\s+)/i],conditions:{acc_descr_multiline:{rules:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},options:{rules:[34,35],inclusive:!1},string:{rules:[38,39],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,36,37,40,41,42,43],inclusive:!0}}};return Y}();X.lexer=te;function H(){this.yy={}}return H.prototype=X,X.Parser=H,new H}();Dae.parser=Dae;const $jt=Dae,Hjt=r=>r.match(/^\s*gitGraph/)!==null;let QG=ht().gitGraph.mainBranchName,zjt=ht().gitGraph.mainBranchOrder,lf={},Zd=null,dI={};dI[QG]={name:QG,order:zjt};let jh={};jh[QG]=Zd;let Wf=QG,mSe="LR",t7=0;function Lae(){return UCe({length:7})}const Gjt=function(r,i,o){Bu.parseDirective(this,r,i,o)};function Vjt(r,i){const o=Object.create(null);return r.reduce((l,f)=>{const b=i(f);return o[b]||(o[b]=!0,l.push(f)),l},[])}const Ujt=function(r){mSe=r};let ySe={};const qjt=function(r){Se.debug("options str",r),r=r&&r.trim(),r=r||"{}";try{ySe=JSON.parse(r)}catch(i){Se.error("error while parsing gitGraph options",i.message)}},Yjt=function(){return ySe},Wjt=function(r,i,o,l){Se.debug("Entering commit:",r,i,o,l),i=Cs.sanitizeText(i,ht()),r=Cs.sanitizeText(r,ht()),l=Cs.sanitizeText(l,ht());const f={id:i||t7+"-"+Lae(),message:r,seq:t7++,type:o||gI.NORMAL,tag:l||"",parents:Zd==null?[]:[Zd.id],branch:Wf};Zd=f,lf[f.id]=f,jh[Wf]=f.id,Se.debug("in pushCommit "+f.id)},Kjt=function(r,i){if(r=Cs.sanitizeText(r,ht()),jh[r]===void 0)jh[r]=Zd!=null?Zd.id:null,dI[r]={name:r,order:i?parseInt(i,10):null},kSe(r),Se.debug("in createBranch");else{let o=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 '+r+'")');throw o.hash={text:"branch "+r,token:"branch "+r,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"checkout '+r+'"']},o}},Xjt=function(r,i,o,l){r=Cs.sanitizeText(r,ht()),i=Cs.sanitizeText(i,ht());const f=lf[jh[Wf]],b=lf[jh[r]];if(Wf===r){let w=new Error('Incorrect usage of "merge". Cannot merge a branch to itself');throw w.hash={text:"merge "+r,token:"merge "+r,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},w}else if(f===void 0||!f){let w=new Error('Incorrect usage of "merge". Current branch ('+Wf+")has no commits");throw w.hash={text:"merge "+r,token:"merge "+r,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["commit"]},w}else if(jh[r]===void 0){let w=new Error('Incorrect usage of "merge". Branch to be merged ('+r+") does not exist");throw w.hash={text:"merge "+r,token:"merge "+r,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch "+r]},w}else if(b===void 0||!b){let w=new Error('Incorrect usage of "merge". Branch to be merged ('+r+") has no commits");throw w.hash={text:"merge "+r,token:"merge "+r,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"commit"']},w}else if(f===b){let w=new Error('Incorrect usage of "merge". Both branches have same head');throw w.hash={text:"merge "+r,token:"merge "+r,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["branch abc"]},w}else if(i&&lf[i]!==void 0){let w=new Error('Incorrect usage of "merge". Commit with id:'+i+" already exists, use different custom Id");throw w.hash={text:"merge "+r+i+o+l,token:"merge "+r+i+o+l,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["merge "+r+" "+i+"_UNIQUE "+o+" "+l]},w}const d={id:i||t7+"-"+Lae(),message:"merged branch "+r+" into "+Wf,seq:t7++,parents:[Zd==null?null:Zd.id,jh[r]],branch:Wf,type:gI.MERGE,customType:o,customId:!!i,tag:l||""};Zd=d,lf[d.id]=d,jh[Wf]=d.id,Se.debug(jh),Se.debug("in mergeBranch")},Qjt=function(r,i,o){if(Se.debug("Entering cherryPick:",r,i,o),r=Cs.sanitizeText(r,ht()),i=Cs.sanitizeText(i,ht()),o=Cs.sanitizeText(o,ht()),!r||lf[r]===void 0){let b=new Error('Incorrect usage of "cherryPick". Source commit id should exist and provided');throw b.hash={text:"cherryPick "+r+" "+i,token:"cherryPick "+r+" "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},b}let l=lf[r],f=l.branch;if(l.type===gI.MERGE){let b=new Error('Incorrect usage of "cherryPick". Source commit should not be a merge commit');throw b.hash={text:"cherryPick "+r+" "+i,token:"cherryPick "+r+" "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},b}if(!i||lf[i]===void 0){if(f===Wf){let w=new Error('Incorrect usage of "cherryPick". Source commit is already on current branch');throw w.hash={text:"cherryPick "+r+" "+i,token:"cherryPick "+r+" "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},w}const b=lf[jh[Wf]];if(b===void 0||!b){let w=new Error('Incorrect usage of "cherry-pick". Current branch ('+Wf+")has no commits");throw w.hash={text:"cherryPick "+r+" "+i,token:"cherryPick "+r+" "+i,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["cherry-pick abc"]},w}const d={id:t7+"-"+Lae(),message:"cherry-picked "+l+" into "+Wf,seq:t7++,parents:[Zd==null?null:Zd.id,l.id],branch:Wf,type:gI.CHERRY_PICK,tag:o!=null?o:"cherry-pick:"+l.id};Zd=d,lf[d.id]=d,jh[Wf]=d.id,Se.debug(jh),Se.debug("in cherryPick")}},kSe=function(r){if(r=Cs.sanitizeText(r,ht()),jh[r]===void 0){let i=new Error('Trying to checkout branch which is not yet created. (Help try using "branch '+r+'")');throw i.hash={text:"checkout "+r,token:"checkout "+r,line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:['"branch '+r+'"']},i}else{Wf=r;const i=jh[Wf];Zd=lf[i]}};function xSe(r,i,o){const l=r.indexOf(i);l===-1?r.push(o):r.splice(l,1,o)}function ESe(r){const i=r.reduce((f,b)=>f.seq>b.seq?f:b,r[0]);let o="";r.forEach(function(f){f===i?o+=" *":o+=" |"});const l=[o,i.id,i.seq];for(let f in jh)jh[f]===i.id&&l.push(f);if(Se.debug(l.join(" ")),i.parents&&i.parents.length==2){const f=lf[i.parents[0]];xSe(r,i,f),r.push(lf[i.parents[1]])}else{if(i.parents.length==0)return;{const f=lf[i.parents];xSe(r,i,f)}}r=Vjt(r,f=>f.id),ESe(r)}const Zjt=function(){Se.debug(lf);const r=_Se()[0];ESe([r])},Jjt=function(){lf={},Zd=null;let r=ht().gitGraph.mainBranchName,i=ht().gitGraph.mainBranchOrder;jh={},jh[r]=null,dI={},dI[r]={name:r,order:i},Wf=r,t7=0,W0()},e$t=function(){return Object.values(dI).map((i,o)=>i.order!==null?i:{...i,order:parseFloat(`0.${o}`,10)}).sort((i,o)=>i.order-o.order).map(({name:i})=>({name:i}))},t$t=function(){return jh},n$t=function(){return lf},_Se=function(){const r=Object.keys(lf).map(function(i){return lf[i]});return r.forEach(function(i){Se.debug(i.id)}),r.sort((i,o)=>i.seq-o.seq),r},r$t=function(){return Wf},i$t=function(){return mSe},s$t=function(){return Zd},gI={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},a$t={parseDirective:Gjt,getConfig:()=>ht().gitGraph,setDirection:Ujt,setOptions:qjt,getOptions:Yjt,commit:Wjt,branch:Kjt,merge:Xjt,cherryPick:Qjt,checkout:kSe,prettyPrint:Zjt,clear:Jjt,getBranchesAsObjArray:e$t,getBranches:t$t,getCommits:n$t,getCommitsArray:_Se,getCurrentBranch:r$t,getDirection:i$t,getHead:s$t,setAccTitle:K0,getAccTitle:hp,getAccDescription:dp,setAccDescription:fp,setDiagramTitle:Ov,getDiagramTitle:Nv,commitType:gI};let pI={};const gp={NORMAL:0,REVERSE:1,HIGHLIGHT:2,MERGE:3,CHERRY_PICK:4},n7=8;let X0={},ZG={},JG=[],eV=0;const o$t=()=>{X0={},ZG={},pI={},eV=0,JG=[]},c$t=r=>{const i=document.createElementNS("http://www.w3.org/2000/svg","text");let o=[];typeof r=="string"?o=r.split(/\\n|\n|
/gi):Array.isArray(r)?o=r:o=[];for(const l of o){const f=document.createElementNS("http://www.w3.org/2000/svg","tspan");f.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),f.setAttribute("dy","1em"),f.setAttribute("x","0"),f.setAttribute("class","row"),f.textContent=l.trim(),i.appendChild(f)}return i},TSe=(r,i,o)=>{const l=fI().gitGraph,f=r.append("g").attr("class","commit-bullets"),b=r.append("g").attr("class","commit-labels");let d=0;Object.keys(i).sort((k,E)=>i[k].seq-i[E].seq).forEach(k=>{const E=i[k],T=X0[E.branch].pos,C=d+10;if(o){let S,L=E.customType!==void 0&&E.customType!==""?E.customType:E.type;switch(L){case gp.NORMAL:S="commit-normal";break;case gp.REVERSE:S="commit-reverse";break;case gp.HIGHLIGHT:S="commit-highlight";break;case gp.MERGE:S="commit-merge";break;case gp.CHERRY_PICK:S="commit-cherry-pick";break;default:S="commit-normal"}if(L===gp.HIGHLIGHT){const O=f.append("rect");O.attr("x",C-10),O.attr("y",T-10),O.attr("height",20),O.attr("width",20),O.attr("class",`commit ${E.id} commit-highlight${X0[E.branch].index%n7} ${S}-outer`),f.append("rect").attr("x",C-6).attr("y",T-6).attr("height",12).attr("width",12).attr("class",`commit ${E.id} commit${X0[E.branch].index%n7} ${S}-inner`)}else if(L===gp.CHERRY_PICK)f.append("circle").attr("cx",C).attr("cy",T).attr("r",10).attr("class",`commit ${E.id} ${S}`),f.append("circle").attr("cx",C-3).attr("cy",T+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${E.id} ${S}`),f.append("circle").attr("cx",C+3).attr("cy",T+2).attr("r",2.75).attr("fill","#fff").attr("class",`commit ${E.id} ${S}`),f.append("line").attr("x1",C+3).attr("y1",T+1).attr("x2",C).attr("y2",T-5).attr("stroke","#fff").attr("class",`commit ${E.id} ${S}`),f.append("line").attr("x1",C-3).attr("y1",T+1).attr("x2",C).attr("y2",T-5).attr("stroke","#fff").attr("class",`commit ${E.id} ${S}`);else{const O=f.append("circle");if(O.attr("cx",C),O.attr("cy",T),O.attr("r",E.type===gp.MERGE?9:10),O.attr("class",`commit ${E.id} commit${X0[E.branch].index%n7}`),L===gp.MERGE){const B=f.append("circle");B.attr("cx",C),B.attr("cy",T),B.attr("r",6),B.attr("class",`commit ${S} ${E.id} commit${X0[E.branch].index%n7}`)}L===gp.REVERSE&&f.append("path").attr("d",`M ${C-5},${T-5}L${C+5},${T+5}M${C-5},${T+5}L${C+5},${T-5}`).attr("class",`commit ${S} ${E.id} commit${X0[E.branch].index%n7}`)}}if(ZG[E.id]={x:d+10,y:T},o){if(E.type!==gp.CHERRY_PICK&&(E.customId&&E.type===gp.MERGE||E.type!==gp.MERGE)&&l.showCommitLabel){const O=b.append("g"),B=O.insert("rect").attr("class","commit-label-bkg"),N=O.append("text").attr("x",d).attr("y",T+25).attr("class","commit-label").text(E.id);let F=N.node().getBBox();if(B.attr("x",d+10-F.width/2-2).attr("y",T+13.5).attr("width",F.width+2*2).attr("height",F.height+2*2),N.attr("x",d+10-F.width/2),l.rotateCommitLabel){let R=-7.5-(F.width+10)/25*9.5,q=10+F.width/25*8.5;O.attr("transform","translate("+R+", "+q+") rotate("+-45+", "+d+", "+T+")")}}if(E.tag){const O=b.insert("polygon"),B=b.append("circle"),N=b.append("text").attr("y",T-16).attr("class","tag-label").text(E.tag);let F=N.node().getBBox();N.attr("x",d+10-F.width/2);const R=F.height/2,q=T-19.2;O.attr("class","tag-label-bkg").attr("points",`
- ${d-F.width/2-4/2},${q+2}
- ${d-F.width/2-4/2},${q-2}
- ${d+10-F.width/2-4},${q-R-2}
- ${d+10+F.width/2+4},${q-R-2}
- ${d+10+F.width/2+4},${q+R+2}
- ${d+10-F.width/2-4},${q+R+2}`),B.attr("cx",d-F.width/2+4/2).attr("cy",q).attr("r",1.5).attr("class","tag-hole")}}d+=50,d>eV&&(eV=d)})},u$t=(r,i,o)=>Object.keys(o).filter(b=>o[b].branch===i.branch&&o[b].seq>r.seq&&o[b].seq0,Iae=(r,i,o=0)=>{const l=r+Math.abs(r-i)/2;if(o>5)return l;if(JG.every(d=>Math.abs(d-l)>=10))return JG.push(l),l;const b=Math.abs(r-i);return Iae(r,i-b/5,o+1)},l$t=(r,i,o,l)=>{const f=ZG[i.id],b=ZG[o.id],d=u$t(i,o,l);let w="",y="",k=0,E=0,T=X0[o.branch].index,C;if(d){w="A 10 10, 0, 0, 0,",y="A 10 10, 0, 0, 1,",k=10,E=10,T=X0[o.branch].index;const S=f.yb.y&&(w="A 20 20, 0, 0, 0,",k=20,E=20,T=X0[i.branch].index,C=`M ${f.x} ${f.y} L ${b.x-k} ${f.y} ${w} ${b.x} ${f.y-E} L ${b.x} ${b.y}`),f.y===b.y&&(T=X0[i.branch].index,C=`M ${f.x} ${f.y} L ${f.x} ${b.y-k} ${w} ${f.x+E} ${b.y} L ${b.x} ${b.y}`);r.append("path").attr("d",C).attr("class","arrow arrow"+T%n7)},h$t=(r,i)=>{const o=r.append("g").attr("class","commit-arrows");Object.keys(i).forEach(l=>{const f=i[l];f.parents&&f.parents.length>0&&f.parents.forEach(b=>{l$t(o,i[b],f,i)})})},f$t=(r,i)=>{const o=fI().gitGraph,l=r.append("g");i.forEach((f,b)=>{const d=b%n7,w=X0[f.name].pos,y=l.append("line");y.attr("x1",0),y.attr("y1",w),y.attr("x2",eV),y.attr("y2",w),y.attr("class","branch branch"+d),JG.push(w);let k=f.name;const E=c$t(k),T=l.insert("rect"),S=l.insert("g").attr("class","branchLabel").insert("g").attr("class","label branch-label"+d);S.node().appendChild(E);let L=E.getBBox();T.attr("class","branchLabelBkg label"+d).attr("rx",4).attr("ry",4).attr("x",-L.width-4-(o.rotateCommitLabel===!0?30:0)).attr("y",-L.height/2+8).attr("width",L.width+18).attr("height",L.height+4),S.attr("transform","translate("+(-L.width-14-(o.rotateCommitLabel===!0?30:0))+", "+(w-L.height/2-1)+")"),T.attr("transform","translate("+-19+", "+(w-L.height/2)+")")})},d$t={draw:function(r,i,o,l){var k;o$t();const f=fI(),b=f.gitGraph;Se.debug("in gitgraph renderer",r+`
-`,"id:",i,o),pI=l.db.getCommits();const d=l.db.getBranchesAsObjArray();let w=0;d.forEach((E,T)=>{X0[E.name]={pos:w,index:T},w+=50+(b.rotateCommitLabel?40:0)});const y=Cn(`[id="${i}"]`);TSe(y,pI,!1),b.showBranches&&f$t(y,d),h$t(y,pI),TSe(y,pI,!0),Fs.insertTitle(y,"gitTitleText",b.titleTopMargin,l.db.getDiagramTitle()),vSe(void 0,y,b.diagramPadding,(k=b.useMaxWidth)!=null?k:f.useMaxWidth)}},g$t=r=>`
- .commit-id,
- .commit-msg,
- .branch-label {
- fill: lightgrey;
- color: lightgrey;
- font-family: 'trebuchet ms', verdana, arial, sans-serif;
- font-family: var(--mermaid-font-family);
- }
- ${[0,1,2,3,4,5,6,7].map(i=>`
- .branch-label${i} { fill: ${r["gitBranchLabel"+i]}; }
- .commit${i} { stroke: ${r["git"+i]}; fill: ${r["git"+i]}; }
- .commit-highlight${i} { stroke: ${r["gitInv"+i]}; fill: ${r["gitInv"+i]}; }
- .label${i} { fill: ${r["git"+i]}; }
- .arrow${i} { stroke: ${r["git"+i]}; }
- `).join(`
-`)}
-
- .branch {
- stroke-width: 1;
- stroke: ${r.lineColor};
- stroke-dasharray: 2;
- }
- .commit-label { font-size: ${r.commitLabelFontSize}; fill: ${r.commitLabelColor};}
- .commit-label-bkg { font-size: ${r.commitLabelFontSize}; fill: ${r.commitLabelBackground}; opacity: 0.5; }
- .tag-label { font-size: ${r.tagLabelFontSize}; fill: ${r.tagLabelColor};}
- .tag-label-bkg { fill: ${r.tagLabelBackground}; stroke: ${r.tagLabelBorder}; }
- .tag-hole { fill: ${r.textColor}; }
-
- .commit-merge {
- stroke: ${r.primaryColor};
- fill: ${r.primaryColor};
- }
- .commit-reverse {
- stroke: ${r.primaryColor};
- fill: ${r.primaryColor};
- stroke-width: 3;
- }
- .commit-highlight-outer {
- }
- .commit-highlight-inner {
- stroke: ${r.primaryColor};
- fill: ${r.primaryColor};
- }
-
- .arrow { stroke-width: 8; stroke-linecap: round; fill: none}
- .gitTitleText {
- text-anchor: middle;
- font-size: 18px;
- fill: ${r.textColor};
- }
- }
-`;var tV=function(){var r=function(Kn,Jt,en,In){for(en=en||{},In=Kn.length;In--;en[Kn[In]]=Jt);return en},i=[1,6],o=[1,7],l=[1,8],f=[1,9],b=[1,16],d=[1,11],w=[1,12],y=[1,13],k=[1,14],E=[1,15],T=[1,27],C=[1,33],S=[1,34],L=[1,35],O=[1,36],B=[1,37],N=[1,72],F=[1,73],R=[1,74],q=[1,75],X=[1,76],te=[1,77],H=[1,78],Y=[1,38],z=[1,39],W=[1,40],Z=[1,41],G=[1,42],ae=[1,43],$=[1,44],ge=[1,45],ee=[1,46],de=[1,47],re=[1,48],ke=[1,49],Ce=[1,50],_e=[1,51],Te=[1,52],Be=[1,53],Ge=[1,54],Xe=[1,55],Ee=[1,56],Ze=[1,57],Ie=[1,59],Oe=[1,60],Le=[1,61],$e=[1,62],xe=[1,63],Ae=[1,64],je=[1,65],me=[1,66],vt=[1,67],ve=[1,68],Zt=[1,69],nt=[24,52],xn=[24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],cn=[15,24,44,46,47,48,49,50,51,52,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],jt=[1,94],ot=[1,95],be=[1,96],We=[1,97],ct=[15,24,52],Yt=[7,8,9,10,18,22,25,26,27,28],Ut=[15,24,43,52],Wn=[15,24,43,52,86,87,89,90],Gt=[15,43],Rn=[44,46,47,48,49,50,51,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84],si={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,direction:5,directive:6,direction_tb:7,direction_bt:8,direction_rl:9,direction_lr:10,graphConfig:11,openDirective:12,typeDirective:13,closeDirective:14,NEWLINE:15,":":16,argDirective:17,open_directive:18,type_directive:19,arg_directive:20,close_directive:21,C4_CONTEXT:22,statements:23,EOF:24,C4_CONTAINER:25,C4_COMPONENT:26,C4_DYNAMIC:27,C4_DEPLOYMENT:28,otherStatements:29,diagramStatements:30,otherStatement:31,title:32,accDescription:33,acc_title:34,acc_title_value:35,acc_descr:36,acc_descr_value:37,acc_descr_multiline_value:38,boundaryStatement:39,boundaryStartStatement:40,boundaryStopStatement:41,boundaryStart:42,LBRACE:43,ENTERPRISE_BOUNDARY:44,attributes:45,SYSTEM_BOUNDARY:46,BOUNDARY:47,CONTAINER_BOUNDARY:48,NODE:49,NODE_L:50,NODE_R:51,RBRACE:52,diagramStatement:53,PERSON:54,PERSON_EXT:55,SYSTEM:56,SYSTEM_DB:57,SYSTEM_QUEUE:58,SYSTEM_EXT:59,SYSTEM_EXT_DB:60,SYSTEM_EXT_QUEUE:61,CONTAINER:62,CONTAINER_DB:63,CONTAINER_QUEUE:64,CONTAINER_EXT:65,CONTAINER_EXT_DB:66,CONTAINER_EXT_QUEUE:67,COMPONENT:68,COMPONENT_DB:69,COMPONENT_QUEUE:70,COMPONENT_EXT:71,COMPONENT_EXT_DB:72,COMPONENT_EXT_QUEUE:73,REL:74,BIREL:75,REL_U:76,REL_D:77,REL_L:78,REL_R:79,REL_B:80,REL_INDEX:81,UPDATE_EL_STYLE:82,UPDATE_REL_STYLE:83,UPDATE_LAYOUT_CONFIG:84,attribute:85,STR:86,STR_KEY:87,STR_VALUE:88,ATTRIBUTE:89,ATTRIBUTE_EMPTY:90,$accept:0,$end:1},terminals_:{2:"error",7:"direction_tb",8:"direction_bt",9:"direction_rl",10:"direction_lr",15:"NEWLINE",16:":",18:"open_directive",19:"type_directive",20:"arg_directive",21:"close_directive",22:"C4_CONTEXT",24:"EOF",25:"C4_CONTAINER",26:"C4_COMPONENT",27:"C4_DYNAMIC",28:"C4_DEPLOYMENT",32:"title",33:"accDescription",34:"acc_title",35:"acc_title_value",36:"acc_descr",37:"acc_descr_value",38:"acc_descr_multiline_value",43:"LBRACE",44:"ENTERPRISE_BOUNDARY",46:"SYSTEM_BOUNDARY",47:"BOUNDARY",48:"CONTAINER_BOUNDARY",49:"NODE",50:"NODE_L",51:"NODE_R",52:"RBRACE",54:"PERSON",55:"PERSON_EXT",56:"SYSTEM",57:"SYSTEM_DB",58:"SYSTEM_QUEUE",59:"SYSTEM_EXT",60:"SYSTEM_EXT_DB",61:"SYSTEM_EXT_QUEUE",62:"CONTAINER",63:"CONTAINER_DB",64:"CONTAINER_QUEUE",65:"CONTAINER_EXT",66:"CONTAINER_EXT_DB",67:"CONTAINER_EXT_QUEUE",68:"COMPONENT",69:"COMPONENT_DB",70:"COMPONENT_QUEUE",71:"COMPONENT_EXT",72:"COMPONENT_EXT_DB",73:"COMPONENT_EXT_QUEUE",74:"REL",75:"BIREL",76:"REL_U",77:"REL_D",78:"REL_L",79:"REL_R",80:"REL_B",81:"REL_INDEX",82:"UPDATE_EL_STYLE",83:"UPDATE_REL_STYLE",84:"UPDATE_LAYOUT_CONFIG",86:"STR",87:"STR_KEY",88:"STR_VALUE",89:"ATTRIBUTE",90:"ATTRIBUTE_EMPTY"},productions_:[0,[3,1],[3,1],[3,2],[5,1],[5,1],[5,1],[5,1],[4,1],[6,4],[6,6],[12,1],[13,1],[17,1],[14,1],[11,4],[11,4],[11,4],[11,4],[11,4],[23,1],[23,1],[23,2],[29,1],[29,2],[29,3],[31,1],[31,1],[31,2],[31,2],[31,1],[39,3],[40,3],[40,3],[40,4],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[42,2],[41,1],[30,1],[30,2],[30,3],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,1],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[53,2],[45,1],[45,2],[85,1],[85,2],[85,1],[85,1]],performAction:function(Jt,en,In,hn,Fr,Pt,ei){var nn=Pt.length-1;switch(Fr){case 4:hn.setDirection("TB");break;case 5:hn.setDirection("BT");break;case 6:hn.setDirection("RL");break;case 7:hn.setDirection("LR");break;case 11:hn.parseDirective("%%{","open_directive");break;case 12:break;case 13:Pt[nn]=Pt[nn].trim().replace(/'/g,'"'),hn.parseDirective(Pt[nn],"arg_directive");break;case 14:hn.parseDirective("}%%","close_directive","c4Context");break;case 15:case 16:case 17:case 18:case 19:hn.setC4Type(Pt[nn-3]);break;case 26:hn.setTitle(Pt[nn].substring(6)),this.$=Pt[nn].substring(6);break;case 27:hn.setAccDescription(Pt[nn].substring(15)),this.$=Pt[nn].substring(15);break;case 28:this.$=Pt[nn].trim(),hn.setTitle(this.$);break;case 29:case 30:this.$=Pt[nn].trim(),hn.setAccDescription(this.$);break;case 35:case 36:Pt[nn].splice(2,0,"ENTERPRISE"),hn.addPersonOrSystemBoundary(...Pt[nn]),this.$=Pt[nn];break;case 37:hn.addPersonOrSystemBoundary(...Pt[nn]),this.$=Pt[nn];break;case 38:Pt[nn].splice(2,0,"CONTAINER"),hn.addContainerBoundary(...Pt[nn]),this.$=Pt[nn];break;case 39:hn.addDeploymentNode("node",...Pt[nn]),this.$=Pt[nn];break;case 40:hn.addDeploymentNode("nodeL",...Pt[nn]),this.$=Pt[nn];break;case 41:hn.addDeploymentNode("nodeR",...Pt[nn]),this.$=Pt[nn];break;case 42:hn.popBoundaryParseStack();break;case 46:hn.addPersonOrSystem("person",...Pt[nn]),this.$=Pt[nn];break;case 47:hn.addPersonOrSystem("external_person",...Pt[nn]),this.$=Pt[nn];break;case 48:hn.addPersonOrSystem("system",...Pt[nn]),this.$=Pt[nn];break;case 49:hn.addPersonOrSystem("system_db",...Pt[nn]),this.$=Pt[nn];break;case 50:hn.addPersonOrSystem("system_queue",...Pt[nn]),this.$=Pt[nn];break;case 51:hn.addPersonOrSystem("external_system",...Pt[nn]),this.$=Pt[nn];break;case 52:hn.addPersonOrSystem("external_system_db",...Pt[nn]),this.$=Pt[nn];break;case 53:hn.addPersonOrSystem("external_system_queue",...Pt[nn]),this.$=Pt[nn];break;case 54:hn.addContainer("container",...Pt[nn]),this.$=Pt[nn];break;case 55:hn.addContainer("container_db",...Pt[nn]),this.$=Pt[nn];break;case 56:hn.addContainer("container_queue",...Pt[nn]),this.$=Pt[nn];break;case 57:hn.addContainer("external_container",...Pt[nn]),this.$=Pt[nn];break;case 58:hn.addContainer("external_container_db",...Pt[nn]),this.$=Pt[nn];break;case 59:hn.addContainer("external_container_queue",...Pt[nn]),this.$=Pt[nn];break;case 60:hn.addComponent("component",...Pt[nn]),this.$=Pt[nn];break;case 61:hn.addComponent("component_db",...Pt[nn]),this.$=Pt[nn];break;case 62:hn.addComponent("component_queue",...Pt[nn]),this.$=Pt[nn];break;case 63:hn.addComponent("external_component",...Pt[nn]),this.$=Pt[nn];break;case 64:hn.addComponent("external_component_db",...Pt[nn]),this.$=Pt[nn];break;case 65:hn.addComponent("external_component_queue",...Pt[nn]),this.$=Pt[nn];break;case 67:hn.addRel("rel",...Pt[nn]),this.$=Pt[nn];break;case 68:hn.addRel("birel",...Pt[nn]),this.$=Pt[nn];break;case 69:hn.addRel("rel_u",...Pt[nn]),this.$=Pt[nn];break;case 70:hn.addRel("rel_d",...Pt[nn]),this.$=Pt[nn];break;case 71:hn.addRel("rel_l",...Pt[nn]),this.$=Pt[nn];break;case 72:hn.addRel("rel_r",...Pt[nn]),this.$=Pt[nn];break;case 73:hn.addRel("rel_b",...Pt[nn]),this.$=Pt[nn];break;case 74:Pt[nn].splice(0,1),hn.addRel("rel",...Pt[nn]),this.$=Pt[nn];break;case 75:hn.updateElStyle("update_el_style",...Pt[nn]),this.$=Pt[nn];break;case 76:hn.updateRelStyle("update_rel_style",...Pt[nn]),this.$=Pt[nn];break;case 77:hn.updateLayoutConfig("update_layout_config",...Pt[nn]),this.$=Pt[nn];break;case 78:this.$=[Pt[nn]];break;case 79:Pt[nn].unshift(Pt[nn-1]),this.$=Pt[nn];break;case 80:case 82:this.$=Pt[nn].trim();break;case 81:let hi={};hi[Pt[nn-1].trim()]=Pt[nn].trim(),this.$=hi;break;case 83:this.$="";break}},table:[{3:1,4:2,5:3,6:4,7:i,8:o,9:l,10:f,11:5,12:10,18:b,22:d,25:w,26:y,27:k,28:E},{1:[3]},{1:[2,1]},{1:[2,2]},{3:17,4:2,5:3,6:4,7:i,8:o,9:l,10:f,11:5,12:10,18:b,22:d,25:w,26:y,27:k,28:E},{1:[2,8]},{1:[2,4]},{1:[2,5]},{1:[2,6]},{1:[2,7]},{13:18,19:[1,19]},{15:[1,20]},{15:[1,21]},{15:[1,22]},{15:[1,23]},{15:[1,24]},{19:[2,11]},{1:[2,3]},{14:25,16:[1,26],21:T},r([16,21],[2,12]),{23:28,29:29,30:30,31:31,32:C,33:S,34:L,36:O,38:B,39:58,40:70,42:71,44:N,46:F,47:R,48:q,49:X,50:te,51:H,53:32,54:Y,55:z,56:W,57:Z,58:G,59:ae,60:$,61:ge,62:ee,63:de,64:re,65:ke,66:Ce,67:_e,68:Te,69:Be,70:Ge,71:Xe,72:Ee,73:Ze,74:Ie,75:Oe,76:Le,77:$e,78:xe,79:Ae,80:je,81:me,82:vt,83:ve,84:Zt},{23:79,29:29,30:30,31:31,32:C,33:S,34:L,36:O,38:B,39:58,40:70,42:71,44:N,46:F,47:R,48:q,49:X,50:te,51:H,53:32,54:Y,55:z,56:W,57:Z,58:G,59:ae,60:$,61:ge,62:ee,63:de,64:re,65:ke,66:Ce,67:_e,68:Te,69:Be,70:Ge,71:Xe,72:Ee,73:Ze,74:Ie,75:Oe,76:Le,77:$e,78:xe,79:Ae,80:je,81:me,82:vt,83:ve,84:Zt},{23:80,29:29,30:30,31:31,32:C,33:S,34:L,36:O,38:B,39:58,40:70,42:71,44:N,46:F,47:R,48:q,49:X,50:te,51:H,53:32,54:Y,55:z,56:W,57:Z,58:G,59:ae,60:$,61:ge,62:ee,63:de,64:re,65:ke,66:Ce,67:_e,68:Te,69:Be,70:Ge,71:Xe,72:Ee,73:Ze,74:Ie,75:Oe,76:Le,77:$e,78:xe,79:Ae,80:je,81:me,82:vt,83:ve,84:Zt},{23:81,29:29,30:30,31:31,32:C,33:S,34:L,36:O,38:B,39:58,40:70,42:71,44:N,46:F,47:R,48:q,49:X,50:te,51:H,53:32,54:Y,55:z,56:W,57:Z,58:G,59:ae,60:$,61:ge,62:ee,63:de,64:re,65:ke,66:Ce,67:_e,68:Te,69:Be,70:Ge,71:Xe,72:Ee,73:Ze,74:Ie,75:Oe,76:Le,77:$e,78:xe,79:Ae,80:je,81:me,82:vt,83:ve,84:Zt},{23:82,29:29,30:30,31:31,32:C,33:S,34:L,36:O,38:B,39:58,40:70,42:71,44:N,46:F,47:R,48:q,49:X,50:te,51:H,53:32,54:Y,55:z,56:W,57:Z,58:G,59:ae,60:$,61:ge,62:ee,63:de,64:re,65:ke,66:Ce,67:_e,68:Te,69:Be,70:Ge,71:Xe,72:Ee,73:Ze,74:Ie,75:Oe,76:Le,77:$e,78:xe,79:Ae,80:je,81:me,82:vt,83:ve,84:Zt},{15:[1,83]},{17:84,20:[1,85]},{15:[2,14]},{24:[1,86]},r(nt,[2,20],{53:32,39:58,40:70,42:71,30:87,44:N,46:F,47:R,48:q,49:X,50:te,51:H,54:Y,55:z,56:W,57:Z,58:G,59:ae,60:$,61:ge,62:ee,63:de,64:re,65:ke,66:Ce,67:_e,68:Te,69:Be,70:Ge,71:Xe,72:Ee,73:Ze,74:Ie,75:Oe,76:Le,77:$e,78:xe,79:Ae,80:je,81:me,82:vt,83:ve,84:Zt}),r(nt,[2,21]),r(xn,[2,23],{15:[1,88]}),r(nt,[2,43],{15:[1,89]}),r(cn,[2,26]),r(cn,[2,27]),{35:[1,90]},{37:[1,91]},r(cn,[2,30]),{45:92,85:93,86:jt,87:ot,89:be,90:We},{45:98,85:93,86:jt,87:ot,89:be,90:We},{45:99,85:93,86:jt,87:ot,89:be,90:We},{45:100,85:93,86:jt,87:ot,89:be,90:We},{45:101,85:93,86:jt,87:ot,89:be,90:We},{45:102,85:93,86:jt,87:ot,89:be,90:We},{45:103,85:93,86:jt,87:ot,89:be,90:We},{45:104,85:93,86:jt,87:ot,89:be,90:We},{45:105,85:93,86:jt,87:ot,89:be,90:We},{45:106,85:93,86:jt,87:ot,89:be,90:We},{45:107,85:93,86:jt,87:ot,89:be,90:We},{45:108,85:93,86:jt,87:ot,89:be,90:We},{45:109,85:93,86:jt,87:ot,89:be,90:We},{45:110,85:93,86:jt,87:ot,89:be,90:We},{45:111,85:93,86:jt,87:ot,89:be,90:We},{45:112,85:93,86:jt,87:ot,89:be,90:We},{45:113,85:93,86:jt,87:ot,89:be,90:We},{45:114,85:93,86:jt,87:ot,89:be,90:We},{45:115,85:93,86:jt,87:ot,89:be,90:We},{45:116,85:93,86:jt,87:ot,89:be,90:We},r(ct,[2,66]),{45:117,85:93,86:jt,87:ot,89:be,90:We},{45:118,85:93,86:jt,87:ot,89:be,90:We},{45:119,85:93,86:jt,87:ot,89:be,90:We},{45:120,85:93,86:jt,87:ot,89:be,90:We},{45:121,85:93,86:jt,87:ot,89:be,90:We},{45:122,85:93,86:jt,87:ot,89:be,90:We},{45:123,85:93,86:jt,87:ot,89:be,90:We},{45:124,85:93,86:jt,87:ot,89:be,90:We},{45:125,85:93,86:jt,87:ot,89:be,90:We},{45:126,85:93,86:jt,87:ot,89:be,90:We},{45:127,85:93,86:jt,87:ot,89:be,90:We},{30:128,39:58,40:70,42:71,44:N,46:F,47:R,48:q,49:X,50:te,51:H,53:32,54:Y,55:z,56:W,57:Z,58:G,59:ae,60:$,61:ge,62:ee,63:de,64:re,65:ke,66:Ce,67:_e,68:Te,69:Be,70:Ge,71:Xe,72:Ee,73:Ze,74:Ie,75:Oe,76:Le,77:$e,78:xe,79:Ae,80:je,81:me,82:vt,83:ve,84:Zt},{15:[1,130],43:[1,129]},{45:131,85:93,86:jt,87:ot,89:be,90:We},{45:132,85:93,86:jt,87:ot,89:be,90:We},{45:133,85:93,86:jt,87:ot,89:be,90:We},{45:134,85:93,86:jt,87:ot,89:be,90:We},{45:135,85:93,86:jt,87:ot,89:be,90:We},{45:136,85:93,86:jt,87:ot,89:be,90:We},{45:137,85:93,86:jt,87:ot,89:be,90:We},{24:[1,138]},{24:[1,139]},{24:[1,140]},{24:[1,141]},r(Yt,[2,9]),{14:142,21:T},{21:[2,13]},{1:[2,15]},r(nt,[2,22]),r(xn,[2,24],{31:31,29:143,32:C,33:S,34:L,36:O,38:B}),r(nt,[2,44],{29:29,30:30,31:31,53:32,39:58,40:70,42:71,23:144,32:C,33:S,34:L,36:O,38:B,44:N,46:F,47:R,48:q,49:X,50:te,51:H,54:Y,55:z,56:W,57:Z,58:G,59:ae,60:$,61:ge,62:ee,63:de,64:re,65:ke,66:Ce,67:_e,68:Te,69:Be,70:Ge,71:Xe,72:Ee,73:Ze,74:Ie,75:Oe,76:Le,77:$e,78:xe,79:Ae,80:je,81:me,82:vt,83:ve,84:Zt}),r(cn,[2,28]),r(cn,[2,29]),r(ct,[2,46]),r(Ut,[2,78],{85:93,45:145,86:jt,87:ot,89:be,90:We}),r(Wn,[2,80]),{88:[1,146]},r(Wn,[2,82]),r(Wn,[2,83]),r(ct,[2,47]),r(ct,[2,48]),r(ct,[2,49]),r(ct,[2,50]),r(ct,[2,51]),r(ct,[2,52]),r(ct,[2,53]),r(ct,[2,54]),r(ct,[2,55]),r(ct,[2,56]),r(ct,[2,57]),r(ct,[2,58]),r(ct,[2,59]),r(ct,[2,60]),r(ct,[2,61]),r(ct,[2,62]),r(ct,[2,63]),r(ct,[2,64]),r(ct,[2,65]),r(ct,[2,67]),r(ct,[2,68]),r(ct,[2,69]),r(ct,[2,70]),r(ct,[2,71]),r(ct,[2,72]),r(ct,[2,73]),r(ct,[2,74]),r(ct,[2,75]),r(ct,[2,76]),r(ct,[2,77]),{41:147,52:[1,148]},{15:[1,149]},{43:[1,150]},r(Gt,[2,35]),r(Gt,[2,36]),r(Gt,[2,37]),r(Gt,[2,38]),r(Gt,[2,39]),r(Gt,[2,40]),r(Gt,[2,41]),{1:[2,16]},{1:[2,17]},{1:[2,18]},{1:[2,19]},{15:[1,151]},r(xn,[2,25]),r(nt,[2,45]),r(Ut,[2,79]),r(Wn,[2,81]),r(ct,[2,31]),r(ct,[2,42]),r(Rn,[2,32]),r(Rn,[2,33],{15:[1,152]}),r(Yt,[2,10]),r(Rn,[2,34])],defaultActions:{2:[2,1],3:[2,2],5:[2,8],6:[2,4],7:[2,5],8:[2,6],9:[2,7],16:[2,11],17:[2,3],27:[2,14],85:[2,13],86:[2,15],138:[2,16],139:[2,17],140:[2,18],141:[2,19]},parseError:function(Jt,en){if(en.recoverable)this.trace(Jt);else{var In=new Error(Jt);throw In.hash=en,In}},parse:function(Jt){var en=this,In=[0],hn=[],Fr=[null],Pt=[],ei=this.table,nn="",hi=0,Hi=0,ss=2,ls=1,vs=Pt.slice.call(arguments,1),ti=Object.create(this.lexer),zi={yy:{}};for(var as in this.yy)Object.prototype.hasOwnProperty.call(this.yy,as)&&(zi.yy[as]=this.yy[as]);ti.setInput(Jt,zi.yy),zi.yy.lexer=ti,zi.yy.parser=this,typeof ti.yylloc>"u"&&(ti.yylloc={});var ai=ti.yylloc;Pt.push(ai);var hc=ti.options&&ti.options.ranges;typeof zi.yy.parseError=="function"?this.parseError=zi.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function xu(){var bt;return bt=hn.pop()||ti.lex()||ls,typeof bt!="number"&&(bt instanceof Array&&(hn=bt,bt=hn.pop()),bt=en.symbols_[bt]||bt),bt}for(var No,Si,Yc,lh,su={},Ru,fc,Ll,ol;;){if(Si=In[In.length-1],this.defaultActions[Si]?Yc=this.defaultActions[Si]:((No===null||typeof No>"u")&&(No=xu()),Yc=ei[Si]&&ei[Si][No]),typeof Yc>"u"||!Yc.length||!Yc[0]){var Ur="";ol=[];for(Ru in ei[Si])this.terminals_[Ru]&&Ru>ss&&ol.push("'"+this.terminals_[Ru]+"'");ti.showPosition?Ur="Parse error on line "+(hi+1)+`:
-`+ti.showPosition()+`
-Expecting `+ol.join(", ")+", got '"+(this.terminals_[No]||No)+"'":Ur="Parse error on line "+(hi+1)+": Unexpected "+(No==ls?"end of input":"'"+(this.terminals_[No]||No)+"'"),this.parseError(Ur,{text:ti.match,token:this.terminals_[No]||No,line:ti.yylineno,loc:ai,expected:ol})}if(Yc[0]instanceof Array&&Yc.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Si+", token: "+No);switch(Yc[0]){case 1:In.push(No),Fr.push(ti.yytext),Pt.push(ti.yylloc),In.push(Yc[1]),No=null,Hi=ti.yyleng,nn=ti.yytext,hi=ti.yylineno,ai=ti.yylloc;break;case 2:if(fc=this.productions_[Yc[1]][1],su.$=Fr[Fr.length-fc],su._$={first_line:Pt[Pt.length-(fc||1)].first_line,last_line:Pt[Pt.length-1].last_line,first_column:Pt[Pt.length-(fc||1)].first_column,last_column:Pt[Pt.length-1].last_column},hc&&(su._$.range=[Pt[Pt.length-(fc||1)].range[0],Pt[Pt.length-1].range[1]]),lh=this.performAction.apply(su,[nn,Hi,hi,zi.yy,Yc[1],Fr,Pt].concat(vs)),typeof lh<"u")return lh;fc&&(In=In.slice(0,-1*fc*2),Fr=Fr.slice(0,-1*fc),Pt=Pt.slice(0,-1*fc)),In.push(this.productions_[Yc[1]][0]),Fr.push(su.$),Pt.push(su._$),Ll=ei[In[In.length-2]][In[In.length-1]],In.push(Ll);break;case 3:return!0}}return!0}},$r=function(){var Kn={EOF:1,parseError:function(en,In){if(this.yy.parser)this.yy.parser.parseError(en,In);else throw new Error(en)},setInput:function(Jt,en){return this.yy=en||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 en=Jt.match(/(?:\r\n?|\n).*/g);return en?(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 en=Jt.length,In=Jt.split(/(?:\r\n?|\n)/g);this._input=Jt+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-en),this.offset-=en;var hn=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),In.length-1&&(this.yylineno-=In.length-1);var Fr=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:In?(In.length===hn.length?this.yylloc.first_column:0)+hn[hn.length-In.length].length-In[0].length:this.yylloc.first_column-en},this.options.ranges&&(this.yylloc.range=[Fr[0],Fr[0]+this.yyleng-en]),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(),en=new Array(Jt.length+1).join("-");return Jt+this.upcomingInput()+`
-`+en+"^"},test_match:function(Jt,en){var In,hn,Fr;if(this.options.backtrack_lexer&&(Fr={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&&(Fr.yylloc.range=this.yylloc.range.slice(0))),hn=Jt[0].match(/(?:\r\n?|\n).*/g),hn&&(this.yylineno+=hn.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:hn?hn[hn.length-1].length-hn[hn.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],In=this.performAction.call(this,this.yy,this,en,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),In)return In;if(this._backtrack){for(var Pt in Fr)this[Pt]=Fr[Pt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Jt,en,In,hn;this._more||(this.yytext="",this.match="");for(var Fr=this._currentRules(),Pt=0;Pten[0].length)){if(en=In,hn=Pt,this.options.backtrack_lexer){if(Jt=this.test_match(In,Fr[Pt]),Jt!==!1)return Jt;if(this._backtrack){en=!1;continue}else return!1}else if(!this.options.flex)break}return en?(Jt=this.test_match(en,Fr[hn]),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 en=this.next();return en||this.lex()},begin:function(en){this.conditionStack.push(en)},popState:function(){var en=this.conditionStack.length-1;return en>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(en){return en=this.conditionStack.length-1-Math.abs(en||0),en>=0?this.conditionStack[en]:"INITIAL"},pushState:function(en){this.begin(en)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(en,In,hn,Fr){switch(hn){case 0:return this.begin("open_directive"),18;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 10;case 5:return this.begin("type_directive"),19;case 6:return this.popState(),this.begin("arg_directive"),16;case 7:return this.popState(),this.popState(),21;case 8:return 20;case 9:return 32;case 10:return 33;case 11:return this.begin("acc_title"),34;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),36;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:break;case 19:c;break;case 20:return 15;case 21:break;case 22:return 22;case 23:return 25;case 24:return 26;case 25:return 27;case 26:return 28;case 27:return this.begin("person_ext"),55;case 28:return this.begin("person"),54;case 29:return this.begin("system_ext_queue"),61;case 30:return this.begin("system_ext_db"),60;case 31:return this.begin("system_ext"),59;case 32:return this.begin("system_queue"),58;case 33:return this.begin("system_db"),57;case 34:return this.begin("system"),56;case 35:return this.begin("boundary"),47;case 36:return this.begin("enterprise_boundary"),44;case 37:return this.begin("system_boundary"),46;case 38:return this.begin("container_ext_queue"),67;case 39:return this.begin("container_ext_db"),66;case 40:return this.begin("container_ext"),65;case 41:return this.begin("container_queue"),64;case 42:return this.begin("container_db"),63;case 43:return this.begin("container"),62;case 44:return this.begin("container_boundary"),48;case 45:return this.begin("component_ext_queue"),73;case 46:return this.begin("component_ext_db"),72;case 47:return this.begin("component_ext"),71;case 48:return this.begin("component_queue"),70;case 49:return this.begin("component_db"),69;case 50:return this.begin("component"),68;case 51:return this.begin("node"),49;case 52:return this.begin("node"),49;case 53:return this.begin("node_l"),50;case 54:return this.begin("node_r"),51;case 55:return this.begin("rel"),74;case 56:return this.begin("birel"),75;case 57:return this.begin("rel_u"),76;case 58:return this.begin("rel_u"),76;case 59:return this.begin("rel_d"),77;case 60:return this.begin("rel_d"),77;case 61:return this.begin("rel_l"),78;case 62:return this.begin("rel_l"),78;case 63:return this.begin("rel_r"),79;case 64:return this.begin("rel_r"),79;case 65:return this.begin("rel_b"),80;case 66:return this.begin("rel_index"),81;case 67:return this.begin("update_el_style"),82;case 68:return this.begin("update_rel_style"),83;case 69:return this.begin("update_layout_config"),84;case 70:return"EOF_IN_STRUCT";case 71:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 72:this.begin("attribute");break;case 73:this.popState(),this.popState();break;case 74:return 90;case 75:break;case 76:return 90;case 77:this.begin("string");break;case 78:this.popState();break;case 79:return"STR";case 80:this.begin("string_kv");break;case 81:return this.begin("string_kv_key"),"STR_KEY";case 82:this.popState(),this.begin("string_kv_value");break;case 83:return"STR_VALUE";case 84:this.popState(),this.popState();break;case 85:return"STR";case 86:return"LBRACE";case 87:return"RBRACE";case 88:return"SPACE";case 89:return"EOL";case 90:return 24}},rules:[/^(?:%%\{)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[16,17],inclusive:!1},acc_descr:{rules:[14],inclusive:!1},acc_title:{rules:[12],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[7,8],inclusive:!1},type_directive:{rules:[6,7],inclusive:!1},open_directive:{rules:[5],inclusive:!1},string_kv_value:{rules:[83,84],inclusive:!1},string_kv_key:{rules:[82],inclusive:!1},string_kv:{rules:[81],inclusive:!1},string:{rules:[78,79],inclusive:!1},attribute:{rules:[73,74,75,76,77,80,85],inclusive:!1},update_layout_config:{rules:[70,71,72,73],inclusive:!1},update_rel_style:{rules:[70,71,72,73],inclusive:!1},update_el_style:{rules:[70,71,72,73],inclusive:!1},rel_b:{rules:[70,71,72,73],inclusive:!1},rel_r:{rules:[70,71,72,73],inclusive:!1},rel_l:{rules:[70,71,72,73],inclusive:!1},rel_d:{rules:[70,71,72,73],inclusive:!1},rel_u:{rules:[70,71,72,73],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[70,71,72,73],inclusive:!1},node_r:{rules:[70,71,72,73],inclusive:!1},node_l:{rules:[70,71,72,73],inclusive:!1},node:{rules:[70,71,72,73],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[70,71,72,73],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[70,71,72,73],inclusive:!1},component_ext:{rules:[70,71,72,73],inclusive:!1},component_queue:{rules:[70,71,72,73],inclusive:!1},component_db:{rules:[70,71,72,73],inclusive:!1},component:{rules:[70,71,72,73],inclusive:!1},container_boundary:{rules:[70,71,72,73],inclusive:!1},container_ext_queue:{rules:[],inclusive:!1},container_ext_db:{rules:[70,71,72,73],inclusive:!1},container_ext:{rules:[70,71,72,73],inclusive:!1},container_queue:{rules:[70,71,72,73],inclusive:!1},container_db:{rules:[70,71,72,73],inclusive:!1},container:{rules:[70,71,72,73],inclusive:!1},birel:{rules:[70,71,72,73],inclusive:!1},system_boundary:{rules:[70,71,72,73],inclusive:!1},enterprise_boundary:{rules:[70,71,72,73],inclusive:!1},boundary:{rules:[70,71,72,73],inclusive:!1},system_ext_queue:{rules:[70,71,72,73],inclusive:!1},system_ext_db:{rules:[70,71,72,73],inclusive:!1},system_ext:{rules:[70,71,72,73],inclusive:!1},system_queue:{rules:[70,71,72,73],inclusive:!1},system_db:{rules:[70,71,72,73],inclusive:!1},system:{rules:[70,71,72,73],inclusive:!1},person_ext:{rules:[70,71,72,73],inclusive:!1},person:{rules:[70,71,72,73],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,13,15,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,86,87,88,89,90],inclusive:!0}}};return Kn}();si.lexer=$r;function nr(){this.yy={}}return nr.prototype=si,si.Parser=nr,new nr}();tV.parser=tV;const p$t=tV,b$t=r=>r.match(/^\s*C4Context|C4Container|C4Component|C4Dynamic|C4Deployment/)!==null;let Pv=[],d6=[""],Jd="global",Bv="",Fm=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],bI=[],Oae="",Nae=!1,nV=4,rV=2;var CSe;const v$t=function(){return CSe},w$t=function(r){CSe=up(r,ht())},m$t=function(r,i,o){Bu.parseDirective(this,r,i,o)},y$t=function(r,i,o,l,f,b,d,w,y){if(r==null||i===void 0||i===null||o===void 0||o===null||l===void 0||l===null)return;let k={};const E=bI.find(T=>T.from===i&&T.to===o);if(E?k=E:bI.push(k),k.type=r,k.from=i,k.to=o,k.label={text:l},f==null)k.techn={text:""};else if(typeof f=="object"){let[T,C]=Object.entries(f)[0];k[T]={text:C}}else k.techn={text:f};if(b==null)k.descr={text:""};else if(typeof b=="object"){let[T,C]=Object.entries(b)[0];k[T]={text:C}}else k.descr={text:b};if(typeof d=="object"){let[T,C]=Object.entries(d)[0];k[T]=C}else k.sprite=d;if(typeof w=="object"){let[T,C]=Object.entries(w)[0];k[T]=C}else k.tags=w;if(typeof y=="object"){let[T,C]=Object.entries(y)[0];k[T]=C}else k.link=y;k.wrap=g6()},k$t=function(r,i,o,l,f,b,d){if(i===null||o===null)return;let w={};const y=Pv.find(k=>k.alias===i);if(y&&i===y.alias?w=y:(w.alias=i,Pv.push(w)),o==null?w.label={text:""}:w.label={text:o},l==null)w.descr={text:""};else if(typeof l=="object"){let[k,E]=Object.entries(l)[0];w[k]={text:E}}else w.descr={text:l};if(typeof f=="object"){let[k,E]=Object.entries(f)[0];w[k]=E}else w.sprite=f;if(typeof b=="object"){let[k,E]=Object.entries(b)[0];w[k]=E}else w.tags=b;if(typeof d=="object"){let[k,E]=Object.entries(d)[0];w[k]=E}else w.link=d;w.typeC4Shape={text:r},w.parentBoundary=Jd,w.wrap=g6()},x$t=function(r,i,o,l,f,b,d,w){if(i===null||o===null)return;let y={};const k=Pv.find(E=>E.alias===i);if(k&&i===k.alias?y=k:(y.alias=i,Pv.push(y)),o==null?y.label={text:""}:y.label={text:o},l==null)y.techn={text:""};else if(typeof l=="object"){let[E,T]=Object.entries(l)[0];y[E]={text:T}}else y.techn={text:l};if(f==null)y.descr={text:""};else if(typeof f=="object"){let[E,T]=Object.entries(f)[0];y[E]={text:T}}else y.descr={text:f};if(typeof b=="object"){let[E,T]=Object.entries(b)[0];y[E]=T}else y.sprite=b;if(typeof d=="object"){let[E,T]=Object.entries(d)[0];y[E]=T}else y.tags=d;if(typeof w=="object"){let[E,T]=Object.entries(w)[0];y[E]=T}else y.link=w;y.wrap=g6(),y.typeC4Shape={text:r},y.parentBoundary=Jd},E$t=function(r,i,o,l,f,b,d,w){if(i===null||o===null)return;let y={};const k=Pv.find(E=>E.alias===i);if(k&&i===k.alias?y=k:(y.alias=i,Pv.push(y)),o==null?y.label={text:""}:y.label={text:o},l==null)y.techn={text:""};else if(typeof l=="object"){let[E,T]=Object.entries(l)[0];y[E]={text:T}}else y.techn={text:l};if(f==null)y.descr={text:""};else if(typeof f=="object"){let[E,T]=Object.entries(f)[0];y[E]={text:T}}else y.descr={text:f};if(typeof b=="object"){let[E,T]=Object.entries(b)[0];y[E]=T}else y.sprite=b;if(typeof d=="object"){let[E,T]=Object.entries(d)[0];y[E]=T}else y.tags=d;if(typeof w=="object"){let[E,T]=Object.entries(w)[0];y[E]=T}else y.link=w;y.wrap=g6(),y.typeC4Shape={text:r},y.parentBoundary=Jd},_$t=function(r,i,o,l,f){if(r===null||i===null)return;let b={};const d=Fm.find(w=>w.alias===r);if(d&&r===d.alias?b=d:(b.alias=r,Fm.push(b)),i==null?b.label={text:""}:b.label={text:i},o==null)b.type={text:"system"};else if(typeof o=="object"){let[w,y]=Object.entries(o)[0];b[w]={text:y}}else b.type={text:o};if(typeof l=="object"){let[w,y]=Object.entries(l)[0];b[w]=y}else b.tags=l;if(typeof f=="object"){let[w,y]=Object.entries(f)[0];b[w]=y}else b.link=f;b.parentBoundary=Jd,b.wrap=g6(),Bv=Jd,Jd=r,d6.push(Bv)},T$t=function(r,i,o,l,f){if(r===null||i===null)return;let b={};const d=Fm.find(w=>w.alias===r);if(d&&r===d.alias?b=d:(b.alias=r,Fm.push(b)),i==null?b.label={text:""}:b.label={text:i},o==null)b.type={text:"container"};else if(typeof o=="object"){let[w,y]=Object.entries(o)[0];b[w]={text:y}}else b.type={text:o};if(typeof l=="object"){let[w,y]=Object.entries(l)[0];b[w]=y}else b.tags=l;if(typeof f=="object"){let[w,y]=Object.entries(f)[0];b[w]=y}else b.link=f;b.parentBoundary=Jd,b.wrap=g6(),Bv=Jd,Jd=r,d6.push(Bv)},C$t=function(r,i,o,l,f,b,d,w){if(i===null||o===null)return;let y={};const k=Fm.find(E=>E.alias===i);if(k&&i===k.alias?y=k:(y.alias=i,Fm.push(y)),o==null?y.label={text:""}:y.label={text:o},l==null)y.type={text:"node"};else if(typeof l=="object"){let[E,T]=Object.entries(l)[0];y[E]={text:T}}else y.type={text:l};if(f==null)y.descr={text:""};else if(typeof f=="object"){let[E,T]=Object.entries(f)[0];y[E]={text:T}}else y.descr={text:f};if(typeof d=="object"){let[E,T]=Object.entries(d)[0];y[E]=T}else y.tags=d;if(typeof w=="object"){let[E,T]=Object.entries(w)[0];y[E]=T}else y.link=w;y.nodeType=r,y.parentBoundary=Jd,y.wrap=g6(),Bv=Jd,Jd=i,d6.push(Bv)},S$t=function(){Jd=Bv,d6.pop(),Bv=d6.pop(),d6.push(Bv)},A$t=function(r,i,o,l,f,b,d,w,y,k,E){let T=Pv.find(C=>C.alias===i);if(!(T===void 0&&(T=Fm.find(C=>C.alias===i),T===void 0))){if(o!=null)if(typeof o=="object"){let[C,S]=Object.entries(o)[0];T[C]=S}else T.bgColor=o;if(l!=null)if(typeof l=="object"){let[C,S]=Object.entries(l)[0];T[C]=S}else T.fontColor=l;if(f!=null)if(typeof f=="object"){let[C,S]=Object.entries(f)[0];T[C]=S}else T.borderColor=f;if(b!=null)if(typeof b=="object"){let[C,S]=Object.entries(b)[0];T[C]=S}else T.shadowing=b;if(d!=null)if(typeof d=="object"){let[C,S]=Object.entries(d)[0];T[C]=S}else T.shape=d;if(w!=null)if(typeof w=="object"){let[C,S]=Object.entries(w)[0];T[C]=S}else T.sprite=w;if(y!=null)if(typeof y=="object"){let[C,S]=Object.entries(y)[0];T[C]=S}else T.techn=y;if(k!=null)if(typeof k=="object"){let[C,S]=Object.entries(k)[0];T[C]=S}else T.legendText=k;if(E!=null)if(typeof E=="object"){let[C,S]=Object.entries(E)[0];T[C]=S}else T.legendSprite=E}},M$t=function(r,i,o,l,f,b,d){const w=bI.find(y=>y.from===i&&y.to===o);if(w!==void 0){if(l!=null)if(typeof l=="object"){let[y,k]=Object.entries(l)[0];w[y]=k}else w.textColor=l;if(f!=null)if(typeof f=="object"){let[y,k]=Object.entries(f)[0];w[y]=k}else w.lineColor=f;if(b!=null)if(typeof b=="object"){let[y,k]=Object.entries(b)[0];w[y]=parseInt(k)}else w.offsetX=parseInt(b);if(d!=null)if(typeof d=="object"){let[y,k]=Object.entries(d)[0];w[y]=parseInt(k)}else w.offsetY=parseInt(d)}},D$t=function(r,i,o){let l=nV,f=rV;if(typeof i=="object"){const b=Object.values(i)[0];l=parseInt(b)}else l=parseInt(i);if(typeof o=="object"){const b=Object.values(o)[0];f=parseInt(b)}else f=parseInt(o);l>=1&&(nV=l),f>=1&&(rV=f)},L$t=function(){return nV},I$t=function(){return rV},O$t=function(){return Jd},N$t=function(){return Bv},SSe=function(r){return r==null?Pv:Pv.filter(i=>i.parentBoundary===r)},P$t=function(r){return Pv.find(i=>i.alias===r)},B$t=function(r){return Object.keys(SSe(r))},F$t=function(r){return r==null?Fm:Fm.filter(i=>i.parentBoundary===r)},R$t=function(){return bI},j$t=function(){return Oae},$$t=function(r){Nae=r},g6=function(){return Nae},ASe={addPersonOrSystem:k$t,addPersonOrSystemBoundary:_$t,addContainer:x$t,addContainerBoundary:T$t,addComponent:E$t,addDeploymentNode:C$t,popBoundaryParseStack:S$t,addRel:y$t,updateElStyle:A$t,updateRelStyle:M$t,updateLayoutConfig:D$t,autoWrap:g6,setWrap:$$t,getC4ShapeArray:SSe,getC4Shape:P$t,getC4ShapeKeys:B$t,getBoundarys:F$t,getCurrentBoundaryParse:O$t,getParentBoundaryParse:N$t,getRels:R$t,getTitle:j$t,getC4Type:v$t,getC4ShapeInRow:L$t,getC4BoundaryInRow:I$t,setAccTitle:K0,getAccTitle:hp,getAccDescription:dp,setAccDescription:fp,parseDirective:m$t,getConfig:()=>ht().c4,clear:function(){Pv=[],Fm=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],Bv="",Jd="global",d6=[""],bI=[],d6=[""],Oae="",Nae=!1,nV=4,rV=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(r){Oae=up(r,ht())},setC4Type:w$t},Pae=function(r,i){const o=r.append("rect");if(o.attr("x",i.x),o.attr("y",i.y),o.attr("fill",i.fill),o.attr("stroke",i.stroke),o.attr("width",i.width),o.attr("height",i.height),o.attr("rx",i.rx),o.attr("ry",i.ry),i.attrs!=="undefined"&&i.attrs!==null)for(let l in i.attrs)o.attr(l,i.attrs[l]);return i.class!=="undefined"&&o.attr("class",i.class),o},MSe=function(r,i,o,l,f,b){const d=r.append("image");d.attr("width",i),d.attr("height",o),d.attr("x",l),d.attr("y",f);let w=b.startsWith("data:image/png;base64")?b:$3(b);d.attr("xlink:href",w)},H$t=(r,i,o)=>{const l=r.append("g");let f=0;for(let b of i){let d=b.textColor?b.textColor:"#444444",w=b.lineColor?b.lineColor:"#444444",y=b.offsetX?parseInt(b.offsetX):0,k=b.offsetY?parseInt(b.offsetY):0,E="";if(f===0){let C=l.append("line");C.attr("x1",b.startPoint.x),C.attr("y1",b.startPoint.y),C.attr("x2",b.endPoint.x),C.attr("y2",b.endPoint.y),C.attr("stroke-width","1"),C.attr("stroke",w),C.style("fill","none"),b.type!=="rel_b"&&C.attr("marker-end","url("+E+"#arrowhead)"),(b.type==="birel"||b.type==="rel_b")&&C.attr("marker-start","url("+E+"#arrowend)"),f=-1}else{let C=l.append("path");C.attr("fill","none").attr("stroke-width","1").attr("stroke",w).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",b.startPoint.x).replaceAll("starty",b.startPoint.y).replaceAll("controlx",b.startPoint.x+(b.endPoint.x-b.startPoint.x)/2-(b.endPoint.x-b.startPoint.x)/4).replaceAll("controly",b.startPoint.y+(b.endPoint.y-b.startPoint.y)/2).replaceAll("stopx",b.endPoint.x).replaceAll("stopy",b.endPoint.y)),b.type!=="rel_b"&&C.attr("marker-end","url("+E+"#arrowhead)"),(b.type==="birel"||b.type==="rel_b")&&C.attr("marker-start","url("+E+"#arrowend)")}let T=o.messageFont();X3(o)(b.label.text,l,Math.min(b.startPoint.x,b.endPoint.x)+Math.abs(b.endPoint.x-b.startPoint.x)/2+y,Math.min(b.startPoint.y,b.endPoint.y)+Math.abs(b.endPoint.y-b.startPoint.y)/2+k,b.label.width,b.label.height,{fill:d},T),b.techn&&b.techn.text!==""&&(T=o.messageFont(),X3(o)("["+b.techn.text+"]",l,Math.min(b.startPoint.x,b.endPoint.x)+Math.abs(b.endPoint.x-b.startPoint.x)/2+y,Math.min(b.startPoint.y,b.endPoint.y)+Math.abs(b.endPoint.y-b.startPoint.y)/2+o.messageFontSize+5+k,Math.max(b.label.width,b.techn.width),b.techn.height,{fill:d,"font-style":"italic"},T))}},z$t=function(r,i,o){const l=r.append("g");let f=i.bgColor?i.bgColor:"none",b=i.borderColor?i.borderColor:"#444444",d=i.fontColor?i.fontColor:"black",w={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};i.nodeType&&(w={"stroke-width":1});let y={x:i.x,y:i.y,fill:f,stroke:b,width:i.width,height:i.height,rx:2.5,ry:2.5,attrs:w};Pae(l,y);let k=o.boundaryFont();k.fontWeight="bold",k.fontSize=k.fontSize+2,k.fontColor=d,X3(o)(i.label.text,l,i.x,i.y+i.label.Y,i.width,i.height,{fill:"#444444"},k),i.type&&i.type.text!==""&&(k=o.boundaryFont(),k.fontColor=d,X3(o)(i.type.text,l,i.x,i.y+i.type.Y,i.width,i.height,{fill:"#444444"},k)),i.descr&&i.descr.text!==""&&(k=o.boundaryFont(),k.fontSize=k.fontSize-2,k.fontColor=d,X3(o)(i.descr.text,l,i.x,i.y+i.descr.Y,i.width,i.height,{fill:"#444444"},k))},G$t=function(r,i,o){var T;let l=i.bgColor?i.bgColor:o[i.typeC4Shape.text+"_bg_color"],f=i.borderColor?i.borderColor:o[i.typeC4Shape.text+"_border_color"],b=i.fontColor?i.fontColor:"#FFFFFF",d="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(i.typeC4Shape.text){case"person":d="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":d="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 w=r.append("g");w.attr("class","person-man");const y=DSe();switch(i.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":y.x=i.x,y.y=i.y,y.fill=l,y.width=i.width,y.height=i.height,y.stroke=f,y.rx=2.5,y.ry=2.5,y.attrs={"stroke-width":.5},Pae(w,y);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":w.append("path").attr("fill",l).attr("stroke-width","0.5").attr("stroke",f).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",i.x).replaceAll("starty",i.y).replaceAll("half",i.width/2).replaceAll("height",i.height)),w.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",f).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",i.x).replaceAll("starty",i.y).replaceAll("half",i.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":w.append("path").attr("fill",l).attr("stroke-width","0.5").attr("stroke",f).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",i.x).replaceAll("starty",i.y).replaceAll("width",i.width).replaceAll("half",i.height/2)),w.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",f).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",i.x+i.width).replaceAll("starty",i.y).replaceAll("half",i.height/2));break}let k=Z$t(o,i.typeC4Shape.text);switch(w.append("text").attr("fill",b).attr("font-family",k.fontFamily).attr("font-size",k.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",i.typeC4Shape.width).attr("x",i.x+i.width/2-i.typeC4Shape.width/2).attr("y",i.y+i.typeC4Shape.Y).text("<<"+i.typeC4Shape.text+">>"),i.typeC4Shape.text){case"person":case"external_person":MSe(w,48,48,i.x+i.width/2-24,i.y+i.image.Y,d);break}let E=o[i.typeC4Shape.text+"Font"]();return E.fontWeight="bold",E.fontSize=E.fontSize+2,E.fontColor=b,X3(o)(i.label.text,w,i.x,i.y+i.label.Y,i.width,i.height,{fill:b},E),E=o[i.typeC4Shape.text+"Font"](),E.fontColor=b,i.techn&&((T=i.techn)==null?void 0:T.text)!==""?X3(o)(i.techn.text,w,i.x,i.y+i.techn.Y,i.width,i.height,{fill:b,"font-style":"italic"},E):i.type&&i.type.text!==""&&X3(o)(i.type.text,w,i.x,i.y+i.type.Y,i.width,i.height,{fill:b,"font-style":"italic"},E),i.descr&&i.descr.text!==""&&(E=o.personFont(),E.fontColor=b,X3(o)(i.descr.text,w,i.x,i.y+i.descr.Y,i.width,i.height,{fill:b},E)),i.height},V$t=function(r){r.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")},U$t=function(r){r.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")},q$t=function(r){r.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")},Y$t=function(r){r.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")},W$t=function(r){r.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")},K$t=function(r){r.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")},X$t=function(r){r.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)},Q$t=function(r){const o=r.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",16).attr("refY",4);o.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"),o.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")},DSe=function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},Z$t=(r,i)=>({fontFamily:r[i+"FontFamily"],fontSize:r[i+"FontSize"],fontWeight:r[i+"FontWeight"]}),X3=function(){function r(f,b,d,w,y,k,E){const T=b.append("text").attr("x",d+y/2).attr("y",w+k/2+5).style("text-anchor","middle").text(f);l(T,E)}function i(f,b,d,w,y,k,E,T){const{fontSize:C,fontFamily:S,fontWeight:L}=T,O=f.split(Cs.lineBreakRegex);for(let B=0;B=this.data.widthLimit||l>=this.data.widthLimit||this.nextData.cnt>LSe)&&(o=this.nextData.startx+i.margin+Mi.nextLinePaddingX,f=this.nextData.stopy+i.margin*2,this.nextData.stopx=l=o+i.width,this.nextData.starty=this.nextData.stopy,this.nextData.stopy=b=f+i.height,this.nextData.cnt=1),i.x=o,i.y=f,this.updateVal(this.data,"startx",o,Math.min),this.updateVal(this.data,"starty",f,Math.min),this.updateVal(this.data,"stopx",l,Math.max),this.updateVal(this.data,"stopy",b,Math.max),this.updateVal(this.nextData,"startx",o,Math.min),this.updateVal(this.nextData,"starty",f,Math.min),this.updateVal(this.nextData,"stopx",l,Math.max),this.updateVal(this.nextData,"stopy",b,Math.max)}init(i){this.name="",this.data={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,widthLimit:void 0},this.nextData={startx:void 0,stopx:void 0,starty:void 0,stopy:void 0,cnt:0},Fae(i.db.getConfig())}bumpLastMargin(i){this.data.stopx+=i,this.data.stopy+=i}}const Fae=function(r){Yf(Mi,r),r.fontFamily&&(Mi.personFontFamily=Mi.systemFontFamily=Mi.messageFontFamily=r.fontFamily),r.fontSize&&(Mi.personFontSize=Mi.systemFontSize=Mi.messageFontSize=r.fontSize),r.fontWeight&&(Mi.personFontWeight=Mi.systemFontWeight=Mi.messageFontWeight=r.fontWeight)},vI=(r,i)=>({fontFamily:r[i+"FontFamily"],fontSize:r[i+"FontSize"],fontWeight:r[i+"FontWeight"]}),aV=r=>({fontFamily:r.boundaryFontFamily,fontSize:r.boundaryFontSize,fontWeight:r.boundaryFontWeight}),J$t=r=>({fontFamily:r.messageFontFamily,fontSize:r.messageFontSize,fontWeight:r.messageFontWeight});function Fv(r,i,o,l,f){if(!i[r].width)if(o)i[r].text=qCe(i[r].text,f,l),i[r].textLines=i[r].text.split(Cs.lineBreakRegex).length,i[r].width=f,i[r].height=gae(i[r].text,l);else{let b=i[r].text.split(Cs.lineBreakRegex);i[r].textLines=b.length;let d=0;i[r].height=0,i[r].width=0;for(const w of b)i[r].width=Math.max(Bm(w,l),i[r].width),d=gae(w,l),i[r].height=i[r].height+d}}const OSe=function(r,i,o){i.x=o.data.startx,i.y=o.data.starty,i.width=o.data.stopx-o.data.startx,i.height=o.data.stopy-o.data.starty,i.label.y=Mi.c4ShapeMargin-35;let l=i.wrap&&Mi.wrap,f=aV(Mi);f.fontSize=f.fontSize+2,f.fontWeight="bold";let b=Bm(i.label.text,f);Fv("label",i,l,f,b),Rm.drawBoundary(r,i,Mi)},NSe=function(r,i,o,l){let f=0;for(const b of l){f=0;const d=o[b];let w=vI(Mi,d.typeC4Shape.text);switch(w.fontSize=w.fontSize-2,d.typeC4Shape.width=Bm("<<"+d.typeC4Shape.text+">>",w),d.typeC4Shape.height=w.fontSize+2,d.typeC4Shape.Y=Mi.c4ShapePadding,f=d.typeC4Shape.Y+d.typeC4Shape.height-4,d.image={width:0,height:0,Y:0},d.typeC4Shape.text){case"person":case"external_person":d.image.width=48,d.image.height=48,d.image.Y=f,f=d.image.Y+d.image.height;break}d.sprite&&(d.image.width=48,d.image.height=48,d.image.Y=f,f=d.image.Y+d.image.height);let y=d.wrap&&Mi.wrap,k=Mi.width-Mi.c4ShapePadding*2,E=vI(Mi,d.typeC4Shape.text);if(E.fontSize=E.fontSize+2,E.fontWeight="bold",Fv("label",d,y,E,k),d.label.Y=f+8,f=d.label.Y+d.label.height,d.type&&d.type.text!==""){d.type.text="["+d.type.text+"]";let S=vI(Mi,d.typeC4Shape.text);Fv("type",d,y,S,k),d.type.Y=f+5,f=d.type.Y+d.type.height}else if(d.techn&&d.techn.text!==""){d.techn.text="["+d.techn.text+"]";let S=vI(Mi,d.techn.text);Fv("techn",d,y,S,k),d.techn.Y=f+5,f=d.techn.Y+d.techn.height}let T=f,C=d.label.width;if(d.descr&&d.descr.text!==""){let S=vI(Mi,d.typeC4Shape.text);Fv("descr",d,y,S,k),d.descr.Y=f+20,f=d.descr.Y+d.descr.height,C=Math.max(d.label.width,d.descr.width),T=f-d.descr.textLines*5}C=C+Mi.c4ShapePadding,d.width=Math.max(d.width||Mi.width,C,Mi.width),d.height=Math.max(d.height||Mi.height,T,Mi.height),d.margin=d.margin||Mi.c4ShapeMargin,r.insert(d),Rm.drawC4Shape(i,d,Mi)}r.bumpLastMargin(Mi.c4ShapeMargin)};class N2{constructor(i,o){this.x=i,this.y=o}}let PSe=function(r,i){let o=r.x,l=r.y,f=i.x,b=i.y,d=o+r.width/2,w=l+r.height/2,y=Math.abs(o-f),k=Math.abs(l-b),E=k/y,T=r.height/r.width,C=null;return l==b&&of?C=new N2(o,w):o==f&&lb&&(C=new N2(d,l)),o>f&&l=E?C=new N2(o,w+E*r.width/2):C=new N2(d-y/k*r.height/2,l+r.height):o=E?C=new N2(o+r.width,w+E*r.width/2):C=new N2(d+y/k*r.height/2,l+r.height):ob?T>=E?C=new N2(o+r.width,w-E*r.width/2):C=new N2(d+r.height/2*y/k,l):o>f&&l>b&&(T>=E?C=new N2(o,w-r.width/2*E):C=new N2(d-r.height/2*y/k,l)),C},eHt=function(r,i){let o={x:0,y:0};o.x=i.x+i.width/2,o.y=i.y+i.height/2;let l=PSe(r,o);o.x=r.x+r.width/2,o.y=r.y+r.height/2;let f=PSe(i,o);return{startPoint:l,endPoint:f}};const tHt=function(r,i,o,l){let f=0;for(let b of i){f=f+1;let d=b.wrap&&Mi.wrap,w=J$t(Mi);l.db.getC4Type()==="C4Dynamic"&&(b.label.text=f+": "+b.label.text);let k=Bm(b.label.text,w);Fv("label",b,d,w,k),b.techn&&b.techn.text!==""&&(k=Bm(b.techn.text,w),Fv("techn",b,d,w,k)),b.descr&&b.descr.text!==""&&(k=Bm(b.descr.text,w),Fv("descr",b,d,w,k));let E=o(b.from),T=o(b.to),C=eHt(E,T);b.startPoint=C.startPoint,b.endPoint=C.endPoint}Rm.drawRels(r,i,Mi)};function BSe(r,i,o,l,f){let b=new ISe(f);b.data.widthLimit=o.data.widthLimit/Math.min(Bae,l.length);for(let[d,w]of l.entries()){let y=0;w.image={width:0,height:0,Y:0},w.sprite&&(w.image.width=48,w.image.height=48,w.image.Y=y,y=w.image.Y+w.image.height);let k=w.wrap&&Mi.wrap,E=aV(Mi);if(E.fontSize=E.fontSize+2,E.fontWeight="bold",Fv("label",w,k,E,b.data.widthLimit),w.label.Y=y+8,y=w.label.Y+w.label.height,w.type&&w.type.text!==""){w.type.text="["+w.type.text+"]";let L=aV(Mi);Fv("type",w,k,L,b.data.widthLimit),w.type.Y=y+5,y=w.type.Y+w.type.height}if(w.descr&&w.descr.text!==""){let L=aV(Mi);L.fontSize=L.fontSize-2,Fv("descr",w,k,L,b.data.widthLimit),w.descr.Y=y+20,y=w.descr.Y+w.descr.height}if(d==0||d%Bae===0){let L=o.data.startx+Mi.diagramMarginX,O=o.data.stopy+Mi.diagramMarginY+y;b.setData(L,L,O,O)}else{let L=b.data.stopx!==b.data.startx?b.data.stopx+Mi.diagramMarginX:b.data.startx,O=b.data.starty;b.setData(L,L,O,O)}b.name=w.alias;let T=f.db.getC4ShapeArray(w.alias),C=f.db.getC4ShapeKeys(w.alias);C.length>0&&NSe(b,r,T,C),i=w.alias;let S=f.db.getBoundarys(i);S.length>0&&BSe(r,i,b,S,f),w.alias!=="global"&&OSe(r,w,b),o.data.stopy=Math.max(b.data.stopy+Mi.c4ShapeMargin,o.data.stopy),o.data.stopx=Math.max(b.data.stopx+Mi.c4ShapeMargin,o.data.stopx),iV=Math.max(iV,o.data.stopx),sV=Math.max(sV,o.data.stopy)}}const FSe={drawPersonOrSystemArray:NSe,drawBoundary:OSe,setConf:Fae,draw:function(r,i,o,l){Mi=ht().c4;const f=ht().securityLevel;let b;f==="sandbox"&&(b=Cn("#i"+i));const d=Cn(f==="sandbox"?b.nodes()[0].contentDocument.body:"body");let w=l.db;l.db.setWrap(Mi.wrap),LSe=w.getC4ShapeInRow(),Bae=w.getC4BoundaryInRow(),Se.debug(`C:${JSON.stringify(Mi,null,2)}`);const y=f==="sandbox"?d.select(`[id="${i}"]`):Cn(`[id="${i}"]`);Rm.insertComputerIcon(y),Rm.insertDatabaseIcon(y),Rm.insertClockIcon(y);let k=new ISe(l);k.setData(Mi.diagramMarginX,Mi.diagramMarginX,Mi.diagramMarginY,Mi.diagramMarginY),k.data.widthLimit=screen.availWidth,iV=Mi.diagramMarginX,sV=Mi.diagramMarginY;const E=l.db.getTitle();let T=l.db.getBoundarys("");BSe(y,"",k,T,l),Rm.insertArrowHead(y),Rm.insertArrowEnd(y),Rm.insertArrowCrossHead(y),Rm.insertArrowFilledHead(y),tHt(y,l.db.getRels(),l.db.getC4Shape,l),k.data.stopx=iV,k.data.stopy=sV;const C=k.data;let L=C.stopy-C.starty+2*Mi.diagramMarginY;const B=C.stopx-C.startx+2*Mi.diagramMarginX;E&&y.append("text").text(E).attr("x",(C.stopx-C.startx)/2-4*Mi.diagramMarginX).attr("y",C.starty+Mi.diagramMarginY),Iv(y,L,B,Mi.useMaxWidth);const N=E?60:0;y.attr("viewBox",C.startx-Mi.diagramMarginX+" -"+(Mi.diagramMarginY+N)+" "+B+" "+(L+N)),Se.debug("models:",C)}};var Rae=function(){var r=function($e,xe,Ae,je){for(Ae=Ae||{},je=$e.length;je--;Ae[$e[je]]=xe);return Ae},i=[1,3],o=[1,7],l=[1,8],f=[1,9],b=[1,10],d=[1,13],w=[1,12],y=[1,16,25],k=[1,20],E=[1,32],T=[1,33],C=[1,34],S=[1,36],L=[1,39],O=[1,37],B=[1,38],N=[1,44],F=[1,45],R=[1,40],q=[1,41],X=[1,42],te=[1,43],H=[1,48],Y=[1,49],z=[1,50],W=[1,51],Z=[16,25],G=[1,65],ae=[1,66],$=[1,67],ge=[1,68],ee=[1,69],de=[1,70],re=[1,71],ke=[1,80],Ce=[16,25,32,45,46,54,60,61,62,63,64,65,66,71,73],_e=[16,25,30,32,45,46,50,54,60,61,62,63,64,65,66,71,73,88,89,90,91],Te=[5,8,9,10,11,16,19,23,25],Be=[54,88,89,90,91],Ge=[54,65,66,88,89,90,91],Xe=[54,60,61,62,63,64,88,89,90,91],Ee=[16,25,32],Ze=[1,107],Ie={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,statments:5,direction:6,directive:7,direction_tb:8,direction_bt:9,direction_rl:10,direction_lr:11,graphConfig:12,openDirective:13,typeDirective:14,closeDirective:15,NEWLINE:16,":":17,argDirective:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,CLASS_DIAGRAM:23,statements:24,EOF:25,statement:26,className:27,alphaNumToken:28,classLiteralName:29,GENERICTYPE:30,relationStatement:31,LABEL:32,classStatement:33,methodStatement:34,annotationStatement:35,clickStatement:36,cssClassStatement:37,noteStatement:38,acc_title:39,acc_title_value:40,acc_descr:41,acc_descr_value:42,acc_descr_multiline_value:43,CLASS:44,STYLE_SEPARATOR:45,STRUCT_START:46,members:47,STRUCT_STOP:48,ANNOTATION_START:49,ANNOTATION_END:50,MEMBER:51,SEPARATOR:52,relation:53,STR:54,NOTE_FOR:55,noteText:56,NOTE:57,relationType:58,lineType:59,AGGREGATION:60,EXTENSION:61,COMPOSITION:62,DEPENDENCY:63,LOLLIPOP:64,LINE:65,DOTTED_LINE:66,CALLBACK:67,LINK:68,LINK_TARGET:69,CLICK:70,CALLBACK_NAME:71,CALLBACK_ARGS:72,HREF:73,CSSCLASS:74,commentToken:75,textToken:76,graphCodeTokens:77,textNoTagsToken:78,TAGSTART:79,TAGEND:80,"==":81,"--":82,PCT:83,DEFAULT:84,SPACE:85,MINUS:86,keywords:87,UNICODE_TEXT:88,NUM:89,ALPHA:90,BQUOTE_STR:91,$accept:0,$end:1},terminals_:{2:"error",5:"statments",8:"direction_tb",9:"direction_bt",10:"direction_rl",11:"direction_lr",16:"NEWLINE",17:":",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",23:"CLASS_DIAGRAM",25:"EOF",30:"GENERICTYPE",32:"LABEL",39:"acc_title",40:"acc_title_value",41:"acc_descr",42:"acc_descr_value",43:"acc_descr_multiline_value",44:"CLASS",45:"STYLE_SEPARATOR",46:"STRUCT_START",48:"STRUCT_STOP",49:"ANNOTATION_START",50:"ANNOTATION_END",51:"MEMBER",52:"SEPARATOR",54:"STR",55:"NOTE_FOR",57:"NOTE",60:"AGGREGATION",61:"EXTENSION",62:"COMPOSITION",63:"DEPENDENCY",64:"LOLLIPOP",65:"LINE",66:"DOTTED_LINE",67:"CALLBACK",68:"LINK",69:"LINK_TARGET",70:"CLICK",71:"CALLBACK_NAME",72:"CALLBACK_ARGS",73:"HREF",74:"CSSCLASS",77:"graphCodeTokens",79:"TAGSTART",80:"TAGEND",81:"==",82:"--",83:"PCT",84:"DEFAULT",85:"SPACE",86:"MINUS",87:"keywords",88:"UNICODE_TEXT",89:"NUM",90:"ALPHA",91:"BQUOTE_STR"},productions_:[0,[3,1],[3,1],[3,1],[3,2],[6,1],[6,1],[6,1],[6,1],[4,1],[7,4],[7,6],[13,1],[14,1],[18,1],[15,1],[12,4],[24,1],[24,2],[24,3],[27,1],[27,1],[27,2],[27,2],[27,2],[26,1],[26,2],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,2],[26,2],[26,1],[33,2],[33,4],[33,5],[33,7],[35,4],[47,1],[47,2],[34,1],[34,2],[34,1],[34,1],[31,3],[31,4],[31,4],[31,5],[38,3],[38,2],[53,3],[53,2],[53,2],[53,1],[58,1],[58,1],[58,1],[58,1],[58,1],[59,1],[59,1],[36,3],[36,4],[36,3],[36,4],[36,4],[36,5],[36,3],[36,4],[36,4],[36,5],[36,3],[36,4],[36,4],[36,5],[37,3],[75,1],[75,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[76,1],[78,1],[78,1],[78,1],[78,1],[28,1],[28,1],[28,1],[29,1],[56,1]],performAction:function(xe,Ae,je,me,vt,ve,Zt){var nt=ve.length-1;switch(vt){case 5:me.setDirection("TB");break;case 6:me.setDirection("BT");break;case 7:me.setDirection("RL");break;case 8:me.setDirection("LR");break;case 12:me.parseDirective("%%{","open_directive");break;case 13:me.parseDirective(ve[nt],"type_directive");break;case 14:ve[nt]=ve[nt].trim().replace(/'/g,'"'),me.parseDirective(ve[nt],"arg_directive");break;case 15:me.parseDirective("}%%","close_directive","class");break;case 20:case 21:this.$=ve[nt];break;case 22:this.$=ve[nt-1]+ve[nt];break;case 23:case 24:this.$=ve[nt-1]+"~"+ve[nt];break;case 25:me.addRelation(ve[nt]);break;case 26:ve[nt-1].title=me.cleanupLabel(ve[nt]),me.addRelation(ve[nt-1]);break;case 35:this.$=ve[nt].trim(),me.setAccTitle(this.$);break;case 36:case 37:this.$=ve[nt].trim(),me.setAccDescription(this.$);break;case 38:me.addClass(ve[nt]);break;case 39:me.addClass(ve[nt-2]),me.setCssClass(ve[nt-2],ve[nt]);break;case 40:me.addClass(ve[nt-3]),me.addMembers(ve[nt-3],ve[nt-1]);break;case 41:me.addClass(ve[nt-5]),me.setCssClass(ve[nt-5],ve[nt-3]),me.addMembers(ve[nt-5],ve[nt-1]);break;case 42:me.addAnnotation(ve[nt],ve[nt-2]);break;case 43:this.$=[ve[nt]];break;case 44:ve[nt].push(ve[nt-1]),this.$=ve[nt];break;case 45:break;case 46:me.addMember(ve[nt-1],me.cleanupLabel(ve[nt]));break;case 47:break;case 48:break;case 49:this.$={id1:ve[nt-2],id2:ve[nt],relation:ve[nt-1],relationTitle1:"none",relationTitle2:"none"};break;case 50:this.$={id1:ve[nt-3],id2:ve[nt],relation:ve[nt-1],relationTitle1:ve[nt-2],relationTitle2:"none"};break;case 51:this.$={id1:ve[nt-3],id2:ve[nt],relation:ve[nt-2],relationTitle1:"none",relationTitle2:ve[nt-1]};break;case 52:this.$={id1:ve[nt-4],id2:ve[nt],relation:ve[nt-2],relationTitle1:ve[nt-3],relationTitle2:ve[nt-1]};break;case 53:me.addNote(ve[nt],ve[nt-1]);break;case 54:me.addNote(ve[nt]);break;case 55:this.$={type1:ve[nt-2],type2:ve[nt],lineType:ve[nt-1]};break;case 56:this.$={type1:"none",type2:ve[nt],lineType:ve[nt-1]};break;case 57:this.$={type1:ve[nt-1],type2:"none",lineType:ve[nt]};break;case 58:this.$={type1:"none",type2:"none",lineType:ve[nt]};break;case 59:this.$=me.relationType.AGGREGATION;break;case 60:this.$=me.relationType.EXTENSION;break;case 61:this.$=me.relationType.COMPOSITION;break;case 62:this.$=me.relationType.DEPENDENCY;break;case 63:this.$=me.relationType.LOLLIPOP;break;case 64:this.$=me.lineType.LINE;break;case 65:this.$=me.lineType.DOTTED_LINE;break;case 66:case 72:this.$=ve[nt-2],me.setClickEvent(ve[nt-1],ve[nt]);break;case 67:case 73:this.$=ve[nt-3],me.setClickEvent(ve[nt-2],ve[nt-1]),me.setTooltip(ve[nt-2],ve[nt]);break;case 68:case 76:this.$=ve[nt-2],me.setLink(ve[nt-1],ve[nt]);break;case 69:this.$=ve[nt-3],me.setLink(ve[nt-2],ve[nt-1],ve[nt]);break;case 70:case 78:this.$=ve[nt-3],me.setLink(ve[nt-2],ve[nt-1]),me.setTooltip(ve[nt-2],ve[nt]);break;case 71:case 79:this.$=ve[nt-4],me.setLink(ve[nt-3],ve[nt-2],ve[nt]),me.setTooltip(ve[nt-3],ve[nt-1]);break;case 74:this.$=ve[nt-3],me.setClickEvent(ve[nt-2],ve[nt-1],ve[nt]);break;case 75:this.$=ve[nt-4],me.setClickEvent(ve[nt-3],ve[nt-2],ve[nt-1]),me.setTooltip(ve[nt-3],ve[nt]);break;case 77:this.$=ve[nt-3],me.setLink(ve[nt-2],ve[nt-1],ve[nt]);break;case 80:me.setCssClass(ve[nt-1],ve[nt]);break}},table:[{3:1,4:2,5:i,6:4,7:5,8:o,9:l,10:f,11:b,12:6,13:11,19:d,23:w},{1:[3]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{3:14,4:2,5:i,6:4,7:5,8:o,9:l,10:f,11:b,12:6,13:11,19:d,23:w},{1:[2,9]},r(y,[2,5]),r(y,[2,6]),r(y,[2,7]),r(y,[2,8]),{14:15,20:[1,16]},{16:[1,17]},{20:[2,12]},{1:[2,4]},{15:18,17:[1,19],22:k},r([17,22],[2,13]),{6:31,7:30,8:o,9:l,10:f,11:b,13:11,19:d,24:21,26:22,27:35,28:46,29:47,31:23,33:24,34:25,35:26,36:27,37:28,38:29,39:E,41:T,43:C,44:S,49:L,51:O,52:B,55:N,57:F,67:R,68:q,70:X,74:te,88:H,89:Y,90:z,91:W},{16:[1,52]},{18:53,21:[1,54]},{16:[2,15]},{25:[1,55]},{16:[1,56],25:[2,17]},r(Z,[2,25],{32:[1,57]}),r(Z,[2,27]),r(Z,[2,28]),r(Z,[2,29]),r(Z,[2,30]),r(Z,[2,31]),r(Z,[2,32]),r(Z,[2,33]),r(Z,[2,34]),{40:[1,58]},{42:[1,59]},r(Z,[2,37]),r(Z,[2,45],{53:60,58:63,59:64,32:[1,62],54:[1,61],60:G,61:ae,62:$,63:ge,64:ee,65:de,66:re}),{27:72,28:46,29:47,88:H,89:Y,90:z,91:W},r(Z,[2,47]),r(Z,[2,48]),{28:73,88:H,89:Y,90:z},{27:74,28:46,29:47,88:H,89:Y,90:z,91:W},{27:75,28:46,29:47,88:H,89:Y,90:z,91:W},{27:76,28:46,29:47,88:H,89:Y,90:z,91:W},{54:[1,77]},{27:78,28:46,29:47,88:H,89:Y,90:z,91:W},{54:ke,56:79},r(Ce,[2,20],{28:46,29:47,27:81,30:[1,82],88:H,89:Y,90:z,91:W}),r(Ce,[2,21],{30:[1,83]}),r(_e,[2,94]),r(_e,[2,95]),r(_e,[2,96]),r([16,25,30,32,45,46,54,60,61,62,63,64,65,66,71,73],[2,97]),r(Te,[2,10]),{15:84,22:k},{22:[2,14]},{1:[2,16]},{6:31,7:30,8:o,9:l,10:f,11:b,13:11,19:d,24:85,25:[2,18],26:22,27:35,28:46,29:47,31:23,33:24,34:25,35:26,36:27,37:28,38:29,39:E,41:T,43:C,44:S,49:L,51:O,52:B,55:N,57:F,67:R,68:q,70:X,74:te,88:H,89:Y,90:z,91:W},r(Z,[2,26]),r(Z,[2,35]),r(Z,[2,36]),{27:86,28:46,29:47,54:[1,87],88:H,89:Y,90:z,91:W},{53:88,58:63,59:64,60:G,61:ae,62:$,63:ge,64:ee,65:de,66:re},r(Z,[2,46]),{59:89,65:de,66:re},r(Be,[2,58],{58:90,60:G,61:ae,62:$,63:ge,64:ee}),r(Ge,[2,59]),r(Ge,[2,60]),r(Ge,[2,61]),r(Ge,[2,62]),r(Ge,[2,63]),r(Xe,[2,64]),r(Xe,[2,65]),r(Z,[2,38],{45:[1,91],46:[1,92]}),{50:[1,93]},{54:[1,94]},{54:[1,95]},{71:[1,96],73:[1,97]},{28:98,88:H,89:Y,90:z},{54:ke,56:99},r(Z,[2,54]),r(Z,[2,98]),r(Ce,[2,22]),r(Ce,[2,23]),r(Ce,[2,24]),{16:[1,100]},{25:[2,19]},r(Ee,[2,49]),{27:101,28:46,29:47,88:H,89:Y,90:z,91:W},{27:102,28:46,29:47,54:[1,103],88:H,89:Y,90:z,91:W},r(Be,[2,57],{58:104,60:G,61:ae,62:$,63:ge,64:ee}),r(Be,[2,56]),{28:105,88:H,89:Y,90:z},{47:106,51:Ze},{27:108,28:46,29:47,88:H,89:Y,90:z,91:W},r(Z,[2,66],{54:[1,109]}),r(Z,[2,68],{54:[1,111],69:[1,110]}),r(Z,[2,72],{54:[1,112],72:[1,113]}),r(Z,[2,76],{54:[1,115],69:[1,114]}),r(Z,[2,80]),r(Z,[2,53]),r(Te,[2,11]),r(Ee,[2,51]),r(Ee,[2,50]),{27:116,28:46,29:47,88:H,89:Y,90:z,91:W},r(Be,[2,55]),r(Z,[2,39],{46:[1,117]}),{48:[1,118]},{47:119,48:[2,43],51:Ze},r(Z,[2,42]),r(Z,[2,67]),r(Z,[2,69]),r(Z,[2,70],{69:[1,120]}),r(Z,[2,73]),r(Z,[2,74],{54:[1,121]}),r(Z,[2,77]),r(Z,[2,78],{69:[1,122]}),r(Ee,[2,52]),{47:123,51:Ze},r(Z,[2,40]),{48:[2,44]},r(Z,[2,71]),r(Z,[2,75]),r(Z,[2,79]),{48:[1,124]},r(Z,[2,41])],defaultActions:{2:[2,1],3:[2,2],4:[2,3],6:[2,9],13:[2,12],14:[2,4],20:[2,15],54:[2,14],55:[2,16],85:[2,19],119:[2,44]},parseError:function(xe,Ae){if(Ae.recoverable)this.trace(xe);else{var je=new Error(xe);throw je.hash=Ae,je}},parse:function(xe){var Ae=this,je=[0],me=[],vt=[null],ve=[],Zt=this.table,nt="",xn=0,cn=0,jt=2,ot=1,be=ve.slice.call(arguments,1),We=Object.create(this.lexer),ct={yy:{}};for(var Yt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Yt)&&(ct.yy[Yt]=this.yy[Yt]);We.setInput(xe,ct.yy),ct.yy.lexer=We,ct.yy.parser=this,typeof We.yylloc>"u"&&(We.yylloc={});var Ut=We.yylloc;ve.push(Ut);var Wn=We.options&&We.options.ranges;typeof ct.yy.parseError=="function"?this.parseError=ct.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Gt(){var Pt;return Pt=me.pop()||We.lex()||ot,typeof Pt!="number"&&(Pt instanceof Array&&(me=Pt,Pt=me.pop()),Pt=Ae.symbols_[Pt]||Pt),Pt}for(var Rn,si,$r,nr,Kn={},Jt,en,In,hn;;){if(si=je[je.length-1],this.defaultActions[si]?$r=this.defaultActions[si]:((Rn===null||typeof Rn>"u")&&(Rn=Gt()),$r=Zt[si]&&Zt[si][Rn]),typeof $r>"u"||!$r.length||!$r[0]){var Fr="";hn=[];for(Jt in Zt[si])this.terminals_[Jt]&&Jt>jt&&hn.push("'"+this.terminals_[Jt]+"'");We.showPosition?Fr="Parse error on line "+(xn+1)+`:
-`+We.showPosition()+`
-Expecting `+hn.join(", ")+", got '"+(this.terminals_[Rn]||Rn)+"'":Fr="Parse error on line "+(xn+1)+": Unexpected "+(Rn==ot?"end of input":"'"+(this.terminals_[Rn]||Rn)+"'"),this.parseError(Fr,{text:We.match,token:this.terminals_[Rn]||Rn,line:We.yylineno,loc:Ut,expected:hn})}if($r[0]instanceof Array&&$r.length>1)throw new Error("Parse Error: multiple actions possible at state: "+si+", token: "+Rn);switch($r[0]){case 1:je.push(Rn),vt.push(We.yytext),ve.push(We.yylloc),je.push($r[1]),Rn=null,cn=We.yyleng,nt=We.yytext,xn=We.yylineno,Ut=We.yylloc;break;case 2:if(en=this.productions_[$r[1]][1],Kn.$=vt[vt.length-en],Kn._$={first_line:ve[ve.length-(en||1)].first_line,last_line:ve[ve.length-1].last_line,first_column:ve[ve.length-(en||1)].first_column,last_column:ve[ve.length-1].last_column},Wn&&(Kn._$.range=[ve[ve.length-(en||1)].range[0],ve[ve.length-1].range[1]]),nr=this.performAction.apply(Kn,[nt,cn,xn,ct.yy,$r[1],vt,ve].concat(be)),typeof nr<"u")return nr;en&&(je=je.slice(0,-1*en*2),vt=vt.slice(0,-1*en),ve=ve.slice(0,-1*en)),je.push(this.productions_[$r[1]][0]),vt.push(Kn.$),ve.push(Kn._$),In=Zt[je[je.length-2]][je[je.length-1]],je.push(In);break;case 3:return!0}}return!0}},Oe=function(){var $e={EOF:1,parseError:function(Ae,je){if(this.yy.parser)this.yy.parser.parseError(Ae,je);else throw new Error(Ae)},setInput:function(xe,Ae){return this.yy=Ae||this.yy||{},this._input=xe,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 xe=this._input[0];this.yytext+=xe,this.yyleng++,this.offset++,this.match+=xe,this.matched+=xe;var Ae=xe.match(/(?:\r\n?|\n).*/g);return Ae?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),xe},unput:function(xe){var Ae=xe.length,je=xe.split(/(?:\r\n?|\n)/g);this._input=xe+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Ae),this.offset-=Ae;var me=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),je.length-1&&(this.yylineno-=je.length-1);var vt=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:je?(je.length===me.length?this.yylloc.first_column:0)+me[me.length-je.length].length-je[0].length:this.yylloc.first_column-Ae},this.options.ranges&&(this.yylloc.range=[vt[0],vt[0]+this.yyleng-Ae]),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(xe){this.unput(this.match.slice(xe))},pastInput:function(){var xe=this.matched.substr(0,this.matched.length-this.match.length);return(xe.length>20?"...":"")+xe.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var xe=this.match;return xe.length<20&&(xe+=this._input.substr(0,20-xe.length)),(xe.substr(0,20)+(xe.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var xe=this.pastInput(),Ae=new Array(xe.length+1).join("-");return xe+this.upcomingInput()+`
-`+Ae+"^"},test_match:function(xe,Ae){var je,me,vt;if(this.options.backtrack_lexer&&(vt={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&&(vt.yylloc.range=this.yylloc.range.slice(0))),me=xe[0].match(/(?:\r\n?|\n).*/g),me&&(this.yylineno+=me.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:me?me[me.length-1].length-me[me.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+xe[0].length},this.yytext+=xe[0],this.match+=xe[0],this.matches=xe,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(xe[0].length),this.matched+=xe[0],je=this.performAction.call(this,this.yy,this,Ae,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),je)return je;if(this._backtrack){for(var ve in vt)this[ve]=vt[ve];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var xe,Ae,je,me;this._more||(this.yytext="",this.match="");for(var vt=this._currentRules(),ve=0;veAe[0].length)){if(Ae=je,me=ve,this.options.backtrack_lexer){if(xe=this.test_match(je,vt[ve]),xe!==!1)return xe;if(this._backtrack){Ae=!1;continue}else return!1}else if(!this.options.flex)break}return Ae?(xe=this.test_match(Ae,vt[me]),xe!==!1?xe:!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 Ae=this.next();return Ae||this.lex()},begin:function(Ae){this.conditionStack.push(Ae)},popState:function(){var Ae=this.conditionStack.length-1;return Ae>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(Ae){return Ae=this.conditionStack.length-1-Math.abs(Ae||0),Ae>=0?this.conditionStack[Ae]:"INITIAL"},pushState:function(Ae){this.begin(Ae)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Ae,je,me,vt){switch(me){case 0:return this.begin("open_directive"),19;case 1:return 8;case 2:return 9;case 3:return 10;case 4:return 11;case 5:return this.begin("type_directive"),20;case 6:return this.popState(),this.begin("arg_directive"),17;case 7:return this.popState(),this.popState(),22;case 8:return 21;case 9:break;case 10:break;case 11:return this.begin("acc_title"),39;case 12:return this.popState(),"acc_title_value";case 13:return this.begin("acc_descr"),41;case 14:return this.popState(),"acc_descr_value";case 15:this.begin("acc_descr_multiline");break;case 16:this.popState();break;case 17:return"acc_descr_multiline_value";case 18:return 16;case 19:break;case 20:return 23;case 21:return 23;case 22:return this.begin("struct"),46;case 23:return"EDGE_STATE";case 24:return"EOF_IN_STRUCT";case 25:return"OPEN_IN_STRUCT";case 26:return this.popState(),48;case 27:break;case 28:return"MEMBER";case 29:return 44;case 30:return 74;case 31:return 67;case 32:return 68;case 33:return 70;case 34:return 55;case 35:return 57;case 36:return 49;case 37:return 50;case 38:this.begin("generic");break;case 39:this.popState();break;case 40:return"GENERICTYPE";case 41:this.begin("string");break;case 42:this.popState();break;case 43:return"STR";case 44:this.begin("bqstring");break;case 45:this.popState();break;case 46:return"BQUOTE_STR";case 47:this.begin("href");break;case 48:this.popState();break;case 49:return 73;case 50:this.begin("callback_name");break;case 51:this.popState();break;case 52:this.popState(),this.begin("callback_args");break;case 53:return 71;case 54:this.popState();break;case 55:return 72;case 56:return 69;case 57:return 69;case 58:return 69;case 59:return 69;case 60:return 61;case 61:return 61;case 62:return 63;case 63:return 63;case 64:return 62;case 65:return 60;case 66:return 64;case 67:return 65;case 68:return 66;case 69:return 32;case 70:return 45;case 71:return 86;case 72:return"DOT";case 73:return"PLUS";case 74:return 83;case 75:return"EQUALS";case 76:return"EQUALS";case 77:return 90;case 78:return"PUNCTUATION";case 79:return 89;case 80:return 88;case 81:return 85;case 82:return 25}},rules:[/^(?:%%\{)/,/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:classDiagram-v2\b)/,/^(?:classDiagram\b)/,/^(?:[{])/,/^(?:\[\*\])/,/^(?:$)/,/^(?:[{])/,/^(?:[}])/,/^(?:[\n])/,/^(?:[^{}\n]*)/,/^(?:class\b)/,/^(?:cssClass\b)/,/^(?:callback\b)/,/^(?:link\b)/,/^(?:click\b)/,/^(?:note for\b)/,/^(?:note\b)/,/^(?:<<)/,/^(?:>>)/,/^(?:[~])/,/^(?:[~])/,/^(?:[^~]*)/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[`])/,/^(?:[`])/,/^(?:[^`]+)/,/^(?:href[\s]+["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:call[\s]+)/,/^(?:\([\s]*\))/,/^(?:\()/,/^(?:[^(]*)/,/^(?:\))/,/^(?:[^)]*)/,/^(?:_self\b)/,/^(?:_blank\b)/,/^(?:_parent\b)/,/^(?:_top\b)/,/^(?:\s*<\|)/,/^(?:\s*\|>)/,/^(?:\s*>)/,/^(?:\s*<)/,/^(?:\s*\*)/,/^(?:\s*o\b)/,/^(?:\s*\(\))/,/^(?:--)/,/^(?:\.\.)/,/^(?::{1}[^:\n;]+)/,/^(?::{3})/,/^(?:-)/,/^(?:\.)/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:\w+)/,/^(?:[!"#$%&'*+,-.`?\\/])/,/^(?:[0-9]+)/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\s)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[16,17],inclusive:!1},acc_descr:{rules:[14],inclusive:!1},acc_title:{rules:[12],inclusive:!1},arg_directive:{rules:[7,8],inclusive:!1},type_directive:{rules:[6,7],inclusive:!1},open_directive:{rules:[5],inclusive:!1},callback_args:{rules:[54,55],inclusive:!1},callback_name:{rules:[51,52,53],inclusive:!1},href:{rules:[48,49],inclusive:!1},struct:{rules:[23,24,25,26,27,28],inclusive:!1},generic:{rules:[39,40],inclusive:!1},bqstring:{rules:[45,46],inclusive:!1},string:{rules:[42,43],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,9,10,11,13,15,18,19,20,21,22,23,29,30,31,32,33,34,35,36,37,38,41,44,47,50,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82],inclusive:!0}}};return $e}();Ie.lexer=Oe;function Le(){this.yy={}}return Le.prototype=Ie,Ie.Parser=Le,new Le}();Rae.parser=Rae;const RSe=Rae,nHt=(r,i)=>{var o;return((o=i==null?void 0:i.class)==null?void 0:o.defaultRenderer)==="dagre-wrapper"?!1:r.match(/^\s*classDiagram/)!==null},rHt=(r,i)=>{var o;return r.match(/^\s*classDiagram/)!==null&&((o=i==null?void 0:i.class)==null?void 0:o.defaultRenderer)==="dagre-wrapper"?!0:r.match(/^\s*classDiagram-v2/)!==null},jae="classid-";let $ae=[],ah={},oV=[],jSe=0,wI=[];const mI=r=>Cs.sanitizeText(r,ht()),iHt=function(r,i,o){Bu.parseDirective(this,r,i,o)},yI=function(r){let i="",o=r;if(r.indexOf("~")>0){let l=r.split("~");o=l[0],i=Cs.sanitizeText(l[1],ht())}return{className:o,type:i}},Hae=function(r){let i=yI(r);ah[i.className]===void 0&&(ah[i.className]={id:i.className,type:i.type,cssClasses:[],methods:[],members:[],annotations:[],domId:jae+i.className+"-"+jSe},jSe++)},$Se=function(r){const i=Object.keys(ah);for(const o of i)if(ah[o].id===r)return ah[o].domId},sHt=function(){$ae=[],ah={},oV=[],wI=[],wI.push(zSe),W0()},aHt=function(r){return ah[r]},oHt=function(){return ah},cHt=function(){return $ae},uHt=function(){return oV},lHt=function(r){Se.debug("Adding relation: "+JSON.stringify(r)),Hae(r.id1),Hae(r.id2),r.id1=yI(r.id1).className,r.id2=yI(r.id2).className,r.relationTitle1=Cs.sanitizeText(r.relationTitle1.trim(),ht()),r.relationTitle2=Cs.sanitizeText(r.relationTitle2.trim(),ht()),$ae.push(r)},hHt=function(r,i){const o=yI(r).className;ah[o].annotations.push(i)},HSe=function(r,i){const o=yI(r).className,l=ah[o];if(typeof i=="string"){const f=i.trim();f.startsWith("<<")&&f.endsWith(">>")?l.annotations.push(mI(f.substring(2,f.length-2))):f.indexOf(")")>0?l.methods.push(mI(f)):f&&l.members.push(mI(f))}},fHt=function(r,i){Array.isArray(i)&&(i.reverse(),i.forEach(o=>HSe(r,o)))},dHt=function(r,i){const o={id:`note${oV.length}`,class:i,text:r};oV.push(o)},gHt=function(r){return r.substring(0,1)===":"?Cs.sanitizeText(r.substr(1).trim(),ht()):mI(r.trim())},zae=function(r,i){r.split(",").forEach(function(o){let l=o;o[0].match(/\d/)&&(l=jae+l),ah[l]!==void 0&&ah[l].cssClasses.push(i)})},pHt=function(r,i){const o=ht();r.split(",").forEach(function(l){i!==void 0&&(ah[l].tooltip=Cs.sanitizeText(i,o))})},bHt=function(r){return ah[r].tooltip},vHt=function(r,i,o){const l=ht();r.split(",").forEach(function(f){let b=f;f[0].match(/\d/)&&(b=jae+b),ah[b]!==void 0&&(ah[b].link=Fs.formatUrl(i,l),l.securityLevel==="sandbox"?ah[b].linkTarget="_top":typeof o=="string"?ah[b].linkTarget=mI(o):ah[b].linkTarget="_blank")}),zae(r,"clickable")},wHt=function(r,i,o){r.split(",").forEach(function(l){mHt(l,i,o),ah[l].haveCallback=!0}),zae(r,"clickable")},mHt=function(r,i,o){const l=ht();let f=r,b=$Se(f);if(l.securityLevel==="loose"&&i!==void 0&&ah[f]!==void 0){let d=[];if(typeof o=="string"){d=o.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let w=0;w")),f.classed("hover",!0)}).on("mouseout",function(){i.transition().duration(500).style("opacity",0),Cn(this).classed("hover",!1)})};wI.push(zSe);let GSe="TB";const iC={parseDirective:iHt,setAccTitle:K0,getAccTitle:hp,getAccDescription:dp,setAccDescription:fp,getConfig:()=>ht().class,addClass:Hae,bindFunctions:yHt,clear:sHt,getClass:aHt,getClasses:oHt,getNotes:uHt,addAnnotation:hHt,addNote:dHt,getRelations:cHt,addRelation:lHt,getDirection:()=>GSe,setDirection:r=>{GSe=r},addMember:HSe,addMembers:fHt,cleanupLabel:gHt,lineType:kHt,relationType:xHt,setClickEvent:wHt,setCssClass:zae,setLink:vHt,getTooltip:bHt,setTooltip:pHt,lookUpDomId:$Se,setDiagramTitle:Ov,getDiagramTitle:Nv};function jm(r){return r!=null&&typeof r=="object"}var EHt="[object Symbol]";function r7(r){return typeof r=="symbol"||jm(r)&&Y8(r)==EHt}function sC(r,i){for(var o=-1,l=r==null?0:r.length,f=Array(l);++o0){if(++i>=zHt)return arguments[0]}else i=0;return r.apply(void 0,arguments)}}function aC(r){return function(){return r}}var qHt=function(){try{var r=K8(Object,"defineProperty");return r({},"",{}),r}catch{}}();const uV=qHt;var YHt=uV?function(r,i){return uV(r,"toString",{configurable:!0,enumerable:!1,value:aC(i),writable:!0})}:i7,WHt=UHt(YHt);const QSe=WHt;function ZSe(r,i){for(var o=-1,l=r==null?0:r.length;++o-1}var JHt=9007199254740991,ezt=/^(?:0|[1-9]\d*)$/;function lV(r,i){var o=typeof r;return i=i==null?JHt:i,!!i&&(o=="number"||o!="symbol"&&ezt.test(r))&&r>-1&&r%1==0&&r-1&&r%1==0&&r<=rzt}function p6(r){return r!=null&&Vae(r.length)&&!QT(r)}function xI(r,i,o){if(!lp(o))return!1;var l=typeof i;return(l=="number"?p6(o)&&lV(i,o.length):l=="string"&&i in o)?ZT(o[i],r):!1}function izt(r){return dV(function(i,o){var l=-1,f=o.length,b=f>1?o[f-1]:void 0,d=f>2?o[2]:void 0;for(b=r.length>3&&typeof b=="function"?(f--,b):void 0,d&&xI(o[0],o[1],d)&&(b=f<3?void 0:b,f=1),i=Object(i);++l0&&o(w)?i>1?mV(w,i-1,o,l,f):Yae(f,w):l||(f[f.length]=w)}return f}function lC(r){var i=r==null?0:r.length;return i?mV(r,1):[]}function lGt(r){return QSe(tAe(r,void 0,lC),r+"")}var hGt=lAe(Object.getPrototypeOf,Object);const Wae=hGt;var fGt="[object Object]",dGt=Function.prototype,gGt=Object.prototype,gAe=dGt.toString,pGt=gGt.hasOwnProperty,bGt=gAe.call(Object);function pAe(r){if(!jm(r)||Y8(r)!=fGt)return!1;var i=Wae(r);if(i===null)return!0;var o=pGt.call(i,"constructor")&&i.constructor;return typeof o=="function"&&o instanceof o&&gAe.call(o)==bGt}function vGt(r,i,o,l){var f=-1,b=r==null?0:r.length;for(l&&b&&(o=r[++f]);++fw))return!1;var k=b.get(r),E=b.get(i);if(k&&E)return k==i&&E==r;var T=-1,C=!0,S=o&cUt?new CI:void 0;for(b.set(r,i),b.set(i,r);++T2?i[2]:void 0;for(f&&xI(i[0],i[1],f)&&(l=1);++o-1?f[b?i[d]:d]:void 0}}var tqt=Math.max;function nqt(r,i,o){var l=r==null?0:r.length;if(!l)return-1;var f=o==null?0:BHt(o);return f<0&&(f=tqt(l+f,0)),JSe(r,b6(i),f)}var rqt=eqt(nqt);const aoe=rqt;function nMe(r,i){var o=-1,l=p6(r)?Array(r.length):[];return xV(r,function(f,b,d){l[++o]=i(f,b,d)}),l}function Hh(r,i){var o=$h(r)?sC:nMe;return o(r,b6(i))}function iqt(r,i){return r==null?r:roe(r,tMe(i),s7)}function sqt(r,i){return r>i}var aqt=Object.prototype,oqt=aqt.hasOwnProperty;function cqt(r,i){return r!=null&&oqt.call(r,i)}function Ks(r,i){return r!=null&&WAe(r,i,cqt)}function uqt(r,i){return sC(i,function(o){return r[o]})}function Z3(r){return r==null?[]:uqt(r,pp(r))}var lqt="[object Map]",hqt="[object Set]",fqt=Object.prototype,dqt=fqt.hasOwnProperty;function gC(r){if(r==null)return!0;if(p6(r)&&($h(r)||typeof r=="string"||typeof r.splice=="function"||cC(r)||bV(r)||oC(r)))return!r.length;var i=fC(r);if(i==lqt||i==hqt)return!r.size;if(gV(r))return!hAe(r).length;for(var o in r)if(dqt.call(r,o))return!1;return!0}function oh(r){return r===void 0}function rMe(r,i){return ri||b&&d&&y&&!w&&!k||l&&d&&y||!o&&y||!f)return 1;if(!l&&!b&&!k&&r=w)return y;var k=o[l];return y*(k=="desc"?-1:1)}}return r.index-i.index}function yqt(r,i,o){i.length?i=sC(i,function(b){return $h(b)?function(d){return wV(d,b.length===1?b[0]:b)}:b}):i=[i7];var l=-1;i=sC(i,pV(b6));var f=nMe(r,function(b,d,w){var y=sC(i,function(k){return k(b)});return{criteria:y,index:++l,value:b}});return vqt(f,function(b,d){return mqt(b,d,o)})}function kqt(r,i){return bqt(r,i,function(o,l){return KAe(r,l)})}var xqt=lGt(function(r,i){return r==null?{}:kqt(r,i)});const AI=xqt;var Eqt=Math.ceil,_qt=Math.max;function Tqt(r,i,o,l){for(var f=-1,b=_qt(Eqt((i-r)/(o||1)),0),d=Array(b);b--;)d[l?b:++f]=r,r+=o;return d}function Cqt(r){return function(i,o,l){return l&&typeof l!="number"&&xI(i,o,l)&&(o=l=void 0),i=cV(i),o===void 0?(o=i,i=0):o=cV(o),l=l===void 0?i1&&xI(r,i[0],i[1])?i=[]:o>2&&xI(i[0],i[1],i[2])&&(i=[i[0]]),yqt(r,mV(i,1),[])});const DI=Mqt;var Dqt=1/0,Lqt=hC&&1/eoe(new hC([,-0]))[1]==Dqt?function(r){return new hC(r)}:HHt;const Iqt=Lqt;var Oqt=200;function Nqt(r,i,o){var l=-1,f=ZHt,b=r.length,d=!0,w=[],y=w;if(o)d=!1,f=ZUt;else if(b>=Oqt){var k=i?null:Iqt(r);if(k)return eoe(k);d=!1,f=$Ae,y=new CI}else y=i?[]:w;e:for(;++l1?f.setNode(b,o):f.setNode(b)}),this}setNode(i,o){return Ks(this._nodes,i)?(arguments.length>1&&(this._nodes[i]=o),this):(this._nodes[i]=arguments.length>1?o:this._defaultNodeLabelFn(i),this._isCompound&&(this._parent[i]=u7,this._children[i]={},this._children[u7][i]=!0),this._in[i]={},this._preds[i]={},this._out[i]={},this._sucs[i]={},++this._nodeCount,this)}node(i){return this._nodes[i]}hasNode(i){return Ks(this._nodes,i)}removeNode(i){var o=this;if(Ks(this._nodes,i)){var l=function(f){o.removeEdge(o._edgeObjs[f])};delete this._nodes[i],this._isCompound&&(this._removeFromParentsChildList(i),delete this._parent[i],Mn(this.children(i),function(f){o.setParent(f)}),delete this._children[i]),Mn(pp(this._in[i]),l),delete this._in[i],delete this._preds[i],Mn(pp(this._out[i]),l),delete this._out[i],delete this._sucs[i],--this._nodeCount}return this}setParent(i,o){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(oh(o))o=u7;else{o+="";for(var l=o;!oh(l);l=this.parent(l))if(l===i)throw new Error("Setting "+o+" as parent of "+i+" would create a cycle");this.setNode(o)}return this.setNode(i),this._removeFromParentsChildList(i),this._parent[i]=o,this._children[o][i]=!0,this}_removeFromParentsChildList(i){delete this._children[this._parent[i]][i]}parent(i){if(this._isCompound){var o=this._parent[i];if(o!==u7)return o}}children(i){if(oh(i)&&(i=u7),this._isCompound){var o=this._children[i];if(o)return pp(o)}else{if(i===u7)return this.nodes();if(this.hasNode(i))return[]}}predecessors(i){var o=this._preds[i];if(o)return pp(o)}successors(i){var o=this._sucs[i];if(o)return pp(o)}neighbors(i){var o=this.predecessors(i);if(o)return Bqt(o,this.successors(i))}isLeaf(i){var o;return this.isDirected()?o=this.successors(i):o=this.neighbors(i),o.length===0}filterNodes(i){var o=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});o.setGraph(this.graph());var l=this;Mn(this._nodes,function(d,w){i(w)&&o.setNode(w,d)}),Mn(this._edgeObjs,function(d){o.hasNode(d.v)&&o.hasNode(d.w)&&o.setEdge(d,l.edge(d))});var f={};function b(d){var w=l.parent(d);return w===void 0||o.hasNode(w)?(f[d]=w,w):w in f?f[w]:b(w)}return this._isCompound&&Mn(o.nodes(),function(d){o.setParent(d,b(d))}),o}setDefaultEdgeLabel(i){return QT(i)||(i=aC(i)),this._defaultEdgeLabelFn=i,this}edgeCount(){return this._edgeCount}edges(){return Z3(this._edgeObjs)}setPath(i,o){var l=this,f=arguments;return MI(i,function(b,d){return f.length>1?l.setEdge(b,d,o):l.setEdge(b,d),d}),this}setEdge(){var i,o,l,f,b=!1,d=arguments[0];typeof d=="object"&&d!==null&&"v"in d?(i=d.v,o=d.w,l=d.name,arguments.length===2&&(f=arguments[1],b=!0)):(i=d,o=arguments[1],l=arguments[3],arguments.length>2&&(f=arguments[2],b=!0)),i=""+i,o=""+o,oh(l)||(l=""+l);var w=LI(this._isDirected,i,o,l);if(Ks(this._edgeLabels,w))return b&&(this._edgeLabels[w]=f),this;if(!oh(l)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(i),this.setNode(o),this._edgeLabels[w]=b?f:this._defaultEdgeLabelFn(i,o,l);var y=Hqt(this._isDirected,i,o,l);return i=y.v,o=y.w,Object.freeze(y),this._edgeObjs[w]=y,sMe(this._preds[o],i),sMe(this._sucs[i],o),this._in[o][w]=y,this._out[i][w]=y,this._edgeCount++,this}edge(i,o,l){var f=arguments.length===1?loe(this._isDirected,arguments[0]):LI(this._isDirected,i,o,l);return this._edgeLabels[f]}hasEdge(i,o,l){var f=arguments.length===1?loe(this._isDirected,arguments[0]):LI(this._isDirected,i,o,l);return Ks(this._edgeLabels,f)}removeEdge(i,o,l){var f=arguments.length===1?loe(this._isDirected,arguments[0]):LI(this._isDirected,i,o,l),b=this._edgeObjs[f];return b&&(i=b.v,o=b.w,delete this._edgeLabels[f],delete this._edgeObjs[f],aMe(this._preds[o],i),aMe(this._sucs[i],o),delete this._in[o][f],delete this._out[i][f],this._edgeCount--),this}inEdges(i,o){var l=this._in[i];if(l){var f=Z3(l);return o?Q3(f,function(b){return b.v===o}):f}}outEdges(i,o){var l=this._out[i];if(l){var f=Z3(l);return o?Q3(f,function(b){return b.w===o}):f}}nodeEdges(i,o){var l=this.inEdges(i,o);if(l)return l.concat(this.outEdges(i,o))}}zh.prototype._nodeCount=0,zh.prototype._edgeCount=0;function sMe(r,i){r[i]?r[i]++:r[i]=1}function aMe(r,i){--r[i]||delete r[i]}function LI(r,i,o,l){var f=""+i,b=""+o;if(!r&&f>b){var d=f;f=b,b=d}return f+iMe+b+iMe+(oh(l)?$qt:l)}function Hqt(r,i,o,l){var f=""+i,b=""+o;if(!r&&f>b){var d=f;f=b,b=d}var w={v:f,w:b};return l&&(w.name=l),w}function loe(r,i){return LI(r,i.v,i.w,i.name)}class zqt{constructor(){var i={};i._next=i._prev=i,this._sentinel=i}dequeue(){var i=this._sentinel,o=i._prev;if(o!==i)return oMe(o),o}enqueue(i){var o=this._sentinel;i._prev&&i._next&&oMe(i),i._next=o._next,o._next._prev=i,o._next=i,i._prev=o}toString(){for(var i=[],o=this._sentinel,l=o._prev;l!==o;)i.push(JSON.stringify(l,Gqt)),l=l._prev;return"["+i.join(", ")+"]"}}function oMe(r){r._prev._next=r._next,r._next._prev=r._prev,delete r._next,delete r._prev}function Gqt(r,i){if(r!=="_next"&&r!=="_prev")return i}var Vqt=aC(1);function Uqt(r,i){if(r.nodeCount()<=1)return[];var o=Yqt(r,i||Vqt),l=qqt(o.graph,o.buckets,o.zeroIdx);return lC(Hh(l,function(f){return r.outEdges(f.v,f.w)}))}function qqt(r,i,o){for(var l=[],f=i[i.length-1],b=i[0],d;r.nodeCount();){for(;d=b.dequeue();)hoe(r,i,o,d);for(;d=f.dequeue();)hoe(r,i,o,d);if(r.nodeCount()){for(var w=i.length-2;w>0;--w)if(d=i[w].dequeue(),d){l=l.concat(hoe(r,i,o,d,!0));break}}}return l}function hoe(r,i,o,l,f){var b=f?[]:void 0;return Mn(r.inEdges(l.v),function(d){var w=r.edge(d),y=r.node(d.v);f&&b.push({v:d.v,w:d.w}),y.out-=w,foe(i,o,y)}),Mn(r.outEdges(l.v),function(d){var w=r.edge(d),y=d.w,k=r.node(y);k.in-=w,foe(i,o,k)}),r.removeNode(l.v),b}function Yqt(r,i){var o=new zh,l=0,f=0;Mn(r.nodes(),function(w){o.setNode(w,{v:w,in:0,out:0})}),Mn(r.edges(),function(w){var y=o.edge(w.v,w.w)||0,k=i(w),E=y+k;o.setEdge(w.v,w.w,E),f=Math.max(f,o.node(w.v).out+=k),l=Math.max(l,o.node(w.w).in+=k)});var b=c7(f+l+3).map(function(){return new zqt}),d=l+1;return Mn(o.nodes(),function(w){foe(b,d,o.node(w))}),{graph:o,buckets:b,zeroIdx:d}}function foe(r,i,o){o.out?o.in?r[o.out-o.in+i].enqueue(o):r[r.length-1].enqueue(o):r[0].enqueue(o)}function Wqt(r){var i=r.graph().acyclicer==="greedy"?Uqt(r,o(r)):Kqt(r);Mn(i,function(l){var f=r.edge(l);r.removeEdge(l),f.forwardName=l.name,f.reversed=!0,r.setEdge(l.w,l.v,f,TV("rev"))});function o(l){return function(f){return l.edge(f).weight}}}function Kqt(r){var i=[],o={},l={};function f(b){Ks(l,b)||(l[b]=!0,o[b]=!0,Mn(r.outEdges(b),function(d){Ks(o,d.w)?i.push(d):f(d.w)}),delete o[b])}return Mn(r.nodes(),f),i}function Xqt(r){Mn(r.edges(),function(i){var o=r.edge(i);if(o.reversed){r.removeEdge(i);var l=o.forwardName;delete o.reversed,delete o.forwardName,r.setEdge(i.w,i.v,o,l)}})}function pC(r,i,o,l){var f;do f=TV(l);while(r.hasNode(f));return o.dummy=i,r.setNode(f,o),f}function Qqt(r){var i=new zh().setGraph(r.graph());return Mn(r.nodes(),function(o){i.setNode(o,r.node(o))}),Mn(r.edges(),function(o){var l=i.edge(o.v,o.w)||{weight:0,minlen:1},f=r.edge(o);i.setEdge(o.v,o.w,{weight:l.weight+f.weight,minlen:Math.max(l.minlen,f.minlen)})}),i}function cMe(r){var i=new zh({multigraph:r.isMultigraph()}).setGraph(r.graph());return Mn(r.nodes(),function(o){r.children(o).length||i.setNode(o,r.node(o))}),Mn(r.edges(),function(o){i.setEdge(o,r.edge(o))}),i}function uMe(r,i){var o=r.x,l=r.y,f=i.x-o,b=i.y-l,d=r.width/2,w=r.height/2;if(!f&&!b)throw new Error("Not possible to find intersection inside of the rectangle");var y,k;return Math.abs(b)*d>Math.abs(f)*w?(b<0&&(w=-w),y=w*f/b,k=w):(f<0&&(d=-d),y=d,k=d*b/f),{x:o+y,y:l+k}}function CV(r){var i=Hh(c7(hMe(r)+1),function(){return[]});return Mn(r.nodes(),function(o){var l=r.node(o),f=l.rank;oh(f)||(i[f][l.order]=o)}),i}function Zqt(r){var i=SI(Hh(r.nodes(),function(o){return r.node(o).rank}));Mn(r.nodes(),function(o){var l=r.node(o);Ks(l,"rank")&&(l.rank-=i)})}function Jqt(r){var i=SI(Hh(r.nodes(),function(b){return r.node(b).rank})),o=[];Mn(r.nodes(),function(b){var d=r.node(b).rank-i;o[d]||(o[d]=[]),o[d].push(b)});var l=0,f=r.graph().nodeRankFactor;Mn(o,function(b,d){oh(b)&&d%f!==0?--l:l&&Mn(b,function(w){r.node(w).rank+=l})})}function lMe(r,i,o,l){var f={width:0,height:0};return arguments.length>=4&&(f.rank=o,f.order=l),pC(r,"border",f,i)}function hMe(r){return o7(Hh(r.nodes(),function(i){var o=r.node(i).rank;if(!oh(o))return o}))}function eYt(r,i){var o={lhs:[],rhs:[]};return Mn(r,function(l){i(l)?o.lhs.push(l):o.rhs.push(l)}),o}function tYt(r,i){var o=QAe();try{return i()}finally{console.log(r+" time: "+(QAe()-o)+"ms")}}function nYt(r,i){return i()}function rYt(r){function i(o){var l=r.children(o),f=r.node(o);if(l.length&&Mn(l,i),Ks(f,"minRank")){f.borderLeft=[],f.borderRight=[];for(var b=f.minRank,d=f.maxRank+1;b0;)E%2&&(T+=w[E+1]),E=E-1>>1,w[E]+=k.weight;y+=k.weight*T})),y}function vYt(r){var i={},o=Q3(r.nodes(),function(w){return!r.children(w).length}),l=o7(Hh(o,function(w){return r.node(w).rank})),f=Hh(c7(l+1),function(){return[]});function b(w){if(!Ks(i,w)){i[w]=!0;var y=r.node(w);f[y.rank].push(w),Mn(r.successors(w),b)}}var d=DI(o,function(w){return r.node(w).rank});return Mn(d,b),f}function wYt(r,i){return Hh(i,function(o){var l=r.inEdges(o);if(l.length){var f=MI(l,function(b,d){var w=r.edge(d),y=r.node(d.v);return{sum:b.sum+w.weight*y.order,weight:b.weight+w.weight}},{sum:0,weight:0});return{v:o,barycenter:f.sum/f.weight,weight:f.weight}}else return{v:o}})}function mYt(r,i){var o={};Mn(r,function(f,b){var d=o[f.v]={indegree:0,in:[],out:[],vs:[f.v],i:b};oh(f.barycenter)||(d.barycenter=f.barycenter,d.weight=f.weight)}),Mn(i.edges(),function(f){var b=o[f.v],d=o[f.w];!oh(b)&&!oh(d)&&(d.indegree++,b.out.push(o[f.w]))});var l=Q3(o,function(f){return!f.indegree});return yYt(l)}function yYt(r){var i=[];function o(b){return function(d){d.merged||(oh(d.barycenter)||oh(b.barycenter)||d.barycenter>=b.barycenter)&&kYt(b,d)}}function l(b){return function(d){d.in.push(b),--d.indegree===0&&r.push(d)}}for(;r.length;){var f=r.pop();i.push(f),Mn(f.in.reverse(),o(f)),Mn(f.out,l(f))}return Hh(Q3(i,function(b){return!b.merged}),function(b){return AI(b,["vs","i","barycenter","weight"])})}function kYt(r,i){var o=0,l=0;r.weight&&(o+=r.barycenter*r.weight,l+=r.weight),i.weight&&(o+=i.barycenter*i.weight,l+=i.weight),r.vs=i.vs.concat(r.vs),r.barycenter=o/l,r.weight=l,r.i=Math.min(i.i,r.i),i.merged=!0}function xYt(r,i){var o=eYt(r,function(E){return Ks(E,"barycenter")}),l=o.lhs,f=DI(o.rhs,function(E){return-E.i}),b=[],d=0,w=0,y=0;l.sort(EYt(!!i)),y=bMe(b,f,y),Mn(l,function(E){y+=E.vs.length,b.push(E.vs),d+=E.barycenter*E.weight,w+=E.weight,y=bMe(b,f,y)});var k={vs:lC(b)};return w&&(k.barycenter=d/w,k.weight=w),k}function bMe(r,i,o){for(var l;i.length&&(l=EV(i)).i<=o;)i.pop(),r.push(l.vs),o++;return o}function EYt(r){return function(i,o){return i.barycentero.barycenter?1:r?o.i-i.i:i.i-o.i}}function vMe(r,i,o,l){var f=r.children(i),b=r.node(i),d=b?b.borderLeft:void 0,w=b?b.borderRight:void 0,y={};d&&(f=Q3(f,function(L){return L!==d&&L!==w}));var k=wYt(r,f);Mn(k,function(L){if(r.children(L.v).length){var O=vMe(r,L.v,o,l);y[L.v]=O,Ks(O,"barycenter")&&TYt(L,O)}});var E=mYt(k,o);_Yt(E,y);var T=xYt(E,l);if(d&&(T.vs=lC([d,T.vs,w]),r.predecessors(d).length)){var C=r.node(r.predecessors(d)[0]),S=r.node(r.predecessors(w)[0]);Ks(T,"barycenter")||(T.barycenter=0,T.weight=0),T.barycenter=(T.barycenter*T.weight+C.order+S.order)/(T.weight+2),T.weight+=2}return T}function _Yt(r,i){Mn(r,function(o){o.vs=lC(o.vs.map(function(l){return i[l]?i[l].vs:l}))})}function TYt(r,i){oh(r.barycenter)?(r.barycenter=i.barycenter,r.weight=i.weight):(r.barycenter=(r.barycenter*r.weight+i.barycenter*i.weight)/(r.weight+i.weight),r.weight+=i.weight)}function CYt(r){var i=hMe(r),o=wMe(r,c7(1,i+1),"inEdges"),l=wMe(r,c7(i-1,-1,-1),"outEdges"),f=vYt(r);mMe(r,f);for(var b=Number.POSITIVE_INFINITY,d,w=0,y=0;y<4;++w,++y){SYt(w%2?o:l,w%4>=2),f=CV(r);var k=pYt(r,f);kd||w>i[y].lim));for(k=y,y=l;(y=r.parent(y))!==k;)b.push(y);return{path:f.concat(b.reverse()),lca:k}}function DYt(r){var i={},o=0;function l(f){var b=o;Mn(r.children(f),l),i[f]={low:b,lim:o++}}return Mn(r.children(),l),i}function LYt(r,i){var o={};function l(f,b){var d=0,w=0,y=f.length,k=EV(b);return Mn(b,function(E,T){var C=OYt(r,E),S=C?r.node(C).order:y;(C||E===k)&&(Mn(b.slice(w,T+1),function(L){Mn(r.predecessors(L),function(O){var B=r.node(O),N=B.order;(Nk)&&yMe(o,C,E)})})}function f(b,d){var w=-1,y,k=0;return Mn(d,function(E,T){if(r.node(E).dummy==="border"){var C=r.predecessors(E);C.length&&(y=r.node(C[0]).order,l(d,k,T,w,y),k=T,w=y)}l(d,k,d.length,y,b.length)}),d}return MI(i,f),o}function OYt(r,i){if(r.node(i).dummy)return aoe(r.predecessors(i),function(o){return r.node(o).dummy})}function yMe(r,i,o){if(i>o){var l=i;i=o,o=l}var f=r[i];f||(r[i]=f={}),f[o]=!0}function NYt(r,i,o){if(i>o){var l=i;i=o,o=l}return Ks(r[i],o)}function PYt(r,i,o,l){var f={},b={},d={};return Mn(i,function(w){Mn(w,function(y,k){f[y]=y,b[y]=y,d[y]=k})}),Mn(i,function(w){var y=-1;Mn(w,function(k){var E=l(k);if(E.length){E=DI(E,function(O){return d[O]});for(var T=(E.length-1)/2,C=Math.floor(T),S=Math.ceil(T);C<=S;++C){var L=E[C];b[k]===k&&yd.lim&&(w=d,y=!0);var k=Q3(i.edges(),function(E){return y===MMe(r,r.node(E.v),w)&&y!==MMe(r,r.node(E.w),w)});return uoe(k,function(E){return II(i,E)})}function AMe(r,i,o,l){var f=o.v,b=o.w;r.removeEdge(f,b),r.setEdge(l.v,l.w,{}),moe(r),woe(r,i),TWt(r,i)}function TWt(r,i){var o=aoe(r.nodes(),function(f){return!i.node(f).parent}),l=EWt(r,o);l=l.slice(1),Mn(l,function(f){var b=r.node(f).parent,d=i.edge(f,b),w=!1;d||(d=i.edge(b,f),w=!0),i.node(f).rank=i.node(b).rank+(w?d.minlen:-d.minlen)})}function CWt(r,i,o){return r.hasEdge(i,o)}function MMe(r,i,o){return o.low<=i.lim&&i.lim<=o.lim}function SWt(r){switch(r.graph().ranker){case"network-simplex":DMe(r);break;case"tight-tree":MWt(r);break;case"longest-path":AWt(r);break;default:DMe(r)}}var AWt=voe;function MWt(r){voe(r),kMe(r)}function DMe(r){l7(r)}let LMe=0;const DWt=function(r,i,o,l,f){const b=function(F){switch(F){case f.db.relationType.AGGREGATION:return"aggregation";case f.db.relationType.EXTENSION:return"extension";case f.db.relationType.COMPOSITION:return"composition";case f.db.relationType.DEPENDENCY:return"dependency";case f.db.relationType.LOLLIPOP:return"lollipop"}};i.points=i.points.filter(F=>!Number.isNaN(F.y));const d=i.points,w=V8().x(function(F){return F.x}).y(function(F){return F.y}).curve(UT),y=r.append("path").attr("d",w(d)).attr("id","edge"+LMe).attr("class","relation");let k="";l.arrowMarkerAbsolute&&(k=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,k=k.replace(/\(/g,"\\("),k=k.replace(/\)/g,"\\)")),o.relation.lineType==1&&y.attr("class","relation dashed-line"),o.relation.lineType==10&&y.attr("class","relation dotted-line"),o.relation.type1!=="none"&&y.attr("marker-start","url("+k+"#"+b(o.relation.type1)+"Start)"),o.relation.type2!=="none"&&y.attr("marker-end","url("+k+"#"+b(o.relation.type2)+"End)");let E,T;const C=i.points.length;let S=Fs.calcLabelPosition(i.points);E=S.x,T=S.y;let L,O,B,N;if(C%2!==0&&C>1){let F=Fs.calcCardinalityPosition(o.relation.type1!=="none",i.points,i.points[0]),R=Fs.calcCardinalityPosition(o.relation.type2!=="none",i.points,i.points[C-1]);Se.debug("cardinality_1_point "+JSON.stringify(F)),Se.debug("cardinality_2_point "+JSON.stringify(R)),L=F.x,O=F.y,B=R.x,N=R.y}if(o.title!==void 0){const F=r.append("g").attr("class","classLabel"),R=F.append("text").attr("class","label").attr("x",E).attr("y",T).attr("fill","red").attr("text-anchor","middle").text(o.title);window.label=R;const q=R.node().getBBox();F.insert("rect",":first-child").attr("class","box").attr("x",q.x-l.padding/2).attr("y",q.y-l.padding/2).attr("width",q.width+l.padding).attr("height",q.height+l.padding)}Se.info("Rendering relation "+JSON.stringify(o)),o.relationTitle1!==void 0&&o.relationTitle1!=="none"&&r.append("g").attr("class","cardinality").append("text").attr("class","type1").attr("x",L).attr("y",O).attr("fill","black").attr("font-size","6").text(o.relationTitle1),o.relationTitle2!==void 0&&o.relationTitle2!=="none"&&r.append("g").attr("class","cardinality").append("text").attr("class","type2").attr("x",B).attr("y",N).attr("fill","black").attr("font-size","6").text(o.relationTitle2),LMe++},LWt=function(r,i,o,l){Se.debug("Rendering class ",i,o);const f=i.id,b={id:f,label:i.id,width:0,height:0},d=r.append("g").attr("id",l.db.lookUpDomId(f)).attr("class","classGroup");let w;i.link?w=d.append("svg:a").attr("xlink:href",i.link).attr("target",i.linkTarget).append("text").attr("y",o.textHeight+o.padding).attr("x",0):w=d.append("text").attr("y",o.textHeight+o.padding).attr("x",0);let y=!0;i.annotations.forEach(function(X){const te=w.append("tspan").text("\xAB"+X+"\xBB");y||te.attr("dy",o.textHeight),y=!1});let k=i.id;i.type!==void 0&&i.type!==""&&(k+="<"+i.type+">");const E=w.append("tspan").text(k).attr("class","title");y||E.attr("dy",o.textHeight);const T=w.node().getBBox().height,C=d.append("line").attr("x1",0).attr("y1",o.padding+T+o.dividerMargin/2).attr("y2",o.padding+T+o.dividerMargin/2),S=d.append("text").attr("x",o.padding).attr("y",T+o.dividerMargin+o.textHeight).attr("fill","white").attr("class","classText");y=!0,i.members.forEach(function(X){IMe(S,X,y,o),y=!1});const L=S.node().getBBox(),O=d.append("line").attr("x1",0).attr("y1",o.padding+T+o.dividerMargin+L.height).attr("y2",o.padding+T+o.dividerMargin+L.height),B=d.append("text").attr("x",o.padding).attr("y",T+2*o.dividerMargin+L.height+o.textHeight).attr("fill","white").attr("class","classText");y=!0,i.methods.forEach(function(X){IMe(B,X,y,o),y=!1});const N=d.node().getBBox();var F=" ";i.cssClasses.length>0&&(F=F+i.cssClasses.join(" "));const q=d.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",N.width+2*o.padding).attr("height",N.height+o.padding+.5*o.dividerMargin).attr("class",F).node().getBBox().width;return w.node().childNodes.forEach(function(X){X.setAttribute("x",(q-X.getBBox().width)/2)}),i.tooltip&&w.insert("title").text(i.tooltip),C.attr("x2",q),O.attr("x2",q),b.width=q,b.height=N.height+o.padding+.5*o.dividerMargin,b},IWt=function(r,i,o,l){Se.debug("Rendering note ",i,o);const f=i.id,b={id:f,text:i.text,width:0,height:0},d=r.append("g").attr("id",f).attr("class","classGroup");let w=d.append("text").attr("y",o.textHeight+o.padding).attr("x",0);const y=JSON.parse(`"${i.text}"`).split(`
-`);y.forEach(function(C){Se.debug(`Adding line: ${C}`),w.append("tspan").text(C).attr("class","title").attr("dy",o.textHeight)});const k=d.node().getBBox(),T=d.insert("rect",":first-child").attr("x",0).attr("y",0).attr("width",k.width+2*o.padding).attr("height",k.height+y.length*o.textHeight+o.padding+.5*o.dividerMargin).node().getBBox().width;return w.node().childNodes.forEach(function(C){C.setAttribute("x",(T-C.getBBox().width)/2)}),b.width=T,b.height=k.height+y.length*o.textHeight+o.padding+.5*o.dividerMargin,b},SV=function(r){const i=/^([#+~-])?(\w+)(~\w+~|\[])?\s+(\w+) *([$*])?$/,o=/^([#+|~-])?(\w+) *\( *(.*)\) *([$*])? *(\w*[[\]|~]*\s*\w*~?)$/;let l=r.match(i),f=r.match(o);return l&&!f?OWt(l):f?NWt(f):PWt(r)},OWt=function(r){let i="",o="";try{let l=r[1]?r[1].trim():"",f=r[2]?r[2].trim():"",b=r[3]?o6(r[3].trim()):"",d=r[4]?r[4].trim():"",w=r[5]?r[5].trim():"";o=l+f+b+" "+d,i=yoe(w)}catch{o=r}return{displayText:o,cssStyle:i}},NWt=function(r){let i="",o="";try{let l=r[1]?r[1].trim():"",f=r[2]?r[2].trim():"",b=r[3]?o6(r[3].trim()):"",d=r[4]?r[4].trim():"",w=r[5]?" : "+o6(r[5]).trim():"";o=l+f+"("+b+")"+w,i=yoe(d)}catch{o=r}return{displayText:o,cssStyle:i}},PWt=function(r){let i="",o="",l="",f=r.indexOf("("),b=r.indexOf(")");if(f>1&&b>f&&b<=r.length){let d="",w="",y=r.substring(0,1);y.match(/\w/)?w=r.substring(0,f).trim():(y.match(/[#+~-]/)&&(d=y),w=r.substring(1,f).trim());const k=r.substring(f+1,b);r.substring(b+1,1),o=yoe(r.substring(b+1,b+2)),i=d+w+"("+o6(k.trim())+")",bo[1].label===r);if(i)return i[0]},BWt=function(r){r.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"),r.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"),r.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"),r.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"),r.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"),r.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"),r.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"),r.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")},FWt={draw:function(r,i,o,l){const f=ht().class;AV={},Se.info("Rendering diagram "+r);const b=ht().securityLevel;let d;b==="sandbox"&&(d=Cn("#i"+i));const w=Cn(b==="sandbox"?d.nodes()[0].contentDocument.body:"body"),y=w.select(`[id='${i}']`);BWt(y);const k=new zh({multigraph:!0});k.setGraph({isMultiGraph:!0}),k.setDefaultEdgeLabel(function(){return{}});const E=l.db.getClasses(),T=Object.keys(E);for(const F of T){const R=E[F],q=koe.drawClass(y,R,f,l);AV[q.id]=q,k.setNode(q.id,q),Se.info("Org height: "+q.height)}l.db.getRelations().forEach(function(F){Se.info("tjoho"+OI(F.id1)+OI(F.id2)+JSON.stringify(F)),k.setEdge(OI(F.id1),OI(F.id2),{relation:F},F.title||"DEFAULT")}),l.db.getNotes().forEach(function(F){Se.debug(`Adding note: ${JSON.stringify(F)}`);const R=koe.drawNote(y,F,f,l);AV[R.id]=R,k.setNode(R.id,R),F.class&&F.class in E&&k.setEdge(F.id,OI(F.class),{relation:{id1:F.id,id2:F.class,relation:{type1:"none",type2:"none",lineType:10}}},"DEFAULT")}),bC(k),k.nodes().forEach(function(F){F!==void 0&&k.node(F)!==void 0&&(Se.debug("Node "+F+": "+JSON.stringify(k.node(F))),w.select("#"+(l.db.lookUpDomId(F)||F)).attr("transform","translate("+(k.node(F).x-k.node(F).width/2)+","+(k.node(F).y-k.node(F).height/2)+" )"))}),k.edges().forEach(function(F){F!==void 0&&k.edge(F)!==void 0&&(Se.debug("Edge "+F.v+" -> "+F.w+": "+JSON.stringify(k.edge(F))),koe.drawEdge(y,k.edge(F),k.edge(F).relation,f,l))});const L=y.node().getBBox(),O=L.width+MV*2,B=L.height+MV*2;Iv(y,B,O,f.useMaxWidth);const N=`${L.x-MV} ${L.y-MV} ${O} ${B}`;Se.debug(`viewBox ${N}`),y.attr("viewBox",N)}};function J3(r){var i={options:{directed:r.isDirected(),multigraph:r.isMultigraph(),compound:r.isCompound()},nodes:RWt(r),edges:jWt(r)};return oh(r.graph())||(i.value=JVt(r.graph())),i}function RWt(r){return Hh(r.nodes(),function(i){var o=r.node(i),l=r.parent(i),f={v:i};return oh(o)||(f.value=o),oh(l)||(f.parent=l),f})}function jWt(r){return Hh(r.edges(),function(i){var o=r.edge(i),l={v:i.v,w:i.w};return oh(i.name)||(l.name=i.name),oh(o)||(l.value=o),l})}const $Wt=(r,i,o,l)=>{i.forEach(f=>{HWt[f](r,o,l)})},HWt={extension:(r,i,o)=>{Se.trace("Making markers for ",o),r.append("defs").append("marker").attr("id",i+"-extensionStart").attr("class","marker extension "+i).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 1,7 L18,13 V 1 Z"),r.append("defs").append("marker").attr("id",i+"-extensionEnd").attr("class","marker extension "+i).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 1,1 V 13 L18,7 Z")},composition:(r,i)=>{r.append("defs").append("marker").attr("id",i+"-compositionStart").attr("class","marker composition "+i).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",i+"-compositionEnd").attr("class","marker composition "+i).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},aggregation:(r,i)=>{r.append("defs").append("marker").attr("id",i+"-aggregationStart").attr("class","marker aggregation "+i).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",i+"-aggregationEnd").attr("class","marker aggregation "+i).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L1,7 L9,1 Z")},dependency:(r,i)=>{r.append("defs").append("marker").attr("id",i+"-dependencyStart").attr("class","marker dependency "+i).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("path").attr("d","M 5,7 L9,13 L1,7 L9,1 Z"),r.append("defs").append("marker").attr("id",i+"-dependencyEnd").attr("class","marker dependency "+i).attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",28).attr("orient","auto").append("path").attr("d","M 18,7 L9,13 L14,7 L9,1 Z")},lollipop:(r,i)=>{r.append("defs").append("marker").attr("id",i+"-lollipopStart").attr("class","marker lollipop "+i).attr("refX",0).attr("refY",7).attr("markerWidth",190).attr("markerHeight",240).attr("orient","auto").append("circle").attr("stroke","black").attr("fill","white").attr("cx",6).attr("cy",7).attr("r",6)},point:(r,i)=>{r.append("marker").attr("id",i+"-pointEnd").attr("class","marker "+i).attr("viewBox","0 0 12 20").attr("refX",10).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 0 L 10 5 L 0 10 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",i+"-pointStart").attr("class","marker "+i).attr("viewBox","0 0 10 10").attr("refX",0).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",12).attr("markerHeight",12).attr("orient","auto").append("path").attr("d","M 0 5 L 10 10 L 10 0 z").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},circle:(r,i)=>{r.append("marker").attr("id",i+"-circleEnd").attr("class","marker "+i).attr("viewBox","0 0 10 10").attr("refX",11).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0"),r.append("marker").attr("id",i+"-circleStart").attr("class","marker "+i).attr("viewBox","0 0 10 10").attr("refX",-1).attr("refY",5).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("circle").attr("cx","5").attr("cy","5").attr("r","5").attr("class","arrowMarkerPath").style("stroke-width",1).style("stroke-dasharray","1,0")},cross:(r,i)=>{r.append("marker").attr("id",i+"-crossEnd").attr("class","marker cross "+i).attr("viewBox","0 0 11 11").attr("refX",12).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0"),r.append("marker").attr("id",i+"-crossStart").attr("class","marker cross "+i).attr("viewBox","0 0 11 11").attr("refX",-1).attr("refY",5.2).attr("markerUnits","userSpaceOnUse").attr("markerWidth",11).attr("markerHeight",11).attr("orient","auto").append("path").attr("d","M 1,1 l 9,9 M 10,1 l -9,9").attr("class","arrowMarkerPath").style("stroke-width",2).style("stroke-dasharray","1,0")},barb:(r,i)=>{r.append("defs").append("marker").attr("id",i+"-barbEnd").attr("refX",19).attr("refY",7).attr("markerWidth",20).attr("markerHeight",14).attr("markerUnits","strokeWidth").attr("orient","auto").append("path").attr("d","M 19,7 L9,13 L14,7 L9,1 Z")}},OMe=$Wt;function zWt(r,i){i&&r.attr("style",i)}function GWt(r){const i=Cn(document.createElementNS("http://www.w3.org/2000/svg","foreignObject")),o=i.append("xhtml:div"),l=r.label,f=r.isNode?"nodeLabel":"edgeLabel";return o.html('"+l+""),zWt(o,r.labelStyle),o.style("display","inline-block"),o.style("white-space","nowrap"),o.attr("xmlns","http://www.w3.org/1999/xhtml"),i.node()}const Q0=(r,i,o,l)=>{let f=r||"";if(typeof f=="object"&&(f=f[0]),cf(ht().flowchart.htmlLabels)){f=f.replace(/\\n|\n/g,"
"),Se.info("vertexText"+f);const b={isNode:l,label:Pce(f).replace(/fa[blrs]?:fa-[\w-]+/g,w=>``),labelStyle:i.replace("fill:","color:")};return GWt(b)}else{const b=document.createElementNS("http://www.w3.org/2000/svg","text");b.setAttribute("style",i.replace("color:","fill:"));let d=[];typeof f=="string"?d=f.split(/\\n|\n|
/gi):Array.isArray(f)?d=f:d=[];for(const w of d){const y=document.createElementNS("http://www.w3.org/2000/svg","tspan");y.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),y.setAttribute("dy","1em"),y.setAttribute("x","0"),o?y.setAttribute("class","title-row"):y.setAttribute("class","row"),y.textContent=w.trim(),b.appendChild(y)}return b}},ld=(r,i,o,l)=>{let f;o?f=o:f="node default";const b=r.insert("g").attr("class",f).attr("id",i.domId||i.id),d=b.insert("g").attr("class","label").attr("style",i.labelStyle);let w;i.labelText===void 0?w="":w=typeof i.labelText=="string"?i.labelText:i.labelText[0];const y=d.node().appendChild(Q0(up(Pce(w),ht()),i.labelStyle,!1,l));let k=y.getBBox();if(cf(ht().flowchart.htmlLabels)){const T=y.children[0],C=Cn(y);k=T.getBoundingClientRect(),C.attr("width",k.width),C.attr("height",k.height)}const E=i.padding/2;return d.attr("transform","translate("+-k.width/2+", "+-k.height/2+")"),{shapeSvg:b,bbox:k,halfPadding:E,label:d}},ch=(r,i)=>{const o=i.node().getBBox();r.width=o.width,r.height=o.height};function e4(r,i,o,l){return r.insert("polygon",":first-child").attr("points",l.map(function(f){return f.x+","+f.y}).join(" ")).attr("class","label-container").attr("transform","translate("+-i/2+","+o/2+")")}let qa={},jv={},NMe={};const VWt=()=>{jv={},NMe={},qa={}},DV=(r,i)=>(Se.trace("In isDecendant",i," ",r," = ",jv[i].includes(r)),!!jv[i].includes(r)),UWt=(r,i)=>(Se.info("Decendants of ",i," is ",jv[i]),Se.info("Edge is ",r),r.v===i||r.w===i?!1:jv[i]?jv[i].includes(r.v)||DV(r.v,i)||DV(r.w,i)||jv[i].includes(r.w):(Se.debug("Tilt, ",i,",not in decendants"),!1)),PMe=(r,i,o,l)=>{Se.warn("Copying children of ",r,"root",l,"data",i.node(r),l);const f=i.children(r)||[];r!==l&&f.push(r),Se.warn("Copying (nodes) clusterId",r,"nodes",f),f.forEach(b=>{if(i.children(b).length>0)PMe(b,i,o,l);else{const d=i.node(b);Se.info("cp ",b," to ",l," with parent ",r),o.setNode(b,d),l!==i.parent(b)&&(Se.warn("Setting parent",b,i.parent(b)),o.setParent(b,i.parent(b))),r!==l&&b!==r?(Se.debug("Setting parent",b,r),o.setParent(b,r)):(Se.info("In copy ",r,"root",l,"data",i.node(r),l),Se.debug("Not Setting parent for node=",b,"cluster!==rootId",r!==l,"node!==clusterId",b!==r));const w=i.edges(b);Se.debug("Copying Edges",w),w.forEach(y=>{Se.info("Edge",y);const k=i.edge(y.v,y.w,y.name);Se.info("Edge data",k,l);try{UWt(y,l)?(Se.info("Copying as ",y.v,y.w,k,y.name),o.setEdge(y.v,y.w,k,y.name),Se.info("newGraph edges ",o.edges(),o.edge(o.edges()[0]))):Se.info("Skipping copy of edge ",y.v,"-->",y.w," rootId: ",l," clusterId:",r)}catch(E){Se.error(E)}})}Se.debug("Removing node",b),i.removeNode(b)})},BMe=(r,i)=>{const o=i.children(r);let l=[...o];for(const f of o)NMe[f]=r,l=[...l,...BMe(f,i)];return l},NI=(r,i)=>{Se.trace("Searching",r);const o=i.children(r);if(Se.trace("Searching children of id ",r,o),o.length<1)return Se.trace("This is a valid node",r),r;for(const l of o){const f=NI(l,i);if(f)return Se.trace("Found replacement for",r," => ",f),f}},LV=r=>!qa[r]||!qa[r].externalConnections?r:qa[r]?qa[r].id:r,qWt=(r,i)=>{if(!r||i>10){Se.debug("Opting out, no graph ");return}else Se.debug("Opting in, graph ");r.nodes().forEach(function(o){r.children(o).length>0&&(Se.warn("Cluster identified",o," Replacement id in edges: ",NI(o,r)),jv[o]=BMe(o,r),qa[o]={id:NI(o,r),clusterData:r.node(o)})}),r.nodes().forEach(function(o){const l=r.children(o),f=r.edges();l.length>0?(Se.debug("Cluster identified",o,jv),f.forEach(b=>{if(b.v!==o&&b.w!==o){const d=DV(b.v,o),w=DV(b.w,o);d^w&&(Se.warn("Edge: ",b," leaves cluster ",o),Se.warn("Decendants of XXX ",o,": ",jv[o]),qa[o].externalConnections=!0)}})):Se.debug("Not a cluster ",o,jv)}),r.edges().forEach(function(o){const l=r.edge(o);Se.warn("Edge "+o.v+" -> "+o.w+": "+JSON.stringify(o)),Se.warn("Edge "+o.v+" -> "+o.w+": "+JSON.stringify(r.edge(o)));let f=o.v,b=o.w;if(Se.warn("Fix XXX",qa,"ids:",o.v,o.w,"Translating: ",qa[o.v]," --- ",qa[o.w]),qa[o.v]&&qa[o.w]&&qa[o.v]===qa[o.w]){Se.warn("Fixing and trixing link to self - removing XXX",o.v,o.w,o.name),Se.warn("Fixing and trixing - removing XXX",o.v,o.w,o.name),f=LV(o.v),b=LV(o.w),r.removeEdge(o.v,o.w,o.name);const d=o.w+"---"+o.v;r.setNode(d,{domId:d,id:d,labelStyle:"",labelText:l.label,padding:0,shape:"labelRect",style:""});const w=JSON.parse(JSON.stringify(l)),y=JSON.parse(JSON.stringify(l));w.label="",w.arrowTypeEnd="none",y.label="",w.fromCluster=o.v,y.toCluster=o.v,r.setEdge(f,d,w,o.name+"-cyclic-special"),r.setEdge(d,b,y,o.name+"-cyclic-special")}else(qa[o.v]||qa[o.w])&&(Se.warn("Fixing and trixing - removing XXX",o.v,o.w,o.name),f=LV(o.v),b=LV(o.w),r.removeEdge(o.v,o.w,o.name),f!==o.v&&(l.fromCluster=o.v),b!==o.w&&(l.toCluster=o.w),Se.warn("Fix Replacing with XXX",f,b,o.name),r.setEdge(f,b,l,o.name))}),Se.warn("Adjusted Graph",J3(r)),FMe(r,0),Se.trace(qa)},FMe=(r,i)=>{if(Se.warn("extractor - ",i,J3(r),r.children("D")),i>10){Se.error("Bailing out");return}let o=r.nodes(),l=!1;for(const f of o){const b=r.children(f);l=l||b.length>0}if(!l){Se.debug("Done, no node has children",r.nodes());return}Se.debug("Nodes = ",o,i);for(const f of o)if(Se.debug("Extracting node",f,qa,qa[f]&&!qa[f].externalConnections,!r.parent(f),r.node(f),r.children("D")," Depth ",i),!qa[f])Se.debug("Not a cluster",f,i);else if(!qa[f].externalConnections&&r.children(f)&&r.children(f).length>0){Se.warn("Cluster without external connections, without a parent and with children",f,i);let d=r.graph().rankdir==="TB"?"LR":"TB";qa[f]&&qa[f].clusterData&&qa[f].clusterData.dir&&(d=qa[f].clusterData.dir,Se.warn("Fixing dir",qa[f].clusterData.dir,d));const w=new zh({multigraph:!0,compound:!0}).setGraph({rankdir:d,nodesep:50,ranksep:50,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});Se.warn("Old graph before copy",J3(r)),PMe(f,r,w,f),r.setNode(f,{clusterNode:!0,id:f,clusterData:qa[f].clusterData,labelText:qa[f].labelText,graph:w}),Se.warn("New graph after copy node: (",f,")",J3(w)),Se.debug("Old graph after copy",J3(r))}else Se.warn("Cluster ** ",f," **not meeting the criteria !externalConnections:",!qa[f].externalConnections," no parent: ",!r.parent(f)," children ",r.children(f)&&r.children(f).length>0,r.children("D"),i),Se.debug(qa);o=r.nodes(),Se.warn("New list of nodes",o);for(const f of o){const b=r.node(f);Se.warn(" Now next level",f,b),b.clusterNode&&FMe(b.graph,i+1)}},RMe=(r,i)=>{if(i.length===0)return[];let o=Object.assign(i);return i.forEach(l=>{const f=r.children(l),b=RMe(r,f);o=[...o,...b]}),o},YWt=r=>RMe(r,r.children());function WWt(r,i){return r.intersect(i)}function jMe(r,i,o,l){var f=r.x,b=r.y,d=f-l.x,w=b-l.y,y=Math.sqrt(i*i*w*w+o*o*d*d),k=Math.abs(i*o*d/y);l.x0}function QWt(r,i,o){var l=r.x,f=r.y,b=[],d=Number.POSITIVE_INFINITY,w=Number.POSITIVE_INFINITY;typeof i.forEach=="function"?i.forEach(function(L){d=Math.min(d,L.x),w=Math.min(w,L.y)}):(d=Math.min(d,i.x),w=Math.min(w,i.y));for(var y=l-r.width/2-d,k=f-r.height/2-w,E=0;E1&&b.sort(function(L,O){var B=L.x-o.x,N=L.y-o.y,F=Math.sqrt(B*B+N*N),R=O.x-o.x,q=O.y-o.y,X=Math.sqrt(R*R+q*q);return F{var o=r.x,l=r.y,f=i.x-o,b=i.y-l,d=r.width/2,w=r.height/2,y,k;return Math.abs(b)*d>Math.abs(f)*w?(b<0&&(w=-w),y=b===0?0:w*f/b,k=w):(f<0&&(d=-d),y=d,k=f===0?0:d*b/f),{x:o+y,y:l+k}},Sl={node:WWt,circle:KWt,ellipse:jMe,polygon:QWt,rect:PI},ZWt=(r,i)=>{const{shapeSvg:o,bbox:l,halfPadding:f}=ld(r,i,"node "+i.classes,!0);Se.info("Classes = ",i.classes);const b=o.insert("rect",":first-child");return b.attr("rx",i.rx).attr("ry",i.ry).attr("x",-l.width/2-f).attr("y",-l.height/2-f).attr("width",l.width+i.padding).attr("height",l.height+i.padding),ch(i,b),i.intersect=function(d){return Sl.rect(i,d)},o},HMe=(r,i)=>{const{shapeSvg:o,bbox:l}=ld(r,i,void 0,!0),f=l.width+i.padding,b=l.height+i.padding,d=f+b,w=[{x:d/2,y:0},{x:d,y:-d/2},{x:d/2,y:-d},{x:0,y:-d/2}];Se.info("Question main (Circle)");const y=e4(o,d,d,w);return y.attr("style",i.style),ch(i,y),i.intersect=function(k){return Se.warn("Intersect called"),Sl.polygon(i,w,k)},o},JWt=(r,i)=>{const o=r.insert("g").attr("class","node default").attr("id",i.domId||i.id),l=28,f=[{x:0,y:l/2},{x:l/2,y:0},{x:0,y:-l/2},{x:-l/2,y:0}];return o.insert("polygon",":first-child").attr("points",f.map(function(d){return d.x+","+d.y}).join(" ")).attr("class","state-start").attr("r",7).attr("width",28).attr("height",28),i.width=28,i.height=28,i.intersect=function(d){return Sl.circle(i,14,d)},o},eKt=(r,i)=>{const{shapeSvg:o,bbox:l}=ld(r,i,void 0,!0),f=4,b=l.height+i.padding,d=b/f,w=l.width+2*d+i.padding,y=[{x:d,y:0},{x:w-d,y:0},{x:w,y:-b/2},{x:w-d,y:-b},{x:d,y:-b},{x:0,y:-b/2}],k=e4(o,w,b,y);return k.attr("style",i.style),ch(i,k),i.intersect=function(E){return Sl.polygon(i,y,E)},o},tKt=(r,i)=>{const{shapeSvg:o,bbox:l}=ld(r,i,void 0,!0),f=l.width+i.padding,b=l.height+i.padding,d=[{x:-b/2,y:0},{x:f,y:0},{x:f,y:-b},{x:-b/2,y:-b},{x:0,y:-b/2}];return e4(o,f,b,d).attr("style",i.style),i.width=f+b,i.height=b,i.intersect=function(y){return Sl.polygon(i,d,y)},o},nKt=(r,i)=>{const{shapeSvg:o,bbox:l}=ld(r,i,void 0,!0),f=l.width+i.padding,b=l.height+i.padding,d=[{x:-2*b/6,y:0},{x:f-b/6,y:0},{x:f+2*b/6,y:-b},{x:b/6,y:-b}],w=e4(o,f,b,d);return w.attr("style",i.style),ch(i,w),i.intersect=function(y){return Sl.polygon(i,d,y)},o},rKt=(r,i)=>{const{shapeSvg:o,bbox:l}=ld(r,i,void 0,!0),f=l.width+i.padding,b=l.height+i.padding,d=[{x:2*b/6,y:0},{x:f+b/6,y:0},{x:f-2*b/6,y:-b},{x:-b/6,y:-b}],w=e4(o,f,b,d);return w.attr("style",i.style),ch(i,w),i.intersect=function(y){return Sl.polygon(i,d,y)},o},iKt=(r,i)=>{const{shapeSvg:o,bbox:l}=ld(r,i,void 0,!0),f=l.width+i.padding,b=l.height+i.padding,d=[{x:-2*b/6,y:0},{x:f+2*b/6,y:0},{x:f-b/6,y:-b},{x:b/6,y:-b}],w=e4(o,f,b,d);return w.attr("style",i.style),ch(i,w),i.intersect=function(y){return Sl.polygon(i,d,y)},o},sKt=(r,i)=>{const{shapeSvg:o,bbox:l}=ld(r,i,void 0,!0),f=l.width+i.padding,b=l.height+i.padding,d=[{x:b/6,y:0},{x:f-b/6,y:0},{x:f+2*b/6,y:-b},{x:-2*b/6,y:-b}],w=e4(o,f,b,d);return w.attr("style",i.style),ch(i,w),i.intersect=function(y){return Sl.polygon(i,d,y)},o},aKt=(r,i)=>{const{shapeSvg:o,bbox:l}=ld(r,i,void 0,!0),f=l.width+i.padding,b=l.height+i.padding,d=[{x:0,y:0},{x:f+b/2,y:0},{x:f,y:-b/2},{x:f+b/2,y:-b},{x:0,y:-b}],w=e4(o,f,b,d);return w.attr("style",i.style),ch(i,w),i.intersect=function(y){return Sl.polygon(i,d,y)},o},oKt=(r,i)=>{const{shapeSvg:o,bbox:l}=ld(r,i,void 0,!0),f=l.width+i.padding,b=f/2,d=b/(2.5+f/50),w=l.height+d+i.padding,y="M 0,"+d+" a "+b+","+d+" 0,0,0 "+f+" 0 a "+b+","+d+" 0,0,0 "+-f+" 0 l 0,"+w+" a "+b+","+d+" 0,0,0 "+f+" 0 l 0,"+-w,k=o.attr("label-offset-y",d).insert("path",":first-child").attr("style",i.style).attr("d",y).attr("transform","translate("+-f/2+","+-(w/2+d)+")");return ch(i,k),i.intersect=function(E){const T=Sl.rect(i,E),C=T.x-i.x;if(b!=0&&(Math.abs(C)i.height/2-d)){let S=d*d*(1-C*C/(b*b));S!=0&&(S=Math.sqrt(S)),S=d-S,E.y-i.y>0&&(S=-S),T.y+=S}return T},o},cKt=(r,i)=>{const{shapeSvg:o,bbox:l,halfPadding:f}=ld(r,i,"node "+i.classes,!0);Se.trace("Classes = ",i.classes);const b=o.insert("rect",":first-child"),d=l.width+i.padding,w=l.height+i.padding;if(b.attr("class","basic label-container").attr("style",i.style).attr("rx",i.rx).attr("ry",i.ry).attr("x",-l.width/2-f).attr("y",-l.height/2-f).attr("width",d).attr("height",w),i.props){const y=new Set(Object.keys(i.props));i.props.borders&&(zMe(b,i.props.borders,d,w),y.delete("borders")),y.forEach(k=>{Se.warn(`Unknown node property ${k}`)})}return ch(i,b),i.intersect=function(y){return Sl.rect(i,y)},o},uKt=(r,i)=>{const{shapeSvg:o}=ld(r,i,"label",!0);Se.trace("Classes = ",i.classes);const l=o.insert("rect",":first-child"),f=0,b=0;if(l.attr("width",f).attr("height",b),o.attr("class","label edgeLabel"),i.props){const d=new Set(Object.keys(i.props));i.props.borders&&(zMe(l,i.props.borders,f,b),d.delete("borders")),d.forEach(w=>{Se.warn(`Unknown node property ${w}`)})}return ch(i,l),i.intersect=function(d){return Sl.rect(i,d)},o};function zMe(r,i,o,l){const f=[],b=w=>{f.push(w,0)},d=w=>{f.push(0,w)};i.includes("t")?(Se.debug("add top border"),b(o)):d(o),i.includes("r")?(Se.debug("add right border"),b(l)):d(l),i.includes("b")?(Se.debug("add bottom border"),b(o)):d(o),i.includes("l")?(Se.debug("add left border"),b(l)):d(l),r.attr("stroke-dasharray",f.join(" "))}const lKt=(r,i)=>{let o;i.classes?o="node "+i.classes:o="node default";const l=r.insert("g").attr("class",o).attr("id",i.domId||i.id),f=l.insert("rect",":first-child"),b=l.insert("line"),d=l.insert("g").attr("class","label"),w=i.labelText.flat?i.labelText.flat():i.labelText;let y="";typeof w=="object"?y=w[0]:y=w,Se.info("Label text abc79",y,w,typeof w=="object");const k=d.node().appendChild(Q0(y,i.labelStyle,!0,!0));let E={width:0,height:0};if(cf(ht().flowchart.htmlLabels)){const O=k.children[0],B=Cn(k);E=O.getBoundingClientRect(),B.attr("width",E.width),B.attr("height",E.height)}Se.info("Text 2",w);const T=w.slice(1,w.length);let C=k.getBBox();const S=d.node().appendChild(Q0(T.join?T.join("
"):T,i.labelStyle,!0,!0));if(cf(ht().flowchart.htmlLabels)){const O=S.children[0],B=Cn(S);E=O.getBoundingClientRect(),B.attr("width",E.width),B.attr("height",E.height)}const L=i.padding/2;return Cn(S).attr("transform","translate( "+(E.width>C.width?0:(C.width-E.width)/2)+", "+(C.height+L+5)+")"),Cn(k).attr("transform","translate( "+(E.width{const{shapeSvg:o,bbox:l}=ld(r,i,void 0,!0),f=l.height+i.padding,b=l.width+f/4+i.padding,d=o.insert("rect",":first-child").attr("style",i.style).attr("rx",f/2).attr("ry",f/2).attr("x",-b/2).attr("y",-f/2).attr("width",b).attr("height",f);return ch(i,d),i.intersect=function(w){return Sl.rect(i,w)},o},fKt=(r,i)=>{const{shapeSvg:o,bbox:l,halfPadding:f}=ld(r,i,void 0,!0),b=o.insert("circle",":first-child");return b.attr("style",i.style).attr("rx",i.rx).attr("ry",i.ry).attr("r",l.width/2+f).attr("width",l.width+i.padding).attr("height",l.height+i.padding),Se.info("Circle main"),ch(i,b),i.intersect=function(d){return Se.info("Circle intersect",i,l.width/2+f,d),Sl.circle(i,l.width/2+f,d)},o},dKt=(r,i)=>{const{shapeSvg:o,bbox:l,halfPadding:f}=ld(r,i,void 0,!0),b=5,d=o.insert("g",":first-child"),w=d.insert("circle"),y=d.insert("circle");return w.attr("style",i.style).attr("rx",i.rx).attr("ry",i.ry).attr("r",l.width/2+f+b).attr("width",l.width+i.padding+b*2).attr("height",l.height+i.padding+b*2),y.attr("style",i.style).attr("rx",i.rx).attr("ry",i.ry).attr("r",l.width/2+f).attr("width",l.width+i.padding).attr("height",l.height+i.padding),Se.info("DoubleCircle main"),ch(i,w),i.intersect=function(k){return Se.info("DoubleCircle intersect",i,l.width/2+f+b,k),Sl.circle(i,l.width/2+f+b,k)},o},gKt=(r,i)=>{const{shapeSvg:o,bbox:l}=ld(r,i,void 0,!0),f=l.width+i.padding,b=l.height+i.padding,d=[{x:0,y:0},{x:f,y:0},{x:f,y:-b},{x:0,y:-b},{x:0,y:0},{x:-8,y:0},{x:f+8,y:0},{x:f+8,y:-b},{x:-8,y:-b},{x:-8,y:0}],w=e4(o,f,b,d);return w.attr("style",i.style),ch(i,w),i.intersect=function(y){return Sl.polygon(i,d,y)},o},pKt=(r,i)=>{const o=r.insert("g").attr("class","node default").attr("id",i.domId||i.id),l=o.insert("circle",":first-child");return l.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),ch(i,l),i.intersect=function(f){return Sl.circle(i,7,f)},o},GMe=(r,i,o)=>{const l=r.insert("g").attr("class","node default").attr("id",i.domId||i.id);let f=70,b=10;o==="LR"&&(f=10,b=70);const d=l.append("rect").attr("x",-1*f/2).attr("y",-1*b/2).attr("width",f).attr("height",b).attr("class","fork-join");return ch(i,d),i.height=i.height+i.padding/2,i.width=i.width+i.padding/2,i.intersect=function(w){return Sl.rect(i,w)},l},VMe={rhombus:HMe,question:HMe,rect:cKt,labelRect:uKt,rectWithTitle:lKt,choice:JWt,circle:fKt,doublecircle:dKt,stadium:hKt,hexagon:eKt,rect_left_inv_arrow:tKt,lean_right:nKt,lean_left:rKt,trapezoid:iKt,inv_trapezoid:sKt,rect_right_inv_arrow:aKt,cylinder:oKt,start:pKt,end:(r,i)=>{const o=r.insert("g").attr("class","node default").attr("id",i.domId||i.id),l=o.insert("circle",":first-child"),f=o.insert("circle",":first-child");return f.attr("class","state-start").attr("r",7).attr("width",14).attr("height",14),l.attr("class","state-end").attr("r",5).attr("width",10).attr("height",10),ch(i,f),i.intersect=function(b){return Sl.circle(i,7,b)},o},note:ZWt,subroutine:gKt,fork:GMe,join:GMe,class_box:(r,i)=>{const o=i.padding/2,l=4,f=8;let b;i.classes?b="node "+i.classes:b="node default";const d=r.insert("g").attr("class",b).attr("id",i.domId||i.id),w=d.insert("rect",":first-child"),y=d.insert("line"),k=d.insert("line");let E=0,T=l;const C=d.insert("g").attr("class","label");let S=0;const L=i.classData.annotations&&i.classData.annotations[0],O=i.classData.annotations[0]?"\xAB"+i.classData.annotations[0]+"\xBB":"",B=C.node().appendChild(Q0(O,i.labelStyle,!0,!0));let N=B.getBBox();if(cf(ht().flowchart.htmlLabels)){const Y=B.children[0],z=Cn(B);N=Y.getBoundingClientRect(),z.attr("width",N.width),z.attr("height",N.height)}i.classData.annotations[0]&&(T+=N.height+l,E+=N.width);let F=i.classData.id;i.classData.type!==void 0&&i.classData.type!==""&&(ht().flowchart.htmlLabels?F+="<"+i.classData.type+">":F+="<"+i.classData.type+">");const R=C.node().appendChild(Q0(F,i.labelStyle,!0,!0));Cn(R).attr("class","classTitle");let q=R.getBBox();if(cf(ht().flowchart.htmlLabels)){const Y=R.children[0],z=Cn(R);q=Y.getBoundingClientRect(),z.attr("width",q.width),z.attr("height",q.height)}T+=q.height+l,q.width>E&&(E=q.width);const X=[];i.classData.members.forEach(Y=>{const z=SV(Y);let W=z.displayText;ht().flowchart.htmlLabels&&(W=W.replace(//g,">"));const Z=C.node().appendChild(Q0(W,z.cssStyle?z.cssStyle:i.labelStyle,!0,!0));let G=Z.getBBox();if(cf(ht().flowchart.htmlLabels)){const ae=Z.children[0],$=Cn(Z);G=ae.getBoundingClientRect(),$.attr("width",G.width),$.attr("height",G.height)}G.width>E&&(E=G.width),T+=G.height+l,X.push(Z)}),T+=f;const te=[];if(i.classData.methods.forEach(Y=>{const z=SV(Y);let W=z.displayText;ht().flowchart.htmlLabels&&(W=W.replace(//g,">"));const Z=C.node().appendChild(Q0(W,z.cssStyle?z.cssStyle:i.labelStyle,!0,!0));let G=Z.getBBox();if(cf(ht().flowchart.htmlLabels)){const ae=Z.children[0],$=Cn(Z);G=ae.getBoundingClientRect(),$.attr("width",G.width),$.attr("height",G.height)}G.width>E&&(E=G.width),T+=G.height+l,te.push(Z)}),T+=f,L){let Y=(E-N.width)/2;Cn(B).attr("transform","translate( "+(-1*E/2+Y)+", "+-1*T/2+")"),S=N.height+l}let H=(E-q.width)/2;return Cn(R).attr("transform","translate( "+(-1*E/2+H)+", "+(-1*T/2+S)+")"),S+=q.height+l,y.attr("class","divider").attr("x1",-E/2-o).attr("x2",E/2+o).attr("y1",-T/2-o+f+S).attr("y2",-T/2-o+f+S),S+=f,X.forEach(Y=>{Cn(Y).attr("transform","translate( "+-E/2+", "+(-1*T/2+S+f/2)+")"),S+=q.height+l}),S+=f,k.attr("class","divider").attr("x1",-E/2-o).attr("x2",E/2+o).attr("y1",-T/2-o+f+S).attr("y2",-T/2-o+f+S),S+=f,te.forEach(Y=>{Cn(Y).attr("transform","translate( "+-E/2+", "+(-1*T/2+S)+")"),S+=q.height+l}),w.attr("class","outer title-state").attr("x",-E/2-o).attr("y",-(T/2)-o).attr("width",E+i.padding).attr("height",T+i.padding),ch(i,w),i.intersect=function(Y){return Sl.rect(i,Y)},d}};let vC={};const UMe=(r,i,o)=>{let l,f;if(i.link){let b;ht().securityLevel==="sandbox"?b="_top":i.linkTarget&&(b=i.linkTarget||"_blank"),l=r.insert("svg:a").attr("xlink:href",i.link).attr("target",b),f=VMe[i.shape](l,i,o)}else f=VMe[i.shape](r,i,o),l=f;return i.tooltip&&f.attr("title",i.tooltip),i.class&&f.attr("class","node default "+i.class),vC[i.id]=l,i.haveCallback&&vC[i.id].attr("class",vC[i.id].attr("class")+" clickable"),l},bKt=(r,i)=>{vC[i.id]=r},vKt=()=>{vC={}},qMe=r=>{const i=vC[r.id];Se.trace("Transforming node",r.diff,r,"translate("+(r.x-r.width/2-5)+", "+r.width/2+")");const o=8,l=r.diff||0;return r.clusterNode?i.attr("transform","translate("+(r.x+l-r.width/2)+", "+(r.y-r.height/2-o)+")"):i.attr("transform","translate("+r.x+", "+r.y+")"),l},wKt={rect:(r,i)=>{Se.trace("Creating subgraph rect for ",i.id,i);const o=r.insert("g").attr("class","cluster"+(i.class?" "+i.class:"")).attr("id",i.id),l=o.insert("rect",":first-child"),f=o.insert("g").attr("class","cluster-label"),b=f.node().appendChild(Q0(i.labelText,i.labelStyle,void 0,!0));let d=b.getBBox();if(cf(ht().flowchart.htmlLabels)){const T=b.children[0],C=Cn(b);d=T.getBoundingClientRect(),C.attr("width",d.width),C.attr("height",d.height)}const w=0*i.padding,y=w/2,k=i.width<=d.width+w?d.width+w:i.width;i.width<=d.width+w?i.diff=(d.width-i.width)/2-i.padding/2:i.diff=-i.padding/2,Se.trace("Data ",i,JSON.stringify(i)),l.attr("style",i.style).attr("rx",i.rx).attr("ry",i.ry).attr("x",i.x-k/2).attr("y",i.y-i.height/2-y).attr("width",k).attr("height",i.height+w),f.attr("transform","translate("+(i.x-d.width/2)+", "+(i.y-i.height/2)+")");const E=l.node().getBBox();return i.width=E.width,i.height=E.height,i.intersect=function(T){return PI(i,T)},o},roundedWithTitle:(r,i)=>{const o=r.insert("g").attr("class",i.classes).attr("id",i.id),l=o.insert("rect",":first-child"),f=o.insert("g").attr("class","cluster-label"),b=o.append("rect"),d=f.node().appendChild(Q0(i.labelText,i.labelStyle,void 0,!0));let w=d.getBBox();if(cf(ht().flowchart.htmlLabels)){const C=d.children[0],S=Cn(d);w=C.getBoundingClientRect(),S.attr("width",w.width),S.attr("height",w.height)}w=d.getBBox();const y=0*i.padding,k=y/2,E=i.width<=w.width+i.padding?w.width+i.padding:i.width;i.width<=w.width+i.padding?i.diff=(w.width+i.padding*0-i.width)/2:i.diff=-i.padding/2,l.attr("class","outer").attr("x",i.x-E/2-k).attr("y",i.y-i.height/2-k).attr("width",E+y).attr("height",i.height+y),b.attr("class","inner").attr("x",i.x-E/2-k).attr("y",i.y-i.height/2-k+w.height-1).attr("width",E+y).attr("height",i.height+y-w.height-3),f.attr("transform","translate("+(i.x-w.width/2)+", "+(i.y-i.height/2-i.padding/3+(cf(ht().flowchart.htmlLabels)?5:3))+")");const T=l.node().getBBox();return i.height=T.height,i.intersect=function(C){return PI(i,C)},o},noteGroup:(r,i)=>{const o=r.insert("g").attr("class","note-cluster").attr("id",i.id),l=o.insert("rect",":first-child"),f=0*i.padding,b=f/2;l.attr("rx",i.rx).attr("ry",i.ry).attr("x",i.x-i.width/2-b).attr("y",i.y-i.height/2-b).attr("width",i.width+f).attr("height",i.height+f).attr("fill","none");const d=l.node().getBBox();return i.width=d.width,i.height=d.height,i.intersect=function(w){return PI(i,w)},o},divider:(r,i)=>{const o=r.insert("g").attr("class",i.classes).attr("id",i.id),l=o.insert("rect",":first-child"),f=0*i.padding,b=f/2;l.attr("class","divider").attr("x",i.x-i.width/2-b).attr("y",i.y-i.height/2).attr("width",i.width+f).attr("height",i.height+f);const d=l.node().getBBox();return i.width=d.width,i.height=d.height,i.diff=-i.padding/2,i.intersect=function(w){return PI(i,w)},o}};let YMe={};const mKt=(r,i)=>{Se.trace("Inserting cluster");const o=i.shape||"rect";YMe[i.id]=wKt[o](r,i)},yKt=()=>{YMe={}};let IV={},E1={};const kKt=()=>{IV={},E1={}},WMe=(r,i)=>{const o=Q0(i.label,i.labelStyle),l=r.insert("g").attr("class","edgeLabel"),f=l.insert("g").attr("class","label");f.node().appendChild(o);let b=o.getBBox();if(cf(ht().flowchart.htmlLabels)){const w=o.children[0],y=Cn(o);b=w.getBoundingClientRect(),y.attr("width",b.width),y.attr("height",b.height)}f.attr("transform","translate("+-b.width/2+", "+-b.height/2+")"),IV[i.id]=l,i.width=b.width,i.height=b.height;let d;if(i.startLabelLeft){const w=Q0(i.startLabelLeft,i.labelStyle),y=r.insert("g").attr("class","edgeTerminals"),k=y.insert("g").attr("class","inner");d=k.node().appendChild(w);const E=w.getBBox();k.attr("transform","translate("+-E.width/2+", "+-E.height/2+")"),E1[i.id]||(E1[i.id]={}),E1[i.id].startLeft=y,OV(d,i.startLabelLeft)}if(i.startLabelRight){const w=Q0(i.startLabelRight,i.labelStyle),y=r.insert("g").attr("class","edgeTerminals"),k=y.insert("g").attr("class","inner");d=y.node().appendChild(w),k.node().appendChild(w);const E=w.getBBox();k.attr("transform","translate("+-E.width/2+", "+-E.height/2+")"),E1[i.id]||(E1[i.id]={}),E1[i.id].startRight=y,OV(d,i.startLabelRight)}if(i.endLabelLeft){const w=Q0(i.endLabelLeft,i.labelStyle),y=r.insert("g").attr("class","edgeTerminals"),k=y.insert("g").attr("class","inner");d=k.node().appendChild(w);const E=w.getBBox();k.attr("transform","translate("+-E.width/2+", "+-E.height/2+")"),y.node().appendChild(w),E1[i.id]||(E1[i.id]={}),E1[i.id].endLeft=y,OV(d,i.endLabelLeft)}if(i.endLabelRight){const w=Q0(i.endLabelRight,i.labelStyle),y=r.insert("g").attr("class","edgeTerminals"),k=y.insert("g").attr("class","inner");d=k.node().appendChild(w);const E=w.getBBox();k.attr("transform","translate("+-E.width/2+", "+-E.height/2+")"),y.node().appendChild(w),E1[i.id]||(E1[i.id]={}),E1[i.id].endRight=y,OV(d,i.endLabelRight)}return o};function OV(r,i){ht().flowchart.htmlLabels&&r&&(r.style.width=i.length*9+"px",r.style.height="12px")}const xKt=(r,i)=>{Se.info("Moving label abc78 ",r.id,r.label,IV[r.id]);let o=i.updatedPath?i.updatedPath:i.originalPath;if(r.label){const l=IV[r.id];let f=r.x,b=r.y;if(o){const d=Fs.calcLabelPosition(o);Se.info("Moving label "+r.label+" from (",f,",",b,") to (",d.x,",",d.y,") abc78"),i.updatedPath&&(f=d.x,b=d.y)}l.attr("transform","translate("+f+", "+b+")")}if(r.startLabelLeft){const l=E1[r.id].startLeft;let f=r.x,b=r.y;if(o){const d=Fs.calcTerminalLabelPosition(r.arrowTypeStart?10:0,"start_left",o);f=d.x,b=d.y}l.attr("transform","translate("+f+", "+b+")")}if(r.startLabelRight){const l=E1[r.id].startRight;let f=r.x,b=r.y;if(o){const d=Fs.calcTerminalLabelPosition(r.arrowTypeStart?10:0,"start_right",o);f=d.x,b=d.y}l.attr("transform","translate("+f+", "+b+")")}if(r.endLabelLeft){const l=E1[r.id].endLeft;let f=r.x,b=r.y;if(o){const d=Fs.calcTerminalLabelPosition(r.arrowTypeEnd?10:0,"end_left",o);f=d.x,b=d.y}l.attr("transform","translate("+f+", "+b+")")}if(r.endLabelRight){const l=E1[r.id].endRight;let f=r.x,b=r.y;if(o){const d=Fs.calcTerminalLabelPosition(r.arrowTypeEnd?10:0,"end_right",o);f=d.x,b=d.y}l.attr("transform","translate("+f+", "+b+")")}},EKt=(r,i)=>{const o=r.x,l=r.y,f=Math.abs(i.x-o),b=Math.abs(i.y-l),d=r.width/2,w=r.height/2;return f>=d||b>=w},_Kt=(r,i,o)=>{Se.warn(`intersection calc abc89:
- outsidePoint: ${JSON.stringify(i)}
- insidePoint : ${JSON.stringify(o)}
- node : x:${r.x} y:${r.y} w:${r.width} h:${r.height}`);const l=r.x,f=r.y,b=Math.abs(l-o.x),d=r.width/2;let w=o.xMath.abs(l-i.x)*y){let T=o.y{Se.warn("abc88 cutPathAtIntersect",r,i);let o=[],l=r[0],f=!1;return r.forEach(b=>{if(Se.info("abc88 checking point",b,i),!EKt(i,b)&&!f){const d=_Kt(i,l,b);Se.warn("abc88 inside",b,l,d),Se.warn("abc88 intersection",d);let w=!1;o.forEach(y=>{w=w||y.x===d.x&&y.y===d.y}),o.some(y=>y.x===d.x&&y.y===d.y)?Se.warn("abc88 no intersect",d,o):o.push(d),f=!0}else Se.warn("abc88 outside",b,l),l=b,f||o.push(b)}),Se.warn("abc88 returning points",o),o},TKt=function(r,i,o,l,f,b){let d=o.points,w=!1;const y=b.node(i.v);var k=b.node(i.w);Se.info("abc88 InsertEdge: ",o),k.intersect&&y.intersect&&(d=d.slice(1,o.points.length-1),d.unshift(y.intersect(d[0])),Se.info("Last point",d[d.length-1],k,k.intersect(d[d.length-1])),d.push(k.intersect(d[d.length-1]))),o.toCluster&&(Se.info("to cluster abc88",l[o.toCluster]),d=KMe(o.points,l[o.toCluster].node),w=!0),o.fromCluster&&(Se.info("from cluster abc88",l[o.fromCluster]),d=KMe(d.reverse(),l[o.fromCluster].node).reverse(),w=!0);const E=d.filter(N=>!Number.isNaN(N.y));let T;f==="graph"||f==="flowchart"?T=o.curve||UT:T=UT;const C=V8().x(function(N){return N.x}).y(function(N){return N.y}).curve(T);let S;switch(o.thickness){case"normal":S="edge-thickness-normal";break;case"thick":S="edge-thickness-thick";break;default:S=""}switch(o.pattern){case"solid":S+=" edge-pattern-solid";break;case"dotted":S+=" edge-pattern-dotted";break;case"dashed":S+=" edge-pattern-dashed";break}const L=r.append("path").attr("d",C(E)).attr("id",o.id).attr("class"," "+S+(o.classes?" "+o.classes:"")).attr("style",o.style);let O="";switch((ht().flowchart.arrowMarkerAbsolute||ht().state.arrowMarkerAbsolute)&&(O=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,O=O.replace(/\(/g,"\\("),O=O.replace(/\)/g,"\\)")),Se.info("arrowTypeStart",o.arrowTypeStart),Se.info("arrowTypeEnd",o.arrowTypeEnd),o.arrowTypeStart){case"arrow_cross":L.attr("marker-start","url("+O+"#"+f+"-crossStart)");break;case"arrow_point":L.attr("marker-start","url("+O+"#"+f+"-pointStart)");break;case"arrow_barb":L.attr("marker-start","url("+O+"#"+f+"-barbStart)");break;case"arrow_circle":L.attr("marker-start","url("+O+"#"+f+"-circleStart)");break;case"aggregation":L.attr("marker-start","url("+O+"#"+f+"-aggregationStart)");break;case"extension":L.attr("marker-start","url("+O+"#"+f+"-extensionStart)");break;case"composition":L.attr("marker-start","url("+O+"#"+f+"-compositionStart)");break;case"dependency":L.attr("marker-start","url("+O+"#"+f+"-dependencyStart)");break;case"lollipop":L.attr("marker-start","url("+O+"#"+f+"-lollipopStart)");break}switch(o.arrowTypeEnd){case"arrow_cross":L.attr("marker-end","url("+O+"#"+f+"-crossEnd)");break;case"arrow_point":L.attr("marker-end","url("+O+"#"+f+"-pointEnd)");break;case"arrow_barb":L.attr("marker-end","url("+O+"#"+f+"-barbEnd)");break;case"arrow_circle":L.attr("marker-end","url("+O+"#"+f+"-circleEnd)");break;case"aggregation":L.attr("marker-end","url("+O+"#"+f+"-aggregationEnd)");break;case"extension":L.attr("marker-end","url("+O+"#"+f+"-extensionEnd)");break;case"composition":L.attr("marker-end","url("+O+"#"+f+"-compositionEnd)");break;case"dependency":L.attr("marker-end","url("+O+"#"+f+"-dependencyEnd)");break;case"lollipop":L.attr("marker-end","url("+O+"#"+f+"-lollipopEnd)");break}let B={};return w&&(B.updatedPath=d),B.originalPath=o.points,B},XMe=(r,i,o,l)=>{Se.info("Graph in recursive render: XXX",J3(i),l);const f=i.graph().rankdir;Se.trace("Dir in recursive render - dir:",f);const b=r.insert("g").attr("class","root");i.nodes()?Se.info("Recursive render XXX",i.nodes()):Se.info("No nodes found for",i),i.edges().length>0&&Se.trace("Recursive edges",i.edge(i.edges()[0]));const d=b.insert("g").attr("class","clusters"),w=b.insert("g").attr("class","edgePaths"),y=b.insert("g").attr("class","edgeLabels"),k=b.insert("g").attr("class","nodes");i.nodes().forEach(function(T){const C=i.node(T);if(l!==void 0){const S=JSON.parse(JSON.stringify(l.clusterData));Se.info("Setting data for cluster XXX (",T,") ",S,l),i.setNode(l.id,S),i.parent(T)||(Se.trace("Setting parent",T,l.id),i.setParent(T,l.id,S))}if(Se.info("(Insert) Node XXX"+T+": "+JSON.stringify(i.node(T))),C&&C.clusterNode){Se.info("Cluster identified",T,C.width,i.node(T));const S=XMe(k,C.graph,o,i.node(T)),L=S.elem;ch(C,L),C.diff=S.diff||0,Se.info("Node bounds (abc123)",T,C,C.width,C.x,C.y),bKt(L,C),Se.warn("Recursive render complete ",L,C)}else i.children(T).length>0?(Se.info("Cluster - the non recursive path XXX",T,C.id,C,i),Se.info(NI(C.id,i)),qa[C.id]={id:NI(C.id,i),node:C}):(Se.info("Node - the non recursive path",T,C.id,C),UMe(k,i.node(T),f))}),i.edges().forEach(function(T){const C=i.edge(T.v,T.w,T.name);Se.info("Edge "+T.v+" -> "+T.w+": "+JSON.stringify(T)),Se.info("Edge "+T.v+" -> "+T.w+": ",T," ",JSON.stringify(i.edge(T))),Se.info("Fix",qa,"ids:",T.v,T.w,"Translateing: ",qa[T.v],qa[T.w]),WMe(y,C)}),i.edges().forEach(function(T){Se.info("Edge "+T.v+" -> "+T.w+": "+JSON.stringify(T))}),Se.info("#############################################"),Se.info("### Layout ###"),Se.info("#############################################"),Se.info(i),bC(i),Se.info("Graph after layout:",J3(i));let E=0;return YWt(i).forEach(function(T){const C=i.node(T);Se.info("Position "+T+": "+JSON.stringify(i.node(T))),Se.info("Position "+T+": ("+C.x,","+C.y,") width: ",C.width," height: ",C.height),C&&C.clusterNode?qMe(C):i.children(T).length>0?(mKt(d,C),qa[C.id].node=C):qMe(C)}),i.edges().forEach(function(T){const C=i.edge(T);Se.info("Edge "+T.v+" -> "+T.w+": "+JSON.stringify(C),C);const S=TKt(w,T,C,qa,o,i);xKt(C,S)}),i.nodes().forEach(function(T){const C=i.node(T);Se.info(T,C.type,C.diff),C.type==="group"&&(E=C.diff)}),{elem:b,diff:E}},xoe=(r,i,o,l,f)=>{OMe(r,o,l,f),vKt(),kKt(),yKt(),VWt(),Se.warn("Graph at first:",J3(i)),qWt(i),Se.warn("Graph after:",J3(i)),XMe(r,i,l)},QMe=r=>Cs.sanitizeText(r,ht());let ZMe={dividerMargin:10,padding:5,textHeight:10};const CKt=function(r,i,o,l){const f=Object.keys(r);Se.info("keys:",f),Se.info(r),f.forEach(function(b){const d=r[b];let w="";d.cssClasses.length>0&&(w=w+" "+d.cssClasses.join(" "));const y={labelStyle:""};let k=d.text!==void 0?d.text:d.id,E=0,T="";switch(d.type){case"class":T="class_box";break;default:T="class_box"}i.setNode(d.id,{labelStyle:y.labelStyle,shape:T,labelText:QMe(k),classData:d,rx:E,ry:E,class:w,style:y.style,id:d.id,domId:d.domId,tooltip:l.db.getTooltip(d.id)||"",haveCallback:d.haveCallback,link:d.link,width:d.type==="group"?500:void 0,type:d.type,padding:ht().flowchart.padding}),Se.info("setNode",{labelStyle:y.labelStyle,shape:T,labelText:k,rx:E,ry:E,class:w,style:y.style,id:d.id,width:d.type==="group"?500:void 0,type:d.type,padding:ht().flowchart.padding})})},SKt=function(r,i,o,l){Se.info(r),r.forEach(function(f,b){const d=f;let w="";const y={labelStyle:"",style:""};let k=d.text,E=0,T="note";if(i.setNode(d.id,{labelStyle:y.labelStyle,shape:T,labelText:QMe(k),noteData:d,rx:E,ry:E,class:w,style:y.style,id:d.id,domId:d.id,tooltip:"",type:"note",padding:ht().flowchart.padding}),Se.info("setNode",{labelStyle:y.labelStyle,shape:T,labelText:k,rx:E,ry:E,style:y.style,id:d.id,type:"note",padding:ht().flowchart.padding}),!d.class||!(d.class in l))return;const C=o+b,S={};S.classes="relation",S.pattern="dotted",S.id=`edgeNote${C}`,S.arrowhead="none",Se.info(`Note edge: ${JSON.stringify(S)}, ${JSON.stringify(d)}`),S.startLabelRight="",S.endLabelLeft="",S.arrowTypeStart="none",S.arrowTypeEnd="none";let L="fill:none",O="";S.style=L,S.labelStyle=O,S.curve=q0(ZMe.curve,x1),i.setEdge(d.id,d.class,S,C)})},AKt=function(r,i){const o=ht().flowchart;let l=0;r.forEach(function(f){l++;const b={};b.classes="relation",b.pattern=f.relation.lineType==1?"dashed":"solid",b.id="id"+l,f.type==="arrow_open"?b.arrowhead="none":b.arrowhead="normal",Se.info(b,f),b.startLabelRight=f.relationTitle1==="none"?"":f.relationTitle1,b.endLabelLeft=f.relationTitle2==="none"?"":f.relationTitle2,b.arrowTypeStart=JMe(f.relation.type1),b.arrowTypeEnd=JMe(f.relation.type2);let d="",w="";if(f.style!==void 0){const y=Dv(f.style);d=y.style,w=y.labelStyle}else d="fill:none";b.style=d,b.labelStyle=w,f.interpolate!==void 0?b.curve=q0(f.interpolate,x1):r.defaultInterpolate!==void 0?b.curve=q0(r.defaultInterpolate,x1):b.curve=q0(o.curve,x1),f.text=f.title,f.text===void 0?f.style!==void 0&&(b.arrowheadStyle="fill: #333"):(b.arrowheadStyle="fill: #333",b.labelpos="c",ht().flowchart.htmlLabels?(b.labelType="html",b.label=''+f.text+""):(b.labelType="text",b.label=f.text.replace(Cs.lineBreakRegex,`
-`),f.style===void 0&&(b.style=b.style||"stroke: #333; stroke-width: 1.5px;fill:none"),b.labelStyle=b.labelStyle.replace("color:","fill:"))),i.setEdge(f.id1,f.id2,b,l)})},MKt=function(r){Object.keys(r).forEach(function(o){ZMe[o]=r[o]})},DKt=function(r,i,o,l){Se.info("Drawing class - ",i);const f=ht().flowchart,b=ht().securityLevel;Se.info("config:",f);const d=f.nodeSpacing||50,w=f.rankSpacing||50,y=new zh({multigraph:!0,compound:!0}).setGraph({rankdir:l.db.getDirection(),nodesep:d,ranksep:w,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}}),k=l.db.getClasses(),E=l.db.getRelations(),T=l.db.getNotes();Se.info(E),CKt(k,y,i,l),AKt(E,y),SKt(T,y,E.length+1,k);let C;b==="sandbox"&&(C=Cn("#i"+i));const S=Cn(b==="sandbox"?C.nodes()[0].contentDocument.body:"body"),L=S.select(`[id="${i}"]`),O=S.select("#"+i+" g");if(xoe(O,y,["aggregation","extension","composition","dependency","lollipop"],"classDiagram",i),Fs.insertTitle(L,"classTitleText",f.titleTopMargin,l.db.getDiagramTitle()),J8(y,L,f.diagramPadding,f.useMaxWidth),!f.htmlLabels){const B=b==="sandbox"?C.nodes()[0].contentDocument:document,N=B.querySelectorAll('[id="'+i+'"] .edgeLabel .label');for(const F of N){const R=F.getBBox(),q=B.createElementNS("http://www.w3.org/2000/svg","rect");q.setAttribute("rx",0),q.setAttribute("ry",0),q.setAttribute("width",R.width),q.setAttribute("height",R.height),F.insertBefore(q,F.firstChild)}}};function JMe(r){let i;switch(r){case 0:i="aggregation";break;case 1:i="extension";break;case 2:i="composition";break;case 3:i="dependency";break;case 4:i="lollipop";break;default:i="none"}return i}const LKt={setConf:MKt,draw:DKt};var Eoe=function(){var r=function(Z,G,ae,$){for(ae=ae||{},$=Z.length;$--;ae[Z[$]]=G);return ae},i=[1,2],o=[1,5],l=[6,9,11,23,25,27,29,30,31,51],f=[1,17],b=[1,18],d=[1,19],w=[1,20],y=[1,21],k=[1,22],E=[1,25],T=[1,30],C=[1,31],S=[1,32],L=[1,33],O=[6,9,11,15,20,23,25,27,29,30,31,44,45,46,47,51],B=[1,45],N=[30,31,48,49],F=[4,6,9,11,23,25,27,29,30,31,51],R=[44,45,46,47],q=[22,37],X=[1,65],te=[1,64],H=[22,37,39,41],Y={trace:function(){},yy:{},symbols_:{error:2,start:3,ER_DIAGRAM:4,document:5,EOF:6,directive:7,line:8,SPACE:9,statement:10,NEWLINE:11,openDirective:12,typeDirective:13,closeDirective:14,":":15,argDirective:16,entityName:17,relSpec:18,role:19,BLOCK_START:20,attributes:21,BLOCK_STOP:22,title:23,title_value:24,acc_title:25,acc_title_value:26,acc_descr:27,acc_descr_value:28,acc_descr_multiline_value:29,ALPHANUM:30,ENTITY_NAME:31,attribute:32,attributeType:33,attributeName:34,attributeKeyTypeList:35,attributeComment:36,ATTRIBUTE_WORD:37,attributeKeyType:38,COMMA:39,ATTRIBUTE_KEY:40,COMMENT:41,cardinality:42,relType:43,ZERO_OR_ONE:44,ZERO_OR_MORE:45,ONE_OR_MORE:46,ONLY_ONE:47,NON_IDENTIFYING:48,IDENTIFYING:49,WORD:50,open_directive:51,type_directive:52,arg_directive:53,close_directive:54,$accept:0,$end:1},terminals_:{2:"error",4:"ER_DIAGRAM",6:"EOF",9:"SPACE",11:"NEWLINE",15:":",20:"BLOCK_START",22:"BLOCK_STOP",23:"title",24:"title_value",25:"acc_title",26:"acc_title_value",27:"acc_descr",28:"acc_descr_value",29:"acc_descr_multiline_value",30:"ALPHANUM",31:"ENTITY_NAME",37:"ATTRIBUTE_WORD",39:"COMMA",40:"ATTRIBUTE_KEY",41:"COMMENT",44:"ZERO_OR_ONE",45:"ZERO_OR_MORE",46:"ONE_OR_MORE",47:"ONLY_ONE",48:"NON_IDENTIFYING",49:"IDENTIFYING",50:"WORD",51:"open_directive",52:"type_directive",53:"arg_directive",54:"close_directive"},productions_:[0,[3,3],[3,2],[5,0],[5,2],[8,2],[8,1],[8,1],[8,1],[7,4],[7,6],[10,1],[10,5],[10,4],[10,3],[10,1],[10,2],[10,2],[10,2],[10,1],[17,1],[17,1],[21,1],[21,2],[32,2],[32,3],[32,3],[32,4],[33,1],[34,1],[35,1],[35,3],[38,1],[36,1],[18,3],[42,1],[42,1],[42,1],[42,1],[43,1],[43,1],[19,1],[19,1],[19,1],[12,1],[13,1],[16,1],[14,1]],performAction:function(G,ae,$,ge,ee,de,re){var ke=de.length-1;switch(ee){case 1:break;case 3:this.$=[];break;case 4:de[ke-1].push(de[ke]),this.$=de[ke-1];break;case 5:case 6:this.$=de[ke];break;case 7:case 8:this.$=[];break;case 12:ge.addEntity(de[ke-4]),ge.addEntity(de[ke-2]),ge.addRelationship(de[ke-4],de[ke],de[ke-2],de[ke-3]);break;case 13:ge.addEntity(de[ke-3]),ge.addAttributes(de[ke-3],de[ke-1]);break;case 14:ge.addEntity(de[ke-2]);break;case 15:ge.addEntity(de[ke]);break;case 16:case 17:this.$=de[ke].trim(),ge.setAccTitle(this.$);break;case 18:case 19:this.$=de[ke].trim(),ge.setAccDescription(this.$);break;case 20:case 43:this.$=de[ke];break;case 21:case 41:case 42:this.$=de[ke].replace(/"/g,"");break;case 22:case 30:this.$=[de[ke]];break;case 23:de[ke].push(de[ke-1]),this.$=de[ke];break;case 24:this.$={attributeType:de[ke-1],attributeName:de[ke]};break;case 25:this.$={attributeType:de[ke-2],attributeName:de[ke-1],attributeKeyTypeList:de[ke]};break;case 26:this.$={attributeType:de[ke-2],attributeName:de[ke-1],attributeComment:de[ke]};break;case 27:this.$={attributeType:de[ke-3],attributeName:de[ke-2],attributeKeyTypeList:de[ke-1],attributeComment:de[ke]};break;case 28:case 29:case 32:this.$=de[ke];break;case 31:de[ke-2].push(de[ke]),this.$=de[ke-2];break;case 33:this.$=de[ke].replace(/"/g,"");break;case 34:this.$={cardA:de[ke],relType:de[ke-1],cardB:de[ke-2]};break;case 35:this.$=ge.Cardinality.ZERO_OR_ONE;break;case 36:this.$=ge.Cardinality.ZERO_OR_MORE;break;case 37:this.$=ge.Cardinality.ONE_OR_MORE;break;case 38:this.$=ge.Cardinality.ONLY_ONE;break;case 39:this.$=ge.Identification.NON_IDENTIFYING;break;case 40:this.$=ge.Identification.IDENTIFYING;break;case 44:ge.parseDirective("%%{","open_directive");break;case 45:ge.parseDirective(de[ke],"type_directive");break;case 46:de[ke]=de[ke].trim().replace(/'/g,'"'),ge.parseDirective(de[ke],"arg_directive");break;case 47:ge.parseDirective("}%%","close_directive","er");break}},table:[{3:1,4:i,7:3,12:4,51:o},{1:[3]},r(l,[2,3],{5:6}),{3:7,4:i,7:3,12:4,51:o},{13:8,52:[1,9]},{52:[2,44]},{6:[1,10],7:15,8:11,9:[1,12],10:13,11:[1,14],12:4,17:16,23:f,25:b,27:d,29:w,30:y,31:k,51:o},{1:[2,2]},{14:23,15:[1,24],54:E},r([15,54],[2,45]),r(l,[2,8],{1:[2,1]}),r(l,[2,4]),{7:15,10:26,12:4,17:16,23:f,25:b,27:d,29:w,30:y,31:k,51:o},r(l,[2,6]),r(l,[2,7]),r(l,[2,11]),r(l,[2,15],{18:27,42:29,20:[1,28],44:T,45:C,46:S,47:L}),{24:[1,34]},{26:[1,35]},{28:[1,36]},r(l,[2,19]),r(O,[2,20]),r(O,[2,21]),{11:[1,37]},{16:38,53:[1,39]},{11:[2,47]},r(l,[2,5]),{17:40,30:y,31:k},{21:41,22:[1,42],32:43,33:44,37:B},{43:46,48:[1,47],49:[1,48]},r(N,[2,35]),r(N,[2,36]),r(N,[2,37]),r(N,[2,38]),r(l,[2,16]),r(l,[2,17]),r(l,[2,18]),r(F,[2,9]),{14:49,54:E},{54:[2,46]},{15:[1,50]},{22:[1,51]},r(l,[2,14]),{21:52,22:[2,22],32:43,33:44,37:B},{34:53,37:[1,54]},{37:[2,28]},{42:55,44:T,45:C,46:S,47:L},r(R,[2,39]),r(R,[2,40]),{11:[1,56]},{19:57,30:[1,60],31:[1,59],50:[1,58]},r(l,[2,13]),{22:[2,23]},r(q,[2,24],{35:61,36:62,38:63,40:X,41:te}),r([22,37,40,41],[2,29]),r([30,31],[2,34]),r(F,[2,10]),r(l,[2,12]),r(l,[2,41]),r(l,[2,42]),r(l,[2,43]),r(q,[2,25],{36:66,39:[1,67],41:te}),r(q,[2,26]),r(H,[2,30]),r(q,[2,33]),r(H,[2,32]),r(q,[2,27]),{38:68,40:X},r(H,[2,31])],defaultActions:{5:[2,44],7:[2,2],25:[2,47],39:[2,46],45:[2,28],52:[2,23]},parseError:function(G,ae){if(ae.recoverable)this.trace(G);else{var $=new Error(G);throw $.hash=ae,$}},parse:function(G){var ae=this,$=[0],ge=[],ee=[null],de=[],re=this.table,ke="",Ce=0,_e=0,Te=2,Be=1,Ge=de.slice.call(arguments,1),Xe=Object.create(this.lexer),Ee={yy:{}};for(var Ze in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Ze)&&(Ee.yy[Ze]=this.yy[Ze]);Xe.setInput(G,Ee.yy),Ee.yy.lexer=Xe,Ee.yy.parser=this,typeof Xe.yylloc>"u"&&(Xe.yylloc={});var Ie=Xe.yylloc;de.push(Ie);var Oe=Xe.options&&Xe.options.ranges;typeof Ee.yy.parseError=="function"?this.parseError=Ee.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Le(){var cn;return cn=ge.pop()||Xe.lex()||Be,typeof cn!="number"&&(cn instanceof Array&&(ge=cn,cn=ge.pop()),cn=ae.symbols_[cn]||cn),cn}for(var $e,xe,Ae,je,me={},vt,ve,Zt,nt;;){if(xe=$[$.length-1],this.defaultActions[xe]?Ae=this.defaultActions[xe]:(($e===null||typeof $e>"u")&&($e=Le()),Ae=re[xe]&&re[xe][$e]),typeof Ae>"u"||!Ae.length||!Ae[0]){var xn="";nt=[];for(vt in re[xe])this.terminals_[vt]&&vt>Te&&nt.push("'"+this.terminals_[vt]+"'");Xe.showPosition?xn="Parse error on line "+(Ce+1)+`:
-`+Xe.showPosition()+`
-Expecting `+nt.join(", ")+", got '"+(this.terminals_[$e]||$e)+"'":xn="Parse error on line "+(Ce+1)+": Unexpected "+($e==Be?"end of input":"'"+(this.terminals_[$e]||$e)+"'"),this.parseError(xn,{text:Xe.match,token:this.terminals_[$e]||$e,line:Xe.yylineno,loc:Ie,expected:nt})}if(Ae[0]instanceof Array&&Ae.length>1)throw new Error("Parse Error: multiple actions possible at state: "+xe+", token: "+$e);switch(Ae[0]){case 1:$.push($e),ee.push(Xe.yytext),de.push(Xe.yylloc),$.push(Ae[1]),$e=null,_e=Xe.yyleng,ke=Xe.yytext,Ce=Xe.yylineno,Ie=Xe.yylloc;break;case 2:if(ve=this.productions_[Ae[1]][1],me.$=ee[ee.length-ve],me._$={first_line:de[de.length-(ve||1)].first_line,last_line:de[de.length-1].last_line,first_column:de[de.length-(ve||1)].first_column,last_column:de[de.length-1].last_column},Oe&&(me._$.range=[de[de.length-(ve||1)].range[0],de[de.length-1].range[1]]),je=this.performAction.apply(me,[ke,_e,Ce,Ee.yy,Ae[1],ee,de].concat(Ge)),typeof je<"u")return je;ve&&($=$.slice(0,-1*ve*2),ee=ee.slice(0,-1*ve),de=de.slice(0,-1*ve)),$.push(this.productions_[Ae[1]][0]),ee.push(me.$),de.push(me._$),Zt=re[$[$.length-2]][$[$.length-1]],$.push(Zt);break;case 3:return!0}}return!0}},z=function(){var Z={EOF:1,parseError:function(ae,$){if(this.yy.parser)this.yy.parser.parseError(ae,$);else throw new Error(ae)},setInput:function(G,ae){return this.yy=ae||this.yy||{},this._input=G,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var G=this._input[0];this.yytext+=G,this.yyleng++,this.offset++,this.match+=G,this.matched+=G;var ae=G.match(/(?:\r\n?|\n).*/g);return ae?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),G},unput:function(G){var ae=G.length,$=G.split(/(?:\r\n?|\n)/g);this._input=G+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-ae),this.offset-=ae;var ge=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),$.length-1&&(this.yylineno-=$.length-1);var ee=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:$?($.length===ge.length?this.yylloc.first_column:0)+ge[ge.length-$.length].length-$[0].length:this.yylloc.first_column-ae},this.options.ranges&&(this.yylloc.range=[ee[0],ee[0]+this.yyleng-ae]),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(G){this.unput(this.match.slice(G))},pastInput:function(){var G=this.matched.substr(0,this.matched.length-this.match.length);return(G.length>20?"...":"")+G.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var G=this.match;return G.length<20&&(G+=this._input.substr(0,20-G.length)),(G.substr(0,20)+(G.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var G=this.pastInput(),ae=new Array(G.length+1).join("-");return G+this.upcomingInput()+`
-`+ae+"^"},test_match:function(G,ae){var $,ge,ee;if(this.options.backtrack_lexer&&(ee={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&&(ee.yylloc.range=this.yylloc.range.slice(0))),ge=G[0].match(/(?:\r\n?|\n).*/g),ge&&(this.yylineno+=ge.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:ge?ge[ge.length-1].length-ge[ge.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+G[0].length},this.yytext+=G[0],this.match+=G[0],this.matches=G,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(G[0].length),this.matched+=G[0],$=this.performAction.call(this,this.yy,this,ae,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),$)return $;if(this._backtrack){for(var de in ee)this[de]=ee[de];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var G,ae,$,ge;this._more||(this.yytext="",this.match="");for(var ee=this._currentRules(),de=0;deae[0].length)){if(ae=$,ge=de,this.options.backtrack_lexer){if(G=this.test_match($,ee[de]),G!==!1)return G;if(this._backtrack){ae=!1;continue}else return!1}else if(!this.options.flex)break}return ae?(G=this.test_match(ae,ee[ge]),G!==!1?G:!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 ae=this.next();return ae||this.lex()},begin:function(ae){this.conditionStack.push(ae)},popState:function(){var ae=this.conditionStack.length-1;return ae>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(ae){return ae=this.conditionStack.length-1-Math.abs(ae||0),ae>=0?this.conditionStack[ae]:"INITIAL"},pushState:function(ae){this.begin(ae)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(ae,$,ge,ee){switch(ge){case 0:return this.begin("acc_title"),25;case 1:return this.popState(),"acc_title_value";case 2:return this.begin("acc_descr"),27;case 3:return this.popState(),"acc_descr_value";case 4:this.begin("acc_descr_multiline");break;case 5:this.popState();break;case 6:return"acc_descr_multiline_value";case 7:return this.begin("open_directive"),51;case 8:return this.begin("type_directive"),52;case 9:return this.popState(),this.begin("arg_directive"),15;case 10:return this.popState(),this.popState(),54;case 11:return 53;case 12:break;case 13:break;case 14:return 11;case 15:break;case 16:return 9;case 17:return 31;case 18:return 50;case 19:return 4;case 20:return this.begin("block"),20;case 21:return 39;case 22:break;case 23:return 40;case 24:return 37;case 25:return 37;case 26:return 41;case 27:break;case 28:return this.popState(),22;case 29:return $.yytext[0];case 30:return 44;case 31:return 46;case 32:return 46;case 33:return 46;case 34:return 44;case 35:return 44;case 36:return 45;case 37:return 45;case 38:return 45;case 39:return 45;case 40:return 45;case 41:return 46;case 42:return 45;case 43:return 46;case 44:return 47;case 45:return 47;case 46:return 47;case 47:return 47;case 48:return 44;case 49:return 45;case 50:return 46;case 51:return 48;case 52:return 49;case 53:return 49;case 54:return 48;case 55:return 48;case 56:return 48;case 57:return 30;case 58:return $.yytext[0];case 59:return 6}},rules:[/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:[\s]+)/i,/^(?:"[^"%\r\n\v\b\\]+")/i,/^(?:"[^"]*")/i,/^(?:erDiagram\b)/i,/^(?:\{)/i,/^(?:,)/i,/^(?:\s+)/i,/^(?:\b((?:PK)|(?:FK)|(?:UK))\b)/i,/^(?:(.*?)[~](.*?)*[~])/i,/^(?:[A-Za-z_][A-Za-z0-9\-_\[\]\(\)]*)/i,/^(?:"[^"]*")/i,/^(?:[\n]+)/i,/^(?:\})/i,/^(?:.)/i,/^(?:one or zero\b)/i,/^(?:one or more\b)/i,/^(?:one or many\b)/i,/^(?:1\+)/i,/^(?:\|o\b)/i,/^(?:zero or one\b)/i,/^(?:zero or more\b)/i,/^(?:zero or many\b)/i,/^(?:0\+)/i,/^(?:\}o\b)/i,/^(?:many\(0\))/i,/^(?:many\(1\))/i,/^(?:many\b)/i,/^(?:\}\|)/i,/^(?:one\b)/i,/^(?:only one\b)/i,/^(?:1\b)/i,/^(?:\|\|)/i,/^(?:o\|)/i,/^(?:o\{)/i,/^(?:\|\{)/i,/^(?:\.\.)/i,/^(?:--)/i,/^(?:to\b)/i,/^(?:optionally to\b)/i,/^(?:\.-)/i,/^(?:-\.)/i,/^(?:[A-Za-z][A-Za-z0-9\-_]*)/i,/^(?:.)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[5,6],inclusive:!1},acc_descr:{rules:[3],inclusive:!1},acc_title:{rules:[1],inclusive:!1},open_directive:{rules:[8],inclusive:!1},type_directive:{rules:[9,10],inclusive:!1},arg_directive:{rules:[10,11],inclusive:!1},block:{rules:[21,22,23,24,25,26,27,28,29],inclusive:!1},INITIAL:{rules:[0,2,4,7,12,13,14,15,16,17,18,19,20,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],inclusive:!0}}};return Z}();Y.lexer=z;function W(){this.yy={}}return W.prototype=Y,Y.Parser=W,new W}();Eoe.parser=Eoe;const IKt=Eoe,OKt=r=>r.match(/^\s*erDiagram/)!==null;let BI={},_oe=[];const NKt={ZERO_OR_ONE:"ZERO_OR_ONE",ZERO_OR_MORE:"ZERO_OR_MORE",ONE_OR_MORE:"ONE_OR_MORE",ONLY_ONE:"ONLY_ONE"},PKt={NON_IDENTIFYING:"NON_IDENTIFYING",IDENTIFYING:"IDENTIFYING"},BKt=function(r,i,o){Bu.parseDirective(this,r,i,o)},eDe=function(r){return BI[r]===void 0&&(BI[r]={attributes:[]},Se.info("Added new entity :",r)),BI[r]},FKt={Cardinality:NKt,Identification:PKt,parseDirective:BKt,getConfig:()=>ht().er,addEntity:eDe,addAttributes:function(r,i){let o=eDe(r),l;for(l=i.length-1;l>=0;l--)o.attributes.push(i[l]),Se.debug("Added attribute ",i[l].attributeName)},getEntities:()=>BI,addRelationship:function(r,i,o,l){let f={entityA:r,roleA:i,entityB:o,relSpec:l};_oe.push(f),Se.debug("Added new relationship :",f)},getRelationships:()=>_oe,clear:function(){BI={},_oe=[],W0()},setAccTitle:K0,getAccTitle:hp,setAccDescription:fp,getAccDescription:dp,setDiagramTitle:Ov,getDiagramTitle:Nv},t4={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"},n4={ERMarkers:t4,insertMarkers:function(r,i){let o;r.append("defs").append("marker").attr("id",t4.ONLY_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M9,0 L9,18 M15,0 L15,18"),r.append("defs").append("marker").attr("id",t4.ONLY_ONE_END).attr("refX",18).attr("refY",9).attr("markerWidth",18).attr("markerHeight",18).attr("orient","auto").append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M3,0 L3,18 M9,0 L9,18"),o=r.append("defs").append("marker").attr("id",t4.ZERO_OR_ONE_START).attr("refX",0).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),o.append("circle").attr("stroke",i.stroke).attr("fill","white").attr("cx",21).attr("cy",9).attr("r",6),o.append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M9,0 L9,18"),o=r.append("defs").append("marker").attr("id",t4.ZERO_OR_ONE_END).attr("refX",30).attr("refY",9).attr("markerWidth",30).attr("markerHeight",18).attr("orient","auto"),o.append("circle").attr("stroke",i.stroke).attr("fill","white").attr("cx",9).attr("cy",9).attr("r",6),o.append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M21,0 L21,18"),r.append("defs").append("marker").attr("id",t4.ONE_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M0,18 Q 18,0 36,18 Q 18,36 0,18 M42,9 L42,27"),r.append("defs").append("marker").attr("id",t4.ONE_OR_MORE_END).attr("refX",27).attr("refY",18).attr("markerWidth",45).attr("markerHeight",36).attr("orient","auto").append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M3,9 L3,27 M9,18 Q27,0 45,18 Q27,36 9,18"),o=r.append("defs").append("marker").attr("id",t4.ZERO_OR_MORE_START).attr("refX",18).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),o.append("circle").attr("stroke",i.stroke).attr("fill","white").attr("cx",48).attr("cy",18).attr("r",6),o.append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M0,18 Q18,0 36,18 Q18,36 0,18"),o=r.append("defs").append("marker").attr("id",t4.ZERO_OR_MORE_END).attr("refX",39).attr("refY",18).attr("markerWidth",57).attr("markerHeight",36).attr("orient","auto"),o.append("circle").attr("stroke",i.stroke).attr("fill","white").attr("cx",9).attr("cy",18).attr("r",6),o.append("path").attr("stroke",i.stroke).attr("fill","none").attr("d","M21,18 Q39,0 57,18 Q39,36 21,18")}},RKt=/^(?:[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 jKt(r){return typeof r=="string"&&RKt.test(r)}const _1=[];for(let r=0;r<256;++r)_1.push((r+256).toString(16).slice(1));function $Kt(r,i=0){return(_1[r[i+0]]+_1[r[i+1]]+_1[r[i+2]]+_1[r[i+3]]+"-"+_1[r[i+4]]+_1[r[i+5]]+"-"+_1[r[i+6]]+_1[r[i+7]]+"-"+_1[r[i+8]]+_1[r[i+9]]+"-"+_1[r[i+10]]+_1[r[i+11]]+_1[r[i+12]]+_1[r[i+13]]+_1[r[i+14]]+_1[r[i+15]]).toLowerCase()}function HKt(r){if(!jKt(r))throw TypeError("Invalid UUID");let i;const o=new Uint8Array(16);return o[0]=(i=parseInt(r.slice(0,8),16))>>>24,o[1]=i>>>16&255,o[2]=i>>>8&255,o[3]=i&255,o[4]=(i=parseInt(r.slice(9,13),16))>>>8,o[5]=i&255,o[6]=(i=parseInt(r.slice(14,18),16))>>>8,o[7]=i&255,o[8]=(i=parseInt(r.slice(19,23),16))>>>8,o[9]=i&255,o[10]=(i=parseInt(r.slice(24,36),16))/1099511627776&255,o[11]=i/4294967296&255,o[12]=i>>>24&255,o[13]=i>>>16&255,o[14]=i>>>8&255,o[15]=i&255,o}function zKt(r){r=unescape(encodeURIComponent(r));const i=[];for(let o=0;o>>32-i}function YKt(r){const i=[1518500249,1859775393,2400959708,3395469782],o=[1732584193,4023233417,2562383102,271733878,3285377520];if(typeof r=="string"){const d=unescape(encodeURIComponent(r));r=[];for(let w=0;w>>0;C=T,T=E,E=Toe(k,30)>>>0,k=y,y=O}o[0]=o[0]+y>>>0,o[1]=o[1]+k>>>0,o[2]=o[2]+E>>>0,o[3]=o[3]+T>>>0,o[4]=o[4]+C>>>0}return[o[0]>>24&255,o[0]>>16&255,o[0]>>8&255,o[0]&255,o[1]>>24&255,o[1]>>16&255,o[1]>>8&255,o[1]&255,o[2]>>24&255,o[2]>>16&255,o[2]>>8&255,o[2]&255,o[3]>>24&255,o[3]>>16&255,o[3]>>8&255,o[3]&255,o[4]>>24&255,o[4]>>16&255,o[4]>>8&255,o[4]&255]}const WKt=UKt("v5",80,YKt),KKt=/[^\dA-Za-z](\W)*/g;let hf={},FI=new Map;const XKt=function(r){const i=Object.keys(r);for(const o of i)hf[o]=r[o]},QKt=(r,i,o)=>{const l=hf.entityPadding/3,f=hf.entityPadding/3,b=hf.fontSize*.85,d=i.node().getBBox(),w=[];let y=!1,k=!1,E=0,T=0,C=0,S=0,L=d.height+l*2,O=1;o.forEach(R=>{R.attributeKeyTypeList!==void 0&&R.attributeKeyTypeList.length>0&&(y=!0),R.attributeComment!==void 0&&(k=!0)}),o.forEach(R=>{const q=`${i.node().id}-attr-${O}`;let X=0;const te=o6(R.attributeType),H=r.append("text").classed("er entityLabel",!0).attr("id",`${q}-type`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",ht().fontFamily).style("font-size",b+"px").text(te),Y=r.append("text").classed("er entityLabel",!0).attr("id",`${q}-name`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",ht().fontFamily).style("font-size",b+"px").text(R.attributeName),z={};z.tn=H,z.nn=Y;const W=H.node().getBBox(),Z=Y.node().getBBox();if(E=Math.max(E,W.width),T=Math.max(T,Z.width),X=Math.max(W.height,Z.height),y){const G=R.attributeKeyTypeList!==void 0?R.attributeKeyTypeList.join(","):"",ae=r.append("text").classed("er entityLabel",!0).attr("id",`${q}-key`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",ht().fontFamily).style("font-size",b+"px").text(G);z.kn=ae;const $=ae.node().getBBox();C=Math.max(C,$.width),X=Math.max(X,$.height)}if(k){const G=r.append("text").classed("er entityLabel",!0).attr("id",`${q}-comment`).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","left").style("font-family",ht().fontFamily).style("font-size",b+"px").text(R.attributeComment||"");z.cn=G;const ae=G.node().getBBox();S=Math.max(S,ae.width),X=Math.max(X,ae.height)}z.height=X,w.push(z),L+=X+l*2,O+=1});let B=4;y&&(B+=2),k&&(B+=2);const N=E+T+C+S,F={width:Math.max(hf.minEntityWidth,Math.max(d.width+hf.entityPadding*2,N+f*B)),height:o.length>0?L:Math.max(hf.minEntityHeight,d.height+hf.entityPadding*2)};if(o.length>0){const R=Math.max(0,(F.width-N-f*B)/(B/2));i.attr("transform","translate("+F.width/2+","+(l+d.height/2)+")");let q=d.height+l*2,X="attributeBoxOdd";w.forEach(te=>{const H=q+l+te.height/2;te.tn.attr("transform","translate("+f+","+H+")");const Y=r.insert("rect","#"+te.tn.node().id).classed(`er ${X}`,!0).attr("x",0).attr("y",q).attr("width",E+f*2+R).attr("height",te.height+l*2),z=parseFloat(Y.attr("x"))+parseFloat(Y.attr("width"));te.nn.attr("transform","translate("+(z+f)+","+H+")");const W=r.insert("rect","#"+te.nn.node().id).classed(`er ${X}`,!0).attr("x",z).attr("y",q).attr("width",T+f*2+R).attr("height",te.height+l*2);let Z=parseFloat(W.attr("x"))+parseFloat(W.attr("width"));if(y){te.kn.attr("transform","translate("+(Z+f)+","+H+")");const G=r.insert("rect","#"+te.kn.node().id).classed(`er ${X}`,!0).attr("x",Z).attr("y",q).attr("width",C+f*2+R).attr("height",te.height+l*2);Z=parseFloat(G.attr("x"))+parseFloat(G.attr("width"))}k&&(te.cn.attr("transform","translate("+(Z+f)+","+H+")"),r.insert("rect","#"+te.cn.node().id).classed(`er ${X}`,"true").attr("x",Z).attr("y",q).attr("width",S+f*2+R).attr("height",te.height+l*2)),q+=te.height+l*2,X=X==="attributeBoxOdd"?"attributeBoxEven":"attributeBoxOdd"})}else F.height=Math.max(hf.minEntityHeight,L),i.attr("transform","translate("+F.width/2+","+F.height/2+")");return F},ZKt=function(r,i,o){const l=Object.keys(i);let f;return l.forEach(function(b){const d=iXt(b,"entity");FI.set(b,d);const w=r.append("g").attr("id",d);f=f===void 0?d:f;const y="text-"+d,k=w.append("text").classed("er entityLabel",!0).attr("id",y).attr("x",0).attr("y",0).style("dominant-baseline","middle").style("text-anchor","middle").style("font-family",ht().fontFamily).style("font-size",hf.fontSize+"px").text(b),{width:E,height:T}=QKt(w,k,i[b].attributes),S=w.insert("rect","#"+y).classed("er entityBox",!0).attr("x",0).attr("y",0).attr("width",E).attr("height",T).node().getBBox();o.setNode(d,{width:S.width,height:S.height,shape:"rect",id:d})}),f},JKt=function(r,i){i.nodes().forEach(function(o){o!==void 0&&i.node(o)!==void 0&&r.select("#"+o).attr("transform","translate("+(i.node(o).x-i.node(o).width/2)+","+(i.node(o).y-i.node(o).height/2)+" )")})},tDe=function(r){return(r.entityA+r.roleA+r.entityB).replace(/\s/g,"")},eXt=function(r,i){return r.forEach(function(o){i.setEdge(FI.get(o.entityA),FI.get(o.entityB),{relationship:o},tDe(o))}),r};let nDe=0;const tXt=function(r,i,o,l,f){nDe++;const b=o.edge(FI.get(i.entityA),FI.get(i.entityB),tDe(i)),d=V8().x(function(L){return L.x}).y(function(L){return L.y}).curve(UT),w=r.insert("path","#"+l).classed("er relationshipLine",!0).attr("d",d(b.points)).style("stroke",hf.stroke).style("fill","none");i.relSpec.relType===f.db.Identification.NON_IDENTIFYING&&w.attr("stroke-dasharray","8,8");let y="";switch(hf.arrowMarkerAbsolute&&(y=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,y=y.replace(/\(/g,"\\("),y=y.replace(/\)/g,"\\)")),i.relSpec.cardA){case f.db.Cardinality.ZERO_OR_ONE:w.attr("marker-end","url("+y+"#"+n4.ERMarkers.ZERO_OR_ONE_END+")");break;case f.db.Cardinality.ZERO_OR_MORE:w.attr("marker-end","url("+y+"#"+n4.ERMarkers.ZERO_OR_MORE_END+")");break;case f.db.Cardinality.ONE_OR_MORE:w.attr("marker-end","url("+y+"#"+n4.ERMarkers.ONE_OR_MORE_END+")");break;case f.db.Cardinality.ONLY_ONE:w.attr("marker-end","url("+y+"#"+n4.ERMarkers.ONLY_ONE_END+")");break}switch(i.relSpec.cardB){case f.db.Cardinality.ZERO_OR_ONE:w.attr("marker-start","url("+y+"#"+n4.ERMarkers.ZERO_OR_ONE_START+")");break;case f.db.Cardinality.ZERO_OR_MORE:w.attr("marker-start","url("+y+"#"+n4.ERMarkers.ZERO_OR_MORE_START+")");break;case f.db.Cardinality.ONE_OR_MORE:w.attr("marker-start","url("+y+"#"+n4.ERMarkers.ONE_OR_MORE_START+")");break;case f.db.Cardinality.ONLY_ONE:w.attr("marker-start","url("+y+"#"+n4.ERMarkers.ONLY_ONE_START+")");break}const k=w.node().getTotalLength(),E=w.node().getPointAtLength(k*.5),T="rel"+nDe,S=r.append("text").classed("er relationshipLabel",!0).attr("id",T).attr("x",E.x).attr("y",E.y).style("text-anchor","middle").style("dominant-baseline","middle").style("font-family",ht().fontFamily).style("font-size",hf.fontSize+"px").text(i.roleA).node().getBBox();r.insert("rect","#"+T).classed("er relationshipLabelBox",!0).attr("x",E.x-S.width/2).attr("y",E.y-S.height/2).attr("width",S.width).attr("height",S.height)},nXt=function(r,i,o,l){hf=ht().er,Se.info("Drawing ER diagram");const f=ht().securityLevel;let b;f==="sandbox"&&(b=Cn("#i"+i));const w=Cn(f==="sandbox"?b.nodes()[0].contentDocument.body:"body").select(`[id='${i}']`);n4.insertMarkers(w,hf);let y;y=new zh({multigraph:!0,directed:!0,compound:!1}).setGraph({rankdir:hf.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});const k=ZKt(w,l.db.getEntities(),y),E=eXt(l.db.getRelationships(),y);bC(y),JKt(w,y),E.forEach(function(O){tXt(w,O,y,k,l)});const T=hf.diagramPadding;Fs.insertTitle(w,"entityTitleText",hf.titleTopMargin,l.db.getDiagramTitle());const C=w.node().getBBox(),S=C.width+T*2,L=C.height+T*2;Iv(w,L,S,hf.useMaxWidth),w.attr("viewBox",`${C.x-T} ${C.y-T} ${S} ${L}`)},rXt="28e9f9db-3c8d-5aa5-9faf-44286ae5937c";function iXt(r="",i=""){const o=r.replace(KKt,"");return`${rDe(i)}${rDe(o)}${WKt(r,rXt)}`}function rDe(r=""){return r.length>0?`${r}-`:""}const sXt={setConf:XKt,draw:nXt};var Coe=function(){var r=function(tg,Di,Bi,ra){for(Bi=Bi||{},ra=tg.length;ra--;Bi[tg[ra]]=Di);return Bi},i=[1,9],o=[1,7],l=[1,6],f=[1,8],b=[1,20,21,22,23,38,44,46,48,52,66,67,86,87,88,89,90,91,95,105,106,109,111,112,118,119,120,121,122,123,124,125,126,127],d=[2,10],w=[1,20],y=[1,21],k=[1,22],E=[1,23],T=[1,30],C=[1,32],S=[1,33],L=[1,34],O=[1,62],B=[1,48],N=[1,52],F=[1,36],R=[1,37],q=[1,38],X=[1,39],te=[1,40],H=[1,56],Y=[1,63],z=[1,51],W=[1,53],Z=[1,55],G=[1,59],ae=[1,60],$=[1,41],ge=[1,42],ee=[1,43],de=[1,44],re=[1,61],ke=[1,50],Ce=[1,54],_e=[1,57],Te=[1,58],Be=[1,49],Ge=[1,66],Xe=[1,71],Ee=[1,20,21,22,23,38,42,44,46,48,52,66,67,86,87,88,89,90,91,95,105,106,109,111,112,118,119,120,121,122,123,124,125,126,127],Ze=[1,75],Ie=[1,74],Oe=[1,76],Le=[20,21,23,81,82],$e=[1,99],xe=[1,104],Ae=[1,107],je=[1,108],me=[1,101],vt=[1,106],ve=[1,109],Zt=[1,102],nt=[1,114],xn=[1,113],cn=[1,103],jt=[1,105],ot=[1,110],be=[1,111],We=[1,112],ct=[1,115],Yt=[20,21,22,23,81,82],Ut=[20,21,22,23,53,81,82],Wn=[20,21,22,23,40,52,53,55,57,59,61,63,65,66,67,69,71,73,74,76,81,82,91,95,105,106,109,111,112,122,123,124,125,126,127],Gt=[20,21,23],Rn=[20,21,23,52,66,67,81,82,91,95,105,106,109,111,112,122,123,124,125,126,127],si=[1,12,20,21,22,23,24,38,42,44,46,48,52,66,67,86,87,88,89,90,91,95,105,106,109,111,112,118,119,120,121,122,123,124,125,126,127],$r=[52,66,67,91,95,105,106,109,111,112,122,123,124,125,126,127],nr=[1,149],Kn=[1,157],Jt=[1,158],en=[1,159],In=[1,160],hn=[1,144],Fr=[1,145],Pt=[1,141],ei=[1,152],nn=[1,153],hi=[1,154],Hi=[1,155],ss=[1,156],ls=[1,161],vs=[1,162],ti=[1,147],zi=[1,150],as=[1,146],ai=[1,143],hc=[20,21,22,23,38,42,44,46,48,52,66,67,86,87,88,89,90,91,95,105,106,109,111,112,118,119,120,121,122,123,124,125,126,127],xu=[1,165],No=[20,21,22,23,26,52,66,67,91,105,106,109,111,112,122,123,124,125,126,127],Si=[20,21,22,23,24,26,38,40,41,42,52,56,58,60,62,64,66,67,68,70,72,73,75,77,81,82,86,87,88,89,90,91,92,95,105,106,109,111,112,113,114,122,123,124,125,126,127],Yc=[12,21,22,24],lh=[22,106],su=[1,250],Ru=[1,245],fc=[1,246],Ll=[1,254],ol=[1,251],Ur=[1,248],bt=[1,247],$n=[1,249],Er=[1,252],Ss=[1,253],wo=[1,255],Po=[1,273],Ra=[20,21,23,106],Eu=[20,21,22,23,66,67,86,102,105,106,109,110,111,112,113],Lc={trace:function(){},yy:{},symbols_:{error:2,start:3,mermaidDoc:4,directive:5,openDirective:6,typeDirective:7,closeDirective:8,separator:9,":":10,argDirective:11,open_directive:12,type_directive:13,arg_directive:14,close_directive:15,graphConfig:16,document:17,line:18,statement:19,SEMI:20,NEWLINE:21,SPACE:22,EOF:23,GRAPH:24,NODIR:25,DIR:26,FirstStmtSeperator:27,ending:28,endToken:29,spaceList:30,spaceListNewline:31,verticeStatement:32,styleStatement:33,linkStyleStatement:34,classDefStatement:35,classStatement:36,clickStatement:37,subgraph:38,text:39,SQS:40,SQE:41,end:42,direction:43,acc_title:44,acc_title_value:45,acc_descr:46,acc_descr_value:47,acc_descr_multiline_value:48,link:49,node:50,vertex:51,AMP:52,STYLE_SEPARATOR:53,idString:54,DOUBLECIRCLESTART:55,DOUBLECIRCLEEND:56,PS:57,PE:58,"(-":59,"-)":60,STADIUMSTART:61,STADIUMEND:62,SUBROUTINESTART:63,SUBROUTINEEND:64,VERTEX_WITH_PROPS_START:65,ALPHA:66,COLON:67,PIPE:68,CYLINDERSTART:69,CYLINDEREND:70,DIAMOND_START:71,DIAMOND_STOP:72,TAGEND:73,TRAPSTART:74,TRAPEND:75,INVTRAPSTART:76,INVTRAPEND:77,linkStatement:78,arrowText:79,TESTSTR:80,START_LINK:81,LINK:82,textToken:83,STR:84,keywords:85,STYLE:86,LINKSTYLE:87,CLASSDEF:88,CLASS:89,CLICK:90,DOWN:91,UP:92,textNoTags:93,textNoTagsToken:94,DEFAULT:95,stylesOpt:96,alphaNum:97,CALLBACKNAME:98,CALLBACKARGS:99,HREF:100,LINK_TARGET:101,HEX:102,numList:103,INTERPOLATE:104,NUM:105,COMMA:106,style:107,styleComponent:108,MINUS:109,UNIT:110,BRKT:111,DOT:112,PCT:113,TAGSTART:114,alphaNumToken:115,idStringToken:116,alphaNumStatement:117,direction_tb:118,direction_bt:119,direction_rl:120,direction_lr:121,PUNCTUATION:122,UNICODE_TEXT:123,PLUS:124,EQUALS:125,MULT:126,UNDERSCORE:127,graphCodeTokens:128,ARROW_CROSS:129,ARROW_POINT:130,ARROW_CIRCLE:131,ARROW_OPEN:132,QUOTE:133,$accept:0,$end:1},terminals_:{2:"error",10:":",12:"open_directive",13:"type_directive",14:"arg_directive",15:"close_directive",20:"SEMI",21:"NEWLINE",22:"SPACE",23:"EOF",24:"GRAPH",25:"NODIR",26:"DIR",38:"subgraph",40:"SQS",41:"SQE",42:"end",44:"acc_title",45:"acc_title_value",46:"acc_descr",47:"acc_descr_value",48:"acc_descr_multiline_value",52:"AMP",53:"STYLE_SEPARATOR",55:"DOUBLECIRCLESTART",56:"DOUBLECIRCLEEND",57:"PS",58:"PE",59:"(-",60:"-)",61:"STADIUMSTART",62:"STADIUMEND",63:"SUBROUTINESTART",64:"SUBROUTINEEND",65:"VERTEX_WITH_PROPS_START",66:"ALPHA",67:"COLON",68:"PIPE",69:"CYLINDERSTART",70:"CYLINDEREND",71:"DIAMOND_START",72:"DIAMOND_STOP",73:"TAGEND",74:"TRAPSTART",75:"TRAPEND",76:"INVTRAPSTART",77:"INVTRAPEND",80:"TESTSTR",81:"START_LINK",82:"LINK",84:"STR",86:"STYLE",87:"LINKSTYLE",88:"CLASSDEF",89:"CLASS",90:"CLICK",91:"DOWN",92:"UP",95:"DEFAULT",98:"CALLBACKNAME",99:"CALLBACKARGS",100:"HREF",101:"LINK_TARGET",102:"HEX",104:"INTERPOLATE",105:"NUM",106:"COMMA",109:"MINUS",110:"UNIT",111:"BRKT",112:"DOT",113:"PCT",114:"TAGSTART",118:"direction_tb",119:"direction_bt",120:"direction_rl",121:"direction_lr",122:"PUNCTUATION",123:"UNICODE_TEXT",124:"PLUS",125:"EQUALS",126:"MULT",127:"UNDERSCORE",129:"ARROW_CROSS",130:"ARROW_POINT",131:"ARROW_CIRCLE",132:"ARROW_OPEN",133:"QUOTE"},productions_:[0,[3,1],[3,2],[5,4],[5,6],[6,1],[7,1],[11,1],[8,1],[4,2],[17,0],[17,2],[18,1],[18,1],[18,1],[18,1],[18,1],[16,2],[16,2],[16,2],[16,3],[28,2],[28,1],[29,1],[29,1],[29,1],[27,1],[27,1],[27,2],[31,2],[31,2],[31,1],[31,1],[30,2],[30,1],[19,2],[19,2],[19,2],[19,2],[19,2],[19,2],[19,9],[19,6],[19,4],[19,1],[19,2],[19,2],[19,1],[9,1],[9,1],[9,1],[32,3],[32,4],[32,2],[32,1],[50,1],[50,5],[50,3],[51,4],[51,4],[51,6],[51,4],[51,4],[51,4],[51,8],[51,4],[51,4],[51,4],[51,6],[51,4],[51,4],[51,4],[51,4],[51,4],[51,1],[49,2],[49,3],[49,3],[49,1],[49,3],[78,1],[79,3],[39,1],[39,2],[39,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[85,1],[93,1],[93,2],[35,5],[35,5],[36,5],[37,2],[37,4],[37,3],[37,5],[37,2],[37,4],[37,4],[37,6],[37,2],[37,4],[37,2],[37,4],[37,4],[37,6],[33,5],[33,5],[34,5],[34,5],[34,9],[34,9],[34,7],[34,7],[103,1],[103,3],[96,1],[96,3],[107,1],[107,2],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[108,1],[83,1],[83,1],[83,1],[83,1],[83,1],[83,1],[94,1],[94,1],[94,1],[94,1],[54,1],[54,2],[97,1],[97,2],[117,1],[117,1],[117,1],[117,1],[43,1],[43,1],[43,1],[43,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[115,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[116,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1],[128,1]],performAction:function(Di,Bi,ra,Rr,au,gt,O6){var It=gt.length-1;switch(au){case 5:Rr.parseDirective("%%{","open_directive");break;case 6:Rr.parseDirective(gt[It],"type_directive");break;case 7:gt[It]=gt[It].trim().replace(/'/g,'"'),Rr.parseDirective(gt[It],"arg_directive");break;case 8:Rr.parseDirective("}%%","close_directive","flowchart");break;case 10:this.$=[];break;case 11:(!Array.isArray(gt[It])||gt[It].length>0)&>[It-1].push(gt[It]),this.$=gt[It-1];break;case 12:case 82:case 84:case 96:case 152:case 154:case 155:this.$=gt[It];break;case 19:Rr.setDirection("TB"),this.$="TB";break;case 20:Rr.setDirection(gt[It-1]),this.$=gt[It-1];break;case 35:this.$=gt[It-1].nodes;break;case 36:case 37:case 38:case 39:case 40:this.$=[];break;case 41:this.$=Rr.addSubGraph(gt[It-6],gt[It-1],gt[It-4]);break;case 42:this.$=Rr.addSubGraph(gt[It-3],gt[It-1],gt[It-3]);break;case 43:this.$=Rr.addSubGraph(void 0,gt[It-1],void 0);break;case 45:this.$=gt[It].trim(),Rr.setAccTitle(this.$);break;case 46:case 47:this.$=gt[It].trim(),Rr.setAccDescription(this.$);break;case 51:Rr.addLink(gt[It-2].stmt,gt[It],gt[It-1]),this.$={stmt:gt[It],nodes:gt[It].concat(gt[It-2].nodes)};break;case 52:Rr.addLink(gt[It-3].stmt,gt[It-1],gt[It-2]),this.$={stmt:gt[It-1],nodes:gt[It-1].concat(gt[It-3].nodes)};break;case 53:this.$={stmt:gt[It-1],nodes:gt[It-1]};break;case 54:this.$={stmt:gt[It],nodes:gt[It]};break;case 55:this.$=[gt[It]];break;case 56:this.$=gt[It-4].concat(gt[It]);break;case 57:this.$=[gt[It-2]],Rr.setClass(gt[It-2],gt[It]);break;case 58:this.$=gt[It-3],Rr.addVertex(gt[It-3],gt[It-1],"square");break;case 59:this.$=gt[It-3],Rr.addVertex(gt[It-3],gt[It-1],"doublecircle");break;case 60:this.$=gt[It-5],Rr.addVertex(gt[It-5],gt[It-2],"circle");break;case 61:this.$=gt[It-3],Rr.addVertex(gt[It-3],gt[It-1],"ellipse");break;case 62:this.$=gt[It-3],Rr.addVertex(gt[It-3],gt[It-1],"stadium");break;case 63:this.$=gt[It-3],Rr.addVertex(gt[It-3],gt[It-1],"subroutine");break;case 64:this.$=gt[It-7],Rr.addVertex(gt[It-7],gt[It-1],"rect",void 0,void 0,void 0,Object.fromEntries([[gt[It-5],gt[It-3]]]));break;case 65:this.$=gt[It-3],Rr.addVertex(gt[It-3],gt[It-1],"cylinder");break;case 66:this.$=gt[It-3],Rr.addVertex(gt[It-3],gt[It-1],"round");break;case 67:this.$=gt[It-3],Rr.addVertex(gt[It-3],gt[It-1],"diamond");break;case 68:this.$=gt[It-5],Rr.addVertex(gt[It-5],gt[It-2],"hexagon");break;case 69:this.$=gt[It-3],Rr.addVertex(gt[It-3],gt[It-1],"odd");break;case 70:this.$=gt[It-3],Rr.addVertex(gt[It-3],gt[It-1],"trapezoid");break;case 71:this.$=gt[It-3],Rr.addVertex(gt[It-3],gt[It-1],"inv_trapezoid");break;case 72:this.$=gt[It-3],Rr.addVertex(gt[It-3],gt[It-1],"lean_right");break;case 73:this.$=gt[It-3],Rr.addVertex(gt[It-3],gt[It-1],"lean_left");break;case 74:this.$=gt[It],Rr.addVertex(gt[It]);break;case 75:gt[It-1].text=gt[It],this.$=gt[It-1];break;case 76:case 77:gt[It-2].text=gt[It-1],this.$=gt[It-2];break;case 78:this.$=gt[It];break;case 79:var n0=Rr.destructLink(gt[It],gt[It-2]);this.$={type:n0.type,stroke:n0.stroke,length:n0.length,text:gt[It-1]};break;case 80:var n0=Rr.destructLink(gt[It]);this.$={type:n0.type,stroke:n0.stroke,length:n0.length};break;case 81:this.$=gt[It-1];break;case 83:case 97:case 153:this.$=gt[It-1]+""+gt[It];break;case 98:case 99:this.$=gt[It-4],Rr.addClass(gt[It-2],gt[It]);break;case 100:this.$=gt[It-4],Rr.setClass(gt[It-2],gt[It]);break;case 101:case 109:this.$=gt[It-1],Rr.setClickEvent(gt[It-1],gt[It]);break;case 102:case 110:this.$=gt[It-3],Rr.setClickEvent(gt[It-3],gt[It-2]),Rr.setTooltip(gt[It-3],gt[It]);break;case 103:this.$=gt[It-2],Rr.setClickEvent(gt[It-2],gt[It-1],gt[It]);break;case 104:this.$=gt[It-4],Rr.setClickEvent(gt[It-4],gt[It-3],gt[It-2]),Rr.setTooltip(gt[It-4],gt[It]);break;case 105:case 111:this.$=gt[It-1],Rr.setLink(gt[It-1],gt[It]);break;case 106:case 112:this.$=gt[It-3],Rr.setLink(gt[It-3],gt[It-2]),Rr.setTooltip(gt[It-3],gt[It]);break;case 107:case 113:this.$=gt[It-3],Rr.setLink(gt[It-3],gt[It-2],gt[It]);break;case 108:case 114:this.$=gt[It-5],Rr.setLink(gt[It-5],gt[It-4],gt[It]),Rr.setTooltip(gt[It-5],gt[It-2]);break;case 115:this.$=gt[It-4],Rr.addVertex(gt[It-2],void 0,void 0,gt[It]);break;case 116:case 118:this.$=gt[It-4],Rr.updateLink(gt[It-2],gt[It]);break;case 117:this.$=gt[It-4],Rr.updateLink([gt[It-2]],gt[It]);break;case 119:this.$=gt[It-8],Rr.updateLinkInterpolate([gt[It-6]],gt[It-2]),Rr.updateLink([gt[It-6]],gt[It]);break;case 120:this.$=gt[It-8],Rr.updateLinkInterpolate(gt[It-6],gt[It-2]),Rr.updateLink(gt[It-6],gt[It]);break;case 121:this.$=gt[It-6],Rr.updateLinkInterpolate([gt[It-4]],gt[It]);break;case 122:this.$=gt[It-6],Rr.updateLinkInterpolate(gt[It-4],gt[It]);break;case 123:case 125:this.$=[gt[It]];break;case 124:case 126:gt[It-2].push(gt[It]),this.$=gt[It-2];break;case 128:this.$=gt[It-1]+gt[It];break;case 150:this.$=gt[It];break;case 151:this.$=gt[It-1]+""+gt[It];break;case 156:this.$="v";break;case 157:this.$="-";break;case 158:this.$={stmt:"dir",value:"TB"};break;case 159:this.$={stmt:"dir",value:"BT"};break;case 160:this.$={stmt:"dir",value:"RL"};break;case 161:this.$={stmt:"dir",value:"LR"};break}},table:[{3:1,4:2,5:3,6:5,12:i,16:4,21:o,22:l,24:f},{1:[3]},{1:[2,1]},{3:10,4:2,5:3,6:5,12:i,16:4,21:o,22:l,24:f},r(b,d,{17:11}),{7:12,13:[1,13]},{16:14,21:o,22:l,24:f},{16:15,21:o,22:l,24:f},{25:[1,16],26:[1,17]},{13:[2,5]},{1:[2,2]},{1:[2,9],18:18,19:19,20:w,21:y,22:k,23:E,32:24,33:25,34:26,35:27,36:28,37:29,38:T,43:31,44:C,46:S,48:L,50:35,51:45,52:O,54:46,66:B,67:N,86:F,87:R,88:q,89:X,90:te,91:H,95:Y,105:z,106:W,109:Z,111:G,112:ae,116:47,118:$,119:ge,120:ee,121:de,122:re,123:ke,124:Ce,125:_e,126:Te,127:Be},{8:64,10:[1,65],15:Ge},r([10,15],[2,6]),r(b,[2,17]),r(b,[2,18]),r(b,[2,19]),{20:[1,68],21:[1,69],22:Xe,27:67,30:70},r(Ee,[2,11]),r(Ee,[2,12]),r(Ee,[2,13]),r(Ee,[2,14]),r(Ee,[2,15]),r(Ee,[2,16]),{9:72,20:Ze,21:Ie,23:Oe,49:73,78:77,81:[1,78],82:[1,79]},{9:80,20:Ze,21:Ie,23:Oe},{9:81,20:Ze,21:Ie,23:Oe},{9:82,20:Ze,21:Ie,23:Oe},{9:83,20:Ze,21:Ie,23:Oe},{9:84,20:Ze,21:Ie,23:Oe},{9:86,20:Ze,21:Ie,22:[1,85],23:Oe},r(Ee,[2,44]),{45:[1,87]},{47:[1,88]},r(Ee,[2,47]),r(Le,[2,54],{30:89,22:Xe}),{22:[1,90]},{22:[1,91]},{22:[1,92]},{22:[1,93]},{26:$e,52:xe,66:Ae,67:je,84:[1,97],91:me,97:96,98:[1,94],100:[1,95],105:vt,106:ve,109:Zt,111:nt,112:xn,115:100,117:98,122:cn,123:jt,124:ot,125:be,126:We,127:ct},r(Ee,[2,158]),r(Ee,[2,159]),r(Ee,[2,160]),r(Ee,[2,161]),r(Yt,[2,55],{53:[1,116]}),r(Ut,[2,74],{116:129,40:[1,117],52:O,55:[1,118],57:[1,119],59:[1,120],61:[1,121],63:[1,122],65:[1,123],66:B,67:N,69:[1,124],71:[1,125],73:[1,126],74:[1,127],76:[1,128],91:H,95:Y,105:z,106:W,109:Z,111:G,112:ae,122:re,123:ke,124:Ce,125:_e,126:Te,127:Be}),r(Wn,[2,150]),r(Wn,[2,175]),r(Wn,[2,176]),r(Wn,[2,177]),r(Wn,[2,178]),r(Wn,[2,179]),r(Wn,[2,180]),r(Wn,[2,181]),r(Wn,[2,182]),r(Wn,[2,183]),r(Wn,[2,184]),r(Wn,[2,185]),r(Wn,[2,186]),r(Wn,[2,187]),r(Wn,[2,188]),r(Wn,[2,189]),r(Wn,[2,190]),{9:130,20:Ze,21:Ie,23:Oe},{11:131,14:[1,132]},r(Gt,[2,8]),r(b,[2,20]),r(b,[2,26]),r(b,[2,27]),{21:[1,133]},r(Rn,[2,34],{30:134,22:Xe}),r(Ee,[2,35]),{50:135,51:45,52:O,54:46,66:B,67:N,91:H,95:Y,105:z,106:W,109:Z,111:G,112:ae,116:47,122:re,123:ke,124:Ce,125:_e,126:Te,127:Be},r(si,[2,48]),r(si,[2,49]),r(si,[2,50]),r($r,[2,78],{79:136,68:[1,138],80:[1,137]}),{22:nr,24:Kn,26:Jt,38:en,39:139,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},r([52,66,67,68,80,91,95,105,106,109,111,112,122,123,124,125,126,127],[2,80]),r(Ee,[2,36]),r(Ee,[2,37]),r(Ee,[2,38]),r(Ee,[2,39]),r(Ee,[2,40]),{22:nr,24:Kn,26:Jt,38:en,39:163,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},r(hc,d,{17:164}),r(Ee,[2,45]),r(Ee,[2,46]),r(Le,[2,53],{52:xu}),{26:$e,52:xe,66:Ae,67:je,91:me,97:166,102:[1,167],105:vt,106:ve,109:Zt,111:nt,112:xn,115:100,117:98,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{95:[1,168],103:169,105:[1,170]},{26:$e,52:xe,66:Ae,67:je,91:me,95:[1,171],97:172,105:vt,106:ve,109:Zt,111:nt,112:xn,115:100,117:98,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{26:$e,52:xe,66:Ae,67:je,91:me,97:173,105:vt,106:ve,109:Zt,111:nt,112:xn,115:100,117:98,122:cn,123:jt,124:ot,125:be,126:We,127:ct},r(Gt,[2,101],{22:[1,174],99:[1,175]}),r(Gt,[2,105],{22:[1,176]}),r(Gt,[2,109],{115:100,117:178,22:[1,177],26:$e,52:xe,66:Ae,67:je,91:me,105:vt,106:ve,109:Zt,111:nt,112:xn,122:cn,123:jt,124:ot,125:be,126:We,127:ct}),r(Gt,[2,111],{22:[1,179]}),r(No,[2,152]),r(No,[2,154]),r(No,[2,155]),r(No,[2,156]),r(No,[2,157]),r(Si,[2,162]),r(Si,[2,163]),r(Si,[2,164]),r(Si,[2,165]),r(Si,[2,166]),r(Si,[2,167]),r(Si,[2,168]),r(Si,[2,169]),r(Si,[2,170]),r(Si,[2,171]),r(Si,[2,172]),r(Si,[2,173]),r(Si,[2,174]),{52:O,54:180,66:B,67:N,91:H,95:Y,105:z,106:W,109:Z,111:G,112:ae,116:47,122:re,123:ke,124:Ce,125:_e,126:Te,127:Be},{22:nr,24:Kn,26:Jt,38:en,39:181,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,39:182,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,39:184,42:In,52:xe,57:[1,183],66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,39:185,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,39:186,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,39:187,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{66:[1,188]},{22:nr,24:Kn,26:Jt,38:en,39:189,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,39:190,42:In,52:xe,66:Ae,67:je,71:[1,191],73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,39:192,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,39:193,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,39:194,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},r(Wn,[2,151]),r(Yc,[2,3]),{8:195,15:Ge},{15:[2,7]},r(b,[2,28]),r(Rn,[2,33]),r(Le,[2,51],{30:196,22:Xe}),r($r,[2,75],{22:[1,197]}),{22:[1,198]},{22:nr,24:Kn,26:Jt,38:en,39:199,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,82:[1,200],83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},r(Si,[2,82]),r(Si,[2,84]),r(Si,[2,140]),r(Si,[2,141]),r(Si,[2,142]),r(Si,[2,143]),r(Si,[2,144]),r(Si,[2,145]),r(Si,[2,146]),r(Si,[2,147]),r(Si,[2,148]),r(Si,[2,149]),r(Si,[2,85]),r(Si,[2,86]),r(Si,[2,87]),r(Si,[2,88]),r(Si,[2,89]),r(Si,[2,90]),r(Si,[2,91]),r(Si,[2,92]),r(Si,[2,93]),r(Si,[2,94]),r(Si,[2,95]),{9:203,20:Ze,21:Ie,22:nr,23:Oe,24:Kn,26:Jt,38:en,40:[1,202],42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{18:18,19:19,20:w,21:y,22:k,23:E,32:24,33:25,34:26,35:27,36:28,37:29,38:T,42:[1,204],43:31,44:C,46:S,48:L,50:35,51:45,52:O,54:46,66:B,67:N,86:F,87:R,88:q,89:X,90:te,91:H,95:Y,105:z,106:W,109:Z,111:G,112:ae,116:47,118:$,119:ge,120:ee,121:de,122:re,123:ke,124:Ce,125:_e,126:Te,127:Be},{22:Xe,30:205},{22:[1,206],26:$e,52:xe,66:Ae,67:je,91:me,105:vt,106:ve,109:Zt,111:nt,112:xn,115:100,117:178,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:[1,207]},{22:[1,208]},{22:[1,209],106:[1,210]},r(lh,[2,123]),{22:[1,211]},{22:[1,212],26:$e,52:xe,66:Ae,67:je,91:me,105:vt,106:ve,109:Zt,111:nt,112:xn,115:100,117:178,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:[1,213],26:$e,52:xe,66:Ae,67:je,91:me,105:vt,106:ve,109:Zt,111:nt,112:xn,115:100,117:178,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{84:[1,214]},r(Gt,[2,103],{22:[1,215]}),{84:[1,216],101:[1,217]},{84:[1,218]},r(No,[2,153]),{84:[1,219],101:[1,220]},r(Yt,[2,57],{116:129,52:O,66:B,67:N,91:H,95:Y,105:z,106:W,109:Z,111:G,112:ae,122:re,123:ke,124:Ce,125:_e,126:Te,127:Be}),{22:nr,24:Kn,26:Jt,38:en,41:[1,221],42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,42:In,52:xe,56:[1,222],66:Ae,67:je,73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,39:223,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,42:In,52:xe,58:[1,224],66:Ae,67:je,73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,42:In,52:xe,60:[1,225],66:Ae,67:je,73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,42:In,52:xe,62:[1,226],66:Ae,67:je,73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,42:In,52:xe,64:[1,227],66:Ae,67:je,73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{67:[1,228]},{22:nr,24:Kn,26:Jt,38:en,42:In,52:xe,66:Ae,67:je,70:[1,229],73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,42:In,52:xe,66:Ae,67:je,72:[1,230],73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,39:231,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,41:[1,232],42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,42:In,52:xe,66:Ae,67:je,73:hn,75:[1,233],77:[1,234],81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{22:nr,24:Kn,26:Jt,38:en,42:In,52:xe,66:Ae,67:je,73:hn,75:[1,236],77:[1,235],81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{9:237,20:Ze,21:Ie,23:Oe},r(Le,[2,52],{52:xu}),r($r,[2,77]),r($r,[2,76]),{22:nr,24:Kn,26:Jt,38:en,42:In,52:xe,66:Ae,67:je,68:[1,238],73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},r($r,[2,79]),r(Si,[2,83]),{22:nr,24:Kn,26:Jt,38:en,39:239,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},r(hc,d,{17:240}),r(Ee,[2,43]),{51:241,52:O,54:46,66:B,67:N,91:H,95:Y,105:z,106:W,109:Z,111:G,112:ae,116:47,122:re,123:ke,124:Ce,125:_e,126:Te,127:Be},{22:su,66:Ru,67:fc,86:Ll,96:242,102:ol,105:Ur,107:243,108:244,109:bt,110:$n,111:Er,112:Ss,113:wo},{22:su,66:Ru,67:fc,86:Ll,96:256,102:ol,105:Ur,107:243,108:244,109:bt,110:$n,111:Er,112:Ss,113:wo},{22:su,66:Ru,67:fc,86:Ll,96:257,102:ol,104:[1,258],105:Ur,107:243,108:244,109:bt,110:$n,111:Er,112:Ss,113:wo},{22:su,66:Ru,67:fc,86:Ll,96:259,102:ol,104:[1,260],105:Ur,107:243,108:244,109:bt,110:$n,111:Er,112:Ss,113:wo},{105:[1,261]},{22:su,66:Ru,67:fc,86:Ll,96:262,102:ol,105:Ur,107:243,108:244,109:bt,110:$n,111:Er,112:Ss,113:wo},{22:su,66:Ru,67:fc,86:Ll,96:263,102:ol,105:Ur,107:243,108:244,109:bt,110:$n,111:Er,112:Ss,113:wo},{26:$e,52:xe,66:Ae,67:je,91:me,97:264,105:vt,106:ve,109:Zt,111:nt,112:xn,115:100,117:98,122:cn,123:jt,124:ot,125:be,126:We,127:ct},r(Gt,[2,102]),{84:[1,265]},r(Gt,[2,106],{22:[1,266]}),r(Gt,[2,107]),r(Gt,[2,110]),r(Gt,[2,112],{22:[1,267]}),r(Gt,[2,113]),r(Ut,[2,58]),r(Ut,[2,59]),{22:nr,24:Kn,26:Jt,38:en,42:In,52:xe,58:[1,268],66:Ae,67:je,73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},r(Ut,[2,66]),r(Ut,[2,61]),r(Ut,[2,62]),r(Ut,[2,63]),{66:[1,269]},r(Ut,[2,65]),r(Ut,[2,67]),{22:nr,24:Kn,26:Jt,38:en,42:In,52:xe,66:Ae,67:je,72:[1,270],73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},r(Ut,[2,69]),r(Ut,[2,70]),r(Ut,[2,72]),r(Ut,[2,71]),r(Ut,[2,73]),r(Yc,[2,4]),r([22,52,66,67,91,95,105,106,109,111,112,122,123,124,125,126,127],[2,81]),{22:nr,24:Kn,26:Jt,38:en,41:[1,271],42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{18:18,19:19,20:w,21:y,22:k,23:E,32:24,33:25,34:26,35:27,36:28,37:29,38:T,42:[1,272],43:31,44:C,46:S,48:L,50:35,51:45,52:O,54:46,66:B,67:N,86:F,87:R,88:q,89:X,90:te,91:H,95:Y,105:z,106:W,109:Z,111:G,112:ae,116:47,118:$,119:ge,120:ee,121:de,122:re,123:ke,124:Ce,125:_e,126:Te,127:Be},r(Yt,[2,56]),r(Gt,[2,115],{106:Po}),r(Ra,[2,125],{108:274,22:su,66:Ru,67:fc,86:Ll,102:ol,105:Ur,109:bt,110:$n,111:Er,112:Ss,113:wo}),r(Eu,[2,127]),r(Eu,[2,129]),r(Eu,[2,130]),r(Eu,[2,131]),r(Eu,[2,132]),r(Eu,[2,133]),r(Eu,[2,134]),r(Eu,[2,135]),r(Eu,[2,136]),r(Eu,[2,137]),r(Eu,[2,138]),r(Eu,[2,139]),r(Gt,[2,116],{106:Po}),r(Gt,[2,117],{106:Po}),{22:[1,275]},r(Gt,[2,118],{106:Po}),{22:[1,276]},r(lh,[2,124]),r(Gt,[2,98],{106:Po}),r(Gt,[2,99],{106:Po}),r(Gt,[2,100],{115:100,117:178,26:$e,52:xe,66:Ae,67:je,91:me,105:vt,106:ve,109:Zt,111:nt,112:xn,122:cn,123:jt,124:ot,125:be,126:We,127:ct}),r(Gt,[2,104]),{101:[1,277]},{101:[1,278]},{58:[1,279]},{68:[1,280]},{72:[1,281]},{9:282,20:Ze,21:Ie,23:Oe},r(Ee,[2,42]),{22:su,66:Ru,67:fc,86:Ll,102:ol,105:Ur,107:283,108:244,109:bt,110:$n,111:Er,112:Ss,113:wo},r(Eu,[2,128]),{26:$e,52:xe,66:Ae,67:je,91:me,97:284,105:vt,106:ve,109:Zt,111:nt,112:xn,115:100,117:98,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{26:$e,52:xe,66:Ae,67:je,91:me,97:285,105:vt,106:ve,109:Zt,111:nt,112:xn,115:100,117:98,122:cn,123:jt,124:ot,125:be,126:We,127:ct},r(Gt,[2,108]),r(Gt,[2,114]),r(Ut,[2,60]),{22:nr,24:Kn,26:Jt,38:en,39:286,42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:140,84:Pt,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},r(Ut,[2,68]),r(hc,d,{17:287}),r(Ra,[2,126],{108:274,22:su,66:Ru,67:fc,86:Ll,102:ol,105:Ur,109:bt,110:$n,111:Er,112:Ss,113:wo}),r(Gt,[2,121],{115:100,117:178,22:[1,288],26:$e,52:xe,66:Ae,67:je,91:me,105:vt,106:ve,109:Zt,111:nt,112:xn,122:cn,123:jt,124:ot,125:be,126:We,127:ct}),r(Gt,[2,122],{115:100,117:178,22:[1,289],26:$e,52:xe,66:Ae,67:je,91:me,105:vt,106:ve,109:Zt,111:nt,112:xn,122:cn,123:jt,124:ot,125:be,126:We,127:ct}),{22:nr,24:Kn,26:Jt,38:en,41:[1,290],42:In,52:xe,66:Ae,67:je,73:hn,81:Fr,83:201,85:151,86:ei,87:nn,88:hi,89:Hi,90:ss,91:ls,92:vs,94:142,95:ti,105:vt,106:ve,109:zi,111:nt,112:xn,113:as,114:ai,115:148,122:cn,123:jt,124:ot,125:be,126:We,127:ct},{18:18,19:19,20:w,21:y,22:k,23:E,32:24,33:25,34:26,35:27,36:28,37:29,38:T,42:[1,291],43:31,44:C,46:S,48:L,50:35,51:45,52:O,54:46,66:B,67:N,86:F,87:R,88:q,89:X,90:te,91:H,95:Y,105:z,106:W,109:Z,111:G,112:ae,116:47,118:$,119:ge,120:ee,121:de,122:re,123:ke,124:Ce,125:_e,126:Te,127:Be},{22:su,66:Ru,67:fc,86:Ll,96:292,102:ol,105:Ur,107:243,108:244,109:bt,110:$n,111:Er,112:Ss,113:wo},{22:su,66:Ru,67:fc,86:Ll,96:293,102:ol,105:Ur,107:243,108:244,109:bt,110:$n,111:Er,112:Ss,113:wo},r(Ut,[2,64]),r(Ee,[2,41]),r(Gt,[2,119],{106:Po}),r(Gt,[2,120],{106:Po})],defaultActions:{2:[2,1],9:[2,5],10:[2,2],132:[2,7]},parseError:function(Di,Bi){if(Bi.recoverable)this.trace(Di);else{var ra=new Error(Di);throw ra.hash=Bi,ra}},parse:function(Di){var Bi=this,ra=[0],Rr=[],au=[null],gt=[],O6=this.table,It="",n0=0,jO=0,rq=2,tS=1,iq=gt.slice.call(arguments,1),fh=Object.create(this.lexer),Qm={yy:{}};for(var nS in this.yy)Object.prototype.hasOwnProperty.call(this.yy,nS)&&(Qm.yy[nS]=this.yy[nS]);fh.setInput(Di,Qm.yy),Qm.yy.lexer=fh,Qm.yy.parser=this,typeof fh.yylloc>"u"&&(fh.yylloc={});var rS=fh.yylloc;gt.push(rS);var $O=fh.options&&fh.options.ranges;typeof Qm.yy.parseError=="function"?this.parseError=Qm.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function sq(){var z2;return z2=Rr.pop()||fh.lex()||tS,typeof z2!="number"&&(z2 instanceof Array&&(Rr=z2,z2=Rr.pop()),z2=Bi.symbols_[z2]||z2),z2}for(var D1,Zm,r0,iS,w4={},M7,H2,HO,D7;;){if(Zm=ra[ra.length-1],this.defaultActions[Zm]?r0=this.defaultActions[Zm]:((D1===null||typeof D1>"u")&&(D1=sq()),r0=O6[Zm]&&O6[Zm][D1]),typeof r0>"u"||!r0.length||!r0[0]){var sS="";D7=[];for(M7 in O6[Zm])this.terminals_[M7]&&M7>rq&&D7.push("'"+this.terminals_[M7]+"'");fh.showPosition?sS="Parse error on line "+(n0+1)+`:
-`+fh.showPosition()+`
-Expecting `+D7.join(", ")+", got '"+(this.terminals_[D1]||D1)+"'":sS="Parse error on line "+(n0+1)+": Unexpected "+(D1==tS?"end of input":"'"+(this.terminals_[D1]||D1)+"'"),this.parseError(sS,{text:fh.match,token:this.terminals_[D1]||D1,line:fh.yylineno,loc:rS,expected:D7})}if(r0[0]instanceof Array&&r0.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Zm+", token: "+D1);switch(r0[0]){case 1:ra.push(D1),au.push(fh.yytext),gt.push(fh.yylloc),ra.push(r0[1]),D1=null,jO=fh.yyleng,It=fh.yytext,n0=fh.yylineno,rS=fh.yylloc;break;case 2:if(H2=this.productions_[r0[1]][1],w4.$=au[au.length-H2],w4._$={first_line:gt[gt.length-(H2||1)].first_line,last_line:gt[gt.length-1].last_line,first_column:gt[gt.length-(H2||1)].first_column,last_column:gt[gt.length-1].last_column},$O&&(w4._$.range=[gt[gt.length-(H2||1)].range[0],gt[gt.length-1].range[1]]),iS=this.performAction.apply(w4,[It,jO,n0,Qm.yy,r0[1],au,gt].concat(iq)),typeof iS<"u")return iS;H2&&(ra=ra.slice(0,-1*H2*2),au=au.slice(0,-1*H2),gt=gt.slice(0,-1*H2)),ra.push(this.productions_[r0[1]][0]),au.push(w4.$),gt.push(w4._$),HO=O6[ra[ra.length-2]][ra[ra.length-1]],ra.push(HO);break;case 3:return!0}}return!0}},bd=function(){var tg={EOF:1,parseError:function(Bi,ra){if(this.yy.parser)this.yy.parser.parseError(Bi,ra);else throw new Error(Bi)},setInput:function(Di,Bi){return this.yy=Bi||this.yy||{},this._input=Di,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 Di=this._input[0];this.yytext+=Di,this.yyleng++,this.offset++,this.match+=Di,this.matched+=Di;var Bi=Di.match(/(?:\r\n?|\n).*/g);return Bi?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Di},unput:function(Di){var Bi=Di.length,ra=Di.split(/(?:\r\n?|\n)/g);this._input=Di+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Bi),this.offset-=Bi;var Rr=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),ra.length-1&&(this.yylineno-=ra.length-1);var au=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:ra?(ra.length===Rr.length?this.yylloc.first_column:0)+Rr[Rr.length-ra.length].length-ra[0].length:this.yylloc.first_column-Bi},this.options.ranges&&(this.yylloc.range=[au[0],au[0]+this.yyleng-Bi]),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(Di){this.unput(this.match.slice(Di))},pastInput:function(){var Di=this.matched.substr(0,this.matched.length-this.match.length);return(Di.length>20?"...":"")+Di.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Di=this.match;return Di.length<20&&(Di+=this._input.substr(0,20-Di.length)),(Di.substr(0,20)+(Di.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Di=this.pastInput(),Bi=new Array(Di.length+1).join("-");return Di+this.upcomingInput()+`
-`+Bi+"^"},test_match:function(Di,Bi){var ra,Rr,au;if(this.options.backtrack_lexer&&(au={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&&(au.yylloc.range=this.yylloc.range.slice(0))),Rr=Di[0].match(/(?:\r\n?|\n).*/g),Rr&&(this.yylineno+=Rr.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Rr?Rr[Rr.length-1].length-Rr[Rr.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Di[0].length},this.yytext+=Di[0],this.match+=Di[0],this.matches=Di,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(Di[0].length),this.matched+=Di[0],ra=this.performAction.call(this,this.yy,this,Bi,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),ra)return ra;if(this._backtrack){for(var gt in au)this[gt]=au[gt];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Di,Bi,ra,Rr;this._more||(this.yytext="",this.match="");for(var au=this._currentRules(),gt=0;gtBi[0].length)){if(Bi=ra,Rr=gt,this.options.backtrack_lexer){if(Di=this.test_match(ra,au[gt]),Di!==!1)return Di;if(this._backtrack){Bi=!1;continue}else return!1}else if(!this.options.flex)break}return Bi?(Di=this.test_match(Bi,au[Rr]),Di!==!1?Di:!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 Bi=this.next();return Bi||this.lex()},begin:function(Bi){this.conditionStack.push(Bi)},popState:function(){var Bi=this.conditionStack.length-1;return Bi>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(Bi){return Bi=this.conditionStack.length-1-Math.abs(Bi||0),Bi>=0?this.conditionStack[Bi]:"INITIAL"},pushState:function(Bi){this.begin(Bi)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Bi,ra,Rr,au){switch(Rr){case 0:return this.begin("open_directive"),12;case 1:return this.begin("type_directive"),13;case 2:return this.popState(),this.begin("arg_directive"),10;case 3:return this.popState(),this.popState(),15;case 4:return 14;case 5:break;case 6:break;case 7:return this.begin("acc_title"),44;case 8:return this.popState(),"acc_title_value";case 9:return this.begin("acc_descr"),46;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"STR";case 17:return 86;case 18:return 95;case 19:return 87;case 20:return 104;case 21:return 88;case 22:return 89;case 23:this.begin("href");break;case 24:this.popState();break;case 25:return 100;case 26:this.begin("callbackname");break;case 27:this.popState();break;case 28:this.popState(),this.begin("callbackargs");break;case 29:return 98;case 30:this.popState();break;case 31:return 99;case 32:this.begin("click");break;case 33:this.popState();break;case 34:return 90;case 35:return Bi.lex.firstGraph()&&this.begin("dir"),24;case 36:return Bi.lex.firstGraph()&&this.begin("dir"),24;case 37:return Bi.lex.firstGraph()&&this.begin("dir"),24;case 38:return 38;case 39:return 42;case 40:return 101;case 41:return 101;case 42:return 101;case 43:return 101;case 44:return this.popState(),25;case 45:return this.popState(),26;case 46:return this.popState(),26;case 47:return this.popState(),26;case 48:return this.popState(),26;case 49:return this.popState(),26;case 50:return this.popState(),26;case 51:return this.popState(),26;case 52:return this.popState(),26;case 53:return this.popState(),26;case 54:return this.popState(),26;case 55:return 118;case 56:return 119;case 57:return 120;case 58:return 121;case 59:return 105;case 60:return 111;case 61:return 53;case 62:return 67;case 63:return 52;case 64:return 20;case 65:return 106;case 66:return 126;case 67:return 82;case 68:return 82;case 69:return 82;case 70:return 81;case 71:return 81;case 72:return 81;case 73:return 59;case 74:return 60;case 75:return 61;case 76:return 62;case 77:return 63;case 78:return 64;case 79:return 65;case 80:return 69;case 81:return 70;case 82:return 55;case 83:return 56;case 84:return 109;case 85:return 112;case 86:return 127;case 87:return 124;case 88:return 113;case 89:return 125;case 90:return 125;case 91:return 114;case 92:return 73;case 93:return 92;case 94:return"SEP";case 95:return 91;case 96:return 66;case 97:return 75;case 98:return 74;case 99:return 77;case 100:return 76;case 101:return 122;case 102:return 123;case 103:return 68;case 104:return 57;case 105:return 58;case 106:return 40;case 107:return 41;case 108:return 71;case 109:return 72;case 110:return 133;case 111:return 21;case 112:return 22;case 113:return 23}},rules:[/^(?:%%\{)/,/^(?:((?:(?!\}%%)[^:.])*))/,/^(?::)/,/^(?:\}%%)/,/^(?:((?:(?!\}%%).|\n)*))/,/^(?:%%(?!\{)[^\n]*)/,/^(?:[^\}]%%[^\n]*)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:style\b)/,/^(?:default\b)/,/^(?:linkStyle\b)/,/^(?:interpolate\b)/,/^(?:classDef\b)/,/^(?:class\b)/,/^(?:href[\s]+["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:call[\s]+)/,/^(?:\([\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<]?==+[=xo>]\s*)/,/^(?:\s*[xo<]?-?\.+-[xo>]?\s*)/,/^(?:\s*[xo<]?--\s*)/,/^(?:\s*[xo<]?==\s*)/,/^(?:\s*[xo<]?-\.\s*)/,/^(?:\(-)/,/^(?:-\))/,/^(?:\(\[)/,/^(?:\]\))/,/^(?:\[\[)/,/^(?:\]\])/,/^(?:\[\|)/,/^(?:\[\()/,/^(?:\)\])/,/^(?:\(\(\()/,/^(?:\)\)\))/,/^(?:-)/,/^(?:\.)/,/^(?:[\_])/,/^(?:\+)/,/^(?:%)/,/^(?:=)/,/^(?:=)/,/^(?:<)/,/^(?:>)/,/^(?:\^)/,/^(?:\\\|)/,/^(?:v\b)/,/^(?:[A-Za-z]+)/,/^(?:\\\])/,/^(?:\[\/)/,/^(?:\/\])/,/^(?:\[\\)/,/^(?:[!"#$%&'*+,-.`?\\_/])/,/^(?:[\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6]|[\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377]|[\u037A-\u037D\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5]|[\u03F7-\u0481\u048A-\u0527\u0531-\u0556\u0559\u0561-\u0587\u05D0-\u05EA]|[\u05F0-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE]|[\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA]|[\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u08A0]|[\u08A2-\u08AC\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0977]|[\u0979-\u097F\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2]|[\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u0A05-\u0A0A]|[\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39]|[\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8]|[\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0B05-\u0B0C]|[\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C]|[\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99]|[\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0]|[\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C3D]|[\u0C58\u0C59\u0C60\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3]|[\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10]|[\u0D12-\u0D3A\u0D3D\u0D4E\u0D60\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1]|[\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81]|[\u0E82\u0E84\u0E87\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3]|[\u0EA5\u0EA7\u0EAA\u0EAB\u0EAD-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6]|[\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A]|[\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081]|[\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D]|[\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0]|[\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310]|[\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F4\u1401-\u166C]|[\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u1700-\u170C\u170E-\u1711]|[\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7]|[\u17DC\u1820-\u1877\u1880-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191C]|[\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19C1-\u19C7\u1A00-\u1A16]|[\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF]|[\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1CE9-\u1CEC]|[\u1CEE-\u1CF1\u1CF5\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D]|[\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D]|[\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3]|[\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F]|[\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128]|[\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184]|[\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3]|[\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6]|[\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE]|[\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C]|[\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312D]|[\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FCC]|[\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B]|[\uA640-\uA66E\uA67F-\uA697\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788]|[\uA78B-\uA78E\uA790-\uA793\uA7A0-\uA7AA\uA7F8-\uA801\uA803-\uA805]|[\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB]|[\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uAA00-\uAA28]|[\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA80-\uAAAF\uAAB1\uAAB5]|[\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4]|[\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E]|[\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D]|[\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36]|[\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D]|[\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC]|[\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF]|[\uFFD2-\uFFD7\uFFDA-\uFFDC])/,/^(?:\|)/,/^(?:\()/,/^(?:\))/,/^(?:\[)/,/^(?:\])/,/^(?:\{)/,/^(?:\})/,/^(?:")/,/^(?:(\r?\n)+)/,/^(?:\s)/,/^(?:$)/],conditions:{close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},callbackargs:{rules:[30,31],inclusive:!1},callbackname:{rules:[27,28,29],inclusive:!1},href:{rules:[24,25],inclusive:!1},click:{rules:[33,34],inclusive:!1},vertex:{rules:[],inclusive:!1},dir:{rules:[44,45,46,47,48,49,50,51,52,53,54],inclusive:!1},acc_descr_multiline:{rules:[12,13],inclusive:!1},acc_descr:{rules:[10],inclusive:!1},acc_title:{rules:[8],inclusive:!1},string:{rules:[15,16],inclusive:!1},INITIAL:{rules:[0,5,6,7,9,11,14,17,18,19,20,21,22,23,26,32,35,36,37,38,39,40,41,42,43,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113],inclusive:!0}}};return tg}();Lc.lexer=bd;function hh(){this.yy={}}return hh.prototype=Lc,Lc.Parser=hh,new hh}();Coe.parser=Coe;const Soe=Coe,aXt=(r,i)=>{var o,l;return((o=i==null?void 0:i.flowchart)==null?void 0:o.defaultRenderer)==="dagre-wrapper"||((l=i==null?void 0:i.flowchart)==null?void 0:l.defaultRenderer)==="elk"?!1:r.match(/^\s*graph/)!==null},oXt=(r,i)=>{var o,l;return((o=i==null?void 0:i.flowchart)==null?void 0:o.defaultRenderer)==="dagre-d3"||((l=i==null?void 0:i.flowchart)==null?void 0:l.defaultRenderer)==="elk"?!1:r.match(/^\s*graph/)!==null?!0:r.match(/^\s*flowchart/)!==null},cXt="flowchart-";let iDe=0,Aoe=ht(),Pu={},h7=[],wC={},r4=[],NV={},Moe={},PV=0,Doe=!0,P2,BV,FV=[];const RV=r=>Cs.sanitizeText(r,Aoe),sDe=function(r,i,o){Bu.parseDirective(this,r,i,o)},RI=function(r){const i=Object.keys(Pu);for(const o of i)if(Pu[o].id===r)return Pu[o].domId;return r},aDe=function(r,i,o,l,f,b,d={}){let w,y=r;y!==void 0&&y.trim().length!==0&&(Pu[y]===void 0&&(Pu[y]={id:y,domId:cXt+y+"-"+iDe,styles:[],classes:[]}),iDe++,i!==void 0?(Aoe=ht(),w=RV(i.trim()),w[0]==='"'&&w[w.length-1]==='"'&&(w=w.substring(1,w.length-1)),Pu[y].text=w):Pu[y].text===void 0&&(Pu[y].text=r),o!==void 0&&(Pu[y].type=o),l!=null&&l.forEach(function(k){Pu[y].styles.push(k)}),f!=null&&f.forEach(function(k){Pu[y].classes.push(k)}),b!==void 0&&(Pu[y].dir=b),Pu[y].props===void 0?Pu[y].props=d:d!==void 0&&Object.assign(Pu[y].props,d))},oDe=function(r,i,o,l){const d={start:r,end:i,type:void 0,text:""};l=o.text,l!==void 0&&(d.text=RV(l.trim()),d.text[0]==='"'&&d.text[d.text.length-1]==='"'&&(d.text=d.text.substring(1,d.text.length-1))),o!==void 0&&(d.type=o.type,d.stroke=o.stroke,d.length=o.length),h7.push(d)},cDe=function(r,i,o,l){let f,b;for(f=0;f/)&&(P2="LR"),P2.match(/.*v/)&&(P2="TB"),P2==="TD"&&(P2="TB")},jV=function(r,i){r.split(",").forEach(function(o){let l=o;Pu[l]!==void 0&&Pu[l].classes.push(i),NV[l]!==void 0&&NV[l].classes.push(i)})},uXt=function(r,i){r.split(",").forEach(function(o){i!==void 0&&(Moe[BV==="gen-1"?RI(o):o]=RV(i))})},lXt=function(r,i,o){let l=RI(r);if(ht().securityLevel!=="loose"||i===void 0)return;let f=[];if(typeof o=="string"){f=o.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let b=0;b")),f.classed("hover",!0)}).on("mouseout",function(){i.transition().duration(500).style("opacity",0),Cn(this).classed("hover",!1)})};FV.push(kDe);const xDe=function(r="gen-1"){Pu={},wC={},h7=[],FV=[kDe],r4=[],NV={},PV=0,Moe=[],Doe=!0,BV=r,W0()},EDe=r=>{BV=r||"gen-2"},_De=function(){return"fill:#ffa;stroke: #f66; stroke-width: 3px; stroke-dasharray: 5, 5;fill:#ffa;stroke: #666;"},TDe=function(r,i,o){let l=r.trim(),f=o;r===o&&o.match(/\s/)&&(l=void 0);function b(E){const T={boolean:{},number:{},string:{}},C=[];let S;return{nodeList:E.filter(function(O){const B=typeof O;return O.stmt&&O.stmt==="dir"?(S=O.value,!1):O.trim()===""?!1:B in T?T[B].hasOwnProperty(O)?!1:T[B][O]=!0:C.includes(O)?!1:C.push(O)}),dir:S}}let d=[];const{nodeList:w,dir:y}=b(d.concat.apply(d,i));if(d=w,BV==="gen-1")for(let E=0;E2e3)return;if(CDe[jI]=i,r4[i].id===r)return{result:!0,count:0};let l=0,f=1;for(;l=0){const d=SDe(r,b);if(d.result)return{result:!0,count:f+d.count};f=f+d.count}l=l+1}return{result:!1,count:f}},ADe=function(r){return CDe[r]},MDe=function(){jI=-1,r4.length>0&&SDe("none",r4.length-1)},DDe=function(){return r4},LDe=()=>Doe?(Doe=!1,!0):!1,fXt=r=>{let i=r.trim(),o="arrow_open";switch(i[0]){case"<":o="arrow_point",i=i.slice(1);break;case"x":o="arrow_cross",i=i.slice(1);break;case"o":o="arrow_circle",i=i.slice(1);break}let l="normal";return i.includes("=")&&(l="thick"),i.includes(".")&&(l="dotted"),{type:o,stroke:l}},dXt=(r,i)=>{const o=i.length;let l=0;for(let f=0;f{const i=r.trim();let o=i.slice(0,-1),l="arrow_open";switch(i.slice(-1)){case"x":l="arrow_cross",i[0]==="x"&&(l="double_"+l,o=o.slice(1));break;case">":l="arrow_point",i[0]==="<"&&(l="double_"+l,o=o.slice(1));break;case"o":l="arrow_circle",i[0]==="o"&&(l="double_"+l,o=o.slice(1));break}let f="normal",b=o.length-1;o[0]==="="&&(f="thick");let d=dXt(".",o);return d&&(f="dotted",b=d),{type:l,stroke:f,length:b}},IDe=(r,i)=>{const o=gXt(r);let l;if(i){if(l=fXt(i),l.stroke!==o.stroke)return{type:"INVALID",stroke:"INVALID"};if(l.type==="arrow_open")l.type=o.type;else{if(l.type!==o.type)return{type:"INVALID",stroke:"INVALID"};l.type="double_"+l.type}return l.type==="double_arrow"&&(l.type="double_arrow_point"),l.length=o.length,l}return o},ODe=(r,i)=>{let o=!1;return r.forEach(l=>{l.nodes.indexOf(i)>=0&&(o=!0)}),o},NDe=(r,i)=>{const o=[];return r.nodes.forEach((l,f)=>{ODe(i,l)||o.push(r.nodes[f])}),{nodes:o}},PDe={firstGraph:LDe},$m={parseDirective:sDe,defaultConfig:()=>nC.flowchart,setAccTitle:K0,getAccTitle:hp,getAccDescription:dp,setAccDescription:fp,addVertex:aDe,lookUpDomId:RI,addLink:cDe,updateLinkInterpolate:uDe,updateLink:lDe,addClass:hDe,setDirection:fDe,setClass:jV,setTooltip:uXt,getTooltip:gDe,setClickEvent:pDe,setLink:dDe,bindFunctions:bDe,getDirection:vDe,getVertices:wDe,getEdges:mDe,getClasses:yDe,clear:xDe,setGen:EDe,defaultStyle:_De,addSubGraph:TDe,getDepthFirstPos:ADe,indexNodes:MDe,getSubGraphs:DDe,destructLink:IDe,lex:PDe,exists:ODe,makeUniq:NDe,setDiagramTitle:Ov,getDiagramTitle:Nv},pXt=Object.freeze(Object.defineProperty({__proto__:null,parseDirective:sDe,lookUpDomId:RI,addVertex:aDe,addSingleLink:oDe,addLink:cDe,updateLinkInterpolate:uDe,updateLink:lDe,addClass:hDe,setDirection:fDe,setClass:jV,setLink:dDe,getTooltip:gDe,setClickEvent:pDe,bindFunctions:bDe,getDirection:vDe,getVertices:wDe,getEdges:mDe,getClasses:yDe,clear:xDe,setGen:EDe,defaultStyle:_De,addSubGraph:TDe,getDepthFirstPos:ADe,indexNodes:MDe,getSubGraphs:DDe,firstGraph:LDe,destructLink:IDe,lex:PDe,default:$m},Symbol.toStringTag,{value:"Module"}));function BDe(r,i){return!!r.children(i).length}function FDe(r){return Loe(r.v)+":"+Loe(r.w)+":"+Loe(r.name)}var bXt=/:/g;function Loe(r){return r?String(r).replace(bXt,"\\:"):""}function Hm(r,i){i&&r.attr("style",i)}function RDe(r,i,o){i&&r.attr("class",i).attr("class",o+" "+r.attr("class"))}function $v(r,i){var o=i.graph();if(pAe(o)){var l=o.transition;if(QT(l))return l(r)}return r}var Ioe={normal:wXt,vee:mXt,undirected:yXt};function vXt(r){Ioe=r}function wXt(r,i,o,l){var f=r.append("marker").attr("id",i).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),b=f.append("path").attr("d","M 0 0 L 10 5 L 0 10 z").style("stroke-width",1).style("stroke-dasharray","1,0");Hm(b,o[l+"Style"]),o[l+"Class"]&&b.attr("class",o[l+"Class"])}function mXt(r,i,o,l){var f=r.append("marker").attr("id",i).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),b=f.append("path").attr("d","M 0 0 L 10 5 L 0 10 L 4 5 z").style("stroke-width",1).style("stroke-dasharray","1,0");Hm(b,o[l+"Style"]),o[l+"Class"]&&b.attr("class",o[l+"Class"])}function yXt(r,i,o,l){var f=r.append("marker").attr("id",i).attr("viewBox","0 0 10 10").attr("refX",9).attr("refY",5).attr("markerUnits","strokeWidth").attr("markerWidth",8).attr("markerHeight",6).attr("orient","auto"),b=f.append("path").attr("d","M 0 5 L 10 5").style("stroke-width",1).style("stroke-dasharray","1,0");Hm(b,o[l+"Style"]),o[l+"Class"]&&b.attr("class",o[l+"Class"])}function $V(r,i){var o=r.append("foreignObject").attr("width","100000"),l=o.append("xhtml:div");l.attr("xmlns","http://www.w3.org/1999/xhtml");var f=i.label;switch(typeof f){case"function":l.insert(f);break;case"object":l.insert(function(){return f});break;default:l.html(f)}Hm(l,i.labelStyle),l.style("display","inline-block"),l.style("white-space","nowrap");var b=l.node().getBoundingClientRect();return o.attr("width",b.width).attr("height",b.height),o}function kXt(r,i){var o=r;return o.node().appendChild(i.label),Hm(o,i.labelStyle),o}function xXt(r,i){for(var o=r.append("text"),l=EXt(i.label).split(`
-`),f=0;f0}function zm(r,i,o){var l=r.x,f=r.y,b=[],d=Number.POSITIVE_INFINITY,w=Number.POSITIVE_INFINITY;i.forEach(function(L){d=Math.min(d,L.x),w=Math.min(w,L.y)});for(var y=l-r.width/2-d,k=f-r.height/2-w,E=0;E1&&b.sort(function(L,O){var B=L.x-o.x,N=L.y-o.y,F=Math.sqrt(B*B+N*N),R=O.x-o.x,q=O.y-o.y,X=Math.sqrt(R*R+q*q);return FMath.abs(f)*w?(b<0&&(w=-w),y=b===0?0:w*f/b,k=w):(f<0&&(d=-d),y=d,k=f===0?0:d*b/f),{x:o+y,y:l+k}}var joe={rect:jXt,ellipse:$Xt,circle:HXt,diamond:zXt};function RXt(r){joe=r}function jXt(r,i,o){var l=r.insert("rect",":first-child").attr("rx",o.rx).attr("ry",o.ry).attr("x",-i.width/2).attr("y",-i.height/2).attr("width",i.width).attr("height",i.height);return o.intersect=function(f){return Roe(o,f)},l}function $Xt(r,i,o){var l=i.width/2,f=i.height/2,b=r.insert("ellipse",":first-child").attr("x",-i.width/2).attr("y",-i.height/2).attr("rx",l).attr("ry",f);return o.intersect=function(d){return HDe(o,l,f,d)},b}function HXt(r,i,o){var l=Math.max(i.width,i.height)/2,f=r.insert("circle",":first-child").attr("x",-i.width/2).attr("y",-i.height/2).attr("r",l);return o.intersect=function(b){return BXt(o,l,b)},f}function zXt(r,i,o){var l=i.width*Math.SQRT2/2,f=i.height*Math.SQRT2/2,b=[{x:0,y:-f},{x:-l,y:0},{x:0,y:f},{x:l,y:0}],d=r.insert("polygon",":first-child").attr("points",b.map(function(w){return w.x+","+w.y}).join(" "));return o.intersect=function(w){return zm(o,b,w)},d}function GXt(){var r=function(i,o){qXt(o);var l=$I(i,"output"),f=$I(l,"clusters"),b=$I(l,"edgePaths"),d=Poe($I(l,"edgeLabels"),o),w=Foe($I(l,"nodes"),o,joe);bC(o),PXt(w,o),NXt(d,o),Boe(b,o,Ioe);var y=Noe(f,o);OXt(y,o),YXt(o)};return r.createNodes=function(i){return arguments.length?(IXt(i),r):Foe},r.createClusters=function(i){return arguments.length?(_Xt(i),r):Noe},r.createEdgeLabels=function(i){return arguments.length?(TXt(i),r):Poe},r.createEdgePaths=function(i){return arguments.length?(CXt(i),r):Boe},r.shapes=function(i){return arguments.length?(RXt(i),r):joe},r.arrows=function(i){return arguments.length?(vXt(i),r):Ioe},r}var VXt={paddingLeft:10,paddingRight:10,paddingTop:10,paddingBottom:10,rx:0,ry:0,shape:"rect"},UXt={arrowhead:"normal",curve:x1};function qXt(r){r.nodes().forEach(function(i){var o=r.node(i);!Ks(o,"label")&&!r.children(i).length&&(o.label=i),Ks(o,"paddingX")&&dC(o,{paddingLeft:o.paddingX,paddingRight:o.paddingX}),Ks(o,"paddingY")&&dC(o,{paddingTop:o.paddingY,paddingBottom:o.paddingY}),Ks(o,"padding")&&dC(o,{paddingLeft:o.padding,paddingRight:o.padding,paddingTop:o.padding,paddingBottom:o.padding}),dC(o,VXt),Mn(["paddingLeft","paddingRight","paddingTop","paddingBottom"],function(l){o[l]=Number(o[l])}),Ks(o,"width")&&(o._prevWidth=o.width),Ks(o,"height")&&(o._prevHeight=o.height)}),r.edges().forEach(function(i){var o=r.edge(i);Ks(o,"label")||(o.label=""),dC(o,UXt)})}function YXt(r){Mn(r.nodes(),function(i){var o=r.node(i);Ks(o,"_prevWidth")?o.width=o._prevWidth:delete o.width,Ks(o,"_prevHeight")?o.height=o._prevHeight:delete o.height,delete o._prevWidth,delete o._prevHeight})}function $I(r,i){var o=r.select("g."+i);return o.empty()&&(o=r.append("g").attr("class",i)),o}function GDe(r,i,o){const l=i.width,f=i.height,b=(l+f)*.9,d=[{x:b/2,y:0},{x:b,y:-b/2},{x:b/2,y:-b},{x:0,y:-b/2}],w=i4(r,b,b,d);return o.intersect=function(y){return zm(o,d,y)},w}function VDe(r,i,o){const f=i.height,b=f/4,d=i.width+2*b,w=[{x:b,y:0},{x:d-b,y:0},{x:d,y:-f/2},{x:d-b,y:-f},{x:b,y:-f},{x:0,y:-f/2}],y=i4(r,d,f,w);return o.intersect=function(k){return zm(o,w,k)},y}function UDe(r,i,o){const l=i.width,f=i.height,b=[{x:-f/2,y:0},{x:l,y:0},{x:l,y:-f},{x:-f/2,y:-f},{x:0,y:-f/2}],d=i4(r,l,f,b);return o.intersect=function(w){return zm(o,b,w)},d}function qDe(r,i,o){const l=i.width,f=i.height,b=[{x:-2*f/6,y:0},{x:l-f/6,y:0},{x:l+2*f/6,y:-f},{x:f/6,y:-f}],d=i4(r,l,f,b);return o.intersect=function(w){return zm(o,b,w)},d}function YDe(r,i,o){const l=i.width,f=i.height,b=[{x:2*f/6,y:0},{x:l+f/6,y:0},{x:l-2*f/6,y:-f},{x:-f/6,y:-f}],d=i4(r,l,f,b);return o.intersect=function(w){return zm(o,b,w)},d}function WDe(r,i,o){const l=i.width,f=i.height,b=[{x:-2*f/6,y:0},{x:l+2*f/6,y:0},{x:l-f/6,y:-f},{x:f/6,y:-f}],d=i4(r,l,f,b);return o.intersect=function(w){return zm(o,b,w)},d}function KDe(r,i,o){const l=i.width,f=i.height,b=[{x:f/6,y:0},{x:l-f/6,y:0},{x:l+2*f/6,y:-f},{x:-2*f/6,y:-f}],d=i4(r,l,f,b);return o.intersect=function(w){return zm(o,b,w)},d}function XDe(r,i,o){const l=i.width,f=i.height,b=[{x:0,y:0},{x:l+f/2,y:0},{x:l,y:-f/2},{x:l+f/2,y:-f},{x:0,y:-f}],d=i4(r,l,f,b);return o.intersect=function(w){return zm(o,b,w)},d}function QDe(r,i,o){const l=i.height,f=i.width+l/4,b=r.insert("rect",":first-child").attr("rx",l/2).attr("ry",l/2).attr("x",-f/2).attr("y",-l/2).attr("width",f).attr("height",l);return o.intersect=function(d){return Roe(o,d)},b}function ZDe(r,i,o){const l=i.width,f=i.height,b=[{x:0,y:0},{x:l,y:0},{x:l,y:-f},{x:0,y:-f},{x:0,y:0},{x:-8,y:0},{x:l+8,y:0},{x:l+8,y:-f},{x:-8,y:-f},{x:-8,y:0}],d=i4(r,l,f,b);return o.intersect=function(w){return zm(o,b,w)},d}function JDe(r,i,o){const l=i.width,f=l/2,b=f/(2.5+l/50),d=i.height+b,w="M 0,"+b+" a "+f+","+b+" 0,0,0 "+l+" 0 a "+f+","+b+" 0,0,0 "+-l+" 0 l 0,"+d+" a "+f+","+b+" 0,0,0 "+l+" 0 l 0,"+-d,y=r.attr("label-offset-y",b).insert("path",":first-child").attr("d",w).attr("transform","translate("+-l/2+","+-(d/2+b)+")");return o.intersect=function(k){const E=Roe(o,k),T=E.x-o.x;if(f!=0&&(Math.abs(T)o.height/2-b)){let C=b*b*(1-T*T/(f*f));C!=0&&(C=Math.sqrt(C)),C=b-C,k.y-o.y>0&&(C=-C),E.y+=C}return E},y}function WXt(r){r.shapes().question=GDe,r.shapes().hexagon=VDe,r.shapes().stadium=QDe,r.shapes().subroutine=ZDe,r.shapes().cylinder=JDe,r.shapes().rect_left_inv_arrow=UDe,r.shapes().lean_right=qDe,r.shapes().lean_left=YDe,r.shapes().trapezoid=WDe,r.shapes().inv_trapezoid=KDe,r.shapes().rect_right_inv_arrow=XDe}function KXt(r){r({question:GDe}),r({hexagon:VDe}),r({stadium:QDe}),r({subroutine:ZDe}),r({cylinder:JDe}),r({rect_left_inv_arrow:UDe}),r({lean_right:qDe}),r({lean_left:YDe}),r({trapezoid:WDe}),r({inv_trapezoid:KDe}),r({rect_right_inv_arrow:XDe})}function i4(r,i,o,l){return r.insert("polygon",":first-child").attr("points",l.map(function(f){return f.x+","+f.y}).join(" ")).attr("transform","translate("+-i/2+","+o/2+")")}const XXt={addToRender:WXt,addToRenderV2:KXt},eLe={},QXt=function(r){const i=Object.keys(r);for(const o of i)eLe[o]=r[o]},tLe=function(r,i,o,l,f,b){const d=l?l.select(`[id="${o}"]`):Cn(`[id="${o}"]`),w=f||document;Object.keys(r).forEach(function(k){const E=r[k];let T="default";E.classes.length>0&&(T=E.classes.join(" "));const C=Dv(E.styles);let S=E.text!==void 0?E.text:E.id,L;if(cf(ht().flowchart.htmlLabels)){const N={label:S.replace(/fa[blrs]?:fa-[\w-]+/g,F=>``)};L=$V(d,N).node(),L.parentNode.removeChild(L)}else{const N=w.createElementNS("http://www.w3.org/2000/svg","text");N.setAttribute("style",C.labelStyle.replace("color:","fill:"));const F=S.split(Cs.lineBreakRegex);for(const R of F){const q=w.createElementNS("http://www.w3.org/2000/svg","tspan");q.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),q.setAttribute("dy","1em"),q.setAttribute("x","1"),q.textContent=R,N.appendChild(q)}L=N}let O=0,B="";switch(E.type){case"round":O=5,B="rect";break;case"square":B="rect";break;case"diamond":B="question";break;case"hexagon":B="hexagon";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"odd_right":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;default:B="rect"}Se.warn("Adding node",E.id,E.domId),i.setNode(b.db.lookUpDomId(E.id),{labelType:"svg",labelStyle:C.labelStyle,shape:B,label:L,rx:O,ry:O,class:T,style:C.style,id:b.db.lookUpDomId(E.id)})})},nLe=function(r,i,o){let l=0,f,b;if(r.defaultStyle!==void 0){const d=Dv(r.defaultStyle);f=d.style,b=d.labelStyle}r.forEach(function(d){l++;var w="L-"+d.start+"-"+d.end,y="LS-"+d.start,k="LE-"+d.end;const E={};d.type==="arrow_open"?E.arrowhead="none":E.arrowhead="normal";let T="",C="";if(d.style!==void 0){const S=Dv(d.style);T=S.style,C=S.labelStyle}else switch(d.stroke){case"normal":T="fill:none",f!==void 0&&(T=f),b!==void 0&&(C=b);break;case"dotted":T="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":T=" stroke-width: 3.5px;fill:none";break}E.style=T,E.labelStyle=C,d.interpolate!==void 0?E.curve=q0(d.interpolate,x1):r.defaultInterpolate!==void 0?E.curve=q0(r.defaultInterpolate,x1):E.curve=q0(eLe.curve,x1),d.text===void 0?d.style!==void 0&&(E.arrowheadStyle="fill: #333"):(E.arrowheadStyle="fill: #333",E.labelpos="c",cf(ht().flowchart.htmlLabels)?(E.labelType="html",E.label=`${d.text.replace(/fa[blrs]?:fa-[\w-]+/g,S=>``)}`):(E.labelType="text",E.label=d.text.replace(Cs.lineBreakRegex,`
-`),d.style===void 0&&(E.style=E.style||"stroke: #333; stroke-width: 1.5px;fill:none"),E.labelStyle=E.labelStyle.replace("color:","fill:"))),E.id=w,E.class=y+" "+k,E.minlen=d.length||1,i.setEdge(o.db.lookUpDomId(d.start),o.db.lookUpDomId(d.end),E,l)})},ZXt={setConf:QXt,addVertices:tLe,addEdges:nLe,getClasses:function(r,i){Se.info("Extracting classes"),i.db.clear();try{return i.parse(r),i.db.getClasses()}catch(o){return Se.error(o),{}}},draw:function(r,i,o,l){Se.info("Drawing flowchart"),l.db.clear();const{securityLevel:f,flowchart:b}=ht();let d;f==="sandbox"&&(d=Cn("#i"+i));const w=Cn(f==="sandbox"?d.nodes()[0].contentDocument.body:"body"),y=f==="sandbox"?d.nodes()[0].contentDocument:document;try{l.parser.parse(r)}catch{Se.debug("Parsing failed")}let k=l.db.getDirection();k===void 0&&(k="TD");const E=b.nodeSpacing||50,T=b.rankSpacing||50,C=new zh({multigraph:!0,compound:!0}).setGraph({rankdir:k,nodesep:E,ranksep:T,marginx:8,marginy:8}).setDefaultEdgeLabel(function(){return{}});let S;const L=l.db.getSubGraphs();for(let te=L.length-1;te>=0;te--)S=L[te],l.db.addVertex(S.id,S.title,"group",void 0,S.classes);const O=l.db.getVertices();Se.warn("Get vertices",O);const B=l.db.getEdges();let N=0;for(N=L.length-1;N>=0;N--){S=L[N],ose("cluster").append("text");for(let te=0;te0&&(E=k.classes.join(" "));const T=Dv(k.styles);let C=k.text!==void 0?k.text:k.id,S;if(cf(ht().flowchart.htmlLabels)){const B={label:C.replace(/fa[blrs]?:fa-[\w-]+/g,N=>``)};S=$V(d,B).node(),S.parentNode.removeChild(S)}else{const B=f.createElementNS("http://www.w3.org/2000/svg","text");B.setAttribute("style",T.labelStyle.replace("color:","fill:"));const N=C.split(Cs.lineBreakRegex);for(const F of N){const R=f.createElementNS("http://www.w3.org/2000/svg","tspan");R.setAttributeNS("http://www.w3.org/XML/1998/namespace","xml:space","preserve"),R.setAttribute("dy","1em"),R.setAttribute("x","1"),R.textContent=F,B.appendChild(R)}S=B}let L=0,O="";switch(k.type){case"round":L=5,O="rect";break;case"square":O="rect";break;case"diamond":O="question";break;case"hexagon":O="hexagon";break;case"odd":O="rect_left_inv_arrow";break;case"lean_right":O="lean_right";break;case"lean_left":O="lean_left";break;case"trapezoid":O="trapezoid";break;case"inv_trapezoid":O="inv_trapezoid";break;case"odd_right":O="rect_left_inv_arrow";break;case"circle":O="circle";break;case"ellipse":O="ellipse";break;case"stadium":O="stadium";break;case"subroutine":O="subroutine";break;case"cylinder":O="cylinder";break;case"group":O="rect";break;case"doublecircle":O="doublecircle";break;default:O="rect"}i.setNode(k.id,{labelStyle:T.labelStyle,shape:O,labelText:C,rx:L,ry:L,class:E,style:T.style,id:k.id,link:k.link,linkTarget:k.linkTarget,tooltip:b.db.getTooltip(k.id)||"",domId:b.db.lookUpDomId(k.id),haveCallback:k.haveCallback,width:k.type==="group"?500:void 0,dir:k.dir,type:k.type,props:k.props,padding:ht().flowchart.padding}),Se.info("setNode",{labelStyle:T.labelStyle,shape:O,labelText:C,rx:L,ry:L,class:E,style:T.style,id:k.id,domId:b.db.lookUpDomId(k.id),width:k.type==="group"?500:void 0,type:k.type,dir:k.dir,props:k.props,padding:ht().flowchart.padding})})},sLe=function(r,i,o){Se.info("abc78 edges = ",r);let l=0,f={},b,d;if(r.defaultStyle!==void 0){const w=Dv(r.defaultStyle);b=w.style,d=w.labelStyle}r.forEach(function(w){l++;var y="L-"+w.start+"-"+w.end;f[y]===void 0?(f[y]=0,Se.info("abc78 new entry",y,f[y])):(f[y]++,Se.info("abc78 new entry",y,f[y]));let k=y+"-"+f[y];Se.info("abc78 new link id to be used is",y,k,f[y]);var E="LS-"+w.start,T="LE-"+w.end;const C={style:"",labelStyle:""};switch(C.minlen=w.length||1,w.type==="arrow_open"?C.arrowhead="none":C.arrowhead="normal",C.arrowTypeStart="arrow_open",C.arrowTypeEnd="arrow_open",w.type){case"double_arrow_cross":C.arrowTypeStart="arrow_cross";case"arrow_cross":C.arrowTypeEnd="arrow_cross";break;case"double_arrow_point":C.arrowTypeStart="arrow_point";case"arrow_point":C.arrowTypeEnd="arrow_point";break;case"double_arrow_circle":C.arrowTypeStart="arrow_circle";case"arrow_circle":C.arrowTypeEnd="arrow_circle";break}let S="",L="";switch(w.stroke){case"normal":S="fill:none;",b!==void 0&&(S=b),d!==void 0&&(L=d),C.thickness="normal",C.pattern="solid";break;case"dotted":C.thickness="normal",C.pattern="dotted",C.style="fill:none;stroke-width:2px;stroke-dasharray:3;";break;case"thick":C.thickness="thick",C.pattern="solid",C.style="stroke-width: 3.5px;fill:none;";break}if(w.style!==void 0){const O=Dv(w.style);S=O.style,L=O.labelStyle}C.style=C.style+=S,C.labelStyle=C.labelStyle+=L,w.interpolate!==void 0?C.curve=q0(w.interpolate,x1):r.defaultInterpolate!==void 0?C.curve=q0(r.defaultInterpolate,x1):C.curve=q0(rLe.curve,x1),w.text===void 0?w.style!==void 0&&(C.arrowheadStyle="fill: #333"):(C.arrowheadStyle="fill: #333",C.labelpos="c"),C.labelType="text",C.label=w.text.replace(Cs.lineBreakRegex,`
-`),w.style===void 0&&(C.style=C.style||"stroke: #333; stroke-width: 1.5px;fill:none;"),C.labelStyle=C.labelStyle.replace("color:","fill:"),C.id=k,C.classes="flowchart-link "+E+" "+T,i.setEdge(w.start,w.end,C,l)})},$oe={setConf:JXt,addVertices:iLe,addEdges:sLe,getClasses:function(r,i){Se.info("Extracting classes"),i.db.clear();try{return i.parse(r),i.db.getClasses()}catch{return}},draw:function(r,i,o,l){Se.info("Drawing flowchart"),l.db.clear(),$m.setGen("gen-2"),l.parser.parse(r);let f=l.db.getDirection();f===void 0&&(f="TD");const{securityLevel:b,flowchart:d}=ht(),w=d.nodeSpacing||50,y=d.rankSpacing||50;let k;b==="sandbox"&&(k=Cn("#i"+i));const E=Cn(b==="sandbox"?k.nodes()[0].contentDocument.body:"body"),T=b==="sandbox"?k.nodes()[0].contentDocument:document,C=new zh({multigraph:!0,compound:!0}).setGraph({rankdir:f,nodesep:w,ranksep:y,marginx:0,marginy:0}).setDefaultEdgeLabel(function(){return{}});let S;const L=l.db.getSubGraphs();Se.info("Subgraphs - ",L);for(let X=L.length-1;X>=0;X--)S=L[X],Se.info("Subgraph - ",S),l.db.addVertex(S.id,S.title,"group",void 0,S.classes,S.dir);const O=l.db.getVertices(),B=l.db.getEdges();Se.info("Edges",B);let N=0;for(N=L.length-1;N>=0;N--){S=L[N],ose("cluster").append("text");for(let X=0;X"u"&&(Te.yylloc={});var Xe=Te.yylloc;$.push(Xe);var Ee=Te.options&&Te.options.ranges;typeof Be.yy.parseError=="function"?this.parseError=Be.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ze(){var Zt;return Zt=G.pop()||Te.lex()||Ce,typeof Zt!="number"&&(Zt instanceof Array&&(G=Zt,Zt=G.pop()),Zt=W.symbols_[Zt]||Zt),Zt}for(var Ie,Oe,Le,$e,xe={},Ae,je,me,vt;;){if(Oe=Z[Z.length-1],this.defaultActions[Oe]?Le=this.defaultActions[Oe]:((Ie===null||typeof Ie>"u")&&(Ie=Ze()),Le=ge[Oe]&&ge[Oe][Ie]),typeof Le>"u"||!Le.length||!Le[0]){var ve="";vt=[];for(Ae in ge[Oe])this.terminals_[Ae]&&Ae>ke&&vt.push("'"+this.terminals_[Ae]+"'");Te.showPosition?ve="Parse error on line "+(de+1)+`:
-`+Te.showPosition()+`
-Expecting `+vt.join(", ")+", got '"+(this.terminals_[Ie]||Ie)+"'":ve="Parse error on line "+(de+1)+": Unexpected "+(Ie==Ce?"end of input":"'"+(this.terminals_[Ie]||Ie)+"'"),this.parseError(ve,{text:Te.match,token:this.terminals_[Ie]||Ie,line:Te.yylineno,loc:Xe,expected:vt})}if(Le[0]instanceof Array&&Le.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Oe+", token: "+Ie);switch(Le[0]){case 1:Z.push(Ie),ae.push(Te.yytext),$.push(Te.yylloc),Z.push(Le[1]),Ie=null,re=Te.yyleng,ee=Te.yytext,de=Te.yylineno,Xe=Te.yylloc;break;case 2:if(je=this.productions_[Le[1]][1],xe.$=ae[ae.length-je],xe._$={first_line:$[$.length-(je||1)].first_line,last_line:$[$.length-1].last_line,first_column:$[$.length-(je||1)].first_column,last_column:$[$.length-1].last_column},Ee&&(xe._$.range=[$[$.length-(je||1)].range[0],$[$.length-1].range[1]]),$e=this.performAction.apply(xe,[ee,re,de,Be.yy,Le[1],ae,$].concat(_e)),typeof $e<"u")return $e;je&&(Z=Z.slice(0,-1*je*2),ae=ae.slice(0,-1*je),$=$.slice(0,-1*je)),Z.push(this.productions_[Le[1]][0]),ae.push(xe.$),$.push(xe._$),me=ge[Z[Z.length-2]][Z[Z.length-1]],Z.push(me);break;case 3:return!0}}return!0}},te=function(){var Y={EOF:1,parseError:function(W,Z){if(this.yy.parser)this.yy.parser.parseError(W,Z);else throw new Error(W)},setInput:function(z,W){return this.yy=W||this.yy||{},this._input=z,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var z=this._input[0];this.yytext+=z,this.yyleng++,this.offset++,this.match+=z,this.matched+=z;var W=z.match(/(?:\r\n?|\n).*/g);return W?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),z},unput:function(z){var W=z.length,Z=z.split(/(?:\r\n?|\n)/g);this._input=z+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-W),this.offset-=W;var G=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 ae=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===G.length?this.yylloc.first_column:0)+G[G.length-Z.length].length-Z[0].length:this.yylloc.first_column-W},this.options.ranges&&(this.yylloc.range=[ae[0],ae[0]+this.yyleng-W]),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(z){this.unput(this.match.slice(z))},pastInput:function(){var z=this.matched.substr(0,this.matched.length-this.match.length);return(z.length>20?"...":"")+z.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var z=this.match;return z.length<20&&(z+=this._input.substr(0,20-z.length)),(z.substr(0,20)+(z.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var z=this.pastInput(),W=new Array(z.length+1).join("-");return z+this.upcomingInput()+`
-`+W+"^"},test_match:function(z,W){var Z,G,ae;if(this.options.backtrack_lexer&&(ae={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&&(ae.yylloc.range=this.yylloc.range.slice(0))),G=z[0].match(/(?:\r\n?|\n).*/g),G&&(this.yylineno+=G.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:G?G[G.length-1].length-G[G.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+z[0].length},this.yytext+=z[0],this.match+=z[0],this.matches=z,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(z[0].length),this.matched+=z[0],Z=this.performAction.call(this,this.yy,this,W,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Z)return Z;if(this._backtrack){for(var $ in ae)this[$]=ae[$];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var z,W,Z,G;this._more||(this.yytext="",this.match="");for(var ae=this._currentRules(),$=0;$W[0].length)){if(W=Z,G=$,this.options.backtrack_lexer){if(z=this.test_match(Z,ae[$]),z!==!1)return z;if(this._backtrack){W=!1;continue}else return!1}else if(!this.options.flex)break}return W?(z=this.test_match(W,ae[G]),z!==!1?z:!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 W=this.next();return W||this.lex()},begin:function(W){this.conditionStack.push(W)},popState:function(){var W=this.conditionStack.length-1;return W>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(W){return W=this.conditionStack.length-1-Math.abs(W||0),W>=0?this.conditionStack[W]:"INITIAL"},pushState:function(W){this.begin(W)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(W,Z,G,ae){switch(G){case 0:return this.begin("open_directive"),40;case 1:return this.begin("type_directive"),41;case 2:return this.popState(),this.begin("arg_directive"),33;case 3:return this.popState(),this.popState(),43;case 4:return 42;case 5:return this.begin("acc_title"),21;case 6:return this.popState(),"acc_title_value";case 7:return this.begin("acc_descr"),23;case 8:return this.popState(),"acc_descr_value";case 9:this.begin("acc_descr_multiline");break;case 10:this.popState();break;case 11:return"acc_descr_multiline_value";case 12:break;case 13:break;case 14:break;case 15:return 11;case 16:break;case 17:break;case 18:break;case 19:this.begin("href");break;case 20:this.popState();break;case 21:return 38;case 22:this.begin("callbackname");break;case 23:this.popState();break;case 24:this.popState(),this.begin("callbackargs");break;case 25:return 36;case 26:this.popState();break;case 27:return 37;case 28:this.begin("click");break;case 29:this.popState();break;case 30:return 35;case 31:return 5;case 32:return 12;case 33:return 13;case 34:return 14;case 35:return 15;case 36:return 16;case 37:return 18;case 38:return 17;case 39:return 19;case 40:return"date";case 41:return 20;case 42:return"accDescription";case 43:return 26;case 44:return 28;case 45:return 29;case 46:return 33;case 47:return 7;case 48:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:%%(?!\{)*[^\n]*)/i,/^(?:[^\}]%%*[^\n]*)/i,/^(?:%%*[^\n]*[\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:href[\s]+["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:call[\s]+)/i,/^(?:\([\s]*\))/i,/^(?:\()/i,/^(?:[^(]*)/i,/^(?:\))/i,/^(?:[^)]*)/i,/^(?:click[\s]+)/i,/^(?:[\s\n])/i,/^(?:[^\s\n]*)/i,/^(?:gantt\b)/i,/^(?:dateFormat\s[^#\n;]+)/i,/^(?:inclusiveEndDates\b)/i,/^(?:topAxis\b)/i,/^(?:axisFormat\s[^#\n;]+)/i,/^(?:tickInterval\s[^#\n;]+)/i,/^(?:includes\s[^#\n;]+)/i,/^(?:excludes\s[^#\n;]+)/i,/^(?:todayMarker\s[^\n;]+)/i,/^(?:\d\d\d\d-\d\d-\d\d\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accDescription\s[^#\n;]+)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{acc_descr_multiline:{rules:[10,11],inclusive:!1},acc_descr:{rules:[8],inclusive:!1},acc_title:{rules:[6],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},callbackargs:{rules:[26,27],inclusive:!1},callbackname:{rules:[23,24,25],inclusive:!1},href:{rules:[20,21],inclusive:!1},click:{rules:[29,30],inclusive:!1},INITIAL:{rules:[0,5,7,9,12,13,14,15,16,17,18,19,22,28,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48],inclusive:!0}}};return Y}();X.lexer=te;function H(){this.yy={}}return H.prototype=X,X.Parser=H,new H}();Hoe.parser=Hoe;const eQt=Hoe,tQt=r=>r.match(/^\s*gantt/)!==null;let Gm="",zoe="",Goe,Voe="",HI=[],zI=[],Uoe={},qoe=[],HV=[],mC="";const aLe=["active","done","crit","milestone"];let Yoe=[],GI=!1,Woe=!1,Koe=0;const nQt=function(r,i,o){Bu.parseDirective(this,r,i,o)},rQt=function(){qoe=[],HV=[],mC="",Yoe=[],zV=0,Qoe=void 0,GV=void 0,ff=[],Gm="",zoe="",Goe=void 0,Voe="",HI=[],zI=[],GI=!1,Woe=!1,Koe=0,Uoe={},W0()},iQt=function(r){zoe=r},sQt=function(){return zoe},aQt=function(r){Goe=r},oQt=function(){return Goe},cQt=function(r){Voe=r},uQt=function(){return Voe},lQt=function(r){Gm=r},hQt=function(){GI=!0},fQt=function(){return GI},dQt=function(){Woe=!0},gQt=function(){return Woe},pQt=function(){return Gm},bQt=function(r){HI=r.toLowerCase().split(/[\s,]+/)},vQt=function(){return HI},wQt=function(r){zI=r.toLowerCase().split(/[\s,]+/)},mQt=function(){return zI},yQt=function(){return Uoe},kQt=function(r){mC=r,qoe.push(r)},xQt=function(){return qoe},EQt=function(){let r=fLe();const i=10;let o=0;for(;!r&&o=6&&o.includes("weekends")||o.includes(r.format("dddd").toLowerCase())?!0:o.includes(r.format(i.trim()))},cLe=function(r,i,o,l){if(!o.length||r.manualEndTime)return;let f=Ar(r.startTime,i,!0);f.add(1,"d");let b=Ar(r.endTime,i,!0),d=_Qt(f,b,i,o,l);r.endTime=b.toDate(),r.renderEndTime=d},_Qt=function(r,i,o,l,f){let b=!1,d=null;for(;r<=i;)b||(d=i.toDate()),b=oLe(r,o,l,f),b&&i.add(1,"d"),r.add(1,"d");return d},Xoe=function(r,i,o){o=o.trim();const f=/^after\s+([\d\w- ]+)/.exec(o.trim());if(f!==null){let d=null;if(f[1].split(" ").forEach(function(w){let y=kC(w);y!==void 0&&(d?y.endTime>d.endTime&&(d=y):d=y)}),d)return d.endTime;{const w=new Date;return w.setHours(0,0,0,0),w}}let b=Ar(o,i.trim(),!0);if(b.isValid())return b.toDate();{Se.debug("Invalid date:"+o),Se.debug("With date format:"+i.trim());const d=new Date(o);if(d===void 0||isNaN(d.getTime()))throw new Error("Invalid date:"+o);return d}},uLe=function(r){const i=/^(\d+(?:\.\d+)?)([Mdhmswy]|ms)$/.exec(r.trim());return i!==null?Ar.duration(Number.parseFloat(i[1]),i[2]):Ar.duration.invalid()},lLe=function(r,i,o,l=!1){o=o.trim();let f=Ar(o,i.trim(),!0);if(f.isValid())return l&&f.add(1,"d"),f.toDate();const b=Ar(r),d=uLe(o);return d.isValid()&&b.add(d),b.toDate()};let zV=0;const yC=function(r){return r===void 0?(zV=zV+1,"task"+zV):r},TQt=function(r,i){let o;i.substr(0,1)===":"?o=i.substr(1,i.length):o=i;const l=o.split(","),f={};pLe(l,f,aLe);for(let d=0;d{window.open(o,"_self")}),Uoe[l]=o)}),dLe(r,"clickable")},dLe=function(r,i){r.split(",").forEach(function(o){let l=kC(o);l!==void 0&&l.classes.push(i)})},DQt=function(r,i,o){if(ht().securityLevel!=="loose"||i===void 0)return;let l=[];if(typeof o=="string"){l=o.split(/,(?=(?:(?:[^"]*"){2})*[^"]*$)/);for(let b=0;b{Fs.runFunc(i,...l)})},gLe=function(r,i){Yoe.push(function(){const o=document.querySelector(`[id="${r}"]`);o!==null&&o.addEventListener("click",function(){i()})},function(){const o=document.querySelector(`[id="${r}-text"]`);o!==null&&o.addEventListener("click",function(){i()})})},Zoe={parseDirective:nQt,getConfig:()=>ht().gantt,clear:rQt,setDateFormat:lQt,getDateFormat:pQt,enableInclusiveEndDates:hQt,endDatesAreInclusive:fQt,enableTopAxis:dQt,topAxisEnabled:gQt,setAxisFormat:iQt,getAxisFormat:sQt,setTickInterval:aQt,getTickInterval:oQt,setTodayMarker:cQt,getTodayMarker:uQt,setAccTitle:K0,getAccTitle:hp,setDiagramTitle:Ov,getDiagramTitle:Nv,setAccDescription:fp,getAccDescription:dp,addSection:kQt,getSections:xQt,getTasks:EQt,addTask:SQt,findTaskById:kC,addTaskOrg:AQt,setIncludes:bQt,getIncludes:vQt,setExcludes:wQt,getExcludes:mQt,setClickEvent:function(r,i,o){r.split(",").forEach(function(l){DQt(l,i,o)}),dLe(r,"clickable")},setLink:MQt,getLinks:yQt,bindFunctions:function(r){Yoe.forEach(function(i){i(r)})},parseDuration:uLe,isInvalidDate:oLe};function pLe(r,i,o){let l=!0;for(;l;)l=!1,o.forEach(function(f){const b="^\\s*"+f+"\\s*$",d=new RegExp(b);r[0].match(d)&&(i[f]=!0,r.shift(1),l=!0)})}const LQt=function(){Se.debug("Something is calling, setConf, remove the call")};let s4;const IQt={setConf:LQt,draw:function(r,i,o,l){const f=ht().gantt,b=ht().securityLevel;let d;b==="sandbox"&&(d=Cn("#i"+i));const w=Cn(b==="sandbox"?d.nodes()[0].contentDocument.body:"body"),y=b==="sandbox"?d.nodes()[0].contentDocument:document,k=y.getElementById(i);s4=k.parentElement.offsetWidth,s4===void 0&&(s4=1200),f.useWidth!==void 0&&(s4=f.useWidth);const E=l.db.getTasks(),T=E.length*(f.barHeight+f.barGap)+2*f.topPadding;k.setAttribute("viewBox","0 0 "+s4+" "+T);const C=w.select(`[id="${i}"]`),S=kNt().domain([JAt(E,function(W){return W.startTime}),ZAt(E,function(W){return W.endTime})]).rangeRound([0,s4-f.leftPadding-f.rightPadding]);let L=[];for(const W of E)L.push(W.type);const O=L;L=H(L);function B(W,Z){const G=W.startTime,ae=Z.startTime;let $=0;return G>ae?$=1:G0&&(Te=Ce.classes.join(" "));let Be=0;for(const[Xe,Ee]of L.entries())Ce.type===Ee&&(Be=Xe%f.numberSectionStyles);let Ge="";return Ce.active?Ce.crit?Ge+=" activeCrit":Ge=" active":Ce.done?Ce.crit?Ge=" doneCrit":Ge=" done":Ce.crit&&(Ge+=" crit"),Ge.length===0&&(Ge=" task"),Ce.milestone&&(Ge=" milestone "+Ge),Ge+=Be,Ge+=" "+Te,_e+Ge}),de.append("text").attr("id",function(Ce){return Ce.id+"-text"}).text(function(Ce){return Ce.task}).attr("font-size",f.fontSize).attr("x",function(Ce){let _e=S(Ce.startTime),Te=S(Ce.renderEndTime||Ce.endTime);Ce.milestone&&(_e+=.5*(S(Ce.endTime)-S(Ce.startTime))-.5*$),Ce.milestone&&(Te=_e+$);const Be=this.getBBox().width;return Be>Te-_e?Te+Be+1.5*f.leftPadding>ee?_e+ae-5:Te+ae+5:(Te-_e)/2+_e+ae}).attr("y",function(Ce,_e){return _e=Ce.order,_e*Z+f.barHeight/2+(f.fontSize/2-2)+G}).attr("text-height",$).attr("class",function(Ce){const _e=S(Ce.startTime);let Te=S(Ce.endTime);Ce.milestone&&(Te=_e+$);const Be=this.getBBox().width;let Ge="";Ce.classes.length>0&&(Ge=Ce.classes.join(" "));let Xe=0;for(const[Ze,Ie]of L.entries())Ce.type===Ie&&(Xe=Ze%f.numberSectionStyles);let Ee="";return Ce.active&&(Ce.crit?Ee="activeCritText"+Xe:Ee="activeText"+Xe),Ce.done?Ce.crit?Ee=Ee+" doneCritText"+Xe:Ee=Ee+" doneText"+Xe:Ce.crit&&(Ee=Ee+" critText"+Xe),Ce.milestone&&(Ee+=" milestoneText"),Be>Te-_e?Te+Be+1.5*f.leftPadding>ee?Ge+" taskTextOutsideLeft taskTextOutside"+Xe+" "+Ee:Ge+" taskTextOutsideRight taskTextOutside"+Xe+" "+Ee+" width-"+Be:Ge+" taskText taskText"+Xe+" "+Ee+" width-"+Be}),ht().securityLevel==="sandbox"){let Ce;Ce=Cn("#i"+i);const _e=Ce.nodes()[0].contentDocument;de.filter(function(Te){return re[Te.id]!==void 0}).each(function(Te){var Be=_e.querySelector("#"+Te.id),Ge=_e.querySelector("#"+Te.id+"-text");const Xe=Be.parentNode;var Ee=_e.createElement("a");Ee.setAttribute("xlink:href",re[Te.id]),Ee.setAttribute("target","_top"),Xe.appendChild(Ee),Ee.appendChild(Be),Ee.appendChild(Ge)})}}function R(W,Z,G,ae,$,ge,ee,de){const re=ge.reduce((Xe,{startTime:Ee})=>Xe?Math.min(Xe,Ee):Ee,0),ke=ge.reduce((Xe,{endTime:Ee})=>Xe?Math.max(Xe,Ee):Ee,0),Ce=l.db.getDateFormat();if(!re||!ke)return;const _e=[];let Te=null,Be=Ar(re);for(;Be.valueOf()<=ke;)l.db.isInvalidDate(Be,Ce,ee,de)?Te?Te.end=Be.clone():Te={start:Be.clone(),end:Be.clone()}:Te&&(_e.push(Te),Te=null),Be.add(1,"d");C.append("g").selectAll("rect").data(_e).enter().append("rect").attr("id",function(Xe){return"exclude-"+Xe.start.format("YYYY-MM-DD")}).attr("x",function(Xe){return S(Xe.start)+G}).attr("y",f.gridLineStartPadding).attr("width",function(Xe){const Ee=Xe.end.clone().add(1,"day");return S(Ee)-S(Xe.start)}).attr("height",$-Z-f.gridLineStartPadding).attr("transform-origin",function(Xe,Ee){return(S(Xe.start)+G+.5*(S(Xe.end)-S(Xe.start))).toString()+"px "+(Ee*W+.5*$).toString()+"px"}).attr("class","exclude-range")}function q(W,Z,G,ae){let $=oMt(S).tickSize(-ae+Z+f.gridLineStartPadding).tickFormat(sG(l.db.getAxisFormat()||f.axisFormat||"%Y-%m-%d"));const ee=/^([1-9]\d*)(minute|hour|day|week|month)$/.exec(l.db.getTickInterval()||f.tickInterval);if(ee!==null){const de=ee[1];switch(ee[2]){case"minute":$.ticks(eG.every(de));break;case"hour":$.ticks(tG.every(de));break;case"day":$.ticks(RT.every(de));break;case"week":$.ticks(jT.every(de));break;case"month":$.ticks(rG.every(de));break}}if(C.append("g").attr("class","grid").attr("transform","translate("+W+", "+(ae-50)+")").call($).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10).attr("dy","1em"),l.db.topAxisEnabled()||f.topAxis){let de=aMt(S).tickSize(-ae+Z+f.gridLineStartPadding).tickFormat(sG(l.db.getAxisFormat()||f.axisFormat||"%Y-%m-%d"));if(ee!==null){const re=ee[1];switch(ee[2]){case"minute":de.ticks(eG.every(re));break;case"hour":de.ticks(tG.every(re));break;case"day":de.ticks(RT.every(re));break;case"week":de.ticks(jT.every(re));break;case"month":de.ticks(rG.every(re));break}}C.append("g").attr("class","grid").attr("transform","translate("+W+", "+Z+")").call(de).selectAll("text").style("text-anchor","middle").attr("fill","#000").attr("stroke","none").attr("font-size",10)}}function X(W,Z){const G=[];let ae=0;for(const[$,ge]of L.entries())G[$]=[ge,z(ge,O)];C.append("g").selectAll("text").data(G).enter().append(function($){const ge=$[0].split(Cs.lineBreakRegex),ee=-(ge.length-1)/2,de=y.createElementNS("http://www.w3.org/2000/svg","text");de.setAttribute("dy",ee+"em");for(const[re,ke]of ge.entries()){const Ce=y.createElementNS("http://www.w3.org/2000/svg","tspan");Ce.setAttribute("alignment-baseline","central"),Ce.setAttribute("x","10"),re>0&&Ce.setAttribute("dy","1em"),Ce.textContent=ke,de.appendChild(Ce)}return de}).attr("x",10).attr("y",function($,ge){if(ge>0)for(let ee=0;ee"u"&&(R.yylloc={});var te=R.yylloc;T.push(te);var H=R.options&&R.options.ranges;typeof q.yy.parseError=="function"?this.parseError=q.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Y(){var ke;return ke=k.pop()||R.lex()||N,typeof ke!="number"&&(ke instanceof Array&&(k=ke,ke=k.pop()),ke=w.symbols_[ke]||ke),ke}for(var z,W,Z,G,ae={},$,ge,ee,de;;){if(W=y[y.length-1],this.defaultActions[W]?Z=this.defaultActions[W]:((z===null||typeof z>"u")&&(z=Y()),Z=C[W]&&C[W][z]),typeof Z>"u"||!Z.length||!Z[0]){var re="";de=[];for($ in C[W])this.terminals_[$]&&$>B&&de.push("'"+this.terminals_[$]+"'");R.showPosition?re="Parse error on line "+(L+1)+`:
-`+R.showPosition()+`
-Expecting `+de.join(", ")+", got '"+(this.terminals_[z]||z)+"'":re="Parse error on line "+(L+1)+": Unexpected "+(z==N?"end of input":"'"+(this.terminals_[z]||z)+"'"),this.parseError(re,{text:R.match,token:this.terminals_[z]||z,line:R.yylineno,loc:te,expected:de})}if(Z[0]instanceof Array&&Z.length>1)throw new Error("Parse Error: multiple actions possible at state: "+W+", token: "+z);switch(Z[0]){case 1:y.push(z),E.push(R.yytext),T.push(R.yylloc),y.push(Z[1]),z=null,O=R.yyleng,S=R.yytext,L=R.yylineno,te=R.yylloc;break;case 2:if(ge=this.productions_[Z[1]][1],ae.$=E[E.length-ge],ae._$={first_line:T[T.length-(ge||1)].first_line,last_line:T[T.length-1].last_line,first_column:T[T.length-(ge||1)].first_column,last_column:T[T.length-1].last_column},H&&(ae._$.range=[T[T.length-(ge||1)].range[0],T[T.length-1].range[1]]),G=this.performAction.apply(ae,[S,O,L,q.yy,Z[1],E,T].concat(F)),typeof G<"u")return G;ge&&(y=y.slice(0,-1*ge*2),E=E.slice(0,-1*ge),T=T.slice(0,-1*ge)),y.push(this.productions_[Z[1]][0]),E.push(ae.$),T.push(ae._$),ee=C[y[y.length-2]][y[y.length-1]],y.push(ee);break;case 3:return!0}}return!0}},l=function(){var b={EOF:1,parseError:function(w,y){if(this.yy.parser)this.yy.parser.parseError(w,y);else throw new Error(w)},setInput:function(d,w){return this.yy=w||this.yy||{},this._input=d,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var d=this._input[0];this.yytext+=d,this.yyleng++,this.offset++,this.match+=d,this.matched+=d;var w=d.match(/(?:\r\n?|\n).*/g);return w?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),d},unput:function(d){var w=d.length,y=d.split(/(?:\r\n?|\n)/g);this._input=d+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-w),this.offset-=w;var k=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),y.length-1&&(this.yylineno-=y.length-1);var E=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===k.length?this.yylloc.first_column:0)+k[k.length-y.length].length-y[0].length:this.yylloc.first_column-w},this.options.ranges&&(this.yylloc.range=[E[0],E[0]+this.yyleng-w]),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(d){this.unput(this.match.slice(d))},pastInput:function(){var d=this.matched.substr(0,this.matched.length-this.match.length);return(d.length>20?"...":"")+d.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var d=this.match;return d.length<20&&(d+=this._input.substr(0,20-d.length)),(d.substr(0,20)+(d.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var d=this.pastInput(),w=new Array(d.length+1).join("-");return d+this.upcomingInput()+`
-`+w+"^"},test_match:function(d,w){var y,k,E;if(this.options.backtrack_lexer&&(E={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&&(E.yylloc.range=this.yylloc.range.slice(0))),k=d[0].match(/(?:\r\n?|\n).*/g),k&&(this.yylineno+=k.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:k?k[k.length-1].length-k[k.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+d[0].length},this.yytext+=d[0],this.match+=d[0],this.matches=d,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(d[0].length),this.matched+=d[0],y=this.performAction.call(this,this.yy,this,w,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),y)return y;if(this._backtrack){for(var T in E)this[T]=E[T];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var d,w,y,k;this._more||(this.yytext="",this.match="");for(var E=this._currentRules(),T=0;Tw[0].length)){if(w=y,k=T,this.options.backtrack_lexer){if(d=this.test_match(y,E[T]),d!==!1)return d;if(this._backtrack){w=!1;continue}else return!1}else if(!this.options.flex)break}return w?(d=this.test_match(w,E[k]),d!==!1?d:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
-`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var w=this.next();return w||this.lex()},begin:function(w){this.conditionStack.push(w)},popState:function(){var w=this.conditionStack.length-1;return w>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(w){return w=this.conditionStack.length-1-Math.abs(w||0),w>=0?this.conditionStack[w]:"INITIAL"},pushState:function(w){this.begin(w)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(w,y,k,E){switch(k){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 b}();o.lexer=l;function f(){this.yy={}}return f.prototype=o,o.Parser=f,new f}();Joe.parser=Joe;const OQt=Joe;var bLe="",vLe=!1;const NQt={setMessage:r=>{Se.debug("Setting message to: "+r),bLe=r},getMessage:()=>bLe,setInfo:r=>{vLe=r},getInfo:()=>vLe,clear:W0},PQt={draw:(r,i,o)=>{try{Se.debug(`Rendering info diagram
-`+r);const l=ht().securityLevel;let f;l==="sandbox"&&(f=Cn("#i"+i));const d=Cn(l==="sandbox"?f.nodes()[0].contentDocument.body:"body").select("#"+i);d.append("g").append("text").attr("x",100).attr("y",40).attr("class","version").attr("font-size","32px").style("text-anchor","middle").text("v "+o),d.attr("height",100),d.attr("width",400)}catch(l){Se.error("Error while rendering info diagram"),Se.error(l.message)}}},BQt=r=>r.match(/^\s*info/)!==null;var ece=function(){var r=function(te,H,Y,z){for(Y=Y||{},z=te.length;z--;Y[te[z]]=H);return Y},i=[1,4],o=[1,5],l=[1,6],f=[1,7],b=[1,9],d=[1,11,13,15,17,19,20,26,27,28,29],w=[2,5],y=[1,6,11,13,15,17,19,20,26,27,28,29],k=[26,27,28],E=[2,8],T=[1,18],C=[1,19],S=[1,20],L=[1,21],O=[1,22],B=[1,23],N=[1,28],F=[6,26,27,28,29],R={trace:function(){},yy:{},symbols_:{error:2,start:3,eol:4,directive:5,PIE:6,document:7,showData:8,line:9,statement:10,txt:11,value:12,title:13,title_value:14,acc_title:15,acc_title_value:16,acc_descr:17,acc_descr_value:18,acc_descr_multiline_value:19,section:20,openDirective:21,typeDirective:22,closeDirective:23,":":24,argDirective:25,NEWLINE:26,";":27,EOF:28,open_directive:29,type_directive:30,arg_directive:31,close_directive:32,$accept:0,$end:1},terminals_:{2:"error",6:"PIE",8:"showData",11:"txt",12:"value",13:"title",14:"title_value",15:"acc_title",16:"acc_title_value",17:"acc_descr",18:"acc_descr_value",19:"acc_descr_multiline_value",20:"section",24:":",26:"NEWLINE",27:";",28:"EOF",29:"open_directive",30:"type_directive",31:"arg_directive",32:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,3],[7,0],[7,2],[9,2],[10,0],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,1],[5,3],[5,5],[4,1],[4,1],[4,1],[21,1],[22,1],[25,1],[23,1]],performAction:function(H,Y,z,W,Z,G,ae){var $=G.length-1;switch(Z){case 4:W.setShowData(!0);break;case 7:this.$=G[$-1];break;case 9:W.addSection(G[$-1],W.cleanupValue(G[$]));break;case 10:this.$=G[$].trim(),W.setDiagramTitle(this.$);break;case 11:this.$=G[$].trim(),W.setAccTitle(this.$);break;case 12:case 13:this.$=G[$].trim(),W.setAccDescription(this.$);break;case 14:W.addSection(G[$].substr(8)),this.$=G[$].substr(8);break;case 21:W.parseDirective("%%{","open_directive");break;case 22:W.parseDirective(G[$],"type_directive");break;case 23:G[$]=G[$].trim().replace(/'/g,'"'),W.parseDirective(G[$],"arg_directive");break;case 24:W.parseDirective("}%%","close_directive","pie");break}},table:[{3:1,4:2,5:3,6:i,21:8,26:o,27:l,28:f,29:b},{1:[3]},{3:10,4:2,5:3,6:i,21:8,26:o,27:l,28:f,29:b},{3:11,4:2,5:3,6:i,21:8,26:o,27:l,28:f,29:b},r(d,w,{7:12,8:[1,13]}),r(y,[2,18]),r(y,[2,19]),r(y,[2,20]),{22:14,30:[1,15]},{30:[2,21]},{1:[2,1]},{1:[2,2]},r(k,E,{21:8,9:16,10:17,5:24,1:[2,3],11:T,13:C,15:S,17:L,19:O,20:B,29:b}),r(d,w,{7:25}),{23:26,24:[1,27],32:N},r([24,32],[2,22]),r(d,[2,6]),{4:29,26:o,27:l,28:f},{12:[1,30]},{14:[1,31]},{16:[1,32]},{18:[1,33]},r(k,[2,13]),r(k,[2,14]),r(k,[2,15]),r(k,E,{21:8,9:16,10:17,5:24,1:[2,4],11:T,13:C,15:S,17:L,19:O,20:B,29:b}),r(F,[2,16]),{25:34,31:[1,35]},r(F,[2,24]),r(d,[2,7]),r(k,[2,9]),r(k,[2,10]),r(k,[2,11]),r(k,[2,12]),{23:36,32:N},{32:[2,23]},r(F,[2,17])],defaultActions:{9:[2,21],10:[2,1],11:[2,2],35:[2,23]},parseError:function(H,Y){if(Y.recoverable)this.trace(H);else{var z=new Error(H);throw z.hash=Y,z}},parse:function(H){var Y=this,z=[0],W=[],Z=[null],G=[],ae=this.table,$="",ge=0,ee=0,de=2,re=1,ke=G.slice.call(arguments,1),Ce=Object.create(this.lexer),_e={yy:{}};for(var Te in this.yy)Object.prototype.hasOwnProperty.call(this.yy,Te)&&(_e.yy[Te]=this.yy[Te]);Ce.setInput(H,_e.yy),_e.yy.lexer=Ce,_e.yy.parser=this,typeof Ce.yylloc>"u"&&(Ce.yylloc={});var Be=Ce.yylloc;G.push(Be);var Ge=Ce.options&&Ce.options.ranges;typeof _e.yy.parseError=="function"?this.parseError=_e.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Xe(){var vt;return vt=W.pop()||Ce.lex()||re,typeof vt!="number"&&(vt instanceof Array&&(W=vt,vt=W.pop()),vt=Y.symbols_[vt]||vt),vt}for(var Ee,Ze,Ie,Oe,Le={},$e,xe,Ae,je;;){if(Ze=z[z.length-1],this.defaultActions[Ze]?Ie=this.defaultActions[Ze]:((Ee===null||typeof Ee>"u")&&(Ee=Xe()),Ie=ae[Ze]&&ae[Ze][Ee]),typeof Ie>"u"||!Ie.length||!Ie[0]){var me="";je=[];for($e in ae[Ze])this.terminals_[$e]&&$e>de&&je.push("'"+this.terminals_[$e]+"'");Ce.showPosition?me="Parse error on line "+(ge+1)+`:
-`+Ce.showPosition()+`
-Expecting `+je.join(", ")+", got '"+(this.terminals_[Ee]||Ee)+"'":me="Parse error on line "+(ge+1)+": Unexpected "+(Ee==re?"end of input":"'"+(this.terminals_[Ee]||Ee)+"'"),this.parseError(me,{text:Ce.match,token:this.terminals_[Ee]||Ee,line:Ce.yylineno,loc:Be,expected:je})}if(Ie[0]instanceof Array&&Ie.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ze+", token: "+Ee);switch(Ie[0]){case 1:z.push(Ee),Z.push(Ce.yytext),G.push(Ce.yylloc),z.push(Ie[1]),Ee=null,ee=Ce.yyleng,$=Ce.yytext,ge=Ce.yylineno,Be=Ce.yylloc;break;case 2:if(xe=this.productions_[Ie[1]][1],Le.$=Z[Z.length-xe],Le._$={first_line:G[G.length-(xe||1)].first_line,last_line:G[G.length-1].last_line,first_column:G[G.length-(xe||1)].first_column,last_column:G[G.length-1].last_column},Ge&&(Le._$.range=[G[G.length-(xe||1)].range[0],G[G.length-1].range[1]]),Oe=this.performAction.apply(Le,[$,ee,ge,_e.yy,Ie[1],Z,G].concat(ke)),typeof Oe<"u")return Oe;xe&&(z=z.slice(0,-1*xe*2),Z=Z.slice(0,-1*xe),G=G.slice(0,-1*xe)),z.push(this.productions_[Ie[1]][0]),Z.push(Le.$),G.push(Le._$),Ae=ae[z[z.length-2]][z[z.length-1]],z.push(Ae);break;case 3:return!0}}return!0}},q=function(){var te={EOF:1,parseError:function(Y,z){if(this.yy.parser)this.yy.parser.parseError(Y,z);else throw new Error(Y)},setInput:function(H,Y){return this.yy=Y||this.yy||{},this._input=H,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var H=this._input[0];this.yytext+=H,this.yyleng++,this.offset++,this.match+=H,this.matched+=H;var Y=H.match(/(?:\r\n?|\n).*/g);return Y?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),H},unput:function(H){var Y=H.length,z=H.split(/(?:\r\n?|\n)/g);this._input=H+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Y),this.offset-=Y;var W=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),z.length-1&&(this.yylineno-=z.length-1);var Z=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:z?(z.length===W.length?this.yylloc.first_column:0)+W[W.length-z.length].length-z[0].length:this.yylloc.first_column-Y},this.options.ranges&&(this.yylloc.range=[Z[0],Z[0]+this.yyleng-Y]),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(H){this.unput(this.match.slice(H))},pastInput:function(){var H=this.matched.substr(0,this.matched.length-this.match.length);return(H.length>20?"...":"")+H.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var H=this.match;return H.length<20&&(H+=this._input.substr(0,20-H.length)),(H.substr(0,20)+(H.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var H=this.pastInput(),Y=new Array(H.length+1).join("-");return H+this.upcomingInput()+`
-`+Y+"^"},test_match:function(H,Y){var z,W,Z;if(this.options.backtrack_lexer&&(Z={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&&(Z.yylloc.range=this.yylloc.range.slice(0))),W=H[0].match(/(?:\r\n?|\n).*/g),W&&(this.yylineno+=W.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:W?W[W.length-1].length-W[W.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+H[0].length},this.yytext+=H[0],this.match+=H[0],this.matches=H,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(H[0].length),this.matched+=H[0],z=this.performAction.call(this,this.yy,this,Y,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),z)return z;if(this._backtrack){for(var G in Z)this[G]=Z[G];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var H,Y,z,W;this._more||(this.yytext="",this.match="");for(var Z=this._currentRules(),G=0;GY[0].length)){if(Y=z,W=G,this.options.backtrack_lexer){if(H=this.test_match(z,Z[G]),H!==!1)return H;if(this._backtrack){Y=!1;continue}else return!1}else if(!this.options.flex)break}return Y?(H=this.test_match(Y,Z[W]),H!==!1?H:!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 Y=this.next();return Y||this.lex()},begin:function(Y){this.conditionStack.push(Y)},popState:function(){var Y=this.conditionStack.length-1;return Y>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(Y){return Y=this.conditionStack.length-1-Math.abs(Y||0),Y>=0?this.conditionStack[Y]:"INITIAL"},pushState:function(Y){this.begin(Y)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Y,z,W,Z){switch(W){case 0:return this.begin("open_directive"),29;case 1:return this.begin("type_directive"),30;case 2:return this.popState(),this.begin("arg_directive"),24;case 3:return this.popState(),this.popState(),32;case 4:return 31;case 5:break;case 6:break;case 7:return 26;case 8:break;case 9:break;case 10:return this.begin("title"),13;case 11:return this.popState(),"title_value";case 12:return this.begin("acc_title"),15;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),17;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:this.begin("string");break;case 20:this.popState();break;case 21:return"txt";case 22:return 6;case 23:return 8;case 24:return"value";case 25:return 28}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n\r]+)/i,/^(?:%%[^\n]*)/i,/^(?:[\s]+)/i,/^(?:title\b)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:pie\b)/i,/^(?:showData\b)/i,/^(?::[\s]*[\d]+(?:\.[\d]+)?)/i,/^(?:$)/i],conditions:{acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},title:{rules:[11],inclusive:!1},string:{rules:[20,21],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,12,14,16,19,22,23,24,25],inclusive:!0}}};return te}();R.lexer=q;function X(){this.yy={}}return X.prototype=R,R.Parser=X,new X}();ece.parser=ece;const FQt=ece,RQt=r=>r.match(/^\s*pie/)!==null||r.match(/^\s*bar/)!==null;let VV={},tce=!1;const jQt={parseDirective:function(r,i,o){Bu.parseDirective(this,r,i,o)},getConfig:()=>ht().pie,addSection:function(r,i){r=Cs.sanitizeText(r,ht()),VV[r]===void 0&&(VV[r]=i,Se.debug("Added new section :",r))},getSections:()=>VV,cleanupValue:function(r){return r.substring(0,1)===":"&&(r=r.substring(1).trim()),Number(r.trim())},clear:function(){VV={},tce=!1,W0()},setAccTitle:K0,getAccTitle:hp,setDiagramTitle:Ov,getDiagramTitle:Nv,setShowData:function(r){tce=r},getShowData:function(){return tce},getAccDescription:dp,setAccDescription:fp};let a4=ht(),o4;const VI=450,$Qt={draw:(r,i,o,l)=>{try{a4=ht(),Se.debug(`Rendering info diagram
-`+r);const F=ht().securityLevel;let R;F==="sandbox"&&(R=Cn("#i"+i));const q=Cn(F==="sandbox"?R.nodes()[0].contentDocument.body:"body"),X=F==="sandbox"?R.nodes()[0].contentDocument:document;l.db.clear(),l.parser.parse(r),Se.debug("Parsed info diagram");const te=X.getElementById(i);o4=te.parentElement.offsetWidth,o4===void 0&&(o4=1200),a4.useWidth!==void 0&&(o4=a4.useWidth),a4.pie.useWidth!==void 0&&(o4=a4.pie.useWidth);const H=q.select("#"+i);Iv(H,VI,o4,a4.pie.useMaxWidth),te.setAttribute("viewBox","0 0 "+o4+" "+VI);var f=40,b=18,d=4,w=Math.min(o4,VI)/2-f,y=H.append("g").attr("transform","translate("+o4/2+","+VI/2+")"),k=l.db.getSections(),E=0;Object.keys(k).forEach(function(z){E+=k[z]});const Y=a4.themeVariables;var T=[Y.pie1,Y.pie2,Y.pie3,Y.pie4,Y.pie5,Y.pie6,Y.pie7,Y.pie8,Y.pie9,Y.pie10,Y.pie11,Y.pie12],C=tTe().range(T),S=Object.entries(k).map(function(z,W){return{order:W,name:z[0],value:z[1]}}),L=NNt().value(function(z){return z.value}).sort(function(z,W){return z.order-W.order}),O=L(S),B=ZL().innerRadius(0).outerRadius(w);y.selectAll("mySlices").data(O).enter().append("path").attr("d",B).attr("fill",function(z){return C(z.data.name)}).attr("class","pieCircle"),y.selectAll("mySlices").data(O).enter().append("text").text(function(z){return(z.data.value/E*100).toFixed(0)+"%"}).attr("transform",function(z){return"translate("+B.centroid(z)+")"}).style("text-anchor","middle").attr("class","slice"),y.append("text").text(l.db.getDiagramTitle()).attr("x",0).attr("y",-(VI-50)/2).attr("class","pieTitleText");var N=y.selectAll(".legend").data(C.domain()).enter().append("g").attr("class","legend").attr("transform",function(z,W){const Z=b+d,G=Z*C.domain().length/2,ae=12*b,$=W*Z-G;return"translate("+ae+","+$+")"});N.append("rect").attr("width",b).attr("height",b).style("fill",C).style("stroke",C),N.data(O).append("text").attr("x",b+d).attr("y",b-d).text(function(z){return l.db.getShowData()||a4.showData||a4.pie.showData?z.data.name+" ["+z.data.value+"]":z.data.name})}catch(F){Se.error("Error while rendering info diagram"),Se.error(F)}}};var nce=function(){var r=function(Ze,Ie,Oe,Le){for(Oe=Oe||{},Le=Ze.length;Le--;Oe[Ze[Le]]=Ie);return Oe},i=[1,3],o=[1,5],l=[1,6],f=[1,7],b=[1,8],d=[5,6,8,14,16,18,19,40,41,42,43,44,45,53,71,72],w=[1,22],y=[2,13],k=[1,26],E=[1,27],T=[1,28],C=[1,29],S=[1,30],L=[1,31],O=[1,24],B=[1,32],N=[1,33],F=[1,36],R=[71,72],q=[5,8,14,16,18,19,40,41,42,43,44,45,53,60,62,71,72],X=[1,56],te=[1,57],H=[1,58],Y=[1,59],z=[1,60],W=[1,61],Z=[1,62],G=[62,63],ae=[1,74],$=[1,70],ge=[1,71],ee=[1,72],de=[1,73],re=[1,75],ke=[1,79],Ce=[1,80],_e=[1,77],Te=[1,78],Be=[5,8,14,16,18,19,40,41,42,43,44,45,53,71,72],Ge={trace:function(){},yy:{},symbols_:{error:2,start:3,directive:4,NEWLINE:5,RD:6,diagram:7,EOF:8,openDirective:9,typeDirective:10,closeDirective:11,":":12,argDirective:13,acc_title:14,acc_title_value:15,acc_descr:16,acc_descr_value:17,acc_descr_multiline_value:18,open_directive:19,type_directive:20,arg_directive:21,close_directive:22,requirementDef:23,elementDef:24,relationshipDef:25,requirementType:26,requirementName:27,STRUCT_START:28,requirementBody:29,ID:30,COLONSEP:31,id:32,TEXT:33,text:34,RISK:35,riskLevel:36,VERIFYMTHD:37,verifyType:38,STRUCT_STOP:39,REQUIREMENT:40,FUNCTIONAL_REQUIREMENT:41,INTERFACE_REQUIREMENT:42,PERFORMANCE_REQUIREMENT:43,PHYSICAL_REQUIREMENT:44,DESIGN_CONSTRAINT:45,LOW_RISK:46,MED_RISK:47,HIGH_RISK:48,VERIFY_ANALYSIS:49,VERIFY_DEMONSTRATION:50,VERIFY_INSPECTION:51,VERIFY_TEST:52,ELEMENT:53,elementName:54,elementBody:55,TYPE:56,type:57,DOCREF:58,ref:59,END_ARROW_L:60,relationship:61,LINE:62,END_ARROW_R:63,CONTAINS:64,COPIES:65,DERIVES:66,SATISFIES:67,VERIFIES:68,REFINES:69,TRACES:70,unqString:71,qString:72,$accept:0,$end:1},terminals_:{2:"error",5:"NEWLINE",6:"RD",8:"EOF",12:":",14:"acc_title",15:"acc_title_value",16:"acc_descr",17:"acc_descr_value",18:"acc_descr_multiline_value",19:"open_directive",20:"type_directive",21:"arg_directive",22:"close_directive",28:"STRUCT_START",30:"ID",31:"COLONSEP",33:"TEXT",35:"RISK",37:"VERIFYMTHD",39:"STRUCT_STOP",40:"REQUIREMENT",41:"FUNCTIONAL_REQUIREMENT",42:"INTERFACE_REQUIREMENT",43:"PERFORMANCE_REQUIREMENT",44:"PHYSICAL_REQUIREMENT",45:"DESIGN_CONSTRAINT",46:"LOW_RISK",47:"MED_RISK",48:"HIGH_RISK",49:"VERIFY_ANALYSIS",50:"VERIFY_DEMONSTRATION",51:"VERIFY_INSPECTION",52:"VERIFY_TEST",53:"ELEMENT",56:"TYPE",58:"DOCREF",60:"END_ARROW_L",62:"LINE",63:"END_ARROW_R",64:"CONTAINS",65:"COPIES",66:"DERIVES",67:"SATISFIES",68:"VERIFIES",69:"REFINES",70:"TRACES",71:"unqString",72:"qString"},productions_:[0,[3,3],[3,2],[3,4],[4,3],[4,5],[4,2],[4,2],[4,1],[9,1],[10,1],[13,1],[11,1],[7,0],[7,2],[7,2],[7,2],[7,2],[7,2],[23,5],[29,5],[29,5],[29,5],[29,5],[29,2],[29,1],[26,1],[26,1],[26,1],[26,1],[26,1],[26,1],[36,1],[36,1],[36,1],[38,1],[38,1],[38,1],[38,1],[24,5],[55,5],[55,5],[55,2],[55,1],[25,5],[25,5],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[61,1],[27,1],[27,1],[32,1],[32,1],[34,1],[34,1],[54,1],[54,1],[57,1],[57,1],[59,1],[59,1]],performAction:function(Ie,Oe,Le,$e,xe,Ae,je){var me=Ae.length-1;switch(xe){case 6:this.$=Ae[me].trim(),$e.setAccTitle(this.$);break;case 7:case 8:this.$=Ae[me].trim(),$e.setAccDescription(this.$);break;case 9:$e.parseDirective("%%{","open_directive");break;case 10:$e.parseDirective(Ae[me],"type_directive");break;case 11:Ae[me]=Ae[me].trim().replace(/'/g,'"'),$e.parseDirective(Ae[me],"arg_directive");break;case 12:$e.parseDirective("}%%","close_directive","pie");break;case 13:this.$=[];break;case 19:$e.addRequirement(Ae[me-3],Ae[me-4]);break;case 20:$e.setNewReqId(Ae[me-2]);break;case 21:$e.setNewReqText(Ae[me-2]);break;case 22:$e.setNewReqRisk(Ae[me-2]);break;case 23:$e.setNewReqVerifyMethod(Ae[me-2]);break;case 26:this.$=$e.RequirementType.REQUIREMENT;break;case 27:this.$=$e.RequirementType.FUNCTIONAL_REQUIREMENT;break;case 28:this.$=$e.RequirementType.INTERFACE_REQUIREMENT;break;case 29:this.$=$e.RequirementType.PERFORMANCE_REQUIREMENT;break;case 30:this.$=$e.RequirementType.PHYSICAL_REQUIREMENT;break;case 31:this.$=$e.RequirementType.DESIGN_CONSTRAINT;break;case 32:this.$=$e.RiskLevel.LOW_RISK;break;case 33:this.$=$e.RiskLevel.MED_RISK;break;case 34:this.$=$e.RiskLevel.HIGH_RISK;break;case 35:this.$=$e.VerifyType.VERIFY_ANALYSIS;break;case 36:this.$=$e.VerifyType.VERIFY_DEMONSTRATION;break;case 37:this.$=$e.VerifyType.VERIFY_INSPECTION;break;case 38:this.$=$e.VerifyType.VERIFY_TEST;break;case 39:$e.addElement(Ae[me-3]);break;case 40:$e.setNewElementType(Ae[me-2]);break;case 41:$e.setNewElementDocRef(Ae[me-2]);break;case 44:$e.addRelationship(Ae[me-2],Ae[me],Ae[me-4]);break;case 45:$e.addRelationship(Ae[me-2],Ae[me-4],Ae[me]);break;case 46:this.$=$e.Relationships.CONTAINS;break;case 47:this.$=$e.Relationships.COPIES;break;case 48:this.$=$e.Relationships.DERIVES;break;case 49:this.$=$e.Relationships.SATISFIES;break;case 50:this.$=$e.Relationships.VERIFIES;break;case 51:this.$=$e.Relationships.REFINES;break;case 52:this.$=$e.Relationships.TRACES;break}},table:[{3:1,4:2,6:i,9:4,14:o,16:l,18:f,19:b},{1:[3]},{3:10,4:2,5:[1,9],6:i,9:4,14:o,16:l,18:f,19:b},{5:[1,11]},{10:12,20:[1,13]},{15:[1,14]},{17:[1,15]},r(d,[2,8]),{20:[2,9]},{3:16,4:2,6:i,9:4,14:o,16:l,18:f,19:b},{1:[2,2]},{4:21,5:w,7:17,8:y,9:4,14:o,16:l,18:f,19:b,23:18,24:19,25:20,26:23,32:25,40:k,41:E,42:T,43:C,44:S,45:L,53:O,71:B,72:N},{11:34,12:[1,35],22:F},r([12,22],[2,10]),r(d,[2,6]),r(d,[2,7]),{1:[2,1]},{8:[1,37]},{4:21,5:w,7:38,8:y,9:4,14:o,16:l,18:f,19:b,23:18,24:19,25:20,26:23,32:25,40:k,41:E,42:T,43:C,44:S,45:L,53:O,71:B,72:N},{4:21,5:w,7:39,8:y,9:4,14:o,16:l,18:f,19:b,23:18,24:19,25:20,26:23,32:25,40:k,41:E,42:T,43:C,44:S,45:L,53:O,71:B,72:N},{4:21,5:w,7:40,8:y,9:4,14:o,16:l,18:f,19:b,23:18,24:19,25:20,26:23,32:25,40:k,41:E,42:T,43:C,44:S,45:L,53:O,71:B,72:N},{4:21,5:w,7:41,8:y,9:4,14:o,16:l,18:f,19:b,23:18,24:19,25:20,26:23,32:25,40:k,41:E,42:T,43:C,44:S,45:L,53:O,71:B,72:N},{4:21,5:w,7:42,8:y,9:4,14:o,16:l,18:f,19:b,23:18,24:19,25:20,26:23,32:25,40:k,41:E,42:T,43:C,44:S,45:L,53:O,71:B,72:N},{27:43,71:[1,44],72:[1,45]},{54:46,71:[1,47],72:[1,48]},{60:[1,49],62:[1,50]},r(R,[2,26]),r(R,[2,27]),r(R,[2,28]),r(R,[2,29]),r(R,[2,30]),r(R,[2,31]),r(q,[2,55]),r(q,[2,56]),r(d,[2,4]),{13:51,21:[1,52]},r(d,[2,12]),{1:[2,3]},{8:[2,14]},{8:[2,15]},{8:[2,16]},{8:[2,17]},{8:[2,18]},{28:[1,53]},{28:[2,53]},{28:[2,54]},{28:[1,54]},{28:[2,59]},{28:[2,60]},{61:55,64:X,65:te,66:H,67:Y,68:z,69:W,70:Z},{61:63,64:X,65:te,66:H,67:Y,68:z,69:W,70:Z},{11:64,22:F},{22:[2,11]},{5:[1,65]},{5:[1,66]},{62:[1,67]},r(G,[2,46]),r(G,[2,47]),r(G,[2,48]),r(G,[2,49]),r(G,[2,50]),r(G,[2,51]),r(G,[2,52]),{63:[1,68]},r(d,[2,5]),{5:ae,29:69,30:$,33:ge,35:ee,37:de,39:re},{5:ke,39:Ce,55:76,56:_e,58:Te},{32:81,71:B,72:N},{32:82,71:B,72:N},r(Be,[2,19]),{31:[1,83]},{31:[1,84]},{31:[1,85]},{31:[1,86]},{5:ae,29:87,30:$,33:ge,35:ee,37:de,39:re},r(Be,[2,25]),r(Be,[2,39]),{31:[1,88]},{31:[1,89]},{5:ke,39:Ce,55:90,56:_e,58:Te},r(Be,[2,43]),r(Be,[2,44]),r(Be,[2,45]),{32:91,71:B,72:N},{34:92,71:[1,93],72:[1,94]},{36:95,46:[1,96],47:[1,97],48:[1,98]},{38:99,49:[1,100],50:[1,101],51:[1,102],52:[1,103]},r(Be,[2,24]),{57:104,71:[1,105],72:[1,106]},{59:107,71:[1,108],72:[1,109]},r(Be,[2,42]),{5:[1,110]},{5:[1,111]},{5:[2,57]},{5:[2,58]},{5:[1,112]},{5:[2,32]},{5:[2,33]},{5:[2,34]},{5:[1,113]},{5:[2,35]},{5:[2,36]},{5:[2,37]},{5:[2,38]},{5:[1,114]},{5:[2,61]},{5:[2,62]},{5:[1,115]},{5:[2,63]},{5:[2,64]},{5:ae,29:116,30:$,33:ge,35:ee,37:de,39:re},{5:ae,29:117,30:$,33:ge,35:ee,37:de,39:re},{5:ae,29:118,30:$,33:ge,35:ee,37:de,39:re},{5:ae,29:119,30:$,33:ge,35:ee,37:de,39:re},{5:ke,39:Ce,55:120,56:_e,58:Te},{5:ke,39:Ce,55:121,56:_e,58:Te},r(Be,[2,20]),r(Be,[2,21]),r(Be,[2,22]),r(Be,[2,23]),r(Be,[2,40]),r(Be,[2,41])],defaultActions:{8:[2,9],10:[2,2],16:[2,1],37:[2,3],38:[2,14],39:[2,15],40:[2,16],41:[2,17],42:[2,18],44:[2,53],45:[2,54],47:[2,59],48:[2,60],52:[2,11],93:[2,57],94:[2,58],96:[2,32],97:[2,33],98:[2,34],100:[2,35],101:[2,36],102:[2,37],103:[2,38],105:[2,61],106:[2,62],108:[2,63],109:[2,64]},parseError:function(Ie,Oe){if(Oe.recoverable)this.trace(Ie);else{var Le=new Error(Ie);throw Le.hash=Oe,Le}},parse:function(Ie){var Oe=this,Le=[0],$e=[],xe=[null],Ae=[],je=this.table,me="",vt=0,ve=0,Zt=2,nt=1,xn=Ae.slice.call(arguments,1),cn=Object.create(this.lexer),jt={yy:{}};for(var ot in this.yy)Object.prototype.hasOwnProperty.call(this.yy,ot)&&(jt.yy[ot]=this.yy[ot]);cn.setInput(Ie,jt.yy),jt.yy.lexer=cn,jt.yy.parser=this,typeof cn.yylloc>"u"&&(cn.yylloc={});var be=cn.yylloc;Ae.push(be);var We=cn.options&&cn.options.ranges;typeof jt.yy.parseError=="function"?this.parseError=jt.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function ct(){var en;return en=$e.pop()||cn.lex()||nt,typeof en!="number"&&(en instanceof Array&&($e=en,en=$e.pop()),en=Oe.symbols_[en]||en),en}for(var Yt,Ut,Wn,Gt,Rn={},si,$r,nr,Kn;;){if(Ut=Le[Le.length-1],this.defaultActions[Ut]?Wn=this.defaultActions[Ut]:((Yt===null||typeof Yt>"u")&&(Yt=ct()),Wn=je[Ut]&&je[Ut][Yt]),typeof Wn>"u"||!Wn.length||!Wn[0]){var Jt="";Kn=[];for(si in je[Ut])this.terminals_[si]&&si>Zt&&Kn.push("'"+this.terminals_[si]+"'");cn.showPosition?Jt="Parse error on line "+(vt+1)+`:
-`+cn.showPosition()+`
-Expecting `+Kn.join(", ")+", got '"+(this.terminals_[Yt]||Yt)+"'":Jt="Parse error on line "+(vt+1)+": Unexpected "+(Yt==nt?"end of input":"'"+(this.terminals_[Yt]||Yt)+"'"),this.parseError(Jt,{text:cn.match,token:this.terminals_[Yt]||Yt,line:cn.yylineno,loc:be,expected:Kn})}if(Wn[0]instanceof Array&&Wn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ut+", token: "+Yt);switch(Wn[0]){case 1:Le.push(Yt),xe.push(cn.yytext),Ae.push(cn.yylloc),Le.push(Wn[1]),Yt=null,ve=cn.yyleng,me=cn.yytext,vt=cn.yylineno,be=cn.yylloc;break;case 2:if($r=this.productions_[Wn[1]][1],Rn.$=xe[xe.length-$r],Rn._$={first_line:Ae[Ae.length-($r||1)].first_line,last_line:Ae[Ae.length-1].last_line,first_column:Ae[Ae.length-($r||1)].first_column,last_column:Ae[Ae.length-1].last_column},We&&(Rn._$.range=[Ae[Ae.length-($r||1)].range[0],Ae[Ae.length-1].range[1]]),Gt=this.performAction.apply(Rn,[me,ve,vt,jt.yy,Wn[1],xe,Ae].concat(xn)),typeof Gt<"u")return Gt;$r&&(Le=Le.slice(0,-1*$r*2),xe=xe.slice(0,-1*$r),Ae=Ae.slice(0,-1*$r)),Le.push(this.productions_[Wn[1]][0]),xe.push(Rn.$),Ae.push(Rn._$),nr=je[Le[Le.length-2]][Le[Le.length-1]],Le.push(nr);break;case 3:return!0}}return!0}},Xe=function(){var Ze={EOF:1,parseError:function(Oe,Le){if(this.yy.parser)this.yy.parser.parseError(Oe,Le);else throw new Error(Oe)},setInput:function(Ie,Oe){return this.yy=Oe||this.yy||{},this._input=Ie,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var Ie=this._input[0];this.yytext+=Ie,this.yyleng++,this.offset++,this.match+=Ie,this.matched+=Ie;var Oe=Ie.match(/(?:\r\n?|\n).*/g);return Oe?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),Ie},unput:function(Ie){var Oe=Ie.length,Le=Ie.split(/(?:\r\n?|\n)/g);this._input=Ie+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Oe),this.offset-=Oe;var $e=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),Le.length-1&&(this.yylineno-=Le.length-1);var xe=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:Le?(Le.length===$e.length?this.yylloc.first_column:0)+$e[$e.length-Le.length].length-Le[0].length:this.yylloc.first_column-Oe},this.options.ranges&&(this.yylloc.range=[xe[0],xe[0]+this.yyleng-Oe]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){if(this.options.backtrack_lexer)this._backtrack=!0;else return this.parseError("Lexical error on line "+(this.yylineno+1)+`. You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).
-`+this.showPosition(),{text:"",token:null,line:this.yylineno});return this},less:function(Ie){this.unput(this.match.slice(Ie))},pastInput:function(){var Ie=this.matched.substr(0,this.matched.length-this.match.length);return(Ie.length>20?"...":"")+Ie.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Ie=this.match;return Ie.length<20&&(Ie+=this._input.substr(0,20-Ie.length)),(Ie.substr(0,20)+(Ie.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Ie=this.pastInput(),Oe=new Array(Ie.length+1).join("-");return Ie+this.upcomingInput()+`
-`+Oe+"^"},test_match:function(Ie,Oe){var Le,$e,xe;if(this.options.backtrack_lexer&&(xe={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&&(xe.yylloc.range=this.yylloc.range.slice(0))),$e=Ie[0].match(/(?:\r\n?|\n).*/g),$e&&(this.yylineno+=$e.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:$e?$e[$e.length-1].length-$e[$e.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Ie[0].length},this.yytext+=Ie[0],this.match+=Ie[0],this.matches=Ie,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(Ie[0].length),this.matched+=Ie[0],Le=this.performAction.call(this,this.yy,this,Oe,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Le)return Le;if(this._backtrack){for(var Ae in xe)this[Ae]=xe[Ae];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Ie,Oe,Le,$e;this._more||(this.yytext="",this.match="");for(var xe=this._currentRules(),Ae=0;AeOe[0].length)){if(Oe=Le,$e=Ae,this.options.backtrack_lexer){if(Ie=this.test_match(Le,xe[Ae]),Ie!==!1)return Ie;if(this._backtrack){Oe=!1;continue}else return!1}else if(!this.options.flex)break}return Oe?(Ie=this.test_match(Oe,xe[$e]),Ie!==!1?Ie:!1):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text.
-`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Oe=this.next();return Oe||this.lex()},begin:function(Oe){this.conditionStack.push(Oe)},popState:function(){var Oe=this.conditionStack.length-1;return Oe>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(Oe){return Oe=this.conditionStack.length-1-Math.abs(Oe||0),Oe>=0?this.conditionStack[Oe]:"INITIAL"},pushState:function(Oe){this.begin(Oe)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Oe,Le,$e,xe){switch($e){case 0:return this.begin("open_directive"),19;case 1:return this.begin("type_directive"),20;case 2:return this.popState(),this.begin("arg_directive"),12;case 3:return this.popState(),this.popState(),22;case 4:return 21;case 5:return"title";case 6:return this.begin("acc_title"),14;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),16;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:return 5;case 14:break;case 15:break;case 16:break;case 17:return 8;case 18:return 6;case 19:return 28;case 20:return 39;case 21:return 31;case 22:return 30;case 23:return 33;case 24:return 35;case 25:return 37;case 26:return 40;case 27:return 41;case 28:return 42;case 29:return 43;case 30:return 44;case 31:return 45;case 32:return 46;case 33:return 47;case 34:return 48;case 35:return 49;case 36:return 50;case 37:return 51;case 38:return 52;case 39:return 53;case 40:return 64;case 41:return 65;case 42:return 66;case 43:return 67;case 44:return 68;case 45:return 69;case 46:return 70;case 47:return 56;case 48:return 58;case 49:return 60;case 50:return 63;case 51:return 62;case 52:this.begin("string");break;case 53:this.popState();break;case 54:return"qString";case 55:return Le.yytext=Le.yytext.trim(),71}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:(\r?\n)+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:$)/i,/^(?:requirementDiagram\b)/i,/^(?:\{)/i,/^(?:\})/i,/^(?::)/i,/^(?:id\b)/i,/^(?:text\b)/i,/^(?:risk\b)/i,/^(?:verifyMethod\b)/i,/^(?:requirement\b)/i,/^(?:functionalRequirement\b)/i,/^(?:interfaceRequirement\b)/i,/^(?:performanceRequirement\b)/i,/^(?:physicalRequirement\b)/i,/^(?:designConstraint\b)/i,/^(?:low\b)/i,/^(?:medium\b)/i,/^(?:high\b)/i,/^(?:analysis\b)/i,/^(?:demonstration\b)/i,/^(?:inspection\b)/i,/^(?:test\b)/i,/^(?:element\b)/i,/^(?:contains\b)/i,/^(?:copies\b)/i,/^(?:derives\b)/i,/^(?:satisfies\b)/i,/^(?:verifies\b)/i,/^(?:refines\b)/i,/^(?:traces\b)/i,/^(?:type\b)/i,/^(?:docref\b)/i,/^(?:<-)/i,/^(?:->)/i,/^(?:-)/i,/^(?:["])/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[\w][^\r\n\{\<\>\-\=]*)/i],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},close_directive:{rules:[],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},open_directive:{rules:[1],inclusive:!1},unqString:{rules:[],inclusive:!1},token:{rules:[],inclusive:!1},string:{rules:[53,54],inclusive:!1},INITIAL:{rules:[0,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,55],inclusive:!0}}};return Ze}();Ge.lexer=Xe;function Ee(){this.yy={}}return Ee.prototype=Ge,Ge.Parser=Ee,new Ee}();nce.parser=nce;const HQt=nce,zQt=r=>r.match(/^\s*requirement(Diagram)?/)!==null;let rce=[],Z0={},UI={},v6={},qI={};const GQt={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"},parseDirective:function(r,i,o){Bu.parseDirective(this,r,i,o)},getConfig:()=>ht().req,addRequirement:(r,i)=>(UI[r]===void 0&&(UI[r]={name:r,type:i,id:Z0.id,text:Z0.text,risk:Z0.risk,verifyMethod:Z0.verifyMethod}),Z0={},UI[r]),getRequirements:()=>UI,setNewReqId:r=>{Z0!==void 0&&(Z0.id=r)},setNewReqText:r=>{Z0!==void 0&&(Z0.text=r)},setNewReqRisk:r=>{Z0!==void 0&&(Z0.risk=r)},setNewReqVerifyMethod:r=>{Z0!==void 0&&(Z0.verifyMethod=r)},setAccTitle:K0,getAccTitle:hp,setAccDescription:fp,getAccDescription:dp,addElement:r=>(qI[r]===void 0&&(qI[r]={name:r,type:v6.type,docRef:v6.docRef},Se.info("Added new requirement: ",r)),v6={},qI[r]),getElements:()=>qI,setNewElementType:r=>{v6!==void 0&&(v6.type=r)},setNewElementDocRef:r=>{v6!==void 0&&(v6.docRef=r)},addRelationship:(r,i,o)=>{rce.push({type:r,src:i,dst:o})},getRelationships:()=>rce,clear:()=>{rce=[],Z0={},UI={},v6={},qI={},W0()}},ice={CONTAINS:"contains",ARROW:"arrow"},wLe={ReqMarkers:ice,insertLineEndings:(r,i)=>{let o=r.append("defs").append("marker").attr("id",ice.CONTAINS+"_line_ending").attr("refX",0).attr("refY",i.line_height/2).attr("markerWidth",i.line_height).attr("markerHeight",i.line_height).attr("orient","auto").append("g");o.append("circle").attr("cx",i.line_height/2).attr("cy",i.line_height/2).attr("r",i.line_height/2).attr("fill","none"),o.append("line").attr("x1",0).attr("x2",i.line_height).attr("y1",i.line_height/2).attr("y2",i.line_height/2).attr("stroke-width",1),o.append("line").attr("y1",0).attr("y2",i.line_height).attr("x1",i.line_height/2).attr("x2",i.line_height/2).attr("stroke-width",1),r.append("defs").append("marker").attr("id",ice.ARROW+"_line_ending").attr("refX",i.line_height).attr("refY",.5*i.line_height).attr("markerWidth",i.line_height).attr("markerHeight",i.line_height).attr("orient","auto").append("path").attr("d",`M0,0
- L${i.line_height},${i.line_height/2}
- M${i.line_height},${i.line_height/2}
- L0,${i.line_height}`).attr("stroke-width",1)}};let Al={},mLe=0;const yLe=(r,i)=>r.insert("rect","#"+i).attr("class","req reqBox").attr("x",0).attr("y",0).attr("width",Al.rect_min_width+"px").attr("height",Al.rect_min_height+"px"),kLe=(r,i,o)=>{let l=Al.rect_min_width/2,f=r.append("text").attr("class","req reqLabel reqTitle").attr("id",i).attr("x",l).attr("y",Al.rect_padding).attr("dominant-baseline","hanging"),b=0;o.forEach(k=>{b==0?f.append("tspan").attr("text-anchor","middle").attr("x",Al.rect_min_width/2).attr("dy",0).text(k):f.append("tspan").attr("text-anchor","middle").attr("x",Al.rect_min_width/2).attr("dy",Al.line_height*.75).text(k),b++});let d=1.5*Al.rect_padding,w=b*Al.line_height*.75,y=d+w;return r.append("line").attr("class","req-title-line").attr("x1","0").attr("x2",Al.rect_min_width).attr("y1",y).attr("y2",y),{titleNode:f,y}},xLe=(r,i,o,l)=>{let f=r.append("text").attr("class","req reqLabel").attr("id",i).attr("x",Al.rect_padding).attr("y",l).attr("dominant-baseline","hanging"),b=0;const d=30;let w=[];return o.forEach(y=>{let k=y.length;for(;k>d&&b<3;){let E=y.substring(0,d);y=y.substring(d,y.length),k=y.length,w[w.length]=E,b++}if(b==3){let E=w[w.length-1];w[w.length-1]=E.substring(0,E.length-4)+"..."}else w[w.length]=y;b=0}),w.forEach(y=>{f.append("tspan").attr("x",Al.rect_padding).attr("dy",Al.line_height).text(y)}),f},VQt=(r,i,o,l)=>{const f=i.node().getTotalLength(),b=i.node().getPointAtLength(f*.5),d="rel"+mLe;mLe++;const y=r.append("text").attr("class","req relationshipLabel").attr("id",d).attr("x",b.x).attr("y",b.y).attr("text-anchor","middle").attr("dominant-baseline","middle").text(l).node().getBBox();r.insert("rect","#"+d).attr("class","req reqLabelBox").attr("x",b.x-y.width/2).attr("y",b.y-y.height/2).attr("width",y.width).attr("height",y.height).attr("fill","white").attr("fill-opacity","85%")},UQt=function(r,i,o,l,f){const b=o.edge(xC(i.src),xC(i.dst)),d=V8().x(function(y){return y.x}).y(function(y){return y.y}),w=r.insert("path","#"+l).attr("class","er relationshipLine").attr("d",d(b.points)).attr("fill","none");i.type==f.db.Relationships.CONTAINS?w.attr("marker-start","url("+Cs.getUrl(Al.arrowMarkerAbsolute)+"#"+i.type+"_line_ending)"):(w.attr("stroke-dasharray","10,7"),w.attr("marker-end","url("+Cs.getUrl(Al.arrowMarkerAbsolute)+"#"+wLe.ReqMarkers.ARROW+"_line_ending)")),VQt(r,w,Al,`<<${i.type}>>`)},qQt=(r,i,o)=>{Object.keys(r).forEach(l=>{let f=r[l];l=xC(l),Se.info("Added new requirement: ",l);const b=o.append("g").attr("id",l),d="req-"+l,w=yLe(b,d);let y=kLe(b,l+"_title",[`<<${f.type}>>`,`${f.name}`]);xLe(b,l+"_body",[`Id: ${f.id}`,`Text: ${f.text}`,`Risk: ${f.risk}`,`Verification: ${f.verifyMethod}`],y.y);const k=w.node().getBBox();i.setNode(l,{width:k.width,height:k.height,shape:"rect",id:l})})},YQt=(r,i,o)=>{Object.keys(r).forEach(l=>{let f=r[l];const b=xC(l),d=o.append("g").attr("id",b),w="element-"+b,y=yLe(d,w);let k=kLe(d,w+"_title",["<>",`${l}`]);xLe(d,w+"_body",[`Type: ${f.type||"Not Specified"}`,`Doc Ref: ${f.docRef||"None"}`],k.y);const E=y.node().getBBox();i.setNode(b,{width:E.width,height:E.height,shape:"rect",id:b})})},WQt=(r,i)=>(r.forEach(function(o){let l=xC(o.src),f=xC(o.dst);i.setEdge(l,f,{relationship:o})}),r),KQt=function(r,i){i.nodes().forEach(function(o){o!==void 0&&i.node(o)!==void 0&&(r.select("#"+o),r.select("#"+o).attr("transform","translate("+(i.node(o).x-i.node(o).width/2)+","+(i.node(o).y-i.node(o).height/2)+" )"))})},xC=r=>r.replace(/\s/g,"").replace(/\./g,"_"),XQt={draw:(r,i,o,l)=>{Al=ht().requirement,l.db.clear(),l.parser.parse(r);const f=Al.securityLevel;let b;f==="sandbox"&&(b=Cn("#i"+i));const w=Cn(f==="sandbox"?b.nodes()[0].contentDocument.body:"body").select(`[id='${i}']`);wLe.insertLineEndings(w,Al);const y=new zh({multigraph:!1,compound:!1,directed:!0}).setGraph({rankdir:Al.layoutDirection,marginx:20,marginy:20,nodesep:100,edgesep:100,ranksep:100}).setDefaultEdgeLabel(function(){return{}});let k=l.db.getRequirements(),E=l.db.getElements(),T=l.db.getRelationships();qQt(k,y,w),YQt(E,y,w),WQt(T,y),bC(y),KQt(w,y),T.forEach(function(B){UQt(w,B,y,i,l)});const C=Al.rect_padding,S=w.node().getBBox(),L=S.width+C*2,O=S.height+C*2;Iv(w,O,L,Al.useMaxWidth),w.attr("viewBox",`${S.x-C} ${S.y-C} ${L} ${O}`)}};var sce=function(){var r=function(Oe,Le,$e,xe){for($e=$e||{},xe=Oe.length;xe--;$e[Oe[xe]]=Le);return $e},i=[1,2],o=[1,3],l=[1,5],f=[1,7],b=[2,5],d=[1,15],w=[1,17],y=[1,19],k=[1,21],E=[1,22],T=[1,23],C=[1,29],S=[1,30],L=[1,31],O=[1,32],B=[1,33],N=[1,34],F=[1,35],R=[1,36],q=[1,37],X=[1,38],te=[1,39],H=[1,40],Y=[1,42],z=[1,43],W=[1,45],Z=[1,46],G=[1,47],ae=[1,48],$=[1,49],ge=[1,50],ee=[1,53],de=[1,4,5,19,21,23,26,28,34,35,36,38,40,41,42,43,44,46,48,50,51,52,53,54,56,57,62,63,64,65,73,83],re=[4,5,21,54,56],ke=[4,5,19,21,23,26,28,34,35,36,38,40,41,42,43,44,46,48,50,54,56,57,62,63,64,65,73,83],Ce=[4,5,19,21,23,26,28,34,35,36,38,40,41,42,43,44,46,48,50,53,54,56,57,62,63,64,65,73,83],_e=[4,5,19,21,23,26,28,34,35,36,38,40,41,42,43,44,46,48,50,52,54,56,57,62,63,64,65,73,83],Te=[4,5,19,21,23,26,28,34,35,36,38,40,41,42,43,44,46,48,50,51,54,56,57,62,63,64,65,73,83],Be=[71,72,73],Ge=[1,125],Xe=[1,4,5,7,19,21,23,26,28,34,35,36,38,40,41,42,43,44,46,48,50,51,52,53,54,56,57,62,63,64,65,73,83],Ee={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NEWLINE:5,directive:6,SD:7,document:8,line:9,statement:10,box_section:11,box_line:12,participant_statement:13,openDirective:14,typeDirective:15,closeDirective:16,":":17,argDirective:18,box:19,restOfLine:20,end:21,signal:22,autonumber:23,NUM:24,off:25,activate:26,actor:27,deactivate:28,note_statement:29,links_statement:30,link_statement:31,properties_statement:32,details_statement:33,title:34,legacy_title:35,acc_title:36,acc_title_value:37,acc_descr:38,acc_descr_value:39,acc_descr_multiline_value:40,loop:41,rect:42,opt:43,alt:44,else_sections:45,par:46,par_sections:47,critical:48,option_sections:49,break:50,option:51,and:52,else:53,participant:54,AS:55,participant_actor:56,note:57,placement:58,text2:59,over:60,actor_pair:61,links:62,link:63,properties:64,details:65,spaceList:66,",":67,left_of:68,right_of:69,signaltype:70,"+":71,"-":72,ACTOR:73,SOLID_OPEN_ARROW:74,DOTTED_OPEN_ARROW:75,SOLID_ARROW:76,DOTTED_ARROW:77,SOLID_CROSS:78,DOTTED_CROSS:79,SOLID_POINT:80,DOTTED_POINT:81,TXT:82,open_directive:83,type_directive:84,arg_directive:85,close_directive:86,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NEWLINE",7:"SD",17:":",19:"box",20:"restOfLine",21:"end",23:"autonumber",24:"NUM",25:"off",26:"activate",28:"deactivate",34:"title",35:"legacy_title",36:"acc_title",37:"acc_title_value",38:"acc_descr",39:"acc_descr_value",40:"acc_descr_multiline_value",41:"loop",42:"rect",43:"opt",44:"alt",46:"par",48:"critical",50:"break",51:"option",52:"and",53:"else",54:"participant",55:"AS",56:"participant_actor",57:"note",60:"over",62:"links",63:"link",64:"properties",65:"details",67:",",68:"left_of",69:"right_of",71:"+",72:"-",73:"ACTOR",74:"SOLID_OPEN_ARROW",75:"DOTTED_OPEN_ARROW",76:"SOLID_ARROW",77:"DOTTED_ARROW",78:"SOLID_CROSS",79:"DOTTED_CROSS",80:"SOLID_POINT",81:"DOTTED_POINT",82:"TXT",83:"open_directive",84:"type_directive",85:"arg_directive",86:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[11,0],[11,2],[12,2],[12,1],[12,1],[6,4],[6,6],[10,1],[10,4],[10,2],[10,4],[10,3],[10,3],[10,2],[10,3],[10,3],[10,2],[10,2],[10,2],[10,2],[10,2],[10,1],[10,1],[10,2],[10,2],[10,1],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,4],[10,1],[49,1],[49,4],[47,1],[47,4],[45,1],[45,4],[13,5],[13,3],[13,5],[13,3],[29,4],[29,4],[30,3],[31,3],[32,3],[33,3],[66,2],[66,1],[61,3],[61,1],[58,1],[58,1],[22,5],[22,5],[22,4],[27,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[70,1],[59,1],[14,1],[15,1],[18,1],[16,1]],performAction:function(Le,$e,xe,Ae,je,me,vt){var ve=me.length-1;switch(je){case 4:return Ae.apply(me[ve]),me[ve];case 5:case 10:this.$=[];break;case 6:case 11:me[ve-1].push(me[ve]),this.$=me[ve-1];break;case 7:case 8:case 12:case 13:this.$=me[ve];break;case 9:case 14:this.$=[];break;case 18:me[ve-1].unshift({type:"boxStart",boxData:Ae.parseBoxData(me[ve-2])}),me[ve-1].push({type:"boxEnd",boxText:me[ve-2]}),this.$=me[ve-1];break;case 20:this.$={type:"sequenceIndex",sequenceIndex:Number(me[ve-2]),sequenceIndexStep:Number(me[ve-1]),sequenceVisible:!0,signalType:Ae.LINETYPE.AUTONUMBER};break;case 21:this.$={type:"sequenceIndex",sequenceIndex:Number(me[ve-1]),sequenceIndexStep:1,sequenceVisible:!0,signalType:Ae.LINETYPE.AUTONUMBER};break;case 22:this.$={type:"sequenceIndex",sequenceVisible:!1,signalType:Ae.LINETYPE.AUTONUMBER};break;case 23:this.$={type:"sequenceIndex",sequenceVisible:!0,signalType:Ae.LINETYPE.AUTONUMBER};break;case 24:this.$={type:"activeStart",signalType:Ae.LINETYPE.ACTIVE_START,actor:me[ve-1]};break;case 25:this.$={type:"activeEnd",signalType:Ae.LINETYPE.ACTIVE_END,actor:me[ve-1]};break;case 31:Ae.setDiagramTitle(me[ve].substring(6)),this.$=me[ve].substring(6);break;case 32:Ae.setDiagramTitle(me[ve].substring(7)),this.$=me[ve].substring(7);break;case 33:this.$=me[ve].trim(),Ae.setAccTitle(this.$);break;case 34:case 35:this.$=me[ve].trim(),Ae.setAccDescription(this.$);break;case 36:me[ve-1].unshift({type:"loopStart",loopText:Ae.parseMessage(me[ve-2]),signalType:Ae.LINETYPE.LOOP_START}),me[ve-1].push({type:"loopEnd",loopText:me[ve-2],signalType:Ae.LINETYPE.LOOP_END}),this.$=me[ve-1];break;case 37:me[ve-1].unshift({type:"rectStart",color:Ae.parseMessage(me[ve-2]),signalType:Ae.LINETYPE.RECT_START}),me[ve-1].push({type:"rectEnd",color:Ae.parseMessage(me[ve-2]),signalType:Ae.LINETYPE.RECT_END}),this.$=me[ve-1];break;case 38:me[ve-1].unshift({type:"optStart",optText:Ae.parseMessage(me[ve-2]),signalType:Ae.LINETYPE.OPT_START}),me[ve-1].push({type:"optEnd",optText:Ae.parseMessage(me[ve-2]),signalType:Ae.LINETYPE.OPT_END}),this.$=me[ve-1];break;case 39:me[ve-1].unshift({type:"altStart",altText:Ae.parseMessage(me[ve-2]),signalType:Ae.LINETYPE.ALT_START}),me[ve-1].push({type:"altEnd",signalType:Ae.LINETYPE.ALT_END}),this.$=me[ve-1];break;case 40:me[ve-1].unshift({type:"parStart",parText:Ae.parseMessage(me[ve-2]),signalType:Ae.LINETYPE.PAR_START}),me[ve-1].push({type:"parEnd",signalType:Ae.LINETYPE.PAR_END}),this.$=me[ve-1];break;case 41:me[ve-1].unshift({type:"criticalStart",criticalText:Ae.parseMessage(me[ve-2]),signalType:Ae.LINETYPE.CRITICAL_START}),me[ve-1].push({type:"criticalEnd",signalType:Ae.LINETYPE.CRITICAL_END}),this.$=me[ve-1];break;case 42:me[ve-1].unshift({type:"breakStart",breakText:Ae.parseMessage(me[ve-2]),signalType:Ae.LINETYPE.BREAK_START}),me[ve-1].push({type:"breakEnd",optText:Ae.parseMessage(me[ve-2]),signalType:Ae.LINETYPE.BREAK_END}),this.$=me[ve-1];break;case 45:this.$=me[ve-3].concat([{type:"option",optionText:Ae.parseMessage(me[ve-1]),signalType:Ae.LINETYPE.CRITICAL_OPTION},me[ve]]);break;case 47:this.$=me[ve-3].concat([{type:"and",parText:Ae.parseMessage(me[ve-1]),signalType:Ae.LINETYPE.PAR_AND},me[ve]]);break;case 49:this.$=me[ve-3].concat([{type:"else",altText:Ae.parseMessage(me[ve-1]),signalType:Ae.LINETYPE.ALT_ELSE},me[ve]]);break;case 50:me[ve-3].type="addParticipant",me[ve-3].description=Ae.parseMessage(me[ve-1]),this.$=me[ve-3];break;case 51:me[ve-1].type="addParticipant",this.$=me[ve-1];break;case 52:me[ve-3].type="addActor",me[ve-3].description=Ae.parseMessage(me[ve-1]),this.$=me[ve-3];break;case 53:me[ve-1].type="addActor",this.$=me[ve-1];break;case 54:this.$=[me[ve-1],{type:"addNote",placement:me[ve-2],actor:me[ve-1].actor,text:me[ve]}];break;case 55:me[ve-2]=[].concat(me[ve-1],me[ve-1]).slice(0,2),me[ve-2][0]=me[ve-2][0].actor,me[ve-2][1]=me[ve-2][1].actor,this.$=[me[ve-1],{type:"addNote",placement:Ae.PLACEMENT.OVER,actor:me[ve-2].slice(0,2),text:me[ve]}];break;case 56:this.$=[me[ve-1],{type:"addLinks",actor:me[ve-1].actor,text:me[ve]}];break;case 57:this.$=[me[ve-1],{type:"addALink",actor:me[ve-1].actor,text:me[ve]}];break;case 58:this.$=[me[ve-1],{type:"addProperties",actor:me[ve-1].actor,text:me[ve]}];break;case 59:this.$=[me[ve-1],{type:"addDetails",actor:me[ve-1].actor,text:me[ve]}];break;case 62:this.$=[me[ve-2],me[ve]];break;case 63:this.$=me[ve];break;case 64:this.$=Ae.PLACEMENT.LEFTOF;break;case 65:this.$=Ae.PLACEMENT.RIGHTOF;break;case 66:this.$=[me[ve-4],me[ve-1],{type:"addMessage",from:me[ve-4].actor,to:me[ve-1].actor,signalType:me[ve-3],msg:me[ve]},{type:"activeStart",signalType:Ae.LINETYPE.ACTIVE_START,actor:me[ve-1]}];break;case 67:this.$=[me[ve-4],me[ve-1],{type:"addMessage",from:me[ve-4].actor,to:me[ve-1].actor,signalType:me[ve-3],msg:me[ve]},{type:"activeEnd",signalType:Ae.LINETYPE.ACTIVE_END,actor:me[ve-4]}];break;case 68:this.$=[me[ve-3],me[ve-1],{type:"addMessage",from:me[ve-3].actor,to:me[ve-1].actor,signalType:me[ve-2],msg:me[ve]}];break;case 69:this.$={type:"addParticipant",actor:me[ve]};break;case 70:this.$=Ae.LINETYPE.SOLID_OPEN;break;case 71:this.$=Ae.LINETYPE.DOTTED_OPEN;break;case 72:this.$=Ae.LINETYPE.SOLID;break;case 73:this.$=Ae.LINETYPE.DOTTED;break;case 74:this.$=Ae.LINETYPE.SOLID_CROSS;break;case 75:this.$=Ae.LINETYPE.DOTTED_CROSS;break;case 76:this.$=Ae.LINETYPE.SOLID_POINT;break;case 77:this.$=Ae.LINETYPE.DOTTED_POINT;break;case 78:this.$=Ae.parseMessage(me[ve].trim().substring(1));break;case 79:Ae.parseDirective("%%{","open_directive");break;case 80:Ae.parseDirective(me[ve],"type_directive");break;case 81:me[ve]=me[ve].trim().replace(/'/g,'"'),Ae.parseDirective(me[ve],"arg_directive");break;case 82:Ae.parseDirective("}%%","close_directive","sequence");break}},table:[{3:1,4:i,5:o,6:4,7:l,14:6,83:f},{1:[3]},{3:8,4:i,5:o,6:4,7:l,14:6,83:f},{3:9,4:i,5:o,6:4,7:l,14:6,83:f},{3:10,4:i,5:o,6:4,7:l,14:6,83:f},r([1,4,5,19,23,26,28,34,35,36,38,40,41,42,43,44,46,48,50,54,56,57,62,63,64,65,73,83],b,{8:11}),{15:12,84:[1,13]},{84:[2,79]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:d,5:w,6:41,9:14,10:16,13:18,14:6,19:y,22:20,23:k,26:E,27:44,28:T,29:24,30:25,31:26,32:27,33:28,34:C,35:S,36:L,38:O,40:B,41:N,42:F,43:R,44:q,46:X,48:te,50:H,54:Y,56:z,57:W,62:Z,63:G,64:ae,65:$,73:ge,83:f},{16:51,17:[1,52],86:ee},r([17,86],[2,80]),r(de,[2,6]),{6:41,10:54,13:18,14:6,19:y,22:20,23:k,26:E,27:44,28:T,29:24,30:25,31:26,32:27,33:28,34:C,35:S,36:L,38:O,40:B,41:N,42:F,43:R,44:q,46:X,48:te,50:H,54:Y,56:z,57:W,62:Z,63:G,64:ae,65:$,73:ge,83:f},r(de,[2,8]),r(de,[2,9]),r(de,[2,17]),{20:[1,55]},{5:[1,56]},{5:[1,59],24:[1,57],25:[1,58]},{27:60,73:ge},{27:61,73:ge},{5:[1,62]},{5:[1,63]},{5:[1,64]},{5:[1,65]},{5:[1,66]},r(de,[2,31]),r(de,[2,32]),{37:[1,67]},{39:[1,68]},r(de,[2,35]),{20:[1,69]},{20:[1,70]},{20:[1,71]},{20:[1,72]},{20:[1,73]},{20:[1,74]},{20:[1,75]},r(de,[2,43]),{27:76,73:ge},{27:77,73:ge},{70:78,74:[1,79],75:[1,80],76:[1,81],77:[1,82],78:[1,83],79:[1,84],80:[1,85],81:[1,86]},{58:87,60:[1,88],68:[1,89],69:[1,90]},{27:91,73:ge},{27:92,73:ge},{27:93,73:ge},{27:94,73:ge},r([5,55,67,74,75,76,77,78,79,80,81,82],[2,69]),{5:[1,95]},{18:96,85:[1,97]},{5:[2,82]},r(de,[2,7]),r(re,[2,10],{11:98}),r(de,[2,19]),{5:[1,100],24:[1,99]},{5:[1,101]},r(de,[2,23]),{5:[1,102]},{5:[1,103]},r(de,[2,26]),r(de,[2,27]),r(de,[2,28]),r(de,[2,29]),r(de,[2,30]),r(de,[2,33]),r(de,[2,34]),r(ke,b,{8:104}),r(ke,b,{8:105}),r(ke,b,{8:106}),r(Ce,b,{45:107,8:108}),r(_e,b,{47:109,8:110}),r(Te,b,{49:111,8:112}),r(ke,b,{8:113}),{5:[1,115],55:[1,114]},{5:[1,117],55:[1,116]},{27:120,71:[1,118],72:[1,119],73:ge},r(Be,[2,70]),r(Be,[2,71]),r(Be,[2,72]),r(Be,[2,73]),r(Be,[2,74]),r(Be,[2,75]),r(Be,[2,76]),r(Be,[2,77]),{27:121,73:ge},{27:123,61:122,73:ge},{73:[2,64]},{73:[2,65]},{59:124,82:Ge},{59:126,82:Ge},{59:127,82:Ge},{59:128,82:Ge},r(Xe,[2,15]),{16:129,86:ee},{86:[2,81]},{4:[1,132],5:[1,134],12:131,13:133,21:[1,130],54:Y,56:z},{5:[1,135]},r(de,[2,21]),r(de,[2,22]),r(de,[2,24]),r(de,[2,25]),{4:d,5:w,6:41,9:14,10:16,13:18,14:6,19:y,21:[1,136],22:20,23:k,26:E,27:44,28:T,29:24,30:25,31:26,32:27,33:28,34:C,35:S,36:L,38:O,40:B,41:N,42:F,43:R,44:q,46:X,48:te,50:H,54:Y,56:z,57:W,62:Z,63:G,64:ae,65:$,73:ge,83:f},{4:d,5:w,6:41,9:14,10:16,13:18,14:6,19:y,21:[1,137],22:20,23:k,26:E,27:44,28:T,29:24,30:25,31:26,32:27,33:28,34:C,35:S,36:L,38:O,40:B,41:N,42:F,43:R,44:q,46:X,48:te,50:H,54:Y,56:z,57:W,62:Z,63:G,64:ae,65:$,73:ge,83:f},{4:d,5:w,6:41,9:14,10:16,13:18,14:6,19:y,21:[1,138],22:20,23:k,26:E,27:44,28:T,29:24,30:25,31:26,32:27,33:28,34:C,35:S,36:L,38:O,40:B,41:N,42:F,43:R,44:q,46:X,48:te,50:H,54:Y,56:z,57:W,62:Z,63:G,64:ae,65:$,73:ge,83:f},{21:[1,139]},{4:d,5:w,6:41,9:14,10:16,13:18,14:6,19:y,21:[2,48],22:20,23:k,26:E,27:44,28:T,29:24,30:25,31:26,32:27,33:28,34:C,35:S,36:L,38:O,40:B,41:N,42:F,43:R,44:q,46:X,48:te,50:H,53:[1,140],54:Y,56:z,57:W,62:Z,63:G,64:ae,65:$,73:ge,83:f},{21:[1,141]},{4:d,5:w,6:41,9:14,10:16,13:18,14:6,19:y,21:[2,46],22:20,23:k,26:E,27:44,28:T,29:24,30:25,31:26,32:27,33:28,34:C,35:S,36:L,38:O,40:B,41:N,42:F,43:R,44:q,46:X,48:te,50:H,52:[1,142],54:Y,56:z,57:W,62:Z,63:G,64:ae,65:$,73:ge,83:f},{21:[1,143]},{4:d,5:w,6:41,9:14,10:16,13:18,14:6,19:y,21:[2,44],22:20,23:k,26:E,27:44,28:T,29:24,30:25,31:26,32:27,33:28,34:C,35:S,36:L,38:O,40:B,41:N,42:F,43:R,44:q,46:X,48:te,50:H,51:[1,144],54:Y,56:z,57:W,62:Z,63:G,64:ae,65:$,73:ge,83:f},{4:d,5:w,6:41,9:14,10:16,13:18,14:6,19:y,21:[1,145],22:20,23:k,26:E,27:44,28:T,29:24,30:25,31:26,32:27,33:28,34:C,35:S,36:L,38:O,40:B,41:N,42:F,43:R,44:q,46:X,48:te,50:H,54:Y,56:z,57:W,62:Z,63:G,64:ae,65:$,73:ge,83:f},{20:[1,146]},r(de,[2,51]),{20:[1,147]},r(de,[2,53]),{27:148,73:ge},{27:149,73:ge},{59:150,82:Ge},{59:151,82:Ge},{59:152,82:Ge},{67:[1,153],82:[2,63]},{5:[2,56]},{5:[2,78]},{5:[2,57]},{5:[2,58]},{5:[2,59]},{5:[1,154]},r(de,[2,18]),r(re,[2,11]),{13:155,54:Y,56:z},r(re,[2,13]),r(re,[2,14]),r(de,[2,20]),r(de,[2,36]),r(de,[2,37]),r(de,[2,38]),r(de,[2,39]),{20:[1,156]},r(de,[2,40]),{20:[1,157]},r(de,[2,41]),{20:[1,158]},r(de,[2,42]),{5:[1,159]},{5:[1,160]},{59:161,82:Ge},{59:162,82:Ge},{5:[2,68]},{5:[2,54]},{5:[2,55]},{27:163,73:ge},r(Xe,[2,16]),r(re,[2,12]),r(Ce,b,{8:108,45:164}),r(_e,b,{8:110,47:165}),r(Te,b,{8:112,49:166}),r(de,[2,50]),r(de,[2,52]),{5:[2,66]},{5:[2,67]},{82:[2,62]},{21:[2,49]},{21:[2,47]},{21:[2,45]}],defaultActions:{7:[2,79],8:[2,1],9:[2,2],10:[2,3],53:[2,82],89:[2,64],90:[2,65],97:[2,81],124:[2,56],125:[2,78],126:[2,57],127:[2,58],128:[2,59],150:[2,68],151:[2,54],152:[2,55],161:[2,66],162:[2,67],163:[2,62],164:[2,49],165:[2,47],166:[2,45]},parseError:function(Le,$e){if($e.recoverable)this.trace(Le);else{var xe=new Error(Le);throw xe.hash=$e,xe}},parse:function(Le){var $e=this,xe=[0],Ae=[],je=[null],me=[],vt=this.table,ve="",Zt=0,nt=0,xn=2,cn=1,jt=me.slice.call(arguments,1),ot=Object.create(this.lexer),be={yy:{}};for(var We in this.yy)Object.prototype.hasOwnProperty.call(this.yy,We)&&(be.yy[We]=this.yy[We]);ot.setInput(Le,be.yy),be.yy.lexer=ot,be.yy.parser=this,typeof ot.yylloc>"u"&&(ot.yylloc={});var ct=ot.yylloc;me.push(ct);var Yt=ot.options&&ot.options.ranges;typeof be.yy.parseError=="function"?this.parseError=be.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function Ut(){var hn;return hn=Ae.pop()||ot.lex()||cn,typeof hn!="number"&&(hn instanceof Array&&(Ae=hn,hn=Ae.pop()),hn=$e.symbols_[hn]||hn),hn}for(var Wn,Gt,Rn,si,$r={},nr,Kn,Jt,en;;){if(Gt=xe[xe.length-1],this.defaultActions[Gt]?Rn=this.defaultActions[Gt]:((Wn===null||typeof Wn>"u")&&(Wn=Ut()),Rn=vt[Gt]&&vt[Gt][Wn]),typeof Rn>"u"||!Rn.length||!Rn[0]){var In="";en=[];for(nr in vt[Gt])this.terminals_[nr]&&nr>xn&&en.push("'"+this.terminals_[nr]+"'");ot.showPosition?In="Parse error on line "+(Zt+1)+`:
-`+ot.showPosition()+`
-Expecting `+en.join(", ")+", got '"+(this.terminals_[Wn]||Wn)+"'":In="Parse error on line "+(Zt+1)+": Unexpected "+(Wn==cn?"end of input":"'"+(this.terminals_[Wn]||Wn)+"'"),this.parseError(In,{text:ot.match,token:this.terminals_[Wn]||Wn,line:ot.yylineno,loc:ct,expected:en})}if(Rn[0]instanceof Array&&Rn.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Gt+", token: "+Wn);switch(Rn[0]){case 1:xe.push(Wn),je.push(ot.yytext),me.push(ot.yylloc),xe.push(Rn[1]),Wn=null,nt=ot.yyleng,ve=ot.yytext,Zt=ot.yylineno,ct=ot.yylloc;break;case 2:if(Kn=this.productions_[Rn[1]][1],$r.$=je[je.length-Kn],$r._$={first_line:me[me.length-(Kn||1)].first_line,last_line:me[me.length-1].last_line,first_column:me[me.length-(Kn||1)].first_column,last_column:me[me.length-1].last_column},Yt&&($r._$.range=[me[me.length-(Kn||1)].range[0],me[me.length-1].range[1]]),si=this.performAction.apply($r,[ve,nt,Zt,be.yy,Rn[1],je,me].concat(jt)),typeof si<"u")return si;Kn&&(xe=xe.slice(0,-1*Kn*2),je=je.slice(0,-1*Kn),me=me.slice(0,-1*Kn)),xe.push(this.productions_[Rn[1]][0]),je.push($r.$),me.push($r._$),Jt=vt[xe[xe.length-2]][xe[xe.length-1]],xe.push(Jt);break;case 3:return!0}}return!0}},Ze=function(){var Oe={EOF:1,parseError:function($e,xe){if(this.yy.parser)this.yy.parser.parseError($e,xe);else throw new Error($e)},setInput:function(Le,$e){return this.yy=$e||this.yy||{},this._input=Le,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 Le=this._input[0];this.yytext+=Le,this.yyleng++,this.offset++,this.match+=Le,this.matched+=Le;var $e=Le.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),Le},unput:function(Le){var $e=Le.length,xe=Le.split(/(?:\r\n?|\n)/g);this._input=Le+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-$e),this.offset-=$e;var Ae=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),xe.length-1&&(this.yylineno-=xe.length-1);var je=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:xe?(xe.length===Ae.length?this.yylloc.first_column:0)+Ae[Ae.length-xe.length].length-xe[0].length:this.yylloc.first_column-$e},this.options.ranges&&(this.yylloc.range=[je[0],je[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(Le){this.unput(this.match.slice(Le))},pastInput:function(){var Le=this.matched.substr(0,this.matched.length-this.match.length);return(Le.length>20?"...":"")+Le.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var Le=this.match;return Le.length<20&&(Le+=this._input.substr(0,20-Le.length)),(Le.substr(0,20)+(Le.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var Le=this.pastInput(),$e=new Array(Le.length+1).join("-");return Le+this.upcomingInput()+`
-`+$e+"^"},test_match:function(Le,$e){var xe,Ae,je;if(this.options.backtrack_lexer&&(je={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&&(je.yylloc.range=this.yylloc.range.slice(0))),Ae=Le[0].match(/(?:\r\n?|\n).*/g),Ae&&(this.yylineno+=Ae.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ae?Ae[Ae.length-1].length-Ae[Ae.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+Le[0].length},this.yytext+=Le[0],this.match+=Le[0],this.matches=Le,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(Le[0].length),this.matched+=Le[0],xe=this.performAction.call(this,this.yy,this,$e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),xe)return xe;if(this._backtrack){for(var me in je)this[me]=je[me];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var Le,$e,xe,Ae;this._more||(this.yytext="",this.match="");for(var je=this._currentRules(),me=0;me$e[0].length)){if($e=xe,Ae=me,this.options.backtrack_lexer){if(Le=this.test_match(xe,je[me]),Le!==!1)return Le;if(this._backtrack){$e=!1;continue}else return!1}else if(!this.options.flex)break}return $e?(Le=this.test_match($e,je[Ae]),Le!==!1?Le:!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,xe,Ae,je){switch(Ae){case 0:return this.begin("open_directive"),83;case 1:return this.begin("type_directive"),84;case 2:return this.popState(),this.begin("arg_directive"),17;case 3:return this.popState(),this.popState(),86;case 4:return 85;case 5:return 5;case 6:break;case 7:break;case 8:break;case 9:break;case 10:break;case 11:return 24;case 12:return this.begin("LINE"),19;case 13:return this.begin("ID"),54;case 14:return this.begin("ID"),56;case 15:return xe.yytext=xe.yytext.trim(),this.begin("ALIAS"),73;case 16:return this.popState(),this.popState(),this.begin("LINE"),55;case 17:return this.popState(),this.popState(),5;case 18:return this.begin("LINE"),41;case 19:return this.begin("LINE"),42;case 20:return this.begin("LINE"),43;case 21:return this.begin("LINE"),44;case 22:return this.begin("LINE"),53;case 23:return this.begin("LINE"),46;case 24:return this.begin("LINE"),52;case 25:return this.begin("LINE"),48;case 26:return this.begin("LINE"),51;case 27:return this.begin("LINE"),50;case 28:return this.popState(),20;case 29:return 21;case 30:return 68;case 31:return 69;case 32:return 62;case 33:return 63;case 34:return 64;case 35:return 65;case 36:return 60;case 37:return 57;case 38:return this.begin("ID"),26;case 39:return this.begin("ID"),28;case 40:return 34;case 41:return 35;case 42:return this.begin("acc_title"),36;case 43:return this.popState(),"acc_title_value";case 44:return this.begin("acc_descr"),38;case 45:return this.popState(),"acc_descr_value";case 46:this.begin("acc_descr_multiline");break;case 47:this.popState();break;case 48:return"acc_descr_multiline_value";case 49:return 7;case 50:return 23;case 51:return 25;case 52:return 67;case 53:return 5;case 54:return xe.yytext=xe.yytext.trim(),73;case 55:return 76;case 56:return 77;case 57:return 74;case 58:return 75;case 59:return 78;case 60:return 79;case 61:return 80;case 62:return 81;case 63:return 82;case 64:return 71;case 65:return 72;case 66:return 5;case 67:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[0-9]+(?=[ \n]+))/i,/^(?:box\b)/i,/^(?:participant\b)/i,/^(?:actor\b)/i,/^(?:[^\->:\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,/^(?: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:[47,48],inclusive:!1},acc_descr:{rules:[45],inclusive:!1},acc_title:{rules:[43],inclusive:!1},open_directive:{rules:[1,8],inclusive:!1},type_directive:{rules:[2,3,8],inclusive:!1},arg_directive:{rules:[3,4,8],inclusive:!1},ID:{rules:[7,8,15],inclusive:!1},ALIAS:{rules:[7,8,16,17],inclusive:!1},LINE:{rules:[7,8,28],inclusive:!1},INITIAL:{rules:[0,5,6,8,9,10,11,12,13,14,18,19,20,21,22,23,24,25,26,27,29,30,31,32,33,34,35,36,37,38,39,40,41,42,44,46,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67],inclusive:!0}}};return Oe}();Ee.lexer=Ze;function Ie(){this.yy={}}return Ie.prototype=Ee,Ee.Parser=Ie,new Ie}();sce.parser=sce;const QQt=sce,ZQt=r=>r.match(/^\s*sequenceDiagram/)!==null;let YI,w6={},EC=[],Hv=[],UV=!1,ace,c4;const JQt=function(r,i,o){Bu.parseDirective(this,r,i,o)},eZt=function(r){EC.push({name:r.text,wrap:r.wrap===void 0&&f7()||!!r.wrap,fill:r.color,actorKeys:[]}),c4=EC.slice(-1)[0]},oce=function(r,i,o,l){let f=c4;const b=w6[r];if(b){if(c4&&b.box&&c4!==b.box)throw new Error("A same participant should only be defined in one Box: "+b.name+" can't be in '"+b.box.name+"' and in '"+c4.name+"' at the same time.");if(f=b.box?b.box:c4,b.box=f,b&&i===b.name&&o==null)return}(o==null||o.text==null)&&(o={text:i,wrap:null,type:l}),(l==null||o.text==null)&&(o={text:i,wrap:null,type:l}),w6[r]={box:f,name:i,description:o.text,wrap:o.wrap===void 0&&f7()||!!o.wrap,prevActor:YI,links:{},properties:{},actorCnt:null,rectData:null,type:l||"participant"},YI&&w6[YI]&&(w6[YI].nextActor=r),c4&&c4.actorKeys.push(r),YI=r},tZt=r=>{let i,o=0;for(i=0;i>-",token:"->>-",line:"1",loc:{first_line:1,last_line:1,first_column:1,last_column:1},expected:["'ACTIVE_PARTICIPANT'"]},b}return Hv.push({from:r,to:i,message:o.text,wrap:o.wrap===void 0&&f7()||!!o.wrap,type:l}),!0},rZt=function(){return EC.length>0},iZt=function(){return EC.some(r=>r.name)},sZt=function(){return Hv},aZt=function(){return EC},oZt=function(){return w6},WI=function(r){return w6[r]},cZt=function(){return Object.keys(w6)},uZt=function(){UV=!0},lZt=function(){UV=!1},hZt=()=>UV,fZt=function(r){ace=r},f7=()=>ace!==void 0?ace:ht().sequence.wrap,dZt=function(){w6={},EC=[],Hv=[],UV=!1,W0()},gZt=function(r){const i=r.trim(),o={text:i.replace(/^:?(?:no)?wrap:/,"").trim(),wrap:i.match(/^:?wrap:/)!==null?!0:i.match(/^:?nowrap:/)!==null?!1:void 0};return Se.debug("parseMessage:",o),o},pZt=function(r){const i=r.match(/^((?:rgba?|hsla?)\s*\(.*\)|\w*)(.*)$/);let o=i!=null&&i[1]?i[1].trim():"transparent",l=i!=null&&i[2]?i[2].trim():void 0;if(window&&window.CSS)window.CSS.supports("color",o)||(o="transparent",l=r.trim());else{const b=new Option().style;b.color=o,b.color!==o&&(o="transparent",l=r.trim())}return{color:o,text:l!==void 0?up(l.replace(/^:?(?:no)?wrap:/,""),ht()):void 0,wrap:l!==void 0?l.match(/^:?wrap:/)!==null?!0:l.match(/^:?nowrap:/)!==null?!1:void 0:void 0}},KI={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},bZt={FILLED:0,OPEN:1},vZt={LEFTOF:0,RIGHTOF:1,OVER:2},ELe=function(r,i,o){o.text,o.wrap===void 0&&f7()||o.wrap;const l=[].concat(r,r);Hv.push({from:l[0],to:l[1],message:o.text,wrap:o.wrap===void 0&&f7()||!!o.wrap,type:KI.NOTE,placement:i})},_Le=function(r,i){const o=WI(r);try{let l=up(i.text,ht());l=l.replace(/&/g,"&"),l=l.replace(/=/g,"=");const f=JSON.parse(l);cce(o,f)}catch(l){Se.error("error while parsing actor link text",l)}},wZt=function(r,i){const o=WI(r);try{const d={};let w=up(i.text,ht());var l=w.indexOf("@");w=w.replace(/&/g,"&"),w=w.replace(/=/g,"=");var f=w.slice(0,l-1).trim(),b=w.slice(l+1).trim();d[f]=b,cce(o,d)}catch(d){Se.error("error while parsing actor link text",d)}};function cce(r,i){if(r.links==null)r.links=i;else for(let o in i)r.links[o]=i[o]}const TLe=function(r,i){const o=WI(r);try{let l=up(i.text,ht());const f=JSON.parse(l);CLe(o,f)}catch(l){Se.error("error while parsing actor properties text",l)}};function CLe(r,i){if(r.properties==null)r.properties=i;else for(let o in i)r.properties[o]=i[o]}function mZt(){c4=void 0}const SLe=function(r,i){const o=WI(r),l=document.getElementById(i.text);try{const f=l.innerHTML,b=JSON.parse(f);b.properties&&CLe(o,b.properties),b.links&&cce(o,b.links)}catch(f){Se.error("error while parsing actor details text",f)}},yZt=function(r,i){if(r!==void 0&&r.properties!==void 0)return r.properties[i]},ALe=function(r){if(Array.isArray(r))r.forEach(function(i){ALe(i)});else switch(r.type){case"sequenceIndex":Hv.push({from:void 0,to:void 0,message:{start:r.sequenceIndex,step:r.sequenceIndexStep,visible:r.sequenceVisible},wrap:!1,type:r.signalType});break;case"addParticipant":oce(r.actor,r.actor,r.description,"participant");break;case"addActor":oce(r.actor,r.actor,r.description,"actor");break;case"activeStart":uh(r.actor,void 0,void 0,r.signalType);break;case"activeEnd":uh(r.actor,void 0,void 0,r.signalType);break;case"addNote":ELe(r.actor,r.placement,r.text);break;case"addLinks":_Le(r.actor,r.text);break;case"addALink":wZt(r.actor,r.text);break;case"addProperties":TLe(r.actor,r.text);break;case"addDetails":SLe(r.actor,r.text);break;case"addMessage":uh(r.from,r.to,r.msg,r.signalType);break;case"boxStart":eZt(r.boxData);break;case"boxEnd":mZt();break;case"loopStart":uh(void 0,void 0,r.loopText,r.signalType);break;case"loopEnd":uh(void 0,void 0,void 0,r.signalType);break;case"rectStart":uh(void 0,void 0,r.color,r.signalType);break;case"rectEnd":uh(void 0,void 0,void 0,r.signalType);break;case"optStart":uh(void 0,void 0,r.optText,r.signalType);break;case"optEnd":uh(void 0,void 0,void 0,r.signalType);break;case"altStart":uh(void 0,void 0,r.altText,r.signalType);break;case"else":uh(void 0,void 0,r.altText,r.signalType);break;case"altEnd":uh(void 0,void 0,void 0,r.signalType);break;case"setAccTitle":K0(r.text);break;case"parStart":uh(void 0,void 0,r.parText,r.signalType);break;case"and":uh(void 0,void 0,r.parText,r.signalType);break;case"parEnd":uh(void 0,void 0,void 0,r.signalType);break;case"criticalStart":uh(void 0,void 0,r.criticalText,r.signalType);break;case"option":uh(void 0,void 0,r.optionText,r.signalType);break;case"criticalEnd":uh(void 0,void 0,void 0,r.signalType);break;case"breakStart":uh(void 0,void 0,r.breakText,r.signalType);break;case"breakEnd":uh(void 0,void 0,void 0,r.signalType);break}},MLe={addActor:oce,addMessage:nZt,addSignal:uh,addLinks:_Le,addDetails:SLe,addProperties:TLe,autoWrap:f7,setWrap:fZt,enableSequenceNumbers:uZt,disableSequenceNumbers:lZt,showSequenceNumbers:hZt,getMessages:sZt,getActors:oZt,getActor:WI,getActorKeys:cZt,getActorProperty:yZt,getAccTitle:hp,getBoxes:aZt,getDiagramTitle:Nv,setDiagramTitle:Ov,parseDirective:JQt,getConfig:()=>ht().sequence,clear:dZt,parseMessage:gZt,parseBoxData:pZt,LINETYPE:KI,ARROWTYPE:bZt,PLACEMENT:vZt,addNote:ELe,setAccTitle:K0,apply:ALe,setAccDescription:fp,getAccDescription:dp,hasAtLeastOneBox:rZt,hasAtLeastOneBoxWithTitle:iZt};let uce=[];const kZt=r=>{uce.push(r)},DLe=()=>{uce.forEach(r=>{r()}),uce=[]},qV=function(r,i){const o=r.append("rect");return o.attr("x",i.x),o.attr("y",i.y),o.attr("fill",i.fill),o.attr("stroke",i.stroke),o.attr("width",i.width),o.attr("height",i.height),o.attr("rx",i.rx),o.attr("ry",i.ry),i.class!==void 0&&o.attr("class",i.class),o},LLe=(r,i)=>{kZt(()=>{const o=document.querySelectorAll(r);o.length!==0&&(o[0].addEventListener("mouseover",function(){TZt("actor"+i+"_popup")}),o[0].addEventListener("mouseout",function(){CZt("actor"+i+"_popup")}))})},xZt=function(r,i,o,l,f){if(i.links===void 0||i.links===null||Object.keys(i.links).length===0)return{height:0,width:0};const b=i.links,d=i.actorCnt,w=i.rectData;var y="none";f&&(y="block !important");const k=r.append("g");k.attr("id","actor"+d+"_popup"),k.attr("class","actorPopupMenu"),k.attr("display",y),LLe("#actor"+d+"_popup",d);var E="";w.class!==void 0&&(E=" "+w.class);let T=w.width>o?w.width:o;const C=k.append("rect");if(C.attr("class","actorPopupMenuPanel"+E),C.attr("x",w.x),C.attr("y",w.height),C.attr("fill",w.fill),C.attr("stroke",w.stroke),C.attr("width",T),C.attr("height",w.height),C.attr("rx",w.rx),C.attr("ry",w.ry),b!=null){var S=20;for(let B in b){var L=k.append("a"),O=$3(b[B]);L.attr("xlink:href",O),L.attr("target","_blank"),HZt(l)(B,L,w.x+10,w.height+S,T,20,{class:"actor"},l),S+=30}}return C.attr("height",S),{height:w.height+S,width:T}},ILe=function(r,i,o,l){const f=r.append("image");f.attr("x",i),f.attr("y",o);var b=$3(l);f.attr("xlink:href",b)},OLe=function(r,i,o,l){const f=r.append("use");f.attr("x",i),f.attr("y",o);var b=$3(l);f.attr("xlink:href","#"+b)},EZt=function(r){return"var pu = document.getElementById('"+r+"'); if (pu != null) { pu.style.display = 'block'; }"},_Zt=function(r){return"var pu = document.getElementById('"+r+"'); if (pu != null) { pu.style.display = 'none'; }"},TZt=function(r){var i=document.getElementById(r);i!=null&&(i.style.display="block")},CZt=function(r){var i=document.getElementById(r);i!=null&&(i.style.display="none")},_C=function(r,i){let o=0,l=0;const f=i.text.split(Cs.lineBreakRegex),[b,d]=oI(i.fontSize);let w=[],y=0,k=()=>i.y;if(i.valign!==void 0&&i.textMargin!==void 0&&i.textMargin>0)switch(i.valign){case"top":case"start":k=()=>Math.round(i.y+i.textMargin);break;case"middle":case"center":k=()=>Math.round(i.y+(o+l+i.textMargin)/2);break;case"bottom":case"end":k=()=>Math.round(i.y+(o+l+2*i.textMargin)-i.textMargin);break}if(i.anchor!==void 0&&i.textMargin!==void 0&&i.width!==void 0)switch(i.anchor){case"left":case"start":i.x=Math.round(i.x+i.textMargin),i.anchor="start",i.dominantBaseline="middle",i.alignmentBaseline="middle";break;case"middle":case"center":i.x=Math.round(i.x+i.width/2),i.anchor="middle",i.dominantBaseline="middle",i.alignmentBaseline="middle";break;case"right":case"end":i.x=Math.round(i.x+i.width-i.textMargin),i.anchor="end",i.dominantBaseline="middle",i.alignmentBaseline="middle";break}for(let[E,T]of f.entries()){i.textMargin!==void 0&&i.textMargin===0&&b!==void 0&&(y=E*b);const C=r.append("text");if(C.attr("x",i.x),C.attr("y",k()),i.anchor!==void 0&&C.attr("text-anchor",i.anchor).attr("dominant-baseline",i.dominantBaseline).attr("alignment-baseline",i.alignmentBaseline),i.fontFamily!==void 0&&C.style("font-family",i.fontFamily),d!==void 0&&C.style("font-size",d),i.fontWeight!==void 0&&C.style("font-weight",i.fontWeight),i.fill!==void 0&&C.attr("fill",i.fill),i.class!==void 0&&C.attr("class",i.class),i.dy!==void 0?C.attr("dy",i.dy):y!==0&&C.attr("dy",y),i.tspan){const S=C.append("tspan");S.attr("x",i.x),i.fill!==void 0&&S.attr("fill",i.fill),S.text(T)}else C.text(T);i.valign!==void 0&&i.textMargin!==void 0&&i.textMargin>0&&(l+=(C._groups||C)[0][0].getBBox().height,o=l),w.push(C)}return w},NLe=function(r,i){function o(f,b,d,w,y){return f+","+b+" "+(f+d)+","+b+" "+(f+d)+","+(b+w-y)+" "+(f+d-y*1.2)+","+(b+w)+" "+f+","+(b+w)}const l=r.append("polygon");return l.attr("points",o(i.x,i.y,i.width,i.height,7)),l.attr("class","labelBox"),i.y=i.y+i.height/2,_C(r,i),l};let Vm=-1;const PLe=(r,i)=>{!r.selectAll||r.selectAll(".actor-line").attr("class","200").attr("y2",i-55)},SZt=function(r,i,o,l){const f=i.x+i.width/2,b=i.y+5,d=r.append("g");var w=d;l||(Vm++,w.append("line").attr("id","actor"+Vm).attr("x1",f).attr("y1",b).attr("x2",f).attr("y2",2e3).attr("class","actor-line").attr("stroke-width","0.5px").attr("stroke","#999"),w=d.append("g"),i.actorCnt=Vm,i.links!=null&&(w.attr("id","root-"+Vm),LLe("#root-"+Vm,Vm)));const y=YV();var k="actor";i.properties!=null&&i.properties.class?k=i.properties.class:y.fill="#eaeaea",y.x=i.x,y.y=i.y,y.width=i.width,y.height=i.height,y.class=k,y.rx=3,y.ry=3;const E=qV(w,y);if(i.rectData=y,i.properties!=null&&i.properties.icon){const C=i.properties.icon.trim();C.charAt(0)==="@"?OLe(w,y.x+y.width-20,y.y+10,C.substr(1)):ILe(w,y.x+y.width-20,y.y+10,C)}hce(o)(i.description,w,y.x,y.y,y.width,y.height,{class:"actor"},o);let T=i.height;if(E.node){const C=E.node().getBBox();i.height=C.height,T=C.height}return T},AZt=function(r,i,o,l){const f=i.x+i.width/2,b=i.y+80;l||(Vm++,r.append("line").attr("id","actor"+Vm).attr("x1",f).attr("y1",b).attr("x2",f).attr("y2",2e3).attr("class","actor-line").attr("stroke-width","0.5px").attr("stroke","#999"));const d=r.append("g");d.attr("class","actor-man");const w=YV();w.x=i.x,w.y=i.y,w.fill="#eaeaea",w.width=i.width,w.height=i.height,w.class="actor",w.rx=3,w.ry=3,d.append("line").attr("id","actor-man-torso"+Vm).attr("x1",f).attr("y1",i.y+25).attr("x2",f).attr("y2",i.y+45),d.append("line").attr("id","actor-man-arms"+Vm).attr("x1",f-18).attr("y1",i.y+33).attr("x2",f+18).attr("y2",i.y+33),d.append("line").attr("x1",f-18).attr("y1",i.y+60).attr("x2",f).attr("y2",i.y+45),d.append("line").attr("x1",f).attr("y1",i.y+45).attr("x2",f+16).attr("y2",i.y+60);const y=d.append("circle");y.attr("cx",i.x+i.width/2),y.attr("cy",i.y+10),y.attr("r",15),y.attr("width",i.width),y.attr("height",i.height);const k=d.node().getBBox();return i.height=k.height,hce(o)(i.description,d,w.x,w.y+35,w.width,w.height,{class:"actor"},o),i.height},MZt=function(r,i,o,l){switch(i.type){case"actor":return AZt(r,i,o,l);case"participant":return SZt(r,i,o,l)}},DZt=function(r,i,o){const f=r.append("g");BLe(f,i),i.name&&hce(o)(i.name,f,i.x,i.y+(i.textMaxHeight||0)/2,i.width,0,{class:"text"},o),f.lower()},LZt=function(r){return r.append("g")},IZt=function(r,i,o,l,f){const b=YV(),d=i.anchored;b.x=i.startx,b.y=i.starty,b.class="activation"+f%3,b.width=i.stopx-i.startx,b.height=o-i.starty,qV(d,b)},OZt=function(r,i,o,l){const{boxMargin:f,boxTextMargin:b,labelBoxHeight:d,labelBoxWidth:w,messageFontFamily:y,messageFontSize:k,messageFontWeight:E}=l,T=r.append("g"),C=function(O,B,N,F){return T.append("line").attr("x1",O).attr("y1",B).attr("x2",N).attr("y2",F).attr("class","loopLine")};C(i.startx,i.starty,i.stopx,i.starty),C(i.stopx,i.starty,i.stopx,i.stopy),C(i.startx,i.stopy,i.stopx,i.stopy),C(i.startx,i.starty,i.startx,i.stopy),i.sections!==void 0&&i.sections.forEach(function(O){C(i.startx,O.y,i.stopx,O.y).style("stroke-dasharray","3, 3")});let S=lce();S.text=o,S.x=i.startx,S.y=i.starty,S.fontFamily=y,S.fontSize=k,S.fontWeight=E,S.anchor="middle",S.valign="middle",S.tspan=!1,S.width=w||50,S.height=d||20,S.textMargin=b,S.class="labelText",NLe(T,S),S=lce(),S.text=i.title,S.x=i.startx+w/2+(i.stopx-i.startx)/2,S.y=i.starty+f+b,S.anchor="middle",S.valign="middle",S.textMargin=b,S.class="loopText",S.fontFamily=y,S.fontSize=k,S.fontWeight=E,S.wrap=!0;let L=_C(T,S);return i.sectionTitles!==void 0&&i.sectionTitles.forEach(function(O,B){if(O.message){S.text=O.message,S.x=i.startx+(i.stopx-i.startx)/2,S.y=i.sections[B].y+f+b,S.class="loopText",S.anchor="middle",S.valign="middle",S.tspan=!1,S.fontFamily=y,S.fontSize=k,S.fontWeight=E,S.wrap=i.wrap,L=_C(T,S);let N=Math.round(L.map(F=>(F._groups||F)[0][0].getBBox().height).reduce((F,R)=>F+R));i.sections[B].height+=N-(f+b)}}),i.height=Math.round(i.stopy-i.starty),T},BLe=function(r,i){qV(r,{x:i.startx,y:i.starty,width:i.stopx-i.startx,height:i.stopy-i.starty,fill:i.fill,stroke:i.stroke,class:"rect"}).lower()},NZt=function(r){r.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")},PZt=function(r){r.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")},BZt=function(r){r.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")},FZt=function(r){r.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")},RZt=function(r){r.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")},jZt=function(r){r.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)},$Zt=function(r){r.append("defs").append("marker").attr("id","crosshead").attr("markerWidth",15).attr("markerHeight",8).attr("orient","auto").attr("refX",4).attr("refY",5).append("path").attr("fill","none").attr("stroke","#000000").style("stroke-dasharray","0, 0").attr("stroke-width","1pt").attr("d","M 1,2 L 6,7 M 6,2 L 1,7")},lce=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}},YV=function(){return{x:0,y:0,fill:"#EDF2AE",stroke:"#666",width:100,anchor:"start",height:100,rx:0,ry:0}},hce=function(){function r(f,b,d,w,y,k,E){const T=b.append("text").attr("x",d+y/2).attr("y",w+k/2+5).style("text-anchor","middle").text(f);l(T,E)}function i(f,b,d,w,y,k,E,T){const{actorFontSize:C,actorFontFamily:S,actorFontWeight:L}=T,[O,B]=oI(C),N=f.split(Cs.lineBreakRegex);for(let F=0;Fr.height||0))+(this.loops.length===0?0:this.loops.map(r=>r.height||0).reduce((r,i)=>r+i))+(this.messages.length===0?0:this.messages.map(r=>r.height||0).reduce((r,i)=>r+i))+(this.notes.length===0?0:this.notes.map(r=>r.height||0).reduce((r,i)=>r+i))},clear:function(){this.actors=[],this.boxes=[],this.loops=[],this.messages=[],this.notes=[]},addBox:function(r){this.boxes.push(r)},addActor:function(r){this.actors.push(r)},addLoop:function(r){this.loops.push(r)},addMessage:function(r){this.messages.push(r)},addNote:function(r){this.notes.push(r)},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,RLe(ht())},updateVal:function(r,i,o,l){r[i]===void 0?r[i]=o:r[i]=l(o,r[i])},updateBounds:function(r,i,o,l){const f=this;let b=0;function d(w){return function(k){b++;const E=f.sequenceItems.length-b+1;f.updateVal(k,"starty",i-E*Ft.boxMargin,Math.min),f.updateVal(k,"stopy",l+E*Ft.boxMargin,Math.max),f.updateVal(br.data,"startx",r-E*Ft.boxMargin,Math.min),f.updateVal(br.data,"stopx",o+E*Ft.boxMargin,Math.max),w!=="activation"&&(f.updateVal(k,"startx",r-E*Ft.boxMargin,Math.min),f.updateVal(k,"stopx",o+E*Ft.boxMargin,Math.max),f.updateVal(br.data,"starty",i-E*Ft.boxMargin,Math.min),f.updateVal(br.data,"stopy",l+E*Ft.boxMargin,Math.max))}}this.sequenceItems.forEach(d()),this.activations.forEach(d("activation"))},insert:function(r,i,o,l){const f=Math.min(r,o),b=Math.max(r,o),d=Math.min(i,l),w=Math.max(i,l);this.updateVal(br.data,"startx",f,Math.min),this.updateVal(br.data,"starty",d,Math.min),this.updateVal(br.data,"stopx",b,Math.max),this.updateVal(br.data,"stopy",w,Math.max),this.updateBounds(f,d,b,w)},newActivation:function(r,i,o){const l=o[r.from.actor],f=WV(r.from.actor).length||0,b=l.x+l.width/2+(f-1)*Ft.activationWidth/2;this.activations.push({startx:b,starty:this.verticalPos+2,stopx:b+Ft.activationWidth,stopy:void 0,actor:r.from.actor,anchored:sl.anchorElement(i)})},endActivation:function(r){const i=this.activations.map(function(o){return o.actor}).lastIndexOf(r.from.actor);return this.activations.splice(i,1)[0]},createLoop:function(r={message:void 0,wrap:!1,width:void 0},i){return{startx:void 0,starty:this.verticalPos,stopx:void 0,stopy:void 0,title:r.message,wrap:r.wrap,width:r.width,height:0,fill:i}},newLoop:function(r={message:void 0,wrap:!1,width:void 0},i){this.sequenceItems.push(this.createLoop(r,i))},endLoop:function(){return this.sequenceItems.pop()},addSectionToLoop:function(r){const i=this.sequenceItems.pop();i.sections=i.sections||[],i.sectionTitles=i.sectionTitles||[],i.sections.push({y:br.getVerticalPos(),height:0}),i.sectionTitles.push(r),this.sequenceItems.push(i)},bumpVerticalPos:function(r){this.verticalPos=this.verticalPos+r,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return{bounds:this.data,models:this.models}}},zZt=function(r,i){br.bumpVerticalPos(Ft.boxMargin),i.height=Ft.boxMargin,i.starty=br.getVerticalPos();const o=sl.getNoteRect();o.x=i.startx,o.y=i.starty,o.width=i.width||Ft.width,o.class="note";const l=r.append("g"),f=sl.drawRect(l,o),b=sl.getTextObj();b.x=i.startx,b.y=i.starty,b.width=o.width,b.dy="1em",b.text=i.message,b.class="noteText",b.fontFamily=Ft.noteFontFamily,b.fontSize=Ft.noteFontSize,b.fontWeight=Ft.noteFontWeight,b.anchor=Ft.noteAlign,b.textMargin=Ft.noteMargin,b.valign="center";const d=_C(l,b),w=Math.round(d.map(y=>(y._groups||y)[0][0].getBBox().height).reduce((y,k)=>y+k));f.attr("height",w+2*Ft.noteMargin),i.height+=w+2*Ft.noteMargin,br.bumpVerticalPos(w+2*Ft.noteMargin),i.stopy=i.starty+w+2*Ft.noteMargin,i.stopx=i.startx+o.width,br.insert(i.startx,i.starty,i.stopx,i.stopy),br.models.addNote(i)},d7=r=>({fontFamily:r.messageFontFamily,fontSize:r.messageFontSize,fontWeight:r.messageFontWeight}),TC=r=>({fontFamily:r.noteFontFamily,fontSize:r.noteFontSize,fontWeight:r.noteFontWeight}),fce=r=>({fontFamily:r.actorFontFamily,fontSize:r.actorFontSize,fontWeight:r.actorFontWeight});function GZt(r,i){br.bumpVerticalPos(10);const{startx:o,stopx:l,message:f}=i,b=Cs.splitBreaks(f).length,d=Fs.calculateTextDimensions(f,d7(Ft)),w=d.height/b;i.height+=w,br.bumpVerticalPos(w);let y,k=d.height-10;const E=d.width;if(o===l){y=br.getVerticalPos()+k,Ft.rightAngles||(k+=Ft.boxMargin,y=br.getVerticalPos()+k),k+=30;const T=Math.max(E/2,Ft.width/2);br.insert(o-T,br.getVerticalPos()-10+k,l+T,br.getVerticalPos()+30+k)}else k+=Ft.boxMargin,y=br.getVerticalPos()+k,br.insert(o,y-10,l,y);return br.bumpVerticalPos(k),i.height+=k,i.stopy=i.starty+i.height,br.insert(i.fromBounds,i.starty,i.toBounds,i.stopy),y}const VZt=function(r,i,o,l){const{startx:f,stopx:b,starty:d,message:w,type:y,sequenceIndex:k,sequenceVisible:E}=i,T=Fs.calculateTextDimensions(w,d7(Ft)),C=sl.getTextObj();C.x=f,C.y=d+10,C.width=b-f,C.class="messageText",C.dy="1em",C.text=w,C.fontFamily=Ft.messageFontFamily,C.fontSize=Ft.messageFontSize,C.fontWeight=Ft.messageFontWeight,C.anchor=Ft.messageAlign,C.valign="center",C.textMargin=Ft.wrapPadding,C.tspan=!1,_C(r,C);const S=T.width;let L;f===b?Ft.rightAngles?L=r.append("path").attr("d",`M ${f},${o} H ${f+Math.max(Ft.width/2,S/2)} V ${o+25} H ${f}`):L=r.append("path").attr("d","M "+f+","+o+" C "+(f+60)+","+(o-10)+" "+(f+60)+","+(o+30)+" "+f+","+(o+20)):(L=r.append("line"),L.attr("x1",f),L.attr("y1",o),L.attr("x2",b),L.attr("y2",o)),y===l.db.LINETYPE.DOTTED||y===l.db.LINETYPE.DOTTED_CROSS||y===l.db.LINETYPE.DOTTED_POINT||y===l.db.LINETYPE.DOTTED_OPEN?(L.style("stroke-dasharray","3, 3"),L.attr("class","messageLine1")):L.attr("class","messageLine0");let O="";Ft.arrowMarkerAbsolute&&(O=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,O=O.replace(/\(/g,"\\("),O=O.replace(/\)/g,"\\)")),L.attr("stroke-width",2),L.attr("stroke","none"),L.style("fill","none"),(y===l.db.LINETYPE.SOLID||y===l.db.LINETYPE.DOTTED)&&L.attr("marker-end","url("+O+"#arrowhead)"),(y===l.db.LINETYPE.SOLID_POINT||y===l.db.LINETYPE.DOTTED_POINT)&&L.attr("marker-end","url("+O+"#filled-head)"),(y===l.db.LINETYPE.SOLID_CROSS||y===l.db.LINETYPE.DOTTED_CROSS)&&L.attr("marker-end","url("+O+"#crosshead)"),(E||Ft.showSequenceNumbers)&&(L.attr("marker-start","url("+O+"#sequencenumber)"),r.append("text").attr("x",f).attr("y",o+4).attr("font-family","sans-serif").attr("font-size","12px").attr("text-anchor","middle").attr("class","sequenceNumber").text(k))},dce=function(r,i,o,l,f,b,d){if(f.hideUnusedParticipants===!0){const T=new Set;b.forEach(C=>{T.add(C.from),T.add(C.to)}),o=o.filter(C=>T.has(C))}let w=0,y=0,k=0,E;for(const T of o){const C=i[T],S=C.box;E&&E!=S&&(d||br.models.addBox(E),y+=Ft.boxMargin+E.margin),S&&S!=E&&(d||(S.x=w+y,S.y=l),y+=S.margin),C.width=C.width||Ft.width,C.height=Math.max(C.height||Ft.height,Ft.height),C.margin=C.margin||Ft.actorMargin,C.x=w+y,C.y=br.getVerticalPos();const L=sl.drawActor(r,C,Ft,d);k=Math.max(k,L),br.insert(C.x,l,C.x+C.width,C.height),w+=C.width+y,C.box&&(C.box.width=w+S.margin-C.box.x),y=C.margin,E=C.box,br.models.addActor(C)}E&&!d&&br.models.addBox(E),br.bumpVerticalPos(k)},FLe=function(r,i,o,l){let f=0,b=0;for(const d of o){const w=i[d],y=YZt(w),k=sl.drawPopup(r,w,y,Ft,Ft.forceMenus,l);k.height>f&&(f=k.height),k.width+w.x>b&&(b=k.width+w.x)}return{maxHeight:f,maxWidth:b}},RLe=function(r){Yf(Ft,r),r.fontFamily&&(Ft.actorFontFamily=Ft.noteFontFamily=Ft.messageFontFamily=r.fontFamily),r.fontSize&&(Ft.actorFontSize=Ft.noteFontSize=Ft.messageFontSize=r.fontSize),r.fontWeight&&(Ft.actorFontWeight=Ft.noteFontWeight=Ft.messageFontWeight=r.fontWeight)},WV=function(r){return br.activations.filter(function(i){return i.actor===r})},jLe=function(r,i){const o=i[r],l=WV(r),f=l.reduce(function(d,w){return Math.min(d,w.startx)},o.x+o.width/2),b=l.reduce(function(d,w){return Math.max(d,w.stopx)},o.x+o.width/2);return[f,b]};function Um(r,i,o,l,f){br.bumpVerticalPos(o);let b=l;if(i.id&&i.message&&r[i.id]){const d=r[i.id].width,w=d7(Ft);i.message=Fs.wrapLabel(`[${i.message}]`,d-2*Ft.wrapPadding,w),i.width=d,i.wrap=!0;const y=Fs.calculateTextDimensions(i.message,w),k=Math.max(y.height,Ft.labelBoxHeight);b=l+k,Se.debug(`${k} - ${i.message}`)}f(i),br.bumpVerticalPos(b)}const UZt=function(r,i,o,l){const{securityLevel:f,sequence:b}=ht();Ft=b,l.db.clear(),l.parser.parse(r);let d;f==="sandbox"&&(d=Cn("#i"+i));const w=Cn(f==="sandbox"?d.nodes()[0].contentDocument.body:"body"),y=f==="sandbox"?d.nodes()[0].contentDocument:document;br.init(),Se.debug(l.db);const k=f==="sandbox"?w.select(`[id="${i}"]`):Cn(`[id="${i}"]`),E=l.db.getActors(),T=l.db.getBoxes(),C=l.db.getActorKeys(),S=l.db.getMessages(),L=l.db.getDiagramTitle(),O=l.db.hasAtLeastOneBox(),B=l.db.hasAtLeastOneBoxWithTitle(),N=qZt(E,S,l);Ft.height=WZt(E,N,T),sl.insertComputerIcon(k),sl.insertDatabaseIcon(k),sl.insertClockIcon(k),O&&(br.bumpVerticalPos(Ft.boxMargin),B&&br.bumpVerticalPos(T[0].textMaxHeight)),dce(k,E,C,0,Ft,S,!1);const F=QZt(S,E,N,l);sl.insertArrowHead(k),sl.insertArrowCrossHead(k),sl.insertArrowFilledHead(k),sl.insertSequenceNumber(k);function R(ge,ee){const de=br.endActivation(ge);de.starty+18>ee&&(de.starty=ee-6,ee+=12),sl.drawActivation(k,de,ee,Ft,WV(ge.from.actor).length),br.insert(de.startx,ee-10,de.stopx,ee)}let q=1,X=1;const te=[];S.forEach(function(ge){let ee,de,re;switch(ge.type){case l.db.LINETYPE.NOTE:de=ge.noteModel,zZt(k,de);break;case l.db.LINETYPE.ACTIVE_START:br.newActivation(ge,k,E);break;case l.db.LINETYPE.ACTIVE_END:R(ge,br.getVerticalPos());break;case l.db.LINETYPE.LOOP_START:Um(F,ge,Ft.boxMargin,Ft.boxMargin+Ft.boxTextMargin,ke=>br.newLoop(ke));break;case l.db.LINETYPE.LOOP_END:ee=br.endLoop(),sl.drawLoop(k,ee,"loop",Ft),br.bumpVerticalPos(ee.stopy-br.getVerticalPos()),br.models.addLoop(ee);break;case l.db.LINETYPE.RECT_START:Um(F,ge,Ft.boxMargin,Ft.boxMargin,ke=>br.newLoop(void 0,ke.message));break;case l.db.LINETYPE.RECT_END:ee=br.endLoop(),sl.drawBackgroundRect(k,ee),br.models.addLoop(ee),br.bumpVerticalPos(ee.stopy-br.getVerticalPos());break;case l.db.LINETYPE.OPT_START:Um(F,ge,Ft.boxMargin,Ft.boxMargin+Ft.boxTextMargin,ke=>br.newLoop(ke));break;case l.db.LINETYPE.OPT_END:ee=br.endLoop(),sl.drawLoop(k,ee,"opt",Ft),br.bumpVerticalPos(ee.stopy-br.getVerticalPos()),br.models.addLoop(ee);break;case l.db.LINETYPE.ALT_START:Um(F,ge,Ft.boxMargin,Ft.boxMargin+Ft.boxTextMargin,ke=>br.newLoop(ke));break;case l.db.LINETYPE.ALT_ELSE:Um(F,ge,Ft.boxMargin+Ft.boxTextMargin,Ft.boxMargin,ke=>br.addSectionToLoop(ke));break;case l.db.LINETYPE.ALT_END:ee=br.endLoop(),sl.drawLoop(k,ee,"alt",Ft),br.bumpVerticalPos(ee.stopy-br.getVerticalPos()),br.models.addLoop(ee);break;case l.db.LINETYPE.PAR_START:Um(F,ge,Ft.boxMargin,Ft.boxMargin+Ft.boxTextMargin,ke=>br.newLoop(ke));break;case l.db.LINETYPE.PAR_AND:Um(F,ge,Ft.boxMargin+Ft.boxTextMargin,Ft.boxMargin,ke=>br.addSectionToLoop(ke));break;case l.db.LINETYPE.PAR_END:ee=br.endLoop(),sl.drawLoop(k,ee,"par",Ft),br.bumpVerticalPos(ee.stopy-br.getVerticalPos()),br.models.addLoop(ee);break;case l.db.LINETYPE.AUTONUMBER:q=ge.message.start||q,X=ge.message.step||X,ge.message.visible?l.db.enableSequenceNumbers():l.db.disableSequenceNumbers();break;case l.db.LINETYPE.CRITICAL_START:Um(F,ge,Ft.boxMargin,Ft.boxMargin+Ft.boxTextMargin,ke=>br.newLoop(ke));break;case l.db.LINETYPE.CRITICAL_OPTION:Um(F,ge,Ft.boxMargin+Ft.boxTextMargin,Ft.boxMargin,ke=>br.addSectionToLoop(ke));break;case l.db.LINETYPE.CRITICAL_END:ee=br.endLoop(),sl.drawLoop(k,ee,"critical",Ft),br.bumpVerticalPos(ee.stopy-br.getVerticalPos()),br.models.addLoop(ee);break;case l.db.LINETYPE.BREAK_START:Um(F,ge,Ft.boxMargin,Ft.boxMargin+Ft.boxTextMargin,ke=>br.newLoop(ke));break;case l.db.LINETYPE.BREAK_END:ee=br.endLoop(),sl.drawLoop(k,ee,"break",Ft),br.bumpVerticalPos(ee.stopy-br.getVerticalPos()),br.models.addLoop(ee);break;default:try{re=ge.msgModel,re.starty=br.getVerticalPos(),re.sequenceIndex=q,re.sequenceVisible=l.db.showSequenceNumbers();const ke=GZt(k,re);te.push({messageModel:re,lineStartY:ke}),br.models.addMessage(re)}catch(ke){Se.error("error while drawing message",ke)}}[l.db.LINETYPE.SOLID_OPEN,l.db.LINETYPE.DOTTED_OPEN,l.db.LINETYPE.SOLID,l.db.LINETYPE.DOTTED,l.db.LINETYPE.SOLID_CROSS,l.db.LINETYPE.DOTTED_CROSS,l.db.LINETYPE.SOLID_POINT,l.db.LINETYPE.DOTTED_POINT].includes(ge.type)&&(q=q+X)}),te.forEach(ge=>VZt(k,ge.messageModel,ge.lineStartY,l)),Ft.mirrorActors&&(br.bumpVerticalPos(Ft.boxMargin*2),dce(k,E,C,br.getVerticalPos(),Ft,S,!0),br.bumpVerticalPos(Ft.boxMargin),PLe(k,br.getVerticalPos())),br.models.boxes.forEach(function(ge){ge.height=br.getVerticalPos()-ge.y,br.insert(ge.x,ge.y,ge.x+ge.width,ge.height),ge.startx=ge.x,ge.starty=ge.y,ge.stopx=ge.startx+ge.width,ge.stopy=ge.starty+ge.height,ge.stroke="rgb(0,0,0, 0.5)",sl.drawBox(k,ge,Ft)}),O&&br.bumpVerticalPos(Ft.boxMargin);const H=FLe(k,E,C,y),{bounds:Y}=br.getBounds();Se.debug("For line height fix Querying: #"+i+" .actor-line"),ose("#"+i+" .actor-line").attr("y2",Y.stopy);let W=Y.stopy-Y.starty;W{const d=r[b];d.wrap&&(d.description=Fs.wrapLabel(d.description,Ft.width-2*Ft.wrapPadding,fce(Ft)));const w=Fs.calculateTextDimensions(d.description,fce(Ft));d.width=d.wrap?Ft.width:Math.max(Ft.width,w.width+2*Ft.wrapPadding),d.height=d.wrap?Math.max(w.height,Ft.height):Ft.height,l=Math.max(l,d.height)});for(const b in i){const d=r[b];if(!d)continue;const w=r[d.nextActor];if(!w){const T=i[b]+Ft.actorMargin-d.width/2;d.margin=Math.max(T,Ft.actorMargin);continue}const k=i[b]+Ft.actorMargin-d.width/2-w.width/2;d.margin=Math.max(k,Ft.actorMargin)}let f=0;return o.forEach(b=>{const d=d7(Ft);let w=b.actorKeys.reduce((E,T)=>E+=r[T].width+(r[T].margin||0),0);w-=2*Ft.boxTextMargin,b.wrap&&(b.name=Fs.wrapLabel(b.name,w-2*Ft.wrapPadding,d));const y=Fs.calculateTextDimensions(b.name,d);f=Math.max(y.height,f);const k=Math.max(w,y.width+2*Ft.wrapPadding);if(b.margin=Ft.boxTextMargin,wb.textMaxHeight=f),Math.max(l,Ft.height)}const KZt=function(r,i,o){const l=i[r.from].x,f=i[r.to].x,b=r.wrap&&r.message;let d=Fs.calculateTextDimensions(b?Fs.wrapLabel(r.message,Ft.width,TC(Ft)):r.message,TC(Ft));const w={width:b?Ft.width:Math.max(Ft.width,d.width+2*Ft.noteMargin),height:0,startx:i[r.from].x,stopx:0,starty:0,stopy:0,message:r.message};return r.placement===o.db.PLACEMENT.RIGHTOF?(w.width=b?Math.max(Ft.width,d.width):Math.max(i[r.from].width/2+i[r.to].width/2,d.width+2*Ft.noteMargin),w.startx=l+(i[r.from].width+Ft.actorMargin)/2):r.placement===o.db.PLACEMENT.LEFTOF?(w.width=Math.max(b?Ft.width:i[r.from].width/2+i[r.to].width/2,d.width+2*Ft.noteMargin),w.startx=l-w.width+(i[r.from].width-Ft.actorMargin)/2):r.to===r.from?(d=Fs.calculateTextDimensions(b?Fs.wrapLabel(r.message,Math.max(Ft.width,i[r.from].width),TC(Ft)):r.message,TC(Ft)),w.width=b?Math.max(Ft.width,i[r.from].width):Math.max(i[r.from].width,Ft.width,d.width+2*Ft.noteMargin),w.startx=l+(i[r.from].width-w.width)/2):(w.width=Math.abs(l+i[r.from].width/2-(f+i[r.to].width/2))+Ft.actorMargin,w.startx=lC.actor).lastIndexOf(k.from.actor);delete br.activations.splice(T,1)[0]}break}k.placement!==void 0?(w=KZt(k,i,l),k.noteModel=w,b.forEach(T=>{d=T,d.from=Math.min(d.from,w.startx),d.to=Math.max(d.to,w.startx+w.width),d.width=Math.max(d.width,Math.abs(d.from-d.to))-Ft.labelBoxWidth})):(y=XZt(k,i,l),k.msgModel=y,y.startx&&y.stopx&&b.length>0&&b.forEach(T=>{if(d=T,y.startx===y.stopx){const C=i[k.from],S=i[k.to];d.from=Math.min(C.x-y.width/2,C.x-C.width/2,d.from),d.to=Math.max(S.x+y.width/2,S.x+C.width/2,d.to),d.width=Math.max(d.width,Math.abs(d.to-d.from))-Ft.labelBoxWidth}else d.from=Math.min(y.startx,d.from),d.to=Math.max(y.stopx,d.to),d.width=Math.max(d.width,y.width)-Ft.labelBoxWidth}))}),br.activations=[],Se.debug("Loop type widths:",f),f},$Le={bounds:br,drawActors:dce,drawActorsPopup:FLe,setConf:RLe,draw:UZt};var gce=function(){var r=function(Ce,_e,Te,Be){for(Te=Te||{},Be=Ce.length;Be--;Te[Ce[Be]]=_e);return Te},i=[1,2],o=[1,3],l=[1,5],f=[1,7],b=[2,5],d=[1,15],w=[1,17],y=[1,21],k=[1,22],E=[1,23],T=[1,24],C=[1,37],S=[1,25],L=[1,26],O=[1,27],B=[1,28],N=[1,29],F=[1,32],R=[1,33],q=[1,34],X=[1,35],te=[1,36],H=[1,39],Y=[1,40],z=[1,41],W=[1,42],Z=[1,38],G=[1,45],ae=[1,4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],$=[1,4,5,14,15,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],ge=[1,4,5,7,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],ee=[4,5,16,17,19,21,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],de={trace:function(){},yy:{},symbols_:{error:2,start:3,SPACE:4,NL:5,directive:6,SD:7,document:8,line:9,statement:10,classDefStatement:11,cssClassStatement:12,idStatement:13,DESCR:14,"-->":15,HIDE_EMPTY:16,scale:17,WIDTH:18,COMPOSIT_STATE:19,STRUCT_START:20,STRUCT_STOP:21,STATE_DESCR:22,AS:23,ID:24,FORK:25,JOIN:26,CHOICE:27,CONCURRENT:28,note:29,notePosition:30,NOTE_TEXT:31,direction:32,acc_title:33,acc_title_value:34,acc_descr:35,acc_descr_value:36,acc_descr_multiline_value:37,classDef:38,CLASSDEF_ID:39,CLASSDEF_STYLEOPTS:40,DEFAULT:41,class:42,CLASSENTITY_IDS:43,STYLECLASS:44,openDirective:45,typeDirective:46,closeDirective:47,":":48,argDirective:49,direction_tb:50,direction_bt:51,direction_rl:52,direction_lr:53,eol:54,";":55,EDGE_STATE:56,STYLE_SEPARATOR:57,left_of:58,right_of:59,open_directive:60,type_directive:61,arg_directive:62,close_directive:63,$accept:0,$end:1},terminals_:{2:"error",4:"SPACE",5:"NL",7:"SD",14:"DESCR",15:"-->",16:"HIDE_EMPTY",17:"scale",18:"WIDTH",19:"COMPOSIT_STATE",20:"STRUCT_START",21:"STRUCT_STOP",22:"STATE_DESCR",23:"AS",24:"ID",25:"FORK",26:"JOIN",27:"CHOICE",28:"CONCURRENT",29:"note",31:"NOTE_TEXT",33:"acc_title",34:"acc_title_value",35:"acc_descr",36:"acc_descr_value",37:"acc_descr_multiline_value",38:"classDef",39:"CLASSDEF_ID",40:"CLASSDEF_STYLEOPTS",41:"DEFAULT",42:"class",43:"CLASSENTITY_IDS",44:"STYLECLASS",48:":",50:"direction_tb",51:"direction_bt",52:"direction_rl",53:"direction_lr",55:";",56:"EDGE_STATE",57:"STYLE_SEPARATOR",58:"left_of",59:"right_of",60:"open_directive",61:"type_directive",62:"arg_directive",63:"close_directive"},productions_:[0,[3,2],[3,2],[3,2],[3,2],[8,0],[8,2],[9,2],[9,1],[9,1],[10,1],[10,1],[10,1],[10,2],[10,3],[10,4],[10,1],[10,2],[10,1],[10,4],[10,3],[10,6],[10,1],[10,1],[10,1],[10,1],[10,4],[10,4],[10,1],[10,1],[10,2],[10,2],[10,1],[11,3],[11,3],[12,3],[6,3],[6,5],[32,1],[32,1],[32,1],[32,1],[54,1],[54,1],[13,1],[13,1],[13,3],[13,3],[30,1],[30,1],[45,1],[46,1],[49,1],[47,1]],performAction:function(_e,Te,Be,Ge,Xe,Ee,Ze){var Ie=Ee.length-1;switch(Xe){case 4:return Ge.setRootDoc(Ee[Ie]),Ee[Ie];case 5:this.$=[];break;case 6:Ee[Ie]!="nl"&&(Ee[Ie-1].push(Ee[Ie]),this.$=Ee[Ie-1]);break;case 7:case 8:this.$=Ee[Ie];break;case 9:this.$="nl";break;case 12:this.$=Ee[Ie];break;case 13:const xe=Ee[Ie-1];xe.description=Ge.trimColon(Ee[Ie]),this.$=xe;break;case 14:this.$={stmt:"relation",state1:Ee[Ie-2],state2:Ee[Ie]};break;case 15:const Ae=Ge.trimColon(Ee[Ie]);this.$={stmt:"relation",state1:Ee[Ie-3],state2:Ee[Ie-1],description:Ae};break;case 19:this.$={stmt:"state",id:Ee[Ie-3],type:"default",description:"",doc:Ee[Ie-1]};break;case 20:var Oe=Ee[Ie],Le=Ee[Ie-2].trim();if(Ee[Ie].match(":")){var $e=Ee[Ie].split(":");Oe=$e[0],Le=[Le,$e[1]]}this.$={stmt:"state",id:Oe,type:"default",description:Le};break;case 21:this.$={stmt:"state",id:Ee[Ie-3],type:"default",description:Ee[Ie-5],doc:Ee[Ie-1]};break;case 22:this.$={stmt:"state",id:Ee[Ie],type:"fork"};break;case 23:this.$={stmt:"state",id:Ee[Ie],type:"join"};break;case 24:this.$={stmt:"state",id:Ee[Ie],type:"choice"};break;case 25:this.$={stmt:"state",id:Ge.getDividerId(),type:"divider"};break;case 26:this.$={stmt:"state",id:Ee[Ie-1].trim(),note:{position:Ee[Ie-2].trim(),text:Ee[Ie].trim()}};break;case 30:this.$=Ee[Ie].trim(),Ge.setAccTitle(this.$);break;case 31:case 32:this.$=Ee[Ie].trim(),Ge.setAccDescription(this.$);break;case 33:case 34:this.$={stmt:"classDef",id:Ee[Ie-1].trim(),classes:Ee[Ie].trim()};break;case 35:this.$={stmt:"applyClass",id:Ee[Ie-1].trim(),styleClass:Ee[Ie].trim()};break;case 38:Ge.setDirection("TB"),this.$={stmt:"dir",value:"TB"};break;case 39:Ge.setDirection("BT"),this.$={stmt:"dir",value:"BT"};break;case 40:Ge.setDirection("RL"),this.$={stmt:"dir",value:"RL"};break;case 41:Ge.setDirection("LR"),this.$={stmt:"dir",value:"LR"};break;case 44:case 45:this.$={stmt:"state",id:Ee[Ie].trim(),type:"default",description:""};break;case 46:this.$={stmt:"state",id:Ee[Ie-2].trim(),classes:[Ee[Ie].trim()],type:"default",description:""};break;case 47:this.$={stmt:"state",id:Ee[Ie-2].trim(),classes:[Ee[Ie].trim()],type:"default",description:""};break;case 50:Ge.parseDirective("%%{","open_directive");break;case 51:Ge.parseDirective(Ee[Ie],"type_directive");break;case 52:Ee[Ie]=Ee[Ie].trim().replace(/'/g,'"'),Ge.parseDirective(Ee[Ie],"arg_directive");break;case 53:Ge.parseDirective("}%%","close_directive","state");break}},table:[{3:1,4:i,5:o,6:4,7:l,45:6,60:f},{1:[3]},{3:8,4:i,5:o,6:4,7:l,45:6,60:f},{3:9,4:i,5:o,6:4,7:l,45:6,60:f},{3:10,4:i,5:o,6:4,7:l,45:6,60:f},r([1,4,5,16,17,19,22,24,25,26,27,28,29,33,35,37,38,42,50,51,52,53,56,60],b,{8:11}),{46:12,61:[1,13]},{61:[2,50]},{1:[2,1]},{1:[2,2]},{1:[2,3]},{1:[2,4],4:d,5:w,6:30,9:14,10:16,11:18,12:19,13:20,16:y,17:k,19:E,22:T,24:C,25:S,26:L,27:O,28:B,29:N,32:31,33:F,35:R,37:q,38:X,42:te,45:6,50:H,51:Y,52:z,53:W,56:Z,60:f},{47:43,48:[1,44],63:G},r([48,63],[2,51]),r(ae,[2,6]),{6:30,10:46,11:18,12:19,13:20,16:y,17:k,19:E,22:T,24:C,25:S,26:L,27:O,28:B,29:N,32:31,33:F,35:R,37:q,38:X,42:te,45:6,50:H,51:Y,52:z,53:W,56:Z,60:f},r(ae,[2,8]),r(ae,[2,9]),r(ae,[2,10]),r(ae,[2,11]),r(ae,[2,12],{14:[1,47],15:[1,48]}),r(ae,[2,16]),{18:[1,49]},r(ae,[2,18],{20:[1,50]}),{23:[1,51]},r(ae,[2,22]),r(ae,[2,23]),r(ae,[2,24]),r(ae,[2,25]),{30:52,31:[1,53],58:[1,54],59:[1,55]},r(ae,[2,28]),r(ae,[2,29]),{34:[1,56]},{36:[1,57]},r(ae,[2,32]),{39:[1,58],41:[1,59]},{43:[1,60]},r($,[2,44],{57:[1,61]}),r($,[2,45],{57:[1,62]}),r(ae,[2,38]),r(ae,[2,39]),r(ae,[2,40]),r(ae,[2,41]),r(ge,[2,36]),{49:63,62:[1,64]},r(ge,[2,53]),r(ae,[2,7]),r(ae,[2,13]),{13:65,24:C,56:Z},r(ae,[2,17]),r(ee,b,{8:66}),{24:[1,67]},{24:[1,68]},{23:[1,69]},{24:[2,48]},{24:[2,49]},r(ae,[2,30]),r(ae,[2,31]),{40:[1,70]},{40:[1,71]},{44:[1,72]},{24:[1,73]},{24:[1,74]},{47:75,63:G},{63:[2,52]},r(ae,[2,14],{14:[1,76]}),{4:d,5:w,6:30,9:14,10:16,11:18,12:19,13:20,16:y,17:k,19:E,21:[1,77],22:T,24:C,25:S,26:L,27:O,28:B,29:N,32:31,33:F,35:R,37:q,38:X,42:te,45:6,50:H,51:Y,52:z,53:W,56:Z,60:f},r(ae,[2,20],{20:[1,78]}),{31:[1,79]},{24:[1,80]},r(ae,[2,33]),r(ae,[2,34]),r(ae,[2,35]),r($,[2,46]),r($,[2,47]),r(ge,[2,37]),r(ae,[2,15]),r(ae,[2,19]),r(ee,b,{8:81}),r(ae,[2,26]),r(ae,[2,27]),{4:d,5:w,6:30,9:14,10:16,11:18,12:19,13:20,16:y,17:k,19:E,21:[1,82],22:T,24:C,25:S,26:L,27:O,28:B,29:N,32:31,33:F,35:R,37:q,38:X,42:te,45:6,50:H,51:Y,52:z,53:W,56:Z,60:f},r(ae,[2,21])],defaultActions:{7:[2,50],8:[2,1],9:[2,2],10:[2,3],54:[2,48],55:[2,49],64:[2,52]},parseError:function(_e,Te){if(Te.recoverable)this.trace(_e);else{var Be=new Error(_e);throw Be.hash=Te,Be}},parse:function(_e){var Te=this,Be=[0],Ge=[],Xe=[null],Ee=[],Ze=this.table,Ie="",Oe=0,Le=0,$e=2,xe=1,Ae=Ee.slice.call(arguments,1),je=Object.create(this.lexer),me={yy:{}};for(var vt in this.yy)Object.prototype.hasOwnProperty.call(this.yy,vt)&&(me.yy[vt]=this.yy[vt]);je.setInput(_e,me.yy),me.yy.lexer=je,me.yy.parser=this,typeof je.yylloc>"u"&&(je.yylloc={});var ve=je.yylloc;Ee.push(ve);var Zt=je.options&&je.options.ranges;typeof me.yy.parseError=="function"?this.parseError=me.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function nt(){var Gt;return Gt=Ge.pop()||je.lex()||xe,typeof Gt!="number"&&(Gt instanceof Array&&(Ge=Gt,Gt=Ge.pop()),Gt=Te.symbols_[Gt]||Gt),Gt}for(var xn,cn,jt,ot,be={},We,ct,Yt,Ut;;){if(cn=Be[Be.length-1],this.defaultActions[cn]?jt=this.defaultActions[cn]:((xn===null||typeof xn>"u")&&(xn=nt()),jt=Ze[cn]&&Ze[cn][xn]),typeof jt>"u"||!jt.length||!jt[0]){var Wn="";Ut=[];for(We in Ze[cn])this.terminals_[We]&&We>$e&&Ut.push("'"+this.terminals_[We]+"'");je.showPosition?Wn="Parse error on line "+(Oe+1)+`:
-`+je.showPosition()+`
-Expecting `+Ut.join(", ")+", got '"+(this.terminals_[xn]||xn)+"'":Wn="Parse error on line "+(Oe+1)+": Unexpected "+(xn==xe?"end of input":"'"+(this.terminals_[xn]||xn)+"'"),this.parseError(Wn,{text:je.match,token:this.terminals_[xn]||xn,line:je.yylineno,loc:ve,expected:Ut})}if(jt[0]instanceof Array&&jt.length>1)throw new Error("Parse Error: multiple actions possible at state: "+cn+", token: "+xn);switch(jt[0]){case 1:Be.push(xn),Xe.push(je.yytext),Ee.push(je.yylloc),Be.push(jt[1]),xn=null,Le=je.yyleng,Ie=je.yytext,Oe=je.yylineno,ve=je.yylloc;break;case 2:if(ct=this.productions_[jt[1]][1],be.$=Xe[Xe.length-ct],be._$={first_line:Ee[Ee.length-(ct||1)].first_line,last_line:Ee[Ee.length-1].last_line,first_column:Ee[Ee.length-(ct||1)].first_column,last_column:Ee[Ee.length-1].last_column},Zt&&(be._$.range=[Ee[Ee.length-(ct||1)].range[0],Ee[Ee.length-1].range[1]]),ot=this.performAction.apply(be,[Ie,Le,Oe,me.yy,jt[1],Xe,Ee].concat(Ae)),typeof ot<"u")return ot;ct&&(Be=Be.slice(0,-1*ct*2),Xe=Xe.slice(0,-1*ct),Ee=Ee.slice(0,-1*ct)),Be.push(this.productions_[jt[1]][0]),Xe.push(be.$),Ee.push(be._$),Yt=Ze[Be[Be.length-2]][Be[Be.length-1]],Be.push(Yt);break;case 3:return!0}}return!0}},re=function(){var Ce={EOF:1,parseError:function(Te,Be){if(this.yy.parser)this.yy.parser.parseError(Te,Be);else throw new Error(Te)},setInput:function(_e,Te){return this.yy=Te||this.yy||{},this._input=_e,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 _e=this._input[0];this.yytext+=_e,this.yyleng++,this.offset++,this.match+=_e,this.matched+=_e;var Te=_e.match(/(?:\r\n?|\n).*/g);return Te?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),_e},unput:function(_e){var Te=_e.length,Be=_e.split(/(?:\r\n?|\n)/g);this._input=_e+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-Te),this.offset-=Te;var Ge=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),Be.length-1&&(this.yylineno-=Be.length-1);var Xe=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:Be?(Be.length===Ge.length?this.yylloc.first_column:0)+Ge[Ge.length-Be.length].length-Be[0].length:this.yylloc.first_column-Te},this.options.ranges&&(this.yylloc.range=[Xe[0],Xe[0]+this.yyleng-Te]),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(_e){this.unput(this.match.slice(_e))},pastInput:function(){var _e=this.matched.substr(0,this.matched.length-this.match.length);return(_e.length>20?"...":"")+_e.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var _e=this.match;return _e.length<20&&(_e+=this._input.substr(0,20-_e.length)),(_e.substr(0,20)+(_e.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var _e=this.pastInput(),Te=new Array(_e.length+1).join("-");return _e+this.upcomingInput()+`
-`+Te+"^"},test_match:function(_e,Te){var Be,Ge,Xe;if(this.options.backtrack_lexer&&(Xe={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&&(Xe.yylloc.range=this.yylloc.range.slice(0))),Ge=_e[0].match(/(?:\r\n?|\n).*/g),Ge&&(this.yylineno+=Ge.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:Ge?Ge[Ge.length-1].length-Ge[Ge.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+_e[0].length},this.yytext+=_e[0],this.match+=_e[0],this.matches=_e,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(_e[0].length),this.matched+=_e[0],Be=this.performAction.call(this,this.yy,this,Te,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),Be)return Be;if(this._backtrack){for(var Ee in Xe)this[Ee]=Xe[Ee];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var _e,Te,Be,Ge;this._more||(this.yytext="",this.match="");for(var Xe=this._currentRules(),Ee=0;EeTe[0].length)){if(Te=Be,Ge=Ee,this.options.backtrack_lexer){if(_e=this.test_match(Be,Xe[Ee]),_e!==!1)return _e;if(this._backtrack){Te=!1;continue}else return!1}else if(!this.options.flex)break}return Te?(_e=this.test_match(Te,Xe[Ge]),_e!==!1?_e:!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 Te=this.next();return Te||this.lex()},begin:function(Te){this.conditionStack.push(Te)},popState:function(){var Te=this.conditionStack.length-1;return Te>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(Te){return Te=this.conditionStack.length-1-Math.abs(Te||0),Te>=0?this.conditionStack[Te]:"INITIAL"},pushState:function(Te){this.begin(Te)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(Te,Be,Ge,Xe){switch(Ge){case 0:return 41;case 1:return 50;case 2:return 51;case 3:return 52;case 4:return 53;case 5:return this.begin("open_directive"),60;case 6:return this.begin("type_directive"),61;case 7:return this.popState(),this.begin("arg_directive"),48;case 8:return this.popState(),this.popState(),63;case 9:return 62;case 10:break;case 11:break;case 12:return 5;case 13:break;case 14:break;case 15:break;case 16:break;case 17:return this.pushState("SCALE"),17;case 18:return 18;case 19:this.popState();break;case 20:return this.begin("acc_title"),33;case 21:return this.popState(),"acc_title_value";case 22:return this.begin("acc_descr"),35;case 23:return this.popState(),"acc_descr_value";case 24:this.begin("acc_descr_multiline");break;case 25:this.popState();break;case 26:return"acc_descr_multiline_value";case 27:return this.pushState("CLASSDEF"),38;case 28:return this.popState(),this.pushState("CLASSDEFID"),"DEFAULT_CLASSDEF_ID";case 29:return this.popState(),this.pushState("CLASSDEFID"),39;case 30:return this.popState(),40;case 31:return this.pushState("CLASS"),42;case 32:return this.popState(),this.pushState("CLASS_STYLE"),43;case 33:return this.popState(),44;case 34:return this.pushState("SCALE"),17;case 35:return 18;case 36:this.popState();break;case 37:this.pushState("STATE");break;case 38:return this.popState(),Be.yytext=Be.yytext.slice(0,-8).trim(),25;case 39:return this.popState(),Be.yytext=Be.yytext.slice(0,-8).trim(),26;case 40:return this.popState(),Be.yytext=Be.yytext.slice(0,-10).trim(),27;case 41:return this.popState(),Be.yytext=Be.yytext.slice(0,-8).trim(),25;case 42:return this.popState(),Be.yytext=Be.yytext.slice(0,-8).trim(),26;case 43:return this.popState(),Be.yytext=Be.yytext.slice(0,-10).trim(),27;case 44:return 50;case 45:return 51;case 46:return 52;case 47:return 53;case 48:this.pushState("STATE_STRING");break;case 49:return this.pushState("STATE_ID"),"AS";case 50:return this.popState(),"ID";case 51:this.popState();break;case 52:return"STATE_DESCR";case 53:return 19;case 54:this.popState();break;case 55:return this.popState(),this.pushState("struct"),20;case 56:break;case 57:return this.popState(),21;case 58:break;case 59:return this.begin("NOTE"),29;case 60:return this.popState(),this.pushState("NOTE_ID"),58;case 61:return this.popState(),this.pushState("NOTE_ID"),59;case 62:this.popState(),this.pushState("FLOATING_NOTE");break;case 63:return this.popState(),this.pushState("FLOATING_NOTE_ID"),"AS";case 64:break;case 65:return"NOTE_TEXT";case 66:return this.popState(),"ID";case 67:return this.popState(),this.pushState("NOTE_TEXT"),24;case 68:return this.popState(),Be.yytext=Be.yytext.substr(2).trim(),31;case 69:return this.popState(),Be.yytext=Be.yytext.slice(0,-8).trim(),31;case 70:return 7;case 71:return 7;case 72:return 16;case 73:return 56;case 74:return 24;case 75:return Be.yytext=Be.yytext.trim(),14;case 76:return 15;case 77:return 28;case 78:return 57;case 79:return 5;case 80:return"INVALID"}},rules:[/^(?:default\b)/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:[\s]+)/i,/^(?:((?!\n)\s)+)/i,/^(?:#[^\n]*)/i,/^(?:%[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:classDef\s+)/i,/^(?:DEFAULT\s+)/i,/^(?:\w+\s+)/i,/^(?:[^\n]*)/i,/^(?:class\s+)/i,/^(?:(\w+)+((,\s*\w+)*))/i,/^(?:[^\n]*)/i,/^(?:scale\s+)/i,/^(?:\d+)/i,/^(?:\s+width\b)/i,/^(?:state\s+)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*<>)/i,/^(?:.*\[\[fork\]\])/i,/^(?:.*\[\[join\]\])/i,/^(?:.*\[\[choice\]\])/i,/^(?:.*direction\s+TB[^\n]*)/i,/^(?:.*direction\s+BT[^\n]*)/i,/^(?:.*direction\s+RL[^\n]*)/i,/^(?:.*direction\s+LR[^\n]*)/i,/^(?:["])/i,/^(?:\s*as\s+)/i,/^(?:[^\n\{]*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n\s\{]+)/i,/^(?:\n)/i,/^(?:\{)/i,/^(?:%%(?!\{)[^\n]*)/i,/^(?:\})/i,/^(?:[\n])/i,/^(?:note\s+)/i,/^(?:left of\b)/i,/^(?:right of\b)/i,/^(?:")/i,/^(?:\s*as\s*)/i,/^(?:["])/i,/^(?:[^"]*)/i,/^(?:[^\n]*)/i,/^(?:\s*[^:\n\s\-]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:[\s\S]*?end note\b)/i,/^(?:stateDiagram\s+)/i,/^(?:stateDiagram-v2\s+)/i,/^(?:hide empty description\b)/i,/^(?:\[\*\])/i,/^(?:[^:\n\s\-\{]+)/i,/^(?:\s*:[^:\n;]+)/i,/^(?:-->)/i,/^(?:--)/i,/^(?::::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{LINE:{rules:[14,15],inclusive:!1},close_directive:{rules:[14,15],inclusive:!1},arg_directive:{rules:[8,9,14,15],inclusive:!1},type_directive:{rules:[7,8,14,15],inclusive:!1},open_directive:{rules:[6,14,15],inclusive:!1},struct:{rules:[14,15,27,31,37,44,45,46,47,56,57,58,59,73,74,75,76,77],inclusive:!1},FLOATING_NOTE_ID:{rules:[66],inclusive:!1},FLOATING_NOTE:{rules:[63,64,65],inclusive:!1},NOTE_TEXT:{rules:[68,69],inclusive:!1},NOTE_ID:{rules:[67],inclusive:!1},NOTE:{rules:[60,61,62],inclusive:!1},CLASS_STYLE:{rules:[33],inclusive:!1},CLASS:{rules:[32],inclusive:!1},CLASSDEFID:{rules:[30],inclusive:!1},CLASSDEF:{rules:[28,29],inclusive:!1},acc_descr_multiline:{rules:[25,26],inclusive:!1},acc_descr:{rules:[23],inclusive:!1},acc_title:{rules:[21],inclusive:!1},SCALE:{rules:[18,19,35,36],inclusive:!1},ALIAS:{rules:[],inclusive:!1},STATE_ID:{rules:[50],inclusive:!1},STATE_STRING:{rules:[51,52],inclusive:!1},FORK_STATE:{rules:[],inclusive:!1},STATE:{rules:[14,15,38,39,40,41,42,43,48,49,53,54,55],inclusive:!1},ID:{rules:[14,15],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,10,11,12,13,15,16,17,20,22,24,27,31,34,37,55,59,70,71,72,73,74,75,76,78,79,80],inclusive:!0}}};return Ce}();de.lexer=re;function ke(){this.yy={}}return ke.prototype=de,de.Parser=ke,new ke}();gce.parser=gce;const HLe=gce,ZZt=(r,i)=>{var o;return((o=i==null?void 0:i.state)==null?void 0:o.defaultRenderer)==="dagre-wrapper"?!1:r.match(/^\s*stateDiagram/)!==null},JZt=(r,i)=>{var o;return!!(r.match(/^\s*stateDiagram-v2/)!==null||r.match(/^\s*stateDiagram/)&&((o=i==null?void 0:i.state)==null?void 0:o.defaultRenderer)==="dagre-wrapper")},zLe="LR",eJt="TB",KV="state",pce="relation",tJt="classDef",nJt="applyClass",XI="default",GLe="divider",bce="[*]",VLe="start",ULe=bce,qLe="end",YLe="color",WLe="fill",rJt="bgFill",iJt=",";function KLe(){return{}}let XLe=zLe,XV=[],QI=KLe();const QLe=()=>({relations:[],states:{},documents:{}});let QV={root:QLe()},hd=QV.root,ZI=0,ZLe=0;const sJt={LINE:0,DOTTED_LINE:1},aJt={AGGREGATION:0,EXTENSION:1,COMPOSITION:2,DEPENDENCY:3},ZV=r=>JSON.parse(JSON.stringify(r)),oJt=function(r,i,o){Bu.parseDirective(this,r,i,o)},cJt=r=>{Se.info("Setting root doc",r),XV=r},uJt=()=>XV,JV=(r,i,o)=>{if(i.stmt===pce)JV(r,i.state1,!0),JV(r,i.state2,!1);else if(i.stmt===KV&&(i.id==="[*]"?(i.id=o?r.id+"_start":r.id+"_end",i.start=o):i.id=i.id.trim()),i.doc){const l=[];let f=[],b;for(b=0;b0&&f.length>0){const d={stmt:KV,id:VCe(),type:"divider",doc:ZV(f)};l.push(ZV(d)),i.doc=l}i.doc.forEach(d=>JV(i,d,!0))}},lJt=()=>(JV({id:"root"},{id:"root",doc:XV},!0),{id:"root",doc:XV}),hJt=r=>{let i;r.doc?i=r.doc:i=r,Se.info(i),JLe(!0),Se.info("Extract",i),i.forEach(o=>{switch(o.stmt){case KV:g7(o.id.trim(),o.type,o.doc,o.description,o.note,o.classes,o.styles,o.textStyles);break;case pce:eIe(o.state1,o.state2,o.description);break;case tJt:tIe(o.id.trim(),o.classes);break;case nJt:yce(o.id.trim(),o.styleClass);break}})},g7=function(r,i=XI,o=null,l=null,f=null,b=null,d=null,w=null){const y=r==null?void 0:r.trim();hd.states[y]===void 0?(Se.info("Adding state ",y,l),hd.states[y]={id:y,descriptions:[],type:i,doc:o,note:f,classes:[],styles:[],textStyles:[]}):(hd.states[y].doc||(hd.states[y].doc=o),hd.states[y].type||(hd.states[y].type=i)),l&&(Se.info("Setting state description",y,l),typeof l=="string"&&mce(y,l.trim()),typeof l=="object"&&l.forEach(k=>mce(y,k.trim()))),f&&(hd.states[y].note=f,hd.states[y].note.text=Cs.sanitizeText(hd.states[y].note.text,ht())),b&&(Se.info("Setting state classes",y,b),(typeof b=="string"?[b]:b).forEach(E=>yce(y,E.trim()))),d&&(Se.info("Setting state styles",y,d),(typeof d=="string"?[d]:d).forEach(E=>kJt(y,E.trim()))),w&&(Se.info("Setting state styles",y,d),(typeof w=="string"?[w]:w).forEach(E=>xJt(y,E.trim())))},JLe=function(r){QV={root:QLe()},hd=QV.root,ZI=0,QI=KLe(),r||W0()},JI=function(r){return hd.states[r]},fJt=function(){return hd.states},dJt=function(){Se.info("Documents = ",QV)},gJt=function(){return hd.relations};function vce(r=""){let i=r;return r===bce&&(ZI++,i=`${VLe}${ZI}`),i}function wce(r="",i=XI){return r===bce?VLe:i}function pJt(r=""){let i=r;return r===ULe&&(ZI++,i=`${qLe}${ZI}`),i}function bJt(r="",i=XI){return r===ULe?qLe:i}function vJt(r,i,o){let l=vce(r.id.trim()),f=wce(r.id.trim(),r.type),b=vce(i.id.trim()),d=wce(i.id.trim(),i.type);g7(l,f,r.doc,r.description,r.note,r.classes,r.styles,r.textStyles),g7(b,d,i.doc,i.description,i.note,i.classes,i.styles,i.textStyles),hd.relations.push({id1:l,id2:b,relationTitle:Cs.sanitizeText(o,ht())})}const eIe=function(r,i,o){if(typeof r=="object")vJt(r,i,o);else{const l=vce(r.trim()),f=wce(r),b=pJt(i.trim()),d=bJt(i);g7(l,f),g7(b,d),hd.relations.push({id1:l,id2:b,title:Cs.sanitizeText(o,ht())})}},mce=function(r,i){const o=hd.states[r],l=i.startsWith(":")?i.replace(":","").trim():i;o.descriptions.push(Cs.sanitizeText(l,ht()))},wJt=function(r){return r.substring(0,1)===":"?r.substr(2).trim():r.trim()},mJt=()=>(ZLe++,"divider-id-"+ZLe),tIe=function(r,i=""){QI[r]===void 0&&(QI[r]={id:r,styles:[],textStyles:[]});const o=QI[r];i!=null&&i.split(iJt).forEach(l=>{const f=l.replace(/([^;]*);/,"$1").trim();if(l.match(YLe)){const d=f.replace(WLe,rJt).replace(YLe,WLe);o.textStyles.push(d)}o.styles.push(f)})},yJt=function(){return QI},yce=function(r,i){r.split(",").forEach(function(o){let l=JI(o);if(l===void 0){const f=o.trim();g7(f),l=JI(f)}l.classes.push(i)})},kJt=function(r,i){const o=JI(r);o!==void 0&&o.textStyles.push(i)},xJt=function(r,i){const o=JI(r);o!==void 0&&o.textStyles.push(i)},u4={parseDirective:oJt,getConfig:()=>ht().state,addState:g7,clear:JLe,getState:JI,getStates:fJt,getRelations:gJt,getClasses:yJt,getDirection:()=>XLe,addRelation:eIe,getDividerId:mJt,setDirection:r=>{XLe=r},cleanupLabel:wJt,lineType:sJt,relationType:aJt,logDocuments:dJt,getRootDoc:uJt,setRootDoc:cJt,getRootDocV2:lJt,extract:hJt,trimColon:r=>r&&r[0]===":"?r.substr(1).trim():r.trim(),getAccTitle:hp,setAccTitle:K0,getAccDescription:dp,setAccDescription:fp,addStyleClass:tIe,setCssClass:yce,addDescription:mce,setDiagramTitle:Ov,getDiagramTitle:Nv},kce={},EJt=(r,i)=>{kce[r]=i},_Jt=r=>kce[r],nIe=()=>Object.keys(kce),TJt={get:_Jt,set:EJt,keys:nIe,size:()=>nIe().length},CJt=r=>r.append("circle").attr("class","start-state").attr("r",ht().state.sizeUnit).attr("cx",ht().state.padding+ht().state.sizeUnit).attr("cy",ht().state.padding+ht().state.sizeUnit),SJt=r=>r.append("line").style("stroke","grey").style("stroke-dasharray","3").attr("x1",ht().state.textHeight).attr("class","divider").attr("x2",ht().state.textHeight*2).attr("y1",0).attr("y2",0),AJt=(r,i)=>{const o=r.append("text").attr("x",2*ht().state.padding).attr("y",ht().state.textHeight+2*ht().state.padding).attr("font-size",ht().state.fontSize).attr("class","state-title").text(i.id),l=o.node().getBBox();return r.insert("rect",":first-child").attr("x",ht().state.padding).attr("y",ht().state.padding).attr("width",l.width+2*ht().state.padding).attr("height",l.height+2*ht().state.padding).attr("rx",ht().state.radius),o},MJt=(r,i)=>{const o=function(C,S,L){const O=C.append("tspan").attr("x",2*ht().state.padding).text(S);L||O.attr("dy",ht().state.textHeight)},f=r.append("text").attr("x",2*ht().state.padding).attr("y",ht().state.textHeight+1.3*ht().state.padding).attr("font-size",ht().state.fontSize).attr("class","state-title").text(i.descriptions[0]).node().getBBox(),b=f.height,d=r.append("text").attr("x",ht().state.padding).attr("y",b+ht().state.padding*.4+ht().state.dividerMargin+ht().state.textHeight).attr("class","state-description");let w=!0,y=!0;i.descriptions.forEach(function(C){w||(o(d,C,y),y=!1),w=!1});const k=r.append("line").attr("x1",ht().state.padding).attr("y1",ht().state.padding+b+ht().state.dividerMargin/2).attr("y2",ht().state.padding+b+ht().state.dividerMargin/2).attr("class","descr-divider"),E=d.node().getBBox(),T=Math.max(E.width,f.width);return k.attr("x2",T+3*ht().state.padding),r.insert("rect",":first-child").attr("x",ht().state.padding).attr("y",ht().state.padding).attr("width",T+2*ht().state.padding).attr("height",E.height+b+2*ht().state.padding).attr("rx",ht().state.radius),r},DJt=(r,i,o)=>{const l=ht().state.padding,f=2*ht().state.padding,b=r.node().getBBox(),d=b.width,w=b.x,y=r.append("text").attr("x",0).attr("y",ht().state.titleShift).attr("font-size",ht().state.fontSize).attr("class","state-title").text(i.id),E=y.node().getBBox().width+f;let T=Math.max(E,d);T===d&&(T=T+f);let C;const S=r.node().getBBox();i.doc,C=w-l,E>d&&(C=(d-T)/2+l),Math.abs(w-S.x)d&&(C=w-(E-d)/2);const L=1-ht().state.textHeight;return r.insert("rect",":first-child").attr("x",C).attr("y",L).attr("class",o?"alt-composit":"composit").attr("width",T).attr("height",S.height+ht().state.textHeight+ht().state.titleShift+1).attr("rx","0"),y.attr("x",C+l),E<=d&&y.attr("x",w+(T-f)/2-E/2+l),r.insert("rect",":first-child").attr("x",C).attr("y",ht().state.titleShift-ht().state.textHeight-ht().state.padding).attr("width",T).attr("height",ht().state.textHeight*3).attr("rx",ht().state.radius),r.insert("rect",":first-child").attr("x",C).attr("y",ht().state.titleShift-ht().state.textHeight-ht().state.padding).attr("width",T).attr("height",S.height+3+2*ht().state.textHeight).attr("rx",ht().state.radius),r},LJt=r=>(r.append("circle").attr("class","end-state-outer").attr("r",ht().state.sizeUnit+ht().state.miniPadding).attr("cx",ht().state.padding+ht().state.sizeUnit+ht().state.miniPadding).attr("cy",ht().state.padding+ht().state.sizeUnit+ht().state.miniPadding),r.append("circle").attr("class","end-state-inner").attr("r",ht().state.sizeUnit).attr("cx",ht().state.padding+ht().state.sizeUnit+2).attr("cy",ht().state.padding+ht().state.sizeUnit+2)),IJt=(r,i)=>{let o=ht().state.forkWidth,l=ht().state.forkHeight;if(i.parentId){let f=o;o=l,l=f}return r.append("rect").style("stroke","black").style("fill","black").attr("width",o).attr("height",l).attr("x",ht().state.padding).attr("y",ht().state.padding)},OJt=(r,i,o,l)=>{let f=0;const b=l.append("text");b.style("text-anchor","start"),b.attr("class","noteText");let d=r.replace(/\r\n/g,"
");d=d.replace(/\n/g,"
");const w=d.split(Cs.lineBreakRegex);let y=1.25*ht().state.noteMargin;for(const k of w){const E=k.trim();if(E.length>0){const T=b.append("tspan");if(T.text(E),y===0){const C=T.node().getBBox();y+=C.height}f+=y,T.attr("x",i+ht().state.noteMargin),T.attr("y",o+f+1.25*ht().state.noteMargin)}}return{textWidth:b.node().getBBox().width,textHeight:f}},NJt=(r,i)=>{i.attr("class","state-note");const o=i.append("rect").attr("x",0).attr("y",ht().state.padding),l=i.append("g"),{textWidth:f,textHeight:b}=OJt(r,0,0,l);return o.attr("height",b+2*ht().state.noteMargin),o.attr("width",f+ht().state.noteMargin*2),o},rIe=function(r,i){const o=i.id,l={id:o,label:i.id,width:0,height:0},f=r.append("g").attr("id",o).attr("class","stateGroup");i.type==="start"&&CJt(f),i.type==="end"&&LJt(f),(i.type==="fork"||i.type==="join")&&IJt(f,i),i.type==="note"&&NJt(i.note.text,f),i.type==="divider"&&SJt(f),i.type==="default"&&i.descriptions.length===0&&AJt(f,i),i.type==="default"&&i.descriptions.length>0&&MJt(f,i);const b=f.node().getBBox();return l.width=b.width+2*ht().state.padding,l.height=b.height+2*ht().state.padding,TJt.set(o,l),l};let iIe=0;const PJt=function(r,i,o){const l=function(y){switch(y){case u4.relationType.AGGREGATION:return"aggregation";case u4.relationType.EXTENSION:return"extension";case u4.relationType.COMPOSITION:return"composition";case u4.relationType.DEPENDENCY:return"dependency"}};i.points=i.points.filter(y=>!Number.isNaN(y.y));const f=i.points,b=V8().x(function(y){return y.x}).y(function(y){return y.y}).curve(UT),d=r.append("path").attr("d",b(f)).attr("id","edge"+iIe).attr("class","transition");let w="";if(ht().state.arrowMarkerAbsolute&&(w=window.location.protocol+"//"+window.location.host+window.location.pathname+window.location.search,w=w.replace(/\(/g,"\\("),w=w.replace(/\)/g,"\\)")),d.attr("marker-end","url("+w+"#"+l(u4.relationType.DEPENDENCY)+"End)"),o.title!==void 0){const y=r.append("g").attr("class","stateLabel"),{x:k,y:E}=Fs.calcLabelPosition(i.points),T=Cs.getRows(o.title);let C=0;const S=[];let L=0,O=0;for(let F=0;F<=T.length;F++){const R=y.append("text").attr("text-anchor","middle").text(T[F]).attr("x",k).attr("y",E+C),q=R.node().getBBox();L=Math.max(L,q.width),O=Math.min(O,q.x),Se.info(q.x,k,E+C),C===0&&(C=R.node().getBBox().height,Se.info("Title height",C,E)),S.push(R)}let B=C*T.length;if(T.length>1){const F=(T.length-1)*C*.5;S.forEach((R,q)=>R.attr("y",E+q*C-F)),B=C*T.length}const N=y.node().getBBox();y.insert("rect",":first-child").attr("class","box").attr("x",k-L/2-ht().state.padding/2).attr("y",E-B/2-ht().state.padding/2-3.5).attr("width",L+ht().state.padding).attr("height",B+ht().state.padding),Se.info(N)}iIe++};let bp;const xce={},BJt=function(){},FJt=function(r){r.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")},RJt=function(r,i,o,l){bp=ht().state;const f=ht().securityLevel;let b;f==="sandbox"&&(b=Cn("#i"+i));const d=Cn(f==="sandbox"?b.nodes()[0].contentDocument.body:"body"),w=f==="sandbox"?b.nodes()[0].contentDocument:document;Se.debug("Rendering diagram "+r);const y=d.select(`[id='${i}']`);FJt(y),new zh({multigraph:!0,compound:!0,rankdir:"RL"}).setDefaultEdgeLabel(function(){return{}});const E=l.db.getRootDoc();sIe(E,y,void 0,!1,d,w,l);const T=bp.padding,C=y.node().getBBox(),S=C.width+T*2,L=C.height+T*2,O=S*1.75;Iv(y,L,O,bp.useMaxWidth),y.attr("viewBox",`${C.x-bp.padding} ${C.y-bp.padding} `+S+" "+L)},jJt=r=>r?r.length*bp.fontSizeFactor:1,sIe=(r,i,o,l,f,b,d)=>{const w=new zh({compound:!0,multigraph:!0});let y,k=!0;for(y=0;y{const q=R.parentElement;let X=0,te=0;q&&(q.parentElement&&(X=q.parentElement.getBBox().width),te=parseInt(q.getAttribute("data-x-shift"),10),Number.isNaN(te)&&(te=0)),R.setAttribute("x1",0-te+8),R.setAttribute("x2",X-te-8)})):Se.debug("No Node "+N+": "+JSON.stringify(w.node(N)))});let O=L.getBBox();w.edges().forEach(function(N){N!==void 0&&w.edge(N)!==void 0&&(Se.debug("Edge "+N.v+" -> "+N.w+": "+JSON.stringify(w.edge(N))),PJt(i,w.edge(N),w.edge(N).relation))}),O=L.getBBox();const B={id:o||"root",label:o||"root",width:0,height:0};return B.width=O.width+2*bp.padding,B.height=O.height+2*bp.padding,Se.debug("Doc rendered",B,w),B},$Jt={setConf:BJt,draw:RJt},eU="rect",Ece="rectWithTitle",HJt="start",zJt="end",GJt="divider",VJt="roundedWithTitle",UJt="note",qJt="noteGroup",CC="statediagram",YJt=`${CC}-state`,aIe="transition",WJt="note",KJt=`${aIe} note-edge`,XJt=`${CC}-${WJt}`,QJt=`${CC}-cluster`,ZJt=`${CC}-cluster-alt`,oIe="parent",cIe="note",JJt="state",_ce="----",een=`${_ce}${cIe}`,uIe=`${_ce}${oIe}`,lIe="fill:none",hIe="fill: #333",fIe="c",dIe="text",gIe="normal";let tU={},m6=0;const ten=function(r){const i=Object.keys(r);for(const o of i)r[o]},nen=function(r,i){Se.trace("Extracting classes"),i.db.clear();try{return i.parser.parse(r),i.db.extract(i.db.getRootDocV2()),i.db.getClasses()}catch(o){return o}};function ren(r){return r==null?"":r.classes?r.classes.join(" "):""}function Tce(r="",i=0,o="",l=_ce){const f=o!==null&&o.length>0?`${l}${o}`:"";return`${JJt}-${r}${f}-${i}`}const eO=(r,i,o,l,f,b)=>{const d=o.id,w=ren(l[d]);if(d!=="root"){let y=eU;o.start===!0&&(y=HJt),o.start===!1&&(y=zJt),o.type!==XI&&(y=o.type),tU[d]||(tU[d]={id:d,shape:y,description:Cs.sanitizeText(d,ht()),classes:`${w} ${YJt}`});const k=tU[d];o.description&&(Array.isArray(k.description)?(k.shape=Ece,k.description.push(o.description)):k.description.length>0?(k.shape=Ece,k.description===d?k.description=[o.description]:k.description=[k.description,o.description]):(k.shape=eU,k.description=o.description),k.description=Cs.sanitizeTextOrArray(k.description,ht())),k.description.length===1&&k.shape===Ece&&(k.shape=eU),!k.type&&o.doc&&(Se.info("Setting cluster for ",d,Cce(o)),k.type="group",k.dir=Cce(o),k.shape=o.type===GLe?GJt:VJt,k.classes=k.classes+" "+QJt+" "+(b?ZJt:""));const E={labelStyle:"",shape:k.shape,labelText:k.description,classes:k.classes,style:"",id:d,dir:k.dir,domId:Tce(d,m6),type:k.type,padding:15};if(o.note){const T={labelStyle:"",shape:UJt,labelText:o.note.text,classes:XJt,style:"",id:d+een+"-"+m6,domId:Tce(d,m6,cIe),type:k.type,padding:15},C={labelStyle:"",shape:qJt,labelText:o.note.text,classes:k.classes,style:"",id:d+uIe,domId:Tce(d,m6,oIe),type:"group",padding:0};m6++;const S=d+uIe;r.setNode(S,C),r.setNode(T.id,T),r.setNode(d,E),r.setParent(d,S),r.setParent(T.id,S);let L=d,O=T.id;o.note.position==="left of"&&(L=T.id,O=d),r.setEdge(L,O,{arrowhead:"none",arrowType:"",style:lIe,labelStyle:"",classes:KJt,arrowheadStyle:hIe,labelpos:fIe,labelType:dIe,thickness:gIe})}else r.setNode(d,E)}i&&i.id!=="root"&&(Se.trace("Setting node ",d," to be child of its parent ",i.id),r.setParent(d,i.id)),o.doc&&(Se.trace("Adding nodes children "),ien(r,o,o.doc,l,f,!b))},ien=(r,i,o,l,f,b)=>{Se.trace("items",o),o.forEach(d=>{switch(d.stmt){case KV:eO(r,i,d,l,f,b);break;case XI:eO(r,i,d,l,f,b);break;case pce:{eO(r,i,d.state1,l,f,b),eO(r,i,d.state2,l,f,b);const w={id:"edge"+m6,arrowhead:"normal",arrowTypeEnd:"arrow_barb",style:lIe,labelStyle:"",label:Cs.sanitizeText(d.description,ht()),arrowheadStyle:hIe,labelpos:fIe,labelType:dIe,thickness:gIe,classes:aIe};r.setEdge(d.state1.id,d.state2.id,w,m6),m6++}break}})},Cce=(r,i=eJt)=>{let o=i;if(r.doc)for(let l=0;l"u"&&(ae.yylloc={});var ee=ae.yylloc;X.push(ee);var de=ae.options&&ae.options.ranges;typeof $.yy.parseError=="function"?this.parseError=$.yy.parseError:this.parseError=Object.getPrototypeOf(this).parseError;function re(){var Oe;return Oe=R.pop()||ae.lex()||Z,typeof Oe!="number"&&(Oe instanceof Array&&(R=Oe,Oe=R.pop()),Oe=N.symbols_[Oe]||Oe),Oe}for(var ke,Ce,_e,Te,Be={},Ge,Xe,Ee,Ze;;){if(Ce=F[F.length-1],this.defaultActions[Ce]?_e=this.defaultActions[Ce]:((ke===null||typeof ke>"u")&&(ke=re()),_e=te[Ce]&&te[Ce][ke]),typeof _e>"u"||!_e.length||!_e[0]){var Ie="";Ze=[];for(Ge in te[Ce])this.terminals_[Ge]&&Ge>W&&Ze.push("'"+this.terminals_[Ge]+"'");ae.showPosition?Ie="Parse error on line "+(Y+1)+`:
-`+ae.showPosition()+`
-Expecting `+Ze.join(", ")+", got '"+(this.terminals_[ke]||ke)+"'":Ie="Parse error on line "+(Y+1)+": Unexpected "+(ke==Z?"end of input":"'"+(this.terminals_[ke]||ke)+"'"),this.parseError(Ie,{text:ae.match,token:this.terminals_[ke]||ke,line:ae.yylineno,loc:ee,expected:Ze})}if(_e[0]instanceof Array&&_e.length>1)throw new Error("Parse Error: multiple actions possible at state: "+Ce+", token: "+ke);switch(_e[0]){case 1:F.push(ke),q.push(ae.yytext),X.push(ae.yylloc),F.push(_e[1]),ke=null,z=ae.yyleng,H=ae.yytext,Y=ae.yylineno,ee=ae.yylloc;break;case 2:if(Xe=this.productions_[_e[1]][1],Be.$=q[q.length-Xe],Be._$={first_line:X[X.length-(Xe||1)].first_line,last_line:X[X.length-1].last_line,first_column:X[X.length-(Xe||1)].first_column,last_column:X[X.length-1].last_column},de&&(Be._$.range=[X[X.length-(Xe||1)].range[0],X[X.length-1].range[1]]),Te=this.performAction.apply(Be,[H,z,Y,$.yy,_e[1],q,X].concat(G)),typeof Te<"u")return Te;Xe&&(F=F.slice(0,-1*Xe*2),q=q.slice(0,-1*Xe),X=X.slice(0,-1*Xe)),F.push(this.productions_[_e[1]][0]),q.push(Be.$),X.push(Be._$),Ee=te[F[F.length-2]][F[F.length-1]],F.push(Ee);break;case 3:return!0}}return!0}},S=function(){var O={EOF:1,parseError:function(N,F){if(this.yy.parser)this.yy.parser.parseError(N,F);else throw new Error(N)},setInput:function(B,N){return this.yy=N||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 N=B.match(/(?:\r\n?|\n).*/g);return N?(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 N=B.length,F=B.split(/(?:\r\n?|\n)/g);this._input=B+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-N),this.offset-=N;var R=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),F.length-1&&(this.yylineno-=F.length-1);var 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:F?(F.length===R.length?this.yylloc.first_column:0)+R[R.length-F.length].length-F[0].length:this.yylloc.first_column-N},this.options.ranges&&(this.yylloc.range=[q[0],q[0]+this.yyleng-N]),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(),N=new Array(B.length+1).join("-");return B+this.upcomingInput()+`
-`+N+"^"},test_match:function(B,N){var F,R,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))),R=B[0].match(/(?:\r\n?|\n).*/g),R&&(this.yylineno+=R.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:R?R[R.length-1].length-R[R.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],F=this.performAction.call(this,this.yy,this,N,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),F)return F;if(this._backtrack){for(var X in q)this[X]=q[X];return!1}return!1},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var B,N,F,R;this._more||(this.yytext="",this.match="");for(var q=this._currentRules(),X=0;XN[0].length)){if(N=F,R=X,this.options.backtrack_lexer){if(B=this.test_match(F,q[X]),B!==!1)return B;if(this._backtrack){N=!1;continue}else return!1}else if(!this.options.flex)break}return N?(B=this.test_match(N,q[R]),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 N=this.next();return N||this.lex()},begin:function(N){this.conditionStack.push(N)},popState:function(){var N=this.conditionStack.length-1;return N>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(N){return N=this.conditionStack.length-1-Math.abs(N||0),N>=0?this.conditionStack[N]:"INITIAL"},pushState:function(N){this.begin(N)},stateStackSize:function(){return this.conditionStack.length},options:{"case-insensitive":!0},performAction:function(N,F,R,q){switch(R){case 0:return this.begin("open_directive"),26;case 1:return this.begin("type_directive"),27;case 2:return this.popState(),this.begin("arg_directive"),15;case 3:return this.popState(),this.popState(),29;case 4:return 28;case 5:break;case 6:break;case 7:return 11;case 8:break;case 9:break;case 10:return 4;case 11:return 17;case 12:return this.begin("acc_title"),18;case 13:return this.popState(),"acc_title_value";case 14:return this.begin("acc_descr"),20;case 15:return this.popState(),"acc_descr_value";case 16:this.begin("acc_descr_multiline");break;case 17:this.popState();break;case 18:return"acc_descr_multiline_value";case 19:return 23;case 20:return 24;case 21:return 25;case 22:return 15;case 23:return 6;case 24:return"INVALID"}},rules:[/^(?:%%\{)/i,/^(?:((?:(?!\}%%)[^:.])*))/i,/^(?::)/i,/^(?:\}%%)/i,/^(?:((?:(?!\}%%).|\n)*))/i,/^(?:%(?!\{)[^\n]*)/i,/^(?:[^\}]%%[^\n]*)/i,/^(?:[\n]+)/i,/^(?:\s+)/i,/^(?:#[^\n]*)/i,/^(?:journey\b)/i,/^(?:title\s[^#\n;]+)/i,/^(?:accTitle\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*:\s*)/i,/^(?:(?!\n||)*[^\n]*)/i,/^(?:accDescr\s*\{\s*)/i,/^(?:[\}])/i,/^(?:[^\}]*)/i,/^(?:section\s[^#:\n;]+)/i,/^(?:[^#:\n;]+)/i,/^(?::[^#\n;]+)/i,/^(?::)/i,/^(?:$)/i,/^(?:.)/i],conditions:{open_directive:{rules:[1],inclusive:!1},type_directive:{rules:[2,3],inclusive:!1},arg_directive:{rules:[3,4],inclusive:!1},acc_descr_multiline:{rules:[17,18],inclusive:!1},acc_descr:{rules:[15],inclusive:!1},acc_title:{rules:[13],inclusive:!1},INITIAL:{rules:[0,5,6,7,8,9,10,11,12,14,16,19,20,21,22,23,24],inclusive:!0}}};return O}();C.lexer=S;function L(){this.yy={}}return L.prototype=C,C.Parser=L,new L}();Sce.parser=Sce;const aen=Sce,oen=r=>r.match(/^\s*journey/)!==null;let SC="";const Ace=[],tO=[],nO=[],cen=function(r,i,o){Bu.parseDirective(this,r,i,o)},uen=function(){Ace.length=0,tO.length=0,SC="",nO.length=0,W0()},len=function(r){SC=r,Ace.push(r)},hen=function(){return Ace},fen=function(){let r=pIe();const i=100;let o=0;for(;!r&&o{o.people&&r.push(...o.people)}),[...new Set(r)].sort()},gen=function(r,i){const o=i.substr(1).split(":");let l=0,f=[];o.length===1?(l=Number(o[0]),f=[]):(l=Number(o[0]),f=o[1].split(","));const b=f.map(w=>w.trim()),d={section:SC,type:SC,people:b,task:r,score:l};nO.push(d)},pen=function(r){const i={section:SC,type:SC,description:r,task:r,classes:[]};tO.push(i)},pIe=function(){const r=function(o){return nO[o].processed};let i=!0;for(const[o,l]of nO.entries())r(o),i=i&&l.processed;return i},bIe={parseDirective:cen,getConfig:()=>ht().journey,clear:uen,setDiagramTitle:Ov,getDiagramTitle:Nv,setAccTitle:K0,getAccTitle:hp,setAccDescription:fp,getAccDescription:dp,addSection:len,getSections:hen,getTasks:fen,addTask:gen,addTaskOrg:pen,getActors:function(){return den()}},nU=function(r,i){const o=r.append("rect");return o.attr("x",i.x),o.attr("y",i.y),o.attr("fill",i.fill),o.attr("stroke",i.stroke),o.attr("width",i.width),o.attr("height",i.height),o.attr("rx",i.rx),o.attr("ry",i.ry),i.class!==void 0&&o.attr("class",i.class),o},ben=function(r,i){const l=r.append("circle").attr("cx",i.cx).attr("cy",i.cy).attr("class","face").attr("r",15).attr("stroke-width",2).attr("overflow","visible"),f=r.append("g");f.append("circle").attr("cx",i.cx-15/3).attr("cy",i.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666"),f.append("circle").attr("cx",i.cx+15/3).attr("cy",i.cy-15/3).attr("r",1.5).attr("stroke-width",2).attr("fill","#666").attr("stroke","#666");function b(y){const k=ZL().startAngle(Math.PI/2).endAngle(3*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);y.append("path").attr("class","mouth").attr("d",k).attr("transform","translate("+i.cx+","+(i.cy+2)+")")}function d(y){const k=ZL().startAngle(3*Math.PI/2).endAngle(5*(Math.PI/2)).innerRadius(7.5).outerRadius(6.8181818181818175);y.append("path").attr("class","mouth").attr("d",k).attr("transform","translate("+i.cx+","+(i.cy+7)+")")}function w(y){y.append("line").attr("class","mouth").attr("stroke",2).attr("x1",i.cx-5).attr("y1",i.cy+7).attr("x2",i.cx+5).attr("y2",i.cy+7).attr("class","mouth").attr("stroke-width","1px").attr("stroke","#666")}return i.score>3?b(f):i.score<3?d(f):w(f),l},vIe=function(r,i){const o=r.append("circle");return o.attr("cx",i.cx),o.attr("cy",i.cy),o.attr("class","actor-"+i.pos),o.attr("fill",i.fill),o.attr("stroke",i.stroke),o.attr("r",i.r),o.class!==void 0&&o.attr("class",o.class),i.title!==void 0&&o.append("title").text(i.title),o},wIe=function(r,i){const o=i.text.replace(/
/gi," "),l=r.append("text");l.attr("x",i.x),l.attr("y",i.y),l.attr("class","legend"),l.style("text-anchor",i.anchor),i.class!==void 0&&l.attr("class",i.class);const f=l.append("tspan");return f.attr("x",i.x+i.textMargin*2),f.text(o),l},ven=function(r,i){function o(f,b,d,w,y){return f+","+b+" "+(f+d)+","+b+" "+(f+d)+","+(b+w-y)+" "+(f+d-y*1.2)+","+(b+w)+" "+f+","+(b+w)}const l=r.append("polygon");l.attr("points",o(i.x,i.y,50,20,7)),l.attr("class","labelBox"),i.y=i.y+i.labelMargin,i.x=i.x+.5*i.labelMargin,wIe(r,i)},wen=function(r,i,o){const l=r.append("g"),f=Mce();f.x=i.x,f.y=i.y,f.fill=i.fill,f.width=o.width,f.height=o.height,f.class="journey-section section-type-"+i.num,f.rx=3,f.ry=3,nU(l,f),yIe(o)(i.text,l,f.x,f.y,f.width,f.height,{class:"journey-section section-type-"+i.num},o,i.colour)};let mIe=-1;const men=function(r,i,o){const l=i.x+o.width/2,f=r.append("g");mIe++;const b=300+5*30;f.append("line").attr("id","task"+mIe).attr("x1",l).attr("y1",i.y).attr("x2",l).attr("y2",b).attr("class","task-line").attr("stroke-width","1px").attr("stroke-dasharray","4 2").attr("stroke","#666"),ben(f,{cx:l,cy:300+(5-i.score)*30,score:i.score});const d=Mce();d.x=i.x,d.y=i.y,d.fill=i.fill,d.width=o.width,d.height=o.height,d.class="task task-type-"+i.num,d.rx=3,d.ry=3,nU(f,d);let w=i.x+14;i.people.forEach(y=>{const k=i.actors[y].color,E={cx:w,cy:i.y,r:7,fill:k,stroke:"#000",title:y,pos:i.actors[y].position};vIe(f,E),w+=10}),yIe(o)(i.task,f,d.x,d.y,d.width,d.height,{class:"task"},o,i.colour)},yen=function(r,i){nU(r,{x:i.startx,y:i.starty,width:i.stopx-i.startx,height:i.stopy-i.starty,fill:i.fill,class:"rect"}).lower()},ken=function(){return{x:0,y:0,fill:void 0,"text-anchor":"start",width:100,height:100,textMargin:0,rx:0,ry:0}},Mce=function(){return{x:0,y:0,width:100,anchor:"start",height:100,rx:0,ry:0}},yIe=function(){function r(f,b,d,w,y,k,E,T){const C=b.append("text").attr("x",d+y/2).attr("y",w+k/2+5).style("font-color",T).style("text-anchor","middle").text(f);l(C,E)}function i(f,b,d,w,y,k,E,T,C){const{taskFontSize:S,taskFontFamily:L}=T,O=f.split(/
/gi);for(let B=0;B{const f=l4[l].color,b={cx:20,cy:o,r:7,fill:f,stroke:"#000",pos:l4[l].position};rO.drawCircle(r,b);const d={x:40,y:o+7,fill:"#666",text:l,textMargin:i.boxTextMargin|5};rO.drawText(r,d),o+=20})}const rU=ht().journey,p7=rU.leftMargin,_en=function(r,i,o,l){const f=ht().journey;l.db.clear(),l.parser.parse(r+`
-`);const b=ht().securityLevel;let d;b==="sandbox"&&(d=Cn("#i"+i));const w=Cn(b==="sandbox"?d.nodes()[0].contentDocument.body:"body");B2.init();const y=w.select("#"+i);rO.initGraphics(y);const k=l.db.getTasks(),E=l.db.getDiagramTitle(),T=l.db.getActors();for(const N in l4)delete l4[N];let C=0;T.forEach(N=>{l4[N]={color:f.actorColours[C%f.actorColours.length],position:C},C++}),Een(y),B2.insert(0,0,p7,Object.keys(l4).length*50),Ten(y,k,0);const S=B2.getBounds();E&&y.append("text").text(E).attr("x",p7).attr("font-size","4ex").attr("font-weight","bold").attr("y",25);const L=S.stopy-S.starty+2*f.diagramMarginY,O=p7+S.stopx+2*f.diagramMarginX;Iv(y,L,O,f.useMaxWidth),y.append("line").attr("x1",p7).attr("y1",f.height*4).attr("x2",O-p7-4).attr("y2",f.height*4).attr("stroke-width",4).attr("stroke","black").attr("marker-end","url(#arrowhead)");const B=E?70:0;y.attr("viewBox",`${S.startx} -25 ${O} ${L+B}`),y.attr("preserveAspectRatio","xMinYMin meet"),y.attr("height",L+B+25)},B2={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(r,i,o,l){r[i]===void 0?r[i]=o:r[i]=l(o,r[i])},updateBounds:function(r,i,o,l){const f=ht().journey,b=this;let d=0;function w(y){return function(E){d++;const T=b.sequenceItems.length-d+1;b.updateVal(E,"starty",i-T*f.boxMargin,Math.min),b.updateVal(E,"stopy",l+T*f.boxMargin,Math.max),b.updateVal(B2.data,"startx",r-T*f.boxMargin,Math.min),b.updateVal(B2.data,"stopx",o+T*f.boxMargin,Math.max),y!=="activation"&&(b.updateVal(E,"startx",r-T*f.boxMargin,Math.min),b.updateVal(E,"stopx",o+T*f.boxMargin,Math.max),b.updateVal(B2.data,"starty",i-T*f.boxMargin,Math.min),b.updateVal(B2.data,"stopy",l+T*f.boxMargin,Math.max))}}this.sequenceItems.forEach(w())},insert:function(r,i,o,l){const f=Math.min(r,o),b=Math.max(r,o),d=Math.min(i,l),w=Math.max(i,l);this.updateVal(B2.data,"startx",f,Math.min),this.updateVal(B2.data,"starty",d,Math.min),this.updateVal(B2.data,"stopx",b,Math.max),this.updateVal(B2.data,"stopy",w,Math.max),this.updateBounds(f,d,b,w)},bumpVerticalPos:function(r){this.verticalPos=this.verticalPos+r,this.data.stopy=this.verticalPos},getVerticalPos:function(){return this.verticalPos},getBounds:function(){return this.data}},Dce=rU.sectionFills,kIe=rU.sectionColours,Ten=function(r,i,o){const l=ht().journey;let f="";const b=l.height*2+l.diagramMarginY,d=o+b;let w=0,y="#CCC",k="black",E=0;for(const[T,C]of i.entries()){if(f!==C.section){y=Dce[w%Dce.length],E=w%Dce.length,k=kIe[w%kIe.length];const L={x:T*l.taskMargin+T*l.width+p7,y:50,text:C.section,fill:y,num:E,colour:k};rO.drawSection(r,L,l),f=C.section,w++}const S=C.people.reduce((L,O)=>(l4[O]&&(L[O]=l4[O]),L),{});C.x=T*l.taskMargin+T*l.width+p7,C.y=d,C.width=l.diagramMarginX,C.height=l.diagramMarginY,C.colour=k,C.fill=y,C.num=E,C.actors=S,rO.drawTask(r,C,l),B2.insert(C.x,C.y,C.x+C.width+l.taskMargin,300+5*30)}},xIe={setConf:xen,draw:_en};let EIe={};const iU={setConf:function(r){EIe={...EIe,...r}},draw:(r,i,o)=>{try{Se.debug(`Renering svg for syntax error
-`);const l=Cn("#"+i),f=l.append("g");f.append("path").attr("class","error-icon").attr("d","m411.313,123.313c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32-9.375,9.375-20.688-20.688c-12.484-12.5-32.766-12.5-45.25,0l-16,16c-1.261,1.261-2.304,2.648-3.31,4.051-21.739-8.561-45.324-13.426-70.065-13.426-105.867,0-192,86.133-192,192s86.133,192 192,192 192-86.133 192-192c0-24.741-4.864-48.327-13.426-70.065 1.402-1.007 2.79-2.049 4.051-3.31l16-16c12.5-12.492 12.5-32.758 0-45.25l-20.688-20.688 9.375-9.375 32.001-31.999zm-219.313,100.687c-52.938,0-96,43.063-96,96 0,8.836-7.164,16-16,16s-16-7.164-16-16c0-70.578 57.422-128 128-128 8.836,0 16,7.164 16,16s-7.164,16-16,16z"),f.append("path").attr("class","error-icon").attr("d","m459.02,148.98c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l16,16c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16.001-16z"),f.append("path").attr("class","error-icon").attr("d","m340.395,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688 6.25-6.25 6.25-16.375 0-22.625l-16-16c-6.25-6.25-16.375-6.25-22.625,0s-6.25,16.375 0,22.625l15.999,16z"),f.append("path").attr("class","error-icon").attr("d","m400,64c8.844,0 16-7.164 16-16v-32c0-8.836-7.156-16-16-16-8.844,0-16,7.164-16,16v32c0,8.836 7.156,16 16,16z"),f.append("path").attr("class","error-icon").attr("d","m496,96.586h-32c-8.844,0-16,7.164-16,16 0,8.836 7.156,16 16,16h32c8.844,0 16-7.164 16-16 0-8.836-7.156-16-16-16z"),f.append("path").attr("class","error-icon").attr("d","m436.98,75.605c3.125,3.125 7.219,4.688 11.313,4.688 4.094,0 8.188-1.563 11.313-4.688l32-32c6.25-6.25 6.25-16.375 0-22.625s-16.375-6.25-22.625,0l-32,32c-6.251,6.25-6.251,16.375-0.001,22.625z"),f.append("text").attr("class","error-text").attr("x",1440).attr("y",250).attr("font-size","150px").style("text-anchor","middle").text("Syntax error in graph"),f.append("text").attr("class","error-text").attr("x",1250).attr("y",400).attr("font-size","100px").style("text-anchor","middle").text("mermaid version "+o),l.attr("height",100),l.attr("width",500),l.attr("viewBox","768 0 912 512")}catch(l){Se.error("Error while rendering info diagram"),Se.error(cjt(l))}}},_Ie="flowchart-elk",Cen={id:_Ie,detector:(r,i)=>{var o;return!!(r.match(/^\s*flowchart-elk/)||r.match(/^\s*flowchart|graph/)&&((o=i==null?void 0:i.flowchart)==null?void 0:o.defaultRenderer)==="elk")},loader:async()=>{const{diagram:r}=await Promise.resolve().then(()=>gtn);return{id:_Ie,diagram:r}}},TIe="timeline",Sen={id:TIe,detector:r=>r.match(/^\s*timeline/)!==null,loader:async()=>{const{diagram:r}=await Promise.resolve().then(()=>Ntn);return{id:TIe,diagram:r}}},CIe="mindmap",Aen={id:CIe,detector:r=>r.match(/^\s*mindmap/)!==null,loader:async()=>{const{diagram:r}=await Promise.resolve().then(()=>Ahn);return{id:CIe,diagram:r}}};let SIe=!1;const iO=()=>{SIe||(SIe=!0,BCe(Cen,Sen,Aen),uf("error",{db:{clear:()=>{}},styles:Tae,renderer:iU,parser:{parser:{yy:{}},parse:()=>{}},init:()=>{}},r=>r.toLowerCase().trim()==="error"),uf("---",{db:{clear:()=>{}},styles:Tae,renderer:iU,parser:{parser:{yy:{}},parse:()=>{throw new Error("Diagrams beginning with --- are not valid. If you were trying to use a YAML front-matter, please ensure that you've correctly opened and closed the YAML front-matter with unindented `---` blocks")}},init:()=>null},r=>r.toLowerCase().trimStart().startsWith("---")),uf("c4",{parser:p$t,db:ASe,renderer:FSe,styles:pSe,init:r=>{FSe.setConf(r.c4)}},b$t),uf("class",{parser:RSe,db:iC,renderer:FWt,styles:hI,init:r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute,iC.clear()}},nHt),uf("classDiagram",{parser:RSe,db:iC,renderer:LKt,styles:hI,init:r=>{r.class||(r.class={}),r.class.arrowMarkerAbsolute=r.arrowMarkerAbsolute,iC.clear()}},rHt),uf("er",{parser:IKt,db:FKt,renderer:sXt,styles:cSe},OKt),uf("gantt",{parser:eQt,db:Zoe,renderer:IQt,styles:uSe},tQt),uf("info",{parser:OQt,db:NQt,renderer:PQt,styles:lSe},BQt),uf("pie",{parser:FQt,db:jQt,renderer:$Qt,styles:hSe},RQt),uf("requirement",{parser:HQt,db:GQt,renderer:XQt,styles:fSe},zQt),uf("sequence",{parser:QQt,db:MLe,renderer:$Le,styles:dSe,init:r=>{if(r.sequence||(r.sequence={}),r.sequence.arrowMarkerAbsolute=r.arrowMarkerAbsolute,"sequenceDiagram"in r)throw new Error("`mermaid config.sequenceDiagram` has been renamed to `config.sequence`. Please update your mermaid config.");MLe.setWrap(r.wrap),$Le.setConf(r.sequence)}},ZQt),uf("state",{parser:HLe,db:u4,renderer:$Jt,styles:YG,init:r=>{r.state||(r.state={}),r.state.arrowMarkerAbsolute=r.arrowMarkerAbsolute,u4.clear()}},ZZt),uf("stateDiagram",{parser:HLe,db:u4,renderer:sen,styles:YG,init:r=>{r.state||(r.state={}),r.state.arrowMarkerAbsolute=r.arrowMarkerAbsolute,u4.clear()}},JZt),uf("journey",{parser:aen,db:bIe,renderer:xIe,styles:gSe,init:r=>{xIe.setConf(r.journey),bIe.clear()}},oen),uf("flowchart",{parser:Soe,db:$m,renderer:$oe,styles:qG,init:r=>{r.flowchart||(r.flowchart={}),r.flowchart.arrowMarkerAbsolute=r.arrowMarkerAbsolute,ZXt.setConf(r.flowchart),$m.clear(),$m.setGen("gen-1")}},aXt),uf("flowchart-v2",{parser:Soe,db:$m,renderer:$oe,styles:qG,init:r=>{r.flowchart||(r.flowchart={}),r.flowchart.arrowMarkerAbsolute=r.arrowMarkerAbsolute,rSe({flowchart:{arrowMarkerAbsolute:r.arrowMarkerAbsolute}}),$oe.setConf(r.flowchart),$m.clear(),$m.setGen("gen-2")}},oXt),uf("gitGraph",{parser:$jt,db:a$t,renderer:d$t,styles:g$t},Hjt))};class Lce{constructor(i,o){CL(this,"type","graph");CL(this,"parser");CL(this,"renderer");CL(this,"db");CL(this,"detectTypeFailed",!1);var d,w;this.txt=i;const l=ht();this.txt=i;try{this.type=lae(i,l)}catch(y){this.handleError(y,o),this.type="error",this.detectTypeFailed=!0}const f=wSe(this.type);Se.debug("Type "+this.type),this.db=f.db,(w=(d=this.db).clear)==null||w.call(d),this.renderer=f.renderer,this.parser=f.parser;const b=this.parser.parse.bind(this.parser);this.parser.parse=y=>b($Ft(y,this.db)),this.parser.parser.yy=this.db,f.init&&(f.init(l),Se.info("Initialized diagram "+this.type,l)),this.txt+=`
-`,this.parse(this.txt,o)}parse(i,o){var l,f;if(this.detectTypeFailed)return!1;try{return i=i+`
-`,(f=(l=this.db).clear)==null||f.call(l),this.parser.parse(i),!0}catch(b){this.handleError(b,o)}return!1}handleError(i,o){if(o===void 0)throw i;if(bae(i)){o(i.str,i.hash);return}o(i)}getParser(){return this.parser}getType(){return this.type}}const Ice=(r,i)=>{const o=lae(r,ht());try{wSe(o)}catch{const f=GFt(o);if(!f)throw new Error(`Diagram ${o} not found.`);return f().then(({diagram:b})=>(uf(o,b,void 0),new Lce(r,i)))}return new Lce(r,i)},Oce=Lce,Men="graphics-document document";function Den(r,i){r.attr("role",Men),gC(i)||r.attr("aria-roledescription",i)}function Len(r,i,o,l){if(r.insert!==void 0)if(i||o){if(o){const f="chart-desc-"+l;r.attr("aria-describedby",f),r.insert("desc",":first-child").attr("id",f).text(o)}if(i){const f="chart-title-"+l;r.attr("aria-labelledby",f),r.insert("title",":first-child").attr("id",f).text(i)}}else return}const Nce=["graph","flowchart","flowchart-v2","stateDiagram","stateDiagram-v2"],AIe="graph TB;a[Maximum text size in diagram exceeded];style a fill:#faa",MIe="sandbox",DIe="loose",Ien="http://www.w3.org/2000/svg",LIe="http://www.w3.org/1999/xlink",IIe="http://www.w3.org/1999/xhtml",Oen="100%",Nen="100%",Pen="border:0;margin:0;",Ben="margin:0",Fen="allow-top-navigation-by-user-activation allow-popups",Ren='The "iframe" tag is not supported by your browser.',OIe=["foreignobject"],NIe=["dominant-baseline"];function jen(r,i){return iO(),new Oce(r,i).parse(r,i)}async function $en(r,i){return iO(),(await Ice(r,i)).parse(r,i)}const PIe=function(r){let i=r;return i=i.replace(/style.*:\S*#.*;/g,function(o){return o.substring(0,o.length-1)}),i=i.replace(/classDef.*:\S*#.*;/g,function(o){return o.substring(0,o.length-1)}),i=i.replace(/#\w+;/g,function(o){const l=o.substring(1,o.length-1);return/^\+?\d+$/.test(l)?"\uFB02\xB0\xB0"+l+"\xB6\xDF":"\uFB02\xB0"+l+"\xB6\xDF"}),i},Pce=function(r){let i=r;return i=i.replace(/fl°°/g,""),i=i.replace(/fl°/g,"&"),i=i.replace(/¶ß/g,";"),i},BIe=(r,i,o=[])=>`
-.${r} ${i} { ${o.join(" !important; ")} !important; }`,Hen=(r,i,o={})=>{var f;let l="";if(r.themeCSS!==void 0&&(l+=`
-${r.themeCSS}`),r.fontFamily!==void 0&&(l+=`
-:root { --mermaid-font-family: ${r.fontFamily}}`),r.altFontFamily!==void 0&&(l+=`
-:root { --mermaid-alt-font-family: ${r.altFontFamily}}`),!gC(o)&&Nce.includes(i)){const y=r.htmlLabels||((f=r.flowchart)==null?void 0:f.htmlLabels)?["> *","span"]:["rect","polygon","ellipse","circle","path"];for(const k in o){const E=o[k];gC(E.styles)||y.forEach(T=>{l+=BIe(E.id,T,E.styles)}),gC(E.textStyles)||(l+=BIe(E.id,"tspan",E.textStyles))}}return l},FIe=(r,i,o,l)=>{const f=Hen(r,i,o),b=Ojt(i,f,r.themeVariables);return Eae(xjt(`${l}{${b}}`),_jt)},RIe=(r="",i,o)=>{let l=r;return!o&&!i&&(l=l.replace(/marker-end="url\(.*?#/g,'marker-end="url(#')),l=Pce(l),l=l.replace(/
/g,"
"),l},jIe=(r="",i)=>{const o=i?i.viewBox.baseVal.height+"px":Nen,l=btoa(''+r+"");return``},sU=(r,i,o,l,f)=>{const b=r.append("div");b.attr("id",o),l&&b.attr("style",l);const d=b.append("svg").attr("id",i).attr("width","100%").attr("xmlns",Ien);return f&&d.attr("xmlns:xlink",f),d.append("g"),r};function aU(r,i){return r.append("iframe").attr("id",i).attr("style","width: 100%; height: 100%;").attr("sandbox","")}const $Ie=(r,i,o,l)=>{var f,b,d;(f=r.getElementById(i))==null||f.remove(),(b=r.getElementById(o))==null||b.remove(),(d=r.getElementById(l))==null||d.remove()},zen=function(r,i,o,l){var $,ge,ee,de,re;iO(),lI();const f=Fs.detectInit(i);f&&(Q8(f),_ae(f));const b=ht();Se.debug(b),i.length>(($=b==null?void 0:b.maxTextSize)!=null?$:5e4)&&(i=AIe),i=i.replace(/\r\n?/g,`
-`);const d="#"+r,w="i"+r,y="#"+w,k="d"+r,E="#"+k;let T=Cn("body");const C=b.securityLevel===MIe,S=b.securityLevel===DIe,L=b.fontFamily;if(l!==void 0){if(l&&(l.innerHTML=""),C){const ke=aU(Cn(l),w);T=Cn(ke.nodes()[0].contentDocument.body),T.node().style.margin=0}else T=Cn(l);sU(T,r,k,`font-family: ${L}`,LIe)}else{if($Ie(document,r,k,w),C){const ke=aU(Cn("body"),w);T=Cn(ke.nodes()[0].contentDocument.body),T.node().style.margin=0}else T=Cn("body");sU(T,r,k)}i=PIe(i);let O,B;try{if(O=Ice(i),"then"in O)throw new Error("Diagram is a promise. Use renderAsync.")}catch(ke){O=new Oce("error"),B=ke}const N=T.select(E).node(),F=O.type,R=N.firstChild,q=R.firstChild,X=Nce.includes(F)?O.renderer.getClasses(i,O):{},te=FIe(b,F,X,d),H=document.createElement("style");H.innerHTML=te,R.insertBefore(H,q);try{O.renderer.draw(i,r,VG.version,O)}catch(ke){throw iU.draw(i,r,VG.version),ke}const Y=T.select(`${E} svg`),z=(ee=(ge=O.db).getAccTitle)==null?void 0:ee.call(ge),W=(re=(de=O.db).getAccDescription)==null?void 0:re.call(de);HIe(F,Y,z,W),T.select(`[id="${r}"]`).selectAll("foreignobject > *").attr("xmlns",IIe);let Z=T.select(E).node().innerHTML;if(Se.debug("config.arrowMarkerAbsolute",b.arrowMarkerAbsolute),Z=RIe(Z,C,cf(b.arrowMarkerAbsolute)),C){const ke=T.select(E+" svg").node();Z=jIe(Z,ke)}else S||(Z=eI.sanitize(Z,{ADD_TAGS:OIe,ADD_ATTR:NIe}));if(o!==void 0)switch(F){case"flowchart":case"flowchart-v2":o(Z,$m.bindFunctions);break;case"gantt":o(Z,Zoe.bindFunctions);break;case"class":case"classDiagram":o(Z,iC.bindFunctions);break;default:o(Z)}else Se.debug("CB = undefined!");DLe();const ae=Cn(C?y:E).node();if(ae&&"remove"in ae&&ae.remove(),B)throw B;return Z},Gen=async function(r,i,o,l){var $,ge,ee,de,re;iO(),lI();const f=Fs.detectInit(i);f&&(Q8(f),_ae(f));const b=ht();Se.debug(b),i.length>(($=b==null?void 0:b.maxTextSize)!=null?$:5e4)&&(i=AIe),i=i.replace(/\r\n?/g,`
-`);const d="#"+r,w="i"+r,y="#"+w,k="d"+r,E="#"+k;let T=Cn("body");const C=b.securityLevel===MIe,S=b.securityLevel===DIe,L=b.fontFamily;if(l!==void 0){if(l&&(l.innerHTML=""),C){const ke=aU(Cn(l),w);T=Cn(ke.nodes()[0].contentDocument.body),T.node().style.margin=0}else T=Cn(l);sU(T,r,k,`font-family: ${L}`,LIe)}else{if($Ie(document,r,k,w),C){const ke=aU(Cn("body"),w);T=Cn(ke.nodes()[0].contentDocument.body),T.node().style.margin=0}else T=Cn("body");sU(T,r,k)}i=PIe(i);let O,B;try{O=await Ice(i)}catch(ke){O=new Oce("error"),B=ke}const N=T.select(E).node(),F=O.type,R=N.firstChild,q=R.firstChild,X=Nce.includes(F)?O.renderer.getClasses(i,O):{},te=FIe(b,F,X,d),H=document.createElement("style");H.innerHTML=te,R.insertBefore(H,q);try{await O.renderer.draw(i,r,VG.version,O)}catch(ke){throw iU.draw(i,r,VG.version),ke}const Y=T.select(`${E} svg`),z=(ee=(ge=O.db).getAccTitle)==null?void 0:ee.call(ge),W=(re=(de=O.db).getAccDescription)==null?void 0:re.call(de);HIe(F,Y,z,W),T.select(`[id="${r}"]`).selectAll("foreignobject > *").attr("xmlns",IIe);let Z=T.select(E).node().innerHTML;if(Se.debug("config.arrowMarkerAbsolute",b.arrowMarkerAbsolute),Z=RIe(Z,C,cf(b.arrowMarkerAbsolute)),C){const ke=T.select(E+" svg").node();Z=jIe(Z,ke)}else S||(Z=eI.sanitize(Z,{ADD_TAGS:OIe,ADD_ATTR:NIe}));if(o!==void 0)switch(F){case"flowchart":case"flowchart-v2":o(Z,$m.bindFunctions);break;case"gantt":o(Z,Zoe.bindFunctions);break;case"class":case"classDiagram":o(Z,iC.bindFunctions);break;default:o(Z)}else Se.debug("CB = undefined!");DLe();const ae=Cn(C?y:E).node();if(ae&&"remove"in ae&&ae.remove(),B)throw B;return Z};function Ven(r={}){var o;(r==null?void 0:r.fontFamily)&&!((o=r.themeVariables)!=null&&o.fontFamily)&&(r.themeVariables={fontFamily:r.fontFamily}),Cjt(r),(r==null?void 0:r.theme)&&r.theme in q3?r.themeVariables=q3[r.theme].getThemeVariables(r.themeVariables):r&&(r.themeVariables=q3.default.getThemeVariables(r.themeVariables));const i=typeof r=="object"?Tjt(r):nSe();Wie(i.logLevel),iO()}function HIe(r,i,o,l){Den(i,r),Len(i,o,l,i.attr("id"))}const Bu=Object.freeze({render:zen,renderAsync:Gen,parse:jen,parseAsync:$en,parseDirective:Mae,initialize:Ven,getConfig:ht,setConfig:rSe,getSiteConfig:nSe,updateSiteConfig:Sjt,reset:()=>{lI()},globalReset:()=>{lI(nC)},defaultConfig:nC});Wie(ht().logLevel),lI(ht());const Uen=async function(r,i,o){try{await GIe(r,i,o)}catch(l){Se.warn("Syntax Error rendering"),bae(l)&&Se.warn(l.str),F2.parseError&&F2.parseError(l)}},zIe=(r,i,o)=>{Se.warn(r),bae(r)?(o&&o(r.str,r.hash),i.push({...r,message:r.str,error:r})):(o&&o(r),r instanceof Error&&i.push({str:r.message,message:r.message,hash:r.name,error:r}))},qen=function(r,i,o){const l=Bu.getConfig();r&&(F2.sequenceConfig=r),Se.debug(`${o?"":"No "}Callback function found`);let f;if(i===void 0)f=document.querySelectorAll(".mermaid");else if(typeof i=="string")f=document.querySelectorAll(i);else if(i instanceof HTMLElement)f=[i];else if(i instanceof NodeList)f=i;else throw new Error("Invalid argument nodes for mermaid.init");Se.debug(`Found ${f.length} diagrams`),(r==null?void 0:r.startOnLoad)!==void 0&&(Se.debug("Start On Load: "+(r==null?void 0:r.startOnLoad)),Bu.updateSiteConfig({startOnLoad:r==null?void 0:r.startOnLoad}));const b=new Fs.initIdGenerator(l.deterministicIds,l.deterministicIDSeed);let d;const w=[];for(const y of Array.from(f)){Se.info("Rendering diagram: "+y.id);/*! Check if previously processed */if(y.getAttribute("data-processed"))continue;y.setAttribute("data-processed","true");const k=`mermaid-${b.next()}`;d=y.innerHTML,d=T2(Fs.entityDecode(d)).trim().replace(/
/gi,"
");const E=Fs.detectInit(d);E&&Se.debug("Detected early reinit: ",E);try{Bu.render(k,d,(T,C)=>{y.innerHTML=T,o!==void 0&&o(k),C&&C(y)},y)}catch(T){zIe(T,w,F2.parseError)}}if(w.length>0)throw w[0]},Yen=async(...r)=>{Se.debug(`Loading ${r.length} external diagrams`);const o=(await Promise.allSettled(r.map(async({id:l,detector:f,loader:b})=>{const{diagram:d}=await b();uf(l,d,f)}))).filter(l=>l.status==="rejected");if(o.length>0){Se.error(`Failed to load ${o.length} external diagrams`);for(const l of o)Se.error(l);throw new Error(`Failed to load ${o.length} external diagrams`)}},GIe=async function(r,i,o){const l=Bu.getConfig();r&&(F2.sequenceConfig=r),Se.debug(`${o?"":"No "}Callback function found`);let f;if(i===void 0)f=document.querySelectorAll(".mermaid");else if(typeof i=="string")f=document.querySelectorAll(i);else if(i instanceof HTMLElement)f=[i];else if(i instanceof NodeList)f=i;else throw new Error("Invalid argument nodes for mermaid.init");Se.debug(`Found ${f.length} diagrams`),(r==null?void 0:r.startOnLoad)!==void 0&&(Se.debug("Start On Load: "+(r==null?void 0:r.startOnLoad)),Bu.updateSiteConfig({startOnLoad:r==null?void 0:r.startOnLoad}));const b=new Fs.initIdGenerator(l.deterministicIds,l.deterministicIDSeed);let d;const w=[];for(const y of Array.from(f)){Se.info("Rendering diagram: "+y.id);/*! Check if previously processed */if(y.getAttribute("data-processed"))continue;y.setAttribute("data-processed","true");const k=`mermaid-${b.next()}`;d=y.innerHTML,d=T2(Fs.entityDecode(d)).trim().replace(/
/gi,"
");const E=Fs.detectInit(d);E&&Se.debug("Detected early reinit: ",E);try{await Bu.renderAsync(k,d,(T,C)=>{y.innerHTML=T,o!==void 0&&o(k),C&&C(y)},y)}catch(T){zIe(T,w,F2.parseError)}}if(w.length>0)throw w[0]},Wen=function(r){Bu.initialize(r)},Ken=async(r,{lazyLoad:i=!0}={})=>{i?BCe(...r):await Yen(...r)},VIe=function(){if(F2.startOnLoad){const{startOnLoad:r}=Bu.getConfig();r&&F2.init().catch(i=>Se.error("Mermaid failed to initialize",i))}};if(typeof document<"u"){/*!
- * Wait for document loaded before starting the execution
- */window.addEventListener("load",VIe,!1)}const Xen=function(r){F2.parseError=r},Qen=r=>Bu.parse(r,F2.parseError),oU=[];let Bce=!1;const UIe=async()=>{if(!Bce){for(Bce=!0;oU.length>0;){const r=oU.shift();if(r)try{await r()}catch(i){Se.error("Error executing queue",i)}}Bce=!1}},Zen=r=>new Promise((i,o)=>{const l=()=>new Promise((f,b)=>{Bu.parseAsync(r,F2.parseError).then(d=>{f(d),i(d)},d=>{Se.error("Error parsing",d),b(d),o(d)})});oU.push(l),UIe().catch(o)}),Jen=(r,i,o,l)=>new Promise((f,b)=>{const d=()=>new Promise((w,y)=>{Bu.renderAsync(r,i,o,l).then(k=>{w(k),f(k)},k=>{Se.error("Error parsing",k),y(k),b(k)})});oU.push(d),UIe().catch(b)}),F2={startOnLoad:!0,diagrams:{},mermaidAPI:Bu,parse:Qen,parseAsync:Zen,render:Bu.render,renderAsync:Jen,init:Uen,initThrowsErrors:qen,initThrowsErrorsAsync:GIe,registerExternalDiagrams:Ken,initialize:Wen,parseError:void 0,contentLoaded:VIe,setParseErrorHandler:Xen},etn=(r,i,o)=>{const{parentById:l}=o,f=new Set;let b=r;for(;b;){if(f.add(b),b===i)return b;b=l[b]}for(b=i;b;){if(f.has(b))return b;b=l[b]}return"root"};function cU(r){throw new Error('Could not dynamically require "'+r+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var qIe={exports:{}};(function(r,i){(function(o){r.exports=o()})(function(){return function(){function o(l,f,b){function d(k,E){if(!f[k]){if(!l[k]){var T=typeof cU=="function"&&cU;if(!E&&T)return T(k,!0);if(w)return w(k,!0);var C=new Error("Cannot find module '"+k+"'");throw C.code="MODULE_NOT_FOUND",C}var S=f[k]={exports:{}};l[k][0].call(S.exports,function(L){var O=l[k][1][L];return d(O||L)},S,S.exports,o,l,f,b)}return f[k].exports}for(var w=typeof cU=="function"&&cU,y=0;y0&&arguments[0]!==void 0?arguments[0]:{},C=T.defaultLayoutOptions,S=C===void 0?{}:C,L=T.algorithms,O=L===void 0?["layered","stress","mrtree","radial","force","disco","sporeOverlap","sporeCompaction","rectpacking"]:L,B=T.workerFactory,N=T.workerUrl;if(d(this,k),this.defaultLayoutOptions=S,this.initialized=!1,typeof N>"u"&&typeof B>"u")throw new Error("Cannot construct an ELK without both 'workerUrl' and 'workerFactory'.");var F=B;typeof N<"u"&&typeof B>"u"&&(F=function(X){return new Worker(X)});var R=F(N);if(typeof R.postMessage!="function")throw new TypeError("Created worker does not provide the required 'postMessage' function.");this.worker=new y(R),this.worker.postMessage({cmd:"register",algorithms:O}).then(function(q){return E.initialized=!0}).catch(console.err)}return b(k,[{key:"layout",value:function(T){var C=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},S=C.layoutOptions,L=S===void 0?this.defaultLayoutOptions:S,O=C.logging,B=O===void 0?!1:O,N=C.measureExecutionTime,F=N===void 0?!1:N;return T?this.worker.postMessage({cmd:"layout",graph:T,layoutOptions:L,options:{logging:B,measureExecutionTime:F}}):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()}}]),k}();f.default=w;var y=function(){function k(E){var T=this;if(d(this,k),E===void 0)throw new Error("Missing mandatory parameter 'worker'.");this.resolvers={},this.worker=E,this.worker.onmessage=function(C){setTimeout(function(){T.receive(T,C)},0)}}return b(k,[{key:"postMessage",value:function(T){var C=this.id||0;this.id=C+1,T.id=C;var S=this;return new Promise(function(L,O){S.resolvers[C]=function(B,N){B?(S.convertGwtStyleError(B),O(B)):L(N)},S.worker.postMessage(T)})}},{key:"receive",value:function(T,C){var S=C.data,L=T.resolvers[S.id];L&&(delete T.resolvers[S.id],S.error?L(S.error):L(null,S.data))}},{key:"terminate",value:function(){this.worker.terminate&&this.worker.terminate()}},{key:"convertGwtStyleError",value:function(T){if(!!T){var C=T.__java$exception;C&&(C.cause&&C.cause.backingJsObject&&(T.cause=C.cause.backingJsObject,this.convertGwtStyleError(T.cause)),delete T.__java$exception)}}}]),k}()},{}],2:[function(o,l,f){(function(b){(function(){var d;typeof window<"u"?d=window:typeof b<"u"?d=b:typeof self<"u"&&(d=self);var w;function y(){}function k(){}function E(){}function T(){}function C(){}function S(){}function L(){}function O(){}function B(){}function N(){}function F(){}function R(){}function q(){}function X(){}function te(){}function H(){}function Y(){}function z(){}function W(){}function Z(){}function G(){}function ae(){}function $(){}function ge(){}function ee(){}function de(){}function re(){}function ke(){}function Ce(){}function _e(){}function Te(){}function Be(){}function Ge(){}function Xe(){}function Ee(){}function Ze(){}function Ie(){}function Oe(){}function Le(){}function $e(){}function xe(){}function Ae(){}function je(){}function me(){}function vt(){}function ve(){}function Zt(){}function nt(){}function xn(){}function cn(){}function jt(){}function ot(){}function be(){}function We(){}function ct(){}function Yt(){}function Ut(){}function Wn(){}function Gt(){}function Rn(){}function si(){}function $r(){}function nr(){}function Kn(){}function Jt(){}function en(){}function In(){}function hn(){}function Fr(){}function Pt(){}function ei(){}function nn(){}function hi(){}function Hi(){}function ss(){}function ls(){}function vs(){}function ti(){}function zi(){}function as(){}function ai(){}function hc(){}function xu(){}function No(){}function Si(){}function Yc(){}function lh(){}function su(){}function Ru(){}function fc(){}function Ll(){}function ol(){}function Ur(){}function bt(){}function $n(){}function Er(){}function Ss(){}function wo(){}function Po(){}function Ra(){}function Eu(){}function Lc(){}function bd(){}function hh(){}function tg(){}function Di(){}function Bi(){}function ra(){}function Rr(){}function au(){}function gt(){}function O6(){}function It(){}function n0(){}function jO(){}function rq(){}function tS(){}function iq(){}function fh(){}function Qm(){}function nS(){}function rS(){}function $O(){}function sq(){}function D1(){}function Zm(){}function r0(){}function iS(){}function w4(){}function M7(){}function H2(){}function HO(){}function D7(){}function sS(){}function z2(){}function _Be(){}function TBe(){}function aq(){}function CBe(){}function SBe(){}function ABe(){}function MBe(){}function DBe(){}function $ue(){}function LBe(){}function IBe(){}function OBe(){}function NBe(){}function PBe(){}function BBe(){}function FBe(){}function RBe(){}function jBe(){}function $Be(){}function HBe(){}function zBe(){}function GBe(){}function VBe(){}function UBe(){}function qBe(){}function YBe(){}function WBe(){}function KBe(){}function XBe(){}function QBe(){}function ZBe(){}function JBe(){}function eFe(){}function tFe(){}function nFe(){}function rFe(){}function iFe(){}function sFe(){}function aFe(){}function oFe(){}function cFe(){}function uFe(){}function lFe(){}function hFe(){}function fFe(){}function dFe(){}function gFe(){}function pFe(){}function bFe(){}function vFe(){}function wFe(){}function mFe(){}function yFe(){}function kFe(){}function xFe(){}function EFe(){}function _Fe(){}function TFe(){}function CFe(){}function SFe(){}function AFe(){}function MFe(){}function DFe(){}function LFe(){}function IFe(){}function OFe(){}function NFe(){}function PFe(){}function BFe(){}function FFe(){}function RFe(){}function jFe(){}function $Fe(){}function HFe(){}function zFe(){}function GFe(){}function VFe(){}function UFe(){}function qFe(){}function YFe(){}function WFe(){}function KFe(){}function XFe(){}function QFe(){}function ZFe(){}function JFe(){}function eRe(){}function tRe(){}function nRe(){}function rRe(){}function iRe(){}function sRe(){}function aRe(){}function oRe(){}function cRe(){}function uRe(){}function lRe(){}function hRe(){}function fRe(){}function dRe(){}function gRe(){}function pRe(){}function bRe(){}function vRe(){}function wRe(){}function mRe(){}function yRe(){}function kRe(){}function xRe(){}function Hue(){}function ERe(){}function _Re(){}function TRe(){}function CRe(){}function SRe(){}function ARe(){}function MRe(){}function DRe(){}function LRe(){}function IRe(){}function ORe(){}function NRe(){}function PRe(){}function BRe(){}function FRe(){}function RRe(){}function jRe(){}function $Re(){}function HRe(){}function zRe(){}function GRe(){}function VRe(){}function URe(){}function qRe(){}function YRe(){}function WRe(){}function KRe(){}function XRe(){}function QRe(){}function ZRe(){}function JRe(){}function eje(){}function tje(){}function nje(){}function rje(){}function ije(){}function sje(){}function aje(){}function oje(){}function cje(){}function uje(){}function lje(){}function hje(){}function fje(){}function dje(){}function gje(){}function pje(){}function bje(){}function vje(){}function wje(){}function mje(){}function yje(){}function kje(){}function xje(){}function Eje(){}function _je(){}function Tje(){}function Cje(){}function Sje(){}function Aje(){}function Mje(){}function Dje(){}function Lje(){}function Ije(){}function Oje(){}function Nje(){}function Pje(){}function zue(){}function Bje(){}function Fje(){}function Rje(){}function jje(){}function $je(){}function Hje(){}function zje(){}function Gje(){}function Vje(){}function Uje(){}function qje(){}function Yje(){}function Wje(){}function Kje(){}function Xje(){}function Qje(){}function Zje(){}function Jje(){}function e$e(){}function t$e(){}function Gue(){}function n$e(){}function r$e(){}function i$e(){}function s$e(){}function a$e(){}function o$e(){}function Vue(){}function Uue(){}function c$e(){}function que(){}function Yue(){}function u$e(){}function l$e(){}function h$e(){}function f$e(){}function d$e(){}function g$e(){}function p$e(){}function b$e(){}function v$e(){}function Wue(){}function w$e(){}function m$e(){}function y$e(){}function k$e(){}function x$e(){}function E$e(){}function _$e(){}function T$e(){}function C$e(){}function S$e(){}function A$e(){}function M$e(){}function D$e(){}function L$e(){}function I$e(){}function O$e(){}function N$e(){}function P$e(){}function B$e(){}function F$e(){}function R$e(){}function j$e(){}function $$e(){}function H$e(){}function z$e(){}function G$e(){}function V$e(){}function U$e(){}function q$e(){}function Y$e(){}function W$e(){}function K$e(){}function X$e(){}function Q$e(){}function Z$e(){}function J$e(){}function eHe(){}function tHe(){}function nHe(){}function rHe(){}function iHe(){}function sHe(){}function aHe(){}function oHe(){}function cHe(){}function uHe(){}function lHe(){}function hHe(){}function fHe(){}function dHe(){}function gHe(){}function pHe(){}function bHe(){}function vHe(){}function wHe(){}function mHe(){}function yHe(){}function kHe(){}function xHe(){}function EHe(){}function _He(){}function THe(){}function CHe(){}function SHe(){}function AHe(){}function MHe(){}function DHe(){}function LHe(){}function oq(){}function cq(){}function uq(){}function IHe(){}function OHe(){}function NHe(){}function PHe(){}function BHe(){}function Kue(){}function FHe(){}function RHe(){}function Mhn(){}function jHe(){}function $He(){}function HHe(){}function zHe(){}function GHe(){}function VHe(){}function UHe(){}function mp(){}function qHe(){}function m4(){}function Xue(){}function YHe(){}function WHe(){}function KHe(){}function XHe(){}function QHe(){}function ZHe(){}function JHe(){}function eze(){}function tze(){}function nze(){}function rze(){}function ize(){}function sze(){}function aze(){}function oze(){}function cze(){}function uze(){}function lze(){}function hze(){}function fze(){}function dze(){}function yt(){}function gze(){}function pze(){}function bze(){}function vze(){}function wze(){}function mze(){}function yze(){}function kze(){}function xze(){}function Eze(){}function lq(){}function _ze(){}function Tze(){}function Cze(){}function Sze(){}function Aze(){}function Que(){}function zO(){}function GO(){}function Mze(){}function Zue(){}function VO(){}function Dze(){}function Lze(){}function Ize(){}function Oze(){}function Nze(){}function Pze(){}function UO(){}function Bze(){}function Fze(){}function Rze(){}function qO(){}function jze(){}function Jue(){}function $ze(){}function hq(){}function ele(){}function Hze(){}function zze(){}function Gze(){}function Vze(){}function Dhn(){}function Uze(){}function qze(){}function Yze(){}function Wze(){}function Kze(){}function Xze(){}function Qze(){}function Zze(){}function Jze(){}function eGe(){}function N6(){}function fq(){}function tGe(){}function nGe(){}function rGe(){}function iGe(){}function sGe(){}function aGe(){}function oGe(){}function cGe(){}function uGe(){}function lGe(){}function hGe(){}function fGe(){}function dGe(){}function gGe(){}function pGe(){}function bGe(){}function vGe(){}function wGe(){}function mGe(){}function yGe(){}function kGe(){}function xGe(){}function EGe(){}function _Ge(){}function TGe(){}function CGe(){}function SGe(){}function AGe(){}function MGe(){}function DGe(){}function LGe(){}function IGe(){}function OGe(){}function NGe(){}function PGe(){}function BGe(){}function FGe(){}function RGe(){}function jGe(){}function $Ge(){}function HGe(){}function zGe(){}function GGe(){}function VGe(){}function UGe(){}function qGe(){}function YGe(){}function WGe(){}function KGe(){}function XGe(){}function QGe(){}function ZGe(){}function JGe(){}function eVe(){}function tVe(){}function nVe(){}function rVe(){}function iVe(){}function sVe(){}function aVe(){}function oVe(){}function cVe(){}function uVe(){}function lVe(){}function hVe(){}function fVe(){}function dVe(){}function gVe(){}function pVe(){}function bVe(){}function vVe(){}function wVe(){}function mVe(){}function yVe(){}function kVe(){}function xVe(){}function EVe(){}function _Ve(){}function TVe(){}function CVe(){}function SVe(){}function AVe(){}function MVe(){}function DVe(){}function LVe(){}function IVe(){}function OVe(){}function NVe(){}function PVe(){}function BVe(){}function FVe(){}function RVe(){}function jVe(){}function $Ve(){}function HVe(){}function zVe(){}function GVe(){}function VVe(){}function UVe(){}function qVe(){}function YVe(){}function tle(){}function WVe(){}function KVe(){}function dq(){F7()}function XVe(){sX()}function QVe(){l9()}function ZVe(){HF()}function JVe(){ebe()}function eUe(){Jh()}function tUe(){h2e()}function nUe(){sM()}function rUe(){_S()}function iUe(){ES()}function sUe(){XS()}function aUe(){cZe()}function oUe(){t5()}function cUe(){xN()}function uUe(){kot()}function lUe(){Nut()}function hUe(){Jot()}function fUe(){bst()}function dUe(){Uk()}function gUe(){Mg()}function pUe(){Put()}function bUe(){uat()}function vUe(){Yve()}function wUe(){x1t()}function mUe(){vst()}function yUe(){tt()}function kUe(){pst()}function xUe(){But()}function EUe(){jlt()}function _Ue(){mst()}function TUe(){ict()}function CUe(){uZe()}function SUe(){Pbe()}function AUe(){Cw()}function MUe(){ult()}function DUe(){uM()}function LUe(){NQ()}function IUe(){HX()}function OUe(){Fb()}function NUe(){Lge()}function PUe(){wst()}function BUe(){Dpt()}function FUe(){Ibe()}function RUe(){CQ()}function jUe(){CB()}function $Ue(){WF()}function nle(){Tr()}function HUe(){uF()}function zUe(){jpe()}function rle(){dR()}function Gh(){snt()}function ile(){GK()}function GUe(){mve()}function sle(e){rn(e)}function VUe(e){this.a=e}function YO(e){this.a=e}function UUe(e){this.a=e}function qUe(e){this.a=e}function YUe(e){this.a=e}function WUe(e){this.a=e}function KUe(e){this.a=e}function XUe(e){this.a=e}function ale(e){this.a=e}function ole(e){this.a=e}function QUe(e){this.a=e}function gq(e){this.a=e}function ZUe(e){this.a=e}function pq(e){this.a=e}function JUe(e){this.a=e}function bq(e){this.a=e}function eqe(e){this.a=e}function vq(e){this.a=e}function tqe(e){this.a=e}function nqe(e){this.a=e}function rqe(e){this.a=e}function cle(e){this.b=e}function iqe(e){this.c=e}function sqe(e){this.a=e}function aqe(e){this.a=e}function oqe(e){this.a=e}function cqe(e){this.a=e}function uqe(e){this.a=e}function lqe(e){this.a=e}function hqe(e){this.a=e}function fqe(e){this.a=e}function dqe(e){this.a=e}function gqe(e){this.a=e}function pqe(e){this.a=e}function bqe(e){this.a=e}function vqe(e){this.a=e}function ule(e){this.a=e}function lle(e){this.a=e}function WO(e){this.a=e}function aS(e){this.a=e}function yp(){this.a=[]}function wqe(e,t){e.a=t}function Lhn(e,t){e.a=t}function Ihn(e,t){e.b=t}function Ohn(e,t){e.b=t}function Nhn(e,t){e.b=t}function hle(e,t){e.j=t}function Phn(e,t){e.g=t}function Bhn(e,t){e.i=t}function Fhn(e,t){e.c=t}function Rhn(e,t){e.d=t}function jhn(e,t){e.d=t}function $hn(e,t){e.c=t}function kp(e,t){e.k=t}function Hhn(e,t){e.c=t}function fle(e,t){e.c=t}function dle(e,t){e.a=t}function zhn(e,t){e.a=t}function Ghn(e,t){e.f=t}function Vhn(e,t){e.a=t}function Uhn(e,t){e.b=t}function wq(e,t){e.d=t}function KO(e,t){e.i=t}function gle(e,t){e.o=t}function qhn(e,t){e.r=t}function Yhn(e,t){e.a=t}function Whn(e,t){e.b=t}function mqe(e,t){e.e=t}function Khn(e,t){e.f=t}function ple(e,t){e.g=t}function Xhn(e,t){e.e=t}function Qhn(e,t){e.f=t}function Zhn(e,t){e.f=t}function Jhn(e,t){e.n=t}function efn(e,t){e.a=t}function tfn(e,t){e.a=t}function nfn(e,t){e.c=t}function rfn(e,t){e.c=t}function ifn(e,t){e.d=t}function sfn(e,t){e.e=t}function afn(e,t){e.g=t}function ofn(e,t){e.a=t}function cfn(e,t){e.c=t}function ufn(e,t){e.d=t}function lfn(e,t){e.e=t}function hfn(e,t){e.f=t}function ffn(e,t){e.j=t}function dfn(e,t){e.a=t}function gfn(e,t){e.b=t}function pfn(e,t){e.a=t}function yqe(e){e.b=e.a}function kqe(e){e.c=e.d.d}function L7(e){this.d=e}function xp(e){this.a=e}function P6(e){this.a=e}function ble(e){this.a=e}function vd(e){this.a=e}function oS(e){this.a=e}function xqe(e){this.a=e}function vle(e){this.a=e}function cS(e){this.a=e}function wle(e){this.a=e}function mle(e){this.a=e}function yle(e){this.a=e}function qv(e){this.a=e}function uS(e){this.a=e}function lS(e){this.a=e}function kle(e){this.b=e}function B6(e){this.b=e}function F6(e){this.b=e}function mq(e){this.a=e}function Eqe(e){this.a=e}function xle(e){this.a=e}function yq(e){this.c=e}function Q(e){this.c=e}function _qe(e){this.c=e}function Ele(e){this.a=e}function _le(e){this.a=e}function Tle(e){this.a=e}function Cle(e){this.a=e}function Hr(e){this.a=e}function Tqe(e){this.a=e}function Sle(e){this.a=e}function Ale(e){this.a=e}function Cqe(e){this.a=e}function Sqe(e){this.a=e}function I7(e){this.a=e}function Aqe(e){this.a=e}function Mqe(e){this.a=e}function Dqe(e){this.a=e}function Lqe(e){this.a=e}function Iqe(e){this.a=e}function Oqe(e){this.a=e}function Nqe(e){this.a=e}function Pqe(e){this.a=e}function Bqe(e){this.a=e}function Fqe(e){this.a=e}function Rqe(e){this.a=e}function jqe(e){this.a=e}function $qe(e){this.a=e}function Hqe(e){this.a=e}function zqe(e){this.a=e}function Gqe(e){this.a=e}function Vqe(e){this.a=e}function hS(e){this.a=e}function Uqe(e){this.a=e}function qqe(e){this.a=e}function XO(e){this.a=e}function Yqe(e){this.a=e}function Wqe(e){this.a=e}function R6(e){this.a=e}function Mle(e){this.a=e}function Kqe(e){this.a=e}function Xqe(e){this.a=e}function Qqe(e){this.a=e}function Zqe(e){this.a=e}function Jqe(e){this.a=e}function Dle(e){this.a=e}function Lle(e){this.a=e}function Ile(e){this.a=e}function QO(e){this.a=e}function ZO(e){this.e=e}function j6(e){this.a=e}function eYe(e){this.a=e}function y4(e){this.a=e}function Ole(e){this.a=e}function tYe(e){this.a=e}function nYe(e){this.a=e}function rYe(e){this.a=e}function iYe(e){this.a=e}function sYe(e){this.a=e}function aYe(e){this.a=e}function oYe(e){this.a=e}function cYe(e){this.a=e}function uYe(e){this.a=e}function lYe(e){this.a=e}function hYe(e){this.a=e}function Nle(e){this.a=e}function fYe(e){this.a=e}function dYe(e){this.a=e}function gYe(e){this.a=e}function pYe(e){this.a=e}function bYe(e){this.a=e}function vYe(e){this.a=e}function wYe(e){this.a=e}function mYe(e){this.a=e}function yYe(e){this.a=e}function kYe(e){this.a=e}function xYe(e){this.a=e}function EYe(e){this.a=e}function _Ye(e){this.a=e}function TYe(e){this.a=e}function CYe(e){this.a=e}function SYe(e){this.a=e}function AYe(e){this.a=e}function MYe(e){this.a=e}function DYe(e){this.a=e}function LYe(e){this.a=e}function IYe(e){this.a=e}function OYe(e){this.a=e}function NYe(e){this.a=e}function PYe(e){this.a=e}function BYe(e){this.a=e}function FYe(e){this.a=e}function RYe(e){this.a=e}function jYe(e){this.a=e}function $Ye(e){this.a=e}function HYe(e){this.a=e}function zYe(e){this.a=e}function GYe(e){this.a=e}function VYe(e){this.a=e}function UYe(e){this.a=e}function qYe(e){this.a=e}function YYe(e){this.a=e}function WYe(e){this.a=e}function KYe(e){this.c=e}function XYe(e){this.b=e}function QYe(e){this.a=e}function ZYe(e){this.a=e}function JYe(e){this.a=e}function eWe(e){this.a=e}function tWe(e){this.a=e}function nWe(e){this.a=e}function rWe(e){this.a=e}function iWe(e){this.a=e}function sWe(e){this.a=e}function aWe(e){this.a=e}function oWe(e){this.a=e}function cWe(e){this.a=e}function uWe(e){this.a=e}function lWe(e){this.a=e}function hWe(e){this.a=e}function fWe(e){this.a=e}function dWe(e){this.a=e}function gWe(e){this.a=e}function pWe(e){this.a=e}function bWe(e){this.a=e}function vWe(e){this.a=e}function wWe(e){this.a=e}function mWe(e){this.a=e}function yWe(e){this.a=e}function ng(e){this.a=e}function k4(e){this.a=e}function kWe(e){this.a=e}function xWe(e){this.a=e}function EWe(e){this.a=e}function _We(e){this.a=e}function TWe(e){this.a=e}function CWe(e){this.a=e}function SWe(e){this.a=e}function AWe(e){this.a=e}function MWe(e){this.a=e}function DWe(e){this.a=e}function LWe(e){this.a=e}function IWe(e){this.a=e}function OWe(e){this.a=e}function NWe(e){this.a=e}function PWe(e){this.a=e}function BWe(e){this.a=e}function JO(e){this.a=e}function FWe(e){this.a=e}function RWe(e){this.a=e}function jWe(e){this.a=e}function $We(e){this.a=e}function HWe(e){this.a=e}function zWe(e){this.a=e}function GWe(e){this.a=e}function VWe(e){this.a=e}function UWe(e){this.a=e}function qWe(e){this.a=e}function YWe(e){this.a=e}function WWe(e){this.a=e}function KWe(e){this.a=e}function XWe(e){this.a=e}function QWe(e){this.a=e}function ZWe(e){this.a=e}function JWe(e){this.a=e}function eKe(e){this.a=e}function tKe(e){this.a=e}function nKe(e){this.a=e}function rKe(e){this.a=e}function iKe(e){this.a=e}function sKe(e){this.a=e}function aKe(e){this.a=e}function oKe(e){this.a=e}function cKe(e){this.a=e}function uKe(e){this.a=e}function lKe(e){this.a=e}function Ple(e){this.a=e}function Xr(e){this.b=e}function hKe(e){this.f=e}function Ble(e){this.a=e}function fKe(e){this.a=e}function dKe(e){this.a=e}function gKe(e){this.a=e}function pKe(e){this.a=e}function bKe(e){this.a=e}function vKe(e){this.a=e}function wKe(e){this.a=e}function mKe(e){this.a=e}function fS(e){this.a=e}function yKe(e){this.a=e}function kKe(e){this.b=e}function Fle(e){this.c=e}function eN(e){this.e=e}function xKe(e){this.a=e}function tN(e){this.a=e}function nN(e){this.a=e}function kq(e){this.a=e}function EKe(e){this.a=e}function _Ke(e){this.d=e}function Rle(e){this.a=e}function jle(e){this.a=e}function G2(e){this.e=e}function dS(){this.a=0}function Jm(){ret(this)}function qe(){SY(this)}function zn(){Kc(this)}function xq(){uit(this)}function TKe(){}function V2(){this.c=yEe}function bfn(e,t){t.Wb(e)}function CKe(e,t){e.b+=t}function SKe(e){e.b=new jq}function ne(e){return e.e}function vfn(e){return e.a}function wfn(e){return e.a}function mfn(e){return e.a}function yfn(e){return e.a}function kfn(e){return e.a}function xfn(){return null}function Efn(){return null}function _fn(){The(),PNn()}function Tfn(e){e.b.tf(e.e)}function O7(e,t){e.b=t-e.b}function N7(e,t){e.a=t-e.a}function AKe(e,t){t.ad(e.a)}function Cfn(e,t){Ji(t,e)}function Sfn(e,t,n){e.Od(n,t)}function gS(e,t){e.e=t,t.b=e}function $le(e){t1(),this.a=e}function MKe(e){t1(),this.a=e}function DKe(e){t1(),this.a=e}function Hle(e){lw(),this.a=e}function LKe(e){bk(),ete.be(e)}function Ep(){zet.call(this)}function zle(){zet.call(this)}function Gle(){Ep.call(this)}function Eq(){Ep.call(this)}function IKe(){Ep.call(this)}function pS(){Ep.call(this)}function Ic(){Ep.call(this)}function P7(){Ep.call(this)}function Xn(){Ep.call(this)}function cl(){Ep.call(this)}function OKe(){Ep.call(this)}function lo(){Ep.call(this)}function NKe(){Ep.call(this)}function PKe(){this.a=this}function rN(){this.Bb|=256}function BKe(){this.b=new RJe}function Vle(){Vle=re,new zn}function Ule(){Gle.call(this)}function FKe(e,t){e.length=t}function iN(e,t){Ue(e.a,t)}function Afn(e,t){nbe(e.c,t)}function Mfn(e,t){Qi(e.b,t)}function Dfn(e,t){PF(e.a,t)}function Lfn(e,t){gX(e.a,t)}function $6(e,t){Or(e.e,t)}function x4(e){QF(e.c,e.b)}function Ifn(e,t){e.kc().Nb(t)}function qle(e){this.a=Dkn(e)}function ns(){this.a=new zn}function RKe(){this.a=new zn}function sN(){this.a=new qe}function _q(){this.a=new qe}function Yle(){this.a=new qe}function Il(){this.a=new ei}function _p(){this.a=new vot}function Wle(){this.a=new tS}function Kle(){this.a=new eZe}function jKe(){this.a=new Vst}function Xle(){this.a=new ast}function Qle(){this.a=new Dtt}function $Ke(){this.a=new qe}function Zle(){this.a=new qe}function HKe(){this.a=new qe}function zKe(){this.a=new qe}function GKe(){this.d=new qe}function VKe(){this.a=new ns}function UKe(){this.a=new zn}function qKe(){this.b=new zn}function YKe(){this.b=new qe}function Jle(){this.e=new qe}function WKe(){this.d=new qe}function KKe(){this.a=new gUe}function XKe(){qe.call(this)}function ehe(){sN.call(this)}function QKe(){gP.call(this)}function ZKe(){Zle.call(this)}function Tq(){B7.call(this)}function B7(){TKe.call(this)}function E4(){TKe.call(this)}function the(){E4.call(this)}function JKe(){Fit.call(this)}function eXe(){Fit.call(this)}function tXe(){che.call(this)}function nXe(){che.call(this)}function rXe(){che.call(this)}function iXe(){uhe.call(this)}function Oc(){di.call(this)}function nhe(){Aze.call(this)}function rhe(){Aze.call(this)}function sXe(){kXe.call(this)}function aXe(){kXe.call(this)}function oXe(){zn.call(this)}function cXe(){zn.call(this)}function uXe(){zn.call(this)}function lXe(){ns.call(this)}function Cq(){Lut.call(this)}function hXe(){rN.call(this)}function Sq(){Ofe.call(this)}function Aq(){Ofe.call(this)}function ihe(){zn.call(this)}function Mq(){zn.call(this)}function fXe(){zn.call(this)}function she(){qO.call(this)}function dXe(){qO.call(this)}function gXe(){she.call(this)}function pXe(){tle.call(this)}function bXe(e){nut.call(this,e)}function vXe(e){nut.call(this,e)}function ahe(e){ale.call(this,e)}function ohe(e){VQe.call(this,e)}function Ofn(e){ohe.call(this,e)}function Nfn(e){VQe.call(this,e)}function H6(){this.a=new di}function che(){this.a=new ns}function uhe(){this.a=new zn}function wXe(){this.a=new qe}function mXe(){this.j=new qe}function lhe(){this.a=new MHe}function yXe(){this.a=new pQe}function kXe(){this.a=new Rze}function Dq(){Dq=re,Wee=new jXe}function Lq(){Lq=re,Yee=new RXe}function F7(){F7=re,qee=new k}function aN(){aN=re,Qee=new $et}function Pfn(e){ohe.call(this,e)}function Bfn(e){ohe.call(this,e)}function xXe(e){oK.call(this,e)}function EXe(e){oK.call(this,e)}function _Xe(e){Ztt.call(this,e)}function Iq(e){n_n.call(this,e)}function U2(e){Xv.call(this,e)}function R7(e){wN.call(this,e)}function hhe(e){wN.call(this,e)}function TXe(e){wN.call(this,e)}function Ya(e){frt.call(this,e)}function CXe(e){Ya.call(this,e)}function _4(){aS.call(this,{})}function oN(e){tk(),this.a=e}function j7(e){e.b=null,e.c=0}function Ffn(e,t){e.e=t,Mgt(e,t)}function Rfn(e,t){e.a=t,z_n(e)}function Oq(e,t,n){e.a[t.g]=n}function jfn(e,t,n){iEn(n,e,t)}function $fn(e,t){hgn(t.i,e.n)}function SXe(e,t){f6n(e).td(t)}function Hfn(e,t){return e*e/t}function AXe(e,t){return e.g-t.g}function zfn(e){return new WO(e)}function Gfn(e){return new uw(e)}function cN(e){Ya.call(this,e)}function Ea(e){Ya.call(this,e)}function MXe(e){Ya.call(this,e)}function Nq(e){frt.call(this,e)}function Pq(e){Mge(),this.a=e}function DXe(e){int(),this.a=e}function Yv(e){hW(),this.f=e}function Bq(e){hW(),this.f=e}function z6(e){Ya.call(this,e)}function an(e){Ya.call(this,e)}function ja(e){Ya.call(this,e)}function LXe(e){Ya.call(this,e)}function T4(e){Ya.call(this,e)}function ft(e){return rn(e),e}function Pe(e){return rn(e),e}function bS(e){return rn(e),e}function fhe(e){return rn(e),e}function Vfn(e){return rn(e),e}function $7(e){return e.b==e.c}function Wv(e){return!!e&&e.b}function Ufn(e){return!!e&&e.k}function qfn(e){return!!e&&e.j}function _u(e){rn(e),this.a=e}function dhe(e){return zp(e),e}function H7(e){Tde(e,e.length)}function i0(e){Ya.call(this,e)}function Xf(e){Ya.call(this,e)}function Fq(e){Ya.call(this,e)}function ey(e){Ya.call(this,e)}function z7(e){Ya.call(this,e)}function Zn(e){Ya.call(this,e)}function Rq(e){Qfe.call(this,e,0)}function jq(){s0e.call(this,12,3)}function ghe(){ghe=re,b3e=new W}function IXe(){IXe=re,p3e=new y}function uN(){uN=re,h_=new q}function OXe(){OXe=re,h3t=new te}function NXe(){throw ne(new Xn)}function phe(){throw ne(new Xn)}function PXe(){throw ne(new Xn)}function Yfn(){throw ne(new Xn)}function Wfn(){throw ne(new Xn)}function Kfn(){throw ne(new Xn)}function $q(){this.a=Jn(Vn(Js))}function C4(e){t1(),this.a=Vn(e)}function BXe(e,t){e.Td(t),t.Sd(e)}function Xfn(e,t){e.a.ec().Mc(t)}function Qfn(e,t,n){e.c.lf(t,n)}function bhe(e){Ea.call(this,e)}function Qf(e){an.call(this,e)}function s0(){oS.call(this,"")}function G7(){oS.call(this,"")}function rg(){oS.call(this,"")}function Kv(){oS.call(this,"")}function vhe(e){Ea.call(this,e)}function G6(e){B6.call(this,e)}function Hq(e){sP.call(this,e)}function FXe(e){G6.call(this,e)}function RXe(){pq.call(this,null)}function jXe(){pq.call(this,null)}function lN(){lN=re,bk()}function $Xe(){$Xe=re,k3t=LEn()}function HXe(e){return e.a?e.b:0}function Zfn(e){return e.a?e.b:0}function Jfn(e,t){return e.a-t.a}function e1n(e,t){return e.a-t.a}function t1n(e,t){return e.a-t.a}function hN(e,t){return K0e(e,t)}function ie(e,t){return ust(e,t)}function n1n(e,t){return t in e.a}function zXe(e,t){return e.f=t,e}function r1n(e,t){return e.b=t,e}function GXe(e,t){return e.c=t,e}function i1n(e,t){return e.g=t,e}function whe(e,t){return e.a=t,e}function mhe(e,t){return e.f=t,e}function s1n(e,t){return e.k=t,e}function yhe(e,t){return e.a=t,e}function a1n(e,t){return e.e=t,e}function khe(e,t){return e.e=t,e}function o1n(e,t){return e.f=t,e}function c1n(e,t){e.b=!0,e.d=t}function u1n(e,t){e.b=new _a(t)}function l1n(e,t,n){t.td(e.a[n])}function h1n(e,t,n){t.we(e.a[n])}function f1n(e,t){return e.b-t.b}function d1n(e,t){return e.g-t.g}function g1n(e,t){return e.s-t.s}function p1n(e,t){return e?0:t-1}function VXe(e,t){return e?0:t-1}function b1n(e,t){return e?t-1:0}function v1n(e,t){return t.Yf(e)}function q2(e,t){return e.b=t,e}function fN(e,t){return e.a=t,e}function Y2(e,t){return e.c=t,e}function W2(e,t){return e.d=t,e}function K2(e,t){return e.e=t,e}function xhe(e,t){return e.f=t,e}function V7(e,t){return e.a=t,e}function V6(e,t){return e.b=t,e}function U6(e,t){return e.c=t,e}function Et(e,t){return e.c=t,e}function zt(e,t){return e.b=t,e}function _t(e,t){return e.d=t,e}function Tt(e,t){return e.e=t,e}function w1n(e,t){return e.f=t,e}function Ct(e,t){return e.g=t,e}function St(e,t){return e.a=t,e}function At(e,t){return e.i=t,e}function Mt(e,t){return e.j=t,e}function UXe(e,t){return e.k=t,e}function m1n(e,t){return e.j=t,e}function y1n(e,t){Mg(),Ka(t,e)}function k1n(e,t,n){pbn(e.a,t,n)}function qXe(e){hit.call(this,e)}function Ehe(e){hit.call(this,e)}function dN(e){WY.call(this,e)}function YXe(e){Rkn.call(this,e)}function ig(e){yb.call(this,e)}function WXe(e){BW.call(this,e)}function KXe(e){BW.call(this,e)}function XXe(){Afe.call(this,"")}function Rs(){this.a=0,this.b=0}function QXe(){this.b=0,this.a=0}function ZXe(e,t){e.b=0,yw(e,t)}function x1n(e,t){e.c=t,e.b=!0}function JXe(e,t){return e.c._b(t)}function Vh(e){return e.e&&e.e()}function zq(e){return e?e.d:null}function eQe(e,t){return Aht(e.b,t)}function E1n(e){return e?e.g:null}function _1n(e){return e?e.i:null}function sg(e){return yd(e),e.o}function X2(){X2=re,m9t=z7n()}function tQe(){tQe=re,ps=e9n()}function q6(){q6=re,mEe=V7n()}function nQe(){nQe=re,r_t=G7n()}function _he(){_he=re,bo=j_n()}function The(){The=re,tp=Ok()}function rQe(){throw ne(new Xn)}function iQe(){throw ne(new Xn)}function sQe(){throw ne(new Xn)}function aQe(){throw ne(new Xn)}function oQe(){throw ne(new Xn)}function cQe(){throw ne(new Xn)}function gN(e){this.a=new S4(e)}function Che(e){sbt(),WNn(this,e)}function ag(e){this.a=new pW(e)}function ty(e,t){for(;e.ye(t););}function She(e,t){for(;e.sd(t););}function ny(e,t){return e.a+=t,e}function Gq(e,t){return e.a+=t,e}function a0(e,t){return e.a+=t,e}function Q2(e,t){return e.a+=t,e}function U7(e){return vg(e),e.a}function pN(e){return e.b!=e.d.c}function uQe(e){return e.l|e.m<<22}function Ahe(e,t){return e.d[t.p]}function lQe(e,t){return AAn(e,t)}function Mhe(e,t,n){e.splice(t,n)}function hQe(e){e.c?Xgt(e):Qgt(e)}function bN(e){this.a=0,this.b=e}function fQe(){this.a=new mM(Ixe)}function dQe(){this.b=new mM(wxe)}function gQe(){this.b=new mM(mre)}function pQe(){this.b=new mM(mre)}function bQe(){throw ne(new Xn)}function vQe(){throw ne(new Xn)}function wQe(){throw ne(new Xn)}function mQe(){throw ne(new Xn)}function yQe(){throw ne(new Xn)}function kQe(){throw ne(new Xn)}function xQe(){throw ne(new Xn)}function EQe(){throw ne(new Xn)}function _Qe(){throw ne(new Xn)}function TQe(){throw ne(new Xn)}function T1n(){throw ne(new lo)}function C1n(){throw ne(new lo)}function vS(e){this.a=new CQe(e)}function CQe(e){F4n(this,e,FEn())}function wS(e){return!e||Krt(e)}function mS(e){return Gf[e]!=-1}function S1n(){Nj!=0&&(Nj=0),Pj=-1}function SQe(){Uee==null&&(Uee=[])}function A1n(e,t){kQ(De(e.a),t)}function M1n(e,t){kQ(De(e.a),t)}function yS(e,t){hy.call(this,e,t)}function Y6(e,t){yS.call(this,e,t)}function Dhe(e,t){this.b=e,this.c=t}function AQe(e,t){this.b=e,this.a=t}function MQe(e,t){this.a=e,this.b=t}function DQe(e,t){this.a=e,this.b=t}function LQe(e,t){this.a=e,this.b=t}function IQe(e,t){this.a=e,this.b=t}function OQe(e,t){this.a=e,this.b=t}function NQe(e,t){this.a=e,this.b=t}function PQe(e,t){this.a=e,this.b=t}function BQe(e,t){this.a=e,this.b=t}function FQe(e,t){this.b=e,this.a=t}function RQe(e,t){this.b=e,this.a=t}function jQe(e,t){this.b=e,this.a=t}function $Qe(e,t){this.b=e,this.a=t}function ar(e,t){this.f=e,this.g=t}function W6(e,t){this.e=e,this.d=t}function Z2(e,t){this.g=e,this.i=t}function Vq(e,t){this.a=e,this.b=t}function HQe(e,t){this.a=e,this.f=t}function zQe(e,t){this.b=e,this.c=t}function D1n(e,t){this.a=e,this.b=t}function GQe(e,t){this.a=e,this.b=t}function Uq(e,t){this.a=e,this.b=t}function VQe(e){$fe(e.dc()),this.c=e}function vN(e){this.b=h(Vn(e),83)}function UQe(e){this.a=h(Vn(e),83)}function Xv(e){this.a=h(Vn(e),15)}function qQe(e){this.a=h(Vn(e),15)}function wN(e){this.b=h(Vn(e),47)}function mN(){this.q=new d.Date}function L1(){L1=re,L3e=new ke}function K6(){K6=re,Vx=new ge}function q7(e){return e.f.c+e.g.c}function kS(e,t){return e.b.Hc(t)}function YQe(e,t){return e.b.Ic(t)}function WQe(e,t){return e.b.Qc(t)}function KQe(e,t){return e.b.Hc(t)}function XQe(e,t){return e.c.uc(t)}function wd(e,t){return e.a._b(t)}function QQe(e,t){return Nr(e.c,t)}function ZQe(e,t){return Au(e.b,t)}function JQe(e,t){return e>t&&t0}function Yq(e,t){return mo(e,t)<0}function Z7(e,t){return e.a.get(t)}function G1n(e,t){return t.split(e)}function wZe(e,t){return Au(e.e,t)}function Rhe(e){return rn(e),!1}function MN(e){Wt.call(this,e,21)}function V1n(e,t){Qit.call(this,e,t)}function DN(e,t){ar.call(this,e,t)}function Wq(e,t){ar.call(this,e,t)}function jhe(e){AW(),Ztt.call(this,e)}function $he(e,t){trt(e,e.length,t)}function CS(e,t){Drt(e,e.length,t)}function U1n(e,t,n){t.ud(e.a.Ge(n))}function q1n(e,t,n){t.we(e.a.Fe(n))}function Y1n(e,t,n){t.td(e.a.Kb(n))}function W1n(e,t,n){e.Mb(n)&&t.td(n)}function J7(e,t,n){e.splice(t,0,n)}function K1n(e,t){return Pc(e.e,t)}function LN(e,t){this.d=e,this.e=t}function mZe(e,t){this.b=e,this.a=t}function yZe(e,t){this.b=e,this.a=t}function Hhe(e,t){this.b=e,this.a=t}function kZe(e,t){this.a=e,this.b=t}function xZe(e,t){this.a=e,this.b=t}function EZe(e,t){this.a=e,this.b=t}function _Ze(e,t){this.a=e,this.b=t}function M4(e,t){this.a=e,this.b=t}function zhe(e,t){this.b=e,this.a=t}function Ghe(e,t){this.b=e,this.a=t}function IN(e,t){ar.call(this,e,t)}function ON(e,t){ar.call(this,e,t)}function Vhe(e,t){ar.call(this,e,t)}function Uhe(e,t){ar.call(this,e,t)}function ry(e,t){ar.call(this,e,t)}function Kq(e,t){ar.call(this,e,t)}function Xq(e,t){ar.call(this,e,t)}function Qq(e,t){ar.call(this,e,t)}function NN(e,t){ar.call(this,e,t)}function qhe(e,t){ar.call(this,e,t)}function Zq(e,t){ar.call(this,e,t)}function SS(e,t){ar.call(this,e,t)}function PN(e,t){ar.call(this,e,t)}function Jq(e,t){ar.call(this,e,t)}function eE(e,t){ar.call(this,e,t)}function Yhe(e,t){ar.call(this,e,t)}function Ii(e,t){ar.call(this,e,t)}function BN(e,t){ar.call(this,e,t)}function TZe(e,t){this.a=e,this.b=t}function CZe(e,t){this.a=e,this.b=t}function SZe(e,t){this.a=e,this.b=t}function AZe(e,t){this.a=e,this.b=t}function MZe(e,t){this.a=e,this.b=t}function DZe(e,t){this.a=e,this.b=t}function LZe(e,t){this.a=e,this.b=t}function IZe(e,t){this.a=e,this.b=t}function OZe(e,t){this.a=e,this.b=t}function Whe(e,t){this.b=e,this.a=t}function NZe(e,t){this.b=e,this.a=t}function PZe(e,t){this.b=e,this.a=t}function BZe(e,t){this.b=e,this.a=t}function Z6(e,t){this.c=e,this.d=t}function FZe(e,t){this.e=e,this.d=t}function RZe(e,t){this.a=e,this.b=t}function jZe(e,t){this.b=t,this.c=e}function FN(e,t){ar.call(this,e,t)}function AS(e,t){ar.call(this,e,t)}function eY(e,t){ar.call(this,e,t)}function tE(e,t){ar.call(this,e,t)}function Khe(e,t){ar.call(this,e,t)}function tY(e,t){ar.call(this,e,t)}function nY(e,t){ar.call(this,e,t)}function MS(e,t){ar.call(this,e,t)}function Xhe(e,t){ar.call(this,e,t)}function rY(e,t){ar.call(this,e,t)}function nE(e,t){ar.call(this,e,t)}function Qhe(e,t){ar.call(this,e,t)}function rE(e,t){ar.call(this,e,t)}function iE(e,t){ar.call(this,e,t)}function Zv(e,t){ar.call(this,e,t)}function iY(e,t){ar.call(this,e,t)}function sY(e,t){ar.call(this,e,t)}function Zhe(e,t){ar.call(this,e,t)}function sE(e,t){ar.call(this,e,t)}function aY(e,t){ar.call(this,e,t)}function RN(e,t){ar.call(this,e,t)}function DS(e,t){ar.call(this,e,t)}function LS(e,t){ar.call(this,e,t)}function D4(e,t){ar.call(this,e,t)}function oY(e,t){ar.call(this,e,t)}function Jhe(e,t){ar.call(this,e,t)}function cY(e,t){ar.call(this,e,t)}function uY(e,t){ar.call(this,e,t)}function efe(e,t){ar.call(this,e,t)}function lY(e,t){ar.call(this,e,t)}function hY(e,t){ar.call(this,e,t)}function fY(e,t){ar.call(this,e,t)}function dY(e,t){ar.call(this,e,t)}function tfe(e,t){ar.call(this,e,t)}function $Ze(e,t){this.b=e,this.a=t}function HZe(e,t){this.a=e,this.b=t}function zZe(e,t){this.a=e,this.b=t}function GZe(e,t){this.a=e,this.b=t}function VZe(e,t){this.a=e,this.b=t}function nfe(e,t){ar.call(this,e,t)}function rfe(e,t){ar.call(this,e,t)}function UZe(e,t){this.b=e,this.d=t}function ife(e,t){ar.call(this,e,t)}function sfe(e,t){ar.call(this,e,t)}function qZe(e,t){this.a=e,this.b=t}function YZe(e,t){this.a=e,this.b=t}function jN(e,t){ar.call(this,e,t)}function aE(e,t){ar.call(this,e,t)}function afe(e,t){ar.call(this,e,t)}function ofe(e,t){ar.call(this,e,t)}function cfe(e,t){ar.call(this,e,t)}function gY(e,t){ar.call(this,e,t)}function ufe(e,t){ar.call(this,e,t)}function pY(e,t){ar.call(this,e,t)}function $N(e,t){ar.call(this,e,t)}function bY(e,t){ar.call(this,e,t)}function vY(e,t){ar.call(this,e,t)}function IS(e,t){ar.call(this,e,t)}function wY(e,t){ar.call(this,e,t)}function lfe(e,t){ar.call(this,e,t)}function OS(e,t){ar.call(this,e,t)}function hfe(e,t){ar.call(this,e,t)}function X1n(e,t){return Pc(e.c,t)}function Q1n(e,t){return Pc(t.b,e)}function Z1n(e,t){return-e.b.Je(t)}function ffe(e,t){return Pc(e.g,t)}function NS(e,t){ar.call(this,e,t)}function L4(e,t){ar.call(this,e,t)}function WZe(e,t){this.a=e,this.b=t}function KZe(e,t){this.a=e,this.b=t}function dt(e,t){this.a=e,this.b=t}function oE(e,t){ar.call(this,e,t)}function cE(e,t){ar.call(this,e,t)}function PS(e,t){ar.call(this,e,t)}function mY(e,t){ar.call(this,e,t)}function HN(e,t){ar.call(this,e,t)}function uE(e,t){ar.call(this,e,t)}function yY(e,t){ar.call(this,e,t)}function zN(e,t){ar.call(this,e,t)}function iy(e,t){ar.call(this,e,t)}function BS(e,t){ar.call(this,e,t)}function lE(e,t){ar.call(this,e,t)}function hE(e,t){ar.call(this,e,t)}function FS(e,t){ar.call(this,e,t)}function GN(e,t){ar.call(this,e,t)}function sy(e,t){ar.call(this,e,t)}function VN(e,t){ar.call(this,e,t)}function XZe(e,t){this.a=e,this.b=t}function QZe(e,t){this.a=e,this.b=t}function ZZe(e,t){this.a=e,this.b=t}function JZe(e,t){this.a=e,this.b=t}function eJe(e,t){this.a=e,this.b=t}function tJe(e,t){this.a=e,this.b=t}function As(e,t){this.a=e,this.b=t}function UN(e,t){ar.call(this,e,t)}function nJe(e,t){this.a=e,this.b=t}function rJe(e,t){this.a=e,this.b=t}function iJe(e,t){this.a=e,this.b=t}function sJe(e,t){this.a=e,this.b=t}function aJe(e,t){this.a=e,this.b=t}function oJe(e,t){this.a=e,this.b=t}function cJe(e,t){this.b=e,this.a=t}function uJe(e,t){this.b=e,this.a=t}function lJe(e,t){this.b=e,this.a=t}function hJe(e,t){this.b=e,this.a=t}function fJe(e,t){this.a=e,this.b=t}function dJe(e,t){this.a=e,this.b=t}function J1n(e,t){MSn(e.a,h(t,56))}function gJe(e,t){H3n(e.a,h(t,11))}function edn(e,t){return ak(),t!=e}function pJe(){return $Xe(),new k3t}function bJe(){YW(),this.b=new ns}function vJe(){iR(),this.a=new ns}function wJe(){i0e(),dde.call(this)}function I4(e,t){ar.call(this,e,t)}function mJe(e,t){this.a=e,this.b=t}function yJe(e,t){this.a=e,this.b=t}function qN(e,t){this.a=e,this.b=t}function kJe(e,t){this.a=e,this.b=t}function xJe(e,t){this.a=e,this.b=t}function EJe(e,t){this.a=e,this.b=t}function _Je(e,t){this.d=e,this.b=t}function dfe(e,t){this.d=e,this.e=t}function TJe(e,t){this.f=e,this.c=t}function RS(e,t){this.b=e,this.c=t}function gfe(e,t){this.i=e,this.g=t}function CJe(e,t){this.e=e,this.a=t}function SJe(e,t){this.a=e,this.b=t}function pfe(e,t){e.i=null,WB(e,t)}function tdn(e,t){e&&Pr(gL,e,t)}function AJe(e,t){return TX(e.a,t)}function YN(e){return QA(e.c,e.b)}function no(e){return e?e.dd():null}function Me(e){return e==null?null:e}function Jv(e){return typeof e===g5}function ew(e){return typeof e===Wve}function ws(e){return typeof e===hZ}function ug(e,t){return e.Hd().Xb(t)}function WN(e,t){return v5n(e.Kc(),t)}function eb(e,t){return mo(e,t)==0}function ndn(e,t){return mo(e,t)>=0}function fE(e,t){return mo(e,t)!=0}function rdn(e){return""+(rn(e),e)}function jS(e,t){return e.substr(t)}function MJe(e){return lu(e),e.d.gc()}function kY(e){return JTn(e,e.c),e}function KN(e){return TE(e==null),e}function dE(e,t){return e.a+=""+t,e}function va(e,t){return e.a+=""+t,e}function gE(e,t){return e.a+=""+t,e}function ho(e,t){return e.a+=""+t,e}function or(e,t){return e.a+=""+t,e}function bfe(e,t){return e.a+=""+t,e}function DJe(e,t){Ai(e,t,e.a,e.a.a)}function Cp(e,t){Ai(e,t,e.c.b,e.c)}function idn(e,t,n){H1t(t,gQ(e,n))}function sdn(e,t,n){H1t(t,gQ(e,n))}function adn(e,t){Z3n(new Tn(e),t)}function LJe(e,t){e.q.setTime(vb(t))}function IJe(e,t){xde.call(this,e,t)}function OJe(e,t){xde.call(this,e,t)}function xY(e,t){xde.call(this,e,t)}function NJe(e){Kc(this),QE(this,e)}function vfe(e){return Kt(e,0),null}function Uh(e){return e.a=0,e.b=0,e}function PJe(e,t){return e.a=t.g+1,e}function odn(e,t){return e.j[t.p]==2}function wfe(e){return Gbn(h(e,79))}function BJe(){BJe=re,p4t=ur(LX())}function FJe(){FJe=re,I5t=ur(kgt())}function RJe(){this.b=new S4(vw(12))}function jJe(){this.b=0,this.a=!1}function $Je(){this.b=0,this.a=!1}function pE(e){this.a=e,dq.call(this)}function HJe(e){this.a=e,dq.call(this)}function $t(e,t){Xi.call(this,e,t)}function EY(e,t){sw.call(this,e,t)}function ay(e,t){gfe.call(this,e,t)}function _Y(e,t){Rk.call(this,e,t)}function zJe(e,t){$S.call(this,e,t)}function wr(e,t){SN(),Pr(KH,e,t)}function TY(e,t){return $u(e.a,0,t)}function GJe(e,t){return e.a.a.a.cc(t)}function VJe(e,t){return Me(e)===Me(t)}function cdn(e,t){return Ui(e.a,t.a)}function udn(e,t){return dc(e.a,t.a)}function ldn(e,t){return Srt(e.a,t.a)}function Zf(e,t){return e.indexOf(t)}function tb(e,t){return e==t?0:e?1:-1}function XN(e){return e<10?"0"+e:""+e}function hdn(e){return Vn(e),new pE(e)}function UJe(e){return rc(e.l,e.m,e.h)}function J6(e){return Li((rn(e),e))}function fdn(e){return Li((rn(e),e))}function qJe(e,t){return dc(e.g,t.g)}function $a(e){return typeof e===Wve}function ddn(e){return e==Zb||e==Zw}function gdn(e){return e==Zb||e==Qw}function mfe(e){return Ha(e.b.b,e,0)}function YJe(e){this.a=pJe(),this.b=e}function WJe(e){this.a=pJe(),this.b=e}function pdn(e,t){return Ue(e.a,t),t}function bdn(e,t){return Ue(e.c,t),e}function KJe(e,t){return qu(e.a,t),e}function vdn(e,t){return wh(),t.a+=e}function wdn(e,t){return wh(),t.a+=e}function mdn(e,t){return wh(),t.c+=e}function yfe(e,t){_k(e,0,e.length,t)}function md(){Sle.call(this,new Np)}function XJe(){MP.call(this,0,0,0,0)}function O4(){hl.call(this,0,0,0,0)}function _a(e){this.a=e.a,this.b=e.b}function lg(e){return e==Wl||e==Dh}function ek(e){return e==Gd||e==zd}function QJe(e){return e==w3||e==v3}function oy(e){return e!=$f&&e!=Qg}function Tu(e){return e.Lg()&&e.Mg()}function ZJe(e){return UP(h(e,118))}function QN(e){return qu(new rs,e)}function JJe(e,t){return new Rk(t,e)}function ydn(e,t){return new Rk(t,e)}function kfe(e,t,n){$B(e,t),HB(e,n)}function ZN(e,t,n){Eb(e,t),xb(e,n)}function bf(e,t,n){yc(e,t),kc(e,n)}function JN(e,t,n){Ak(e,t),Dk(e,n)}function eP(e,t,n){Mk(e,t),Lk(e,n)}function CY(e,t){Vk(e,t),Ik(e,e.D)}function xfe(e){TJe.call(this,e,!0)}function eet(e,t,n){h1e.call(this,e,t,n)}function hg(e){Dg(),k5n.call(this,e)}function tet(){DN.call(this,"Head",1)}function net(){DN.call(this,"Tail",3)}function SY(e){e.c=pe(yn,st,1,0,5,1)}function ret(e){e.a=pe(yn,st,1,8,5,1)}function iet(e){mc(e.xf(),new qqe(e))}function cy(e){return e!=null?ii(e):0}function kdn(e,t){return ww(t,mf(e))}function xdn(e,t){return ww(t,mf(e))}function Edn(e,t){return e[e.length]=t}function _dn(e,t){return e[e.length]=t}function Efe(e){return E2n(e.b.Kc(),e.a)}function Tdn(e,t){return YB(CW(e.d),t)}function Cdn(e,t){return YB(CW(e.g),t)}function Sdn(e,t){return YB(CW(e.j),t)}function sa(e,t){Xi.call(this,e.b,t)}function nb(e){MP.call(this,e,e,e,e)}function _fe(e){return e.b&&WQ(e),e.a}function Tfe(e){return e.b&&WQ(e),e.c}function Adn(e,t){Pf||(e.b=t)}function AY(e,t,n){return pi(e,t,n),n}function set(e,t,n){pi(e.c[t.g],t.g,n)}function Mdn(e,t,n){h(e.c,69).Xh(t,n)}function Ddn(e,t,n){bf(n,n.i+e,n.j+t)}function Ldn(e,t){qn(Co(e.a),kst(t))}function Idn(e,t){qn(cu(e.a),xst(t))}function bE(e){Mr(),G2.call(this,e)}function Odn(e){return e==null?0:ii(e)}function aet(){aet=re,Zne=new o9(Yre)}function Qn(){Qn=re,new oet,new qe}function oet(){new zn,new zn,new zn}function Cfe(){Cfe=re,Vle(),v3e=new zn}function vf(){vf=re,d.Math.log(2)}function ul(){ul=re,td=(dZe(),T9t)}function Ndn(){throw ne(new i0(Xyt))}function Pdn(){throw ne(new i0(Xyt))}function Bdn(){throw ne(new i0(Qyt))}function Fdn(){throw ne(new i0(Qyt))}function cet(e){this.a=e,V1e.call(this,e)}function MY(e){this.a=e,vN.call(this,e)}function DY(e){this.a=e,vN.call(this,e)}function hs(e,t){oW(e.c,e.c.length,t)}function Wa(e){return e.at?1:0}function het(e,t){return mo(e,t)>0?e:t}function rc(e,t,n){return{l:e,m:t,h:n}}function Rdn(e,t){e.a!=null&&gJe(t,e.a)}function fet(e){e.a=new Ce,e.c=new Ce}function tP(e){this.b=e,this.a=new qe}function det(e){this.b=new Di,this.a=e}function Afe(e){y1e.call(this),this.a=e}function get(){DN.call(this,"Range",2)}function pet(){x2e(),this.a=new mM(U4e)}function jdn(e,t){Vn(t),dy(e).Jc(new N)}function $dn(e,t){return Hu(),t.n.b+=e}function Hdn(e,t,n){return Pr(e.g,n,t)}function zdn(e,t,n){return Pr(e.k,n,t)}function Gdn(e,t){return Pr(e.a,t.a,t)}function uy(e,t,n){return zpe(t,n,e.c)}function Mfe(e){return new dt(e.c,e.d)}function Vdn(e){return new dt(e.c,e.d)}function ro(e){return new dt(e.a,e.b)}function bet(e,t){return dOn(e.a,t,null)}function Udn(e){Gs(e,null),xs(e,null)}function vet(e){KW(e,null),XW(e,null)}function wet(){$S.call(this,null,null)}function met(){uP.call(this,null,null)}function Dfe(e){this.a=e,zn.call(this)}function qdn(e){this.b=(Rt(),new yq(e))}function nP(e){e.j=pe(D3e,Re,310,0,0,1)}function Ydn(e,t,n){e.c.Vc(t,h(n,133))}function Wdn(e,t,n){e.c.ji(t,h(n,133))}function yet(e,t){jn(e),e.Gc(h(t,15))}function vE(e,t){return MIn(e.c,e.b,t)}function Kdn(e,t){return new Get(e.Kc(),t)}function LY(e,t){return W5n(e.Kc(),t)!=-1}function Lfe(e,t){return e.a.Bc(t)!=null}function rP(e){return e.Ob()?e.Pb():null}function ket(e){return Fl(e,0,e.length)}function ue(e,t){return e!=null&&PX(e,t)}function Xdn(e,t){e.q.setHours(t),C9(e,t)}function xet(e,t){e.c&&(tde(t),Kit(t))}function Qdn(e,t,n){h(e.Kb(n),164).Nb(t)}function Zdn(e,t,n){return aOn(e,t,n),n}function Eet(e,t,n){e.a=t^1502,e.b=n^VZ}function IY(e,t,n){return e.a[t.g][n.g]}function wf(e,t){return e.a[t.c.p][t.p]}function Jdn(e,t){return e.e[t.c.p][t.p]}function e0n(e,t){return e.c[t.c.p][t.p]}function t0n(e,t){return e.j[t.p]=lSn(t)}function n0n(e,t){return N0e(e.f,t.tg())}function r0n(e,t){return N0e(e.b,t.tg())}function i0n(e,t){return e.a0?t*t/e:t*t*100}function M0n(e,t){return e>0?t/(e*e):t*100}function D0n(e,t,n){return Ue(t,Yht(e,n))}function L0n(e,t,n){CB(),e.Xe(t)&&n.td(e)}function rk(e,t,n){var s;s=e.Zc(t),s.Rb(n)}function nw(e,t,n){return e.a+=t,e.b+=n,e}function I0n(e,t,n){return e.a*=t,e.b*=n,e}function GS(e,t,n){return e.a-=t,e.b-=n,e}function t1e(e,t){return e.a=t.a,e.b=t.b,e}function fP(e){return e.a=-e.a,e.b=-e.b,e}function ttt(e){this.c=e,this.a=1,this.b=1}function ntt(e){this.c=e,yc(e,0),kc(e,0)}function rtt(e){di.call(this),YE(this,e)}function itt(e){uZ(),SKe(this),this.mf(e)}function stt(e,t){Q7(),$S.call(this,e,t)}function n1e(e,t){o0(),uP.call(this,e,t)}function att(e,t){o0(),uP.call(this,e,t)}function ott(e,t){o0(),n1e.call(this,e,t)}function Cu(e,t,n){Du.call(this,e,t,n,2)}function jY(e,t){ul(),AP.call(this,e,t)}function ctt(e,t){ul(),jY.call(this,e,t)}function r1e(e,t){ul(),jY.call(this,e,t)}function utt(e,t){ul(),r1e.call(this,e,t)}function i1e(e,t){ul(),AP.call(this,e,t)}function ltt(e,t){ul(),i1e.call(this,e,t)}function htt(e,t){ul(),AP.call(this,e,t)}function O0n(e,t){return e.c.Fc(h(t,133))}function s1e(e,t,n){return bR(TA(e,t),n)}function N0n(e,t,n){return t.Qk(e.e,e.c,n)}function P0n(e,t,n){return t.Rk(e.e,e.c,n)}function $Y(e,t){return Tg(e.e,h(t,49))}function B0n(e,t,n){s9(cu(e.a),t,xst(n))}function F0n(e,t,n){s9(Co(e.a),t,kst(n))}function a1e(e,t){t.$modCount=e.$modCount}function xE(){xE=re,q_=new Xr("root")}function ik(){ik=re,bL=new sXe,new aXe}function ftt(){this.a=new pb,this.b=new pb}function o1e(){Lut.call(this),this.Bb|=ea}function dtt(){ar.call(this,"GROW_TREE",0)}function R0n(e){return e==null?null:nNn(e)}function j0n(e){return e==null?null:l_n(e)}function $0n(e){return e==null?null:Ga(e)}function H0n(e){return e==null?null:Ga(e)}function yd(e){e.o==null&&RCn(e)}function lt(e){return TE(e==null||Jv(e)),e}function Je(e){return TE(e==null||ew(e)),e}function Jn(e){return TE(e==null||ws(e)),e}function c1e(e){this.q=new d.Date(vb(e))}function VS(e,t){this.c=e,W6.call(this,e,t)}function dP(e,t){this.a=e,VS.call(this,e,t)}function z0n(e,t){this.d=e,kqe(this),this.b=t}function u1e(e,t){vK.call(this,e),this.a=t}function l1e(e,t){vK.call(this,e),this.a=t}function G0n(e){Fpe.call(this,0,0),this.f=e}function h1e(e,t,n){_B.call(this,e,t,n,null)}function gtt(e,t,n){_B.call(this,e,t,n,null)}function V0n(e,t,n){return e.ue(t,n)<=0?n:t}function U0n(e,t,n){return e.ue(t,n)<=0?t:n}function q0n(e,t){return h(mb(e.b,t),149)}function Y0n(e,t){return h(mb(e.c,t),229)}function HY(e){return h(ut(e.a,e.b),287)}function ptt(e){return new dt(e.c,e.d+e.a)}function btt(e){return Hu(),QJe(h(e,197))}function rw(){rw=re,y4e=Lt((Iu(),E2))}function W0n(e,t){t.a?OAn(e,t):OY(e.a,t.b)}function vtt(e,t){Pf||Ue(e.a,t)}function K0n(e,t){return ES(),Fk(t.d.i,e)}function X0n(e,t){return t5(),new mpt(t,e)}function e1(e,t){return aA(t,gwe),e.f=t,e}function f1e(e,t,n){return n=Ku(e,t,3,n),n}function d1e(e,t,n){return n=Ku(e,t,6,n),n}function g1e(e,t,n){return n=Ku(e,t,9,n),n}function US(e,t,n){++e.j,e.Ki(),pK(e,t,n)}function wtt(e,t,n){++e.j,e.Hi(t,e.oi(t,n))}function mtt(e,t,n){var s;s=e.Zc(t),s.Rb(n)}function ytt(e,t,n){return Ave(e.c,e.b,t,n)}function p1e(e,t){return(t&Ir)%e.d.length}function Xi(e,t){Xr.call(this,e),this.a=t}function b1e(e,t){Fle.call(this,e),this.a=t}function zY(e,t){Fle.call(this,e),this.a=t}function ktt(e,t){this.c=e,yb.call(this,t)}function xtt(e,t){this.a=e,kKe.call(this,t)}function qS(e,t){this.a=e,kKe.call(this,t)}function Ett(e){this.a=(Uu(e,jw),new Wo(e))}function _tt(e){this.a=(Uu(e,jw),new Wo(e))}function YS(e){return!e.a&&(e.a=new F),e.a}function Ttt(e){return e>8?0:e+1}function Q0n(e,t){return on(),e==t?0:e?1:-1}function v1e(e,t,n){return j4(e,h(t,22),n)}function Z0n(e,t,n){return e.apply(t,n)}function Ctt(e,t,n){return e.a+=Fl(t,0,n),e}function w1e(e,t){var n;return n=e.e,e.e=t,n}function J0n(e,t){var n;n=e[GZ],n.call(e,t)}function egn(e,t){var n;n=e[GZ],n.call(e,t)}function iw(e,t){e.a.Vc(e.b,t),++e.b,e.c=-1}function Stt(e){Kc(e.e),e.d.b=e.d,e.d.a=e.d}function WS(e){e.b?WS(e.b):e.f.c.zc(e.e,e.d)}function tgn(e,t,n){Tp(),wqe(e,t.Ce(e.a,n))}function ngn(e,t){return zq(uft(e.a,t,!0))}function rgn(e,t){return zq(lft(e.a,t,!0))}function vh(e,t){return hN(new Array(t),e)}function GY(e){return String.fromCharCode(e)}function ign(e){return e==null?null:e.message}function Att(){this.a=new qe,this.b=new qe}function Mtt(){this.a=new tS,this.b=new BKe}function Dtt(){this.b=new Rs,this.c=new qe}function m1e(){this.d=new Rs,this.e=new Rs}function y1e(){this.n=new Rs,this.o=new Rs}function gP(){this.n=new E4,this.i=new O4}function Ltt(){this.a=new cUe,this.b=new Kje}function Itt(){this.a=new qe,this.d=new qe}function Ott(){this.b=new ns,this.a=new ns}function Ntt(){this.b=new zn,this.a=new zn}function Ptt(){this.b=new dQe,this.a=new Q$e}function Btt(){gP.call(this),this.a=new Rs}function EE(e){M5n.call(this,e,(AB(),ate))}function k1e(e,t,n,s){MP.call(this,e,t,n,s)}function sgn(e,t,n){n!=null&&UB(t,qX(e,n))}function agn(e,t,n){n!=null&&qB(t,qX(e,n))}function x1e(e,t,n){return n=Ku(e,t,11,n),n}function zr(e,t){return e.a+=t.a,e.b+=t.b,e}function ms(e,t){return e.a-=t.a,e.b-=t.b,e}function ogn(e,t){return e.n.a=(rn(t),t+10)}function cgn(e,t){return e.n.a=(rn(t),t+10)}function ugn(e,t){return t==e||ix(tR(t),e)}function Ftt(e,t){return Pr(e.a,t,"")==null}function lgn(e,t){return ES(),!Fk(t.d.i,e)}function hgn(e,t){lg(e.f)?ACn(e,t):f9n(e,t)}function fgn(e,t){var n;return n=t.Hh(e.a),n}function sw(e,t){Ea.call(this,n_+e+s2+t)}function B4(e,t,n,s){Ye.call(this,e,t,n,s)}function E1e(e,t,n,s){Ye.call(this,e,t,n,s)}function Rtt(e,t,n,s){E1e.call(this,e,t,n,s)}function jtt(e,t,n,s){jP.call(this,e,t,n,s)}function VY(e,t,n,s){jP.call(this,e,t,n,s)}function _1e(e,t,n,s){jP.call(this,e,t,n,s)}function $tt(e,t,n,s){VY.call(this,e,t,n,s)}function T1e(e,t,n,s){VY.call(this,e,t,n,s)}function qt(e,t,n,s){_1e.call(this,e,t,n,s)}function Htt(e,t,n,s){T1e.call(this,e,t,n,s)}function ztt(e,t,n,s){Ede.call(this,e,t,n,s)}function Gtt(e,t,n){this.a=e,Qfe.call(this,t,n)}function Vtt(e,t,n){this.c=t,this.b=n,this.a=e}function dgn(e,t,n){return e.d=h(t.Kb(n),164)}function C1e(e,t){return e.Aj().Nh().Kh(e,t)}function S1e(e,t){return e.Aj().Nh().Ih(e,t)}function Utt(e,t){return rn(e),Me(e)===Me(t)}function Nt(e,t){return rn(e),Me(e)===Me(t)}function UY(e,t){return zq(uft(e.a,t,!1))}function qY(e,t){return zq(lft(e.a,t,!1))}function ggn(e,t){return e.b.sd(new xZe(e,t))}function pgn(e,t){return e.b.sd(new EZe(e,t))}function qtt(e,t){return e.b.sd(new _Ze(e,t))}function A1e(e,t,n){return e.lastIndexOf(t,n)}function bgn(e,t,n){return Ui(e[t.b],e[n.b])}function vgn(e,t){return Fe(t,(tt(),ID),e)}function wgn(e,t){return dc(t.a.d.p,e.a.d.p)}function mgn(e,t){return dc(e.a.d.p,t.a.d.p)}function ygn(e,t){return Ui(e.c-e.s,t.c-t.s)}function Ytt(e){return e.c?Ha(e.c.a,e,0):-1}function kgn(e){return e<100?null:new ig(e)}function F4(e){return e==x2||e==ed||e==qo}function Wtt(e,t){return ue(t,15)&&ept(e.c,t)}function xgn(e,t){Pf||t&&(e.d=t)}function YY(e,t){var n;return n=t,!!Qge(e,n)}function M1e(e,t){this.c=e,yW.call(this,e,t)}function Ktt(e){this.c=e,xY.call(this,_R,0)}function Xtt(e,t){S2n.call(this,e,e.length,t)}function Egn(e,t,n){return h(e.c,69).lk(t,n)}function pP(e,t,n){return h(e.c,69).mk(t,n)}function _gn(e,t,n){return N0n(e,h(t,332),n)}function D1e(e,t,n){return P0n(e,h(t,332),n)}function Tgn(e,t,n){return W1t(e,h(t,332),n)}function Qtt(e,t,n){return E9n(e,h(t,332),n)}function _E(e,t){return t==null?null:xw(e.b,t)}function L1e(e){return ew(e)?(rn(e),e):e.ke()}function bP(e){return!isNaN(e)&&!isFinite(e)}function Ztt(e){t1(),this.a=(Rt(),new G6(e))}function KS(e){ak(),this.d=e,this.a=new Jm}function ll(e,t,n){this.a=e,this.b=t,this.c=n}function Jtt(e,t,n){this.a=e,this.b=t,this.c=n}function ent(e,t,n){this.d=e,this.b=n,this.a=t}function WY(e){fet(this),Pl(this),Qs(this,e)}function Bc(e){SY(this),q1e(this.c,0,e.Pc())}function tnt(e){Mu(e.a),Zot(e.c,e.b),e.b=null}function nnt(e){this.a=e,L1(),xc(Date.now())}function rnt(){rnt=re,Q3e=new y,zj=new y}function KY(){KY=re,z3e=new _e,x3t=new Te}function int(){int=re,D9t=pe(yn,st,1,0,5,1)}function snt(){snt=re,W9t=pe(yn,st,1,0,5,1)}function I1e(){I1e=re,K9t=pe(yn,st,1,0,5,1)}function t1(){t1=re,new $le((Rt(),Rt(),ca))}function Cgn(e){return AB(),cr((uct(),T3t),e)}function Sgn(e){return Af(),cr((Aot(),L3t),e)}function Agn(e){return SF(),cr((Pat(),F3t),e)}function Mgn(e){return OB(),cr((Bat(),R3t),e)}function Dgn(e){return oR(),cr((xlt(),j3t),e)}function Lgn(e){return Kh(),cr((Tot(),z3t),e)}function Ign(e){return Xc(),cr((Cot(),V3t),e)}function Ogn(e){return wc(),cr((Sot(),q3t),e)}function Ngn(e){return xR(),cr((BJe(),p4t),e)}function Pgn(e){return Cb(),cr((hct(),v4t),e)}function Bgn(e){return o5(),cr((fct(),m4t),e)}function Fgn(e){return h9(),cr((dct(),x4t),e)}function Rgn(e){return kN(),cr((dat(),E4t),e)}function jgn(e){return NB(),cr((Fat(),$4t),e)}function $gn(e){return UE(),cr((Mot(),o5t),e)}function Hgn(e){return Zs(),cr((Gct(),h5t),e)}function zgn(e){return $k(),cr((lct(),b5t),e)}function Ggn(e){return Sb(),cr((Dot(),x5t),e)}function O1e(e,t){if(!e)throw ne(new an(t))}function Vgn(e){return bn(),cr((lut(),C5t),e)}function N1e(e){MP.call(this,e.d,e.c,e.a,e.b)}function XY(e){MP.call(this,e.d,e.c,e.a,e.b)}function P1e(e,t,n){this.b=e,this.c=t,this.a=n}function vP(e,t,n){this.b=e,this.a=t,this.c=n}function ant(e,t,n){this.a=e,this.b=t,this.c=n}function B1e(e,t,n){this.a=e,this.b=t,this.c=n}function ont(e,t,n){this.a=e,this.b=t,this.c=n}function F1e(e,t,n){this.a=e,this.b=t,this.c=n}function cnt(e,t,n){this.b=e,this.a=t,this.c=n}function wP(e,t,n){this.e=t,this.b=e,this.d=n}function Ugn(e,t,n){return Tp(),e.a.Od(t,n),t}function QY(e){var t;return t=new nn,t.e=e,t}function R1e(e){var t;return t=new GKe,t.b=e,t}function XS(){XS=re,t$=new _Fe,n$=new TFe}function wh(){wh=re,$5t=new oje,H5t=new cje}function qgn(e){return aF(),cr((pct(),P5t),e)}function Ygn(e){return Sf(),cr((vct(),V5t),e)}function Wgn(e){return sR(),cr((hlt(),Z5t),e)}function Kgn(e){return u5(),cr((dut(),J5t),e)}function Xgn(e){return TB(),cr((Gat(),e6t),e)}function Qgn(e){return e5(),cr((Lot(),t6t),e)}function Zgn(e){return Iy(),cr((Rct(),q5t),e)}function Jgn(e){return Tb(),cr((Not(),Q5t),e)}function epn(e){return GB(),cr((Iot(),n6t),e)}function tpn(e){return Kp(),cr((Bct(),r6t),e)}function npn(e){return DA(),cr((jat(),i6t),e)}function rpn(e){return Hp(),cr((Oot(),a6t),e)}function ipn(e){return KF(),cr((vut(),o6t),e)}function spn(e){return xA(),cr(($at(),c6t),e)}function apn(e){return cM(),cr((put(),u6t),e)}function opn(e){return ax(),cr((gut(),l6t),e)}function cpn(e){return ha(),cr((Flt(),h6t),e)}function upn(e){return jk(),cr((Bot(),f6t),e)}function lpn(e){return Ad(),cr((Pot(),g6t),e)}function hpn(e){return gB(),cr((Vat(),p6t),e)}function fpn(e){return wl(),cr((jct(),b6t),e)}function dpn(e){return UF(),cr((but(),Lxt),e)}function gpn(e){return t9(),cr((Fot(),Ixt),e)}function ppn(e){return Tw(),cr((wct(),Oxt),e)}function bpn(e){return ua(),cr(($ot(),jxt),e)}function vpn(e){return By(),cr((llt(),Pxt),e)}function wpn(e){return Dd(),cr((jot(),Bxt),e)}function mpn(e){return CA(),cr((zat(),Fxt),e)}function ypn(e){return nF(),cr((Rot(),$xt),e)}function kpn(e){return f9(),cr((Fct(),Nxt),e)}function xpn(e){return bA(),cr((Hat(),Hxt),e)}function Epn(e){return qk(),cr((zot(),zxt),e)}function _pn(e){return eF(),cr((Got(),Gxt),e)}function Tpn(e){return oF(),cr((Hot(),Vxt),e)}function Cpn(e){return _b(),cr((Vot(),r8t),e)}function Spn(e){return GE(),cr((qat(),c8t),e)}function Apn(e){return r1(),cr((Yat(),p8t),e)}function Mpn(e){return yf(),cr((Wat(),v8t),e)}function Dpn(e){return qh(),cr((Uat(),I8t),e)}function Lpn(e){return gb(),cr((Kat(),j8t),e)}function Ipn(e){return tx(),cr((gct(),$8t),e)}function Opn(e){return w9(),cr((wut(),z8t),e)}function Npn(e){return aB(),cr((Zat(),n7t),e)}function Ppn(e){return QB(),cr((Qat(),c7t),e)}function Bpn(e){return lB(),cr((Xat(),r7t),e)}function Fpn(e){return wF(),cr((Uot(),l7t),e)}function Rpn(e){return SB(),cr((Jat(),h7t),e)}function jpn(e){return VA(),cr((qot(),f7t),e)}function $pn(e){return FF(),cr((bct(),S7t),e)}function Hpn(e){return tF(),cr((Wot(),A7t),e)}function zpn(e){return vF(),cr((Yot(),M7t),e)}function Gpn(e){return fx(),cr((zct(),K7t),e)}function Vpn(e){return XA(),cr((Kot(),X7t),e)}function Upn(e){return EN(),cr((hat(),Q7t),e)}function qpn(e){return _N(),cr((lat(),J7t),e)}function Ypn(e){return vA(),cr((tot(),eEt),e)}function Wpn(e){return lM(),cr(($ct(),tEt),e)}function Kpn(e){return K7(),cr((fat(),vEt),e)}function Xpn(e){return $A(),cr((eot(),wEt),e)}function Qpn(e){return Qh(),cr((Hct(),_Et),e)}function Zpn(e){return E0(),cr((flt(),CEt),e)}function Jpn(e){return $1(),cr((fut(),SEt),e)}function e2n(e){return Aw(),cr((hut(),OEt),e)}function t2n(e){return oa(),cr((FJe(),I5t),e)}function n2n(e){return Nk(),cr((Rat(),L5t),e)}function r2n(e){return la(),cr((Vct(),WEt),e)}function i2n(e){return Tf(),cr((Qot(),KEt),e)}function s2n(e){return Od(),cr((kct(),XEt),e)}function a2n(e){return YF(),cr((yut(),QEt),e)}function o2n(e){return Ld(),cr((Xot(),JEt),e)}function c2n(e){return Yu(),cr((yct(),t9t),e)}function u2n(e){return Iw(),cr((klt(),n9t),e)}function l2n(e){return Cy(),cr((Uct(),r9t),e)}function h2n(e){return _s(),cr((aut(),i9t),e)}function f2n(e){return Qc(),cr((mut(),s9t),e)}function d2n(e){return Iu(),cr((Ect(),h9t),e)}function g2n(e){return fu(),cr((Rlt(),f9t),e)}function p2n(e){return Qe(),cr((qct(),a9t),e)}function b2n(e){return kF(),cr((xct(),d9t),e)}function v2n(e){return Lu(),cr((mct(),b9t),e)}function w2n(e){return ux(),cr((dlt(),M9t),e)}function m2n(e,t){return rn(e),e+(rn(t),t)}function y2n(e,t){return L1(),qn(De(e.a),t)}function k2n(e,t){return L1(),qn(De(e.a),t)}function ZY(e,t){this.c=e,this.a=t,this.b=t-e}function unt(e,t,n){this.a=e,this.b=t,this.c=n}function j1e(e,t,n){this.a=e,this.b=t,this.c=n}function $1e(e,t,n){this.a=e,this.b=t,this.c=n}function lnt(e,t,n){this.a=e,this.b=t,this.c=n}function hnt(e,t,n){this.a=e,this.b=t,this.c=n}function u0(e,t,n){this.e=e,this.a=t,this.c=n}function fnt(e,t,n){ul(),Zde.call(this,e,t,n)}function JY(e,t,n){ul(),Bde.call(this,e,t,n)}function H1e(e,t,n){ul(),Bde.call(this,e,t,n)}function z1e(e,t,n){ul(),Bde.call(this,e,t,n)}function dnt(e,t,n){ul(),JY.call(this,e,t,n)}function G1e(e,t,n){ul(),JY.call(this,e,t,n)}function gnt(e,t,n){ul(),G1e.call(this,e,t,n)}function pnt(e,t,n){ul(),H1e.call(this,e,t,n)}function bnt(e,t,n){ul(),z1e.call(this,e,t,n)}function QS(e,t){return Vn(e),Vn(t),new PQe(e,t)}function R4(e,t){return Vn(e),Vn(t),new Mnt(e,t)}function x2n(e,t){return Vn(e),Vn(t),new Dnt(e,t)}function E2n(e,t){return Vn(e),Vn(t),new FQe(e,t)}function h(e,t){return TE(e==null||PX(e,t)),e}function sk(e){var t;return t=new qe,AK(t,e),t}function _2n(e){var t;return t=new ns,AK(t,e),t}function vnt(e){var t;return t=new Kle,zK(t,e),t}function ZS(e){var t;return t=new di,zK(t,e),t}function T2n(e){return!e.e&&(e.e=new qe),e.e}function C2n(e){return!e.c&&(e.c=new N6),e.c}function Ue(e,t){return e.c[e.c.length]=t,!0}function wnt(e,t){this.c=e,this.b=t,this.a=!1}function V1e(e){this.d=e,kqe(this),this.b=wbn(e.d)}function mnt(){this.a=";,;",this.b="",this.c=""}function S2n(e,t,n){yrt.call(this,t,n),this.a=e}function ynt(e,t,n){this.b=e,IJe.call(this,t,n)}function U1e(e,t,n){this.c=e,LN.call(this,t,n)}function q1e(e,t,n){gbe(n,0,e,t,n.length,!1)}function O1(e,t,n,s,a){e.b=t,e.c=n,e.d=s,e.a=a}function A2n(e,t){t&&(e.b=t,e.a=(vg(t),t.a))}function Y1e(e,t,n,s,a){e.d=t,e.c=n,e.a=s,e.b=a}function W1e(e){var t,n;t=e.b,n=e.c,e.b=n,e.c=t}function K1e(e){var t,n;n=e.d,t=e.a,e.d=t,e.a=n}function X1e(e){return xg(Nbn($a(e)?Bl(e):e))}function M2n(e,t){return dc(Bnt(e.d),Bnt(t.d))}function D2n(e,t){return t==(Qe(),un)?e.c:e.d}function ak(){ak=re,bxe=(Qe(),un),oH=pn}function knt(){this.b=Pe(Je(at((Jh(),Ete))))}function xnt(e){return Tp(),pe(yn,st,1,e,5,1)}function L2n(e){return new dt(e.c+e.b,e.d+e.a)}function I2n(e,t){return xN(),dc(e.d.p,t.d.p)}function eW(e){return kn(e.b!=0),pl(e,e.a.a)}function O2n(e){return kn(e.b!=0),pl(e,e.c.b)}function Q1e(e,t){if(!e)throw ne(new MXe(t))}function mP(e,t){if(!e)throw ne(new an(t))}function Z1e(e,t,n){Z6.call(this,e,t),this.b=n}function JS(e,t,n){dfe.call(this,e,t),this.c=n}function Ent(e,t,n){eut.call(this,t,n),this.d=e}function J1e(e){I1e(),qO.call(this),this.th(e)}function _nt(e,t,n){this.a=e,ay.call(this,t,n)}function Tnt(e,t,n){this.a=e,ay.call(this,t,n)}function yP(e,t,n){dfe.call(this,e,t),this.c=n}function Cnt(){kk(),Zbn.call(this,(og(),th))}function Snt(e){return e!=null&&!kX(e,lT,hT)}function N2n(e,t){return(Bht(e)<<4|Bht(t))&Oi}function P2n(e,t){return VP(),GX(e,t),new eit(e,t)}function Sp(e,t){var n;e.n&&(n=t,Ue(e.f,n))}function ok(e,t,n){var s;s=new uw(n),Wh(e,t,s)}function B2n(e,t){var n;return n=e.c,vge(e,t),n}function ede(e,t){return t<0?e.g=-1:e.g=t,e}function kP(e,t){return y4n(e),e.a*=t,e.b*=t,e}function Ant(e,t,n,s,a){e.c=t,e.d=n,e.b=s,e.a=a}function vr(e,t){return Ai(e,t,e.c.b,e.c),!0}function tde(e){e.a.b=e.b,e.b.a=e.a,e.a=e.b=null}function tW(e){this.b=e,this.a=ob(this.b.a).Ed()}function Mnt(e,t){this.b=e,this.a=t,dq.call(this)}function Dnt(e,t){this.a=e,this.b=t,dq.call(this)}function Lnt(e,t){yrt.call(this,t,1040),this.a=e}function eA(e){return e==0||isNaN(e)?e:e<0?-1:1}function F2n(e){return V4(),H1(e)==bi(Sg(e))}function R2n(e){return V4(),Sg(e)==bi(H1(e))}function ab(e,t){return b9(e,new Z6(t.a,t.b))}function j2n(e){return!Xs(e)&&e.c.i.c==e.d.i.c}function xP(e){var t;return t=e.n,e.a.b+t.d+t.a}function Int(e){var t;return t=e.n,e.e.b+t.d+t.a}function nde(e){var t;return t=e.n,e.e.a+t.b+t.c}function Ont(e){return Mr(),new N1(0,e)}function $2n(e){return e.a?e.a:PW(e)}function TE(e){if(!e)throw ne(new z6(null))}function Nnt(){Nnt=re,oie=(Rt(),new mq(Bee))}function EP(){EP=re,new Jpe((Dq(),Wee),(Lq(),Yee))}function Pnt(){Pnt=re,T3e=pe(Ws,Re,19,256,0,1)}function nW(e,t,n,s){Ape.call(this,e,t,n,s,0,0)}function H2n(e,t,n){return Pr(e.b,h(n.b,17),t)}function z2n(e,t,n){return Pr(e.b,h(n.b,17),t)}function G2n(e,t){return Ue(e,new dt(t.a,t.b))}function V2n(e,t){return e.c=t)throw ne(new Ule)}function Cbn(e,t,n){return pi(t,0,ade(t[0],n[0])),t}function Sbn(e,t,n){t.Ye(n,Pe(Je(_n(e.b,n)))*e.a)}function mrt(e,t,n){return Ry(),Pk(e,t)&&Pk(e,n)}function DE(e){return Qc(),!e.Hc(Ud)&&!e.Hc(Zg)}function FP(e){return new dt(e.c+e.b/2,e.d+e.a/2)}function gW(e,t){return t.kh()?Tg(e.b,h(t,49)):t}function xde(e,t){this.e=e,this.d=(t&64)!=0?t|a1:t}function yrt(e,t){this.c=0,this.d=e,this.b=t|64|a1}function RP(e){this.b=new Wo(11),this.a=(gy(),e)}function pW(e){this.b=null,this.a=(gy(),e||j3e)}function krt(e){this.a=Vft(e.a),this.b=new Bc(e.b)}function xrt(e){this.b=e,N4.call(this,e),_et(this)}function Ert(e){this.b=e,HS.call(this,e),Tet(this)}function cw(e,t,n){this.a=e,B4.call(this,t,n,5,6)}function Ede(e,t,n,s){this.b=e,Gi.call(this,t,n,s)}function fs(e,t,n,s,a){yK.call(this,e,t,n,s,a,-1)}function LE(e,t,n,s,a){yA.call(this,e,t,n,s,a,-1)}function Ye(e,t,n,s){Gi.call(this,e,t,n),this.b=s}function jP(e,t,n,s){JS.call(this,e,t,n),this.b=s}function _rt(e){TJe.call(this,e,!1),this.a=!1}function Trt(e,t){this.b=e,iqe.call(this,e.b),this.a=t}function Crt(e,t){lw(),D1n.call(this,e,dF(new _u(t)))}function $P(e,t){return Mr(),new Fde(e,t,0)}function bW(e,t){return Mr(),new Fde(6,e,t)}function Abn(e,t){return Nt(e.substr(0,t.length),t)}function Au(e,t){return ws(t)?RW(e,t):!!Ia(e.f,t)}function Ls(e,t){for(rn(t);e.Ob();)t.td(e.Pb())}function fy(e,t,n){Dg(),this.e=e,this.d=t,this.a=n}function l0(e,t,n,s){var a;a=e.i,a.i=t,a.a=n,a.b=s}function _de(e){var t;for(t=e;t.f;)t=t.f;return t}function H4(e){var t;return t=e9(e),kn(t!=null),t}function Mbn(e){var t;return t=gkn(e),kn(t!=null),t}function uk(e,t){var n;return n=e.a.gc(),P0e(t,n),n-t}function Tde(e,t){var n;for(n=0;n0?d.Math.log(e/t):-100}function Srt(e,t){return mo(e,t)<0?-1:mo(e,t)>0?1:0}function Dde(e,t,n){return w2t(e,h(t,46),h(n,167))}function Art(e,t){return h(yde(ob(e.a)).Xb(t),42).cd()}function Rbn(e,t){return o4n(t,e.length),new Lnt(e,t)}function yW(e,t){this.d=e,Tn.call(this,e),this.e=t}function cb(e){this.d=(rn(e),e),this.a=0,this.c=_R}function Lde(e,t){G2.call(this,1),this.a=e,this.b=t}function Mrt(e,t){return e.c?Mrt(e.c,t):Ue(e.b,t),e}function jbn(e,t,n){var s;return s=bw(e,t),iK(e,t,n),s}function Ide(e,t){var n;return n=e.slice(0,t),K0e(n,e)}function Drt(e,t,n){var s;for(s=0;s=e.g}function MW(e,t,n){var s;return s=$K(e,t,n),ave(e,s)}function z4(e,t){var n;n=e.a.length,bw(e,n),iK(e,n,t)}function Urt(e,t){var n;n=console[e],n.call(console,t)}function qrt(e,t){var n;++e.j,n=e.Vi(),e.Ii(e.oi(n,t))}function Qbn(e,t,n){h(t.b,65),mc(t.a,new j1e(e,n,t))}function Bde(e,t,n){eN.call(this,t),this.a=e,this.b=n}function Fde(e,t,n){G2.call(this,e),this.a=t,this.b=n}function Rde(e,t,n){this.a=e,Fle.call(this,t),this.b=n}function Yrt(e,t,n){this.a=e,g0e.call(this,8,t,null,n)}function Zbn(e){this.a=(rn(lr),lr),this.b=e,new ihe}function Wrt(e){this.c=e,this.b=this.c.a,this.a=this.c.e}function jde(e){this.c=e,this.b=e.a.d.a,a1e(e.a.e,this)}function Mu(e){tw(e.c!=-1),e.d.$c(e.c),e.b=e.c,e.c=-1}function NE(e){return d.Math.sqrt(e.a*e.a+e.b*e.b)}function lb(e,t){return ck(t,e.a.c.length),ut(e.a,t)}function n1(e,t){return Me(e)===Me(t)||e!=null&&Nr(e,t)}function Jbn(e){return 0>=e?new Lhe:j4n(e-1)}function evn(e){return xm?RW(xm,e):!1}function Krt(e){return e?e.dc():!e.Kc().Ob()}function Us(e){return!e.a&&!!e.c?e.c.b:e.a}function tvn(e){return!e.a&&(e.a=new Gi(Jg,e,4)),e.a}function hb(e){return!e.d&&(e.d=new Gi(pa,e,1)),e.d}function rn(e){if(e==null)throw ne(new P7);return e}function PE(e){e.c?e.c.He():(e.d=!0,aAn(e))}function vg(e){e.c?vg(e.c):(Up(e),e.d=!0)}function Xrt(e){Gde(e.a),e.b=pe(yn,st,1,e.b.length,5,1)}function nvn(e,t){return dc(t.j.c.length,e.j.c.length)}function rvn(e,t){e.c<0||e.b.b=0?e.Bh(n):bbe(e,t)}function Qrt(e){var t,n;return t=e.c.i.c,n=e.d.i.c,t==n}function svn(e){if(e.p!=4)throw ne(new Ic);return e.e}function avn(e){if(e.p!=3)throw ne(new Ic);return e.e}function ovn(e){if(e.p!=6)throw ne(new Ic);return e.f}function cvn(e){if(e.p!=6)throw ne(new Ic);return e.k}function uvn(e){if(e.p!=3)throw ne(new Ic);return e.j}function lvn(e){if(e.p!=4)throw ne(new Ic);return e.j}function $de(e){return!e.b&&(e.b=new tN(new Mq)),e.b}function fb(e){return e.c==-2&&cfn(e,A9n(e.g,e.b)),e.c}function fk(e,t){var n;return n=_W("",e),n.n=t,n.i=1,n}function hvn(e,t){uW(h(t.b,65),e),mc(t.a,new Mle(e))}function fvn(e,t){qn((!e.a&&(e.a=new qS(e,e)),e.a),t)}function Zrt(e,t){this.b=e,yW.call(this,e,t),_et(this)}function Jrt(e,t){this.b=e,M1e.call(this,e,t),Tet(this)}function Hde(e,t,n,s){Z2.call(this,e,t),this.d=n,this.a=s}function GP(e,t,n,s){Z2.call(this,e,n),this.a=t,this.f=s}function eit(e,t){qdn.call(this,$4n(Vn(e),Vn(t))),this.a=t}function tit(){W2e.call(this,o2,(nQe(),r_t)),NIn(this)}function nit(){W2e.call(this,Vl,(q6(),mEe)),GLn(this)}function rit(){ar.call(this,"DELAUNAY_TRIANGULATION",0)}function dvn(e){return String.fromCharCode.apply(null,e)}function Pr(e,t,n){return ws(t)?Ta(e,t,n):sc(e.f,t,n)}function zde(e){return Rt(),e?e.ve():(gy(),gy(),H3e)}function gvn(e,t,n){return n5(),n.pg(e,h(t.cd(),146))}function iit(e,t){return EP(),new Jpe(new jet(e),new Ret(t))}function pvn(e){return Uu(e,pZ),PB(Vs(Vs(5,e),e/10|0))}function VP(){VP=re,n3t=new Iq(se(ie(c2,1),TR,42,0,[]))}function sit(e){return!e.d&&(e.d=new B6(e.c.Cc())),e.d}function dk(e){return!e.a&&(e.a=new FXe(e.c.vc())),e.a}function ait(e){return!e.b&&(e.b=new G6(e.c.ec())),e.b}function B1(e,t){for(;t-- >0;)e=e<<1|(e<0?1:0);return e}function Bo(e,t){return Me(e)===Me(t)||e!=null&&Nr(e,t)}function bvn(e,t){return on(),h(t.b,19).as&&++s,s}function xd(e){var t,n;return n=(t=new V2,t),Sk(n,e),n}function NW(e){var t,n;return n=(t=new V2,t),Q2e(n,e),n}function Lvn(e,t){var n;return n=_n(e.f,t),Age(t,n),null}function PW(e){var t;return t=z4n(e),t||null}function bit(e){return!e.b&&(e.b=new Ye(us,e,12,3)),e.b}function Ivn(e){return e!=null&&kS(XH,e.toLowerCase())}function Ovn(e,t){return Ui(Fc(e)*Su(e),Fc(t)*Su(t))}function Nvn(e,t){return Ui(Fc(e)*Su(e),Fc(t)*Su(t))}function Pvn(e,t){return Ui(e.d.c+e.d.b/2,t.d.c+t.d.b/2)}function Bvn(e,t){return Ui(e.g.c+e.g.b/2,t.g.c+t.g.b/2)}function vit(e,t,n){n.a?kc(e,t.b-e.f/2):yc(e,t.a-e.g/2)}function wit(e,t,n,s){this.a=e,this.b=t,this.c=n,this.d=s}function mit(e,t,n,s){this.a=e,this.b=t,this.c=n,this.d=s}function Dp(e,t,n,s){this.e=e,this.a=t,this.c=n,this.d=s}function yit(e,t,n,s){this.a=e,this.c=t,this.d=n,this.b=s}function kit(e,t,n,s){ul(),dot.call(this,t,n,s),this.a=e}function xit(e,t,n,s){ul(),dot.call(this,t,n,s),this.a=e}function Eit(e,t){this.a=e,z0n.call(this,e,h(e.d,15).Zc(t))}function BW(e){this.f=e,this.c=this.f.e,e.f>0&&P1t(this)}function _it(e,t,n,s){this.b=e,this.c=s,xY.call(this,t,n)}function Tit(e){return kn(e.b=0&&Nt(e.substr(n,t.length),t)}function wg(e,t,n,s,a,u,p){return new aK(e.e,t,n,s,a,u,p)}function zit(e,t,n,s,a,u){this.a=e,OK.call(this,t,n,s,a,u)}function Git(e,t,n,s,a,u){this.a=e,OK.call(this,t,n,s,a,u)}function Vit(e,t){this.g=e,this.d=se(ie(X1,1),T0,10,0,[t])}function h0(e,t){this.e=e,this.a=yn,this.b=dpt(t),this.c=t}function Uit(e,t){gP.call(this),rge(this),this.a=e,this.c=t}function oA(e,t,n,s){pi(e.c[t.g],n.g,s),pi(e.c[n.g],t.g,s)}function HW(e,t,n,s){pi(e.c[t.g],t.g,n),pi(e.b[t.g],t.g,s)}function iwn(){return bA(),se(ie(oxe,1),ze,376,0,[Wne,RD])}function swn(){return xA(),se(ie(J5e,1),ze,479,0,[Z5e,M$])}function awn(){return DA(),se(ie(X5e,1),ze,419,0,[S$,K5e])}function own(){return TB(),se(ie(z5e,1),ze,422,0,[H5e,Kte])}function cwn(){return gB(),se(ie(f6e,1),ze,420,0,[lne,h6e])}function uwn(){return CA(),se(ie(rxe,1),ze,421,0,[Une,qne])}function lwn(){return GE(),se(ie(o8t,1),ze,523,0,[$_,j_])}function hwn(){return qh(),se(ie(L8t,1),ze,520,0,[fm,qg])}function fwn(){return r1(),se(ie(g8t,1),ze,516,0,[lv,I0])}function dwn(){return yf(),se(ie(b8t,1),ze,515,0,[v2,Rf])}function gwn(){return gb(),se(ie(R8t,1),ze,455,0,[Yg,m3])}function pwn(){return lB(),se(ie(Lxe,1),ze,425,0,[ure,Dxe])}function bwn(){return aB(),se(ie(Mxe,1),ze,480,0,[cre,Axe])}function vwn(){return QB(),se(ie(Ixe,1),ze,495,0,[vH,p8])}function wwn(){return SB(),se(ie(Nxe,1),ze,426,0,[Oxe,dre])}function mwn(){return $A(),se(ie(F8e,1),ze,429,0,[CH,B8e])}function ywn(){return vA(),se(ie(p8e,1),ze,430,0,[xre,_H])}function kwn(){return SF(),se(ie(e4e,1),ze,428,0,[ute,J3e])}function xwn(){return OB(),se(ie(n4e,1),ze,427,0,[t4e,lte])}function Ewn(){return NB(),se(ie(D4e,1),ze,424,0,[kte,Xj])}function _wn(){return Nk(),se(ie(D5t,1),ze,511,0,[kD,Nte])}function tB(e,t,n,s){return n>=0?e.jh(t,n,s):e.Sg(null,n,s)}function zW(e){return e.b.b==0?e.a.$e():eW(e.b)}function Twn(e){if(e.p!=5)throw ne(new Ic);return Gn(e.f)}function Cwn(e){if(e.p!=5)throw ne(new Ic);return Gn(e.k)}function Qde(e){return Me(e.a)===Me((GK(),iie))&&SIn(e),e.a}function qit(e){this.a=h(Vn(e),271),this.b=(Rt(),new Vfe(e))}function Yit(e,t){Yhn(this,new dt(e.a,e.b)),Whn(this,ZS(t))}function gb(){gb=re,Yg=new sfe(w5,0),m3=new sfe(m5,1)}function r1(){r1=re,lv=new rfe(m5,0),I0=new rfe(w5,1)}function pb(){Bfn.call(this,new S4(vw(12))),$fe(!0),this.a=2}function GW(e,t,n){Mr(),G2.call(this,e),this.b=t,this.a=n}function Zde(e,t,n){ul(),eN.call(this,t),this.a=e,this.b=n}function Wit(e){gP.call(this),rge(this),this.a=e,this.c=!0}function Kit(e){var t;t=e.c.d.b,e.b=t,e.a=e.c.d,t.a=e.c.d.b=e}function nB(e){var t;O4n(e.a),iet(e.a),t=new XO(e.a),Spe(t)}function Swn(e,t){ipt(e,!0),mc(e.e.wf(),new P1e(e,!0,t))}function rB(e,t){return Aat(t),D4n(e,pe(Hn,hr,25,t,15,1),t)}function Awn(e,t){return V4(),e==bi(H1(t))||e==bi(Sg(t))}function Fo(e,t){return t==null?no(Ia(e.f,null)):Z7(e.g,t)}function Mwn(e){return e.b==0?null:(kn(e.b!=0),pl(e,e.a.a))}function Li(e){return Math.max(Math.min(e,Ir),-2147483648)|0}function Dwn(e,t){var n=Jee[e.charCodeAt(0)];return n==null?e:n}function iB(e,t){return XP(e,"set1"),XP(t,"set2"),new GQe(e,t)}function Lwn(e,t){var n;return n=T4n(e.f,t),zr(fP(n),e.f.d)}function FE(e,t){var n,s;return n=t,s=new $e,q2t(e,n,s),s.d}function VW(e,t,n,s){var a;a=new Btt,t.a[n.g]=a,j4(e.b,s,a)}function Jde(e,t,n){var s;s=e.Yg(t),s>=0?e.sh(s,n):zbe(e,t,n)}function py(e,t,n){oB(),e&&Pr(tie,e,t),e&&Pr(gL,e,n)}function Xit(e,t,n){this.i=new qe,this.b=e,this.g=t,this.a=n}function sB(e,t,n){this.c=new qe,this.e=e,this.f=t,this.b=n}function e0e(e,t,n){this.a=new qe,this.e=e,this.f=t,this.c=n}function Qit(e,t){nP(this),this.f=t,this.g=e,KP(this),this._d()}function cA(e,t){var n;n=e.q.getHours(),e.q.setDate(t),C9(e,n)}function Zit(e,t){var n;for(Vn(t),n=e.a;n;n=n.c)t.Od(n.g,n.i)}function Jit(e){var t;return t=new gN(vw(e.length)),Uge(t,e),t}function Iwn(e){function t(){}return t.prototype=e||{},new t}function Own(e,t){return Alt(e,t)?(Cut(e),!0):!1}function Ed(e,t){if(t==null)throw ne(new P7);return Dxn(e,t)}function Nwn(e){if(e.qe())return null;var t=e.n;return Oj[t]}function uA(e){return e.Db>>16!=3?null:h(e.Cb,33)}function mf(e){return e.Db>>16!=9?null:h(e.Cb,33)}function est(e){return e.Db>>16!=6?null:h(e.Cb,79)}function tst(e){return e.Db>>16!=7?null:h(e.Cb,235)}function nst(e){return e.Db>>16!=7?null:h(e.Cb,160)}function bi(e){return e.Db>>16!=11?null:h(e.Cb,33)}function rst(e,t){var n;return n=e.Yg(t),n>=0?e.lh(n):mQ(e,t)}function ist(e,t){var n;return n=new sde(t),sdt(n,e),new Bc(n)}function t0e(e){var t;return t=e.d,t=e.si(e.f),qn(e,t),t.Ob()}function sst(e,t){return e.b+=t.b,e.c+=t.c,e.d+=t.d,e.a+=t.a,e}function UW(e,t){return d.Math.abs(e)0}function ast(){this.a=new md,this.e=new ns,this.g=0,this.i=0}function ost(e){this.a=e,this.b=pe(i8t,Re,1944,e.e.length,0,2)}function qW(e,t,n){var s;s=Wlt(e,t,n),e.b=new XB(s.c.length)}function yf(){yf=re,v2=new nfe(ZZ,0),Rf=new nfe("UP",1)}function aB(){aB=re,cre=new afe(ywt,0),Axe=new afe("FAN",1)}function oB(){oB=re,tie=new zn,gL=new zn,tdn(y3t,new Pze)}function Bwn(e){if(e.p!=0)throw ne(new Ic);return fE(e.f,0)}function Fwn(e){if(e.p!=0)throw ne(new Ic);return fE(e.k,0)}function cst(e){return e.Db>>16!=3?null:h(e.Cb,147)}function vk(e){return e.Db>>16!=6?null:h(e.Cb,235)}function hw(e){return e.Db>>16!=17?null:h(e.Cb,26)}function ust(e,t){var n=e.a=e.a||[];return n[t]||(n[t]=e.le(t))}function Rwn(e,t){var n;return n=e.a.get(t),n==null?new Array:n}function jwn(e,t){var n;n=e.q.getHours(),e.q.setMonth(t),C9(e,n)}function Ta(e,t,n){return t==null?sc(e.f,null,n):Ab(e.g,t,n)}function RE(e,t,n,s,a,u){return new Sd(e.e,t,e.aj(),n,s,a,u)}function lA(e,t,n){return e.a=$u(e.a,0,t)+(""+n)+jS(e.a,t),e}function $wn(e,t,n){return Ue(e.a,(VP(),GX(t,n),new Z2(t,n))),e}function n0e(e){return zfe(e.c),e.e=e.a=e.c,e.c=e.c.c,++e.d,e.a.f}function lst(e){return zfe(e.e),e.c=e.a=e.e,e.e=e.e.e,--e.d,e.a.f}function xs(e,t){e.d&&vc(e.d.e,e),e.d=t,e.d&&Ue(e.d.e,e)}function Gs(e,t){e.c&&vc(e.c.g,e),e.c=t,e.c&&Ue(e.c.g,e)}function Ca(e,t){e.c&&vc(e.c.a,e),e.c=t,e.c&&Ue(e.c.a,e)}function Ka(e,t){e.i&&vc(e.i.j,e),e.i=t,e.i&&Ue(e.i.j,e)}function hst(e,t,n){this.a=t,this.c=e,this.b=(Vn(n),new Bc(n))}function fst(e,t,n){this.a=t,this.c=e,this.b=(Vn(n),new Bc(n))}function dst(e,t){this.a=e,this.c=ro(this.a),this.b=new eB(t)}function Hwn(e){var t;return Up(e),t=new ns,Jr(e,new jqe(t))}function fw(e,t){if(e<0||e>t)throw ne(new Ea(owe+e+cwe+t))}function r0e(e,t){return rrt(e.a,t)?Sde(e,h(t,22).g,null):null}function zwn(e){return uX(),on(),h(e.a,81).d.e!=0}function gst(){gst=re,s3t=ur((aN(),se(ie(i3t,1),ze,538,0,[Qee])))}function pst(){pst=re,Uxt=Wc(new rs,(Zs(),Pa),(oa(),xD))}function i0e(){i0e=re,qxt=Wc(new rs,(Zs(),Pa),(oa(),xD))}function bst(){bst=re,Wxt=Wc(new rs,(Zs(),Pa),(oa(),xD))}function vst(){vst=re,u8t=Lr(new rs,(Zs(),Pa),(oa(),w_))}function Hu(){Hu=re,f8t=Lr(new rs,(Zs(),Pa),(oa(),w_))}function wst(){wst=re,d8t=Lr(new rs,(Zs(),Pa),(oa(),w_))}function YW(){YW=re,w8t=Lr(new rs,(Zs(),Pa),(oa(),w_))}function mst(){mst=re,i7t=Wc(new rs,(tx(),z_),(w9(),Jne))}function Ip(e,t,n,s){this.c=e,this.d=s,KW(this,t),XW(this,n)}function q4(e){this.c=new di,this.b=e.b,this.d=e.c,this.a=e.a}function WW(e){this.a=d.Math.cos(e),this.b=d.Math.sin(e)}function KW(e,t){e.a&&vc(e.a.k,e),e.a=t,e.a&&Ue(e.a.k,e)}function XW(e,t){e.b&&vc(e.b.f,e),e.b=t,e.b&&Ue(e.b.f,e)}function yst(e,t){Qbn(e,e.b,e.c),h(e.b.b,65),t&&h(t.b,65).b}function Gwn(e,t){ype(e,t),ue(e.Cb,88)&&Lw(ou(h(e.Cb,88)),2)}function QW(e,t){ue(e.Cb,88)&&Lw(ou(h(e.Cb,88)),4),Ko(e,t)}function cB(e,t){ue(e.Cb,179)&&(h(e.Cb,179).tb=null),Ko(e,t)}function Ro(e,t){return ia(),SK(t)?new _P(t,e):new RS(t,e)}function Vwn(e,t){var n,s;n=t.c,s=n!=null,s&&z4(e,new uw(t.c))}function kst(e){var t,n;return n=(q6(),t=new V2,t),Sk(n,e),n}function xst(e){var t,n;return n=(q6(),t=new V2,t),Sk(n,e),n}function Est(e,t){var n;return n=new Nl(e),t.c[t.c.length]=n,n}function _st(e,t){var n;return n=h(xw(U4(e.a),t),14),n?n.gc():0}function Tst(e){var t;return Up(e),t=(gy(),gy(),$3e),FB(e,t)}function Cst(e){for(var t;;)if(t=e.Pb(),!e.Ob())return t}function s0e(e,t){Nfn.call(this,new S4(vw(e))),Uu(t,jbt),this.a=t}function F1(e,t,n){Oht(t,n,e.gc()),this.c=e,this.a=t,this.b=n-t}function Sst(e,t,n){var s;Oht(t,n,e.c.length),s=n-t,Mhe(e.c,t,s)}function Uwn(e,t){Eet(e,Gn(Zi(dg(t,24),AR)),Gn(Zi(t,AR)))}function Kt(e,t){if(e<0||e>=t)throw ne(new Ea(owe+e+cwe+t))}function er(e,t){if(e<0||e>=t)throw ne(new vhe(owe+e+cwe+t))}function Wt(e,t){this.b=(rn(e),e),this.a=(t&$w)==0?t|64|a1:t}function Ast(e){ret(this),FKe(this.a,Gge(d.Math.max(8,e))<<1)}function kf(e){return Qa(se(ie(cs,1),Re,8,0,[e.i.n,e.n,e.a]))}function qwn(){return Af(),se(ie(gu,1),ze,132,0,[X3e,Zu,Kw])}function Ywn(){return Kh(),se(ie(Xw,1),ze,232,0,[ao,Jo,oo])}function Wwn(){return Xc(),se(ie(G3t,1),ze,461,0,[v1,jg,Sh])}function Kwn(){return wc(),se(ie(U3t,1),ze,462,0,[nf,$g,Ah])}function Xwn(){return Sb(),se(ie(W4e,1),ze,423,0,[i3,Y4e,Lte])}function Qwn(){return UE(),se(ie(V4e,1),ze,379,0,[Tte,_te,Cte])}function Zwn(){return t9(),se(ie(Yke,1),ze,378,0,[jne,qke,nH])}function Jwn(){return e5(),se(ie(V5e,1),ze,314,0,[I5,_D,G5e])}function emn(){return GB(),se(ie(q5e,1),ze,337,0,[U5e,C$,Xte])}function tmn(){return Hp(),se(ie(s6t,1),ze,450,0,[Jte,t8,c3])}function nmn(){return Tb(),se(ie($te,1),ze,361,0,[ev,zg,Jb])}function rmn(){return Ad(),se(ie(d6t,1),ze,303,0,[CD,l3,O5])}function imn(){return jk(),se(ie(une,1),ze,292,0,[one,cne,TD])}function smn(){return ua(),se(ie(Rxt,1),ze,452,0,[B_,Jc,ec])}function amn(){return Dd(),se(ie(nxe,1),ze,339,0,[Ug,txe,Vne])}function omn(){return nF(),se(ie(axe,1),ze,375,0,[ixe,Yne,sxe])}function cmn(){return oF(),se(ie(dxe,1),ze,377,0,[Qne,d8,hm])}function umn(){return qk(),se(ie(uxe,1),ze,336,0,[Kne,cxe,F_])}function lmn(){return eF(),se(ie(fxe,1),ze,338,0,[hxe,Xne,lxe])}function hmn(){return _b(),se(ie(n8t,1),ze,454,0,[jD,R_,aH])}function fmn(){return wF(),se(ie(u7t,1),ze,442,0,[fre,lre,hre])}function dmn(){return VA(),se(ie(Fxe,1),ze,380,0,[wH,Pxe,Bxe])}function gmn(){return vF(),se(ie(t8e,1),ze,381,0,[e8e,wre,Jxe])}function pmn(){return tF(),se(ie(Qxe,1),ze,293,0,[vre,Xxe,Kxe])}function bmn(){return XA(),se(ie(mre,1),ze,437,0,[kH,xH,EH])}function vmn(){return Ld(),se(ie(V7e,1),ze,334,0,[BH,B0,tT])}function wmn(){return Tf(),se(ie(I7e,1),ze,272,0,[w8,pm,m8])}function mmn(e,t){return $Cn(e,t,ue(t,99)&&(h(t,18).Bb&ea)!=0)}function ymn(e,t,n){var s;return s=M9(e,t,!1),s.b<=t&&s.a<=n}function Mst(e,t,n){var s;s=new H$e,s.b=t,s.a=n,++t.b,Ue(e.d,s)}function kmn(e,t){var n;return n=(rn(e),e).g,e1e(!!n),rn(t),n(t)}function a0e(e,t){var n,s;return s=uk(e,t),n=e.a.Zc(s),new zQe(e,n)}function xmn(e){return e.Db>>16!=6?null:h(xQ(e),235)}function Emn(e){if(e.p!=2)throw ne(new Ic);return Gn(e.f)&Oi}function _mn(e){if(e.p!=2)throw ne(new Ic);return Gn(e.k)&Oi}function Tmn(e){return e.a==(kk(),ez)&&ofn(e,nSn(e.g,e.b)),e.a}function Y4(e){return e.d==(kk(),ez)&&ufn(e,KMn(e.g,e.b)),e.d}function K(e){return kn(e.as?1:0}function Dst(e,t){var n,s;return n=xK(t),s=n,h(_n(e.c,s),19).a}function Lst(e,t){var n;for(n=e+"";n.length0&&e.a[--e.d]==0;);e.a[e.d++]==0&&(e.e=0)}function Xst(e){return e.a?e.e.length==0?e.a.a:e.a.a+(""+e.e):e.c}function Bmn(e){return!!e.a&&cu(e.a.a).i!=0&&!(!!e.b&&$X(e.b))}function Fmn(e){return!!e.u&&Co(e.u.a).i!=0&&!(!!e.n&&jX(e.n))}function Qst(e){return iW(e.e.Hd().gc()*e.c.Hd().gc(),16,new qUe(e))}function Rmn(e,t){return Srt(xc(e.q.getTime()),xc(t.q.getTime()))}function i1(e){return h(Mf(e,pe(Ite,gJ,17,e.c.length,0,1)),474)}function hA(e){return h(Mf(e,pe(X1,T0,10,e.c.length,0,1)),193)}function jmn(e){return Hu(),!Xs(e)&&!(!Xs(e)&&e.c.i.c==e.d.i.c)}function Zst(e,t,n){var s;s=(Vn(e),new Bc(e)),p7n(new hst(s,t,n))}function fA(e,t,n){var s;s=(Vn(e),new Bc(e)),b7n(new fst(s,t,n))}function Jst(e,t){var n;return n=1-t,e.a[n]=KB(e.a[n],n),KB(e,t)}function eat(e,t){var n;e.e=new lhe,n=Nw(t),hs(n,e.c),Ygt(e,n,0)}function Es(e,t,n,s){var a;a=new Xue,a.a=t,a.b=n,a.c=s,vr(e.a,a)}function et(e,t,n,s){var a;a=new Xue,a.a=t,a.b=n,a.c=s,vr(e.b,a)}function yh(e){var t,n,s;return t=new Nrt,n=HQ(t,e),_On(t),s=n,s}function f0e(){var e,t,n;return t=(n=(e=new V2,e),n),Ue(MEe,t),t}function hB(e){return e.j.c=pe(yn,st,1,0,5,1),Gde(e.c),mvn(e.a),e}function by(e){return W7(),ue(e.g,10)?h(e.g,10):null}function $mn(e){return dy(e).dc()?!1:(jdn(e,new H),!0)}function Hmn(e){if(!("stack"in e))try{throw e}catch{}return e}function dA(e,t){if(e<0||e>=t)throw ne(new Ea(eTn(e,t)));return e}function tat(e,t,n){if(e<0||tn)throw ne(new Ea(T_n(e,t,n)))}function tK(e,t){if(Qi(e.a,t),t.d)throw ne(new Ya(ovt));t.d=e}function nK(e,t){if(t.$modCount!=e.$modCount)throw ne(new cl)}function nat(e,t){return ue(t,42)?UX(e.a,h(t,42)):!1}function rat(e,t){return ue(t,42)?UX(e.a,h(t,42)):!1}function iat(e,t){return ue(t,42)?UX(e.a,h(t,42)):!1}function zmn(e,t){return e.a<=e.b?(t.ud(e.a++),!0):!1}function vb(e){var t;return $a(e)?(t=e,t==-0?0:t):Q3n(e)}function fB(e){var t;return vg(e),t=new Ie,ty(e.a,new Fqe(t)),t}function sat(e){var t;return vg(e),t=new Ze,ty(e.a,new Bqe(t)),t}function Ms(e,t){this.a=e,L7.call(this,e),fw(t,e.gc()),this.b=t}function d0e(e){this.e=e,this.b=this.e.a.entries(),this.a=new Array}function Gmn(e){return iW(e.e.Hd().gc()*e.c.Hd().gc(),273,new UUe(e))}function dB(e){return new Wo((Uu(e,pZ),PB(Vs(Vs(5,e),e/10|0))))}function aat(e){return h(Mf(e,pe(S5t,Fvt,11,e.c.length,0,1)),1943)}function Vmn(e,t,n){return n.f.c.length>0?Dde(e.a,t,n):Dde(e.b,t,n)}function Umn(e,t,n){e.d&&vc(e.d.e,e),e.d=t,e.d&&aw(e.d.e,n,e)}function rK(e,t){RNn(t,e),K1e(e.d),K1e(h(U(e,(tt(),K$)),207))}function $E(e,t){FNn(t,e),W1e(e.d),W1e(h(U(e,(tt(),K$)),207))}function wb(e,t){var n,s;return n=Ed(e,t),s=null,n&&(s=n.fe()),s}function wk(e,t){var n,s;return n=bw(e,t),s=null,n&&(s=n.ie()),s}function HE(e,t){var n,s;return n=Ed(e,t),s=null,n&&(s=n.ie()),s}function _d(e,t){var n,s;return n=Ed(e,t),s=null,n&&(s=ibe(n)),s}function qmn(e,t,n){var s;return s=Jk(n),lR(e.g,s,t),lR(e.i,t,n),t}function Ymn(e,t,n){var s;s=kxn();try{return Z0n(e,t,n)}finally{iyn(s)}}function oat(e){var t;t=e.Wg(),this.a=ue(t,69)?h(t,69).Zh():t.Kc()}function rs(){mXe.call(this),this.j.c=pe(yn,st,1,0,5,1),this.a=-1}function g0e(e,t,n,s){this.d=e,this.n=t,this.g=n,this.o=s,this.p=-1}function cat(e,t,n,s){this.e=s,this.d=null,this.c=e,this.a=t,this.b=n}function p0e(e,t,n){this.d=new WYe(this),this.e=e,this.i=t,this.f=n}function gB(){gB=re,lne=new Zhe(Cx,0),h6e=new Zhe("TOP_LEFT",1)}function uat(){uat=re,pxe=iit(Ke(1),Ke(4)),gxe=iit(Ke(1),Ke(2))}function lat(){lat=re,J7t=ur((_N(),se(ie(Z7t,1),ze,551,0,[kre])))}function hat(){hat=re,Q7t=ur((EN(),se(ie(g8e,1),ze,482,0,[yre])))}function fat(){fat=re,vEt=ur((K7(),se(ie(P8e,1),ze,530,0,[UD])))}function dat(){dat=re,E4t=ur((kN(),se(ie(E4e,1),ze,481,0,[bte])))}function Wmn(){return Cb(),se(ie(b4t,1),ze,406,0,[fD,hD,gte,pte])}function Kmn(){return AB(),se(ie(Hj,1),ze,297,0,[ate,q3e,Y3e,W3e])}function Xmn(){return h9(),se(ie(k4t,1),ze,394,0,[vD,qj,Yj,wD])}function Qmn(){return o5(),se(ie(w4t,1),ze,323,0,[gD,dD,pD,bD])}function Zmn(){return $k(),se(ie(p5t,1),ze,405,0,[Zb,Zw,Qw,r3])}function Jmn(){return aF(),se(ie(N5t,1),ze,360,0,[Rte,m$,y$,ED])}function gat(e,t,n,s){return ue(n,54)?new ett(e,t,n,s):new mde(e,t,n,s)}function eyn(){return Sf(),se(ie(G5t,1),ze,411,0,[L5,Xx,Qx,jte])}function tyn(e){var t;return e.j==(Qe(),Fn)&&(t=B0t(e),Pc(t,pn))}function nyn(e,t){var n;n=t.a,Gs(n,t.c.d),xs(n,t.d.d),mw(n.a,e.n)}function pat(e,t){return h(sb(PP(h(jr(e.k,t),15).Oc(),s3)),113)}function bat(e,t){return h(sb(BP(h(jr(e.k,t),15).Oc(),s3)),113)}function ryn(e){return new Wt(e5n(h(e.a.dd(),14).gc(),e.a.cd()),16)}function mk(e){return ue(e,14)?h(e,14).dc():!e.Kc().Ob()}function W4(e){return W7(),ue(e.g,145)?h(e.g,145):null}function vat(e){if(e.e.g!=e.b)throw ne(new cl);return!!e.c&&e.d>0}function gr(e){return kn(e.b!=e.d.c),e.c=e.b,e.b=e.b.a,++e.a,e.c.c}function b0e(e,t){rn(t),pi(e.a,e.c,t),e.c=e.c+1&e.a.length-1,w1t(e)}function mg(e,t){rn(t),e.b=e.b-1&e.a.length-1,pi(e.a,e.b,t),w1t(e)}function wat(e,t){var n;for(n=e.j.c.length;n0&&Ao(e.g,0,t,0,e.i),t}function xat(e,t){SN();var n;return n=h(_n(KH,e),55),!n||n.wj(t)}function byn(e){if(e.p!=1)throw ne(new Ic);return Gn(e.f)<<24>>24}function vyn(e){if(e.p!=1)throw ne(new Ic);return Gn(e.k)<<24>>24}function wyn(e){if(e.p!=7)throw ne(new Ic);return Gn(e.k)<<16>>16}function myn(e){if(e.p!=7)throw ne(new Ic);return Gn(e.f)<<16>>16}function Td(e){var t;for(t=0;e.Ob();)e.Pb(),t=Vs(t,1);return PB(t)}function Eat(e,t){var n;return n=new Kv,e.xd(n),n.a+="..",t.yd(n),n.a}function yyn(e,t,n){var s;s=h(_n(e.g,n),57),Ue(e.a.c,new As(t,s))}function kyn(e,t,n){return dW(Je(no(Ia(e.f,t))),Je(no(Ia(e.f,n))))}function pB(e,t,n){return fR(e,t,n,ue(t,99)&&(h(t,18).Bb&ea)!=0)}function xyn(e,t,n){return px(e,t,n,ue(t,99)&&(h(t,18).Bb&ea)!=0)}function Eyn(e,t,n){return qCn(e,t,n,ue(t,99)&&(h(t,18).Bb&ea)!=0)}function m0e(e,t){return e==(bn(),Wi)&&t==Wi?4:e==Wi||t==Wi?8:32}function _at(e,t){return Me(t)===Me(e)?"(this Map)":t==null?_c:Ga(t)}function _yn(e,t){return h(t==null?no(Ia(e.f,null)):Z7(e.g,t),281)}function Tat(e,t,n){var s;return s=Jk(n),Pr(e.b,s,t),Pr(e.c,t,n),t}function Cat(e,t){var n;for(n=t;n;)nw(e,n.i,n.j),n=bi(n);return e}function y0e(e,t){var n;return n=sA(sk(new EK(e,t))),CP(new EK(e,t)),n}function R1(e,t){ia();var n;return n=h(e,66).Mj(),i_n(n,t),n.Ok(t)}function Tyn(e,t,n,s,a){var u;u=QCn(a,n,s),Ue(t,K_n(a,u)),$9n(e,a,t)}function Sat(e,t,n){e.i=0,e.e=0,t!=n&&(Zlt(e,t,n),Qlt(e,t,n))}function k0e(e,t){var n;n=e.q.getHours(),e.q.setFullYear(t+Og),C9(e,n)}function Cyn(e,t,n){if(n){var s=n.ee();e.a[t]=s(n)}else delete e.a[t]}function iK(e,t,n){if(n){var s=n.ee();n=s(n)}else n=void 0;e.a[t]=n}function Aat(e){if(e<0)throw ne(new LXe("Negative array size: "+e))}function Co(e){return e.n||(ou(e),e.n=new ort(e,pa,e),La(e)),e.n}function zE(e){return kn(e.a=0&&e.a[n]===t[n];n--);return n<0}function Oat(e,t){Uk();var n;return n=e.j.g-t.j.g,n!=0?n:0}function Nat(e,t){return rn(t),e.a!=null?hbn(t.Kb(e.a)):$j}function bB(e){var t;return e?new sde(e):(t=new md,zK(t,e),t)}function Gu(e,t){var n;return t.b.Kb(Cct(e,t.c.Ee(),(n=new Hqe(t),n)))}function vB(e){z2e(),Eet(this,Gn(Zi(dg(e,24),AR)),Gn(Zi(e,AR)))}function Pat(){Pat=re,F3t=ur((SF(),se(ie(e4e,1),ze,428,0,[ute,J3e])))}function Bat(){Bat=re,R3t=ur((OB(),se(ie(n4e,1),ze,427,0,[t4e,lte])))}function Fat(){Fat=re,$4t=ur((NB(),se(ie(D4e,1),ze,424,0,[kte,Xj])))}function Rat(){Rat=re,L5t=ur((Nk(),se(ie(D5t,1),ze,511,0,[kD,Nte])))}function jat(){jat=re,i6t=ur((DA(),se(ie(X5e,1),ze,419,0,[S$,K5e])))}function $at(){$at=re,c6t=ur((xA(),se(ie(J5e,1),ze,479,0,[Z5e,M$])))}function Hat(){Hat=re,Hxt=ur((bA(),se(ie(oxe,1),ze,376,0,[Wne,RD])))}function zat(){zat=re,Fxt=ur((CA(),se(ie(rxe,1),ze,421,0,[Une,qne])))}function Gat(){Gat=re,e6t=ur((TB(),se(ie(z5e,1),ze,422,0,[H5e,Kte])))}function Vat(){Vat=re,p6t=ur((gB(),se(ie(f6e,1),ze,420,0,[lne,h6e])))}function Uat(){Uat=re,I8t=ur((qh(),se(ie(L8t,1),ze,520,0,[fm,qg])))}function qat(){qat=re,c8t=ur((GE(),se(ie(o8t,1),ze,523,0,[$_,j_])))}function Yat(){Yat=re,p8t=ur((r1(),se(ie(g8t,1),ze,516,0,[lv,I0])))}function Wat(){Wat=re,v8t=ur((yf(),se(ie(b8t,1),ze,515,0,[v2,Rf])))}function Kat(){Kat=re,j8t=ur((gb(),se(ie(R8t,1),ze,455,0,[Yg,m3])))}function Xat(){Xat=re,r7t=ur((lB(),se(ie(Lxe,1),ze,425,0,[ure,Dxe])))}function Qat(){Qat=re,c7t=ur((QB(),se(ie(Ixe,1),ze,495,0,[vH,p8])))}function Zat(){Zat=re,n7t=ur((aB(),se(ie(Mxe,1),ze,480,0,[cre,Axe])))}function Jat(){Jat=re,h7t=ur((SB(),se(ie(Nxe,1),ze,426,0,[Oxe,dre])))}function eot(){eot=re,wEt=ur(($A(),se(ie(F8e,1),ze,429,0,[CH,B8e])))}function tot(){tot=re,eEt=ur((vA(),se(ie(p8e,1),ze,430,0,[xre,_H])))}function GE(){GE=re,$_=new tfe("UPPER",0),j_=new tfe("LOWER",1)}function Dyn(e,t){var n;n=new _4,Lp(n,"x",t.a),Lp(n,"y",t.b),z4(e,n)}function Lyn(e,t){var n;n=new _4,Lp(n,"x",t.a),Lp(n,"y",t.b),z4(e,n)}function Iyn(e,t){var n,s;s=!1;do n=Glt(e,t),s=s|n;while(n);return s}function _0e(e,t){var n,s;for(n=t,s=0;n>0;)s+=e.a[n],n-=n&-n;return s}function not(e,t){var n;for(n=t;n;)nw(e,-n.i,-n.j),n=bi(n);return e}function Os(e,t){var n,s;for(rn(t),s=e.Kc();s.Ob();)n=s.Pb(),t.td(n)}function rot(e,t){var n;return n=t.cd(),new Z2(n,e.e.pc(n,h(t.dd(),14)))}function Ai(e,t,n,s){var a;a=new Ce,a.c=t,a.b=n,a.a=s,s.b=n.a=a,++e.b}function dl(e,t,n){var s;return s=(Kt(t,e.c.length),e.c[t]),e.c[t]=n,s}function Oyn(e,t,n){return h(t==null?sc(e.f,null,n):Ab(e.g,t,n),281)}function cK(e){return!!e.c&&!!e.d?o0e(e.c)+"->"+o0e(e.d):"e_"+rb(e)}function yk(e,t){return(Up(e),U7(new Vt(e,new W0e(t,e.a)))).sd(Ux)}function Nyn(){return Zs(),se(ie(U4e,1),ze,356,0,[w1,Hg,oc,Go,Pa])}function Pyn(){return Qe(),se(ie(ta,1),yo,61,0,[to,sn,pn,Fn,un])}function Byn(e){return lN(),function(){return Ymn(e,this,arguments)}}function Fyn(){return Date.now?Date.now():new Date().getTime()}function Xs(e){return!e.c||!e.d?!1:!!e.c.i&&e.c.i==e.d.i}function iot(e){if(!e.c.Sb())throw ne(new lo);return e.a=!0,e.c.Ub()}function gA(e){e.i=0,CS(e.b,null),CS(e.c,null),e.a=null,e.e=null,++e.g}function T0e(e){V1n.call(this,e==null?_c:Ga(e),ue(e,78)?h(e,78):null)}function sot(e){Dbt(),SKe(this),this.a=new di,Zge(this,e),vr(this.a,e)}function aot(){SY(this),this.b=new dt(ki,ki),this.a=new dt(Fi,Fi)}function oot(e,t){this.c=0,this.b=t,OJe.call(this,e,17493),this.a=this.c}function uK(e){wB(),!Pf&&(this.c=e,this.e=!0,this.a=new qe)}function wB(){wB=re,Pf=!0,S3t=!1,A3t=!1,D3t=!1,M3t=!1}function C0e(e,t){return ue(t,149)?Nt(e.c,h(t,149).c):!1}function S0e(e,t){var n;return n=0,e&&(n+=e.f.a/2),t&&(n+=t.f.a/2),n}function lK(e,t){var n;return n=h(mb(e.d,t),23),n||h(mb(e.e,t),23)}function cot(e){this.b=e,Tn.call(this,e),this.a=h(tn(this.b.a,4),126)}function uot(e){this.b=e,P4.call(this,e),this.a=h(tn(this.b.a,4),126)}function ou(e){return e.t||(e.t=new vKe(e),s9(new DXe(e),0,e.t)),e.t}function Ryn(){return la(),se(ie(J_,1),ze,103,0,[Q1,Dh,Wl,zd,Gd])}function jyn(){return Cy(),se(ie(rT,1),ze,249,0,[Xg,sL,U7e,nT,q7e])}function $yn(){return Qh(),se(ie(P0,1),ze,175,0,[gn,gs,k1,w2,N0])}function Hyn(){return lM(),se(ie(m8e,1),ze,316,0,[b8e,Ere,w8e,_re,v8e])}function zyn(){return f9(),se(ie(Kke,1),ze,315,0,[Wke,zne,Gne,N_,P_])}function Gyn(){return Kp(),se(ie(W5e,1),ze,335,0,[Qte,Y5e,Zte,k_,y_])}function Vyn(){return fx(),se(ie(W7t,1),ze,355,0,[y3,G5,W_,Y_,K_])}function Uyn(){return Iy(),se(ie(U5t,1),ze,363,0,[x$,_$,T$,E$,k$])}function qyn(){return wl(),se(ie(T6e,1),ze,163,0,[LD,C_,Gg,S_,nm])}function kk(){kk=re;var e,t;JH=(q6(),t=new rN,t),ez=(e=new Cq,e)}function lot(e){var t;return e.c||(t=e.r,ue(t,88)&&(e.c=h(t,26))),e.c}function Yyn(e){return e.e=3,e.d=e.Yb(),e.e!=2?(e.e=0,!0):!1}function hK(e){var t,n,s;return t=e&du,n=e>>22&du,s=e<0?Rd:0,rc(t,n,s)}function Wyn(e){var t,n,s,a;for(n=e,s=0,a=n.length;s0?cft(e,t):Dgt(e,-t)}function A0e(e,t){return t==0||e.e==0?e:t>0?Dgt(e,t):cft(e,-t)}function Un(e){if(rr(e))return e.c=e.a,e.a.Pb();throw ne(new lo)}function fot(e){var t,n;return t=e.c.i,n=e.d.i,t.k==(bn(),Pi)&&n.k==Pi}function fK(e){var t;return t=new db,Oa(t,e),Fe(t,(tt(),Da),null),t}function dK(e,t,n){var s;return s=e.Yg(t),s>=0?e._g(s,n,!0):Bb(e,t,n)}function M0e(e,t,n,s){var a;for(a=0;at)throw ne(new Ea(hbe(e,t,"index")));return e}function gK(e,t,n,s){var a;return a=pe(Hn,hr,25,t,15,1),o9n(a,e,t,n,s),a}function Xyn(e,t){var n;n=e.q.getHours()+(t/60|0),e.q.setMinutes(t),C9(e,n)}function Qyn(e,t){return d.Math.min(yg(t.a,e.d.d.c),yg(t.b,e.d.d.c))}function Q4(e,t){return ws(t)?t==null?Abe(e.f,null):Tlt(e.g,t):Abe(e.f,t)}function _f(e){this.c=e,this.a=new Q(this.c.a),this.b=new Q(this.c.b)}function mB(){this.e=new qe,this.c=new qe,this.d=new qe,this.b=new qe}function vot(){this.g=new Yle,this.b=new Yle,this.a=new qe,this.k=new qe}function wot(e,t,n){this.a=e,this.c=t,this.d=n,Ue(t.e,this),Ue(n.b,this)}function mot(e,t){IJe.call(this,t.rd(),t.qd()&-6),rn(e),this.a=e,this.b=t}function yot(e,t){OJe.call(this,t.rd(),t.qd()&-6),rn(e),this.a=e,this.b=t}function B0e(e,t){xY.call(this,t.rd(),t.qd()&-6),rn(e),this.a=e,this.b=t}function yB(e,t,n){this.a=e,this.b=t,this.c=n,Ue(e.t,this),Ue(t.i,this)}function kB(){this.b=new di,this.a=new di,this.b=new di,this.a=new di}function xB(){xB=re,X_=new Xr("org.eclipse.elk.labels.labelManager")}function kot(){kot=re,B5e=new Xi("separateLayerConnections",(aF(),Rte))}function qh(){qh=re,fm=new ife("REGULAR",0),qg=new ife("CRITICAL",1)}function bA(){bA=re,Wne=new efe("STACKED",0),RD=new efe("SEQUENCED",1)}function vA(){vA=re,xre=new lfe("FIXED",0),_H=new lfe("CENTER_NODE",1)}function Zyn(e,t){var n;return n=nOn(e,t),e.b=new XB(n.c.length),gIn(e,n)}function Jyn(e,t,n){var s;return++e.e,--e.f,s=h(e.d[t].$c(n),133),s.dd()}function xot(e){var t;return e.a||(t=e.r,ue(t,148)&&(e.a=h(t,148))),e.a}function F0e(e){if(e.a){if(e.e)return F0e(e.e)}else return e;return null}function e3n(e,t){return e.pt.p?-1:0}function EB(e,t){return rn(t),e.c=0,"Initial capacity must not be negative")}function Tot(){Tot=re,z3t=ur((Kh(),se(ie(Xw,1),ze,232,0,[ao,Jo,oo])))}function Cot(){Cot=re,V3t=ur((Xc(),se(ie(G3t,1),ze,461,0,[v1,jg,Sh])))}function Sot(){Sot=re,q3t=ur((wc(),se(ie(U3t,1),ze,462,0,[nf,$g,Ah])))}function Aot(){Aot=re,L3t=ur((Af(),se(ie(gu,1),ze,132,0,[X3e,Zu,Kw])))}function Mot(){Mot=re,o5t=ur((UE(),se(ie(V4e,1),ze,379,0,[Tte,_te,Cte])))}function Dot(){Dot=re,x5t=ur((Sb(),se(ie(W4e,1),ze,423,0,[i3,Y4e,Lte])))}function Lot(){Lot=re,t6t=ur((e5(),se(ie(V5e,1),ze,314,0,[I5,_D,G5e])))}function Iot(){Iot=re,n6t=ur((GB(),se(ie(q5e,1),ze,337,0,[U5e,C$,Xte])))}function Oot(){Oot=re,a6t=ur((Hp(),se(ie(s6t,1),ze,450,0,[Jte,t8,c3])))}function Not(){Not=re,Q5t=ur((Tb(),se(ie($te,1),ze,361,0,[ev,zg,Jb])))}function Pot(){Pot=re,g6t=ur((Ad(),se(ie(d6t,1),ze,303,0,[CD,l3,O5])))}function Bot(){Bot=re,f6t=ur((jk(),se(ie(une,1),ze,292,0,[one,cne,TD])))}function Fot(){Fot=re,Ixt=ur((t9(),se(ie(Yke,1),ze,378,0,[jne,qke,nH])))}function Rot(){Rot=re,$xt=ur((nF(),se(ie(axe,1),ze,375,0,[ixe,Yne,sxe])))}function jot(){jot=re,Bxt=ur((Dd(),se(ie(nxe,1),ze,339,0,[Ug,txe,Vne])))}function $ot(){$ot=re,jxt=ur((ua(),se(ie(Rxt,1),ze,452,0,[B_,Jc,ec])))}function Hot(){Hot=re,Vxt=ur((oF(),se(ie(dxe,1),ze,377,0,[Qne,d8,hm])))}function zot(){zot=re,zxt=ur((qk(),se(ie(uxe,1),ze,336,0,[Kne,cxe,F_])))}function Got(){Got=re,Gxt=ur((eF(),se(ie(fxe,1),ze,338,0,[hxe,Xne,lxe])))}function Vot(){Vot=re,r8t=ur((_b(),se(ie(n8t,1),ze,454,0,[jD,R_,aH])))}function Uot(){Uot=re,l7t=ur((wF(),se(ie(u7t,1),ze,442,0,[fre,lre,hre])))}function qot(){qot=re,f7t=ur((VA(),se(ie(Fxe,1),ze,380,0,[wH,Pxe,Bxe])))}function Yot(){Yot=re,M7t=ur((vF(),se(ie(t8e,1),ze,381,0,[e8e,wre,Jxe])))}function Wot(){Wot=re,A7t=ur((tF(),se(ie(Qxe,1),ze,293,0,[vre,Xxe,Kxe])))}function Kot(){Kot=re,X7t=ur((XA(),se(ie(mre,1),ze,437,0,[kH,xH,EH])))}function Xot(){Xot=re,JEt=ur((Ld(),se(ie(V7e,1),ze,334,0,[BH,B0,tT])))}function Qot(){Qot=re,KEt=ur((Tf(),se(ie(I7e,1),ze,272,0,[w8,pm,m8])))}function o3n(){return _s(),se(ie(Y7e,1),ze,98,0,[Qg,$f,k8,x2,ed,qo])}function Pp(e,t){return!e.o&&(e.o=new Du((Qo(),ep),fv,e,0)),TX(e.o,t)}function c3n(e){return!e.g&&(e.g=new VO),!e.g.d&&(e.g.d=new gKe(e)),e.g.d}function u3n(e){return!e.g&&(e.g=new VO),!e.g.a&&(e.g.a=new pKe(e)),e.g.a}function l3n(e){return!e.g&&(e.g=new VO),!e.g.b&&(e.g.b=new dKe(e)),e.g.b}function wA(e){return!e.g&&(e.g=new VO),!e.g.c&&(e.g.c=new bKe(e)),e.g.c}function h3n(e,t,n){var s,a;for(a=new Rk(t,e),s=0;sn||t=0?e._g(n,!0,!0):Bb(e,t,!0)}function A3n(e,t){return Ui(Pe(Je(U(e,(He(),iv)))),Pe(Je(U(t,iv))))}function ict(){ict=re,s7t=Ib(Ib(CN(new rs,(tx(),H_)),(w9(),hH)),ere)}function M3n(e,t,n){var s;return s=Wlt(e,t,n),e.b=new XB(s.c.length),Jbe(e,s)}function D3n(e){if(e.b<=0)throw ne(new lo);return--e.b,e.a-=e.c.c,Ke(e.a)}function L3n(e){var t;if(!e.a)throw ne(new cit);return t=e.a,e.a=bi(e.a),t}function I3n(e){for(;!e.a;)if(!qtt(e.c,new Rqe(e)))return!1;return!0}function J4(e){var t;return Vn(e),ue(e,198)?(t=h(e,198),t):new rqe(e)}function O3n(e){CB(),h(e.We((Tr(),gm)),174).Fc((Qc(),aL)),e.Ye(Gre,null)}function CB(){CB=re,kEt=new VHe,EEt=new UHe,xEt=v6n((Tr(),Gre),kEt,Wg,EEt)}function SB(){SB=re,Oxe=new ufe("LEAF_NUMBER",0),dre=new ufe("NODE_SIZE",1)}function N3n(e,t,n){e.a=t,e.c=n,e.b.a.$b(),Pl(e.d),e.e.a.c=pe(yn,st,1,0,5,1)}function kK(e){e.a=pe(Hn,hr,25,e.b+1,15,1),e.c=pe(Hn,hr,25,e.b,15,1),e.d=0}function P3n(e,t){e.a.ue(t.d,e.b)>0&&(Ue(e.c,new Z1e(t.c,t.d,e.d)),e.b=t.d)}function Y0e(e,t){if(e.g==null||t>=e.i)throw ne(new EY(t,e.i));return e.g[t]}function sct(e,t,n){if(Gk(e,n),n!=null&&!e.wj(n))throw ne(new Eq);return n}function act(e){var t;if(e.Ek())for(t=e.i-1;t>=0;--t)he(e,t);return w0e(e)}function B3n(e){var t,n;if(!e.b)return null;for(n=e.b;t=n.a[0];)n=t;return n}function F3n(e,t){var n,s;return Aat(t),n=(s=e.slice(0,t),K0e(s,e)),n.length=t,n}function _k(e,t,n,s){var a;s=(gy(),s||j3e),a=e.slice(t,n),fbe(a,e,t,n,-t,s)}function gl(e,t,n,s,a){return t<0?Bb(e,n,s):h(n,66).Nj().Pj(e,e.yh(),t,s,a)}function R3n(e){return ue(e,172)?""+h(e,172).a:e==null?null:Ga(e)}function j3n(e){return ue(e,172)?""+h(e,172).a:e==null?null:Ga(e)}function oct(e,t){if(t.a)throw ne(new Ya(ovt));Qi(e.a,t),t.a=e,!e.j&&(e.j=t)}function W0e(e,t){xY.call(this,t.rd(),t.qd()&-16449),rn(e),this.a=e,this.c=t}function cct(e,t){var n,s;return s=t/e.c.Hd().gc()|0,n=t%e.c.Hd().gc(),Z4(e,s,n)}function Xc(){Xc=re,v1=new Xq(w5,0),jg=new Xq(Cx,1),Sh=new Xq(m5,2)}function AB(){AB=re,ate=new DN("All",0),q3e=new tet,Y3e=new get,W3e=new net}function uct(){uct=re,T3t=ur((AB(),se(ie(Hj,1),ze,297,0,[ate,q3e,Y3e,W3e])))}function lct(){lct=re,b5t=ur(($k(),se(ie(p5t,1),ze,405,0,[Zb,Zw,Qw,r3])))}function hct(){hct=re,v4t=ur((Cb(),se(ie(b4t,1),ze,406,0,[fD,hD,gte,pte])))}function fct(){fct=re,m4t=ur((o5(),se(ie(w4t,1),ze,323,0,[gD,dD,pD,bD])))}function dct(){dct=re,x4t=ur((h9(),se(ie(k4t,1),ze,394,0,[vD,qj,Yj,wD])))}function gct(){gct=re,$8t=ur((tx(),se(ie(wxe,1),ze,393,0,[lH,H_,HD,z_])))}function pct(){pct=re,P5t=ur((aF(),se(ie(N5t,1),ze,360,0,[Rte,m$,y$,ED])))}function bct(){bct=re,S7t=ur((FF(),se(ie(Wxe,1),ze,340,0,[bre,qxe,Yxe,Uxe])))}function vct(){vct=re,V5t=ur((Sf(),se(ie(G5t,1),ze,411,0,[L5,Xx,Qx,jte])))}function wct(){wct=re,Oxt=ur((Tw(),se(ie(Hne,1),ze,197,0,[rH,$ne,w3,v3])))}function mct(){mct=re,b9t=ur((Lu(),se(ie(p9t,1),ze,396,0,[rl,tEe,eEe,nEe])))}function yct(){yct=re,t9t=ur((Yu(),se(ie(e9t,1),ze,285,0,[iL,Z1,Kg,rL])))}function kct(){kct=re,XEt=ur((Od(),se(ie(Yre,1),ze,218,0,[qre,nL,y8,W5])))}function xct(){xct=re,d9t=ur((kF(),se(ie(J7e,1),ze,311,0,[Xre,X7e,Z7e,Q7e])))}function Ect(){Ect=re,h9t=ur((Iu(),se(ie(aT,1),ze,374,0,[cL,E2,oL,bm])))}function _ct(){_ct=re,dR(),FEe=ki,w_t=Fi,REe=new cS(ki),m_t=new cS(Fi)}function xA(){xA=re,Z5e=new Qhe(jd,0),M$=new Qhe("IMPROVE_STRAIGHTNESS",1)}function $3n(e,t){return ak(),Ue(e,new As(t,Ke(t.e.c.length+t.g.c.length)))}function H3n(e,t){return ak(),Ue(e,new As(t,Ke(t.e.c.length+t.g.c.length)))}function K0e(e,t){return SA(t)!=10&&se(uu(t),t.hm,t.__elementTypeId$,SA(t),e),e}function vc(e,t){var n;return n=Ha(e,t,0),n==-1?!1:(f0(e,n),!0)}function Tct(e,t){var n;return n=h(Q4(e.e,t),387),n?(tde(n),n.e):null}function Tk(e){var t;return $a(e)&&(t=0-e,!isNaN(t))?t:xg(Hk(e))}function Ha(e,t,n){for(;n=0?IF(e,n,!0,!0):Bb(e,t,!0)}function ege(e,t){W7();var n,s;return n=W4(e),s=W4(t),!!n&&!!s&&!Hft(n.k,s.k)}function V3n(e,t){yc(e,t==null||bP((rn(t),t))||isNaN((rn(t),t))?0:(rn(t),t))}function U3n(e,t){kc(e,t==null||bP((rn(t),t))||isNaN((rn(t),t))?0:(rn(t),t))}function q3n(e,t){Eb(e,t==null||bP((rn(t),t))||isNaN((rn(t),t))?0:(rn(t),t))}function Y3n(e,t){xb(e,t==null||bP((rn(t),t))||isNaN((rn(t),t))?0:(rn(t),t))}function Dct(e){(this.q?this.q:(Rt(),Rt(),K1)).Ac(e.q?e.q:(Rt(),Rt(),K1))}function W3n(e,t){return ue(t,99)&&(h(t,18).Bb&ea)!=0?new _Y(t,e):new Rk(t,e)}function K3n(e,t){return ue(t,99)&&(h(t,18).Bb&ea)!=0?new _Y(t,e):new Rk(t,e)}function Lct(e,t){k4e=new Bi,y4t=t,g_=e,h(g_.b,65),$0e(g_,k4e,null),_2t(g_)}function CK(e,t,n){var s;return s=e.g[t],wE(e,t,e.oi(t,n)),e.gi(t,n,s),e.ci(),s}function IB(e,t){var n;return n=e.Xc(t),n>=0?(e.$c(n),!0):!1}function SK(e){var t;return e.d!=e.r&&(t=Rl(e),e.e=!!t&&t.Cj()==dyt,e.d=t),e.e}function AK(e,t){var n;for(Vn(e),Vn(t),n=!1;t.Ob();)n=n|e.Fc(t.Pb());return n}function mb(e,t){var n;return n=h(_n(e.e,t),387),n?(xet(e,n),n.e):null}function Ict(e){var t,n;return t=e/60|0,n=e%60,n==0?""+t:""+t+":"+(""+n)}function Xa(e,t){var n,s;return Up(e),s=new B0e(t,e.a),n=new Ktt(s),new Vt(e,n)}function bw(e,t){var n=e.a[t],s=(YK(),tte)[typeof n];return s?s(n):ipe(typeof n)}function X3n(e){switch(e.g){case 0:return Ir;case 1:return-1;default:return 0}}function Q3n(e){return k2e(e,(Ck(),y3e))<0?-d0n(Hk(e)):e.l+e.m*v5+e.h*Jp}function SA(e){return e.__elementTypeCategory$==null?10:e.__elementTypeCategory$}function MK(e){var t;return t=e.b.c.length==0?null:ut(e.b,0),t!=null&&jK(e,0),t}function Oct(e,t){for(;t[0]=0;)++t[0]}function AA(e,t){this.e=t,this.a=Clt(e),this.a<54?this.f=vb(e):this.c=eM(e)}function Nct(e,t,n,s){Mr(),G2.call(this,26),this.c=e,this.a=t,this.d=n,this.b=s}function j1(e,t,n){var s,a;for(s=10,a=0;ae.a[s]&&(s=n);return s}function r4n(e,t){var n;return n=Mb(e.e.c,t.e.c),n==0?Ui(e.e.d,t.e.d):n}function vy(e,t){return t.e==0||e.e==0?Gx:(cx(),DQ(e,t))}function i4n(e,t){if(!e)throw ne(new an(oAn("Enum constant undefined: %s",t)))}function qE(){qE=re,m5t=new M7,y5t=new iS,v5t=new z2,w5t=new _Be,k5t=new TBe}function OB(){OB=re,t4e=new Uhe("BY_SIZE",0),lte=new Uhe("BY_SIZE_AND_SHAPE",1)}function NB(){NB=re,kte=new qhe("EADES",0),Xj=new qhe("FRUCHTERMAN_REINGOLD",1)}function DA(){DA=re,S$=new Xhe("READING_DIRECTION",0),K5e=new Xhe("ROTATION",1)}function Bct(){Bct=re,r6t=ur((Kp(),se(ie(W5e,1),ze,335,0,[Qte,Y5e,Zte,k_,y_])))}function Fct(){Fct=re,Nxt=ur((f9(),se(ie(Kke,1),ze,315,0,[Wke,zne,Gne,N_,P_])))}function Rct(){Rct=re,q5t=ur((Iy(),se(ie(U5t,1),ze,363,0,[x$,_$,T$,E$,k$])))}function jct(){jct=re,b6t=ur((wl(),se(ie(T6e,1),ze,163,0,[LD,C_,Gg,S_,nm])))}function $ct(){$ct=re,tEt=ur((lM(),se(ie(m8e,1),ze,316,0,[b8e,Ere,w8e,_re,v8e])))}function Hct(){Hct=re,_Et=ur((Qh(),se(ie(P0,1),ze,175,0,[gn,gs,k1,w2,N0])))}function zct(){zct=re,K7t=ur((fx(),se(ie(W7t,1),ze,355,0,[y3,G5,W_,Y_,K_])))}function Gct(){Gct=re,h5t=ur((Zs(),se(ie(U4e,1),ze,356,0,[w1,Hg,oc,Go,Pa])))}function Vct(){Vct=re,WEt=ur((la(),se(ie(J_,1),ze,103,0,[Q1,Dh,Wl,zd,Gd])))}function Uct(){Uct=re,r9t=ur((Cy(),se(ie(rT,1),ze,249,0,[Xg,sL,U7e,nT,q7e])))}function qct(){qct=re,a9t=ur((Qe(),se(ie(ta,1),yo,61,0,[to,sn,pn,Fn,un])))}function DK(e,t){var n;return n=h(_n(e.a,t),134),n||(n=new bd,Pr(e.a,t,n)),n}function Yct(e){var t;return t=h(U(e,(He(),tv)),305),t?t.a==e:!1}function Wct(e){var t;return t=h(U(e,(He(),tv)),305),t?t.i==e:!1}function Kct(e,t){return rn(t),kde(e),e.d.Ob()?(t.td(e.d.Pb()),!0):!1}function PB(e){return mo(e,Ir)>0?Ir:mo(e,$s)<0?$s:Gn(e)}function vw(e){return e<3?(Uu(e,Gbt),e+1):e=0&&t=-.01&&e.a<=If&&(e.a=0),e.b>=-.01&&e.b<=If&&(e.b=0),e}function Qct(e,t){return t==(KY(),KY(),x3t)?e.toLocaleLowerCase():e.toLowerCase()}function nge(e){return((e.i&2)!=0?"interface ":(e.i&1)!=0?"":"class ")+(yd(e),e.o)}function Aa(e){var t,n;n=(t=new Sq,t),qn((!e.q&&(e.q=new Ye(eh,e,11,10)),e.q),n)}function s4n(e,t){var n;return n=t>0?t-1:t,UXe(m1n(xut(ede(new H6,n),e.n),e.j),e.k)}function a4n(e,t,n,s){var a;e.j=-1,Tbe(e,sbe(e,t,n),(ia(),a=h(t,66).Mj(),a.Ok(s)))}function Zct(e){this.g=e,this.f=new qe,this.a=d.Math.min(this.g.c.c,this.g.d.c)}function Jct(e){this.b=new qe,this.a=new qe,this.c=new qe,this.d=new qe,this.e=e}function eut(e,t){this.a=new zn,this.e=new zn,this.b=(t9(),nH),this.c=e,this.b=t}function tut(e,t,n){gP.call(this),rge(this),this.a=e,this.c=n,this.b=t.d,this.f=t.e}function nut(e){this.d=e,this.c=e.c.vc().Kc(),this.b=null,this.a=null,this.e=(aN(),Qee)}function yb(e){if(e<0)throw ne(new an("Illegal Capacity: "+e));this.g=this.ri(e)}function o4n(e,t){if(0>e||e>t)throw ne(new bhe("fromIndex: 0, toIndex: "+e+iwe+t))}function c4n(e){var t;if(e.a==e.b.a)throw ne(new lo);return t=e.a,e.c=t,e.a=e.a.e,t}function BB(e){var t;tw(!!e.c),t=e.c.a,pl(e.d,e.c),e.b==e.c?e.b=t:--e.a,e.c=null}function FB(e,t){var n;return Up(e),n=new _it(e,e.a.rd(),e.a.qd()|4,t),new Vt(e,n)}function u4n(e,t){var n,s;return n=h(xw(e.d,t),14),n?(s=t,e.e.pc(s,n)):null}function RB(e,t){var n,s;for(s=e.Kc();s.Ob();)n=h(s.Pb(),70),Fe(n,(He(),F5),t)}function l4n(e){var t;return t=Pe(Je(U(e,(tt(),D0)))),t<0&&(t=0,Fe(e,D0,t)),t}function h4n(e,t,n){var s;s=d.Math.max(0,e.b/2-.5),g9(n,s,1),Ue(t,new CZe(n,s))}function f4n(e,t,n){var s;return s=e.a.e[h(t.a,10).p]-e.a.e[h(n.a,10).p],Li(eA(s))}function rut(e,t,n,s,a,u){var p;p=fK(s),Gs(p,a),xs(p,u),Ot(e.a,s,new vP(p,t,n.f))}function iut(e,t){var n;if(n=yM(e.Tg(),t),!n)throw ne(new an(Fg+t+gee));return n}function ww(e,t){var n;for(n=e;bi(n);)if(n=bi(n),n==t)return!0;return!1}function d4n(e,t){var n,s,a;for(s=t.a.cd(),n=h(t.a.dd(),14).gc(),a=0;a0&&(e.a/=t,e.b/=t),e}function Vu(e){var t;return e.w?e.w:(t=xmn(e),!!t&&!t.kh()&&(e.w=t),t)}function k4n(e){var t;return e==null?null:(t=h(e,190),x9n(t,t.length))}function he(e,t){if(e.g==null||t>=e.i)throw ne(new EY(t,e.i));return e.li(t,e.g[t])}function x4n(e){var t,n;for(t=e.a.d.j,n=e.c.d.j;t!=n;)Eh(e.b,t),t=pF(t);Eh(e.b,t)}function E4n(e){var t;for(t=0;t=14&&t<=16))),e}function cut(e,t,n){var s=function(){return e.apply(s,arguments)};return t.apply(s,n),s}function uut(e,t,n){var s,a;s=t;do a=Pe(e.p[s.p])+n,e.p[s.p]=a,s=e.a[s.p];while(s!=t)}function Sk(e,t){var n,s;s=e.a,n=rkn(e,t,null),s!=t&&!e.e&&(n=wx(e,t,n)),n&&n.Fi()}function ige(e,t){return vf(),xh(Ig),d.Math.abs(e-t)<=Ig||e==t||isNaN(e)&&isNaN(t)}function sge(e,t){return vf(),xh(Ig),d.Math.abs(e-t)<=Ig||e==t||isNaN(e)&&isNaN(t)}function C4n(e,t){return Mg(),dc(e.b.c.length-e.e.c.length,t.b.c.length-t.e.c.length)}function wy(e,t){return _1n(KE(e,t,Gn(js(V1,B1(Gn(js(t==null?0:ii(t),U1)),15)))))}function lut(){lut=re,C5t=ur((bn(),se(ie(Ote,1),ze,267,0,[Wi,ds,Pi,Vo,Ou,Bf])))}function hut(){hut=re,OEt=ur((Aw(),se(ie(Nre,1),ze,291,0,[Ore,QD,XD,Ire,WD,KD])))}function fut(){fut=re,SEt=ur(($1(),se(ie(z8e,1),ze,248,0,[Dre,qD,YD,MH,SH,AH])))}function dut(){dut=re,J5t=ur((u5(),se(ie(e8,1),ze,227,0,[Jx,m_,Zx,Jw,o3,a3])))}function gut(){gut=re,l6t=ur((ax(),se(ie(l6e,1),ze,275,0,[x_,a6e,u6e,c6e,o6e,s6e])))}function put(){put=re,u6t=ur((cM(),se(ie(i6e,1),ze,274,0,[D$,t6e,r6e,e6e,n6e,sne])))}function but(){but=re,Lxt=ur((UF(),se(ie(Uke,1),ze,313,0,[Rne,Gke,Fne,zke,Vke,tH])))}function vut(){vut=re,o6t=ur((KF(),se(ie(Q5e,1),ze,276,0,[tne,ene,rne,nne,ine,A$])))}function wut(){wut=re,z8t=ur((w9(),se(ie(H8t,1),ze,327,0,[hH,ere,nre,tre,rre,Jne])))}function mut(){mut=re,s9t=ur((Qc(),se(ie(FH,1),ze,273,0,[Zg,Ud,aL,sT,iT,K5])))}function yut(){yut=re,QEt=ur((YF(),se(ie(R7e,1),ze,312,0,[Wre,P7e,F7e,O7e,B7e,N7e])))}function S4n(){return Iw(),se(ie(ga,1),ze,93,0,[Lh,Vd,Ih,Nh,J1,Xl,el,Oh,Kl])}function $B(e,t){var n;n=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new gw(e,0,n,e.a))}function HB(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new gw(e,1,n,e.b))}function Ak(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new gw(e,3,n,e.b))}function xb(e,t){var n;n=e.f,e.f=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new gw(e,3,n,e.f))}function Eb(e,t){var n;n=e.g,e.g=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new gw(e,4,n,e.g))}function yc(e,t){var n;n=e.i,e.i=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new gw(e,5,n,e.i))}function kc(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new gw(e,6,n,e.j))}function Mk(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new gw(e,1,n,e.j))}function Dk(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new gw(e,4,n,e.c))}function Lk(e,t){var n;n=e.k,e.k=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new gw(e,2,n,e.k))}function IK(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new sK(e,2,n,e.d))}function p0(e,t){var n;n=e.s,e.s=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new sK(e,4,n,e.s))}function yw(e,t){var n;n=e.t,e.t=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new sK(e,5,n,e.t))}function Ik(e,t){var n;n=e.F,e.F=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,5,n,t))}function LA(e,t){var n;return n=h(_n((SN(),KH),e),55),n?n.xj(t):pe(yn,st,1,t,5,1)}function Md(e,t){var n,s;return n=t in e.a,n&&(s=Ed(e,t).he(),s)?s.a:null}function A4n(e,t){var n,s,a;return n=(s=(X2(),a=new Zue,a),t&&Ybe(s,t),s),gge(n,e),n}function kut(e,t,n){if(Gk(e,n),!e.Bk()&&n!=null&&!e.wj(n))throw ne(new Eq);return n}function xut(e,t){return e.n=t,e.n?(e.f=new qe,e.e=new qe):(e.f=null,e.e=null),e}function tr(e,t,n,s,a,u){var p;return p=_W(e,t),_ut(n,p),p.i=a?8:0,p.f=s,p.e=a,p.g=u,p}function age(e,t,n,s,a){this.d=t,this.k=s,this.f=a,this.o=-1,this.p=1,this.c=e,this.a=n}function oge(e,t,n,s,a){this.d=t,this.k=s,this.f=a,this.o=-1,this.p=2,this.c=e,this.a=n}function cge(e,t,n,s,a){this.d=t,this.k=s,this.f=a,this.o=-1,this.p=6,this.c=e,this.a=n}function uge(e,t,n,s,a){this.d=t,this.k=s,this.f=a,this.o=-1,this.p=7,this.c=e,this.a=n}function lge(e,t,n,s,a){this.d=t,this.j=s,this.e=a,this.o=-1,this.p=4,this.c=e,this.a=n}function Eut(e,t){var n,s,a,u;for(s=t,a=0,u=s.length;a=0),Axn(e.d,e.c)<0&&(e.a=e.a-1&e.d.a.length-1,e.b=e.d.c),e.c=-1}function hge(e){return e.a<54?e.f<0?-1:e.f>0?1:0:(!e.c&&(e.c=UA(e.f)),e.c).e}function xh(e){if(!(e>=0))throw ne(new an("tolerance ("+e+") must be >= 0"));return e}function Ok(){return Are||(Are=new fpt,Ey(Are,se(ie(n3,1),st,130,0,[new nle]))),Are}function ua(){ua=re,B_=new cY(j9,0),Jc=new cY("INPUT",1),ec=new cY("OUTPUT",2)}function GB(){GB=re,U5e=new nY("ARD",0),C$=new nY("MSD",1),Xte=new nY("MANUAL",2)}function _b(){_b=re,jD=new dY("BARYCENTER",0),R_=new dY(Kvt,1),aH=new dY(Xvt,2)}function IA(e,t){var n;if(n=e.gc(),t<0||t>n)throw ne(new sw(t,n));return new M1e(e,t)}function Sut(e,t){var n;return ue(t,42)?e.c.Mc(t):(n=TX(e,t),_F(e,t),n)}function ma(e,t,n){return Vp(e,t),Ko(e,n),p0(e,0),yw(e,1),m0(e,!0),w0(e,!0),e}function Uu(e,t){if(e<0)throw ne(new an(t+" cannot be negative but was: "+e));return e}function Aut(e,t){var n,s;for(n=0,s=e.gc();n0?h(ut(n.a,s-1),10):null}function WE(e,t){var n;n=e.k,e.k=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,2,n,e.k))}function UB(e,t){var n;n=e.f,e.f=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,8,n,e.f))}function qB(e,t){var n;n=e.i,e.i=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,7,n,e.i))}function gge(e,t){var n;n=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,8,n,e.a))}function pge(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,0,n,e.b))}function bge(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,0,n,e.b))}function vge(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,1,n,e.c))}function wge(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,1,n,e.c))}function NK(e,t){var n;n=e.c,e.c=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,4,n,e.c))}function mge(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,1,n,e.d))}function PK(e,t){var n;n=e.D,e.D=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,2,n,e.D))}function BK(e,t){e.r>0&&e.c0&&e.g!=0&&BK(e.i,t/e.r*e.i.d))}function F4n(e,t,n){var s;e.b=t,e.a=n,s=(e.a&512)==512?new pXe:new tle,e.c=JAn(s,e.b,e.a)}function Fut(e,t){return Bd(e.e,t)?(ia(),SK(t)?new _P(t,e):new RS(t,e)):new SJe(t,e)}function YB(e,t){return E1n(XE(e.a,t,Gn(js(V1,B1(Gn(js(t==null?0:ii(t),U1)),15)))))}function R4n(e,t,n){return pw(e,new Iqe(t),new Ut,new Oqe(n),se(ie(gu,1),ze,132,0,[]))}function j4n(e){var t,n;return 0>e?new Lhe:(t=e+1,n=new oot(t,e),new l1e(null,n))}function $4n(e,t){Rt();var n;return n=new S4(1),ws(e)?Ta(n,e,t):sc(n.f,e,t),new yq(n)}function H4n(e,t){var n,s;return n=e.o+e.p,s=t.o+t.p,nt?(t<<=1,t>0?t:N9):t}function FK(e){switch(Hfe(e.e!=3),e.e){case 2:return!1;case 0:return!0}return Yyn(e)}function jut(e,t){var n;return ue(t,8)?(n=h(t,8),e.a==n.a&&e.b==n.b):!1}function RK(e,t,n){var s,a,u;return u=t>>5,a=t&31,s=Zi(ow(e.n[n][u],Gn(kd(a,1))),3),s}function G4n(e,t){var n,s;for(s=t.vc().Kc();s.Ob();)n=h(s.Pb(),42),zF(e,n.cd(),n.dd())}function V4n(e,t){var n;n=new Bi,h(t.b,65),h(t.b,65),h(t.b,65),mc(t.a,new $1e(e,n,t))}function yge(e,t){var n;n=e.b,e.b=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,21,n,e.b))}function kge(e,t){var n;n=e.d,e.d=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,11,n,e.d))}function WB(e,t){var n;n=e.j,e.j=t,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new fs(e,1,13,n,e.j))}function $ut(e,t,n){var s,a,u;for(u=e.a.length-1,a=e.b,s=0;s>>31;s!=0&&(e[n]=s)}function e5n(e,t){Rt();var n,s;for(s=new qe,n=0;n0&&(this.g=this.ri(this.i+(this.i/8|0)+1),e.Qc(this.g))}function yi(e,t){yP.call(this,Q9t,e,t),this.b=this,this.a=ac(e.Tg(),Ht(this.e.Tg(),this.c))}function QE(e,t){var n,s;for(rn(t),s=t.vc().Kc();s.Ob();)n=h(s.Pb(),42),e.zc(n.cd(),n.dd())}function l5n(e,t,n){var s;for(s=n.Kc();s.Ob();)if(!pB(e,t,s.Pb()))return!1;return!0}function h5n(e,t,n,s,a){var u;return n&&(u=oi(t.Tg(),e.c),a=n.gh(t,-1-(u==-1?s:u),null,a)),a}function f5n(e,t,n,s,a){var u;return n&&(u=oi(t.Tg(),e.c),a=n.ih(t,-1-(u==-1?s:u),null,a)),a}function slt(e){var t;if(e.b==-2){if(e.e==0)t=-1;else for(t=0;e.a[t]==0;t++);e.b=t}return e.b}function alt(e){switch(e.g){case 2:return Qe(),un;case 4:return Qe(),pn;default:return e}}function olt(e){switch(e.g){case 1:return Qe(),Fn;case 3:return Qe(),sn;default:return e}}function d5n(e){var t,n,s;return e.j==(Qe(),sn)&&(t=B0t(e),n=Pc(t,pn),s=Pc(t,un),s||s&&n)}function g5n(e){var t,n;return t=h(e.e&&e.e(),9),n=h(Ide(t,t.length),9),new ll(t,n,t.length)}function p5n(e,t){Bn(t,Wvt,1),Spe(P1n(new XO((Y7(),new IW(e,!1,!1,new $ue))))),An(t)}function OA(e,t){return on(),ws(e)?N0e(e,Jn(t)):ew(e)?dW(e,Je(t)):Jv(e)?mbn(e,lt(t)):e.wd(t)}function Sge(e,t){t.q=e,e.d=d.Math.max(e.d,t.r),e.b+=t.d+(e.a.c.length==0?0:e.c),Ue(e.a,t)}function Pk(e,t){var n,s,a,u;return a=e.c,n=e.c+e.b,u=e.d,s=e.d+e.a,t.a>a&&t.au&&t.b1||e.Ob())return++e.a,e.g=0,t=e.i,e.Ob(),t;throw ne(new lo)}function S5n(e){aet();var t;return bZe(Zne,e)||(t=new G$e,t.a=e,v1e(Zne,e,t)),h(wa(Zne,e),635)}function Bl(e){var t,n,s,a;return a=e,s=0,a<0&&(a+=Jp,s=Rd),n=Li(a/v5),t=Li(a-n*v5),rc(t,n,s)}function NA(e){var t,n,s;for(s=0,n=new A4(e.a);n.a>22),a=e.h+t.h+(s>>22),rc(n&du,s&du,a&Rd)}function Slt(e,t){var n,s,a;return n=e.l-t.l,s=e.m-t.m+(n>>22),a=e.h-t.h+(s>>22),rc(n&du,s&du,a&Rd)}function RA(e){var t;return e<128?(t=(znt(),_3e)[e],!t&&(t=_3e[e]=new vle(e)),t):new vle(e)}function ui(e){var t;return ue(e,78)?e:(t=e&&e.__java$exception,t||(t=new bht(e),LKe(t)),t)}function jA(e){if(ue(e,186))return h(e,118);if(e)return null;throw ne(new T4(Emt))}function Alt(e,t){if(t==null)return!1;for(;e.a!=e.b;)if(Nr(t,fF(e)))return!0;return!1}function Oge(e){return e.a.Ob()?!0:e.a!=e.d?!1:(e.a=new d0e(e.e.f),e.a.Ob())}function Vi(e,t){var n,s;return n=t.Pc(),s=n.length,s==0?!1:(q1e(e.c,e.c.length,n),!0)}function z5n(e,t,n){var s,a;for(a=t.vc().Kc();a.Ob();)s=h(a.Pb(),42),e.yc(s.cd(),s.dd(),n);return e}function Mlt(e,t){var n,s;for(s=new Q(e.b);s.a=0,"Negative initial capacity"),mP(t>=0,"Non-positive load factor"),Kc(this)}function WK(e,t,n){return e>=128?!1:e<64?fE(Zi(kd(1,e),n),0):fE(Zi(kd(1,e-64),t),0)}function Q5n(e,t){return!e||!t||e==t?!1:Mb(e.b.c,t.b.c+t.b.b)<0&&Mb(t.b.c,e.b.c+e.b.b)<0}function Hlt(e){var t,n,s;return n=e.n,s=e.o,t=e.d,new hl(n.a-t.b,n.b-t.d,s.a+(t.b+t.c),s.b+(t.d+t.a))}function Z5n(e){var t,n,s,a;for(n=e.a,s=0,a=n.length;ss)throw ne(new sw(t,s));return e.hi()&&(n=ist(e,n)),e.Vh(t,n)}function zA(e,t,n){return n==null?(!e.q&&(e.q=new zn),Q4(e.q,t)):(!e.q&&(e.q=new zn),Pr(e.q,t,n)),e}function Fe(e,t,n){return n==null?(!e.q&&(e.q=new zn),Q4(e.q,t)):(!e.q&&(e.q=new zn),Pr(e.q,t,n)),e}function zlt(e){var t,n;return n=new mB,Oa(n,e),Fe(n,(kg(),D5),e),t=new zn,nLn(e,n,t),AOn(e,n,t),n}function t6n(e){Ry();var t,n,s;for(n=pe(cs,Re,8,2,0,1),s=0,t=0;t<2;t++)s+=.5,n[t]=B8n(s,e);return n}function Glt(e,t){var n,s,a,u;for(n=!1,s=e.a[t].length,u=0;u>=1);return t}function Ult(e){var t,n;return n=bM(e.h),n==32?(t=bM(e.m),t==32?bM(e.l)+32:t+20-10):n-12}function e9(e){var t;return t=e.a[e.b],t==null?null:(pi(e.a,e.b,null),e.b=e.b+1&e.a.length-1,t)}function qlt(e){var t,n;return t=e.t-e.k[e.o.p]*e.d+e.j[e.o.p]>e.f,n=e.u+e.e[e.o.p]*e.d>e.f*e.s*e.d,t||n}function cF(e,t,n){var s,a;return s=new wK(t,n),a=new $e,e.b=Fgt(e,e.b,s,a),a.b||++e.c,e.b.b=!1,a.d}function Ylt(e,t,n){var s,a,u,p;for(p=r9(t,n),u=0,a=p.Kc();a.Ob();)s=h(a.Pb(),11),Pr(e.c,s,Ke(u++))}function Eg(e){var t,n;for(n=new Q(e.a.b);n.an&&(n=e[t]);return n}function Wlt(e,t,n){var s;return s=new qe,Xbe(e,t,s,(Qe(),pn),!0,!1),Xbe(e,n,s,un,!1,!1),s}function XK(e,t,n){var s,a,u,p;return u=null,p=t,a=wb(p,"labels"),s=new fJe(e,n),u=(yCn(s.a,s.b,a),a),u}function r6n(e,t,n,s){var a;return a=Fbe(e,t,n,s),!a&&(a=ikn(e,n,s),!!a&&!Hy(e,t,a))?null:a}function i6n(e,t,n,s){var a;return a=Rbe(e,t,n,s),!a&&(a=dX(e,n,s),!!a&&!Hy(e,t,a))?null:a}function Klt(e,t){var n;for(n=0;n1||t>=0&&e.b<3)}function GA(e){var t,n,s;for(t=new Oc,s=pr(e,0);s.b!=s.d.c;)n=h(gr(s),8),rk(t,0,new _a(n));return t}function zp(e){var t,n;for(n=new Q(e.a.b);n.as?1:0}function Zge(e,t){return mgt(e,t)?(Ot(e.b,h(U(t,(He(),em)),21),t),vr(e.a,t),!0):!1}function b6n(e){var t,n;t=h(U(e,(He(),Zc)),10),t&&(n=t.c,vc(n.a,t),n.a.c.length==0&&vc(Us(t).b,n))}function tht(e){return Pf?pe(C3t,rvt,572,0,0,1):h(Mf(e.a,pe(C3t,rvt,572,e.a.c.length,0,1)),842)}function v6n(e,t,n,s){return VP(),new Iq(se(ie(c2,1),TR,42,0,[(GX(e,t),new Z2(e,t)),(GX(n,s),new Z2(n,s))]))}function xy(e,t,n){var s,a;return a=(s=new Sq,s),ma(a,t,n),qn((!e.q&&(e.q=new Ye(eh,e,11,10)),e.q),a),a}function eX(e){var t,n,s,a;for(a=G1n(C9t,e),n=a.length,s=pe(it,Re,2,n,6,1),t=0;t=e.b.c.length||(Jge(e,2*t+1),n=2*t+2,n=0&&e[s]===t[s];s--);return s<0?0:Yq(Zi(e[s],fa),Zi(t[s],fa))?-1:1}function w6n(e,t){var n,s;for(s=pr(e,0);s.b!=s.d.c;)n=h(gr(s),214),n.e.length>0&&(t.td(n),n.i&&fkn(n))}function nX(e,t){var n,s;return s=h(tn(e.a,4),126),n=pe(nie,Lee,415,t,0,1),s!=null&&Ao(s,0,n,0,s.length),n}function rht(e,t){var n;return n=new OQ((e.f&256)!=0,e.i,e.a,e.d,(e.f&16)!=0,e.j,e.g,t),e.e!=null||(n.c=e),n}function m6n(e,t){var n,s;for(s=e.Zb().Cc().Kc();s.Ob();)if(n=h(s.Pb(),14),n.Hc(t))return!0;return!1}function rX(e,t,n,s,a){var u,p;for(p=n;p<=a;p++)for(u=t;u<=s;u++)if(Ay(e,u,p))return!0;return!1}function iht(e,t,n){var s,a,u,p;for(rn(n),p=!1,u=e.Zc(t),a=n.Kc();a.Ob();)s=a.Pb(),u.Rb(s),p=!0;return p}function y6n(e,t){var n;return e===t?!0:ue(t,83)?(n=h(t,83),tbe(ob(e),n.vc())):!1}function sht(e,t,n){var s,a;for(a=n.Kc();a.Ob();)if(s=h(a.Pb(),42),e.re(t,s.dd()))return!0;return!1}function aht(e,t,n){return e.d[t.p][n.p]||(b8n(e,t,n),e.d[t.p][n.p]=!0,e.d[n.p][t.p]=!0),e.a[t.p][n.p]}function Gk(e,t){if(!e.ai()&&t==null)throw ne(new an("The 'no null' constraint is violated"));return t}function Vk(e,t){e.D==null&&e.B!=null&&(e.D=e.B,e.B=null),PK(e,t==null?null:(rn(t),t)),e.C&&e.yk(null)}function k6n(e,t){var n;return!e||e==t||!os(t,(He(),rv))?!1:(n=h(U(t,(He(),rv)),10),n!=e)}function iX(e){switch(e.i){case 2:return!0;case 1:return!1;case-1:++e.c;default:return e.pl()}}function oht(e){switch(e.i){case-2:return!0;case-1:return!1;case 1:--e.c;default:return e.ql()}}function cht(e){Qit.call(this,"The given string does not match the expected format for individual spacings.",e)}function Lu(){Lu=re,rl=new UN("ELK",0),tEe=new UN("JSON",1),eEe=new UN("DOT",2),nEe=new UN("SVG",3)}function VA(){VA=re,wH=new pY(jd,0),Pxe=new pY("RADIAL_COMPACTION",1),Bxe=new pY("WEDGE_COMPACTION",2)}function Af(){Af=re,X3e=new Wq("CONCURRENT",0),Zu=new Wq("IDENTITY_FINISH",1),Kw=new Wq("UNORDERED",2)}function sX(){sX=re,T4e=(kN(),bte),_4e=new $t(mwe,T4e),_4t=new Xr(ywe),T4t=new Xr(kwe),C4t=new Xr(xwe)}function Uk(){Uk=re,R5e=new fRe,j5e=new dRe,R5t=new gRe,F5t=new pRe,B5t=new bRe,F5e=(rn(B5t),new Ge)}function qk(){qk=re,Kne=new lY("CONSERVATIVE",0),cxe=new lY("CONSERVATIVE_SOFT",1),F_=new lY("SLOPPY",2)}function uF(){uF=re,G7e=new nb(15),ZEt=new sa((Tr(),y2),G7e),eT=q5,j7e=PEt,$7e=m2,z7e=_3,H7e=IH}function aX(e,t,n){var s,a,u;for(s=new di,u=pr(n,0);u.b!=u.d.c;)a=h(gr(u),8),vr(s,new _a(a));iht(e,t,s)}function x6n(e){var t,n,s;for(t=0,s=pe(cs,Re,8,e.b,0,1),n=pr(e,0);n.b!=n.d.c;)s[t++]=h(gr(n),8);return s}function tpe(e){var t;return t=(!e.a&&(e.a=new Ye(qd,e,9,5)),e.a),t.i!=0?$1n(h(he(t,0),678)):null}function E6n(e,t){var n;return n=Vs(e,t),Yq(ZW(e,t),0)|ndn(ZW(e,n),0)?n:Vs(_R,ZW(ow(n,63),1))}function _6n(e,t){var n;n=at((EX(),eH))!=null&&t.wg()!=null?Pe(Je(t.wg()))/Pe(Je(at(eH))):1,Pr(e.b,t,n)}function T6n(e,t){var n,s;return n=h(e.d.Bc(t),14),n?(s=e.e.hc(),s.Gc(n),e.e.d-=n.gc(),n.$b(),s):null}function npe(e,t){var n,s;if(s=e.c[t],s!=0)for(e.c[t]=0,e.d-=s,n=t+1;n0)return ck(t-1,e.a.c.length),f0(e.a,t-1);throw ne(new OKe)}function C6n(e,t,n){if(t<0)throw ne(new Ea(Lwt+t));tt)throw ne(new an(MR+e+ivt+t));if(e<0||t>n)throw ne(new bhe(MR+e+awe+t+iwe+n))}function hht(e){if(!e.a||(e.a.i&8)==0)throw ne(new ja("Enumeration class expected for layout option "+e.f))}function kw(e){var t;++e.j,e.i==0?e.g=null:e.iij?e-n>ij:n-e>ij}function cX(e,t){return!e||t&&!e.j||ue(e,124)&&h(e,124).a.b==0?0:e.Re()}function hF(e,t){return!e||t&&!e.k||ue(e,124)&&h(e,124).a.a==0?0:e.Se()}function UA(e){return Dg(),e<0?e!=-1?new Qpe(-1,-e):ite:e<=10?R3e[Li(e)]:new Qpe(1,e)}function ipe(e){throw YK(),ne(new CXe("Unexpected typeof result '"+e+"'; please report this bug to the GWT team"))}function bht(e){IXe(),nP(this),KP(this),this.e=e,Mgt(this,e),this.g=e==null?_c:Ga(e),this.a="",this.b=e,this.a=""}function spe(){this.a=new OHe,this.f=new kWe(this),this.b=new xWe(this),this.i=new EWe(this),this.e=new _We(this)}function vht(){Pfn.call(this,new z0e(vw(16))),Uu(2,jbt),this.b=2,this.a=new Hde(null,null,0,null),gS(this.a,this.a)}function t9(){t9=re,jne=new aY("DUMMY_NODE_OVER",0),qke=new aY("DUMMY_NODE_UNDER",1),nH=new aY("EQUAL",2)}function uX(){uX=re,Ate=Jit(se(ie(J_,1),ze,103,0,[(la(),Wl),Dh])),Mte=Jit(se(ie(J_,1),ze,103,0,[Gd,zd]))}function lX(e){return(Qe(),Cc).Hc(e.j)?Pe(Je(U(e,(He(),a8)))):Qa(se(ie(cs,1),Re,8,0,[e.i.n,e.n,e.a])).b}function L6n(e){var t,n,s,a;for(s=e.b.a,n=s.a.ec().Kc();n.Ob();)t=h(n.Pb(),561),a=new ugt(t,e.e,e.f),Ue(e.g,a)}function Vp(e,t){var n,s,a;s=e.nk(t,null),a=null,t&&(a=(q6(),n=new V2,n),Sk(a,e.r)),s=Df(e,a,s),s&&s.Fi()}function I6n(e,t){var n,s;for(s=hu(e.d,1)!=0,n=!0;n;)n=!1,n=t.c.Tf(t.e,s),n=n|kM(e,t,s,!1),s=!s;Ege(e)}function ape(e,t){var n,s,a;return s=!1,n=t.q.d,t.da&&(G1t(t.q,a),s=n!=t.q.d)),s}function wht(e,t){var n,s,a,u,p,v,m,x;return m=t.i,x=t.j,s=e.f,a=s.i,u=s.j,p=m-a,v=x-u,n=d.Math.sqrt(p*p+v*v),n}function ope(e,t){var n,s;return s=TF(e),s||(n=(nZ(),Vdt(t)),s=new _Ke(n),qn(s.Vk(),e)),s}function qA(e,t){var n,s;return n=h(e.c.Bc(t),14),n?(s=e.hc(),s.Gc(n),e.d-=n.gc(),n.$b(),e.mc(s)):e.jc()}function mht(e,t){var n;for(n=0;n=e.c.b:e.a<=e.c.b))throw ne(new lo);return t=e.a,e.a+=e.c.c,++e.b,Ke(t)}function P6n(e){var t;return t=new Zct(e),fA(e.a,k5t,new _u(se(ie(yD,1),st,369,0,[t]))),t.d&&Ue(t.f,t.d),t.f}function hX(e){var t;return t=new Afe(e.a),Oa(t,e),Fe(t,(He(),Br),e),t.o.a=e.g,t.o.b=e.f,t.n.a=e.i,t.n.b=e.j,t}function B6n(e,t,n,s){var a,u;for(u=e.Kc();u.Ob();)a=h(u.Pb(),70),a.n.a=t.a+(s.a-a.o.a)/2,a.n.b=t.b,t.b+=a.o.b+n}function F6n(e,t,n){var s,a;for(a=t.a.a.ec().Kc();a.Ob();)if(s=h(a.Pb(),57),Iit(e,s,n))return!0;return!1}function R6n(e){var t,n;for(n=new Q(e.r);n.a=0?t:-t;s>0;)s%2==0?(n*=n,s=s/2|0):(a*=n,s-=1);return t<0?1/a:a}function z6n(e,t){var n,s,a;for(a=1,n=e,s=t>=0?t:-t;s>0;)s%2==0?(n*=n,s=s/2|0):(a*=n,s-=1);return t<0?1/a:a}function Cht(e){var t,n;if(e!=null)for(n=0;n0&&(n=h(ut(e.a,e.a.c.length-1),570),Zge(n,t))||Ue(e.a,new sot(t))}function Y6n(e){wh();var t,n;t=e.d.c-e.e.c,n=h(e.g,145),mc(n.b,new DYe(t)),mc(n.c,new LYe(t)),Os(n.i,new IYe(t))}function Dht(e){var t;return t=new rg,t.a+="VerticalSegment ",ho(t,e.e),t.a+=" ",or(t,Rfe(new $q,new Q(e.k))),t.a}function W6n(e){var t;return t=h(mb(e.c.c,""),229),t||(t=new q4(U6(V6(new m4,""),"Other")),Yp(e.c.c,"",t)),t}function n9(e){var t;return(e.Db&64)!=0?_h(e):(t=new Ol(_h(e)),t.a+=" (name: ",va(t,e.zb),t.a+=")",t.a)}function fpe(e,t,n){var s,a;return a=e.sb,e.sb=t,(e.Db&4)!=0&&(e.Db&1)==0&&(s=new fs(e,1,4,a,t),n?n.Ei(s):n=s),n}function fX(e,t){var n,s,a;for(n=0,a=Za(e,t).Kc();a.Ob();)s=h(a.Pb(),11),n+=U(s,(He(),Zc))!=null?1:0;return n}function _y(e,t,n){var s,a,u;for(s=0,u=pr(e,0);u.b!=u.d.c&&(a=Pe(Je(gr(u))),!(a>n));)a>=t&&++s;return s}function K6n(e,t,n){var s,a;return s=new Sd(e.e,3,13,null,(a=t.c,a||(Bt(),zf)),y0(e,t),!1),n?n.Ei(s):n=s,n}function X6n(e,t,n){var s,a;return s=new Sd(e.e,4,13,(a=t.c,a||(Bt(),zf)),null,y0(e,t),!1),n?n.Ei(s):n=s,n}function dpe(e,t,n){var s,a;return a=e.r,e.r=t,(e.Db&4)!=0&&(e.Db&1)==0&&(s=new fs(e,1,8,a,e.r),n?n.Ei(s):n=s),n}function v0(e,t){var n,s;return n=h(t,676),s=n.vk(),!s&&n.wk(s=ue(t,88)?new _Je(e,h(t,26)):new Yst(e,h(t,148))),s}function YA(e,t,n){var s;e.qi(e.i+1),s=e.oi(t,n),t!=e.i&&Ao(e.g,t,e.g,t+1,e.i-t),pi(e.g,t,s),++e.i,e.bi(t,n),e.ci()}function Q6n(e,t){var n;return t.a&&(n=t.a.a.length,e.a?or(e.a,e.b):e.a=new ju(e.d),Kst(e.a,t.a,t.d.length,n)),e}function Z6n(e,t){var n,s,a,u;if(t.vi(e.a),u=h(tn(e.a,8),1936),u!=null)for(n=u,s=0,a=n.length;sn)throw ne(new Ea(MR+e+awe+t+", size: "+n));if(e>t)throw ne(new an(MR+e+ivt+t))}function vl(e,t,n){if(t<0)bbe(e,n);else{if(!n.Ij())throw ne(new an(Fg+n.ne()+J9));h(n,66).Nj().Vj(e,e.yh(),t)}}function tkn(e,t,n,s,a,u,p,v){var m;for(m=n;u=s||t=65&&e<=70?e-65+10:e>=97&&e<=102?e-97+10:e>=48&&e<=57?e-48:0}function Fht(e){var t;return(e.Db&64)!=0?_h(e):(t=new Ol(_h(e)),t.a+=" (source: ",va(t,e.d),t.a+=")",t.a)}function rkn(e,t,n){var s,a;return a=e.a,e.a=t,(e.Db&4)!=0&&(e.Db&1)==0&&(s=new fs(e,1,5,a,e.a),n?B2e(n,s):n=s),n}function w0(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new kh(e,1,2,n,t))}function ppe(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new kh(e,1,8,n,t))}function gF(e,t){var n;n=(e.Bb&256)!=0,t?e.Bb|=256:e.Bb&=-257,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new kh(e,1,8,n,t))}function m0(e,t){var n;n=(e.Bb&512)!=0,t?e.Bb|=512:e.Bb&=-513,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new kh(e,1,3,n,t))}function bpe(e,t){var n;n=(e.Bb&512)!=0,t?e.Bb|=512:e.Bb&=-513,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new kh(e,1,9,n,t))}function i9(e,t){var n;return e.b==-1&&!!e.a&&(n=e.a.Gj(),e.b=n?e.c.Xg(e.a.aj(),n):oi(e.c.Tg(),e.a)),e.c.Og(e.b,t)}function Ke(e){var t,n;return e>-129&&e<128?(t=e+128,n=(Pnt(),T3e)[t],!n&&(n=T3e[t]=new wle(e)),n):new wle(e)}function Yk(e){var t,n;return e>-129&&e<128?(t=e+128,n=(Hnt(),M3e)[t],!n&&(n=M3e[t]=new yle(e)),n):new yle(e)}function vpe(e){var t,n;return t=e.k,t==(bn(),Pi)?(n=h(U(e,(He(),co)),61),n==(Qe(),sn)||n==Fn):!1}function ikn(e,t,n){var s,a,u;return u=(a=lx(e.b,t),a),u&&(s=h(bR(TA(e,u),""),26),s)?Fbe(e,s,t,n):null}function dX(e,t,n){var s,a,u;return u=(a=lx(e.b,t),a),u&&(s=h(bR(TA(e,u),""),26),s)?Rbe(e,s,t,n):null}function Rht(e,t){var n,s;for(s=new Tn(e);s.e!=s.i.gc();)if(n=h(On(s),138),Me(t)===Me(n))return!0;return!1}function s9(e,t,n){var s;if(s=e.gc(),t>s)throw ne(new sw(t,s));if(e.hi()&&e.Hc(n))throw ne(new an(nD));e.Xh(t,n)}function skn(e,t){var n;if(n=wy(e.i,t),n==null)throw ne(new Xf("Node did not exist in input."));return Age(t,n),null}function akn(e,t){var n;if(n=yM(e,t),ue(n,322))return h(n,34);throw ne(new an(Fg+t+"' is not a valid attribute"))}function okn(e,t,n){var s,a;for(a=ue(t,99)&&(h(t,18).Bb&ea)!=0?new _Y(t,e):new Rk(t,e),s=0;st?1:e==t?e==0?Ui(1/e,1/t):0:isNaN(e)?isNaN(t)?0:1:-1}function bkn(e,t){Bn(t,"Sort end labels",1),Ti(Jr(Xa(new Vt(null,new Wt(e.b,16)),new iFe),new sFe),new aFe),An(t)}function a9(e,t,n){var s,a;return e.ej()?(a=e.fj(),s=yQ(e,t,n),e.$i(e.Zi(7,Ke(n),s,t,a)),s):yQ(e,t,n)}function gX(e,t){var n,s,a;e.d==null?(++e.e,--e.f):(a=t.cd(),n=t.Sh(),s=(n&Ir)%e.d.length,Jyn(e,s,ngt(e,s,n,a)))}function Wk(e,t){var n;n=(e.Bb&Ch)!=0,t?e.Bb|=Ch:e.Bb&=-1025,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new kh(e,1,10,n,t))}function Kk(e,t){var n;n=(e.Bb&$w)!=0,t?e.Bb|=$w:e.Bb&=-4097,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new kh(e,1,12,n,t))}function Xk(e,t){var n;n=(e.Bb&zc)!=0,t?e.Bb|=zc:e.Bb&=-8193,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new kh(e,1,15,n,t))}function Qk(e,t){var n;n=(e.Bb&Ww)!=0,t?e.Bb|=Ww:e.Bb&=-2049,(e.Db&4)!=0&&(e.Db&1)==0&&Or(e,new kh(e,1,11,n,t))}function vkn(e,t){var n;return n=Ui(e.b.c,t.b.c),n!=0||(n=Ui(e.a.a,t.a.a),n!=0)?n:Ui(e.a.b,t.a.b)}function wkn(e,t){var n;if(n=_n(e.k,t),n==null)throw ne(new Xf("Port did not exist in input."));return Age(t,n),null}function mkn(e){var t,n;for(n=ogt(Vu(e)).Kc();n.Ob();)if(t=Jn(n.Pb()),T9(e,t))return Syn((gZe(),R9t),t);return null}function ykn(e,t){var n,s,a,u,p;for(p=ac(e.e.Tg(),t),u=0,n=h(e.g,119),a=0;a>10)+jM&Oi,t[1]=(e&1023)+56320&Oi,Fl(t,0,t.length)}function bF(e){var t,n;return n=h(U(e,(tt(),Ju)),103),n==(la(),Q1)?(t=Pe(Je(U(e,j$))),t>=1?Dh:zd):n}function Ekn(e){switch(h(U(e,(tt(),Hd)),218).g){case 1:return new Uje;case 3:return new Xje;default:return new Vje}}function Up(e){if(e.c)Up(e.c);else if(e.d)throw ne(new ja("Stream already terminated, can't be modified or used"))}function vX(e){var t;return(e.Db&64)!=0?_h(e):(t=new Ol(_h(e)),t.a+=" (identifier: ",va(t,e.k),t.a+=")",t.a)}function zht(e,t,n){var s,a;return s=(X2(),a=new zO,a),$B(s,t),HB(s,n),e&&qn((!e.a&&(e.a=new Gi(Zl,e,5)),e.a),s),s}function wX(e,t,n,s){var a,u;return rn(s),rn(n),a=e.xc(t),u=a==null?n:tZe(h(a,15),h(n,14)),u==null?e.Bc(t):e.zc(t,u),u}function Lt(e){var t,n,s,a;return n=(t=h(Vh((s=e.gm,a=s.f,a==sr?s:a)),9),new ll(t,h(vh(t,t.length),9),0)),Eh(n,e),n}function _kn(e,t,n){var s,a;for(a=e.a.ec().Kc();a.Ob();)if(s=h(a.Pb(),10),FA(n,h(ut(t,s.p),14)))return s;return null}function Tkn(e,t,n){var s;try{s6n(e,t,n)}catch(a){throw a=ui(a),ue(a,597)?(s=a,ne(new T0e(s))):ne(a)}return t}function Cg(e,t){var n;return $a(e)&&$a(t)&&(n=e-t,RM>1,e.k=n-1>>1}function mX(){z2e();var e,t,n;n=mPn+++Date.now(),e=Li(d.Math.floor(n*HM))&AR,t=Li(n-e*rwe),this.a=e^1502,this.b=t^VZ}function Id(e){var t,n,s;for(t=new qe,s=new Q(e.j);s.a34028234663852886e22?ki:t<-34028234663852886e22?Fi:t}function Ght(e){return e-=e>>1&1431655765,e=(e>>2&858993459)+(e&858993459),e=(e>>4)+e&252645135,e+=e>>8,e+=e>>16,e&63}function Vht(e){var t,n,s,a;for(t=new _tt(e.Hd().gc()),a=0,s=J4(e.Hd().Kc());s.Ob();)n=s.Pb(),$wn(t,n,Ke(a++));return h_n(t.a)}function Lkn(e,t){var n,s,a;for(a=new zn,s=t.vc().Kc();s.Ob();)n=h(s.Pb(),42),Pr(a,n.cd(),x5n(e,h(n.dd(),15)));return a}function Epe(e,t){e.n.c.length==0&&Ue(e.n,new sB(e.s,e.t,e.i)),Ue(e.b,t),s2e(h(ut(e.n,e.n.c.length-1),211),t),e2t(e,t)}function Ty(e){return(e.c!=e.b.b||e.i!=e.g.b)&&(e.a.c=pe(yn,st,1,0,5,1),Vi(e.a,e.b),Vi(e.a,e.g),e.c=e.b.b,e.i=e.g.b),e.a}function yX(e,t){var n,s,a;for(a=0,s=h(t.Kb(e),20).Kc();s.Ob();)n=h(s.Pb(),17),ft(lt(U(n,(He(),Ff))))||++a;return a}function Ikn(e,t){var n,s,a;s=by(t),a=Pe(Je(_w(s,(tt(),Mh)))),n=d.Math.max(0,a/2-.5),g9(t,n,1),Ue(e,new NZe(t,n))}function wl(){wl=re,LD=new LS(jd,0),C_=new LS("FIRST",1),Gg=new LS(Qvt,2),S_=new LS("LAST",3),nm=new LS(Zvt,4)}function Od(){Od=re,qre=new HN(j9,0),nL=new HN("POLYLINE",1),y8=new HN("ORTHOGONAL",2),W5=new HN("SPLINES",3)}function vF(){vF=re,e8e=new vY("ASPECT_RATIO_DRIVEN",0),wre=new vY("MAX_SCALE_DRIVEN",1),Jxe=new vY("AREA_DRIVEN",2)}function XA(){XA=re,kH=new wY("P1_STRUCTURE",0),xH=new wY("P2_PROCESSING_ORDER",1),EH=new wY("P3_EXECUTION",2)}function wF(){wF=re,fre=new gY("OVERLAP_REMOVAL",0),lre=new gY("COMPACTION",1),hre=new gY("GRAPH_SIZE_CALCULATION",2)}function Mb(e,t){return vf(),xh(Ig),d.Math.abs(e-t)<=Ig||e==t||isNaN(e)&&isNaN(t)?0:et?1:tb(isNaN(e),isNaN(t))}function Uht(e,t){var n,s;for(n=pr(e,0);n.b!=n.d.c;){if(s=bS(Je(gr(n))),s==t)return;if(s>t){eK(n);break}}nA(n,t)}function Dt(e,t){var n,s,a,u,p;if(n=t.f,Yp(e.c.d,n,t),t.g!=null)for(a=t.g,u=0,p=a.length;ut&&s.ue(e[u-1],e[u])>0;--u)p=e[u],pi(e,u,e[u-1]),pi(e,u-1,p)}function ml(e,t,n,s){if(t<0)zbe(e,n,s);else{if(!n.Ij())throw ne(new an(Fg+n.ne()+J9));h(n,66).Nj().Tj(e,e.yh(),t,s)}}function mF(e,t){if(t==e.d)return e.e;if(t==e.e)return e.d;throw ne(new an("Node "+t+" not part of edge "+e))}function Nkn(e,t){switch(t.g){case 2:return e.b;case 1:return e.c;case 4:return e.d;case 3:return e.a;default:return!1}}function qht(e,t){switch(t.g){case 2:return e.b;case 1:return e.c;case 4:return e.d;case 3:return e.a;default:return!1}}function _pe(e,t,n,s){switch(t){case 3:return e.f;case 4:return e.g;case 5:return e.i;case 6:return e.j}return gpe(e,t,n,s)}function Pkn(e){return e.k!=(bn(),Wi)?!1:yk(new Vt(null,new cb(new Sn(Dn(qi(e).a.Kc(),new L)))),new Ije)}function Bkn(e){return e.e==null?e:(!e.c&&(e.c=new OQ((e.f&256)!=0,e.i,e.a,e.d,(e.f&16)!=0,e.j,e.g,null)),e.c)}function Fkn(e,t){return e.h==FM&&e.m==0&&e.l==0?(t&&(Rg=rc(0,0,0)),UJe((Ck(),m3e))):(t&&(Rg=rc(e.l,e.m,e.h)),rc(0,0,0))}function Ga(e){var t;return Array.isArray(e)&&e.im===de?sg(uu(e))+"@"+(t=ii(e)>>>0,t.toString(16)):e.toString()}function o9(e){var t;this.a=(t=h(e.e&&e.e(),9),new ll(t,h(vh(t,t.length),9),0)),this.b=pe(yn,st,1,this.a.a.length,5,1)}function Rkn(e){var t,n,s;for(this.a=new md,s=new Q(e);s.a0&&(er(t-1,e.length),e.charCodeAt(t-1)==58)&&!kX(e,lT,hT))}function kX(e,t,n){var s,a;for(s=0,a=e.length;s=a)return t.c+n;return t.c+t.b.gc()}function Gkn(e,t){ik();var n,s,a,u;for(s=act(e),a=t,_k(s,0,s.length,a),n=0;n0&&(s+=a,++n);return n>1&&(s+=e.d*(n-1)),s}function Cpe(e){var t,n,s;for(s=new s0,s.a+="[",t=0,n=e.gc();t0&&this.b>0&&ode(this.c,this.b,this.a)}function Mpe(e){EX(),this.c=Ef(se(ie(FPn,1),st,831,0,[Mxt])),this.b=new zn,this.a=e,Pr(this.b,eH,1),mc(Dxt,new OWe(this))}function Yht(e,t){var n;return e.d?Au(e.b,t)?h(_n(e.b,t),51):(n=t.Kf(),Pr(e.b,t,n),n):t.Kf()}function Dpe(e,t){var n;return Me(e)===Me(t)?!0:ue(t,91)?(n=h(t,91),e.e==n.e&&e.d==n.d&&Myn(e,n.a)):!1}function i5(e){switch(Qe(),e.g){case 4:return sn;case 1:return pn;case 3:return Fn;case 2:return un;default:return to}}function Lpe(e,t){switch(t){case 3:return e.f!=0;case 4:return e.g!=0;case 5:return e.i!=0;case 6:return e.j!=0}return Dge(e,t)}function Kkn(e){switch(e.g){case 0:return new CHe;case 1:return new SHe;default:throw ne(new an(JJ+(e.f!=null?e.f:""+e.g)))}}function Wht(e){switch(e.g){case 0:return new THe;case 1:return new AHe;default:throw ne(new an(pJ+(e.f!=null?e.f:""+e.g)))}}function Kht(e){switch(e.g){case 0:return new uhe;case 1:return new iXe;default:throw ne(new an(cj+(e.f!=null?e.f:""+e.g)))}}function Xkn(e){switch(e.g){case 1:return new mHe;case 2:return new ftt;default:throw ne(new an(JJ+(e.f!=null?e.f:""+e.g)))}}function Qkn(e){var t,n;if(e.b)return e.b;for(n=Pf?null:e.d;n;){if(t=Pf?null:n.b,t)return t;n=Pf?null:n.d}return Q6(),K3e}function Zkn(e){var t,n,s;return e.e==0?0:(t=e.d<<5,n=e.a[e.d-1],e.e<0&&(s=slt(e),s==e.d-1&&(--n,n=n|0)),t-=bM(n),t)}function Jkn(e){var t,n,s;return e>5,t=e&31,s=pe(Hn,hr,25,n+1,15,1),s[n]=1<3;)a*=10,--u;e=(e+(a>>1))/a|0}return s.i=e,!0}function txn(e){return uX(),on(),!!(qht(h(e.a,81).j,h(e.b,103))||h(e.a,81).d.e!=0&&qht(h(e.a,81).j,h(e.b,103)))}function nxn(e){CB(),h(e.We((Tr(),Wg)),174).Hc((fu(),$H))&&(h(e.We(gm),174).Fc((Qc(),K5)),h(e.We(Wg),174).Mc($H))}function Qht(e,t){var n,s;if(t){for(n=0;n=0;--s)for(t=n[s],a=0;a>1,this.k=t-1>>1}function cxn(e,t){Bn(t,"End label post-processing",1),Ti(Jr(Xa(new Vt(null,new Wt(e.b,16)),new XBe),new QBe),new ZBe),An(t)}function uxn(e,t,n){var s,a;return s=Pe(e.p[t.i.p])+Pe(e.d[t.i.p])+t.n.b+t.a.b,a=Pe(e.p[n.i.p])+Pe(e.d[n.i.p])+n.n.b+n.a.b,a-s}function lxn(e,t,n){var s,a;for(s=Zi(n,fa),a=0;mo(s,0)!=0&&a0&&(er(0,t.length),t.charCodeAt(0)==43)?t.substr(1):t))}function fxn(e){var t;return e==null?null:new hg((t=Ho(e,!0),t.length>0&&(er(0,t.length),t.charCodeAt(0)==43)?t.substr(1):t))}function Rpe(e,t){var n;return e.i>0&&(t.length