@biaoo/tiangong-wiki 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +167 -0
- package/README.zh-CN.md +167 -0
- package/SKILL.md +116 -0
- package/agents/openai.yaml +4 -0
- package/assets/config.example.env +18 -0
- package/assets/templates/achievement.md +32 -0
- package/assets/templates/bridge.md +33 -0
- package/assets/templates/concept.md +47 -0
- package/assets/templates/faq.md +31 -0
- package/assets/templates/lesson.md +31 -0
- package/assets/templates/method.md +31 -0
- package/assets/templates/misconception.md +35 -0
- package/assets/templates/person.md +31 -0
- package/assets/templates/research-note.md +34 -0
- package/assets/templates/resume.md +34 -0
- package/assets/templates/source-summary.md +35 -0
- package/assets/vllm/qwen3_5_openai_developer.jinja +182 -0
- package/assets/wiki.config.default.json +193 -0
- package/dist/commands/check-config.js +77 -0
- package/dist/commands/create.js +32 -0
- package/dist/commands/daemon.js +186 -0
- package/dist/commands/dashboard.js +112 -0
- package/dist/commands/doctor.js +22 -0
- package/dist/commands/export-graph.js +28 -0
- package/dist/commands/export-index.js +31 -0
- package/dist/commands/find.js +36 -0
- package/dist/commands/fts.js +32 -0
- package/dist/commands/graph.js +35 -0
- package/dist/commands/init.js +48 -0
- package/dist/commands/lint.js +35 -0
- package/dist/commands/list.js +28 -0
- package/dist/commands/page-info.js +24 -0
- package/dist/commands/search.js +32 -0
- package/dist/commands/setup.js +15 -0
- package/dist/commands/stat.js +20 -0
- package/dist/commands/sync.js +38 -0
- package/dist/commands/template.js +71 -0
- package/dist/commands/type.js +88 -0
- package/dist/commands/vault.js +64 -0
- package/dist/core/agent.js +201 -0
- package/dist/core/cli-env.js +129 -0
- package/dist/core/codex-workflow.js +233 -0
- package/dist/core/config.js +126 -0
- package/dist/core/db.js +292 -0
- package/dist/core/embedding.js +104 -0
- package/dist/core/frontmatter.js +287 -0
- package/dist/core/indexer.js +241 -0
- package/dist/core/onboarding.js +967 -0
- package/dist/core/page-files.js +91 -0
- package/dist/core/paths.js +161 -0
- package/dist/core/presenters.js +23 -0
- package/dist/core/query.js +58 -0
- package/dist/core/runtime.js +20 -0
- package/dist/core/sync.js +235 -0
- package/dist/core/synology.js +412 -0
- package/dist/core/template-evolution.js +38 -0
- package/dist/core/vault-processing.js +742 -0
- package/dist/core/vault.js +594 -0
- package/dist/core/workflow-context.js +188 -0
- package/dist/core/workflow-result.js +162 -0
- package/dist/core/workspace-bootstrap.js +30 -0
- package/dist/core/workspace-skills.js +220 -0
- package/dist/daemon/client.js +147 -0
- package/dist/daemon/server.js +807 -0
- package/dist/daemon/state.js +53 -0
- package/dist/dashboard/assets/index-1FgAUZ28.css +1 -0
- package/dist/dashboard/assets/index-6A0PWT4X.js +154 -0
- package/dist/dashboard/assets/jetbrains-mono-cyrillic-400-normal-BEIGL1Tu.woff2 +0 -0
- package/dist/dashboard/assets/jetbrains-mono-cyrillic-400-normal-ugxPyKxw.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-cyrillic-500-normal-DJqRU3vO.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-cyrillic-500-normal-DmUKJPL_.woff2 +0 -0
- package/dist/dashboard/assets/jetbrains-mono-cyrillic-700-normal-BWTpRfYl.woff2 +0 -0
- package/dist/dashboard/assets/jetbrains-mono-cyrillic-700-normal-CEoEElIJ.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-greek-400-normal-B9oWc5Lo.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-greek-400-normal-C190GLew.woff2 +0 -0
- package/dist/dashboard/assets/jetbrains-mono-greek-500-normal-D7SFKleX.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-greek-500-normal-JpySY46c.woff2 +0 -0
- package/dist/dashboard/assets/jetbrains-mono-greek-700-normal-C6CZE3T8.woff2 +0 -0
- package/dist/dashboard/assets/jetbrains-mono-greek-700-normal-DEigVDxa.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-latin-400-normal-6-qcROiO.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2 +0 -0
- package/dist/dashboard/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2 +0 -0
- package/dist/dashboard/assets/jetbrains-mono-latin-500-normal-CJOVTJB7.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-latin-700-normal-BYuf6tUa.woff2 +0 -0
- package/dist/dashboard/assets/jetbrains-mono-latin-700-normal-D3wTyLJW.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-latin-ext-400-normal-Bc8Ftmh3.woff2 +0 -0
- package/dist/dashboard/assets/jetbrains-mono-latin-ext-400-normal-fXTG6kC5.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-latin-ext-500-normal-Cut-4mMH.woff2 +0 -0
- package/dist/dashboard/assets/jetbrains-mono-latin-ext-500-normal-ckzbgY84.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-latin-ext-700-normal-CZipNAKV.woff2 +0 -0
- package/dist/dashboard/assets/jetbrains-mono-latin-ext-700-normal-CxPITLHs.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-vietnamese-400-normal-CqNFfHCs.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-vietnamese-500-normal-DNRqzVM1.woff +0 -0
- package/dist/dashboard/assets/jetbrains-mono-vietnamese-700-normal-BDLVIk2r.woff +0 -0
- package/dist/dashboard/assets/space-grotesk-latin-400-normal-BnQMeOim.woff +0 -0
- package/dist/dashboard/assets/space-grotesk-latin-400-normal-CJ-V5oYT.woff2 +0 -0
- package/dist/dashboard/assets/space-grotesk-latin-500-normal-CNSSEhBt.woff +0 -0
- package/dist/dashboard/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2 +0 -0
- package/dist/dashboard/assets/space-grotesk-latin-700-normal-CwsQ-cCU.woff +0 -0
- package/dist/dashboard/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2 +0 -0
- package/dist/dashboard/assets/space-grotesk-latin-ext-400-normal-CfP_5XZW.woff2 +0 -0
- package/dist/dashboard/assets/space-grotesk-latin-ext-400-normal-DRPE3kg4.woff +0 -0
- package/dist/dashboard/assets/space-grotesk-latin-ext-500-normal-3dgZTiw9.woff +0 -0
- package/dist/dashboard/assets/space-grotesk-latin-ext-500-normal-DUe3BAxM.woff2 +0 -0
- package/dist/dashboard/assets/space-grotesk-latin-ext-700-normal-BQnZhY3m.woff2 +0 -0
- package/dist/dashboard/assets/space-grotesk-latin-ext-700-normal-HVCqSBdx.woff +0 -0
- package/dist/dashboard/assets/space-grotesk-vietnamese-400-normal-B7xT_GF5.woff2 +0 -0
- package/dist/dashboard/assets/space-grotesk-vietnamese-400-normal-BIWiOVfw.woff +0 -0
- package/dist/dashboard/assets/space-grotesk-vietnamese-500-normal-BTqKIpxg.woff +0 -0
- package/dist/dashboard/assets/space-grotesk-vietnamese-500-normal-BmEvtly_.woff2 +0 -0
- package/dist/dashboard/assets/space-grotesk-vietnamese-700-normal-DMty7AZE.woff2 +0 -0
- package/dist/dashboard/assets/space-grotesk-vietnamese-700-normal-Duxec5Rn.woff +0 -0
- package/dist/dashboard/index.html +18 -0
- package/dist/index.js +86 -0
- package/dist/operations/dashboard.js +1231 -0
- package/dist/operations/export.js +110 -0
- package/dist/operations/query.js +649 -0
- package/dist/operations/type-template.js +210 -0
- package/dist/operations/write.js +143 -0
- package/dist/types/config.js +1 -0
- package/dist/types/page.js +1 -0
- package/dist/utils/case.js +22 -0
- package/dist/utils/errors.js +26 -0
- package/dist/utils/fs.js +77 -0
- package/dist/utils/output.js +33 -0
- package/dist/utils/process.js +60 -0
- package/dist/utils/segmenter.js +24 -0
- package/dist/utils/slug.js +10 -0
- package/dist/utils/time.js +24 -0
- package/package.json +64 -0
- package/references/cli-interface.md +312 -0
- package/references/env.md +122 -0
- package/references/template-design-guide.md +271 -0
- package/references/vault-to-wiki-instruction.md +110 -0
- package/references/wiki-maintenance-instruction.md +190 -0
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),s=(e,n)=>{let r={};for(var i in e)t(r,i,{get:e[i],enumerable:!0});return n||t(r,Symbol.toStringTag,{value:`Module`}),r},c=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},l=(n,r,a)=>(a=n==null?{}:e(i(n)),c(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var u,d,f,p,m,h,g,_,v,y,b,x,S,C,w={},T=[],E=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,D=Array.isArray;function O(e,t){for(var n in t)e[n]=t[n];return e}function k(e){e&&e.parentNode&&e.parentNode.removeChild(e)}function A(e,t,n){var r,i,a,o={};for(a in t)a==`key`?r=t[a]:a==`ref`?i=t[a]:o[a]=t[a];if(arguments.length>2&&(o.children=arguments.length>3?u.call(arguments,2):n),typeof e==`function`&&e.defaultProps!=null)for(a in e.defaultProps)o[a]===void 0&&(o[a]=e.defaultProps[a]);return j(e,o,r,i,null)}function j(e,t,n,r,i){var a={type:e,props:t,key:n,ref:r,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:i??++f,__i:-1,__u:0};return i==null&&d.vnode!=null&&d.vnode(a),a}function ee(e){return e.children}function M(e,t){this.props=e,this.context=t}function te(e,t){if(t==null)return e.__?te(e.__,e.__i+1):null;for(var n;t<e.__k.length;t++)if((n=e.__k[t])!=null&&n.__e!=null)return n.__e;return typeof e.type==`function`?te(e):null}function ne(e){if(e.__P&&e.__d){var t=e.__v,n=t.__e,r=[],i=[],a=O({},t);a.__v=t.__v+1,d.vnode&&d.vnode(a),de(e.__P,a,t,e.__n,e.__P.namespaceURI,32&t.__u?[n]:null,r,n??te(t),!!(32&t.__u),i),a.__v=t.__v,a.__.__k[a.__i]=a,pe(r,a,i),t.__e=t.__=null,a.__e!=n&&re(a)}}function re(e){if((e=e.__)!=null&&e.__c!=null)return e.__e=e.__c.base=null,e.__k.some(function(t){if(t!=null&&t.__e!=null)return e.__e=e.__c.base=t.__e}),re(e)}function ie(e){(!e.__d&&(e.__d=!0)&&p.push(e)&&!N.__r++||m!=d.debounceRendering)&&((m=d.debounceRendering)||h)(N)}function N(){try{for(var e,t=1;p.length;)p.length>t&&p.sort(g),e=p.shift(),t=p.length,ne(e)}finally{p.length=N.__r=0}}function ae(e,t,n,r,i,a,o,s,c,l,u){var d,f,p,m,h,g,_,v=r&&r.__k||T,y=t.length;for(c=oe(n,t,v,c,y),d=0;d<y;d++)(p=n.__k[d])!=null&&(f=p.__i!=-1&&v[p.__i]||w,p.__i=d,g=de(e,p,f,i,a,o,s,c,l,u),m=p.__e,p.ref&&f.ref!=p.ref&&(f.ref&&ge(f.ref,null,p),u.push(p.ref,p.__c||m,p)),h==null&&m!=null&&(h=m),(_=!!(4&p.__u))||f.__k===p.__k?(c=P(p,c,e,_),_&&f.__e&&(f.__e=null)):typeof p.type==`function`&&g!==void 0?c=g:m&&(c=m.nextSibling),p.__u&=-7);return n.__e=h,c}function oe(e,t,n,r,i){var a,o,s,c,l,u=n.length,d=u,f=0;for(e.__k=Array(i),a=0;a<i;a++)(o=t[a])!=null&&typeof o!=`boolean`&&typeof o!=`function`?(typeof o==`string`||typeof o==`number`||typeof o==`bigint`||o.constructor==String?o=e.__k[a]=j(null,o,null,null,null):D(o)?o=e.__k[a]=j(ee,{children:o},null,null,null):o.constructor===void 0&&o.__b>0?o=e.__k[a]=j(o.type,o.props,o.key,o.ref?o.ref:null,o.__v):e.__k[a]=o,c=a+f,o.__=e,o.__b=e.__b+1,s=null,(l=o.__i=se(o,n,c,d))!=-1&&(d--,(s=n[l])&&(s.__u|=2)),s==null||s.__v==null?(l==-1&&(i>u?f--:i<u&&f++),typeof o.type!=`function`&&(o.__u|=4)):l!=c&&(l==c-1?f--:l==c+1?f++:(l>c?f--:f++,o.__u|=4))):e.__k[a]=null;if(d)for(a=0;a<u;a++)(s=n[a])!=null&&!(2&s.__u)&&(s.__e==r&&(r=te(s)),_e(s,s));return r}function P(e,t,n,r){var i,a;if(typeof e.type==`function`){for(i=e.__k,a=0;i&&a<i.length;a++)i[a]&&(i[a].__=e,t=P(i[a],t,n,r));return t}e.__e!=t&&(r&&(t&&e.type&&!t.parentNode&&(t=te(e)),n.insertBefore(e.__e,t||null)),t=e.__e);do t&&=t.nextSibling;while(t!=null&&t.nodeType==8);return t}function se(e,t,n,r){var i,a,o,s=e.key,c=e.type,l=t[n],u=l!=null&&(2&l.__u)==0;if(l===null&&s==null||u&&s==l.key&&c==l.type)return n;if(r>+!!u){for(i=n-1,a=n+1;i>=0||a<t.length;)if((l=t[o=i>=0?i--:a++])!=null&&!(2&l.__u)&&s==l.key&&c==l.type)return o}return-1}function ce(e,t,n){t[0]==`-`?e.setProperty(t,n??``):e[t]=n==null?``:typeof n!=`number`||E.test(t)?n:n+`px`}function le(e,t,n,r,i){var a,o;n:if(t==`style`)if(typeof n==`string`)e.style.cssText=n;else{if(typeof r==`string`&&(e.style.cssText=r=``),r)for(t in r)n&&t in n||ce(e.style,t,``);if(n)for(t in n)r&&n[t]==r[t]||ce(e.style,t,n[t])}else if(t[0]==`o`&&t[1]==`n`)a=t!=(t=t.replace(b,`$1`)),o=t.toLowerCase(),t=o in e||t==`onFocusOut`||t==`onFocusIn`?o.slice(2):t.slice(2),e.l||={},e.l[t+a]=n,n?r?n[y]=r[y]:(n[y]=x,e.addEventListener(t,a?C:S,a)):e.removeEventListener(t,a?C:S,a);else{if(i==`http://www.w3.org/2000/svg`)t=t.replace(/xlink(H|:h)/,`h`).replace(/sName$/,`s`);else if(t!=`width`&&t!=`height`&&t!=`href`&&t!=`list`&&t!=`form`&&t!=`tabIndex`&&t!=`download`&&t!=`rowSpan`&&t!=`colSpan`&&t!=`role`&&t!=`popover`&&t in e)try{e[t]=n??``;break n}catch{}typeof n==`function`||(n==null||!1===n&&t[4]!=`-`?e.removeAttribute(t):e.setAttribute(t,t==`popover`&&n==1?``:n))}}function ue(e){return function(t){if(this.l){var n=this.l[t.type+e];if(t[v]==null)t[v]=x++;else if(t[v]<n[y])return;return n(d.event?d.event(t):t)}}}function de(e,t,n,r,i,a,o,s,c,l){var u,f,p,m,h,g,_,v,y,b,x,S,C,w,E,A=t.type;if(t.constructor!==void 0)return null;128&n.__u&&(c=!!(32&n.__u),a=[s=t.__e=n.__e]),(u=d.__b)&&u(t);n:if(typeof A==`function`)try{if(v=t.props,y=A.prototype&&A.prototype.render,b=(u=A.contextType)&&r[u.__c],x=u?b?b.props.value:u.__:r,n.__c?_=(f=t.__c=n.__c).__=f.__E:(y?t.__c=f=new A(v,x):(t.__c=f=new M(v,x),f.constructor=A,f.render=ve),b&&b.sub(f),f.state||={},f.__n=r,p=f.__d=!0,f.__h=[],f._sb=[]),y&&f.__s==null&&(f.__s=f.state),y&&A.getDerivedStateFromProps!=null&&(f.__s==f.state&&(f.__s=O({},f.__s)),O(f.__s,A.getDerivedStateFromProps(v,f.__s))),m=f.props,h=f.state,f.__v=t,p)y&&A.getDerivedStateFromProps==null&&f.componentWillMount!=null&&f.componentWillMount(),y&&f.componentDidMount!=null&&f.__h.push(f.componentDidMount);else{if(y&&A.getDerivedStateFromProps==null&&v!==m&&f.componentWillReceiveProps!=null&&f.componentWillReceiveProps(v,x),t.__v==n.__v||!f.__e&&f.shouldComponentUpdate!=null&&!1===f.shouldComponentUpdate(v,f.__s,x)){t.__v!=n.__v&&(f.props=v,f.state=f.__s,f.__d=!1),t.__e=n.__e,t.__k=n.__k,t.__k.some(function(e){e&&(e.__=t)}),T.push.apply(f.__h,f._sb),f._sb=[],f.__h.length&&o.push(f);break n}f.componentWillUpdate!=null&&f.componentWillUpdate(v,f.__s,x),y&&f.componentDidUpdate!=null&&f.__h.push(function(){f.componentDidUpdate(m,h,g)})}if(f.context=x,f.props=v,f.__P=e,f.__e=!1,S=d.__r,C=0,y)f.state=f.__s,f.__d=!1,S&&S(t),u=f.render(f.props,f.state,f.context),T.push.apply(f.__h,f._sb),f._sb=[];else do f.__d=!1,S&&S(t),u=f.render(f.props,f.state,f.context),f.state=f.__s;while(f.__d&&++C<25);f.state=f.__s,f.getChildContext!=null&&(r=O(O({},r),f.getChildContext())),y&&!p&&f.getSnapshotBeforeUpdate!=null&&(g=f.getSnapshotBeforeUpdate(m,h)),w=u!=null&&u.type===ee&&u.key==null?me(u.props.children):u,s=ae(e,D(w)?w:[w],t,n,r,i,a,o,s,c,l),f.base=t.__e,t.__u&=-161,f.__h.length&&o.push(f),_&&(f.__E=f.__=null)}catch(e){if(t.__v=null,c||a!=null)if(e.then){for(t.__u|=c?160:128;s&&s.nodeType==8&&s.nextSibling;)s=s.nextSibling;a[a.indexOf(s)]=null,t.__e=s}else{for(E=a.length;E--;)k(a[E]);fe(t)}else t.__e=n.__e,t.__k=n.__k,e.then||fe(t);d.__e(e,t,n)}else a==null&&t.__v==n.__v?(t.__k=n.__k,t.__e=n.__e):s=t.__e=he(n.__e,t,n,r,i,a,o,c,l);return(u=d.diffed)&&u(t),128&t.__u?void 0:s}function fe(e){e&&(e.__c&&(e.__c.__e=!0),e.__k&&e.__k.some(fe))}function pe(e,t,n){for(var r=0;r<n.length;r++)ge(n[r],n[++r],n[++r]);d.__c&&d.__c(t,e),e.some(function(t){try{e=t.__h,t.__h=[],e.some(function(e){e.call(t)})}catch(e){d.__e(e,t.__v)}})}function me(e){return typeof e!=`object`||!e||e.__b>0?e:D(e)?e.map(me):O({},e)}function he(e,t,n,r,i,a,o,s,c){var l,f,p,m,h,g,_,v=n.props||w,y=t.props,b=t.type;if(b==`svg`?i=`http://www.w3.org/2000/svg`:b==`math`?i=`http://www.w3.org/1998/Math/MathML`:i||=`http://www.w3.org/1999/xhtml`,a!=null){for(l=0;l<a.length;l++)if((h=a[l])&&`setAttribute`in h==!!b&&(b?h.localName==b:h.nodeType==3)){e=h,a[l]=null;break}}if(e==null){if(b==null)return document.createTextNode(y);e=document.createElementNS(i,b,y.is&&y),s&&=(d.__m&&d.__m(t,a),!1),a=null}if(b==null)v===y||s&&e.data==y||(e.data=y);else{if(a&&=u.call(e.childNodes),!s&&a!=null)for(v={},l=0;l<e.attributes.length;l++)v[(h=e.attributes[l]).name]=h.value;for(l in v)h=v[l],l==`dangerouslySetInnerHTML`?p=h:l==`children`||l in y||l==`value`&&`defaultValue`in y||l==`checked`&&`defaultChecked`in y||le(e,l,null,h,i);for(l in y)h=y[l],l==`children`?m=h:l==`dangerouslySetInnerHTML`?f=h:l==`value`?g=h:l==`checked`?_=h:s&&typeof h!=`function`||v[l]===h||le(e,l,h,v[l],i);if(f)s||p&&(f.__html==p.__html||f.__html==e.innerHTML)||(e.innerHTML=f.__html),t.__k=[];else if(p&&(e.innerHTML=``),ae(t.type==`template`?e.content:e,D(m)?m:[m],t,n,r,b==`foreignObject`?`http://www.w3.org/1999/xhtml`:i,a,o,a?a[0]:n.__k&&te(n,0),s,c),a!=null)for(l=a.length;l--;)k(a[l]);s||(l=`value`,b==`progress`&&g==null?e.removeAttribute(`value`):g!=null&&(g!==e[l]||b==`progress`&&!g||b==`option`&&g!=v[l])&&le(e,l,g,v[l],i),l=`checked`,_!=null&&_!=e[l]&&le(e,l,_,v[l],i))}return e}function ge(e,t,n){try{if(typeof e==`function`){var r=typeof e.__u==`function`;r&&e.__u(),r&&t==null||(e.__u=e(t))}else e.current=t}catch(e){d.__e(e,n)}}function _e(e,t,n){var r,i;if(d.unmount&&d.unmount(e),(r=e.ref)&&(r.current&&r.current!=e.__e||ge(r,null,t)),(r=e.__c)!=null){if(r.componentWillUnmount)try{r.componentWillUnmount()}catch(e){d.__e(e,t)}r.base=r.__P=null}if(r=e.__k)for(i=0;i<r.length;i++)r[i]&&_e(r[i],t,n||typeof e.type!=`function`);n||k(e.__e),e.__c=e.__=e.__e=void 0}function ve(e,t,n){return this.constructor(e,n)}function ye(e,t,n){var r,i,a,o;t==document&&(t=document.documentElement),d.__&&d.__(e,t),i=(r=typeof n==`function`)?null:n&&n.__k||t.__k,a=[],o=[],de(t,e=(!r&&n||t).__k=A(ee,null,[e]),i||w,w,t.namespaceURI,!r&&n?[n]:i?null:t.firstChild?u.call(t.childNodes):null,a,!r&&n?n:i?i.__e:t.firstChild,r,o),pe(a,e,o)}u=T.slice,d={__e:function(e,t,n,r){for(var i,a,o;t=t.__;)if((i=t.__c)&&!i.__)try{if((a=i.constructor)&&a.getDerivedStateFromError!=null&&(i.setState(a.getDerivedStateFromError(e)),o=i.__d),i.componentDidCatch!=null&&(i.componentDidCatch(e,r||{}),o=i.__d),o)return i.__E=i}catch(t){e=t}throw e}},f=0,M.prototype.setState=function(e,t){var n=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=O({},this.state);typeof e==`function`&&(e=e(O({},n),this.props)),e&&O(n,e),e!=null&&this.__v&&(t&&this._sb.push(t),ie(this))},M.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),ie(this))},M.prototype.render=ee,p=[],h=typeof Promise==`function`?Promise.prototype.then.bind(Promise.resolve()):setTimeout,g=function(e,t){return e.__v.__b-t.__v.__b},N.__r=0,_=Math.random().toString(8),v=`__d`+_,y=`__a`+_,b=/(PointerCapture)$|Capture$/i,x=0,S=ue(!1),C=ue(!0);var be,xe,Se,Ce,we=0,Te=[],Ee=d,De=Ee.__b,Oe=Ee.__r,ke=Ee.diffed,Ae=Ee.__c,je=Ee.unmount,Me=Ee.__;function Ne(e,t){Ee.__h&&Ee.__h(xe,e,we||t),we=0;var n=xe.__H||={__:[],__h:[]};return e>=n.__.length&&n.__.push({}),n.__[e]}function F(e){return we=1,Pe(Ge,e)}function Pe(e,t,n){var r=Ne(be++,2);if(r.t=e,!r.__c&&(r.__=[n?n(t):Ge(void 0,t),function(e){var t=r.__N?r.__N[0]:r.__[0],n=r.t(t,e);t!==n&&(r.__N=[n,r.__[1]],r.__c.setState({}))}],r.__c=xe,!xe.__f)){var i=function(e,t,n){if(!r.__c.__H)return!0;var i=r.__c.__H.__.filter(function(e){return e.__c});if(i.every(function(e){return!e.__N}))return!a||a.call(this,e,t,n);var o=r.__c.props!==e;return i.some(function(e){if(e.__N){var t=e.__[0];e.__=e.__N,e.__N=void 0,t!==e.__[0]&&(o=!0)}}),a&&a.call(this,e,t,n)||o};xe.__f=!0;var a=xe.shouldComponentUpdate,o=xe.componentWillUpdate;xe.componentWillUpdate=function(e,t,n){if(this.__e){var r=a;a=void 0,i(e,t,n),a=r}o&&o.call(this,e,t,n)},xe.shouldComponentUpdate=i}return r.__N||r.__}function Fe(e,t){var n=Ne(be++,3);!Ee.__s&&We(n.__H,t)&&(n.__=e,n.u=t,xe.__H.__h.push(n))}function Ie(e){return we=5,Le(function(){return{current:e}},[])}function Le(e,t){var n=Ne(be++,7);return We(n.__H,t)&&(n.__=e(),n.__H=t,n.__h=e),n.__}function Re(e,t){return we=8,Le(function(){return e},t)}function ze(){for(var e;e=Te.shift();){var t=e.__H;if(e.__P&&t)try{t.__h.some(He),t.__h.some(Ue),t.__h=[]}catch(n){t.__h=[],Ee.__e(n,e.__v)}}}Ee.__b=function(e){xe=null,De&&De(e)},Ee.__=function(e,t){e&&t.__k&&t.__k.__m&&(e.__m=t.__k.__m),Me&&Me(e,t)},Ee.__r=function(e){Oe&&Oe(e),be=0;var t=(xe=e.__c).__H;t&&(Se===xe?(t.__h=[],xe.__h=[],t.__.some(function(e){e.__N&&(e.__=e.__N),e.u=e.__N=void 0})):(t.__h.some(He),t.__h.some(Ue),t.__h=[],be=0)),Se=xe},Ee.diffed=function(e){ke&&ke(e);var t=e.__c;t&&t.__H&&(t.__H.__h.length&&(Te.push(t)!==1&&Ce===Ee.requestAnimationFrame||((Ce=Ee.requestAnimationFrame)||Ve)(ze)),t.__H.__.some(function(e){e.u&&(e.__H=e.u),e.u=void 0})),Se=xe=null},Ee.__c=function(e,t){t.some(function(e){try{e.__h.some(He),e.__h=e.__h.filter(function(e){return!e.__||Ue(e)})}catch(n){t.some(function(e){e.__h&&=[]}),t=[],Ee.__e(n,e.__v)}}),Ae&&Ae(e,t)},Ee.unmount=function(e){je&&je(e);var t,n=e.__c;n&&n.__H&&(n.__H.__.some(function(e){try{He(e)}catch(e){t=e}}),n.__H=void 0,t&&Ee.__e(t,n.__v))};var Be=typeof requestAnimationFrame==`function`;function Ve(e){var t,n=function(){clearTimeout(r),Be&&cancelAnimationFrame(t),setTimeout(e)},r=setTimeout(n,35);Be&&(t=requestAnimationFrame(n))}function He(e){var t=xe,n=e.__c;typeof n==`function`&&(e.__c=void 0,n()),xe=t}function Ue(e){var t=xe;e.__c=e.__(),xe=t}function We(e,t){return!e||e.length!==t.length||t.some(function(t,n){return t!==e[n]})}function Ge(e,t){return typeof t==`function`?t(e):t}var Ke=class extends Error{status;bodyText;constructor(e,t,n=null){super(e),this.name=`DashboardApiError`,this.status=t,this.bodyText=n}};function qe(){return`/api/dashboard`}function Je(e){let t=new URLSearchParams;Object.entries(e).forEach(([e,n])=>{n==null||n===``||t.set(e,String(n))});let n=t.toString();return n?`?${n}`:``}function Ye(e){if(typeof e!=`object`||!e)return null;let t=e;return typeof t.message!=`string`||typeof t.timestamp!=`string`?null:{id:typeof t.id==`number`?t.id:Number.parseInt(String(t.id??`0`),10)||0,timestamp:t.timestamp,level:t.level===`error`?`error`:`info`,message:t.message,line:typeof t.line==`string`?t.line:t.message,fileId:typeof t.fileId==`string`?t.fileId:null}}var Xe=class{basePath;constructor(e=qe()){this.basePath=e}async getStatus(){return this.request(`/status`)}async refreshStatus(){return this.request(`/status/refresh`,{method:`POST`})}async getGraphOverview(e=120){return this.request(`/graph/overview${Je({limit:e})}`)}async searchGraph(e,t=20){return this.request(`/graph/search${Je({query:e,limit:t})}`)}async getQueueSummary(){return this.request(`/queue/summary`)}async listQueueItems(e={}){return this.request(`/queue/items${Je(e)}`)}async getQueueItemDetail(e){return this.request(`/queue/items/${encodeURIComponent(e)}`)}async retryQueueItem(e){return this.request(`/queue/items/${encodeURIComponent(e)}/retry`,{method:`POST`})}async getPageDetail(e){return this.request(`/pages/${encodeURIComponent(e)}`)}async getPageSource(e){return this.request(`/pages/${encodeURIComponent(e)}/source`)}async openPageSource(e,t){return this.request(`/pages/${encodeURIComponent(e)}/open-source`,{method:`POST`,body:JSON.stringify({target:t}),headers:{"content-type":`application/json`}})}async getVaultSummary(){return this.request(`/vault/summary`)}async listVaultFiles(e={}){return this.request(`/vault/files${Je(e)}`)}async getVaultFileDetail(e){return this.request(`/vault/files/${encodeURIComponent(e)}`)}async openVaultFile(e){return this.request(`/vault/files/${encodeURIComponent(e)}/open`,{method:`POST`})}async getLintSummary(){return this.request(`/lint/summary`)}async listLintIssues(e={}){return this.request(`/lint/issues${Je(e)}`)}streamLogs(e){let t=new EventSource(`${this.basePath}/logs/stream${Je({history:e.history,level:e.level,fileId:e.fileId,query:e.query})}`),n=t=>{let n=t;try{let t=JSON.parse(n.data);e.onHistory(t.map(e=>Ye(e)).filter(e=>e!==null))}catch{e.onHistory([])}},r=t=>{let n=t;try{let t=Ye(JSON.parse(n.data));t&&e.onLog(t)}catch{}};return t.addEventListener(`history`,n),t.addEventListener(`log`,r),t.onerror=t=>e.onError?.(t),t.onopen=()=>e.onOpen?.(),{close:()=>{t.removeEventListener(`history`,n),t.removeEventListener(`log`,r),t.close()}}}async request(e,t){let n=await fetch(`${this.basePath}${e}`,{method:`GET`,...t,headers:{Accept:`application/json`,...t?.headers||{}}});if(!n.ok){let t=await n.text().catch(()=>null);throw new Ke(`Dashboard API request failed (${n.status}) for ${e}`,n.status,t)}return await n.json()}},Ze=1024,Qe=Ze*1024,$e=Qe*1024;function et(e){return new Intl.NumberFormat(`en-US`).format(e)}function tt(e){return!Number.isFinite(e)||e<=0?`0 B`:e>=$e?`${(e/$e).toFixed(2)} GiB`:e>=Qe?`${(e/Qe).toFixed(1)} MiB`:e>=Ze?`${(e/Ze).toFixed(1)} KiB`:`${Math.round(e)} B`}function nt(e){if(!e)return`n/a`;let t=new Date(e).getTime();if(Number.isNaN(t))return`n/a`;let n=Date.now()-t,r=Math.floor(n/1e3);return r<15?`just now`:r<60?`${r}s ago`:r<3600?`${Math.floor(r/60)}m ago`:r<86400?`${Math.floor(r/3600)}h ago`:`${Math.floor(r/86400)}d ago`}function rt(e){if(!e)return`n/a`;let t=new Date(e);return Number.isNaN(t.getTime())?`n/a`:new Intl.DateTimeFormat(`en-US`,{month:`short`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,hour12:!1}).format(t)}function it(e){if(!Number.isFinite(e)||(e??0)<0)return`n/a`;let t=Math.round(e??0);if(t<1e3)return`${t}ms`;let n=Math.floor(t/1e3);if(n<60)return`${n}s`;let r=Math.floor(n/60),i=n%60;if(r<60)return i>0?`${r}m ${i}s`:`${r}m`;let a=Math.floor(r/60),o=r%60;return o>0?`${a}h ${o}m`:`${a}h`}function at(e,t,n){return Math.max(t,Math.min(n,e))}var ot=0;Array.isArray;function I(e,t,n,r,i,a){t||={};var o,s,c=t;if(`ref`in c)for(s in c={},t)s==`ref`?o=t[s]:c[s]=t[s];var l={type:e,props:c,key:n,ref:o,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--ot,__i:-1,__u:0,__source:i,__self:a};if(typeof e==`function`&&(o=e.defaultProps))for(s in o)c[s]===void 0&&(c[s]=o[s]);return d.vnode&&d.vnode(l),l}var st=[`/vault/physics/quantum/entanglement.md`,`/vault/ops/queue/incident-72.md`,`node:qk-9012`,`node:br-042`,`edge:references`,`embedding:ready`,`graph:overview(limit=120)`,`source:synology-cache`],ct=[{phase:1,atMs:800},{phase:2,atMs:2800},{phase:3,atMs:3600},{phase:4,atMs:4400},{phase:5,atMs:5800}],lt=7500,ut=1e3,dt=850,ft=1400;function pt(e){return e===`full`?lt:e===`short`?ut:dt}function mt(e){return e?.nodes.length?e.nodes.flatMap(e=>[e.filePath,`node:${e.nodeKey}`,`type:${e.pageType}`,`status:${e.status}`,e.orphan?`graph:orphan-sample`:`degree:${e.degree}`]).filter(Boolean).slice(0,14):st}function ht({graph:e,status:t,mode:n,onComplete:r}){let[i,a]=F(()=>n===`full`?null:n),[o,s]=F(n===`full`?0:5),c=Ie(n!==`full`),l=Le(()=>mt(e),[e]),u=e?.totalNodes??0,d=e?.totalEdges??0,f=e?.visibleNodeCount??0,p=t?.queue.pending??0,m=e?.truncated?`live overview slice ready · ${f}/${u} nodes visible`:`live overview ready · ${f} nodes visible`,h=i??n;return Fe(()=>{if(n!==`full`){a(n);return}if(i!==null)return;if(e?.nodes.length){a(`full`);return}let t=window.setTimeout(()=>{a(`short`)},ft);return()=>{window.clearTimeout(t)}},[e?.nodes.length,n,i]),Fe(()=>{if(i===null){s(0);return}let e=pt(i),t=[];if(s(i===`full`?0:5),c.current=i!==`full`,i===`full`){t.push(window.setTimeout(()=>{c.current=!0},180));for(let e of ct)t.push(window.setTimeout(()=>s(e.phase),e.atMs))}t.push(window.setTimeout(()=>r(),e));let n=e=>{(e.key===`Escape`||e.key===`Enter`)&&c.current&&r()};return window.addEventListener(`keydown`,n),()=>{t.forEach(e=>window.clearTimeout(e)),window.removeEventListener(`keydown`,n)}},[r,i]),I(`div`,{className:`ignition-overlay ignition-overlay--phase-${o} ignition-overlay--${h}`,onClick:()=>{c.current&&r()},role:`presentation`,children:[I(`div`,{className:`ignition-overlay__aurora ignition-overlay__aurora--primary`}),I(`div`,{className:`ignition-overlay__aurora ignition-overlay__aurora--secondary`}),I(`div`,{className:`ignition-overlay__grid`}),I(`div`,{className:`ignition-overlay__noise`}),I(`div`,{className:`ignition-overlay__vignette`}),I(`button`,{className:`ignition-skip`,onClick:e=>{e.stopPropagation(),c.current&&r()},type:`button`,children:`Enter / Skip`}),o<3&&I(`div`,{className:`ignition-heartbeat`}),i===null?I(`div`,{className:`ignition-statusline`,children:[I(`strong`,{children:`assembling live overview`}),I(`span`,{children:`waiting for the first graph slice`})]}):null,o===1&&I(`div`,{className:`ignition-fragments`,children:l.map((e,t)=>I(`span`,{className:`ignition-fragment`,style:{"--fragment-delay":`${t%6*120}ms`,"--fragment-angle":`${t*29%360}deg`},children:e},`${e}-${t}`))}),o===2&&I(`div`,{className:`ignition-implosion`}),o===3&&I(`div`,{className:`ignition-flash`}),o>=4&&I(`div`,{className:`ignition-emergence`,children:[I(`div`,{className:`ignition-emergence__metrics`,children:[I(`div`,{className:`ignition-emergence__card`,children:[I(`strong`,{children:et(u)}),I(`span`,{children:`library nodes`})]}),I(`div`,{className:`ignition-emergence__card`,children:[I(`strong`,{children:et(d)}),I(`span`,{children:`indexed relations`})]}),I(`div`,{className:`ignition-emergence__card`,children:[I(`strong`,{children:et(p)}),I(`span`,{children:`queue pending`})]})]}),I(`div`,{className:`ignition-emergence__scan`,children:[I(`div`,{}),I(`p`,{children:[`semantic lock acquired`,e?.sampleStrategy?.limit?` · overview cap ${e.sampleStrategy.limit}`:``]})]})]}),o>=5&&I(`div`,{className:`ignition-reveal`,children:[I(`p`,{children:`whole-library overview ready`}),I(`h1`,{children:`Wiki Intelligence`}),I(`span`,{children:m})]})]})}var gt=1180,_t=new Set([`localhost`,`127.0.0.1`,`::1`]);function vt({children:e}){let[t,n]=F(window.innerWidth);Fe(()=>{let e=()=>n(window.innerWidth);return window.addEventListener(`resize`,e),()=>window.removeEventListener(`resize`,e)},[]);let r=window.location.hostname,i=_t.has(r),a=t>=gt;return i&&a?I(ee,{children:e}):I(`div`,{className:`env-gate`,children:I(`div`,{className:`env-gate__panel`,children:[I(`h1`,{children:`Wiki Intelligence`}),!i&&I(`p`,{children:[`This dashboard is intentionally localhost-only. Open it from`,I(`code`,{children:` http://localhost `}),`or`,I(`code`,{children:` http://127.0.0.1 `}),`.`]}),!a&&I(`p`,{children:[`Desktop viewport required. Current width:`,I(`code`,{children:[` `,t,`px `]}),` (minimum `,I(`code`,{children:[gt,`px`]}),`).`]})]})})}var yt=[{id:`observatory`,label:`Observatory`},{id:`system`,label:`System`},{id:`queue`,label:`Queue`},{id:`logs`,label:`Logs`},{id:`vault`,label:`Vault`},{id:`lint`,label:`Lint`}];function bt(e){return e?e.daemon.running?e.daemon.lastResult===`error`?`is-warning`:`is-live`:`is-error`:`is-unknown`}function xt({status:e,graph:t,queue:n,activeTab:r,searchQuery:i,searchResults:a,searchLoading:o,refreshing:s,usingFallback:c,searchInputRef:l,onTabChange:u,onSearchQueryChange:d,onSelectSearchResult:f,onRefresh:p,onReplayIntro:m}){let h=i.trim().length>0;return I(`header`,{className:`topbar`,children:[I(`div`,{className:`topbar__brand shell-brand`,children:I(`button`,{type:`button`,className:`topbar__brand-link`,onClick:()=>u(`observatory`),children:[I(`span`,{className:`shell-eyebrow`,children:`Wiki`}),I(`h1`,{children:`Intelligence`})]})}),I(`nav`,{className:`topbar__nav`,children:yt.map(e=>I(`button`,{type:`button`,className:`topbar__nav-tab ${r===e.id?`is-active`:``}`,onClick:()=>u(e.id),children:e.label},e.id))}),I(`div`,{className:`topbar__actions`,children:[I(`div`,{className:`topbar__status-row`,children:[I(`div`,{className:`shell-status-chip daemon-chip ${bt(e)}`,children:[I(`span`,{className:`shell-status-dot daemon-chip__dot`}),I(`span`,{children:e?.daemon.running?`online`:`offline`}),I(`code`,{children:e?.daemon.currentTask??`idle`})]}),I(`span`,{className:`topbar__counts-inline`,children:[I(`span`,{title:`total nodes`,children:[`graph `,I(`strong`,{children:et(t?.totalNodes??0)})]}),I(`span`,{title:`queue pending`,children:[`queue `,I(`strong`,{children:et(n?.counts.pending??0)})]})]}),I(`span`,{className:`topbar__freshness-inline shell-meta`,children:[nt(e?.generatedAt??null),c&&I(`em`,{children:`fallback`})]})]}),I(`div`,{className:`global-search`,children:[h&&I(`span`,{className:`global-search__meta`,children:o?`scanning…`:`${a.length} hits`}),I(`input`,{"aria-label":`Search across all pages`,autoComplete:`off`,placeholder:`Search whole library…`,ref:l,value:i,onInput:e=>d(e.currentTarget.value)}),h&&a.length>0&&I(`div`,{className:`search-results`,children:a.slice(0,12).map(e=>I(`button`,{className:`search-results__item`,onClick:()=>f(e),type:`button`,children:[I(`strong`,{children:e.title}),I(`small`,{children:[I(`code`,{children:e.pageType}),I(`code`,{children:e.status}),e.nodeId?I(`code`,{children:e.nodeId}):null,e.updatedAt?I(`span`,{children:nt(e.updatedAt)}):null]}),I(`p`,{children:e.summaryText||e.filePath})]},`${e.id}-${e.searchKind??`x`}`))})]}),I(`button`,{className:`btn btn-ghost`,onClick:m,type:`button`,children:`replay`}),I(`button`,{className:`btn btn-primary`,onClick:p,type:`button`,disabled:s,children:s?`refreshing…`:`refresh`})]})]})}var St=new Date().toISOString(),Ct=[{id:`physics/quantum-entanglement.md`,nodeKey:`qe-001`,title:`Quantum Entanglement`,pageType:`concept`,status:`active`,filePath:`physics/quantum-entanglement.md`,tags:[`physics`,`network`,`foundational`],updatedAt:St,degree:6,orphan:!1,embeddingStatus:`ready`,sourceType:`md`},{id:`methods/retrieval-pipeline.md`,nodeKey:`rp-207`,title:`Retrieval Pipeline`,pageType:`method`,status:`active`,filePath:`methods/retrieval-pipeline.md`,tags:[`pipeline`,`index`],updatedAt:St,degree:5,orphan:!1,embeddingStatus:`ready`,sourceType:`md`},{id:`lessons/sync-failure-postmortem.md`,nodeKey:`ls-119`,title:`Sync Failure Postmortem`,pageType:`lesson`,status:`active`,filePath:`lessons/sync-failure-postmortem.md`,tags:[`sync`,`incident`],updatedAt:St,degree:3,orphan:!1,embeddingStatus:`ready`,sourceType:`md`},{id:`research/semantic-drifts.md`,nodeKey:`rn-302`,title:`Semantic Drifts in Long-Lived Vaults`,pageType:`research-note`,status:`draft`,filePath:`research/semantic-drifts.md`,tags:[`semantic`,`drift`],updatedAt:St,degree:2,orphan:!1,embeddingStatus:`pending`,sourceType:`pdf`},{id:`bridges/vault-to-wiki-bridge.md`,nodeKey:`br-042`,title:`Vault to Wiki Bridge`,pageType:`bridge`,status:`active`,filePath:`bridges/vault-to-wiki-bridge.md`,tags:[`integration`,`bridge`],updatedAt:St,degree:5,orphan:!1,embeddingStatus:`ready`,sourceType:`md`},{id:`person/leslie-lamport.md`,nodeKey:`pr-881`,title:`Leslie Lamport`,pageType:`person`,status:`active`,filePath:`person/leslie-lamport.md`,tags:[`distributed-systems`],updatedAt:St,degree:1,orphan:!1,embeddingStatus:`ready`,sourceType:`md`},{id:`faq/dashboard-operation.md`,nodeKey:`fq-501`,title:`Dashboard Operation FAQ`,pageType:`faq`,status:`active`,filePath:`faq/dashboard-operation.md`,tags:[`faq`],updatedAt:St,degree:2,orphan:!1,embeddingStatus:`ready`,sourceType:`md`},{id:`source/obsidian-export-summary.md`,nodeKey:`ss-090`,title:`Obsidian Export Summary`,pageType:`source-summary`,status:`active`,filePath:`source/obsidian-export-summary.md`,tags:[`source`,`obsidian`],updatedAt:St,degree:3,orphan:!1,embeddingStatus:`ready`,sourceType:`md`},{id:`resume/runtime-architecture.md`,nodeKey:`re-655`,title:`Runtime Architecture Resume`,pageType:`resume`,status:`active`,filePath:`resume/runtime-architecture.md`,tags:[`overview`,`architecture`],updatedAt:St,degree:1,orphan:!1,embeddingStatus:`ready`,sourceType:`md`},{id:`myths/polling-is-free.md`,nodeKey:`mc-773`,title:`Polling Is Free`,pageType:`misconception`,status:`active`,filePath:`myths/polling-is-free.md`,tags:[`misconception`,`operations`],updatedAt:St,degree:2,orphan:!1,embeddingStatus:`ready`,sourceType:`md`}],wt=[{source:`qe-001`,target:`rp-207`,edgeType:`references`,sourcePage:`physics/quantum-entanglement.md`},{source:`qe-001`,target:`br-042`,edgeType:`supports`,sourcePage:`physics/quantum-entanglement.md`},{source:`rp-207`,target:`ls-119`,edgeType:`validated-by`,sourcePage:`methods/retrieval-pipeline.md`},{source:`rp-207`,target:`rn-302`,edgeType:`extends`,sourcePage:`methods/retrieval-pipeline.md`},{source:`br-042`,target:`ss-090`,edgeType:`source`,sourcePage:`bridges/vault-to-wiki-bridge.md`},{source:`br-042`,target:`fq-501`,edgeType:`documents`,sourcePage:`bridges/vault-to-wiki-bridge.md`},{source:`ss-090`,target:`mc-773`,edgeType:`counterexample`,sourcePage:`source/obsidian-export-summary.md`},{source:`ss-090`,target:`re-655`,edgeType:`summarizes`,sourcePage:`source/obsidian-export-summary.md`},{source:`pr-881`,target:`re-655`,edgeType:`inspired`,sourcePage:`person/leslie-lamport.md`},{source:`fq-501`,target:`ls-119`,edgeType:`references`,sourcePage:`faq/dashboard-operation.md`}];function Tt(){return{daemon:{running:!0,pid:14820,host:`127.0.0.1`,port:4747,lastSyncAt:St,nextSyncAt:null,lastResult:`ok`,syncIntervalSeconds:600,launchMode:`manual`,currentTask:`idle`,startedAt:St,uptimeMs:432e4},queue:{pending:4,processing:1,done:176,skipped:12,error:2},runtime:{vaultSource:`synology`,wikiPath:`/wiki`,vaultPath:`/vault`,dbPath:`/runtime/wiki.db`},doctor:{ok:!1,summary:{ok:5,warn:1,error:0},checks:[{id:`sqlite`,severity:`ok`,summary:`Runtime DB reachable.`},{id:`vault-cache`,severity:`warn`,summary:`1 stale cached file.`}],recommendations:[`Refresh cache metadata before the next full sync.`]},generatedAt:St,lastSyncAt:St}}function Et(){return{nodes:Ct,edges:wt,totalNodes:268,visibleNodeCount:Ct.length,totalEdges:1944,visibleEdgeCount:wt.length,truncated:!0,sampleStrategy:{limit:120,priorities:[`degree`,`recency`,`pageType coverage`,`orphan sampling`]},generatedAt:St}}function Dt(e){let t=e.trim().toLowerCase(),n=t?Ct.filter(e=>`${e.title} ${e.filePath} ${e.tags.join(` `)}`.toLowerCase().includes(t)).map(e=>({id:e.id,title:e.title,pageType:e.pageType,status:e.status,filePath:e.filePath,tags:e.tags,updatedAt:e.updatedAt,summaryText:`Match in ${e.title}.`,searchKind:`fallback`,nodeId:e.nodeKey})):[];return{query:e,mode:t?`fallback`:`empty`,resultCount:n.length,results:n,generatedAt:St}}var Ot=[{fileId:`vault://docs/quantum-entanglement.pdf`,fileName:`quantum-entanglement.pdf`,filePath:`/vault/docs/quantum-entanglement.pdf`,sourceType:`pdf`,status:`processing`,decision:`extract-and-summarize`,timing:{startedAt:St,processingDurationMs:12830},resultPageId:null},{fileId:`vault://research/semantic-drifts.docx`,fileName:`semantic-drifts.docx`,filePath:`/vault/research/semantic-drifts.docx`,sourceType:`docx`,status:`error`,decision:`retry-required`,errorMessage:`OCR engine timeout.`,timing:{lastErrorAt:St,processingDurationMs:43102},resultPageId:null},{fileId:`vault://daily/runtime-notes-2026-04-08.md`,fileName:`runtime-notes-2026-04-08.md`,filePath:`/vault/daily/runtime-notes-2026-04-08.md`,sourceType:`md`,status:`done`,decision:`append-to-existing`,timing:{processedAt:St,processingDurationMs:1004},resultPageId:`resume/runtime-architecture.md`},{fileId:`vault://ops/logbook/incident-72.md`,fileName:`incident-72.md`,filePath:`/vault/ops/logbook/incident-72.md`,sourceType:`md`,status:`pending`,decision:`pending`,timing:{queuedAt:St},resultPageId:null}];function kt(){return{counts:{pending:4,processing:1,done:176,skipped:12,error:2,total:194},processing:Ot.filter(e=>e.status===`processing`),errors:Ot.filter(e=>e.status===`error`),recentDone:Ot.filter(e=>e.status===`done`),generatedAt:St}}function At(e){let t=Ct.find(t=>t.id===e||t.nodeKey===e)??Ct.find(e=>e.id===`physics/quantum-entanglement.md`)??Ct[0];return{page:{id:t.id,title:t.title,pageType:t.pageType,status:t.status,filePath:t.filePath,tags:t.tags,updatedAt:t.updatedAt,nodeKey:t.nodeKey,summaryText:`This page captures the operational concept and explains how linked pages reinforce the current retrieval strategy.`,embeddingStatus:t.embeddingStatus,markdownPreview:[`# `+t.title,``,`## Summary`,`Knowledge graph node preview generated from dashboard fallback data.`,``,`## Signals`,`- relation density is healthy`,`- source mapping available`,`- no major lint violations`].join(`
|
|
2
|
+
`),frontmatter:{type:t.pageType,status:t.status,tags:t.tags},unregisteredFields:[],pagePath:`/wiki/${t.filePath}`},relations:wt.filter(e=>e.source===t.nodeKey||e.target===t.nodeKey).map(e=>{let n=e.source===t.nodeKey,r=Ct.find(t=>t.nodeKey===(n?e.target:e.source));return{direction:n?`outgoing`:`incoming`,edgeType:e.edgeType,...n?{source:{id:t.id,title:t.title,pageType:t.pageType,status:t.status,filePath:t.filePath,tags:t.tags,updatedAt:t.updatedAt},target:r?{id:r.id,title:r.title,pageType:r.pageType,status:r.status,filePath:r.filePath,tags:r.tags,updatedAt:r.updatedAt}:null,rawTarget:r?void 0:e.target}:{source:r?{id:r.id,title:r.title,pageType:r.pageType,status:r.status,filePath:r.filePath,tags:r.tags,updatedAt:r.updatedAt}:null,target:{id:t.id,title:t.title,pageType:t.pageType,status:t.status,filePath:t.filePath,tags:t.tags,updatedAt:t.updatedAt},rawSource:r?void 0:e.source}}}),relationCounts:{outgoing:wt.filter(e=>e.source===t.nodeKey).length,incoming:wt.filter(e=>e.target===t.nodeKey).length},generatedAt:St}}function jt(e){let t=At(e);return{pageSource:{pageId:t.page.id,pagePath:t.page.pagePath,rawMarkdown:t.page.markdownPreview,frontmatter:t.page.frontmatter},vaultSource:{fileId:`vault://${t.page.filePath}`,fileName:t.page.filePath.split(`/`).at(-1)??t.page.filePath,fileExt:t.page.filePath.split(`.`).at(-1)??`md`,sourceType:`md`,fileSize:16384,remotePath:`/vault/${t.page.filePath}`,previewAvailable:!0,preview:`Vault preview snippet ready for local open action.`,previewError:null},generatedAt:St}}function Mt(){return[{id:1,timestamp:St,level:`info`,message:`Daemon heartbeat accepted.`,line:`[${St}] Daemon heartbeat accepted.`,fileId:null},{id:2,timestamp:St,level:`info`,message:`Queue item vault://daily/runtime-notes-2026-04-08.md processed in 1004ms.`,line:`[${St}] queue item vault://daily/runtime-notes-2026-04-08.md processed in 1004ms.`,fileId:`vault://daily/runtime-notes-2026-04-08.md`},{id:3,timestamp:St,level:`info`,message:`Cache stale for file vault://research/semantic-drifts.docx.`,line:`[${St}] Cache stale for file vault://research/semantic-drifts.docx.`,fileId:`vault://research/semantic-drifts.docx`},{id:4,timestamp:St,level:`error`,message:`Retry required for vault://research/semantic-drifts.docx: OCR engine timeout.`,line:`[${St}] Retry required for vault://research/semantic-drifts.docx: OCR engine timeout.`,fileId:`vault://research/semantic-drifts.docx`}]}function Nt(e,t){let[n,r]=F(e);return Fe(()=>{let n=window.setTimeout(()=>{r(e)},t);return()=>window.clearTimeout(n)},[e,t]),n}function Pt(){let[e,t]=F(!1);return Fe(()=>{let e=window.matchMedia(`(prefers-reduced-motion: reduce)`),n=()=>t(e.matches);return n(),e.addEventListener(`change`,n),()=>e.removeEventListener(`change`,n)},[]),e}function Ft(e){return!!(e&&e!==`*`&&e.includes(`/`))}function It({api:e,onOpenPage:t}){let[n,r]=F(null),[i,a]=F(null),[o,s]=F(``),[c,l]=F(`flat`),[u,d]=F(``),f=Nt(u,220);return Fe(()=>{let t=!1;return e.getLintSummary().then(e=>{t||r(e)}).catch(()=>{t||r(null)}),()=>{t=!0}},[e]),Fe(()=>{let t=!1;return e.listLintIssues({level:o||void 0,groupBy:c,rule:f.trim()||void 0}).then(e=>{t||a(e)}).catch(()=>{t||a(null)}),()=>{t=!0}},[e,f,c,o]),I(`div`,{className:`page-content`,children:I(`div`,{className:`page-grid page-grid--lint`,children:[I(`section`,{className:`page-card`,children:[I(`h3`,{children:`Lint Summary`}),n?null:I(`p`,{className:`page-empty`,children:`Lint summary unavailable.`}),n?I(`div`,{className:`page-stack`,children:[I(`div`,{className:`page-counts`,children:[I(`div`,{children:[I(`small`,{children:`errors`}),I(`strong`,{children:n.counts.error})]}),I(`div`,{children:[I(`small`,{children:`warnings`}),I(`strong`,{children:n.counts.warning})]}),I(`div`,{children:[I(`small`,{children:`info`}),I(`strong`,{children:n.counts.info})]}),I(`div`,{children:[I(`small`,{children:`total`}),I(`strong`,{children:n.counts.total})]})]}),I(`div`,{className:`page-section`,children:[I(`h4`,{children:`Filters`}),I(`div`,{className:`filters`,children:[I(`select`,{value:o,onInput:e=>s(e.currentTarget.value),children:[I(`option`,{value:``,children:`all levels`}),I(`option`,{value:`error`,children:`error`}),I(`option`,{value:`warning`,children:`warning`}),I(`option`,{value:`info`,children:`info`})]}),I(`select`,{value:c,onInput:e=>l(e.currentTarget.value),children:[I(`option`,{value:`flat`,children:`flat`}),I(`option`,{value:`page`,children:`group by page`}),I(`option`,{value:`rule`,children:`group by rule`})]}),I(`input`,{value:u,placeholder:`rule contains`,onInput:e=>d(e.currentTarget.value)})]})]}),n.topRules.length?I(`div`,{className:`page-section`,children:[I(`h4`,{children:`Top Rules`}),I(`ul`,{className:`compact-list`,children:n.topRules.slice(0,5).map(e=>I(`li`,{children:[I(`code`,{children:e.rule}),I(`span`,{children:et(e.count)})]},e.rule))})]}):null,n.topPages.length?I(`div`,{className:`page-section`,children:[I(`h4`,{children:`Top Pages`}),I(`ul`,{className:`compact-list`,children:n.topPages.slice(0,5).map(e=>I(`li`,{children:[Ft(e.pageId)?I(`button`,{type:`button`,className:`row-link`,onClick:()=>t(e.pageId),children:e.pageId}):I(`span`,{children:e.pageId}),I(`span`,{children:et(e.count)})]},e.pageId))})]}):null]}):null]}),I(`section`,{className:`page-card`,children:[I(`h3`,{children:`Issues`}),i?.items?.length?I(`ul`,{className:`lint-list`,children:i.items.map((e,n)=>I(`li`,{children:[I(`div`,{children:[I(`strong`,{children:e.level.toUpperCase()}),I(`code`,{children:e.check})]}),I(`p`,{children:e.message}),I(`small`,{children:e.pageTitle??e.pageId}),Ft(e.pageId)?I(`div`,{className:`row-actions`,children:I(`button`,{type:`button`,onClick:()=>t(e.pageId),children:`open page`})}):null]},`${e.pageId}-${e.check}-${n}`))}):i?.groups?.length?I(`ul`,{className:`lint-list`,children:i.groups.map(e=>I(`li`,{children:[I(`div`,{children:[I(`strong`,{children:e.key}),I(`code`,{children:[e.count,` findings`]})]}),I(`p`,{children:e.items[0]?.message??`Grouped lint findings.`}),I(`small`,{children:e.pageTitle??e.pageType??`grouped`}),Ft(e.items[0]?.pageId)?I(`div`,{className:`row-actions`,children:I(`button`,{type:`button`,onClick:()=>t(e.items[0].pageId),children:`open page`})}):null]},e.key))}):I(`p`,{className:`page-empty`,children:`No lint issues returned.`})]})]})})}function Lt(e){let[t,n]=F([]),[r,i]=F(`idle`),a=Ie(new Set),o=Ie(0),s=Ie(null),c=Ie(null);return Fe(()=>{if(e.paused){c.current?.(),c.current=null,i(`idle`);return}let t=!1,r=e=>{e.length!==0&&n(t=>{let n=[...t];for(let t of e)a.current.has(t.id)||(a.current.add(t.id),n.push(t));return n.slice(-400)})},l=()=>{if(t)return;i(o.current>0?`reconnecting`:`connecting`);let u=e.api.streamLogs({history:o.current===0?e.history??120:0,level:e.level,fileId:e.fileId,query:e.query,onOpen:()=>{i(`live`),o.current=0},onHistory:e=>{a.current.clear(),n([]),r(e)},onLog:e=>{r([e])},onError:()=>{if(t)return;u.close(),o.current+=1,i(`reconnecting`);let e=Math.min(8e3,600*2**o.current);s.current=window.setTimeout(l,e)}});c.current=()=>u.close()};return l(),()=>{t=!0,c.current?.(),c.current=null,s.current!==null&&window.clearTimeout(s.current)}},[e.api,e.fileId,e.history,e.level,e.paused,e.query]),{logs:t,status:r,clear:()=>{a.current.clear(),n([])}}}function Rt({api:e,usingFallback:t}){let[n,r]=F(``),[i,a]=F(``),[o,s]=F(``),c=Nt(o,220),l=Nt(i,220),{logs:u,status:d}=Lt({api:e,history:180,level:n===`info`||n===`error`?n:void 0,fileId:l.trim()||void 0,query:c.trim()||void 0,paused:t}),f=t&&u.length===0?Mt():u;return I(`div`,{className:`page-content`,children:I(`div`,{className:`page-grid page-grid--logs`,children:[I(`section`,{className:`page-card`,children:[I(`h3`,{children:`Live Stream`}),I(`p`,{className:`muted`,children:[`status: `,I(`strong`,{children:d})]}),I(`div`,{className:`filters`,children:[I(`select`,{value:n,onInput:e=>r(e.currentTarget.value),children:[I(`option`,{value:``,children:`all levels`}),I(`option`,{value:`info`,children:`info`}),I(`option`,{value:`error`,children:`error`})]}),I(`input`,{value:i,placeholder:`file id`,onInput:e=>a(e.currentTarget.value)}),I(`input`,{value:o,placeholder:`keyword`,onInput:e=>s(e.currentTarget.value)})]})]}),I(`section`,{className:`page-card`,children:I(`div`,{className:`log-lines`,children:[f.length===0?I(`p`,{className:`page-empty`,children:`No logs yet.`}):null,f.map(e=>I(`div`,{className:`log-line`,children:[I(`time`,{children:rt(e.timestamp)}),I(`strong`,{children:e.level}),I(`span`,{children:e.fileId??`-`}),I(`p`,{children:e.message})]},`${e.id}-${e.timestamp}`))]})})]})})}var zt={concept:`#68a8ff`,method:`#58d6a7`,lesson:`#ffbf5a`,"source-summary":`#8f9bb3`,"research-note":`#b18cff`,misconception:`#ff7a7a`,bridge:`#45d7cf`,person:`#ff9b61`,achievement:`#ff7fe8`,faq:`#57c7ff`,resume:`#b4b7c4`};function Bt(e){return zt[String(e)]??`#8f9bb3`}function Vt(e){return e.direction===`incoming`?e.source??null:e.target??null}function Ht(e){let t=e.lastIndexOf(`/pages/`);return t>=0?e.slice(t+7):e}function Ut(e,t){let n=e,r=`[${t}]`;n.startsWith(r)&&(n=n.slice(r.length).trimStart());let i=n.indexOf(`---`);if(i>0){let e=n.slice(i+3).trimStart();if(e.length>10)return e}let a=n.indexOf(`
|
|
3
|
+
`);return a>0&&(n=n.slice(a+1).trimStart()),n=n.replace(/^标签[::]\s*.+$/m,``).replace(/^tags[::]\s*.+$/im,``).trimStart(),n}function Wt(e){let t=new Map,n=new Map;for(let r of e){let e=Vt(r),i=e?.id??`raw:${r.rawSource??r.rawTarget??`?`}`,a=r.direction===`outgoing`?t:n,o=a.get(i);o?o.edgeTypes.includes(r.edgeType)||o.edgeTypes.push(r.edgeType):a.set(i,{page:e,rawLabel:r.rawSource??r.rawTarget??`unresolved`,edgeTypes:[r.edgeType],direction:r.direction})}return{outgoing:[...t.values()],incoming:[...n.values()]}}function Gt(e){if(!e.startsWith(`---`))return e;let t=e.indexOf(`
|
|
4
|
+
---`,3);return t<0?e:e.slice(t+4).trimStart()}function Kt(e){return e?e.vaultSource?.preview?Gt(e.vaultSource.preview):e.pageSource.rawMarkdown?Gt(e.pageSource.rawMarkdown.slice(0,1200)):e.vaultSource?.previewError?e.vaultSource.previewError:`No preview available.`:`Select a node to inspect page source.`}var qt=6,Jt=3;function Yt({label:e,items:t,total:n,forceExpand:r,onNavigateToPage:i}){let[a,o]=F(!r),[s,c]=F(r),l=a?[]:s?t:t.slice(0,Jt),u=t.length-l.length;return I(`div`,{className:`relation-group`,children:[I(`button`,{type:`button`,className:`relation-group__head`,onClick:()=>o(e=>!e),children:[I(`span`,{className:`relation-group__arrow`,children:a?`▶`:`▼`}),I(`span`,{children:[e,` `,I(`small`,{children:[`(`,n,`)`]})]})]}),!a&&I(`div`,{className:`detail-panel__relations`,children:[l.map(e=>e.page?I(`button`,{className:`relation-item`,type:`button`,onClick:()=>i(e.page.id),children:[I(`span`,{children:[I(`strong`,{children:e.page.title}),I(`small`,{children:e.edgeTypes.join(` · `)})]}),I(`code`,{children:e.page.pageType})]},`${e.direction}-${e.page.id}`):I(`div`,{className:`relation-item`,children:[I(`span`,{children:[I(`strong`,{children:e.rawLabel}),I(`small`,{children:e.edgeTypes.join(` · `)})]}),I(`code`,{children:`raw`})]},`${e.direction}-${e.rawLabel}`)),u>0&&I(`button`,{type:`button`,className:`relation-group__more`,onClick:()=>c(!0),children:[`show `,u,` more…`]})]})]})}function Xt({pageDetail:e,pageSource:t,loading:n,onClose:r,onNavigateToPage:i,onOpenSource:a,sourceActionPending:o,sourceActionMessage:s}){let c=e?Bt(e.page.pageType):`var(--accent)`,l=n||!!e,[u,d]=F(!1),f=e?Wt(e.relations):null,p=(f?f.outgoing.length+f.incoming.length:0)<=qt,m=e?.page.summaryText?Ut(e.page.summaryText,e.page.pageType):``,h=t?.vaultSource?.fileId;return I(`aside`,{className:`detail-panel ${l?`is-open`:``}`,children:I(`div`,{className:`detail-panel__surface`,style:{"--detail-accent":c},children:[I(`header`,{className:`detail-panel__header`,children:[I(`div`,{children:[I(`span`,{className:`shell-eyebrow`,children:`Node dossier`}),I(`strong`,{children:`Focused page`})]}),I(`button`,{type:`button`,onClick:r,children:`close`})]}),!e&&!n?I(`div`,{className:`detail-panel__empty`,children:I(`p`,{children:`Choose a node from the graph or search results to inspect metadata, source traces, and relation threads.`})}):null,n?I(`div`,{className:`detail-panel__empty`,children:I(`p`,{children:`Locking node dossier…`})}):null,e?I(`div`,{className:`detail-panel__content`,children:[I(`section`,{className:`detail-panel__hero`,children:[I(`div`,{className:`detail-panel__badges detail-tags`,children:[I(`code`,{children:e.page.pageType}),I(`code`,{children:e.page.status})]}),I(`h2`,{children:e.page.title}),I(`p`,{className:`detail-panel__path`,title:e.page.pagePath,children:I(`code`,{children:Ht(e.page.pagePath)})}),m?I(`p`,{className:`detail-panel__summary`,children:m}):I(`p`,{className:`detail-panel__summary muted`,children:`No summary generated yet.`}),I(`div`,{className:`detail-panel__meta-bar`,children:[I(`span`,{children:[e.relationCounts.outgoing,` out`]}),I(`span`,{className:`detail-panel__meta-dot`}),I(`span`,{children:[e.relationCounts.incoming,` in`]}),I(`span`,{className:`detail-panel__meta-dot`}),I(`span`,{children:nt(e.page.updatedAt)}),e.page.tags.length>0&&I(ee,{children:[I(`span`,{className:`detail-panel__meta-dot`}),I(`span`,{className:`detail-panel__meta-tags`,children:[e.page.tags.slice(0,3).join(`, `),e.page.tags.length>3?` +${e.page.tags.length-3}`:``]})]})]})]}),I(`div`,{className:`detail-panel__divider`}),I(`section`,{className:`detail-panel__block`,children:[I(`div`,{className:`detail-panel__block-head`,children:[I(`span`,{className:`shell-eyebrow`,children:`Connected threads`}),I(`strong`,{children:`Relations`})]}),f&&f.outgoing.length===0&&f.incoming.length===0?I(`p`,{className:`muted`,children:`No relations for current node.`}):null,f&&f.outgoing.length>0&&I(Yt,{label:`Outgoing`,items:f.outgoing,total:e.relationCounts.outgoing,forceExpand:p,onNavigateToPage:i}),f&&f.incoming.length>0&&I(Yt,{label:`Incoming`,items:f.incoming,total:e.relationCounts.incoming,forceExpand:p,onNavigateToPage:i})]}),I(`div`,{className:`detail-panel__divider`}),I(`section`,{className:`detail-panel__block`,children:[I(`div`,{className:`detail-panel__source-head`,children:[I(`div`,{className:`detail-panel__block-head`,children:[I(`span`,{className:`shell-eyebrow`,children:`Local source trace`}),I(`strong`,{children:`Source`})]}),I(`div`,{className:`detail-panel__source-actions`,children:[I(`button`,{type:`button`,onClick:()=>a(`page`),disabled:o,title:`Open page source`,children:`page`}),I(`button`,{type:`button`,onClick:()=>a(`vault`),disabled:o,title:`Open vault source`,children:`vault`})]})]}),h?I(`p`,{className:`muted detail-panel__vault-path`,children:h}):null,s?I(`p`,{className:`detail-card__message`,children:s}):null,I(`button`,{type:`button`,className:`relation-group__more`,onClick:()=>d(e=>!e),children:u?`hide preview`:`show preview`}),u&&I(`pre`,{children:Kt(t)})]})]}):null]})})}function Zt(e){"@babel/helpers - typeof";return Zt=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},Zt(e)}function Qt(e,t){if(Zt(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(Zt(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function $t(e){var t=Qt(e,`string`);return Zt(t)==`symbol`?t:t+``}function L(e,t,n){return(t=$t(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function en(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function tn(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:arguments[t];t%2?en(Object(n),!0).forEach(function(t){L(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):en(Object(n)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function R(e,t){if(!(e instanceof t))throw TypeError(`Cannot call a class as a function`)}function nn(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,`value`in r&&(r.writable=!0),Object.defineProperty(e,$t(r.key),r)}}function z(e,t,n){return t&&nn(e.prototype,t),n&&nn(e,n),Object.defineProperty(e,`prototype`,{writable:!1}),e}function rn(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function an(e){if(Array.isArray(e))return rn(e)}function on(e){if(typeof Symbol<`u`&&e[Symbol.iterator]!=null||e[`@@iterator`]!=null)return Array.from(e)}function sn(e,t){if(e){if(typeof e==`string`)return rn(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?rn(e,t):void 0}}function cn(){throw TypeError(`Invalid attempt to spread non-iterable instance.
|
|
5
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function ln(e){return an(e)||on(e)||sn(e)||cn()}function un(e){return un=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},un(e)}function dn(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(dn=function(){return!!e})()}function fn(e){if(e===void 0)throw ReferenceError(`this hasn't been initialised - super() hasn't been called`);return e}function pn(e,t){if(t&&(Zt(t)==`object`||typeof t==`function`))return t;if(t!==void 0)throw TypeError(`Derived constructors may only return object or undefined`);return fn(e)}function mn(e,t,n){return t=un(t),pn(e,dn()?Reflect.construct(t,n||[],un(e).constructor):t.apply(e,n))}function hn(e,t){return hn=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},hn(e,t)}function gn(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Super expression must either be null or a function`);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,`prototype`,{writable:!1}),t&&hn(e,t)}function _n(e){if(Array.isArray(e))return e}function vn(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function yn(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
6
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function bn(e,t){return _n(e)||vn(e,t)||sn(e,t)||yn()}var xn=l(o(((e,t)=>{var n=Object.prototype.hasOwnProperty,r=`~`;function i(){}Object.create&&(i.prototype=Object.create(null),new i().__proto__||(r=!1));function a(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function o(e,t,n,i,o){if(typeof n!=`function`)throw TypeError(`The listener must be a function`);var s=new a(n,i||e,o),c=r?r+t:t;return e._events[c]?e._events[c].fn?e._events[c]=[e._events[c],s]:e._events[c].push(s):(e._events[c]=s,e._eventsCount++),e}function s(e,t){--e._eventsCount===0?e._events=new i:delete e._events[t]}function c(){this._events=new i,this._eventsCount=0}c.prototype.eventNames=function(){var e=[],t,i;if(this._eventsCount===0)return e;for(i in t=this._events)n.call(t,i)&&e.push(r?i.slice(1):i);return Object.getOwnPropertySymbols?e.concat(Object.getOwnPropertySymbols(t)):e},c.prototype.listeners=function(e){var t=r?r+e:e,n=this._events[t];if(!n)return[];if(n.fn)return[n.fn];for(var i=0,a=n.length,o=Array(a);i<a;i++)o[i]=n[i].fn;return o},c.prototype.listenerCount=function(e){var t=r?r+e:e,n=this._events[t];return n?n.fn?1:n.length:0},c.prototype.emit=function(e,t,n,i,a,o){var s=r?r+e:e;if(!this._events[s])return!1;var c=this._events[s],l=arguments.length,u,d;if(c.fn){switch(c.once&&this.removeListener(e,c.fn,void 0,!0),l){case 1:return c.fn.call(c.context),!0;case 2:return c.fn.call(c.context,t),!0;case 3:return c.fn.call(c.context,t,n),!0;case 4:return c.fn.call(c.context,t,n,i),!0;case 5:return c.fn.call(c.context,t,n,i,a),!0;case 6:return c.fn.call(c.context,t,n,i,a,o),!0}for(d=1,u=Array(l-1);d<l;d++)u[d-1]=arguments[d];c.fn.apply(c.context,u)}else{var f=c.length,p;for(d=0;d<f;d++)switch(c[d].once&&this.removeListener(e,c[d].fn,void 0,!0),l){case 1:c[d].fn.call(c[d].context);break;case 2:c[d].fn.call(c[d].context,t);break;case 3:c[d].fn.call(c[d].context,t,n);break;case 4:c[d].fn.call(c[d].context,t,n,i);break;default:if(!u)for(p=1,u=Array(l-1);p<l;p++)u[p-1]=arguments[p];c[d].fn.apply(c[d].context,u)}}return!0},c.prototype.on=function(e,t,n){return o(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return o(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,n,i){var a=r?r+e:e;if(!this._events[a])return this;if(!t)return s(this,a),this;var o=this._events[a];if(o.fn)o.fn===t&&(!i||o.once)&&(!n||o.context===n)&&s(this,a);else{for(var c=0,l=[],u=o.length;c<u;c++)(o[c].fn!==t||i&&!o[c].once||n&&o[c].context!==n)&&l.push(o[c]);l.length?this._events[a]=l.length===1?l[0]:l:s(this,a)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=r?r+e:e,this._events[t]&&s(this,t)):(this._events=new i,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=r,c.EventEmitter=c,t!==void 0&&(t.exports=c)}))(),1).default,Sn=typeof Float32Array<`u`?Float32Array:Array;Math.PI/180,180/Math.PI;function Cn(){var e=new Sn(9);return Sn!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[5]=0,e[6]=0,e[7]=0),e[0]=1,e[4]=1,e[8]=1,e}function wn(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[4],e[4]=t[5],e[5]=t[6],e[6]=t[8],e[7]=t[9],e[8]=t[10],e}function Tn(e,t,n,r,i,a,o,s,c){var l=new Sn(9);return l[0]=e,l[1]=t,l[2]=n,l[3]=r,l[4]=i,l[5]=a,l[6]=o,l[7]=s,l[8]=c,l}var En=s({add:()=>_r,adjoint:()=>Fn,clone:()=>On,copy:()=>kn,create:()=>Dn,decompose:()=>tr,determinant:()=>In,equals:()=>Sr,exactEquals:()=>xr,frob:()=>gr,fromQuat:()=>ir,fromQuat2:()=>Zn,fromRotation:()=>Kn,fromRotationTranslation:()=>Xn,fromRotationTranslationScale:()=>nr,fromRotationTranslationScaleOrigin:()=>rr,fromScaling:()=>Gn,fromTranslation:()=>Wn,fromValues:()=>An,fromXRotation:()=>qn,fromYRotation:()=>Jn,fromZRotation:()=>Yn,frustum:()=>ar,getRotation:()=>er,getScaling:()=>$n,getTranslation:()=>Qn,identity:()=>Mn,invert:()=>Pn,lookAt:()=>pr,mul:()=>Cr,multiply:()=>Ln,multiplyScalar:()=>yr,multiplyScalarAndAdd:()=>br,ortho:()=>dr,orthoNO:()=>ur,orthoZO:()=>fr,perspective:()=>sr,perspectiveFromFieldOfView:()=>lr,perspectiveNO:()=>or,perspectiveZO:()=>cr,rotate:()=>Bn,rotateX:()=>Vn,rotateY:()=>Hn,rotateZ:()=>Un,scale:()=>zn,set:()=>jn,str:()=>hr,sub:()=>wr,subtract:()=>vr,targetTo:()=>mr,translate:()=>Rn,transpose:()=>Nn});function Dn(){var e=new Sn(16);return Sn!=Float32Array&&(e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=0,e[12]=0,e[13]=0,e[14]=0),e[0]=1,e[5]=1,e[10]=1,e[15]=1,e}function On(e){var t=new Sn(16);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t[6]=e[6],t[7]=e[7],t[8]=e[8],t[9]=e[9],t[10]=e[10],t[11]=e[11],t[12]=e[12],t[13]=e[13],t[14]=e[14],t[15]=e[15],t}function kn(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function An(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h){var g=new Sn(16);return g[0]=e,g[1]=t,g[2]=n,g[3]=r,g[4]=i,g[5]=a,g[6]=o,g[7]=s,g[8]=c,g[9]=l,g[10]=u,g[11]=d,g[12]=f,g[13]=p,g[14]=m,g[15]=h,g}function jn(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g){return e[0]=t,e[1]=n,e[2]=r,e[3]=i,e[4]=a,e[5]=o,e[6]=s,e[7]=c,e[8]=l,e[9]=u,e[10]=d,e[11]=f,e[12]=p,e[13]=m,e[14]=h,e[15]=g,e}function Mn(e){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Nn(e,t){if(e===t){var n=t[1],r=t[2],i=t[3],a=t[6],o=t[7],s=t[11];e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=n,e[6]=t[9],e[7]=t[13],e[8]=r,e[9]=a,e[11]=t[14],e[12]=i,e[13]=o,e[14]=s}else e[0]=t[0],e[1]=t[4],e[2]=t[8],e[3]=t[12],e[4]=t[1],e[5]=t[5],e[6]=t[9],e[7]=t[13],e[8]=t[2],e[9]=t[6],e[10]=t[10],e[11]=t[14],e[12]=t[3],e[13]=t[7],e[14]=t[11],e[15]=t[15];return e}function Pn(e,t){var n=t[0],r=t[1],i=t[2],a=t[3],o=t[4],s=t[5],c=t[6],l=t[7],u=t[8],d=t[9],f=t[10],p=t[11],m=t[12],h=t[13],g=t[14],_=t[15],v=n*s-r*o,y=n*c-i*o,b=n*l-a*o,x=r*c-i*s,S=r*l-a*s,C=i*l-a*c,w=u*h-d*m,T=u*g-f*m,E=u*_-p*m,D=d*g-f*h,O=d*_-p*h,k=f*_-p*g,A=v*k-y*O+b*D+x*E-S*T+C*w;return A?(A=1/A,e[0]=(s*k-c*O+l*D)*A,e[1]=(i*O-r*k-a*D)*A,e[2]=(h*C-g*S+_*x)*A,e[3]=(f*S-d*C-p*x)*A,e[4]=(c*E-o*k-l*T)*A,e[5]=(n*k-i*E+a*T)*A,e[6]=(g*b-m*C-_*y)*A,e[7]=(u*C-f*b+p*y)*A,e[8]=(o*O-s*E+l*w)*A,e[9]=(r*E-n*O-a*w)*A,e[10]=(m*S-h*b+_*v)*A,e[11]=(d*b-u*S-p*v)*A,e[12]=(s*T-o*D-c*w)*A,e[13]=(n*D-r*T+i*w)*A,e[14]=(h*y-m*x-g*v)*A,e[15]=(u*x-d*y+f*v)*A,e):null}function Fn(e,t){var n=t[0],r=t[1],i=t[2],a=t[3],o=t[4],s=t[5],c=t[6],l=t[7],u=t[8],d=t[9],f=t[10],p=t[11],m=t[12],h=t[13],g=t[14],_=t[15],v=n*s-r*o,y=n*c-i*o,b=n*l-a*o,x=r*c-i*s,S=r*l-a*s,C=i*l-a*c,w=u*h-d*m,T=u*g-f*m,E=u*_-p*m,D=d*g-f*h,O=d*_-p*h,k=f*_-p*g;return e[0]=s*k-c*O+l*D,e[1]=i*O-r*k-a*D,e[2]=h*C-g*S+_*x,e[3]=f*S-d*C-p*x,e[4]=c*E-o*k-l*T,e[5]=n*k-i*E+a*T,e[6]=g*b-m*C-_*y,e[7]=u*C-f*b+p*y,e[8]=o*O-s*E+l*w,e[9]=r*E-n*O-a*w,e[10]=m*S-h*b+_*v,e[11]=d*b-u*S-p*v,e[12]=s*T-o*D-c*w,e[13]=n*D-r*T+i*w,e[14]=h*y-m*x-g*v,e[15]=u*x-d*y+f*v,e}function In(e){var t=e[0],n=e[1],r=e[2],i=e[3],a=e[4],o=e[5],s=e[6],c=e[7],l=e[8],u=e[9],d=e[10],f=e[11],p=e[12],m=e[13],h=e[14],g=e[15],_=t*o-n*a,v=t*s-r*a,y=n*s-r*o,b=l*m-u*p,x=l*h-d*p,S=u*h-d*m,C=t*S-n*x+r*b,w=a*S-o*x+s*b,T=l*y-u*v+d*_,E=p*y-m*v+h*_;return c*C-i*w+g*T-f*E}function Ln(e,t,n){var r=t[0],i=t[1],a=t[2],o=t[3],s=t[4],c=t[5],l=t[6],u=t[7],d=t[8],f=t[9],p=t[10],m=t[11],h=t[12],g=t[13],_=t[14],v=t[15],y=n[0],b=n[1],x=n[2],S=n[3];return e[0]=y*r+b*s+x*d+S*h,e[1]=y*i+b*c+x*f+S*g,e[2]=y*a+b*l+x*p+S*_,e[3]=y*o+b*u+x*m+S*v,y=n[4],b=n[5],x=n[6],S=n[7],e[4]=y*r+b*s+x*d+S*h,e[5]=y*i+b*c+x*f+S*g,e[6]=y*a+b*l+x*p+S*_,e[7]=y*o+b*u+x*m+S*v,y=n[8],b=n[9],x=n[10],S=n[11],e[8]=y*r+b*s+x*d+S*h,e[9]=y*i+b*c+x*f+S*g,e[10]=y*a+b*l+x*p+S*_,e[11]=y*o+b*u+x*m+S*v,y=n[12],b=n[13],x=n[14],S=n[15],e[12]=y*r+b*s+x*d+S*h,e[13]=y*i+b*c+x*f+S*g,e[14]=y*a+b*l+x*p+S*_,e[15]=y*o+b*u+x*m+S*v,e}function Rn(e,t,n){var r=n[0],i=n[1],a=n[2],o,s,c,l,u,d,f,p,m,h,g,_;return t===e?(e[12]=t[0]*r+t[4]*i+t[8]*a+t[12],e[13]=t[1]*r+t[5]*i+t[9]*a+t[13],e[14]=t[2]*r+t[6]*i+t[10]*a+t[14],e[15]=t[3]*r+t[7]*i+t[11]*a+t[15]):(o=t[0],s=t[1],c=t[2],l=t[3],u=t[4],d=t[5],f=t[6],p=t[7],m=t[8],h=t[9],g=t[10],_=t[11],e[0]=o,e[1]=s,e[2]=c,e[3]=l,e[4]=u,e[5]=d,e[6]=f,e[7]=p,e[8]=m,e[9]=h,e[10]=g,e[11]=_,e[12]=o*r+u*i+m*a+t[12],e[13]=s*r+d*i+h*a+t[13],e[14]=c*r+f*i+g*a+t[14],e[15]=l*r+p*i+_*a+t[15]),e}function zn(e,t,n){var r=n[0],i=n[1],a=n[2];return e[0]=t[0]*r,e[1]=t[1]*r,e[2]=t[2]*r,e[3]=t[3]*r,e[4]=t[4]*i,e[5]=t[5]*i,e[6]=t[6]*i,e[7]=t[7]*i,e[8]=t[8]*a,e[9]=t[9]*a,e[10]=t[10]*a,e[11]=t[11]*a,e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15],e}function Bn(e,t,n,r){var i=r[0],a=r[1],o=r[2],s=Math.sqrt(i*i+a*a+o*o),c,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A,j;return s<1e-6?null:(s=1/s,i*=s,a*=s,o*=s,c=Math.sin(n),l=Math.cos(n),u=1-l,d=t[0],f=t[1],p=t[2],m=t[3],h=t[4],g=t[5],_=t[6],v=t[7],y=t[8],b=t[9],x=t[10],S=t[11],C=i*i*u+l,w=a*i*u+o*c,T=o*i*u-a*c,E=i*a*u-o*c,D=a*a*u+l,O=o*a*u+i*c,k=i*o*u+a*c,A=a*o*u-i*c,j=o*o*u+l,e[0]=d*C+h*w+y*T,e[1]=f*C+g*w+b*T,e[2]=p*C+_*w+x*T,e[3]=m*C+v*w+S*T,e[4]=d*E+h*D+y*O,e[5]=f*E+g*D+b*O,e[6]=p*E+_*D+x*O,e[7]=m*E+v*D+S*O,e[8]=d*k+h*A+y*j,e[9]=f*k+g*A+b*j,e[10]=p*k+_*A+x*j,e[11]=m*k+v*A+S*j,t!==e&&(e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e)}function Vn(e,t,n){var r=Math.sin(n),i=Math.cos(n),a=t[4],o=t[5],s=t[6],c=t[7],l=t[8],u=t[9],d=t[10],f=t[11];return t!==e&&(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[4]=a*i+l*r,e[5]=o*i+u*r,e[6]=s*i+d*r,e[7]=c*i+f*r,e[8]=l*i-a*r,e[9]=u*i-o*r,e[10]=d*i-s*r,e[11]=f*i-c*r,e}function Hn(e,t,n){var r=Math.sin(n),i=Math.cos(n),a=t[0],o=t[1],s=t[2],c=t[3],l=t[8],u=t[9],d=t[10],f=t[11];return t!==e&&(e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i-l*r,e[1]=o*i-u*r,e[2]=s*i-d*r,e[3]=c*i-f*r,e[8]=a*r+l*i,e[9]=o*r+u*i,e[10]=s*r+d*i,e[11]=c*r+f*i,e}function Un(e,t,n){var r=Math.sin(n),i=Math.cos(n),a=t[0],o=t[1],s=t[2],c=t[3],l=t[4],u=t[5],d=t[6],f=t[7];return t!==e&&(e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]),e[0]=a*i+l*r,e[1]=o*i+u*r,e[2]=s*i+d*r,e[3]=c*i+f*r,e[4]=l*i-a*r,e[5]=u*i-o*r,e[6]=d*i-s*r,e[7]=f*i-c*r,e}function Wn(e,t){return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=t[0],e[13]=t[1],e[14]=t[2],e[15]=1,e}function Gn(e,t){return e[0]=t[0],e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=t[1],e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=t[2],e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Kn(e,t,n){var r=n[0],i=n[1],a=n[2],o=Math.sqrt(r*r+i*i+a*a),s,c,l;return o<1e-6?null:(o=1/o,r*=o,i*=o,a*=o,s=Math.sin(t),c=Math.cos(t),l=1-c,e[0]=r*r*l+c,e[1]=i*r*l+a*s,e[2]=a*r*l-i*s,e[3]=0,e[4]=r*i*l-a*s,e[5]=i*i*l+c,e[6]=a*i*l+r*s,e[7]=0,e[8]=r*a*l+i*s,e[9]=i*a*l-r*s,e[10]=a*a*l+c,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e)}function qn(e,t){var n=Math.sin(t),r=Math.cos(t);return e[0]=1,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=r,e[6]=n,e[7]=0,e[8]=0,e[9]=-n,e[10]=r,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Jn(e,t){var n=Math.sin(t),r=Math.cos(t);return e[0]=r,e[1]=0,e[2]=-n,e[3]=0,e[4]=0,e[5]=1,e[6]=0,e[7]=0,e[8]=n,e[9]=0,e[10]=r,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Yn(e,t){var n=Math.sin(t),r=Math.cos(t);return e[0]=r,e[1]=n,e[2]=0,e[3]=0,e[4]=-n,e[5]=r,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=1,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function Xn(e,t,n){var r=t[0],i=t[1],a=t[2],o=t[3],s=r+r,c=i+i,l=a+a,u=r*s,d=r*c,f=r*l,p=i*c,m=i*l,h=a*l,g=o*s,_=o*c,v=o*l;return e[0]=1-(p+h),e[1]=d+v,e[2]=f-_,e[3]=0,e[4]=d-v,e[5]=1-(u+h),e[6]=m+g,e[7]=0,e[8]=f+_,e[9]=m-g,e[10]=1-(u+p),e[11]=0,e[12]=n[0],e[13]=n[1],e[14]=n[2],e[15]=1,e}function Zn(e,t){var n=new Sn(3),r=-t[0],i=-t[1],a=-t[2],o=t[3],s=t[4],c=t[5],l=t[6],u=t[7],d=r*r+i*i+a*a+o*o;return d>0?(n[0]=(s*o+u*r+c*a-l*i)*2/d,n[1]=(c*o+u*i+l*r-s*a)*2/d,n[2]=(l*o+u*a+s*i-c*r)*2/d):(n[0]=(s*o+u*r+c*a-l*i)*2,n[1]=(c*o+u*i+l*r-s*a)*2,n[2]=(l*o+u*a+s*i-c*r)*2),Xn(e,t,n),e}function Qn(e,t){return e[0]=t[12],e[1]=t[13],e[2]=t[14],e}function $n(e,t){var n=t[0],r=t[1],i=t[2],a=t[4],o=t[5],s=t[6],c=t[8],l=t[9],u=t[10];return e[0]=Math.sqrt(n*n+r*r+i*i),e[1]=Math.sqrt(a*a+o*o+s*s),e[2]=Math.sqrt(c*c+l*l+u*u),e}function er(e,t){var n=new Sn(3);$n(n,t);var r=1/n[0],i=1/n[1],a=1/n[2],o=t[0]*r,s=t[1]*i,c=t[2]*a,l=t[4]*r,u=t[5]*i,d=t[6]*a,f=t[8]*r,p=t[9]*i,m=t[10]*a,h=o+u+m,g=0;return h>0?(g=Math.sqrt(h+1)*2,e[3]=.25*g,e[0]=(d-p)/g,e[1]=(f-c)/g,e[2]=(s-l)/g):o>u&&o>m?(g=Math.sqrt(1+o-u-m)*2,e[3]=(d-p)/g,e[0]=.25*g,e[1]=(s+l)/g,e[2]=(f+c)/g):u>m?(g=Math.sqrt(1+u-o-m)*2,e[3]=(f-c)/g,e[0]=(s+l)/g,e[1]=.25*g,e[2]=(d+p)/g):(g=Math.sqrt(1+m-o-u)*2,e[3]=(s-l)/g,e[0]=(f+c)/g,e[1]=(d+p)/g,e[2]=.25*g),e}function tr(e,t,n,r){t[0]=r[12],t[1]=r[13],t[2]=r[14];var i=r[0],a=r[1],o=r[2],s=r[4],c=r[5],l=r[6],u=r[8],d=r[9],f=r[10];n[0]=Math.sqrt(i*i+a*a+o*o),n[1]=Math.sqrt(s*s+c*c+l*l),n[2]=Math.sqrt(u*u+d*d+f*f);var p=1/n[0],m=1/n[1],h=1/n[2],g=i*p,_=a*m,v=o*h,y=s*p,b=c*m,x=l*h,S=u*p,C=d*m,w=f*h,T=g+b+w,E=0;return T>0?(E=Math.sqrt(T+1)*2,e[3]=.25*E,e[0]=(x-C)/E,e[1]=(S-v)/E,e[2]=(_-y)/E):g>b&&g>w?(E=Math.sqrt(1+g-b-w)*2,e[3]=(x-C)/E,e[0]=.25*E,e[1]=(_+y)/E,e[2]=(S+v)/E):b>w?(E=Math.sqrt(1+b-g-w)*2,e[3]=(S-v)/E,e[0]=(_+y)/E,e[1]=.25*E,e[2]=(x+C)/E):(E=Math.sqrt(1+w-g-b)*2,e[3]=(_-y)/E,e[0]=(S+v)/E,e[1]=(x+C)/E,e[2]=.25*E),e}function nr(e,t,n,r){var i=t[0],a=t[1],o=t[2],s=t[3],c=i+i,l=a+a,u=o+o,d=i*c,f=i*l,p=i*u,m=a*l,h=a*u,g=o*u,_=s*c,v=s*l,y=s*u,b=r[0],x=r[1],S=r[2];return e[0]=(1-(m+g))*b,e[1]=(f+y)*b,e[2]=(p-v)*b,e[3]=0,e[4]=(f-y)*x,e[5]=(1-(d+g))*x,e[6]=(h+_)*x,e[7]=0,e[8]=(p+v)*S,e[9]=(h-_)*S,e[10]=(1-(d+m))*S,e[11]=0,e[12]=n[0],e[13]=n[1],e[14]=n[2],e[15]=1,e}function rr(e,t,n,r,i){var a=t[0],o=t[1],s=t[2],c=t[3],l=a+a,u=o+o,d=s+s,f=a*l,p=a*u,m=a*d,h=o*u,g=o*d,_=s*d,v=c*l,y=c*u,b=c*d,x=r[0],S=r[1],C=r[2],w=i[0],T=i[1],E=i[2],D=(1-(h+_))*x,O=(p+b)*x,k=(m-y)*x,A=(p-b)*S,j=(1-(f+_))*S,ee=(g+v)*S,M=(m+y)*C,te=(g-v)*C,ne=(1-(f+h))*C;return e[0]=D,e[1]=O,e[2]=k,e[3]=0,e[4]=A,e[5]=j,e[6]=ee,e[7]=0,e[8]=M,e[9]=te,e[10]=ne,e[11]=0,e[12]=n[0]+w-(D*w+A*T+M*E),e[13]=n[1]+T-(O*w+j*T+te*E),e[14]=n[2]+E-(k*w+ee*T+ne*E),e[15]=1,e}function ir(e,t){var n=t[0],r=t[1],i=t[2],a=t[3],o=n+n,s=r+r,c=i+i,l=n*o,u=r*o,d=r*s,f=i*o,p=i*s,m=i*c,h=a*o,g=a*s,_=a*c;return e[0]=1-d-m,e[1]=u+_,e[2]=f-g,e[3]=0,e[4]=u-_,e[5]=1-l-m,e[6]=p+h,e[7]=0,e[8]=f+g,e[9]=p-h,e[10]=1-l-d,e[11]=0,e[12]=0,e[13]=0,e[14]=0,e[15]=1,e}function ar(e,t,n,r,i,a,o){var s=1/(n-t),c=1/(i-r),l=1/(a-o);return e[0]=a*2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a*2*c,e[6]=0,e[7]=0,e[8]=(n+t)*s,e[9]=(i+r)*c,e[10]=(o+a)*l,e[11]=-1,e[12]=0,e[13]=0,e[14]=o*a*2*l,e[15]=0,e}function or(e,t,n,r,i){var a=1/Math.tan(t/2);if(e[0]=a/n,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,i!=null&&i!==1/0){var o=1/(r-i);e[10]=(i+r)*o,e[14]=2*i*r*o}else e[10]=-1,e[14]=-2*r;return e}var sr=or;function cr(e,t,n,r,i){var a=1/Math.tan(t/2);if(e[0]=a/n,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=a,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[11]=-1,e[12]=0,e[13]=0,e[15]=0,i!=null&&i!==1/0){var o=1/(r-i);e[10]=i*o,e[14]=i*r*o}else e[10]=-1,e[14]=-r;return e}function lr(e,t,n,r){var i=Math.tan(t.upDegrees*Math.PI/180),a=Math.tan(t.downDegrees*Math.PI/180),o=Math.tan(t.leftDegrees*Math.PI/180),s=Math.tan(t.rightDegrees*Math.PI/180),c=2/(o+s),l=2/(i+a);return e[0]=c,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=l,e[6]=0,e[7]=0,e[8]=-((o-s)*c*.5),e[9]=(i-a)*l*.5,e[10]=r/(n-r),e[11]=-1,e[12]=0,e[13]=0,e[14]=r*n/(n-r),e[15]=0,e}function ur(e,t,n,r,i,a,o){var s=1/(t-n),c=1/(r-i),l=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*c,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=2*l,e[11]=0,e[12]=(t+n)*s,e[13]=(i+r)*c,e[14]=(o+a)*l,e[15]=1,e}var dr=ur;function fr(e,t,n,r,i,a,o){var s=1/(t-n),c=1/(r-i),l=1/(a-o);return e[0]=-2*s,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=-2*c,e[6]=0,e[7]=0,e[8]=0,e[9]=0,e[10]=l,e[11]=0,e[12]=(t+n)*s,e[13]=(i+r)*c,e[14]=a*l,e[15]=1,e}function pr(e,t,n,r){var i,a,o,s,c,l,u,d,f,p,m=t[0],h=t[1],g=t[2],_=r[0],v=r[1],y=r[2],b=n[0],x=n[1],S=n[2];return Math.abs(m-b)<1e-6&&Math.abs(h-x)<1e-6&&Math.abs(g-S)<1e-6?Mn(e):(u=m-b,d=h-x,f=g-S,p=1/Math.sqrt(u*u+d*d+f*f),u*=p,d*=p,f*=p,i=v*f-y*d,a=y*u-_*f,o=_*d-v*u,p=Math.sqrt(i*i+a*a+o*o),p?(p=1/p,i*=p,a*=p,o*=p):(i=0,a=0,o=0),s=d*o-f*a,c=f*i-u*o,l=u*a-d*i,p=Math.sqrt(s*s+c*c+l*l),p?(p=1/p,s*=p,c*=p,l*=p):(s=0,c=0,l=0),e[0]=i,e[1]=s,e[2]=u,e[3]=0,e[4]=a,e[5]=c,e[6]=d,e[7]=0,e[8]=o,e[9]=l,e[10]=f,e[11]=0,e[12]=-(i*m+a*h+o*g),e[13]=-(s*m+c*h+l*g),e[14]=-(u*m+d*h+f*g),e[15]=1,e)}function mr(e,t,n,r){var i=t[0],a=t[1],o=t[2],s=r[0],c=r[1],l=r[2],u=i-n[0],d=a-n[1],f=o-n[2],p=u*u+d*d+f*f;p>0&&(p=1/Math.sqrt(p),u*=p,d*=p,f*=p);var m=c*f-l*d,h=l*u-s*f,g=s*d-c*u;return p=m*m+h*h+g*g,p>0&&(p=1/Math.sqrt(p),m*=p,h*=p,g*=p),e[0]=m,e[1]=h,e[2]=g,e[3]=0,e[4]=d*g-f*h,e[5]=f*m-u*g,e[6]=u*h-d*m,e[7]=0,e[8]=u,e[9]=d,e[10]=f,e[11]=0,e[12]=i,e[13]=a,e[14]=o,e[15]=1,e}function hr(e){return`mat4(`+e[0]+`, `+e[1]+`, `+e[2]+`, `+e[3]+`, `+e[4]+`, `+e[5]+`, `+e[6]+`, `+e[7]+`, `+e[8]+`, `+e[9]+`, `+e[10]+`, `+e[11]+`, `+e[12]+`, `+e[13]+`, `+e[14]+`, `+e[15]+`)`}function gr(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]+e[3]*e[3]+e[4]*e[4]+e[5]*e[5]+e[6]*e[6]+e[7]*e[7]+e[8]*e[8]+e[9]*e[9]+e[10]*e[10]+e[11]*e[11]+e[12]*e[12]+e[13]*e[13]+e[14]*e[14]+e[15]*e[15])}function _r(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e[3]=t[3]+n[3],e[4]=t[4]+n[4],e[5]=t[5]+n[5],e[6]=t[6]+n[6],e[7]=t[7]+n[7],e[8]=t[8]+n[8],e[9]=t[9]+n[9],e[10]=t[10]+n[10],e[11]=t[11]+n[11],e[12]=t[12]+n[12],e[13]=t[13]+n[13],e[14]=t[14]+n[14],e[15]=t[15]+n[15],e}function vr(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e[3]=t[3]-n[3],e[4]=t[4]-n[4],e[5]=t[5]-n[5],e[6]=t[6]-n[6],e[7]=t[7]-n[7],e[8]=t[8]-n[8],e[9]=t[9]-n[9],e[10]=t[10]-n[10],e[11]=t[11]-n[11],e[12]=t[12]-n[12],e[13]=t[13]-n[13],e[14]=t[14]-n[14],e[15]=t[15]-n[15],e}function yr(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e[3]=t[3]*n,e[4]=t[4]*n,e[5]=t[5]*n,e[6]=t[6]*n,e[7]=t[7]*n,e[8]=t[8]*n,e[9]=t[9]*n,e[10]=t[10]*n,e[11]=t[11]*n,e[12]=t[12]*n,e[13]=t[13]*n,e[14]=t[14]*n,e[15]=t[15]*n,e}function br(e,t,n,r){return e[0]=t[0]+n[0]*r,e[1]=t[1]+n[1]*r,e[2]=t[2]+n[2]*r,e[3]=t[3]+n[3]*r,e[4]=t[4]+n[4]*r,e[5]=t[5]+n[5]*r,e[6]=t[6]+n[6]*r,e[7]=t[7]+n[7]*r,e[8]=t[8]+n[8]*r,e[9]=t[9]+n[9]*r,e[10]=t[10]+n[10]*r,e[11]=t[11]+n[11]*r,e[12]=t[12]+n[12]*r,e[13]=t[13]+n[13]*r,e[14]=t[14]+n[14]*r,e[15]=t[15]+n[15]*r,e}function xr(e,t){return e[0]===t[0]&&e[1]===t[1]&&e[2]===t[2]&&e[3]===t[3]&&e[4]===t[4]&&e[5]===t[5]&&e[6]===t[6]&&e[7]===t[7]&&e[8]===t[8]&&e[9]===t[9]&&e[10]===t[10]&&e[11]===t[11]&&e[12]===t[12]&&e[13]===t[13]&&e[14]===t[14]&&e[15]===t[15]}function Sr(e,t){var n=e[0],r=e[1],i=e[2],a=e[3],o=e[4],s=e[5],c=e[6],l=e[7],u=e[8],d=e[9],f=e[10],p=e[11],m=e[12],h=e[13],g=e[14],_=e[15],v=t[0],y=t[1],b=t[2],x=t[3],S=t[4],C=t[5],w=t[6],T=t[7],E=t[8],D=t[9],O=t[10],k=t[11],A=t[12],j=t[13],ee=t[14],M=t[15];return Math.abs(n-v)<=1e-6*Math.max(1,Math.abs(n),Math.abs(v))&&Math.abs(r-y)<=1e-6*Math.max(1,Math.abs(r),Math.abs(y))&&Math.abs(i-b)<=1e-6*Math.max(1,Math.abs(i),Math.abs(b))&&Math.abs(a-x)<=1e-6*Math.max(1,Math.abs(a),Math.abs(x))&&Math.abs(o-S)<=1e-6*Math.max(1,Math.abs(o),Math.abs(S))&&Math.abs(s-C)<=1e-6*Math.max(1,Math.abs(s),Math.abs(C))&&Math.abs(c-w)<=1e-6*Math.max(1,Math.abs(c),Math.abs(w))&&Math.abs(l-T)<=1e-6*Math.max(1,Math.abs(l),Math.abs(T))&&Math.abs(u-E)<=1e-6*Math.max(1,Math.abs(u),Math.abs(E))&&Math.abs(d-D)<=1e-6*Math.max(1,Math.abs(d),Math.abs(D))&&Math.abs(f-O)<=1e-6*Math.max(1,Math.abs(f),Math.abs(O))&&Math.abs(p-k)<=1e-6*Math.max(1,Math.abs(p),Math.abs(k))&&Math.abs(m-A)<=1e-6*Math.max(1,Math.abs(m),Math.abs(A))&&Math.abs(h-j)<=1e-6*Math.max(1,Math.abs(h),Math.abs(j))&&Math.abs(g-ee)<=1e-6*Math.max(1,Math.abs(g),Math.abs(ee))&&Math.abs(_-M)<=1e-6*Math.max(1,Math.abs(_),Math.abs(M))}var Cr=Ln,wr=vr;function Tr(){var e=new Sn(3);return Sn!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e}function Er(e){var t=new Sn(3);return t[0]=e[0],t[1]=e[1],t[2]=e[2],t}function Dr(e){var t=e[0],n=e[1],r=e[2];return Math.sqrt(t*t+n*n+r*r)}function Or(e,t,n){var r=new Sn(3);return r[0]=e,r[1]=t,r[2]=n,r}function kr(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e}function Ar(e,t,n,r){return e[0]=t,e[1]=n,e[2]=r,e}function jr(e,t,n){return e[0]=t[0]+n[0],e[1]=t[1]+n[1],e[2]=t[2]+n[2],e}function Mr(e,t,n){return e[0]=t[0]-n[0],e[1]=t[1]-n[1],e[2]=t[2]-n[2],e}function Nr(e,t,n){return e[0]=t[0]*n[0],e[1]=t[1]*n[1],e[2]=t[2]*n[2],e}function Pr(e,t,n){return e[0]=Math.min(t[0],n[0]),e[1]=Math.min(t[1],n[1]),e[2]=Math.min(t[2],n[2]),e}function Fr(e,t,n){return e[0]=Math.max(t[0],n[0]),e[1]=Math.max(t[1],n[1]),e[2]=Math.max(t[2],n[2]),e}function Ir(e,t,n){return e[0]=t[0]*n,e[1]=t[1]*n,e[2]=t[2]*n,e}function Lr(e,t){var n=t[0]-e[0],r=t[1]-e[1],i=t[2]-e[2];return Math.sqrt(n*n+r*r+i*i)}function Rr(e,t){var n=t[0],r=t[1],i=t[2],a=n*n+r*r+i*i;return a>0&&(a=1/Math.sqrt(a)),e[0]=t[0]*a,e[1]=t[1]*a,e[2]=t[2]*a,e}function zr(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function Br(e,t,n){var r=t[0],i=t[1],a=t[2],o=n[0],s=n[1],c=n[2];return e[0]=i*c-a*s,e[1]=a*o-r*c,e[2]=r*s-i*o,e}function Vr(e,t,n,r){var i=t[0],a=t[1],o=t[2];return e[0]=i+r*(n[0]-i),e[1]=a+r*(n[1]-a),e[2]=o+r*(n[2]-o),e}function Hr(e,t,n){var r=t[0],i=t[1],a=t[2],o=n[3]*r+n[7]*i+n[11]*a+n[15];return o||=1,e[0]=(n[0]*r+n[4]*i+n[8]*a+n[12])/o,e[1]=(n[1]*r+n[5]*i+n[9]*a+n[13])/o,e[2]=(n[2]*r+n[6]*i+n[10]*a+n[14])/o,e}function Ur(e,t,n){var r=t[0],i=t[1],a=t[2];return e[0]=r*n[0]+i*n[3]+a*n[6],e[1]=r*n[1]+i*n[4]+a*n[7],e[2]=r*n[2]+i*n[5]+a*n[8],e}function Wr(e,t,n){var r=n[0],i=n[1],a=n[2],o=n[3],s=t[0],c=t[1],l=t[2],u=i*l-a*c,d=a*s-r*l,f=r*c-i*s;return u+=u,d+=d,f+=f,e[0]=s+o*u+i*f-a*d,e[1]=c+o*d+a*u-r*f,e[2]=l+o*f+r*d-i*u,e}function Gr(e,t){var n=e[0],r=e[1],i=e[2],a=t[0],o=t[1],s=t[2];return Math.abs(n-a)<=1e-6*Math.max(1,Math.abs(n),Math.abs(a))&&Math.abs(r-o)<=1e-6*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(i-s)<=1e-6*Math.max(1,Math.abs(i),Math.abs(s))}var Kr=Mr,qr=Lr,Jr=Dr;(function(){var e=Tr();return function(t,n,r,i,a,o){var s,c;for(n||=3,r||=0,c=i?Math.min(i*n+r,t.length):t.length,s=r;s<c;s+=n)e[0]=t[s],e[1]=t[s+1],e[2]=t[s+2],a(e,e,o),t[s]=e[0],t[s+1]=e[1],t[s+2]=e[2];return t}})();function Yr(){var e=new Sn(4);return Sn!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0,e[3]=0),e}function Xr(e,t,n,r){var i=new Sn(4);return i[0]=e,i[1]=t,i[2]=n,i[3]=r,i}function Zr(e,t){return e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e}function Qr(e,t,n,r,i){return e[0]=t,e[1]=n,e[2]=r,e[3]=i,e}function $r(e,t){var n=t[0],r=t[1],i=t[2],a=t[3],o=n*n+r*r+i*i+a*a;return o>0&&(o=1/Math.sqrt(o)),e[0]=n*o,e[1]=r*o,e[2]=i*o,e[3]=a*o,e}function ei(e,t,n){var r=t[0],i=t[1],a=t[2],o=t[3];return e[0]=n[0]*r+n[4]*i+n[8]*a+n[12]*o,e[1]=n[1]*r+n[5]*i+n[9]*a+n[13]*o,e[2]=n[2]*r+n[6]*i+n[10]*a+n[14]*o,e[3]=n[3]*r+n[7]*i+n[11]*a+n[15]*o,e}(function(){var e=Yr();return function(t,n,r,i,a,o){var s,c;for(n||=4,r||=0,c=i?Math.min(i*n+r,t.length):t.length,s=r;s<c;s+=n)e[0]=t[s],e[1]=t[s+1],e[2]=t[s+2],e[3]=t[s+3],a(e,e,o),t[s]=e[0],t[s+1]=e[1],t[s+2]=e[2],t[s+3]=e[3];return t}})();function ti(){var e=new Sn(4);return Sn!=Float32Array&&(e[0]=0,e[1]=0,e[2]=0),e[3]=1,e}function ni(e,t,n){n*=.5;var r=Math.sin(n);return e[0]=r*t[0],e[1]=r*t[1],e[2]=r*t[2],e[3]=Math.cos(n),e}function ri(e,t,n){var r=t[0],i=t[1],a=t[2],o=t[3],s=n[0],c=n[1],l=n[2],u=n[3];return e[0]=r*u+o*s+i*l-a*c,e[1]=i*u+o*c+a*s-r*l,e[2]=a*u+o*l+r*c-i*s,e[3]=o*u-r*s-i*c-a*l,e}function ii(e,t,n,r){var i=t[0],a=t[1],o=t[2],s=t[3],c=n[0],l=n[1],u=n[2],d=n[3],f,p=i*c+a*l+o*u+s*d,m,h,g;return p<0&&(p=-p,c=-c,l=-l,u=-u,d=-d),1-p>1e-6?(f=Math.acos(p),m=Math.sin(f),h=Math.sin((1-r)*f)/m,g=Math.sin(r*f)/m):(h=1-r,g=r),e[0]=h*i+g*c,e[1]=h*a+g*l,e[2]=h*o+g*u,e[3]=h*s+g*d,e}function ai(e,t){var n=t[0],r=t[1],i=t[2],a=t[3],o=n*n+r*r+i*i+a*a,s=o?1/o:0;return e[0]=-n*s,e[1]=-r*s,e[2]=-i*s,e[3]=a*s,e}function oi(e,t){var n=t[0]+t[4]+t[8],r;if(n>0)r=Math.sqrt(n+1),e[3]=.5*r,r=.5/r,e[0]=(t[5]-t[7])*r,e[1]=(t[6]-t[2])*r,e[2]=(t[1]-t[3])*r;else{var i=0;t[4]>t[0]&&(i=1),t[8]>t[i*3+i]&&(i=2);var a=(i+1)%3,o=(i+2)%3;r=Math.sqrt(t[i*3+i]-t[a*3+a]-t[o*3+o]+1),e[i]=.5*r,r=.5/r,e[3]=(t[a*3+o]-t[o*3+a])*r,e[a]=(t[a*3+i]+t[i*3+a])*r,e[o]=(t[o*3+i]+t[i*3+o])*r}return e}function si(e,t,n,r){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:`zyx`,a=Math.PI/360;t*=a,r*=a,n*=a;var o=Math.sin(t),s=Math.cos(t),c=Math.sin(n),l=Math.cos(n),u=Math.sin(r),d=Math.cos(r);switch(i){case`xyz`:e[0]=o*l*d+s*c*u,e[1]=s*c*d-o*l*u,e[2]=s*l*u+o*c*d,e[3]=s*l*d-o*c*u;break;case`xzy`:e[0]=o*l*d-s*c*u,e[1]=s*c*d-o*l*u,e[2]=s*l*u+o*c*d,e[3]=s*l*d+o*c*u;break;case`yxz`:e[0]=o*l*d+s*c*u,e[1]=s*c*d-o*l*u,e[2]=s*l*u-o*c*d,e[3]=s*l*d+o*c*u;break;case`yzx`:e[0]=o*l*d+s*c*u,e[1]=s*c*d+o*l*u,e[2]=s*l*u-o*c*d,e[3]=s*l*d-o*c*u;break;case`zxy`:e[0]=o*l*d-s*c*u,e[1]=s*c*d+o*l*u,e[2]=s*l*u+o*c*d,e[3]=s*l*d-o*c*u;break;case`zyx`:e[0]=o*l*d-s*c*u,e[1]=s*c*d+o*l*u,e[2]=s*l*u-o*c*d,e[3]=s*l*d+o*c*u;break;default:throw Error(`Unknown angle order `+i)}return e}var ci=Xr,li=Zr,ui=Qr,di=ri,fi=$r;(function(){var e=Tr(),t=Or(1,0,0),n=Or(0,1,0);return function(r,i,a){var o=zr(i,a);return o<-.999999?(Br(e,t,i),Jr(e)<1e-6&&Br(e,n,i),Rr(e,e),ni(r,e,Math.PI),r):o>.999999?(r[0]=0,r[1]=0,r[2]=0,r[3]=1,r):(Br(e,i,a),r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=1+o,fi(r,r))}})(),function(){var e=ti(),t=ti();return function(n,r,i,a,o,s){return ii(e,r,o,s),ii(t,i,a,s),ii(n,e,t,2*s*(1-s)),n}}(),function(){var e=Cn();return function(t,n,r,i){return e[0]=r[0],e[3]=r[1],e[6]=r[2],e[1]=i[0],e[4]=i[1],e[7]=i[2],e[2]=-n[0],e[5]=-n[1],e[8]=-n[2],fi(t,oi(t,e))}}();function pi(){var e=new Sn(2);return Sn!=Float32Array&&(e[0]=0,e[1]=0),e}function mi(e,t){return e[0]=t[0],e[1]=t[1],e}function hi(e,t,n){return e[0]=t,e[1]=n,e}function gi(e,t){var n=t[0],r=t[1],i=n*n+r*r;return i>0&&(i=1/Math.sqrt(i)),e[0]=t[0]*i,e[1]=t[1]*i,e}function _i(e,t){return e[0]*t[0]+e[1]*t[1]}function vi(e,t){return e[0]===t[0]&&e[1]===t[1]}(function(){var e=pi();return function(t,n,r,i,a,o){var s,c;for(n||=2,r||=0,c=i?Math.min(i*n+r,t.length):t.length,s=r;s<c;s+=n)e[0]=t[s],e[1]=t[s+1],a(e,e,o),t[s]=e[0],t[s+1]=e[1];return t}})();var yi=function(e){return e!==null&&typeof e!=`function`&&isFinite(e.length)},bi=function(e,t){return yi(e)?e.indexOf(t)>-1:!1},xi=function(e,t){if(!yi(e))return e;for(var n=[],r=0;r<e.length;r++){var i=e[r];t(i,r)&&n.push(i)}return n},Si=function(e,t){return t===void 0&&(t=[]),xi(e,function(e){return!bi(t,e)})};function B(e){return typeof e==`function`}function V(e){return e==null}function Ci(e){return Array.isArray(e)}var wi=(function(e){var t=typeof e;return e!==null&&t===`object`||t===`function`});function Ti(e,t){if(e){var n;if(Ci(e))for(var r=0,i=e.length;r<i&&(n=t(e[r],r),n!==!1);r++);else if(wi(e)){for(var a in e)if(e.hasOwnProperty(a)&&(n=t(e[a],a),n===!1))break}}}var Ei=function(e){return typeof e==`object`&&!!e},Di={}.toString,Oi=function(e,t){return Di.call(e)===`[object `+t+`]`},ki=function(e){if(!Ei(e)||!Oi(e,`Object`))return!1;if(Object.getPrototypeOf(e)===null)return!0;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t},Ai=function(e){if(!Ci(e))return[];for(var t=[],n=0;n<e.length;n++)t=t.concat(e[n]);return t};function ji(e){if(!Array.isArray(e))return-1/0;var t=e.length;if(!t)return-1/0;for(var n=e[0],r=1;r<t;r++)n=Math.max(n,e[r]);return n}var Mi=(function(e){if(Ci(e))return e.reduce(function(e,t){return Math.min(e,t)},e[0])}),Ni=function(e,t,n){if(!Ci(e)&&!ki(e))return e;var r=n;return Ti(e,function(e,n){r=t(r,e,n)}),r};function Pi(e){return typeof e==`string`}function Fi(e,t){t===void 0&&(t=new Map);var n=[];if(Array.isArray(e))for(var r=0,i=e.length;r<i;r++){var a=e[r];t.has(a)||(n.push(a),t.set(a,!0))}return n}var Ii=Object.prototype.hasOwnProperty;function Li(e,t){if(!t||!Ci(e))return{};for(var n={},r=B(t)?t:function(e){return e[t]},i,a=0;a<e.length;a++){var o=e[a];i=r(o),Ii.call(n,i)?n[i].push(o):n[i]=[o]}return n}var Ri=function(e,t,n){return e<t?t:e>n?n:e};function zi(e){return typeof e==`number`}var Bi=1e-5;function Vi(e,t,n){return n===void 0&&(n=Bi),e===t||Math.abs(e-t)<n}var Hi=(function(e,t){if(Ci(e)){for(var n,r=-1/0,i=0;i<e.length;i++){var a=e[i],o=B(t)?t(a):a[t];o>r&&(n=a,r=o)}return n}}),Ui=(function(e,t){if(Ci(e)){for(var n,r=1/0,i=0;i<e.length;i++){var a=e[i],o=B(t)?t(a):a[t];o<r&&(n=a,r=o)}return n}}),Wi=function(e,t){return(e%t+t)%t},Gi=(function(e){return V(e)?``:e.toString()}),Ki=function(e){var t=Gi(e);return t.charAt(0).toLowerCase()+t.substring(1)};function qi(e,t){return!e||!t?e:e.replace(/\\?\{([^{}]+)\}/g,function(e,n){return e.charAt(0)===`\\`?e.slice(1):t[n]===void 0?``:t[n]})}var Ji=function(e){var t=Gi(e);return t.charAt(0).toUpperCase()+t.substring(1)},Yi={}.toString,Xi=function(e){return Yi.call(e).replace(/^\[object /,``).replace(/]$/,``)},Zi=function(e){return Oi(e,`Boolean`)};function Qi(e){return e instanceof Date}function $i(e){return e===null}var ea=Object.prototype,ta=function(e){var t=e&&e.constructor;return e===(typeof t==`function`&&t.prototype||ea)},na=function(e){return e===void 0};function ra(e){return e instanceof Element||e instanceof Document}function ia(e,t){for(var n in t)t.hasOwnProperty(n)&&n!==`constructor`&&t[n]!==void 0&&(e[n]=t[n])}function aa(e,t,n,r){return t&&ia(e,t),n&&ia(e,n),r&&ia(e,r),e}var oa=function(e){if(typeof e!=`object`||!e)return e;var t;if(Ci(e)){t=[];for(var n=0,r=e.length;n<r;n++)typeof e[n]==`object`&&e[n]!=null?t[n]=oa(e[n]):t[n]=e[n]}else for(var i in t={},e)typeof e[i]==`object`&&e[i]!=null?t[i]=oa(e[i]):t[i]=e[i];return t};function sa(e,t,n){var r;return function(){var i=this,a=arguments,o=function(){r=null,n||e.apply(i,a)},s=n&&!r;clearTimeout(r),r=setTimeout(o,t),s&&e.apply(i,a)}}function ca(e){var t,n,r,i=e||1;function a(e,a){++t>i&&(r=n,o(1),++t),n[e]=a}function o(e){t=0,n=Object.create(null),e||(r=Object.create(null))}return o(),{clear:o,has:function(e){return n[e]!==void 0||r[e]!==void 0},get:function(e){var t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return a(e,t),t},set:function(e,t){n[e]===void 0?a(e,t):n[e]=t}}}var la=new Map;function ua(e,t,n){return n===void 0&&(n=128),function(){var r=[...arguments],i=t?t.apply(this,r):r[0];la.has(e)||la.set(e,ca(n));var a=la.get(e);if(a.has(i))return a.get(i);var o=e.apply(this,r);return a.set(i,o),o}}var da=5;function fa(e,t){if(Object.hasOwn)return Object.hasOwn(e,t);if(e==null)throw TypeError(`Cannot convert undefined or null to object`);return Object.prototype.hasOwnProperty.call(Object(e),t)}function pa(e,t,n,r){for(var i in n||=0,r||=da,t)if(fa(t,i)){var a=t[i];a!==null&&ki(a)?(ki(e[i])||(e[i]={}),n<r?pa(e[i],a,n+1,r):e[i]=t[i]):Ci(a)?(e[i]=[],e[i]=e[i].concat(a)):a!==void 0&&(e[i]=a)}}var ma=function(e){for(var t=[...arguments].slice(1),n=0;n<t.length;n+=1)pa(e,t[n]);return e},ha=Object.prototype.hasOwnProperty;function ga(e){if(V(e))return!0;if(yi(e))return!e.length;var t=Xi(e);if(t===`Map`||t===`Set`)return!e.size;if(ta(e))return!Object.keys(e).length;for(var n in e)if(ha.call(e,n))return!1;return!0}var _a=function(e,t){if(e===t)return!0;if(!e||!t||Pi(e)||Pi(t))return!1;if(yi(e)||yi(t)){if(e.length!==t.length)return!1;for(var n=!0,r=0;r<e.length&&(n=_a(e[r],t[r]),n);r++);return n}if(Ei(e)||Ei(t)){var i=Object.keys(e),a=Object.keys(t);if(i.length!==a.length)return!1;for(var n=!0,r=0;r<i.length&&(n=_a(e[i[r]],t[i[r]]),n);r++);return n}return!1},va=(function(e,t,n){for(var r=0,i=Pi(t)?t.split(`.`):t;e&&r<i.length;)e=e[i[r++]];return e===void 0||r<i.length?n:e}),ya=(function(e,t,n){var r=e,i=Pi(t)?t.split(`.`):t;return i.forEach(function(e,t){t<i.length-1?(wi(r[e])||(r[e]=zi(i[t+1])?[]:{}),r=r[e]):r[e]=n}),e}),ba=Object.prototype.hasOwnProperty,xa=(function(e,t){if(e===null||!ki(e))return{};var n={};return Ti(t,function(t){ba.call(e,t)&&(n[t]=e[t])}),n}),Sa=(function(e,t){return Ni(e,function(e,n,r){return t.includes(r)||(e[r]=n),e},{})}),Ca=(function(e,t,n){var r,i,a,o,s=0;n||={};var c=function(){s=n.leading===!1?0:Date.now(),r=null,o=e.apply(i,a),r||(i=a=null)},l=function(){var l=Date.now();!s&&n.leading===!1&&(s=l);var u=t-(l-s);return i=this,a=arguments,u<=0||u>t?(r&&=(clearTimeout(r),null),s=l,o=e.apply(i,a),r||(i=a=null)):!r&&n.trailing!==!1&&(r=setTimeout(c,u)),o};return l.cancel=function(){clearTimeout(r),s=0,r=i=a=null},l}),wa={},Ta=(function(e){return e||=`g`,wa[e]?wa[e]+=1:wa[e]=1,e+wa[e]}),Ea=(function(){}),Da=(function(e){return e}),Oa=function(e,t){return Oa=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},Oa(e,t)};function ka(e,t){if(typeof t!=`function`&&t!==null)throw TypeError(`Class extends value `+String(t)+` is not a constructor or null`);Oa(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var H=function(){return H=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},H.apply(this,arguments)};function Aa(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function ja(e){var t=typeof Symbol==`function`&&Symbol.iterator,n=t&&e[t],r=0;if(n)return n.call(e);if(e&&typeof e.length==`number`)return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw TypeError(t?`Object is not iterable.`:`Symbol.iterator is not defined.`)}function U(e,t){var n=typeof Symbol==`function`&&e[Symbol.iterator];if(!n)return e;var r=n.call(e),i,a=[],o;try{for(;(t===void 0||t-- >0)&&!(i=r.next()).done;)a.push(i.value)}catch(e){o={error:e}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(o)throw o.error}}return a}function Ma(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;for(var r=Array(e),i=0,t=0;t<n;t++)for(var a=arguments[t],o=0,s=a.length;o<s;o++,i++)r[i]=a[o];return r}function W(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||Array.prototype.slice.call(t))}function Na(e,t,n,r){if(n===`a`&&!r)throw TypeError(`Private accessor was defined without a getter`);if(typeof t==`function`?e!==t||!r:!t.has(e))throw TypeError(`Cannot read private member from an object whose class did not declare it`);return n===`m`?r:n===`a`?r.call(e):r?r.value:t.get(e)}var Pa={x1:0,y1:0,x2:0,y2:0,x:0,y:0,qx:null,qy:null};function Fa(e,t,n){if(e[n].length>7){e[n].shift();for(var r=e[n],i=n;r.length;)t[n]=`A`,e.splice(i+=1,0,[`C`].concat(r.splice(0,6)));e.splice(n,1)}}var Ia={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0};function La(e){return Array.isArray(e)&&e.every(function(e){var t=e[0].toLowerCase();return Ia[t]===e.length-1&&`achlmqstvz`.includes(t)})}function Ra(e){return La(e)&&e.every(function(e){var t=e[0];return t===t.toUpperCase()})}function za(e){return Ra(e)&&e.every(function(e){var t=e[0];return`ACLMQZ`.includes(t)})}function Ba(e){for(var t=e.pathValue[e.segmentStart],n=t.toLowerCase(),r=e.data;r.length>=Ia[n]&&(n===`m`&&r.length>2?(e.segments.push([t].concat(r.splice(0,2))),n=`l`,t=t===`m`?`l`:`L`):e.segments.push([t].concat(r.splice(0,Ia[n]))),Ia[n]););}function Va(e){var t=e.index,n=e.pathValue,r=n.charCodeAt(t);if(r===48){e.param=0,e.index+=1;return}if(r===49){e.param=1,e.index+=1;return}e.err=`[path-util]: invalid Arc flag "${n[t]}", expecting 0 or 1 at index ${t}`}function Ha(e){return e>=48&&e<=57||e===43||e===45||e===46}function Ua(e){return e>=48&&e<=57}function Wa(e){var t=e.max,n=e.pathValue,r=e.index,i=r,a=!1,o=!1,s=!1,c=!1,l;if(i>=t){e.err=`[path-util]: Invalid path value at index ${i}, "pathValue" is missing param`;return}if(l=n.charCodeAt(i),(l===43||l===45)&&(i+=1,l=n.charCodeAt(i)),!Ua(l)&&l!==46){e.err=`[path-util]: Invalid path value at index ${i}, "${n[i]}" is not a number`;return}if(l!==46){if(a=l===48,i+=1,l=n.charCodeAt(i),a&&i<t&&l&&Ua(l)){e.err=`[path-util]: Invalid path value at index ${r}, "${n[r]}" illegal number`;return}for(;i<t&&Ua(n.charCodeAt(i));)i+=1,o=!0;l=n.charCodeAt(i)}if(l===46){for(c=!0,i+=1;Ua(n.charCodeAt(i));)i+=1,s=!0;l=n.charCodeAt(i)}if(l===101||l===69){if(c&&!o&&!s){e.err=`[path-util]: Invalid path value at index ${i}, "${n[i]}" invalid float exponent`;return}if(i+=1,l=n.charCodeAt(i),(l===43||l===45)&&(i+=1),i<t&&Ua(n.charCodeAt(i)))for(;i<t&&Ua(n.charCodeAt(i));)i+=1;else{e.err=`[path-util]: Invalid path value at index ${i}, "${n[i]}" invalid integer exponent`;return}}e.index=i,e.param=+e.pathValue.slice(r,i)}function Ga(e){return e===10||e===13||e===8232||e===8233||e===32||e===9||e===11||e===12||e===160||e>=5760&&[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].includes(e)}function Ka(e){for(var t=e.pathValue,n=e.max;e.index<n&&Ga(t.charCodeAt(e.index));)e.index+=1}function qa(e){switch(e|32){case 109:case 122:case 108:case 104:case 118:case 99:case 115:case 113:case 116:case 97:return!0;default:return!1}}function Ja(e){return(e|32)==97}function Ya(e){var t=e.max,n=e.pathValue,r=e.index,i=n.charCodeAt(r),a=Ia[n[r].toLowerCase()];if(e.segmentStart=r,!qa(i)){e.err=`[path-util]: Invalid path value "${n[r]}" is not a path command`;return}if(e.index+=1,Ka(e),e.data=[],!a){Ba(e);return}for(;;){for(var o=a;o>0;--o){if(Ja(i)&&(o===3||o===4)?Va(e):Wa(e),e.err.length)return;e.data.push(e.param),Ka(e),e.index<t&&n.charCodeAt(e.index)===44&&(e.index+=1,Ka(e))}if(e.index>=e.max||!Ha(n.charCodeAt(e.index)))break}Ba(e)}var Xa=function(){function e(e){this.pathValue=e,this.segments=[],this.max=e.length,this.index=0,this.param=0,this.segmentStart=0,this.data=[],this.err=``}return e}();function Za(e){if(La(e))return[].concat(e);var t=new Xa(e);for(Ka(t);t.index<t.max&&!t.err.length;)Ya(t);return t.err?t.err:t.segments}function Qa(e){if(Ra(e))return[].concat(e);var t=Za(e),n=0,r=0,i=0,a=0;return t.map(function(e){var t=e.slice(1).map(Number),o=e[0],s=o.toUpperCase();if(o===`M`)return n=t[0],r=t[1],i=n,a=r,[`M`,n,r];var c;if(o!==s)switch(s){case`A`:c=[s,t[0],t[1],t[2],t[3],t[4],t[5]+n,t[6]+r];break;case`V`:c=[s,t[0]+r];break;case`H`:c=[s,t[0]+n];break;default:var l=t.map(function(e,t){return e+(t%2?r:n)});c=[s].concat(l)}else c=[s].concat(t);var u=c.length;switch(s){case`Z`:n=i,r=a;break;case`H`:n=c[1];break;case`V`:r=c[1];break;default:n=c[u-2],r=c[u-1],s===`M`&&(i=n,a=r)}return c})}function $a(e,t){var n=e[0],r=t.x1,i=t.y1,a=t.x2,o=t.y2,s=e.slice(1).map(Number),c=e;if(`TQ`.includes(n)||(t.qx=null,t.qy=null),n===`H`)c=[`L`,e[1],i];else if(n===`V`)c=[`L`,r,e[1]];else if(n===`S`){var l=r*2-a,u=i*2-o;t.x1=l,t.y1=u,c=[`C`,l,u].concat(s)}else if(n===`T`){var d=r*2-t.qx,f=i*2-t.qy;t.qx=d,t.qy=f,c=[`Q`,d,f].concat(s)}else if(n===`Q`){var p=s[0],m=s[1];t.qx=p,t.qy=m}return c}function eo(e){if(za(e))return[].concat(e);for(var t=Qa(e),n=H({},Pa),r=0;r<t.length;r+=1){t[r]=$a(t[r],n);var i=t[r],a=i.length;n.x1=+i[a-2],n.y1=+i[a-1],n.x2=+i[a-4]||n.x1,n.y2=+i[a-3]||n.y1}return t}function to(e){return za(e)&&e.every(function(e){var t=e[0];return`MC`.includes(t)})}function no(e,t,n){return{x:e*Math.cos(n)-t*Math.sin(n),y:e*Math.sin(n)+t*Math.cos(n)}}function ro(e,t,n,r,i,a,o,s,c,l){var u=e,d=t,f=n,p=r,m=s,h=c,g=Math.PI*120/180,_=Math.PI/180*(+i||0),v=[],y,b,x,S,C;if(l)b=l[0],x=l[1],S=l[2],C=l[3];else{y=no(u,d,-_),u=y.x,d=y.y,y=no(m,h,-_),m=y.x,h=y.y;var w=(u-m)/2,T=(d-h)/2,E=w*w/(f*f)+T*T/(p*p);E>1&&(E=Math.sqrt(E),f*=E,p*=E);var D=f*f,O=p*p,k=(a===o?-1:1)*Math.sqrt(Math.abs((D*O-D*T*T-O*w*w)/(D*T*T+O*w*w)));S=k*f*T/p+(u+m)/2,C=k*-p*w/f+(d+h)/2,b=Math.asin(((d-C)/p*10**9>>0)/10**9),x=Math.asin(((h-C)/p*10**9>>0)/10**9),b=u<S?Math.PI-b:b,x=m<S?Math.PI-x:x,b<0&&(b=Math.PI*2+b),x<0&&(x=Math.PI*2+x),o&&b>x&&(b-=Math.PI*2),!o&&x>b&&(x-=Math.PI*2)}var A=x-b;if(Math.abs(A)>g){var j=x,ee=m,M=h;x=b+g*(o&&x>b?1:-1),m=S+f*Math.cos(x),h=C+p*Math.sin(x),v=ro(m,h,f,p,i,0,o,ee,M,[x,j,S,C])}A=x-b;var te=Math.cos(b),ne=Math.sin(b),re=Math.cos(x),ie=Math.sin(x),N=Math.tan(A/4),ae=4/3*f*N,oe=4/3*p*N,P=[u,d],se=[u+ae*ne,d-oe*te],ce=[m+ae*ie,h-oe*re],le=[m,h];if(se[0]=2*P[0]-se[0],se[1]=2*P[1]-se[1],l)return se.concat(ce,le,v);v=se.concat(ce,le,v);for(var ue=[],de=0,fe=v.length;de<fe;de+=1)ue[de]=de%2?no(v[de-1],v[de],_).y:no(v[de],v[de+1],_).x;return ue}function io(e,t,n,r,i,a){var o=1/3,s=2/3;return[o*e+s*n,o*t+s*r,o*i+s*n,o*a+s*r,i,a]}function ao(e,t,n){var r=e[0],i=e[1],a=t[0],o=t[1];return[r+(a-r)*n,i+(o-i)*n]}var oo=function(e,t,n,r){return W(W([],ao([e,t],[n,r],.5),!0),[n,r,n,r],!1)};function so(e,t){var n=e[0],r=e.slice(1).map(Number),i=r[0],a=r[1],o,s=t.x1,c=t.y1,l=t.x,u=t.y;switch(`TQ`.includes(n)||(t.qx=null,t.qy=null),n){case`M`:return t.x=i,t.y=a,e;case`A`:return o=[s,c].concat(r),[`C`].concat(ro(o[0],o[1],o[2],o[3],o[4],o[5],o[6],o[7],o[8],o[9]));case`Q`:return t.qx=i,t.qy=a,o=[s,c].concat(r),[`C`].concat(io(o[0],o[1],o[2],o[3],o[4],o[5]));case`L`:return[`C`].concat(oo(s,c,i,a));case`Z`:return s===l&&c===u?[`C`,s,c,l,u,l,u]:[`C`].concat(oo(s,c,l,u));default:}return e}function co(e,t){if(t===void 0&&(t=!1),to(e)){var n=[].concat(e);return t?[n,[]]:n}for(var r=eo(e),i=H({},Pa),a=[],o=``,s=r.length,c,l,u=[],d=0;d<s;d+=1)r[d]&&(o=r[d][0]),a[d]=o,r[d]=so(r[d],i),Fa(r,a,d),s=r.length,o===`Z`&&u.push(d),c=r[d],l=c.length,i.x1=+c[l-2],i.y1=+c[l-1],i.x2=+c[l-4]||i.x1,i.y2=+c[l-3]||i.y1;return t?[r,u]:r}function lo(e){return e.map(function(e){return Array.isArray(e)?[].concat(e):e})}function uo(e){var t=e.slice(1).map(function(t,n,r){return n?r[n-1].slice(-2).concat(t.slice(1)):e[0].slice(1).concat(t.slice(1))}).map(function(e){return e.map(function(t,n){return e[e.length-n-2*(1-n%2)]})}).reverse();return[[`M`].concat(t[0].slice(0,2))].concat(t.map(function(e){return[`C`].concat(e.slice(2))}))}function fo(e,t){return Math.sqrt((e[0]-t[0])*(e[0]-t[0])+(e[1]-t[1])*(e[1]-t[1]))}function po(e,t,n,r,i){var a=fo([e,t],[n,r]),o={x:0,y:0};if(typeof i==`number`)if(i<=0)o={x:e,y:t};else if(i>=a)o={x:n,y:r};else{var s=ao([e,t],[n,r],i/a);o={x:s[0],y:s[1]}}return{length:a,point:o,min:{x:Math.min(e,n),y:Math.min(t,r)},max:{x:Math.max(e,n),y:Math.max(t,r)}}}function mo(e,t){var n=e.x,r=e.y,i=t.x,a=t.y,o=n*i+r*a,s=Math.sqrt((n**2+r**2)*(i**2+a**2));return(n*a-r*i<0?-1:1)*Math.acos(o/s)}function ho(e,t,n,r,i,a,o,s,c,l){var u=Math.abs,d=Math.sin,f=Math.cos,p=Math.sqrt,m=Math.PI,h=u(n),g=u(r),_=(i%360+360)%360*(m/180);if(e===s&&t===c)return{x:e,y:t};if(h===0||g===0)return po(e,t,s,c,l).point;var v=(e-s)/2,y=(t-c)/2,b={x:f(_)*v+d(_)*y,y:-d(_)*v+f(_)*y},x=b.x**2/h**2+b.y**2/g**2;x>1&&(h*=p(x),g*=p(x));var S=(h**2*g**2-h**2*b.y**2-g**2*b.x**2)/(h**2*b.y**2+g**2*b.x**2);S=S<0?0:S;var C=(a===o?-1:1)*p(S),w={x:C*(h*b.y/g),y:C*(-(g*b.x)/h)},T={x:f(_)*w.x-d(_)*w.y+(e+s)/2,y:d(_)*w.x+f(_)*w.y+(t+c)/2},E={x:(b.x-w.x)/h,y:(b.y-w.y)/g},D=mo({x:1,y:0},E),O=mo(E,{x:(-b.x-w.x)/h,y:(-b.y-w.y)/g});!o&&O>0?O-=2*m:o&&O<0&&(O+=2*m),O%=2*m;var k=D+O*l,A=h*f(k),j=g*d(k);return{x:f(_)*A-d(_)*j+T.x,y:d(_)*A+f(_)*j+T.y}}function go(e,t,n,r,i,a,o,s,c,l,u){var d,f=u.bbox,p=f===void 0?!0:f,m=u.length,h=m===void 0?!0:m,g=u.sampleSize,_=g===void 0?30:g,v=typeof l==`number`,y=e,b=t,x=0,S=[y,b,x],C=[y,b],w=0,T={x:0,y:0},E=[{x:y,y:b}];v&&l<=0&&(T={x:y,y:b});for(var D=0;D<=_;D+=1){if(w=D/_,d=ho(e,t,n,r,i,a,o,s,c,w),y=d.x,b=d.y,p&&E.push({x:y,y:b}),h&&(x+=fo(C,[y,b])),C=[y,b],v&&x>=l&&l>S[2]){var O=(x-l)/(x-S[2]);T={x:C[0]*(1-O)+S[0]*O,y:C[1]*(1-O)+S[1]*O}}S=[y,b,x]}return v&&l>=x&&(T={x:s,y:c}),{length:x,point:T,min:{x:Math.min.apply(null,E.map(function(e){return e.x})),y:Math.min.apply(null,E.map(function(e){return e.y}))},max:{x:Math.max.apply(null,E.map(function(e){return e.x})),y:Math.max.apply(null,E.map(function(e){return e.y}))}}}function _o(e,t,n,r,i,a,o,s,c){var l=1-c;return{x:l**3*e+3*l**2*c*n+3*l*c**2*i+c**3*o,y:l**3*t+3*l**2*c*r+3*l*c**2*a+c**3*s}}function vo(e,t,n,r,i,a,o,s,c,l){var u,d=l.bbox,f=d===void 0?!0:d,p=l.length,m=p===void 0?!0:p,h=l.sampleSize,g=h===void 0?10:h,_=typeof c==`number`,v=e,y=t,b=0,x=[v,y,b],S=[v,y],C=0,w={x:0,y:0},T=[{x:v,y}];_&&c<=0&&(w={x:v,y});for(var E=0;E<=g;E+=1){if(C=E/g,u=_o(e,t,n,r,i,a,o,s,C),v=u.x,y=u.y,f&&T.push({x:v,y}),m&&(b+=fo(S,[v,y])),S=[v,y],_&&b>=c&&c>x[2]){var D=(b-c)/(b-x[2]);w={x:S[0]*(1-D)+x[0]*D,y:S[1]*(1-D)+x[1]*D}}x=[v,y,b]}return _&&c>=b&&(w={x:o,y:s}),{length:b,point:w,min:{x:Math.min.apply(null,T.map(function(e){return e.x})),y:Math.min.apply(null,T.map(function(e){return e.y}))},max:{x:Math.max.apply(null,T.map(function(e){return e.x})),y:Math.max.apply(null,T.map(function(e){return e.y}))}}}function yo(e,t,n,r,i,a,o){var s=1-o;return{x:s**2*e+2*s*o*n+o**2*i,y:s**2*t+2*s*o*r+o**2*a}}function bo(e,t,n,r,i,a,o,s){var c,l=s.bbox,u=l===void 0?!0:l,d=s.length,f=d===void 0?!0:d,p=s.sampleSize,m=p===void 0?10:p,h=typeof o==`number`,g=e,_=t,v=0,y=[g,_,v],b=[g,_],x=0,S={x:0,y:0},C=[{x:g,y:_}];h&&o<=0&&(S={x:g,y:_});for(var w=0;w<=m;w+=1){if(x=w/m,c=yo(e,t,n,r,i,a,x),g=c.x,_=c.y,u&&C.push({x:g,y:_}),f&&(v+=fo(b,[g,_])),b=[g,_],h&&v>=o&&o>y[2]){var T=(v-o)/(v-y[2]);S={x:b[0]*(1-T)+y[0]*T,y:b[1]*(1-T)+y[1]*T}}y=[g,_,v]}return h&&o>=v&&(S={x:i,y:a}),{length:v,point:S,min:{x:Math.min.apply(null,C.map(function(e){return e.x})),y:Math.min.apply(null,C.map(function(e){return e.y}))},max:{x:Math.max.apply(null,C.map(function(e){return e.x})),y:Math.max.apply(null,C.map(function(e){return e.y}))}}}function xo(e,t,n){for(var r,i,a,o,s,c,l=eo(e),u=typeof t==`number`,d,f=[],p,m=0,h=0,g=0,_=0,v,y=[],b=[],x=0,S={x:0,y:0},C=S,w=S,T=S,E=0,D=0,O=l.length;D<O;D+=1)v=l[D],p=v[0],d=p===`M`,f=d?f:[m,h].concat(v.slice(1)),d?(g=v[1],_=v[2],S={x:g,y:_},C=S,x=0,u&&t<.001&&(T=S)):p===`L`?(r=po(f[0],f[1],f[2],f[3],(t||0)-E),x=r.length,S=r.min,C=r.max,w=r.point):p===`A`?(i=go(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],f[8],(t||0)-E,n||{}),x=i.length,S=i.min,C=i.max,w=i.point):p===`C`?(a=vo(f[0],f[1],f[2],f[3],f[4],f[5],f[6],f[7],(t||0)-E,n||{}),x=a.length,S=a.min,C=a.max,w=a.point):p===`Q`?(o=bo(f[0],f[1],f[2],f[3],f[4],f[5],(t||0)-E,n||{}),x=o.length,S=o.min,C=o.max,w=o.point):p===`Z`&&(f=[m,h,g,_],s=po(f[0],f[1],f[2],f[3],(t||0)-E),x=s.length,S=s.min,C=s.max,w=s.point),u&&E<t&&E+x>=t&&(T=w),b.push(C),y.push(S),E+=x,c=p===`Z`?[g,_]:v.slice(-2),m=c[0],h=c[1];return u&&t>=E&&(T={x:m,y:h}),{length:E,point:T,min:{x:Math.min.apply(null,y.map(function(e){return e.x})),y:Math.min.apply(null,y.map(function(e){return e.y}))},max:{x:Math.max.apply(null,b.map(function(e){return e.x})),y:Math.max.apply(null,b.map(function(e){return e.y}))}}}function So(e,t){return xo(e,void 0,H(H({},t),{bbox:!1,length:!0})).length}function Co(e){var t=e.length,n=t-1;return e.map(function(r,i){return e.map(function(r,a){var o=i+a,s;return a===0||e[o]&&e[o][0]===`M`?(s=e[o],[`M`].concat(s.slice(-2))):(o>=t&&(o-=n),e[o])})})}function wo(e,t){var n=e.length-1,r=[],i=0,a=0,o=Co(e);return o.forEach(function(i,o){e.slice(1).forEach(function(r,i){a+=fo(e[(o+i)%n].slice(-2),t[i%n].slice(-2))}),r[o]=a,a=0}),i=r.indexOf(Math.min.apply(null,r)),o[i]}function To(e,t,n,r,i,a,o,s){return 3*((s-t)*(n+i)-(o-e)*(r+a)+r*(e-i)-n*(t-a)+s*(i+e/3)-o*(a+t/3))/20}function Eo(e){var t=0,n=0,r=0;return co(e).map(function(e){var i;switch(e[0]){case`M`:return t=e[1],n=e[2],0;default:var a=e.slice(1),o=a[0],s=a[1],c=a[2],l=a[3],u=a[4],d=a[5];return r=To(t,n,o,s,c,l,u,d),i=e.slice(-2),t=i[0],n=i[1],r}}).reduce(function(e,t){return e+t},0)}function Do(e){return Eo(e)>=0}function Oo(e,t,n){return xo(e,t,H(H({},n),{bbox:!1,length:!0})).point}var ko=50;function Ao(e,t){t===void 0&&(t=.5);var n=e.slice(0,2),r=e.slice(2,4),i=e.slice(4,6),a=e.slice(6,8),o=ao(n,r,t),s=ao(r,i,t),c=ao(i,a,t),l=ao(o,s,t),u=ao(s,c,t),d=ao(l,u,t);return[[`C`].concat(o,l,d),[`C`].concat(u,c,a)]}function jo(e){return e.map(function(e,t,n){var r=t&&n[t-1].slice(-2).concat(e.slice(1)),i=t?vo(r[0],r[1],r[2],r[3],r[4],r[5],r[6],r[7],r[8],{bbox:!1}).length:0;return{s:e,ss:t?i?Ao(r):[e,e]:[e],l:i}})}function Mo(e,t,n,r){if(r===void 0&&(r=0),r>ko)return console.warn(`Maximum recursion depth reached in equalizeSegments`),[e,t];var i=jo(e),a=jo(t),o=i.length,s=a.length,c=i.filter(function(e){return e.l}).length,l=a.filter(function(e){return e.l}).length,u=i.filter(function(e){return e.l}).reduce(function(e,t){return e+t.l},0)/c||0,d=a.filter(function(e){return e.l}).reduce(function(e,t){return e+t.l},0)/l||0,f=n||Math.max(o,s),p=[u,d],m=[f-o,f-s],h=0,g=[i,a].map(function(e,t){return e.l===f?e.map(function(e){return e.s}):e.map(function(e,n){return h=n&&m[t]&&e.l>=p[t],m[t]-=+!!h,h?e.ss:[e.s]}).flat()});return g[0].length===g[1].length?g:Mo(g[0],g[1],f,r+1)}function No(e){var t=document.createElement(`div`);t.innerHTML=e;var n=t.childNodes[0];return n&&t.contains(n)&&t.removeChild(n),n}function Po(e,t){for(;!{}.hasOwnProperty.call(e,t)&&(e=un(e))!==null;);return e}function Fo(){return Fo=typeof Reflect<`u`&&Reflect.get?Reflect.get.bind():function(e,t,n){var r=Po(e,t);if(r){var i=Object.getOwnPropertyDescriptor(r,t);return i.get?i.get.call(arguments.length<3?e:n):i.value}},Fo.apply(null,arguments)}function Io(e,t,n,r){var i=Fo(un(1&r?e.prototype:e),t,n);return 2&r&&typeof i==`function`?function(e){return i.apply(n,e)}:i}function Lo(e,t,n,r){var i=e-n,a=t-r;return Math.sqrt(i*i+a*a)}function Ro(e,t){var n=Math.min.apply(Math,ln(e)),r=Math.min.apply(Math,ln(t)),i=Math.max.apply(Math,ln(e)),a=Math.max.apply(Math,ln(t));return{x:n,y:r,width:i-n,height:a-r}}function zo(e,t,n){return Math.atan(-t/e*Math.tan(n))}function Bo(e,t,n){return Math.atan(t/(e*Math.tan(n)))}function Vo(e,t,n,r,i,a){return n*Math.cos(i)*Math.cos(a)-r*Math.sin(i)*Math.sin(a)+e}function Ho(e,t,n,r,i,a){return n*Math.sin(i)*Math.cos(a)+r*Math.cos(i)*Math.sin(a)+t}function Uo(e,t,n,r,i,a,o){for(var s=zo(n,r,i),c=1/0,l=-1/0,u=[a,o],d=-Math.PI*2;d<=Math.PI*2;d+=Math.PI){var f=s+d;a<o?a<f&&f<o&&u.push(f):o<f&&f<a&&u.push(f)}for(var p=0;p<u.length;p++){var m=Vo(e,t,n,r,i,u[p]);m<c&&(c=m),m>l&&(l=m)}for(var h=Bo(n,r,i),g=1/0,_=-1/0,v=[a,o],y=-Math.PI*2;y<=Math.PI*2;y+=Math.PI){var b=h+y;a<o?a<b&&b<o&&v.push(b):o<b&&b<a&&v.push(b)}for(var x=0;x<v.length;x++){var S=Ho(e,t,n,r,i,v[x]);S<g&&(g=S),S>_&&(_=S)}return{x:c,y:g,width:l-c,height:_-g}}var Wo=1e-4;function Go(e,t,n,r,i,a){var o=-1,s=1/0,c=[n,r],l=20;a&&a>200&&(l=a/10);for(var u=1/l,d=u/10,f=0;f<=l;f++){var p=f*u,m=[i.apply(void 0,ln(e.concat([p]))),i.apply(void 0,ln(t.concat([p])))],h=Lo(c[0],c[1],m[0],m[1]);h<s&&(o=p,s=h)}if(o===0)return{x:e[0],y:t[0]};if(o===1){var g=e.length;return{x:e[g-1],y:t[g-1]}}s=1/0;for(var _=0;_<32&&!(d<Wo);_++){var v=o-d,y=o+d,b=[i.apply(void 0,ln(e.concat([v]))),i.apply(void 0,ln(t.concat([v])))],x=Lo(c[0],c[1],b[0],b[1]);if(v>=0&&x<s)o=v,s=x;else{var S=[i.apply(void 0,ln(e.concat([y]))),i.apply(void 0,ln(t.concat([y])))],C=Lo(c[0],c[1],S[0],S[1]);y<=1&&C<s?(o=y,s=C):d*=.5}}return{x:i.apply(void 0,ln(e.concat([o]))),y:i.apply(void 0,ln(t.concat([o])))}}function Ko(e,t,n,r){return Lo(e,t,n,r)}function qo(e,t,n,r,i){return{x:(1-i)*e+i*n,y:(1-i)*t+i*r}}function Jo(e,t,n,r,i,a){var o=[n-e,r-t];if(vi(o,[0,0]))return Math.sqrt((i-e)*(i-e)+(a-t)*(a-t));var s=[-o[1],o[0]];gi(s,s);var c=[i-e,a-t];return Math.abs(_i(c,s))}function Yo(e,t,n,r,i){var a=1-i;return a*a*a*e+3*t*i*a*a+3*n*i*i*a+r*i*i*i}function Xo(e,t,n,r){var i=-3*e+9*t-9*n+3*r,a=6*e-12*t+6*n,o=3*t-3*e,s=[],c,l,u;if(Vi(i,0))Vi(a,0)||(c=-o/a,c>=0&&c<=1&&s.push(c));else{var d=a*a-4*i*o;Vi(d,0)?s.push(-a/(2*i)):d>0&&(u=Math.sqrt(d),c=(-a+u)/(2*i),l=(-a-u)/(2*i),c>=0&&c<=1&&s.push(c),l>=0&&l<=1&&s.push(l))}return s}function Zo(e,t,n,r,i,a,o,s){for(var c=[e,o],l=[t,s],u=Xo(e,n,i,o),d=Xo(t,r,a,s),f=0;f<u.length;f++)c.push(Yo(e,n,i,o,u[f]));for(var p=0;p<d.length;p++)l.push(Yo(t,r,a,s,d[p]));return Ro(c,l)}function Qo(e,t,n,r,i,a,o,s,c,l,u){return Go([e,n,i,o],[t,r,a,s],c,l,Yo,u)}function $o(e,t,n,r,i,a,o,s,c,l,u){var d=Qo(e,t,n,r,i,a,o,s,c,l,u);return Lo(d.x,d.y,c,l)}function es(e){if(e.length<2)return 0;for(var t=0,n=0;n<e.length-1;n++){var r=e[n],i=e[n+1];t+=Lo(r[0],r[1],i[0],i[1])}return t}function ts(e){return es(e)}function ns(e,t,n,r){var i=1-r;return i*i*e+2*r*i*t+r*r*n}function rs(e,t,n){var r=e+n-2*t;if(Vi(r,0))return[.5];var i=(e-t)/r;return i<=1&&i>=0?[i]:[]}function is(e,t,n,r,i,a){var o=rs(e,n,i)[0],s=rs(t,r,a)[0],c=[e,i],l=[t,a];return o!==void 0&&c.push(ns(e,n,i,o)),s!==void 0&&l.push(ns(t,r,a,s)),Ro(c,l)}function as(e,t,n,r,i,a,o,s){return Go([e,n,i],[t,r,a],o,s,ns)}function os(e,t,n,r,i,a,o,s){var c=as(e,t,n,r,i,a,o,s);return Lo(c.x,c.y,o,s)}function ss(e,t){this.v=e,this.k=t}function cs(e,t,n,r){var i=Object.defineProperty;try{i({},``,{})}catch{i=0}cs=function(e,t,n,r){function a(t,n){cs(e,t,function(e){return this._invoke(t,n,e)})}t?i?i(e,t,{value:n,enumerable:!r,configurable:!r,writable:!r}):e[t]=n:(a(`next`,0),a(`throw`,1),a(`return`,2))},cs(e,t,n,r)}function ls(){var e,t,n=typeof Symbol==`function`?Symbol:{},r=n.iterator||`@@iterator`,i=n.toStringTag||`@@toStringTag`;function a(n,r,i,a){var c=r&&r.prototype instanceof s?r:s,l=Object.create(c.prototype);return cs(l,`_invoke`,function(n,r,i){var a,s,c,l=0,u=i||[],d=!1,f={p:0,n:0,v:e,a:p,f:p.bind(e,4),d:function(t,n){return a=t,s=0,c=e,f.n=n,o}};function p(n,r){for(s=n,c=r,t=0;!d&&l&&!i&&t<u.length;t++){var i,a=u[t],p=f.p,m=a[2];n>3?(i=m===r)&&(c=a[(s=a[4])?5:(s=3,3)],a[4]=a[5]=e):a[0]<=p&&((i=n<2&&p<a[1])?(s=0,f.v=r,f.n=a[1]):p<m&&(i=n<3||a[0]>r||r>m)&&(a[4]=n,a[5]=r,f.n=m,s=0))}if(i||n>1)return o;throw d=!0,r}return function(i,u,m){if(l>1)throw TypeError(`Generator is already running`);for(d&&u===1&&p(u,m),s=u,c=m;(t=s<2?e:c)||!d;){a||(s?s<3?(s>1&&(f.n=-1),p(s,c)):f.n=c:f.v=c);try{if(l=2,a){if(s||(i=`next`),t=a[i]){if(!(t=t.call(a,c)))throw TypeError(`iterator result is not an object`);if(!t.done)return t;c=t.value,s<2&&(s=0)}else s===1&&(t=a.return)&&t.call(a),s<2&&(c=TypeError(`The iterator does not provide a '`+i+`' method`),s=1);a=e}else if((t=(d=f.n<0)?c:n.call(r,f))!==o)break}catch(t){a=e,s=1,c=t}finally{l=1}}return{value:t,done:d}}}(n,i,a),!0),l}var o={};function s(){}function c(){}function l(){}t=Object.getPrototypeOf;var u=[][r]?t(t([][r]())):(cs(t={},r,function(){return this}),t),d=l.prototype=s.prototype=Object.create(u);function f(e){return Object.setPrototypeOf?Object.setPrototypeOf(e,l):(e.__proto__=l,cs(e,i,`GeneratorFunction`)),e.prototype=Object.create(d),e}return c.prototype=l,cs(d,`constructor`,l),cs(l,`constructor`,c),c.displayName=`GeneratorFunction`,cs(l,i,`GeneratorFunction`),cs(d),cs(d,i,`Generator`),cs(d,r,function(){return this}),cs(d,`toString`,function(){return`[object Generator]`}),(ls=function(){return{w:a,m:f}})()}function us(e,t){function n(r,i,a,o){try{var s=e[r](i),c=s.value;return c instanceof ss?t.resolve(c.v).then(function(e){n(`next`,e,a,o)},function(e){n(`throw`,e,a,o)}):t.resolve(c).then(function(e){s.value=e,a(s)},function(e){return n(`throw`,e,a,o)})}catch(e){o(e)}}var r;this.next||(cs(us.prototype),cs(us.prototype,typeof Symbol==`function`&&Symbol.asyncIterator||`@asyncIterator`,function(){return this})),cs(this,`_invoke`,function(e,i,a){function o(){return new t(function(t,r){n(e,a,t,r)})}return r=r?r.then(o,o):o()},!0)}function ds(e,t,n,r,i){return new us(ls().w(e,t,n,r),i||Promise)}function fs(e,t,n,r,i){var a=ds(e,t,n,r,i);return a.next().then(function(e){return e.done?e.value:a.next()})}function ps(e){var t=Object(e),n=[];for(var r in t)n.unshift(r);return function e(){for(;n.length;)if((r=n.pop())in t)return e.value=r,e.done=!1,e;return e.done=!0,e}}function ms(e){if(e!=null){var t=e[typeof Symbol==`function`&&Symbol.iterator||`@@iterator`],n=0;if(t)return t.call(e);if(typeof e.next==`function`)return e;if(!isNaN(e.length))return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}}}throw TypeError(Zt(e)+` is not iterable`)}function hs(){var e=ls(),t=e.m(hs),n=(Object.getPrototypeOf?Object.getPrototypeOf(t):t.__proto__).constructor;function r(e){var t=typeof e==`function`&&e.constructor;return!!t&&(t===n||(t.displayName||t.name)===`GeneratorFunction`)}var i={throw:1,return:2,break:3,continue:3};function a(e){var t,n;return function(r){t||(t={stop:function(){return n(r.a,2)},catch:function(){return r.v},abrupt:function(e,t){return n(r.a,i[e],t)},delegateYield:function(e,i,a){return t.resultName=i,n(r.d,ms(e),a)},finish:function(e){return n(r.f,e)}},n=function(e,n,i){r.p=t.prev,r.n=t.next;try{return e(n,i)}finally{t.next=r.n}}),t.resultName&&(t[t.resultName]=r.v,t.resultName=void 0),t.sent=r.v,t.next=r.n;try{return e.call(this,t)}finally{r.p=t.prev,r.n=t.next}}}return(hs=function(){return{wrap:function(t,n,r,i){return e.w(a(t),n,r,i&&i.reverse())},isGeneratorFunction:r,mark:e.m,awrap:function(e,t){return new ss(e,t)},AsyncIterator:us,async:function(e,t,n,i,o){return(r(t)?ds:fs)(a(e),t,n,i,o)},keys:ps,values:ms}})()}function gs(e,t,n,r,i,a,o){try{var s=e[a](o),c=s.value}catch(e){n(e);return}s.done?t(c):Promise.resolve(c).then(r,i)}function _s(e){return function(){var t=this,n=arguments;return new Promise(function(r,i){var a=e.apply(t,n);function o(e){gs(a,r,i,o,s,`next`,e)}function s(e){gs(a,r,i,o,s,`throw`,e)}o(void 0)})}}function vs(e,t){var n=typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(!n){if(Array.isArray(e)||(n=sn(e))||t&&e&&typeof e.length==`number`){n&&(e=n);var r=0,i=function(){};return{s:i,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:i}}throw TypeError(`Invalid attempt to iterate non-iterable instance.
|
|
7
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a,o=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return o=e.done,e},e:function(e){s=!0,a=e},f:function(){try{o||n.return==null||n.return()}finally{if(s)throw a}}}}function ys(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}function bs(e,t){if(e==null)return{};var n,r,i=ys(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r<a.length;r++)n=a[r],t.indexOf(n)===-1&&{}.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var G=function(e){return e.GROUP=`g`,e.FRAGMENT=`fragment`,e.CIRCLE=`circle`,e.ELLIPSE=`ellipse`,e.IMAGE=`image`,e.RECT=`rect`,e.LINE=`line`,e.POLYLINE=`polyline`,e.POLYGON=`polygon`,e.TEXT=`text`,e.PATH=`path`,e.HTML=`html`,e.MESH=`mesh`,e}({}),xs=function(e){return e[e.ZERO=0]=`ZERO`,e[e.NEGATIVE_ONE=1]=`NEGATIVE_ONE`,e}({}),Ss=function(){function e(){R(this,e),this.plugins=[]}return z(e,[{key:`addRenderingPlugin`,value:function(e){this.plugins.push(e),this.context.renderingPlugins.push(e)}},{key:`removeAllRenderingPlugins`,value:function(){var e=this;this.plugins.forEach(function(t){var n=e.context.renderingPlugins.indexOf(t);n>=0&&e.context.renderingPlugins.splice(n,1)})}}])}(),Cs=function(){function e(t){R(this,e),this.clipSpaceNearZ=xs.NEGATIVE_ONE,this.plugins=[],this.config=tn({enableDirtyCheck:!0,enableCulling:!1,enableAutoRendering:!0,enableDirtyRectangleRendering:!0,enableDirtyRectangleRenderingDebug:!1,enableSizeAttenuation:!0,enableRenderingOptimization:!1},t)}return z(e,[{key:`registerPlugin`,value:function(e){this.plugins.findIndex(function(t){return t===e})===-1&&this.plugins.push(e)}},{key:`unregisterPlugin`,value:function(e){var t=this.plugins.findIndex(function(t){return t===e});t>-1&&this.plugins.splice(t,1)}},{key:`getPlugins`,value:function(){return this.plugins}},{key:`getPlugin`,value:function(e){return this.plugins.find(function(t){return t.name===e})}},{key:`getConfig`,value:function(){return this.config}},{key:`setConfig`,value:function(e){Object.assign(this.config,e)}}])}(),ws=jr,Ts=kr,Es=Fr,Ds=Pr,Os=Ir,ks=Kr,As=function(){function e(){R(this,e),this.center=[0,0,0],this.halfExtents=[0,0,0],this.min=[0,0,0],this.max=[0,0,0]}return z(e,[{key:`update`,value:function(e,t){Ts(this.center,e),Ts(this.halfExtents,t),ks(this.min,this.center,this.halfExtents),ws(this.max,this.center,this.halfExtents)}},{key:`setMinMax`,value:function(e,t){ws(this.center,t,e),Os(this.center,this.center,.5),ks(this.halfExtents,t,e),Os(this.halfExtents,this.halfExtents,.5),Ts(this.min,e),Ts(this.max,t)}},{key:`getMin`,value:function(){return this.min}},{key:`getMax`,value:function(){return this.max}},{key:`add`,value:function(t){if(!e.isEmpty(t)){if(e.isEmpty(this)){this.setMinMax(t.getMin(),t.getMax());return}var n=this.center,r=n[0],i=n[1],a=n[2],o=this.halfExtents,s=o[0],c=o[1],l=o[2],u=r-s,d=r+s,f=i-c,p=i+c,m=a-l,h=a+l,g=t.center,_=g[0],v=g[1],y=g[2],b=t.halfExtents,x=b[0],S=b[1],C=b[2],w=_-x,T=_+x,E=v-S,D=v+S,O=y-C,k=y+C;w<u&&(u=w),T>d&&(d=T),E<f&&(f=E),D>p&&(p=D),O<m&&(m=O),k>h&&(h=k),n[0]=(u+d)*.5,n[1]=(f+p)*.5,n[2]=(m+h)*.5,o[0]=(d-u)*.5,o[1]=(p-f)*.5,o[2]=(h-m)*.5,this.min[0]=u,this.min[1]=f,this.min[2]=m,this.max[0]=d,this.max[1]=p,this.max[2]=h}}},{key:`setFromTransformedAABB`,value:function(e,t){var n=this.center,r=this.halfExtents,i=e.center,a=e.halfExtents,o=t[0],s=t[4],c=t[8],l=t[1],u=t[5],d=t[9],f=t[2],p=t[6],m=t[10],h=Math.abs(o),g=Math.abs(s),_=Math.abs(c),v=Math.abs(l),y=Math.abs(u),b=Math.abs(d),x=Math.abs(f),S=Math.abs(p),C=Math.abs(m);n[0]=t[12]+o*i[0]+s*i[1]+c*i[2],n[1]=t[13]+l*i[0]+u*i[1]+d*i[2],n[2]=t[14]+f*i[0]+p*i[1]+m*i[2],r[0]=h*a[0]+g*a[1]+_*a[2],r[1]=v*a[0]+y*a[1]+b*a[2],r[2]=x*a[0]+S*a[1]+C*a[2],ks(this.min,n,r),ws(this.max,n,r)}},{key:`intersects`,value:function(e){var t=this.getMax(),n=this.getMin(),r=e.getMax(),i=e.getMin();return n[0]<=r[0]&&t[0]>=i[0]&&n[1]<=r[1]&&t[1]>=i[1]&&n[2]<=r[2]&&t[2]>=i[2]}},{key:`intersection`,value:function(t){if(!this.intersects(t))return null;var n=new e,r=Es([0,0,0],this.getMin(),t.getMin()),i=Ds([0,0,0],this.getMax(),t.getMax());return n.setMinMax(r,i),n}},{key:`getNegativeFarPoint`,value:function(e){return e.pnVertexFlag===273?Ts([0,0,0],this.min):e.pnVertexFlag===272?[this.min[0],this.min[1],this.max[2]]:e.pnVertexFlag===257?[this.min[0],this.max[1],this.min[2]]:e.pnVertexFlag===256?[this.min[0],this.max[1],this.max[2]]:e.pnVertexFlag===17?[this.max[0],this.min[1],this.min[2]]:e.pnVertexFlag===16?[this.max[0],this.min[1],this.max[2]]:e.pnVertexFlag===1?[this.max[0],this.max[1],this.min[2]]:[this.max[0],this.max[1],this.max[2]]}},{key:`getPositiveFarPoint`,value:function(e){return e.pnVertexFlag===273?Ts([0,0,0],this.max):e.pnVertexFlag===272?[this.max[0],this.max[1],this.min[2]]:e.pnVertexFlag===257?[this.max[0],this.min[1],this.max[2]]:e.pnVertexFlag===256?[this.max[0],this.min[1],this.min[2]]:e.pnVertexFlag===17?[this.min[0],this.max[1],this.max[2]]:e.pnVertexFlag===16?[this.min[0],this.max[1],this.min[2]]:e.pnVertexFlag===1?[this.min[0],this.min[1],this.max[2]]:[this.min[0],this.min[1],this.min[2]]}}],[{key:`isEmpty`,value:function(e){return!e||e.halfExtents[0]===0&&e.halfExtents[1]===0&&e.halfExtents[2]===0}}])}(),js=function(){function e(t,n){R(this,e),this.distance=t||0,this.normal=n||Or(0,1,0),this.updatePNVertexFlag()}return z(e,[{key:`updatePNVertexFlag`,value:function(){this.pnVertexFlag=(Number(this.normal[0]>=0)<<8)+(Number(this.normal[1]>=0)<<4)+Number(this.normal[2]>=0)}},{key:`distanceToPoint`,value:function(e){return zr(e,this.normal)-this.distance}},{key:`normalize`,value:function(){var e=1/Jr(this.normal);Ir(this.normal,this.normal,e),this.distance*=e}},{key:`intersectsLine`,value:function(e,t,n){var r=this.distanceToPoint(e),i=r/(r-this.distanceToPoint(t)),a=i>=0&&i<=1;return a&&n&&Vr(n,e,t,i),a}}])}(),Ms=function(e){return e[e.OUTSIDE=4294967295]=`OUTSIDE`,e[e.INSIDE=0]=`INSIDE`,e[e.INDETERMINATE=2147483647]=`INDETERMINATE`,e}({}),Ns=function(){function e(t){if(R(this,e),this.planes=[],t)this.planes=t;else for(var n=0;n<6;n++)this.planes.push(new js)}return z(e,[{key:`extractFromVPMatrix`,value:function(e){var t=bn(e,16),n=t[0],r=t[1],i=t[2],a=t[3],o=t[4],s=t[5],c=t[6],l=t[7],u=t[8],d=t[9],f=t[10],p=t[11],m=t[12],h=t[13],g=t[14],_=t[15];Ar(this.planes[0].normal,a-n,l-o,p-u),this.planes[0].distance=_-m,Ar(this.planes[1].normal,a+n,l+o,p+u),this.planes[1].distance=_+m,Ar(this.planes[2].normal,a+r,l+s,p+d),this.planes[2].distance=_+h,Ar(this.planes[3].normal,a-r,l-s,p-d),this.planes[3].distance=_-h,Ar(this.planes[4].normal,a-i,l-c,p-f),this.planes[4].distance=_-g,Ar(this.planes[5].normal,a+i,l+c,p+f),this.planes[5].distance=_+g,this.planes.forEach(function(e){e.normalize(),e.updatePNVertexFlag()})}}])}(),Ps=function(){function e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;R(this,e),this.x=0,this.y=0,this.x=t,this.y=n}return z(e,[{key:`clone`,value:function(){return new e(this.x,this.y)}},{key:`copyFrom`,value:function(e){this.x=e.x,this.y=e.y}}])}(),Fs=function(){function e(t,n,r,i){R(this,e),this.x=t,this.y=n,this.width=r,this.height=i,this.left=t,this.right=t+r,this.top=n,this.bottom=n+i}return z(e,[{key:`toJSON`,value:function(){}}],[{key:`fromRect`,value:function(t){return new e(t.x,t.y,t.width,t.height)}},{key:`applyTransform`,value:function(t,n){var r=Xr(t.x,t.y,0,1),i=Xr(t.x+t.width,t.y,0,1),a=Xr(t.x,t.y+t.height,0,1),o=Xr(t.x+t.width,t.y+t.height,0,1),s=Yr(),c=Yr(),l=Yr(),u=Yr();ei(s,r,n),ei(c,i,n),ei(l,a,n),ei(u,o,n);var d=Math.min(s[0],c[0],l[0],u[0]),f=Math.min(s[1],c[1],l[1],u[1]),p=Math.max(s[0],c[0],l[0],u[0]),m=Math.max(s[1],c[1],l[1],u[1]);return e.fromRect({x:d,y:f,width:p-d,height:m-f})}}])}(),Is=`Method not implemented.`,Ls=`Use document.documentElement instead.`,Rs=`Cannot append a destroyed element.`;function zs(e){return e===void 0?0:e>360||e<-360?e%360:e}var Bs=Tr();function Vs(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;return Array.isArray(e)&&e.length===3?r?Er(e):kr(Bs,e):zi(e)?r?Or(e,t,n):Ar(Bs,e,t,n):r?Or(e[0],e[1]||t,e[2]||n):Ar(Bs,e[0],e[1]||t,e[2]||n)}var Hs=Math.PI/180;function Us(e){return e*Hs}var Ws=180/Math.PI;function Gs(e){return e*Ws}function Ks(e){return 360*e}var qs=Math.PI/2;function Js(e,t){var n=t[0],r=t[1],i=t[2],a=t[3],o=n*n,s=r*r,c=i*i,l=a*a,u=o+s+c+l,d=n*a-r*i;return d>.499995*u?(e[0]=qs,e[1]=2*Math.atan2(r,n),e[2]=0):d<-.499995*u?(e[0]=-qs,e[1]=2*Math.atan2(r,n),e[2]=0):(e[0]=Math.asin(2*(n*i-a*r)),e[1]=Math.atan2(2*(n*a+r*i),1-2*(c+l)),e[2]=Math.atan2(2*(n*r+i*a),1-2*(s+c))),e}function Ys(e,t){var n,r,i=bn($n(Tr(),t),3),a=i[0],o=i[1],s=i[2],c=Math.asin(-t[2]/a);return c<qs?c>-qs?(n=Math.atan2(t[6]/o,t[10]/s),r=Math.atan2(t[1]/a,t[0]/a)):(r=0,n=-Math.atan2(t[4]/o,t[5]/o)):(r=0,n=Math.atan2(t[4]/o,t[5]/o)),e[0]=n,e[1]=c,e[2]=r,e}function Xs(e,t){return t.length===16?Ys(e,t):Js(e,t)}function Zs(e,t,n,r,i){var a=Math.cos(e),o=Math.sin(e);return Tn(r*a,i*o,0,-r*o,i*a,0,t,n,1)}function Qs(e,t,n,r,i,a,o){var s=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,c=2*a,l=n-t,u=r-i,d=c/l,f=c/u,p=(n+t)/l,m=(r+i)/u,h,g,_=o-a,v=o*a;return s?(h=-o/_,g=-v/_):(h=-(o+a)/_,g=-2*v/_),e[0]=d,e[1]=0,e[2]=0,e[3]=0,e[4]=0,e[5]=f,e[6]=0,e[7]=0,e[8]=p,e[9]=m,e[10]=h,e[11]=-1,e[12]=0,e[13]=0,e[14]=g,e[15]=0,e}function $s(e){var t=e[0],n=e[1],r=e[3],i=e[4],a=Math.sqrt(t*t+n*n),o=Math.sqrt(r*r+i*i);if(t*i-n*r<0&&(t<i?a=-a:o=-o),a){var s=1/a;t*=s,n*=s}if(o){var c=1/o;r*=c,i*=c}var l=Gs(Math.atan2(n,t));return[e[6],e[7],a,o,l]}var ec=Dn(),tc=Dn(),nc=Yr(),rc=[Tr(),Tr(),Tr()],ic=Tr();function ac(e,t,n,r,i,a){if(!oc(ec,e)||(kn(tc,ec),tc[3]=0,tc[7]=0,tc[11]=0,tc[15]=1,Math.abs(In(tc))<1e-8))return!1;var o=ec[3],s=ec[7],c=ec[11],l=ec[12],u=ec[13],d=ec[14],f=ec[15];if(o!==0||s!==0||c!==0){if(nc[0]=o,nc[1]=s,nc[2]=c,nc[3]=f,!Pn(tc,tc))return!1;Nn(tc,tc),ei(i,nc,tc)}else i[0]=i[1]=i[2]=0,i[3]=1;if(t[0]=l,t[1]=u,t[2]=d,sc(rc,ec),n[0]=Dr(rc[0]),Rr(rc[0],rc[0]),r[0]=zr(rc[0],rc[1]),cc(rc[1],rc[1],rc[0],1,-r[0]),n[1]=Dr(rc[1]),Rr(rc[1],rc[1]),r[0]/=n[1],r[1]=zr(rc[0],rc[2]),cc(rc[2],rc[2],rc[0],1,-r[1]),r[2]=zr(rc[1],rc[2]),cc(rc[2],rc[2],rc[1],1,-r[2]),n[2]=Dr(rc[2]),Rr(rc[2],rc[2]),r[1]/=n[2],r[2]/=n[2],Br(ic,rc[1],rc[2]),zr(rc[0],ic)<0)for(var p=0;p<3;p++)n[p]*=-1,rc[p][0]*=-1,rc[p][1]*=-1,rc[p][2]*=-1;return a[0]=.5*Math.sqrt(Math.max(1+rc[0][0]-rc[1][1]-rc[2][2],0)),a[1]=.5*Math.sqrt(Math.max(1-rc[0][0]+rc[1][1]-rc[2][2],0)),a[2]=.5*Math.sqrt(Math.max(1-rc[0][0]-rc[1][1]+rc[2][2],0)),a[3]=.5*Math.sqrt(Math.max(1+rc[0][0]+rc[1][1]+rc[2][2],0)),rc[2][1]>rc[1][2]&&(a[0]=-a[0]),rc[0][2]>rc[2][0]&&(a[1]=-a[1]),rc[1][0]>rc[0][1]&&(a[2]=-a[2]),!0}function oc(e,t){var n=t[15];if(n===0)return!1;for(var r=1/n,i=0;i<16;i++)e[i]=t[i]*r;return!0}function sc(e,t){e[0][0]=t[0],e[0][1]=t[1],e[0][2]=t[2],e[1][0]=t[4],e[1][1]=t[5],e[1][2]=t[6],e[2][0]=t[8],e[2][1]=t[9],e[2][2]=t[10]}function cc(e,t,n,r,i){e[0]=t[0]*r+n[0]*i,e[1]=t[1]*r+n[1]*i,e[2]=t[2]*r+n[2]*i}var lc=function(e){return e[e.ORBITING=0]=`ORBITING`,e[e.EXPLORING=1]=`EXPLORING`,e[e.TRACKING=2]=`TRACKING`,e}({}),uc=function(e){return e[e.DEFAULT=0]=`DEFAULT`,e[e.ROTATIONAL=1]=`ROTATIONAL`,e[e.TRANSLATIONAL=2]=`TRANSLATIONAL`,e[e.CINEMATIC=3]=`CINEMATIC`,e}({}),dc=function(e){return e[e.ORTHOGRAPHIC=0]=`ORTHOGRAPHIC`,e[e.PERSPECTIVE=1]=`PERSPECTIVE`,e}({}),fc={UPDATED:`updated`},pc=2e-4,mc=function(){function e(){R(this,e),this.clipSpaceNearZ=xs.NEGATIVE_ONE,this.eventEmitter=new xn,this.matrix=Dn(),this.right=Or(1,0,0),this.up=Or(0,1,0),this.forward=Or(0,0,1),this.position=Or(0,0,1),this.focalPoint=Or(0,0,0),this.distanceVector=Or(0,0,-1),this.distance=1,this.azimuth=0,this.elevation=0,this.roll=0,this.relAzimuth=0,this.relElevation=0,this.relRoll=0,this.dollyingStep=0,this.maxDistance=1/0,this.minDistance=-1/0,this.zoom=1,this.rotateWorld=!1,this.fov=30,this.near=.1,this.far=1e3,this.aspect=1,this.projectionMatrix=Dn(),this.projectionMatrixInverse=Dn(),this.jitteredProjectionMatrix=void 0,this.enableUpdate=!0,this.type=lc.EXPLORING,this.trackingMode=uc.DEFAULT,this.projectionMode=dc.PERSPECTIVE,this.frustum=new Ns,this.orthoMatrix=Dn()}return z(e,[{key:`isOrtho`,value:function(){return this.projectionMode===dc.ORTHOGRAPHIC}},{key:`getProjectionMode`,value:function(){return this.projectionMode}},{key:`getPerspective`,value:function(){return this.jitteredProjectionMatrix||this.projectionMatrix}},{key:`getPerspectiveInverse`,value:function(){return this.projectionMatrixInverse}},{key:`getFrustum`,value:function(){return this.frustum}},{key:`getPosition`,value:function(){return this.position}},{key:`getFocalPoint`,value:function(){return this.focalPoint}},{key:`getDollyingStep`,value:function(){return this.dollyingStep}},{key:`getNear`,value:function(){return this.near}},{key:`getFar`,value:function(){return this.far}},{key:`getZoom`,value:function(){return this.zoom}},{key:`getOrthoMatrix`,value:function(){return this.orthoMatrix}},{key:`getView`,value:function(){return this.view}},{key:`setEnableUpdate`,value:function(e){this.enableUpdate=e}},{key:`setType`,value:function(e,t){return this.type=e,this.type===lc.EXPLORING?this.setWorldRotation(!0):this.setWorldRotation(!1),this._getAngles(),this.type===lc.TRACKING&&t!==void 0&&this.setTrackingMode(t),this}},{key:`setProjectionMode`,value:function(e){return this.projectionMode=e,this}},{key:`setTrackingMode`,value:function(e){if(this.type!==lc.TRACKING)throw Error(`Impossible to set a tracking mode if the camera is not of tracking type`);return this.trackingMode=e,this}},{key:`setWorldRotation`,value:function(e){return this.rotateWorld=e,this._getAngles(),this}},{key:`getViewTransform`,value:function(){return Pn(Dn(),this.matrix)}},{key:`getWorldTransform`,value:function(){return this.matrix}},{key:`jitterProjectionMatrix`,value:function(e,t){var n=Wn(Dn(),[e,t,0]);this.jitteredProjectionMatrix=Ln(Dn(),n,this.projectionMatrix)}},{key:`clearJitterProjectionMatrix`,value:function(){this.jitteredProjectionMatrix=void 0}},{key:`setMatrix`,value:function(e){return this.matrix=e,this._update(),this}},{key:`setProjectionMatrix`,value:function(e){this.projectionMatrix=e}},{key:`setFov`,value:function(e){return this.setPerspective(this.near,this.far,e,this.aspect),this}},{key:`setAspect`,value:function(e){return this.setPerspective(this.near,this.far,this.fov,e),this}},{key:`setNear`,value:function(e){return this.projectionMode===dc.PERSPECTIVE?this.setPerspective(e,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,e,this.far),this}},{key:`setFar`,value:function(e){return this.projectionMode===dc.PERSPECTIVE?this.setPerspective(this.near,e,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,e),this}},{key:`setViewOffset`,value:function(e,t,n,r,i,a){return this.aspect=e/t,this.view===void 0&&(this.view={enabled:!0,fullWidth:1,fullHeight:1,offsetX:0,offsetY:0,width:1,height:1}),this.view.enabled=!0,this.view.fullWidth=e,this.view.fullHeight=t,this.view.offsetX=n,this.view.offsetY=r,this.view.width=i,this.view.height=a,this.projectionMode===dc.PERSPECTIVE?this.setPerspective(this.near,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far),this}},{key:`clearViewOffset`,value:function(){return this.view!==void 0&&(this.view.enabled=!1),this.projectionMode===dc.PERSPECTIVE?this.setPerspective(this.near,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far),this}},{key:`setZoom`,value:function(e){return this.zoom=e,this.projectionMode===dc.ORTHOGRAPHIC?this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far):this.projectionMode===dc.PERSPECTIVE&&this.setPerspective(this.near,this.far,this.fov,this.aspect),this}},{key:`setZoomByViewportPoint`,value:function(e,t){var n=this.canvas.viewport2Canvas({x:t[0],y:t[1]}),r=n.x,i=n.y,a=this.roll;this.rotate(0,0,-a),this.setPosition(r,i),this.setFocalPoint(r,i),this.setZoom(e),this.rotate(0,0,a);var o=this.canvas.viewport2Canvas({x:t[0],y:t[1]}),s=o.x,c=o.y,l=Or(s-r,c-i,0),u=zr(l,this.right)/Dr(this.right),d=zr(l,this.up)/Dr(this.up),f=bn(this.getPosition(),2),p=f[0],m=f[1],h=bn(this.getFocalPoint(),2),g=h[0],_=h[1];return this.setPosition(p-u,m-d),this.setFocalPoint(g-u,_-d),this}},{key:`setPerspective`,value:function(e,t,n,r){var i;this.projectionMode=dc.PERSPECTIVE,this.fov=n,this.near=e,this.far=t,this.aspect=r;var a=this.near*Math.tan(Us(.5*this.fov))/this.zoom,o=2*a,s=this.aspect*o,c=-.5*s;if((i=this.view)!=null&&i.enabled){var l=this.view.fullWidth,u=this.view.fullHeight;c+=this.view.offsetX*s/l,a-=this.view.offsetY*o/u,s*=this.view.width/l,o*=this.view.height/u}return Qs(this.projectionMatrix,c,c+s,a-o,a,e,this.far,this.clipSpaceNearZ===xs.ZERO),Pn(this.projectionMatrixInverse,this.projectionMatrix),this.triggerUpdate(),this}},{key:`setOrthographic`,value:function(e,t,n,r,i,a){var o;this.projectionMode=dc.ORTHOGRAPHIC,this.rright=t,this.left=e,this.top=n,this.bottom=r,this.near=i,this.far=a;var s=(this.rright-this.left)/(2*this.zoom),c=(this.top-this.bottom)/(2*this.zoom),l=(this.rright+this.left)/2,u=(this.top+this.bottom)/2,d=l-s,f=l+s,p=u+c,m=u-c;if((o=this.view)!=null&&o.enabled){var h=(this.rright-this.left)/this.view.fullWidth/this.zoom,g=(this.top-this.bottom)/this.view.fullHeight/this.zoom;d+=h*this.view.offsetX,f=d+h*this.view.width,p-=g*this.view.offsetY,m=p-g*this.view.height}return this.clipSpaceNearZ===xs.NEGATIVE_ONE?dr(this.projectionMatrix,d,f,p,m,i,a):fr(this.projectionMatrix,d,f,p,m,i,a),Pn(this.projectionMatrixInverse,this.projectionMatrix),this._getOrthoMatrix(),this.triggerUpdate(),this}},{key:`setPosition`,value:function(e){var t=Vs(e,arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.position[1],arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.position[2]);return this._setPosition(t),this.setFocalPoint(this.focalPoint),this.triggerUpdate(),this}},{key:`setFocalPoint`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.focalPoint[1],n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.focalPoint[2],r=Or(0,1,0);if(this.focalPoint=Vs(e,t,n),this.trackingMode===uc.CINEMATIC){var i=Mr(Tr(),this.focalPoint,this.position);e=i[0],t=i[1],n=i[2];var a=Dr(i),o=Gs(Math.asin(t/a)),s=90+Gs(Math.atan2(n,e)),c=Dn();Hn(c,c,Us(s)),Vn(c,c,Us(o)),r=Hr(Tr(),[0,1,0],c)}return Pn(this.matrix,pr(Dn(),this.position,this.focalPoint,r)),this._getAxes(),this._getDistance(),this._getAngles(),this.triggerUpdate(),this}},{key:`getDistance`,value:function(){return this.distance}},{key:`getDistanceVector`,value:function(){return this.distanceVector}},{key:`setDistance`,value:function(e){if(this.distance===e||e<0)return this;this.distance=e,this.distance<pc&&(this.distance=pc),this.dollyingStep=this.distance/100;var t=Tr();e=this.distance;var n=this.forward,r=this.focalPoint;return t[0]=e*n[0]+r[0],t[1]=e*n[1]+r[1],t[2]=e*n[2]+r[2],this._setPosition(t),this.triggerUpdate(),this}},{key:`setMaxDistance`,value:function(e){return this.maxDistance=e,this}},{key:`setMinDistance`,value:function(e){return this.minDistance=e,this}},{key:`setAzimuth`,value:function(e){return this.azimuth=zs(e),this.computeMatrix(),this._getAxes(),this.type===lc.ORBITING||this.type===lc.EXPLORING?this._getPosition():this.type===lc.TRACKING&&this._getFocalPoint(),this.triggerUpdate(),this}},{key:`getAzimuth`,value:function(){return this.azimuth}},{key:`setElevation`,value:function(e){return this.elevation=zs(e),this.computeMatrix(),this._getAxes(),this.type===lc.ORBITING||this.type===lc.EXPLORING?this._getPosition():this.type===lc.TRACKING&&this._getFocalPoint(),this.triggerUpdate(),this}},{key:`getElevation`,value:function(){return this.elevation}},{key:`setRoll`,value:function(e){return this.roll=zs(e),this.computeMatrix(),this._getAxes(),this.type===lc.ORBITING||this.type===lc.EXPLORING?this._getPosition():this.type===lc.TRACKING&&this._getFocalPoint(),this.triggerUpdate(),this}},{key:`getRoll`,value:function(){return this.roll}},{key:`_update`,value:function(){this._getAxes(),this._getPosition(),this._getDistance(),this._getAngles(),this._getOrthoMatrix(),this.triggerUpdate()}},{key:`computeMatrix`,value:function(){var e=ni(ti(),[0,0,1],Us(this.roll));Mn(this.matrix);var t=ni(ti(),[1,0,0],Us((this.rotateWorld&&this.type!==lc.TRACKING||this.type===lc.TRACKING?1:-1)*this.elevation)),n=ni(ti(),[0,1,0],Us((this.rotateWorld&&this.type!==lc.TRACKING||this.type===lc.TRACKING?1:-1)*this.azimuth)),r=ri(ti(),n,t);r=ri(ti(),r,e);var i=ir(Dn(),r);this.type===lc.ORBITING||this.type===lc.EXPLORING?(Rn(this.matrix,this.matrix,this.focalPoint),Ln(this.matrix,this.matrix,i),Rn(this.matrix,this.matrix,[0,0,this.distance])):this.type===lc.TRACKING&&(Rn(this.matrix,this.matrix,this.position),Ln(this.matrix,this.matrix,i))}},{key:`_setPosition`,value:function(e,t,n){this.position=Vs(e,t,n);var r=this.matrix;r[12]=this.position[0],r[13]=this.position[1],r[14]=this.position[2],r[15]=1,this._getOrthoMatrix()}},{key:`_getAxes`,value:function(){kr(this.right,Vs(ei(Yr(),[1,0,0,0],this.matrix))),kr(this.up,Vs(ei(Yr(),[0,1,0,0],this.matrix))),kr(this.forward,Vs(ei(Yr(),[0,0,1,0],this.matrix))),Rr(this.right,this.right),Rr(this.up,this.up),Rr(this.forward,this.forward)}},{key:`_getAngles`,value:function(){var e=this.distanceVector[0],t=this.distanceVector[1],n=this.distanceVector[2],r=Dr(this.distanceVector);if(r===0){this.elevation=0,this.azimuth=0;return}this.type===lc.TRACKING||this.rotateWorld?(this.elevation=Gs(Math.asin(t/r)),this.azimuth=Gs(Math.atan2(-e,-n))):(this.elevation=-Gs(Math.asin(t/r)),this.azimuth=-Gs(Math.atan2(-e,-n)))}},{key:`_getPosition`,value:function(){kr(this.position,Vs(ei(Yr(),[0,0,0,1],this.matrix))),this._getDistance()}},{key:`_getFocalPoint`,value:function(){Ur(this.distanceVector,[0,0,-this.distance],wn(Cn(),this.matrix)),jr(this.focalPoint,this.position,this.distanceVector),this._getDistance()}},{key:`_getDistance`,value:function(){this.distanceVector=Mr(Tr(),this.focalPoint,this.position),this.distance=Dr(this.distanceVector),this.dollyingStep=this.distance/100}},{key:`_getOrthoMatrix`,value:function(){if(this.projectionMode===dc.ORTHOGRAPHIC){var e=this.position,t=ni(ti(),[0,0,1],-this.roll*Math.PI/180);rr(this.orthoMatrix,t,Or((this.rright-this.left)/2-e[0],(this.top-this.bottom)/2-e[1],0),Or(this.zoom,this.zoom,1),e)}}},{key:`triggerUpdate`,value:function(){if(this.enableUpdate){var e=this.getViewTransform(),t=Ln(Dn(),this.getPerspective(),e);this.getFrustum().extractFromVPMatrix(t),this.eventEmitter.emit(fc.UPDATED)}}},{key:`rotate`,value:function(e,t,n){throw Error(Is)}},{key:`pan`,value:function(e,t){throw Error(Is)}},{key:`dolly`,value:function(e){throw Error(Is)}},{key:`createLandmark`,value:function(e,t){throw Error(Is)}},{key:`gotoLandmark`,value:function(e,t){throw Error(Is)}},{key:`cancelLandmarkAnimation`,value:function(){throw Error(Is)}}])}(),hc=function(e){return e[e.Standard=0]=`Standard`,e}({}),gc=function(e){return e[e.ADDED=0]=`ADDED`,e[e.REMOVED=1]=`REMOVED`,e[e.Z_INDEX_CHANGED=2]=`Z_INDEX_CHANGED`,e}({}),_c=Tr(),vc=Dn(),yc=ti();function bc(e){if(e.localDirtyFlag){if(e.localSkew[0]!==0||e.localSkew[1]!==0){rr(e.localTransform,e.localRotation,e.localPosition,Or(1,1,1),e.origin),(e.localSkew[0]!==0||e.localSkew[1]!==0)&&(Mn(vc),vc[4]=Math.tan(e.localSkew[0]),vc[1]=Math.tan(e.localSkew[1]),Ln(e.localTransform,e.localTransform,vc));var t=rr(vc,ui(yc,0,0,0,1),Ar(_c,1,1,1),e.localScale,e.origin);Ln(e.localTransform,e.localTransform,t)}else{var n=e.localTransform,r=e.localPosition,i=e.localRotation,a=e.localScale,o=e.origin,s=r[0]!==0||r[1]!==0||r[2]!==0,c=i[3]!==1||i[0]!==0||i[1]!==0||i[2]!==0,l=a[0]!==1||a[1]!==1||a[2]!==1,u=o[0]!==0||o[1]!==0||o[2]!==0;!c&&!l&&!u?s?Wn(n,r):Mn(n):rr(n,i,r,a,o)}e.localDirtyFlag=!1}}function xc(e,t){e.dirtyFlag&&=(t?Ln(e.worldTransform,t.worldTransform,e.localTransform):kn(e.worldTransform,e.localTransform),!1)}var Sc={absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:new Fs(0,0,0,0)},K=function(e){return e.COORDINATE=`<coordinate>`,e.COLOR=`<color>`,e.PAINT=`<paint>`,e.NUMBER=`<number>`,e.ANGLE=`<angle>`,e.OPACITY_VALUE=`<opacity-value>`,e.SHADOW_BLUR=`<shadow-blur>`,e.LENGTH=`<length>`,e.PERCENTAGE=`<percentage>`,e.LENGTH_PERCENTAGE=`<length> | <percentage>`,e.LENGTH_PERCENTAGE_12=`[<length> | <percentage>]{1,2}`,e.LENGTH_PERCENTAGE_14=`[<length> | <percentage>]{1,4}`,e.LIST_OF_POINTS=`<list-of-points>`,e.PATH=`<path>`,e.FILTER=`<filter>`,e.Z_INDEX=`<z-index>`,e.OFFSET_DISTANCE=`<offset-distance>`,e.DEFINED_PATH=`<defined-path>`,e.MARKER=`<marker>`,e.TRANSFORM=`<transform>`,e.TRANSFORM_ORIGIN=`<transform-origin>`,e.TEXT=`<text>`,e.TEXT_TRANSFORM=`<text-transform>`,e}({});function Cc(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function wc(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function Tc(){}var Ec=.7,Dc=1/Ec,Oc=`\\s*([+-]?\\d+)\\s*`,kc=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*`,Ac=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*`,jc=/^#([0-9a-f]{3,8})$/,Mc=RegExp(`^rgb\\(${Oc},${Oc},${Oc}\\)$`),Nc=RegExp(`^rgb\\(${Ac},${Ac},${Ac}\\)$`),q=RegExp(`^rgba\\(${Oc},${Oc},${Oc},${kc}\\)$`),Pc=RegExp(`^rgba\\(${Ac},${Ac},${Ac},${kc}\\)$`),Fc=RegExp(`^hsl\\(${kc},${Ac},${Ac}\\)$`),Ic=RegExp(`^hsla\\(${kc},${Ac},${Ac},${kc}\\)$`),Lc={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Cc(Tc,Hc,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Rc,formatHex:Rc,formatHex8:zc,formatHsl:Bc,formatRgb:Vc,toString:Vc});function Rc(){return this.rgb().formatHex()}function zc(){return this.rgb().formatHex8()}function Bc(){return tl(this).formatHsl()}function Vc(){return this.rgb().formatRgb()}function Hc(e){var t,n;return e=(e+``).trim().toLowerCase(),(t=jc.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?Uc(t):n===3?new qc(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Wc(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Wc(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=Mc.exec(e))?new qc(t[1],t[2],t[3],1):(t=Nc.exec(e))?new qc(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=q.exec(e))?Wc(t[1],t[2],t[3],t[4]):(t=Pc.exec(e))?Wc(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=Fc.exec(e))?el(t[1],t[2]/100,t[3]/100,1):(t=Ic.exec(e))?el(t[1],t[2]/100,t[3]/100,t[4]):Lc.hasOwnProperty(e)?Uc(Lc[e]):e===`transparent`?new qc(NaN,NaN,NaN,0):null}function Uc(e){return new qc(e>>16&255,e>>8&255,e&255,1)}function Wc(e,t,n,r){return r<=0&&(e=t=n=NaN),new qc(e,t,n,r)}function Gc(e){return e instanceof Tc||(e=Hc(e)),e?(e=e.rgb(),new qc(e.r,e.g,e.b,e.opacity)):new qc}function Kc(e,t,n,r){return arguments.length===1?Gc(e):new qc(e,t,n,r??1)}function qc(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Cc(qc,Kc,wc(Tc,{brighter(e){return e=e==null?Dc:Dc**+e,new qc(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Ec:Ec**+e,new qc(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new qc(Qc(this.r),Qc(this.g),Qc(this.b),Zc(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:Jc,formatHex:Jc,formatHex8:Yc,formatRgb:Xc,toString:Xc}));function Jc(){return`#${$c(this.r)}${$c(this.g)}${$c(this.b)}`}function Yc(){return`#${$c(this.r)}${$c(this.g)}${$c(this.b)}${$c((isNaN(this.opacity)?1:this.opacity)*255)}`}function Xc(){let e=Zc(this.opacity);return`${e===1?`rgb(`:`rgba(`}${Qc(this.r)}, ${Qc(this.g)}, ${Qc(this.b)}${e===1?`)`:`, ${e})`}`}function Zc(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Qc(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function $c(e){return e=Qc(e),(e<16?`0`:``)+e.toString(16)}function el(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new rl(e,t,n,r)}function tl(e){if(e instanceof rl)return new rl(e.h,e.s,e.l,e.opacity);if(e instanceof Tc||(e=Hc(e)),!e)return new rl;if(e instanceof rl)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n<r)*6:n===a?(r-t)/s+2:(t-n)/s+4,s/=c<.5?a+i:2-a-i,o*=60):s=c>0&&c<1?0:o,new rl(o,s,c,e.opacity)}function nl(e,t,n,r){return arguments.length===1?tl(e):new rl(e,t,n,r??1)}function rl(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Cc(rl,nl,wc(Tc,{brighter(e){return e=e==null?Dc:Dc**+e,new rl(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Ec:Ec**+e,new rl(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new qc(ol(e>=240?e-240:e+120,i,r),ol(e,i,r),ol(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new rl(il(this.h),al(this.s),al(this.l),Zc(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=Zc(this.opacity);return`${e===1?`hsl(`:`hsla(`}${il(this.h)}, ${al(this.s)*100}%, ${al(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function il(e){return e=(e||0)%360,e<0?e+360:e}function al(e){return Math.max(0,Math.min(1,e||0))}function ol(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}function sl(e,t){if(typeof e!=`function`||t!=null&&typeof t!=`function`)throw TypeError(`Expected a function`);var n=function(){var r=[...arguments],i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=e.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(sl.Cache||Map),sl.cacheList.push(n.cache),n}sl.Cache=Map,sl.cacheList=[],sl.clearCache=function(){sl.cacheList.forEach(function(e){return e.clear()})};var J=function(e){return e[e.kUnknown=0]=`kUnknown`,e[e.kNumber=1]=`kNumber`,e[e.kPercentage=2]=`kPercentage`,e[e.kEms=3]=`kEms`,e[e.kPixels=4]=`kPixels`,e[e.kRems=5]=`kRems`,e[e.kDegrees=6]=`kDegrees`,e[e.kRadians=7]=`kRadians`,e[e.kGradians=8]=`kGradians`,e[e.kTurns=9]=`kTurns`,e[e.kMilliseconds=10]=`kMilliseconds`,e[e.kSeconds=11]=`kSeconds`,e[e.kInteger=12]=`kInteger`,e}({}),cl=function(e){return e[e.kUNumber=0]=`kUNumber`,e[e.kUPercent=1]=`kUPercent`,e[e.kULength=2]=`kULength`,e[e.kUAngle=3]=`kUAngle`,e[e.kUTime=4]=`kUTime`,e[e.kUOther=5]=`kUOther`,e}({}),ll=function(e){return e[e.kYes=0]=`kYes`,e[e.kNo=1]=`kNo`,e}({}),ul=function(e){return e[e.kYes=0]=`kYes`,e[e.kNo=1]=`kNo`,e}({}),dl=[{name:`em`,unit_type:J.kEms},{name:`px`,unit_type:J.kPixels},{name:`deg`,unit_type:J.kDegrees},{name:`rad`,unit_type:J.kRadians},{name:`grad`,unit_type:J.kGradians},{name:`ms`,unit_type:J.kMilliseconds},{name:`s`,unit_type:J.kSeconds},{name:`rem`,unit_type:J.kRems},{name:`turn`,unit_type:J.kTurns}],fl=function(e){return e[e.kUnknownType=0]=`kUnknownType`,e[e.kUnparsedType=1]=`kUnparsedType`,e[e.kKeywordType=2]=`kKeywordType`,e[e.kUnitType=3]=`kUnitType`,e[e.kSumType=4]=`kSumType`,e[e.kProductType=5]=`kProductType`,e[e.kNegateType=6]=`kNegateType`,e[e.kInvertType=7]=`kInvertType`,e[e.kMinType=8]=`kMinType`,e[e.kMaxType=9]=`kMaxType`,e[e.kClampType=10]=`kClampType`,e[e.kTransformType=11]=`kTransformType`,e[e.kPositionType=12]=`kPositionType`,e[e.kURLImageType=13]=`kURLImageType`,e[e.kColorType=14]=`kColorType`,e[e.kUnsupportedColorType=15]=`kUnsupportedColorType`,e}({}),pl=function(e){return dl.find(function(t){return t.name===e}).unit_type},ml=function(e){return e?e===`number`?J.kNumber:e===`percent`||e===`%`?J.kPercentage:pl(e):J.kUnknown},hl=function(e){switch(e){case J.kNumber:case J.kInteger:return cl.kUNumber;case J.kPercentage:return cl.kUPercent;case J.kPixels:return cl.kULength;case J.kMilliseconds:case J.kSeconds:return cl.kUTime;case J.kDegrees:case J.kRadians:case J.kGradians:case J.kTurns:return cl.kUAngle;default:return cl.kUOther}},gl=function(e){switch(e){case cl.kUNumber:return J.kNumber;case cl.kULength:return J.kPixels;case cl.kUPercent:return J.kPercentage;case cl.kUTime:return J.kSeconds;case cl.kUAngle:return J.kDegrees;default:return J.kUnknown}},_l=function(e){var t=1;switch(e){case J.kPixels:case J.kDegrees:case J.kSeconds:break;case J.kMilliseconds:t=.001;break;case J.kRadians:t=180/Math.PI;break;case J.kGradians:t=.9;break;case J.kTurns:t=360;break}return t},vl=function(e){switch(e){case J.kNumber:case J.kInteger:return``;case J.kPercentage:return`%`;case J.kEms:return`em`;case J.kRems:return`rem`;case J.kPixels:return`px`;case J.kDegrees:return`deg`;case J.kRadians:return`rad`;case J.kGradians:return`grad`;case J.kMilliseconds:return`ms`;case J.kSeconds:return`s`;case J.kTurns:return`turn`}return``},yl=function(){function e(){R(this,e)}return z(e,[{key:`toString`,value:function(){return this.buildCSSText(ll.kNo,ul.kNo,``)}},{key:`isNumericValue`,value:function(){return this.getType()>=fl.kUnitType&&this.getType()<=fl.kClampType}}],[{key:`isAngle`,value:function(e){return e===J.kDegrees||e===J.kRadians||e===J.kGradians||e===J.kTurns}},{key:`isLength`,value:function(e){return e>=J.kEms&&e<J.kDegrees}},{key:`isRelativeUnit`,value:function(e){return e===J.kPercentage||e===J.kEms||e===J.kRems}},{key:`isTime`,value:function(e){return e===J.kSeconds||e===J.kMilliseconds}}])}(),bl=function(e){function t(e){var n;return R(this,t),n=mn(this,t),n.colorSpace=e,n}return gn(t,e),z(t,[{key:`getType`,value:function(){return fl.kColorType}},{key:`to`,value:function(e){return this}}])}(yl),xl=function(e){return e[e.Constant=0]=`Constant`,e[e.LinearGradient=1]=`LinearGradient`,e[e.RadialGradient=2]=`RadialGradient`,e}({}),Sl=function(e){function t(e,n){var r;return R(this,t),r=mn(this,t),r.type=e,r.value=n,r}return gn(t,e),z(t,[{key:`clone`,value:function(){return new t(this.type,this.value)}},{key:`buildCSSText`,value:function(e,t,n){return n}},{key:`getType`,value:function(){return fl.kColorType}}])}(yl),Cl=function(e){function t(e){var n;return R(this,t),n=mn(this,t),n.value=e,n}return gn(t,e),z(t,[{key:`clone`,value:function(){return new t(this.value)}},{key:`getType`,value:function(){return fl.kKeywordType}},{key:`buildCSSText`,value:function(e,t,n){return n+this.value}}])}(yl),wl=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:``,n=``;return n=Number.isFinite(e)?`NaN`:e>0?`infinity`:`-infinity`,n+=t},Tl=function(e){return gl(hl(e))},El=function(e){function t(e){var n,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:J.kNumber;R(this,t),n=mn(this,t);var i=typeof r==`string`?ml(r):r;return n.unit=i,n.value=e,n}return gn(t,e),z(t,[{key:`clone`,value:function(){return new t(this.value,this.unit)}},{key:`equals`,value:function(e){var t=e;return this.value===t.value&&this.unit===t.unit}},{key:`getType`,value:function(){return fl.kUnitType}},{key:`convertTo`,value:function(e){if(this.unit===e)return new t(this.value,this.unit);var n=Tl(this.unit);if(n!==Tl(e)||n===J.kUnknown)return null;var r=_l(this.unit)/_l(e);return new t(this.value*r,e)}},{key:`buildCSSText`,value:function(e,t,n){var r;switch(this.unit){case J.kUnknown:break;case J.kInteger:r=Number(this.value).toFixed(0);break;case J.kNumber:case J.kPercentage:case J.kEms:case J.kRems:case J.kPixels:case J.kDegrees:case J.kRadians:case J.kGradians:case J.kMilliseconds:case J.kSeconds:case J.kTurns:var i=-999999,a=999999,o=this.value,s=vl(this.unit);if(o<i||o>a){var c=vl(this.unit);r=!Number.isFinite(o)||Number.isNaN(o)?wl(o,c):o+(c||``)}else r=`${o}${s}`}return n+=r,n}}])}(yl),Dl=new El(0,`px`);new El(1,`px`);var Ol=new El(0,`deg`),kl=function(e){function t(e,n,r){var i,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;return R(this,t),i=mn(this,t,[`rgb`]),i.r=e,i.g=n,i.b=r,i.alpha=a,i.isNone=o,i}return gn(t,e),z(t,[{key:`clone`,value:function(){return new t(this.r,this.g,this.b,this.alpha)}},{key:`buildCSSText`,value:function(e,t,n){return`${n}rgba(${this.r},${this.g},${this.b},${this.alpha})`}}])}(bl),Al=new Cl(`unset`),jl={"":Al,unset:Al,initial:new Cl(`initial`),inherit:new Cl(`inherit`)},Ml=function(e){return jl[e]||(jl[e]=new Cl(e)),jl[e]},Nl=new kl(0,0,0,0,!0),Pl=new kl(0,0,0,0),Fl=sl(function(e,t,n,r){return new kl(e,t,n,r)},function(e,t,n,r){return`rgba(${e},${t},${n},${r})`}),Il=function(e){return new El(e,arguments.length>1&&arguments[1]!==void 0?arguments[1]:J.kNumber)};new El(50,`%`);function Ll(e){var t=e.type,n=e.value;return t===`hex`?`#${n}`:t===`literal`?n:t===`rgb`?`rgb(${n.join(`,`)})`:`rgba(${n.join(`,`)})`}var Rl=function(){var e={linearGradient:/^(linear\-gradient)/i,repeatingLinearGradient:/^(repeating\-linear\-gradient)/i,radialGradient:/^(radial\-gradient)/i,repeatingRadialGradient:/^(repeating\-radial\-gradient)/i,conicGradient:/^(conic\-gradient)/i,sideOrCorner:/^to (left (top|bottom)|right (top|bottom)|top (left|right)|bottom (left|right)|left|right|top|bottom)/i,extentKeywords:/^(closest\-side|closest\-corner|farthest\-side|farthest\-corner|contain|cover)/,positionKeywords:/^(left|center|right|top|bottom)/i,pixelValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))px/,percentageValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))\%/,emValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))em/,angleValue:/^(-?(([0-9]*\.[0-9]+)|([0-9]+\.?)))deg/,startCall:/^\(/,endCall:/^\)/,comma:/^,/,hexColor:/^\#([0-9a-fA-F]+)/,literalColor:/^([a-zA-Z]+)/,rgbColor:/^rgb/i,rgbaColor:/^rgba/i,number:/^(([0-9]*\.[0-9]+)|([0-9]+\.?))/},t=``;function n(e){throw Error(`${t}: ${e}`)}function r(){var e=i();return t.length>0&&n(`Invalid input not EOF`),e}function i(){return y(a)}function a(){return o(`linear-gradient`,e.linearGradient,c)||o(`repeating-linear-gradient`,e.repeatingLinearGradient,c)||o(`radial-gradient`,e.radialGradient,d)||o(`repeating-radial-gradient`,e.repeatingRadialGradient,d)||o(`conic-gradient`,e.conicGradient,d)}function o(t,r,i){return s(r,function(r){var a=i();return a&&(j(e.comma)||n(`Missing comma before color stops`)),{type:t,orientation:a,colorStops:y(b)}})}function s(t,r){var i=j(t);if(i){j(e.startCall)||n(`Missing (`);var a=r(i);return j(e.endCall)||n(`Missing )`),a}}function c(){return l()||u()}function l(){return A(`directional`,e.sideOrCorner,1)}function u(){return A(`angular`,e.angleValue,1)}function d(){var n,r=f(),i;return r&&(n=[],n.push(r),i=t,j(e.comma)&&(r=f(),r?n.push(r):t=i)),n}function f(){var e=p()||m();if(e)e.at=g();else{var t=h();if(t){e=t;var n=g();n&&(e.at=n)}else{var r=_();r&&(e={type:`default-radial`,at:r})}}return e}function p(){var e=A(`shape`,/^(circle)/i,0);return e&&(e.style=k()||h()),e}function m(){var e=A(`shape`,/^(ellipse)/i,0);return e&&(e.style=D()||h()),e}function h(){return A(`extent-keyword`,e.extentKeywords,1)}function g(){if(A(`position`,/^at/,0)){var e=_();return e||n(`Missing positioning value`),e}}function _(){var e=v();if(e.x||e.y)return{type:`position`,value:e}}function v(){return{x:D(),y:D()}}function y(t){var r=t(),i=[];if(r)for(i.push(r);j(e.comma);)r=t(),r?i.push(r):n(`One extra comma`);return i}function b(){var e=x();return e||n(`Expected color definition`),e.length=D(),e}function x(){return C()||T()||w()||S()}function S(){return A(`literal`,e.literalColor,0)}function C(){return A(`hex`,e.hexColor,1)}function w(){return s(e.rgbColor,function(){return{type:`rgb`,value:y(E)}})}function T(){return s(e.rgbaColor,function(){return{type:`rgba`,value:y(E)}})}function E(){return j(e.number)[1]}function D(){return A(`%`,e.percentageValue,1)||O()||k()}function O(){return A(`position-keyword`,e.positionKeywords,1)}function k(){return A(`px`,e.pixelValue,1)||A(`em`,e.emValue,1)}function A(e,t,n){var r=j(t);if(r)return{type:e,value:r[n]}}function j(e){var n=/^[\n\r\t\s]+/.exec(t);n&&ee(n[0].length);var r=e.exec(t);return r&&ee(r[0].length),r}function ee(e){t=t.substring(e)}return function(e){return t=e,r()}}();function zl(e,t,n,r){var i=Us(r.value),a=0,o=0,s=a+t/2,c=o+n/2,l=Math.abs(t*Math.cos(i))+Math.abs(n*Math.sin(i));return{x1:e[0]+s-Math.cos(i)*l/2,y1:e[1]+c-Math.sin(i)*l/2,x2:e[0]+s+Math.cos(i)*l/2,y2:e[1]+c+Math.sin(i)*l/2}}function Bl(e,t,n,r,i,a){var o=r.value,s=i.value;r.unit===J.kPercentage&&(o=r.value/100*t),i.unit===J.kPercentage&&(s=i.value/100*n);var c=Math.max(fo([0,0],[o,s]),fo([0,n],[o,s]),fo([t,n],[o,s]),fo([t,0],[o,s]));return a&&(a instanceof El?c=a.value:a instanceof Cl&&(a.value===`closest-side`?c=Math.min(o,t-o,s,n-s):a.value===`farthest-side`?c=Math.max(o,t-o,s,n-s):a.value===`closest-corner`&&(c=Math.min(fo([0,0],[o,s]),fo([0,n],[o,s]),fo([t,n],[o,s]),fo([t,0],[o,s]))))),{x:o+e[0],y:s+e[1],r:c}}var Vl=/^l\s*\(\s*([\d.]+)\s*\)\s*(.*)/i,Hl=/^r\s*\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*\)\s*(.*)/i,Ul=/^p\s*\(\s*([axyn])\s*\)\s*(.*)/i,Wl=/[\d.]+:(#[^\s]+|[^\)]+\))/gi;function Gl(e){var t=e.length;e[t-1].length=e[t-1].length??{type:`%`,value:`100`},t>1&&(e[0].length=e[0].length??{type:`%`,value:`0`});for(var n=0,r=Number(e[0].length.value),i=1;i<t;i++){var a=e[i].length?.value;if(!V(a)&&!V(r)){for(var o=1;o<i-n;o++)e[n+o].length={type:`%`,value:`${r+(Number(a)-r)*o/(i-n)}`};n=i,r=Number(a)}}}var Kl={left:180,top:-90,bottom:90,right:0,"left top":225,"top left":225,"left bottom":135,"bottom left":135,"right top":-45,"top right":-45,"right bottom":45,"bottom right":45},ql=sl(function(e){return Il(e.type===`angular`?Number(e.value):Kl[e.value]||0,`deg`)}),Jl=sl(function(e){var t=50,n=50,r=`%`,i=`%`;if(e?.type===`position`){var a=e.value,o=a.x,s=a.y;o?.type===`position-keyword`&&(o.value===`left`?t=0:o.value===`center`?t=50:o.value===`right`?t=100:o.value===`top`?n=0:o.value===`bottom`&&(n=100)),s?.type===`position-keyword`&&(s.value===`left`?t=0:s.value===`center`?n=50:s.value===`right`?t=100:s.value===`top`?n=0:s.value===`bottom`&&(n=100)),(o?.type===`px`||o?.type===`%`||o?.type===`em`)&&(r=o?.type,t=Number(o.value)),(s?.type===`px`||s?.type===`%`||s?.type===`em`)&&(i=s?.type,n=Number(s.value))}return{cx:Il(t,r),cy:Il(n,i)}}),Yl=sl(function(e){if(e.indexOf(`linear`)>-1||e.indexOf(`radial`)>-1)return Rl(e).map(function(e){var t=e.type,n=e.orientation,r=e.colorStops;Gl(r);var i=r.map(function(e){return{offset:Il(Number(e.length.value),`%`),color:Ll(e)}});if(t===`linear-gradient`)return new Sl(xl.LinearGradient,{angle:n?ql(n):Ol,steps:i});if(t===`radial-gradient`&&(n||=[{type:`shape`,value:`circle`}],n[0].type===`shape`&&n[0].value===`circle`)){var a=Jl(n[0].at),o=a.cx,s=a.cy,c;if(n[0].style){var l=n[0].style,u=l.type,d=l.value;c=u===`extent-keyword`?Ml(d):Il(d,u)}return new Sl(xl.RadialGradient,{cx:o,cy:s,size:c,steps:i})}});var t=e[0];if(e[1]===`(`||e[2]===`(`){if(t===`l`){var n=Vl.exec(e);if(n){var r=n[2].match(Wl)?.map(function(e){return e.split(`:`)})||[];return[new Sl(xl.LinearGradient,{angle:Il(parseFloat(n[1]),`deg`),steps:r.map(function(e){var t=bn(e,2),n=t[0],r=t[1];return{offset:Il(Number(n)*100,`%`),color:r}})})]}}else if(t===`r`){var i=Xl(e);if(i)if(Pi(i))e=i;else return[new Sl(xl.RadialGradient,i)]}else if(t===`p`)return Zl(e)}});function Xl(e){var t=Hl.exec(e);if(t){var n=t[4].match(Wl)?.map(function(e){return e.split(`:`)})||[];return{cx:Il(50,`%`),cy:Il(50,`%`),steps:n.map(function(e){var t=bn(e,2),n=t[0],r=t[1];return{offset:Il(Number(n)*100,`%`),color:r}})}}return null}function Zl(e){var t=Ul.exec(e);if(t){var n=t[1],r=t[2];switch(n){case`a`:n=`repeat`;break;case`x`:n=`repeat-x`;break;case`y`:n=`repeat-y`;break;case`n`:n=`no-repeat`;break;default:n=`no-repeat`}return{image:r,repetition:n}}return null}function Ql(e){return e&&!!e.image}function $l(e){return e&&!V(e.r)&&!V(e.g)&&!V(e.b)}var eu=sl(function(e){if(Ql(e))return tn({repetition:`repeat`},e);if(V(e)&&(e=``),e===`transparent`)return Pl;if(e===`currentColor`)e=`black`;else if(e===`none`)return Nl;var t=Yl(e);if(t)return t;var n=Hc(e),r=[0,0,0,0];return n!==null&&(r[0]=n.r||0,r[1]=n.g||0,r[2]=n.b||0,r[3]=n.opacity),Fl.apply(void 0,r)});function tu(e,t){if(!(!$l(e)||!$l(t)))return[[Number(e.r),Number(e.g),Number(e.b),Number(e.alpha)],[Number(t.r),Number(t.g),Number(t.b),Number(t.alpha)],function(e){var t=e.slice();if(t[3])for(var n=0;n<3;n++)t[n]=Math.round(Ri(t[n],0,255));return t[3]=Ri(t[3],0,1),`rgba(${t.join(`,`)})`}]}function nu(e,t){if(V(t))return Il(0,`px`);if(t=`${t}`.trim().toLowerCase(),isFinite(Number(t))){if(`px`.search(e)>=0)return Il(Number(t),`px`);if(`deg`.search(e)>=0)return Il(Number(t),`deg`)}var n=[];t=t.replace(e,function(e){return n.push(e),`U${e}`});var r=`U(${e.source})`;return n.map(function(e){return Il(Number(t.replace(RegExp(`U${e}`,`g`),``).replace(new RegExp(r,`g`),`*0`)),e)})[0]}var ru=function(e){return nu(RegExp(`px`,`g`),e)},iu=sl(ru);sl(function(e){return nu(RegExp(`%`,`g`),e)});var au=function(e){return zi(e)||isFinite(Number(e))?Il(Number(e)||0,`px`):nu(RegExp(`px|%|em|rem`,`g`),e)},ou=sl(au),su=function(e){return nu(RegExp(`deg|rad|grad|turn`,`g`),e)},cu=sl(su);function lu(e,t,n,r){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,a=``,o=e.value||0,s=t.value||0,c=Tl(e.unit),l=e.convertTo(c),u=t.convertTo(c);return l&&u?(o=l.value,s=u.value,a=vl(e.unit)):(El.isLength(e.unit)||El.isLength(t.unit))&&(o=fu(e,i,n),s=fu(t,i,n),a=`px`),[o,s,function(e){return r&&(e=Math.max(e,0)),e+a}]}function uu(e){var t=0;return e.unit===J.kDegrees?t=e.value:e.unit===J.kRadians?t=Gs(Number(e.value)):e.unit===J.kTurns?t=Ks(Number(e.value)):e.value&&(t=e.value),t}function du(e,t){var n;return Array.isArray(e)?n=e.map(function(e){return Number(e)}):Pi(e)?n=e.split(` `).map(function(e){return Number(e)}):zi(e)&&(n=[e]),t===2?n.length===1?[n[0],n[0]]:[n[0],n[1]]:t===4?n.length===1?[n[0],n[0],n[0],n[0]]:n.length===2?[n[0],n[1],n[0],n[1]]:n.length===3?[n[0],n[1],n[2],n[1]]:[n[0],n[1],n[2],n[3]]:t===`even`&&n.length%2==1?[].concat(ln(n),ln(n)):n}function fu(e,t,n){var r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(e.unit===J.kPixels)return Number(e.value);if(e.unit===J.kPercentage&&n){var i=n.nodeName===G.GROUP?n.getLocalBounds():n.getGeometryBounds();return(r?i.min[t]:0)+e.value/100*i.halfExtents[t]*2}return 0}var pu=function(e){return nu(/deg|rad|grad|turn|px|%/g,e)},mu=[`blur`,`brightness`,`drop-shadow`,`contrast`,`grayscale`,`sepia`,`saturate`,`hue-rotate`,`invert`];function hu(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:``;if(e=e.toLowerCase().trim(),e===`none`)return[];for(var t=/\s*([\w-]+)\(([^)]*)\)/g,n=[],r,i=0;r=t.exec(e);){if(r.index!==i)return[];if(i=r.index+r[0].length,mu.indexOf(r[1])>-1&&n.push({name:r[1],params:r[2].split(` `).map(function(e){return pu(e)||eu(e)})}),t.lastIndex===e.length)return n}return[]}function gu(e){return e.toString()}var _u=function(e){return typeof e==`number`?Il(e):/^\s*[-+]?(\d*\.)?\d+\s*$/.test(e)?Il(Number(e)):Il(0)},vu=sl(_u);sl(function(e){return Pi(e)?e.split(` `).map(vu):e.map(vu)});function yu(e,t){return[e,t,gu]}function bu(e,t){return function(n,r){return[n,r,function(n){return gu(Ri(n,e,t))}]}}function xu(e,t){if(e.length===t.length)return[e,t,function(e){return e}]}function Su(e){return e.parsedStyle.d.totalLength===0&&(e.parsedStyle.d.totalLength=So(e.parsedStyle.d.absolutePath)),e.parsedStyle.d.totalLength}function Cu(e){return e.parsedStyle.points.totalLength===0&&(e.parsedStyle.points.totalLength=ts(e.parsedStyle.points.points)),e.parsedStyle.points.totalLength}function wu(e){for(var t=0;t<e.length;t++){var n=e[t-1],r=e[t];if(r[0]===`M`&&n){var i=n[0],a=[r[1],r[2]],o=void 0;i===`L`||i===`M`?o=[n[1],n[2]]:(i===`C`||i===`A`||i===`Q`)&&(o=[n[n.length-2],n[n.length-1]]),o&&Du(a,o)&&(e.splice(t,1),t--)}}}function Tu(e){for(var t=!1,n=e.length,r=0;r<n;r++){var i=e[r][0];if(i===`C`||i===`A`||i===`Q`){t=!0;break}}return t}function Eu(e){for(var t=[],n=[],r=[],i=0;i<e.length;i++){var a=e[i],o=a[0];o===`M`?(r.length&&(n.push(r),r=[]),r.push([a[1],a[2]])):o===`Z`?r.length&&(t.push(r),r=[]):r.push([a[1],a[2]])}return r.length>0&&n.push(r),{polygons:t,polylines:n}}function Du(e,t){return e[0]===t[0]&&e[1]===t[1]}function Ou(e,t){for(var n=[],r=[],i=[],a=0;a<e.length;a++){var o=e[a],s=o.currentPoint,c=o.params,l=o.prePoint,u=void 0;switch(o.command){case`Q`:u=is(l[0],l[1],c[1],c[2],c[3],c[4]);break;case`C`:u=Zo(l[0],l[1],c[1],c[2],c[3],c[4],c[5],c[6]);break;case`A`:var d=o.arcParams;u=Uo(d.cx,d.cy,d.rx,d.ry,d.xRotation,d.startAngle,d.endAngle);break;default:n.push(s[0]),r.push(s[1]);break}u&&(o.box=u,n.push(u.x,u.x+u.width),r.push(u.y,u.y+u.height)),t&&(o.command===`L`||o.command===`M`)&&o.prePoint&&o.nextPoint&&i.push(o)}n=n.filter(function(e){return!Number.isNaN(e)&&e!==1/0&&e!==-1/0}),r=r.filter(function(e){return!Number.isNaN(e)&&e!==1/0&&e!==-1/0});var f=Mi(n),p=Mi(r),m=ji(n),h=ji(r);if(i.length===0)return{x:f,y:p,width:m-f,height:h-p};for(var g=0;g<i.length;g++){var _=i[g],v=_.currentPoint,y=void 0;v[0]===f?(y=ku(_,t),f-=y.xExtra):v[0]===m&&(y=ku(_,t),m+=y.xExtra),v[1]===p?(y=ku(_,t),p-=y.yExtra):v[1]===h&&(y=ku(_,t),h+=y.yExtra)}return{x:f,y:p,width:m-f,height:h-p}}function ku(e,t){var n=e.prePoint,r=e.currentPoint,i=e.nextPoint,a=(r[0]-n[0])**2+(r[1]-n[1])**2,o=(r[0]-i[0])**2+(r[1]-i[1])**2,s=(n[0]-i[0])**2+(n[1]-i[1])**2,c=Math.acos((a+o-s)/(2*Math.sqrt(a)*Math.sqrt(o)));if(!c||Math.sin(c)===0||Vi(c,0))return{xExtra:0,yExtra:0};var l=Math.abs(Math.atan2(i[1]-r[1],i[0]-r[0])),u=Math.abs(Math.atan2(i[0]-r[0],i[1]-r[1]));return l=l>Math.PI/2?Math.PI-l:l,u=u>Math.PI/2?Math.PI-u:u,{xExtra:Math.cos(c/2-l)*(t/2*(1/Math.sin(c/2)))-t/2||0,yExtra:Math.cos(u-c/2)*(t/2*(1/Math.sin(c/2)))-t/2||0}}function Au(e,t){return[t[0]+(t[0]-e[0]),t[1]+(t[1]-e[1])]}var ju=function(e,t){var n=e.x*t.x+e.y*t.y,r=Math.sqrt((e.x**2+e.y**2)*(t.x**2+t.y**2));return(e.x*t.y-e.y*t.x<0?-1:1)*Math.acos(n/r)},Mu=function(e,t,n,r,i,a,o,s){t=Math.abs(t),n=Math.abs(n),r=Wi(r,360);var c=Us(r);if(e.x===o.x&&e.y===o.y)return{x:e.x,y:e.y,ellipticalArcAngle:0};if(t===0||n===0)return{x:0,y:0,ellipticalArcAngle:0};var l=(e.x-o.x)/2,u=(e.y-o.y)/2,d={x:Math.cos(c)*l+Math.sin(c)*u,y:-Math.sin(c)*l+Math.cos(c)*u},f=d.x**2/t**2+d.y**2/n**2;f>1&&(t*=Math.sqrt(f),n*=Math.sqrt(f));var p=(t**2*n**2-t**2*d.y**2-n**2*d.x**2)/(t**2*d.y**2+n**2*d.x**2);p=p<0?0:p;var m=(i===a?-1:1)*Math.sqrt(p),h={x:m*(t*d.y/n),y:m*(-(n*d.x)/t)},g={x:Math.cos(c)*h.x-Math.sin(c)*h.y+(e.x+o.x)/2,y:Math.sin(c)*h.x+Math.cos(c)*h.y+(e.y+o.y)/2},_={x:(d.x-h.x)/t,y:(d.y-h.y)/n},v=ju({x:1,y:0},_),y=ju(_,{x:(-d.x-h.x)/t,y:(-d.y-h.y)/n});!a&&y>0?y-=2*Math.PI:a&&y<0&&(y+=2*Math.PI),y%=2*Math.PI;var b=v+y*s,x=t*Math.cos(b),S=n*Math.sin(b);return{x:Math.cos(c)*x-Math.sin(c)*S+g.x,y:Math.sin(c)*x+Math.cos(c)*S+g.y,ellipticalArcStartAngle:v,ellipticalArcEndAngle:v+y,ellipticalArcAngle:b,ellipticalArcCenter:g,resultantRx:t,resultantRy:n}};function Nu(e){for(var t=[],n=null,r=null,i=null,a=0,o=e.length,s=0;s<o;s++){var c=e[s];r=e[s+1];var l=c[0],u={command:l,prePoint:n,params:c,startTangent:null,endTangent:null,currentPoint:null,nextPoint:null,arcParams:null,box:null,cubicParams:null};switch(l){case`M`:i=[c[1],c[2]],a=s;break;case`A`:u.arcParams=Ru(n,c);break}if(l===`Z`)n=i,r=e[a+1];else{var d=c.length;n=[c[d-2],c[d-1]]}r&&r[0]===`Z`&&(r=e[a],t[a]&&(t[a].prePoint=n)),u.currentPoint=n,t[a]&&Du(n,t[a].currentPoint)&&(t[a].prePoint=u.prePoint),u.nextPoint=r?[r[r.length-2],r[r.length-1]]:null;var f=u.prePoint;if([`L`,`H`,`V`].includes(l))u.startTangent=[f[0]-n[0],f[1]-n[1]],u.endTangent=[n[0]-f[0],n[1]-f[1]];else if(l===`Q`){var p=[c[1],c[2]];u.startTangent=[f[0]-p[0],f[1]-p[1]],u.endTangent=[n[0]-p[0],n[1]-p[1]]}else if(l===`T`){var m=t[s-1],h=Au(m.currentPoint,f);m.command===`Q`?(u.command=`Q`,u.startTangent=[f[0]-h[0],f[1]-h[1]],u.endTangent=[n[0]-h[0],n[1]-h[1]]):(u.command=`TL`,u.startTangent=[f[0]-n[0],f[1]-n[1]],u.endTangent=[n[0]-f[0],n[1]-f[1]])}else if(l===`C`){var g=[c[1],c[2]],_=[c[3],c[4]];u.startTangent=[f[0]-g[0],f[1]-g[1]],u.endTangent=[n[0]-_[0],n[1]-_[1]],u.startTangent[0]===0&&u.startTangent[1]===0&&(u.startTangent=[g[0]-_[0],g[1]-_[1]]),u.endTangent[0]===0&&u.endTangent[1]===0&&(u.endTangent=[_[0]-g[0],_[1]-g[1]])}else if(l===`S`){var v=t[s-1],y=Au(v.currentPoint,f),b=[c[1],c[2]];v.command===`C`?(u.command=`C`,u.startTangent=[f[0]-y[0],f[1]-y[1]],u.endTangent=[n[0]-b[0],n[1]-b[1]]):(u.command=`SQ`,u.startTangent=[f[0]-b[0],f[1]-b[1]],u.endTangent=[n[0]-b[0],n[1]-b[1]])}else if(l===`A`){var x=Pu(u,0),S=x.x,C=x.y,w=Pu(u,1,!1),T=w.x,E=w.y;u.startTangent=[S,C],u.endTangent=[T,E]}t.push(u)}return t}function Pu(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=e.arcParams,i=r.rx,a=i===void 0?0:i,o=r.ry,s=o===void 0?0:o,c=r.xRotation,l=r.arcFlag,u=r.sweepFlag,d=Mu({x:e.prePoint[0],y:e.prePoint[1]},a,s,c,!!l,!!u,{x:e.currentPoint[0],y:e.currentPoint[1]},t),f=Mu({x:e.prePoint[0],y:e.prePoint[1]},a,s,c,!!l,!!u,{x:e.currentPoint[0],y:e.currentPoint[1]},n?t+.005:t-.005),p=f.x-d.x,m=f.y-d.y,h=Math.sqrt(p*p+m*m);return{x:-p/h,y:-m/h}}function Fu(e){return Math.sqrt(e[0]*e[0]+e[1]*e[1])}function Iu(e,t){return Fu(e)*Fu(t)?(e[0]*t[0]+e[1]*t[1])/(Fu(e)*Fu(t)):1}function Lu(e,t){return(e[0]*t[1]<e[1]*t[0]?-1:1)*Math.acos(Iu(e,t))}function Ru(e,t){var n=t[1],r=t[2],i=Wi(Us(t[3]),Math.PI*2),a=t[4],o=t[5],s=e[0],c=e[1],l=t[6],u=t[7],d=Math.cos(i)*(s-l)/2+Math.sin(i)*(c-u)/2,f=-1*Math.sin(i)*(s-l)/2+Math.cos(i)*(c-u)/2,p=d*d/(n*n)+f*f/(r*r);p>1&&(n*=Math.sqrt(p),r*=Math.sqrt(p));var m=n*n*(f*f)+r*r*(d*d),h=m?Math.sqrt((n*n*(r*r)-m)/m):1;a===o&&(h*=-1),isNaN(h)&&(h=0);var g=r?h*n*f/r:0,_=n?h*-r*d/n:0,v=(s+l)/2+Math.cos(i)*g-Math.sin(i)*_,y=(c+u)/2+Math.sin(i)*g+Math.cos(i)*_,b=[(d-g)/n,(f-_)/r],x=[(-1*d-g)/n,(-1*f-_)/r],S=Lu([1,0],b),C=Lu(b,x);return Iu(b,x)<=-1&&(C=Math.PI),Iu(b,x)>=1&&(C=0),o===0&&C>0&&(C-=2*Math.PI),o===1&&C<0&&(C+=2*Math.PI),{cx:v,cy:y,rx:Du(e,[l,u])?0:n,ry:Du(e,[l,u])?0:r,startAngle:S,endAngle:S+C,xRotation:i,arcFlag:a,sweepFlag:o}}var zu=function(e){if(e===``||Array.isArray(e)&&e.length===0)return{absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:{x:0,y:0,width:0,height:0}};var t;try{t=eo(e)}catch{t=eo(``),console.error(`[g]: Invalid SVG Path definition: ${e}`)}wu(t);var n=Tu(t),r=Eu(t),i=r.polygons,a=r.polylines,o=Nu(t),s=Ou(o,0),c=s.x,l=s.y,u=s.width,d=s.height;return{absolutePath:t,hasArc:n,segments:o,polygons:i,polylines:a,totalLength:0,rect:{x:Number.isFinite(c)?c:0,y:Number.isFinite(l)?l:0,width:Number.isFinite(u)?u:0,height:Number.isFinite(d)?d:0}}},Bu=sl(zu);function Vu(e){return Pi(e)?Bu(e):zu(e)}function Hu(e,t,n){var r=e.curve,i=t.curve;(!r||r.length===0)&&(r=co(e.absolutePath,!1),e.curve=r),(!i||i.length===0)&&(i=co(t.absolutePath,!1),t.curve=i);var a=[r,i];r.length!==i.length&&(a=Mo(r,i));var o=Do(a[0])===Do(a[1])?lo(a[0]):uo(a[0]);return[o,wo(a[1],o),function(e){return e}]}function Uu(e,t){return{points:Pi(e)?e.split(` `).map(function(e){var t=bn(e.split(`,`),2),n=t[0],r=t[1];return[Number(n),Number(r)]}):e,totalLength:0,segments:[]}}function Wu(e,t){return[e.points,t.points,function(e){return e}]}var Gu=null,Ku=/\s*(\w+)\(([^)]*)\)/g;function qu(e){return function(t){var n=0;return e.map(function(e){return e===Gu?t[n++]:e})}}function Ju(e){return e}var Yu={matrix:[`NNNNNN`,[Gu,Gu,0,0,Gu,Gu,0,0,0,0,1,0,Gu,Gu,0,1],Ju],matrix3d:[`NNNNNNNNNNNNNNNN`,Ju],rotate:[`A`],rotateX:[`A`],rotateY:[`A`],rotateZ:[`A`],rotate3d:[`NNNA`],perspective:[`L`],scale:[`Nn`,qu([Gu,Gu,new El(1)]),Ju],scaleX:[`N`,qu([Gu,new El(1),new El(1)]),qu([Gu,new El(1)])],scaleY:[`N`,qu([new El(1),Gu,new El(1)]),qu([new El(1),Gu])],scaleZ:[`N`,qu([new El(1),new El(1),Gu])],scale3d:[`NNN`,Ju],skew:[`Aa`,null,Ju],skewX:[`A`,null,qu([Gu,Ol])],skewY:[`A`,null,qu([Ol,Gu])],translate:[`Tt`,qu([Gu,Gu,Dl]),Ju],translateX:[`T`,qu([Gu,Dl,Dl]),qu([Gu,Dl])],translateY:[`T`,qu([Dl,Gu,Dl]),qu([Dl,Gu])],translateZ:[`L`,qu([Dl,Dl,Gu])],translate3d:[`TTL`,Ju]};function Xu(e){for(var t=[],n=e.length,r=0;r<n;r++){var i=e[r],a=i[0],o=i.slice(1);if(a===`translate`||a===`skew`?o.length===1&&o.push(0):a===`scale`&&o.length===1&&o.push(o[0]),!Yu[a])return[];var s=o.map(function(e){return Il(e)});t.push({t:a,d:s})}return t}function Zu(e){if(Array.isArray(e))return Xu(e);if(e=(e||`none`).trim(),e===`none`)return[];var t=[],n,r=0;for(Ku.lastIndex=0;n=Ku.exec(e);){if(n.index!==r)return[];r=n.index+n[0].length;var i=n[1],a=Yu[i];if(!a)return[];var o=n[2].split(`,`),s=a[0];if(s.length<o.length)return[];for(var c=[],l=0;l<s.length;l++){var u=o[l],d=s[l],f=void 0;if(f=u?{A:function(e){return e.trim()===`0`?Ol:cu(e)},N:vu,T:ou,L:iu}[d.toUpperCase()](u):{a:Ol,n:c[0],t:Dl}[d],f===void 0)return[];c.push(f)}if(t.push({t:i,d:c}),Ku.lastIndex===e.length)return t}return[]}function Qu(e){if(Array.isArray(e))return Xu(e);if(e=(e||`none`).trim(),e===`none`)return[];var t=[],n,r=0;for(Ku.lastIndex=0;n=Ku.exec(e);){if(n.index!==r)return[];r=n.index+n[0].length;var i=n[1],a=Yu[i];if(!a)return[];var o=n[2].split(`,`),s=a[0];if(s.length<o.length)return[];for(var c=[],l=0;l<s.length;l++){var u=o[l],d=s[l],f=void 0;if(f=u?{A:function(e){return e.trim()===`0`?Ol:su(e)},N:_u,T:au,L:ru}[d.toUpperCase()](u):{a:Ol,n:c[0],t:Dl}[d],f===void 0)return[];c.push(f)}if(t.push({t:i,d:c}),Ku.lastIndex===e.length)return t}return[]}function $u(e){var t,n,r,i;switch(e.t){case`rotateX`:return i=Us(uu(e.d[0])),[1,0,0,0,0,Math.cos(i),Math.sin(i),0,0,-Math.sin(i),Math.cos(i),0,0,0,0,1];case`rotateY`:return i=Us(uu(e.d[0])),[Math.cos(i),0,-Math.sin(i),0,0,1,0,0,Math.sin(i),0,Math.cos(i),0,0,0,0,1];case`rotate`:case`rotateZ`:return i=Us(uu(e.d[0])),[Math.cos(i),Math.sin(i),0,0,-Math.sin(i),Math.cos(i),0,0,0,0,1,0,0,0,0,1];case`rotate3d`:t=e.d[0].value,n=e.d[1].value,r=e.d[2].value,i=Us(uu(e.d[3]));var a=t*t+n*n+r*r;if(a===0)t=1,n=0,r=0;else if(a!==1){var o=Math.sqrt(a);t/=o,n/=o,r/=o}var s=Math.sin(i/2),c=s*Math.cos(i/2),l=s*s;return[1-2*(n*n+r*r)*l,2*(t*n*l+r*c),2*(t*r*l-n*c),0,2*(t*n*l-r*c),1-2*(t*t+r*r)*l,2*(n*r*l+t*c),0,2*(t*r*l+n*c),2*(n*r*l-t*c),1-2*(t*t+n*n)*l,0,0,0,0,1];case`scale`:return[e.d[0].value,0,0,0,0,e.d[1].value,0,0,0,0,1,0,0,0,0,1];case`scaleX`:return[e.d[0].value,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1];case`scaleY`:return[1,0,0,0,0,e.d[0].value,0,0,0,0,1,0,0,0,0,1];case`scaleZ`:return[1,0,0,0,0,1,0,0,0,0,e.d[0].value,0,0,0,0,1];case`scale3d`:return[e.d[0].value,0,0,0,0,e.d[1].value,0,0,0,0,e.d[2].value,0,0,0,0,1];case`skew`:var u=Us(uu(e.d[0])),d=Us(uu(e.d[1]));return[1,Math.tan(d),0,0,Math.tan(u),1,0,0,0,0,1,0,0,0,0,1];case`skewX`:return i=Us(uu(e.d[0])),[1,0,0,0,Math.tan(i),1,0,0,0,0,1,0,0,0,0,1];case`skewY`:return i=Us(uu(e.d[0])),[1,Math.tan(i),0,0,0,1,0,0,0,0,1,0,0,0,0,1];case`translate`:return t=fu(e.d[0],0,null)||0,n=fu(e.d[1],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,t,n,0,1];case`translateX`:return t=fu(e.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,t,0,0,1];case`translateY`:return n=fu(e.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,0,n,0,1];case`translateZ`:return r=fu(e.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,0,0,r,1];case`translate3d`:return t=fu(e.d[0],0,null)||0,n=fu(e.d[1],0,null)||0,r=fu(e.d[2],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,t,n,r,1];case`perspective`:var f=fu(e.d[0],0,null)||0;return[1,0,0,0,0,1,0,0,0,0,1,f?-1/f:0,0,0,0,1];case`matrix`:return[e.d[0].value,e.d[1].value,0,0,e.d[2].value,e.d[3].value,0,0,0,0,1,0,e.d[4].value,e.d[5].value,0,1];case`matrix3d`:return e.d.map(function(e){return e.value})}}function ed(e,t){return[e[0]*t[0]+e[4]*t[1]+e[8]*t[2]+e[12]*t[3],e[1]*t[0]+e[5]*t[1]+e[9]*t[2]+e[13]*t[3],e[2]*t[0]+e[6]*t[1]+e[10]*t[2]+e[14]*t[3],e[3]*t[0]+e[7]*t[1]+e[11]*t[2]+e[15]*t[3],e[0]*t[4]+e[4]*t[5]+e[8]*t[6]+e[12]*t[7],e[1]*t[4]+e[5]*t[5]+e[9]*t[6]+e[13]*t[7],e[2]*t[4]+e[6]*t[5]+e[10]*t[6]+e[14]*t[7],e[3]*t[4]+e[7]*t[5]+e[11]*t[6]+e[15]*t[7],e[0]*t[8]+e[4]*t[9]+e[8]*t[10]+e[12]*t[11],e[1]*t[8]+e[5]*t[9]+e[9]*t[10]+e[13]*t[11],e[2]*t[8]+e[6]*t[9]+e[10]*t[10]+e[14]*t[11],e[3]*t[8]+e[7]*t[9]+e[11]*t[10]+e[15]*t[11],e[0]*t[12]+e[4]*t[13]+e[8]*t[14]+e[12]*t[15],e[1]*t[12]+e[5]*t[13]+e[9]*t[14]+e[13]*t[15],e[2]*t[12]+e[6]*t[13]+e[10]*t[14]+e[14]*t[15],e[3]*t[12]+e[7]*t[13]+e[11]*t[14]+e[15]*t[15]]}function td(e){return e.length===0?[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]:e.map($u).reduce(ed)}function nd(e){var t=[0,0,0],n=[1,1,1],r=[0,0,0],i=[0,0,0,1],a=[0,0,0,1];return ac(td(e),t,n,r,i,a),[[t,n,r,a,i]]}var rd=function(){function e(e,t){for(var n=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],r=0;r<4;r++)for(var i=0;i<4;i++)for(var a=0;a<4;a++)n[r][i]+=t[r][a]*e[a][i];return n}function t(e){return e[0][2]===0&&e[0][3]===0&&e[1][2]===0&&e[1][3]===0&&e[2][0]===0&&e[2][1]===0&&e[2][2]===1&&e[2][3]===0&&e[3][2]===0&&e[3][3]===1}function n(n,r,i,a,o){for(var s=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]],c=0;c<4;c++)s[c][3]=o[c];for(var l=0;l<3;l++)for(var u=0;u<3;u++)s[3][l]+=n[u]*s[u][l];var d=a[0],f=a[1],p=a[2],m=a[3],h=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]];h[0][0]=1-2*(f*f+p*p),h[0][1]=2*(d*f-p*m),h[0][2]=2*(d*p+f*m),h[1][0]=2*(d*f+p*m),h[1][1]=1-2*(d*d+p*p),h[1][2]=2*(f*p-d*m),h[2][0]=2*(d*p-f*m),h[2][1]=2*(f*p+d*m),h[2][2]=1-2*(d*d+f*f),s=e(s,h);var g=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]];i[2]&&(g[2][1]=i[2],s=e(s,g)),i[1]&&(g[2][1]=0,g[2][0]=i[0],s=e(s,g)),i[0]&&(g[2][0]=0,g[1][0]=i[0],s=e(s,g));for(var _=0;_<3;_++)for(var v=0;v<3;v++)s[_][v]*=r[_];return t(s)?[s[0][0],s[0][1],s[1][0],s[1][1],s[3][0],s[3][1]]:s[0].concat(s[1],s[2],s[3])}return n}();function id(e){return e.toFixed(6).replace(`.000000`,``)}function ad(e,t){var n,r;return e.decompositionPair!==t&&(e.decompositionPair=t,n=nd(e)),t.decompositionPair!==e&&(t.decompositionPair=e,r=nd(t)),n[0]===null||r[0]===null?[[!1],[!0],function(n){return n?t[0].d:e[0].d}]:(n[0].push(0),r[0].push(1),[n,r,function(e){var t=sd(n[0][3],r[0][3],e[5]);return rd(e[0],e[1],e[2],t,e[4]).map(id).join(`,`)}])}function od(e,t){for(var n=0,r=0;r<e.length;r++)n+=e[r]*t[r];return n}function sd(e,t,n){var r=od(e,t);r=Ri(r,-1,1);var i=[];if(r===1)i=e;else for(var a=Math.acos(r),o=Math.sin(n*a)*1/Math.sqrt(1-r*r),s=0;s<4;s++)i.push(e[s]*(Math.cos(n*a)-r*o)+t[s]*o);return i}function cd(e){return e.replace(/[XY]/,``)}function ld(e){return e.replace(/(X|Y|Z|3d)?$/,`3d`)}var ud=function(e,t){return e===`perspective`&&t===`perspective`||(e===`matrix`||e===`matrix3d`)&&(t===`matrix`||t===`matrix3d`)};function dd(e,t,n){var r=!1;if(!e.length||!t.length){e.length||(r=!0,e=t,t=[]);for(var i=function(){var n=e[a],r=n.t,i=n.d,o=+(r.substring(0,5)===`scale`);t.push({t:r,d:i.map(function(e){return typeof e==`number`?Il(o):Il(o,e.unit)})})},a=0;a<e.length;a++)i()}var o=[],s=[],c=[];if(e.length!==t.length){var l=ad(e,t);o=[l[0]],s=[l[1]],c=[[`matrix`,[l[2]]]]}else for(var u=0;u<e.length;u++){var d=e[u].t,f=t[u].t,p=e[u].d,m=t[u].d,h=Yu[d],g=Yu[f],_=void 0;if(ud(d,f)){var v=ad([e[u]],[t[u]]);o.push(v[0]),s.push(v[1]),c.push([`matrix`,[v[2]]]);continue}else if(d===f)_=d;else if(h[2]&&g[2]&&cd(d)===cd(f))_=cd(d),p=h[2](p),m=g[2](m);else if(h[1]&&g[1]&&ld(d)===ld(f))_=ld(d),p=h[1](p),m=g[1](m);else{var y=ad(e,t);o=[y[0]],s=[y[1]],c=[[`matrix`,[y[2]]]];break}for(var b=[],x=[],S=[],C=0;C<p.length;C++){var w=lu(p[C],m[C],n,!1,C);b[C]=w[0],x[C]=w[1],S.push(w[2])}o.push(b),s.push(x),c.push([_,S])}if(r){var T=o;o=s,s=T}return[o,s,function(e){return e.map(function(e,t){var n=e.map(function(e,n){return c[t][1][n](e)}).join(`,`);return c[t][0]===`matrix`&&n.split(`,`).length===16&&(c[t][0]=`matrix3d`),c[t][0]===`matrix3d`&&n.split(`,`).length===6&&(c[t][0]=`matrix`),`${c[t][0]}(${n})`}).join(` `)}]}var fd=sl(function(e){if(Pi(e)){if(e===`text-anchor`)return[Il(0,`px`),Il(0,`px`)];var t=e.split(` `);return t.length===1&&(t[0]===`top`||t[0]===`bottom`?(t[1]=t[0],t[0]=`center`):t[1]=`center`),t.length===2?[ou(pd(t[0])),ou(pd(t[1]))]:null}return[Il(e[0]||0,`px`),Il(e[1]||0,`px`)]});function pd(e){return e===`center`?`50%`:e===`left`||e===`top`?`0%`:e===`right`||e===`bottom`?`100%`:e}var md=[{n:`display`,k:[`none`]},{n:`opacity`,int:!0,inh:!0,d:`1`,syntax:K.OPACITY_VALUE},{n:`fillOpacity`,int:!0,inh:!0,d:`1`,syntax:K.OPACITY_VALUE},{n:`strokeOpacity`,int:!0,inh:!0,d:`1`,syntax:K.OPACITY_VALUE},{n:`fill`,int:!0,k:[`none`],d:`none`,syntax:K.PAINT},{n:`fillRule`,k:[`nonzero`,`evenodd`],d:`nonzero`},{n:`stroke`,int:!0,k:[`none`],d:`none`,syntax:K.PAINT,l:!0},{n:`shadowType`,k:[`inner`,`outer`,`both`],d:`outer`,l:!0},{n:`shadowColor`,int:!0,syntax:K.COLOR},{n:`shadowOffsetX`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`shadowOffsetY`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`shadowBlur`,int:!0,l:!0,d:`0`,syntax:K.SHADOW_BLUR},{n:`lineWidth`,int:!0,inh:!0,d:`1`,l:!0,a:[`strokeWidth`],syntax:K.LENGTH_PERCENTAGE},{n:`increasedLineWidthForHitTesting`,inh:!0,d:`0`,l:!0,syntax:K.LENGTH_PERCENTAGE},{n:`lineJoin`,inh:!0,l:!0,a:[`strokeLinejoin`],k:[`miter`,`bevel`,`round`],d:`miter`},{n:`lineCap`,inh:!0,l:!0,a:[`strokeLinecap`],k:[`butt`,`round`,`square`],d:`butt`},{n:`lineDash`,int:!0,inh:!0,k:[`none`],a:[`strokeDasharray`],syntax:K.LENGTH_PERCENTAGE_12},{n:`lineDashOffset`,int:!0,inh:!0,d:`0`,a:[`strokeDashoffset`],syntax:K.LENGTH_PERCENTAGE},{n:`offsetPath`,syntax:K.DEFINED_PATH},{n:`offsetDistance`,int:!0,syntax:K.OFFSET_DISTANCE},{n:`dx`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`dy`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`zIndex`,ind:!0,int:!0,d:`0`,k:[`auto`],syntax:K.Z_INDEX},{n:`visibility`,k:[`visible`,`hidden`],ind:!0,inh:!0,int:!0,d:`visible`},{n:`pointerEvents`,inh:!0,k:[`none`,`auto`,`stroke`,`fill`,`painted`,`visible`,`visiblestroke`,`visiblefill`,`visiblepainted`,`all`],d:`auto`},{n:`filter`,ind:!0,l:!0,k:[`none`],d:`none`,syntax:K.FILTER},{n:`clipPath`,syntax:K.DEFINED_PATH},{n:`textPath`,syntax:K.DEFINED_PATH},{n:`textPathSide`,k:[`left`,`right`],d:`left`},{n:`textPathStartOffset`,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`transform`,p:100,int:!0,k:[`none`],d:`none`,syntax:K.TRANSFORM},{n:`transformOrigin`,p:100,d:`0 0`,l:!0,syntax:K.TRANSFORM_ORIGIN},{n:`cx`,int:!0,l:!0,d:`0`,syntax:K.COORDINATE},{n:`cy`,int:!0,l:!0,d:`0`,syntax:K.COORDINATE},{n:`cz`,int:!0,l:!0,d:`0`,syntax:K.COORDINATE},{n:`r`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`rx`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`ry`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`x`,int:!0,l:!0,d:`0`,syntax:K.COORDINATE},{n:`y`,int:!0,l:!0,d:`0`,syntax:K.COORDINATE},{n:`z`,int:!0,l:!0,d:`0`,syntax:K.COORDINATE},{n:`width`,int:!0,l:!0,k:[`auto`,`fit-content`,`min-content`,`max-content`],d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`height`,int:!0,l:!0,k:[`auto`,`fit-content`,`min-content`,`max-content`],d:`0`,syntax:K.LENGTH_PERCENTAGE},{n:`radius`,int:!0,l:!0,d:`0`,syntax:K.LENGTH_PERCENTAGE_14},{n:`x1`,int:!0,l:!0,syntax:K.COORDINATE},{n:`y1`,int:!0,l:!0,syntax:K.COORDINATE},{n:`z1`,int:!0,l:!0,syntax:K.COORDINATE},{n:`x2`,int:!0,l:!0,syntax:K.COORDINATE},{n:`y2`,int:!0,l:!0,syntax:K.COORDINATE},{n:`z2`,int:!0,l:!0,syntax:K.COORDINATE},{n:`d`,int:!0,l:!0,d:``,syntax:K.PATH,p:50},{n:`points`,int:!0,l:!0,syntax:K.LIST_OF_POINTS,p:50},{n:`text`,l:!0,d:``,syntax:K.TEXT,p:50},{n:`textTransform`,l:!0,inh:!0,k:[`capitalize`,`uppercase`,`lowercase`,`none`],d:`none`,syntax:K.TEXT_TRANSFORM,p:51},{n:`font`,l:!0},{n:`fontSize`,int:!0,inh:!0,d:`16px`,l:!0,syntax:K.LENGTH_PERCENTAGE},{n:`fontFamily`,l:!0,inh:!0,d:`sans-serif`},{n:`fontStyle`,l:!0,inh:!0,k:[`normal`,`italic`,`oblique`],d:`normal`},{n:`fontWeight`,l:!0,inh:!0,k:[`normal`,`bold`,`bolder`,`lighter`],d:`normal`},{n:`fontVariant`,l:!0,inh:!0,k:[`normal`,`small-caps`],d:`normal`},{n:`lineHeight`,l:!0,syntax:K.LENGTH,int:!0,d:`0`},{n:`letterSpacing`,l:!0,syntax:K.LENGTH,int:!0,d:`0`},{n:`miterLimit`,l:!0,syntax:K.NUMBER,d:function(e){return e===G.PATH||e===G.POLYGON||e===G.POLYLINE?`4`:`10`}},{n:`wordWrap`,l:!0},{n:`wordWrapWidth`,l:!0},{n:`maxLines`,l:!0},{n:`textOverflow`,l:!0,d:`clip`},{n:`leading`,l:!0},{n:`textBaseline`,l:!0,inh:!0,k:[`top`,`hanging`,`middle`,`alphabetic`,`ideographic`,`bottom`],d:`alphabetic`},{n:`textAlign`,l:!0,inh:!0,k:[`start`,`center`,`middle`,`end`,`left`,`right`],d:`start`},{n:`markerStart`,syntax:K.MARKER},{n:`markerEnd`,syntax:K.MARKER},{n:`markerMid`,syntax:K.MARKER},{n:`markerStartOffset`,syntax:K.LENGTH,l:!0,int:!0,d:`0`},{n:`markerEndOffset`,syntax:K.LENGTH,l:!0,int:!0,d:`0`}],hd=new Set(md.filter(function(e){return!!e.l}).map(function(e){return e.n})),gd={},_d=function(){function e(t){var n=this;R(this,e),this.runtime=t,md.forEach(function(e){n.registerMetadata(e)})}return z(e,[{key:`registerMetadata`,value:function(e){[e.n].concat(ln(e.a||[])).forEach(function(t){gd[t]=e})}},{key:`getPropertySyntax`,value:function(e){return this.runtime.CSSPropertySyntaxFactory[e]}},{key:`processProperties`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{skipUpdateAttribute:!1,skipParse:!1,forceUpdateGeometry:!1,usedAttributes:[],memoize:!0};Object.assign(e.attributes,t);var r=e.parsedStyle.clipPath,i=e.parsedStyle.offsetPath;vd(e,t);var a=!!n.forceUpdateGeometry;if(!a){for(var o in t)if(hd.has(o)){a=!0;break}}var s=yd(e);s.has(`fill`)&&t.fill&&(e.parsedStyle.fill=eu(t.fill)),s.has(`stroke`)&&t.stroke&&(e.parsedStyle.stroke=eu(t.stroke)),s.has(`shadowColor`)&&t.shadowColor&&(e.parsedStyle.shadowColor=eu(t.shadowColor)),s.has(`filter`)&&t.filter&&(e.parsedStyle.filter=hu(t.filter)),s.has(`radius`)&&!V(t.radius)&&(e.parsedStyle.radius=du(t.radius,4)),s.has(`lineDash`)&&!V(t.lineDash)&&(e.parsedStyle.lineDash=du(t.lineDash,`even`)),s.has(`points`)&&t.points&&(e.parsedStyle.points=Uu(t.points)),s.has(`d`)&&t.d===``&&(e.parsedStyle.d=tn({},Sc)),s.has(`d`)&&t.d&&(e.parsedStyle.d=Vu(t.d)),s.has(`textTransform`)&&t.textTransform&&this.runtime.CSSPropertySyntaxFactory[K.TEXT_TRANSFORM].calculator(null,null,{value:t.textTransform},e,null),s.has(`clipPath`)&&!na(t.clipPath)&&this.runtime.CSSPropertySyntaxFactory[K.DEFINED_PATH].calculator(`clipPath`,r,t.clipPath,e,this.runtime),s.has(`offsetPath`)&&t.offsetPath&&this.runtime.CSSPropertySyntaxFactory[K.DEFINED_PATH].calculator(`offsetPath`,i,t.offsetPath,e,this.runtime),s.has(`transform`)&&t.transform&&(e.parsedStyle.transform=Zu(t.transform)),s.has(`transformOrigin`)&&t.transformOrigin&&(e.parsedStyle.transformOrigin=fd(t.transformOrigin)),s.has(`markerStart`)&&t.markerStart&&(e.parsedStyle.markerStart=this.runtime.CSSPropertySyntaxFactory[K.MARKER].calculator(null,t.markerStart,t.markerStart,null,null)),s.has(`markerEnd`)&&t.markerEnd&&(e.parsedStyle.markerEnd=this.runtime.CSSPropertySyntaxFactory[K.MARKER].calculator(null,t.markerEnd,t.markerEnd,null,null)),s.has(`markerMid`)&&t.markerMid&&(e.parsedStyle.markerMid=this.runtime.CSSPropertySyntaxFactory[K.MARKER].calculator(``,t.markerMid,t.markerMid,null,null)),s.has(`zIndex`)&&!V(t.zIndex)&&this.runtime.CSSPropertySyntaxFactory[K.Z_INDEX].postProcessor(e),s.has(`offsetDistance`)&&!V(t.offsetDistance)&&this.runtime.CSSPropertySyntaxFactory[K.OFFSET_DISTANCE].postProcessor(e),s.has(`transform`)&&t.transform&&this.runtime.CSSPropertySyntaxFactory[K.TRANSFORM].postProcessor(e),s.has(`transformOrigin`)&&t.transformOrigin&&this.runtime.CSSPropertySyntaxFactory[K.TRANSFORM_ORIGIN].postProcessor(e),a&&(e.dirty(!0,!0),n.forceUpdateGeometry||this.runtime.sceneGraphService.dirtyToRoot(e))}},{key:`updateGeometry`,value:function(e){var t=e.nodeName,n=this.runtime.geometryUpdaterFactory[t];if(n){var r=e.geometry;r.contentBounds||=new As,r.renderBounds||=new As;var i=e.parsedStyle,a=n.update(i,e),o=a.cx,s=o===void 0?0:o,c=a.cy,l=c===void 0?0:c,u=a.cz,d=u===void 0?0:u,f=a.hwidth,p=f===void 0?0:f,m=a.hheight,h=m===void 0?0:m,g=a.hdepth,_=[Math.abs(p),Math.abs(h),g===void 0?0:g],v=i.stroke,y=i.lineWidth,b=y===void 0?1:y,x=i.increasedLineWidthForHitTesting,S=x===void 0?0:x,C=i.shadowType,w=C===void 0?`outer`:C,T=i.shadowColor,E=i.filter,D=E===void 0?[]:E,O=i.transformOrigin,k=[s,l,d];r.contentBounds.update(k,_);var A=t===G.POLYLINE||t===G.POLYGON||t===G.PATH?Math.SQRT2:.5;if(v&&!v.isNone){var j=((b||0)+(S||0))*A;_[0]+=j,_[1]+=j}if(r.renderBounds.update(k,_),T&&w&&w!==`inner`){var ee=r.renderBounds,M=ee.min,te=ee.max,ne=i.shadowBlur,re=i.shadowOffsetX,ie=i.shadowOffsetY,N=ne||0,ae=re||0,oe=ie||0,P=M[0]-N+ae,se=te[0]+N+ae,ce=M[1]-N+oe,le=te[1]+N+oe;M[0]=Math.min(M[0],P),te[0]=Math.max(te[0],se),M[1]=Math.min(M[1],ce),te[1]=Math.max(te[1],le),r.renderBounds.setMinMax(M,te)}D.forEach(function(e){var t=e.name,n=e.params;if(t===`blur`){var i=n[0].value;r.renderBounds.update(r.renderBounds.center,jr(r.renderBounds.halfExtents,r.renderBounds.halfExtents,[i,i,0]))}else if(t===`drop-shadow`){var a=n[0].value,o=n[1].value,s=n[2].value,c=r.renderBounds,l=c.min,u=c.max,d=l[0]-s+a,f=u[0]+s+a,p=l[1]-s+o,m=u[1]+s+o;l[0]=Math.min(l[0],d),u[0]=Math.max(u[0],f),l[1]=Math.min(l[1],p),u[1]=Math.max(u[1],m),r.renderBounds.setMinMax(l,u)}}),e.geometry.dirty=!1;var ue=p<0,de=h<0,fe=(ue?-1:1)*(O?fu(O[0],0,e,!0):0),pe=(de?-1:1)*(O?fu(O[1],1,e,!0):0);(fe||pe)&&e.setOrigin(fe,pe)}}},{key:`updateSizeAttenuation`,value:function(e,t){e.style.isSizeAttenuation?(e.style.rawLineWidth||(e.style.rawLineWidth=e.style.lineWidth),e.style.lineWidth=(e.style.rawLineWidth||1)/t,e.nodeName===G.CIRCLE&&(e.style.rawR||(e.style.rawR=e.style.r),e.style.r=(e.style.rawR||1)/t)):(e.style.rawLineWidth&&(e.style.lineWidth=e.style.rawLineWidth,delete e.style.rawLineWidth),e.nodeName===G.CIRCLE&&e.style.rawR&&(e.style.r=e.style.rawR,delete e.style.rawR))}}])}();function vd(e,t){var n=yd(e);for(var r in t)n.has(r)&&(e.parsedStyle[r]=t[r])}function yd(e){return e.constructor.PARSED_STYLE_LIST}var bd=function(){function e(){R(this,e),this.mixer=yu}return z(e,[{key:`calculator`,value:function(e,t,n,r){return uu(n)}}])}(),xd=function(){function e(){R(this,e)}return z(e,[{key:`calculator`,value:function(e,t,n,r,i){return n instanceof Cl&&(n=null),i.sceneGraphService.updateDisplayObjectDependency(e,t,n,r),e===`clipPath`&&r.forEach(function(e){e.childNodes.length===0&&i.sceneGraphService.dirtyToRoot(e)}),n}}])}(),Sd=function(){function e(){R(this,e),this.parser=eu,this.mixer=tu}return z(e,[{key:`calculator`,value:function(e,t,n,r){return n instanceof Cl?n.value===`none`?Nl:Pl:n}}])}(),Cd=function(){function e(){R(this,e)}return z(e,[{key:`calculator`,value:function(e,t,n){return n instanceof Cl?[]:n}}])}();function wd(e){var t=e.parsedStyle.fontSize;return V(t)?null:t}var Td=function(){function e(){R(this,e),this.mixer=yu}return z(e,[{key:`calculator`,value:function(e,t,n,r,i){if(zi(n))return n;if(El.isRelativeUnit(n.unit)){if(n.unit===J.kPercentage)return 0;if(n.unit===J.kEms){if(r.parentNode){var a=wd(r.parentNode);if(a)return a*=n.value,a}return 0}if(n.unit===J.kRems){var o;if(r!=null&&(o=r.ownerDocument)!=null&&o.documentElement){var s=wd(r.ownerDocument.documentElement);if(s)return s*=n.value,s}return 0}}else return n.value}}])}(),Ed=function(){function e(){R(this,e),this.mixer=xu}return z(e,[{key:`calculator`,value:function(e,t,n){return n.map(function(e){return e.value})}}])}(),Dd=function(){function e(){R(this,e),this.mixer=xu}return z(e,[{key:`calculator`,value:function(e,t,n){return n.map(function(e){return e.value})}}])}(),Od=function(){function e(){R(this,e)}return z(e,[{key:`calculator`,value:function(e,t,n,r){n instanceof Cl&&(n=null);var i=n?.cloneNode(!0);return i&&(i.style.isMarker=!0),i}}])}(),kd=function(){function e(){R(this,e),this.mixer=yu}return z(e,[{key:`calculator`,value:function(e,t,n){return n.value}}])}(),Ad=function(){function e(){R(this,e),this.mixer=bu(0,1)}return z(e,[{key:`calculator`,value:function(e,t,n){return n.value}},{key:`postProcessor`,value:function(e){var t=e.parsedStyle,n=t.offsetPath,r=t.offsetDistance;if(n){var i=n.nodeName;if(i===G.LINE||i===G.PATH||i===G.POLYLINE){var a=n.getPoint(r);a&&e.setLocalPosition(a.x,a.y)}}}}])}(),jd=function(){function e(){R(this,e),this.mixer=bu(0,1)}return z(e,[{key:`calculator`,value:function(e,t,n){return n.value}}])}(),Md=function(){function e(){R(this,e),this.parser=Vu,this.mixer=Hu}return z(e,[{key:`calculator`,value:function(e,t,n){return n instanceof Cl&&n.value===`unset`?{absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:new Fs(0,0,0,0)}:n}}])}(),Nd=z(function e(){R(this,e),this.mixer=Wu}),Pd=function(e){function t(){var e;R(this,t);var n=[...arguments];return e=mn(this,t,[].concat(n)),e.mixer=bu(0,1/0),e}return gn(t,e),z(t)}(Td),Fd=function(){function e(){R(this,e)}return z(e,[{key:`calculator`,value:function(e,t,n,r){return n instanceof Cl?n.value===`unset`?``:n.value:`${n}`}},{key:`postProcessor`,value:function(e){e.nodeValue=`${e.parsedStyle.text}`||``}}])}(),Id=function(){function e(){R(this,e)}return z(e,[{key:`calculator`,value:function(e,t,n,r){var i=r.getAttribute(`text`);if(i){var a=i;n.value===`capitalize`?a=i.charAt(0).toUpperCase()+i.slice(1):n.value===`lowercase`?a=i.toLowerCase():n.value===`uppercase`&&(a=i.toUpperCase()),r.parsedStyle.text=a}return n.value}}])}(),Ld=new WeakMap;function Rd(e,t,n){if(e){var r=typeof e==`string`?document.getElementById(e):e;Ld.has(r)&&Ld.get(r).destroy(n),Ld.set(r,t)}}var zd=typeof window<`u`&&window.document!==void 0;function Bd(e){return!!e.getAttribute}function Vd(e,t){for(var n=0,r=e.length;n<r;){var i=n+r>>>1;Hd(e[i],t)<0?n=i+1:r=i}return n}function Hd(e,t){var n=Number(e.parsedStyle.zIndex||0),r=Number(t.parsedStyle.zIndex||0);if(n===r){var i=e.parentNode;if(i){var a=i.childNodes||[];return a.indexOf(e)-a.indexOf(t)}}return n-r}function Ud(e){var t=e;do{if(t.parsedStyle?.clipPath)return t;t=t.parentElement}while(t!==null);return null}var Wd=`px`;function Gd(e,t,n){zd&&e.style&&(e.style.width=t+Wd,e.style.height=n+Wd)}function Kd(e,t){if(zd)return document.defaultView.getComputedStyle(e,null).getPropertyValue(t)}function qd(e){var t=Kd(e,`width`);return t===`auto`?e.offsetWidth:parseFloat(t)}function Jd(e){var t=Kd(e,`height`);return t===`auto`?e.offsetHeight:parseFloat(t)}var Yd=1,Xd={touchstart:`pointerdown`,touchend:`pointerup`,touchendoutside:`pointerupoutside`,touchmove:`pointermove`,touchcancel:`pointercancel`},Zd=typeof performance==`object`&&performance.now?performance:Date;function Qd(e){return e.nodeName===G.FRAGMENT?!0:e.getRootNode().nodeName===G.FRAGMENT}function $d(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:`auto`,t=arguments.length>1?arguments[1]:void 0,n=arguments.length>2?arguments[2]:void 0,r=!1,i=!1,a=!!t&&!t.isNone,o=!!n&&!n.isNone;return e===`visiblepainted`||e===`painted`||e===`auto`?(r=a,i=o):e===`visiblefill`||e===`fill`?r=!0:e===`visiblestroke`||e===`stroke`?i=!0:(e===`visible`||e===`all`)&&(r=!0,i=!0),[r,i]}var ef=1,tf=function(){return ef++},nf=typeof self==`object`&&self.self===self?self:typeof global==`object`&&global.global===global?global:{},rf=Date.now(),af=function(){return nf.performance&&typeof nf.performance.now==`function`?nf.performance.now():Date.now()-rf},of={},sf=Date.now(),cf=function(e){if(typeof e!=`function`)throw TypeError(`${e} is not a function`);var t=Date.now(),n=t-sf,r=n>16?0:16-n,i=tf();return of[i]=e,Object.keys(of).length>1||setTimeout(function(){sf=t;var e=of;of={},Object.keys(e).forEach(function(t){return e[t](af())})},r),i},lf=function(e){delete of[e]},uf=[``,`webkit`,`moz`,`ms`,`o`],df=function(e){return typeof e==`string`?e===``?nf.requestAnimationFrame:nf[`${e}RequestAnimationFrame`]:cf},ff=function(e){return typeof e==`string`?e===``?nf.cancelAnimationFrame:nf[`${e}CancelAnimationFrame`]||nf[`${e}CancelRequestAnimationFrame`]:lf},pf=function(e,t){for(var n=0;e[n]!==void 0;){if(t(e[n]))return e[n];n+=1}}(uf,function(e){return!!df(e)}),mf=df(pf),hf=ff(pf);nf.requestAnimationFrame=mf,nf.cancelAnimationFrame=hf;var gf=function(){function e(){R(this,e),this.callbacks=[]}return z(e,[{key:`getCallbacksNum`,value:function(){return this.callbacks.length}},{key:`tapPromise`,value:function(e,t){this.callbacks.push(t)}},{key:`promise`,value:function(){var e=[...arguments];return Promise.all(this.callbacks.map(function(t){return t.apply(void 0,e)}))}}])}(),_f=function(){function e(){R(this,e),this.callbacks=[]}return z(e,[{key:`tapPromise`,value:function(e,t){this.callbacks.push(t)}},{key:`promise`,value:function(){var e=_s(hs().mark(function e(){var t,n,r,i,a=arguments;return hs().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!this.callbacks.length){e.next=6;break}return e.next=1,(t=this.callbacks)[0].apply(t,a);case 1:n=e.sent,r=1;case 2:if(!(r<this.callbacks.length)){e.next=5;break}return i=this.callbacks[r],e.next=3,i(n);case 3:n=e.sent;case 4:r++,e.next=2;break;case 5:return e.abrupt(`return`,n);case 6:return e.abrupt(`return`,null);case 7:case`end`:return e.stop()}},e,this)}));function t(){return e.apply(this,arguments)}return t}()}])}(),vf=function(){function e(){R(this,e),this.callbacks=[]}return z(e,[{key:`tap`,value:function(e,t){this.callbacks.push(t)}},{key:`call`,value:function(){var e=arguments;this.callbacks.forEach(function(t){t.apply(void 0,e)})}}])}(),yf=function(){function e(){R(this,e),this.callbacks=[]}return z(e,[{key:`tap`,value:function(e,t){this.callbacks.push(t)}},{key:`call`,value:function(){if(this.callbacks.length){for(var e=arguments,t=this.callbacks[0].apply(void 0,e),n=1;n<this.callbacks.length;n++){var r=this.callbacks[n];t=r(t)}return t}return null}}])}(),bf=[`serif`,`sans-serif`,`monospace`,`cursive`,`fantasy`,`system-ui`],xf=/([\"\'])[^\'\"]+\1/;function Sf(e){var t=e.fontSize,n=t===void 0?16:t,r=e.fontFamily,i=r===void 0?`sans-serif`:r,a=e.fontStyle,o=a===void 0?`normal`:a,s=e.fontVariant,c=s===void 0?`normal`:s,l=e.fontWeight;return{fontSize:n,fontFamily:i,fontStyle:o,fontVariant:c,fontWeight:l===void 0?`normal`:l}}var Cf=sl(function(e){for(var t=Sf(e),n=t.fontSize,r=t.fontFamily,i=t.fontStyle,a=t.fontVariant,o=t.fontWeight,s=zi(n)&&`${n}px`||`16px`,c=r.split(`,`),l=c.length-1;l>=0;l--){var u=c[l].trim();!xf.test(u)&&bf.indexOf(u)<0&&(u=`"${u}"`),c[l]=u}return`${i} ${a} ${o} ${s} ${c.join(`,`)}`},function(e){var t=Sf(e),n=t.fontSize,r=t.fontFamily;return`${t.fontStyle}_${t.fontVariant}_${t.fontWeight}_${n}_${r}`}),wf=1e-6,Tf=function(e){return Math.max(e,wf)};function Ef(e,t,n){return Mn(e),e[4]=Math.tan(t),e[1]=Math.tan(n),e}var Df=Dn(),Of=Dn(),kf={scale:function(e){Gn(Df,[e[0].value,e[1].value,1].map(function(e){return Tf(e)}))},scaleX:function(e){Gn(Df,[e[0].value,1,1].map(function(e){return Tf(e)}))},scaleY:function(e){Gn(Df,[1,e[0].value,1].map(function(e){return Tf(e)}))},scaleZ:function(e){Gn(Df,[1,1,e[0].value].map(function(e){return Tf(e)}))},scale3d:function(e){Gn(Df,[e[0].value,e[1].value,e[2].value].map(function(e){return Tf(e)}))},translate:function(e){Wn(Df,[e[0].value,e[1].value,0])},translateX:function(e){Wn(Df,[e[0].value,0,0])},translateY:function(e){Wn(Df,[0,e[0].value,0])},translateZ:function(e){Wn(Df,[0,0,e[0].value])},translate3d:function(e){Wn(Df,[e[0].value,e[1].value,e[2].value])},rotate:function(e){Yn(Df,Us(uu(e[0])))},rotateX:function(e){qn(Df,Us(uu(e[0])))},rotateY:function(e){Jn(Df,Us(uu(e[0])))},rotateZ:function(e){Yn(Df,Us(uu(e[0])))},rotate3d:function(e){Kn(Df,Us(uu(e[3])),[e[0].value,e[1].value,e[2].value])},skew:function(e){Ef(Df,Us(e[0].value),Us(e[1].value))},skewX:function(e){Ef(Df,Us(e[0].value),0)},skewY:function(e){Ef(Df,0,Us(e[0].value))},matrix:function(e){jn(Df,e[0].value,e[1].value,0,0,e[2].value,e[3].value,0,0,0,0,1,0,e[4].value,e[5].value,0,1)},matrix3d:function(e){jn.apply(En,[Df].concat(ln(e.map(function(e){return e.value}))))}},Af=Or(1,1,1),jf=Tr(),Mf={translate:function(e,t){Y.sceneGraphService.setLocalScale(e,Af,!1),Y.sceneGraphService.setLocalEulerAngles(e,jf,void 0,void 0,!1),Y.sceneGraphService.setLocalPosition(e,[t[0].value,t[1].value,0],!1),Y.sceneGraphService.dirtyLocalTransform(e,e.transformable)}};function Nf(e,t){if(e.length){if(e.length===1&&Mf[e[0].t]){Mf[e[0].t](t,e[0].d);return}for(var n=Mn(Of),r=0;r<e.length;r++){var i=e[r],a=i.t,o=i.d,s=kf[a];s&&(s(o),Cr(n,n,Df))}t.setLocalTransform(n)}else t.resetLocalTransform();return t.getLocalTransform()}var Pf=function(){function e(){R(this,e),this.parser=Qu,this.mixer=dd}return z(e,[{key:`calculator`,value:function(e,t,n,r){return n instanceof Cl?[]:n}},{key:`postProcessor`,value:function(e){Nf(e.parsedStyle.transform,e)}}])}(),Ff=function(){function e(){R(this,e)}return z(e,[{key:`postProcessor`,value:function(e){var t=e.parsedStyle.transformOrigin;t[0].unit===J.kPixels&&t[1].unit===J.kPixels?e.setOrigin(t[0].value,t[1].value):e.getGeometryBounds()}}])}(),If=function(){function e(){R(this,e)}return z(e,[{key:`calculator`,value:function(e,t,n,r){return n.value}},{key:`postProcessor`,value:function(e){if(e.parentNode){var t=e.parentNode,n=t.renderable,r=t.sortable;n&&t.dirty(),r&&(r.dirty=!0,r.dirtyReason=gc.Z_INDEX_CHANGED)}}}])}(),Lf=function(){function e(){R(this,e)}return z(e,[{key:`update`,value:function(e,t){var n=e.cx,r=n===void 0?0:n,i=e.cy,a=i===void 0?0:i,o=e.r,s=o===void 0?0:o;return{cx:r,cy:a,hwidth:s,hheight:s}}}])}(),Rf=function(){function e(){R(this,e)}return z(e,[{key:`update`,value:function(e,t){var n=e.cx,r=n===void 0?0:n,i=e.cy,a=i===void 0?0:i,o=e.rx,s=o===void 0?0:o,c=e.ry;return{cx:r,cy:a,hwidth:s,hheight:c===void 0?0:c}}}])}(),zf=function(){function e(){R(this,e)}return z(e,[{key:`update`,value:function(e){var t=e.x1,n=e.y1,r=e.x2,i=e.y2,a=Math.min(t,r),o=Math.max(t,r),s=Math.min(n,i),c=Math.max(n,i),l=o-a,u=c-s,d=l/2,f=u/2;return{cx:a+d,cy:s+f,hwidth:d,hheight:f}}}])}(),Bf=function(){function e(){R(this,e)}return z(e,[{key:`update`,value:function(e){var t=e.d.rect,n=t.x,r=t.y,i=t.width,a=t.height,o=i/2,s=a/2;return{cx:n+o,cy:r+s,hwidth:o,hheight:s}}}])}(),Vf=function(){function e(){R(this,e)}return z(e,[{key:`update`,value:function(e){if(e.points&&Ci(e.points.points)){var t=e.points.points,n=Math.min.apply(Math,ln(t.map(function(e){return e[0]}))),r=Math.max.apply(Math,ln(t.map(function(e){return e[0]}))),i=Math.min.apply(Math,ln(t.map(function(e){return e[1]}))),a=Math.max.apply(Math,ln(t.map(function(e){return e[1]}))),o=r-n,s=a-i,c=o/2,l=s/2;return{cx:n+c,cy:i+l,hwidth:c,hheight:l}}return{cx:0,cy:0,hwidth:0,hheight:0}}}])}(),Hf=function(){function e(){R(this,e)}return z(e,[{key:`update`,value:function(e,t){var n=e.x,r=n===void 0?0:n,i=e.y,a=i===void 0?0:i,o=e.src,s=e.width,c=s===void 0?0:s,l=e.height,u=l===void 0?0:l,d=c,f=u;return o&&!Pi(o)&&(d||(d=o.width,e.width=d),f||(f=o.height,e.height=f)),{cx:r+d/2,cy:a+f/2,hwidth:d/2,hheight:f/2}}}])}(),Uf=function(){function e(t){R(this,e),this.globalRuntime=t}return z(e,[{key:`isReadyToMeasure`,value:function(e,t){return e.text}},{key:`update`,value:function(e,t){var n,r=e.text,i=e.textAlign,a=i===void 0?`start`:i,o=e.lineWidth,s=o===void 0?1:o,c=e.textBaseline,l=c===void 0?`alphabetic`:c,u=e.dx,d=u===void 0?0:u,f=e.dy,p=f===void 0?0:f,m=e.x,h=m===void 0?0:m,g=e.y,_=g===void 0?0:g;if(!this.isReadyToMeasure(e,t))return e.metrics={font:``,width:0,height:0,lines:[],lineWidths:[],lineHeight:0,maxLineWidth:0,fontProperties:{ascent:0,descent:0,fontSize:0},lineMetrics:[]},{hwidth:0,hheight:0,cx:0,cy:0};var v=((t==null||(n=t.ownerDocument)==null||(n=n.defaultView)==null?void 0:n.getConfig())||{}).offscreenCanvas,y=this.globalRuntime.textService.measureText(r,e,v);e.metrics=y;var b=y.width,x=y.height,S=b/2,C=x/2,w=h+S;a===`center`||a===`middle`?w+=s/2-S:(a===`right`||a===`end`)&&(w+=s-S*2);var T=_-C;return l===`middle`?T+=C:l===`top`||l===`hanging`?T+=C*2:l===`alphabetic`||(l===`bottom`||l===`ideographic`)&&(T+=0),d&&(w+=d),p&&(T+=p),{cx:w,cy:T,hwidth:S,hheight:C}}}])}(),Wf=function(){function e(){R(this,e)}return z(e,[{key:`update`,value:function(e,t){return{cx:0,cy:0,hwidth:0,hheight:0}}}])}(),Gf=function(){function e(){R(this,e)}return z(e,[{key:`update`,value:function(e,t){var n=e.x,r=n===void 0?0:n,i=e.y,a=i===void 0?0:i,o=e.width,s=o===void 0?0:o,c=e.height,l=c===void 0?0:c;return{cx:r+s/2,cy:a+l/2,hwidth:s/2,hheight:l/2}}}])}(),Kf=function(){function e(t){R(this,e),this.eventPhase=e.prototype.NONE,this.bubbles=!0,this.cancelBubble=!0,this.cancelable=!1,this.defaultPrevented=!1,this.propagationStopped=!1,this.propagationImmediatelyStopped=!1,this.layer=new Ps,this.page=new Ps,this.canvas=new Ps,this.viewport=new Ps,this.composed=!1,this.NONE=0,this.CAPTURING_PHASE=1,this.AT_TARGET=2,this.BUBBLING_PHASE=3,this.manager=t}return z(e,[{key:`name`,get:function(){return this.type}},{key:`layerX`,get:function(){return this.layer.x}},{key:`layerY`,get:function(){return this.layer.y}},{key:`pageX`,get:function(){return this.page.x}},{key:`pageY`,get:function(){return this.page.y}},{key:`x`,get:function(){return this.canvas.x}},{key:`y`,get:function(){return this.canvas.y}},{key:`canvasX`,get:function(){return this.canvas.x}},{key:`canvasY`,get:function(){return this.canvas.y}},{key:`viewportX`,get:function(){return this.viewport.x}},{key:`viewportY`,get:function(){return this.viewport.y}},{key:`composedPath`,value:function(){return this.manager&&(!this.path||this.path[0]!==this.target)&&(this.path=this.target?this.manager.propagationPath(this.target):[]),this.path}},{key:`propagationPath`,get:function(){return this.composedPath()}},{key:`preventDefault`,value:function(){this.nativeEvent instanceof Event&&this.nativeEvent.cancelable&&this.nativeEvent.preventDefault(),this.defaultPrevented=!0}},{key:`stopImmediatePropagation`,value:function(){this.propagationImmediatelyStopped=!0}},{key:`stopPropagation`,value:function(){this.propagationStopped=!0}},{key:`initEvent`,value:function(){}},{key:`initUIEvent`,value:function(){}},{key:`clone`,value:function(){throw Error(Is)}}])}(),qf=function(e){function t(){var e;R(this,t);var n=[...arguments];return e=mn(this,t,[].concat(n)),e.client=new Ps,e.movement=new Ps,e.offset=new Ps,e.global=new Ps,e.screen=new Ps,e}return gn(t,e),z(t,[{key:`clientX`,get:function(){return this.client.x}},{key:`clientY`,get:function(){return this.client.y}},{key:`movementX`,get:function(){return this.movement.x}},{key:`movementY`,get:function(){return this.movement.y}},{key:`offsetX`,get:function(){return this.offset.x}},{key:`offsetY`,get:function(){return this.offset.y}},{key:`globalX`,get:function(){return this.global.x}},{key:`globalY`,get:function(){return this.global.y}},{key:`screenX`,get:function(){return this.screen.x}},{key:`screenY`,get:function(){return this.screen.y}},{key:`getModifierState`,value:function(e){return`getModifierState`in this.nativeEvent&&this.nativeEvent.getModifierState(e)}},{key:`initMouseEvent`,value:function(){throw Error(Is)}}])}(Kf),Jf=function(e){function t(){var e;R(this,t);var n=[...arguments];return e=mn(this,t,[].concat(n)),e.width=0,e.height=0,e.isPrimary=!1,e}return gn(t,e),z(t,[{key:`getCoalescedEvents`,value:function(){return this.type===`pointermove`||this.type===`mousemove`||this.type===`touchmove`?[this]:[]}},{key:`getPredictedEvents`,value:function(){throw Error(`getPredictedEvents is not supported!`)}},{key:`clone`,value:function(){return this.manager.clonePointerEvent(this)}}])}(qf),Yf=function(e){function t(){return R(this,t),mn(this,t,arguments)}return gn(t,e),z(t,[{key:`clone`,value:function(){return this.manager.cloneWheelEvent(this)}}])}(qf),Xf=function(e){function t(e,n){var r;return R(this,t),r=mn(this,t,[null]),r.type=e,r.detail=n?.detail,n&&!(`detail`in n)&&(r.detail=n),Object.assign(r,n),r}return gn(t,e),z(t)}(Kf),Zf=function(){function e(){R(this,e),this.emitter=new xn}return z(e,[{key:`on`,value:function(e,t,n){return this.addEventListener(e,t,n),this}},{key:`addEventListener`,value:function(e,t,n){var r=!1,i=!1;if(Zi(n))r=n;else if(n){var a=n.capture;r=a===void 0?!1:a;var o=n.once;i=o===void 0?!1:o}r&&(e+=`capture`),t=B(t)?t:t.handleEvent;var s=B(t)?void 0:t;return i?this.emitter.once(e,t,s):this.emitter.on(e,t,s),this}},{key:`off`,value:function(e,t,n){return e?this.removeEventListener(e,t,n):this.removeAllEventListeners(),this}},{key:`removeAllEventListeners`,value:function(){var e;(e=this.emitter)==null||e.removeAllListeners()}},{key:`removeEventListener`,value:function(e,t,n){if(!this.emitter)return this;(Zi(n)?n:n?.capture)&&(e+=`capture`),t=B(t)?t:t?.handleEvent;var r=B(t)?void 0:t;return this.emitter.off(e,t,r),this}},{key:`emit`,value:function(e,t){this.dispatchEvent(new Xf(e,t))}},{key:`dispatchEventToSelf`,value:function(e){e.target||=this,e.currentTarget=this,this.emitter.emit(e.type,e)}},{key:`dispatchEvent`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(arguments.length>2&&arguments[2])return this.dispatchEventToSelf(e),!0;var n=this.document?this:this.defaultView?this.defaultView:this.ownerDocument?.defaultView;if(n){if(e.manager=n.getEventService(),!e.manager)return!1;e.defaultPrevented=!1,e.path?e.path.length=0:e.page=[],t||(e.target=this),e.manager.dispatchEvent(e,e.type,t)}else this.dispatchEventToSelf(e);return!e.defaultPrevented}}])}(),Qf=function(e){function t(){var e;R(this,t);var n=[...arguments];return e=mn(this,t,[].concat(n)),e.shadow=!1,e.ownerDocument=null,e.isConnected=!1,e.baseURI=``,e.childNodes=[],e.nodeType=0,e.nodeName=``,e.nodeValue=null,e.mutations=void 0,e.parentNode=null,e.destroyed=!1,e}return gn(t,e),z(t,[{key:`textContent`,get:function(){var e=``;this.nodeName===G.TEXT&&(e+=this.style.text);var t=vs(this.childNodes),n;try{for(t.s();!(n=t.n()).done;){var r=n.value;r.nodeName===G.TEXT?e+=r.nodeValue:e+=r.textContent}}catch(e){t.e(e)}finally{t.f()}return e},set:function(e){var t=this;this.childNodes.slice().forEach(function(e){t.removeChild(e)}),this.nodeName===G.TEXT&&(this.style.text=`${e}`)}},{key:`getRootNode`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return this.parentNode?this.parentNode.getRootNode(e):e.composed&&this.host?this.host.getRootNode(e):this}},{key:`hasChildNodes`,value:function(){return this.childNodes.length>0}},{key:`isDefaultNamespace`,value:function(e){throw Error(Is)}},{key:`lookupNamespaceURI`,value:function(e){throw Error(Is)}},{key:`lookupPrefix`,value:function(e){throw Error(Is)}},{key:`normalize`,value:function(){throw Error(Is)}},{key:`isEqualNode`,value:function(e){return this===e}},{key:`isSameNode`,value:function(e){return this.isEqualNode(e)}},{key:`parent`,get:function(){return this.parentNode}},{key:`parentElement`,get:function(){return null}},{key:`nextSibling`,get:function(){return null}},{key:`previousSibling`,get:function(){return null}},{key:`firstChild`,get:function(){return this.childNodes.length>0?this.childNodes[0]:null}},{key:`lastChild`,get:function(){return this.childNodes.length>0?this.childNodes[this.childNodes.length-1]:null}},{key:`compareDocumentPosition`,value:function(e){if(e===this)return 0;for(var n=e,r=this,i=[n],a=[r];(o=n.parentNode)??r.parentNode;){var o;n=n.parentNode?(i.push(n.parentNode),n.parentNode):n,r=r.parentNode?(a.push(r.parentNode),r.parentNode):r}if(n!==r)return t.DOCUMENT_POSITION_DISCONNECTED|t.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC|t.DOCUMENT_POSITION_PRECEDING;var s=i.length>a.length?i:a,c=s===i?a:i;if(s[s.length-c.length]===c[0])return s===i?t.DOCUMENT_POSITION_CONTAINED_BY|t.DOCUMENT_POSITION_FOLLOWING:t.DOCUMENT_POSITION_CONTAINS|t.DOCUMENT_POSITION_PRECEDING;for(var l=s.length-c.length,u=c.length-1;u>=0;u--){var d=c[u],f=s[l+u];if(f!==d){var p=d.parentNode.childNodes;return p.indexOf(d)<p.indexOf(f)?c===i?t.DOCUMENT_POSITION_PRECEDING:t.DOCUMENT_POSITION_FOLLOWING:s===i?t.DOCUMENT_POSITION_PRECEDING:t.DOCUMENT_POSITION_FOLLOWING}}return t.DOCUMENT_POSITION_FOLLOWING}},{key:`contain`,value:function(e){return this.contains(e)}},{key:`contains`,value:function(e){for(var t=e;t&&this!==t;)t=t.parentNode;return!!t}},{key:`getAncestor`,value:function(e){for(var t=this;e>0&&t;)t=t.parentNode,e--;return t}},{key:`forEach`,value:function(e){for(var t=[this];t.length>0;){var n=t.pop();if(e(n)===!1)break;for(var r=n.childNodes.length-1;r>=0;r--)t.push(n.childNodes[r])}}}],[{key:`isNode`,value:function(e){return!!e.childNodes}}])}(Zf);Qf.DOCUMENT_POSITION_DISCONNECTED=1,Qf.DOCUMENT_POSITION_PRECEDING=2,Qf.DOCUMENT_POSITION_FOLLOWING=4,Qf.DOCUMENT_POSITION_CONTAINS=8,Qf.DOCUMENT_POSITION_CONTAINED_BY=16,Qf.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC=32;var $f=2048,ep=function(){function e(t,n){var r=this;R(this,e),this.nativeHTMLMap=new WeakMap,this.cursor=`default`,this.mappingTable={},this.mappingState={trackingData:{}},this.eventPool=new Map,this.tmpMatrix=Dn(),this.tmpVec3=Tr(),this.onPointerDown=function(e){var t=r.createPointerEvent(e);if(r.dispatchEvent(t,`pointerdown`),t.pointerType===`touch`)r.dispatchEvent(t,`touchstart`);else if(t.pointerType===`mouse`||t.pointerType===`pen`){var n=t.button===2;r.dispatchEvent(t,n?`rightdown`:`mousedown`)}var i=r.trackingData(e.pointerId);i.pressTargetsByButton[e.button]=t.composedPath(),r.freeEvent(t)},this.onPointerUp=function(e){var t=Zd.now(),n=r.createPointerEvent(e,void 0,void 0,r.context.config.alwaysTriggerPointerEventOnCanvas?r.rootTarget:void 0);if(r.dispatchEvent(n,`pointerup`),n.pointerType===`touch`)r.dispatchEvent(n,`touchend`);else if(n.pointerType===`mouse`||n.pointerType===`pen`){var i=n.button===2;r.dispatchEvent(n,i?`rightup`:`mouseup`)}var a=r.trackingData(e.pointerId),o=r.findMountedTarget(a.pressTargetsByButton[e.button]),s=o;if(o&&!n.composedPath().includes(o)){for(var c=o;c&&!n.composedPath().includes(c);){if(n.currentTarget=c,r.notifyTarget(n,`pointerupoutside`),n.pointerType===`touch`)r.notifyTarget(n,`touchendoutside`);else if(n.pointerType===`mouse`||n.pointerType===`pen`){var l=n.button===2;r.notifyTarget(n,l?`rightupoutside`:`mouseupoutside`)}Qf.isNode(c)&&(c=c.parentNode)}delete a.pressTargetsByButton[e.button],s=c}if(s){var u,d=r.clonePointerEvent(n,`click`);d.target=s,d.path=[],a.clicksByButton[e.button]||(a.clicksByButton[e.button]={clickCount:0,target:d.target,timeStamp:t});var f=r.context.renderingContext.root.ownerDocument.defaultView,p=a.clicksByButton[e.button];p.target===d.target&&t-p.timeStamp<f.getConfig().dblClickSpeed?++p.clickCount:p.clickCount=1,p.target=d.target,p.timeStamp=t,d.detail=p.clickCount,(u=n.detail)!=null&&u.preventClick||(!r.context.config.useNativeClickEvent&&(d.pointerType===`mouse`||d.pointerType===`touch`)&&r.dispatchEvent(d,`click`),r.dispatchEvent(d,`pointertap`)),r.freeEvent(d)}r.freeEvent(n)},this.onPointerMove=function(e){var t=r.createPointerEvent(e,void 0,void 0,r.context.config.alwaysTriggerPointerEventOnCanvas?r.rootTarget:void 0),n=t.pointerType===`mouse`||t.pointerType===`pen`,i=r.trackingData(e.pointerId),a=r.findMountedTarget(i.overTargets);if(i.overTargets&&a!==t.target){var o=e.type===`mousemove`?`mouseout`:`pointerout`,s=r.createPointerEvent(e,o,a||void 0);if(r.dispatchEvent(s,`pointerout`),n&&r.dispatchEvent(s,`mouseout`),!t.composedPath().includes(a)){var c=r.createPointerEvent(e,`pointerleave`,a||void 0);for(c.eventPhase=c.AT_TARGET;c.target&&!t.composedPath().includes(c.target);)c.currentTarget=c.target,r.notifyTarget(c),n&&r.notifyTarget(c,`mouseleave`),Qf.isNode(c.target)&&(c.target=c.target.parentNode);r.freeEvent(c)}r.freeEvent(s)}if(a!==t.target){var l=e.type===`mousemove`?`mouseover`:`pointerover`,u=r.clonePointerEvent(t,l);r.dispatchEvent(u,`pointerover`),n&&r.dispatchEvent(u,`mouseover`);for(var d=a&&Qf.isNode(a)&&a.parentNode;d&&d!==(Qf.isNode(r.rootTarget)&&r.rootTarget.parentNode)&&d!==t.target;)d=d.parentNode;if(!d||d===(Qf.isNode(r.rootTarget)&&r.rootTarget.parentNode)){var f=r.clonePointerEvent(t,`pointerenter`);for(f.eventPhase=f.AT_TARGET;f.target&&f.target!==a&&f.target!==(Qf.isNode(r.rootTarget)&&r.rootTarget.parentNode);)f.currentTarget=f.target,r.notifyTarget(f),n&&r.notifyTarget(f,`mouseenter`),Qf.isNode(f.target)&&(f.target=f.target.parentNode);r.freeEvent(f)}r.freeEvent(u)}r.dispatchEvent(t,`pointermove`),t.pointerType===`touch`&&r.dispatchEvent(t,`touchmove`),n&&(r.dispatchEvent(t,`mousemove`),r.cursor=r.getCursor(t.target)),i.overTargets=t.composedPath(),r.freeEvent(t)},this.onPointerOut=function(e){var t=r.trackingData(e.pointerId);if(t.overTargets){var n=e.pointerType===`mouse`||e.pointerType===`pen`,i=r.findMountedTarget(t.overTargets),a=r.createPointerEvent(e,`pointerout`,i||void 0);r.dispatchEvent(a),n&&r.dispatchEvent(a,`mouseout`);var o=r.createPointerEvent(e,`pointerleave`,i||void 0);for(o.eventPhase=o.AT_TARGET;o.target&&o.target!==(Qf.isNode(r.rootTarget)&&r.rootTarget.parentNode);)o.currentTarget=o.target,r.notifyTarget(o),n&&r.notifyTarget(o,`mouseleave`),Qf.isNode(o.target)&&(o.target=o.target.parentNode);t.overTargets=null,r.freeEvent(a),r.freeEvent(o)}r.cursor=null},this.onPointerOver=function(e){var t=r.trackingData(e.pointerId),n=r.createPointerEvent(e),i=n.pointerType===`mouse`||n.pointerType===`pen`;r.dispatchEvent(n,`pointerover`),i&&r.dispatchEvent(n,`mouseover`),n.pointerType===`mouse`&&(r.cursor=r.getCursor(n.target));var a=r.clonePointerEvent(n,`pointerenter`);for(a.eventPhase=a.AT_TARGET;a.target&&a.target!==(Qf.isNode(r.rootTarget)&&r.rootTarget.parentNode);)a.currentTarget=a.target,r.notifyTarget(a),i&&r.notifyTarget(a,`mouseenter`),Qf.isNode(a.target)&&(a.target=a.target.parentNode);t.overTargets=n.composedPath(),r.freeEvent(n),r.freeEvent(a)},this.onPointerUpOutside=function(e){var t=r.trackingData(e.pointerId),n=r.findMountedTarget(t.pressTargetsByButton[e.button]),i=r.createPointerEvent(e);if(n){for(var a=n;a;)i.currentTarget=a,r.notifyTarget(i,`pointerupoutside`),i.pointerType===`touch`||(i.pointerType===`mouse`||i.pointerType===`pen`)&&r.notifyTarget(i,i.button===2?`rightupoutside`:`mouseupoutside`),Qf.isNode(a)&&(a=a.parentNode);delete t.pressTargetsByButton[e.button]}r.freeEvent(i)},this.onWheel=function(e){var t=r.createWheelEvent(e);r.dispatchEvent(t),r.freeEvent(t)},this.onClick=function(e){if(r.context.config.useNativeClickEvent){var t=r.createPointerEvent(e);r.dispatchEvent(t),r.freeEvent(t)}},this.onPointerCancel=function(e){var t=r.createPointerEvent(e,void 0,void 0,r.context.config.alwaysTriggerPointerEventOnCanvas?r.rootTarget:void 0);r.dispatchEvent(t),r.freeEvent(t)},this.globalRuntime=t,this.context=n}return z(e,[{key:`init`,value:function(){this.rootTarget=this.context.renderingContext.root.parentNode,this.addEventMapping(`pointerdown`,this.onPointerDown),this.addEventMapping(`pointerup`,this.onPointerUp),this.addEventMapping(`pointermove`,this.onPointerMove),this.addEventMapping(`pointerout`,this.onPointerOut),this.addEventMapping(`pointerleave`,this.onPointerOut),this.addEventMapping(`pointercancel`,this.onPointerCancel),this.addEventMapping(`pointerover`,this.onPointerOver),this.addEventMapping(`pointerupoutside`,this.onPointerUpOutside),this.addEventMapping(`wheel`,this.onWheel),this.addEventMapping(`click`,this.onClick)}},{key:`destroy`,value:function(){this.mappingTable={},this.mappingState={},this.eventPool.clear()}},{key:`getScale`,value:function(){var e=this.context.contextService.getBoundingClientRect(),t=1,n=1,r=this.context.contextService.getDomElement();if(r&&e){var i=r.offsetWidth,a=r.offsetHeight;i&&a&&(t=e.width/i,n=e.height/a)}return{scaleX:t,scaleY:n,bbox:e}}},{key:`client2Viewport`,value:function(e){var t=this.getScale(),n=t.scaleX,r=t.scaleY,i=t.bbox;return new Ps((e.x-(i?.left||0))/n,(e.y-(i?.top||0))/r)}},{key:`viewport2Client`,value:function(e){var t=this.getScale(),n=t.scaleX,r=t.scaleY,i=t.bbox;return new Ps((e.x+(i?.left||0))*n,(e.y+(i?.top||0))*r)}},{key:`viewport2Canvas`,value:function(e){var t=e.x,n=e.y,r=this.rootTarget.defaultView.getCamera(),i=this.context.config,a=i.width,o=i.height,s=r.getPerspectiveInverse(),c=r.getWorldTransform(),l=Ln(this.tmpMatrix,c,s),u=Ar(this.tmpVec3,t/a*2-1,(1-n/o)*2-1,0);return Hr(u,u,l),new Ps(u[0],u[1])}},{key:`canvas2Viewport`,value:function(e){var t=this.rootTarget.defaultView.getCamera(),n=t.getPerspective(),r=t.getViewTransform(),i=Ln(this.tmpMatrix,n,r),a=Ar(this.tmpVec3,e.x,e.y,0);Hr(this.tmpVec3,this.tmpVec3,i);var o=this.context.config,s=o.width,c=o.height;return new Ps((a[0]+1)/2*s,(1-(a[1]+1)/2)*c)}},{key:`setPickHandler`,value:function(e){this.pickHandler=e}},{key:`addEventMapping`,value:function(e,t){this.mappingTable[e]||(this.mappingTable[e]=[]),this.mappingTable[e].push({fn:t,priority:0}),this.mappingTable[e].sort(function(e,t){return e.priority-t.priority})}},{key:`mapEvent`,value:function(e){if(this.rootTarget){var t=this.mappingTable[e.type];if(t)for(var n=0,r=t.length;n<r;n++)t[n].fn(e);else console.warn(`[EventService]: Event mapping not defined for ${e.type}`)}}},{key:`dispatchEvent`,value:function(e,t,n){n?(e.eventPhase=e.AT_TARGET,e.currentTarget=this.rootTarget.defaultView||null,this.notifyListeners(e,t)):(e.propagationStopped=!1,e.propagationImmediatelyStopped=!1,this.propagate(e,t))}},{key:`propagate`,value:function(e,t){if(e.target){var n=e.composedPath();e.eventPhase=e.CAPTURING_PHASE;for(var r=n.length-1;r>=1;r--)if(e.currentTarget=n[r],this.notifyTarget(e,t),e.propagationStopped||e.propagationImmediatelyStopped)return;if(e.eventPhase=e.AT_TARGET,e.currentTarget=e.target,this.notifyTarget(e,t),!(e.propagationStopped||e.propagationImmediatelyStopped)){var i=n.indexOf(e.currentTarget);e.eventPhase=e.BUBBLING_PHASE;for(var a=i+1;a<n.length;a++)if(e.currentTarget=n[a],this.notifyTarget(e,t),e.propagationStopped||e.propagationImmediatelyStopped)return}}}},{key:`propagationPath`,value:function(e){var t=[e],n=this.rootTarget.defaultView||null;if(n&&n===e)return t.unshift(n.document),t;for(var r=0;r<$f&&e!==this.rootTarget;r++)Qf.isNode(e)&&e.parentNode&&(t.push(e.parentNode),e=e.parentNode);return n&&t.push(n),t}},{key:`hitTest`,value:function(e){var t=e.viewportX,n=e.viewportY,r=this.context.config,i=r.width,a=r.height,o=r.disableHitTesting;return t<0||n<0||t>i||n>a?null:!o&&this.pickHandler(e)||this.rootTarget||null}},{key:`isNativeEventFromCanvas`,value:function(e,t){var n,r=t?.target;if((n=r)!=null&&n.shadowRoot&&(r=t.composedPath()[0]),r){if(r===e)return!0;if(e&&e.contains)return e.contains(r)}return t!=null&&t.composedPath?t.composedPath().indexOf(e)>-1:!1}},{key:`getExistedHTML`,value:function(e){if(e.nativeEvent.composedPath)for(var t=0,n=e.nativeEvent.composedPath();t<n.length;t++){var r=n[t],i=this.nativeHTMLMap.get(r);if(i)return i}return null}},{key:`pickTarget`,value:function(e){return this.hitTest({clientX:e.clientX,clientY:e.clientY,viewportX:e.viewportX,viewportY:e.viewportY,x:e.canvasX,y:e.canvasY})}},{key:`createPointerEvent`,value:function(e,t,n,r){var i=this.allocateEvent(Jf);this.copyPointerData(e,i),this.copyMouseData(e,i),this.copyData(e,i),i.nativeEvent=e.nativeEvent,i.originalEvent=e;var a=this.getExistedHTML(i),o=this.context.contextService.getDomElement();return i.target=n??(a||this.isNativeEventFromCanvas(o,i.nativeEvent)&&this.pickTarget(i)||r),typeof t==`string`&&(i.type=t),i}},{key:`createWheelEvent`,value:function(e){var t=this.allocateEvent(Yf);this.copyWheelData(e,t),this.copyMouseData(e,t),this.copyData(e,t),t.nativeEvent=e.nativeEvent,t.originalEvent=e;var n=this.getExistedHTML(t),r=this.context.contextService.getDomElement();return t.target=n||this.isNativeEventFromCanvas(r,t.nativeEvent)&&this.pickTarget(t),t}},{key:`trackingData`,value:function(e){return this.mappingState.trackingData[e]||(this.mappingState.trackingData[e]={pressTargetsByButton:{},clicksByButton:{},overTarget:null}),this.mappingState.trackingData[e]}},{key:`cloneWheelEvent`,value:function(e){var t=this.allocateEvent(Yf);return t.nativeEvent=e.nativeEvent,t.originalEvent=e.originalEvent,this.copyWheelData(e,t),this.copyMouseData(e,t),this.copyData(e,t),t.target=e.target,t.path=e.composedPath().slice(),t.type=e.type,t}},{key:`clonePointerEvent`,value:function(e,t){var n=this.allocateEvent(Jf);return n.nativeEvent=e.nativeEvent,n.originalEvent=e.originalEvent,this.copyPointerData(e,n),this.copyMouseData(e,n),this.copyData(e,n),n.target=e.target,n.path=e.composedPath().slice(),n.type=t??n.type,n}},{key:`copyPointerData`,value:function(e,t){t.pointerId=e.pointerId,t.width=e.width,t.height=e.height,t.isPrimary=e.isPrimary,t.pointerType=e.pointerType,t.pressure=e.pressure,t.tangentialPressure=e.tangentialPressure,t.tiltX=e.tiltX,t.tiltY=e.tiltY,t.twist=e.twist}},{key:`copyMouseData`,value:function(e,t){t.altKey=e.altKey,t.button=e.button,t.buttons=e.buttons,t.ctrlKey=e.ctrlKey,t.metaKey=e.metaKey,t.shiftKey=e.shiftKey,t.client.copyFrom(e.client),t.movement.copyFrom(e.movement),t.canvas.copyFrom(e.canvas),t.screen.copyFrom(e.screen),t.global.copyFrom(e.global),t.offset.copyFrom(e.offset)}},{key:`copyWheelData`,value:function(e,t){t.deltaMode=e.deltaMode,t.deltaX=e.deltaX,t.deltaY=e.deltaY,t.deltaZ=e.deltaZ}},{key:`copyData`,value:function(e,t){t.isTrusted=e.isTrusted,t.timeStamp=Zd.now(),t.type=e.type,t.detail=e.detail,t.view=e.view,t.page.copyFrom(e.page),t.viewport.copyFrom(e.viewport)}},{key:`allocateEvent`,value:function(e){this.eventPool.has(e)||this.eventPool.set(e,[]);var t=this.eventPool.get(e).pop()||new e(this);return t.eventPhase=t.NONE,t.currentTarget=null,t.path=[],t.target=null,t}},{key:`freeEvent`,value:function(e){if(e.manager!==this)throw Error(`It is illegal to free an event not managed by this EventBoundary!`);var t=e.constructor;this.eventPool.has(t)||this.eventPool.set(t,[]),this.eventPool.get(t).push(e)}},{key:`notifyTarget`,value:function(e,t){t??=e.type;var n=e.eventPhase===e.CAPTURING_PHASE||e.eventPhase===e.AT_TARGET?`${t}capture`:t;this.notifyListeners(e,n),e.eventPhase===e.AT_TARGET&&this.notifyListeners(e,t)}},{key:`notifyListeners`,value:function(e,t){var n=e.currentTarget.emitter,r=n._events[t];if(r)if(`fn`in r)r.once&&n.removeListener(t,r.fn,void 0,!0),r.fn.call(e.currentTarget||r.context,e);else for(var i=0;i<r.length&&!e.propagationImmediatelyStopped;i++)r[i].once&&n.removeListener(t,r[i].fn,void 0,!0),r[i].fn.call(e.currentTarget||r[i].context,e)}},{key:`findMountedTarget`,value:function(e){if(!e)return null;for(var t=e[e.length-1],n=e.length-2;n>=0;n--){var r=e[n];if(r===this.rootTarget||Qf.isNode(r)&&r.parentNode===t)t=e[n];else break}return t}},{key:`getCursor`,value:function(e){for(var t=e;t;){var n=Bd(t)&&t.getAttribute(`cursor`);if(n)return n;t=Qf.isNode(t)&&t.parentNode}}}])}(),tp=function(){function e(){R(this,e)}return z(e,[{key:`getOrCreateCanvas`,value:function(e,t){if(this.canvas)return this.canvas;if(e||Y.offscreenCanvas)this.canvas=e||Y.offscreenCanvas,this.context=this.canvas.getContext(`2d`,tn({willReadFrequently:!0},t));else try{this.canvas=new window.OffscreenCanvas(0,0),this.context=this.canvas.getContext(`2d`,tn({willReadFrequently:!0},t)),(!this.context||!this.context.measureText)&&(this.canvas=document.createElement(`canvas`),this.context=this.canvas.getContext(`2d`))}catch{this.canvas=document.createElement(`canvas`),this.context=this.canvas.getContext(`2d`,tn({willReadFrequently:!0},t))}return this.canvas.width=10,this.canvas.height=10,this.canvas}},{key:`getOrCreateContext`,value:function(e,t){return this.context||this.getOrCreateCanvas(e,t),this.context}}],[{key:`createCanvas`,value:function(){try{return new window.OffscreenCanvas(0,0)}catch{}try{return document.createElement(`canvas`)}catch{}return null}}])}(),np=function(e){return e[e.CAMERA_CHANGED=0]=`CAMERA_CHANGED`,e[e.DISPLAY_OBJECT_CHANGED=1]=`DISPLAY_OBJECT_CHANGED`,e[e.NONE=2]=`NONE`,e}({}),rp=function(){function e(t,n){R(this,e),this.inited=!1,this.stats={total:0,rendered:0},this.zIndexCounter=0,this.hooks={init:new vf,initAsync:new gf,dirtycheck:new yf,cull:new yf,beginFrame:new vf,beforeRender:new vf,render:new vf,afterRender:new vf,endFrame:new vf,destroy:new vf,pick:new _f,pickSync:new yf,pointerDown:new vf,pointerUp:new vf,pointerMove:new vf,pointerOut:new vf,pointerOver:new vf,pointerWheel:new vf,pointerCancel:new vf,click:new vf},this.globalRuntime=t,this.context=n}return z(e,[{key:`init`,value:function(e){var t=this,n=tn(tn({},this.globalRuntime),this.context);this.context.renderingPlugins.forEach(function(e){e.apply(n,t.globalRuntime)}),this.hooks.init.call(),this.hooks.initAsync.getCallbacksNum()===0?(this.inited=!0,e()):this.hooks.initAsync.promise().then(function(){t.inited=!0,e()}).catch(function(e){})}},{key:`getStats`,value:function(){return this.stats}},{key:`disableDirtyRectangleRendering`,value:function(){return!this.context.config.renderer.getConfig().enableDirtyRectangleRendering||this.context.renderingContext.renderReasons.has(np.CAMERA_CHANGED)}},{key:`render`,value:function(e,t,n){var r=this,i=e.getConfig(),a=this.context.renderingContext;if(this.stats.total=0,this.stats.rendered=0,this.zIndexCounter=0,this.globalRuntime.sceneGraphService.syncHierarchy(a.root),this.globalRuntime.sceneGraphService.notifyMutationObservers(e),a.renderReasons.size&&this.inited){a.dirtyRectangleRenderingDisabled=this.disableDirtyRectangleRendering();var o=a.renderReasons.size===1&&a.renderReasons.has(np.CAMERA_CHANGED),s=!i.disableRenderHooks||!o;s&&this.renderDisplayObject(a.root,i,a),this.hooks.beginFrame.call(t),s&&a.renderListCurrentFrame.forEach(function(e){r.hooks.beforeRender.call(e),r.hooks.render.call(e),r.hooks.afterRender.call(e)}),this.hooks.endFrame.call(t),a.renderListCurrentFrame=[],a.renderReasons.clear(),n()}}},{key:`renderDisplayObject`,value:function(e,t,n){var r=this,i=t.renderer.getConfig(),a=i.enableDirtyCheck,o=i.enableCulling;function s(e){var t=e.renderable,i=e.sortable,s=a?t.dirty||n.dirtyRectangleRenderingDisabled?e:null:e,c=null;s&&(c=o?r.hooks.cull.call(s,r.context.camera):s,c&&(r.stats.rendered+=1,n.renderListCurrentFrame.push(c))),e.dirty(!1),i.renderOrder=r.zIndexCounter,r.zIndexCounter+=1,r.stats.total+=1,i.dirty&&(r.sort(e,i),i.dirty=!1,i.dirtyChildren=[],i.dirtyReason=void 0)}for(var c=[e];c.length>0;){var l,u=c.pop();s(u);for(var d=((l=u.sortable)==null||(l=l.sorted)==null?void 0:l.length)>0?u.sortable.sorted:u.childNodes,f=d.length-1;f>=0;f--)c.push(d[f])}}},{key:`sort`,value:function(e,t){var n;(t==null||(n=t.sorted)==null?void 0:n.length)>0&&t.dirtyReason!==gc.Z_INDEX_CHANGED?t.dirtyChildren.forEach(function(n){var r=t.sorted.indexOf(n);if(r>-1&&t.sorted.splice(r,1),e.childNodes.indexOf(n)>-1)if(t.sorted.length===0)t.sorted.push(n);else{var i=Vd(t.sorted,n);t.sorted.splice(i,0,n)}}):t.sorted=e.childNodes.slice().sort(Hd),t.sorted?.length>0&&e.childNodes.filter(function(e){return e.parsedStyle.zIndex}).length===0&&(t.sorted=[])}},{key:`destroy`,value:function(){this.inited=!1,this.hooks.destroy.call()}},{key:`dirty`,value:function(){this.context.renderingContext.renderReasons.add(np.DISPLAY_OBJECT_CHANGED)}}])}(),ip=/\[\s*(.*)=(.*)\s*\]/,ap=function(){function e(){R(this,e)}return z(e,[{key:`selectOne`,value:function(e,t){var n=this;if(e.startsWith(`.`))return t.find(function(t){return(t?.classList||[]).indexOf(n.getIdOrClassname(e))>-1});if(e.startsWith(`#`))return t.find(function(t){return t.id===n.getIdOrClassname(e)});if(e.startsWith(`[`)){var r=this.getAttribute(e),i=r.name,a=r.value;return i?t.find(function(e){return t!==e&&(i===`name`?e.name===a:n.attributeToString(e,i)===a)}):null}return t.find(function(n){return t!==n&&n.nodeName===e})}},{key:`selectAll`,value:function(e,t){var n=this;if(e.startsWith(`.`))return t.findAll(function(r){return t!==r&&(r?.classList||[]).indexOf(n.getIdOrClassname(e))>-1});if(e.startsWith(`#`))return t.findAll(function(r){return t!==r&&r.id===n.getIdOrClassname(e)});if(e.startsWith(`[`)){var r=this.getAttribute(e),i=r.name,a=r.value;return i?t.findAll(function(e){return t!==e&&(i===`name`?e.name===a:n.attributeToString(e,i)===a)}):[]}return t.findAll(function(n){return t!==n&&n.nodeName===e})}},{key:`is`,value:function(e,t){if(e.startsWith(`.`))return t.className===this.getIdOrClassname(e);if(e.startsWith(`#`))return t.id===this.getIdOrClassname(e);if(e.startsWith(`[`)){var n=this.getAttribute(e),r=n.name,i=n.value;return r===`name`?t.name===i:this.attributeToString(t,r)===i}return t.nodeName===e}},{key:`getIdOrClassname`,value:function(e){return e.substring(1)}},{key:`getAttribute`,value:function(e){var t=e.match(ip),n=``,r=``;return t&&t.length>2&&(n=t[1].replace(/"/g,``),r=t[2].replace(/"/g,``)),{name:n,value:r}}},{key:`attributeToString`,value:function(e,t){if(!e.getAttribute)return``;var n=e.getAttribute(t);return V(n)?``:n.toString?n.toString():``}}])}(),op=function(e){return e.ATTR_MODIFIED=`DOMAttrModified`,e.INSERTED=`DOMNodeInserted`,e.MOUNTED=`DOMNodeInsertedIntoDocument`,e.REMOVED=`removed`,e.UNMOUNTED=`DOMNodeRemovedFromDocument`,e.REPARENT=`reparent`,e.DESTROY=`destroy`,e.BOUNDS_CHANGED=`bounds-changed`,e.CULLED=`culled`,e}({}),sp=function(e){function t(e,n,r,i,a,o,s,c){var l;return R(this,t),l=mn(this,t,[null]),l.relatedNode=n,l.prevValue=r,l.newValue=i,l.attrName=a,l.attrChange=o,l.prevParsedValue=s,l.newParsedValue=c,l.type=e,l}return gn(t,e),z(t)}(Kf);sp.ADDITION=2,sp.MODIFICATION=1,sp.REMOVAL=3;var cp=new sp(op.REPARENT,null,``,``,``,0,``,``),lp=pi(),up=Tr(),dp=Or(1,1,1),fp=Dn(),pp=pi(),mp=Tr(),hp=Dn(),gp=ti(),_p=Tr(),vp=ti(),yp=Tr(),bp=Tr(),xp=Tr(),Sp=Dn(),Cp=ti(),wp=ti(),Tp=ti(),Ep=function(){function e(t){R(this,e),this.displayObjectDependencyMap=new WeakMap,this.runtime=t}return z(e,[{key:`matches`,value:function(e,t){return this.runtime.sceneGraphSelector.is(e,t)}},{key:`querySelector`,value:function(e,t){return this.runtime.sceneGraphSelector.selectOne(e,t)}},{key:`querySelectorAll`,value:function(e,t){return this.runtime.sceneGraphSelector.selectAll(e,t)}},{key:`attach`,value:function(e,t,n){var r,i=!1;e.parentNode&&(i=e.parentNode!==t,this.detach(e));var a=e.nodeName===G.FRAGMENT,o=Qd(t);e.parentNode=t;var s=a?e.childNodes:[e];zi(n)?s.forEach(function(e){t.childNodes.splice(n,0,e),e.parentNode=t}):s.forEach(function(e){t.childNodes.push(e),e.parentNode=t});var c=t.sortable;if((c!=null&&(r=c.sorted)!=null&&r.length||c.dirty||e.parsedStyle.zIndex)&&(c.dirtyChildren.indexOf(e)===-1&&c.dirtyChildren.push(e),c.dirty=!0,c.dirtyReason=gc.ADDED),!o){if(a)this.dirtyFragment(e);else{var l=e.transformable;l&&this.dirtyWorldTransform(e,l)}if(i){var u,d=((u=t.ownerDocument)==null||(u=u.defaultView)==null||(u=u.getConfig())==null||(u=u.future)==null?void 0:u.experimentalCancelEventPropagation)===!0;e.dispatchEvent(cp,d,d)}}}},{key:`detach`,value:function(e){var t,n;if(e.parentNode){var r=e.transformable,i=e.parentNode.sortable;(i!=null&&(t=i.sorted)!=null&&t.length||(n=e.style)!=null&&n.zIndex)&&(i.dirtyChildren.indexOf(e)===-1&&i.dirtyChildren.push(e),i.dirty=!0,i.dirtyReason=gc.REMOVED);var a=e.parentNode.childNodes.indexOf(e);a>-1&&e.parentNode.childNodes.splice(a,1),r&&this.dirtyWorldTransform(e,r),e.parentNode=null}}},{key:`getLocalPosition`,value:function(e){return e.transformable.localPosition}},{key:`getLocalRotation`,value:function(e){return e.transformable.localRotation}},{key:`getLocalScale`,value:function(e){return e.transformable.localScale}},{key:`getLocalSkew`,value:function(e){return e.transformable.localSkew}},{key:`getLocalTransform`,value:function(e){var t=e.transformable;return bc(t),t.localTransform}},{key:`setLocalPosition`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=e.transformable;bp[0]=t[0],bp[1]=t[1],bp[2]=t[2]??0,!Gr(r.localPosition,bp)&&(kr(r.localPosition,bp),n&&this.dirtyLocalTransform(e,r))}},{key:`translateLocal`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof t==`number`&&(t=Or(t,n,r));var i=e.transformable;Gr(t,up)||(Wr(t,t,i.localRotation),jr(i.localPosition,i.localPosition,t),this.dirtyLocalTransform(e,i))}},{key:`setLocalRotation`,value:function(e,t,n,r,i){var a=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;typeof t==`number`&&(t=ui(gp,t,n,r,i));var o=e.transformable;li(o.localRotation,t),a&&this.dirtyLocalTransform(e,o)}},{key:`rotateLocal`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof t==`number`&&(t=Or(t,n,r));var i=e.transformable;si(wp,t[0],t[1],t[2]),di(i.localRotation,i.localRotation,wp),this.dirtyLocalTransform(e,i)}},{key:`setLocalScale`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,r=e.transformable;Ar(mp,t[0],t[1],t[2]??r.localScale[2]),!Gr(mp,r.localScale)&&(kr(r.localScale,mp),n&&this.dirtyLocalTransform(e,r))}},{key:`scaleLocal`,value:function(e,t){var n=e.transformable;Nr(n.localScale,n.localScale,Ar(mp,t[0],t[1],t[2]??1)),this.dirtyLocalTransform(e,n)}},{key:`setLocalSkew`,value:function(e,t,n){var r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;typeof t==`number`&&(t=hi(pp,t,n));var i=e.transformable;mi(i.localSkew,t),r&&this.dirtyLocalTransform(e,i)}},{key:`setLocalEulerAngles`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;typeof t==`number`&&(t=Or(t,n,r));var a=e.transformable;si(a.localRotation,t[0],t[1],t[2]),i&&this.dirtyLocalTransform(e,a)}},{key:`setLocalTransform`,value:function(e,t){var n=Qn(_p,t),r=er(vp,t),i=$n(yp,t);this.setLocalScale(e,i,!1),this.setLocalPosition(e,n,!1),this.setLocalRotation(e,r,void 0,void 0,void 0,!1),this.dirtyLocalTransform(e,e.transformable)}},{key:`resetLocalTransform`,value:function(e){this.setLocalScale(e,dp,!1),this.setLocalPosition(e,up,!1),this.setLocalEulerAngles(e,up,void 0,void 0,!1),this.setLocalSkew(e,lp,void 0,!1),this.dirtyLocalTransform(e,e.transformable)}},{key:`getPosition`,value:function(e){var t=e.transformable;return Qn(t.position,this.getWorldTransform(e,t))}},{key:`getRotation`,value:function(e){var t=e.transformable;return er(t.rotation,this.getWorldTransform(e,t))}},{key:`getScale`,value:function(e){var t=e.transformable;return $n(t.scaling,this.getWorldTransform(e,t))}},{key:`getOrigin`,value:function(e){return e.getGeometryBounds(),e.transformable.origin}},{key:`getWorldTransform`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:e.transformable;return!t.localDirtyFlag&&!t.dirtyFlag?t.worldTransform:(e.parentNode&&e.parentNode.transformable&&this.getWorldTransform(e.parentNode),this.internalUpdateTransform(e),t.worldTransform)}},{key:`setPosition`,value:function(e,t){var n=e.transformable;if(xp[0]=t[0],xp[1]=t[1],xp[2]=t[2]??0,!Gr(this.getPosition(e),xp)){if(kr(n.position,xp),e.parentNode===null||!e.parentNode.transformable)kr(n.localPosition,xp);else{var r=e.parentNode.transformable;kn(Sp,r.worldTransform),Pn(Sp,Sp),Hr(n.localPosition,xp,Sp)}this.dirtyLocalTransform(e,n)}}},{key:`translate`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof t==`number`&&(t=Ar(mp,t,n,r)),!Gr(t,up)&&(jr(mp,this.getPosition(e),t),this.setPosition(e,mp))}},{key:`setRotation`,value:function(e,t,n,r,i){var a=e.transformable;typeof t==`number`&&(t=ci(t,n,r,i)),e.parentNode===null||!e.parentNode.transformable?this.setLocalRotation(e,t):(li(gp,this.getRotation(e.parentNode)),ai(gp,gp),ri(a.localRotation,gp,t),fi(a.localRotation,a.localRotation),this.dirtyLocalTransform(e,a))}},{key:`rotate`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof t==`number`&&(t=Or(t,n,r));var i=e.transformable;if(e.parentNode===null||!e.parentNode.transformable)this.rotateLocal(e,t);else{var a=gp;si(a,t[0],t[1],t[2]);var o=this.getRotation(e);li(Tp,this.getRotation(e.parentNode)),ai(Tp,Tp),ri(a,Tp,a),ri(i.localRotation,a,o),fi(i.localRotation,i.localRotation),this.dirtyLocalTransform(e,i)}}},{key:`setOrigin`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof t==`number`&&(t=[t,n,r]);var i=e.transformable;if(!(t[0]===i.origin[0]&&t[1]===i.origin[1]&&t[2]===i.origin[2])){var a=i.origin;a[0]=t[0],a[1]=t[1],a[2]=t[2]||0,this.dirtyLocalTransform(e,i)}}},{key:`setEulerAngles`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,r=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof t==`number`&&(t=Or(t,n,r));var i=e.transformable;e.parentNode===null||!e.parentNode.transformable?this.setLocalEulerAngles(e,t):(si(i.localRotation,t[0],t[1],t[2]),li(Cp,ai(gp,this.getRotation(e.parentNode))),di(i.localRotation,i.localRotation,Cp),this.dirtyLocalTransform(e,i))}},{key:`getGeometryBounds`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=e.geometry;return n.dirty&&Y.styleValueRegistry.updateGeometry(e),(t?n.renderBounds:n.contentBounds||null)||new As}},{key:`getTransformedGeometryBounds`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=arguments.length>2?arguments[2]:void 0,r=this.getGeometryBounds(e,t);if(!As.isEmpty(r)){var i=n||new As;return i.setFromTransformedAABB(r,this.getWorldTransform(e)),i}return null}},{key:`getBounds`,value:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=e.renderable;if(!r.boundsDirty&&!n&&r.bounds)return r.bounds;if(!r.renderBoundsDirty&&n&&r.renderBounds)return r.renderBounds;var i=n?r.renderBounds:r.bounds,a=this.getTransformedGeometryBounds(e,n,i);if(e.childNodes.forEach(function(e){var r=t.getBounds(e,n);r&&(a?a.add(r):(a=i||new As,a.update(r.center,r.halfExtents)))}),a||=new As,n){var o=Ud(e);if(o){var s=o.parsedStyle.clipPath.getBounds(n);a?s&&(a=s.intersection(a)):a.update(s.center,s.halfExtents)}}return n?(r.renderBounds=a,r.renderBoundsDirty=!1):(r.bounds=a,r.boundsDirty=!1),a}},{key:`getLocalBounds`,value:function(e){if(e.parentNode){var t=fp;e.parentNode.transformable&&(t=Pn(hp,this.getWorldTransform(e.parentNode)));var n=this.getBounds(e);if(!As.isEmpty(n)){var r=new As;return r.setFromTransformedAABB(n,t),r}}return this.getBounds(e)}},{key:`getBoundingClientRect`,value:function(e){var t,n,r=this.getGeometryBounds(e);As.isEmpty(r)||(n=new As,n.setFromTransformedAABB(r,this.getWorldTransform(e)));var i=(t=e.ownerDocument)==null||(t=t.defaultView)==null?void 0:t.getContextService().getBoundingClientRect();if(n){var a=bn(n.getMin(),2),o=a[0],s=a[1],c=bn(n.getMax(),2),l=c[0],u=c[1];return new Fs(o+(i?.left||0),s+(i?.top||0),l-o,u-s)}return new Fs(i?.left||0,i?.top||0,0,0)}},{key:`internalUpdateTransform`,value:function(e){var t=e.parentNode?.transformable;bc(e.transformable),xc(e.transformable,t)}},{key:`internalUpdateElement`,value:function(e,t){var n,r=((n=e.ownerDocument)==null||(n=n.defaultView)==null||(n=n.getConfig())==null||(n=n.future)==null?void 0:n.experimentalAttributeUpdateOptimization)===!0,i=t[t.length-1],a=i?.transformDirty||e.transformable?.localDirtyFlag;if(e.transformable){var o;(o=e.transformable).dirtyFlag||(o.dirtyFlag=a)}if(this.internalUpdateTransform(e),a){var s;(s=e.dirty)==null||s.call(e,!0,!0)}var c=e.renderable?.boundsDirty||e.renderable?.renderBoundsDirty;if((a||c)&&i?.shapeUpdated===!1&&r)for(var l=t.length-1;l>=0;){var u,d,f=t[l];if(f.shapeUpdated)break;(u=(d=f.node).dirty)==null||u.call(d,!0,!0),f.shapeUpdated=!0,--l}return a}},{key:`syncHierarchy`,value:function(e){for(var t=[e],n=e.parentNode?[{node:e.parentNode,transformDirty:e.parentNode.transformable?.localDirtyFlag||e.parentNode.transformable?.dirtyFlag,shapeUpdated:!1}]:[];t.length>0;){for(var r=t.pop(),i=n[n.length-1];n.length>0&&r.parentNode!==i.node;)i=n.pop();var a=this.internalUpdateElement(r,n);if(r.childNodes.length>0){for(var o=r.childNodes.length-1;o>=0;o--)t.push(r.childNodes[o]);n.push({node:r,transformDirty:a,shapeUpdated:!1})}}}},{key:`dirtyLocalTransform`,value:function(e,t){Qd(e)||t.localDirtyFlag||(t.localDirtyFlag=!0,t.dirtyFlag||this.dirtyWorldTransform(e,t))}},{key:`dirtyWorldTransform`,value:function(e,t){this.dirtyWorldInternal(e,t),this.dirtyToRoot(e,!0)}},{key:`dirtyWorldInternal`,value:function(e,t){var n,r=this,i=((n=e.ownerDocument)==null||(n=n.defaultView)==null||(n=n.getConfig())==null||(n=n.future)==null?void 0:n.experimentalAttributeUpdateOptimization)===!0;t.dirtyFlag||(t.dirtyFlag=!0,e.dirty(!0,!0),i||e.childNodes.forEach(function(e){var t=e.transformable;r.dirtyWorldInternal(e,t)}))}},{key:`dirtyToRoot`,value:function(e){for(var t,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=e,i=((t=e.ownerDocument)==null||(t=t.defaultView)==null||(t=t.getConfig())==null||(t=t.future)==null?void 0:t.experimentalAttributeUpdateOptimization)===!0;r;){var a,o;if((a=(o=r).dirty)==null||a.call(o,!0,!0),i)break;r=r.parentNode}n&&e.forEach(function(e){var t;(t=e.dirty)==null||t.call(e,!0,!0)}),this.informDependentDisplayObjects(e);var s=e.mutations||[],c=s.find(function(e){return e.type===`attributes`&&e._boundsChangeData});c?c._boundsChangeData={affectChildren:c._boundsChangeData.affectChildren||n}:(c={type:`attributes`,target:e,_boundsChangeData:{affectChildren:n}},s.push(c)),e.mutations=s}},{key:`dirtyFragment`,value:function(e){var t,n,r=e.transformable;r&&(r.dirtyFlag=!0,r.localDirtyFlag=!0),(t=(n=e).dirty)==null||t.call(n,!0,!0);for(var i=e.childNodes.length,a=0;a<i;a++)this.dirtyFragment(e.childNodes[a])}},{key:`notifyMutationObservers`,value:function(e){var t=new Set;if(e.getRoot().forEach(function(e){(e.mutations||[]).forEach(function(n){n.type===`attributes`&&n._boundsChangeData&&(n._boundsChangeData.affectChildren?e.forEach(function(e){var r=tn({},n);r.target=e,t.add(r)}):t.add(n))}),e.mutations=void 0}),t.size>0){var n=new Xf(op.BOUNDS_CHANGED,{detail:Array.from(t)});e.dispatchEvent(n,!0,!0)}}},{key:`updateDisplayObjectDependency`,value:function(e,t,n,r){if(t&&t!==n){var i=this.displayObjectDependencyMap.get(t);if(i&&i[e]){var a=i[e].indexOf(r);i[e].splice(a,1)}}if(n){var o=this.displayObjectDependencyMap.get(n);o||=(this.displayObjectDependencyMap.set(n,{}),this.displayObjectDependencyMap.get(n)),o[e]||(o[e]=[]),o[e].push(r)}}},{key:`informDependentDisplayObjects`,value:function(e){var t,n=this,r=this.displayObjectDependencyMap.get(e);if(r){var i=(t=e.ownerDocument)==null||(t=t.defaultView)==null||(t=t.getConfig())==null||(t=t.future)==null?void 0:t.experimentalCancelEventPropagation;Object.keys(r).forEach(function(e){r[e].forEach(function(t){n.dirtyToRoot(t,!0),t.dispatchEvent(new sp(op.ATTR_MODIFIED,t,n,n,e,sp.MODIFICATION,n,n),i,i),t.isCustomElement&&t.isConnected&&t.attributeChangedCallback&&t.attributeChangedCallback(e,n,n)})})}}}])}(),Dp=function(){function e(t){if(R(this,e),t<=0)throw Error(`LRU capacity must be a positive number.`);this.capacity=t,this.cache=new Map}return z(e,[{key:`get`,value:function(e){if(this.cache.has(e)){var t=this.cache.get(e);return this.cache.delete(e),this.cache.set(e,t),t}}},{key:`put`,value:function(e,t){if(this.cache.has(e)&&this.cache.delete(e),this.cache.set(e,t),this.cache.size>this.capacity){var n=this.cache.keys().next().value;this.cache.delete(n)}}},{key:`len`,value:function(){return this.cache.size}},{key:`clear`,value:function(){this.cache.clear()}}])}(),Op={MetricsString:`|ÉqÅ`,BaselineSymbol:`M`,BaselineMultiplier:1.4,HeightMultiplier:2,Newlines:[10,13],BreakingSpaces:[9,32,8192,8193,8194,8195,8196,8197,8198,8200,8201,8202,8287,12288]},kp=/[a-zA-Z0-9\u00C0-\u00D6\u00D8-\u00f6\u00f8-\u00ff!"#$%&'()*+,-./:;]/,Ap=/[!%),.:;?\]}¢°·'""†‡›℃∶、。〃〆〕〗〞﹚﹜!"%'),.:;?!]}~]/,jp=/[$(£¥·'"〈《「『【〔〖〝﹙﹛$(.[{£¥]/,Mp=/[!),.:;?\]}¢·–—'"•"、。〆〞〕〉》」︰︱︲︳﹐﹑﹒﹔﹕﹖﹘﹚﹜!),.:;?︶︸︺︼︾﹀﹂﹗]|}、]/,Np=/[([{£¥'"‵〈《「『〔〝︴﹙﹛({︵︷︹︻︽︿﹁﹃﹏]/,Pp=/[)\]}〕〉》」』】〙〗〟'"⦆»ヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻‐゠–〜?!‼⁇⁈⁉・、:;,。.]/,Fp=/[([{〔〈《「『【〘〖〝'"⦅«—...‥〳〴〵]/,Ip=/[!%),.:;?\]}¢°'"†‡℃〆〈《「『〕!%),.:;?]}]/,Lp=/[$([{£¥'"々〇〉》」〔$([{⦆¥₩#]/,Rp=RegExp(`${Ap.source}|${Mp.source}|${Pp.source}|${Ip.source}`),zp=RegExp(`${jp.source}|${Np.source}|${Fp.source}|${Lp.source}`),Bp=function(){function e(t){var n=this;R(this,e),this.fontMetricsCache={},this.shouldBreakByKinsokuShorui=function(e,t){return n.isBreakingSpace(t)?!1:!!(e&&(zp.exec(t)||Rp.exec(e)))},this.trimByKinsokuShorui=function(e){var t=ln(e),n=t[t.length-2];if(!n)return e;var r=n[n.length-1];return t[t.length-2]=n.slice(0,-1),t[t.length-1]=r+t[t.length-1],t},this.runtime=t,this.charWidthCache=new Dp(100)}return z(e,[{key:`measureFont`,value:function(e,t){if(this.fontMetricsCache[e])return this.fontMetricsCache[e];var n={ascent:0,descent:0,fontSize:0},r=this.runtime.offscreenCanvasCreator.getOrCreateCanvas(t),i=this.runtime.offscreenCanvasCreator.getOrCreateContext(t,{willReadFrequently:!0});i.font=e;var a=Op.MetricsString+Op.BaselineSymbol,o=Math.ceil(i.measureText(a).width),s=Math.ceil(i.measureText(Op.BaselineSymbol).width),c=Op.HeightMultiplier*s;s=s*Op.BaselineMultiplier|0,r.width=o,r.height=c,i.fillStyle=`#f00`,i.fillRect(0,0,o,c),i.font=e,i.textBaseline=`alphabetic`,i.fillStyle=`#000`,i.fillText(a,0,s);var l=i.getImageData(0,0,o||1,c||1).data,u=l.length,d=o*4,f=0,p=0,m=!1;for(f=0;f<s;++f){for(var h=0;h<d;h+=4)if(l[p+h]!==255){m=!0;break}if(!m)p+=d;else break}for(n.ascent=s-f,p=u-d,m=!1,f=c;f>s;--f){for(var g=0;g<d;g+=4)if(l[p+g]!==255){m=!0;break}if(!m)p-=d;else break}return n.descent=f-s,n.fontSize=n.ascent+n.descent,this.fontMetricsCache[e]=n,n}},{key:`measureText`,value:function(e,t,n){var r=t.fontSize,i=r===void 0?16:r,a=t.wordWrap,o=a===void 0?!1:a,s=t.lineHeight,c=t.lineWidth,l=c===void 0?1:c,u=t.textBaseline,d=u===void 0?`alphabetic`:u,f=t.textAlign,p=f===void 0?`start`:f,m=t.letterSpacing,h=m===void 0?0:m,g=t.textPath;t.textPathSide,t.textPathStartOffset;var _=t.leading,v=_===void 0?0:_,y=Cf(t),b=this.measureFont(y,n);b.fontSize===0&&(b.fontSize=i,b.ascent=i);var x=this.runtime.offscreenCanvasCreator.getOrCreateContext(n);x.font=y,t.isOverflowing=!1;var S=(o?this.wordWrap(e,t,n):e).split(/(?:\r\n|\r|\n)/),C=Array(S.length),w=0;if(g){g.getTotalLength();for(var T=0;T<S.length;T++)x.measureText(S[T]).width+(S[T].length-1)*h}else{for(var E=0;E<S.length;E++){var D=x.measureText(S[E]).width+(S[E].length-1)*h;C[E]=D,w=Math.max(w,D)}var O=w+l,k=s||b.fontSize+l,A=Math.max(k,b.fontSize+l)+(S.length-1)*(k+v);k+=v;var j=0;return d===`middle`?j=-A/2:d===`bottom`||d===`alphabetic`||d===`ideographic`?j=-A:(d===`top`||d===`hanging`)&&(j=0),{font:y,width:O,height:A,lines:S,lineWidths:C,lineHeight:k,maxLineWidth:w,fontProperties:b,lineMetrics:C.map(function(e,t){var n=0;return p===`center`||p===`middle`?n-=e/2:(p===`right`||p===`end`)&&(n-=e),new Fs(n-l/2,j+t*k,e+l,k)})}}}},{key:`wordWrap`,value:function(e,t,n){var r=this,i=Array.from(e);if(i.length===0)return``;var a=this,o=t.wordWrapWidth,s=o===void 0?0:o,c=t.letterSpacing,l=c===void 0?0:c,u=t.maxLines,d=u===void 0?1/0:u,f=t.textOverflow,p=this.runtime.offscreenCanvasCreator.getOrCreateContext(n),m=s+l,h=``;f===`ellipsis`?h=`...`:f&&f!==`clip`&&(h=f);var g=[``],_=0,v=0,y=-1,b=Cf(t),x=this.charWidthCache.get(b);x||(x=new Dp(500),this.charWidthCache.put(b,x));var S=function(e){return r.getFromCache(e,l,x,p)},C=S(h);function w(e,t,n,r){for(;S(e)<r&&t<i.length-1&&!a.isNewline(i[t+1]);)t+=1,e+=i[t];for(;S(e)>r&&t>=n;)--t,e=e.slice(0,-1);return{lineTxt:e,txtLastCharIndex:t}}function T(e,t){if(!(C<=0||C>m)){if(!g[e]){g[e]=h;return}var n=w(g[e],t,y+1,m-C);g[e]=n.lineTxt+h}}for(var E=0;E<i.length;E++){var D=i[E],O=i[E-1],k=i[E+1],A=S(D);if(this.isNewline(D)){if(_+1>=d){E<i.length-1&&T(_,E-1),t.isOverflowing=!0;break}y=E-1,_+=1,v=0,g[_]=``;continue}if(A>m){T(_,E-1),t.isOverflowing=!0;break}if(v>0&&v+A>m){var j=w(g[_],E-1,y+1,m);if(j.txtLastCharIndex!==E-1){if(g[_]=j.lineTxt,j.txtLastCharIndex===i.length-1)break;E=j.txtLastCharIndex+1,D=i[E],O=i[E-1],k=i[E+1],A=S(D)}if(_+1>=d){T(_,E-1),t.isOverflowing=!0;break}if(y=E-1,_+=1,v=0,g[_]=``,this.isBreakingSpace(D))continue;this.canBreakInLastChar(D)||(g=this.trimToBreakable(g),v=this.sumTextWidthByCache(g[_]||``,S)),this.shouldBreakByKinsokuShorui(D,k)&&(g=this.trimByKinsokuShorui(g),v+=S(O||``))}v+=A,g[_]+=D}return g.join(`
|
|
8
|
+
`)}},{key:`isBreakingSpace`,value:function(e){return typeof e==`string`?Op.BreakingSpaces.indexOf(e.charCodeAt(0))>=0:!1}},{key:`isNewline`,value:function(e){return typeof e==`string`?Op.Newlines.indexOf(e.charCodeAt(0))>=0:!1}},{key:`trimToBreakable`,value:function(e){var t=ln(e),n=t[t.length-2],r=this.findBreakableIndex(n);if(r===-1||!n)return t;var i=n.slice(r,r+1),a=this.isBreakingSpace(i),o=r+1,s=r+ +!a;return t[t.length-1]+=n.slice(o,n.length),t[t.length-2]=n.slice(0,s),t}},{key:`canBreakInLastChar`,value:function(e){return!(e&&kp.test(e))}},{key:`sumTextWidthByCache`,value:function(e,t){return e.split(``).reduce(function(e,n){return e+t(n)},0)}},{key:`findBreakableIndex`,value:function(e){for(var t=e.length-1;t>=0;t--)if(!kp.test(e[t]))return t;return-1}},{key:`getFromCache`,value:function(e,t,n,r){var i=n.get(e);if(typeof i!=`number`){var a=e.length*t;i=r.measureText(e).width+a,n.put(e,i)}return i}},{key:`clearCache`,value:function(){this.fontMetricsCache={},this.charWidthCache.clear()}}])}(),Y={},Vp=function(e){var t=new Hf,n=new Vf;return e={},L(L(L(L(L(L(L(L(L(L(e,G.FRAGMENT,null),G.CIRCLE,new Lf),G.ELLIPSE,new Rf),G.RECT,t),G.IMAGE,t),G.GROUP,new Wf),G.LINE,new zf),G.TEXT,new Uf(Y)),G.POLYLINE,n),G.POLYGON,n),L(L(L(e,G.PATH,new Bf),G.HTML,new Gf),G.MESH,null)}(),Hp=function(e){var t=new Sd,n=new Td;return e={},L(L(L(L(L(L(L(L(L(L(e,K.PERCENTAGE,null),K.NUMBER,new kd),K.ANGLE,new bd),K.DEFINED_PATH,new xd),K.PAINT,t),K.COLOR,t),K.FILTER,new Cd),K.LENGTH,n),K.LENGTH_PERCENTAGE,n),K.LENGTH_PERCENTAGE_12,new Ed),L(L(L(L(L(L(L(L(L(L(e,K.LENGTH_PERCENTAGE_14,new Dd),K.COORDINATE,new Td),K.OFFSET_DISTANCE,new Ad),K.OPACITY_VALUE,new jd),K.PATH,new Md),K.LIST_OF_POINTS,new Nd),K.SHADOW_BLUR,new Pd),K.TEXT,new Fd),K.TEXT_TRANSFORM,new Id),K.TRANSFORM,new Pf),L(L(L(e,K.TRANSFORM_ORIGIN,new Ff),K.Z_INDEX,new If),K.MARKER,new Od)}();Y.CameraContribution=mc,Y.AnimationTimeline=null,Y.EasingFunction=null,Y.offscreenCanvasCreator=new tp,Y.sceneGraphSelector=new ap,Y.sceneGraphService=new Ep(Y),Y.textService=new Bp(Y),Y.geometryUpdaterFactory=Vp,Y.CSSPropertySyntaxFactory=Hp,Y.styleValueRegistry=new _d(Y),Y.layoutRegistry=null,Y.globalThis=function(){return typeof globalThis<`u`?globalThis:typeof self<`u`?self:typeof window<`u`?window:typeof global<`u`?global:{}}(),Y.enableStyleSyntax=!0,Y.enableSizeAttenuation=!1;var Up=0,Wp=new sp(op.INSERTED,null,``,``,``,0,``,``),Gp=new sp(op.REMOVED,null,``,``,``,0,``,``),Kp=new Xf(op.DESTROY),qp=function(e){function t(){var e;R(this,t);var n=[...arguments];return e=mn(this,t,[].concat(n)),e.entity=Up++,e.transformable={dirtyFlag:!1,localDirtyFlag:!1,localPosition:[0,0,0],localRotation:[0,0,0,1],localScale:[1,1,1],localTransform:[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],localSkew:[0,0],position:[0,0,0],rotation:[0,0,0,1],scaling:[1,1,1],worldTransform:[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1],origin:[0,0,0]},e.renderable={bounds:void 0,boundsDirty:!0,renderBounds:void 0,renderBoundsDirty:!0,dirtyRenderBounds:void 0,dirty:!1},e.geometry={contentBounds:void 0,renderBounds:void 0,dirty:!0},e.cullable={strategy:hc.Standard,visibilityPlaneMask:-1,visible:!0,enable:!0},e.sortable={dirty:!1,sorted:void 0,renderOrder:0,dirtyChildren:[],dirtyReason:void 0},e.namespaceURI=`g`,e.scrollLeft=0,e.scrollTop=0,e.clientTop=0,e.clientLeft=0,e.style={},e.computedStyle={},e.parsedStyle={},e.attributes={},e}return gn(t,e),z(t,[{key:`dirty`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1?arguments[1]:void 0;this.renderable.dirty=e,t!==void 0&&(this.renderable.boundsDirty=t,this.renderable.renderBoundsDirty=t,this.geometry.dirty=t)}},{key:`className`,get:function(){return this.getAttribute(`class`)||``},set:function(e){this.setAttribute(`class`,e)}},{key:`classList`,get:function(){return this.className.split(` `).filter(function(e){return e!==``})}},{key:`tagName`,get:function(){return this.nodeName}},{key:`children`,get:function(){return this.childNodes}},{key:`childElementCount`,get:function(){return this.childNodes.length}},{key:`firstElementChild`,get:function(){return this.firstChild}},{key:`lastElementChild`,get:function(){return this.lastChild}},{key:`parentElement`,get:function(){return this.parentNode}},{key:`nextSibling`,get:function(){if(this.parentNode){var e=this.parentNode.childNodes.indexOf(this);return this.parentNode.childNodes[e+1]||null}return null}},{key:`previousSibling`,get:function(){if(this.parentNode){var e=this.parentNode.childNodes.indexOf(this);return this.parentNode.childNodes[e-1]||null}return null}},{key:`cloneNode`,value:function(e){throw Error(Is)}},{key:`appendChild`,value:function(e,t){var n;if(e.destroyed)throw Error(Rs);return Y.sceneGraphService.attach(e,this,t),(n=this.ownerDocument)!=null&&n.defaultView&&(!Qd(this)&&e.nodeName===G.FRAGMENT?this.ownerDocument.defaultView.mountFragment(e):this.ownerDocument.defaultView.mountChildren(e)),this.isMutationObserved&&(Wp.relatedNode=this,e.dispatchEvent(Wp)),e}},{key:`insertBefore`,value:function(e,t){if(!t)this.appendChild(e);else{e.parentElement&&e.parentElement.removeChild(e);var n=this.childNodes.indexOf(t);n===-1?this.appendChild(e):this.appendChild(e,n)}return e}},{key:`replaceChild`,value:function(e,t){var n=this.childNodes.indexOf(t);return this.removeChild(t),this.appendChild(e,n),t}},{key:`removeChild`,value:function(e){var t,n,r=((t=this.ownerDocument)==null||(t=t.defaultView)==null||(t=t.getConfig().future)==null?void 0:t.experimentalCancelEventPropagation)===!0;return Gp.relatedNode=this,e.dispatchEvent(Gp,r,r),(n=e.ownerDocument)!=null&&n.defaultView&&e.ownerDocument.defaultView.unmountChildren(e),Y.sceneGraphService.detach(e),e}},{key:`removeChildren`,value:function(){for(var e=this.childNodes.length-1;e>=0;e--){var t=this.childNodes[e];this.removeChild(t)}}},{key:`destroyChildren`,value:function(){for(var e=this.childNodes.length-1;e>=0;e--){var t=this.childNodes[e];t.childNodes.length>0&&t.destroyChildren(),t.destroy()}}},{key:`matches`,value:function(e){return Y.sceneGraphService.matches(e,this)}},{key:`getElementById`,value:function(e){return Y.sceneGraphService.querySelector(`#${e}`,this)}},{key:`getElementsByName`,value:function(e){return Y.sceneGraphService.querySelectorAll(`[name="${e}"]`,this)}},{key:`getElementsByClassName`,value:function(e){return Y.sceneGraphService.querySelectorAll(`.${e}`,this)}},{key:`getElementsByTagName`,value:function(e){return Y.sceneGraphService.querySelectorAll(e,this)}},{key:`querySelector`,value:function(e){return Y.sceneGraphService.querySelector(e,this)}},{key:`querySelectorAll`,value:function(e){return Y.sceneGraphService.querySelectorAll(e,this)}},{key:`closest`,value:function(e){var t=this;do{if(Y.sceneGraphService.matches(e,t))return t;t=t.parentElement}while(t!==null);return null}},{key:`find`,value:function(e){var t=this,n=null;return this.forEach(function(r){return r!==t&&e(r)?(n=r,!1):!0}),n}},{key:`findAll`,value:function(e){var t=this,n=[];return this.forEach(function(r){r!==t&&e(r)&&n.push(r)}),n}},{key:`after`,value:function(){var e=this;if(this.parentNode){var t=this.parentNode.childNodes.indexOf(this);[...arguments].forEach(function(n,r){return e.parentNode?.appendChild(n,t+r+1)})}}},{key:`before`,value:function(){if(this.parentNode){var e,t=this.parentNode.childNodes.indexOf(this),n=[...arguments],r=n[0],i=rn(n).slice(1);this.parentNode.appendChild(r,t),(e=r).after.apply(e,ln(i))}}},{key:`replaceWith`,value:function(){this.after.apply(this,arguments),this.remove()}},{key:`append`,value:function(){var e=this;[...arguments].forEach(function(t){return e.appendChild(t)})}},{key:`prepend`,value:function(){var e=this;[...arguments].forEach(function(t,n){return e.appendChild(t,n)})}},{key:`replaceChildren`,value:function(){for(;this.childNodes.length&&this.firstChild;)this.removeChild(this.firstChild);this.append.apply(this,arguments)}},{key:`remove`,value:function(){return this.parentNode?this.parentNode.removeChild(this):this}},{key:`destroy`,value:function(){var e,t=((e=this.ownerDocument)==null||(e=e.defaultView)==null||(e=e.getConfig().future)==null?void 0:e.experimentalCancelEventPropagation)===!0;this.destroyChildren(),this.dispatchEvent(Kp,t,t),this.remove(),this.emitter.removeAllListeners(),this.destroyed=!0}},{key:`getGeometryBounds`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;return Y.sceneGraphService.getGeometryBounds(this,e)}},{key:`getTransformedGeometryBounds`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;return Y.sceneGraphService.getTransformedGeometryBounds(this,e)}},{key:`getBounds`,value:function(){return Y.sceneGraphService.getBounds(this)}},{key:`getRenderBounds`,value:function(){return Y.sceneGraphService.getBounds(this,!0)}},{key:`getLocalBounds`,value:function(){return Y.sceneGraphService.getLocalBounds(this)}},{key:`getBoundingClientRect`,value:function(){return Y.sceneGraphService.getBoundingClientRect(this)}},{key:`getClientRects`,value:function(){return[this.getBoundingClientRect()]}},{key:`computedStyleMap`,value:function(){return new Map(Object.entries(this.computedStyle))}},{key:`getAttributeNames`,value:function(){return Object.keys(this.attributes)}},{key:`getAttribute`,value:function(e){if(typeof e!=`symbol`)return this.attributes[e]}},{key:`hasAttribute`,value:function(e){return this.getAttributeNames().includes(e)}},{key:`hasAttributes`,value:function(){return!!this.getAttributeNames().length}},{key:`removeAttribute`,value:function(e){this.setAttribute(e,null),delete this.attributes[e]}},{key:`setAttribute`,value:function(e,t){this.attributes[e]=t}},{key:`getAttributeNS`,value:function(e,t){throw Error(Is)}},{key:`getAttributeNode`,value:function(e){throw Error(Is)}},{key:`getAttributeNodeNS`,value:function(e,t){throw Error(Is)}},{key:`hasAttributeNS`,value:function(e,t){throw Error(Is)}},{key:`removeAttributeNS`,value:function(e,t){throw Error(Is)}},{key:`removeAttributeNode`,value:function(e){throw Error(Is)}},{key:`setAttributeNS`,value:function(e,t,n){throw Error(Is)}},{key:`setAttributeNode`,value:function(e){throw Error(Is)}},{key:`setAttributeNodeNS`,value:function(e){throw Error(Is)}},{key:`toggleAttribute`,value:function(e,t){throw Error(Is)}}])}(Qf);function Jp(e){return!!(e!=null&&e.nodeName)}var Yp=Y.globalThis.Proxy?Y.globalThis.Proxy:function(){},Xp=new sp(op.ATTR_MODIFIED,null,null,null,null,sp.MODIFICATION,null,null),Zp=Tr(),Qp=ti(),$p=function(e){function t(e){var n;return R(this,t),n=mn(this,t),n.isCustomElement=!1,n.isMutationObserved=!1,n.activeAnimations=[],n.config=e,n.id=e.id||``,n.name=e.name||``,(e.className||e.class)&&(n.className=e.className||e.class),n.nodeName=e.type||G.GROUP,e.initialParsedStyle&&Object.assign(n.parsedStyle,e.initialParsedStyle),n.initAttributes(e.style),Y.enableStyleSyntax&&(n.style=new Yp({setProperty:function(e,t){n.setAttribute(e,t)},getPropertyValue:function(e){return n.getAttribute(e)},removeProperty:function(e){n.removeAttribute(e)},item:function(){return``}},{get:function(e,t){return e[t]===void 0?n.getAttribute(t):e[t]},set:function(e,t,r){return n.setAttribute(t,r),!0}})),n}return gn(t,e),z(t,[{key:`destroy`,value:function(){Io(t,`destroy`,this,3)([]),this.getAnimations().forEach(function(e){e.cancel()})}},{key:`cloneNode`,value:function(e,t){var n=tn({},this.attributes);for(var r in n){var i=n[r];Jp(i)&&r!==`clipPath`&&r!==`offsetPath`&&r!==`textPath`&&(n[r]=i.cloneNode(e)),t&&(n[r]=t(r,i))}var a=new this.constructor(tn(tn({},this.config),{},{style:n}));return a.setLocalTransform(this.getLocalTransform()),e&&this.children.forEach(function(t){if(!t.style.isMarker){var n=t.cloneNode(e);a.appendChild(n)}}),a}},{key:`initAttributes`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Y.styleValueRegistry.processProperties(this,e,{forceUpdateGeometry:!0}),this.dirty()}},{key:`setAttribute`,value:function(e,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;na(n)||(r||n!==this.attributes[e])&&(this.internalSetAttribute(e,n,{memoize:i}),Io(t,`setAttribute`,this,3)([e,n]))}},{key:`setAttributes`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.skipDispatchAttrModifiedEvent,r=n===void 0?!1:n,i,a;if(r||(i=tn({},this.attributes),a=tn({},this.parsedStyle)),Y.styleValueRegistry.processProperties(this,e,t),this.dirty(),!r)for(var o in e)this.dispatchAttrModifiedEvent(o,i[o],e[o],a[o])}},{key:`internalSetAttribute`,value:function(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},r=this.attributes[e],i=this.parsedStyle[e];Y.styleValueRegistry.processProperties(this,L({},e,t),n),this.dirty(),this.dispatchAttrModifiedEvent(e,r,t,i)}},{key:`dispatchAttrModifiedEvent`,value:function(e,t,n,r){var i=this.parsedStyle[e];if(this.isConnected)if(Xp.relatedNode=this,Xp.prevValue=t,Xp.newValue=n,Xp.attrName=e,Xp.prevParsedValue=r,Xp.newParsedValue=i,this.isMutationObserved)this.dispatchEvent(Xp);else{var a=this.ownerDocument.defaultView.getConfig().future?.experimentalCancelEventPropagation===!0;Xp.target=this,this.ownerDocument.defaultView.dispatchEvent(Xp,!0,a)}if(this.isCustomElement&&this.isConnected||!this.isCustomElement){var o,s;(o=(s=this).attributeChangedCallback)==null||o.call(s,e,t,n,r,i)}}},{key:`getBBox`,value:function(){var e=this.getBounds(),t=bn(e.getMin(),2),n=t[0],r=t[1],i=bn(e.getMax(),2),a=i[0],o=i[1];return new Fs(n,r,a-n,o-r)}},{key:`setOrigin`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Y.sceneGraphService.setOrigin(this,Vs(e,t,n,!1)),this}},{key:`getOrigin`,value:function(){return Y.sceneGraphService.getOrigin(this)}},{key:`setPosition`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Y.sceneGraphService.setPosition(this,Vs(e,t,n,!1)),this}},{key:`setLocalPosition`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Y.sceneGraphService.setLocalPosition(this,Vs(e,t,n,!1)),this}},{key:`translate`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Y.sceneGraphService.translate(this,Vs(e,t,n,!1)),this}},{key:`translateLocal`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Y.sceneGraphService.translateLocal(this,Vs(e,t,n,!1)),this}},{key:`getPosition`,value:function(){return Y.sceneGraphService.getPosition(this)}},{key:`getLocalPosition`,value:function(){return Y.sceneGraphService.getLocalPosition(this)}},{key:`scale`,value:function(e,t,n){return this.scaleLocal(e,t,n)}},{key:`scaleLocal`,value:function(e,t,n){return typeof e==`number`&&(t||=e,n||=e,e=Vs(e,t,n,!1)),Y.sceneGraphService.scaleLocal(this,e),this}},{key:`setLocalScale`,value:function(e,t,n){return typeof e==`number`&&(t||=e,n||=e,e=Vs(e,t,n,!1)),Y.sceneGraphService.setLocalScale(this,e),this}},{key:`getLocalScale`,value:function(){return Y.sceneGraphService.getLocalScale(this)}},{key:`getScale`,value:function(){return Y.sceneGraphService.getScale(this)}},{key:`getEulerAngles`,value:function(){var e=bn(Xs(Zp,Y.sceneGraphService.getWorldTransform(this)),3)[2];return Gs(e)}},{key:`getLocalEulerAngles`,value:function(){var e=bn(Xs(Zp,Y.sceneGraphService.getLocalRotation(this)),3)[2];return Gs(e)}},{key:`setEulerAngles`,value:function(e){return Y.sceneGraphService.setEulerAngles(this,0,0,e),this}},{key:`setLocalEulerAngles`,value:function(e){return Y.sceneGraphService.setLocalEulerAngles(this,0,0,e),this}},{key:`rotateLocal`,value:function(e,t,n){return V(t)&&V(n)?Y.sceneGraphService.rotateLocal(this,0,0,e):Y.sceneGraphService.rotateLocal(this,e,t,n),this}},{key:`rotate`,value:function(e,t,n){return V(t)&&V(n)?Y.sceneGraphService.rotate(this,0,0,e):Y.sceneGraphService.rotate(this,e,t,n),this}},{key:`setRotation`,value:function(e,t,n,r){return Y.sceneGraphService.setRotation(this,e,t,n,r),this}},{key:`setLocalRotation`,value:function(e,t,n,r){return Y.sceneGraphService.setLocalRotation(this,e,t,n,r),this}},{key:`setLocalSkew`,value:function(e,t){return Y.sceneGraphService.setLocalSkew(this,e,t),this}},{key:`getRotation`,value:function(){return Y.sceneGraphService.getRotation(this)}},{key:`getLocalRotation`,value:function(){return Y.sceneGraphService.getLocalRotation(this)}},{key:`getLocalSkew`,value:function(){return Y.sceneGraphService.getLocalSkew(this)}},{key:`getLocalTransform`,value:function(){return Y.sceneGraphService.getLocalTransform(this)}},{key:`getWorldTransform`,value:function(){return Y.sceneGraphService.getWorldTransform(this)}},{key:`setLocalTransform`,value:function(e){return Y.sceneGraphService.setLocalTransform(this,e),this}},{key:`resetLocalTransform`,value:function(){Y.sceneGraphService.resetLocalTransform(this)}},{key:`getAnimations`,value:function(){return this.activeAnimations}},{key:`animate`,value:function(e,t){var n=this.ownerDocument?.timeline;return n?n.play(this,e,t):null}},{key:`isVisible`,value:function(){return this.parsedStyle?.visibility!==`hidden`}},{key:`interactive`,get:function(){return this.isInteractive()},set:function(e){this.style.pointerEvents=e?`auto`:`none`}},{key:`isInteractive`,value:function(){return this.parsedStyle?.pointerEvents!==`none`}},{key:`isCulled`,value:function(){return!!(this.cullable&&this.cullable.enable&&!this.cullable.visible)}},{key:`toFront`,value:function(){return this.parentNode&&(this.style.zIndex=Math.max.apply(Math,ln(this.parentNode.children.map(function(e){return Number(e.style.zIndex)})))+1),this}},{key:`toBack`,value:function(){return this.parentNode&&(this.style.zIndex=Math.min.apply(Math,ln(this.parentNode.children.map(function(e){return Number(e.style.zIndex)})))-1),this}},{key:`getConfig`,value:function(){return this.config}},{key:`attr`,value:function(){var e=this,t=[...arguments],n=t[0],r=t[1];return n?wi(n)?(Object.keys(n).forEach(function(t){e.setAttribute(t,n[t])}),this):t.length===2?(this.setAttribute(n,r),this):this.attributes[n]:this.attributes}},{key:`getMatrix`,value:function(e){var t=e||this.getWorldTransform(),n=bn(Qn(Zp,t),2),r=n[0],i=n[1],a=bn($n(Zp,t),2),o=a[0],s=a[1],c=bn(Xs(Zp,er(Qp,t)),3),l=c[0],u=c[2];return Zs(l||u,r,i,o,s)}},{key:`getLocalMatrix`,value:function(){return this.getMatrix(this.getLocalTransform())}},{key:`setMatrix`,value:function(e){var t=bn($s(e),5),n=t[0],r=t[1],i=t[2],a=t[3],o=t[4];this.setEulerAngles(o).setPosition(n,r).setLocalScale(i,a)}},{key:`setLocalMatrix`,value:function(e){var t=bn($s(e),5),n=t[0],r=t[1],i=t[2],a=t[3],o=t[4];this.setLocalEulerAngles(o).setLocalPosition(n,r).setLocalScale(i,a)}},{key:`show`,value:function(){this.forEach(function(e){e.style.visibility=`visible`})}},{key:`hide`,value:function(){this.forEach(function(e){e.style.visibility=`hidden`})}},{key:`getCount`,value:function(){return this.childElementCount}},{key:`getParent`,value:function(){return this.parentElement}},{key:`getChildren`,value:function(){return this.children}},{key:`getFirst`,value:function(){return this.firstElementChild}},{key:`getLast`,value:function(){return this.lastElementChild}},{key:`getChildByIndex`,value:function(e){return this.children[e]||null}},{key:`add`,value:function(e,t){return this.appendChild(e,t)}},{key:`set`,value:function(e,t){this.config[e]=t}},{key:`get`,value:function(e){return this.config[e]}},{key:`moveTo`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(e,t,n),this}},{key:`move`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(e,t,n),this}},{key:`setZIndex`,value:function(e){return this.style.zIndex=e,this}}])}(qp);$p.PARSED_STYLE_LIST=new Set(`class.className.clipPath.cursor.display.draggable.droppable.fill.fillOpacity.fillRule.filter.increasedLineWidthForHitTesting.lineCap.lineDash.lineDashOffset.lineJoin.lineWidth.miterLimit.hitArea.offsetDistance.offsetPath.offsetX.offsetY.opacity.pointerEvents.shadowColor.shadowType.shadowBlur.shadowOffsetX.shadowOffsetY.stroke.strokeOpacity.strokeWidth.strokeLinecap.strokeLineJoin.strokeDasharray.strokeDashoffset.transform.transformOrigin.textTransform.visibility.zIndex`.split(`.`));var em=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return R(this,t),mn(this,t,[tn({type:G.CIRCLE},e)])}return gn(t,e),z(t)}($p);em.PARSED_STYLE_LIST=new Set([].concat(ln($p.PARSED_STYLE_LIST),[`cx`,`cy`,`cz`,`r`,`isBillboard`,`isSizeAttenuation`]));var tm=[`style`],nm=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=n.style,i=bs(n,tm);return R(this,t),e=mn(this,t,[tn({style:r},i)]),e.isCustomElement=!0,e}return gn(t,e),z(t)}($p);nm.PARSED_STYLE_LIST=new Set([`class`,`className`,`clipPath`,`cursor`,`draggable`,`droppable`,`opacity`,`pointerEvents`,`transform`,`transformOrigin`,`zIndex`,`visibility`]);var rm=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return R(this,t),mn(this,t,[tn({type:G.ELLIPSE},e)])}return gn(t,e),z(t)}($p);rm.PARSED_STYLE_LIST=new Set([].concat(ln($p.PARSED_STYLE_LIST),[`cx`,`cy`,`cz`,`rx`,`ry`,`isBillboard`,`isSizeAttenuation`]));var im=function(e){function t(){return R(this,t),mn(this,t,[{type:G.FRAGMENT}])}return gn(t,e),z(t)}($p);im.PARSED_STYLE_LIST=new Set([`class`,`className`]);var am=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return R(this,t),mn(this,t,[tn({type:G.GROUP},e)])}return gn(t,e),z(t)}($p);am.PARSED_STYLE_LIST=new Set([`class`,`className`,`clipPath`,`cursor`,`draggable`,`droppable`,`opacity`,`pointerEvents`,`transform`,`transformOrigin`,`zIndex`,`visibility`]);var om=[`style`],sm=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=n.style,i=bs(n,om);return R(this,t),e=mn(this,t,[tn({type:G.HTML,style:r},i)]),e.cullable.enable=!1,e}return gn(t,e),z(t,[{key:`getDomElement`,value:function(){return this.parsedStyle.$el}},{key:`getClientRects`,value:function(){return[this.getBoundingClientRect()]}},{key:`getLocalBounds`,value:function(){if(this.parentNode){var e=Pn(Dn(),this.parentNode.getWorldTransform()),t=this.getBounds();if(!As.isEmpty(t)){var n=new As;return n.setFromTransformedAABB(t,e),n}}return this.getBounds()}}])}($p);sm.PARSED_STYLE_LIST=new Set([].concat(ln($p.PARSED_STYLE_LIST),[`x`,`y`,`$el`,`innerHTML`,`width`,`height`]));var cm=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return R(this,t),mn(this,t,[tn({type:G.IMAGE},e)])}return gn(t,e),z(t)}($p);cm.PARSED_STYLE_LIST=new Set([].concat(ln($p.PARSED_STYLE_LIST),[`x`,`y`,`z`,`src`,`width`,`height`,`isBillboard`,`billboardRotation`,`isSizeAttenuation`,`keepAspectRatio`]));var lm=[`style`],um=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=n.style,i=bs(n,lm);R(this,t),e=mn(this,t,[tn({type:G.LINE,style:tn({x1:0,y1:0,x2:0,y2:0,z1:0,z2:0},r)},i)]),e.markerStartAngle=0,e.markerEndAngle=0;var a=e.parsedStyle,o=a.markerStart,s=a.markerEnd;return o&&Jp(o)&&(e.markerStartAngle=o.getLocalEulerAngles(),e.appendChild(o)),s&&Jp(s)&&(e.markerEndAngle=s.getLocalEulerAngles(),e.appendChild(s)),e.transformMarker(!0),e.transformMarker(!1),e}return gn(t,e),z(t,[{key:`attributeChangedCallback`,value:function(e,t,n,r,i){e===`x1`||e===`y1`||e===`x2`||e===`y2`||e===`markerStartOffset`||e===`markerEndOffset`?(this.transformMarker(!0),this.transformMarker(!1)):e===`markerStart`?(r&&Jp(r)&&(this.markerStartAngle=0,r.remove()),i&&Jp(i)&&(this.markerStartAngle=i.getLocalEulerAngles(),this.appendChild(i),this.transformMarker(!0))):e===`markerEnd`&&(r&&Jp(r)&&(this.markerEndAngle=0,r.remove()),i&&Jp(i)&&(this.markerEndAngle=i.getLocalEulerAngles(),this.appendChild(i),this.transformMarker(!1)))}},{key:`transformMarker`,value:function(e){var t=this.parsedStyle,n=t.markerStart,r=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,o=t.x1,s=t.x2,c=t.y1,l=t.y2,u=e?n:r;if(!(!u||!Jp(u))){var d=0,f,p,m,h,g,_;e?(m=o,h=c,f=s-o,p=l-c,g=i||0,_=this.markerStartAngle):(m=s,h=l,f=o-s,p=c-l,g=a||0,_=this.markerEndAngle),d=Math.atan2(p,f),u.setLocalEulerAngles(d*180/Math.PI+_),u.setLocalPosition(m+Math.cos(d)*g,h+Math.sin(d)*g)}}},{key:`getPoint`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=this.parsedStyle,r=n.x1,i=n.y1,a=n.x2,o=n.y2,s=qo(r,i,a,o,e),c=s.x,l=s.y,u=Hr(Tr(),Or(c,l,0),t?this.getWorldTransform():this.getLocalTransform());return new Ps(u[0],u[1])}},{key:`getPointAtLength`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(e/this.getTotalLength(),t)}},{key:`getTotalLength`,value:function(){var e=this.parsedStyle,t=e.x1,n=e.y1,r=e.x2,i=e.y2;return Ko(t,n,r,i)}}])}($p);um.PARSED_STYLE_LIST=new Set([].concat(ln($p.PARSED_STYLE_LIST),[`x1`,`y1`,`x2`,`y2`,`z1`,`z2`,`isBillboard`,`isSizeAttenuation`,`markerStart`,`markerEnd`,`markerStartOffset`,`markerEndOffset`]));var dm=[`style`],fm=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=n.style,i=bs(n,dm);R(this,t),e=mn(this,t,[tn({type:G.PATH,style:r,initialParsedStyle:{miterLimit:4,d:tn({},Sc)}},i)]),e.markerStartAngle=0,e.markerEndAngle=0,e.markerMidList=[];var a=e.parsedStyle,o=a.markerStart,s=a.markerEnd,c=a.markerMid;return o&&Jp(o)&&(e.markerStartAngle=o.getLocalEulerAngles(),e.appendChild(o)),c&&Jp(c)&&e.placeMarkerMid(c),s&&Jp(s)&&(e.markerEndAngle=s.getLocalEulerAngles(),e.appendChild(s)),e.transformMarker(!0),e.transformMarker(!1),e}return gn(t,e),z(t,[{key:`attributeChangedCallback`,value:function(e,t,n,r,i){e===`d`?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):e===`markerStartOffset`||e===`markerEndOffset`?(this.transformMarker(!0),this.transformMarker(!1)):e===`markerStart`?(r&&Jp(r)&&(this.markerStartAngle=0,r.remove()),i&&Jp(i)&&(this.markerStartAngle=i.getLocalEulerAngles(),this.appendChild(i),this.transformMarker(!0))):e===`markerEnd`?(r&&Jp(r)&&(this.markerEndAngle=0,r.remove()),i&&Jp(i)&&(this.markerEndAngle=i.getLocalEulerAngles(),this.appendChild(i),this.transformMarker(!1))):e===`markerMid`&&this.placeMarkerMid(i)}},{key:`transformMarker`,value:function(e){var t=this.parsedStyle,n=t.markerStart,r=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,o=e?n:r;if(!(!o||!Jp(o))){var s=0,c,l,u,d,f,p;if(e){var m=bn(this.getStartTangent(),2),h=m[0],g=m[1];u=g[0],d=g[1],c=h[0]-g[0],l=h[1]-g[1],f=i||0,p=this.markerStartAngle}else{var _=bn(this.getEndTangent(),2),v=_[0],y=_[1];u=y[0],d=y[1],c=v[0]-y[0],l=v[1]-y[1],f=a||0,p=this.markerEndAngle}s=Math.atan2(l,c),o.setLocalEulerAngles(s*180/Math.PI+p),o.setLocalPosition(u+Math.cos(s)*f,d+Math.sin(s)*f)}}},{key:`placeMarkerMid`,value:function(e){var t=this.parsedStyle.d.segments;if(this.markerMidList.forEach(function(e){e.remove()}),e&&Jp(e))for(var n=1;n<t.length-1;n++){var r=bn(t[n].currentPoint,2),i=r[0],a=r[1],o=n===1?e:e.cloneNode(!0);this.markerMidList.push(o),this.appendChild(o),o.setLocalPosition(i,a)}}},{key:`getTotalLength`,value:function(){return Su(this)}},{key:`getPointAtLength`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=this.parsedStyle.d.absolutePath,r=Oo(n,e),i=r.x,a=r.y,o=Hr(Tr(),Or(i,a,0),t?this.getWorldTransform():this.getLocalTransform());return new Ps(o[0],o[1])}},{key:`getPoint`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPointAtLength(e*Su(this),t)}},{key:`getStartTangent`,value:function(){var e=this.parsedStyle.d.segments,t=[];if(e.length>1){var n=e[0].currentPoint,r=e[1].currentPoint,i=e[1].startTangent;t=[],i?(t.push([n[0]-i[0],n[1]-i[1]]),t.push([n[0],n[1]])):(t.push([r[0],r[1]]),t.push([n[0],n[1]]))}return t}},{key:`getEndTangent`,value:function(){var e=this.parsedStyle.d.segments,t=e.length,n=[];if(t>1){var r=e[t-2].currentPoint,i=e[t-1].currentPoint,a=e[t-1].endTangent;n=[],a?(n.push([i[0]-a[0],i[1]-a[1]]),n.push([i[0],i[1]])):(n.push([r[0],r[1]]),n.push([i[0],i[1]]))}return n}}])}($p);fm.PARSED_STYLE_LIST=new Set([].concat(ln($p.PARSED_STYLE_LIST),[`d`,`markerStart`,`markerMid`,`markerEnd`,`markerStartOffset`,`markerEndOffset`,`isBillboard`,`isSizeAttenuation`]));var pm=[`style`],mm=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},r=n.style,i=bs(n,pm);R(this,t),e=mn(this,t,[tn({type:G.POLYGON,style:r,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!0}},i)]),e.markerStartAngle=0,e.markerEndAngle=0,e.markerMidList=[];var a=e.parsedStyle,o=a.markerStart,s=a.markerEnd,c=a.markerMid;return o&&Jp(o)&&(e.markerStartAngle=o.getLocalEulerAngles(),e.appendChild(o)),c&&Jp(c)&&e.placeMarkerMid(c),s&&Jp(s)&&(e.markerEndAngle=s.getLocalEulerAngles(),e.appendChild(s)),e.transformMarker(!0),e.transformMarker(!1),e}return gn(t,e),z(t,[{key:`attributeChangedCallback`,value:function(e,t,n,r,i){e===`points`?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):e===`markerStartOffset`||e===`markerEndOffset`?(this.transformMarker(!0),this.transformMarker(!1)):e===`markerStart`?(r&&Jp(r)&&(this.markerStartAngle=0,r.remove()),i&&Jp(i)&&(this.markerStartAngle=i.getLocalEulerAngles(),this.appendChild(i),this.transformMarker(!0))):e===`markerEnd`?(r&&Jp(r)&&(this.markerEndAngle=0,r.remove()),i&&Jp(i)&&(this.markerEndAngle=i.getLocalEulerAngles(),this.appendChild(i),this.transformMarker(!1))):e===`markerMid`&&this.placeMarkerMid(i)}},{key:`transformMarker`,value:function(e){var t=this.parsedStyle,n=t.markerStart,r=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,o=(t.points||{}).points,s=e?n:r;if(!(!s||!Jp(s)||!o)){var c=0,l,u,d=o[0][0],f=o[0][1],p,m;if(e)l=o[1][0]-o[0][0],u=o[1][1]-o[0][1],p=i||0,m=this.markerStartAngle;else{var h=o.length;this.parsedStyle.isClosed?(l=o[h-1][0]-o[0][0],u=o[h-1][1]-o[0][1]):(d=o[h-1][0],f=o[h-1][1],l=o[h-2][0]-o[h-1][0],u=o[h-2][1]-o[h-1][1]),p=a||0,m=this.markerEndAngle}c=Math.atan2(u,l),s.setLocalEulerAngles(c*180/Math.PI+m),s.setLocalPosition(d+Math.cos(c)*p,f+Math.sin(c)*p)}}},{key:`placeMarkerMid`,value:function(e){var t=(this.parsedStyle.points||{}).points;if(this.markerMidList.forEach(function(e){e.remove()}),this.markerMidList=[],e&&Jp(e)&&t)for(var n=1;n<(this.parsedStyle.isClosed?t.length:t.length-1);n++){var r=t[n][0],i=t[n][1],a=n===1?e:e.cloneNode(!0);this.markerMidList.push(a),this.appendChild(a),a.setLocalPosition(r,i)}}}])}($p);mm.PARSED_STYLE_LIST=new Set([].concat(ln($p.PARSED_STYLE_LIST),[`points`,`markerStart`,`markerMid`,`markerEnd`,`markerStartOffset`,`markerEndOffset`,`isClosed`,`isBillboard`,`isSizeAttenuation`]));var hm=[`style`],gm=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=e.style,r=bs(e,hm);return R(this,t),mn(this,t,[tn({type:G.POLYLINE,style:n,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!1}},r)])}return gn(t,e),z(t,[{key:`getTotalLength`,value:function(){return Cu(this)}},{key:`getPointAtLength`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(e/this.getTotalLength(),t)}},{key:`getPoint`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,n=this.parsedStyle.points.points;if(this.parsedStyle.points.segments.length===0){var r=[],i=0,a,o,s=this.getTotalLength();n.forEach(function(e,t){n[t+1]&&(a=[0,0],a[0]=i/s,o=Ko(e[0],e[1],n[t+1][0],n[t+1][1]),i+=o,a[1]=i/s,r.push(a))}),this.parsedStyle.points.segments=r}var c=0,l=0;this.parsedStyle.points.segments.forEach(function(t,n){e>=t[0]&&e<=t[1]&&(c=(e-t[0])/(t[1]-t[0]),l=n)});var u=qo(n[l][0],n[l][1],n[l+1][0],n[l+1][1],c),d=u.x,f=u.y,p=Hr(Tr(),Or(d,f,0),t?this.getWorldTransform():this.getLocalTransform());return new Ps(p[0],p[1])}},{key:`getStartTangent`,value:function(){var e=this.parsedStyle.points.points,t=[];return t.push([e[1][0],e[1][1]]),t.push([e[0][0],e[0][1]]),t}},{key:`getEndTangent`,value:function(){var e=this.parsedStyle.points.points,t=e.length-1,n=[];return n.push([e[t-1][0],e[t-1][1]]),n.push([e[t][0],e[t][1]]),n}}])}(mm);gm.PARSED_STYLE_LIST=new Set([].concat(ln(mm.PARSED_STYLE_LIST),[`points`,`markerStart`,`markerMid`,`markerEnd`,`markerStartOffset`,`markerEndOffset`,`isBillboard`]));var _m=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return R(this,t),mn(this,t,[tn({type:G.RECT},e)])}return gn(t,e),z(t)}($p);_m.PARSED_STYLE_LIST=new Set([].concat(ln($p.PARSED_STYLE_LIST),[`x`,`y`,`z`,`width`,`height`,`isBillboard`,`isSizeAttenuation`,`radius`]));var vm=[`style`],ym=function(e){function t(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=e.style,r=bs(e,vm);return R(this,t),mn(this,t,[tn({type:G.TEXT,style:tn({fill:`black`},n)},r)])}return gn(t,e),z(t,[{key:`getComputedTextLength`,value:function(){return this.getGeometryBounds(),this.parsedStyle.metrics?.maxLineWidth||0}},{key:`getLineBoundingRects`,value:function(){return this.getGeometryBounds(),this.parsedStyle.metrics?.lineMetrics||[]}},{key:`isOverflowing`,value:function(){return this.getGeometryBounds(),!!this.parsedStyle.isOverflowing}}])}($p);ym.PARSED_STYLE_LIST=new Set([].concat(ln($p.PARSED_STYLE_LIST),`x.y.z.isBillboard.billboardRotation.isSizeAttenuation.text.textAlign.textBaseline.fontStyle.fontSize.fontFamily.fontWeight.fontVariant.lineHeight.letterSpacing.leading.wordWrap.wordWrapWidth.maxLines.textOverflow.isOverflowing.textPath.textDecorationLine.textDecorationColor.textDecorationStyle.textDecorationThickness.textPathSide.textPathStartOffset.metrics.dx.dy`.split(`.`)));var bm=function(){function e(){R(this,e),this.registry={},this.define(G.CIRCLE,em),this.define(G.ELLIPSE,rm),this.define(G.RECT,_m),this.define(G.IMAGE,cm),this.define(G.LINE,um),this.define(G.GROUP,am),this.define(G.PATH,fm),this.define(G.POLYGON,mm),this.define(G.POLYLINE,gm),this.define(G.TEXT,ym),this.define(G.HTML,sm)}return z(e,[{key:`define`,value:function(e,t){this.registry[e]=t}},{key:`get`,value:function(e){return this.registry[e]}}])}(),xm={number:function(e){return new El(e)},percent:function(e){return new El(e,`%`)},px:function(e){return new El(e,`px`)},em:function(e){return new El(e,`em`)},rem:function(e){return new El(e,`rem`)},deg:function(e){return new El(e,`deg`)},grad:function(e){return new El(e,`grad`)},rad:function(e){return new El(e,`rad`)},turn:function(e){return new El(e,`turn`)},s:function(e){return new El(e,`s`)},ms:function(e){return new El(e,`ms`)},registerProperty:function(e){var t=e.name,n=e.inherits,r=e.interpolable,i=e.initialValue,a=e.syntax;Y.styleValueRegistry.registerMetadata({n:t,inh:n,int:r,d:i,syntax:a})},registerLayout:function(e,t){Y.layoutRegistry.registerLayout(e,t)}},Sm=function(e){function t(){var e;R(this,t),e=mn(this,t),e.defaultView=null,e.ownerDocument=null,e.nodeName=`document`;try{e.timeline=new Y.AnimationTimeline(e)}catch{}var n={};return md.forEach(function(e){var t=e.n,r=e.inh,i=e.d;r&&i&&(n[t]=B(i)?i(G.GROUP):i)}),e.documentElement=new am({id:`g-root`,style:n}),e.documentElement.ownerDocument=e,e.documentElement.parentNode=e,e.childNodes=[e.documentElement],e}return gn(t,e),z(t,[{key:`children`,get:function(){return this.childNodes}},{key:`childElementCount`,get:function(){return this.childNodes.length}},{key:`firstElementChild`,get:function(){return this.firstChild}},{key:`lastElementChild`,get:function(){return this.lastChild}},{key:`createElement`,value:function(e,t){if(e===`svg`)return this.documentElement;var n=this.defaultView.customElements.get(e);n||=(console.warn(`Unsupported tagName: `,e),e===`tspan`?ym:am);var r=new n(t);return r.ownerDocument=this,r}},{key:`createElementNS`,value:function(e,t,n){return this.createElement(t,n)}},{key:`cloneNode`,value:function(e){throw Error(Is)}},{key:`destroy`,value:function(){try{this.documentElement.destroyChildren(),this.timeline.destroy()}catch{}}},{key:`elementsFromBBox`,value:function(e,t,n,r){var i=[],a=function(o){if(!(!o.isInteractive()||o.isCulled())){var s=o.parsedStyle.pointerEvents,c=s===void 0?`auto`:s;if(![`auto`,`visiblepainted`,`visiblefill`,`visiblestroke`,`visible`].includes(c)||o.isVisible()){var l=o.getTransformedGeometryBounds(!0);l&&!As.isEmpty(l)&&l.max[0]>=e&&l.min[0]<=n&&l.max[1]>=t&&l.min[1]<=r&&i.push(o)}o.childNodes&&o.childNodes.forEach(function(e){e instanceof $p&&a(e)})}};return a(this.documentElement),i.sort(function(e,t){return t.sortable.renderOrder-e.sortable.renderOrder}),i}},{key:`elementFromPointSync`,value:function(e,t){var n=this.defaultView.canvas2Viewport({x:e,y:t}),r=n.x,i=n.y,a=this.defaultView.getConfig(),o=a.width,s=a.height;if(r<0||i<0||r>o||i>s)return null;var c=this.defaultView.viewport2Client({x:r,y:i}),l=c.x,u=c.y,d=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!0,position:{x:e,y:t,viewportX:r,viewportY:i,clientX:l,clientY:u},picked:[]}).picked;return d&&d[0]||this.documentElement}},{key:`elementFromPoint`,value:function(){var e=_s(hs().mark(function e(t,n){var r,i,a,o,s,c,l,u,d,f,p;return hs().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r=this.defaultView.canvas2Viewport({x:t,y:n}),i=r.x,a=r.y,o=this.defaultView.getConfig(),s=o.width,c=o.height,!(i<0||a<0||i>s||a>c)){e.next=1;break}return e.abrupt(`return`,null);case 1:return l=this.defaultView.viewport2Client({x:i,y:a}),u=l.x,d=l.y,e.next=2,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!0,position:{x:t,y:n,viewportX:i,viewportY:a,clientX:u,clientY:d},picked:[]});case 2:return f=e.sent,p=f.picked,e.abrupt(`return`,p&&p[0]||this.documentElement);case 3:case`end`:return e.stop()}},e,this)}));function t(t,n){return e.apply(this,arguments)}return t}()},{key:`elementsFromPointSync`,value:function(e,t){var n=this.defaultView.canvas2Viewport({x:e,y:t}),r=n.x,i=n.y,a=this.defaultView.getConfig(),o=a.width,s=a.height;if(r<0||i<0||r>o||i>s)return[];var c=this.defaultView.viewport2Client({x:r,y:i}),l=c.x,u=c.y,d=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!1,position:{x:e,y:t,viewportX:r,viewportY:i,clientX:l,clientY:u},picked:[]}).picked;return d[d.length-1]!==this.documentElement&&d.push(this.documentElement),d}},{key:`elementsFromPoint`,value:function(){var e=_s(hs().mark(function e(t,n){var r,i,a,o,s,c,l,u,d,f,p;return hs().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r=this.defaultView.canvas2Viewport({x:t,y:n}),i=r.x,a=r.y,o=this.defaultView.getConfig(),s=o.width,c=o.height,!(i<0||a<0||i>s||a>c)){e.next=1;break}return e.abrupt(`return`,[]);case 1:return l=this.defaultView.viewport2Client({x:i,y:a}),u=l.x,d=l.y,e.next=2,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!1,position:{x:t,y:n,viewportX:i,viewportY:a,clientX:u,clientY:d},picked:[]});case 2:return f=e.sent,p=f.picked,p[p.length-1]!==this.documentElement&&p.push(this.documentElement),e.abrupt(`return`,p);case 3:case`end`:return e.stop()}},e,this)}));function t(t,n){return e.apply(this,arguments)}return t}()},{key:`appendChild`,value:function(e,t){throw Error(Ls)}},{key:`insertBefore`,value:function(e,t){throw Error(Ls)}},{key:`removeChild`,value:function(e,t){throw Error(Ls)}},{key:`replaceChild`,value:function(e,t,n){throw Error(Ls)}},{key:`append`,value:function(){throw Error(Ls)}},{key:`prepend`,value:function(){throw Error(Ls)}},{key:`getElementById`,value:function(e){return this.documentElement.getElementById(e)}},{key:`getElementsByName`,value:function(e){return this.documentElement.getElementsByName(e)}},{key:`getElementsByTagName`,value:function(e){return this.documentElement.getElementsByTagName(e)}},{key:`getElementsByClassName`,value:function(e){return this.documentElement.getElementsByClassName(e)}},{key:`querySelector`,value:function(e){return this.documentElement.querySelector(e)}},{key:`querySelectorAll`,value:function(e){return this.documentElement.querySelectorAll(e)}},{key:`find`,value:function(e){return this.documentElement.find(e)}},{key:`findAll`,value:function(e){return this.documentElement.findAll(e)}}])}(Qf),Cm=function(){function e(t){R(this,e),this.strategies=t}return z(e,[{key:`apply`,value:function(t){var n=t.config,r=t.camera,i=t.renderingService,a=t.renderingContext,o=this.strategies;i.hooks.cull.tap(e.tag,function(e){if(e){var t=e.cullable;if(o.length===0?t.visible=a.unculledEntities.indexOf(e.entity)>-1:t.visible=o.every(function(t){return t.isVisible(r,e)}),!e.isCulled()&&e.isVisible())return e;var i=n.future?.experimentalCancelEventPropagation===!0;return e.dispatchEvent(new Xf(op.CULLED),i,i),null}return e}),i.hooks.afterRender.tap(e.tag,function(e){e.cullable.visibilityPlaneMask=-1})}}])}();Cm.tag=`Culling`;var wm=function(){function e(){var t=this;R(this,e),this.autoPreventDefault=!1,this.rootPointerEvent=new Jf(null),this.rootWheelEvent=new Yf(null),this.onPointerMove=function(e){var n,r=(n=t.context.renderingContext.root)==null||(n=n.ownerDocument)==null?void 0:n.defaultView;if(!(r.supportsTouchEvents&&e.pointerType===`touch`)){var i=vs(t.normalizeToPointerEvent(e,r)),a;try{for(i.s();!(a=i.n()).done;){var o=a.value,s=t.bootstrapEvent(t.rootPointerEvent,o,r,e);t.context.eventService.mapEvent(s)}}catch(e){i.e(e)}finally{i.f()}t.setCursor(t.context.eventService.cursor)}},this.onClick=function(e){var n,r=(n=t.context.renderingContext.root)==null||(n=n.ownerDocument)==null?void 0:n.defaultView,i=vs(t.normalizeToPointerEvent(e,r)),a;try{for(i.s();!(a=i.n()).done;){var o=a.value,s=t.bootstrapEvent(t.rootPointerEvent,o,r,e);t.context.eventService.mapEvent(s)}}catch(e){i.e(e)}finally{i.f()}t.setCursor(t.context.eventService.cursor)}}return z(e,[{key:`apply`,value:function(t){var n=this;this.context=t;var r=t.renderingService,i=this.context.renderingContext.root.ownerDocument.defaultView;this.context.eventService.setPickHandler(function(e){return n.context.renderingService.hooks.pickSync.call({position:e,picked:[],topmost:!0}).picked[0]||null}),r.hooks.pointerWheel.tap(e.tag,function(e){var t=n.normalizeWheelEvent(e);n.context.eventService.mapEvent(t)}),r.hooks.pointerDown.tap(e.tag,function(e){if(!(i.supportsTouchEvents&&e.pointerType===`touch`)){var t=n.normalizeToPointerEvent(e,i);n.autoPreventDefault&&t[0].isNormalized&&(e.cancelable||!(`cancelable`in e))&&e.preventDefault();var r=vs(t),a;try{for(r.s();!(a=r.n()).done;){var o=a.value,s=n.bootstrapEvent(n.rootPointerEvent,o,i,e);n.context.eventService.mapEvent(s)}}catch(e){r.e(e)}finally{r.f()}n.setCursor(n.context.eventService.cursor)}}),r.hooks.pointerUp.tap(e.tag,function(e){if(!(i.supportsTouchEvents&&e.pointerType===`touch`)){var t=n.context.contextService.getDomElement(),r=n.context.eventService.isNativeEventFromCanvas(t,e)?``:`outside`,a=vs(n.normalizeToPointerEvent(e,i)),o;try{for(a.s();!(o=a.n()).done;){var s=o.value,c=n.bootstrapEvent(n.rootPointerEvent,s,i,e);c.type+=r,n.context.eventService.mapEvent(c)}}catch(e){a.e(e)}finally{a.f()}n.setCursor(n.context.eventService.cursor)}}),r.hooks.pointerMove.tap(e.tag,this.onPointerMove),r.hooks.pointerOver.tap(e.tag,this.onPointerMove),r.hooks.pointerOut.tap(e.tag,this.onPointerMove),r.hooks.click.tap(e.tag,this.onClick),r.hooks.pointerCancel.tap(e.tag,function(e){var t=vs(n.normalizeToPointerEvent(e,i)),r;try{for(t.s();!(r=t.n()).done;){var a=r.value,o=n.bootstrapEvent(n.rootPointerEvent,a,i,e);n.context.eventService.mapEvent(o)}}catch(e){t.e(e)}finally{t.f()}n.setCursor(n.context.eventService.cursor)})}},{key:`bootstrapEvent`,value:function(e,t,n,r){e.view=n,e.originalEvent=null,e.nativeEvent=r,e.pointerId=t.pointerId,e.width=t.width,e.height=t.height,e.isPrimary=t.isPrimary,e.pointerType=t.pointerType,e.pressure=t.pressure,e.tangentialPressure=t.tangentialPressure,e.tiltX=t.tiltX,e.tiltY=t.tiltY,e.twist=t.twist,this.transferMouseData(e,t);var i=this.context.eventService.client2Viewport({x:t.clientX,y:t.clientY}),a=i.x,o=i.y;e.viewport.x=a,e.viewport.y=o;var s=this.context.eventService.viewport2Canvas(e.viewport),c=s.x,l=s.y;return e.canvas.x=c,e.canvas.y=l,e.global.copyFrom(e.canvas),e.offset.copyFrom(e.canvas),e.isTrusted=r.isTrusted,e.type===`pointerleave`&&(e.type=`pointerout`),e.type.startsWith(`mouse`)&&(e.type=e.type.replace(`mouse`,`pointer`)),e.type.startsWith(`touch`)&&(e.type=Xd[e.type]||e.type),e}},{key:`normalizeWheelEvent`,value:function(e){var t=this.rootWheelEvent;this.transferMouseData(t,e),t.deltaMode=e.deltaMode,t.deltaX=e.deltaX,t.deltaY=e.deltaY,t.deltaZ=e.deltaZ;var n=this.context.eventService.client2Viewport({x:e.clientX,y:e.clientY}),r=n.x,i=n.y;t.viewport.x=r,t.viewport.y=i;var a=this.context.eventService.viewport2Canvas(t.viewport),o=a.x,s=a.y;return t.canvas.x=o,t.canvas.y=s,t.global.copyFrom(t.canvas),t.offset.copyFrom(t.canvas),t.nativeEvent=e,t.type=e.type,t}},{key:`transferMouseData`,value:function(e,t){e.isTrusted=t.isTrusted,e.srcElement=t.srcElement,e.timeStamp=Zd.now(),e.type=t.type,e.altKey=t.altKey,e.metaKey=t.metaKey,e.shiftKey=t.shiftKey,e.ctrlKey=t.ctrlKey,e.button=t.button,e.buttons=t.buttons,e.client.x=t.clientX,e.client.y=t.clientY,e.movement.x=t.movementX,e.movement.y=t.movementY,e.page.x=t.pageX,e.page.y=t.pageY,e.screen.x=t.screenX,e.screen.y=t.screenY,e.relatedTarget=null}},{key:`setCursor`,value:function(e){this.context.contextService.applyCursorStyle(e||this.context.config.cursor||`default`)}},{key:`normalizeToPointerEvent`,value:function(e,t){var n=[];if(t.isTouchEvent(e))for(var r=0;r<e.changedTouches.length;r++){var i=e.changedTouches[r];na(i.button)&&(i.button=0),na(i.buttons)&&(i.buttons=1),na(i.isPrimary)&&(i.isPrimary=e.touches.length===1&&e.type===`touchstart`),na(i.width)&&(i.width=i.radiusX||1),na(i.height)&&(i.height=i.radiusY||1),na(i.tiltX)&&(i.tiltX=0),na(i.tiltY)&&(i.tiltY=0),na(i.pointerType)&&(i.pointerType=`touch`),na(i.pointerId)&&(i.pointerId=i.identifier||0),na(i.pressure)&&(i.pressure=i.force||.5),na(i.twist)&&(i.twist=0),na(i.tangentialPressure)&&(i.tangentialPressure=0),i.isNormalized=!0,i.type=e.type,n.push(i)}else if(t.isMouseEvent(e)){var a=e;na(a.isPrimary)&&(a.isPrimary=!0),na(a.width)&&(a.width=1),na(a.height)&&(a.height=1),na(a.tiltX)&&(a.tiltX=0),na(a.tiltY)&&(a.tiltY=0),na(a.pointerType)&&(a.pointerType=`mouse`),na(a.pointerId)&&(a.pointerId=Yd),na(a.pressure)&&(a.pressure=.5),na(a.twist)&&(a.twist=0),na(a.tangentialPressure)&&(a.tangentialPressure=0),a.isNormalized=!0,n.push(a)}else n.push(e);return n}}])}();wm.tag=`Event`;var Tm=[G.CIRCLE,G.ELLIPSE,G.IMAGE,G.RECT,G.LINE,G.POLYLINE,G.POLYGON,G.TEXT,G.PATH,G.HTML],Em=function(){function e(){R(this,e)}return z(e,[{key:`isVisible`,value:function(e,t){var n,r=t.cullable;if(!r.enable)return!0;var i=t.getRenderBounds();if(As.isEmpty(i))return!1;var a=e.getFrustum(),o=(n=t.parentNode)==null||(n=n.cullable)==null?void 0:n.visibilityPlaneMask;return r.visibilityPlaneMask=this.computeVisibilityWithPlaneMask(t,i,o||Ms.INDETERMINATE,a.planes),r.visible=r.visibilityPlaneMask!==Ms.OUTSIDE,r.visible}},{key:`computeVisibilityWithPlaneMask`,value:function(e,t,n,r){if(n===Ms.OUTSIDE||n===Ms.INSIDE)return n;for(var i=Ms.INSIDE,a=Tm.indexOf(e.nodeName)>-1,o=0,s=r.length;o<s;++o){var c=1<<o;if((n&c)!==0&&!(a&&(o===4||o===5))){var l=r[o],u=l.normal,d=l.distance;if(zr(u,t.getPositiveFarPoint(r[o]))+d<0)return Ms.OUTSIDE;zr(u,t.getNegativeFarPoint(r[o]))+d<0&&(i|=c)}}return i}}])}(),Dm=function(){function e(){R(this,e),this.mutationRecords=[],this.isFirstTimeRendering=!0,this.isFirstTimeRenderingFinished=!1}return z(e,[{key:`apply`,value:function(t){var n=this,r=t.renderingService,i=t.renderingContext.root.ownerDocument.defaultView,a=function(e){r.dirty()},o=function(e){var t,i=e.detail;(t=n.mutationRecords).push.apply(t,ln(i)),r.dirty()},s=function(e){var t=e.target;Y.enableSizeAttenuation&&Y.styleValueRegistry.updateSizeAttenuation(t,i.getCamera().getZoom())},c=function(e){var t=e.target;Y.sceneGraphService.dirtyToRoot(t),r.dirty()};r.hooks.init.tap(e.tag,function(){i.addEventListener(op.MOUNTED,s),i.addEventListener(op.UNMOUNTED,c),i.addEventListener(op.ATTR_MODIFIED,a),i.addEventListener(op.BOUNDS_CHANGED,o)}),r.hooks.destroy.tap(e.tag,function(){i.removeEventListener(op.MOUNTED,s),i.removeEventListener(op.UNMOUNTED,c),i.removeEventListener(op.ATTR_MODIFIED,a),i.removeEventListener(op.BOUNDS_CHANGED,o),n.mutationRecords=[]});var l=Y.globalThis.requestIdleCallback??mf.bind(Y.globalThis);r.hooks.endFrame.tap(e.tag,function(){n.isFirstTimeRendering&&(n.isFirstTimeRendering=!1,l(function(){n.isFirstTimeRenderingFinished=!0})),n.mutationRecords=[]})}}])}();Dm.tag=`Prepare`;var Om=function(e){return e.READY=`ready`,e.BEFORE_RENDER=`beforerender`,e.RERENDER=`rerender`,e.AFTER_RENDER=`afterrender`,e.BEFORE_DESTROY=`beforedestroy`,e.AFTER_DESTROY=`afterdestroy`,e.RESIZE=`resize`,e.DIRTY_RECTANGLE=`dirtyrectangle`,e.RENDERER_CHANGED=`rendererchanged`,e}({}),km=500,Am=.1,jm=1e3,Mm=new Xf(op.MOUNTED),Nm=new Xf(op.UNMOUNTED),Pm=new Xf(Om.BEFORE_RENDER),Fm=new Xf(Om.RERENDER),Im=new Xf(Om.AFTER_RENDER),Lm=function(e){function t(e){var n;R(this,t),n=mn(this,t),n.Element=$p,n.inited=!1,n.context={};var r=e.container,i=e.canvas,a=e.renderer,o=e.width,s=e.height,c=e.background,l=e.cursor,u=e.supportsMutipleCanvasesInOneContainer,d=e.cleanUpOnDestroy,f=d===void 0?!0:d,p=e.offscreenCanvas,m=e.devicePixelRatio,h=e.requestAnimationFrame,g=e.cancelAnimationFrame,_=e.createImage,v=e.supportsTouchEvents,y=e.supportsPointerEvents,b=e.isTouchEvent,x=e.isMouseEvent,S=e.dblClickSpeed,C=o,w=s,T=m||zd&&window.devicePixelRatio||1;return T=T>=1?Math.ceil(T):1,i&&(C=o||qd(i)||i.width/T,w=s||Jd(i)||i.height/T),n.customElements=new bm,n.devicePixelRatio=T,n.requestAnimationFrame=h??mf.bind(Y.globalThis),n.cancelAnimationFrame=g??hf.bind(Y.globalThis),n.createImage=_??function(){return new window.Image},n.supportsTouchEvents=v??`ontouchstart`in Y.globalThis,n.supportsPointerEvents=y??!!Y.globalThis.PointerEvent,n.isTouchEvent=b??function(e){return n.supportsTouchEvents&&e instanceof Y.globalThis.TouchEvent},n.isMouseEvent=x??function(e){return!Y.globalThis.MouseEvent||e instanceof Y.globalThis.MouseEvent&&(!n.supportsPointerEvents||!(e instanceof Y.globalThis.PointerEvent))},p&&(Y.offscreenCanvas=p),n.document=new Sm,n.document.defaultView=n,u||Rd(r,n,f),n.initRenderingContext(tn(tn({},e),{},{width:C,height:w,background:c??`transparent`,cursor:l??`default`,cleanUpOnDestroy:f,devicePixelRatio:T,requestAnimationFrame:n.requestAnimationFrame,cancelAnimationFrame:n.cancelAnimationFrame,createImage:n.createImage,supportsTouchEvents:n.supportsTouchEvents,supportsPointerEvents:n.supportsPointerEvents,isTouchEvent:n.isTouchEvent,isMouseEvent:n.isMouseEvent,dblClickSpeed:S??200})),n.initDefaultCamera(C,w,a.clipSpaceNearZ),n.initRenderer(a,!0),n}return gn(t,e),z(t,[{key:`initRenderingContext`,value:function(e){this.context.config=e,this.context.renderingContext={root:this.document.documentElement,unculledEntities:[],renderListCurrentFrame:[],renderReasons:new Set,force:!1,dirty:!1}}},{key:`initDefaultCamera`,value:function(e,t,n){var r=this,i=new Y.CameraContribution;i.clipSpaceNearZ=n,i.setType(lc.EXPLORING,uc.DEFAULT).setPosition(e/2,t/2,km).setFocalPoint(e/2,t/2,0).setOrthographic(e/-2,e/2,t/2,t/-2,Am,jm),i.canvas=this,i.eventEmitter.on(fc.UPDATED,function(){r.context.renderingContext.renderReasons.add(np.CAMERA_CHANGED),Y.enableSizeAttenuation&&r.getConfig().renderer.getConfig().enableSizeAttenuation&&r.updateSizeAttenuation()}),this.context.camera=i}},{key:`updateSizeAttenuation`,value:function(){var e=this.getCamera().getZoom();this.document.documentElement.forEach(function(t){Y.styleValueRegistry.updateSizeAttenuation(t,e)})}},{key:`getConfig`,value:function(){return this.context.config}},{key:`getRoot`,value:function(){return this.document.documentElement}},{key:`getCamera`,value:function(){return this.context.camera}},{key:`getContextService`,value:function(){return this.context.contextService}},{key:`getEventService`,value:function(){return this.context.eventService}},{key:`getRenderingService`,value:function(){return this.context.renderingService}},{key:`getRenderingContext`,value:function(){return this.context.renderingContext}},{key:`getStats`,value:function(){return this.getRenderingService().getStats()}},{key:`ready`,get:function(){var e=this;return this.readyPromise||(this.readyPromise=new Promise(function(t){e.resolveReadyPromise=function(){t(e)}}),this.inited&&this.resolveReadyPromise()),this.readyPromise}},{key:`destroy`,value:function(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,t=arguments.length>1?arguments[1]:void 0;sl.clearCache();var n=this.getConfig().future?.experimentalCancelEventPropagation===!0;t||this.dispatchEvent(new Xf(Om.BEFORE_DESTROY),n,n),this.frameId&&this.cancelAnimationFrame(this.frameId);var r=this.getRoot();e&&(this.unmountChildren(r),this.document.destroy(),this.getEventService().destroy()),this.getRenderingService().destroy(),this.getContextService().destroy(),t||this.dispatchEvent(new Xf(Om.AFTER_DESTROY),n,n);var i=function(e){e.currentTarget=null,e.manager=null,e.target=null,e.relatedNode=null};i(Mm),i(Nm),i(Pm),i(Fm),i(Im),i(Xp),i(Wp),i(Gp),i(Kp),Y.textService.clearCache()}},{key:`changeSize`,value:function(e,t){this.resize(e,t)}},{key:`resize`,value:function(e,t){var n=this.context.config;n.width=e,n.height=t,this.getContextService().resize(e,t);var r=this.context.camera,i=r.getProjectionMode();r.setPosition(e/2,t/2,km).setFocalPoint(e/2,t/2,0),i===dc.ORTHOGRAPHIC?r.setOrthographic(e/-2,e/2,t/2,t/-2,r.getNear(),r.getFar()):r.setAspect(e/t);var a=n.future?.experimentalCancelEventPropagation===!0;this.dispatchEvent(new Xf(Om.RESIZE,{width:e,height:t}),a,a)}},{key:`appendChild`,value:function(e,t){return this.document.documentElement.appendChild(e,t)}},{key:`insertBefore`,value:function(e,t){return this.document.documentElement.insertBefore(e,t)}},{key:`removeChild`,value:function(e){return this.document.documentElement.removeChild(e)}},{key:`removeChildren`,value:function(){this.document.documentElement.removeChildren()}},{key:`destroyChildren`,value:function(){this.document.documentElement.destroyChildren()}},{key:`render`,value:function(e){var t=this;e&&(Pm.detail=e,Im.detail=e);var n=this.getConfig().future?.experimentalCancelEventPropagation===!0;this.dispatchEvent(Pm,n,n),this.getRenderingService().render(this,e,function(){t.dispatchEvent(Fm,n,n)}),this.dispatchEvent(Im,n,n)}},{key:`run`,value:function(){var e=this,t=function(n,r){e.render(r),e.frameId=e.requestAnimationFrame(t)};t()}},{key:`initRenderer`,value:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!e)throw Error(`Renderer is required.`);this.inited=!1,this.readyPromise=void 0,this.context.renderingPlugins=[],this.context.renderingPlugins.push(new wm,new Dm,new Cm([new Em])),this.loadRendererContainerModule(e),this.context.contextService=new this.context.ContextService(tn(tn({},Y),this.context)),this.context.renderingService=new rp(Y,this.context),this.context.eventService=new ep(Y,this.context),this.context.eventService.init(),this.context.contextService.init?(this.context.contextService.init(),this.initRenderingService(e,n,!0)):this.context.contextService.initAsync().then(function(){t.initRenderingService(e,n)}).catch(function(e){console.error(e)})}},{key:`initRenderingService`,value:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.context.renderingService.init(function(){t.inited=!0;var i=t.getConfig().future?.experimentalCancelEventPropagation===!0;n?r?t.requestAnimationFrame(function(){t.dispatchEvent(new Xf(Om.READY),i,i)}):t.dispatchEvent(new Xf(Om.READY),i,i):t.dispatchEvent(new Xf(Om.RENDERER_CHANGED),i,i),t.readyPromise&&t.resolveReadyPromise(),n||t.getRoot().forEach(function(e){var t,n;(t=(n=e).dirty)==null||t.call(n,!0,!0)}),t.mountChildren(t.getRoot()),e.getConfig().enableAutoRendering&&t.run()})}},{key:`loadRendererContainerModule`,value:function(e){var t=this;e.getPlugins().forEach(function(e){e.context=t.context,e.init(Y)})}},{key:`setRenderer`,value:function(e){var t=this.getConfig();if(t.renderer!==e){var n=t.renderer;t.renderer=e,this.destroy(!1,!0),ln(n?.getPlugins()||[]).reverse().forEach(function(e){e.destroy(Y)}),this.initRenderer(e)}}},{key:`setCursor`,value:function(e){var t=this.getConfig();t.cursor=e,this.getContextService().applyCursorStyle(e)}},{key:`unmountChildren`,value:function(e){var t=this;if(e.childNodes.forEach(function(e){t.unmountChildren(e)}),this.inited){if(e.isMutationObserved)e.dispatchEvent(Nm);else{var n=this.getConfig().future?.experimentalCancelEventPropagation===!0;Nm.target=e,this.dispatchEvent(Nm,!0,n)}e!==this.document.documentElement&&(e.ownerDocument=null),e.isConnected=!1}e.isCustomElement&&e.disconnectedCallback&&e.disconnectedCallback()}},{key:`mountChildren`,value:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:Qd(e);if(this.inited){if(!e.isConnected&&(e.ownerDocument=this.document,e.isConnected=!0,!n))if(e.isMutationObserved)e.dispatchEvent(Mm);else{var r=this.getConfig().future?.experimentalCancelEventPropagation===!0;Mm.target=e,this.dispatchEvent(Mm,!0,r)}}else console.warn("[g]: You are trying to call `canvas.appendChild` before canvas' initialization finished. You can either await `canvas.ready` or listen to `CanvasEvent.READY` manually.",`appended child: `,e.nodeName);e.childNodes.forEach(function(e){t.mountChildren(e,n)}),e.isCustomElement&&e.connectedCallback&&e.connectedCallback()}},{key:`mountFragment`,value:function(e){this.mountChildren(e,!1)}},{key:`client2Viewport`,value:function(e){return this.getEventService().client2Viewport(e)}},{key:`viewport2Client`,value:function(e){return this.getEventService().viewport2Client(e)}},{key:`viewport2Canvas`,value:function(e){return this.getEventService().viewport2Canvas(e)}},{key:`canvas2Viewport`,value:function(e){return this.getEventService().canvas2Viewport(e)}},{key:`getPointByClient`,value:function(e,t){return this.client2Viewport({x:e,y:t})}},{key:`getClientByPoint`,value:function(e,t){return this.viewport2Client({x:e,y:t})}}])}(Zf),Rm=function(){function e(){R(this,e),this.cacheStore=new Map}return z(e,[{key:`onRefAdded`,value:function(e){}},{key:`has`,value:function(e){return this.cacheStore.has(e)}},{key:`put`,value:function(e,t,n){return this.cacheStore.has(e)?!1:(this.cacheStore.set(e,{value:t,counter:new Set([n.entity])}),this.onRefAdded(n),!0)}},{key:`get`,value:function(e,t){var n=this.cacheStore.get(e);return n?(n.counter.has(t.entity)||(n.counter.add(t.entity),this.onRefAdded(t)),n.value):null}},{key:`update`,value:function(e,t,n){var r=this.cacheStore.get(e);return r?(r.value=tn(tn({},r.value),t),r.counter.has(n.entity)||(r.counter.add(n.entity),this.onRefAdded(n)),!0):!1}},{key:`release`,value:function(e,t){var n=this.cacheStore.get(e);return n?(n.counter.delete(t.entity),n.counter.size<=0&&this.cacheStore.delete(e),!0):!1}},{key:`releaseRef`,value:function(e){var t=this;Array.from(this.cacheStore.keys()).forEach(function(n){t.release(n,e)})}},{key:`getSize`,value:function(){return this.cacheStore.size}},{key:`clear`,value:function(){this.cacheStore.clear()}}])}(),zm=[],Bm=[],Vm=function(){function e(){R(this,e)}return z(e,null,[{key:`stop`,value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e.api;e.rafId&&=(t.cancelAnimationFrame(e.rafId),null)}},{key:`executeTask`,value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:e.api;zm.length<=0&&Bm.length<=0||(Bm.forEach(function(e){return e()}),Bm=zm.splice(0,e.TASK_NUM_PER_FRAME),e.rafId=t.requestAnimationFrame(function(){e.executeTask(t)}))}},{key:`sliceImage`,value:function(t,n,r,i){for(var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:e.api,s=t.naturalWidth||t.width,c=t.naturalHeight||t.height,l=n-a,u=r-a,d=Math.ceil(s/l),f=Math.ceil(c/u),p={tileSize:[n,r],gridSize:[f,d],tiles:Array(f).fill(null).map(function(){return Array(d).fill(null)})},m=function(e){for(var a=function(a){zm.push(function(){var d=a*l,f=e*u,m=[Math.min(n,s-d),Math.min(r,c-f)],h=m[0],g=m[1],_=o.createCanvas();_.width=n,_.height=r,_.getContext(`2d`).drawImage(t,d,f,h,g,0,0,h,g),p.tiles[e][a]={x:d,y:f,tileX:a,tileY:e,data:_},i()})},f=0;f<d;f++)a(f)},h=0;h<f;h++)m(h);return e.stop(),e.executeTask(),p}}])}();Vm.TASK_NUM_PER_FRAME=10;var Hm=new Rm;Hm.onRefAdded=function(e){var t=this;e.addEventListener(op.DESTROY,function(){t.releaseRef(e)},{once:!0})};var Um=function(){function e(t,n){R(this,e),this.gradientCache={},this.patternCache={},this.context=t,this.runtime=n}return z(e,[{key:`getImageSync`,value:function(e,t,n){var r=Pi(e)?e:e.src;if(Hm.has(r)){var i=Hm.get(r,t);if(i.img.complete)return n?.(i),i}return this.getOrCreateImage(e,t).then(function(e){n?.(e)}).catch(function(e){console.error(e)}),null}},{key:`getOrCreateImage`,value:function(e,t){var n=this,r=Pi(e)?e:e.src;if(!Pi(e)&&!Hm.has(r)){var i={img:e,size:[e.naturalWidth||e.width,e.naturalHeight||e.height],tileSize:Wm(e)};Hm.put(r,i,t)}if(Hm.has(r)){var a=Hm.get(r,t);return a.img.complete?Promise.resolve(a):new Promise(function(e,t){a.img.addEventListener(`load`,function(){a.size=[a.img.naturalWidth||a.img.width,a.img.naturalHeight||a.img.height],a.tileSize=Wm(a.img),e(a)}),a.img.addEventListener(`error`,function(e){t(e)})})}return new Promise(function(e,i){var a=n.context.config.createImage();if(a){var o={img:a,size:[0,0],tileSize:Wm(a)};Hm.put(r,o,t),a.onload=function(){o.size=[a.naturalWidth||a.width,a.naturalHeight||a.height],o.tileSize=Wm(o.img),e(o)},a.onerror=function(e){i(e)},a.crossOrigin=`Anonymous`,a.src=r}})}},{key:`createDownSampledImage`,value:function(){var e=_s(hs().mark(function e(t,n){var r,i,a,o,s,c,l,u,d,f,p,m,h,g;return hs().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=1,this.getOrCreateImage(t,n);case 1:if(r=e.sent,r.downSamplingRate===void 0){e.next=2;break}return e.abrupt(`return`,r);case 2:if(i=this.context.config.enableLargeImageOptimization,a=typeof i==`boolean`?{}:i,o=a.maxDownSampledImageSize,s=o===void 0?2048:o,c=a.downSamplingRateThreshold,l=c===void 0?.5:c,u=this.runtime.globalThis.createImageBitmap,d=bn(r.size,2),f=d[0],p=d[1],m=r.img,h=Math.min((s+s)/(f+p),Math.max(.01,Math.min(l,.5))),g=tn(tn({},r),{},{downSamplingRate:h}),Hm.update(r.img.src,g,n),!u){e.next=7;break}return e.prev=3,e.next=4,u(r.img,{resizeWidth:f*h,resizeHeight:p*h});case 4:m=e.sent,e.next=6;break;case 5:e.prev=5,e.catch(3),h=1;case 6:e.next=8;break;case 7:h=1;case 8:return g=tn(tn({},this.getImageSync(t,n)),{},{downSampled:m,downSamplingRate:h}),Hm.update(r.img.src,g,n),e.abrupt(`return`,g);case 9:case`end`:return e.stop()}},e,this,[[3,5]])}));function t(t,n){return e.apply(this,arguments)}return t}()},{key:`createImageTiles`,value:function(){var e=_s(hs().mark(function e(t,n,r,i){var a,o,s,c,l;return hs().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=1,this.getOrCreateImage(t,i);case 1:return a=e.sent,o=i.ownerDocument.defaultView,s=o.requestAnimationFrame,c=o.cancelAnimationFrame,Vm.api={requestAnimationFrame:s,cancelAnimationFrame:c,createCanvas:function(){return tp.createCanvas()}},l=tn(tn({},a),Vm.sliceImage(a.img,a.tileSize[0],a.tileSize[0],r)),Hm.update(a.img.src,l,i),e.abrupt(`return`,l);case 2:case`end`:return e.stop()}},e,this)}));function t(t,n,r,i){return e.apply(this,arguments)}return t}()},{key:`releaseImage`,value:function(e,t){Hm.release(Pi(e)?e:e.src,t)}},{key:`releaseImageRef`,value:function(e){Hm.releaseRef(e)}},{key:`getOrCreatePatternSync`,value:function(e,t,n,r,i,a,o){var s=this.generatePatternKey(t);if(s&&this.patternCache[s])return this.patternCache[s];var c=t.image,l=t.repetition,u=t.transform,d,f=!1;Pi(c)?d=this.getImageSync(c,e,o)?.img:r?(d=r,f=!0):d=c;var p=d&&n.createPattern(d,l);if(p){var m=u?Nf(Zu(u),new $p({})):Mn(Dn());f&&zn(m,m,[1/i,1/i,1]),p.setTransform({a:m[0],b:m[1],c:m[4],d:m[5],e:m[12]+a[0],f:m[13]+a[1]})}return s&&p&&(this.patternCache[s]=p),p}},{key:`getOrCreateGradient`,value:function(e,t){var n=this.generateGradientKey(e),r=e.type,i=e.steps,a=e.min,o=e.width,s=e.height,c=e.angle,l=e.cx,u=e.cy,d=e.size;if(this.gradientCache[n])return this.gradientCache[n];var f=null;if(r===xl.LinearGradient){var p=zl(a,o,s,c),m=p.x1,h=p.y1,g=p.x2,_=p.y2;f=t.createLinearGradient(m,h,g,_)}else if(r===xl.RadialGradient){var v=Bl(a,o,s,l,u,d),y=v.x,b=v.y,x=v.r;f=t.createRadialGradient(y,b,0,y,b,x)}return f&&(i.forEach(function(e){var t=e.offset,n=e.color;if(t.unit===J.kPercentage){var r;(r=f)==null||r.addColorStop(t.value/100,n.toString())}}),this.gradientCache[n]=f),this.gradientCache[n]}},{key:`generateGradientKey`,value:function(e){var t=e.type,n=e.min,r=e.width,i=e.height,a=e.steps,o=e.angle,s=e.cx,c=e.cy,l=e.size;return`gradient-${t}-${o?.toString()||0}-${s?.toString()||0}-${c?.toString()||0}-${l?.toString()||0}-${n[0]}-${n[1]}-${r}-${i}-${a.map(function(e){return`${e.offset}${e.color}`}).join(`-`)}`}},{key:`generatePatternKey`,value:function(e){var t=e.image,n=e.repetition;if(Pi(t))return`pattern-${t}-${n}`;if(t.nodeName===`rect`)return`pattern-${t.entity}-${n}`}}])}();Um.isSupportTile=!!tp.createCanvas();function Wm(e){if(!e.complete)return[0,0];var t=e.naturalWidth||e.width,n=e.naturalHeight||e.height,r=256;return[256,512].forEach(function(e){Math.ceil(n/e)*Math.ceil(t/e)<1e3&&(r=e)}),[r,r]}var Gm=function(){function e(){R(this,e)}return z(e,[{key:`apply`,value:function(t){var n=t.renderingService,r=t.renderingContext,i=t.imagePool,a=r.root.ownerDocument.defaultView,o=function(e,t,n){var r=e.parsedStyle,i=r.width,a=r.height;i&&!a?e.setAttribute(`height`,n/t*i):!i&&a&&e.setAttribute(`width`,t/n*a)},s=function(e){var t=e.target,r=t.nodeName,a=t.attributes;if(r===G.IMAGE){var s=a.src,c=a.keepAspectRatio;i.getImageSync(s,t,function(e){var r=e.img,i=r.width,a=r.height;c&&o(t,i,a),t.dirty(),n.dirty()})}},c=function(e){var t=e.target,r=e.attrName,a=e.prevValue,s=e.newValue;t.nodeName!==G.IMAGE||r!==`src`||(a!==s&&i.releaseImage(a,t),Pi(s)&&i.getOrCreateImage(s,t).then(function(e){var r=e.img,i=r.width,a=r.height;t.attributes.keepAspectRatio&&o(t,i,a),t.dirty(),n.dirty()}).catch(function(){}))};n.hooks.init.tap(e.tag,function(){a.addEventListener(op.MOUNTED,s),a.addEventListener(op.ATTR_MODIFIED,c)}),n.hooks.destroy.tap(e.tag,function(){a.removeEventListener(op.MOUNTED,s),a.removeEventListener(op.ATTR_MODIFIED,c)})}}])}();Gm.tag=`LoadImage`;var Km=Object.freeze({__proto__:null,ImagePool:Um,Plugin:function(e){function t(){var e;R(this,t);var n=[...arguments];return e=mn(this,t,[].concat(n)),e.name=`image-loader`,e}return gn(t,e),z(t,[{key:`init`,value:function(e){this.context.imagePool=new Um(this.context,e),this.addRenderingPlugin(new Gm)}},{key:`destroy`,value:function(){this.removeAllRenderingPlugins()}}])}(Ss)}),qm=`g-canvas-camera`,Jm=function(){function e(){R(this,e),this.displayObjectHTMLElementMap=new WeakMap}return z(e,[{key:`joinTransformMatrix`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0,0,0];return`matrix(${[e[0],e[1],e[4],e[5],e[12]+t[0],e[13]+t[1]].join(`,`)})`}},{key:`apply`,value:function(t,n){var r=this,i=t.camera,a=t.renderingContext,o=t.renderingService;this.context=t;var s=a.root.ownerDocument.defaultView,c=s.context.eventService.nativeHTMLMap,l=function(e,t){t.style.transform=r.joinTransformMatrix(e.getWorldTransform(),e.getOrigin())},u=function(e){var t=e.target;if(t.nodeName===G.HTML){r.$camera||=r.createCamera(i);var n=r.getOrCreateEl(t);r.$camera.appendChild(n),Object.keys(t.attributes).forEach(function(e){r.updateAttribute(e,t)}),l(t,n),c.set(n,t)}},d=function(e){var t=e.target;if(t.nodeName===G.HTML&&r.$camera){var n=r.getOrCreateEl(t);n&&(n.remove(),c.delete(n))}},f=function(e){var t=e.target;if(t.nodeName===G.HTML){var n=e.attrName;r.updateAttribute(n,t)}},p=function(e){for(var t=e.detail,n=0;n<t.length;n++){var i=t[n].target;(i.nodeName===G.FRAGMENT?i.childNodes:[i]).forEach(function(e){e.nodeName===G.HTML&&l(e,r.getOrCreateEl(e))})}},m=function(){if(r.$camera){var e=r.context.config,t=e.width,n=e.height;r.$camera.parentElement.style.width=`${t||0}px`,r.$camera.parentElement.style.height=`${n||0}px`}};o.hooks.init.tap(e.tag,function(){s.addEventListener(Om.RESIZE,m),s.addEventListener(op.MOUNTED,u),s.addEventListener(op.UNMOUNTED,d),s.addEventListener(op.ATTR_MODIFIED,f),s.addEventListener(op.BOUNDS_CHANGED,p)}),o.hooks.endFrame.tap(e.tag,function(){r.$camera&&a.renderReasons.has(np.CAMERA_CHANGED)&&(r.$camera.style.transform=r.joinTransformMatrix(i.getOrthoMatrix()))}),o.hooks.destroy.tap(e.tag,function(){r.$camera&&r.$camera.remove(),s.removeEventListener(Om.RESIZE,m),s.removeEventListener(op.MOUNTED,u),s.removeEventListener(op.UNMOUNTED,d),s.removeEventListener(op.ATTR_MODIFIED,f),s.removeEventListener(op.BOUNDS_CHANGED,p)})}},{key:`createCamera`,value:function(e){var t=this.context.config,n=t.document,r=t.width,i=t.height,a=this.context.contextService.getDomElement(),o=a.parentNode;if(o){var s=qm,c=o.querySelector(`#${s}`);if(!c){var l=(n||document).createElement(`div`);l.style.overflow=`hidden`,l.style.pointerEvents=`none`,l.style.position=`absolute`,l.style.left=`0px`,l.style.top=`0px`,l.style.width=`${r||0}px`,l.style.height=`${i||0}px`;var u=(n||document).createElement(`div`);c=u,u.id=s,u.style.position=`absolute`,u.style.left=`${a.offsetLeft||0}px`,u.style.top=`${a.offsetTop||0}px`,u.style.transformOrigin=`left top`,u.style.transform=this.joinTransformMatrix(e.getOrthoMatrix()),u.style.pointerEvents=`none`,u.style.width=`100%`,u.style.height=`100%`,l.appendChild(u),o.appendChild(l)}return c}return null}},{key:`getOrCreateEl`,value:function(e){var t=this.context.config.document,n=this.displayObjectHTMLElementMap.get(e);return n||(n=(t||document).createElement(`div`),e.parsedStyle.$el=n,this.displayObjectHTMLElementMap.set(e,n),e.id&&(n.id=e.id),e.name&&n.setAttribute(`name`,e.name),e.className&&(n.className=e.className),n.style.position=`absolute`,n.style[`will-change`]=`transform`,n.style.transform=this.joinTransformMatrix(e.getWorldTransform(),e.getOrigin())),n}},{key:`updateAttribute`,value:function(e,t){var n=this.getOrCreateEl(t);switch(e){case`innerHTML`:var r=t.parsedStyle.innerHTML;Pi(r)?n.innerHTML=r:(n.innerHTML=``,n.appendChild(r));break;case`x`:n.style.left=`${t.parsedStyle.x}px`;break;case`y`:n.style.top=`${t.parsedStyle.y}px`;break;case`transformOrigin`:var i=t.parsedStyle.transformOrigin;n.style[`transform-origin`]=`${i[0].buildCSSText(null,null,``)} ${i[1].buildCSSText(null,null,``)}`;break;case`width`:var a=t.parsedStyle.width;n.style.width=zi(a)?`${a}px`:a.toString();break;case`height`:var o=t.parsedStyle.height;n.style.height=zi(o)?`${o}px`:o.toString();break;case`zIndex`:var s=t.parsedStyle.zIndex;n.style[`z-index`]=`${s}`;break;case`visibility`:var c=t.parsedStyle.visibility;n.style.visibility=c;break;case`pointerEvents`:var l=t.parsedStyle.pointerEvents,u=l===void 0?`auto`:l;n.style.pointerEvents=u;break;case`opacity`:var d=t.parsedStyle.opacity;n.style.opacity=`${d}`;break;case`fill`:var f=t.parsedStyle.fill,p=``;$l(f)?p=f.isNone?`transparent`:t.getAttribute(`fill`):Array.isArray(f)?p=t.getAttribute(`fill`):Ql(f),n.style.background=p;break;case`stroke`:var m=t.parsedStyle.stroke,h=``;$l(m)?h=m.isNone?`transparent`:t.getAttribute(`stroke`):Array.isArray(m)?h=t.getAttribute(`stroke`):Ql(m),n.style[`border-color`]=h,n.style[`border-style`]=`solid`;break;case`lineWidth`:var g=t.parsedStyle.lineWidth;n.style[`border-width`]=`${g||0}px`;break;case`lineDash`:n.style[`border-style`]=`dashed`;break;case`filter`:var _=t.style.filter;n.style.filter=_;break;default:!V(t.style[e])&&t.style[e]!==``&&(n.style[e]=t.style[e])}}}])}();Jm.tag=`HTMLRendering`;var Ym=Object.freeze({__proto__:null,Plugin:function(e){function t(){var e;R(this,t);var n=[...arguments];return e=mn(this,t,[].concat(n)),e.name=`html-renderer`,e}return gn(t,e),z(t,[{key:`init`,value:function(){this.addRenderingPlugin(new Jm)}},{key:`destroy`,value:function(){this.removeAllRenderingPlugins()}}])}(Ss)}),Xm=function(){function e(){R(this,e)}return z(e,[{key:`apply`,value:function(t,n){var r=this,i=t.renderingService,a=t.renderingContext,o=t.config;this.context=t;var s=a.root.ownerDocument.defaultView,c=function(e){i.hooks.pointerMove.call(e)},l=function(e){i.hooks.pointerUp.call(e)},u=function(e){i.hooks.pointerDown.call(e)},d=function(e){i.hooks.pointerOver.call(e)},f=function(e){i.hooks.pointerOut.call(e)},p=function(e){i.hooks.pointerCancel.call(e)},m=function(e){i.hooks.pointerWheel.call(e)},h=function(e){i.hooks.click.call(e)},g=function(e){n.globalThis.document.addEventListener(`pointermove`,c,!0),e.addEventListener(`pointerdown`,u,!0),e.addEventListener(`pointerleave`,f,!0),e.addEventListener(`pointerover`,d,!0),n.globalThis.addEventListener(`pointerup`,l,!0),n.globalThis.addEventListener(`pointercancel`,p,!0)},_=function(e){e.addEventListener(`touchstart`,u,!0),e.addEventListener(`touchend`,l,!0),e.addEventListener(`touchmove`,c,!0),e.addEventListener(`touchcancel`,p,!0)},v=function(e){n.globalThis.document.addEventListener(`mousemove`,c,!0),e.addEventListener(`mousedown`,u,!0),e.addEventListener(`mouseout`,f,!0),e.addEventListener(`mouseover`,d,!0),n.globalThis.addEventListener(`mouseup`,l,!0)},y=function(e){n.globalThis.document.removeEventListener(`pointermove`,c,!0),e.removeEventListener(`pointerdown`,u,!0),e.removeEventListener(`pointerleave`,f,!0),e.removeEventListener(`pointerover`,d,!0),n.globalThis.removeEventListener(`pointerup`,l,!0),n.globalThis.removeEventListener(`pointercancel`,p,!0)},b=function(e){e.removeEventListener(`touchstart`,u,!0),e.removeEventListener(`touchend`,l,!0),e.removeEventListener(`touchmove`,c,!0),e.removeEventListener(`touchcancel`,p,!0)},x=function(e){n.globalThis.document.removeEventListener(`mousemove`,c,!0),e.removeEventListener(`mousedown`,u,!0),e.removeEventListener(`mouseout`,f,!0),e.removeEventListener(`mouseover`,d,!0),n.globalThis.removeEventListener(`mouseup`,l,!0)};i.hooks.init.tap(e.tag,function(){var e=r.context.contextService.getDomElement();n.globalThis.navigator.msPointerEnabled?(e.style.msContentZooming=`none`,e.style.msTouchAction=`none`):s.supportsPointerEvents&&(e.style.touchAction=`none`),s.supportsPointerEvents?g(e):v(e),s.supportsTouchEvents&&_(e),o.useNativeClickEvent&&e.addEventListener(`click`,h,!0),e.addEventListener(`wheel`,m,{passive:!0,capture:!0})}),i.hooks.destroy.tap(e.tag,function(){var e=r.context.contextService.getDomElement();n.globalThis.navigator.msPointerEnabled?(e.style.msContentZooming=``,e.style.msTouchAction=``):s.supportsPointerEvents&&(e.style.touchAction=``),s.supportsPointerEvents?y(e):x(e),s.supportsTouchEvents&&b(e),o.useNativeClickEvent&&e.removeEventListener(`click`,h,!0),e.removeEventListener(`wheel`,m,!0)})}}])}();Xm.tag=`DOMInteraction`;var Zm=Object.freeze({__proto__:null,Plugin:function(e){function t(){var e;R(this,t);var n=[...arguments];return e=mn(this,t,[].concat(n)),e.name=`dom-interaction`,e}return gn(t,e),z(t,[{key:`init`,value:function(){this.addRenderingPlugin(new Xm)}},{key:`destroy`,value:function(){this.removeAllRenderingPlugins()}}])}(Ss)}),Qm=function(){function e(){R(this,e)}return z(e,[{key:`apply`,value:function(t){var n=t.renderingService,r=t.contextService,i=t.config,a=r.getDomElement(),o=function(e){n.hooks.pointerDown.call(e)},s=function(e){n.hooks.pointerUp.call(e)},c=function(e){n.hooks.pointerMove.call(e)},l=function(e){n.hooks.pointerOver.call(e)},u=function(e){n.hooks.pointerOut.call(e)},d=function(e){n.hooks.click.call(e)},f=function(e){n.hooks.pointerCancel.call(e)};n.hooks.init.tap(e.tag,function(){a.addEventListener(`touchstart`,o,!0),a.addEventListener(`touchend`,s,!0),a.addEventListener(`touchmove`,c,!0),a.addEventListener(`touchcancel`,f,!0),a.addEventListener(`mouseout`,u,!0),a.addEventListener(`mouseover`,l,!0),i.useNativeClickEvent&&a.addEventListener(`click`,d,!0)}),n.hooks.destroy.tap(e.tag,function(){a.removeEventListener(`touchstart`,o,!0),a.removeEventListener(`touchend`,s,!0),a.removeEventListener(`touchmove`,c,!0),a.removeEventListener(`touchcancel`,f,!0),a.removeEventListener(`mouseout`,u,!0),a.removeEventListener(`mouseover`,l,!0),i.useNativeClickEvent&&a.removeEventListener(`click`,d,!0)})}}])}();Qm.tag=`MobileInteraction`,o(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?t.exports=r():typeof define==`function`&&define.amd?define(r):(n=typeof globalThis<`u`?globalThis:n||self,n.html2canvas=r())})(e,(function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])},e(t,n)};function t(t,n){if(typeof n!=`function`&&n!==null)throw TypeError(`Class extends value `+String(n)+` is not a constructor or null`);e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}var n=function(){return n=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var i in t=arguments[n],t)Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e},n.apply(this,arguments)};function r(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})}function i(e,t){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},r,i,a,o;return o={next:s(0),throw:s(1),return:s(2)},typeof Symbol==`function`&&(o[Symbol.iterator]=function(){return this}),o;function s(e){return function(t){return c([e,t])}}function c(o){if(r)throw TypeError(`Generator is already executing.`);for(;n;)try{if(r=1,i&&(a=o[0]&2?i.return:o[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,o[1])).done)return a;switch(i=0,a&&(o=[o[0]&2,a.value]),o[0]){case 0:case 1:a=o;break;case 4:return n.label++,{value:o[1],done:!1};case 5:n.label++,i=o[1],o=[0];continue;case 7:o=n.ops.pop(),n.trys.pop();continue;default:if((a=n.trys,!(a=a.length>0&&a[a.length-1]))&&(o[0]===6||o[0]===2)){n=0;continue}if(o[0]===3&&(!a||o[1]>a[0]&&o[1]<a[3])){n.label=o[1];break}if(o[0]===6&&n.label<a[1]){n.label=a[1],a=o;break}if(a&&n.label<a[2]){n.label=a[2],n.ops.push(o);break}a[2]&&n.ops.pop(),n.trys.pop();continue}o=t.call(e,n)}catch(e){o=[6,e],i=0}finally{r=a=0}if(o[0]&5)throw o[1];return{value:o[0]?o[1]:void 0,done:!0}}}function a(e,t,n){if(n||arguments.length===2)for(var r=0,i=t.length,a;r<i;r++)(a||!(r in t))&&(a||=Array.prototype.slice.call(t,0,r),a[r]=t[r]);return e.concat(a||t)}for(var o=function(){function e(e,t,n,r){this.left=e,this.top=t,this.width=n,this.height=r}return e.prototype.add=function(t,n,r,i){return new e(this.left+t,this.top+n,this.width+r,this.height+i)},e.fromClientRect=function(t,n){return new e(n.left+t.windowBounds.left,n.top+t.windowBounds.top,n.width,n.height)},e.fromDOMRectList=function(t,n){var r=Array.from(n).find(function(e){return e.width!==0});return r?new e(r.left+t.windowBounds.left,r.top+t.windowBounds.top,r.width,r.height):e.EMPTY},e.EMPTY=new e(0,0,0,0),e}(),s=function(e,t){return o.fromClientRect(e,t.getBoundingClientRect())},c=function(e){var t=e.body,n=e.documentElement;if(!t||!n)throw Error(`Unable to get document size`);return new o(0,0,Math.max(Math.max(t.scrollWidth,n.scrollWidth),Math.max(t.offsetWidth,n.offsetWidth),Math.max(t.clientWidth,n.clientWidth)),Math.max(Math.max(t.scrollHeight,n.scrollHeight),Math.max(t.offsetHeight,n.offsetHeight),Math.max(t.clientHeight,n.clientHeight)))},l=function(e){for(var t=[],n=0,r=e.length;n<r;){var i=e.charCodeAt(n++);if(i>=55296&&i<=56319&&n<r){var a=e.charCodeAt(n++);(a&64512)==56320?t.push(((i&1023)<<10)+(a&1023)+65536):(t.push(i),n--)}else t.push(i)}return t},u=function(){var e=[...arguments];if(String.fromCodePoint)return String.fromCodePoint.apply(String,e);var t=e.length;if(!t)return``;for(var n=[],r=-1,i=``;++r<t;){var a=e[r];a<=65535?n.push(a):(a-=65536,n.push((a>>10)+55296,a%1024+56320)),(r+1===t||n.length>16384)&&(i+=String.fromCharCode.apply(String,n),n.length=0)}return i},d=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,f=typeof Uint8Array>`u`?[]:new Uint8Array(256),p=0;p<d.length;p++)f[d.charCodeAt(p)]=p;for(var m=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,h=typeof Uint8Array>`u`?[]:new Uint8Array(256),g=0;g<m.length;g++)h[m.charCodeAt(g)]=g;for(var _=function(e){var t=e.length*.75,n=e.length,r,i=0,a,o,s,c;e[e.length-1]===`=`&&(t--,e[e.length-2]===`=`&&t--);var l=typeof ArrayBuffer<`u`&&typeof Uint8Array<`u`&&Uint8Array.prototype.slice!==void 0?new ArrayBuffer(t):Array(t),u=Array.isArray(l)?l:new Uint8Array(l);for(r=0;r<n;r+=4)a=h[e.charCodeAt(r)],o=h[e.charCodeAt(r+1)],s=h[e.charCodeAt(r+2)],c=h[e.charCodeAt(r+3)],u[i++]=a<<2|o>>4,u[i++]=(o&15)<<4|s>>2,u[i++]=(s&3)<<6|c&63;return l},v=function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n.push(e[r+1]<<8|e[r]);return n},y=function(e){for(var t=e.length,n=[],r=0;r<t;r+=4)n.push(e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]);return n},b=5,x=11,S=2,C=x-b,w=65536>>b,T=(1<<b)-1,E=w+(1024>>b)+32,D=65536>>x,O=(1<<C)-1,k=function(e,t,n){return e.slice?e.slice(t,n):new Uint16Array(Array.prototype.slice.call(e,t,n))},A=function(e,t,n){return e.slice?e.slice(t,n):new Uint32Array(Array.prototype.slice.call(e,t,n))},j=function(e,t){var n=_(e),r=Array.isArray(n)?y(n):new Uint32Array(n),i=Array.isArray(n)?v(n):new Uint16Array(n),a=24,o=k(i,a/2,r[4]/2),s=r[5]===2?k(i,(a+r[4])/2):A(r,Math.ceil((a+r[4])/4));return new ee(r[0],r[1],r[2],r[3],o,s)},ee=function(){function e(e,t,n,r,i,a){this.initialValue=e,this.errorValue=t,this.highStart=n,this.highValueIndex=r,this.index=i,this.data=a}return e.prototype.get=function(e){var t;if(e>=0){if(e<55296||e>56319&&e<=65535)return t=this.index[e>>b],t=(t<<S)+(e&T),this.data[t];if(e<=65535)return t=this.index[w+(e-55296>>b)],t=(t<<S)+(e&T),this.data[t];if(e<this.highStart)return t=E-D+(e>>x),t=this.index[t],t+=e>>b&O,t=this.index[t],t=(t<<S)+(e&T),this.data[t];if(e<=1114111)return this.data[this.highValueIndex]}return this.errorValue},e}(),M=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,te=typeof Uint8Array>`u`?[]:new Uint8Array(256),ne=0;ne<M.length;ne++)te[M.charCodeAt(ne)]=ne;var re=`KwAAAAAAAAAACA4AUD0AADAgAAACAAAAAAAIABAAGABAAEgAUABYAGAAaABgAGgAYgBqAF8AZwBgAGgAcQB5AHUAfQCFAI0AlQCdAKIAqgCyALoAYABoAGAAaABgAGgAwgDKAGAAaADGAM4A0wDbAOEA6QDxAPkAAQEJAQ8BFwF1AH0AHAEkASwBNAE6AUIBQQFJAVEBWQFhAWgBcAF4ATAAgAGGAY4BlQGXAZ8BpwGvAbUBvQHFAc0B0wHbAeMB6wHxAfkBAQIJAvEBEQIZAiECKQIxAjgCQAJGAk4CVgJeAmQCbAJ0AnwCgQKJApECmQKgAqgCsAK4ArwCxAIwAMwC0wLbAjAA4wLrAvMC+AIAAwcDDwMwABcDHQMlAy0DNQN1AD0DQQNJA0kDSQNRA1EDVwNZA1kDdQB1AGEDdQBpA20DdQN1AHsDdQCBA4kDkQN1AHUAmQOhA3UAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AKYDrgN1AHUAtgO+A8YDzgPWAxcD3gPjA+sD8wN1AHUA+wMDBAkEdQANBBUEHQQlBCoEFwMyBDgEYABABBcDSARQBFgEYARoBDAAcAQzAXgEgASIBJAEdQCXBHUAnwSnBK4EtgS6BMIEyAR1AHUAdQB1AHUAdQCVANAEYABgAGAAYABgAGAAYABgANgEYADcBOQEYADsBPQE/AQEBQwFFAUcBSQFLAU0BWQEPAVEBUsFUwVbBWAAYgVgAGoFcgV6BYIFigWRBWAAmQWfBaYFYABgAGAAYABgAKoFYACxBbAFuQW6BcEFwQXHBcEFwQXPBdMF2wXjBeoF8gX6BQIGCgYSBhoGIgYqBjIGOgZgAD4GRgZMBmAAUwZaBmAAYABgAGAAYABgAGAAYABgAGAAYABgAGIGYABpBnAGYABgAGAAYABgAGAAYABgAGAAYAB4Bn8GhQZgAGAAYAB1AHcDFQSLBmAAYABgAJMGdQA9A3UAmwajBqsGqwaVALMGuwbDBjAAywbSBtIG1QbSBtIG0gbSBtIG0gbdBuMG6wbzBvsGAwcLBxMHAwcbByMHJwcsBywHMQcsB9IGOAdAB0gHTgfSBkgHVgfSBtIG0gbSBtIG0gbSBtIG0gbSBiwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdgAGAALAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAdbB2MHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB2kH0gZwB64EdQB1AHUAdQB1AHUAdQB1AHUHfQdgAIUHjQd1AHUAlQedB2AAYAClB6sHYACzB7YHvgfGB3UAzgfWBzMB3gfmB1EB7gf1B/0HlQENAQUIDQh1ABUIHQglCBcDLQg1CD0IRQhNCEEDUwh1AHUAdQBbCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIaQhjCGQIZQhmCGcIaAhpCGMIZAhlCGYIZwhoCGkIYwhkCGUIZghnCGgIcAh3CHoIMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIgggwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAALAcsBywHLAcsBywHLAcsBywHLAcsB4oILAcsB44I0gaWCJ4Ipgh1AHUAqgiyCHUAdQB1AHUAdQB1AHUAdQB1AHUAtwh8AXUAvwh1AMUIyQjRCNkI4AjoCHUAdQB1AO4I9gj+CAYJDgkTCS0HGwkjCYIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiCCIIIggiAAIAAAAFAAYABgAGIAXwBgAHEAdQBFAJUAogCyAKAAYABgAEIA4ABGANMA4QDxAMEBDwE1AFwBLAE6AQEBUQF4QkhCmEKoQrhCgAHIQsAB0MLAAcABwAHAAeDC6ABoAHDCwMMAAcABwAHAAdDDGMMAAcAB6MM4wwjDWMNow3jDaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAGgAaABoAEjDqABWw6bDqABpg6gAaABoAHcDvwOPA+gAaABfA/8DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DvwO/A78DpcPAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcAB9cPKwkyCToJMAB1AHUAdQBCCUoJTQl1AFUJXAljCWcJawkwADAAMAAwAHMJdQB2CX4JdQCECYoJjgmWCXUAngkwAGAAYABxAHUApgn3A64JtAl1ALkJdQDACTAAMAAwADAAdQB1AHUAdQB1AHUAdQB1AHUAowYNBMUIMAAwADAAMADICcsJ0wnZCRUE4QkwAOkJ8An4CTAAMAB1AAAKvwh1AAgKDwoXCh8KdQAwACcKLgp1ADYKqAmICT4KRgowADAAdQB1AE4KMAB1AFYKdQBeCnUAZQowADAAMAAwADAAMAAwADAAMAAVBHUAbQowADAAdQC5CXUKMAAwAHwBxAijBogEMgF9CoQKiASMCpQKmgqIBKIKqgquCogEDQG2Cr4KxgrLCjAAMADTCtsKCgHjCusK8Qr5CgELMAAwADAAMAB1AIsECQsRC3UANAEZCzAAMAAwADAAMAB1ACELKQswAHUANAExCzkLdQBBC0kLMABRC1kLMAAwADAAMAAwADAAdQBhCzAAMAAwAGAAYABpC3ELdwt/CzAAMACHC4sLkwubC58Lpwt1AK4Ltgt1APsDMAAwADAAMAAwADAAMAAwAL4LwwvLC9IL1wvdCzAAMADlC+kL8Qv5C/8LSQswADAAMAAwADAAMAAwADAAMAAHDDAAMAAwADAAMAAODBYMHgx1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1ACYMMAAwADAAdQB1AHUALgx1AHUAdQB1AHUAdQA2DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AD4MdQBGDHUAdQB1AHUAdQB1AEkMdQB1AHUAdQB1AFAMMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQBYDHUAdQB1AF8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUA+wMVBGcMMAAwAHwBbwx1AHcMfwyHDI8MMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAYABgAJcMMAAwADAAdQB1AJ8MlQClDDAAMACtDCwHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsB7UMLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHdQB1AHUAdQB1AHUAdQB1AHUAdQB1AHUAdQB1AA0EMAC9DDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAsBywHLAcsBywHLAcsBywHLQcwAMEMyAwsBywHLAcsBywHLAcsBywHLAcsBywHzAwwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwAHUAdQB1ANQM2QzhDDAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMABgAGAAYABgAGAAYABgAOkMYADxDGAA+AwADQYNYABhCWAAYAAODTAAMAAwADAAFg1gAGAAHg37AzAAMAAwADAAYABgACYNYAAsDTQNPA1gAEMNPg1LDWAAYABgAGAAYABgAGAAYABgAGAAUg1aDYsGVglhDV0NcQBnDW0NdQ15DWAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAlQCBDZUAiA2PDZcNMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAnw2nDTAAMAAwADAAMAAwAHUArw23DTAAMAAwADAAMAAwADAAMAAwADAAMAB1AL8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAB1AHUAdQB1AHUAdQDHDTAAYABgAM8NMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA1w11ANwNMAAwAD0B5A0wADAAMAAwADAAMADsDfQN/A0EDgwOFA4wABsOMAAwADAAMAAwADAAMAAwANIG0gbSBtIG0gbSBtIG0gYjDigOwQUuDsEFMw7SBjoO0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGQg5KDlIOVg7SBtIGXg5lDm0OdQ7SBtIGfQ6EDooOjQ6UDtIGmg6hDtIG0gaoDqwO0ga0DrwO0gZgAGAAYADEDmAAYAAkBtIGzA5gANIOYADaDokO0gbSBt8O5w7SBu8O0gb1DvwO0gZgAGAAxA7SBtIG0gbSBtIGYABgAGAAYAAED2AAsAUMD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHJA8sBywHLAcsBywHLAccDywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywPLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAc0D9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAccD9IG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIGFA8sBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHLAcsBywHPA/SBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gbSBtIG0gYUD0QPlQCVAJUAMAAwADAAMACVAJUAlQCVAJUAlQCVAEwPMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAA//8EAAQABAAEAAQABAAEAAQABAANAAMAAQABAAIABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQACgATABcAHgAbABoAHgAXABYAEgAeABsAGAAPABgAHABLAEsASwBLAEsASwBLAEsASwBLABgAGAAeAB4AHgATAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABYAGwASAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWAA0AEQAeAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAFAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJABYAGgAbABsAGwAeAB0AHQAeAE8AFwAeAA0AHgAeABoAGwBPAE8ADgBQAB0AHQAdAE8ATwAXAE8ATwBPABYAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AHgAeAFAATwBAAE8ATwBPAEAATwBQAFAATwBQAB4AHgAeAB4AHgAeAB0AHQAdAB0AHgAdAB4ADgBQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgBQAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAJAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAkACQAJAAkACQAJAAkABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAFAAHgAeAB4AKwArAFAAUABQAFAAGABQACsAKwArACsAHgAeAFAAHgBQAFAAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUAAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAYAA0AKwArAB4AHgAbACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAB4ABAAEAB4ABAAEABMABAArACsAKwArACsAKwArACsAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAKwArACsAKwBWAFYAVgBWAB4AHgArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AGgAaABoAGAAYAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQAEwAEACsAEwATAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABLAEsASwBLAEsASwBLAEsASwBLABoAGQAZAB4AUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQABMAUAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABABQAFAABAAEAB4ABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUAAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAFAABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQAUABQAB4AHgAYABMAUAArACsABAAbABsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAFAABAAEAAQABAAEAFAABAAEAAQAUAAEAAQABAAEAAQAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArACsAHgArAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAUAAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEAA0ADQBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUAArACsAKwBQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABABQACsAKwArACsAKwArACsAKwAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUAAaABoAUABQAFAAUABQAEwAHgAbAFAAHgAEACsAKwAEAAQABAArAFAAUABQAFAAUABQACsAKwArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQACsAUABQACsAKwAEACsABAAEAAQABAAEACsAKwArACsABAAEACsAKwAEAAQABAArACsAKwAEACsAKwArACsAKwArACsAUABQAFAAUAArAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLAAQABABQAFAAUAAEAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsAKwAEAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAArACsAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AGwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAKwArACsAKwArAAQABAAEACsAKwArACsAUABQACsAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAAQAUAArAFAAUABQAFAAUABQACsAKwArAFAAUABQACsAUABQAFAAUAArACsAKwBQAFAAKwBQACsAUABQACsAKwArAFAAUAArACsAKwBQAFAAUAArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArAAQABAAEAAQABAArACsAKwAEAAQABAArAAQABAAEAAQAKwArAFAAKwArACsAKwArACsABAArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAHgAeAB4AHgAeAB4AGwAeACsAKwArACsAKwAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAUABQAFAAKwArACsAKwArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwAOAFAAUABQAFAAUABQAFAAHgBQAAQABAAEAA4AUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAKwArAAQAUAAEAAQABAAEAAQABAAEACsABAAEAAQAKwAEAAQABAAEACsAKwArACsAKwArACsABAAEACsAKwArACsAKwArACsAUAArAFAAUAAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAFAABAAEAAQABAAEAAQABAArAAQABAAEACsABAAEAAQABABQAB4AKwArACsAKwBQAFAAUAAEAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQABoAUABQAFAAUABQAFAAKwAEAAQABAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQACsAUAArACsAUABQAFAAUABQAFAAUAArACsAKwAEACsAKwArACsABAAEAAQABAAEAAQAKwAEACsABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArAAQABAAeACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAXAAqACoAKgAqACoAKgAqACsAKwArACsAGwBcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAeAEsASwBLAEsASwBLAEsASwBLAEsADQANACsAKwArACsAKwBcAFwAKwBcACsAXABcAFwAXABcACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAXAArAFwAXABcAFwAXABcAFwAXABcAFwAKgBcAFwAKgAqACoAKgAqACoAKgAqACoAXAArACsAXABcAFwAXABcACsAXAArACoAKgAqACoAKgAqACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwBcAFwAXABcAFAADgAOAA4ADgAeAA4ADgAJAA4ADgANAAkAEwATABMAEwATAAkAHgATAB4AHgAeAAQABAAeAB4AHgAeAB4AHgBLAEsASwBLAEsASwBLAEsASwBLAFAAUABQAFAAUABQAFAAUABQAFAADQAEAB4ABAAeAAQAFgARABYAEQAEAAQAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQADQAEAAQABAAEAAQADQAEAAQAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAA0ADQAeAB4AHgAeAB4AHgAEAB4AHgAeAB4AHgAeACsAHgAeAA4ADgANAA4AHgAeAB4AHgAeAAkACQArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgBcAEsASwBLAEsASwBLAEsASwBLAEsADQANAB4AHgAeAB4AXABcAFwAXABcAFwAKgAqACoAKgBcAFwAXABcACoAKgAqAFwAKgAqACoAXABcACoAKgAqACoAKgAqACoAXABcAFwAKgAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKgAqAFwAKgBLAEsASwBLAEsASwBLAEsASwBLACoAKgAqACoAKgAqAFAAUABQAFAAUABQACsAUAArACsAKwArACsAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAKwBQACsAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsABAAEAAQAHgANAB4AHgAeAB4AHgAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUAArACsADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAWABEAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQANAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAANAA0AKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUAArAAQABAArACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqAA0ADQAVAFwADQAeAA0AGwBcACoAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwAeAB4AEwATAA0ADQAOAB4AEwATAB4ABAAEAAQACQArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAHgArACsAKwATABMASwBLAEsASwBLAEsASwBLAEsASwBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAXABcAFwAXABcACsAKwArACsAKwArACsAKwArACsAKwBcAFwAXABcAFwAXABcAFwAXABcAFwAXAArACsAKwArAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAXAArACsAKwAqACoAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAArACsAHgAeAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcACoAKgAqACoAKgAqACoAKgAqACoAKwAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKwArAAQASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACoAKgAqACoAKgAqACoAXAAqACoAKgAqACoAKgArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABABQAFAAUABQAFAAUABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwANAA0AHgANAA0ADQANAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAEAAQABAAEAAQAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwAeAB4AHgAeAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArAA0ADQANAA0ADQBLAEsASwBLAEsASwBLAEsASwBLACsAKwArAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAA0ADQBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUAAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArAAQABAAEAB4ABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAAQAUABQAFAAUABQAFAABABQAFAABAAEAAQAUAArACsAKwArACsABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQACsAUAArAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAFAAUABQACsAHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQACsAKwAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQACsAHgAeAB4AHgAeAB4AHgAOAB4AKwANAA0ADQANAA0ADQANAAkADQANAA0ACAAEAAsABAAEAA0ACQANAA0ADAAdAB0AHgAXABcAFgAXABcAFwAWABcAHQAdAB4AHgAUABQAFAANAAEAAQAEAAQABAAEAAQACQAaABoAGgAaABoAGgAaABoAHgAXABcAHQAVABUAHgAeAB4AHgAeAB4AGAAWABEAFQAVABUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ADQAeAA0ADQANAA0AHgANAA0ADQAHAB4AHgAeAB4AKwAEAAQABAAEAAQABAAEAAQABAAEAFAAUAArACsATwBQAFAAUABQAFAAHgAeAB4AFgARAE8AUABPAE8ATwBPAFAAUABQAFAAUAAeAB4AHgAWABEAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArABsAGwAbABsAGwAbABsAGgAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGgAbABsAGwAbABoAGwAbABoAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbABsAGwAbAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAHgAeAFAAGgAeAB0AHgBQAB4AGgAeAB4AHgAeAB4AHgAeAB4AHgBPAB4AUAAbAB4AHgBQAFAAUABQAFAAHgAeAB4AHQAdAB4AUAAeAFAAHgBQAB4AUABPAFAAUAAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAHgBQAFAAUABQAE8ATwBQAFAAUABQAFAATwBQAFAATwBQAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAUABQAFAATwBPAE8ATwBPAE8ATwBPAE8ATwBQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABPAB4AHgArACsAKwArAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHQAdAB4AHgAeAB0AHQAeAB4AHQAeAB4AHgAdAB4AHQAbABsAHgAdAB4AHgAeAB4AHQAeAB4AHQAdAB0AHQAeAB4AHQAeAB0AHgAdAB0AHQAdAB0AHQAeAB0AHgAeAB4AHgAeAB0AHQAdAB0AHgAeAB4AHgAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB4AHgAeAB0AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAeAB0AHQAdAB0AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAdAB4AHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAWABEAHgAeAB4AHgAeAB4AHQAeAB4AHgAeAB4AHgAeACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAWABEAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAFAAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAeAB4AHQAdAB0AHQAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB0AHQAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB0AHQAeAB4AHQAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AHQAdAB0AHgAeAB0AHgAeAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlAB4AHQAdAB4AHgAdAB4AHgAeAB4AHQAdAB4AHgAeAB4AJQAlAB0AHQAlAB4AJQAlACUAIAAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAeAB4AHgAeAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHgAdAB0AHQAeAB0AJQAdAB0AHgAdAB0AHgAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHQAdAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAdAB0AHQAdACUAHgAlACUAJQAdACUAJQAdAB0AHQAlACUAHQAdACUAHQAdACUAJQAlAB4AHQAeAB4AHgAeAB0AHQAlAB0AHQAdAB0AHQAdACUAJQAlACUAJQAdACUAJQAgACUAHQAdACUAJQAlACUAJQAlACUAJQAeAB4AHgAlACUAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB0AHgAeAB4AFwAXABcAFwAXABcAHgATABMAJQAeAB4AHgAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARABYAEQAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAWABEAFgARABYAEQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAWABEAFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AFgARAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAdAB0AHQAdAB0AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAFAAUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAEAAQABAAeAB4AKwArACsAKwArABMADQANAA0AUAATAA0AUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUAANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAA0ADQANAA0ADQANAA0ADQAeAA0AFgANAB4AHgAXABcAHgAeABcAFwAWABEAFgARABYAEQAWABEADQANAA0ADQATAFAADQANAB4ADQANAB4AHgAeAB4AHgAMAAwADQANAA0AHgANAA0AFgANAA0ADQANAA0ADQANAA0AHgANAB4ADQANAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArACsAKwArACsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArAA0AEQARACUAJQBHAFcAVwAWABEAFgARABYAEQAWABEAFgARACUAJQAWABEAFgARABYAEQAWABEAFQAWABEAEQAlAFcAVwBXAFcAVwBXAFcAVwBXAAQABAAEAAQABAAEACUAVwBXAFcAVwA2ACUAJQBXAFcAVwBHAEcAJQAlACUAKwBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBRAFcAUQBXAFEAVwBXAFcAVwBXAFcAUQBXAFcAVwBXAFcAVwBRAFEAKwArAAQABAAVABUARwBHAFcAFQBRAFcAUQBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFEAVwBRAFcAUQBXAFcAVwBXAFcAVwBRAFcAVwBXAFcAVwBXAFEAUQBXAFcAVwBXABUAUQBHAEcAVwArACsAKwArACsAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwAlACUAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACsAKwArACsAKwArACsAKwArACsAKwArAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAUQBRAFEAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBPAE8ATwBPAE8ATwBPAE8AJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADQATAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABLAEsASwBLAEsASwBLAEsASwBLAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAABAAEAAQABAAeAAQABAAEAAQABAAEAAQABAAEAAQAHgBQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUABQAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAeAA0ADQANAA0ADQArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AUAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAB4AHgAeAB4AHgAeAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AUABQAFAAUABQAFAAUABQAFAAUABQAAQAUABQAFAABABQAFAAUABQAAQAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAeAB4AHgAeAAQAKwArACsAUABQAFAAUABQAFAAHgAeABoAHgArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAADgAOABMAEwArACsAKwArACsAKwArACsABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwANAA0ASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUAAeAB4AHgBQAA4AUABQAAQAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArAB4AWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYAFgAWABYACsAKwArAAQAHgAeAB4AHgAeAB4ADQANAA0AHgAeAB4AHgArAFAASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArAB4AHgBcAFwAXABcAFwAKgBcAFwAXABcAFwAXABcAFwAXABcAEsASwBLAEsASwBLAEsASwBLAEsAXABcAFwAXABcACsAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAFAAUABQAAQAUABQAFAAUABQAFAAUABQAAQABAArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAHgANAA0ADQBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKgAqACoAXAAqACoAKgBcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXAAqAFwAKgAqACoAXABcACoAKgBcAFwAXABcAFwAKgAqAFwAKgBcACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFwAXABcACoAKgBQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAA0ADQBQAFAAUAAEAAQAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQADQAEAAQAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAVABVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBUAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVAFUAVQBVACsAKwArACsAKwArACsAKwArACsAKwArAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAWQBZAFkAKwArACsAKwBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAWgBaAFoAKwArACsAKwAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYABgAGAAYAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAKwArACsAKwArAFYABABWAFYAVgBWAFYAVgBWAFYAVgBWAB4AVgBWAFYAVgBWAFYAVgBWAFYAVgBWAFYAVgArAFYAVgBWAFYAVgArAFYAKwBWAFYAKwBWAFYAKwBWAFYAVgBWAFYAVgBWAFYAVgBWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAEQAWAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAaAB4AKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAGAARABEAGAAYABMAEwAWABEAFAArACsAKwArACsAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACUAJQAlACUAJQAWABEAFgARABYAEQAWABEAFgARABYAEQAlACUAFgARACUAJQAlACUAJQAlACUAEQAlABEAKwAVABUAEwATACUAFgARABYAEQAWABEAJQAlACUAJQAlACUAJQAlACsAJQAbABoAJQArACsAKwArAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAcAKwATACUAJQAbABoAJQAlABYAEQAlACUAEQAlABEAJQBXAFcAVwBXAFcAVwBXAFcAVwBXABUAFQAlACUAJQATACUAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXABYAJQARACUAJQAlAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAWACUAEQAlABYAEQARABYAEQARABUAVwBRAFEAUQBRAFEAUQBRAFEAUQBRAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAEcARwArACsAVwBXAFcAVwBXAFcAKwArAFcAVwBXAFcAVwBXACsAKwBXAFcAVwBXAFcAVwArACsAVwBXAFcAKwArACsAGgAbACUAJQAlABsAGwArAB4AHgAeAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwAEAAQABAAQAB0AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsADQANAA0AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAA0AUABQAFAAUAArACsAKwArAFAAUABQAFAAUABQAFAAUAANAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwArAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwBQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwANAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAB4AUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAUABQAFAAUABQAAQABAAEACsABAAEACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAKwBQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAA0ADQANAA0ADQANAA0ADQAeACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAArACsAKwArAFAAUABQAFAAUAANAA0ADQANAA0ADQAUACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsADQANAA0ADQANAA0ADQBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAB4AHgAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArAAQABAANACsAKwBQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAB4AHgAeAB4AHgArACsAKwArACsAKwAEAAQABAAEAAQABAAEAA0ADQAeAB4AHgAeAB4AKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwAeACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEACsASwBLAEsASwBLAEsASwBLAEsASwANAA0ADQANAFAABAAEAFAAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAeAA4AUAArACsAKwArACsAKwArACsAKwAEAFAAUABQAFAADQANAB4ADQAEAAQABAAEAB4ABAAEAEsASwBLAEsASwBLAEsASwBLAEsAUAAOAFAADQANAA0AKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAANAA0AHgANAA0AHgAEACsAUABQAFAAUABQAFAAUAArAFAAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAA0AKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsABAAEAAQABAArAFAAUABQAFAAUABQAFAAUAArACsAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQACsABAAEAFAABAAEAAQABAAEAAQABAArACsABAAEACsAKwAEAAQABAArACsAUAArACsAKwArACsAKwAEACsAKwArACsAKwBQAFAAUABQAFAABAAEACsAKwAEAAQABAAEAAQABAAEACsAKwArAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsABAAEAAQABAAEAAQABABQAFAAUABQAA0ADQANAA0AHgBLAEsASwBLAEsASwBLAEsASwBLAA0ADQArAB4ABABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAFAAUAAeAFAAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABAAEAAQADgANAA0AEwATAB4AHgAeAA0ADQANAA0ADQANAA0ADQANAA0ADQANAA0ADQANAFAAUABQAFAABAAEACsAKwAEAA0ADQAeAFAAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAFAAKwArACsAKwArACsAKwBLAEsASwBLAEsASwBLAEsASwBLACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAXABcAFwAKwArACoAKgAqACoAKgAqACoAKgAqACoAKgAqACoAKgAqACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBcAFwADQANAA0AKgBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAKwArAFAAKwArAFAAUABQAFAAUABQAFAAUAArAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQAKwAEAAQAKwArAAQABAAEAAQAUAAEAFAABAAEAA0ADQANACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAArACsABAAEAAQABAAEAAQABABQAA4AUAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAABAAEAAQABAAEAAQABAAEAAQABABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAFAABAAEAAQABAAOAB4ADQANAA0ADQAOAB4ABAArACsAKwArACsAKwArACsAUAAEAAQABAAEAAQABAAEAAQABAAEAAQAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAA0ADQANAFAADgAOAA4ADQANACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAEAAQABAAEACsABAAEAAQABAAEAAQABAAEAFAADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAOABMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQACsAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAArACsAKwAEACsABAAEACsABAAEAAQABAAEAAQABABQAAQAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAUABQAFAAUABQAFAAKwBQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAUAArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAABAAEAAQABAAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAaABoAGgAaAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArAA0AUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsADQANAA0ADQANACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABIAEgAQwBDAEMAUABQAFAAUABDAFAAUABQAEgAQwBIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAASABDAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwAJAAkACQAJAAkACQAJABYAEQArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABIAEMAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwANAA0AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArAAQABAAEAAQABAANACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEAA0ADQANAB4AHgAeAB4AHgAeAFAAUABQAFAADQAeACsAKwArACsAKwArACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAANAA0AHgAeACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwAEAFAABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwAEAAQABAAEAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAARwBHABUARwAJACsAKwArACsAKwArACsAKwArACsAKwAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUQBRAFEAKwArACsAKwArACsAKwArACsAKwArACsAKwBRAFEAUQBRACsAKwArACsAKwArACsAKwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUAArACsAHgAEAAQADQAEAAQABAAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAAQABAAEAAQABAAeAB4AHgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAB4AHgAEAAQABAAEAAQABAAEAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4ABAAEAAQAHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwArACsAKwArACsAKwArACsAKwArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAKwArAFAAKwArAFAAUAArACsAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACsAUAArAFAAUABQAFAAUABQAFAAKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwBQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAHgAeAFAAUABQAFAAUAArAFAAKwArACsAUABQAFAAUABQAFAAUAArAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAB4AHgAeAB4AHgAeAB4AHgAeACsAKwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAEsASwBLAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAeAB4AHgAeAB4AHgAeAB4ABAAeAB4AHgAeAB4AHgAeAB4AHgAeAAQAHgAeAA0ADQANAA0AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQAKwAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArAAQABAAEAAQABAAEAAQAKwAEAAQAKwAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwAEAAQABAAEAAQABAAEAFAAUABQAFAAUABQAFAAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwBQAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArABsAUABQAFAAUABQACsAKwBQAFAAUABQAFAAUABQAFAAUAAEAAQABAAEAAQABAAEACsAKwArACsAKwArACsAKwArAB4AHgAeAB4ABAAEAAQABAAEAAQABABQACsAKwArACsASwBLAEsASwBLAEsASwBLAEsASwArACsAKwArABYAFgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAGgBQAFAAUAAaAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAeAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQACsAKwBQAFAAUABQACsAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUAArACsAKwArACsAKwBQACsAKwArACsAUAArAFAAKwBQACsAUABQAFAAKwBQAFAAKwBQACsAKwBQACsAUAArAFAAKwBQACsAUAArAFAAUAArAFAAKwArAFAAUABQAFAAKwBQAFAAUABQAFAAUABQACsAUABQAFAAUAArAFAAUABQAFAAKwBQACsAUABQAFAAUABQAFAAUABQAFAAUAArAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAArACsAKwArACsAUABQAFAAKwBQAFAAUABQAFAAKwBQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwAeAB4AKwArACsAKwArACsAKwArACsAKwArACsAKwArAE8ATwBPAE8ATwBPAE8ATwBPAE8ATwBPAE8AJQAlACUAHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHgAeAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB4AHgAeACUAJQAlAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAdAB0AHQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAKQApACkAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAlACUAJQAlACUAHgAlACUAJQAlACUAIAAgACAAJQAlACAAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACEAIQAhACEAIQAlACUAIAAgACUAJQAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlACUAIAAlACUAJQAlACAAIAAgACUAIAAgACAAJQAlACUAJQAlACUAJQAgACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAlAB4AJQAeACUAJQAlACUAJQAgACUAJQAlACUAHgAlAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAgACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACAAIAAgACAAIAAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeABcAFwAXABUAFQAVAB4AHgAeAB4AJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAgACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlACUAJQAeAB4AHgAeAB4AHgAeAB4AHgAeACUAJQAlACUAJQAlAB4AHgAeAB4AHgAeAB4AHgAlACUAJQAlACUAJQAlACUAHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAgACUAJQAgACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAJQAlACUAJQAlACUAIAAlACUAJQAlACUAJQAlACUAJQAgACAAIAAgACAAIAAgACAAIAAgACUAJQAgACAAIAAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACAAIAAlACAAIAAlACAAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAgACAAIAAlACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAJQAlAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AKwAeAB4AHgAeAB4AHgAeAB4AHgAeAB4AHgArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAEsASwBLAEsASwBLAEsASwBLAEsAKwArACsAKwArACsAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwArAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwAlACUAJQAlACUAJQAlACUAJQAlACUAVwBXACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQBXAFcAVwBXAFcAVwBXAFcAVwBXAFcAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAJQAlACUAKwAEACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArACsAKwArAA==`,ie=50,N=1,ae=2,oe=3,P=4,se=5,ce=7,le=8,ue=9,de=10,fe=11,pe=12,me=13,he=14,ge=15,_e=16,ve=17,ye=18,be=19,xe=20,Se=21,Ce=22,we=23,Te=24,Ee=25,De=26,Oe=27,ke=28,Ae=29,je=30,Me=31,Ne=32,F=33,Pe=34,Fe=35,Ie=36,Le=37,Re=38,ze=39,Be=40,Ve=41,He=42,Ue=43,We=[9001,65288],Ge=`!`,Ke=`×`,qe=`÷`,Je=j(re),Ye=[je,Ie],Xe=[N,ae,oe,se],Ze=[de,le],Qe=[Oe,De],$e=Xe.concat(Ze),et=[Re,ze,Be,Pe,Fe],tt=[ge,me],nt=function(e,t){t===void 0&&(t=`strict`);var n=[],r=[],i=[];return e.forEach(function(e,a){var o=Je.get(e);if(o>ie?(i.push(!0),o-=ie):i.push(!1),[`normal`,`auto`,`loose`].indexOf(t)!==-1&&[8208,8211,12316,12448].indexOf(e)!==-1)return r.push(a),n.push(_e);if(o===P||o===fe){if(a===0)return r.push(a),n.push(je);var s=n[a-1];return $e.indexOf(s)===-1?(r.push(r[a-1]),n.push(s)):(r.push(a),n.push(je))}if(r.push(a),o===Me)return n.push(t===`strict`?Se:Le);if(o===He||o===Ae)return n.push(je);if(o===Ue)return e>=131072&&e<=196605||e>=196608&&e<=262141?n.push(Le):n.push(je);n.push(o)}),[r,n,i]},rt=function(e,t,n,r){var i=r[n];if(Array.isArray(e)?e.indexOf(i)!==-1:e===i)for(var a=n;a<=r.length;){a++;var o=r[a];if(o===t)return!0;if(o!==de)break}if(i===de)for(var a=n;a>0;){a--;var s=r[a];if(Array.isArray(e)?e.indexOf(s)!==-1:e===s)for(var c=n;c<=r.length;){c++;var o=r[c];if(o===t)return!0;if(o!==de)break}if(s!==de)break}return!1},it=function(e,t){for(var n=e;n>=0;){var r=t[n];if(r===de)n--;else return r}return 0},at=function(e,t,n,r,i){if(n[r]===0)return Ke;var a=r-1;if(Array.isArray(i)&&i[a]===!0)return Ke;var o=a-1,s=a+1,c=t[a],l=o>=0?t[o]:0,u=t[s];if(c===ae&&u===oe)return Ke;if(Xe.indexOf(c)!==-1)return Ge;if(Xe.indexOf(u)!==-1||Ze.indexOf(u)!==-1)return Ke;if(it(a,t)===le)return qe;if(Je.get(e[a])===fe||(c===Ne||c===F)&&Je.get(e[s])===fe||c===ce||u===ce||c===ue||[de,me,ge].indexOf(c)===-1&&u===ue||[ve,ye,be,Te,ke].indexOf(u)!==-1||it(a,t)===Ce||rt(we,Ce,a,t)||rt([ve,ye],Se,a,t)||rt(pe,pe,a,t))return Ke;if(c===de)return qe;if(c===we||u===we)return Ke;if(u===_e||c===_e)return qe;if([me,ge,Se].indexOf(u)!==-1||c===he||l===Ie&&tt.indexOf(c)!==-1||c===ke&&u===Ie||u===xe||Ye.indexOf(u)!==-1&&c===Ee||Ye.indexOf(c)!==-1&&u===Ee||c===Oe&&[Le,Ne,F].indexOf(u)!==-1||[Le,Ne,F].indexOf(c)!==-1&&u===De||Ye.indexOf(c)!==-1&&Qe.indexOf(u)!==-1||Qe.indexOf(c)!==-1&&Ye.indexOf(u)!==-1||[Oe,De].indexOf(c)!==-1&&(u===Ee||[Ce,ge].indexOf(u)!==-1&&t[s+1]===Ee)||[Ce,ge].indexOf(c)!==-1&&u===Ee||c===Ee&&[Ee,ke,Te].indexOf(u)!==-1)return Ke;if([Ee,ke,Te,ve,ye].indexOf(u)!==-1)for(var d=a;d>=0;){var f=t[d];if(f===Ee)return Ke;if([ke,Te].indexOf(f)!==-1)d--;else break}if([Oe,De].indexOf(u)!==-1)for(var d=[ve,ye].indexOf(c)===-1?a:o;d>=0;){var f=t[d];if(f===Ee)return Ke;if([ke,Te].indexOf(f)!==-1)d--;else break}if(Re===c&&[Re,ze,Pe,Fe].indexOf(u)!==-1||[ze,Pe].indexOf(c)!==-1&&[ze,Be].indexOf(u)!==-1||[Be,Fe].indexOf(c)!==-1&&u===Be||et.indexOf(c)!==-1&&[xe,De].indexOf(u)!==-1||et.indexOf(u)!==-1&&c===Oe||Ye.indexOf(c)!==-1&&Ye.indexOf(u)!==-1||c===Te&&Ye.indexOf(u)!==-1||Ye.concat(Ee).indexOf(c)!==-1&&u===Ce&&We.indexOf(e[s])===-1||Ye.concat(Ee).indexOf(u)!==-1&&c===ye)return Ke;if(c===Ve&&u===Ve){for(var p=n[a],m=1;p>0&&(p--,t[p]===Ve);)m++;if(m%2!=0)return Ke}return c===Ne&&u===F?Ke:qe},ot=function(e,t){t||={lineBreak:`normal`,wordBreak:`normal`};var n=nt(e,t.lineBreak),r=n[0],i=n[1],a=n[2];(t.wordBreak===`break-all`||t.wordBreak===`break-word`)&&(i=i.map(function(e){return[Ee,je,He].indexOf(e)===-1?e:Le}));var o=t.wordBreak===`keep-all`?a.map(function(t,n){return t&&e[n]>=19968&&e[n]<=40959}):void 0;return[r,i,o]},I=function(){function e(e,t,n,r){this.codePoints=e,this.required=t===Ge,this.start=n,this.end=r}return e.prototype.slice=function(){return u.apply(void 0,this.codePoints.slice(this.start,this.end))},e}(),st=function(e,t){var n=l(e),r=ot(n,t),i=r[0],a=r[1],o=r[2],s=n.length,c=0,u=0;return{next:function(){if(u>=s)return{done:!0,value:null};for(var e=Ke;u<s&&(e=at(n,a,i,++u,o))===Ke;);if(e!==Ke||u===s){var t=new I(n,e,c,u);return c=u,{value:t,done:!1}}return{done:!0,value:null}}}},ct=1,lt=2,ut=4,dt=8,ft=10,pt=47,mt=92,ht=9,gt=32,_t=34,vt=61,yt=35,bt=36,xt=37,St=39,Ct=40,wt=41,Tt=95,Et=45,Dt=33,Ot=60,kt=62,At=64,jt=91,Mt=93,Nt=61,Pt=123,Ft=63,It=125,Lt=124,Rt=126,zt=128,Bt=65533,Vt=42,Ht=43,Ut=44,Wt=58,Gt=59,Kt=46,qt=0,Jt=8,Yt=11,Xt=14,Zt=31,Qt=127,$t=-1,L=48,en=97,tn=101,R=102,nn=117,z=122,rn=65,an=69,on=70,sn=85,cn=90,ln=function(e){return e>=L&&e<=57},un=function(e){return e>=55296&&e<=57343},dn=function(e){return ln(e)||e>=rn&&e<=on||e>=en&&e<=R},fn=function(e){return e>=en&&e<=z},pn=function(e){return e>=rn&&e<=cn},mn=function(e){return fn(e)||pn(e)},hn=function(e){return e>=zt},gn=function(e){return e===ft||e===ht||e===gt},_n=function(e){return mn(e)||hn(e)||e===Tt},vn=function(e){return _n(e)||ln(e)||e===Et},yn=function(e){return e>=qt&&e<=Jt||e===Yt||e>=Xt&&e<=Zt||e===Qt},bn=function(e,t){return e===mt?t!==ft:!1},xn=function(e,t,n){return e===Et?_n(t)||bn(t,n):_n(e)?!0:!!(e===mt&&bn(e,t))},Sn=function(e,t,n){return e===Ht||e===Et?ln(t)?!0:t===Kt&&ln(n):ln(e===Kt?t:e)},Cn=function(e){var t=0,n=1;(e[t]===Ht||e[t]===Et)&&(e[t]===Et&&(n=-1),t++);for(var r=[];ln(e[t]);)r.push(e[t++]);var i=r.length?parseInt(u.apply(void 0,r),10):0;e[t]===Kt&&t++;for(var a=[];ln(e[t]);)a.push(e[t++]);var o=a.length,s=o?parseInt(u.apply(void 0,a),10):0;(e[t]===an||e[t]===tn)&&t++;var c=1;(e[t]===Ht||e[t]===Et)&&(e[t]===Et&&(c=-1),t++);for(var l=[];ln(e[t]);)l.push(e[t++]);var d=l.length?parseInt(u.apply(void 0,l),10):0;return n*(i+s*10**-o)*10**(c*d)},wn={type:2},Tn={type:3},En={type:4},Dn={type:13},On={type:8},kn={type:21},An={type:9},jn={type:10},Mn={type:11},Nn={type:12},Pn={type:14},Fn={type:23},In={type:1},Ln={type:25},Rn={type:24},zn={type:26},Bn={type:27},Vn={type:28},Hn={type:29},Un={type:31},Wn={type:32},Gn=function(){function e(){this._value=[]}return e.prototype.write=function(e){this._value=this._value.concat(l(e))},e.prototype.read=function(){for(var e=[],t=this.consumeToken();t!==Wn;)e.push(t),t=this.consumeToken();return e},e.prototype.consumeToken=function(){var e=this.consumeCodePoint();switch(e){case _t:return this.consumeStringToken(_t);case yt:var t=this.peekCodePoint(0),n=this.peekCodePoint(1),r=this.peekCodePoint(2);if(vn(t)||bn(n,r)){var i=xn(t,n,r)?lt:ct,a=this.consumeName();return{type:5,value:a,flags:i}}break;case bt:if(this.peekCodePoint(0)===vt)return this.consumeCodePoint(),Dn;break;case St:return this.consumeStringToken(St);case Ct:return wn;case wt:return Tn;case Vt:if(this.peekCodePoint(0)===vt)return this.consumeCodePoint(),Pn;break;case Ht:if(Sn(e,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(e),this.consumeNumericToken();break;case Ut:return En;case Et:var o=e,s=this.peekCodePoint(0),c=this.peekCodePoint(1);if(Sn(o,s,c))return this.reconsumeCodePoint(e),this.consumeNumericToken();if(xn(o,s,c))return this.reconsumeCodePoint(e),this.consumeIdentLikeToken();if(s===Et&&c===kt)return this.consumeCodePoint(),this.consumeCodePoint(),Rn;break;case Kt:if(Sn(e,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(e),this.consumeNumericToken();break;case pt:if(this.peekCodePoint(0)===Vt)for(this.consumeCodePoint();;){var l=this.consumeCodePoint();if(l===Vt&&(l=this.consumeCodePoint(),l===pt)||l===$t)return this.consumeToken()}break;case Wt:return zn;case Gt:return Bn;case Ot:if(this.peekCodePoint(0)===Dt&&this.peekCodePoint(1)===Et&&this.peekCodePoint(2)===Et)return this.consumeCodePoint(),this.consumeCodePoint(),Ln;break;case At:if(xn(this.peekCodePoint(0),this.peekCodePoint(1),this.peekCodePoint(2))){var a=this.consumeName();return{type:7,value:a}}break;case jt:return Vn;case mt:if(bn(e,this.peekCodePoint(0)))return this.reconsumeCodePoint(e),this.consumeIdentLikeToken();break;case Mt:return Hn;case Nt:if(this.peekCodePoint(0)===vt)return this.consumeCodePoint(),On;break;case Pt:return Mn;case It:return Nn;case nn:case sn:var d=this.peekCodePoint(0),f=this.peekCodePoint(1);return d===Ht&&(dn(f)||f===Ft)&&(this.consumeCodePoint(),this.consumeUnicodeRangeToken()),this.reconsumeCodePoint(e),this.consumeIdentLikeToken();case Lt:if(this.peekCodePoint(0)===vt)return this.consumeCodePoint(),An;if(this.peekCodePoint(0)===Lt)return this.consumeCodePoint(),kn;break;case Rt:if(this.peekCodePoint(0)===vt)return this.consumeCodePoint(),jn;break;case $t:return Wn}return gn(e)?(this.consumeWhiteSpace(),Un):ln(e)?(this.reconsumeCodePoint(e),this.consumeNumericToken()):_n(e)?(this.reconsumeCodePoint(e),this.consumeIdentLikeToken()):{type:6,value:u(e)}},e.prototype.consumeCodePoint=function(){var e=this._value.shift();return e===void 0?-1:e},e.prototype.reconsumeCodePoint=function(e){this._value.unshift(e)},e.prototype.peekCodePoint=function(e){return e>=this._value.length?-1:this._value[e]},e.prototype.consumeUnicodeRangeToken=function(){for(var e=[],t=this.consumeCodePoint();dn(t)&&e.length<6;)e.push(t),t=this.consumeCodePoint();for(var n=!1;t===Ft&&e.length<6;)e.push(t),t=this.consumeCodePoint(),n=!0;if(n){var r=parseInt(u.apply(void 0,e.map(function(e){return e===Ft?L:e})),16),i=parseInt(u.apply(void 0,e.map(function(e){return e===Ft?on:e})),16);return{type:30,start:r,end:i}}var a=parseInt(u.apply(void 0,e),16);if(this.peekCodePoint(0)===Et&&dn(this.peekCodePoint(1))){this.consumeCodePoint(),t=this.consumeCodePoint();for(var o=[];dn(t)&&o.length<6;)o.push(t),t=this.consumeCodePoint();var i=parseInt(u.apply(void 0,o),16);return{type:30,start:a,end:i}}else return{type:30,start:a,end:a}},e.prototype.consumeIdentLikeToken=function(){var e=this.consumeName();return e.toLowerCase()===`url`&&this.peekCodePoint(0)===Ct?(this.consumeCodePoint(),this.consumeUrlToken()):this.peekCodePoint(0)===Ct?(this.consumeCodePoint(),{type:19,value:e}):{type:20,value:e}},e.prototype.consumeUrlToken=function(){var e=[];if(this.consumeWhiteSpace(),this.peekCodePoint(0)===$t)return{type:22,value:``};var t=this.peekCodePoint(0);if(t===St||t===_t){var n=this.consumeStringToken(this.consumeCodePoint());return n.type===0&&(this.consumeWhiteSpace(),this.peekCodePoint(0)===$t||this.peekCodePoint(0)===wt)?(this.consumeCodePoint(),{type:22,value:n.value}):(this.consumeBadUrlRemnants(),Fn)}for(;;){var r=this.consumeCodePoint();if(r===$t||r===wt)return{type:22,value:u.apply(void 0,e)};if(gn(r))return this.consumeWhiteSpace(),this.peekCodePoint(0)===$t||this.peekCodePoint(0)===wt?(this.consumeCodePoint(),{type:22,value:u.apply(void 0,e)}):(this.consumeBadUrlRemnants(),Fn);if(r===_t||r===St||r===Ct||yn(r))return this.consumeBadUrlRemnants(),Fn;if(r===mt)if(bn(r,this.peekCodePoint(0)))e.push(this.consumeEscapedCodePoint());else return this.consumeBadUrlRemnants(),Fn;else e.push(r)}},e.prototype.consumeWhiteSpace=function(){for(;gn(this.peekCodePoint(0));)this.consumeCodePoint()},e.prototype.consumeBadUrlRemnants=function(){for(;;){var e=this.consumeCodePoint();if(e===wt||e===$t)return;bn(e,this.peekCodePoint(0))&&this.consumeEscapedCodePoint()}},e.prototype.consumeStringSlice=function(e){for(var t=5e4,n=``;e>0;){var r=Math.min(t,e);n+=u.apply(void 0,this._value.splice(0,r)),e-=r}return this._value.shift(),n},e.prototype.consumeStringToken=function(e){var t=``,n=0;do{var r=this._value[n];if(r===$t||r===void 0||r===e)return t+=this.consumeStringSlice(n),{type:0,value:t};if(r===ft)return this._value.splice(0,n),In;if(r===mt){var i=this._value[n+1];i!==$t&&i!==void 0&&(i===ft?(t+=this.consumeStringSlice(n),n=-1,this._value.shift()):bn(r,i)&&(t+=this.consumeStringSlice(n),t+=u(this.consumeEscapedCodePoint()),n=-1))}n++}while(!0)},e.prototype.consumeNumber=function(){var e=[],t=ut,n=this.peekCodePoint(0);for((n===Ht||n===Et)&&e.push(this.consumeCodePoint());ln(this.peekCodePoint(0));)e.push(this.consumeCodePoint());n=this.peekCodePoint(0);var r=this.peekCodePoint(1);if(n===Kt&&ln(r))for(e.push(this.consumeCodePoint(),this.consumeCodePoint()),t=dt;ln(this.peekCodePoint(0));)e.push(this.consumeCodePoint());n=this.peekCodePoint(0),r=this.peekCodePoint(1);var i=this.peekCodePoint(2);if((n===an||n===tn)&&((r===Ht||r===Et)&&ln(i)||ln(r)))for(e.push(this.consumeCodePoint(),this.consumeCodePoint()),t=dt;ln(this.peekCodePoint(0));)e.push(this.consumeCodePoint());return[Cn(e),t]},e.prototype.consumeNumericToken=function(){var e=this.consumeNumber(),t=e[0],n=e[1],r=this.peekCodePoint(0);return xn(r,this.peekCodePoint(1),this.peekCodePoint(2))?{type:15,number:t,flags:n,unit:this.consumeName()}:r===xt?(this.consumeCodePoint(),{type:16,number:t,flags:n}):{type:17,number:t,flags:n}},e.prototype.consumeEscapedCodePoint=function(){var e=this.consumeCodePoint();if(dn(e)){for(var t=u(e);dn(this.peekCodePoint(0))&&t.length<6;)t+=u(this.consumeCodePoint());gn(this.peekCodePoint(0))&&this.consumeCodePoint();var n=parseInt(t,16);return n===0||un(n)||n>1114111?Bt:n}return e===$t?Bt:e},e.prototype.consumeName=function(){for(var e=``;;){var t=this.consumeCodePoint();if(vn(t))e+=u(t);else if(bn(t,this.peekCodePoint(0)))e+=u(this.consumeEscapedCodePoint());else return this.reconsumeCodePoint(t),e}},e}(),Kn=function(){function e(e){this._tokens=e}return e.create=function(t){var n=new Gn;return n.write(t),new e(n.read())},e.parseValue=function(t){return e.create(t).parseComponentValue()},e.parseValues=function(t){return e.create(t).parseComponentValues()},e.prototype.parseComponentValue=function(){for(var e=this.consumeToken();e.type===31;)e=this.consumeToken();if(e.type===32)throw SyntaxError(`Error parsing CSS component value, unexpected EOF`);this.reconsumeToken(e);var t=this.consumeComponentValue();do e=this.consumeToken();while(e.type===31);if(e.type===32)return t;throw SyntaxError(`Error parsing CSS component value, multiple values found when expecting only one`)},e.prototype.parseComponentValues=function(){for(var e=[];;){var t=this.consumeComponentValue();if(t.type===32)return e;e.push(t),e.push()}},e.prototype.consumeComponentValue=function(){var e=this.consumeToken();switch(e.type){case 11:case 28:case 2:return this.consumeSimpleBlock(e.type);case 19:return this.consumeFunction(e)}return e},e.prototype.consumeSimpleBlock=function(e){for(var t={type:e,values:[]},n=this.consumeToken();;){if(n.type===32||tr(n,e))return t;this.reconsumeToken(n),t.values.push(this.consumeComponentValue()),n=this.consumeToken()}},e.prototype.consumeFunction=function(e){for(var t={name:e.value,values:[],type:18};;){var n=this.consumeToken();if(n.type===32||n.type===3)return t;this.reconsumeToken(n),t.values.push(this.consumeComponentValue())}},e.prototype.consumeToken=function(){var e=this._tokens.shift();return e===void 0?Wn:e},e.prototype.reconsumeToken=function(e){this._tokens.unshift(e)},e}(),qn=function(e){return e.type===15},Jn=function(e){return e.type===17},Yn=function(e){return e.type===20},Xn=function(e){return e.type===0},Zn=function(e,t){return Yn(e)&&e.value===t},Qn=function(e){return e.type!==31},$n=function(e){return e.type!==31&&e.type!==4},er=function(e){var t=[],n=[];return e.forEach(function(e){if(e.type===4){if(n.length===0)throw Error(`Error parsing function args, zero tokens for arg`);t.push(n),n=[];return}e.type!==31&&n.push(e)}),n.length&&t.push(n),t},tr=function(e,t){return t===11&&e.type===12||t===28&&e.type===29?!0:t===2&&e.type===3},nr=function(e){return e.type===17||e.type===15},rr=function(e){return e.type===16||nr(e)},ir=function(e){return e.length>1?[e[0],e[1]]:[e[0]]},ar={type:17,number:0,flags:ut},or={type:16,number:50,flags:ut},sr={type:16,number:100,flags:ut},cr=function(e,t,n){var r=e[0],i=e[1];return[lr(r,t),lr(i===void 0?r:i,n)]},lr=function(e,t){if(e.type===16)return e.number/100*t;if(qn(e))switch(e.unit){case`rem`:case`em`:return 16*e.number;default:return e.number}return e.number},ur=`deg`,dr=`grad`,fr=`rad`,pr=`turn`,mr={name:`angle`,parse:function(e,t){if(t.type===15)switch(t.unit){case ur:return Math.PI*t.number/180;case dr:return Math.PI/200*t.number;case fr:return t.number;case pr:return Math.PI*2*t.number}throw Error(`Unsupported angle type`)}},hr=function(e){return e.type===15&&(e.unit===ur||e.unit===dr||e.unit===fr||e.unit===pr)},gr=function(e){switch(e.filter(Yn).map(function(e){return e.value}).join(` `)){case`to bottom right`:case`to right bottom`:case`left top`:case`top left`:return[ar,ar];case`to top`:case`bottom`:return _r(0);case`to bottom left`:case`to left bottom`:case`right top`:case`top right`:return[ar,sr];case`to right`:case`left`:return _r(90);case`to top left`:case`to left top`:case`right bottom`:case`bottom right`:return[sr,sr];case`to bottom`:case`top`:return _r(180);case`to top right`:case`to right top`:case`left bottom`:case`bottom left`:return[sr,ar];case`to left`:case`right`:return _r(270)}return 0},_r=function(e){return Math.PI*e/180},vr={name:`color`,parse:function(e,t){if(t.type===18){var n=Er[t.name];if(n===void 0)throw Error(`Attempting to parse an unsupported color function "`+t.name+`"`);return n(e,t.values)}if(t.type===5){if(t.value.length===3){var r=t.value.substring(0,1),i=t.value.substring(1,2),a=t.value.substring(2,3);return xr(parseInt(r+r,16),parseInt(i+i,16),parseInt(a+a,16),1)}if(t.value.length===4){var r=t.value.substring(0,1),i=t.value.substring(1,2),a=t.value.substring(2,3),o=t.value.substring(3,4);return xr(parseInt(r+r,16),parseInt(i+i,16),parseInt(a+a,16),parseInt(o+o,16)/255)}if(t.value.length===6){var r=t.value.substring(0,2),i=t.value.substring(2,4),a=t.value.substring(4,6);return xr(parseInt(r,16),parseInt(i,16),parseInt(a,16),1)}if(t.value.length===8){var r=t.value.substring(0,2),i=t.value.substring(2,4),a=t.value.substring(4,6),o=t.value.substring(6,8);return xr(parseInt(r,16),parseInt(i,16),parseInt(a,16),parseInt(o,16)/255)}}if(t.type===20){var s=Or[t.value.toUpperCase()];if(s!==void 0)return s}return Or.TRANSPARENT}},yr=function(e){return(255&e)==0},br=function(e){var t=255&e,n=255&e>>8,r=255&e>>16,i=255&e>>24;return t<255?`rgba(`+i+`,`+r+`,`+n+`,`+t/255+`)`:`rgb(`+i+`,`+r+`,`+n+`)`},xr=function(e,t,n,r){return(e<<24|t<<16|n<<8|Math.round(r*255)<<0)>>>0},Sr=function(e,t){if(e.type===17)return e.number;if(e.type===16){var n=t===3?1:255;return t===3?e.number/100*n:Math.round(e.number/100*n)}return 0},Cr=function(e,t){var n=t.filter($n);if(n.length===3){var r=n.map(Sr),i=r[0],a=r[1],o=r[2];return xr(i,a,o,1)}if(n.length===4){var s=n.map(Sr),i=s[0],a=s[1],o=s[2],c=s[3];return xr(i,a,o,c)}return 0};function wr(e,t,n){return n<0&&(n+=1),n>=1&&--n,n<1/6?(t-e)*n*6+e:n<1/2?t:n<2/3?(t-e)*6*(2/3-n)+e:e}var Tr=function(e,t){var n=t.filter($n),r=n[0],i=n[1],a=n[2],o=n[3],s=(r.type===17?_r(r.number):mr.parse(e,r))/(Math.PI*2),c=rr(i)?i.number/100:0,l=rr(a)?a.number/100:0,u=o!==void 0&&rr(o)?lr(o,1):1;if(c===0)return xr(l*255,l*255,l*255,1);var d=l<=.5?l*(c+1):l+c-l*c,f=l*2-d,p=wr(f,d,s+1/3),m=wr(f,d,s),h=wr(f,d,s-1/3);return xr(p*255,m*255,h*255,u)},Er={hsl:Tr,hsla:Tr,rgb:Cr,rgba:Cr},Dr=function(e,t){return vr.parse(e,Kn.create(t).parseComponentValue())},Or={ALICEBLUE:4042850303,ANTIQUEWHITE:4209760255,AQUA:16777215,AQUAMARINE:2147472639,AZURE:4043309055,BEIGE:4126530815,BISQUE:4293182719,BLACK:255,BLANCHEDALMOND:4293643775,BLUE:65535,BLUEVIOLET:2318131967,BROWN:2771004159,BURLYWOOD:3736635391,CADETBLUE:1604231423,CHARTREUSE:2147418367,CHOCOLATE:3530104575,CORAL:4286533887,CORNFLOWERBLUE:1687547391,CORNSILK:4294499583,CRIMSON:3692313855,CYAN:16777215,DARKBLUE:35839,DARKCYAN:9145343,DARKGOLDENROD:3095837695,DARKGRAY:2846468607,DARKGREEN:6553855,DARKGREY:2846468607,DARKKHAKI:3182914559,DARKMAGENTA:2332068863,DARKOLIVEGREEN:1433087999,DARKORANGE:4287365375,DARKORCHID:2570243327,DARKRED:2332033279,DARKSALMON:3918953215,DARKSEAGREEN:2411499519,DARKSLATEBLUE:1211993087,DARKSLATEGRAY:793726975,DARKSLATEGREY:793726975,DARKTURQUOISE:13554175,DARKVIOLET:2483082239,DEEPPINK:4279538687,DEEPSKYBLUE:12582911,DIMGRAY:1768516095,DIMGREY:1768516095,DODGERBLUE:512819199,FIREBRICK:2988581631,FLORALWHITE:4294635775,FORESTGREEN:579543807,FUCHSIA:4278255615,GAINSBORO:3705462015,GHOSTWHITE:4177068031,GOLD:4292280575,GOLDENROD:3668254975,GRAY:2155905279,GREEN:8388863,GREENYELLOW:2919182335,GREY:2155905279,HONEYDEW:4043305215,HOTPINK:4285117695,INDIANRED:3445382399,INDIGO:1258324735,IVORY:4294963455,KHAKI:4041641215,LAVENDER:3873897215,LAVENDERBLUSH:4293981695,LAWNGREEN:2096890111,LEMONCHIFFON:4294626815,LIGHTBLUE:2916673279,LIGHTCORAL:4034953471,LIGHTCYAN:3774873599,LIGHTGOLDENRODYELLOW:4210742015,LIGHTGRAY:3553874943,LIGHTGREEN:2431553791,LIGHTGREY:3553874943,LIGHTPINK:4290167295,LIGHTSALMON:4288707327,LIGHTSEAGREEN:548580095,LIGHTSKYBLUE:2278488831,LIGHTSLATEGRAY:2005441023,LIGHTSLATEGREY:2005441023,LIGHTSTEELBLUE:2965692159,LIGHTYELLOW:4294959359,LIME:16711935,LIMEGREEN:852308735,LINEN:4210091775,MAGENTA:4278255615,MAROON:2147483903,MEDIUMAQUAMARINE:1724754687,MEDIUMBLUE:52735,MEDIUMORCHID:3126187007,MEDIUMPURPLE:2473647103,MEDIUMSEAGREEN:1018393087,MEDIUMSLATEBLUE:2070474495,MEDIUMSPRINGGREEN:16423679,MEDIUMTURQUOISE:1221709055,MEDIUMVIOLETRED:3340076543,MIDNIGHTBLUE:421097727,MINTCREAM:4127193855,MISTYROSE:4293190143,MOCCASIN:4293178879,NAVAJOWHITE:4292783615,NAVY:33023,OLDLACE:4260751103,OLIVE:2155872511,OLIVEDRAB:1804477439,ORANGE:4289003775,ORANGERED:4282712319,ORCHID:3664828159,PALEGOLDENROD:4008225535,PALEGREEN:2566625535,PALETURQUOISE:2951671551,PALEVIOLETRED:3681588223,PAPAYAWHIP:4293907967,PEACHPUFF:4292524543,PERU:3448061951,PINK:4290825215,PLUM:3718307327,POWDERBLUE:2967529215,PURPLE:2147516671,REBECCAPURPLE:1714657791,RED:4278190335,ROSYBROWN:3163525119,ROYALBLUE:1097458175,SADDLEBROWN:2336560127,SALMON:4202722047,SANDYBROWN:4104413439,SEAGREEN:780883967,SEASHELL:4294307583,SIENNA:2689740287,SILVER:3233857791,SKYBLUE:2278484991,SLATEBLUE:1784335871,SLATEGRAY:1887473919,SLATEGREY:1887473919,SNOW:4294638335,SPRINGGREEN:16744447,STEELBLUE:1182971135,TAN:3535047935,TEAL:8421631,THISTLE:3636451583,TOMATO:4284696575,TRANSPARENT:0,TURQUOISE:1088475391,VIOLET:4001558271,WHEAT:4125012991,WHITE:4294967295,WHITESMOKE:4126537215,YELLOW:4294902015,YELLOWGREEN:2597139199},kr={name:`background-clip`,initialValue:`border-box`,prefix:!1,type:1,parse:function(e,t){return t.map(function(e){if(Yn(e))switch(e.value){case`padding-box`:return 1;case`content-box`:return 2}return 0})}},Ar={name:`background-color`,initialValue:`transparent`,prefix:!1,type:3,format:`color`},jr=function(e,t){var n=vr.parse(e,t[0]),r=t[1];return r&&rr(r)?{color:n,stop:r}:{color:n,stop:null}},Mr=function(e,t){var n=e[0],r=e[e.length-1];n.stop===null&&(n.stop=ar),r.stop===null&&(r.stop=sr);for(var i=[],a=0,o=0;o<e.length;o++){var s=e[o].stop;if(s!==null){var c=lr(s,t);c>a?i.push(c):i.push(a),a=c}else i.push(null)}for(var l=null,o=0;o<i.length;o++){var u=i[o];if(u===null)l===null&&(l=o);else if(l!==null){for(var d=o-l,f=(u-i[l-1])/(d+1),p=1;p<=d;p++)i[l+p-1]=f*p;l=null}}return e.map(function(e,n){return{color:e.color,stop:Math.max(Math.min(1,i[n]/t),0)}})},Nr=function(e,t,n){var r=t/2,i=n/2,a=lr(e[0],t)-r,o=i-lr(e[1],n);return(Math.atan2(o,a)+Math.PI*2)%(Math.PI*2)},Pr=function(e,t,n){var r=typeof e==`number`?e:Nr(e,t,n),i=Math.abs(t*Math.sin(r))+Math.abs(n*Math.cos(r)),a=t/2,o=n/2,s=i/2,c=Math.sin(r-Math.PI/2)*s,l=Math.cos(r-Math.PI/2)*s;return[i,a-l,a+l,o-c,o+c]},Fr=function(e,t){return Math.sqrt(e*e+t*t)},Ir=function(e,t,n,r,i){return[[0,0],[0,t],[e,0],[e,t]].reduce(function(e,t){var a=t[0],o=t[1],s=Fr(n-a,r-o);return(i?s<e.optimumDistance:s>e.optimumDistance)?{optimumCorner:t,optimumDistance:s}:e},{optimumDistance:i?1/0:-1/0,optimumCorner:null}).optimumCorner},Lr=function(e,t,n,r,i){var a=0,o=0;switch(e.size){case 0:e.shape===0?a=o=Math.min(Math.abs(t),Math.abs(t-r),Math.abs(n),Math.abs(n-i)):e.shape===1&&(a=Math.min(Math.abs(t),Math.abs(t-r)),o=Math.min(Math.abs(n),Math.abs(n-i)));break;case 2:if(e.shape===0)a=o=Math.min(Fr(t,n),Fr(t,n-i),Fr(t-r,n),Fr(t-r,n-i));else if(e.shape===1){var s=Math.min(Math.abs(n),Math.abs(n-i))/Math.min(Math.abs(t),Math.abs(t-r)),c=Ir(r,i,t,n,!0),l=c[0],u=c[1];a=Fr(l-t,(u-n)/s),o=s*a}break;case 1:e.shape===0?a=o=Math.max(Math.abs(t),Math.abs(t-r),Math.abs(n),Math.abs(n-i)):e.shape===1&&(a=Math.max(Math.abs(t),Math.abs(t-r)),o=Math.max(Math.abs(n),Math.abs(n-i)));break;case 3:if(e.shape===0)a=o=Math.max(Fr(t,n),Fr(t,n-i),Fr(t-r,n),Fr(t-r,n-i));else if(e.shape===1){var s=Math.max(Math.abs(n),Math.abs(n-i))/Math.max(Math.abs(t),Math.abs(t-r)),d=Ir(r,i,t,n,!1),l=d[0],u=d[1];a=Fr(l-t,(u-n)/s),o=s*a}break}return Array.isArray(e.size)&&(a=lr(e.size[0],r),o=e.size.length===2?lr(e.size[1],i):a),[a,o]},Rr=function(e,t){var n=_r(180),r=[];return er(t).forEach(function(t,i){if(i===0){var a=t[0];if(a.type===20&&a.value===`to`){n=gr(t);return}else if(hr(a)){n=mr.parse(e,a);return}}var o=jr(e,t);r.push(o)}),{angle:n,stops:r,type:1}},zr=function(e,t){var n=_r(180),r=[];return er(t).forEach(function(t,i){if(i===0){var a=t[0];if(a.type===20&&[`top`,`left`,`right`,`bottom`].indexOf(a.value)!==-1){n=gr(t);return}else if(hr(a)){n=(mr.parse(e,a)+_r(270))%_r(360);return}}var o=jr(e,t);r.push(o)}),{angle:n,stops:r,type:1}},Br=function(e,t){var n=_r(180),r=[],i=1;return er(t).forEach(function(t,n){var a=t[0];if(n===0){if(Yn(a)&&a.value===`linear`){i=1;return}else if(Yn(a)&&a.value===`radial`){i=2;return}}if(a.type===18){if(a.name===`from`){var o=vr.parse(e,a.values[0]);r.push({stop:ar,color:o})}else if(a.name===`to`){var o=vr.parse(e,a.values[0]);r.push({stop:sr,color:o})}else if(a.name===`color-stop`){var s=a.values.filter($n);if(s.length===2){var o=vr.parse(e,s[1]),c=s[0];Jn(c)&&r.push({stop:{type:16,number:c.number*100,flags:c.flags},color:o})}}}}),i===1?{angle:(n+_r(180))%_r(360),stops:r,type:i}:{size:3,shape:0,stops:r,position:[],type:i}},Vr=`closest-side`,Hr=`farthest-side`,Ur=`closest-corner`,Wr=`farthest-corner`,Gr=`circle`,Kr=`ellipse`,qr=`cover`,Jr=`contain`,Yr=function(e,t){var n=0,r=3,i=[],a=[];return er(t).forEach(function(t,o){var s=!0;if(o===0){var c=!1;s=t.reduce(function(e,t){if(c)if(Yn(t))switch(t.value){case`center`:return a.push(or),e;case`top`:case`left`:return a.push(ar),e;case`right`:case`bottom`:return a.push(sr),e}else (rr(t)||nr(t))&&a.push(t);else if(Yn(t))switch(t.value){case Gr:return n=0,!1;case Kr:return n=1,!1;case`at`:return c=!0,!1;case Vr:return r=0,!1;case qr:case Hr:return r=1,!1;case Jr:case Ur:return r=2,!1;case Wr:return r=3,!1}else if(nr(t)||rr(t))return Array.isArray(r)||(r=[]),r.push(t),!1;return e},s)}if(s){var l=jr(e,t);i.push(l)}}),{size:r,shape:n,stops:i,position:a,type:2}},Xr=function(e,t){var n=0,r=3,i=[],a=[];return er(t).forEach(function(t,o){var s=!0;if(o===0?s=t.reduce(function(e,t){if(Yn(t))switch(t.value){case`center`:return a.push(or),!1;case`top`:case`left`:return a.push(ar),!1;case`right`:case`bottom`:return a.push(sr),!1}else if(rr(t)||nr(t))return a.push(t),!1;return e},s):o===1&&(s=t.reduce(function(e,t){if(Yn(t))switch(t.value){case Gr:return n=0,!1;case Kr:return n=1,!1;case Jr:case Vr:return r=0,!1;case Hr:return r=1,!1;case Ur:return r=2,!1;case qr:case Wr:return r=3,!1}else if(nr(t)||rr(t))return Array.isArray(r)||(r=[]),r.push(t),!1;return e},s)),s){var c=jr(e,t);i.push(c)}}),{size:r,shape:n,stops:i,position:a,type:2}},Zr=function(e){return e.type===1},Qr=function(e){return e.type===2},$r={name:`image`,parse:function(e,t){if(t.type===22){var n={url:t.value,type:0};return e.cache.addImage(t.value),n}if(t.type===18){var r=ti[t.name];if(r===void 0)throw Error(`Attempting to parse an unsupported image function "`+t.name+`"`);return r(e,t.values)}throw Error(`Unsupported image type `+t.type)}};function ei(e){return!(e.type===20&&e.value===`none`)&&(e.type!==18||!!ti[e.name])}var ti={"linear-gradient":Rr,"-moz-linear-gradient":zr,"-ms-linear-gradient":zr,"-o-linear-gradient":zr,"-webkit-linear-gradient":zr,"radial-gradient":Yr,"-moz-radial-gradient":Xr,"-ms-radial-gradient":Xr,"-o-radial-gradient":Xr,"-webkit-radial-gradient":Xr,"-webkit-gradient":Br},ni={name:`background-image`,initialValue:`none`,type:1,prefix:!1,parse:function(e,t){if(t.length===0)return[];var n=t[0];return n.type===20&&n.value===`none`?[]:t.filter(function(e){return $n(e)&&ei(e)}).map(function(t){return $r.parse(e,t)})}},ri={name:`background-origin`,initialValue:`border-box`,prefix:!1,type:1,parse:function(e,t){return t.map(function(e){if(Yn(e))switch(e.value){case`padding-box`:return 1;case`content-box`:return 2}return 0})}},ii={name:`background-position`,initialValue:`0% 0%`,type:1,prefix:!1,parse:function(e,t){return er(t).map(function(e){return e.filter(rr)}).map(ir)}},ai={name:`background-repeat`,initialValue:`repeat`,prefix:!1,type:1,parse:function(e,t){return er(t).map(function(e){return e.filter(Yn).map(function(e){return e.value}).join(` `)}).map(oi)}},oi=function(e){switch(e){case`no-repeat`:return 1;case`repeat-x`:case`repeat no-repeat`:return 2;case`repeat-y`:case`no-repeat repeat`:return 3;default:return 0}},si;(function(e){e.AUTO=`auto`,e.CONTAIN=`contain`,e.COVER=`cover`})(si||={});var ci={name:`background-size`,initialValue:`0`,prefix:!1,type:1,parse:function(e,t){return er(t).map(function(e){return e.filter(li)})}},li=function(e){return Yn(e)||rr(e)},ui=function(e){return{name:`border-`+e+`-color`,initialValue:`transparent`,prefix:!1,type:3,format:`color`}},di=ui(`top`),fi=ui(`right`),pi=ui(`bottom`),mi=ui(`left`),hi=function(e){return{name:`border-radius-`+e,initialValue:`0 0`,prefix:!1,type:1,parse:function(e,t){return ir(t.filter(rr))}}},gi=hi(`top-left`),_i=hi(`top-right`),vi=hi(`bottom-right`),yi=hi(`bottom-left`),bi=function(e){return{name:`border-`+e+`-style`,initialValue:`solid`,prefix:!1,type:2,parse:function(e,t){switch(t){case`none`:return 0;case`dashed`:return 2;case`dotted`:return 3;case`double`:return 4}return 1}}},xi=bi(`top`),Si=bi(`right`),B=bi(`bottom`),V=bi(`left`),Ci=function(e){return{name:`border-`+e+`-width`,initialValue:`0`,type:0,prefix:!1,parse:function(e,t){return qn(t)?t.number:0}}},wi=Ci(`top`),Ti=Ci(`right`),Ei=Ci(`bottom`),Di=Ci(`left`),Oi={name:`color`,initialValue:`transparent`,prefix:!1,type:3,format:`color`},ki={name:`direction`,initialValue:`ltr`,prefix:!1,type:2,parse:function(e,t){switch(t){case`rtl`:return 1;default:return 0}}},Ai={name:`display`,initialValue:`inline-block`,prefix:!1,type:1,parse:function(e,t){return t.filter(Yn).reduce(function(e,t){return e|ji(t.value)},0)}},ji=function(e){switch(e){case`block`:case`-webkit-box`:return 2;case`inline`:return 4;case`run-in`:return 8;case`flow`:return 16;case`flow-root`:return 32;case`table`:return 64;case`flex`:case`-webkit-flex`:return 128;case`grid`:case`-ms-grid`:return 256;case`ruby`:return 512;case`subgrid`:return 1024;case`list-item`:return 2048;case`table-row-group`:return 4096;case`table-header-group`:return 8192;case`table-footer-group`:return 16384;case`table-row`:return 32768;case`table-cell`:return 65536;case`table-column-group`:return 131072;case`table-column`:return 262144;case`table-caption`:return 524288;case`ruby-base`:return 1048576;case`ruby-text`:return 2097152;case`ruby-base-container`:return 4194304;case`ruby-text-container`:return 8388608;case`contents`:return 16777216;case`inline-block`:return 33554432;case`inline-list-item`:return 67108864;case`inline-table`:return 134217728;case`inline-flex`:return 268435456;case`inline-grid`:return 536870912}return 0},Mi={name:`float`,initialValue:`none`,prefix:!1,type:2,parse:function(e,t){switch(t){case`left`:return 1;case`right`:return 2;case`inline-start`:return 3;case`inline-end`:return 4}return 0}},Ni={name:`letter-spacing`,initialValue:`0`,prefix:!1,type:0,parse:function(e,t){return t.type===20&&t.value===`normal`?0:t.type===17||t.type===15?t.number:0}},Pi;(function(e){e.NORMAL=`normal`,e.STRICT=`strict`})(Pi||={});var Fi={name:`line-break`,initialValue:`normal`,prefix:!1,type:2,parse:function(e,t){switch(t){case`strict`:return Pi.STRICT;default:return Pi.NORMAL}}},Ii={name:`line-height`,initialValue:`normal`,prefix:!1,type:4},Li=function(e,t){return Yn(e)&&e.value===`normal`?1.2*t:e.type===17?t*e.number:rr(e)?lr(e,t):t},Ri={name:`list-style-image`,initialValue:`none`,type:0,prefix:!1,parse:function(e,t){return t.type===20&&t.value===`none`?null:$r.parse(e,t)}},zi={name:`list-style-position`,initialValue:`outside`,prefix:!1,type:2,parse:function(e,t){switch(t){case`inside`:return 0;default:return 1}}},Bi={name:`list-style-type`,initialValue:`none`,prefix:!1,type:2,parse:function(e,t){switch(t){case`disc`:return 0;case`circle`:return 1;case`square`:return 2;case`decimal`:return 3;case`cjk-decimal`:return 4;case`decimal-leading-zero`:return 5;case`lower-roman`:return 6;case`upper-roman`:return 7;case`lower-greek`:return 8;case`lower-alpha`:return 9;case`upper-alpha`:return 10;case`arabic-indic`:return 11;case`armenian`:return 12;case`bengali`:return 13;case`cambodian`:return 14;case`cjk-earthly-branch`:return 15;case`cjk-heavenly-stem`:return 16;case`cjk-ideographic`:return 17;case`devanagari`:return 18;case`ethiopic-numeric`:return 19;case`georgian`:return 20;case`gujarati`:return 21;case`gurmukhi`:return 22;case`hebrew`:return 22;case`hiragana`:return 23;case`hiragana-iroha`:return 24;case`japanese-formal`:return 25;case`japanese-informal`:return 26;case`kannada`:return 27;case`katakana`:return 28;case`katakana-iroha`:return 29;case`khmer`:return 30;case`korean-hangul-formal`:return 31;case`korean-hanja-formal`:return 32;case`korean-hanja-informal`:return 33;case`lao`:return 34;case`lower-armenian`:return 35;case`malayalam`:return 36;case`mongolian`:return 37;case`myanmar`:return 38;case`oriya`:return 39;case`persian`:return 40;case`simp-chinese-formal`:return 41;case`simp-chinese-informal`:return 42;case`tamil`:return 43;case`telugu`:return 44;case`thai`:return 45;case`tibetan`:return 46;case`trad-chinese-formal`:return 47;case`trad-chinese-informal`:return 48;case`upper-armenian`:return 49;case`disclosure-open`:return 50;case`disclosure-closed`:return 51;default:return-1}}},Vi=function(e){return{name:`margin-`+e,initialValue:`0`,prefix:!1,type:4}},Hi=Vi(`top`),Ui=Vi(`right`),Wi=Vi(`bottom`),Gi=Vi(`left`),Ki={name:`overflow`,initialValue:`visible`,prefix:!1,type:1,parse:function(e,t){return t.filter(Yn).map(function(e){switch(e.value){case`hidden`:return 1;case`scroll`:return 2;case`clip`:return 3;case`auto`:return 4;default:return 0}})}},qi={name:`overflow-wrap`,initialValue:`normal`,prefix:!1,type:2,parse:function(e,t){switch(t){case`break-word`:return`break-word`;default:return`normal`}}},Ji=function(e){return{name:`padding-`+e,initialValue:`0`,prefix:!1,type:3,format:`length-percentage`}},Yi=Ji(`top`),Xi=Ji(`right`),Zi=Ji(`bottom`),Qi=Ji(`left`),$i={name:`text-align`,initialValue:`left`,prefix:!1,type:2,parse:function(e,t){switch(t){case`right`:return 2;case`center`:case`justify`:return 1;default:return 0}}},ea={name:`position`,initialValue:`static`,prefix:!1,type:2,parse:function(e,t){switch(t){case`relative`:return 1;case`absolute`:return 2;case`fixed`:return 3;case`sticky`:return 4}return 0}},ta={name:`text-shadow`,initialValue:`none`,type:1,prefix:!1,parse:function(e,t){return t.length===1&&Zn(t[0],`none`)?[]:er(t).map(function(t){for(var n={color:Or.TRANSPARENT,offsetX:ar,offsetY:ar,blur:ar},r=0,i=0;i<t.length;i++){var a=t[i];nr(a)?(r===0?n.offsetX=a:r===1?n.offsetY=a:n.blur=a,r++):n.color=vr.parse(e,a)}return n})}},na={name:`text-transform`,initialValue:`none`,prefix:!1,type:2,parse:function(e,t){switch(t){case`uppercase`:return 2;case`lowercase`:return 1;case`capitalize`:return 3}return 0}},ra={name:`transform`,initialValue:`none`,prefix:!0,type:0,parse:function(e,t){if(t.type===20&&t.value===`none`)return null;if(t.type===18){var n=ia[t.name];if(n===void 0)throw Error(`Attempting to parse an unsupported transform function "`+t.name+`"`);return n(t.values)}return null}},ia={matrix:function(e){var t=e.filter(function(e){return e.type===17}).map(function(e){return e.number});return t.length===6?t:null},matrix3d:function(e){var t=e.filter(function(e){return e.type===17}).map(function(e){return e.number}),n=t[0],r=t[1];t[2],t[3];var i=t[4],a=t[5];t[6],t[7],t[8],t[9],t[10],t[11];var o=t[12],s=t[13];return t[14],t[15],t.length===16?[n,r,i,a,o,s]:null}},aa={type:16,number:50,flags:ut},oa=[aa,aa],sa={name:`transform-origin`,initialValue:`50% 50%`,prefix:!0,type:1,parse:function(e,t){var n=t.filter(rr);return n.length===2?[n[0],n[1]]:oa}},ca={name:`visible`,initialValue:`none`,prefix:!1,type:2,parse:function(e,t){switch(t){case`hidden`:return 1;case`collapse`:return 2;default:return 0}}},la;(function(e){e.NORMAL=`normal`,e.BREAK_ALL=`break-all`,e.KEEP_ALL=`keep-all`})(la||={});for(var ua={name:`word-break`,initialValue:`normal`,prefix:!1,type:2,parse:function(e,t){switch(t){case`break-all`:return la.BREAK_ALL;case`keep-all`:return la.KEEP_ALL;default:return la.NORMAL}}},da={name:`z-index`,initialValue:`auto`,prefix:!1,type:0,parse:function(e,t){if(t.type===20)return{auto:!0,order:0};if(Jn(t))return{auto:!1,order:t.number};throw Error(`Invalid z-index number parsed`)}},fa={name:`time`,parse:function(e,t){if(t.type===15)switch(t.unit.toLowerCase()){case`s`:return 1e3*t.number;case`ms`:return t.number}throw Error(`Unsupported time type`)}},pa={name:`opacity`,initialValue:`1`,type:0,prefix:!1,parse:function(e,t){return Jn(t)?t.number:1}},ma={name:`text-decoration-color`,initialValue:`transparent`,prefix:!1,type:3,format:`color`},ha={name:`text-decoration-line`,initialValue:`none`,prefix:!1,type:1,parse:function(e,t){return t.filter(Yn).map(function(e){switch(e.value){case`underline`:return 1;case`overline`:return 2;case`line-through`:return 3;case`none`:return 4}return 0}).filter(function(e){return e!==0})}},ga={name:`font-family`,initialValue:``,prefix:!1,type:1,parse:function(e,t){var n=[],r=[];return t.forEach(function(e){switch(e.type){case 20:case 0:n.push(e.value);break;case 17:n.push(e.number.toString());break;case 4:r.push(n.join(` `)),n.length=0;break}}),n.length&&r.push(n.join(` `)),r.map(function(e){return e.indexOf(` `)===-1?e:`'`+e+`'`})}},_a={name:`font-size`,initialValue:`0`,prefix:!1,type:3,format:`length`},va={name:`font-weight`,initialValue:`normal`,type:0,prefix:!1,parse:function(e,t){if(Jn(t))return t.number;if(Yn(t))switch(t.value){case`bold`:return 700;default:return 400}return 400}},ya={name:`font-variant`,initialValue:`none`,type:1,prefix:!1,parse:function(e,t){return t.filter(Yn).map(function(e){return e.value})}},ba={name:`font-style`,initialValue:`normal`,prefix:!1,type:2,parse:function(e,t){switch(t){case`oblique`:return`oblique`;case`italic`:return`italic`;default:return`normal`}}},xa=function(e,t){return(e&t)!==0},Sa={name:`content`,initialValue:`none`,type:1,prefix:!1,parse:function(e,t){if(t.length===0)return[];var n=t[0];return n.type===20&&n.value===`none`?[]:t}},Ca={name:`counter-increment`,initialValue:`none`,prefix:!0,type:1,parse:function(e,t){if(t.length===0)return null;var n=t[0];if(n.type===20&&n.value===`none`)return null;for(var r=[],i=t.filter(Qn),a=0;a<i.length;a++){var o=i[a],s=i[a+1];if(o.type===20){var c=s&&Jn(s)?s.number:1;r.push({counter:o.value,increment:c})}}return r}},wa={name:`counter-reset`,initialValue:`none`,prefix:!0,type:1,parse:function(e,t){if(t.length===0)return[];for(var n=[],r=t.filter(Qn),i=0;i<r.length;i++){var a=r[i],o=r[i+1];if(Yn(a)&&a.value!==`none`){var s=o&&Jn(o)?o.number:0;n.push({counter:a.value,reset:s})}}return n}},Ta={name:`duration`,initialValue:`0s`,prefix:!1,type:1,parse:function(e,t){return t.filter(qn).map(function(t){return fa.parse(e,t)})}},Ea={name:`quotes`,initialValue:`none`,prefix:!0,type:1,parse:function(e,t){if(t.length===0)return null;var n=t[0];if(n.type===20&&n.value===`none`)return null;var r=[],i=t.filter(Xn);if(i.length%2!=0)return null;for(var a=0;a<i.length;a+=2){var o=i[a].value,s=i[a+1].value;r.push({open:o,close:s})}return r}},Da=function(e,t,n){if(!e)return``;var r=e[Math.min(t,e.length-1)];return r?n?r.open:r.close:``},Oa={name:`box-shadow`,initialValue:`none`,type:1,prefix:!1,parse:function(e,t){return t.length===1&&Zn(t[0],`none`)?[]:er(t).map(function(t){for(var n={color:255,offsetX:ar,offsetY:ar,blur:ar,spread:ar,inset:!1},r=0,i=0;i<t.length;i++){var a=t[i];Zn(a,`inset`)?n.inset=!0:nr(a)?(r===0?n.offsetX=a:r===1?n.offsetY=a:r===2?n.blur=a:n.spread=a,r++):n.color=vr.parse(e,a)}return n})}},ka={name:`paint-order`,initialValue:`normal`,prefix:!1,type:1,parse:function(e,t){var n=[0,1,2],r=[];return t.filter(Yn).forEach(function(e){switch(e.value){case`stroke`:r.push(1);break;case`fill`:r.push(0);break;case`markers`:r.push(2);break}}),n.forEach(function(e){r.indexOf(e)===-1&&r.push(e)}),r}},H={name:`-webkit-text-stroke-color`,initialValue:`currentcolor`,prefix:!1,type:3,format:`color`},Aa={name:`-webkit-text-stroke-width`,initialValue:`0`,type:0,prefix:!1,parse:function(e,t){return qn(t)?t.number:0}},ja=function(){function e(e,t){this.animationDuration=W(e,Ta,t.animationDuration),this.backgroundClip=W(e,kr,t.backgroundClip),this.backgroundColor=W(e,Ar,t.backgroundColor),this.backgroundImage=W(e,ni,t.backgroundImage),this.backgroundOrigin=W(e,ri,t.backgroundOrigin),this.backgroundPosition=W(e,ii,t.backgroundPosition),this.backgroundRepeat=W(e,ai,t.backgroundRepeat),this.backgroundSize=W(e,ci,t.backgroundSize),this.borderTopColor=W(e,di,t.borderTopColor),this.borderRightColor=W(e,fi,t.borderRightColor),this.borderBottomColor=W(e,pi,t.borderBottomColor),this.borderLeftColor=W(e,mi,t.borderLeftColor),this.borderTopLeftRadius=W(e,gi,t.borderTopLeftRadius),this.borderTopRightRadius=W(e,_i,t.borderTopRightRadius),this.borderBottomRightRadius=W(e,vi,t.borderBottomRightRadius),this.borderBottomLeftRadius=W(e,yi,t.borderBottomLeftRadius),this.borderTopStyle=W(e,xi,t.borderTopStyle),this.borderRightStyle=W(e,Si,t.borderRightStyle),this.borderBottomStyle=W(e,B,t.borderBottomStyle),this.borderLeftStyle=W(e,V,t.borderLeftStyle),this.borderTopWidth=W(e,wi,t.borderTopWidth),this.borderRightWidth=W(e,Ti,t.borderRightWidth),this.borderBottomWidth=W(e,Ei,t.borderBottomWidth),this.borderLeftWidth=W(e,Di,t.borderLeftWidth),this.boxShadow=W(e,Oa,t.boxShadow),this.color=W(e,Oi,t.color),this.direction=W(e,ki,t.direction),this.display=W(e,Ai,t.display),this.float=W(e,Mi,t.cssFloat),this.fontFamily=W(e,ga,t.fontFamily),this.fontSize=W(e,_a,t.fontSize),this.fontStyle=W(e,ba,t.fontStyle),this.fontVariant=W(e,ya,t.fontVariant),this.fontWeight=W(e,va,t.fontWeight),this.letterSpacing=W(e,Ni,t.letterSpacing),this.lineBreak=W(e,Fi,t.lineBreak),this.lineHeight=W(e,Ii,t.lineHeight),this.listStyleImage=W(e,Ri,t.listStyleImage),this.listStylePosition=W(e,zi,t.listStylePosition),this.listStyleType=W(e,Bi,t.listStyleType),this.marginTop=W(e,Hi,t.marginTop),this.marginRight=W(e,Ui,t.marginRight),this.marginBottom=W(e,Wi,t.marginBottom),this.marginLeft=W(e,Gi,t.marginLeft),this.opacity=W(e,pa,t.opacity);var n=W(e,Ki,t.overflow);this.overflowX=n[0],this.overflowY=n[+(n.length>1)],this.overflowWrap=W(e,qi,t.overflowWrap),this.paddingTop=W(e,Yi,t.paddingTop),this.paddingRight=W(e,Xi,t.paddingRight),this.paddingBottom=W(e,Zi,t.paddingBottom),this.paddingLeft=W(e,Qi,t.paddingLeft),this.paintOrder=W(e,ka,t.paintOrder),this.position=W(e,ea,t.position),this.textAlign=W(e,$i,t.textAlign),this.textDecorationColor=W(e,ma,t.textDecorationColor??t.color),this.textDecorationLine=W(e,ha,t.textDecorationLine??t.textDecoration),this.textShadow=W(e,ta,t.textShadow),this.textTransform=W(e,na,t.textTransform),this.transform=W(e,ra,t.transform),this.transformOrigin=W(e,sa,t.transformOrigin),this.visibility=W(e,ca,t.visibility),this.webkitTextStrokeColor=W(e,H,t.webkitTextStrokeColor),this.webkitTextStrokeWidth=W(e,Aa,t.webkitTextStrokeWidth),this.wordBreak=W(e,ua,t.wordBreak),this.zIndex=W(e,da,t.zIndex)}return e.prototype.isVisible=function(){return this.display>0&&this.opacity>0&&this.visibility===0},e.prototype.isTransparent=function(){return yr(this.backgroundColor)},e.prototype.isTransformed=function(){return this.transform!==null},e.prototype.isPositioned=function(){return this.position!==0},e.prototype.isPositionedWithZIndex=function(){return this.isPositioned()&&!this.zIndex.auto},e.prototype.isFloating=function(){return this.float!==0},e.prototype.isInlineLevel=function(){return xa(this.display,4)||xa(this.display,33554432)||xa(this.display,268435456)||xa(this.display,536870912)||xa(this.display,67108864)||xa(this.display,134217728)},e}(),U=function(){function e(e,t){this.content=W(e,Sa,t.content),this.quotes=W(e,Ea,t.quotes)}return e}(),Ma=function(){function e(e,t){this.counterIncrement=W(e,Ca,t.counterIncrement),this.counterReset=W(e,wa,t.counterReset)}return e}(),W=function(e,t,n){var r=new Gn,i=n==null?t.initialValue:n.toString();r.write(i);var a=new Kn(r.read());switch(t.type){case 2:var o=a.parseComponentValue();return t.parse(e,Yn(o)?o.value:t.initialValue);case 0:return t.parse(e,a.parseComponentValue());case 1:return t.parse(e,a.parseComponentValues());case 4:return a.parseComponentValue();case 3:switch(t.format){case`angle`:return mr.parse(e,a.parseComponentValue());case`color`:return vr.parse(e,a.parseComponentValue());case`image`:return $r.parse(e,a.parseComponentValue());case`length`:var s=a.parseComponentValue();return nr(s)?s:ar;case`length-percentage`:var c=a.parseComponentValue();return rr(c)?c:ar;case`time`:return fa.parse(e,a.parseComponentValue())}break}},Na=`data-html2canvas-debug`,Pa=function(e){switch(e.getAttribute(Na)){case`all`:return 1;case`clone`:return 2;case`parse`:return 3;case`render`:return 4;default:return 0}},Fa=function(e,t){var n=Pa(e);return n===1||t===n},Ia=function(){function e(e,t){if(this.context=e,this.textNodes=[],this.elements=[],this.flags=0,Fa(t,3))debugger;this.styles=new ja(e,window.getComputedStyle(t,null)),Cs(t)&&(this.styles.animationDuration.some(function(e){return e>0})&&(t.style.animationDuration=`0s`),this.styles.transform!==null&&(t.style.transform=`none`)),this.bounds=s(this.context,t),Fa(t,4)&&(this.flags|=16)}return e}(),La=`AAAAAAAAAAAAEA4AGBkAAFAaAAACAAAAAAAIABAAGAAwADgACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAQABIAEQATAAIABAACAAQAAgAEAAIABAAVABcAAgAEAAIABAACAAQAGAAaABwAHgAgACIAI4AlgAIABAAmwCjAKgAsAC2AL4AvQDFAMoA0gBPAVYBWgEIAAgACACMANoAYgFkAWwBdAF8AX0BhQGNAZUBlgGeAaMBlQGWAasBswF8AbsBwwF0AcsBYwHTAQgA2wG/AOMBdAF8AekB8QF0AfkB+wHiAHQBfAEIAAMC5gQIAAsCEgIIAAgAFgIeAggAIgIpAggAMQI5AkACygEIAAgASAJQAlgCYAIIAAgACAAKBQoFCgUTBRMFGQUrBSsFCAAIAAgACAAIAAgACAAIAAgACABdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABoAmgCrwGvAQgAbgJ2AggAHgEIAAgACADnAXsCCAAIAAgAgwIIAAgACAAIAAgACACKAggAkQKZAggAPADJAAgAoQKkAqwCsgK6AsICCADJAggA0AIIAAgACAAIANYC3gIIAAgACAAIAAgACABAAOYCCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAkASoB+QIEAAgACAA8AEMCCABCBQgACABJBVAFCAAIAAgACAAIAAgACAAIAAgACABTBVoFCAAIAFoFCABfBWUFCAAIAAgACAAIAAgAbQUIAAgACAAIAAgACABzBXsFfQWFBYoFigWKBZEFigWKBYoFmAWfBaYFrgWxBbkFCAAIAAgACAAIAAgACAAIAAgACAAIAMEFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAMgFCADQBQgACAAIAAgACAAIAAgACAAIAAgACAAIAO4CCAAIAAgAiQAIAAgACABAAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAD0AggACAD8AggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIANYFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAMDvwAIAAgAJAIIAAgACAAIAAgACAAIAAgACwMTAwgACAB9BOsEGwMjAwgAKwMyAwsFYgE3A/MEPwMIAEUDTQNRAwgAWQOsAGEDCAAIAAgACAAIAAgACABpAzQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFIQUoBSwFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABtAwgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABMAEwACAAIAAgACAAIABgACAAIAAgACAC/AAgACAAyAQgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACAAIAAwAAgACAAIAAgACAAIAAgACAAIAAAARABIAAgACAAIABQASAAIAAgAIABwAEAAjgCIABsAqAC2AL0AigDQAtwC+IJIQqVAZUBWQqVAZUBlQGVAZUBlQGrC5UBlQGVAZUBlQGVAZUBlQGVAXsKlQGVAbAK6wsrDGUMpQzlDJUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAfAKAAuZA64AtwCJALoC6ADwAAgAuACgA/oEpgO6AqsD+AAIAAgAswMIAAgACAAIAIkAuwP5AfsBwwPLAwgACAAIAAgACADRA9kDCAAIAOED6QMIAAgACAAIAAgACADuA/YDCAAIAP4DyQAIAAgABgQIAAgAXQAOBAgACAAIAAgACAAIABMECAAIAAgACAAIAAgACAD8AAQBCAAIAAgAGgQiBCoECAExBAgAEAEIAAgACAAIAAgACAAIAAgACAAIAAgACAA4BAgACABABEYECAAIAAgATAQYAQgAVAQIAAgACAAIAAgACAAIAAgACAAIAFoECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAOQEIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAB+BAcACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEABhgSMBAgACAAIAAgAlAQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAwAEAAQABAADAAMAAwADAAQABAAEAAQABAAEAAQABHATAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAdQMIAAgACAAIAAgACAAIAMkACAAIAAgAfQMIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACFA4kDCAAIAAgACAAIAOcBCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAIcDCAAIAAgACAAIAAgACAAIAAgACAAIAJEDCAAIAAgACADFAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABgBAgAZgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAbAQCBXIECAAIAHkECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAJwEQACjBKoEsgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAC6BMIECAAIAAgACAAIAAgACABmBAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAxwQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAGYECAAIAAgAzgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBd0FXwUIAOIF6gXxBYoF3gT5BQAGCAaKBYoFigWKBYoFigWKBYoFigWKBYoFigXWBIoFigWKBYoFigWKBYoFigWKBYsFEAaKBYoFigWKBYoFigWKBRQGCACKBYoFigWKBQgACAAIANEECAAIABgGigUgBggAJgYIAC4GMwaKBYoF0wQ3Bj4GigWKBYoFigWKBYoFigWKBYoFigWKBYoFigUIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWLBf///////wQABAAEAAQABAAEAAQABAAEAAQAAwAEAAQAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAQADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUAAAAFAAUAAAAFAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAQAAAAUABQAFAAUABQAFAAAAAAAFAAUAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAFAAUAAQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAAABwAHAAcAAAAHAAcABwAFAAEAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAcABwAFAAUAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQABAAAAAAAAAAAAAAAFAAUABQAFAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAHAAcAAAAHAAcAAAAAAAUABQAHAAUAAQAHAAEABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwABAAUABQAFAAUAAAAAAAAAAAAAAAEAAQABAAEAAQABAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABQANAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAABQAHAAUABQAFAAAAAAAAAAcABQAFAAUABQAFAAQABAAEAAQABAAEAAQABAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUAAAAFAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAUAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAcABwAFAAcABwAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUABwAHAAUABQAFAAUAAAAAAAcABwAAAAAABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAAAAAAAAAAABQAFAAAAAAAFAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAFAAUABQAFAAUAAAAFAAUABwAAAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABwAFAAUABQAFAAAAAAAHAAcAAAAAAAcABwAFAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAAAAAAAAAHAAcABwAAAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAUABQAFAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAHAAcABQAHAAcAAAAFAAcABwAAAAcABwAFAAUAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAFAAcABwAFAAUABQAAAAUAAAAHAAcABwAHAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAHAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAUAAAAFAAUAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABwAFAAUABQAFAAUABQAAAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABQAFAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAFAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAHAAUABQAFAAUABQAFAAUABwAHAAcABwAHAAcABwAHAAUABwAHAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABwAHAAcABwAFAAUABwAHAAcAAAAAAAAAAAAHAAcABQAHAAcABwAHAAcABwAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAUABQAFAAUABQAFAAUAAAAFAAAABQAAAAAABQAFAAUABQAFAAUABQAFAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAUABQAFAAUABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABwAFAAcABwAHAAcABwAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAUABQAFAAUABwAHAAUABQAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABQAFAAcABwAHAAUABwAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAcABQAFAAUABQAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAAAAAABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAAAAAAAAAFAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAUABQAHAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAFAAUABQAFAAcABwAFAAUABwAHAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAcABwAFAAUABwAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABQAAAAAABQAFAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAcABwAAAAAAAAAAAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAcABwAFAAcABwAAAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAFAAUABQAAAAUABQAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABwAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAHAAcABQAHAAUABQAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAAABwAHAAAAAAAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAFAAUABwAFAAcABwAFAAcABQAFAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAAAAAABwAHAAcABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAFAAcABwAFAAUABQAFAAUABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAUABQAFAAcABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABQAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAAAAAAFAAUABwAHAAcABwAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAHAAUABQAFAAUABQAFAAUABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAABQAAAAUABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAHAAcAAAAFAAUAAAAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABQAFAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAABQAFAAUABQAFAAUABQAAAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAFAAUABQAFAAUADgAOAA4ADgAOAA4ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAMAAwADAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAAAAAAAAAAAAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAAAAAAAAAAAAsADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwACwAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAADgAOAA4AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAAAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4AAAAOAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAAAAAAAAAAAA4AAAAOAAAAAAAAAAAADgAOAA4AAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAA=`,Ra=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,za=typeof Uint8Array>`u`?[]:new Uint8Array(256),Ba=0;Ba<Ra.length;Ba++)za[Ra.charCodeAt(Ba)]=Ba;for(var Va=function(e){var t=e.length*.75,n=e.length,r,i=0,a,o,s,c;e[e.length-1]===`=`&&(t--,e[e.length-2]===`=`&&t--);var l=typeof ArrayBuffer<`u`&&typeof Uint8Array<`u`&&Uint8Array.prototype.slice!==void 0?new ArrayBuffer(t):Array(t),u=Array.isArray(l)?l:new Uint8Array(l);for(r=0;r<n;r+=4)a=za[e.charCodeAt(r)],o=za[e.charCodeAt(r+1)],s=za[e.charCodeAt(r+2)],c=za[e.charCodeAt(r+3)],u[i++]=a<<2|o>>4,u[i++]=(o&15)<<4|s>>2,u[i++]=(s&3)<<6|c&63;return l},Ha=function(e){for(var t=e.length,n=[],r=0;r<t;r+=2)n.push(e[r+1]<<8|e[r]);return n},Ua=function(e){for(var t=e.length,n=[],r=0;r<t;r+=4)n.push(e[r+3]<<24|e[r+2]<<16|e[r+1]<<8|e[r]);return n},Wa=5,Ga=11,Ka=2,qa=Ga-Wa,Ja=65536>>Wa,Ya=(1<<Wa)-1,Xa=Ja+(1024>>Wa)+32,Za=65536>>Ga,Qa=(1<<qa)-1,$a=function(e,t,n){return e.slice?e.slice(t,n):new Uint16Array(Array.prototype.slice.call(e,t,n))},eo=function(e,t,n){return e.slice?e.slice(t,n):new Uint32Array(Array.prototype.slice.call(e,t,n))},to=function(e,t){var n=Va(e),r=Array.isArray(n)?Ua(n):new Uint32Array(n),i=Array.isArray(n)?Ha(n):new Uint16Array(n),a=24,o=$a(i,a/2,r[4]/2),s=r[5]===2?$a(i,(a+r[4])/2):eo(r,Math.ceil((a+r[4])/4));return new no(r[0],r[1],r[2],r[3],o,s)},no=function(){function e(e,t,n,r,i,a){this.initialValue=e,this.errorValue=t,this.highStart=n,this.highValueIndex=r,this.index=i,this.data=a}return e.prototype.get=function(e){var t;if(e>=0){if(e<55296||e>56319&&e<=65535)return t=this.index[e>>Wa],t=(t<<Ka)+(e&Ya),this.data[t];if(e<=65535)return t=this.index[Ja+(e-55296>>Wa)],t=(t<<Ka)+(e&Ya),this.data[t];if(e<this.highStart)return t=Xa-Za+(e>>Ga),t=this.index[t],t+=e>>Wa&Qa,t=this.index[t],t=(t<<Ka)+(e&Ya),this.data[t];if(e<=1114111)return this.data[this.highValueIndex]}return this.errorValue},e}(),ro=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`,io=typeof Uint8Array>`u`?[]:new Uint8Array(256),ao=0;ao<ro.length;ao++)io[ro.charCodeAt(ao)]=ao;var oo=1,so=2,co=3,lo=4,uo=5,fo=7,po=8,mo=9,ho=10,go=11,_o=12,vo=13,yo=14,bo=15,xo=function(e){for(var t=[],n=0,r=e.length;n<r;){var i=e.charCodeAt(n++);if(i>=55296&&i<=56319&&n<r){var a=e.charCodeAt(n++);(a&64512)==56320?t.push(((i&1023)<<10)+(a&1023)+65536):(t.push(i),n--)}else t.push(i)}return t},So=function(){var e=[...arguments];if(String.fromCodePoint)return String.fromCodePoint.apply(String,e);var t=e.length;if(!t)return``;for(var n=[],r=-1,i=``;++r<t;){var a=e[r];a<=65535?n.push(a):(a-=65536,n.push((a>>10)+55296,a%1024+56320)),(r+1===t||n.length>16384)&&(i+=String.fromCharCode.apply(String,n),n.length=0)}return i},Co=to(La),wo=`×`,To=`÷`,Eo=function(e){return Co.get(e)},Do=function(e,t,n){var r=n-2,i=t[r],a=t[n-1],o=t[n];if(a===so&&o===co)return wo;if(a===so||a===co||a===lo||o===so||o===co||o===lo)return To;if(a===po&&[po,mo,go,_o].indexOf(o)!==-1||(a===go||a===mo)&&(o===mo||o===ho)||(a===_o||a===ho)&&o===ho||o===vo||o===uo||o===fo||a===oo)return wo;if(a===vo&&o===yo){for(;i===uo;)i=t[--r];if(i===yo)return wo}if(a===bo&&o===bo){for(var s=0;i===bo;)s++,i=t[--r];if(s%2==0)return wo}return To},Oo=function(e){var t=xo(e),n=t.length,r=0,i=0,a=t.map(Eo);return{next:function(){if(r>=n)return{done:!0,value:null};for(var e=wo;r<n&&(e=Do(t,a,++r))===wo;);if(e!==wo||r===n){var o=So.apply(null,t.slice(i,r));return i=r,{value:o,done:!1}}return{done:!0,value:null}}}},ko=function(e){for(var t=Oo(e),n=[],r;!(r=t.next()).done;)r.value&&n.push(r.value.slice());return n},Ao=function(e){var t=123;if(e.createRange){var n=e.createRange();if(n.getBoundingClientRect){var r=e.createElement(`boundtest`);r.style.height=t+`px`,r.style.display=`block`,e.body.appendChild(r),n.selectNode(r);var i=n.getBoundingClientRect(),a=Math.round(i.height);if(e.body.removeChild(r),a===t)return!0}}return!1},jo=function(e){var t=e.createElement(`boundtest`);t.style.width=`50px`,t.style.display=`block`,t.style.fontSize=`12px`,t.style.letterSpacing=`0px`,t.style.wordSpacing=`0px`,e.body.appendChild(t);var n=e.createRange();t.innerHTML=typeof``.repeat==`function`?`👨`.repeat(10):``;var r=t.firstChild,i=l(r.data).map(function(e){return u(e)}),a=0,o={},s=i.every(function(e,t){n.setStart(r,a),n.setEnd(r,a+e.length);var i=n.getBoundingClientRect();a+=e.length;var s=i.x>o.x||i.y>o.y;return o=i,t===0?!0:s});return e.body.removeChild(t),s},Mo=function(){return new Image().crossOrigin!==void 0},No=function(){return typeof new XMLHttpRequest().responseType==`string`},Po=function(e){var t=new Image,n=e.createElement(`canvas`),r=n.getContext(`2d`);if(!r)return!1;t.src=`data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>`;try{r.drawImage(t,0,0),n.toDataURL()}catch{return!1}return!0},Fo=function(e){return e[0]===0&&e[1]===255&&e[2]===0&&e[3]===255},Io=function(e){var t=e.createElement(`canvas`),n=100;t.width=n,t.height=n;var r=t.getContext(`2d`);if(!r)return Promise.reject(!1);r.fillStyle=`rgb(0, 255, 0)`,r.fillRect(0,0,n,n);var i=new Image,a=t.toDataURL();i.src=a;var o=Lo(n,n,0,0,i);return r.fillStyle=`red`,r.fillRect(0,0,n,n),Ro(o).then(function(t){r.drawImage(t,0,0);var i=r.getImageData(0,0,n,n).data;r.fillStyle=`red`,r.fillRect(0,0,n,n);var o=e.createElement(`div`);return o.style.backgroundImage=`url(`+a+`)`,o.style.height=n+`px`,Fo(i)?Ro(Lo(n,n,0,0,o)):Promise.reject(!1)}).then(function(e){return r.drawImage(e,0,0),Fo(r.getImageData(0,0,n,n).data)}).catch(function(){return!1})},Lo=function(e,t,n,r,i){var a=`http://www.w3.org/2000/svg`,o=document.createElementNS(a,`svg`),s=document.createElementNS(a,`foreignObject`);return o.setAttributeNS(null,`width`,e.toString()),o.setAttributeNS(null,`height`,t.toString()),s.setAttributeNS(null,`width`,`100%`),s.setAttributeNS(null,`height`,`100%`),s.setAttributeNS(null,`x`,n.toString()),s.setAttributeNS(null,`y`,r.toString()),s.setAttributeNS(null,`externalResourcesRequired`,`true`),o.appendChild(s),s.appendChild(i),o},Ro=function(e){return new Promise(function(t,n){var r=new Image;r.onload=function(){return t(r)},r.onerror=n,r.src=`data:image/svg+xml;charset=utf-8,`+encodeURIComponent(new XMLSerializer().serializeToString(e))})},zo={get SUPPORT_RANGE_BOUNDS(){var e=Ao(document);return Object.defineProperty(zo,`SUPPORT_RANGE_BOUNDS`,{value:e}),e},get SUPPORT_WORD_BREAKING(){var e=zo.SUPPORT_RANGE_BOUNDS&&jo(document);return Object.defineProperty(zo,`SUPPORT_WORD_BREAKING`,{value:e}),e},get SUPPORT_SVG_DRAWING(){var e=Po(document);return Object.defineProperty(zo,`SUPPORT_SVG_DRAWING`,{value:e}),e},get SUPPORT_FOREIGNOBJECT_DRAWING(){var e=typeof Array.from==`function`&&typeof window.fetch==`function`?Io(document):Promise.resolve(!1);return Object.defineProperty(zo,`SUPPORT_FOREIGNOBJECT_DRAWING`,{value:e}),e},get SUPPORT_CORS_IMAGES(){var e=Mo();return Object.defineProperty(zo,`SUPPORT_CORS_IMAGES`,{value:e}),e},get SUPPORT_RESPONSE_TYPE(){var e=No();return Object.defineProperty(zo,`SUPPORT_RESPONSE_TYPE`,{value:e}),e},get SUPPORT_CORS_XHR(){var e=`withCredentials`in new XMLHttpRequest;return Object.defineProperty(zo,`SUPPORT_CORS_XHR`,{value:e}),e},get SUPPORT_NATIVE_TEXT_SEGMENTATION(){var e=!!(typeof Intl<`u`&&Intl.Segmenter);return Object.defineProperty(zo,`SUPPORT_NATIVE_TEXT_SEGMENTATION`,{value:e}),e}},Bo=function(){function e(e,t){this.text=e,this.bounds=t}return e}(),Vo=function(e,t,n,r){var i=Ko(t,n),a=[],s=0;return i.forEach(function(t){if(n.textDecorationLine.length||t.trim().length>0)if(zo.SUPPORT_RANGE_BOUNDS){var i=Uo(r,s,t.length).getClientRects();if(i.length>1){var c=Wo(t),l=0;c.forEach(function(t){a.push(new Bo(t,o.fromDOMRectList(e,Uo(r,l+s,t.length).getClientRects()))),l+=t.length})}else a.push(new Bo(t,o.fromDOMRectList(e,i)))}else{var u=r.splitText(t.length);a.push(new Bo(t,Ho(e,r))),r=u}else zo.SUPPORT_RANGE_BOUNDS||(r=r.splitText(t.length));s+=t.length}),a},Ho=function(e,t){var n=t.ownerDocument;if(n){var r=n.createElement(`html2canvaswrapper`);r.appendChild(t.cloneNode(!0));var i=t.parentNode;if(i){i.replaceChild(r,t);var a=s(e,r);return r.firstChild&&i.replaceChild(r.firstChild,r),a}}return o.EMPTY},Uo=function(e,t,n){var r=e.ownerDocument;if(!r)throw Error(`Node has no owner document`);var i=r.createRange();return i.setStart(e,t),i.setEnd(e,t+n),i},Wo=function(e){if(zo.SUPPORT_NATIVE_TEXT_SEGMENTATION){var t=new Intl.Segmenter(void 0,{granularity:`grapheme`});return Array.from(t.segment(e)).map(function(e){return e.segment})}return ko(e)},Go=function(e,t){if(zo.SUPPORT_NATIVE_TEXT_SEGMENTATION){var n=new Intl.Segmenter(void 0,{granularity:`word`});return Array.from(n.segment(e)).map(function(e){return e.segment})}return Jo(e,t)},Ko=function(e,t){return t.letterSpacing===0?Go(e,t):Wo(e)},qo=[32,160,4961,65792,65793,4153,4241],Jo=function(e,t){for(var n=st(e,{lineBreak:t.lineBreak,wordBreak:t.overflowWrap===`break-word`?`break-word`:t.wordBreak}),r=[],i,a=function(){if(i.value){var e=l(i.value.slice()),t=``;e.forEach(function(e){qo.indexOf(e)===-1?t+=u(e):(t.length&&r.push(t),r.push(u(e)),t=``)}),t.length&&r.push(t)}};!(i=n.next()).done;)a();return r},Yo=function(){function e(e,t,n){this.text=Xo(t.data,n.textTransform),this.textBounds=Vo(e,this.text,n,t)}return e}(),Xo=function(e,t){switch(t){case 1:return e.toLowerCase();case 3:return e.replace(Zo,Qo);case 2:return e.toUpperCase();default:return e}},Zo=/(^|\s|:|-|\(|\))([a-z])/g,Qo=function(e,t,n){return e.length>0?t+n.toUpperCase():e},$o=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.src=n.currentSrc||n.src,r.intrinsicWidth=n.naturalWidth,r.intrinsicHeight=n.naturalHeight,r.context.cache.addImage(r.src),r}return n}(Ia),es=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.canvas=n,r.intrinsicWidth=n.width,r.intrinsicHeight=n.height,r}return n}(Ia),ts=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this,i=new XMLSerializer,a=s(t,n);return n.setAttribute(`width`,a.width+`px`),n.setAttribute(`height`,a.height+`px`),r.svg=`data:image/svg+xml,`+encodeURIComponent(i.serializeToString(n)),r.intrinsicWidth=n.width.baseVal.value,r.intrinsicHeight=n.height.baseVal.value,r.context.cache.addImage(r.svg),r}return n}(Ia),ns=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.value=n.value,r}return n}(Ia),rs=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.start=n.start,r.reversed=typeof n.reversed==`boolean`&&n.reversed===!0,r}return n}(Ia),is=[{type:15,flags:0,unit:`px`,number:3}],as=[{type:16,flags:0,number:50}],os=function(e){return e.width>e.height?new o(e.left+(e.width-e.height)/2,e.top,e.height,e.height):e.width<e.height?new o(e.left,e.top+(e.height-e.width)/2,e.width,e.width):e},ss=function(e){var t=e.type===us?Array(e.value.length+1).join(`•`):e.value;return t.length===0?e.placeholder||``:t},cs=`checkbox`,ls=`radio`,us=`password`,ds=707406591,fs=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;switch(r.type=n.type.toLowerCase(),r.checked=n.checked,r.value=ss(n),(r.type===cs||r.type===ls)&&(r.styles.backgroundColor=3739148031,r.styles.borderTopColor=r.styles.borderRightColor=r.styles.borderBottomColor=r.styles.borderLeftColor=2779096575,r.styles.borderTopWidth=r.styles.borderRightWidth=r.styles.borderBottomWidth=r.styles.borderLeftWidth=1,r.styles.borderTopStyle=r.styles.borderRightStyle=r.styles.borderBottomStyle=r.styles.borderLeftStyle=1,r.styles.backgroundClip=[0],r.styles.backgroundOrigin=[0],r.bounds=os(r.bounds)),r.type){case cs:r.styles.borderTopRightRadius=r.styles.borderTopLeftRadius=r.styles.borderBottomRightRadius=r.styles.borderBottomLeftRadius=is;break;case ls:r.styles.borderTopRightRadius=r.styles.borderTopLeftRadius=r.styles.borderBottomRightRadius=r.styles.borderBottomLeftRadius=as;break}return r}return n}(Ia),ps=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this,i=n.options[n.selectedIndex||0];return r.value=i&&i.text||``,r}return n}(Ia),ms=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.value=n.value,r}return n}(Ia),hs=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;r.src=n.src,r.width=parseInt(n.width,10)||0,r.height=parseInt(n.height,10)||0,r.backgroundColor=r.styles.backgroundColor;try{if(n.contentWindow&&n.contentWindow.document&&n.contentWindow.document.documentElement){r.tree=ys(t,n.contentWindow.document.documentElement);var i=n.contentWindow.document.documentElement?Dr(t,getComputedStyle(n.contentWindow.document.documentElement).backgroundColor):Or.TRANSPARENT,a=n.contentWindow.document.body?Dr(t,getComputedStyle(n.contentWindow.document.body).backgroundColor):Or.TRANSPARENT;r.backgroundColor=yr(i)?yr(a)?r.styles.backgroundColor:a:i}}catch{}return r}return n}(Ia),gs=[`OL`,`UL`,`MENU`],_s=function(e,t,n,r){for(var i=t.firstChild,a=void 0;i;i=a)if(a=i.nextSibling,xs(i)&&i.data.trim().length>0)n.textNodes.push(new Yo(e,i,n.styles));else if(Ss(i))if(zs(i)&&i.assignedNodes)i.assignedNodes().forEach(function(t){return _s(e,t,n,r)});else{var o=vs(e,i);o.styles.isVisible()&&(bs(i,o,r)?o.flags|=4:G(o.styles)&&(o.flags|=2),gs.indexOf(i.tagName)!==-1&&(o.flags|=8),n.elements.push(o),i.slot,i.shadowRoot?_s(e,i.shadowRoot,o,r):!Ls(i)&&!ks(i)&&!Rs(i)&&_s(e,i,o,r))}},vs=function(e,t){return Ns(t)?new $o(e,t):js(t)?new es(e,t):ks(t)?new ts(e,t):Ts(t)?new ns(e,t):Es(t)?new rs(e,t):Ds(t)?new fs(e,t):Rs(t)?new ps(e,t):Ls(t)?new ms(e,t):Ps(t)?new hs(e,t):new Ia(e,t)},ys=function(e,t){var n=vs(e,t);return n.flags|=4,_s(e,t,n,n),n},bs=function(e,t,n){return t.styles.isPositionedWithZIndex()||t.styles.opacity<1||t.styles.isTransformed()||As(e)&&n.styles.isTransparent()},G=function(e){return e.isPositioned()||e.isFloating()},xs=function(e){return e.nodeType===Node.TEXT_NODE},Ss=function(e){return e.nodeType===Node.ELEMENT_NODE},Cs=function(e){return Ss(e)&&e.style!==void 0&&!ws(e)},ws=function(e){return typeof e.className==`object`},Ts=function(e){return e.tagName===`LI`},Es=function(e){return e.tagName===`OL`},Ds=function(e){return e.tagName===`INPUT`},Os=function(e){return e.tagName===`HTML`},ks=function(e){return e.tagName===`svg`},As=function(e){return e.tagName===`BODY`},js=function(e){return e.tagName===`CANVAS`},Ms=function(e){return e.tagName===`VIDEO`},Ns=function(e){return e.tagName===`IMG`},Ps=function(e){return e.tagName===`IFRAME`},Fs=function(e){return e.tagName===`STYLE`},Is=function(e){return e.tagName===`SCRIPT`},Ls=function(e){return e.tagName===`TEXTAREA`},Rs=function(e){return e.tagName===`SELECT`},zs=function(e){return e.tagName===`SLOT`},Bs=function(e){return e.tagName.indexOf(`-`)>0},Vs=function(){function e(){this.counters={}}return e.prototype.getCounterValue=function(e){var t=this.counters[e];return t&&t.length?t[t.length-1]:1},e.prototype.getCounterValues=function(e){return this.counters[e]||[]},e.prototype.pop=function(e){var t=this;e.forEach(function(e){return t.counters[e].pop()})},e.prototype.parse=function(e){var t=this,n=e.counterIncrement,r=e.counterReset,i=!0;n!==null&&n.forEach(function(e){var n=t.counters[e.counter];n&&e.increment!==0&&(i=!1,n.length||n.push(1),n[Math.max(0,n.length-1)]+=e.increment)});var a=[];return i&&r.forEach(function(e){var n=t.counters[e.counter];a.push(e.counter),n||=t.counters[e.counter]=[],n.push(e.reset)}),a},e}(),Hs={integers:[1e3,900,500,400,100,90,50,40,10,9,5,4,1],values:[`M`,`CM`,`D`,`CD`,`C`,`XC`,`L`,`XL`,`X`,`IX`,`V`,`IV`,`I`]},Us={integers:[9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:`Ք.Փ.Ւ.Ց.Ր.Տ.Վ.Ս.Ռ.Ջ.Պ.Չ.Ո.Շ.Ն.Յ.Մ.Ճ.Ղ.Ձ.Հ.Կ.Ծ.Խ.Լ.Ի.Ժ.Թ.Ը.Է.Զ.Ե.Դ.Գ.Բ.Ա`.split(`.`)},Ws={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,400,300,200,100,90,80,70,60,50,40,30,20,19,18,17,16,15,10,9,8,7,6,5,4,3,2,1],values:`י׳.ט׳.ח׳.ז׳.ו׳.ה׳.ד׳.ג׳.ב׳.א׳.ת.ש.ר.ק.צ.פ.ע.ס.נ.מ.ל.כ.יט.יח.יז.טז.טו.י.ט.ח.ז.ו.ה.ד.ג.ב.א`.split(`.`)},Gs={integers:[1e4,9e3,8e3,7e3,6e3,5e3,4e3,3e3,2e3,1e3,900,800,700,600,500,400,300,200,100,90,80,70,60,50,40,30,20,10,9,8,7,6,5,4,3,2,1],values:`ჵ.ჰ.ჯ.ჴ.ხ.ჭ.წ.ძ.ც.ჩ.შ.ყ.ღ.ქ.ფ.ჳ.ტ.ს.რ.ჟ.პ.ო.ჲ.ნ.მ.ლ.კ.ი.თ.ჱ.ზ.ვ.ე.დ.გ.ბ.ა`.split(`.`)},Ks=function(e,t,n,r,i,a){return e<t||e>n?ac(e,i,a.length>0):r.integers.reduce(function(t,n,i){for(;e>=n;)e-=n,t+=r.values[i];return t},``)+a},qs=function(e,t,n,r){var i=``;do n||e--,i=r(e)+i,e/=t;while(e*t>=t);return i},Js=function(e,t,n,r,i){var a=n-t+1;return(e<0?`-`:``)+(qs(Math.abs(e),a,r,function(e){return u(Math.floor(e%a)+t)})+i)},Ys=function(e,t,n){n===void 0&&(n=`. `);var r=t.length;return qs(Math.abs(e),r,!1,function(e){return t[Math.floor(e%r)]})+n},Xs=1,Zs=2,Qs=4,$s=8,ec=function(e,t,n,r,i,a){if(e<-9999||e>9999)return ac(e,4,i.length>0);var o=Math.abs(e),s=i;if(o===0)return t[0]+s;for(var c=0;o>0&&c<=4;c++){var l=o%10;l===0&&xa(a,Xs)&&s!==``?s=t[l]+s:l>1||l===1&&c===0||l===1&&c===1&&xa(a,Zs)||l===1&&c===1&&xa(a,Qs)&&e>100||l===1&&c>1&&xa(a,$s)?s=t[l]+(c>0?n[c-1]:``)+s:l===1&&c>0&&(s=n[c-1]+s),o=Math.floor(o/10)}return(e<0?r:``)+s},tc=`十百千萬`,nc=`拾佰仟萬`,rc=`マイナス`,ic=`마이너스`,ac=function(e,t,n){var r=n?`. `:``,i=n?`、`:``,a=n?`, `:``,o=n?` `:``;switch(t){case 0:return`•`+o;case 1:return`◦`+o;case 2:return`◾`+o;case 5:var s=Js(e,48,57,!0,r);return s.length<4?`0`+s:s;case 4:return Ys(e,`〇一二三四五六七八九`,i);case 6:return Ks(e,1,3999,Hs,3,r).toLowerCase();case 7:return Ks(e,1,3999,Hs,3,r);case 8:return Js(e,945,969,!1,r);case 9:return Js(e,97,122,!1,r);case 10:return Js(e,65,90,!1,r);case 11:return Js(e,1632,1641,!0,r);case 12:case 49:return Ks(e,1,9999,Us,3,r);case 35:return Ks(e,1,9999,Us,3,r).toLowerCase();case 13:return Js(e,2534,2543,!0,r);case 14:case 30:return Js(e,6112,6121,!0,r);case 15:return Ys(e,`子丑寅卯辰巳午未申酉戌亥`,i);case 16:return Ys(e,`甲乙丙丁戊己庚辛壬癸`,i);case 17:case 48:return ec(e,`零一二三四五六七八九`,tc,`負`,i,Zs|Qs|$s);case 47:return ec(e,`零壹貳參肆伍陸柒捌玖`,nc,`負`,i,Xs|Zs|Qs|$s);case 42:return ec(e,`零一二三四五六七八九`,tc,`负`,i,Zs|Qs|$s);case 41:return ec(e,`零壹贰叁肆伍陆柒捌玖`,nc,`负`,i,Xs|Zs|Qs|$s);case 26:return ec(e,`〇一二三四五六七八九`,`十百千万`,rc,i,0);case 25:return ec(e,`零壱弐参四伍六七八九`,`拾百千万`,rc,i,Xs|Zs|Qs);case 31:return ec(e,`영일이삼사오육칠팔구`,`십백천만`,ic,a,Xs|Zs|Qs);case 33:return ec(e,`零一二三四五六七八九`,`十百千萬`,ic,a,0);case 32:return ec(e,`零壹貳參四五六七八九`,`拾百千`,ic,a,Xs|Zs|Qs);case 18:return Js(e,2406,2415,!0,r);case 20:return Ks(e,1,19999,Gs,3,r);case 21:return Js(e,2790,2799,!0,r);case 22:return Js(e,2662,2671,!0,r);case 22:return Ks(e,1,10999,Ws,3,r);case 23:return Ys(e,`あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん`);case 24:return Ys(e,`いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす`);case 27:return Js(e,3302,3311,!0,r);case 28:return Ys(e,`アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヰヱヲン`,i);case 29:return Ys(e,`イロハニホヘトチリヌルヲワカヨタレソツネナラムウヰノオクヤマケフコエテアサキユメミシヱヒモセス`,i);case 34:return Js(e,3792,3801,!0,r);case 37:return Js(e,6160,6169,!0,r);case 38:return Js(e,4160,4169,!0,r);case 39:return Js(e,2918,2927,!0,r);case 40:return Js(e,1776,1785,!0,r);case 43:return Js(e,3046,3055,!0,r);case 44:return Js(e,3174,3183,!0,r);case 45:return Js(e,3664,3673,!0,r);case 46:return Js(e,3872,3881,!0,r);default:return Js(e,48,57,!0,r)}},oc=`data-html2canvas-ignore`,sc=function(){function e(e,t,n){if(this.context=e,this.options=n,this.scrolledElements=[],this.referenceElement=t,this.counters=new Vs,this.quoteDepth=0,!t.ownerDocument)throw Error(`Cloned element does not have an owner document`);this.documentElement=this.cloneNode(t.ownerDocument.documentElement,!1)}return e.prototype.toIFrame=function(e,t){var n=this,a=lc(e,t);if(!a.contentWindow)return Promise.reject(`Unable to find iframe window`);var o=e.defaultView.pageXOffset,s=e.defaultView.pageYOffset,c=a.contentWindow,l=c.document,u=fc(a).then(function(){return r(n,void 0,void 0,function(){var e,n;return i(this,function(r){switch(r.label){case 0:return this.scrolledElements.forEach(_c),c&&(c.scrollTo(t.left,t.top),/(iPad|iPhone|iPod)/g.test(navigator.userAgent)&&(c.scrollY!==t.top||c.scrollX!==t.left)&&(this.context.logger.warn(`Unable to restore scroll position for cloned document`),this.context.windowBounds=this.context.windowBounds.add(c.scrollX-t.left,c.scrollY-t.top,0,0))),e=this.options.onclone,n=this.clonedReferenceElement,n===void 0?[2,Promise.reject(`Error finding the `+this.referenceElement.nodeName+` in the cloned document`)]:l.fonts&&l.fonts.ready?[4,l.fonts.ready]:[3,2];case 1:r.sent(),r.label=2;case 2:return/(AppleWebKit)/g.test(navigator.userAgent)?[4,dc(l)]:[3,4];case 3:r.sent(),r.label=4;case 4:return typeof e==`function`?[2,Promise.resolve().then(function(){return e(l,n)}).then(function(){return a})]:[2,a]}})})});return l.open(),l.write(hc(document.doctype)+`<html></html>`),gc(this.referenceElement.ownerDocument,o,s),l.replaceChild(l.adoptNode(this.documentElement),l.documentElement),l.close(),u},e.prototype.createElementClone=function(e){if(Fa(e,2))debugger;if(js(e))return this.createCanvasClone(e);if(Ms(e))return this.createVideoClone(e);if(Fs(e))return this.createStyleClone(e);var t=e.cloneNode(!1);return Ns(t)&&(Ns(e)&&e.currentSrc&&e.currentSrc!==e.src&&(t.src=e.currentSrc,t.srcset=``),t.loading===`lazy`&&(t.loading=`eager`)),Bs(t)?this.createCustomElementClone(t):t},e.prototype.createCustomElementClone=function(e){var t=document.createElement(`html2canvascustomelement`);return mc(e.style,t),t},e.prototype.createStyleClone=function(e){try{var t=e.sheet;if(t&&t.cssRules){var n=[].slice.call(t.cssRules,0).reduce(function(e,t){return t&&typeof t.cssText==`string`?e+t.cssText:e},``),r=e.cloneNode(!1);return r.textContent=n,r}}catch(e){if(this.context.logger.error(`Unable to access cssRules property`,e),e.name!==`SecurityError`)throw e}return e.cloneNode(!1)},e.prototype.createCanvasClone=function(e){if(this.options.inlineImages&&e.ownerDocument){var t=e.ownerDocument.createElement(`img`);try{return t.src=e.toDataURL(),t}catch{this.context.logger.info(`Unable to inline canvas contents, canvas is tainted`,e)}}var n=e.cloneNode(!1);try{n.width=e.width,n.height=e.height;var r=e.getContext(`2d`),i=n.getContext(`2d`);if(i)if(!this.options.allowTaint&&r)i.putImageData(r.getImageData(0,0,e.width,e.height),0,0);else{var a=e.getContext(`webgl2`)??e.getContext(`webgl`);a&&a.getContextAttributes()?.preserveDrawingBuffer===!1&&this.context.logger.warn(`Unable to clone WebGL context as it has preserveDrawingBuffer=false`,e),i.drawImage(e,0,0)}return n}catch{this.context.logger.info(`Unable to clone canvas as it is tainted`,e)}return n},e.prototype.createVideoClone=function(e){var t=e.ownerDocument.createElement(`canvas`);t.width=e.offsetWidth,t.height=e.offsetHeight;var n=t.getContext(`2d`);try{return n&&(n.drawImage(e,0,0,t.width,t.height),this.options.allowTaint||n.getImageData(0,0,t.width,t.height)),t}catch{this.context.logger.info(`Unable to clone video as it is tainted`,e)}var r=e.ownerDocument.createElement(`canvas`);return r.width=e.offsetWidth,r.height=e.offsetHeight,r},e.prototype.appendChildNode=function(e,t,n){(!Ss(t)||!Is(t)&&!t.hasAttribute(oc)&&(typeof this.options.ignoreElements!=`function`||!this.options.ignoreElements(t)))&&(!this.options.copyStyles||!Ss(t)||!Fs(t))&&e.appendChild(this.cloneNode(t,n))},e.prototype.cloneChildNodes=function(e,t,n){for(var r=this,i=e.shadowRoot?e.shadowRoot.firstChild:e.firstChild;i;i=i.nextSibling)if(Ss(i)&&zs(i)&&typeof i.assignedNodes==`function`){var a=i.assignedNodes();a.length&&a.forEach(function(e){return r.appendChildNode(t,e,n)})}else this.appendChildNode(t,i,n)},e.prototype.cloneNode=function(e,t){if(xs(e))return document.createTextNode(e.data);if(!e.ownerDocument)return e.cloneNode(!1);var n=e.ownerDocument.defaultView;if(n&&Ss(e)&&(Cs(e)||ws(e))){var r=this.createElementClone(e);r.style.transitionProperty=`none`;var i=n.getComputedStyle(e),a=n.getComputedStyle(e,`:before`),o=n.getComputedStyle(e,`:after`);this.referenceElement===e&&Cs(r)&&(this.clonedReferenceElement=r),As(r)&&K(r);var s=this.counters.parse(new Ma(this.context,i)),c=this.resolvePseudoContent(e,r,a,cc.BEFORE);Bs(e)&&(t=!0),Ms(e)||this.cloneChildNodes(e,r,t),c&&r.insertBefore(c,r.firstChild);var l=this.resolvePseudoContent(e,r,o,cc.AFTER);return l&&r.appendChild(l),this.counters.pop(s),(i&&(this.options.copyStyles||ws(e))&&!Ps(e)||t)&&mc(i,r),(e.scrollTop!==0||e.scrollLeft!==0)&&this.scrolledElements.push([r,e.scrollLeft,e.scrollTop]),(Ls(e)||Rs(e))&&(Ls(r)||Rs(r))&&(r.value=e.value),r}return e.cloneNode(!1)},e.prototype.resolvePseudoContent=function(e,t,n,r){var i=this;if(n){var a=n.content,o=t.ownerDocument;if(!(!o||!a||a===`none`||a===`-moz-alt-content`||n.display===`none`)){this.counters.parse(new Ma(this.context,n));var s=new U(this.context,n),c=o.createElement(`html2canvaspseudoelement`);mc(n,c),s.content.forEach(function(t){if(t.type===0)c.appendChild(o.createTextNode(t.value));else if(t.type===22){var n=o.createElement(`img`);n.src=t.value,n.style.opacity=`1`,c.appendChild(n)}else if(t.type===18){if(t.name===`attr`){var r=t.values.filter(Yn);r.length&&c.appendChild(o.createTextNode(e.getAttribute(r[0].value)||``))}else if(t.name===`counter`){var a=t.values.filter($n),l=a[0],u=a[1];if(l&&Yn(l)){var d=i.counters.getCounterValue(l.value),f=u&&Yn(u)?Bi.parse(i.context,u.value):3;c.appendChild(o.createTextNode(ac(d,f,!1)))}}else if(t.name===`counters`){var p=t.values.filter($n),l=p[0],m=p[1],u=p[2];if(l&&Yn(l)){var h=i.counters.getCounterValues(l.value),g=u&&Yn(u)?Bi.parse(i.context,u.value):3,_=m&&m.type===0?m.value:``,v=h.map(function(e){return ac(e,g,!1)}).join(_);c.appendChild(o.createTextNode(v))}}}else if(t.type===20)switch(t.value){case`open-quote`:c.appendChild(o.createTextNode(Da(s.quotes,i.quoteDepth++,!0)));break;case`close-quote`:c.appendChild(o.createTextNode(Da(s.quotes,--i.quoteDepth,!1)));break;default:c.appendChild(o.createTextNode(t.value))}}),c.className=bc+` `+xc;var l=r===cc.BEFORE?` `+bc:` `+xc;return ws(t)?t.className.baseValue+=l:t.className+=l,c}}},e.destroy=function(e){return e.parentNode?(e.parentNode.removeChild(e),!0):!1},e}(),cc;(function(e){e[e.BEFORE=0]=`BEFORE`,e[e.AFTER=1]=`AFTER`})(cc||={});var lc=function(e,t){var n=e.createElement(`iframe`);return n.className=`html2canvas-container`,n.style.visibility=`hidden`,n.style.position=`fixed`,n.style.left=`-10000px`,n.style.top=`0px`,n.style.border=`0`,n.width=t.width.toString(),n.height=t.height.toString(),n.scrolling=`no`,n.setAttribute(oc,`true`),e.body.appendChild(n),n},uc=function(e){return new Promise(function(t){if(e.complete){t();return}if(!e.src){t();return}e.onload=t,e.onerror=t})},dc=function(e){return Promise.all([].slice.call(e.images,0).map(uc))},fc=function(e){return new Promise(function(t,n){var r=e.contentWindow;if(!r)return n(`No window assigned for iframe`);var i=r.document;r.onload=e.onload=function(){r.onload=e.onload=null;var n=setInterval(function(){i.body.childNodes.length>0&&i.readyState===`complete`&&(clearInterval(n),t(e))},50)}})},pc=[`all`,`d`,`content`],mc=function(e,t){for(var n=e.length-1;n>=0;n--){var r=e.item(n);pc.indexOf(r)===-1&&t.style.setProperty(r,e.getPropertyValue(r))}return t},hc=function(e){var t=``;return e&&(t+=`<!DOCTYPE `,e.name&&(t+=e.name),e.internalSubset&&(t+=e.internalSubset),e.publicId&&(t+=`"`+e.publicId+`"`),e.systemId&&(t+=`"`+e.systemId+`"`),t+=`>`),t},gc=function(e,t,n){e&&e.defaultView&&(t!==e.defaultView.pageXOffset||n!==e.defaultView.pageYOffset)&&e.defaultView.scrollTo(t,n)},_c=function(e){var t=e[0],n=e[1],r=e[2];t.scrollLeft=n,t.scrollTop=r},vc=`:before`,yc=`:after`,bc=`___html2canvas___pseudoelement_before`,xc=`___html2canvas___pseudoelement_after`,Sc=`{
|
|
9
|
+
content: "" !important;
|
|
10
|
+
display: none !important;
|
|
11
|
+
}`,K=function(e){Cc(e,`.`+bc+vc+Sc+`
|
|
12
|
+
.`+xc+yc+Sc)},Cc=function(e,t){var n=e.ownerDocument;if(n){var r=n.createElement(`style`);r.textContent=t,e.appendChild(r)}},wc=function(){function e(){}return e.getOrigin=function(t){var n=e._link;return n?(n.href=t,n.href=n.href,n.protocol+n.hostname+n.port):`about:blank`},e.isSameOrigin=function(t){return e.getOrigin(t)===e._origin},e.setContext=function(t){e._link=t.document.createElement(`a`),e._origin=e.getOrigin(t.location.href)},e._origin=`about:blank`,e}(),Tc=function(){function e(e,t){this.context=e,this._options=t,this._cache={}}return e.prototype.addImage=function(e){var t=Promise.resolve();return this.has(e)||(Mc(e)||kc(e))&&(this._cache[e]=this.loadImage(e)).catch(function(){}),t},e.prototype.match=function(e){return this._cache[e]},e.prototype.loadImage=function(e){return r(this,void 0,void 0,function(){var t,n,r,a,o=this;return i(this,function(i){switch(i.label){case 0:return t=wc.isSameOrigin(e),n=!Ac(e)&&this._options.useCORS===!0&&zo.SUPPORT_CORS_IMAGES&&!t,r=!Ac(e)&&!t&&!Mc(e)&&typeof this._options.proxy==`string`&&zo.SUPPORT_CORS_XHR&&!n,!t&&this._options.allowTaint===!1&&!Ac(e)&&!Mc(e)&&!r&&!n?[2]:(a=e,r?[4,this.proxy(a)]:[3,2]);case 1:a=i.sent(),i.label=2;case 2:return this.context.logger.debug(`Added image `+e.substring(0,256)),[4,new Promise(function(e,t){var r=new Image;r.onload=function(){return e(r)},r.onerror=t,(jc(a)||n)&&(r.crossOrigin=`anonymous`),r.src=a,r.complete===!0&&setTimeout(function(){return e(r)},500),o._options.imageTimeout>0&&setTimeout(function(){return t(`Timed out (`+o._options.imageTimeout+`ms) loading image`)},o._options.imageTimeout)})];case 3:return[2,i.sent()]}})})},e.prototype.has=function(e){return this._cache[e]!==void 0},e.prototype.keys=function(){return Promise.resolve(Object.keys(this._cache))},e.prototype.proxy=function(e){var t=this,n=this._options.proxy;if(!n)throw Error(`No proxy defined`);var r=e.substring(0,256);return new Promise(function(i,a){var o=zo.SUPPORT_RESPONSE_TYPE?`blob`:`text`,s=new XMLHttpRequest;s.onload=function(){if(s.status===200)if(o===`text`)i(s.response);else{var e=new FileReader;e.addEventListener(`load`,function(){return i(e.result)},!1),e.addEventListener(`error`,function(e){return a(e)},!1),e.readAsDataURL(s.response)}else a(`Failed to proxy resource `+r+` with status code `+s.status)},s.onerror=a;var c=n.indexOf(`?`)>-1?`&`:`?`;if(s.open(`GET`,``+n+c+`url=`+encodeURIComponent(e)+`&responseType=`+o),o!==`text`&&s instanceof XMLHttpRequest&&(s.responseType=o),t._options.imageTimeout){var l=t._options.imageTimeout;s.timeout=l,s.ontimeout=function(){return a(`Timed out (`+l+`ms) proxying `+r)}}s.send()})},e}(),Ec=/^data:image\/svg\+xml/i,Dc=/^data:image\/.*;base64,/i,Oc=/^data:image\/.*/i,kc=function(e){return zo.SUPPORT_SVG_DRAWING||!Nc(e)},Ac=function(e){return Oc.test(e)},jc=function(e){return Dc.test(e)},Mc=function(e){return e.substr(0,4)===`blob`},Nc=function(e){return e.substr(-3).toLowerCase()===`svg`||Ec.test(e)},q=function(){function e(e,t){this.type=0,this.x=e,this.y=t}return e.prototype.add=function(t,n){return new e(this.x+t,this.y+n)},e}(),Pc=function(e,t,n){return new q(e.x+(t.x-e.x)*n,e.y+(t.y-e.y)*n)},Fc=function(){function e(e,t,n,r){this.type=1,this.start=e,this.startControl=t,this.endControl=n,this.end=r}return e.prototype.subdivide=function(t,n){var r=Pc(this.start,this.startControl,t),i=Pc(this.startControl,this.endControl,t),a=Pc(this.endControl,this.end,t),o=Pc(r,i,t),s=Pc(i,a,t),c=Pc(o,s,t);return n?new e(this.start,r,o,c):new e(c,s,a,this.end)},e.prototype.add=function(t,n){return new e(this.start.add(t,n),this.startControl.add(t,n),this.endControl.add(t,n),this.end.add(t,n))},e.prototype.reverse=function(){return new e(this.end,this.endControl,this.startControl,this.start)},e}(),Ic=function(e){return e.type===1},Lc=function(){function e(e){var t=e.styles,n=e.bounds,r=cr(t.borderTopLeftRadius,n.width,n.height),i=r[0],a=r[1],o=cr(t.borderTopRightRadius,n.width,n.height),s=o[0],c=o[1],l=cr(t.borderBottomRightRadius,n.width,n.height),u=l[0],d=l[1],f=cr(t.borderBottomLeftRadius,n.width,n.height),p=f[0],m=f[1],h=[];h.push((i+s)/n.width),h.push((p+u)/n.width),h.push((a+m)/n.height),h.push((c+d)/n.height);var g=Math.max.apply(Math,h);g>1&&(i/=g,a/=g,s/=g,c/=g,u/=g,d/=g,p/=g,m/=g);var _=n.width-s,v=n.height-d,y=n.width-u,b=n.height-m,x=t.borderTopWidth,S=t.borderRightWidth,C=t.borderBottomWidth,w=t.borderLeftWidth,T=lr(t.paddingTop,e.bounds.width),E=lr(t.paddingRight,e.bounds.width),D=lr(t.paddingBottom,e.bounds.width),O=lr(t.paddingLeft,e.bounds.width);this.topLeftBorderDoubleOuterBox=i>0||a>0?zc(n.left+w/3,n.top+x/3,i-w/3,a-x/3,Rc.TOP_LEFT):new q(n.left+w/3,n.top+x/3),this.topRightBorderDoubleOuterBox=i>0||a>0?zc(n.left+_,n.top+x/3,s-S/3,c-x/3,Rc.TOP_RIGHT):new q(n.left+n.width-S/3,n.top+x/3),this.bottomRightBorderDoubleOuterBox=u>0||d>0?zc(n.left+y,n.top+v,u-S/3,d-C/3,Rc.BOTTOM_RIGHT):new q(n.left+n.width-S/3,n.top+n.height-C/3),this.bottomLeftBorderDoubleOuterBox=p>0||m>0?zc(n.left+w/3,n.top+b,p-w/3,m-C/3,Rc.BOTTOM_LEFT):new q(n.left+w/3,n.top+n.height-C/3),this.topLeftBorderDoubleInnerBox=i>0||a>0?zc(n.left+w*2/3,n.top+x*2/3,i-w*2/3,a-x*2/3,Rc.TOP_LEFT):new q(n.left+w*2/3,n.top+x*2/3),this.topRightBorderDoubleInnerBox=i>0||a>0?zc(n.left+_,n.top+x*2/3,s-S*2/3,c-x*2/3,Rc.TOP_RIGHT):new q(n.left+n.width-S*2/3,n.top+x*2/3),this.bottomRightBorderDoubleInnerBox=u>0||d>0?zc(n.left+y,n.top+v,u-S*2/3,d-C*2/3,Rc.BOTTOM_RIGHT):new q(n.left+n.width-S*2/3,n.top+n.height-C*2/3),this.bottomLeftBorderDoubleInnerBox=p>0||m>0?zc(n.left+w*2/3,n.top+b,p-w*2/3,m-C*2/3,Rc.BOTTOM_LEFT):new q(n.left+w*2/3,n.top+n.height-C*2/3),this.topLeftBorderStroke=i>0||a>0?zc(n.left+w/2,n.top+x/2,i-w/2,a-x/2,Rc.TOP_LEFT):new q(n.left+w/2,n.top+x/2),this.topRightBorderStroke=i>0||a>0?zc(n.left+_,n.top+x/2,s-S/2,c-x/2,Rc.TOP_RIGHT):new q(n.left+n.width-S/2,n.top+x/2),this.bottomRightBorderStroke=u>0||d>0?zc(n.left+y,n.top+v,u-S/2,d-C/2,Rc.BOTTOM_RIGHT):new q(n.left+n.width-S/2,n.top+n.height-C/2),this.bottomLeftBorderStroke=p>0||m>0?zc(n.left+w/2,n.top+b,p-w/2,m-C/2,Rc.BOTTOM_LEFT):new q(n.left+w/2,n.top+n.height-C/2),this.topLeftBorderBox=i>0||a>0?zc(n.left,n.top,i,a,Rc.TOP_LEFT):new q(n.left,n.top),this.topRightBorderBox=s>0||c>0?zc(n.left+_,n.top,s,c,Rc.TOP_RIGHT):new q(n.left+n.width,n.top),this.bottomRightBorderBox=u>0||d>0?zc(n.left+y,n.top+v,u,d,Rc.BOTTOM_RIGHT):new q(n.left+n.width,n.top+n.height),this.bottomLeftBorderBox=p>0||m>0?zc(n.left,n.top+b,p,m,Rc.BOTTOM_LEFT):new q(n.left,n.top+n.height),this.topLeftPaddingBox=i>0||a>0?zc(n.left+w,n.top+x,Math.max(0,i-w),Math.max(0,a-x),Rc.TOP_LEFT):new q(n.left+w,n.top+x),this.topRightPaddingBox=s>0||c>0?zc(n.left+Math.min(_,n.width-S),n.top+x,_>n.width+S?0:Math.max(0,s-S),Math.max(0,c-x),Rc.TOP_RIGHT):new q(n.left+n.width-S,n.top+x),this.bottomRightPaddingBox=u>0||d>0?zc(n.left+Math.min(y,n.width-w),n.top+Math.min(v,n.height-C),Math.max(0,u-S),Math.max(0,d-C),Rc.BOTTOM_RIGHT):new q(n.left+n.width-S,n.top+n.height-C),this.bottomLeftPaddingBox=p>0||m>0?zc(n.left+w,n.top+Math.min(b,n.height-C),Math.max(0,p-w),Math.max(0,m-C),Rc.BOTTOM_LEFT):new q(n.left+w,n.top+n.height-C),this.topLeftContentBox=i>0||a>0?zc(n.left+w+O,n.top+x+T,Math.max(0,i-(w+O)),Math.max(0,a-(x+T)),Rc.TOP_LEFT):new q(n.left+w+O,n.top+x+T),this.topRightContentBox=s>0||c>0?zc(n.left+Math.min(_,n.width+w+O),n.top+x+T,_>n.width+w+O?0:s-w+O,c-(x+T),Rc.TOP_RIGHT):new q(n.left+n.width-(S+E),n.top+x+T),this.bottomRightContentBox=u>0||d>0?zc(n.left+Math.min(y,n.width-(w+O)),n.top+Math.min(v,n.height+x+T),Math.max(0,u-(S+E)),d-(C+D),Rc.BOTTOM_RIGHT):new q(n.left+n.width-(S+E),n.top+n.height-(C+D)),this.bottomLeftContentBox=p>0||m>0?zc(n.left+w+O,n.top+b,Math.max(0,p-(w+O)),m-(C+D),Rc.BOTTOM_LEFT):new q(n.left+w+O,n.top+n.height-(C+D))}return e}(),Rc;(function(e){e[e.TOP_LEFT=0]=`TOP_LEFT`,e[e.TOP_RIGHT=1]=`TOP_RIGHT`,e[e.BOTTOM_RIGHT=2]=`BOTTOM_RIGHT`,e[e.BOTTOM_LEFT=3]=`BOTTOM_LEFT`})(Rc||={});var zc=function(e,t,n,r,i){var a=4*((Math.sqrt(2)-1)/3),o=n*a,s=r*a,c=e+n,l=t+r;switch(i){case Rc.TOP_LEFT:return new Fc(new q(e,l),new q(e,l-s),new q(c-o,t),new q(c,t));case Rc.TOP_RIGHT:return new Fc(new q(e,t),new q(e+o,t),new q(c,l-s),new q(c,l));case Rc.BOTTOM_RIGHT:return new Fc(new q(c,t),new q(c,t+s),new q(e+o,l),new q(e,l));case Rc.BOTTOM_LEFT:default:return new Fc(new q(c,l),new q(c-o,l),new q(e,t+s),new q(e,t))}},Bc=function(e){return[e.topLeftBorderBox,e.topRightBorderBox,e.bottomRightBorderBox,e.bottomLeftBorderBox]},Vc=function(e){return[e.topLeftContentBox,e.topRightContentBox,e.bottomRightContentBox,e.bottomLeftContentBox]},Hc=function(e){return[e.topLeftPaddingBox,e.topRightPaddingBox,e.bottomRightPaddingBox,e.bottomLeftPaddingBox]},Uc=function(){function e(e,t,n){this.offsetX=e,this.offsetY=t,this.matrix=n,this.type=0,this.target=6}return e}(),Wc=function(){function e(e,t){this.path=e,this.target=t,this.type=1}return e}(),Gc=function(){function e(e){this.opacity=e,this.type=2,this.target=6}return e}(),Kc=function(e){return e.type===0},qc=function(e){return e.type===1},Jc=function(e){return e.type===2},Yc=function(e,t){return e.length===t.length?e.some(function(e,n){return e===t[n]}):!1},Xc=function(e,t,n,r,i){return e.map(function(e,a){switch(a){case 0:return e.add(t,n);case 1:return e.add(t+r,n);case 2:return e.add(t+r,n+i);case 3:return e.add(t,n+i)}return e})},Zc=function(){function e(e){this.element=e,this.inlineLevel=[],this.nonInlineLevel=[],this.negativeZIndex=[],this.zeroOrAutoZIndexOrTransformedOrOpacity=[],this.positiveZIndex=[],this.nonPositionedFloats=[],this.nonPositionedInlineLevel=[]}return e}(),Qc=function(){function e(e,t){if(this.container=e,this.parent=t,this.effects=[],this.curves=new Lc(this.container),this.container.styles.opacity<1&&this.effects.push(new Gc(this.container.styles.opacity)),this.container.styles.transform!==null){var n=this.container.bounds.left+this.container.styles.transformOrigin[0].number,r=this.container.bounds.top+this.container.styles.transformOrigin[1].number,i=this.container.styles.transform;this.effects.push(new Uc(n,r,i))}if(this.container.styles.overflowX!==0){var a=Bc(this.curves),o=Hc(this.curves);Yc(a,o)?this.effects.push(new Wc(a,6)):(this.effects.push(new Wc(a,2)),this.effects.push(new Wc(o,4)))}}return e.prototype.getEffects=function(e){for(var t=[2,3].indexOf(this.container.styles.position)===-1,n=this.parent,r=this.effects.slice(0);n;){var i=n.effects.filter(function(e){return!qc(e)});if(t||n.container.styles.position!==0||!n.parent){if(r.unshift.apply(r,i),t=[2,3].indexOf(n.container.styles.position)===-1,n.container.styles.overflowX!==0){var a=Bc(n.curves),o=Hc(n.curves);Yc(a,o)||r.unshift(new Wc(o,6))}}else r.unshift.apply(r,i);n=n.parent}return r.filter(function(t){return xa(t.target,e)})},e}(),$c=function(e,t,n,r){e.container.elements.forEach(function(i){var a=xa(i.flags,4),o=xa(i.flags,2),s=new Qc(i,e);xa(i.styles.display,2048)&&r.push(s);var c=xa(i.flags,8)?[]:r;if(a||o){var l=a||i.styles.isPositioned()?n:t,u=new Zc(s);if(i.styles.isPositioned()||i.styles.opacity<1||i.styles.isTransformed()){var d=i.styles.zIndex.order;if(d<0){var f=0;l.negativeZIndex.some(function(e,t){return d>e.element.container.styles.zIndex.order?(f=t,!1):f>0}),l.negativeZIndex.splice(f,0,u)}else if(d>0){var p=0;l.positiveZIndex.some(function(e,t){return d>=e.element.container.styles.zIndex.order?(p=t+1,!1):p>0}),l.positiveZIndex.splice(p,0,u)}else l.zeroOrAutoZIndexOrTransformedOrOpacity.push(u)}else i.styles.isFloating()?l.nonPositionedFloats.push(u):l.nonPositionedInlineLevel.push(u);$c(s,u,a?u:n,c)}else i.styles.isInlineLevel()?t.inlineLevel.push(s):t.nonInlineLevel.push(s),$c(s,t,n,c);xa(i.flags,8)&&el(i,c)})},el=function(e,t){for(var n=e instanceof rs?e.start:1,r=e instanceof rs?e.reversed:!1,i=0;i<t.length;i++){var a=t[i];a.container instanceof ns&&typeof a.container.value==`number`&&a.container.value!==0&&(n=a.container.value),a.listValue=ac(n,a.container.styles.listStyleType,!0),n+=r?-1:1}},tl=function(e){var t=new Qc(e,null),n=new Zc(t),r=[];return $c(t,n,n,r),el(t.container,r),n},nl=function(e,t){switch(t){case 0:return sl(e.topLeftBorderBox,e.topLeftPaddingBox,e.topRightBorderBox,e.topRightPaddingBox);case 1:return sl(e.topRightBorderBox,e.topRightPaddingBox,e.bottomRightBorderBox,e.bottomRightPaddingBox);case 2:return sl(e.bottomRightBorderBox,e.bottomRightPaddingBox,e.bottomLeftBorderBox,e.bottomLeftPaddingBox);default:return sl(e.bottomLeftBorderBox,e.bottomLeftPaddingBox,e.topLeftBorderBox,e.topLeftPaddingBox)}},rl=function(e,t){switch(t){case 0:return sl(e.topLeftBorderBox,e.topLeftBorderDoubleOuterBox,e.topRightBorderBox,e.topRightBorderDoubleOuterBox);case 1:return sl(e.topRightBorderBox,e.topRightBorderDoubleOuterBox,e.bottomRightBorderBox,e.bottomRightBorderDoubleOuterBox);case 2:return sl(e.bottomRightBorderBox,e.bottomRightBorderDoubleOuterBox,e.bottomLeftBorderBox,e.bottomLeftBorderDoubleOuterBox);default:return sl(e.bottomLeftBorderBox,e.bottomLeftBorderDoubleOuterBox,e.topLeftBorderBox,e.topLeftBorderDoubleOuterBox)}},il=function(e,t){switch(t){case 0:return sl(e.topLeftBorderDoubleInnerBox,e.topLeftPaddingBox,e.topRightBorderDoubleInnerBox,e.topRightPaddingBox);case 1:return sl(e.topRightBorderDoubleInnerBox,e.topRightPaddingBox,e.bottomRightBorderDoubleInnerBox,e.bottomRightPaddingBox);case 2:return sl(e.bottomRightBorderDoubleInnerBox,e.bottomRightPaddingBox,e.bottomLeftBorderDoubleInnerBox,e.bottomLeftPaddingBox);default:return sl(e.bottomLeftBorderDoubleInnerBox,e.bottomLeftPaddingBox,e.topLeftBorderDoubleInnerBox,e.topLeftPaddingBox)}},al=function(e,t){switch(t){case 0:return ol(e.topLeftBorderStroke,e.topRightBorderStroke);case 1:return ol(e.topRightBorderStroke,e.bottomRightBorderStroke);case 2:return ol(e.bottomRightBorderStroke,e.bottomLeftBorderStroke);default:return ol(e.bottomLeftBorderStroke,e.topLeftBorderStroke)}},ol=function(e,t){var n=[];return Ic(e)?n.push(e.subdivide(.5,!1)):n.push(e),Ic(t)?n.push(t.subdivide(.5,!0)):n.push(t),n},sl=function(e,t,n,r){var i=[];return Ic(e)?i.push(e.subdivide(.5,!1)):i.push(e),Ic(n)?i.push(n.subdivide(.5,!0)):i.push(n),Ic(r)?i.push(r.subdivide(.5,!0).reverse()):i.push(r),Ic(t)?i.push(t.subdivide(.5,!1).reverse()):i.push(t),i},J=function(e){var t=e.bounds,n=e.styles;return t.add(n.borderLeftWidth,n.borderTopWidth,-(n.borderRightWidth+n.borderLeftWidth),-(n.borderTopWidth+n.borderBottomWidth))},cl=function(e){var t=e.styles,n=e.bounds,r=lr(t.paddingLeft,n.width),i=lr(t.paddingRight,n.width),a=lr(t.paddingTop,n.width),o=lr(t.paddingBottom,n.width);return n.add(r+t.borderLeftWidth,a+t.borderTopWidth,-(t.borderRightWidth+t.borderLeftWidth+r+i),-(t.borderTopWidth+t.borderBottomWidth+a+o))},ll=function(e,t){return e===0?t.bounds:e===2?cl(t):J(t)},ul=function(e,t){return e===0?t.bounds:e===2?cl(t):J(t)},dl=function(e,t,n){var r=ll(hl(e.styles.backgroundOrigin,t),e),i=ul(hl(e.styles.backgroundClip,t),e),a=ml(hl(e.styles.backgroundSize,t),n,r),o=a[0],s=a[1],c=cr(hl(e.styles.backgroundPosition,t),r.width-o,r.height-s);return[gl(hl(e.styles.backgroundRepeat,t),c,a,r,i),Math.round(r.left+c[0]),Math.round(r.top+c[1]),o,s]},fl=function(e){return Yn(e)&&e.value===si.AUTO},pl=function(e){return typeof e==`number`},ml=function(e,t,n){var r=t[0],i=t[1],a=t[2],o=e[0],s=e[1];if(!o)return[0,0];if(rr(o)&&s&&rr(s))return[lr(o,n.width),lr(s,n.height)];var c=pl(a);if(Yn(o)&&(o.value===si.CONTAIN||o.value===si.COVER))return pl(a)?n.width/n.height<a==(o.value===si.COVER)?[n.height*a,n.height]:[n.width,n.width/a]:[n.width,n.height];var l=pl(r),u=pl(i),d=l||u;if(fl(o)&&(!s||fl(s)))return l&&u?[r,i]:!c&&!d?[n.width,n.height]:d&&c?[l?r:i*a,u?i:r/a]:[l?r:n.width,u?i:n.height];if(c){var f=0,p=0;return rr(o)?f=lr(o,n.width):rr(s)&&(p=lr(s,n.height)),fl(o)?f=p*a:(!s||fl(s))&&(p=f/a),[f,p]}var m=null,h=null;if(rr(o)?m=lr(o,n.width):s&&rr(s)&&(h=lr(s,n.height)),m!==null&&(!s||fl(s))&&(h=l&&u?m/r*i:n.height),h!==null&&fl(o)&&(m=l&&u?h/i*r:n.width),m!==null&&h!==null)return[m,h];throw Error(`Unable to calculate background-size for element`)},hl=function(e,t){var n=e[t];return n===void 0?e[0]:n},gl=function(e,t,n,r,i){var a=t[0],o=t[1],s=n[0],c=n[1];switch(e){case 2:return[new q(Math.round(r.left),Math.round(r.top+o)),new q(Math.round(r.left+r.width),Math.round(r.top+o)),new q(Math.round(r.left+r.width),Math.round(c+r.top+o)),new q(Math.round(r.left),Math.round(c+r.top+o))];case 3:return[new q(Math.round(r.left+a),Math.round(r.top)),new q(Math.round(r.left+a+s),Math.round(r.top)),new q(Math.round(r.left+a+s),Math.round(r.height+r.top)),new q(Math.round(r.left+a),Math.round(r.height+r.top))];case 1:return[new q(Math.round(r.left+a),Math.round(r.top+o)),new q(Math.round(r.left+a+s),Math.round(r.top+o)),new q(Math.round(r.left+a+s),Math.round(r.top+o+c)),new q(Math.round(r.left+a),Math.round(r.top+o+c))];default:return[new q(Math.round(i.left),Math.round(i.top)),new q(Math.round(i.left+i.width),Math.round(i.top)),new q(Math.round(i.left+i.width),Math.round(i.height+i.top)),new q(Math.round(i.left),Math.round(i.height+i.top))]}},_l=`data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7`,vl=`Hidden Text`,yl=function(){function e(e){this._data={},this._document=e}return e.prototype.parseMetrics=function(e,t){var n=this._document.createElement(`div`),r=this._document.createElement(`img`),i=this._document.createElement(`span`),a=this._document.body;n.style.visibility=`hidden`,n.style.fontFamily=e,n.style.fontSize=t,n.style.margin=`0`,n.style.padding=`0`,n.style.whiteSpace=`nowrap`,a.appendChild(n),r.src=_l,r.width=1,r.height=1,r.style.margin=`0`,r.style.padding=`0`,r.style.verticalAlign=`baseline`,i.style.fontFamily=e,i.style.fontSize=t,i.style.margin=`0`,i.style.padding=`0`,i.appendChild(this._document.createTextNode(vl)),n.appendChild(i),n.appendChild(r);var o=r.offsetTop-i.offsetTop+2;n.removeChild(i),n.appendChild(this._document.createTextNode(vl)),n.style.lineHeight=`normal`,r.style.verticalAlign=`super`;var s=r.offsetTop-n.offsetTop+2;return a.removeChild(n),{baseline:o,middle:s}},e.prototype.getMetrics=function(e,t){var n=e+` `+t;return this._data[n]===void 0&&(this._data[n]=this.parseMetrics(e,t)),this._data[n]},e}(),bl=function(){function e(e,t){this.context=e,this.options=t}return e}(),xl=1e4,Sl=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r._activeEffects=[],r.canvas=n.canvas?n.canvas:document.createElement(`canvas`),r.ctx=r.canvas.getContext(`2d`),n.canvas||(r.canvas.width=Math.floor(n.width*n.scale),r.canvas.height=Math.floor(n.height*n.scale),r.canvas.style.width=n.width+`px`,r.canvas.style.height=n.height+`px`),r.fontMetrics=new yl(document),r.ctx.scale(r.options.scale,r.options.scale),r.ctx.translate(-n.x,-n.y),r.ctx.textBaseline=`bottom`,r._activeEffects=[],r.context.logger.debug(`Canvas renderer initialized (`+n.width+`x`+n.height+`) with scale `+n.scale),r}return n.prototype.applyEffects=function(e){for(var t=this;this._activeEffects.length;)this.popEffect();e.forEach(function(e){return t.applyEffect(e)})},n.prototype.applyEffect=function(e){this.ctx.save(),Jc(e)&&(this.ctx.globalAlpha=e.opacity),Kc(e)&&(this.ctx.translate(e.offsetX,e.offsetY),this.ctx.transform(e.matrix[0],e.matrix[1],e.matrix[2],e.matrix[3],e.matrix[4],e.matrix[5]),this.ctx.translate(-e.offsetX,-e.offsetY)),qc(e)&&(this.path(e.path),this.ctx.clip()),this._activeEffects.push(e)},n.prototype.popEffect=function(){this._activeEffects.pop(),this.ctx.restore()},n.prototype.renderStack=function(e){return r(this,void 0,void 0,function(){var t;return i(this,function(n){switch(n.label){case 0:return t=e.element.container.styles,t.isVisible()?[4,this.renderStackContent(e)]:[3,2];case 1:n.sent(),n.label=2;case 2:return[2]}})})},n.prototype.renderNode=function(e){return r(this,void 0,void 0,function(){return i(this,function(t){switch(t.label){case 0:if(xa(e.container.flags,16))debugger;return e.container.styles.isVisible()?[4,this.renderNodeBackgroundAndBorders(e)]:[3,3];case 1:return t.sent(),[4,this.renderNodeContent(e)];case 2:t.sent(),t.label=3;case 3:return[2]}})})},n.prototype.renderTextWithLetterSpacing=function(e,t,n){var r=this;t===0?this.ctx.fillText(e.text,e.bounds.left,e.bounds.top+n):Wo(e.text).reduce(function(t,i){return r.ctx.fillText(i,t,e.bounds.top+n),t+r.ctx.measureText(i).width},e.bounds.left)},n.prototype.createFontStyle=function(e){var t=e.fontVariant.filter(function(e){return e===`normal`||e===`small-caps`}).join(``),n=Dl(e.fontFamily).join(`, `),r=qn(e.fontSize)?``+e.fontSize.number+e.fontSize.unit:e.fontSize.number+`px`;return[[e.fontStyle,t,e.fontWeight,r,n].join(` `),n,r]},n.prototype.renderTextNode=function(e,t){return r(this,void 0,void 0,function(){var n,r,a,o,s,c,l,u,d=this;return i(this,function(i){return n=this.createFontStyle(t),r=n[0],a=n[1],o=n[2],this.ctx.font=r,this.ctx.direction=t.direction===1?`rtl`:`ltr`,this.ctx.textAlign=`left`,this.ctx.textBaseline=`alphabetic`,s=this.fontMetrics.getMetrics(a,o),c=s.baseline,l=s.middle,u=t.paintOrder,e.textBounds.forEach(function(e){u.forEach(function(n){switch(n){case 0:d.ctx.fillStyle=br(t.color),d.renderTextWithLetterSpacing(e,t.letterSpacing,c);var r=t.textShadow;r.length&&e.text.trim().length&&(r.slice(0).reverse().forEach(function(n){d.ctx.shadowColor=br(n.color),d.ctx.shadowOffsetX=n.offsetX.number*d.options.scale,d.ctx.shadowOffsetY=n.offsetY.number*d.options.scale,d.ctx.shadowBlur=n.blur.number,d.renderTextWithLetterSpacing(e,t.letterSpacing,c)}),d.ctx.shadowColor=``,d.ctx.shadowOffsetX=0,d.ctx.shadowOffsetY=0,d.ctx.shadowBlur=0),t.textDecorationLine.length&&(d.ctx.fillStyle=br(t.textDecorationColor||t.color),t.textDecorationLine.forEach(function(t){switch(t){case 1:d.ctx.fillRect(e.bounds.left,Math.round(e.bounds.top+c),e.bounds.width,1);break;case 2:d.ctx.fillRect(e.bounds.left,Math.round(e.bounds.top),e.bounds.width,1);break;case 3:d.ctx.fillRect(e.bounds.left,Math.ceil(e.bounds.top+l),e.bounds.width,1);break}}));break;case 1:t.webkitTextStrokeWidth&&e.text.trim().length&&(d.ctx.strokeStyle=br(t.webkitTextStrokeColor),d.ctx.lineWidth=t.webkitTextStrokeWidth,d.ctx.lineJoin=window.chrome?`miter`:`round`,d.ctx.strokeText(e.text,e.bounds.left,e.bounds.top+c)),d.ctx.strokeStyle=``,d.ctx.lineWidth=0,d.ctx.lineJoin=`miter`;break}})}),[2]})})},n.prototype.renderReplacedElement=function(e,t,n){if(n&&e.intrinsicWidth>0&&e.intrinsicHeight>0){var r=cl(e),i=Hc(t);this.path(i),this.ctx.save(),this.ctx.clip(),this.ctx.drawImage(n,0,0,e.intrinsicWidth,e.intrinsicHeight,r.left,r.top,r.width,r.height),this.ctx.restore()}},n.prototype.renderNodeContent=function(e){return r(this,void 0,void 0,function(){var t,r,a,s,c,l,u,u,d,f,p,m,h,g,_,v,y,b,x,u,S,h,v;return i(this,function(i){switch(i.label){case 0:this.applyEffects(e.getEffects(4)),t=e.container,r=e.curves,a=t.styles,s=0,c=t.textNodes,i.label=1;case 1:return s<c.length?(l=c[s],[4,this.renderTextNode(l,a)]):[3,4];case 2:i.sent(),i.label=3;case 3:return s++,[3,1];case 4:if(!(t instanceof $o))return[3,8];i.label=5;case 5:return i.trys.push([5,7,,8]),[4,this.context.cache.match(t.src)];case 6:return u=i.sent(),this.renderReplacedElement(t,r,u),[3,8];case 7:return i.sent(),this.context.logger.error(`Error loading image `+t.src),[3,8];case 8:if(t instanceof es&&this.renderReplacedElement(t,r,t.canvas),!(t instanceof ts))return[3,12];i.label=9;case 9:return i.trys.push([9,11,,12]),[4,this.context.cache.match(t.svg)];case 10:return u=i.sent(),this.renderReplacedElement(t,r,u),[3,12];case 11:return i.sent(),this.context.logger.error(`Error loading svg `+t.svg.substring(0,255)),[3,12];case 12:return t instanceof hs&&t.tree?(d=new n(this.context,{scale:this.options.scale,backgroundColor:t.backgroundColor,x:0,y:0,width:t.width,height:t.height}),[4,d.render(t.tree)]):[3,14];case 13:f=i.sent(),t.width&&t.height&&this.ctx.drawImage(f,0,0,t.width,t.height,t.bounds.left,t.bounds.top,t.bounds.width,t.bounds.height),i.label=14;case 14:if(t instanceof fs&&(p=Math.min(t.bounds.width,t.bounds.height),t.type===cs?t.checked&&(this.ctx.save(),this.path([new q(t.bounds.left+p*.39363,t.bounds.top+p*.79),new q(t.bounds.left+p*.16,t.bounds.top+p*.5549),new q(t.bounds.left+p*.27347,t.bounds.top+p*.44071),new q(t.bounds.left+p*.39694,t.bounds.top+p*.5649),new q(t.bounds.left+p*.72983,t.bounds.top+p*.23),new q(t.bounds.left+p*.84,t.bounds.top+p*.34085),new q(t.bounds.left+p*.39363,t.bounds.top+p*.79)]),this.ctx.fillStyle=br(ds),this.ctx.fill(),this.ctx.restore()):t.type===ls&&t.checked&&(this.ctx.save(),this.ctx.beginPath(),this.ctx.arc(t.bounds.left+p/2,t.bounds.top+p/2,p/4,0,Math.PI*2,!0),this.ctx.fillStyle=br(ds),this.ctx.fill(),this.ctx.restore())),Cl(t)&&t.value.length){switch(m=this.createFontStyle(a),h=m[0],g=m[1],_=this.fontMetrics.getMetrics(h,g).baseline,this.ctx.font=h,this.ctx.fillStyle=br(a.color),this.ctx.textBaseline=`alphabetic`,this.ctx.textAlign=Tl(t.styles.textAlign),v=cl(t),y=0,t.styles.textAlign){case 1:y+=v.width/2;break;case 2:y+=v.width;break}b=v.add(y,0,0,-v.height/2+1),this.ctx.save(),this.path([new q(v.left,v.top),new q(v.left+v.width,v.top),new q(v.left+v.width,v.top+v.height),new q(v.left,v.top+v.height)]),this.ctx.clip(),this.renderTextWithLetterSpacing(new Bo(t.value,b),a.letterSpacing,_),this.ctx.restore(),this.ctx.textBaseline=`alphabetic`,this.ctx.textAlign=`left`}if(!xa(t.styles.display,2048))return[3,20];if(t.styles.listStyleImage===null)return[3,19];if(x=t.styles.listStyleImage,x.type!==0)return[3,18];u=void 0,S=x.url,i.label=15;case 15:return i.trys.push([15,17,,18]),[4,this.context.cache.match(S)];case 16:return u=i.sent(),this.ctx.drawImage(u,t.bounds.left-(u.width+10),t.bounds.top),[3,18];case 17:return i.sent(),this.context.logger.error(`Error loading list-style-image `+S),[3,18];case 18:return[3,20];case 19:e.listValue&&t.styles.listStyleType!==-1&&(h=this.createFontStyle(a)[0],this.ctx.font=h,this.ctx.fillStyle=br(a.color),this.ctx.textBaseline=`middle`,this.ctx.textAlign=`right`,v=new o(t.bounds.left,t.bounds.top+lr(t.styles.paddingTop,t.bounds.width),t.bounds.width,Li(a.lineHeight,a.fontSize.number)/2+1),this.renderTextWithLetterSpacing(new Bo(e.listValue,v),a.letterSpacing,Li(a.lineHeight,a.fontSize.number)/2+2),this.ctx.textBaseline=`bottom`,this.ctx.textAlign=`left`),i.label=20;case 20:return[2]}})})},n.prototype.renderStackContent=function(e){return r(this,void 0,void 0,function(){var t,n,r,a,o,r,s,c,r,l,u,r,d,f,r,p,m,r,h,g,r;return i(this,function(i){switch(i.label){case 0:if(xa(e.element.container.flags,16))debugger;return[4,this.renderNodeBackgroundAndBorders(e.element)];case 1:i.sent(),t=0,n=e.negativeZIndex,i.label=2;case 2:return t<n.length?(r=n[t],[4,this.renderStack(r)]):[3,5];case 3:i.sent(),i.label=4;case 4:return t++,[3,2];case 5:return[4,this.renderNodeContent(e.element)];case 6:i.sent(),a=0,o=e.nonInlineLevel,i.label=7;case 7:return a<o.length?(r=o[a],[4,this.renderNode(r)]):[3,10];case 8:i.sent(),i.label=9;case 9:return a++,[3,7];case 10:s=0,c=e.nonPositionedFloats,i.label=11;case 11:return s<c.length?(r=c[s],[4,this.renderStack(r)]):[3,14];case 12:i.sent(),i.label=13;case 13:return s++,[3,11];case 14:l=0,u=e.nonPositionedInlineLevel,i.label=15;case 15:return l<u.length?(r=u[l],[4,this.renderStack(r)]):[3,18];case 16:i.sent(),i.label=17;case 17:return l++,[3,15];case 18:d=0,f=e.inlineLevel,i.label=19;case 19:return d<f.length?(r=f[d],[4,this.renderNode(r)]):[3,22];case 20:i.sent(),i.label=21;case 21:return d++,[3,19];case 22:p=0,m=e.zeroOrAutoZIndexOrTransformedOrOpacity,i.label=23;case 23:return p<m.length?(r=m[p],[4,this.renderStack(r)]):[3,26];case 24:i.sent(),i.label=25;case 25:return p++,[3,23];case 26:h=0,g=e.positiveZIndex,i.label=27;case 27:return h<g.length?(r=g[h],[4,this.renderStack(r)]):[3,30];case 28:i.sent(),i.label=29;case 29:return h++,[3,27];case 30:return[2]}})})},n.prototype.mask=function(e){this.ctx.beginPath(),this.ctx.moveTo(0,0),this.ctx.lineTo(this.canvas.width,0),this.ctx.lineTo(this.canvas.width,this.canvas.height),this.ctx.lineTo(0,this.canvas.height),this.ctx.lineTo(0,0),this.formatPath(e.slice(0).reverse()),this.ctx.closePath()},n.prototype.path=function(e){this.ctx.beginPath(),this.formatPath(e),this.ctx.closePath()},n.prototype.formatPath=function(e){var t=this;e.forEach(function(e,n){var r=Ic(e)?e.start:e;n===0?t.ctx.moveTo(r.x,r.y):t.ctx.lineTo(r.x,r.y),Ic(e)&&t.ctx.bezierCurveTo(e.startControl.x,e.startControl.y,e.endControl.x,e.endControl.y,e.end.x,e.end.y)})},n.prototype.renderRepeat=function(e,t,n,r){this.path(e),this.ctx.fillStyle=t,this.ctx.translate(n,r),this.ctx.fill(),this.ctx.translate(-n,-r)},n.prototype.resizeImage=function(e,t,n){if(e.width===t&&e.height===n)return e;var r=(this.canvas.ownerDocument??document).createElement(`canvas`);return r.width=Math.max(1,t),r.height=Math.max(1,n),r.getContext(`2d`).drawImage(e,0,0,e.width,e.height,0,0,t,n),r},n.prototype.renderBackgroundImage=function(e){return r(this,void 0,void 0,function(){var t,n,r,a,o,s;return i(this,function(c){switch(c.label){case 0:t=e.styles.backgroundImage.length-1,n=function(n){var a,o,s,c,l,u,d,f,p,m,c,l,u,d,f,h,g,_,v,y,b,x,S,C,p,w,c,T,E,d,f,D,l,u,O,k,A,j,ee,M,te,ne;return i(this,function(i){switch(i.label){case 0:if(n.type!==0)return[3,5];a=void 0,o=n.url,i.label=1;case 1:return i.trys.push([1,3,,4]),[4,r.context.cache.match(o)];case 2:return a=i.sent(),[3,4];case 3:return i.sent(),r.context.logger.error(`Error loading background-image `+o),[3,4];case 4:return a&&(s=dl(e,t,[a.width,a.height,a.width/a.height]),c=s[0],l=s[1],u=s[2],d=s[3],f=s[4],p=r.ctx.createPattern(r.resizeImage(a,d,f),`repeat`),r.renderRepeat(c,p,l,u)),[3,6];case 5:Zr(n)?(m=dl(e,t,[null,null,null]),c=m[0],l=m[1],u=m[2],d=m[3],f=m[4],h=Pr(n.angle,d,f),g=h[0],_=h[1],v=h[2],y=h[3],b=h[4],x=document.createElement(`canvas`),x.width=d,x.height=f,S=x.getContext(`2d`),C=S.createLinearGradient(_,y,v,b),Mr(n.stops,g).forEach(function(e){return C.addColorStop(e.stop,br(e.color))}),S.fillStyle=C,S.fillRect(0,0,d,f),d>0&&f>0&&(p=r.ctx.createPattern(x,`repeat`),r.renderRepeat(c,p,l,u))):Qr(n)&&(w=dl(e,t,[null,null,null]),c=w[0],T=w[1],E=w[2],d=w[3],f=w[4],D=n.position.length===0?[or]:n.position,l=lr(D[0],d),u=lr(D[D.length-1],f),O=Lr(n,l,u,d,f),k=O[0],A=O[1],k>0&&A>0&&(j=r.ctx.createRadialGradient(T+l,E+u,0,T+l,E+u,k),Mr(n.stops,k*2).forEach(function(e){return j.addColorStop(e.stop,br(e.color))}),r.path(c),r.ctx.fillStyle=j,k===A?r.ctx.fill():(ee=e.bounds.left+.5*e.bounds.width,M=e.bounds.top+.5*e.bounds.height,te=A/k,ne=1/te,r.ctx.save(),r.ctx.translate(ee,M),r.ctx.transform(1,0,0,te,0,0),r.ctx.translate(-ee,-M),r.ctx.fillRect(T,ne*(E-M)+M,d,f*ne),r.ctx.restore()))),i.label=6;case 6:return t--,[2]}})},r=this,a=0,o=e.styles.backgroundImage.slice(0).reverse(),c.label=1;case 1:return a<o.length?(s=o[a],[5,n(s)]):[3,4];case 2:c.sent(),c.label=3;case 3:return a++,[3,1];case 4:return[2]}})})},n.prototype.renderSolidBorder=function(e,t,n){return r(this,void 0,void 0,function(){return i(this,function(r){return this.path(nl(n,t)),this.ctx.fillStyle=br(e),this.ctx.fill(),[2]})})},n.prototype.renderDoubleBorder=function(e,t,n,a){return r(this,void 0,void 0,function(){var r,o;return i(this,function(i){switch(i.label){case 0:return t<3?[4,this.renderSolidBorder(e,n,a)]:[3,2];case 1:return i.sent(),[2];case 2:return r=rl(a,n),this.path(r),this.ctx.fillStyle=br(e),this.ctx.fill(),o=il(a,n),this.path(o),this.ctx.fill(),[2]}})})},n.prototype.renderNodeBackgroundAndBorders=function(e){return r(this,void 0,void 0,function(){var t,n,r,a,o,s,c,l,u=this;return i(this,function(i){switch(i.label){case 0:return this.applyEffects(e.getEffects(2)),t=e.container.styles,n=!yr(t.backgroundColor)||t.backgroundImage.length,r=[{style:t.borderTopStyle,color:t.borderTopColor,width:t.borderTopWidth},{style:t.borderRightStyle,color:t.borderRightColor,width:t.borderRightWidth},{style:t.borderBottomStyle,color:t.borderBottomColor,width:t.borderBottomWidth},{style:t.borderLeftStyle,color:t.borderLeftColor,width:t.borderLeftWidth}],a=wl(hl(t.backgroundClip,0),e.curves),n||t.boxShadow.length?(this.ctx.save(),this.path(a),this.ctx.clip(),yr(t.backgroundColor)||(this.ctx.fillStyle=br(t.backgroundColor),this.ctx.fill()),[4,this.renderBackgroundImage(e.container)]):[3,2];case 1:i.sent(),this.ctx.restore(),t.boxShadow.slice(0).reverse().forEach(function(t){u.ctx.save();var n=Bc(e.curves),r=t.inset?0:xl,i=Xc(n,-r+(t.inset?1:-1)*t.spread.number,(t.inset?1:-1)*t.spread.number,t.spread.number*(t.inset?-2:2),t.spread.number*(t.inset?-2:2));t.inset?(u.path(n),u.ctx.clip(),u.mask(i)):(u.mask(n),u.ctx.clip(),u.path(i)),u.ctx.shadowOffsetX=t.offsetX.number+r,u.ctx.shadowOffsetY=t.offsetY.number,u.ctx.shadowColor=br(t.color),u.ctx.shadowBlur=t.blur.number,u.ctx.fillStyle=t.inset?br(t.color):`rgba(0,0,0,1)`,u.ctx.fill(),u.ctx.restore()}),i.label=2;case 2:o=0,s=0,c=r,i.label=3;case 3:return s<c.length?(l=c[s],l.style!==0&&!yr(l.color)&&l.width>0?l.style===2?[4,this.renderDashedDottedBorder(l.color,l.width,o,e.curves,2)]:[3,5]:[3,11]):[3,13];case 4:return i.sent(),[3,11];case 5:return l.style===3?[4,this.renderDashedDottedBorder(l.color,l.width,o,e.curves,3)]:[3,7];case 6:return i.sent(),[3,11];case 7:return l.style===4?[4,this.renderDoubleBorder(l.color,l.width,o,e.curves)]:[3,9];case 8:return i.sent(),[3,11];case 9:return[4,this.renderSolidBorder(l.color,o,e.curves)];case 10:i.sent(),i.label=11;case 11:o++,i.label=12;case 12:return s++,[3,3];case 13:return[2]}})})},n.prototype.renderDashedDottedBorder=function(e,t,n,a,o){return r(this,void 0,void 0,function(){var r,s,c,l,u,d,f,p,m,h,g,_,v,y,b,x,b,x;return i(this,function(i){return this.ctx.save(),r=al(a,n),s=nl(a,n),o===2&&(this.path(s),this.ctx.clip()),Ic(s[0])?(c=s[0].start.x,l=s[0].start.y):(c=s[0].x,l=s[0].y),Ic(s[1])?(u=s[1].end.x,d=s[1].end.y):(u=s[1].x,d=s[1].y),f=Math.abs(n===0||n===2?c-u:l-d),this.ctx.beginPath(),o===3?this.formatPath(r):this.formatPath(s.slice(0,2)),p=t<3?t*3:t*2,m=t<3?t*2:t,o===3&&(p=t,m=t),h=!0,f<=p*2?h=!1:f<=p*2+m?(g=f/(2*p+m),p*=g,m*=g):(_=Math.floor((f+m)/(p+m)),v=(f-_*p)/(_-1),y=(f-(_+1)*p)/_,m=y<=0||Math.abs(m-v)<Math.abs(m-y)?v:y),h&&(o===3?this.ctx.setLineDash([0,p+m]):this.ctx.setLineDash([p,m])),o===3?(this.ctx.lineCap=`round`,this.ctx.lineWidth=t):this.ctx.lineWidth=t*2+1.1,this.ctx.strokeStyle=br(e),this.ctx.stroke(),this.ctx.setLineDash([]),o===2&&(Ic(s[0])&&(b=s[3],x=s[0],this.ctx.beginPath(),this.formatPath([new q(b.end.x,b.end.y),new q(x.start.x,x.start.y)]),this.ctx.stroke()),Ic(s[1])&&(b=s[1],x=s[2],this.ctx.beginPath(),this.formatPath([new q(b.end.x,b.end.y),new q(x.start.x,x.start.y)]),this.ctx.stroke())),this.ctx.restore(),[2]})})},n.prototype.render=function(e){return r(this,void 0,void 0,function(){var t;return i(this,function(n){switch(n.label){case 0:return this.options.backgroundColor&&(this.ctx.fillStyle=br(this.options.backgroundColor),this.ctx.fillRect(this.options.x,this.options.y,this.options.width,this.options.height)),t=tl(e),[4,this.renderStack(t)];case 1:return n.sent(),this.applyEffects([]),[2,this.canvas]}})})},n}(bl),Cl=function(e){return e instanceof ms||e instanceof ps?!0:e instanceof fs&&e.type!==ls&&e.type!==cs},wl=function(e,t){switch(e){case 0:return Bc(t);case 2:return Vc(t);default:return Hc(t)}},Tl=function(e){switch(e){case 1:return`center`;case 2:return`right`;default:return`left`}},El=[`-apple-system`,`system-ui`],Dl=function(e){return/iPhone OS 15_(0|1)/.test(window.navigator.userAgent)?e.filter(function(e){return El.indexOf(e)===-1}):e},Ol=function(e){t(n,e);function n(t,n){var r=e.call(this,t,n)||this;return r.canvas=n.canvas?n.canvas:document.createElement(`canvas`),r.ctx=r.canvas.getContext(`2d`),r.options=n,r.canvas.width=Math.floor(n.width*n.scale),r.canvas.height=Math.floor(n.height*n.scale),r.canvas.style.width=n.width+`px`,r.canvas.style.height=n.height+`px`,r.ctx.scale(r.options.scale,r.options.scale),r.ctx.translate(-n.x,-n.y),r.context.logger.debug(`EXPERIMENTAL ForeignObject renderer initialized (`+n.width+`x`+n.height+` at `+n.x+`,`+n.y+`) with scale `+n.scale),r}return n.prototype.render=function(e){return r(this,void 0,void 0,function(){var t,n;return i(this,function(r){switch(r.label){case 0:return t=Lo(this.options.width*this.options.scale,this.options.height*this.options.scale,this.options.scale,this.options.scale,e),[4,kl(t)];case 1:return n=r.sent(),this.options.backgroundColor&&(this.ctx.fillStyle=br(this.options.backgroundColor),this.ctx.fillRect(0,0,this.options.width*this.options.scale,this.options.height*this.options.scale)),this.ctx.drawImage(n,-this.options.x*this.options.scale,-this.options.y*this.options.scale),[2,this.canvas]}})})},n}(bl),kl=function(e){return new Promise(function(t,n){var r=new Image;r.onload=function(){t(r)},r.onerror=n,r.src=`data:image/svg+xml;charset=utf-8,`+encodeURIComponent(new XMLSerializer().serializeToString(e))})},Al=function(){function e(e){var t=e.id,n=e.enabled;this.id=t,this.enabled=n,this.start=Date.now()}return e.prototype.debug=function(){var e=[...arguments];this.enabled&&(typeof window<`u`&&window.console&&typeof console.debug==`function`?console.debug.apply(console,a([this.id,this.getTime()+`ms`],e)):this.info.apply(this,e))},e.prototype.getTime=function(){return Date.now()-this.start},e.prototype.info=function(){var e=[...arguments];this.enabled&&typeof window<`u`&&window.console&&typeof console.info==`function`&&console.info.apply(console,a([this.id,this.getTime()+`ms`],e))},e.prototype.warn=function(){var e=[...arguments];this.enabled&&(typeof window<`u`&&window.console&&typeof console.warn==`function`?console.warn.apply(console,a([this.id,this.getTime()+`ms`],e)):this.info.apply(this,e))},e.prototype.error=function(){var e=[...arguments];this.enabled&&(typeof window<`u`&&window.console&&typeof console.error==`function`?console.error.apply(console,a([this.id,this.getTime()+`ms`],e)):this.info.apply(this,e))},e.instances={},e}(),jl=function(){function e(t,n){this.windowBounds=n,this.instanceName=`#`+ e.instanceCount++,this.logger=new Al({id:this.instanceName,enabled:t.logging}),this.cache=t.cache??new Tc(this,t)}return e.instanceCount=1,e}(),Ml=function(e,t){return t===void 0&&(t={}),Nl(e,t)};typeof window<`u`&&wc.setContext(window);var Nl=function(e,t){return r(void 0,void 0,void 0,function(){var r,a,l,u,d,f,p,m,h,g,_,v,y,b,x,S,C,w,T,E,D,O,D;return i(this,function(i){switch(i.label){case 0:if(!e||typeof e!=`object`)return[2,Promise.reject(`Invalid element provided as first argument`)];if(r=e.ownerDocument,!r)throw Error(`Element is not attached to a Document`);if(a=r.defaultView,!a)throw Error(`Document is not attached to a Window`);return l={allowTaint:t.allowTaint??!1,imageTimeout:t.imageTimeout??15e3,proxy:t.proxy,useCORS:t.useCORS??!1},u=n({logging:t.logging??!0,cache:t.cache},l),d={windowWidth:t.windowWidth??a.innerWidth,windowHeight:t.windowHeight??a.innerHeight,scrollX:t.scrollX??a.pageXOffset,scrollY:t.scrollY??a.pageYOffset},f=new o(d.scrollX,d.scrollY,d.windowWidth,d.windowHeight),p=new jl(u,f),m=t.foreignObjectRendering??!1,h={allowTaint:t.allowTaint??!1,onclone:t.onclone,ignoreElements:t.ignoreElements,inlineImages:m,copyStyles:m},p.logger.debug(`Starting document clone with size `+f.width+`x`+f.height+` scrolled to `+-f.left+`,`+-f.top),g=new sc(p,e,h),_=g.clonedReferenceElement,_?[4,g.toIFrame(r,f)]:[2,Promise.reject(`Unable to find element in cloned iframe`)];case 1:return v=i.sent(),y=As(_)||Os(_)?c(_.ownerDocument):s(p,_),b=y.width,x=y.height,S=y.left,C=y.top,w=Pl(p,_,t.backgroundColor),T={canvas:t.canvas,backgroundColor:w,scale:t.scale??a.devicePixelRatio??1,x:(t.x??0)+S,y:(t.y??0)+C,width:t.width??Math.ceil(b),height:t.height??Math.ceil(x)},m?(p.logger.debug(`Document cloned, using foreign object rendering`),D=new Ol(p,T),[4,D.render(_)]):[3,3];case 2:return E=i.sent(),[3,5];case 3:return p.logger.debug(`Document cloned, element located at `+S+`,`+C+` with size `+b+`x`+x+` using computed rendering`),p.logger.debug(`Starting DOM parsing`),O=ys(p,_),w===O.styles.backgroundColor&&(O.styles.backgroundColor=Or.TRANSPARENT),p.logger.debug(`Starting renderer for element at `+T.x+`,`+T.y+` with size `+T.width+`x`+T.height),D=new Sl(p,T),[4,D.render(O)];case 4:E=i.sent(),i.label=5;case 5:return(t.removeContainer??!0)&&(sc.destroy(v)||p.logger.error(`Cannot detach cloned iframe as it is not in the DOM anymore`)),p.logger.debug(`Finished rendering`),[2,E]}})})},Pl=function(e,t,n){var r=t.ownerDocument,i=r.documentElement?Dr(e,getComputedStyle(r.documentElement).backgroundColor):Or.TRANSPARENT,a=r.body?Dr(e,getComputedStyle(r.body).backgroundColor):Or.TRANSPARENT,o=typeof n==`string`?Dr(e,n):n===null?Or.TRANSPARENT:4294967295;return t===r.documentElement?yr(i)?yr(a)?o:a:i:o};return Ml}))}))();var $m=function(e){function t(e,n,r,i){var a;return R(this,t),a=mn(this,t,[e]),a.currentTime=r,a.timelineTime=i,a.target=n,a.type=`finish`,a.bubbles=!1,a.currentTarget=n,a.defaultPrevented=!1,a.eventPhase=a.AT_TARGET,a.timeStamp=Date.now(),a.currentTime=r,a.timelineTime=i,a}return gn(t,e),z(t)}(Kf),eh=0,th=function(){function e(t,n){R(this,e),this.currentTimePending=!1,this._idle=!0,this._paused=!1,this._finishedFlag=!0,this._currentTime=0,this._playbackRate=1,this._inTimeline=!0,this.effect=t,t.animation=this,this.timeline=n,this.id=`${eh++}`,this._inEffect=!!this.effect.update(0),this._totalDuration=Number(this.effect?.getComputedTiming().endTime),this._holdTime=0,this._paused=!1,this.oldPlayState=`idle`,this.updatePromises()}return z(e,[{key:`pending`,get:function(){return this._startTime===null&&!this._paused&&this.playbackRate!==0||this.currentTimePending}},{key:`playState`,get:function(){return this._idle?`idle`:this._isFinished?`finished`:this._paused?`paused`:`running`}},{key:`ready`,get:function(){var e=this;return this.readyPromise||(this.timeline.animationsWithPromises.indexOf(this)===-1&&this.timeline.animationsWithPromises.push(this),this.readyPromise=new Promise(function(t,n){e.resolveReadyPromise=function(){t(e)},e.rejectReadyPromise=function(){n(Error())}}),this.pending||this.resolveReadyPromise()),this.readyPromise}},{key:`finished`,get:function(){var e=this;return this.finishedPromise||(this.timeline.animationsWithPromises.indexOf(this)===-1&&this.timeline.animationsWithPromises.push(this),this.finishedPromise=new Promise(function(t,n){e.resolveFinishedPromise=function(){t(e)},e.rejectFinishedPromise=function(){n(Error())}}),this.playState===`finished`&&this.resolveFinishedPromise()),this.finishedPromise}},{key:`currentTime`,get:function(){return this.updatePromises(),this._idle||this.currentTimePending?null:this._currentTime},set:function(e){e=Number(e),!isNaN(e)&&(this.timeline.restart(),!this._paused&&this._startTime!==null&&(this._startTime=Number(this.timeline?.currentTime)-e/this.playbackRate),this.currentTimePending=!1,this._currentTime!==e&&(this._idle&&(this._idle=!1,this._paused=!0),this.tickCurrentTime(e,!0),this.timeline.applyDirtiedAnimation(this)))}},{key:`startTime`,get:function(){return this._startTime},set:function(e){if(e!==null){if(this.updatePromises(),e=Number(e),isNaN(e)||this._paused||this._idle)return;this._startTime=e,this.tickCurrentTime((Number(this.timeline.currentTime)-this._startTime)*this.playbackRate),this.timeline.applyDirtiedAnimation(this),this.updatePromises()}}},{key:`playbackRate`,get:function(){return this._playbackRate},set:function(e){if(e!==this._playbackRate){this.updatePromises();var t=this.currentTime;this._playbackRate=e,this.startTime=null,this.playState!==`paused`&&this.playState!==`idle`&&(this._finishedFlag=!1,this._idle=!1,this.ensureAlive(),this.timeline.applyDirtiedAnimation(this)),t!==null&&(this.currentTime=t),this.updatePromises()}}},{key:`_isFinished`,get:function(){return!this._idle&&(this._playbackRate>0&&Number(this._currentTime)>=this._totalDuration||this._playbackRate<0&&Number(this._currentTime)<=0)}},{key:`totalDuration`,get:function(){return this._totalDuration}},{key:`_needsTick`,get:function(){return this.pending||this.playState===`running`||!this._finishedFlag}},{key:`updatePromises`,value:function(){var e;if((e=this.effect.target)!=null&&e.destroyed)return this.readyPromise=void 0,this.finishedPromise=void 0,!1;var t=this.oldPlayState,n=this.pending?`pending`:this.playState;return this.readyPromise&&n!==t&&(n===`idle`?(this.rejectReadyPromise(),this.readyPromise=void 0):t===`pending`?this.resolveReadyPromise():n===`pending`&&(this.readyPromise=void 0)),this.finishedPromise&&n!==t&&(n===`idle`?(this.rejectFinishedPromise(),this.finishedPromise=void 0):n===`finished`?this.resolveFinishedPromise():t===`finished`&&(this.finishedPromise=void 0)),this.oldPlayState=n,this.readyPromise||this.finishedPromise}},{key:`play`,value:function(){this.updatePromises(),this._paused=!1,(this._isFinished||this._idle)&&(this.rewind(),this._startTime=null),this._finishedFlag=!1,this._idle=!1,this.ensureAlive(),this.timeline.applyDirtiedAnimation(this),this.timeline.animations.indexOf(this)===-1&&this.timeline.animations.push(this),this.updatePromises()}},{key:`pause`,value:function(){this.updatePromises(),this.currentTime&&(this._holdTime=this.currentTime),!this._isFinished&&!this._paused&&!this._idle?this.currentTimePending=!0:this._idle&&=(this.rewind(),!1),this._startTime=null,this._paused=!0,this.updatePromises()}},{key:`finish`,value:function(){this.updatePromises(),!this._idle&&(this.currentTime=this._playbackRate>0?this._totalDuration:0,this._startTime=this._totalDuration-this.currentTime,this.currentTimePending=!1,this.timeline.applyDirtiedAnimation(this),this.updatePromises())}},{key:`cancel`,value:function(){var e=this;if(this.updatePromises(),this._inEffect&&(this._inEffect=!1,this._idle=!0,this._paused=!1,this._finishedFlag=!0,this._currentTime=null,this._startTime=null,this.effect.update(null),this.timeline.applyDirtiedAnimation(this),this.updatePromises(),this.oncancel)){var t=new $m(null,this,this.currentTime,null);setTimeout(function(){e.oncancel(t)})}}},{key:`reverse`,value:function(){this.updatePromises();var e=this.currentTime;this.playbackRate*=-1,this.play(),e!==null&&(this.currentTime=e),this.updatePromises()}},{key:`updatePlaybackRate`,value:function(e){this.playbackRate=e}},{key:`targetAnimations`,value:function(){return(this.effect?.target).getAnimations()}},{key:`markTarget`,value:function(){var e=this.targetAnimations();e.indexOf(this)===-1&&e.push(this)}},{key:`unmarkTarget`,value:function(){var e=this.targetAnimations(),t=e.indexOf(this);t!==-1&&e.splice(t,1)}},{key:`tick`,value:function(e,t){!this._idle&&!this._paused&&(this._startTime===null?t&&(this.startTime=e-this._currentTime/this.playbackRate):this._isFinished||this.tickCurrentTime((e-this._startTime)*this.playbackRate)),t&&(this.currentTimePending=!1,this.fireEvents(e))}},{key:`rewind`,value:function(){if(this.playbackRate>=0)this.currentTime=0;else if(this._totalDuration<1/0)this.currentTime=this._totalDuration;else throw Error(`Unable to rewind negative playback rate animation with infinite duration`)}},{key:`persist`,value:function(){throw Error(Is)}},{key:`addEventListener`,value:function(e,t,n){throw Error(Is)}},{key:`removeEventListener`,value:function(e,t,n){throw Error(Is)}},{key:`dispatchEvent`,value:function(e){throw Error(Is)}},{key:`commitStyles`,value:function(){throw Error(Is)}},{key:`ensureAlive`,value:function(){if(this.playbackRate<0&&this.currentTime===0){var e;this._inEffect=!!((e=this.effect)!=null&&e.update(-1))}else{var t;this._inEffect=!!((t=this.effect)!=null&&t.update(this.currentTime))}!this._inTimeline&&(this._inEffect||!this._finishedFlag)&&(this._inTimeline=!0,this.timeline.animations.push(this))}},{key:`tickCurrentTime`,value:function(e,t){e!==this._currentTime&&(this._currentTime=e,this._isFinished&&!t&&(this._currentTime=this._playbackRate>0?this._totalDuration:0),this.ensureAlive())}},{key:`fireEvents`,value:function(e){var t=this;if(this._isFinished){if(!this._finishedFlag){if(this.onfinish){var n=new $m(null,this,this.currentTime,e);setTimeout(function(){t.onfinish&&t.onfinish(n)})}this._finishedFlag=!0}}else{if(this.onframe&&this.playState===`running`){var r=new $m(null,this,this.currentTime,e);this.onframe(r)}this._finishedFlag=!1}}}])}(),nh=4,rh=.001,ih=1e-7,ah=10,oh=11,sh=1/(oh-1),ch=typeof Float32Array==`function`,lh=function(e,t){return 1-3*t+3*e},uh=function(e,t){return 3*t-6*e},dh=function(e){return 3*e},fh=function(e,t,n){return((lh(t,n)*e+uh(t,n))*e+dh(t))*e},ph=function(e,t,n){return 3*lh(t,n)*e*e+2*uh(t,n)*e+dh(t)},mh=function(e,t,n,r,i){var a,o,s=0;do o=t+(n-t)/2,a=fh(o,r,i)-e,a>0?n=o:t=o;while(Math.abs(a)>ih&&++s<ah);return o},hh=function(e,t,n,r){for(var i=0;i<nh;++i){var a=ph(t,n,r);if(a===0)return t;var o=fh(t,n,r)-e;t-=o/a}return t},gh=function(e,t,n,r){if(!(e>=0&&e<=1&&n>=0&&n<=1))throw Error(`bezier x values must be in [0, 1] range`);if(e===t&&n===r)return function(e){return e};for(var i=ch?new Float32Array(oh):Array(oh),a=0;a<oh;++a)i[a]=fh(a*sh,e,n);var o=function(t){for(var r=0,a=1,o=oh-1;a!==o&&i[a]<=t;++a)r+=sh;--a;var s=(t-i[a])/(i[a+1]-i[a]),c=r+s*sh,l=ph(c,e,n);return l>=rh?hh(t,c,e,n):l===0?c:mh(t,r,r+sh,e,n)};return function(e){return e===0||e===1?e:fh(o(e),t,r)}},_h=function(e){return e=e.replace(/([A-Z])/g,function(e){return`-${e.toLowerCase()}`}),e.charAt(0)===`-`?e.substring(1):e},vh=function(e){return e**2},yh=function(e){return e**3},bh=function(e){return e**4},xh=function(e){return e**5},Sh=function(e){return e**6},Ch=function(e){return 1-Math.cos(e*Math.PI/2)},wh=function(e){return 1-Math.sqrt(1-e*e)},Th=function(e){return e*e*(3*e-2)},Eh=function(e){for(var t,n=4;e<((t=2**--n)-1)/11;);return 1/4**(3-n)-7.5625*((t*3-2)/22-e)**2},Dh=function(e){var t=bn(arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],2),n=t[0],r=n===void 0?1:n,i=t[1],a=i===void 0?.5:i,o=Ri(Number(r),1,10),s=Ri(Number(a),.1,2);return e===0||e===1?e:-o*2**(10*(e-1))*Math.sin((e-1-s/(Math.PI*2)*Math.asin(1/o))*(Math.PI*2)/s)},Oh=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=arguments.length>2?arguments[2]:void 0,r=bn(t,4),i=r[0],a=i===void 0?1:i,o=r[1],s=o===void 0?100:o,c=r[2],l=c===void 0?10:c,u=r[3],d=u===void 0?0:u;a=Ri(a,.1,1e3),s=Ri(s,.1,1e3),l=Ri(l,.1,1e3),d=Ri(d,.1,1e3);var f=Math.sqrt(s/a),p=l/(2*Math.sqrt(s*a)),m=p<1?f*Math.sqrt(1-p*p):0,h=1,g=p<1?(p*f+-d)/m:-d+f,_=n?n*e/1e3:e;return _=p<1?Math.exp(-_*p*f)*(h*Math.cos(m*_)+g*Math.sin(m*_)):(h+g*_)*Math.exp(-_*f),e===0||e===1?e:1-_},kh=function(e){var t=bn(arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],2),n=t[0],r=n===void 0?10:n;return(t[1]===`start`?Math.ceil:Math.floor)(Ri(e,0,1)*r)/r},Ah=function(e){var t=bn(arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],4),n=t[0],r=t[1],i=t[2],a=t[3];return gh(n,r,i,a)(e)},jh=gh(.42,0,1,1),Mh=function(e){return function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return 1-e(1-t,n,r)}},Nh=function(e){return function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return t<.5?e(t*2,n,r)/2:1-e(t*-2+2,n,r)/2}},Ph=function(e){return function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],r=arguments.length>2?arguments[2]:void 0;return t<.5?(1-e(1-t*2,n,r))/2:(e(t*2-1,n,r)+1)/2}},Fh={steps:kh,"step-start":function(e){return kh(e,[1,`start`])},"step-end":function(e){return kh(e,[1,`end`])},linear:function(e){return e},"cubic-bezier":Ah,ease:function(e){return Ah(e,[.25,.1,.25,1])},in:jh,out:Mh(jh),"in-out":Nh(jh),"out-in":Ph(jh),"in-quad":vh,"out-quad":Mh(vh),"in-out-quad":Nh(vh),"out-in-quad":Ph(vh),"in-cubic":yh,"out-cubic":Mh(yh),"in-out-cubic":Nh(yh),"out-in-cubic":Ph(yh),"in-quart":bh,"out-quart":Mh(bh),"in-out-quart":Nh(bh),"out-in-quart":Ph(bh),"in-quint":xh,"out-quint":Mh(xh),"in-out-quint":Nh(xh),"out-in-quint":Ph(xh),"in-expo":Sh,"out-expo":Mh(Sh),"in-out-expo":Nh(Sh),"out-in-expo":Ph(Sh),"in-sine":Ch,"out-sine":Mh(Ch),"in-out-sine":Nh(Ch),"out-in-sine":Ph(Ch),"in-circ":wh,"out-circ":Mh(wh),"in-out-circ":Nh(wh),"out-in-circ":Ph(wh),"in-back":Th,"out-back":Mh(Th),"in-out-back":Nh(Th),"out-in-back":Ph(Th),"in-bounce":Eh,"out-bounce":Mh(Eh),"in-out-bounce":Nh(Eh),"out-in-bounce":Ph(Eh),"in-elastic":Dh,"out-elastic":Mh(Dh),"in-out-elastic":Nh(Dh),"out-in-elastic":Ph(Dh),spring:Oh,"spring-in":Oh,"spring-out":Mh(Oh),"spring-in-out":Nh(Oh),"spring-out-in":Ph(Oh)},Ih=function(e){return _h(e).replace(/^ease-/,``).replace(/(\(|\s).+/,``).toLowerCase().trim()},Lh=function(e){return Fh[Ih(e)]||Fh.linear},Rh=function(e){return e},zh=1,Bh=.5,Vh=0;function Hh(e,t){return function(n){if(n>=1)return 1;var r=1/e;return n+=t*r,n-n%r}}var Uh=`\\s*(-?\\d+\\.?\\d*|-?\\.\\d+)\\s*`,Wh=RegExp(`cubic-bezier\\(${Uh},${Uh},${Uh},${Uh}\\)`),Gh=/steps\(\s*(\d+)\s*\)/,Kh=/steps\(\s*(\d+)\s*,\s*(start|middle|end)\s*\)/;function qh(e){var t=Wh.exec(e);if(t)return gh.apply(void 0,ln(t.slice(1).map(Number)));var n=Gh.exec(e);if(n)return Hh(Number(n[1]),Vh);var r=Kh.exec(e);return r?Hh(Number(r[1]),{start:zh,middle:Bh,end:Vh}[r[2]]):Lh(e)}function Jh(e){return Math.abs(Yh(e)/(e.playbackRate||1))}function Yh(e){return e.duration===0||e.iterations===0?0:(e.duration===`auto`?0:Number(e.duration))*(e.iterations??1)}var Xh=0,Zh=1,Qh=2,$h=3;function eg(e,t,n){if(t===null)return Xh;var r=n.endTime;return t<Math.min(n.delay,r)?Zh:t>=Math.min(n.delay+e+n.endDelay,r)?Qh:$h}function tg(e,t,n,r,i){switch(r){case Zh:return t===`backwards`||t===`both`?0:null;case $h:return n-i;case Qh:return t===`forwards`||t===`both`?e:null;case Xh:return null}}function ng(e,t,n,r,i){var a=i;return e===0?t!==Zh&&(a+=n):a+=r/e,a}function rg(e,t,n,r,i,a){var o=e===1/0?t%1:e%1;return o===0&&n===Qh&&r!==0&&(i!==0||a===0)&&(o=1),o}function ig(e,t,n,r){return e===Qh&&t===1/0?1/0:n===1?Math.floor(r)-1:Math.floor(r)}function ag(e,t,n){var r=e;if(e!==`normal`&&e!==`reverse`){var i=t;e===`alternate-reverse`&&(i+=1),r=`normal`,i!==1/0&&i%2!=0&&(r=`reverse`)}return r===`normal`?n:1-n}function og(e,t,n){var r=eg(e,t,n),i=tg(e,n.fill,t,r,n.delay);if(i===null)return null;var a=n.duration===`auto`?0:n.duration,o=ng(a,r,n.iterations,i,n.iterationStart),s=rg(o,n.iterationStart,r,n.iterations,i,a),c=ig(r,n.iterations,s,o),l=ag(n.direction,c,s);return n.currentIteration=c,n.progress=l,n.easingFunction(l)}function sg(e,t,n){var r=lg(e,t),i=ug(r,n);return function(e,t){if(t!==null)i.filter(function(e){return t>=e.applyFrom&&t<e.applyTo}).forEach(function(n){var r=t-n.startOffset,i=n.endOffset-n.startOffset,a=i===0?0:r/i;e.setAttribute(n.property,n.interpolation(a),!1,!1)});else for(var n in r)cg(n)&&e.setAttribute(n,null)}}function cg(e){return e!==`offset`&&e!==`easing`&&e!==`composite`&&e!==`computedOffset`}function lg(e,t){for(var n={},r=0;r<e.length;r++)for(var i in e[r])if(cg(i)){var a={offset:e[r].offset,computedOffset:e[r].computedOffset,easing:e[r].easing,easingFunction:qh(e[r].easing)||t.easingFunction,value:e[r][i]};n[i]=n[i]||[],n[i].push(a)}return n}function ug(e,t){var n=[];for(var r in e)for(var i=e[r],a=0;a<i.length-1;a++){var o=a,s=a+1,c=i[o].computedOffset,l=i[s].computedOffset,u=c,d=l;a===0&&(u=-1/0,l===0&&(s=o)),a===i.length-2&&(d=1/0,c===1&&(o=s)),n.push({applyFrom:u,applyTo:d,startOffset:i[o].computedOffset,endOffset:i[s].computedOffset,easingFunction:i[o].easingFunction,property:r,interpolation:fg(r,i[o].value,i[s].value,t)})}return n.sort(function(e,t){return e.startOffset-t.startOffset}),n}var dg=function(e,t,n){return function(r){var i=pg(e,t,r);return zi(i)?i:n(i)}};function fg(e,t,n,r){var i=gd[e];if(i&&i.syntax&&i.int){var a=Y.styleValueRegistry.getPropertySyntax(i.syntax);if(a){var o=a.parser,s=o?o(t,r):t,c=o?o(n,r):n,l=a.mixer(s,c,r);if(l){var u=dg.apply(void 0,ln(l));return function(e){return e===0?t:e===1?n:u(e)}}}}return dg(!1,!0,function(e){return e?n:t})}function pg(e,t,n){if(typeof e==`number`&&typeof t==`number`)return e*(1-n)+t*n;if(typeof e==`boolean`&&typeof t==`boolean`||typeof e==`string`&&typeof t==`string`)return n<.5?e:t;if(Array.isArray(e)&&Array.isArray(t)){for(var r=e.length,i=t.length,a=Math.max(r,i),o=[],s=0;s<a;s++)o.push(pg(e[s<r?s:r-1],t[s<i?s:i-1],n));return o}throw Error(`Mismatched interpolation arguments ${e}:${t}`)}var mg=function(){function e(){R(this,e),this.delay=0,this.direction=`normal`,this.duration=`auto`,this._easing=`linear`,this.easingFunction=Rh,this.endDelay=0,this.fill=`auto`,this.iterationStart=0,this.iterations=1,this.currentIteration=null,this.progress=null}return z(e,[{key:`easing`,get:function(){return this._easing},set:function(e){this.easingFunction=qh(e),this._easing=e}}])}();function hg(e){var t=[];for(var n in e)if(!(n in[`easing`,`offset`,`composite`])){var r=e[n];Array.isArray(r)||(r=[r]);for(var i=r.length,a=0;a<i;a++){if(!t[a]){var o={};`offset`in e&&(o.offset=Number(e.offset)),`easing`in e&&(o.easing=e.easing),`composite`in e&&(o.composite=e.composite),t[a]=o}r[a]!==void 0&&r[a]!==null&&(t[a][n]=r[a])}}return t.sort(function(e,t){return(e.computedOffset||0)-(t.computedOffset||0)}),t}function gg(e,t){if(e===null)return[];Array.isArray(e)||(e=hg(e));for(var n=e.map(function(e){var n={};for(var r in t!=null&&t.composite&&(n.composite=`auto`),e){var i=e[r];if(r===`offset`){if(i!==null){if(i=Number(i),!isFinite(i))throw Error(`Keyframe offsets must be numbers.`);if(i<0||i>1)throw Error(`Keyframe offsets must be between 0 and 1.`);n.computedOffset=i}}else if(r===`composite`&&[`replace`,`add`,`accumulate`,`auto`].indexOf(i)===-1)throw Error(`${i} compositing is not supported`);n[r]=i}return n.offset===void 0&&(n.offset=null),n.easing===void 0&&(n.easing=t?.easing||`linear`),n.composite===void 0&&(n.composite=`auto`),n}),r=!0,i=-1/0,a=0;a<n.length;a++){var o=n[a].offset;if(V(o))r=!1;else{if(o<i)throw TypeError(`Keyframes are not loosely sorted by offset. Sort or specify offsets.`);i=o}}n=n.filter(function(e){return Number(e.offset)>=0&&Number(e.offset)<=1});function s(){var e=n.length;n[e-1].computedOffset=Number(n[e-1].offset??1),e>1&&(n[0].computedOffset=Number(n[0].offset??0));for(var t=0,r=Number(n[0].computedOffset),i=1;i<e;i++){var a=n[i].computedOffset;if(!V(a)&&!V(r)){for(var o=1;o<i-t;o++)n[t+o].computedOffset=r+(Number(a)-r)*o/(i-t);t=i,r=Number(a)}}}return r||s(),n}var _g=`backwards|forwards|both|none`.split(`|`),vg=`reverse|alternate|alternate-reverse`.split(`|`);function yg(e,t){var n=new mg;return t&&(n.fill=`both`,n.duration=`auto`),typeof e==`number`&&!isNaN(e)?n.duration=e:e!==void 0&&Object.keys(e).forEach(function(t){if(e[t]!==void 0&&e[t]!==null&&e[t]!==`auto`){if((typeof n[t]==`number`||t===`duration`)&&(typeof e[t]!=`number`||isNaN(e[t]))||t===`fill`&&_g.indexOf(e[t])===-1||t===`direction`&&vg.indexOf(e[t])===-1)return;n[t]=e[t]}}),n}function bg(e,t){return e=xg(e??{duration:`auto`}),yg(e,t)}function xg(e){return typeof e==`number`&&(e=isNaN(e)?{duration:`auto`}:{duration:e}),e}var Sg=function(){function e(t,n,r){var i=this;R(this,e),this.composite=`replace`,this.iterationComposite=`replace`,this.target=t,this.timing=bg(r,!1),this.timing.effect=this,this.timing.activeDuration=Jh(this.timing),this.timing.endTime=Math.max(0,this.timing.delay+this.timing.activeDuration+this.timing.endDelay),this.normalizedKeyframes=gg(n,this.timing),this.interpolations=sg(this.normalizedKeyframes,this.timing,this.target);var a=Y.globalThis.Proxy;this.computedTiming=a?new a(this.timing,{get:function(e,t){return t===`duration`?e.duration===`auto`?0:e.duration:t===`fill`?e.fill===`auto`?`none`:e.fill:t===`localTime`?i.animation&&i.animation.currentTime||null:t===`currentIteration`?!i.animation||i.animation.playState!==`running`?null:e.currentIteration||0:t===`progress`?!i.animation||i.animation.playState!==`running`?null:e.progress||0:e[t]},set:function(){return!0}}):this.timing}return z(e,[{key:`applyInterpolations`,value:function(){this.interpolations(this.target,Number(this.timeFraction))}},{key:`update`,value:function(e){return e===null?!1:(this.timeFraction=og(this.timing.activeDuration,e,this.timing),this.timeFraction!==null)}},{key:`getKeyframes`,value:function(){return this.normalizedKeyframes}},{key:`setKeyframes`,value:function(e){this.normalizedKeyframes=gg(e)}},{key:`getComputedTiming`,value:function(){return this.computedTiming}},{key:`getTiming`,value:function(){return this.timing}},{key:`updateTiming`,value:function(e){var t=this;Object.keys(e||{}).forEach(function(n){t.timing[n]=e[n]})}}])}();function Cg(e,t){return Number(e.id)-Number(t.id)}var wg=function(){function e(t){var n=this;R(this,e),this.animations=[],this.ticking=!1,this.timelineTicking=!1,this.hasRestartedThisFrame=!1,this.animationsWithPromises=[],this.inTick=!1,this.pendingEffects=[],this.currentTime=null,this.rafId=0,this.rafCallbacks=[],this.webAnimationsNextTick=function(e){n.currentTime=e,n.discardAnimations(),n.animations.length===0?n.timelineTicking=!1:n.requestAnimationFrame(n.webAnimationsNextTick)},this.processRafCallbacks=function(e){var t=n.rafCallbacks;n.rafCallbacks=[],e<Number(n.currentTime)&&(e=Number(n.currentTime)),n.animations.sort(Cg),n.animations=n.tick(e,!0,n.animations)[0],t.forEach(function(t){t[1](e)}),n.applyPendingEffects()},this.document=t}return z(e,[{key:`getAnimations`,value:function(){return this.discardAnimations(),this.animations.slice()}},{key:`isTicking`,value:function(){return this.inTick}},{key:`play`,value:function(e,t,n){var r=new th(new Sg(e,t,n),this);return this.animations.push(r),this.restartWebAnimationsNextTick(),r.updatePromises(),r.play(),r.updatePromises(),r}},{key:`applyDirtiedAnimation`,value:function(e){var t=this;if(!this.inTick){e.markTarget();var n=e.targetAnimations();n.sort(Cg),this.tick(Number(this.currentTime),!1,n.slice())[1].forEach(function(e){var n=t.animations.indexOf(e);n!==-1&&t.animations.splice(n,1)}),this.applyPendingEffects()}}},{key:`restart`,value:function(){return this.ticking||(this.ticking=!0,this.requestAnimationFrame(function(){}),this.hasRestartedThisFrame=!0),this.hasRestartedThisFrame}},{key:`destroy`,value:function(){this.document.defaultView.cancelAnimationFrame(this.frameId)}},{key:`applyPendingEffects`,value:function(){this.pendingEffects.forEach(function(e){e?.applyInterpolations()}),this.pendingEffects=[]}},{key:`updateAnimationsPromises`,value:function(){this.animationsWithPromises=this.animationsWithPromises.filter(function(e){return e.updatePromises()})}},{key:`discardAnimations`,value:function(){this.updateAnimationsPromises(),this.animations=this.animations.filter(function(e){return e.playState!==`finished`&&e.playState!==`idle`})}},{key:`restartWebAnimationsNextTick`,value:function(){this.timelineTicking||(this.timelineTicking=!0,this.requestAnimationFrame(this.webAnimationsNextTick))}},{key:`rAF`,value:function(e){var t=this.rafId++;return this.rafCallbacks.length===0&&(this.frameId=this.document.defaultView.requestAnimationFrame(this.processRafCallbacks)),this.rafCallbacks.push([t,e]),t}},{key:`requestAnimationFrame`,value:function(e){var t=this;return this.rAF(function(n){t.updateAnimationsPromises(),e(n),t.updateAnimationsPromises()})}},{key:`tick`,value:function(e,t,n){var r=this,i,a;this.inTick=!0,this.hasRestartedThisFrame=!1,this.currentTime=e,this.ticking=!1;var o=[],s=[],c=[],l=[];return n.forEach(function(n){n.tick(e,t),n._inEffect?(s.push(n.effect),n.markTarget()):(o.push(n.effect),n.unmarkTarget()),n._needsTick&&(r.ticking=!0);var i=n._inEffect||n._needsTick;n._inTimeline=i,i?c.push(n):l.push(n)}),(i=this.pendingEffects).push.apply(i,o),(a=this.pendingEffects).push.apply(a,s),this.ticking&&this.requestAnimationFrame(function(){}),this.inTick=!1,[c,l]}}])}();Y.EasingFunction=qh,Y.AnimationTimeline=wg,Y.CameraContribution=function(e){function t(){var e;R(this,t);var n=[...arguments];return e=mn(this,t,[].concat(n)),e.landmarks=[],e}return gn(t,e),z(t,[{key:`rotate`,value:function(e,t,n){if(this.relElevation=zs(t),this.relAzimuth=zs(e),this.relRoll=zs(n),this.elevation+=this.relElevation,this.azimuth+=this.relAzimuth,this.roll+=this.relRoll,this.type===lc.EXPLORING){var r=ni(ti(),[1,0,0],Us((this.rotateWorld?1:-1)*this.relElevation)),i=ni(ti(),[0,1,0],Us((this.rotateWorld?1:-1)*this.relAzimuth)),a=ni(ti(),[0,0,1],Us(this.relRoll)),o=ri(ti(),i,r);o=ri(ti(),o,a);var s=ir(Dn(),o);Rn(this.matrix,this.matrix,[0,0,-this.distance]),Ln(this.matrix,this.matrix,s),Rn(this.matrix,this.matrix,[0,0,this.distance])}else{if(Math.abs(this.elevation)>90)return this;this.computeMatrix()}return this._getAxes(),this.type===lc.ORBITING||this.type===lc.EXPLORING?this._getPosition():this.type===lc.TRACKING&&this._getFocalPoint(),this._update(),this}},{key:`pan`,value:function(e,t){var n=Vs(e,t,0),r=Er(this.position);return jr(r,r,Ir(Tr(),this.right,n[0])),jr(r,r,Ir(Tr(),this.up,n[1])),this._setPosition(r),this.triggerUpdate(),this}},{key:`dolly`,value:function(e){var t=this.forward,n=Er(this.position),r=e*this.dollyingStep,i=this.distance+e*this.dollyingStep;return r=Math.max(Math.min(i,this.maxDistance),this.minDistance)-this.distance,n[0]+=r*t[0],n[1]+=r*t[1],n[2]+=r*t[2],this._setPosition(n),this.type===lc.ORBITING||this.type===lc.EXPLORING?this._getDistance():this.type===lc.TRACKING&&jr(this.focalPoint,n,this.distanceVector),this.triggerUpdate(),this}},{key:`cancelLandmarkAnimation`,value:function(){this.landmarkAnimationID!==void 0&&this.canvas.cancelAnimationFrame(this.landmarkAnimationID)}},{key:`createLandmark`,value:function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},n=t.position,r=n===void 0?this.position:n,i=t.focalPoint,a=i===void 0?this.focalPoint:i,o=t.roll,s=t.zoom,c=new Y.CameraContribution;c.setType(this.type,void 0),c.setPosition(r[0],r[1]??this.position[1],r[2]??this.position[2]),c.setFocalPoint(a[0],a[1]??this.focalPoint[1],a[2]??this.focalPoint[2]),c.setRoll(o??this.roll),c.setZoom(s??this.zoom);var l={name:e,matrix:On(c.getWorldTransform()),right:Er(c.right),up:Er(c.up),forward:Er(c.forward),position:Er(c.getPosition()),focalPoint:Er(c.getFocalPoint()),distanceVector:Er(c.getDistanceVector()),distance:c.getDistance(),dollyingStep:c.getDollyingStep(),azimuth:c.getAzimuth(),elevation:c.getElevation(),roll:c.getRoll(),relAzimuth:c.relAzimuth,relElevation:c.relElevation,relRoll:c.relRoll,zoom:c.getZoom()};return this.landmarks.push(l),l}},{key:`gotoLandmark`,value:function(e){var t=this,n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=Pi(e)?this.landmarks.find(function(t){return t.name===e}):e;if(r){var i=zi(n)?{duration:n}:n,a=i.easing,o=a===void 0?`linear`:a,s=i.duration,c=s===void 0?100:s,l=i.easingFunction,u=l===void 0?void 0:l,d=i.onfinish,f=d===void 0?void 0:d,p=i.onframe,m=p===void 0?void 0:p,h=.01;this.cancelLandmarkAnimation();var g=r.position,_=r.focalPoint,v=r.zoom,y=r.roll,b=u||Y.EasingFunction(o),x,S=function(){t.setFocalPoint(_),t.setPosition(g),t.setRoll(y),t.setZoom(v),t.computeMatrix(),t.triggerUpdate(),f?.()};if(c===0)return S();var C=function(e){x===void 0&&(x=e);var n=e-x;if(n>=c){S();return}var r=b(n/c),i=Tr(),a=Tr(),o=1,s=0;if(Vr(i,t.focalPoint,_,r),Vr(a,t.position,g,r),s=t.roll*(1-r)+y*r,o=t.zoom*(1-r)+v*r,t.setFocalPoint(i),t.setPosition(a),t.setRoll(s),t.setZoom(o),qr(i,_)+qr(a,g)<=h&&v===void 0&&y===void 0)return S();t.computeMatrix(),t.triggerUpdate(),n<c&&(m?.(r),t.landmarkAnimationID=t.canvas.requestAnimationFrame(C))};this.canvas.requestAnimationFrame(C)}}}])}(mc);var Tg=[`body`,`startHead`,`endHead`,`startHeadOffset`,`endHeadOffset`],Eg=[`body`,`startHead`,`endHead`,`startHeadOffset`,`endHeadOffset`],Dg=[`body`,`startHead`,`endHead`,`startHeadOffset`,`endHeadOffset`],Og=function(e){function t(e){var n;R(this,t),n=mn(this,t,[tn(tn({},e),{},{type:t.tag})]);var r=n.attributes,i=r.body,a=r.startHead,o=r.endHead;r.startHeadOffset,r.endHeadOffset;var s=bs(r,Tg);if(!i)throw Error(`Arrow's body is required`);return n.body=i,n.appendChild(n.body),n.handleBodyAttributeChanged(n.body),a&&n.appendArrowHead(n.getArrowHeadType(a),!0),o&&n.appendArrowHead(n.getArrowHeadType(o),!1),n.applyArrowStyle(s,[n.body,n.startHead,n.endHead]),n}return gn(t,e),z(t,[{key:`handleBodyAttributeChanged`,value:function(e){var t=this;e.addEventListener(op.ATTR_MODIFIED,function(e){var n=e.attrName;n===`x1`||n===`y1`?t.startHead&&t.transformArrowHead(t.startHead,!0):(n===`x2`||n===`y2`)&&t.endHead&&t.transformArrowHead(t.endHead,!1)})}},{key:`getBody`,value:function(){return this.body}},{key:`getStartHead`,value:function(){return this.startHead}},{key:`getEndHead`,value:function(){return this.endHead}},{key:`attributeChangedCallback`,value:function(e,t,n){if(e===`opacity`||e===`strokeOpacity`||e===`stroke`||e===`lineWidth`||e===`increasedLineWidthForHitTesting`)this.applyArrowStyle(L({},e,n),[this.body,this.startHead,this.endHead]);else if(e===`startHead`||e===`endHead`){var r=e===`startHead`;if(this.destroyArrowHead(r),n){var i=this.attributes;i.body,i.startHead,i.endHead,i.startHeadOffset,i.endHeadOffset;var a=bs(i,Eg);this.appendArrowHead(this.getArrowHeadType(n),r),this.applyArrowStyle(a,[r?this.startHead:this.endHead])}}else if(e===`body`){var o=this.attributes;o.body,o.startHead,o.endHead,o.startHeadOffset,o.endHeadOffset;var s=bs(o,Dg);this.body.destroy(),this.body=n,this.appendChild(this.body),this.applyArrowStyle(s,[this.body])}else e===`startHeadOffset`?this.moveArrowHeadAlongTangent(n,!0):e===`endHeadOffset`&&this.moveArrowHeadAlongTangent(n,!1)}},{key:`getArrowHeadType`,value:function(e){return typeof e==`boolean`?`default`:`custom`}},{key:`appendArrowHead`,value:function(e,t){var n=e===`default`?this.createDefaultArrowHead():t?this.attributes.startHead:this.attributes.endHead;this.transformArrowHead(n,t),n.setAttribute(`zIndex`,1),t?this.startHead=n:this.endHead=n,this.appendChild(n);var r=t?this.attributes.startHeadOffset:this.attributes.endHeadOffset;r&&this.moveArrowHeadAlongTangent(r,t)}},{key:`transformArrowHead`,value:function(e,t){var n=Tr(),r=0,i=0,a=0,o=0,s=0,c=this.body&&this.body.nodeName;if(c===G.LINE){var l=this.body.attributes,u=l.x1,d=l.x2,f=l.y1,p=l.y2;i=t?d:u,a=t?u:d,o=t?p:f,s=t?f:p}else if(c===G.POLYLINE){var m=this.body.attributes.points,h=m.length;i=t?m[1][0]:m[h-2][0],o=t?m[1][1]:m[h-2][1],a=t?m[0][0]:m[h-1][0],s=t?m[0][1]:m[h-1][1]}else if(c===G.PATH){var g=bn(this.getTangent(this.body,t),2),_=g[0],v=g[1];i=_[0],o=_[1],a=v[0],s=v[1]}var y=i-a,b=o-s;r=Math.atan2(b,y),n=Or(a,s,0),t?(this.startHeadPosition=n,this.startHeadRad=r):(this.endHeadPosition=n,this.endHeadRad=r),e.setLocalPosition(n),e.setLocalEulerAngles(r*180/Math.PI+e.getLocalEulerAngles())}},{key:`moveArrowHeadAlongTangent`,value:function(e,t){var n=t?this.startHead:this.endHead;n&&n.setLocalPosition(Kr(Tr(),t?this.startHeadPosition:this.endHeadPosition,Or(Math.cos(t?this.startHeadRad:this.endHeadRad)*e,Math.sin(t?this.startHeadRad:this.endHeadRad)*e,0))),this.body}},{key:`destroyArrowHead`,value:function(e){e&&this.startHead&&(this.startHead.destroy(),this.startHead=void 0),!e&&this.endHead&&(this.endHead.destroy(),this.endHead=void 0)}},{key:`getTangent`,value:function(e,t){return t?e.getStartTangent():e.getEndTangent()}},{key:`createDefaultArrowHead`,value:function(){var e=this.attributes,t=e.stroke,n=e.lineWidth,r=Math.sin,i=Math.cos,a=Math.PI,o=10*i(a/6);return new fm({style:{d:`M${o/2},${10*r(a/6)} L-${o/2},0 L${o/2},-${10*r(a/6)}`,stroke:t,lineWidth:n,transformOrigin:`center`}})}},{key:`applyArrowStyle`,value:function(e,t){var n=e.opacity,r=e.stroke,i=e.strokeOpacity,a=e.lineWidth,o=e.increasedLineWidthForHitTesting;t.forEach(function(e){e&&(V(n)||(e.style.opacity=n),V(r)||(e.style.stroke=r),V(i)||(e.style.strokeOpacity=i),V(a)||(e.style.lineWidth=a),V(o)||(e.style.increasedLineWidthForHitTesting=o))})}}])}(nm);Og.tag=`arrow`,Og.PARSED_STYLE_LIST=new Set([].concat(ln(nm.PARSED_STYLE_LIST),[`body`,`startHead`,`endHead`,`startHeadOffset`,`endHeadOffset`,`stroke`,`lineWidth`,`opacity`,`strokeOpacity`]));var kg=Math.PI,Ag=kg*2,jg=Math.sin,Mg=Math.cos,Ng=Math.acos,Pg=Math.atan2,Fg=Math.sqrt,Ig=Math.max,Lg=Math.min,Rg=1e-4;[{name:`sr`,inherits:!1,interpolable:!0,syntax:K.LENGTH_PERCENTAGE},{name:`sr0`,inherits:!1,interpolable:!0,syntax:K.LENGTH_PERCENTAGE},{name:`startAngle`,inherits:!1,interpolable:!0,syntax:K.ANGLE},{name:`endAngle`,inherits:!1,interpolable:!0,syntax:K.ANGLE}].forEach(function(e){xm.registerProperty(e)});var zg=function(e,t,n,r){return{x:e+n*Math.cos(r),y:t+n*Math.sin(r)}};function Bg(e,t,n,r,i,a,o,s){var c=n-e,l=r-t,u=o-i,d=s-a,f=d*c-u*l;if(!(f*f<Rg))return f=(u*(t-a)-d*(e-i))/f,[e+f*c,t+f*l]}function Vg(e,t,n,r,i,a,o){var s=e-n,c=t-r,l=(o?a:-a)/Fg(s*s+c*c),u=l*c,d=-l*s,f=e+u,p=t+d,m=n+u,h=r+d,g=(f+m)/2,_=(p+h)/2,v=m-f,y=h-p,b=v*v+y*y,x=i-a,S=f*h-m*p,C=(y<0?-1:1)*Fg(Ig(0,x*x*b-S*S)),w=(S*y-v*C)/b,T=(-S*v-y*C)/b,E=(S*y+v*C)/b,D=(-S*v+y*C)/b,O=w-g,k=T-_,A=E-g,j=D-_;return O*O+k*k>A*A+j*j&&(w=E,T=D),{cx:w,cy:T,x0:-u,y0:-d,x1:w*(i/x-1),y1:T*(i/x-1)}}function Hg(e,t){return t=t<0&&e>=0?t+Ag:t,t-e<=kg?0:1}var Ug=function(e){function t(e){var n;return R(this,t),n=mn(this,t,[e]),n.updatePath(),n}return gn(t,e),z(t,[{key:`setAttribute`,value:function(e,n,r){Io(t,`setAttribute`,this,3)([e,n,r]),[`startAngle`,`endAngle`,`sr`,`sr0`,`radius`].indexOf(e)>-1&&this.updatePath()}},{key:`updatePath`,value:function(){var e=this.parsedStyle,n=e.x,r=e.y,i=e.startAngle,a=e.endAngle,o=e.sr,s=e.sr0,c=e.radius,l=this.createPath(n,r,i?Us(i):0,a?Us(a):Math.PI*2,o||0,s||0,c||[0,0,0,0]);Io(t,`setAttribute`,this,3)([`d`,l])}},{key:`createPath`,value:function(e,t,n,r,i,a,o){if(!(i<=0)){var s=zg(e,t,i,n),c=zg(e,t,i,r),l=zg(e,t,a,n),u=zg(e,t,a,r);if(Vi(r-n,Math.PI*2)){var d=zg(e,t,i,n+Math.PI),f=zg(e,t,a,n+Math.PI),p=[[`M`,s.x,s.y],[`A`,i,i,0,1,1,d.x,d.y],[`A`,i,i,0,1,1,c.x,c.y],[`M`,l.x,l.y]];return a&&(p.push([`A`,a,a,0,1,0,f.x,f.y]),p.push([`A`,a,a,0,1,0,u.x,u.y])),p.push([`M`,s.x,s.y]),p.push([`Z`]),p}var m=r-n,h=i*Mg(n),g=i*jg(n),_=a*Mg(r),v=a*jg(r),y=i*Mg(r),b=i*jg(r),x=a*Mg(n),S=a*jg(n),C=bn(o,4),w=C[0],T=C[1],E=C[2],D=C[3],O=(i-a)/2,k=Lg(O,w),A=Lg(O,T),j=Lg(O,E),ee=Lg(O,D),M=Ig(k,A),te=Ig(j,ee),ne=M,re=te;if((M>Rg||te>Rg)&&m<kg){var ie=Bg(h,g,x,S,y,b,_,v);if(ie){var N=h-ie[0],ae=g-ie[1],oe=y-ie[0],P=b-ie[1],se=1/jg(Ng((N*oe+ae*P)/(Fg(N*N+ae*ae)*Fg(oe*oe+P*P)))/2),ce=Fg(ie[0]*ie[0]+ie[1]*ie[1]);ne=Lg(M,(i-ce)/(se+1)),re=Lg(te,(a-ce)/(se-1))}}var le=Hg(n,r),ue=!0,de=[];if(ne>Rg){var fe=Lg(w,ne),pe=Lg(T,ne),me=Vg(x,S,h,g,i,fe,ue),he=Vg(y,b,_,v,i,pe,ue);if(de.push([`M`,e+me.cx+me.x0,t+me.cy+me.y0]),ne<M&&fe===pe){var ge=Pg(me.y0,me.x0),_e=Pg(he.y0,he.x0);de.push([`A`,ne,ne,0,Hg(ge,_e),1,e+he.cx+he.x0,t+he.cy+he.y0])}else{if(fe>0){var ve=Pg(me.y0,me.x0),ye=Pg(me.y1,me.x1),be=zg(e,t,i,ye);de.push([`A`,fe,fe,0,Hg(ve,ye),1,be.x,be.y])}var xe=Pg(me.cy+me.y1,me.cx+me.x1),Se=Pg(he.cy+he.y1,he.cx+he.x1),Ce=zg(e,t,i,Se);if(de.push([`A`,i,i,0,Hg(xe,Se),1,Ce.x,Ce.y]),pe>0){var we=Pg(he.y1,he.x1),Te=Pg(he.y0,he.x0);de.push([`A`,pe,pe,0,Hg(we,Te),1,e+he.cx+he.x0,t+he.cy+he.y0])}}}else de.push([`M`,s.x,s.y]),de.push([`A`,i,i,0,le,1,c.x,c.y]);if(a<Rg)de.push([`L`,u.x,u.y]);else if(re>Rg){var Ee=Lg(D,re),De=Lg(E,re),Oe=Vg(_,v,0,0,a-i,De,ue),ke=Vg(0,0,x,S,a-i,Ee,ue);if(de.push([`L`,e+Oe.cx+Oe.x0,t+Oe.cy+Oe.y0]),re<te&&Ee===De){var Ae=Pg(Oe.y0,Oe.x0),je=Pg(ke.y0,ke.x0),Me=zg(e,t,a,je);de.push([`A`,ne,ne,0,Hg(Ae,je),1,Me.x,Me.y])}else{if(De>0){var Ne=Pg(Oe.y0,Oe.x0),F=Pg(Oe.y1,Oe.x1),Pe=zg(e,t,a-i,F);de.push([`A`,De,De,0,Hg(Ne,F),1,Pe.x,Pe.y])}var Fe=Pg(Oe.cy+Oe.y1,Oe.cx+Oe.x1),Ie=Pg(ke.cy+ke.y1,ke.cx+ke.x1),Le=zg(e,t,a,Ie);if(de.push([`A`,a,a,0,Hg(Ie,Fe),0,Le.x,Le.y]),de.push([`L`,Le.x,Le.y]),Ee>0){var Re=Pg(ke.y1,ke.x1),ze=Pg(ke.y0,ke.x0);de.push([`A`,Ee,Ee,0,Hg(Re,ze),1,e+ke.cx+ke.x0,t+ke.cy+ke.y0])}}}else de.push([`L`,u.x,u.y]),de.push([`A`,a,a,0,le,0,l.x,l.y]);return de.push([`Z`]),de}}}])}(fm);Ug.PARSED_STYLE_LIST=new Set([].concat(ln(fm.PARSED_STYLE_LIST),[`x`,`y`,`sr`,`sr0`,`radius`,`startAngle`,`endAngle`]));var Wg={duration:500},Gg={duration:1e3,easing:`cubic-bezier(0.250, 0.460, 0.450, 0.940)`,iterations:1,fill:`both`},Kg;(function(e){e.NodeAdded=`NodeAdded`,e.NodeUpdated=`NodeUpdated`,e.NodeRemoved=`NodeRemoved`,e.EdgeAdded=`EdgeAdded`,e.EdgeUpdated=`EdgeUpdated`,e.EdgeRemoved=`EdgeRemoved`,e.ComboAdded=`ComboAdded`,e.ComboUpdated=`ComboUpdated`,e.ComboRemoved=`ComboRemoved`})(Kg||={});var qg;(function(e){e.DRAW=`draw`,e.COLLAPSE=`collapse`,e.EXPAND=`expand`,e.TRANSFORM=`transform`})(qg||={});var Jg;(function(e){e.CLICK=`canvas:click`,e.DBLCLICK=`canvas:dblclick`,e.POINTER_OVER=`canvas:pointerover`,e.POINTER_LEAVE=`canvas:pointerleave`,e.POINTER_ENTER=`canvas:pointerenter`,e.POINTER_MOVE=`canvas:pointermove`,e.POINTER_OUT=`canvas:pointerout`,e.POINTER_DOWN=`canvas:pointerdown`,e.POINTER_UP=`canvas:pointerup`,e.CONTEXT_MENU=`canvas:contextmenu`,e.DRAG_START=`canvas:dragstart`,e.DRAG=`canvas:drag`,e.DRAG_END=`canvas:dragend`,e.DRAG_ENTER=`canvas:dragenter`,e.DRAG_OVER=`canvas:dragover`,e.DRAG_LEAVE=`canvas:dragleave`,e.DROP=`canvas:drop`,e.WHEEL=`canvas:wheel`})(Jg||={});var Yg;(function(e){e.CLICK=`combo:click`,e.DBLCLICK=`combo:dblclick`,e.POINTER_OVER=`combo:pointerover`,e.POINTER_LEAVE=`combo:pointerleave`,e.POINTER_ENTER=`combo:pointerenter`,e.POINTER_MOVE=`combo:pointermove`,e.POINTER_OUT=`combo:pointerout`,e.POINTER_DOWN=`combo:pointerdown`,e.POINTER_UP=`combo:pointerup`,e.CONTEXT_MENU=`combo:contextmenu`,e.DRAG_START=`combo:dragstart`,e.DRAG=`combo:drag`,e.DRAG_END=`combo:dragend`,e.DRAG_ENTER=`combo:dragenter`,e.DRAG_OVER=`combo:dragover`,e.DRAG_LEAVE=`combo:dragleave`,e.DROP=`combo:drop`})(Yg||={});var X;(function(e){e.CLICK=`click`,e.DBLCLICK=`dblclick`,e.POINTER_OVER=`pointerover`,e.POINTER_LEAVE=`pointerleave`,e.POINTER_ENTER=`pointerenter`,e.POINTER_MOVE=`pointermove`,e.POINTER_OUT=`pointerout`,e.POINTER_DOWN=`pointerdown`,e.POINTER_UP=`pointerup`,e.CONTEXT_MENU=`contextmenu`,e.DRAG_START=`dragstart`,e.DRAG=`drag`,e.DRAG_END=`dragend`,e.DRAG_ENTER=`dragenter`,e.DRAG_OVER=`dragover`,e.DRAG_LEAVE=`dragleave`,e.DROP=`drop`,e.KEY_DOWN=`keydown`,e.KEY_UP=`keyup`,e.WHEEL=`wheel`,e.PINCH=`pinch`})(X||={});var Xg;(function(e){e.KEY_DOWN=`keydown`,e.KEY_UP=`keyup`})(Xg||={});var Zg;(function(e){e.CLICK=`edge:click`,e.DBLCLICK=`edge:dblclick`,e.POINTER_OVER=`edge:pointerover`,e.POINTER_LEAVE=`edge:pointerleave`,e.POINTER_ENTER=`edge:pointerenter`,e.POINTER_MOVE=`edge:pointermove`,e.POINTER_OUT=`edge:pointerout`,e.POINTER_DOWN=`edge:pointerdown`,e.POINTER_UP=`edge:pointerup`,e.CONTEXT_MENU=`edge:contextmenu`,e.DRAG_ENTER=`edge:dragenter`,e.DRAG_OVER=`edge:dragover`,e.DRAG_LEAVE=`edge:dragleave`,e.DROP=`edge:drop`})(Zg||={});var Z;(function(e){e.BEFORE_CANVAS_INIT=`beforecanvasinit`,e.AFTER_CANVAS_INIT=`aftercanvasinit`,e.BEFORE_SIZE_CHANGE=`beforesizechange`,e.AFTER_SIZE_CHANGE=`aftersizechange`,e.BEFORE_ELEMENT_CREATE=`beforeelementcreate`,e.AFTER_ELEMENT_CREATE=`afterelementcreate`,e.BEFORE_ELEMENT_UPDATE=`beforeelementupdate`,e.AFTER_ELEMENT_UPDATE=`afterelementupdate`,e.BEFORE_ELEMENT_DESTROY=`beforeelementdestroy`,e.AFTER_ELEMENT_DESTROY=`afterelementdestroy`,e.BEFORE_ELEMENT_TRANSLATE=`beforeelementtranslate`,e.AFTER_ELEMENT_TRANSLATE=`afterelementtranslate`,e.BEFORE_DRAW=`beforedraw`,e.AFTER_DRAW=`afterdraw`,e.BEFORE_RENDER=`beforerender`,e.AFTER_RENDER=`afterrender`,e.BEFORE_ANIMATE=`beforeanimate`,e.AFTER_ANIMATE=`afteranimate`,e.BEFORE_LAYOUT=`beforelayout`,e.AFTER_LAYOUT=`afterlayout`,e.BEFORE_STAGE_LAYOUT=`beforestagelayout`,e.AFTER_STAGE_LAYOUT=`afterstagelayout`,e.BEFORE_TRANSFORM=`beforetransform`,e.AFTER_TRANSFORM=`aftertransform`,e.BATCH_START=`batchstart`,e.BATCH_END=`batchend`,e.BEFORE_DESTROY=`beforedestroy`,e.AFTER_DESTROY=`afterdestroy`,e.BEFORE_RENDERER_CHANGE=`beforerendererchange`,e.AFTER_RENDERER_CHANGE=`afterrendererchange`})(Z||={});var Qg;(function(e){e.UNDO=`undo`,e.REDO=`redo`,e.CANCEL=`cancel`,e.ADD=`add`,e.CLEAR=`clear`,e.CHANGE=`change`})(Qg||={});var $g;(function(e){e.CLICK=`node:click`,e.DBLCLICK=`node:dblclick`,e.POINTER_OVER=`node:pointerover`,e.POINTER_LEAVE=`node:pointerleave`,e.POINTER_ENTER=`node:pointerenter`,e.POINTER_MOVE=`node:pointermove`,e.POINTER_OUT=`node:pointerout`,e.POINTER_DOWN=`node:pointerdown`,e.POINTER_UP=`node:pointerup`,e.CONTEXT_MENU=`node:contextmenu`,e.DRAG_START=`node:dragstart`,e.DRAG=`node:drag`,e.DRAG_END=`node:dragend`,e.DRAG_ENTER=`node:dragenter`,e.DRAG_OVER=`node:dragover`,e.DRAG_LEAVE=`node:dragleave`,e.DROP=`node:drop`})($g||={});var e_=`combo`,t_=`tree`,n_;(function(e){e.NODE=`node`,e.EDGE=`edge`,e.COMBO=`combo`,e.THEME=`theme`,e.PALETTE=`palette`,e.LAYOUT=`layout`,e.BEHAVIOR=`behavior`,e.PLUGIN=`plugin`,e.ANIMATION=`animation`,e.TRANSFORM=`transform`,e.SHAPE=`shape`})(n_||={});var r_={animation:{},behavior:{},combo:{},edge:{},layout:{},node:{},palette:{},theme:{},plugin:{},transform:{},shape:{}};function i_(e,t){let n=r_[e]?.[t];if(n)return n}var a_=`5.1.0`,o_=`G6`;function s_(e){return`[${o_} v${a_}] ${e}`}var c_={mute:!1,debug:e=>{!c_.mute&&console.debug(s_(e))},info:e=>{!c_.mute&&console.info(s_(e))},warn:e=>{!c_.mute&&console.warn(s_(e))},error:e=>{!c_.mute&&console.error(s_(e))}};function l_(e){let{theme:t}=e;return t?i_(n_.THEME,t)||(c_.warn(`The theme of ${t} is not registered.`),{}):{}}function u_(e,t){if(Array.isArray(e)&&e.length===0)return null;let n=Array.isArray(e)?e[0]:e,r=Array.isArray(e)?e.slice(1):t||[];return new Proxy(n,{get(e,t){return typeof e[t]==`function`&&![`onframe`,`onfinish`].includes(t)?(...n)=>{e[t](...n),r.forEach(e=>e[t]?.call(e,...n))}:t===`finished`?Promise.all([n.finished,...r.map(e=>e.finished)]):Reflect.get(e,t)},set(e,t,n){return[`onframe`,`onfinish`].includes(t)||r.forEach(e=>{e[t]=n}),Reflect.set(e,t,n)}})}function d_(e){let t=e.reduce((e,t)=>(Object.entries(t).forEach(([t,n])=>{e[t]===void 0?e[t]=[n]:e[t].push(n)}),e),{});Object.entries(t).forEach(([n,r])=>{(r.length!==e.length||r.some(e=>V(e))||r.every(e=>![`sourceNode`,`targetNode`,`childrenNode`].includes(n)&&_a(e,r[0])))&&delete t[n]});let n=Object.entries(t).reduce((e,[t,n])=>(n.forEach((n,r)=>{e[r]?e[r][t]=n:e[r]={[t]:n}}),e),[]);return e.length!==0&&n.length===0&&n.push({_:0},{_:0}),n}function f_(e){switch(e){case`opacity`:return 1;case`x`:case`y`:case`z`:case`zIndex`:return 0;case`visibility`:return`visible`;case`collapsed`:return!1;case`states`:return[];default:return}}function p_(e,t){let{animation:n}=e;if(n===!1||t===!1)return!1;let r=Object.assign({},Wg);return wi(n)&&Object.assign(r,n),wi(t)&&Object.assign(r,t),r}function m_(e){return typeof e==`string`?i_(n_.ANIMATION,e)||(c_.warn(`The animation of ${e} is not registered.`),[]):e}function h_(e,t,n,r){let{animation:i}=e;if(i===!1||r===!1)return[];let a=e?.[t]?.animation;if(a===!1)return[];let o=a?.[n];if(o===!1)return[];let s=l_(e)[t]?.animation,c=(e=[])=>m_(e).map(e=>Object.assign(Object.assign(Object.assign(Object.assign({},Gg),wi(i)&&i),e),wi(r)&&r));if(o)return c(o);if(!s)return[];let l=s[n];return l===!1?[]:c(l)}function g_(e,t,n,r=[]){if(!r&&e===0&&t===0&&n===0)return null;if(Array.isArray(r)){let i=-1,a=[];for(let o=0;o<r.length;o++){let s=r[o];if(s[0]===`translate`){if(s[1]===e&&s[2]===t)return null;i=o,a.push([`translate`,e,t])}else if(s[0]===`translate3d`){if(s[1]===e&&s[2]===t&&s[3]===n)return null;i=o,a.push([`translate3d`,e,t,n??0])}else a.push(s)}return i===-1&&a.splice(0,0,zi(n)?[`translate3d`,e,t,n??0]:[`translate`,e,t]),a.length===0?null:a}let i=r?r.replace(/translate(3d)?\([^)]*\)/g,``):``;return n===0?`translate(${e}, ${t})${i}`:`translate3d(${e}, ${t}, ${n})${i}`}var __=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},v_=(e,t,n)=>{if(!n.length)return null;let[r,i]=t,a=t=>{if(t){let n=e.getShape(t);if(!n)return null;let a=`get${Ji(t)}Style`,o=(e?.[a])?.bind(e)||(e=>e);return{shape:n,fromStyle:o?.(r)||{},toStyle:o?.(i)||{}}}else return{shape:e,fromStyle:r,toStyle:i}},o,s=n.map(e=>{var{fields:t,shape:n,states:r}=e,i=__(e,[`fields`,`shape`,`states`]);let s=a(n);if(!s)return null;let{shape:c,fromStyle:l,toStyle:u}=s,d=[{},{}];if(t.forEach(e=>{Object.assign(d[0],{[e]:l[e]??f_(e)}),Object.assign(d[1],{[e]:u[e]??f_(e)})}),d.some(e=>Object.keys(e).some(e=>[`x`,`y`,`z`].includes(e)))){let{x:e=0,y:t=0,z:n,transform:r=``}=c.attributes||{};d.forEach(i=>{i.transform=g_(i.x??e,i.y??t,i.z??n,r)})}let f=c.animate(d_(d),i);return n===void 0&&(o=f),f}).filter(Boolean),c=o||s?.[0];return c?u_(c,s.filter(e=>e!==e)):null},y_=[{fields:[`opacity`]}],b_=[{fields:[`x`,`y`]}],x_=[{fields:[`x`,`y`]}],S_=x_,C_=[{fields:[`sourceNode`,`targetNode`]}],w_=C_,T_=[{fields:[`childrenNode`,`x`,`y`]}],E_=T_;function D_(e){return`source`in e&&`target`in e}function O_(e){return e.length===2}function k_(e){return e.length===3}function A_(e){return e instanceof Float32Array?!0:Array.isArray(e)&&(e.length===2||e.length===3)?e.every(e=>typeof e==`number`):!1}function j_(e,t,n){return e>=t&&e<=n}function M_(e=0){if(Array.isArray(e)){let[t=0,n=t,r=t,i=n]=e;return[t,n,r,i]}return[e,e,e,e]}function N_(e=0){let t=M_(e);return t[0]+t[2]}function P_(e){return e.max[0]-e.min[0]}function F_(e){return e.max[1]-e.min[1]}function I_(e){return[P_(e),F_(e)]}function L_(e,t){let n=A_(e)?R_(e):e.getShape(`key`).getBounds();return t?z_(n,t):n}function R_(e){let[t,n,r=0]=e,i=new As;return i.setMinMax([t,n,r],[t,n,r]),i}function z_(e,t){let[n,r,i,a]=M_(t),[o,s,c]=e.min,[l,u,d]=e.max,f=new As;return f.setMinMax([o-a,s-n,c],[l+r,u+i,d]),f}function B_(e){if(e.length===0)return new As;if(e.length===1)return e[0];let t=new As;t.setMinMax(e[0].min,e[0].max);for(let n=1;n<e.length;n++){let r=e[n];t.setMinMax([Math.min(t.min[0],r.min[0]),Math.min(t.min[1],r.min[1]),Math.min(t.min[2],r.min[2])],[Math.max(t.max[0],r.max[0]),Math.max(t.max[1],r.max[1]),Math.max(t.max[2],r.max[2])])}return t}function V_(e,t){let[n,r]=e.min,[i,a]=e.max,[o,s]=t.min,[c,l]=t.max;return n>=o&&i<=c&&r>=s&&a<=l}function H_(e,t){return j_(e[0],t.min[0],t.max[0])&&j_(e[1],t.min[1],t.max[1])}function U_(e,t,n=!1){let{min:[r,i],max:[a,o]}=t,s=(e[1]===i||e[1]===o)&&(n||j_(e[0],r,a)),c=(e[0]===r||e[0]===a)&&(n||j_(e[1],i,o));return s||c}function W_(e,t){return!H_(e,t)}function G_(e,t){let{center:n}=t;return e[0]===n[0]&&e[1]===n[1]}function K_(e,t){let[n,r]=e,[i,a]=t.min,[o,s]=t.max,c=n-i,l=o-n,u=r-a,d=s-r,f=Math.min(c,l,u,d);return f===c?`left`:f===l?`right`:f===u?`top`:f===d?`bottom`:`left`}function q_(e,t){let n=oa(e);if(H_(e,t))switch(K_(e,t)){case`left`:n[0]=t.min[0];break;case`right`:n[0]=t.max[0];break;case`top`:n[1]=t.min[1];break;case`bottom`:n[1]=t.max[1];break}else{let[r,i]=e,[a,o]=t.min,[s,c]=t.max;n[0]=j_(r,a,s)?r:r<a?a:s,n[1]=j_(i,o,c)?i:i<o?o:c}return n}function J_(e,t){let{center:n}=e,[r,i]=I_(e);return[t===`up`||t===`down`?n[0]:t===`right`?n[0]-r/6:n[0]+r/6,t===`left`||t===`right`?n[1]:t===`down`?n[1]-i/6:n[1]+i/6]}function Y_(e,t){let[n,r]=I_(e);return[n,r]=t===`up`||t===`down`?[n,r]:[r,n],(r**2-(Math.sqrt((n/2)**2+r**2)-n/2)**2)/(2*r)}function X_(e){let{min:[t,n],max:[r,i]}=e,a=[t,i],o=[r,i],s=[r,n],c=[t,n];return[[a,o],[o,s],[s,c],[c,a]]}var Z_=function(e,t){return e===t},Q_=function(){function e(e,t){t===void 0&&(t=null),this.value=e,this.next=t}return e.prototype.toString=function(e){return e?e(this.value):`${this.value}`},e}(),$_=function(){function e(e){e===void 0&&(e=Z_),this.head=null,this.tail=null,this.compare=e}return e.prototype.prepend=function(e){var t=new Q_(e,this.head);return this.head=t,this.tail||=t,this},e.prototype.append=function(e){var t=new Q_(e);return this.head?(this.tail.next=t,this.tail=t,this):(this.head=t,this.tail=t,this)},e.prototype.delete=function(e){if(!this.head)return null;for(var t=null;this.head&&this.compare(this.head.value,e);)t=this.head,this.head=this.head.next;var n=this.head;if(n!==null)for(;n.next;)this.compare(n.next.value,e)?(t=n.next,n.next=n.next.next):n=n.next;return this.compare(this.tail.value,e)&&(this.tail=n),t},e.prototype.find=function(e){var t=e.value,n=t===void 0?void 0:t,r=e.callback,i=r===void 0?void 0:r;if(!this.head)return null;for(var a=this.head;a;){if(i&&i(a.value)||n!==void 0&&this.compare(a.value,n))return a;a=a.next}return null},e.prototype.deleteTail=function(){var e=this.tail;if(this.head===this.tail)return this.head=null,this.tail=null,e;for(var t=this.head;t.next;)t.next.next?t=t.next:t.next=null;return this.tail=t,e},e.prototype.deleteHead=function(){if(!this.head)return null;var e=this.head;return this.head.next?this.head=this.head.next:(this.head=null,this.tail=null),e},e.prototype.fromArray=function(e){var t=this;return e.forEach(function(e){return t.append(e)}),this},e.prototype.toArray=function(){for(var e=[],t=this.head;t;)e.push(t),t=t.next;return e},e.prototype.reverse=function(){for(var e=this.head,t=null,n=null;e;)n=e.next,e.next=t,t=e,e=n;this.tail=this.head,this.head=t},e.prototype.toString=function(e){return e===void 0&&(e=void 0),this.toArray().map(function(t){return t.toString(e)}).toString()},e}();(function(){function e(){this.linkedList=new $_}return e.prototype.isEmpty=function(){return!this.linkedList.head},e.prototype.peek=function(){return this.linkedList.head?this.linkedList.head.value:null},e.prototype.enqueue=function(e){this.linkedList.append(e)},e.prototype.dequeue=function(){var e=this.linkedList.deleteHead();return e?e.value:null},e.prototype.toString=function(e){return this.linkedList.toString(e)},e})();var ev=function(e,t,n){t===void 0&&(t=[]);var r=t.filter(function(t){return t.source===e||t.target===e});return n===`target`?r.filter(function(t){return t.source===e}).map(function(e){return e.target}):n===`source`?r.filter(function(t){return t.target===e}).map(function(e){return e.source}):r.map(function(t){return t.source===e?t.target:t.source})},tv=function(e,t){return t.filter(function(t){return t.source===e})},nv=function(e,t){return t.filter(function(t){return t.source===e||t.target===e})},rv=function(e){var t={},n=e.nodes,r=n===void 0?[]:n,i=e.edges,a=i===void 0?[]:i;return r.forEach(function(e){t[e.id]={degree:0,inDegree:0,outDegree:0}}),a.forEach(function(e){t[e.source].degree++,t[e.source].outDegree++,t[e.target].degree++,t[e.target].inDegree++}),t},iv={}.toString,av=function(e,t){return iv.call(e)===`[object `+t+`]`},ov=(function(e){return av(e,`Function`)}),sv=(function(e){return Array.isArray?Array.isArray(e):av(e,`Array`)}),cv=(function(e){var t=typeof e;return e!==null&&t===`object`||t===`function`});function lv(e,t){if(e){var n;if(sv(e))for(var r=0,i=e.length;r<i&&(n=t(e[r],r),n!==!1);r++);else if(cv(e)){for(var a in e)if(e.hasOwnProperty(a)&&(n=t(e[a],a),n===!1))break}}}var uv=Array.prototype;uv.splice,uv.indexOf,Array.prototype.splice;var dv=(function(e){return av(e,`String`)});Number.isInteger&&Number.isInteger,180/Math.PI,Math.PI/180;var fv=Object.values?function(e){return Object.values(e)}:function(e){var t=[];return lv(e,function(n,r){ov(e)&&r===`prototype`||t.push(n)}),t};({}).toString;var pv=function(e){if(typeof e!=`object`||!e)return e;var t;if(sv(e)){t=[];for(var n=0,r=e.length;n<r;n++)typeof e[n]==`object`&&e[n]!=null?t[n]=pv(e[n]):t[n]=e[n]}else for(var i in t={},e)typeof e[i]==`object`&&e[i]!=null?t[i]=pv(e[i]):t[i]=e[i];return t},mv=(function(e,t){if(!ov(e))throw TypeError(`Expected a function`);var n=function(){var r=[...arguments],i=t?t.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=e.apply(this,r);return a.set(i,o),o};return n.cache=new Map,n}),hv;mv(function(e,t){t===void 0&&(t={});var n=t.fontSize,r=t.fontFamily,i=t.fontWeight,a=t.fontStyle,o=t.fontVariant;return hv||=document.createElement(`canvas`).getContext(`2d`),hv.font=[a,o,i,n+`px`,r].join(` `),hv.measureText(dv(e)?e:``).width},function(e,t){return t===void 0&&(t={}),Ma([e],fv(t)).join(``)}),function(){function e(){this.map={}}return e.prototype.has=function(e){return this.map[e]!==void 0},e.prototype.get=function(e,t){var n=this.map[e];return n===void 0?t:n},e.prototype.set=function(e,t){this.map[e]=t},e.prototype.clear=function(){this.map={}},e.prototype.delete=function(e){delete this.map[e]},e.prototype.size=function(){return Object.keys(this.map).length},e}();var gv=function(e,t,n){for(var r=1/0,i,a=0;a<t.length;a++){var o=t[a].id;!n[o]&&e[o]<=r&&(r=e[o],i=t[a])}return i},_v=function(e,t,n,r){var i=e.nodes,a=i===void 0?[]:i,o=e.edges,s=o===void 0?[]:o,c=[],l={},u={},d={};a.forEach(function(e,n){var r=e.id;c.push(r),u[r]=1/0,r===t&&(u[r]=0)});for(var f=a.length,p=function(e){var t=gv(u,a,l),i=t.id;if(l[i]=!0,u[i]===1/0)return`continue`;var o=[];o=n?tv(i,s):nv(i,s),o.forEach(function(e){var n=e.target,a=e.source,o=n===i?a:n,s=r&&e[r]?e[r]:1;u[o]>u[t.id]+s?(u[o]=u[t.id]+s,d[o]=[t.id]):u[o]===u[t.id]+s&&d[o].push(t.id)})},m=0;m<f;m++)p(m);d[t]=[t];var h={};for(var g in u)u[g]!==1/0&&vv(t,g,d,h);var _={};for(var g in h)_[g]=h[g][0];return{length:u,path:_,allPath:h}};function vv(e,t,n,r){if(e===t)return[e];if(r[t])return r[t];for(var i=[],a=0,o=n[t];a<o.length;a++){var s=o[a],c=vv(e,s,n,r);if(!c)return;for(var l=0,u=c;l<u.length;l++){var d=u[l];sv(d)?i.push(W(W([],d,!0),[t],!1)):i.push([d,t])}}return r[t]=i,r[t]}var yv=function(e,t,n,r,i){var a=_v(e,t,r,i),o=a.length,s=a.path,c=a.allPath;return{length:o[n],path:s[n],allPath:c[n]}};(function(){function e(e){this.arr=e}return e.prototype.getArr=function(){return this.arr||[]},e.prototype.add=function(t){var n=t.arr;if(!this.arr?.length)return new e(n);if(!n?.length)return new e(this.arr);if(this.arr.length===n.length){var r=[];for(var i in this.arr)r[i]=this.arr[i]+n[i];return new e(r)}},e.prototype.subtract=function(t){var n=t.arr;if(!this.arr?.length)return new e(n);if(!n?.length)return new e(this.arr);if(this.arr.length===n.length){var r=[];for(var i in this.arr)r[i]=this.arr[i]-n[i];return new e(r)}},e.prototype.avg=function(t){var n=[];if(t!==0)for(var r in this.arr)n[r]=this.arr[r]/t;return new e(n)},e.prototype.negate=function(){var t=[];for(var n in this.arr)t[n]=-this.arr[n];return new e(t)},e.prototype.squareEuclideanDistance=function(e){var t=e.arr;if(!this.arr?.length||!t?.length)return 0;if(this.arr.length===t.length){var n=0;for(var r in this.arr)n+=(this.arr[r]-e.arr[r])**2;return n}},e.prototype.euclideanDistance=function(e){var t=e.arr;if(!this.arr?.length||!t?.length)return 0;if(this.arr.length===t.length){var n=0;for(var r in this.arr)n+=(this.arr[r]-e.arr[r])**2;return Math.sqrt(n)}else console.error(`The two vectors are unequal in length.`)},e.prototype.normalize=function(){var t=[],n=pv(this.arr);n.sort(function(e,t){return e-t});var r=n[n.length-1],i=n[0];for(var a in this.arr)t[a]=(this.arr[a]-i)/(r-i);return new e(t)},e.prototype.norm2=function(){if(!this.arr?.length)return 0;var e=0;for(var t in this.arr)e+=this.arr[t]**2;return Math.sqrt(e)},e.prototype.dot=function(e){var t=e.arr;if(!this.arr?.length||!t?.length)return 0;if(this.arr.length===t.length){var n=0;for(var r in this.arr)n+=this.arr[r]*e.arr[r];return n}else console.error(`The two vectors are unequal in length.`)},e.prototype.equal=function(e){var t=e.arr;if(this.arr?.length!==t?.length)return!1;for(var n in this.arr)if(this.arr[n]!==t[n])return!1;return!0},e})();var bv;(function(e){e.EuclideanDistance=`euclideanDistance`})(bv||={}),function(){function e(e){this.count=e.length,this.parent={};for(var t=0,n=e;t<n.length;t++){var r=n[t];this.parent[r]=r}}return e.prototype.find=function(e){for(;this.parent[e]!==e;)e=this.parent[e];return e},e.prototype.union=function(e,t){var n=this.find(e),r=this.find(t);n!==r&&(n<r?(this.parent[t]!==t&&this.union(this.parent[t],e),this.parent[t]=this.parent[e]):(this.parent[e]!==e&&this.union(this.parent[e],t),this.parent[e]=this.parent[t]))},e.prototype.connected=function(e,t){return this.find(e)===this.find(t)},e}();var xv=function(e,t){return e-t};(function(){function e(e){e===void 0&&(e=xv),this.compareFn=e,this.list=[]}return e.prototype.getLeft=function(e){return 2*e+1},e.prototype.getRight=function(e){return 2*e+2},e.prototype.getParent=function(e){return e===0?null:Math.floor((e-1)/2)},e.prototype.isEmpty=function(){return this.list.length<=0},e.prototype.top=function(){return this.isEmpty()?void 0:this.list[0]},e.prototype.delMin=function(){var e=this.top(),t=this.list.pop();return this.list.length>0&&(this.list[0]=t,this.moveDown(0)),e},e.prototype.insert=function(e){if(e!==null){this.list.push(e);var t=this.list.length-1;return this.moveUp(t),!0}return!1},e.prototype.moveUp=function(e){for(var t=this.getParent(e);e&&e>0&&this.compareFn(this.list[t],this.list[e])>0;){var n=this.list[t];this.list[t]=this.list[e],this.list[e]=n,e=t,t=this.getParent(e)}},e.prototype.moveDown=function(e){var t,n=e,r=this.getLeft(e),i=this.getRight(e),a=this.list.length;r!==null&&r<a&&this.compareFn(this.list[n],this.list[r])>0?n=r:i!==null&&i<a&&this.compareFn(this.list[n],this.list[i])>0&&(n=i),e!==n&&(t=[this.list[n],this.list[e]],this.list[e]=t[0],this.list[n]=t[1],this.moveDown(n))},e})();var Sv=function(e,t,n){typeof t!=`number`&&(t=1e-6),typeof n!=`number`&&(n=.85);for(var r=1,i=0,a=1e3,o=e.nodes,s=o===void 0?[]:o,c=e.edges,l=c===void 0?[]:c,u=s.length,d,f={},p={},m=0;m<u;++m){var h=s[m],g=h.id;f[g]=1/u,p[g]=1/u}for(var _=rv(e);a>0&&r>t;){i=0;for(var m=0;m<u;++m){var h=s[m],g=h.id;if(d=0,_[h.id].inDegree===0)f[g]=0;else{for(var v=ev(g,l,`source`),y=0;y<v.length;++y){var b=v[y],x=_[b].outDegree;x>0&&(d+=p[b]/x)}f[g]=n*d,i+=f[g]}}i=(1-i)/u,r=0;for(var m=0;m<u;++m){var h=s[m],g=h.id;d=f[g]+i,r+=Math.abs(d-p[g]),p[g]=d}--a}return p},Cv=function(){function e(e,t,n,r){e===void 0&&(e=-1),t===void 0&&(t=-1),n===void 0&&(n=-1),r===void 0&&(r=`-1`),this.id=e,this.from=t,this.to=n,this.label=r}return e}(),wv=function(){function e(e,t){e===void 0&&(e=-1),t===void 0&&(t=`-1`),this.id=e,this.label=t,this.edges=[],this.edgeMap={}}return e.prototype.addEdge=function(e){this.edges.push(e),this.edgeMap[e.id]=e},e}(),Tv=function(){function e(e,t,n){e===void 0&&(e=-1),t===void 0&&(t=!0),n===void 0&&(n=!1),this.id=e,this.edgeIdAutoIncrease=t,this.edges=[],this.nodes=[],this.nodeMap={},this.edgeMap={},this.nodeLabelMap={},this.edgeLabelMap={},this.counter=0,this.directed=n}return e.prototype.getNodeNum=function(){return this.nodes.length},e.prototype.addNode=function(e,t){if(!this.nodeMap[e]){var n=new wv(e,t);this.nodes.push(n),this.nodeMap[e]=n,this.nodeLabelMap[t]||(this.nodeLabelMap[t]=[]),this.nodeLabelMap[t].push(e)}},e.prototype.addEdge=function(e,t,n,r){if((this.edgeIdAutoIncrease||e===void 0)&&(e=this.counter++),!(this.nodeMap[t]&&this.nodeMap[n]&&this.nodeMap[n].edgeMap[e])){var i=new Cv(e,t,n,r);if(this.edges.push(i),this.edgeMap[e]=i,this.nodeMap[t].addEdge(i),this.edgeLabelMap[r]||(this.edgeLabelMap[r]=[]),this.edgeLabelMap[r].push(i),!this.directed){var a=new Cv(e,n,t,r);this.nodeMap[n].addEdge(a),this.edgeLabelMap[r].push(a)}}},e}(),Ev=function(){function e(e,t,n,r,i){this.fromNode=e,this.toNode=t,this.nodeEdgeNodeLabel={nodeLabel1:n||`-1`,edgeLabel:r||`-1`,nodeLabel2:i||`-1`}}return e.prototype.equalTo=function(e){return this.fromNode===e.formNode&&this.toNode===e.toNode&&this.nodeEdgeNodeLabel===e.nodeEdgeNodeLabel},e.prototype.notEqualTo=function(e){return!this.equalTo(e)},e}(),Dv=function(){function e(){this.rmpath=[],this.dfsEdgeList=[]}return e.prototype.equalTo=function(e){var t=this.dfsEdgeList.length;if(t!==e.length)return!1;for(var n=0;n<t;n++)if(this.dfsEdgeList[n]!==e[n])return!1;return!0},e.prototype.notEqualTo=function(e){return!this.equalTo(e)},e.prototype.pushBack=function(e,t,n,r,i){return this.dfsEdgeList.push(new Ev(e,t,n,r,i)),this.dfsEdgeList},e.prototype.toGraph=function(e,t){e===void 0&&(e=-1),t===void 0&&(t=!1);var n=new Tv(e,!0,t);return this.dfsEdgeList.forEach(function(e){var t=e.fromNode,r=e.toNode,i=e.nodeEdgeNodeLabel,a=i.nodeLabel1,o=i.edgeLabel,s=i.nodeLabel2;a!==`-1`&&n.addNode(t,a),s!==`-1`&&n.addNode(r,s),a!==`-1`&&s!==a&&n.addEdge(void 0,t,r,o)}),n},e.prototype.buildRmpath=function(){this.rmpath=[];for(var e=void 0,t=this.dfsEdgeList.length-1;t>=0;t--){var n=this.dfsEdgeList[t],r=n.fromNode,i=n.toNode;r<i&&(e===void 0||i===e)&&(this.rmpath.push(t),e=r)}return this.rmpath},e.prototype.getNodeNum=function(){var e={};return this.dfsEdgeList.forEach(function(t){e[t.fromNode]||(e[t.fromNode]=!0),e[t.toNode]||(e[t.toNode]=!0)}),Object.keys(e).length},e}(),Ov=function(){function e(e){if(this.his={},this.nodesUsed={},this.edgesUsed={},this.edges=[],e){for(;e;){var t=e.edge;this.edges.push(t),this.nodesUsed[t.from]=1,this.nodesUsed[t.to]=1,this.edgesUsed[t.id]=1,e=e.preNode}this.edges=this.edges.reverse()}}return e.prototype.hasNode=function(e){return this.nodesUsed[e.id]===1},e.prototype.hasEdge=function(e){return this.edgesUsed[e.id]===1},e}();(function(){function e(e){var t=e.graphs,n=e.minSupport,r=n===void 0?2:n,i=e.minNodeNum,a=i===void 0?1:i,o=e.maxNodeNum,s=o===void 0?4:o,c=e.top,l=c===void 0?10:c,u=e.directed,d=u===void 0?!1:u,f=e.verbose,p=f===void 0?!1:f;this.graphs=t,this.dfsCode=new Dv,this.support=0,this.frequentSize1Subgraphs=[],this.frequentSubgraphs=[],this.minSupport=r,this.top=l,this.directed=d,this.counter=0,this.maxNodeNum=s,this.minNodeNum=a,this.verbose=p,this.maxNodeNum<this.minNodeNum&&(this.maxNodeNum=this.minNodeNum),this.reportDF=[]}return e.prototype.findForwardRootEdges=function(e,t){var n=this,r=[],i=e.nodeMap;return t.edges.forEach(function(e){(n.directed||t.label<=i[e.to].label)&&r.push(e)}),r},e.prototype.findBackwardEdge=function(e,t,n,r){if(!this.directed&&t===n)return null;for(var i=e.nodeMap,a=i[n.to].edges,o=a.length,s=0;s<o;s++){var c=a[s];if(!(r.hasEdge(c)||c.to!==t.from)){if(!this.directed){if(t.label<c.label||t.label===c.label&&i[t.to].label<=i[n.to].label)return c}else if(i[t.from].label<i[n.to].label||i[t.from].label===i[n.to].label&&t.label<=c.label)return c}}return null},e.prototype.findForwardPureEdges=function(e,t,n,r){for(var i=[],a=t.to,o=e.nodeMap[a].edges,s=o.length,c=0;c<s;c++){var l=o[c],u=e.nodeMap[l.to];n<=u.label&&!r.hasNode(u)&&i.push(l)}return i},e.prototype.findForwardRmpathEdges=function(e,t,n,r){for(var i=[],a=e.nodeMap,o=a[t.to].label,s=a[t.from].edges,c=s.length,l=0;l<c;l++){var u=s[l],d=a[u.to].label;t.to===u.to||n>d||r.hasNode(a[u.to])||(t.label<u.label||t.label===u.label&&o<=d)&&i.push(u)}return i},e.prototype.getSupport=function(e){var t={};return e.forEach(function(e){t[e.graphId]||(t[e.graphId]=!0)}),Object.keys(t).length},e.prototype.findMinLabel=function(e){var t=void 0;return Object.keys(e).forEach(function(n){var r=e[n],i=r.nodeLabel1,a=r.edgeLabel,o=r.nodeLabel2;if(!t){t={nodeLabel1:i,edgeLabel:a,nodeLabel2:o};return}(i<t.nodeLabel1||i===t.nodeLabel1&&a<t.edgeLabel||i===t.nodeLabel1&&a===t.edgeLabel&&o<t.nodeLabel2)&&(t={nodeLabel1:i,edgeLabel:a,nodeLabel2:o})}),t},e.prototype.isMin=function(){var e=this,t=this.dfsCode;if(this.verbose&&console.log(`isMin checking`,t),t.dfsEdgeList.length===1)return!0;var n=this.directed,r=t.toGraph(-1,n),i=r.nodeMap,a=new Dv,o={};r.nodes.forEach(function(t){e.findForwardRootEdges(r,t).forEach(function(e){var n=i[e.to],a=`${t.label}-${e.label}-${n.label}`;o[a]||(o[a]={projected:[],nodeLabel1:t.label,edgeLabel:e.label,nodeLabel2:n.label});var s={graphId:r.id,edge:e,preNode:null};o[a].projected.push(s)})});var s=this.findMinLabel(o);if(s)return a.dfsEdgeList.push(new Ev(0,1,s.nodeLabel1,s.edgeLabel,s.nodeLabel2)),function o(s){for(var c=a.buildRmpath(),l=a.dfsEdgeList[0].nodeEdgeNodeLabel.nodeLabel1,u=a.dfsEdgeList[c[0]].toNode,d={},f=!1,p=0,m=n?-1:0,h=function(t){if(f)return`break`;s.forEach(function(n){var i=new Ov(n),o=e.findBackwardEdge(r,i.edges[c[t]],i.edges[c[0]],i);o&&(d[o.label]||(d[o.label]={projected:[],edgeLabel:o.label}),d[o.label].projected.push({graphId:r.id,edge:d,preNode:n}),p=a.dfsEdgeList[c[t]].fromNode,f=!0)})},g=c.length-1;g>m&&h(g)!==`break`;g--);if(f){var _=e.findMinLabel(d);a.dfsEdgeList.push(new Ev(u,p,`-1`,_.edgeLabel,`-1`));var v=a.dfsEdgeList.length-1;return e.dfsCode.dfsEdgeList[v]===a.dfsEdgeList[v]?o(d[_.edgeLabel].projected):!1}var y={};f=!1;var b=0;s.forEach(function(t){var n=new Ov(t),a=e.findForwardPureEdges(r,n.edges[c[0]],l,n);a.length>0&&(f=!0,b=u,a.forEach(function(e){var n=`${e.label}-${i[e.to].label}`;y[n]||(y[n]={projected:[],edgeLabel:e.label,nodeLabel2:i[e.to].label}),y[n].projected.push({graphId:r.id,edge:e,preNode:t})}))});for(var x=c.length,S=function(t){if(f)return`break`;var n=c[t];s.forEach(function(t){var o=new Ov(t),s=e.findForwardRmpathEdges(r,o.edges[n],l,o);s.length>0&&(f=!0,b=a.dfsEdgeList[n].fromNode,s.forEach(function(e){var n=`${e.label}-${i[e.to].label}`;y[n]||(y[n]={projected:[],edgeLabel:e.label,nodeLabel2:i[e.to].label}),y[n].projected.push({graphId:r.id,edge:e,preNode:t})}))})},g=0;g<x&&S(g)!==`break`;g++);if(!f)return!0;var C=e.findMinLabel(y);a.dfsEdgeList.push(new Ev(b,u+1,`-1`,C.edgeLabel,C.nodeLabel2));var w=a.dfsEdgeList.length-1;return t.dfsEdgeList[w]===a.dfsEdgeList[w]?o(y[`${C.edgeLabel}-${C.nodeLabel2}`].projected):!1}(o[`${s.nodeLabel1}-${s.edgeLabel}-${s.nodeLabel2}`].projected)},e.prototype.report=function(){if(!(this.dfsCode.getNodeNum()<this.minNodeNum)){this.counter++;var e=this.dfsCode.toGraph(this.counter,this.directed);this.frequentSubgraphs.push(pv(e))}},e.prototype.subGraphMining=function(e){var t=this;if(!(this.getSupport(e)<this.minSupport)&&this.isMin()){this.report();var n=this.dfsCode.getNodeNum(),r=this.dfsCode.buildRmpath(),i=this.dfsCode.dfsEdgeList[r[0]].toNode,a=this.dfsCode.dfsEdgeList[0].nodeEdgeNodeLabel.nodeLabel1,o={},s={};e.forEach(function(e){for(var c=t.graphs[e.graphId],l=c.nodeMap,u=new Ov(e),d=r.length-1;d>=0;d--){var f=t.findBackwardEdge(c,u.edges[r[d]],u.edges[r[0]],u);if(f){var p=`${t.dfsCode.dfsEdgeList[r[d]].fromNode}-${f.label}`;s[p]||(s[p]={projected:[],toNodeId:t.dfsCode.dfsEdgeList[r[d]].fromNode,edgeLabel:f.label}),s[p].projected.push({graphId:e.graphId,edge:f,preNode:e})}}if(!(n>=t.maxNodeNum)){t.findForwardPureEdges(c,u.edges[r[0]],a,u).forEach(function(t){var n=`${i}-${t.label}-${l[t.to].label}`;o[n]||(o[n]={projected:[],fromNodeId:i,edgeLabel:t.label,nodeLabel2:l[t.to].label}),o[n].projected.push({graphId:e.graphId,edge:t,preNode:e})});for(var m=function(n){t.findForwardRmpathEdges(c,u.edges[r[n]],a,u).forEach(function(i){var a=`${t.dfsCode.dfsEdgeList[r[n]].fromNode}-${i.label}-${l[i.to].label}`;o[a]||(o[a]={projected:[],fromNodeId:t.dfsCode.dfsEdgeList[r[n]].fromNode,edgeLabel:i.label,nodeLabel2:l[i.to].label}),o[a].projected.push({graphId:e.graphId,edge:i,preNode:e})})},d=0;d<r.length;d++)m(d)}}),Object.keys(s).forEach(function(e){var n=s[e],r=n.toNodeId,a=n.edgeLabel;t.dfsCode.dfsEdgeList.push(new Ev(i,r,`-1`,a,`-1`)),t.subGraphMining(s[e].projected),t.dfsCode.dfsEdgeList.pop()}),Object.keys(o).forEach(function(e){var n=o[e],r=n.fromNodeId,a=n.edgeLabel,s=n.nodeLabel2;t.dfsCode.dfsEdgeList.push(new Ev(r,i+1,`-1`,a,s)),t.subGraphMining(o[e].projected),t.dfsCode.dfsEdgeList.pop()})}},e.prototype.generate1EdgeFrequentSubGraphs=function(){var e=this.graphs,t=this.directed,n=this.minSupport,r=this.frequentSize1Subgraphs,i={},a={},o={},s={};return Object.keys(e).forEach(function(n){var r=e[n],c=r.nodeMap;r.nodes.forEach(function(e,r){var l=e.label,u=`${n}-${l}`;if(!o[u]){var d=i[l]||0;d++,i[l]=d}o[u]={graphKey:n,label:l},e.edges.forEach(function(e){var r=l,i=c[e.to].label;if(!t&&r>i){var o=i;i=r,r=o}var u=e.label,d=`${n}-${r}-${u}-${i}`,f=`${r}-${u}-${i}`;if(!a[f]){var p=a[f]||0;p++,a[f]=p}s[d]={graphId:n,nodeLabel1:r,edgeLabel:u,nodeLabel2:i}})})}),Object.keys(i).forEach(function(e){if(!(i[e]<n)){var t={nodes:[],edges:[]};t.nodes.push({id:`0`,label:e}),r.push(t)}}),r},e.prototype.run=function(){var e=this;if(this.frequentSize1Subgraphs=this.generate1EdgeFrequentSubGraphs(),!(this.maxNodeNum<2)){var t=this.graphs;this.directed;var n={};Object.keys(t).forEach(function(r){var i=t[r],a=i.nodeMap;i.nodes.forEach(function(t){e.findForwardRootEdges(i,t).forEach(function(e){var i=a[e.to],o=`${t.label}-${e.label}-${i.label}`;n[o]||(n[o]={projected:[],nodeLabel1:t.label,edgeLabel:e.label,nodeLabel2:i.label});var s={graphId:r,edge:e,preNode:null};n[o].projected.push(s)})})}),Object.keys(n).forEach(function(t){var r=n[t],i=r.projected,a=r.nodeLabel1,o=r.edgeLabel,s=r.nodeLabel2;e.dfsCode.dfsEdgeList.push(new Ev(0,1,a,o,s)),e.subGraphMining(i),e.dfsCode.dfsEdgeList.pop()})}},e})(),function(){function e(e){e===void 0&&(e=10),this.linkedList=new $_,this.maxStep=e}return Object.defineProperty(e.prototype,`length`,{get:function(){return this.linkedList.toArray().length},enumerable:!1,configurable:!0}),e.prototype.isEmpty=function(){return!this.linkedList.head},e.prototype.isMaxStack=function(){return this.toArray().length>=this.maxStep},e.prototype.peek=function(){return this.isEmpty()?null:this.linkedList.head.value},e.prototype.push=function(e){this.linkedList.prepend(e),this.length>this.maxStep&&this.linkedList.deleteTail()},e.prototype.pop=function(){var e=this.linkedList.deleteHead();return e?e.value:null},e.prototype.toArray=function(){return this.linkedList.toArray().map(function(e){return e.value})},e.prototype.clear=function(){for(;!this.isEmpty();)this.pop()},e}();function Q(e){if(e.id!==void 0)return e.id;if(e.source!==void 0&&e.target!==void 0)return`${e.source}-${e.target}`;throw Error(s_(`The datum does not have available id.`))}function kv(e){return e.combo}function Av(e,t){let n={nodes:(e.nodes||[]).map(Q),edges:(e.edges||[]).map(Q),combos:(e.combos||[]).map(Q)};return t?Object.values(n).flat():n}var jv=(e,t,n)=>{var r;switch(n.type){case`degree`:{let i=new Map;return(r=e.nodes)==null||r.forEach(e=>{let r=t(Q(e),n.direction).length;i.set(Q(e),r)}),i}case`betweenness`:return Nv(e,n.directed,n.weightPropertyName);case`closeness`:return Pv(e,n.directed,n.weightPropertyName);case`eigenvector`:return Iv(e,n.directed);case`pagerank`:return Fv(e,n.epsilon,n.linkProb);default:return Mv(e)}},Mv=e=>{var t;let n=new Map;return(t=e.nodes)==null||t.forEach(e=>{n.set(Q(e),0)}),n},Nv=(e,t,n)=>{let r=Mv(e),{nodes:i=[]}=e;return i.forEach(a=>{i.forEach(i=>{if(a!==i){let{allPath:o}=yv(e,Q(a),Q(i),t,n),s=o.length;o.flat().forEach(e=>{e!==Q(a)&&e!==Q(i)&&r.set(e,r.get(e)+1/s)})}})}),r},Pv=(e,t,n)=>{let r=new Map,{nodes:i=[]}=e;return i.forEach(a=>{let o=i.reduce((r,i)=>{if(a!==i){let{length:o}=yv(e,Q(a),Q(i),t,n);r+=o}return r},0);r.set(Q(a),1/o)}),r},Fv=(e,t,n)=>{var r;let i=new Map,a=Sv(e,t,n);return(r=e.nodes)==null||r.forEach(e=>{i.set(Q(e),a[Q(e)])}),i},Iv=(e,t)=>{let{nodes:n=[]}=e,r=Rv(Lv(e,t),n.length),i=new Map;return n.forEach((e,t)=>{i.set(Q(e),r[t])}),i},Lv=(e,t)=>{let{nodes:n=[],edges:r=[]}=e,i=Array(n.length).fill(null).map(()=>Array(n.length).fill(0));return r.forEach(({source:e,target:r})=>{let a=n.findIndex(t=>Q(t)===e),o=n.findIndex(e=>Q(e)===r);t?i[a][o]=1:(i[a][o]=1,i[o][a]=1)}),i},Rv=(e,t,n=100,r=1e-6)=>{let i=Array(t).fill(1),a=1/0;for(let o=0;o<n&&a>r;o++){let n=Array(t).fill(0);for(let r=0;r<t;r++)for(let a=0;a<t;a++)n[r]+=e[r][a]*i[a];let r=Math.sqrt(n.reduce((e,t)=>e+t*t,0));for(let e=0;e<t;e++)n[e]/=r;a=Math.sqrt(n.reduce((e,t,n)=>e+(t-i[n])*t,0)),i=n}return i};function zv(e,t,n,r=_a){let i=new Map(e.map(e=>[n(e),e])),a=new Map(t.map(e=>[n(e),e])),o=new Set(i.keys()),s=new Set(a.keys()),c=[],l=[],u=[],d=[];return s.forEach(e=>{o.has(e)?r(i.get(e),a.get(e))?d.push(a.get(e)):l.push(a.get(e)):c.push(a.get(e))}),o.forEach(e=>{s.has(e)||u.push(i.get(e))}),{enter:c,exit:u,keep:d,update:l}}function Bv(e,t,n){let r=e=>{n&&!n(e)||(e.style.visibility=t)};e.forEach(e=>{r(e)})}function Vv(e,t,n){let r={},i=e=>(e in r||(r[e]=0),`${t}-${e}-${r[e]++}`);return n.map(t=>typeof t==`string`?{type:t,key:i(t)}:typeof t==`function`?t.call(e):t.key?t:Object.assign(Object.assign({},t),{key:i(t.type)}))}var Hv=class{constructor(e){this.extensions=[],this.extensionMap={},this.context=e}setExtensions(e){let t=Vv(this.context.graph,this.category,e),{enter:n,update:r,exit:i,keep:a}=zv(this.extensions,t,e=>e.key);this.createExtensions(n),this.updateExtensions([...r,...a]),this.destroyExtensions(i),this.extensions=t}createExtension(e){let{category:t}=this,{key:n,type:r}=e,i=i_(t,r);if(!i)return c_.warn(`The extension ${r} of ${t} is not registered.`);let a=new i(this.context,e);a.initialized=!0,this.extensionMap[n]=a}createExtensions(e){e.forEach(e=>this.createExtension(e))}updateExtension(e){let{key:t}=e,n=this.extensionMap[t];n&&n.update(e)}updateExtensions(e){e.forEach(e=>this.updateExtension(e))}destroyExtension(e){let t=this.extensionMap[e];t&&(t.initialized&&!t.destroyed&&t.destroy(),delete this.extensionMap[e])}destroyExtensions(e){e.forEach(({key:e})=>this.destroyExtension(e))}destroy(){this.destroyExtensions(this.extensions),this.context={},this.extensions=[],this.extensionMap={}}},Uv=class{constructor(e,t){this.events=[],this.initialized=!1,this.destroyed=!1,this.context=e,this.options=t}update(e){this.options=Object.assign(this.options,e)}destroy(){this.context={},this.options={},this.destroyed=!0}},Wv=class extends Uv{},Gv=class e extends Wv{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.isOverlapping=(e,t)=>t.some(t=>e.intersects(t)),this.occupiedBounds=[],this.detectLabelCollision=e=>{let t=this.context.viewport,n={show:[],hide:[]};return this.occupiedBounds=[],e.forEach(e=>{let r=e.getShape(`label`).getRenderBounds();t.isInViewport(r,!0)&&!this.isOverlapping(r,this.occupiedBounds)?(n.show.push(e),this.occupiedBounds.push(z_(r,this.options.padding))):n.hide.push(e)}),n},this.hideLabelIfExceedViewport=(e,t)=>{let{exit:n}=zv(e,t,e=>e.id);n?.forEach(this.hideLabel)},this.nodeCentralities=new Map,this.sortNodesByCentrality=(e,t)=>{let{model:n}=this.context,r=n.getData(),i=n.getRelatedEdgesData.bind(n);return e.map(e=>(this.nodeCentralities.has(e.id)||(this.nodeCentralities=jv(r,i,t)),{node:e,centrality:this.nodeCentralities.get(e.id)})).sort((e,t)=>t.centrality-e.centrality).map(e=>e.node)},this.sortLabelElementsInView=e=>{let{sort:t,sortNode:n,sortCombo:r,sortEdge:i}=this.options,{model:a}=this.context;if(B(t))return e.sort((e,n)=>t(a.getElementDataById(e.id),a.getElementDataById(n.id)));let{node:o=[],edge:s=[],combo:c=[]}=Li(e,e=>e.type),l=B(r)?c.sort((e,t)=>r(...a.getComboData([e.id,t.id]))):c,u=B(n)?o.sort((e,t)=>n(...a.getNodeData([e.id,t.id]))):this.sortNodesByCentrality(o,n),d=B(i)?s.sort((e,t)=>i(...a.getEdgeData([e.id,t.id]))):s;return[...l,...u,...d]},this.labelElementsInView=[],this.isFirstRender=!0,this.onToggleVisibility=e=>{if(e.data?.stage===`zIndex`)return;if(!this.validate(e)){this.hiddenElements.size>0&&(this.hiddenElements.forEach(this.showLabel),this.hiddenElements.clear());return}let t=this.isFirstRender?this.getLabelElements():this.getLabelElementsInView();this.hideLabelIfExceedViewport(this.labelElementsInView,t),this.labelElementsInView=t;let n=this.sortLabelElementsInView(this.labelElementsInView),{show:r,hide:i}=this.detectLabelCollision(n);for(let e=r.length-1;e>=0;e--)this.showLabel(r[e]);i.forEach(this.hideLabel)},this.hiddenElements=new Map,this.hideLabel=e=>{let t=e.getShape(`label`);t&&Bv(t,`hidden`),this.hiddenElements.set(e.id,e)},this.showLabel=e=>{let t=e.getShape(`label`);t&&Bv(t,`visible`),e.toFront(),this.hiddenElements.delete(e.id)},this.onTransform=Ca(this.onToggleVisibility,this.options.throttle,{leading:!0}),this.enableToggle=!0,this.toggle=e=>{this.enableToggle&&this.onToggleVisibility(e)},this.onBeforeRender=()=>{this.enableToggle=!1},this.onAfterRender=e=>{this.onToggleVisibility(e),this.enableToggle=!0},this.bindEvents()}update(e){this.unbindEvents(),super.update(e),this.bindEvents(),this.onToggleVisibility({})}getLabelElements(){let{elementMap:e}=this.context.element,t=[];for(let n in e){let r=e[n];r.isVisible()&&r.getShape(`label`)&&t.push(r)}return t}getLabelElementsInView(){let e=this.context.viewport;return this.getLabelElements().filter(t=>e.isInViewport(t.getShape(`key`).getRenderBounds()))}bindEvents(){let{graph:e}=this.context;e.on(Z.BEFORE_RENDER,this.onBeforeRender),e.on(Z.AFTER_RENDER,this.onAfterRender),e.on(Z.AFTER_DRAW,this.toggle),e.on(Z.AFTER_LAYOUT,this.toggle),e.on(Z.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){let{graph:e}=this.context;e.off(Z.BEFORE_RENDER,this.onBeforeRender),e.off(Z.AFTER_RENDER,this.onAfterRender),e.off(Z.AFTER_DRAW,this.toggle),e.off(Z.AFTER_LAYOUT,this.toggle),e.off(Z.AFTER_TRANSFORM,this.onTransform)}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return B(t)?t(e):!!t}destroy(){this.unbindEvents(),super.destroy()}};Gv.defaultOptions={enable:!0,throttle:100,padding:0,sortNode:{type:`degree`}};var Kv=[0,0,0];function qv(e,t){if(e.length==t.length)return[e,t];if(k_(e)&&e[2]!==0||k_(t)&&t[2]!==0)throw Error(s_(`Vectors could not operate due to different dimensions.`));return[sy(e),sy(t)]}function Jv(e,t){return[e,t]=qv(e,t),e.map((e,n)=>e+t[n])}function Yv(e,t){return[e,t]=qv(e,t),e.map((e,n)=>e-t[n])}function Xv(e,t){return typeof t==`number`?e.map(e=>e*t):([e,t]=qv(e,t),e.map((e,n)=>e*t[n]))}function Zv(e,t){return typeof t==`number`?e.map(e=>e/t):([e,t]=qv(e,t),e.map((e,n)=>{if(t[n]==0)throw Error(s_(`Vector could not be divided by zero`));return e/t[n]}))}function Qv(e,t){return[e,t]=qv(e,t),e.reduce((e,n,r)=>e+n*t[r],0)}function $v(e,t){let n=cy(e),r=cy(t);return[n[1]*r[2]-n[2]*r[1],n[2]*r[0]-n[0]*r[2],n[0]*r[1]-n[1]*r[0]]}function ey(e,t){return e.map(e=>e*t)}function ty(e,t){return[e,t]=qv(e,t),Math.sqrt(e.reduce((e,n,r)=>e+(n-t[r])**2,0))}function ny(e,t){return[e,t]=qv(e,t),e.reduce((e,n,r)=>e+Math.abs(n-t[r]),0)}function ry(e){let t=e.reduce((e,t)=>e+t**2,0);return e.map(e=>e/Math.sqrt(t))}function iy(e,t,n=!1){[e,t]=qv(e,t);let r=e[0]*t[1]-e[1]*t[0],i=Math.acos(Xv(e,t).reduce((e,t)=>e+t,0)/(ty(e,Kv)*ty(t,Kv)));return n&&r<0&&(i=2*Math.PI-i),i}function ay(e,t=!0){return t?[-e[1],e[0]]:[e[1],-e[0]]}function oy(e,t){return e.map(e=>e%t)}function sy(e){return[e[0],e[1]]}function cy(e){return O_(e)?[e[0],e[1],0]:e}function ly(e){let[t,n]=e;return!t&&!n?0:Math.atan2(n,t)}function uy(e,t){let[n,r]=e;if(t%360==0)return[n,r];let i=t*Math.PI/180,a=Math.cos(i),o=Math.sin(i);return[n*a-r*o,n*o+r*a]}function dy(e,t){let[n,r]=e,[i,a]=t;return $v(Yv(n,r),Yv(i,a)).every(e=>e===0)}function fy(e,t,n=!1){if(dy(e,t))return;let[r,i]=e,[a,o]=t,s=((r[0]-a[0])*(a[1]-o[1])-(r[1]-a[1])*(a[0]-o[0]))/((r[0]-i[0])*(a[1]-o[1])-(r[1]-i[1])*(a[0]-o[0])),c=o[0]-a[0]?(r[0]-a[0]+s*(i[0]-r[0]))/(o[0]-a[0]):(r[1]-a[1]+s*(i[1]-r[1]))/(o[1]-a[1]);if(!(!n&&(!j_(s,0,1)||!j_(c,0,1))))return[r[0]+s*(i[0]-r[0]),r[1]+s*(i[1]-r[1])]}function py(e){if(Array.isArray(e))return j_(e[0],0,1)&&j_(e[1],0,1)?e:[.5,.5];let t=e.split(`-`);return[t.includes(`left`)?0:t.includes(`right`)?1:.5,t.includes(`top`)?0:t.includes(`bottom`)?1:.5]}function my(e){let{x:t=0,y:n=0,z:r=0}=e.style||{};return[+t,+n,+r]}function hy(e){let{x:t,y:n,z:r}=e.style||{};return t!==void 0||n!==void 0||r!==void 0}function gy(e,t){let[n,r]=t,{min:i,max:a}=e;return[i[0]+n*(a[0]-i[0]),i[1]+r*(a[1]-i[1])]}function _y(e,t=`center`){return gy(e,py(t))}function vy(e){return[e.x,e.y,e.z??0]}function yy(e){return{x:e[0],y:e[1],z:e[2]??0}}function by(e,t=0){return e.map(e=>parseFloat(e.toFixed(t)))}function xy(e,t,n,r=!1){if(_a(e,t))return e;let i=ry(r?Yv(e,t):Yv(t,e)),a=[i[0]*n,i[1]*n];return Jv(sy(e),a)}function Sy(e,t){return e[1]===t[1]}function Cy(e,t){return e[0]===t[0]}function wy(e,t){return Sy(e,t)||Cy(e,t)}function Ty(e,t,n){return dy([e,t],[t,n])}function Ey(e,t){return[2*t[0]-e[0],2*t[1]-e[1]]}function Dy(e,t,n,r=!0,i=!1){for(let a=0;a<n.length;a++){let o=n[a],s=n[(a+1)%n.length];r&&(o=Jv(t,o),s=Jv(t,s));let c=fy([t,i?Ey(e,t):e],[o,s]);if(c)return{point:c,line:[o,s]}}return{point:t,line:void 0}}function Oy(e,t,n,r){let i=e[0],a=e[1],o=!1;n===void 0&&(n=0),r===void 0&&(r=t.length);let s=r-n;for(let e=0,r=s-1;e<s;r=e++){let s=t[e+n][0],c=t[e+n][1],l=t[r+n][0],u=t[r+n][1];c>a!=u>a&&i<(l-s)*(a-c)/(u-c)+s&&(o=!o)}return o}function ky(e,t,n=!1){return Dy(e,_y(t,`center`),[_y(t,`left-top`),_y(t,`right-top`),_y(t,`right-bottom`),_y(t,`left-bottom`)],!1,n).point}function Ay(e,t,n=!1){let r=t.center,i=Yv(n?Ey(e,r):e,t.center),a=Math.atan2(i[1],i[0]);if(isNaN(a))return r;let o=P_(t)/2,s=F_(t)/2;return[r[0]+o*Math.cos(a),r[1]+s*Math.sin(a)]}function jy(e,t){let n=1/0,r=[e[0],t[0]];return e.forEach(e=>{t.forEach(t=>{let i=ty(e,t);i<n&&(n=i,r=[e,t])})}),r}function My(e,t){let n=1/0,r=[[0,0],[0,0]];return t.forEach(t=>{let i=Ny(e,t);i<n&&(n=i,r=t)}),r}function Ny(e,t){return ty(e,Py(e,t))}function Py(e,t){let[n,r]=t[0],[i,a]=t[1],[o,s]=e,c=i-n,l=a-r;if(c===0&&l===0)return[n,r];let u=((o-n)*c+(s-r)*l)/(c*c+l*l);return u>1?u=1:u<0&&(u=0),[n+u*c,r+u*l]}function Fy(e){return Zv(e.reduce((e,t)=>Jv(e,t),[0,0]),e.length)}function Iy(e,t=!0){let n=Fy(e);return e.sort(([e,r],[i,a])=>{let o=Math.atan2(r-n[1],e-n[0]),s=Math.atan2(a-n[1],i-n[0]);return t?s-o:o-s})}function Ly(e,t){return[e,[e[0],t[1]],t,[t[0],e[1]]]}var Ry=class e{constructor(t,n,r){if(this.phase=n,this.pointerByTouch=[],this.initialDistance=null,this.emitter=t,e.instance)return e.callbacks[this.phase].push(r),e.instance;this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.bindEvents(),e.instance=this,e.callbacks[this.phase].push(r)}bindEvents(){let{emitter:e}=this;e.on(X.POINTER_DOWN,this.onPointerDown),e.on(X.POINTER_MOVE,this.onPointerMove),e.on(X.POINTER_UP,this.onPointerUp)}updatePointerPosition(e,t,n){let r=this.pointerByTouch.findIndex(t=>t.pointerId===e);r>=0&&(this.pointerByTouch[r]={x:t,y:n,pointerId:e})}onPointerDown(t){let{x:n,y:r}=t.client||{};if(!(n===void 0||r===void 0)&&(this.pointerByTouch.push({x:n,y:r,pointerId:t.pointerId}),t.pointerType===`touch`&&this.pointerByTouch.length===2)){e.isPinching=!0;let n=this.pointerByTouch[0].x-this.pointerByTouch[1].x,r=this.pointerByTouch[0].y-this.pointerByTouch[1].y;this.initialDistance=Math.sqrt(n*n+r*r),e.callbacks.pinchstart.forEach(e=>e(t,{scale:0}))}}onPointerMove(t){if(this.pointerByTouch.length!==2||this.initialDistance===null)return;let{x:n,y:r}=t.client||{};if(n===void 0||r===void 0)return;this.updatePointerPosition(t.pointerId,n,r);let i=this.pointerByTouch[0].x-this.pointerByTouch[1].x,a=this.pointerByTouch[0].y-this.pointerByTouch[1].y,o=Math.sqrt(i*i+a*a)/this.initialDistance;e.callbacks.pinchmove.forEach(e=>e(t,{scale:(o-1)*5}))}onPointerUp(t){var n;e.callbacks.pinchend.forEach(e=>e(t,{scale:0})),e.isPinching=!1,this.initialDistance=null,this.pointerByTouch=[],(n=e.instance)==null||n.tryDestroy()}destroy(){this.emitter.off(X.POINTER_DOWN,this.onPointerDown),this.emitter.off(X.POINTER_MOVE,this.onPointerMove),this.emitter.off(X.POINTER_UP,this.onPointerUp),e.instance=null}off(t,n){let r=e.callbacks[t].indexOf(n);r>-1&&e.callbacks[t].splice(r,1),this.tryDestroy()}tryDestroy(){Object.values(e.callbacks).every(e=>e.length===0)&&this.destroy()}};Ry.isPinching=!1,Ry.instance=null,Ry.callbacks={pinchstart:[],pinchmove:[],pinchend:[]};var zy=new Set([`Control`,`Alt`,`Meta`,`Shift`]);function By(e){return zy.has(e)}var Vy=e=>e.map(e=>Pi(e)?e.toLocaleLowerCase():e),Hy=class{constructor(e){this.map=new Map,this.boundHandlePinch=()=>{},this.recordKey=new Set,this.onKeyDown=e=>{e?.key&&(this.recordKey.add(e.key),this.trigger(e))},this.onKeyUp=e=>{e?.key&&this.recordKey.delete(e.key)},this.onKeyDownWindow=e=>{By(e.key)&&this.recordKey.add(e.key)},this.onKeyUpWindow=e=>{By(e.key)&&this.recordKey.delete(e.key)},this.onWheel=e=>{this.triggerExtendKey(X.WHEEL,e)},this.onDrag=e=>{this.triggerExtendKey(X.DRAG,e)},this.handlePinch=(e,t)=>{this.triggerExtendKey(X.PINCH,Object.assign(Object.assign({},e),t))},this.onFocus=()=>{this.recordKey.clear()},this.emitter=e,this.bindEvents()}bind(e,t){e.length!==0&&(e.includes(X.PINCH)&&!this.pinchHandler&&(this.boundHandlePinch=this.handlePinch.bind(this),this.pinchHandler=new Ry(this.emitter,`pinchmove`,this.boundHandlePinch)),this.map.set(e,t))}unbind(e,t){this.map.forEach((n,r)=>{_a(r,e)&&(!t||t===n)&&this.map.delete(r)})}unbindAll(){this.map.clear()}match(e){return _a(Vy(Array.from(this.recordKey)).sort(),Vy(e).sort())}bindEvents(){var e;let{emitter:t}=this;window.addEventListener(X.KEY_DOWN,this.onKeyDownWindow),window.addEventListener(X.KEY_UP,this.onKeyUpWindow),t.on(X.KEY_DOWN,this.onKeyDown),t.on(X.KEY_UP,this.onKeyUp),t.on(X.WHEEL,this.onWheel),t.on(X.DRAG,this.onDrag),(e=globalThis.addEventListener)==null||e.call(globalThis,`focus`,this.onFocus)}trigger(e){this.map.forEach((t,n)=>{this.match(n)&&t(e)})}triggerExtendKey(e,t){this.map.forEach((n,r)=>{r.includes(e)&&_a(Array.from(this.recordKey),r.filter(t=>t!==e))&&n(t)})}destroy(){var e,t;this.unbindAll(),this.emitter.off(X.KEY_DOWN,this.onKeyDown),this.emitter.off(X.KEY_UP,this.onKeyUp),window.removeEventListener(X.KEY_DOWN,this.onKeyDownWindow),window.removeEventListener(X.KEY_UP,this.onKeyUpWindow),this.emitter.off(X.WHEEL,this.onWheel),this.emitter.off(X.DRAG,this.onDrag),(e=this.pinchHandler)==null||e.off(`pinchmove`,this.boundHandlePinch),(t=globalThis.removeEventListener)==null||t.call(globalThis,`focus`,this.onFocus)}},Uy=class e extends Wv{constructor(t,n){super(t,ma({},e.defaultOptions,n)),this.shortcut=new Hy(t.graph),this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.clearStates=this.clearStates.bind(this),this.bindEvents()}onPointerDown(e){if(!this.validate(e)||!this.isKeydown()||this.startPoint)return;let{canvas:t,graph:n}=this.context,r=Object.assign({},this.options.style);this.options.style.lineWidth&&(r.lineWidth=+this.options.style.lineWidth/n.getZoom()),this.rectShape=new _m({id:`g6-brush-select`,style:r}),t.appendChild(this.rectShape),this.startPoint=[e.canvas.x,e.canvas.y]}onPointerMove(e){var t;if(!this.startPoint)return;let{immediately:n,mode:r}=this.options;this.endPoint=Wy(e,this.context.graph),(t=this.rectShape)==null||t.attr({x:Math.min(this.endPoint[0],this.startPoint[0]),y:Math.min(this.endPoint[1],this.startPoint[1]),width:Math.abs(this.endPoint[0]-this.startPoint[0]),height:Math.abs(this.endPoint[1]-this.startPoint[1])}),n&&r===`default`&&this.updateElementsStates(Ly(this.startPoint,this.endPoint))}onPointerUp(e){if(this.startPoint){if(!this.endPoint){this.clearBrush();return}this.endPoint=Wy(e,this.context.graph),this.updateElementsStates(Ly(this.startPoint,this.endPoint)),this.clearBrush()}}clearStates(){this.endPoint||this.clearElementsStates()}clearElementsStates(){let{graph:e}=this.context,t=Object.values(e.getData()).reduce((e,t)=>Object.assign({},e,t.reduce((e,t)=>{let n=(t.states||[])?.filter(e=>e!==this.options.state);return e[Q(t)]=n,e},{})),{});e.setElementState(t,this.options.animation)}updateElementsStates(e){let{graph:t}=this.context,{enableElements:n,state:r,mode:i,onSelect:a}=this.options,o=this.selector(t,e,n),s={};switch(i){case`union`:o.forEach(e=>{s[e]=[...t.getElementState(e),r]});break;case`diff`:o.forEach(e=>{let n=t.getElementState(e);s[e]=n.includes(r)?n.filter(e=>e!==r):[...n,r]});break;case`intersect`:o.forEach(e=>{s[e]=t.getElementState(e).includes(r)?[r]:[]});break;default:o.forEach(e=>{s[e]=[r]});break}B(a)&&a(s),t.setElementState(s,this.options.animation)}selector(e,t,n){if(!n||n.length===0)return[];let r=[],i=e.getData();return n.forEach(n=>{i[`${n}s`].forEach(n=>{let i=Q(n);e.getElementVisibility(i)!==`hidden`&&Oy(e.getElementPosition(i),t)&&r.push(i)})}),n.includes(`edge`)&&i.edges?.forEach(e=>{let{source:t,target:n}=e;r.includes(t)&&r.includes(n)&&r.push(Q(e))}),r}clearBrush(){var e;(e=this.rectShape)==null||e.remove(),this.rectShape=void 0,this.startPoint=void 0,this.endPoint=void 0}isKeydown(){let{trigger:e}=this.options,t=Array.isArray(e)?e:[e];return this.shortcut.match(t.filter(e=>e!==`drag`))}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return B(t)?t(e):!!t}bindEvents(){let{graph:e}=this.context;e.on(X.POINTER_DOWN,this.onPointerDown),e.on(X.POINTER_MOVE,this.onPointerMove),e.on(X.POINTER_UP,this.onPointerUp),e.on(Jg.CLICK,this.clearStates)}unbindEvents(){let{graph:e}=this.context;e.off(X.POINTER_DOWN,this.onPointerDown),e.off(X.POINTER_MOVE,this.onPointerMove),e.off(X.POINTER_UP,this.onPointerUp),e.off(Jg.CLICK,this.clearStates)}update(e){this.unbindEvents(),this.options=ma(this.options,e),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}};Uy.defaultOptions={animation:!1,enable:!0,enableElements:[`node`,`combo`,`edge`],immediately:!1,mode:`default`,state:`selected`,trigger:[`shift`],style:{width:0,height:0,lineWidth:1,fill:`#1677FF`,stroke:`#1677FF`,fillOpacity:.1,zIndex:2,pointerEvents:`none`}};var Wy=(e,t)=>{if((e.targetType===`node`||e.targetType===`combo`)&&!(e.nativeEvent.target instanceof HTMLCanvasElement)){let[n,r]=t.getCanvasByClient([e.client.x,e.client.y]);return[n,r]}return[e.canvas.x,e.canvas.y]},Gy=.8,Ky=[`node`,`edge`,`combo`];function qy(e,t,n,r,i=0){r===`TB`&&t(e,i);let a=n(e);if(a)for(let e of a)qy(e,t,n,r,i+1);r===`BT`&&t(e,i)}function Jy(e,t,n){let r=[[e,0]];for(;r.length;){let[e,i]=r.shift();t(e,i);let a=n(e);if(a)for(let e of a)r.push([e,i+1])}}function Yy(e,t,n,r,i=`both`){if(t===`combo`||t===`node`)return Xy(e,n,r,i);let a=e.getEdgeData(n);if(!a)return[];let o=Xy(e,a.source,r-1,i),s=Xy(e,a.target,r-1,i);return Array.from(new Set([...o,...s,n]))}function Xy(e,t,n,r=`both`){let i=new Set,a=new Set,o=new Set;return Jy(t,(t,i)=>{i>n||(o.add(t),e.getRelatedEdgesData(t,r).forEach(e=>{let t=Q(e);!a.has(t)&&i<n&&(o.add(t),a.add(t))}))},t=>e.getRelatedEdgesData(t,r).map(e=>e.source===t?e.target:e.source).filter(e=>i.has(e)?!1:(i.add(e),!0))),Array.from(o)}function Zy(e){return e.states||[]}var Qy=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},$y=class e extends Wv{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.onClickSelect=e=>Qy(this,void 0,void 0,function*(){var t,n;this.validate(e)&&(yield this.updateState(e),(n=(t=this.options).onClick)==null||n.call(t,e))}),this.onClickCanvas=e=>Qy(this,void 0,void 0,function*(){var t,n;this.validate(e)&&(yield this.clearState(),(n=(t=this.options).onClick)==null||n.call(t,e))}),this.shortcut=new Hy(t.graph),this.bindEvents()}bindEvents(){let{graph:e}=this.context;this.unbindEvents(),Ky.forEach(t=>{e.on(`${t}:${X.CLICK}`,this.onClickSelect)}),e.on(Jg.CLICK,this.onClickCanvas)}get isMultipleSelect(){let{multiple:e,trigger:t}=this.options;return e&&this.shortcut.match(t)}getNeighborIds(e){let{target:t,targetType:n}=e,{graph:r}=this.context,{degree:i}=this.options;return Yy(r,n,t.id,typeof i==`function`?i(e):i).filter(e=>e!==t.id)}updateState(e){return Qy(this,void 0,void 0,function*(){let{state:t,unselectedState:n,neighborState:r,animation:i}=this.options;if(!t&&!r&&!n)return;let{target:a}=e,{graph:o}=this.context,s=Zy(o.getElementData(a.id)).includes(t)?`unselect`:`select`,c={},l=this.isMultipleSelect,u=[a.id],d=this.getNeighborIds(e);if(!l)if(s===`select`){Object.assign(c,this.getClearStates(!!n));let e=(e,t)=>{e.forEach(e=>{c[e]||(c[e]=o.getElementState(e)),c[e].push(t)})};e(u,t),e(d,r),n&&Object.keys(c).forEach(e=>{!u.includes(e)&&!d.includes(e)&&c[e].push(n)})}else Object.assign(c,this.getClearStates());else if(Object.assign(c,this.getDataStates()),s===`select`){let e=(e,t)=>{e.forEach(e=>{let r=new Set(o.getElementState(e));r.add(t),r.delete(n),c[e]=Array.from(r)})};e(u,t),e(d,r),n&&Object.keys(c).forEach(e=>{let i=c[e];!i.includes(t)&&!i.includes(r)&&!i.includes(n)&&c[e].push(n)})}else{let e=c[a.id];c[a.id]=e.filter(e=>e!==t&&e!==r),e.includes(n)||c[a.id].push(n),d.forEach(e=>{c[e]=c[e].filter(e=>e!==r),c[e].includes(t)||c[e].push(n)})}yield o.setElementState(c,i)})}getDataStates(){let{graph:e}=this.context,{nodes:t,edges:n,combos:r}=e.getData(),i={};return[...t,...n,...r].forEach(e=>{i[Q(e)]=Zy(e)}),i}getClearStates(e=!1){let{graph:t}=this.context,{state:n,unselectedState:r,neighborState:i}=this.options,a=new Set([n,r,i]),{nodes:o,edges:s,combos:c}=t.getData(),l={};return[...o,...s,...c].forEach(t=>{let n=Zy(t),r=n.filter(e=>!a.has(e));(e||r.length!==n.length)&&(l[Q(t)]=r)}),l}clearState(){return Qy(this,void 0,void 0,function*(){let{graph:e}=this.context;yield e.setElementState(this.getClearStates(),this.options.animation)})}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return B(t)?t(e):!!t}unbindEvents(){let{graph:e}=this.context;Ky.forEach(t=>{e.off(`${t}:${X.CLICK}`,this.onClickSelect)}),e.off(Jg.CLICK,this.onClickCanvas)}destroy(){this.unbindEvents(),super.destroy()}};$y.defaultOptions={animation:!0,enable:!0,multiple:!1,trigger:[`shift`],state:`selected`,neighborState:`selected`,unselectedState:void 0,degree:0};function eb(e){return!!e.style?.collapsed}function tb(e,t){if(!e.startsWith(t))return!1;let n=e[t.length];return n>=`A`&&n<=`Z`}function nb(e,t){return`${t}${Ji(e)}`}function rb(e,t,n=!0){if(!t||!tb(e,t))return e;let r=e.slice(t.length);return n?Ki(r):r}function ib(e,t){let n=Object.entries(e).reduce((e,[n,r])=>(n===`className`||n===`class`||tb(n,t)&&Object.assign(e,{[rb(n,t)]:r}),e),{});if(`opacity`in e){let r=nb(`opacity`,t),i=e.opacity;if(r in e){let t=e[r];Object.assign(n,{opacity:i*t})}else Object.assign(n,{opacity:i})}return n}function ab(e,t){let n=t.length;return Object.keys(e).reduce((r,i)=>{if(i.startsWith(t)){let t=i.slice(n);r[t]=e[i]}return r},{})}function ob(e,t){let n=typeof t==`string`?[t]:t,r={};return Object.keys(e).forEach(t=>{n.find(e=>t.startsWith(e))||(r[t]=e[t])}),r}function sb(e=0){if(typeof e==`number`)return[e,e,e];let[t,n=t,r=t]=e;return[t,n,r]}var cb=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};function lb(e,t){let{datum:n,graph:r}=t;return typeof e==`function`?e.call(r,n):Object.fromEntries(Object.entries(e).map(([e,t])=>typeof t==`function`?[e,t.call(r,n)]:[e,t]))}function ub(e,t){let n=e?.style||{},r=t?.style||{};for(let e in n)e in r||(r[e]=n[e]);return Object.assign({},e,t,{style:r})}function db(e){let{x:t,y:n,z:r,class:i,className:a,transform:o,transformOrigin:s,zIndex:c,visibility:l}=e;return cb(e,[`x`,`y`,`z`,`class`,`className`,`transform`,`transformOrigin`,`zIndex`,`visibility`])}function fb(e,t){let n=sb(e),r={};return t.text&&!t.fontSize&&(r={fontSize:Math.min(...n)*.5}),t.src&&(!t.width||!t.height)&&(r={width:n[0]*.5,height:n[1]*.5}),r}function pb(e){if(e)return typeof e==`string`||typeof e==`function`||Array.isArray(e)?{type:`group`,field:e=>e.id,color:e,invert:!1}:e}function mb(e,t){if(!t)return{};let{type:n,color:r,field:i,invert:a}=t,o=e=>{let t=typeof r==`string`?i_(`palette`,r):r;if(typeof t==`function`){let n={};return e.forEach(([e,r])=>{n[e]=t(a?1-r:r)}),n}else if(Array.isArray(t)){let n=a?[...t].reverse():t,r={};return e.forEach(([e,i])=>{r[e]=n[i%t.length]}),r}return{}},s=(e,t)=>typeof e==`string`?t.data?.[e]:e?.(t);if(n===`group`){let t=Li(e,e=>{if(!i)return`default`;let t=s(i,e);return t?String(t):`default`}),n=o(Object.keys(t).map((e,t)=>[e,t])),r={};return Object.entries(t).forEach(([e,t])=>{t.forEach(t=>{r[Q(t)]=n[e]})}),r}else if(n===`value`){let[t,n]=e.reduce(([e,t],n)=>{let r=s(i,n);if(typeof r!=`number`)throw Error(s_(`Palette field ${i} is not a number`));return[Math.min(e,r),Math.max(t,r)]},[1/0,-1/0]),r=n-t;return o(e.map(e=>[e.id,(s(i,e)-t)/r]))}}function hb(e){let t=typeof e==`string`?i_(`palette`,e):e;if(typeof t!=`function`)return t}function gb(e,t){let n=2*e;return typeof t==`string`?n=e*Number(t.replace(`%`,``))/100:typeof t==`number`&&(n=t),isNaN(n)&&(n=2*e),n}function _b(e,t,n=1,r=!1){let i=r?n:1;return gb((e.max[0]-e.min[0])*i,t)}function vb(e,t,n=1){return gb(ty(e[0],e[1])*n,t)}var yb=class extends nm{constructor(e){xb(e.style),super(e),this.shapeMap={},this.animateMap={},this.render(this.attributes,this),this.setVisibility(),this.bindEvents()}get parsedAttributes(){return this.attributes}upsert(e,t,n,r,i){var a,o,s,c,l,u,d,f;let p=this.shapeMap[e];if(n===!1){p&&((a=i?.beforeDestroy)==null||a.call(i,p),r.removeChild(p),delete this.shapeMap[e],(o=i?.afterDestroy)==null||o.call(i,p));return}let m=typeof t==`string`?i_(n_.SHAPE,t):t;if(!m)throw Error(s_(`Shape ${t} not found`));if(!p||p.destroyed||!(p instanceof m)){p&&((s=i?.beforeDestroy)==null||s.call(i,p),p?.destroy(),(c=i?.afterDestroy)==null||c.call(i,p)),(l=i?.beforeCreate)==null||l.call(i);let t=new m({className:e,style:n});return r.appendChild(t),this.shapeMap[e]=t,(u=i?.afterCreate)==null||u.call(i,t),t}return(d=i?.beforeUpdate)==null||d.call(i,p),ZC(p,n),(f=i?.afterUpdate)==null||f.call(i,p),p}update(e={}){let t=Object.assign({},this.attributes,e);xb(t),XC(this,t),this.render(t,this),this.setVisibility()}bindEvents(){}getGraphicStyle(e){return db(e)}get compositeShapes(){return[[`badges`,`badge-`],[`ports`,`port-`]]}animate(e,t){if(e.length===0)return null;let n=[];if(e[0].x!==void 0||e[0].y!==void 0||e[0].z!==void 0){let{x:t=0,y:n=0,z:r=0}=this.attributes;e.forEach(e=>{let{x:i=t,y:a=n,z:o=r}=e;Object.assign(e,{transform:o?[[`translate3d`,i,a,o]]:[[`translate`,i,a]]})})}let r=super.animate(e,t);if(r&&(bb(this,r),n.push(r)),Array.isArray(e)&&e.length>0){let r=[`transform`,`transformOrigin`,`x`,`y`,`z`,`zIndex`];if(Object.keys(e[0]).some(e=>!r.includes(e))){Object.entries(this.shapeMap).forEach(([r,i])=>{let a=`get${Ji(r)}Style`,o=this[a];if(B(o)){let r=e.map(e=>o.call(this,Object.assign(Object.assign({},this.attributes),e))),a=i.animate(d_(r),t);a&&(bb(i,a),n.push(a))}});let r=(r,i)=>{if(!ga(r)){let a=`get${Ji(i)}Style`,o=this[a];if(B(o)){let i=e.map(e=>o.call(this,Object.assign(Object.assign({},this.attributes),e)));Object.entries(i[0]).map(([e])=>{let a=i.map(t=>t[e]),o=r[e];if(o){let e=o.animate(d_(a),t);e&&(bb(o,e),n.push(e))}})}}};this.compositeShapes.forEach(([e,t])=>{r(ab(this.shapeMap,t),e)})}}return u_(n)}getShape(e){return this.shapeMap[e]}setVisibility(){let{visibility:e}=this.attributes;Bv(this,e)}destroy(){this.shapeMap={},this.animateMap={},super.destroy()}};function bb(e,t){t?.finished.then(()=>{let n=e.activeAnimations.findIndex(e=>e===t);n>-1&&e.activeAnimations.splice(n,1)})}function xb(e){if(!e)return{};if(`x`in e||`y`in e||`z`in e){let{x:t=0,y:n=0,z:r,transform:i}=e,a=g_(t,n,r,i);a&&(e.transform=a)}return e}var Sb=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Cb=class e extends yb{constructor(t){super(ub({style:e.defaultStyleProps},t))}isTextStyle(e){return tb(e,`label`)}isBackgroundStyle(e){return tb(e,`background`)}getTextStyle(e){let t=this.getGraphicStyle(e),{padding:n}=t;return ob(Sb(t,[`padding`]),`background`)}getBackgroundStyle(e){if(e.background===!1)return!1;let t=this.getGraphicStyle(e),{wordWrap:n,wordWrapWidth:r,padding:i}=t,a=ib(t,`background`),{min:[o,s],center:[c,l],halfExtents:[u,d]}=this.shapeMap.text.getGeometryBounds(),[f,p,m,h]=M_(i),g=u*2+h+p,{width:_,height:v}=a;_&&v?Object.assign(a,{x:c-Number(_)/2,y:l-Number(v)/2}):Object.assign(a,{x:o-h,y:s-f,width:n?Math.min(g,r+h+p):g,height:d*2+f+m});let{radius:y}=a;if(typeof y==`string`&&y.endsWith(`%`)){let e=Number(y.replace(`%`,``))/100;a.radius=Math.min(+a.width,+a.height)*e}return a}render(e=this.parsedAttributes,t=this){this.upsert(`text`,ym,this.getTextStyle(e),t),this.upsert(`background`,_m,this.getBackgroundStyle(e),t)}getGeometryBounds(){return(this.getShape(`background`)||this.getShape(`text`)).getGeometryBounds()}};Cb.defaultStyleProps={padding:0,fontSize:12,fontFamily:`system-ui, sans-serif`,wordWrap:!0,maxLines:1,wordWrapWidth:128,textOverflow:`...`,textBaseline:`middle`,backgroundOpacity:.75,backgroundZIndex:-1,backgroundLineWidth:0};var wb=class e extends yb{constructor(t){super(ub({style:e.defaultStyleProps},t))}getBadgeStyle(e){return this.getGraphicStyle(e)}render(e=this.parsedAttributes,t=this){this.upsert(`label`,Cb,this.getBadgeStyle(e),t)}getGeometryBounds(){let e=this.getShape(`label`);return(e.getShape(`background`)||e.getShape(`text`)).getGeometryBounds()}};wb.defaultStyleProps={padding:[2,4,2,4],fontSize:10,wordWrap:!1,backgroundRadius:`50%`,backgroundOpacity:1};function Tb(e,t=!0){let n=[];return e.forEach((e,t)=>{n.push([t===0?`M`:`L`,...e])}),t&&n.push([`Z`]),n}var Eb={M:[`x`,`y`],m:[`dx`,`dy`],H:[`x`],h:[`dx`],V:[`y`],v:[`dy`],L:[`x`,`y`],l:[`dx`,`dy`],Z:[],z:[],C:[`x1`,`y1`,`x2`,`y2`,`x`,`y`],c:[`dx1`,`dy1`,`dx2`,`dy2`,`dx`,`dy`],S:[`x2`,`y2`,`x`,`y`],s:[`dx2`,`dy2`,`dx`,`dy`],Q:[`x1`,`y1`,`x`,`y`],q:[`dx1`,`dy1`,`dx`,`dy`],T:[`x`,`y`],t:[`dx`,`dy`],A:[`rx`,`ry`,`rotation`,`large-arc`,`sweep`,`x`,`y`],a:[`rx`,`ry`,`rotation`,`large-arc`,`sweep`,`dx`,`dy`]};function Db(e){let t=e.replace(/[\n\r]/g,``).replace(/-/g,` -`).replace(/(\d*\.)(\d+)(?=\.)/g,`$1$2 `).trim().split(/\s*,|\s+/),n=[],r=``,i={};for(;t.length>0;){let e=t.shift();e in Eb?r=e:t.unshift(e),i={type:r},Eb[r].forEach(n=>{e=t.shift(),i[n]=e}),r===`M`?r=`L`:r===`m`&&(r=`l`);let[a,...o]=Object.values(i);n.push([a,...o.map(Number)])}return n}function Ob(e){let t=[];return(typeof e==`string`?Db(e):e).forEach(e=>{let n=e[0];if(n===`Z`){t.push(t[0]);return}if(n!==`A`)for(let n=1;n<e.length;n+=2)t.push([e[n],e[n+1],0]);else{let n=e.length;t.push([e[n-2],e[n-1],0])}}),t}var kb=e=>{if(e.length<2)return[[`M`,0,0],[`L`,0,0]];let t=e[0],n=e[1],r=e[e.length-1],i=e[e.length-2];e.unshift(i,r),e.push(t,n);let a=[[`M`,r[0],r[1]]];for(let t=1;t<e.length-2;t+=1){let[n,r]=e[t-1],[i,o]=e[t],[s,c]=e[t+1],[l,u]=t===e.length-2?[s,c]:e[t+2],d=i+(s-n)/6,f=o+(c-r)/6,p=s-(l-i)/6,m=c-(u-o)/6;a.push([`C`,d,f,p,m,s,c])}return a};function Ab(e,t,n,r,i,a,o){let[s,c]=_y(e,t),l={textAlign:t===`left`?`right`:t===`right`?`left`:`center`,textBaseline:t===`top`?`bottom`:t===`bottom`?`top`:`middle`,transform:[[`translate`,s+n,c+r]]};if(t===`center`||!i)return l;let u=Ob(a);if(!u||u.length<=3)return l;let d=u.map((e,t)=>{let n=e,r=u[(t+1)%u.length];return _a(n,r)?null:[n,r]}).filter(Boolean),f=My([s,c],d),p=Py([s,c],f);if(p&&f&&(l.transform=[[`translate`,p[0]+n,p[1]+r]],o)){let e=Math.atan((f[0][1]-f[1][1])/(f[0][0]-f[1][0]));l.transform.push([`rotate`,e/Math.PI*180]),l.textAlign=`center`,(t===`right`||t===`left`)&&(e>0?l.textBaseline=t===`right`?`bottom`:`top`:l.textBaseline=t===`right`?`top`:`bottom`)}return l}var jb=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Mb=class e extends yb{constructor(t){super(ub({style:e.defaultStyleProps},t))}getLabelStyle(e){if(!e.label||!e.d||e.d.length===0)return!1;let t=ib(this.getGraphicStyle(e),`label`),{maxWidth:n,offsetX:r,offsetY:i,autoRotate:a,placement:o,closeToPath:s}=t,c=jb(t,[`maxWidth`,`offsetX`,`offsetY`,`autoRotate`,`placement`,`closeToPath`]),l=this.shapeMap.key?.getRenderBounds();return Object.assign(Ab(l,o,r,i,s,e.d,a),{wordWrapWidth:_b(l,n)},c)}getKeyStyle(e){return this.getGraphicStyle(e)}render(e,t){this.upsert(`key`,fm,this.getKeyStyle(e),t),this.upsert(`label`,Cb,this.getLabelStyle(e),t)}};Mb.defaultStyleProps={label:!0,labelPlacement:`bottom`,labelCloseToPath:!0,labelAutoRotate:!0,labelOffsetX:0,labelOffsetY:0};function Nb(e){let t=[],n=e=>{e?.children.length&&e.children.forEach(e=>{t.push(e),n(e)})};return n(e),t}function Pb(e){let t=[],n=e.parentNode;for(;n;)t.push(n),n=n.parentNode;return t}var Fb=class extends cm{constructor(e){super(e),this.onMounted=()=>{this.handleRadius()},this.onAttrModified=()=>{this.handleRadius()},Lb=this,this.isMutationObserved=!0,this.addEventListener(op.MOUNTED,this.onMounted),this.addEventListener(op.ATTR_MODIFIED,this.onAttrModified)}handleRadius(){let{radius:e,clipPath:t,width:n=0,height:r=0}=this.attributes;if(e&&n&&r){let[i,a]=this.getBounds().min,o={x:i,y:a,radius:e,width:n,height:r};if(t)Object.assign(this.parsedStyle.clipPath.style,o);else{let e=new _m({style:o});this.style.clipPath=e}}else t&&(this.style.clipPath=null)}},Ib=new WeakMap,Lb=null,Rb=e=>{if(Lb&&Pb(Lb).includes(e)){let t=Ib.get(e);t?t.includes(Lb)||t.push(Lb):Ib.set(e,[Lb])}},zb=e=>{let t=Ib.get(e);t&&t.forEach(e=>e.handleRadius())},Bb=class extends yb{constructor(e){super(e)}isImage(){let{src:e}=this.attributes;return!!e}getIconStyle(e=this.attributes){let{width:t=0,height:n=0}=e,r=this.getGraphicStyle(e);return this.isImage()?Object.assign({x:-t/2,y:-n/2},r):Object.assign({textBaseline:`middle`,textAlign:`center`},r)}render(e=this.attributes,t=this){this.upsert(`icon`,this.isImage()?Fb:ym,this.getIconStyle(e),t)}},Vb=class extends yb{get context(){return this.config.context}get parsedAttributes(){return this.attributes}onframe(){}animate(e,t){let n=super.animate(e,t);return n&&(n.onframe=()=>this.onframe(),n.finished.then(()=>this.onframe())),n}},Hb=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Ub=class e extends Vb{constructor(t){super(ub({style:e.defaultStyleProps},t)),this.type=`node`}getSize(e=this.attributes){let{size:t}=e;return sb(t)}getKeyStyle(e){let t=this.getGraphicStyle(e);return Object.assign(ob(t,[`label`,`halo`,`icon`,`badge`,`port`]))}getLabelStyle(e){if(e.label===!1||!e.labelText)return!1;let t=ib(this.getGraphicStyle(e),`label`),{placement:n,maxWidth:r,offsetX:i,offsetY:a}=t,o=Hb(t,[`placement`,`maxWidth`,`offsetX`,`offsetY`]),s=this.getShape(`key`).getLocalBounds();return Object.assign(UC(s,n,i,a),{wordWrapWidth:_b(s,r)},o)}getHaloStyle(e){if(e.halo===!1)return!1;let t=this.getKeyStyle(e),{fill:n}=t,r=Hb(t,[`fill`]),i=ib(this.getGraphicStyle(e),`halo`);return Object.assign(Object.assign(Object.assign({},r),{stroke:n}),i)}getIconStyle(e){if(e.icon===!1||!e.iconText&&!e.iconSrc)return!1;let t=ib(this.getGraphicStyle(e),`icon`);return Object.assign(fb(e.size,t),t)}getBadgesStyle(e){let t=ab(this.shapeMap,`badge-`),n={};if(Object.keys(t).forEach(e=>{n[e]=!1}),e.badge===!1||!e.badges?.length)return n;let{badges:r=[],badgePalette:i,opacity:a=1}=e,o=Hb(e,[`badges`,`badgePalette`,`opacity`]),s=hb(i),c=ib(this.getGraphicStyle(o),`badge`);return r.forEach((e,t)=>{n[t]=Object.assign(Object.assign({backgroundFill:s?s[t%s?.length]:void 0,opacity:a},c),this.getBadgeStyle(e))}),n}getBadgeStyle(e){let t=this.getShape(`key`),{placement:n=`top`,offsetX:r,offsetY:i}=e,a=Hb(e,[`placement`,`offsetX`,`offsetY`]),o=UC(t.getLocalBounds(),n,r,i,!0);return Object.assign(Object.assign({},o),a)}getPortsStyle(e){let t=this.getPorts(),n={};if(Object.keys(t).forEach(e=>{n[e]=!1}),e.port===!1||!e.ports?.length)return n;let r=ib(this.getGraphicStyle(e),`port`),{ports:i=[]}=e;return i.forEach((t,i)=>{let a=t.key||i,o=Object.assign(Object.assign({},r),t);if(FC(o))n[a]=!1;else{let[r,i]=this.getPortXY(e,t);n[a]=Object.assign({transform:[[`translate`,r,i]]},o)}}),n}getPortXY(e,t){let{placement:n=`left`}=t,r=this.getShape(`key`);return NC(Wb(this.context,r),n)}getPorts(){return ab(this.shapeMap,`port-`)}getCenter(){return this.getShape(`key`).getBounds().center}getIntersectPoint(e,t=!1){return ky(e,this.getShape(`key`).getBounds(),t)}drawHaloShape(e,t){let n=this.getHaloStyle(e),r=this.getShape(`key`);this.upsert(`halo`,r.constructor,n,t)}drawIconShape(e,t){let n=this.getIconStyle(e);this.upsert(`icon`,Bb,n,t),Rb(this)}drawBadgeShapes(e,t){let n=this.getBadgesStyle(e);Object.keys(n).forEach(e=>{let r=n[e];this.upsert(`badge-${e}`,wb,r,t)})}drawPortShapes(e,t){let n=this.getPortsStyle(e);Object.keys(n).forEach(e=>{let r=n[e],i=`port-${e}`;this.upsert(i,em,r,t)})}drawLabelShape(e,t){let n=this.getLabelStyle(e);this.upsert(`label`,Cb,n,t)}_drawKeyShape(e,t){return this.drawKeyShape(e,t)}render(e=this.parsedAttributes,t=this){this._drawKeyShape(e,t),this.getShape(`key`)&&(this.drawHaloShape(e,t),this.drawIconShape(e,t),this.drawBadgeShapes(e,t),this.drawLabelShape(e,t),this.drawPortShapes(e,t))}update(e){super.update(e),e&&(`x`in e||`y`in e||`z`in e)&&zb(this)}onframe(){this.drawBadgeShapes(this.parsedAttributes,this),this.drawLabelShape(this.parsedAttributes,this)}};Ub.defaultStyleProps={x:0,y:0,size:32,droppable:!0,draggable:!0,port:!0,ports:[],portZIndex:2,portLinkToCenter:!1,badge:!0,badges:[],badgeZIndex:3,halo:!1,haloDroppable:!1,haloLineDash:0,haloLineWidth:12,haloStrokeOpacity:.25,haloPointerEvents:`none`,haloZIndex:-1,icon:!0,iconZIndex:1,label:!0,labelIsBillboard:!0,labelMaxWidth:`200%`,labelPlacement:`bottom`,labelWordWrap:!1,labelZIndex:0};function Wb(e,t){if(!e)return t.getLocalBounds();let n=e.canvas.getLayer(),r=t.cloneNode();Bv(r,`hidden`),n.appendChild(r);let i=r.getLocalBounds();return r.destroy(),i}var Gb=class e extends Ub{constructor(t){super(ub({style:e.defaultStyleProps},t))}drawKeyShape(e,t){return this.upsert(`key`,em,this.getKeyStyle(e),t)}getKeyStyle(e){let t=super.getKeyStyle(e);return Object.assign(Object.assign({},t),{r:Math.min(...this.getSize(e))/2})}getIconStyle(e){let t=super.getIconStyle(e),{r:n}=this.getShape(`key`).attributes,r=n*2*Gy;return t?Object.assign({width:r,height:r},t):!1}getIntersectPoint(e,t=!1){return Ay(e,this.getShape(`key`).getBounds(),t)}};Gb.defaultStyleProps={size:32};var Kb=class extends Ub{constructor(e){super(e)}get parsedAttributes(){return this.attributes}drawKeyShape(e,t){return this.upsert(`key`,mm,this.getKeyStyle(e),t)}getKeyStyle(e){let t=super.getKeyStyle(e);return Object.assign(Object.assign({},t),{points:this.getPoints(e)})}getIntersectPoint(e,t=!1){let{points:n}=this.getShape(`key`).attributes;return Dy(e,[+(this.attributes?.x||0),+(this.attributes?.y||0)],n,!0,t).point}},qb=class extends Kb{constructor(e){super(e)}getPoints(e){let[t,n]=this.getSize(e);return JC(t,n)}},Jb=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},Yb=class e extends Gb{constructor(t){super(ub({style:e.defaultStyleProps},t))}parseOuterR(){let{size:e}=this.parsedAttributes;return Math.min(...sb(e))/2}parseInnerR(){let{innerR:e}=this.parsedAttributes;return Pi(e)?parseInt(e)/100*this.parseOuterR():e}drawDonutShape(e,t){let{donuts:n}=e;if(!n?.length)return;let r=n.map(e=>zi(e)?{value:e}:e),i=ib(this.getGraphicStyle(e),`donut`),a=hb(e.donutPalette);if(!a)return;let o=r.reduce((e,t)=>e+(t.value??0),0),s=this.parseOuterR(),c=this.parseInnerR(),l=0;r.forEach((e,n)=>{let{value:u=0,color:d=a[n%a.length]}=e,f=Jb(e,[`value`,`color`]),p=(o===0?1/r.length:u/o)*360;this.upsert(`round${n}`,fm,Object.assign(Object.assign(Object.assign({},i),{d:$b(s,c,l,l+p),fill:d}),f),t),l+=p})}render(e,t=this){super.render(e,t),this.drawDonutShape(e,t)}};Yb.defaultStyleProps={innerR:`50%`,donuts:[],donutPalette:`tableau`};var Xb=(e,t,n,r)=>[e+Math.sin(r)*n,t-Math.cos(r)*n],Zb=(e,t,n,r)=>r<=0||n<=r?[[`M`,e-n,t],[`A`,n,n,0,1,1,e+n,t],[`A`,n,n,0,1,1,e-n,t],[`Z`]]:[[`M`,e-n,t],[`A`,n,n,0,1,1,e+n,t],[`A`,n,n,0,1,1,e-n,t],[`Z`],[`M`,e+r,t],[`A`,r,r,0,1,0,e-r,t],[`A`,r,r,0,1,0,e+r,t],[`Z`]],Qb=(e,t,n,r,i,a)=>{let[o,s]=[i/360*2*Math.PI,a/360*2*Math.PI],c=[Xb(e,t,r,o),Xb(e,t,n,o),Xb(e,t,n,s),Xb(e,t,r,s)],l=+(s-o>Math.PI);return[[`M`,c[0][0],c[0][1]],[`L`,c[1][0],c[1][1]],[`A`,n,n,0,l,1,c[2][0],c[2][1]],[`L`,c[3][0],c[3][1]],[`A`,r,r,0,l,0,c[0][0],c[0][1]],[`Z`]]},$b=(e=0,t=0,n,r)=>{let[i,a]=[0,0];return Math.abs(n-r)%360<1e-6?Zb(i,a,e,t):Qb(i,a,e,t,n,r)},ex=class e extends Ub{constructor(t){super(ub({style:e.defaultStyleProps},t))}drawKeyShape(e,t){return this.upsert(`key`,rm,this.getKeyStyle(e),t)}getKeyStyle(e){let t=super.getKeyStyle(e),[n,r]=this.getSize(e);return Object.assign(Object.assign({},t),{rx:n/2,ry:r/2})}getIconStyle(e){let t=super.getIconStyle(e),{rx:n,ry:r}=this.getShape(`key`).attributes,i=Math.min(+n,+r)*2*Gy;return t?Object.assign({width:i,height:i},t):!1}getIntersectPoint(e,t=!1){return Ay(e,this.getShape(`key`).getBounds(),t)}};ex.defaultStyleProps={size:[45,35]};var tx=class extends Kb{constructor(e){super(e)}getOuterR(e){return e.outerR||Math.min(...this.getSize(e))/2}getPoints(e){return QC(this.getOuterR(e))}getIconStyle(e){let t=super.getIconStyle(e),n=this.getOuterR(e)*Gy;return t?Object.assign({width:n,height:n},t):!1}};function nx(e,t){if(!{}.hasOwnProperty.call(e,t))throw TypeError(`attempted to use private field on non-instance`);return e}var rx=0;function ix(e){return`__private_`+ rx+++`_`+e}var ax=ix(`renderState`),ox=function(){function e(t){R(this,e),this.renderQueue=[],Object.defineProperty(this,ax,{writable:!0,value:{restoreStack:[],prevObject:null,currentContext:new Map}}),this.clearFullScreenLastFrame=!1,this.clearFullScreen=!1,this.vpMatrix=Dn(),this.dprMatrix=Dn(),this.tmpMat4=Dn(),this.vec3a=Tr(),this.vec3b=Tr(),this.vec3c=Tr(),this.vec3d=Tr(),this.canvasRendererPluginOptions=t}return z(e,[{key:`apply`,value:function(t,n){var r=this;this.context=t;var i=this.context,a=i.config,o=i.camera,s=i.renderingService,c=i.renderingContext,l=i.pathGeneratorFactory,u=a.renderer.getConfig().enableRenderingOptimization;a.renderer.getConfig().enableDirtyCheck=!1,a.renderer.getConfig().enableDirtyRectangleRendering=!1,this.pathGeneratorFactory=l;var d=t.contextService,f=c.root.ownerDocument.defaultView;s.hooks.init.tap(e.tag,function(){var e=d.getDPR(),t=a.width,n=a.height,i=d.getContext();r.clearRect(i,0,0,t*e,n*e,a.background)}),s.hooks.destroy.tap(e.tag,function(){r.renderQueue=[],nx(r,ax)[ax]={restoreStack:[],prevObject:null,currentContext:null}});var p=function(){var e,t=d.getContext(),n=d.getDPR(),i=a.width,o=a.height,c=r.canvasRendererPluginOptions,l=c.dirtyObjectNumThreshold,u=c.dirtyObjectRatioThreshold,p=s.getStats(),m=p.total,h=p.rendered,g=h/m;r.clearFullScreen=r.clearFullScreenLastFrame||!((e=f.context.renderingPlugins[1])!=null&&e.isFirstTimeRenderingFinished)||s.disableDirtyRectangleRendering()||h>l&&g>u,t&&(typeof t.resetTransform==`function`?t.resetTransform():t.setTransform(1,0,0,1,0,0),r.clearFullScreen&&r.clearRect(t,0,0,i*n,o*n,a.background))},m=function(e,t){for(var i=[e];i.length>0;){var a,o=i.pop();o.isVisible()&&!o.isCulled()&&(u?r.renderDisplayObjectOptimized(o,t,r.context,nx(r,ax)[ax],n):r.renderDisplayObject(o,t,r.context,nx(r,ax)[ax],n));for(var s=((a=o.sortable)==null||(a=a.sorted)==null?void 0:a.length)>0?o.sortable.sorted:o.childNodes,c=s.length-1;c>=0;c--)i.push(s[c])}};s.hooks.endFrame.tap(e.tag,function(){if(p(),c.root.childNodes.length===0){r.clearFullScreenLastFrame=!0;return}u=a.renderer.getConfig().enableRenderingOptimization,nx(r,ax)[ax]={restoreStack:[],prevObject:null,currentContext:nx(r,ax)[ax].currentContext},nx(r,ax)[ax].currentContext.clear(),r.clearFullScreenLastFrame=!1;var e=d.getContext(),t=d.getDPR();if(Gn(r.dprMatrix,[t,t,1]),Ln(r.vpMatrix,r.dprMatrix,o.getOrthoMatrix()),r.clearFullScreen)u?(e.save(),m(c.root,e),e.restore()):m(c.root,e);else{var i=r.safeMergeAABB(r.mergeDirtyAABBs(r.renderQueue));if(As.isEmpty(i)){r.renderQueue=[];return}var s=r.convertAABB2Rect(i),l=s.x,h=s.y,g=s.width,_=s.height,v=Hr(r.vec3a,[l,h,0],r.vpMatrix),y=Hr(r.vec3b,[l+g,h,0],r.vpMatrix),b=Hr(r.vec3c,[l,h+_,0],r.vpMatrix),x=Hr(r.vec3d,[l+g,h+_,0],r.vpMatrix),S=Math.min(v[0],y[0],x[0],b[0]),C=Math.min(v[1],y[1],x[1],b[1]),w=Math.max(v[0],y[0],x[0],b[0]),T=Math.max(v[1],y[1],x[1],b[1]),E=Math.floor(S),D=Math.floor(C),O=Math.ceil(w-S),k=Math.ceil(T-C);e.save(),r.clearRect(e,E,D,O,k,a.background),e.beginPath(),e.rect(E,D,O,k),e.clip(),e.setTransform(r.vpMatrix[0],r.vpMatrix[1],r.vpMatrix[4],r.vpMatrix[5],r.vpMatrix[12],r.vpMatrix[13]),a.renderer.getConfig().enableDirtyRectangleRenderingDebug&&f.dispatchEvent(new Xf(Om.DIRTY_RECTANGLE,{dirtyRect:{x:E,y:D,width:O,height:k}}));var A=bn(i.getMin(),2),j=A[0],ee=A[1],M=bn(i.getMax(),2),te=M[0],ne=M[1];c.root.ownerDocument.elementsFromBBox(j,ee,te,ne).sort(function(e,t){return e.sortable.renderOrder-t.sortable.renderOrder}).forEach(function(t){t&&t.isVisible()&&!t.isCulled()&&r.renderDisplayObject(t,e,r.context,nx(r,ax)[ax],n)}),e.restore(),r.renderQueue.forEach(function(e){r.saveDirtyAABB(e)}),r.renderQueue=[]}nx(r,ax)[ax].restoreStack.forEach(function(){e.restore()}),nx(r,ax)[ax].restoreStack=[]}),s.hooks.render.tap(e.tag,function(e){r.clearFullScreen||r.renderQueue.push(e)})}},{key:`clearRect`,value:function(e,t,n,r,i,a){e.clearRect(t,n,r,i),a&&(e.fillStyle=a,e.fillRect(t,n,r,i))}},{key:`renderDisplayObjectOptimized`,value:function(e,t,n,r,i){var a=e.nodeName,o=!1,s=!1,c=this.context.styleRendererFactory[a],l=this.pathGeneratorFactory[a],u=e.parsedStyle.clipPath;if(u){o=!r.prevObject||!xr(u.getWorldTransform(),r.prevObject.getWorldTransform()),o&&(this.applyWorldTransform(t,u),r.prevObject=null);var d=this.pathGeneratorFactory[u.nodeName];d&&(t.save(),s=!0,t.beginPath(),d(t,u.parsedStyle),t.closePath(),t.clip())}if(c){o=!r.prevObject||!xr(e.getWorldTransform(),r.prevObject.getWorldTransform()),o&&this.applyWorldTransform(t,e);var f=!r.prevObject;if(!f){var p=r.prevObject.nodeName;f=a===G.TEXT?p!==G.TEXT:a===G.IMAGE?p!==G.IMAGE:p===G.TEXT||p===G.IMAGE}c.applyStyleToContext(t,e,f,r),r.prevObject=e}l&&(t.beginPath(),l(t,e.parsedStyle),a!==G.LINE&&a!==G.PATH&&a!==G.POLYLINE&&t.closePath()),c&&c.drawToContext(t,e,nx(this,ax)[ax],this,i),s&&t.restore(),e.dirty(!1)}},{key:`renderDisplayObject`,value:function(e,t,n,r,i){var a=e.nodeName,o=r.restoreStack[r.restoreStack.length-1];o&&!(e.compareDocumentPosition(o)&Qf.DOCUMENT_POSITION_CONTAINS)&&(t.restore(),r.restoreStack.pop());var s=this.context.styleRendererFactory[a],c=this.pathGeneratorFactory[a],l=e.parsedStyle.clipPath;if(l){this.applyWorldTransform(t,l);var u=this.pathGeneratorFactory[l.nodeName];u&&(t.save(),r.restoreStack.push(e),t.beginPath(),u(t,l.parsedStyle),t.closePath(),t.clip())}s&&(this.applyWorldTransform(t,e),t.save(),this.applyAttributesToContext(t,e)),c&&(t.beginPath(),c(t,e.parsedStyle),a!==G.LINE&&a!==G.PATH&&a!==G.POLYLINE&&t.closePath()),s&&(s.render(t,e.parsedStyle,e,n,this,i),t.restore()),e.dirty(!1)}},{key:`applyAttributesToContext`,value:function(e,t){var n=t.parsedStyle,r=n.stroke,i=n.fill,a=n.opacity,o=n.lineDash,s=n.lineDashOffset;o&&e.setLineDash(o),V(s)||(e.lineDashOffset=s),V(a)||(e.globalAlpha*=a),!V(r)&&!Array.isArray(r)&&!r.isNone&&(e.strokeStyle=t.attributes.stroke),!V(i)&&!Array.isArray(i)&&!i.isNone&&(e.fillStyle=t.attributes.fill)}},{key:`convertAABB2Rect`,value:function(e){var t=e.getMin(),n=e.getMax(),r=Math.floor(t[0]),i=Math.floor(t[1]),a=Math.ceil(n[0]),o=Math.ceil(n[1]);return{x:r,y:i,width:a-r,height:o-i}}},{key:`mergeDirtyAABBs`,value:function(e){var t=new As;return e.forEach(function(e){var n=e.getRenderBounds();t.add(n);var r=e.renderable.dirtyRenderBounds;r&&t.add(r)}),t}},{key:`saveDirtyAABB`,value:function(e){var t=e.renderable;t.dirtyRenderBounds||=new As;var n=e.getRenderBounds();n&&t.dirtyRenderBounds.update(n.center,n.halfExtents)}},{key:`applyWorldTransform`,value:function(e,t,n){n?(kn(this.tmpMat4,t.getLocalTransform()),Ln(this.tmpMat4,n,this.tmpMat4),Ln(this.tmpMat4,this.vpMatrix,this.tmpMat4)):(kn(this.tmpMat4,t.getWorldTransform()),Ln(this.tmpMat4,this.vpMatrix,this.tmpMat4)),e.setTransform(this.tmpMat4[0],this.tmpMat4[1],this.tmpMat4[4],this.tmpMat4[5],this.tmpMat4[12],this.tmpMat4[13])}},{key:`safeMergeAABB`,value:function(){var e=new As;return[...arguments].forEach(function(t){e.add(t)}),e}}])}();ox.tag=`CanvasRenderer`;function sx(e,t,n,r,i,a,o){var s,c;if(e.image.nodeName===`rect`){var l=e.image.parsedStyle,u=l.width,d=l.height;c=r.contextService.getDPR();var f=r.config.offscreenCanvas;s=a.offscreenCanvasCreator.getOrCreateCanvas(f),s.width=u*c,s.height=d*c;var p=a.offscreenCanvasCreator.getOrCreateContext(f),m={restoreStack:[],prevObject:null,currentContext:new Map};e.image.forEach(function(e){i.renderDisplayObject(e,p,r,m,a)}),m.restoreStack.forEach(function(){p.restore()})}return o.getOrCreatePatternSync(t,e,n,s,c,t.getGeometryBounds().min,function(){t.dirty(),r.renderingService.dirty()})}function cx(e,t,n,r){var i;if(e.type===xl.LinearGradient||e.type===xl.RadialGradient){var a=t.getGeometryBounds(),o=a&&a.halfExtents[0]*2||1,s=a&&a.halfExtents[1]*2||1,c=a&&a.min||[0,0];i=r.getOrCreateGradient(tn(tn({type:e.type},e.value),{},{min:c,width:o,height:s}),n)}return i}var lx=[`shadowBlur`,`shadowOffsetX`,`shadowOffsetY`],ux=[`lineCap`,`lineJoin`,`miterLimit`],dx={globalAlpha:1,shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:`#000`,filter:`none`,globalCompositeOperation:`source-over`,strokeStyle:`#000`,strokeOpacity:1,lineWidth:1,lineDash:[],lineDashOffset:0,lineCap:`butt`,lineJoin:`miter`,miterLimit:10,fillStyle:`#000`,fillOpacity:1},fx={};function px(e,t,n,r){var i=r.has(t)?r.get(t):dx[t];return i!==n&&(t===`lineDash`?e.setLineDash(n):e[t]=n,r.set(t,n)),i}var mx=function(e){function t(){return R(this,t),mn(this,t,arguments)}return gn(t,e),z(t,[{key:`render`,value:function(e,t,n,r,i,a){var o=t.fill,s=t.fillRule,c=t.opacity,l=c===void 0?1:c,u=t.fillOpacity,d=u===void 0?1:u,f=t.stroke,p=t.strokeOpacity,m=p===void 0?1:p,h=t.lineWidth,g=h===void 0?1:h,_=t.lineCap,v=t.lineJoin,y=t.shadowType,b=t.shadowColor,x=t.shadowBlur,S=t.filter,C=t.miterLimit,w=o&&!o.isNone,T=f&&!f.isNone&&g>0,E=o?.alpha===0,D=!!(S&&S.length),O=!V(b)&&x>0,k=n.nodeName,A=y===`inner`,j=T&&O&&(k===G.PATH||k===G.LINE||k===G.POLYLINE||E||A);w&&(e.globalAlpha=l*d,j||hx(n,e,O),gx(e,n,o,s,r,i,a,this.imagePool),j||this.clearShadowAndFilter(e,D,O)),T&&(e.globalAlpha=l*m,e.lineWidth=g,V(C)||(e.miterLimit=C),V(_)||(e.lineCap=_),V(v)||(e.lineJoin=v),j&&(A&&(e.globalCompositeOperation=`source-atop`),hx(n,e,!0),A&&(_x(e,n,f,r,i,a,this.imagePool),e.globalCompositeOperation=dx.globalCompositeOperation,this.clearShadowAndFilter(e,D,!0))),_x(e,n,f,r,i,a,this.imagePool))}},{key:`clearShadowAndFilter`,value:function(e,t,n){if(n&&(e.shadowColor=`transparent`,e.shadowBlur=0),t){var r=e.filter;!V(r)&&r.indexOf(`drop-shadow`)>-1&&(e.filter=r.replace(/drop-shadow\([^)]*\)/,``).trim()||`none`)}}}])}(function(){function e(t){R(this,e),this.imagePool=t}return z(e,[{key:`applyAttributesToContext`,value:function(e,t){}},{key:`render`,value:function(e,t,n,r,i,a){}},{key:`applyCommonStyleToContext`,value:function(e,t,n,r){var i=n?fx:r.prevObject.parsedStyle,a=t.parsedStyle;(n||a.opacity!==i.opacity)&&px(e,`globalAlpha`,V(a.opacity)?dx.globalAlpha:a.opacity,r.currentContext),(n||a.blend!==i.blend)&&px(e,`globalCompositeOperation`,V(a.blend)?dx.globalCompositeOperation:a.blend,r.currentContext)}},{key:`applyStrokeFillStyleToContext`,value:function(e,t,n,r){var i=n?fx:r.prevObject.parsedStyle,a=t.parsedStyle,o=a.lineWidth,s=o===void 0?dx.lineWidth:o,c=a.fill&&!a.fill.isNone;if(a.stroke&&!a.stroke.isNone&&s>0){(n||t.attributes.stroke!==r.prevObject.attributes.stroke)&&px(e,`strokeStyle`,!V(a.stroke)&&!Array.isArray(a.stroke)&&!a.stroke.isNone?t.attributes.stroke:dx.strokeStyle,r.currentContext),(n||a.lineWidth!==i.lineWidth)&&px(e,`lineWidth`,V(a.lineWidth)?dx.lineWidth:a.lineWidth,r.currentContext),(n||a.lineDash!==i.lineDash)&&px(e,`lineDash`,a.lineDash||dx.lineDash,r.currentContext),(n||a.lineDashOffset!==i.lineDashOffset)&&px(e,`lineDashOffset`,V(a.lineDashOffset)?dx.lineDashOffset:a.lineDashOffset,r.currentContext);for(var l=0;l<ux.length;l++){var u=ux[l];(n||a[u]!==i[u])&&px(e,u,V(a[u])?dx[u]:a[u],r.currentContext)}}c&&(n||t.attributes.fill!==r.prevObject.attributes.fill)&&px(e,`fillStyle`,!V(a.fill)&&!Array.isArray(a.fill)&&!a.fill.isNone?t.attributes.fill:dx.fillStyle,r.currentContext)}},{key:`applyStyleToContext`,value:function(e,t,n,r){var i=t.nodeName;this.applyCommonStyleToContext(e,t,n,r),i===G.IMAGE||this.applyStrokeFillStyleToContext(e,t,n,r)}},{key:`applyShadowAndFilterStyleToContext`,value:function(e,t,n,r){var i=t.parsedStyle;if(n){px(e,`shadowColor`,i.shadowColor.toString(),r.currentContext);for(var a=0;a<lx.length;a++){var o=lx[a];px(e,o,i[o]||dx[o],r.currentContext)}}i.filter&&i.filter.length&&px(e,`filter`,t.attributes.filter,r.currentContext)}},{key:`clearShadowAndFilterStyleForContext`,value:function(e,t,n,r){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;if(t){px(e,`shadowColor`,dx.shadowColor,r.currentContext);for(var a=0;a<lx.length;a++){var o=lx[a];px(e,o,dx[o],r.currentContext)}}if(n)if(t&&i){var s=e.filter;!V(s)&&s.indexOf(`drop-shadow`)>-1&&px(e,`filter`,s.replace(/drop-shadow\([^)]*\)/,``).trim()||dx.filter,r.currentContext)}else px(e,`filter`,dx.filter,r.currentContext)}},{key:`fillToContext`,value:function(e,t,n,r,i){var a=this,o=t.parsedStyle,s=o.fill,c=o.fillRule,l=null;if(Array.isArray(s)&&s.length>0)s.forEach(function(r){var i=px(e,`fillStyle`,cx(r,t,e,a.imagePool),n.currentContext);l??=i,c?e.fill(c):e.fill()});else{if(Ql(s)){var u=sx(s,t,e,t.ownerDocument.defaultView.context,r,i,this.imagePool);u&&(e.fillStyle=u,l=!0)}c?e.fill(c):e.fill()}l!==null&&px(e,`fillStyle`,l,n.currentContext)}},{key:`strokeToContext`,value:function(e,t,n,r,i){var a=this,o=t.parsedStyle.stroke,s=null;if(Array.isArray(o)&&o.length>0)o.forEach(function(r){var i=px(e,`strokeStyle`,cx(r,t,e,a.imagePool),n.currentContext);s??=i,e.stroke()});else{if(Ql(o)){var c=sx(o,t,e,t.ownerDocument.defaultView.context,r,i,this.imagePool);if(c){var l=px(e,`strokeStyle`,c,n.currentContext);s??=l}}e.stroke()}s!==null&&px(e,`strokeStyle`,s,n.currentContext)}},{key:`drawToContext`,value:function(e,t,n,r,i){var a=t.nodeName,o=t.parsedStyle,s=o.opacity,c=s===void 0?dx.globalAlpha:s,l=o.fillOpacity,u=l===void 0?dx.fillOpacity:l,d=o.strokeOpacity,f=d===void 0?dx.strokeOpacity:d,p=o.lineWidth,m=p===void 0?dx.lineWidth:p,h=o.fill&&!o.fill.isNone,g=o.stroke&&!o.stroke.isNone&&m>0;if(!(!h&&!g)){var _=!V(o.shadowColor)&&o.shadowBlur>0,v=o.shadowType===`inner`,y=o.fill?.alpha===0,b=!!(o.filter&&o.filter.length),x=_&&g&&(a===G.PATH||a===G.LINE||a===G.POLYLINE||y||v),S=null;if(h&&(x||this.applyShadowAndFilterStyleToContext(e,t,_,n),S=px(e,`globalAlpha`,c*u,n.currentContext),this.fillToContext(e,t,n,r,i),x||this.clearShadowAndFilterStyleForContext(e,_,b,n)),g){var C=!1,w=px(e,`globalAlpha`,c*f,n.currentContext);if(S=h?S:w,x&&(this.applyShadowAndFilterStyleToContext(e,t,_,n),C=!0,v)){var T=e.globalCompositeOperation;e.globalCompositeOperation=`source-atop`,this.strokeToContext(e,t,n,r,i),e.globalCompositeOperation=T,this.clearShadowAndFilterStyleForContext(e,_,b,n,!0)}this.strokeToContext(e,t,n,r,i),C&&this.clearShadowAndFilterStyleForContext(e,_,b,n)}S!==null&&px(e,`globalAlpha`,S,n.currentContext)}}}])}());function hx(e,t,n){var r=e.parsedStyle,i=r.filter,a=r.shadowColor,o=r.shadowBlur,s=r.shadowOffsetX,c=r.shadowOffsetY;i&&i.length&&(t.filter=e.style.filter),n&&(t.shadowColor=a.toString(),t.shadowBlur=o||0,t.shadowOffsetX=s||0,t.shadowOffsetY=c||0)}function gx(e,t,n,r,i,a,o,s){var c=arguments.length>8&&arguments[8]!==void 0?arguments[8]:!1;Array.isArray(n)?n.forEach(function(n){e.fillStyle=cx(n,t,e,s),c||(r?e.fill(r):e.fill())}):(Ql(n)&&(e.fillStyle=sx(n,t,e,i,a,o,s)),c||(r?e.fill(r):e.fill()))}function _x(e,t,n,r,i,a,o){var s=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1;Array.isArray(n)?n.forEach(function(n){e.strokeStyle=cx(n,t,e,o),s||e.stroke()}):(Ql(n)&&(e.strokeStyle=sx(n,t,e,r,i,a,o)),s||e.stroke())}function vx(e,t){var n=bn(e,4),r=n[0],i=n[1],a=n[2],o=n[3],s=bn(t,4),c=s[0],l=s[1],u=s[2],d=s[3],f=Math.max(r,c),p=Math.max(i,l),m=Math.min(r+a,c+u),h=Math.min(i+o,l+d);return m<=f||h<=p?null:[f,p,m-f,h-p]}function yx(e,t){var n=Hr(Tr(),[e[0],e[1],0],t),r=Hr(Tr(),[e[0]+e[2],e[1],0],t),i=Hr(Tr(),[e[0],e[1]+e[3],0],t),a=Hr(Tr(),[e[0]+e[2],e[1]+e[3],0],t);return[Math.min(n[0],r[0],i[0],a[0]),Math.min(n[1],r[1],i[1],a[1]),Math.max(n[0],r[0],i[0],a[0])-Math.min(n[0],r[0],i[0],a[0]),Math.max(n[1],r[1],i[1],a[1])-Math.min(n[1],r[1],i[1],a[1])]}var bx=function(e){function t(){return R(this,t),mn(this,t,arguments)}return gn(t,e),z(t,[{key:`renderDownSampled`,value:function(e,t,n,r){var i=r.src,a=r.imageCache;if(!a.downSampled){this.imagePool.createDownSampledImage(i,n).then(function(){n.ownerDocument&&(n.dirty(),n.ownerDocument.defaultView.context.renderingService.dirty())}).catch(function(e){console.error(e)});return}e.drawImage(a.downSampled,Math.floor(r.drawRect[0]),Math.floor(r.drawRect[1]),Math.ceil(r.drawRect[2]),Math.ceil(r.drawRect[3]))}},{key:`renderTile`,value:function(e,t,n,r){var i=r.src,a=r.imageCache,o=r.imageRect,s=r.drawRect,c=a.size,l=e.getTransform(),u=l.a,d=l.b,f=l.c,p=l.d,m=l.e,h=l.f;if(e.resetTransform(),!(a!=null&&a.gridSize)){this.imagePool.createImageTiles(i,[],function(){n.ownerDocument&&(n.dirty(),n.ownerDocument.defaultView.context.renderingService.dirty())},n).catch(function(e){console.error(e)});return}for(var g=[c[0]/o[2],c[1]/o[3]],_=[a.tileSize[0]/g[0],a.tileSize[1]/g[1]],v=[Math.floor((s[0]-o[0])/_[0]),Math.ceil((s[0]+s[2]-o[0])/_[0])],y=v[0],b=v[1],x=[Math.floor((s[1]-o[1])/_[1]),Math.ceil((s[1]+s[3]-o[1])/_[1])],S=x[0],C=x[1],w=S;w<=C;w++)for(var T=y;T<=b;T++){var E=a.tiles[w][T];if(E){var D=[Math.floor(o[0]+E.tileX*_[0]),Math.floor(o[1]+E.tileY*_[1]),Math.ceil(_[0]),Math.ceil(_[1])];e.drawImage(E.data,D[0],D[1],D[2],D[3])}}e.setTransform(u,d,f,p,m,h)}},{key:`render`,value:function(e,n,r){var i=n.x,a=i===void 0?0:i,o=n.y,s=o===void 0?0:o,c=n.width,l=n.height,u=n.src,d=n.shadowColor,f=n.shadowBlur,p=this.imagePool.getImageSync(u,r),m=p?.img,h=c,g=l;if(m){h||=m.width,g||=m.height,hx(r,e,!V(d)&&f>0);try{var _=r.ownerDocument.defaultView.getContextService().getDomElement(),v=_.width,y=_.height,b=e.getTransform(),x=b.a,S=b.b,C=b.c,w=b.d,T=b.e,E=b.f,D=An(x,C,0,0,S,w,0,0,0,0,1,0,T,E,0,1),O=yx([a,s,h,g],D),k=vx([0,0,v,y],O);if(!k)return;if(!r.ownerDocument.defaultView.getConfig().enableLargeImageOptimization){t.renderFull(e,n,r,{image:m,drawRect:[a,s,h,g]});return}if(O[2]/p.size[0]<(p.downSamplingRate||.5)){this.renderDownSampled(e,n,r,{src:u,imageCache:p,drawRect:[a,s,h,g]});return}if(!ImagePool.isSupportTile){t.renderFull(e,n,r,{image:m,drawRect:[a,s,h,g]});return}this.renderTile(e,n,r,{src:u,imageCache:p,imageRect:O,drawRect:k})}catch{}}}},{key:`drawToContext`,value:function(e,t,n,r,i){this.render(e,t.parsedStyle,t)}}],[{key:`renderFull`,value:function(e,t,n,r){e.drawImage(r.image,Math.floor(r.drawRect[0]),Math.floor(r.drawRect[1]),Math.ceil(r.drawRect[2]),Math.ceil(r.drawRect[3]))}}])}(mx),xx=function(e){function t(){return R(this,t),mn(this,t,arguments)}return gn(t,e),z(t,[{key:`render`,value:function(e,t,n,r,i,a){n.getBounds();var o=t.lineWidth,s=o===void 0?1:o,c=t.textAlign,l=c===void 0?`start`:c,u=t.textBaseline,d=u===void 0?`alphabetic`:u,f=t.lineJoin,p=f===void 0?`miter`:f,m=t.miterLimit,h=m===void 0?10:m,g=t.letterSpacing,_=g===void 0?0:g,v=t.stroke,y=t.fill,b=t.fillRule,x=t.fillOpacity,S=x===void 0?1:x,C=t.strokeOpacity,w=C===void 0?1:C,T=t.opacity,E=T===void 0?1:T,D=t.metrics,O=t.x,k=O===void 0?0:O,A=t.y,j=A===void 0?0:A,ee=t.dx,M=t.dy,te=t.shadowColor,ne=t.shadowBlur,re=t.textDecorationLine,ie=D.font,N=D.lines,ae=D.height,oe=D.lineHeight,P=D.lineMetrics;e.font=ie,e.lineWidth=s,e.textAlign=l===`middle`?`center`:l;var se=d;se===`alphabetic`&&(se=`bottom`),e.lineJoin=p,V(h)||(e.miterLimit=h);var ce=j;d===`middle`?ce+=-ae/2-oe/2:d===`bottom`||d===`alphabetic`||d===`ideographic`?ce+=-ae:(d===`top`||d===`hanging`)&&(ce+=-oe);var le=k+(ee||0);ce+=M||0,N.length===1&&(se===`bottom`?(se=`middle`,ce-=.5*ae):se===`top`&&(se=`middle`,ce+=.5*ae)),e.textBaseline=se,hx(n,e,!V(te)&&ne>0);for(var ue=0;ue<N.length;ue++){var de=s/2+le;ce+=oe,!V(v)&&!v.isNone&&s&&this.drawLetterSpacing(e,n,N[ue],P[ue],l,de,ce,_,y,b,S,v,w,E,!0,r,i,a),V(y)||this.drawLetterSpacing(e,n,N[ue],P[ue],l,de,ce,_,y,b,S,v,w,E,!1,r,i,a)}re&&re!==`none`&&this.drawTextDecorations(e,t,n,N,oe,le,j+(M||0),r,i,a)}},{key:`drawLetterSpacing`,value:function(e,t,n,r,i,a,o,s,c,l,u,d,f,p,m,h,g,_){if(s===0){m?this.strokeText(e,t,n,a,o,d,f,h,g,_):this.fillText(e,t,n,a,o,c,l,u,p,h,g,_);return}var v=e.textAlign;e.textAlign=`left`;var y=a;i===`center`||i===`middle`?y=a-r.width/2:(i===`right`||i===`end`)&&(y=a-r.width);for(var b=Array.from(n),x=e.measureText(n).width,S=0,C=0;C<b.length;++C){var w=b[C];m?this.strokeText(e,t,w,y,o,d,f,h,g,_):this.fillText(e,t,w,y,o,c,l,u,p,h,g,_),S=e.measureText(n.substring(C+1)).width,y+=x-S+s,x=S}e.textAlign=v}},{key:`fillText`,value:function(e,t,n,r,i,a,o,s,c,l,u,d){gx(e,t,a,o,l,u,d,this.imagePool,!0);var f,p=!V(s)&&s!==1;p&&(f=e.globalAlpha,e.globalAlpha=s*c),e.fillText(n,r,i),p&&(e.globalAlpha=f)}},{key:`strokeText`,value:function(e,t,n,r,i,a,o,s,c,l){_x(e,t,a,s,c,l,this.imagePool,!0);var u,d=!V(o)&&o!==1;d&&(u=e.globalAlpha,e.globalAlpha=o),e.strokeText(n,r,i),d&&(e.globalAlpha=u)}},{key:`drawTextDecorations`,value:function(e,t,n,r,i,a,o,s,c,l){var u=t.textDecorationLine,d=t.textDecorationColor,f=t.textDecorationStyle,p=t.textDecorationThickness,m=p===void 0?1:p,h=t.textAlign,g=h===void 0?`start`:h,_=t.lineWidth,v=_===void 0?1:_,y=t.metrics;if(!(!u||u===`none`)){var b=y.lineMetrics,x=u.split(` `);switch(e.lineWidth=m,d&&(e.strokeStyle=`rgba(${d.r}, ${d.g}, ${d.b}, ${d.alpha})`),f){case`dashed`:e.setLineDash([5,5]);break;case`dotted`:e.setLineDash([2,2]);break;case`wavy`:e.setLineDash([]);break;default:e.setLineDash([]);break}var S=o,C=t.textBaseline,w=C===void 0?`alphabetic`:C;w===`middle`?S+=-y.height/2-i/2:w===`bottom`||w===`alphabetic`||w===`ideographic`?S+=-y.height:(w===`top`||w===`hanging`)&&(S+=-i);for(var T=0;T<r.length;T++){S+=i;var E=b[T];if(E){var D=v/2,O=a,k=a+E.width;g===`center`||g===`middle`?(O=a-E.width/2,k=a+E.width/2):(g===`right`||g===`end`)&&(O=a-E.width,k=a),O+=D,k+=D;var A=vs(x),j;try{for(A.s();!(j=A.n()).done;){var ee=j.value,M=S;switch(ee){case`underline`:M+=2;break;case`overline`:M-=i-2;break;case`line-through`:M-=i/2;break;default:continue}f===`wavy`?this.drawWavyLine(e,O,k,M):(e.beginPath(),e.moveTo(O,M),e.lineTo(k,M),e.stroke())}}catch(e){A.e(e)}finally{A.f()}}}e.setLineDash([])}}},{key:`drawWavyLine`,value:function(e,t,n,r){var i=2,a=10,o=Math.floor((n-t)/a);e.beginPath(),e.moveTo(t,r);for(var s=0;s<o;s++){var c=t+s*a+a/4,l=r+i,u=t+s*a+a/2,d=r;e.quadraticCurveTo(c,l,u,d);var f=t+s*a+a*3/4,p=r-i,m=t+(s+1)*a,h=r;e.quadraticCurveTo(f,p,m,h)}e.stroke()}},{key:`drawToContext`,value:function(e,t,n,r,i){this.render(e,t.parsedStyle,t,t.ownerDocument.defaultView.context,r,i)}}])}(mx),Sx=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return R(this,t),e=mn(this,t),e.name=`canvas-renderer`,e.options=n,e}return gn(t,e),z(t,[{key:`init`,value:function(){var e,t=tn({dirtyObjectNumThreshold:500,dirtyObjectRatioThreshold:.8},this.options),n=this.context.imagePool,r=new mx(n),i=(e={},L(L(L(L(L(L(L(L(L(L(e,G.CIRCLE,r),G.ELLIPSE,r),G.RECT,r),G.IMAGE,new bx(n)),G.TEXT,new xx(n)),G.LINE,r),G.POLYLINE,r),G.POLYGON,r),G.PATH,r),G.GROUP,void 0),L(L(L(e,G.HTML,void 0),G.MESH,void 0),G.FRAGMENT,void 0));this.context.defaultStyleRendererFactory=i,this.context.styleRendererFactory=i,this.addRenderingPlugin(new ox(t))}},{key:`destroy`,value:function(){this.removeAllRenderingPlugins(),delete this.context.defaultStyleRendererFactory,delete this.context.styleRendererFactory}}])}(Ss),Cx=Tr(),wx=Tr(),Tx=Tr(),Ex=Dn(),Dx=function(){function e(){var t=this;R(this,e),this.isHit=function(e,n,r,i){var a=t.context.pointInPathPickerFactory[e.nodeName];if(a){var o=Pn(Ex,r),s=Hr(wx,Ar(Tx,n[0],n[1],0),o);if(a(e,new Ps(s[0],s[1]),i,t.isPointInPath,t.context,t.runtime))return!0}return!1},this.isPointInPath=function(e,n){var r=t.runtime.offscreenCanvasCreator.getOrCreateContext(t.context.config.offscreenCanvas),i=t.context.pathGeneratorFactory[e.nodeName];return i&&(r.beginPath(),i(r,e.parsedStyle),r.closePath()),r.isPointInPath(n.x,n.y)}}return z(e,[{key:`apply`,value:function(t,n){var r=this,i=t.renderingService,a=t.renderingContext;this.context=t,this.runtime=n;var o=a.root?.ownerDocument;i.hooks.pick.tapPromise(e.tag,function(){var e=_s(hs().mark(function e(t){return hs().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.abrupt(`return`,r.pick(o,t));case 1:case`end`:return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}()),i.hooks.pickSync.tap(e.tag,function(e){return r.pick(o,e)})}},{key:`pick`,value:function(e,t){var n=t.topmost,r=t.position,i=r.x,a=r.y,o=Ar(Cx,i,a,0),s=e.elementsFromBBox(o[0],o[1],o[0],o[1]),c=[],l=vs(s),u;try{for(l.s();!(u=l.n()).done;){var d=u.value,f=d.getWorldTransform();if(this.isHit(d,o,f,!1)){var p=Ud(d);if(p){var m=p.parsedStyle.clipPath;if(this.isHit(m,o,m.getWorldTransform(),!0)){if(n)return t.picked=[d],t;c.push(d)}}else{if(n)return t.picked=[d],t;c.push(d)}}}}catch(e){l.e(e)}finally{l.f()}return t.picked=c,t}}])}();Dx.tag=`CanvasPicker`;function Ox(e,t,n){var r=e.parsedStyle,i=r.cx,a=i===void 0?0:i,o=r.cy,s=o===void 0?0:o,c=r.r,l=r.fill,u=r.stroke,d=r.lineWidth,f=d===void 0?1:d,p=r.increasedLineWidthForHitTesting,m=p===void 0?0:p,h=r.pointerEvents,g=h===void 0?`auto`:h,_=(f+m)/2,v=Lo(a,s,t.x,t.y),y=bn($d(g,l,u),2),b=y[0],x=y[1];return b&&x||n?v<=c+_:b?v<=c:x?v>=c-_&&v<=c+_:!1}function kx(e,t,n,r){return e/(n*n)+t/(r*r)}function Ax(e,t,n){var r=e.parsedStyle,i=r.cx,a=i===void 0?0:i,o=r.cy,s=o===void 0?0:o,c=r.rx,l=r.ry,u=r.fill,d=r.stroke,f=r.lineWidth,p=f===void 0?1:f,m=r.increasedLineWidthForHitTesting,h=m===void 0?0:m,g=r.pointerEvents,_=g===void 0?`auto`:g,v=t.x,y=t.y,b=bn($d(_,u,d),2),x=b[0],S=b[1],C=(p+h)/2,w=(v-a)*(v-a),T=(y-s)*(y-s);return x&&S||n?kx(w,T,c+C,l+C)<=1:x?kx(w,T,c,l)<=1:S?kx(w,T,c-C,l-C)>=1&&kx(w,T,c+C,l+C)<=1:!1}function jx(e,t,n,r,i,a){return i>=e&&i<=e+n&&a>=t&&a<=t+r}function Mx(e,t,n,r,i,a,o){var s=i/2;return jx(e-s,t-s,n,i,a,o)||jx(e+n-s,t-s,i,r,a,o)||jx(e+s,t+r-s,n,i,a,o)||jx(e-s,t+s,i,r,a,o)}function Nx(e,t,n,r,i,a,o,s){var c=(Math.atan2(s-t,o-e)+Math.PI*2)%(Math.PI*2),l={x:e+n*Math.cos(c),y:t+n*Math.sin(c)};return Lo(l.x,l.y,o,s)<=a/2}function Px(e,t,n,r,i,a,o){var s=Math.min(e,n),c=Math.max(e,n),l=Math.min(t,r),u=Math.max(t,r),d=i/2;return a>=s-d&&a<=c+d&&o>=l-d&&o<=u+d?Jo(e,t,n,r,a,o)<=i/2:!1}function Fx(e,t,n,r,i){var a=e.length;if(a<2)return!1;for(var o=0;o<a-1;o++){var s=e[o][0],c=e[o][1],l=e[o+1][0],u=e[o+1][1];if(Px(s,c,l,u,t,n,r))return!0}if(i){var d=e[0],f=e[a-1];if(Px(d[0],d[1],f[0],f[1],t,n,r))return!0}return!1}var Ix=1e-6;function Lx(e){return Math.abs(e)<Ix?0:e<0?-1:1}function Rx(e,t,n){return(n[0]-e[0])*(t[1]-e[1])===(t[0]-e[0])*(n[1]-e[1])&&Math.min(e[0],t[0])<=n[0]&&n[0]<=Math.max(e[0],t[0])&&Math.min(e[1],t[1])<=n[1]&&n[1]<=Math.max(e[1],t[1])}function zx(e,t,n){var r=!1,i=e.length;if(i<=2)return!1;for(var a=0;a<i;a++){var o=e[a],s=e[(a+1)%i];if(Rx(o,s,[t,n]))return!0;Lx(o[1]-n)>0!=Lx(s[1]-n)>0&&Lx(t-(n-o[1])*(o[0]-s[0])/(o[1]-s[1])-o[0])<0&&(r=!r)}return r}function Bx(e,t,n){for(var r=!1,i=0;i<e.length;i++){var a=e[i];if(r=zx(a,t,n),r)break}return r}function Vx(e,t,n){var r=e.parsedStyle,i=r.x1,a=r.y1,o=r.x2,s=r.y2,c=r.lineWidth,l=c===void 0?1:c,u=r.increasedLineWidthForHitTesting,d=u===void 0?0:u,f=r.pointerEvents,p=f===void 0?`auto`:f,m=r.fill,h=r.stroke;return!bn($d(p,m,h),2)[1]&&!n||!l?!1:Px(i,a,o,s,l+d,t.x,t.y)}function Hx(e,t,n,r,i){for(var a=!1,o=t/2,s=0;s<e.length;s++){var c=e[s],l=c.currentPoint,u=c.params,d=c.prePoint,f=c.box;if(!(f&&!jx(f.x-o,f.y-o,f.width+t,f.height+t,n,r)))switch(c.command){case`L`:case`Z`:if(a=Px(d[0],d[1],l[0],l[1],t,n,r),a)return!0;break;case`Q`:if(a=os(d[0],d[1],u[1],u[2],u[3],u[4],n,r)<=t/2,a)return!0;break;case`C`:if(a=$o(d[0],d[1],u[1],u[2],u[3],u[4],u[5],u[6],n,r,i)<=t/2,a)return!0;break;case`A`:c.cubicParams||=ro(d[0],d[1],u[1],u[2],u[3],u[4],u[5],u[6],u[7],void 0);for(var p=c.cubicParams,m=d,h=0;h<p.length;h+=6){var g=$o(m[0],m[1],p[h],p[h+1],p[h+2],p[h+3],p[h+4],p[h+5],n,r,i);if(m=[p[h+4],p[h+5]],a=g<=t/2,a)return!0}break}}return a}function Ux(e,t,n,r,i,a){var o=e.parsedStyle,s=o.lineWidth,c=s===void 0?1:s,l=o.increasedLineWidthForHitTesting,u=l===void 0?0:l,d=o.stroke,f=o.fill,p=o.d,m=o.pointerEvents,h=m===void 0?`auto`:m,g=p.segments,_=p.hasArc,v=p.polylines,y=p.polygons,b=bn($d(h,y?.length&&f,d),2),x=b[0],S=b[1],C=Su(e),w=!1;return x||n?(w=_?r(e,t):Bx(y,t.x,t.y)||Bx(v,t.x,t.y),w):((S||n)&&(w=Hx(g,c+u,t.x,t.y,C)),w)}function Wx(e,t,n){var r=e.parsedStyle,i=r.stroke,a=r.fill,o=r.lineWidth,s=o===void 0?1:o,c=r.increasedLineWidthForHitTesting,l=c===void 0?0:c,u=r.points,d=r.pointerEvents,f=bn($d(d===void 0?`auto`:d,a,i),2),p=f[0],m=f[1],h=!1;return(m||n)&&(h=Fx(u.points,s+l,t.x,t.y,!0)),!h&&(p||n)&&(h=zx(u.points,t.x,t.y)),h}function Gx(e,t,n){var r=e.parsedStyle,i=r.lineWidth,a=i===void 0?1:i,o=r.increasedLineWidthForHitTesting,s=o===void 0?0:o,c=r.points,l=r.pointerEvents,u=l===void 0?`auto`:l,d=r.fill,f=r.stroke;return!bn($d(u,d,f),2)[1]&&!n||!a?!1:Fx(c.points,a+s,t.x,t.y,!1)}function Kx(e,t,n,r,i){var a=e.parsedStyle,o=a.radius,s=a.fill,c=a.stroke,l=a.lineWidth,u=l===void 0?1:l,d=a.increasedLineWidthForHitTesting,f=d===void 0?0:d,p=a.x,m=p===void 0?0:p,h=a.y,g=h===void 0?0:h,_=a.width,v=a.height,y=a.pointerEvents,b=bn($d(y===void 0?`auto`:y,s,c),2),x=b[0],S=b[1],C=o&&o.some(function(e){return e!==0}),w=u+f;if(C){var T=!1;return(S||n)&&(T=qx(m,g,_,v,o.map(function(e){return Ri(e,0,Math.min(Math.abs(_)/2,Math.abs(v)/2))}),w,t.x,t.y)),!T&&(x||n)&&(T=r(e,t)),T}else{var E=w/2;if(x&&S||n)return jx(m-E,g-E,_+E,v+E,t.x,t.y);if(x)return jx(m,g,_,v,t.x,t.y);if(S)return Mx(m,g,_,v,w,t.x,t.y)}return!1}function qx(e,t,n,r,i,a,o,s){var c=bn(i,4),l=c[0],u=c[1],d=c[2],f=c[3];return Px(e+l,t,e+n-u,t,a,o,s)||Px(e+n,t+u,e+n,t+r-d,a,o,s)||Px(e+n-d,t+r,e+f,t+r,a,o,s)||Px(e,t+r-f,e,t+l,a,o,s)||Nx(e+n-u,t+u,u,1.5*Math.PI,2*Math.PI,a,o,s)||Nx(e+n-d,t+r-d,d,0,.5*Math.PI,a,o,s)||Nx(e+f,t+r-f,f,.5*Math.PI,Math.PI,a,o,s)||Nx(e+l,t+l,l,Math.PI,1.5*Math.PI,a,o,s)}function Jx(e,t,n,r,i,a){var o=e.parsedStyle,s=o.pointerEvents,c=s===void 0?`auto`:s,l=o.x,u=l===void 0?0:l,d=o.y,f=d===void 0?0:d,p=o.width,m=o.height;if(c===`non-transparent-pixel`){var h=i.config.offscreenCanvas,g=a.offscreenCanvasCreator.getOrCreateCanvas(h),_=a.offscreenCanvasCreator.getOrCreateContext(h,{willReadFrequently:!0});return g.width=p,g.height=m,i.defaultStyleRendererFactory[G.IMAGE].render(_,tn(tn({},e.parsedStyle),{},{x:0,y:0}),e,void 0,void 0,void 0),_.getImageData(t.x-u,t.y-f,1,1).data.every(function(e){return e!==0})}return!0}function Yx(e,t,n,r){var i=e.getGeometryBounds();return t.x>=i.min[0]&&t.y>=i.min[1]&&t.x<=i.max[0]&&t.y<=i.max[1]}var Xx=function(e){function t(){var e;R(this,t);var n=[...arguments];return e=mn(this,t,[].concat(n)),e.name=`canvas-picker`,e}return gn(t,e),z(t,[{key:`init`,value:function(){var e,t=(e={},L(L(L(L(L(L(L(L(L(L(e,G.CIRCLE,Ox),G.ELLIPSE,Ax),G.RECT,Kx),G.LINE,Vx),G.POLYLINE,Gx),G.POLYGON,Wx),G.PATH,Ux),G.TEXT,Yx),G.GROUP,null),G.IMAGE,Jx),L(L(e,G.HTML,null),G.MESH,null));this.context.pointInPathPickerFactory=t,this.addRenderingPlugin(new Dx)}},{key:`destroy`,value:function(){delete this.context.pointInPathPickerFactory,this.removeAllRenderingPlugins()}}])}(Ss);function Zx(e,t){var n=t.cx,r=n===void 0?0:n,i=t.cy,a=i===void 0?0:i,o=t.r;e.arc(r,a,o,0,Math.PI*2,!1)}function Qx(e,t){var n=t.cx,r=n===void 0?0:n,i=t.cy,a=i===void 0?0:i,o=t.rx,s=t.ry;if(e.ellipse)e.ellipse(r,a,o,s,0,0,Math.PI*2,!1);else{var c=o>s?o:s,l=o>s?1:o/s,u=o>s?s/o:1;e.save(),e.scale(l,u),e.arc(r,a,c,0,Math.PI*2)}}function $x(e,t){var n=t.x1,r=t.y1,i=t.x2,a=t.y2,o=t.markerStart,s=t.markerEnd,c=t.markerStartOffset,l=t.markerEndOffset,u=0,d=0,f=0,p=0,m=0,h,g;o&&Jp(o)&&c&&(h=i-n,g=a-r,m=Math.atan2(g,h),u=Math.cos(m)*(c||0),d=Math.sin(m)*(c||0)),s&&Jp(s)&&l&&(h=n-i,g=r-a,m=Math.atan2(g,h),f=Math.cos(m)*(l||0),p=Math.sin(m)*(l||0)),e.moveTo(n+u,r+d),e.lineTo(i+f,a+p)}function eS(e,t){var n=t.markerStart,r=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,o=t.d,s=o.absolutePath,c=o.segments,l=0,u=0,d=0,f=0,p=0,m,h;if(n&&Jp(n)&&i){var g=bn(n.parentNode.getStartTangent(),2),_=g[0],v=g[1];m=_[0]-v[0],h=_[1]-v[1],p=Math.atan2(h,m),l=Math.cos(p)*(i||0),u=Math.sin(p)*(i||0)}if(r&&Jp(r)&&a){var y=bn(r.parentNode.getEndTangent(),2),b=y[0],x=y[1];m=b[0]-x[0],h=b[1]-x[1],p=Math.atan2(h,m),d=Math.cos(p)*(a||0),f=Math.sin(p)*(a||0)}for(var S=0;S<s.length;S++){var C=s[S],w=C[0],T=s[S+1],E=S===0&&(l!==0||u!==0),D=(S===s.length-1||T&&(T[0]===`M`||T[0]===`Z`))&&d!==0&&f!==0,O=bn(E?[l,u]:[0,0],2),k=O[0],A=O[1],j=bn(D?[d,f]:[0,0],2),ee=j[0],M=j[1];switch(w){case`M`:e.moveTo(C[1]+k,C[2]+A);break;case`L`:e.lineTo(C[1]+ee,C[2]+M);break;case`Q`:e.quadraticCurveTo(C[1],C[2],C[3]+ee,C[4]+M);break;case`C`:e.bezierCurveTo(C[1],C[2],C[3],C[4],C[5]+ee,C[6]+M);break;case`A`:var te=c[S].arcParams,ne=te.cx,re=te.cy,ie=te.rx,N=te.ry,ae=te.startAngle,oe=te.endAngle,P=te.xRotation,se=te.sweepFlag;if(e.ellipse)e.ellipse(ne,re,ie,N,P,ae,oe,!!(1-se));else{var ce=ie>N?ie:N,le=ie>N?1:ie/N,ue=ie>N?N/ie:1;e.translate(ne,re),e.rotate(P),e.scale(le,ue),e.arc(0,0,ce,ae,oe,!!(1-se)),e.scale(1/le,1/ue),e.rotate(-P),e.translate(-ne,-re)}D&&e.lineTo(C[6]+d,C[7]+f);break;case`Z`:e.closePath();break}}}function tS(e,t){var n=t.markerStart,r=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,o=t.points.points,s=o.length,c=o[0][0],l=o[0][1],u=o[s-1][0],d=o[s-1][1],f=0,p=0,m=0,h=0,g=0,_,v;n&&Jp(n)&&i&&(_=o[1][0]-o[0][0],v=o[1][1]-o[0][1],g=Math.atan2(v,_),f=Math.cos(g)*(i||0),p=Math.sin(g)*(i||0)),r&&Jp(r)&&a&&(_=o[s-1][0]-o[0][0],v=o[s-1][1]-o[0][1],g=Math.atan2(v,_),m=Math.cos(g)*(a||0),h=Math.sin(g)*(a||0)),e.moveTo(c+(f||m),l+(p||h));for(var y=1;y<s-1;y++){var b=o[y];e.lineTo(b[0],b[1])}e.lineTo(u,d)}function nS(e,t){var n=t.markerStart,r=t.markerEnd,i=t.markerStartOffset,a=t.markerEndOffset,o=t.points.points,s=o.length,c=o[0][0],l=o[0][1],u=o[s-1][0],d=o[s-1][1],f=0,p=0,m=0,h=0,g=0,_,v;n&&Jp(n)&&i&&(_=o[1][0]-o[0][0],v=o[1][1]-o[0][1],g=Math.atan2(v,_),f=Math.cos(g)*(i||0),p=Math.sin(g)*(i||0)),r&&Jp(r)&&a&&(_=o[s-2][0]-o[s-1][0],v=o[s-2][1]-o[s-1][1],g=Math.atan2(v,_),m=Math.cos(g)*(a||0),h=Math.sin(g)*(a||0)),e.moveTo(c+f,l+p);for(var y=1;y<s-1;y++){var b=o[y];e.lineTo(b[0],b[1])}e.lineTo(u+m,d+h)}function rS(e,t){var n=t.x,r=n===void 0?0:n,i=t.y,a=i===void 0?0:i,o=t.radius,s=t.width,c=t.height,l=s,u=c;if(!(o&&o.some(function(e){return e!==0})))e.rect(r,a,l,u);else{var d=s>0?1:-1,f=c>0?1:-1,p=d+f===0,m=bn(o.map(function(e){return Ri(e,0,Math.min(Math.abs(l)/2,Math.abs(u)/2))}),4),h=m[0],g=m[1],_=m[2],v=m[3];e.moveTo(d*h+r,a),e.lineTo(l-d*g+r,a),g!==0&&e.arc(l-d*g+r,f*g+a,g,-f*Math.PI/2,d>0?0:Math.PI,p),e.lineTo(l+r,u-f*_+a),_!==0&&e.arc(l-d*_+r,u-f*_+a,_,d>0?0:Math.PI,f>0?Math.PI/2:1.5*Math.PI,p),e.lineTo(d*v+r,u+a),v!==0&&e.arc(d*v+r,u-f*v+a,v,f>0?Math.PI/2:-Math.PI/2,d>0?Math.PI:0,p),e.lineTo(r,f*h+a),h!==0&&e.arc(d*h+r,f*h+a,h,d>0?Math.PI:0,f>0?Math.PI*1.5:Math.PI/2,p)}}var iS=function(e){function t(){var e;R(this,t);var n=[...arguments];return e=mn(this,t,[].concat(n)),e.name=`canvas-path-generator`,e}return gn(t,e),z(t,[{key:`init`,value:function(){var e,t=(e={},L(L(L(L(L(L(L(L(L(L(e,G.CIRCLE,Zx),G.ELLIPSE,Qx),G.RECT,rS),G.LINE,$x),G.POLYLINE,nS),G.POLYGON,tS),G.PATH,eS),G.TEXT,void 0),G.GROUP,void 0),G.IMAGE,void 0),L(L(L(e,G.HTML,void 0),G.MESH,void 0),G.FRAGMENT,void 0));this.context.pathGeneratorFactory=t}},{key:`destroy`,value:function(){delete this.context.pathGeneratorFactory}}])}(Ss),aS=function(){function e(t){R(this,e),this.renderingContext=t.renderingContext,this.canvasConfig=t.config}return z(e,[{key:`init`,value:function(){var e=this.canvasConfig,t=e.container,n=e.canvas;if(n)this.$canvas=n,t&&n.parentElement!==t&&t.appendChild(n),this.$container=n.parentElement,this.canvasConfig.container=this.$container;else if(t&&(this.$container=Pi(t)?document.getElementById(t):t,this.$container)){var r=document.createElement(`canvas`);this.$container.appendChild(r),this.$container.style.position||(this.$container.style.position=`relative`),this.$canvas=r}this.context=this.$canvas.getContext(`2d`),this.resize(this.canvasConfig.width,this.canvasConfig.height)}},{key:`getContext`,value:function(){return this.context}},{key:`getDomElement`,value:function(){return this.$canvas}},{key:`getDPR`,value:function(){return this.dpr}},{key:`getBoundingClientRect`,value:function(){if(this.$canvas.getBoundingClientRect)return this.$canvas.getBoundingClientRect()}},{key:`destroy`,value:function(){this.$container&&this.$canvas&&this.$canvas.parentNode&&this.$container.removeChild(this.$canvas)}},{key:`resize`,value:function(e,t){this.dpr=this.canvasConfig.devicePixelRatio,this.$canvas&&(this.$canvas.width=this.dpr*e,this.$canvas.height=this.dpr*t,Gd(this.$canvas,e,t)),this.renderingContext.renderReasons.add(np.CAMERA_CHANGED)}},{key:`applyCursorStyle`,value:function(e){this.$container&&this.$container.style&&(this.$container.style.cursor=e)}},{key:`toDataURL`,value:function(){var e=_s(hs().mark(function e(){var t,n,r,i=arguments;return hs().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t=i.length>0&&i[0]!==void 0?i[0]:{},n=t.type,r=t.encoderOptions,e.abrupt(`return`,this.context.canvas.toDataURL(n,r));case 1:case`end`:return e.stop()}},e,this)}));function t(){return e.apply(this,arguments)}return t}()}])}(),oS=function(e){function t(){var e;R(this,t);var n=[...arguments];return e=mn(this,t,[].concat(n)),e.name=`canvas-context-register`,e}return gn(t,e),z(t,[{key:`init`,value:function(){this.context.ContextService=aS}},{key:`destroy`,value:function(){delete this.context.ContextService}}])}(Ss),sS=function(e){function t(e){var n;return R(this,t),n=mn(this,t,[e]),n.registerPlugin(new oS),n.registerPlugin(new Km.Plugin),n.registerPlugin(new iS),n.registerPlugin(new Sx),n.registerPlugin(new Zm.Plugin),n.registerPlugin(new Xx),n.registerPlugin(new Ym.Plugin),n}return gn(t,e),z(t)}(Cs),cS=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},lS=class e extends Ub{constructor(t){super(Object.assign(Object.assign({},t),{style:Object.assign({},e.defaultStyleProps,t.style)})),this.rootPointerEvent=new Jf(null),this.forwardEvents=e=>{let t=this.context.canvas,n=t.context.renderingContext.root.ownerDocument.defaultView;this.normalizeToPointerEvent(e,n).forEach(r=>{let i=this.bootstrapEvent(this.rootPointerEvent,r,n,e);ya(t.context.eventService,`mappingTable.pointerupoutside`,[]),t.context.eventService.mapEvent(i)})}}get eventService(){return this.context.canvas.context.eventService}get events(){return[X.CLICK,X.POINTER_DOWN,X.POINTER_MOVE,X.POINTER_UP,X.POINTER_OVER,X.POINTER_LEAVE]}getDomElement(){return this.getShape(`key`).getDomElement()}render(e=this.parsedAttributes,t=this){this.drawKeyShape(e,t),this.drawPortShapes(e,t)}getKeyStyle(e){let t=xa(e,[`dx`,`dy`,`innerHTML`,`pointerEvents`,`cursor`]),{dx:n=0,dy:r=0}=t,i=cS(t,[`dx`,`dy`]),[a,o]=this.getSize(e);return Object.assign(Object.assign({x:n,y:r},i),{width:a,height:o})}drawKeyShape(e,t){let n=this.getKeyStyle(e),{x:r,y:i,width:a=0,height:o=0}=n,s=this.upsert(`key-container`,_m,{x:r,y:i,width:a,height:o,opacity:0},t);return this.upsert(`key`,sm,n,s)}connectedCallback(){if(!(this.context.canvas.getRenderer(`main`)instanceof sS))return;let e=this.getDomElement();this.events.forEach(t=>{e.addEventListener(t,this.forwardEvents)})}attributeChangedCallback(e,t,n){e===`zIndex`&&t!==n&&(this.getDomElement().style.zIndex=n)}destroy(){let e=this.getDomElement();this.events.forEach(t=>{e.removeEventListener(t,this.forwardEvents)}),super.destroy()}normalizeToPointerEvent(e,t){let n=[];if(t.isTouchEvent(e))for(let t=0;t<e.changedTouches.length;t++){let r=e.changedTouches[t];na(r.button)&&(r.button=0),na(r.buttons)&&(r.buttons=1),na(r.isPrimary)&&(r.isPrimary=e.touches.length===1&&e.type===`touchstart`),na(r.width)&&(r.width=r.radiusX||1),na(r.height)&&(r.height=r.radiusY||1),na(r.tiltX)&&(r.tiltX=0),na(r.tiltY)&&(r.tiltY=0),na(r.pointerType)&&(r.pointerType=`touch`),na(r.pointerId)&&(r.pointerId=r.identifier||0),na(r.pressure)&&(r.pressure=r.force||.5),na(r.twist)&&(r.twist=0),na(r.tangentialPressure)&&(r.tangentialPressure=0),r.isNormalized=!0,r.type=e.type,n.push(r)}else if(t.isMouseEvent(e)){let t=e;na(t.isPrimary)&&(t.isPrimary=!0),na(t.width)&&(t.width=1),na(t.height)&&(t.height=1),na(t.tiltX)&&(t.tiltX=0),na(t.tiltY)&&(t.tiltY=0),na(t.pointerType)&&(t.pointerType=`mouse`),na(t.pointerId)&&(t.pointerId=1),na(t.pressure)&&(t.pressure=.5),na(t.twist)&&(t.twist=0),na(t.tangentialPressure)&&(t.tangentialPressure=0),t.isNormalized=!0,n.push(t)}else n.push(e);return n}transferMouseData(e,t){e.isTrusted=t.isTrusted,e.srcElement=t.srcElement,e.timeStamp=performance.now(),e.type=t.type,e.altKey=t.altKey,e.metaKey=t.metaKey,e.shiftKey=t.shiftKey,e.ctrlKey=t.ctrlKey,e.button=t.button,e.buttons=t.buttons,e.client.x=t.clientX,e.client.y=t.clientY,e.movement.x=t.movementX,e.movement.y=t.movementY,e.page.x=t.pageX,e.page.y=t.pageY,e.screen.x=t.screenX,e.screen.y=t.screenY,e.relatedTarget=null}bootstrapEvent(e,t,n,r){e.view=n,e.originalEvent=null,e.nativeEvent=r,e.pointerId=t.pointerId,e.width=t.width,e.height=t.height,e.isPrimary=t.isPrimary,e.pointerType=t.pointerType,e.pressure=t.pressure,e.tangentialPressure=t.tangentialPressure,e.tiltX=t.tiltX,e.tiltY=t.tiltY,e.twist=t.twist,this.transferMouseData(e,t);let{x:i,y:a}=this.getViewportXY(t);e.viewport.x=i,e.viewport.y=a;let[o,s]=this.context.canvas.getCanvasByViewport([i,a]);return e.canvas.x=o,e.canvas.y=s,e.global.copyFrom(e.canvas),e.offset.copyFrom(e.canvas),e.isTrusted=r.isTrusted,e.type===`pointerleave`&&(e.type=`pointerout`),e}getViewportXY(e){let t,n,{offsetX:r,offsetY:i,clientX:a,clientY:o}=e;if(!V(r)&&!V(i))t=r,n=i;else{let e=this.eventService.client2Viewport({x:a,y:o});t=e.x,n=e.y}return{x:t,y:n}}onframe(){super.onframe();let{opacity:e}=this.attributes;this.getDomElement().style.opacity=`${e}`}};lS.defaultStyleProps={size:[160,80],halo:!1,icon:!1,label:!1,pointerEvents:`auto`};var uS=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},dS=class e extends Ub{constructor(t){super(ub({style:e.defaultStyleProps},t))}getKeyStyle(e){let[t,n]=this.getSize(e),r=super.getKeyStyle(e),{fillOpacity:i,opacity:a=i}=r,o=uS(r,[`fillOpacity`,`opacity`]);return Object.assign(Object.assign({opacity:a},o),{width:t,height:n,x:-t/2,y:-n/2})}getBounds(){return this.getShape(`key`).getBounds()}getHaloStyle(e){if(e.halo===!1)return!1;let t=this.getShape(`key`).attributes,{fill:n,stroke:r}=t;uS(t,[`fill`,`stroke`]);let i=ib(this.getGraphicStyle(e),`halo`),a=Number(i.lineWidth),[o,s]=Jv(sy(this.getSize(e)),[a,a]),{lineWidth:c}=i,l={fill:`transparent`,lineWidth:c/2,width:o-c/2,height:s-c/2,x:-(o-c/2)/2,y:-(s-c/2)/2};return Object.assign(Object.assign({},i),l)}getIconStyle(e){let t=super.getIconStyle(e),[n,r]=this.getSize(e);return t?Object.assign({width:n*Gy,height:r*Gy},t):!1}drawKeyShape(e,t){let n=this.upsert(`key`,Fb,this.getKeyStyle(e),t);return Rb(this),n}drawHaloShape(e,t){this.upsert(`halo`,_m,this.getHaloStyle(e),t)}update(e){super.update(e),e&&(`x`in e||`y`in e||`z`in e)&&zb(this)}};dS.defaultStyleProps={size:32};var fS=class extends Ub{constructor(e){super(e)}getKeyStyle(e){let[t,n]=this.getSize(e);return Object.assign(Object.assign({},super.getKeyStyle(e)),{width:t,height:n,x:-t/2,y:-n/2})}getIconStyle(e){let t=super.getIconStyle(e),{width:n,height:r}=this.getShape(`key`).attributes;return t?Object.assign({width:n*Gy,height:r*Gy},t):!1}drawKeyShape(e,t){return this.upsert(`key`,_m,this.getKeyStyle(e),t)}},pS=class extends Kb{constructor(e){super(e)}getInnerR(e){return e.innerR||this.getOuterR(e)*3/8}getOuterR(e){return Math.min(...this.getSize(e))/2}getPoints(e){return WC(this.getOuterR(e),this.getInnerR(e))}getIconStyle(e){let t=super.getIconStyle(e),n=this.getInnerR(e)*2*Gy;return t?Object.assign({width:n,height:n},t):!1}getPortXY(e,t){let{placement:n=`top`}=t;return NC(this.getShape(`key`).getLocalBounds(),n,GC(this.getOuterR(e),this.getInnerR(e)),!1)}},mS=class e extends Kb{constructor(t){super(ub({style:e.defaultStyleProps},t))}getPoints(e){let{direction:t}=e,[n,r]=this.getSize(e);return KC(n,r,t)}getPortXY(e,t){let{direction:n}=e,{placement:r=`top`}=t,i=this.getShape(`key`).getLocalBounds(),[a,o]=this.getSize(e);return NC(i,r,qC(a,o,n),!1)}getIconStyle(e){let{icon:t,iconText:n,iconSrc:r,direction:i}=e;if(t===!1||ga(n||r))return!1;let a=ib(this.getGraphicStyle(e),`icon`),o=this.getShape(`key`).getLocalBounds(),[s,c]=J_(o,i),l=Y_(o,i)*2*Gy;return Object.assign({x:s,y:c,width:l,height:l},a)}};mS.defaultStyleProps={size:40,direction:`up`};var hS=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},gS=class e extends Ub{constructor(t){super(ub({style:e.defaultStyleProps},t)),this.type=`combo`,this.updateComboPosition(this.parsedAttributes)}getKeySize(e){let{collapsed:t,childrenNode:n=[]}=e;return n.length===0?this.getEmptyKeySize(e):t?this.getCollapsedKeySize(e):this.getExpandedKeySize(e)}getEmptyKeySize(e){let{padding:t,collapsedSize:n}=e,[r,i,a,o]=M_(t);return Jv(sb(n),[o+i,r+a,0])}getCollapsedKeySize(e){return sb(e.collapsedSize)}getExpandedKeySize(e){let t=this.getContentBBox(e);return[P_(t),F_(t),0]}getContentBBox(e){let{childrenNode:t=[],padding:n}=e,r=t.map(e=>this.context.element.getElement(e)).filter(Boolean);if(r.length===0){let t=new As,{x:n=0,y:r=0,size:i}=e,[a,o]=sb(i);return t.setMinMax([n-a/2,r-o/2,0],[n+a/2,r+o/2,0]),t}let i=B_(r.map(e=>e.getBounds()));return n?z_(i,n):i}drawCollapsedMarkerShape(e,t){let n=this.getCollapsedMarkerStyle(e);this.upsert(`collapsed-marker`,Bb,n,t),Rb(this)}getCollapsedMarkerStyle(e){if(!e.collapsed||!e.collapsedMarker)return!1;let t=ib(this.getGraphicStyle(e),`collapsedMarker`),{type:n}=t,r=hS(t,[`type`]),[i,a]=_y(this.getShape(`key`).getLocalBounds(),`center`),o=Object.assign(Object.assign({},r),{x:i,y:a});if(n){let t=this.getCollapsedMarkerText(n,e);Object.assign(o,{text:t})}return o}getCollapsedMarkerText(e,t){let{childrenData:n=[]}=t,{model:r}=this.context;return e===`descendant-count`?r.getDescendantsData(this.id).length.toString():e===`child-count`?n.length.toString():e===`node-count`?r.getDescendantsData(this.id).filter(e=>r.getElementType(Q(e))===`node`).length.toString():B(e)?e(n):``}getComboPosition(e){let{x:t=0,y:n=0,collapsed:r,childrenData:i=[]}=e;if(i.length===0)return[+t,+n,0];if(r){let{model:e}=this.context,r=e.getDescendantsData(this.id).filter(t=>!e.isCombo(Q(t)));return r.length>0&&r.some(hy)?Zv(r.reduce((e,t)=>Jv(e,my(t)),[0,0,0]),r.length):[+t,+n,0]}return this.getContentBBox(e).center}getComboStyle(e){let[t,n]=this.getComboPosition(e);return{x:t,y:n,transform:[[`translate`,t,n]]}}updateComboPosition(e){let t=this.getComboStyle(e);Object.assign(this.style,t);let{x:n,y:r}=t;this.context.model.syncNodeLikeDatum({id:this.id,style:{x:n,y:r}}),zb(this)}render(e,t=this){super.render(e,t),this.drawCollapsedMarkerShape(e,t)}update(e={}){super.update(e),this.updateComboPosition(this.parsedAttributes)}onframe(){super.onframe(),this.attributes.collapsed||this.updateComboPosition(this.parsedAttributes),this.drawKeyShape(this.parsedAttributes,this)}animate(e,t){let n=super.animate(this.attributes.collapsed?e:e.map(e=>{var{x:t,y:n,z:r,transform:i}=e;return hS(e,[`x`,`y`,`z`,`transform`])}),t);return n&&new Proxy(n,{set:(e,t,n)=>(t===`currentTime`&&Promise.resolve().then(()=>this.onframe()),Reflect.set(e,t,n))})}};gS.defaultStyleProps={childrenNode:[],droppable:!0,draggable:!0,collapsed:!1,collapsedSize:32,collapsedMarker:!0,collapsedMarkerZIndex:1,collapsedMarkerFontSize:12,collapsedMarkerTextAlign:`center`,collapsedMarkerTextBaseline:`middle`,collapsedMarkerType:`child-count`};var _S=class extends gS{constructor(e){super(e)}drawKeyShape(e,t){return this.upsert(`key`,em,this.getKeyStyle(e),t)}getKeyStyle(e){let{collapsed:t}=e,n=super.getKeyStyle(e),[r]=this.getKeySize(e);return Object.assign(Object.assign(Object.assign({},n),t&&ib(n,`collapsed`)),{r:r/2})}getCollapsedKeySize(e){let[t,n]=sb(e.collapsedSize),r=Math.max(t,n)/2;return[r*2,r*2,0]}getExpandedKeySize(e){let[t,n]=I_(this.getContentBBox(e)),r=Math.sqrt(t**2+n**2)/2;return[r*2,r*2,0]}getIntersectPoint(e,t=!1){return Ay(e,this.getShape(`key`).getBounds(),t)}},vS=class extends gS{constructor(e){super(e)}drawKeyShape(e,t){return this.upsert(`key`,_m,this.getKeyStyle(e),t)}getKeyStyle(e){let t=super.getKeyStyle(e),[n,r]=this.getKeySize(e);return Object.assign(Object.assign(Object.assign({},t),e.collapsed&&ib(t,`collapsed`)),{width:n,height:r,x:-n/2,y:-r/2})}},yS={padding:10};function bS(e,t,n,r,i,a){let{padding:o}=Object.assign(yS,a),s=L_(n,o),c=L_(r,o),l=[e,...i,t],u=null,d=[];for(let e=0,t=l.length;e<t-1;e++){let n=e+1,r=l[e],i=l[n],a=wy(r,i),f=null;if(e===0)if(n===t-1)if(s.intersects(c))f=kS(r,i,s,c);else if(!G_(r,s)&&!G_(i,c)){let e=q_(r,s),t=q_(i,c);f=TS(e,t,CS(e,t)),f.points.unshift(e),f.points.push(t)}else a||(f=OS(r,i,s,c));else H_(i,s)?f=kS(r,i,s,L_(i,o),u):a||(f=ES(r,i,s));else n===t-1?H_(r,c)?f=kS(r,i,L_(r,o),c,u):a||(f=DS(r,i,c,u)):a||(f=TS(r,i,u));f?(d.push(...f.points),u=f.direction):u=CS(r,i),n<t-1&&d.push(i)}return d.map(sy)}var xS={N:`S`,S:`N`,W:`E`,E:`W`},SS={N:-Math.PI/2,S:Math.PI/2,E:0,W:Math.PI};function CS(e,t){let[n,r]=e,[i,a]=t;return n===i?r>a?`N`:`S`:r===a?n>i?`W`:`E`:null}function wS(e,t){return t===`N`||t===`S`?F_(e):P_(e)}function TS(e,t,n){let r=[e[0],t[1]],i=[t[0],e[1]],a=CS(e,r),o=CS(e,i),s=n?xS[n]:null,c=a===n||a!==s&&o!==n?r:i;return{points:[c],direction:CS(c,t)}}function ES(e,t,n){if(G_(e,n)){let r=AS(e,t,n);return{points:[r],direction:CS(r,t)}}else{let r=q_(e,n),i=[`left`,`right`].includes(K_(e,n))?[t[0],r[1]]:[r[0],t[1]];return{points:[i],direction:CS(i,t)}}}function DS(e,t,n,r){let i=G_(t,n)?t:q_(t,n),a=[[i[0],e[1]],[e[0],i[1]]],o=a.filter(e=>W_(e,n)&&!U_(e,n,!0)),s=o.filter(t=>CS(t,e)!==r);if(s.length>0){let n=s.find(t=>CS(e,t)===r)||s[0];return{points:[n],direction:CS(n,t)}}else{let i=Si(a,o)[0],s=xy(t,i,wS(n,r)/2);return{points:[AS(s,e,n),s],direction:CS(s,t)}}}function OS(e,t,n,r){let i=ES(e,t,n),a=cy(i.points[0]);if(H_(a,r)){i=ES(t,e,r);let o=cy(i.points[0]);if(H_(o,n)){let s=xy(e,a,wS(n,CS(e,a))/2),c=xy(t,o,wS(r,CS(t,o))/2),l=[(s[0]+c[0])/2,(s[1]+c[1])/2],u=ES(e,l,n),d=DS(l,t,r,u.direction);i.points=[u.points[0],d.points[0]],i.direction=d.direction}}return i}function kS(e,t,n,r,i){let a=.01,o=B_([n,r]),s=ty(t,o.center)>ty(e,o.center),[c,l]=s?[t,e]:[e,t],u=F_(o)+P_(o),d;if(i){let e=[c[0]+u*Math.cos(SS[i]),c[1]+u*Math.sin(SS[i])];d=xy(q_(e,o),e,a)}else d=xy(q_(c,o),c,-a);let f=AS(d,l,o),p=[by(d,2),by(f,2)];if(_a(by(d),by(f))){let e=iy(Yv(d,c),[1,0,0])+Math.PI/2;f=[l[0]+u*Math.cos(e),l[1]+u*Math.sin(e),0],f=by(xy(q_(f,o),l,-a),2);let t=AS(d,f,o);p=[d,t,f]}return{points:s?p.reverse():p,direction:CS(s?d:f,t)}}function AS(e,t,n){let r=[e[0],t[1]];return H_(r,n)&&(r=[t[0],e[1]]),r}function jS(e,t,n,r,i){let a=typeof t==`number`?t:.5;t===`start`&&(a=0),t===`end`&&(a=.99);let o=vy(e.getPoint(a)),s=vy(e.getPoint(a+.01)),c=t===`start`?`left`:t===`end`?`right`:`center`;if(Sy(o,s)||!n){let[t,n]=NS(e,a,r,i);return{transform:[[`translate`,t,n]],textAlign:c}}let l=Math.atan2(s[1]-o[1],s[0]-o[0]);s[0]<o[0]&&(c=c===`center`?c:c===`left`?`right`:`left`,r*=-1,l+=Math.PI);let[u,d]=NS(e,a,r,i,l),f=[[`translate`,u,d],[`rotate`,l/Math.PI*180]];return{textAlign:c,transform:f}}function MS(e,t,n,r,i){let a=e.badge?.getGeometryBounds().halfExtents[0]*2||0,o=e.label?.getGeometryBounds().halfExtents[0]*2||0;return jS(e.key,n,!0,(o?(o/2+a/2)*(t===`suffix`?1:-1):0)+r,i)}function NS(e,t,n,r,i){let[a,o]=vy(e.getPoint(t)),s=n,c=r;return i&&(s=n*Math.cos(i)-r*Math.sin(i),c=n*Math.sin(i)+r*Math.cos(i)),[a+s,o+c]}function PS(e,t,n,r){if(_a(e,t))return e;let i=Yv(t,e),a=[e[0]+n*i[0],e[1]+n*i[1]],o=ry(ay(i,!1));return a[0]+=r*o[0],a[1]+=r*o[1],a}function FS(e){return zi(e)?[e,-e]:e}function IS(e){return zi(e)?[e,1-e]:e}function LS(e,t,n){return[[`M`,e[0],e[1]],[`Q`,n[0],n[1],t[0],t[1]]]}function RS(e,t,n){return[[`M`,e[0],e[1]],[`C`,n[0][0],n[0][1],n[1][0],n[1][1],t[0],t[1]]]}function zS(e,t=0,n=!1){let r=e.length-1,i=e[0],a=e[r],o=e.slice(1,r),s=[[`M`,i[0],i[1]]];return o.forEach((e,n)=>{let r=o[n-1]||i,c=o[n+1]||a;if(!Ty(r,e,c)&&t){let[n,i]=BS(r,e,c,t);s.push([`L`,n[0],n[1]],[`Q`,e[0],e[1],i[0],i[1]],[`L`,i[0],i[1]])}else s.push([`L`,e[0],e[1]])}),s.push([`L`,a[0],a[1]]),n&&s.push([`Z`]),s}function BS(e,t,n,r){let i=ny(e,t),a=ny(n,t),o=Math.min(r,Math.min(i,a)/2);return[[t[0]-o/i*(t[0]-e[0]),t[1]-o/i*(t[1]-e[1])],[t[0]-o/a*(t[0]-n[0]),t[1]-o/a*(t[1]-n[1])]]}var VS=e=>{let t=Math.PI/2,n=F_(e)/2,r=P_(e)/2,i=Math.atan2(n,r)/2,a=Math.atan2(r,n)/2;return{top:[-t-a,-t+a],"top-right":[-t+a,-i],"right-top":[-t+a,-i],right:[-i,i],"bottom-right":[i,t-a],"right-bottom":[i,t-a],bottom:[t-a,t+a],"bottom-left":[t+a,Math.PI-i],"left-bottom":[t+a,Math.PI-i],left:[Math.PI-i,Math.PI+i],"top-left":[Math.PI+i,-t-a],"left-top":[Math.PI+i,-t-a]}};function HS(e,t,n,r,i){let a=L_(e),o=e.getCenter(),s=r&&IC(r),c=i&&IC(i);if(!s||!c){let r=VS(a),i=r[t][0],l=r[t][1],[u,d]=I_(a),f=Math.max(u,d),p=Jv(o,[f*Math.cos(i),f*Math.sin(i),0]),m=Jv(o,[f*Math.cos(l),f*Math.sin(l),0]);s=HC(e,p),c=HC(e,m),n||([s,c]=[c,s])}return[s,c]}function US(e,t,n,r,i,a){let o=e.getPorts()[i||a],s=e.getPorts()[a||i],[c,l]=HS(e,t,n,o,s),u=WS(e,c,l,r);return o&&(c=VC(o,u[0])),s&&(l=VC(s,u.at(-1))),RS(c,l,u)}function WS(e,t,n,r){let i=e.getCenter();if(_a(t,n)){let e=Yv(t,i),a=[r*Math.sign(e[0])||r/2,r*Math.sign(e[1])||-r/2,0];return[Jv(t,a),Jv(n,Xv(a,[1,-1,1]))]}return[xy(i,t,ty(i,t)+r),xy(i,n,ty(i,n)+r)]}function GS(e,t,n,r,i,a,o){let s=PC(e),c=s[a||o],l=s[o||a],[u,d]=HS(e,n,r,c,l),f=KS(e,u,d,i);return c&&(u=VC(c,f[0])),l&&(d=VC(l,f.at(-1))),zS([u,...f,d],t)}function KS(e,t,n,r){let i=[],a=L_(e);if(_a(t,n))switch(K_(t,a)){case`left`:i.push([t[0]-r,t[1]]),i.push([t[0]-r,t[1]+r]),i.push([t[0],t[1]+r]);break;case`right`:i.push([t[0]+r,t[1]]),i.push([t[0]+r,t[1]+r]),i.push([t[0],t[1]+r]);break;case`top`:i.push([t[0],t[1]-r]),i.push([t[0]+r,t[1]-r]),i.push([t[0]+r,t[1]]);break;case`bottom`:i.push([t[0],t[1]+r]),i.push([t[0]+r,t[1]+r]),i.push([t[0]+r,t[1]]);break}else{let e=K_(t,a),o=K_(n,a);if(e===o){let a=e,o,s;switch(a){case`left`:o=Math.min(t[0],n[0])-r,i.push([o,t[1]]),i.push([o,n[1]]);break;case`right`:o=Math.max(t[0],n[0])+r,i.push([o,t[1]]),i.push([o,n[1]]);break;case`top`:s=Math.min(t[1],n[1])-r,i.push([t[0],s]),i.push([n[0],s]);break;case`bottom`:s=Math.max(t[1],n[1])+r,i.push([t[0],s]),i.push([n[0],s]);break}}else{let s=(e,t)=>({left:[t[0]-r,t[1]],right:[t[0]+r,t[1]],top:[t[0],t[1]-r],bottom:[t[0],t[1]+r]})[e],c=s(e,t),l=s(o,n),u=AS(c,l,a);i.push(c,u,l)}}return i}function qS(e,t){let n=new Set,r=new Set,i=new Set;return e.forEach(a=>{t(a).forEach(t=>{n.add(t),e.includes(t.source)&&e.includes(t.target)?r.add(t):i.add(t)})}),{edges:Array.from(n),internal:Array.from(r),external:Array.from(i)}}function JS(e,t){let n=[],r=e;for(;r;){n.push(r);let e=t(Q(r));if(e)r=e;else break}return n.some(e=>e.style?.collapsed)?n[n.reverse().findIndex(eb)]||n.at(-1):e}function YS(e,t){return t||(e<4?10:e===4?12:e*2.5)}var XS=s({circle:()=>ZS,diamond:()=>$S,rect:()=>tC,simple:()=>rC,triangle:()=>QS,triangleRect:()=>nC,vee:()=>eC}),ZS=(e,t)=>{let n=Math.max(e,t)/2;return[[`M`,-e/2,0],[`A`,n,n,0,1,0,2*n-e/2,0],[`A`,n,n,0,1,0,-e/2,0],[`Z`]]},QS=(e,t)=>[[`M`,-e/2,0],[`L`,e/2,-t/2],[`L`,e/2,t/2],[`Z`]],$S=(e,t)=>[[`M`,-e/2,0],[`L`,0,-t/2],[`L`,e/2,0],[`L`,0,t/2],[`Z`]],eC=(e,t)=>[[`M`,-e/2,0],[`L`,e/2,-t/2],[`L`,4*e/5-e/2,0],[`L`,e/2,t/2],[`Z`]],tC=(e,t)=>[[`M`,-e/2,-t/2],[`L`,e/2,-t/2],[`L`,e/2,t/2],[`L`,-e/2,t/2],[`Z`]],nC=(e,t)=>{let n=e/2,r=e/7,i=e-r;return[[`M`,-n,0],[`L`,0,-t/2],[`L`,0,t/2],[`Z`],[`M`,i-n,-t/2],[`L`,i+r-n,-t/2],[`L`,i+r-n,t/2],[`L`,i-n,t/2],[`Z`]]},rC=(e,t)=>[[`M`,e/2,-t/2],[`L`,-e/2,0],[`L`,e/2,0],[`L`,-e/2,0],[`L`,e/2,t/2]],iC=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},aC=class e extends Vb{constructor(t){super(ub({style:e.defaultStyleProps},t)),this.type=`edge`}get sourceNode(){let{sourceNode:e}=this.parsedAttributes;return this.context.element.getElement(e)}get targetNode(){let{targetNode:e}=this.parsedAttributes;return this.context.element.getElement(e)}getKeyStyle(e){let t=this.getGraphicStyle(e),{loop:n}=t,r=iC(t,[`loop`]),{sourceNode:i,targetNode:a}=this,o={d:n&&jC(i,a)?this.getLoopPath(e):this.getKeyPath(e)};return fm.PARSED_STYLE_LIST.forEach(e=>{e in r&&(o[e]=r[e])}),o}getLoopPath(e){let{sourcePort:t,targetPort:n}=e,r=this.sourceNode,i=L_(r),a=Math.max(P_(i),F_(i)),{placement:o,clockwise:s,dist:c=a}=ib(this.getGraphicStyle(e),`loop`);return US(r,o,s,c,t,n)}getEndpoints(e,t=!0,n=[]){let{sourcePort:r,targetPort:i}=e,{sourceNode:a,targetNode:o}=this,[s,c]=LC(a,o,r,i);if(!t)return[s?IC(s):a.getCenter(),c?IC(c):o.getCenter()];let l=typeof n==`function`?n():n;return[BC(s||a,l[0]||c||o),BC(c||o,l[l.length-1]||s||a)]}getHaloStyle(e){if(e.halo===!1)return!1;let t=this.getKeyStyle(e),n=ib(this.getGraphicStyle(e),`halo`);return Object.assign(Object.assign({},t),n)}getLabelStyle(e){if(e.label===!1||!e.labelText)return!1;let t=ib(this.getGraphicStyle(e),`label`),{placement:n,offsetX:r,offsetY:i,autoRotate:a,maxWidth:o}=t,s=iC(t,[`placement`,`offsetX`,`offsetY`,`autoRotate`,`maxWidth`]),c=jS(this.shapeMap.key,n,a,r,i),l=this.shapeMap.key.getLocalBounds(),u=vb([l.min,l.max],o);return Object.assign({wordWrapWidth:u},c,s)}getBadgeStyle(e){if(e.badge===!1||!e.badgeText)return!1;let t=ib(e,`badge`),{offsetX:n,offsetY:r,placement:i}=t,a=iC(t,[`offsetX`,`offsetY`,`placement`]);return Object.assign(a,MS(this.shapeMap,i,e.labelPlacement,n,r))}drawArrow(e,t){var n;let r=t===`start`,i=e[t===`start`?`startArrow`:`endArrow`],a=this.shapeMap.key;if(i){let t=this.getArrowStyle(e,r),[n,i,o]=r?[`markerStart`,`markerStartOffset`,`startArrowOffset`]:[`markerEnd`,`markerEndOffset`,`endArrowOffset`],s=a.parsedStyle[n];if(s)s.attr(t);else{let e=new(t.src?cm:fm)({style:t});a.style[n]=e}a.style[i]=e[o]||t.width/2+ +t.lineWidth}else{let e=r?`markerStart`:`markerEnd`;(n=a.style[e])==null||n.destroy(),a.style[e]=null}}getArrowStyle(e,t){let n=this.getShape(`key`).attributes,r=t?`startArrow`:`endArrow`,i=ib(this.getGraphicStyle(e),r),{size:a,type:o}=i,s=iC(i,[`size`,`type`]),[c,l]=sb(YS(n.lineWidth,a)),u=(B(o)?o:XS[o]||QS)(c,l);return Object.assign(xa(n,[`stroke`,`strokeOpacity`,`fillOpacity`]),{width:c,height:l},Object.assign({},u&&{d:u,fill:o===`simple`?``:n.stroke}),s)}drawLabelShape(e,t){let n=this.getLabelStyle(e);this.upsert(`label`,Cb,n,t)}drawHaloShape(e,t){let n=this.getHaloStyle(e);this.upsert(`halo`,fm,n,t)}drawBadgeShape(e,t){let n=this.getBadgeStyle(e);this.upsert(`badge`,wb,n,t)}drawSourceArrow(e){this.drawArrow(e,`start`)}drawTargetArrow(e){this.drawArrow(e,`end`)}drawKeyShape(e,t){let n=this.getKeyStyle(e);return this.upsert(`key`,fm,n,t)}render(e=this.parsedAttributes,t=this){this.drawKeyShape(e,t),this.getShape(`key`)&&(this.drawSourceArrow(e),this.drawTargetArrow(e),this.drawLabelShape(e,t),this.drawHaloShape(e,t),this.drawBadgeShape(e,t))}onframe(){this.drawKeyShape(this.parsedAttributes,this),this.drawSourceArrow(this.parsedAttributes),this.drawTargetArrow(this.parsedAttributes),this.drawHaloShape(this.parsedAttributes,this),this.drawLabelShape(this.parsedAttributes,this),this.drawBadgeShape(this.parsedAttributes,this)}animate(e,t){let n=super.animate(e,t);return n&&new Proxy(n,{set:(e,t,n)=>(t===`currentTime`&&Promise.resolve().then(()=>this.onframe()),Reflect.set(e,t,n))})}};aC.defaultStyleProps={badge:!0,badgeOffsetX:0,badgeOffsetY:0,badgePlacement:`suffix`,isBillboard:!0,label:!0,labelAutoRotate:!0,labelIsBillboard:!0,labelMaxWidth:`80%`,labelOffsetX:4,labelOffsetY:0,labelPlacement:`center`,labelTextBaseline:`middle`,labelWordWrap:!1,halo:!1,haloDroppable:!1,haloLineDash:0,haloLineWidth:12,haloPointerEvents:`none`,haloStrokeOpacity:.25,haloZIndex:-1,loop:!0,startArrow:!1,startArrowLineDash:0,startArrowLineJoin:`round`,startArrowLineWidth:1,startArrowTransformOrigin:`center`,startArrowType:`vee`,endArrow:!1,endArrowLineDash:0,endArrowLineJoin:`round`,endArrowLineWidth:1,endArrowTransformOrigin:`center`,endArrowType:`vee`,loopPlacement:`top`,loopClockwise:!0};var oC=class e extends aC{constructor(t){super(ub({style:e.defaultStyleProps},t))}getKeyPath(e){let[t,n]=this.getEndpoints(e),{controlPoints:r,curvePosition:i,curveOffset:a}=e;return RS(t,n,this.getControlPoints(t,n,IS(i),FS(a),r))}getControlPoints(e,t,n,r,i){return i?.length===2?i:[PS(e,t,n[0],r[0]),PS(e,t,n[1],r[1])]}};oC.defaultStyleProps={curvePosition:.5,curveOffset:20};var sC=class e extends oC{constructor(t){super(ub({style:e.defaultStyleProps},t))}getControlPoints(e,t,n,r){let i=t[0]-e[0];return[[e[0]+i*n[0]+r[0],e[1]],[t[0]-i*n[1]+r[1],t[1]]]}};sC.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};var cC=class e extends oC{constructor(t){super(ub({style:e.defaultStyleProps},t))}get ref(){return this.context.model.getRootsData()[0]}getEndpoints(e){if(this.sourceNode.id===this.ref.id)return super.getEndpoints(e);let t=my(this.ref);return[this.sourceNode.getIntersectPoint(t,!0),this.targetNode.getIntersectPoint(t)]}toRadialCoordinate(e){let t=my(this.ref);return[ty(e,t),ly(Yv(e,t))]}getControlPoints(e,t,n,r){let[i,a]=this.toRadialCoordinate(e),[o]=this.toRadialCoordinate(t),s=o-i;return[[e[0]+(s*n[0]+r[0])*Math.cos(a),e[1]+(s*n[0]+r[0])*Math.sin(a)],[t[0]-(s*n[1]-r[0])*Math.cos(a),t[1]-(s*n[1]-r[0])*Math.sin(a)]]}};cC.defaultStyleProps={curvePosition:.5,curveOffset:20};var lC=class e extends oC{constructor(t){super(ub({style:e.defaultStyleProps},t))}getControlPoints(e,t,n,r){let i=t[1]-e[1];return[[e[0],e[1]+i*n[0]+r[0]],[t[0],t[1]-i*n[1]+r[1]]]}};lC.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};var uC=class e extends aC{constructor(t){super(ub({style:e.defaultStyleProps},t))}getKeyPath(e){let[t,n]=this.getEndpoints(e);return[[`M`,t[0],t[1]],[`L`,n[0],n[1]]]}};uC.defaultStyleProps={};var dC={enableObstacleAvoidance:!1,offset:10,maxAllowedDirectionChange:Math.PI/2,maximumLoops:3e3,gridSize:5,startDirections:[`top`,`right`,`bottom`,`left`],endDirections:[`top`,`right`,`bottom`,`left`],directionMap:{right:{stepX:1,stepY:0},left:{stepX:-1,stepY:0},bottom:{stepX:0,stepY:1},top:{stepX:0,stepY:-1}},penalties:{0:0,90:0},distFunc:ny},fC=e=>`${Math.round(e[0])}|||${Math.round(e[1])}`;function pC(e,t){let n=e=>Math.round(e/t);return zi(e)?n(e):e.map(n)}function mC(e,t){let n=Math.abs(e-t);return n>Math.PI?2*Math.PI-n:n}function hC(e,t){let n=t[0]-e[0],r=t[1]-e[1];return!n&&!r?0:Math.atan2(r,n)}function gC(e,t,n,r){let i=hC(e,t),a=n[fC(e)];return mC(hC(a||r,e),i)}var _C=(e,t)=>{let{offset:n,gridSize:r}=t,i={};return e.forEach(e=>{if(!e||e.destroyed||!e.isVisible())return;let t=z_(e.getRenderBounds(),n);for(let e=pC(t.min[0],r);e<=pC(t.max[0],r);e+=1)for(let n=pC(t.min[1],r);n<=pC(t.max[1],r);n+=1)i[`${e}|||${n}`]=!0}),i};function vC(e,t,n){return Math.min(...t.map(t=>n(e,t)))}function yC(e,t,n){let r=e[0],i=n(e[0],t);for(let a=0;a<e.length;a++){let o=e[a],s=n(o,t);s<i&&(r=o,i=s)}return r}var bC=(e,t,n,r)=>{if(!t)return[e];let{directionMap:i,offset:a}=r,o=z_(t.getRenderBounds(),a),s=Object.keys(i).reduce((t,r)=>{if(n.includes(r)){let n=i[r],[a,s]=I_(o),c=[e[0]+n.stepX*a,e[1]+n.stepY*s],l=X_(o);for(let n=0;n<l.length;n++){let r=fy([e,c],l[n]);r&&U_(r,o)&&t.push(r)}}return t},[]);return H_(e,o)||s.push(e),s.map(e=>pC(e,r.gridSize))},xC=(e,t,n,r,i,a,o)=>{let s=[],c=[a[0]===r[0]?r[0]:e[0]*o,a[1]===r[1]?r[1]:e[1]*o];s.unshift(c);let l=e,u=t[fC(l)];for(;u;){let e=u,r=l;gC(e,r,t,n)&&(c=[e[0]===r[0]?c[0]:e[0]*o,e[1]===r[1]?c[1]:e[1]*o],s.unshift(c)),u=t[fC(e)],l=e}let d=yC(i.map(e=>[e[0]*o,e[1]*o]),c,ny);return s.unshift(d),s};function SC(e,t,n,r){let i=sy(e.getCenter()),a=sy(t.getCenter()),o=Object.assign(dC,r),{gridSize:s}=o,c=_C(o.enableObstacleAvoidance?n:[e,t],o),l=pC(i,s),u=pC(a,s),d=bC(i,e,o.startDirections,o),f=bC(a,t,o.endDirections,o);d.forEach(e=>delete c[fC(e)]),f.forEach(e=>delete c[fC(e)]);let p={},m={},h={},g={},_={},v=new CC;for(let e=0;e<d.length;e++){let t=d[e],n=fC(t);p[n]=t,g[n]=0,_[n]=vC(t,f,o.distFunc),v.add({id:n,value:_[n]})}let y=f.map(e=>fC(e)),b=o.maximumLoops,x,S=1/0;for(let[e,t]of Object.entries(p))_[e]<=S&&(S=_[e],x=t);for(;Object.keys(p).length>0&&b>0;){let e=v.minId(!1);if(e)x=p[e];else break;let t=fC(x);if(y.includes(t))return xC(x,h,l,a,d,u,s);delete p[t],v.remove(t),m[t]=!0;for(let e of Object.values(o.directionMap)){let n=Jv(x,[e.stepX,e.stepY]),r=fC(n);if(m[r])continue;let i=gC(x,n,h,l);if(i>o.maxAllowedDirectionChange||c[r])continue;p[r]||(p[r]=n);let a=o.penalties[i],u=o.distFunc(x,n)+(isNaN(a)?s:a),d=g[t]+u,y=g[r];y&&d>=y||(h[r]=x,g[r]=d,_[r]=d+vC(n,f,o.distFunc),v.add({id:r,value:_[r]}))}--b}return[]}var CC=class{constructor(){this.arr=[],this.map={},this.arr=[],this.map={}}_innerAdd(e,t){let n=0,r=t-1;for(;r-n>1;){let t=Math.floor((n+r)/2);if(this.arr[t].value>e.value)r=t;else if(this.arr[t].value<e.value)n=t;else{this.arr.splice(t,0,e),this.map[e.id]=!0;return}}this.arr.splice(r,0,e),this.map[e.id]=!0}add(e){delete this.map[e.id];let t=this.arr.length;if(!t||this.arr[t-1].value<e.value){this.arr.push(e),this.map[e.id]=!0;return}this._innerAdd(e,t)}remove(e){this.map[e]&&delete this.map[e]}_clearAndGetMinId(){let e;for(let t=this.arr.length-1;t>=0;t--)this.map[this.arr[t].id]?e=this.arr[t].id:this.arr.splice(t,1);return e}_findFirstId(){for(;this.arr.length;){let e=this.arr.shift();if(this.map[e.id])return e.id}}minId(e){return e?this._clearAndGetMinId():this._findFirstId()}},wC=class e extends aC{constructor(t){super(ub({style:e.defaultStyleProps},t))}getControlPoints(e){let{router:t}=e,{sourceNode:n,targetNode:r}=this,[i,a]=this.getEndpoints(e,!1),o=[];return t?t.type===`shortest-path`?(o=SC(n,r,this.context.element.getNodes(),t),o.length||(o=bS(i,a,n,r,e.controlPoints,{padding:t.offset}))):t.type===`orth`&&(o=bS(i,a,n,r,e.controlPoints,t)):o=e.controlPoints,o}getPoints(e){let t=this.getControlPoints(e),[n,r]=this.getEndpoints(e,!0,t);return[n,...t,r]}getKeyPath(e){return zS(this.getPoints(e),e.radius)}getLoopPath(e){let{sourcePort:t,targetPort:n,radius:r}=e,i=this.sourceNode,a=L_(i),o=Math.max(P_(a),F_(a))/4,{placement:s,clockwise:c,dist:l=o}=ib(this.getGraphicStyle(e),`loop`);return GS(i,r,s,c,l,t,n)}};wC.defaultStyleProps={radius:0,controlPoints:[],router:!1};var TC=class e extends aC{constructor(t){super(ub({style:e.defaultStyleProps},t))}getKeyPath(e){let{curvePosition:t,curveOffset:n}=e,[r,i]=this.getEndpoints(e);return LS(r,i,e.controlPoint||PS(r,i,t,n))}};TC.defaultStyleProps={curvePosition:.5,curveOffset:30};var EC=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};function DC(e){return e instanceof Ub&&e.type===`node`}function OC(e){return e instanceof aC}function kC(e){return e instanceof gS}function AC(e){return DC(e)||OC(e)||kC(e)}function jC(e,t){return!e||!t?!1:e===t}var MC={top:[.5,0],right:[1,.5],bottom:[.5,1],left:[0,.5],"left-top":[0,0],"top-left":[0,0],"left-bottom":[0,1],"bottom-left":[0,1],"right-top":[1,0],"top-right":[1,0],"right-bottom":[1,1],"bottom-right":[1,1],default:[.5,.5]};function NC(e,t,n=MC,r=!0){let i=[.5,.5],a=Pi(t)?va(n,t.toLocaleLowerCase(),i):t;if(!r&&Pi(t))return a;let[o,s]=a||i;return[e.min[0]+P_(e)*o,e.min[1]+F_(e)*s]}function PC(e){if(!e)return{};let t=e.getPorts();return(e.attributes.ports||[]).forEach((n,r)=>{var i;let{key:a,placement:o}=n;FC(n)&&(t[i=a||r]||(t[i]=_y(e.getShape(`key`).getBounds(),o)))}),t}function FC(e){let{r:t}=e;return!t||Number(t)===0}function IC(e){return A_(e)?e:e.getPosition()}function LC(e,t,n,r){return[RC(e,t,n,r),RC(t,e,r,n)]}function RC(e,t,n,r){let i=PC(e);if(n)return i[n];let a=Object.values(i);if(a.length===0)return;let[o]=jy(a.map(e=>IC(e)),zC(t,r));return a.find(e=>IC(e)===o)}function zC(e,t){let n=PC(e);if(t)return[IC(n[t])];let r=Object.values(n);return r.length>0?r.map(e=>IC(e)):[e.getCenter()]}function BC(e,t){return kC(e)||DC(e)?HC(e,t):VC(e,t)}function VC(e,t){return!e||!t?[0,0,0]:A_(e)?e:e.attributes.linkToCenter?e.getPosition():Ay(A_(t)?t:DC(t)?t.getCenter():t.getPosition(),e.getBounds())}function HC(e,t){if(!e||!t)return[0,0,0];let n=A_(t)?t:DC(t)?t.getCenter():t.getPosition();return e.getIntersectPoint(n)||e.getCenter()}function UC(e,t=`bottom`,n=0,r=0,i=!1){let a=t.split(`-`),[o,s]=_y(e,t),[c,l]=i?[`bottom`,`top`]:[`top`,`bottom`],u=a.includes(`top`)?l:a.includes(`bottom`)?c:`middle`,d=a.includes(`left`)?`right`:a.includes(`right`)?`left`:`center`;return{transform:[[`translate`,o+n,s+r]],textBaseline:u,textAlign:d}}function WC(e,t){return[[0,-e],[t*Math.cos(3*Math.PI/10),-t*Math.sin(3*Math.PI/10)],[e*Math.cos(Math.PI/10),-e*Math.sin(Math.PI/10)],[t*Math.cos(Math.PI/10),t*Math.sin(Math.PI/10)],[e*Math.cos(3*Math.PI/10),e*Math.sin(3*Math.PI/10)],[0,t],[-e*Math.cos(3*Math.PI/10),e*Math.sin(3*Math.PI/10)],[-t*Math.cos(Math.PI/10),t*Math.sin(Math.PI/10)],[-e*Math.cos(Math.PI/10),-e*Math.sin(Math.PI/10)],[-t*Math.cos(3*Math.PI/10),-t*Math.sin(3*Math.PI/10)]]}function GC(e,t){let n={};return n.top=[0,-e],n.left=[-e*Math.cos(Math.PI/10),-e*Math.sin(Math.PI/10)],n[`left-bottom`]=[-e*Math.cos(3*Math.PI/10),e*Math.sin(3*Math.PI/10)],n.bottom=[0,t],n[`right-bottom`]=[e*Math.cos(3*Math.PI/10),e*Math.sin(3*Math.PI/10)],n.right=n.default=[e*Math.cos(Math.PI/10),-e*Math.sin(Math.PI/10)],n}function KC(e,t,n){let r=t/2,i=e/2,a={up:[[-i,r],[i,r],[0,-r]],left:[[-i,0],[i,r],[i,-r]],right:[[-i,r],[-i,-r],[i,0]],down:[[-i,-r],[i,-r],[0,r]]};return a[n]||a.up}function qC(e,t,n){let r=t/2,i=e/2,a={};return n===`down`?(a.bottom=a.default=[0,r],a.right=[i,-r],a.left=[-i,-r]):n===`left`?(a.top=[i,-r],a.bottom=[i,r],a.left=a.default=[-i,0]):n===`right`?(a.top=[-i,-r],a.bottom=[-i,r],a.right=a.default=[i,0]):(a.left=[-i,r],a.top=a.default=[0,-r],a.right=[i,r]),a}function JC(e,t){return[[0,-t/2],[e/2,0],[0,t/2],[-e/2,0]]}function YC(e){return va(e,[`style`,`visibility`])!==`hidden`}function XC(e,t){let{zIndex:n,transform:r,transformOrigin:i,visibility:a,cursor:o,clipPath:s,component:c}=t,l=EC(t,[`zIndex`,`transform`,`transformOrigin`,`visibility`,`cursor`,`clipPath`,`component`]);Object.assign(e.attributes,l),r&&e.setAttribute(`transform`,r),zi(n)&&e.setAttribute(`zIndex`,n),i&&e.setAttribute(`transformOrigin`,i),a&&e.setAttribute(`visibility`,a),o&&e.setAttribute(`cursor`,o),s&&e.setAttribute(`clipPath`,s),c&&e.setAttribute(`component`,c)}function ZC(e,t){`update`in e?e.update(t):e.attr(t)}function QC(e){return[[0,e],[e*Math.sqrt(3)/2,e/2],[e*Math.sqrt(3)/2,-e/2],[0,-e],[-e*Math.sqrt(3)/2,-e/2],[-e*Math.sqrt(3)/2,e/2]]}function $C(e){ya(e,`__to_be_destroyed__`,!0)}function ew(e){return va(e,`__to_be_destroyed__`,!1)}var tw=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},nw=class e extends Wv{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.onCollapseExpand=e=>tw(this,void 0,void 0,function*(){if(!this.validate(e))return;let{target:t}=e;if(!AC(t))return;let n=t.id,{model:r,graph:i}=this.context,a=r.getElementDataById(n);if(!a)return!1;let{onCollapse:o,onExpand:s,animation:c,align:l}=this.options;eb(a)?(yield i.expandElement(n,{animation:c,align:l}),s?.(n)):(yield i.collapseElement(n,{animation:c,align:l}),o?.(n))}),this.bindEvents()}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}bindEvents(){let{graph:e}=this.context,{trigger:t}=this.options;e.on(`node:${t}`,this.onCollapseExpand),e.on(`combo:${t}`,this.onCollapseExpand)}unbindEvents(){let{graph:e}=this.context,{trigger:t}=this.options;e.off(`node:${t}`,this.onCollapseExpand),e.off(`combo:${t}`,this.onCollapseExpand)}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return B(t)?t(e):!!t}destroy(){this.unbindEvents(),super.destroy()}};nw.defaultOptions={enable:!0,animation:!0,trigger:X.DBLCLICK,align:!0};var rw=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};function iw(e,t){let{data:n,style:r}=e,i=rw(e,[`data`,`style`]),{data:a,style:o}=t,s=rw(t,[`data`,`style`]),c=Object.assign(Object.assign({},i),s);return(n||a)&&Object.assign(c,{data:Object.assign(Object.assign({},n),a)}),(r||o)&&Object.assign(c,{style:Object.assign(Object.assign({},r),o)}),c}function aw(e){let{data:t,style:n}=e,r=rw(e,[`data`,`style`]);return t&&(r.data=Object.assign({},t)),n&&(r.style=Object.assign({},n)),r}function ow(e={},t={}){let{states:n=[],data:r={},style:i={},children:a=[]}=e,o=rw(e,[`states`,`data`,`style`,`children`]),{states:s=[],data:c={},style:l={},children:u=[]}=t,d=rw(t,[`states`,`data`,`style`,`children`]),f=(e,t)=>e.length===t.length?e.every((e,n)=>e===t[n]):!1,p=(e,t)=>{let n=Object.keys(e),r=Object.keys(t);return n.length===r.length?n.every(n=>e[n]===t[n]):!1};return!(!p(o,d)||!f(a,u)||!f(n,s)||!p(r,c)||!p(i,l))}var sw=`__internal_override__`;function cw(e){return e[sw]!==!1}var lw=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},uw=`g6-create-edge-assist-edge-id`,dw=`g6-create-edge-assist-node-id`,fw=class e extends Wv{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.drop=e=>lw(this,void 0,void 0,function*(){let{targetType:t}=e;[`combo`,`node`].includes(t)&&this.source?yield this.handleCreateEdge(e):yield this.cancelEdge()}),this.handleCreateEdge=e=>lw(this,void 0,void 0,function*(){if(!this.validate(e))return;let{graph:t,canvas:n,batch:r,element:i}=this.context,{style:a}=this.options;if(this.source){this.createEdge(e),yield this.cancelEdge();return}r.startBatch(),n.setCursor(`crosshair`),this.source=this.getSelectedNodeIDs([e.target.id])[0];let o=t.getElementData(this.source);t.addNodeData([{id:dw,type:`circle`,[sw]:!1,style:{size:1,visibility:`hidden`,ports:[{key:`port-1`,placement:[.5,.5]}],x:o.style?.x,y:o.style?.y}}]),t.addEdgeData([{id:uw,source:this.source,target:dw,style:Object.assign({pointerEvents:`none`},a)}]),yield i.draw({animation:!1})?.finished}),this.updateAssistEdge=e=>lw(this,void 0,void 0,function*(){if(!this.source)return;let{model:t,element:n,graph:r}=this.context,[i,a]=r.getCanvasByClient([e.client.x,e.client.y]);t.translateNodeTo(dw,[i,a]),yield n.draw({animation:!1,silence:!0})?.finished}),this.createEdge=e=>{let{graph:t}=this.context,{style:n,onFinish:r,onCreate:i}=this.options;if(e.target?.id===void 0||this.source===void 0)return;let a=this.getSelectedNodeIDs([e.target.id])?.[0],o=i({id:`${this.source}-${a}-${Ta()}`,source:this.source,target:a,style:n});o&&(t.addEdgeData([o]),r(o))},this.cancelEdge=()=>lw(this,void 0,void 0,function*(){if(!this.source)return;let{graph:e,element:t,batch:n}=this.context;e.removeNodeData([dw]),this.source=void 0,yield t.draw({animation:!1})?.finished,n.endBatch()}),this.bindEvents()}update(e){super.update(e),this.bindEvents()}bindEvents(){let{graph:e}=this.context,{trigger:t}=this.options;this.unbindEvents(),t===`click`?(e.on($g.CLICK,this.handleCreateEdge),e.on(Yg.CLICK,this.handleCreateEdge),e.on(Jg.CLICK,this.cancelEdge),e.on(Zg.CLICK,this.cancelEdge)):(e.on($g.DRAG_START,this.handleCreateEdge),e.on(Yg.DRAG_START,this.handleCreateEdge),e.on(X.POINTER_UP,this.drop)),e.on(X.POINTER_MOVE,this.updateAssistEdge)}getSelectedNodeIDs(e){return Array.from(new Set(this.context.graph.getElementDataByState(`node`,this.options.state).map(e=>e.id).concat(e)))}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return B(t)?t(e):!!t}unbindEvents(){let{graph:e}=this.context;e.off($g.CLICK,this.handleCreateEdge),e.off(Yg.CLICK,this.handleCreateEdge),e.off(Jg.CLICK,this.cancelEdge),e.off(Zg.CLICK,this.cancelEdge),e.off($g.DRAG_START,this.handleCreateEdge),e.off(Yg.DRAG_START,this.handleCreateEdge),e.off(X.POINTER_UP,this.drop),e.off(X.POINTER_MOVE,this.updateAssistEdge)}destroy(){this.unbindEvents(),super.destroy()}};fw.defaultOptions={animation:!0,enable:!0,style:{},trigger:`drag`,onCreate:e=>e,onFinish:()=>{}};var pw=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},mw=class e extends Wv{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.isDragging=!1,this.onDragStart=e=>{this.validate(e)&&(this.isDragging=!0,this.context.canvas.setCursor(`grabbing`))},this.onDrag=e=>{if(!this.isDragging||Ry.isPinching)return;let t=e.movement?.x??e.dx,n=e.movement?.y??e.dy;(t|n)!==0&&this.translate([t,n],!1)},this.onDragEnd=()=>{var e,t;this.isDragging=!1,this.context.canvas.setCursor(this.defaultCursor),(t=(e=this.options).onFinish)==null||t.call(e)},this.invokeOnFinish=sa(()=>{var e,t;(t=(e=this.options).onFinish)==null||t.call(e)},300),this.shortcut=new Hy(t.graph),this.bindEvents(),this.defaultCursor=this.context.canvas.getConfig().cursor||`default`}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}bindEvents(){let{trigger:e}=this.options;if(wi(e)){let{up:t=[],down:n=[],left:r=[],right:i=[]}=e;this.shortcut.bind(t,e=>this.onTranslate([0,1],e)),this.shortcut.bind(n,e=>this.onTranslate([0,-1],e)),this.shortcut.bind(r,e=>this.onTranslate([1,0],e)),this.shortcut.bind(i,e=>this.onTranslate([-1,0],e))}else{let{graph:e}=this.context;e.on(X.DRAG_START,this.onDragStart),e.on(X.DRAG,this.onDrag),e.on(X.DRAG_END,this.onDragEnd)}}onTranslate(e,t){return pw(this,void 0,void 0,function*(){if(!this.validate(t))return;let{sensitivity:n}=this.options,r=n*-1;yield this.translate(Xv(e,r),this.options.animation),this.invokeOnFinish()})}translate(e,t){return pw(this,void 0,void 0,function*(){e=this.clampByDirection(e),e=this.clampByRange(e),e=this.clampByRotation(e),yield this.context.graph.translateBy(e,t)})}clampByRotation([e,t]){let n=this.context.graph.getRotation();return uy([e,t],n)}clampByDirection([e,t]){let{direction:n}=this.options;return n===`x`?t=0:n===`y`&&(e=0),[e,t]}clampByRange([e,t]){let{viewport:n,canvas:r}=this.context,[i,a]=r.getSize(),[o,s,c,l]=M_(this.options.range),u=[a*o,i*s,a*c,i*l],d=z_(R_(n.getCanvasCenter()),u),f=Yv(n.getViewportCenter(),[e,t,0]);if(!H_(f,d)){let{min:[n,r],max:[i,a]}=d;(f[0]<n&&e>0||f[0]>i&&e<0)&&(e=0),(f[1]<r&&t>0||f[1]>a&&t<0)&&(t=0)}return[e,t]}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return typeof t==`function`?t(e):!!t}unbindEvents(){this.shortcut.unbindAll();let{graph:e}=this.context;e.off(X.DRAG_START,this.onDragStart),e.off(X.DRAG,this.onDrag),e.off(X.DRAG_END,this.onDragEnd)}destroy(){this.shortcut.destroy(),this.unbindEvents(),this.context.canvas.setCursor(this.defaultCursor),super.destroy()}};mw.defaultOptions={enable:e=>`targetType`in e?e.targetType===`canvas`:!0,sensitivity:10,direction:`both`,range:1/0};var hw=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},gw=class e extends Wv{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.enable=!1,this.enableElements=[`node`,`combo`],this.target=[],this.shadowOrigin=[0,0],this.hiddenEdges=[],this.isDragging=!1,this.onDrop=e=>hw(this,void 0,void 0,function*(){if(this.options.dropEffect!==`link`)return;let{model:t,element:n}=this.context,r=e.target.id;this.target.forEach(e=>{let n=t.getParentData(e,e_);n&&Q(n)===r&&t.refreshComboData(r),t.setParent(e,r,e_)}),yield n?.draw({animation:!0})?.finished}),this.setCursor=e=>{if(this.isDragging)return;let{type:t}=e,{canvas:n}=this.context,{cursor:r}=this.options;t===X.POINTER_ENTER?n.setCursor(r?.grab||`grab`):n.setCursor(r?.default||`default`)},this.shortcut=new Hy(t.graph),this.onDragStart=this.onDragStart.bind(this),this.onDrag=this.onDrag.bind(this),this.onDragEnd=this.onDragEnd.bind(this),this.onDrop=this.onDrop.bind(this),this.bindEvents()}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}bindEvents(){let{graph:e,canvas:t}=this.context,n=t.getLayer().getContextService().$canvas;n&&(n.addEventListener(`blur`,this.onDragEnd),n.addEventListener(`contextmenu`,this.onDragEnd)),this.enableElements.forEach(t=>{e.on(`${t}:${X.DRAG_START}`,this.onDragStart),e.on(`${t}:${X.DRAG}`,this.onDrag),e.on(`${t}:${X.DRAG_END}`,this.onDragEnd),e.on(`${t}:${X.POINTER_ENTER}`,this.setCursor),e.on(`${t}:${X.POINTER_LEAVE}`,this.setCursor)}),[`link`].includes(this.options.dropEffect)&&(e.on(Yg.DROP,this.onDrop),e.on(Jg.DROP,this.onDrop))}getSelectedNodeIDs(e){return Array.from(new Set(this.context.graph.getElementDataByState(`node`,this.options.state).map(e=>e.id).concat(e)))}getDelta(e){let t=this.context.graph.getZoom();return Zv([e.dx,e.dy],t)}onDragStart(e){if(this.enable=this.validate(e),!this.enable)return;let{batch:t,canvas:n,graph:r}=this.context;n.setCursor(this.options.cursor?.grabbing||`grabbing`),this.isDragging=!0,t.startBatch();let i=e.target.id;r.getElementState(i).includes(this.options.state)?this.target=this.getSelectedNodeIDs([i]):this.target=[i],this.hideEdge(),this.context.graph.frontElement(this.target),this.options.shadow&&this.createShadow(this.target)}onDrag(e){if(!this.enable)return;let t=this.getDelta(e);this.options.shadow?this.moveShadow(t):this.moveElement(this.target,t)}onDragEnd(){var e,t;if(!this.enable)return;if(this.enable=!1,this.options.shadow){if(!this.shadow)return;this.shadow.style.visibility=`hidden`;let{x:e=0,y:t=0}=this.shadow.attributes,[n,r]=Yv([+e,+t],this.shadowOrigin);this.moveElement(this.target,[n,r])}this.showEdges(),(t=(e=this.options).onFinish)==null||t.call(e,this.target);let{batch:n,canvas:r}=this.context;n.endBatch(),r.setCursor(this.options.cursor?.grab||`grab`),this.isDragging=!1,this.target=[]}isKeydown(){let{trigger:e}=this.options;return e?.length?this.shortcut.match(e):!0}validate(e){if(this.destroyed||ew(e.target)||this.context.graph.isCollapsingExpanding||!this.isKeydown())return!1;let{enable:t}=this.options;return B(t)?t(e):!!t}clampByRotation([e,t]){let n=this.context.graph.getRotation();return uy([e,t],n)}moveElement(e,t){return hw(this,void 0,void 0,function*(){let{graph:n,model:r}=this.context,{dropEffect:i}=this.options;i===`move`&&e.forEach(e=>r.refreshComboData(e)),n.translateElementBy(Object.fromEntries(e.map(e=>[e,this.clampByRotation(t)])),!1)})}moveShadow(e){if(!this.shadow)return;let{x:t=0,y:n=0}=this.shadow.attributes,[r,i]=e;this.shadow.attr({x:+t+r,y:+n+i})}createShadow(e){let t=ib(this.options,`shadow`),n=B_(e.map(e=>this.context.element.getElement(e).getBounds())),[r,i]=n.min;this.shadowOrigin=[r,i];let[a,o]=I_(n),s={width:a,height:o,x:r,y:i};this.shadow?this.shadow.attr(Object.assign(Object.assign(Object.assign({},t),s),{visibility:`visible`})):(this.shadow=new _m({style:Object.assign(Object.assign(Object.assign({$layer:`transient`},t),s),{pointerEvents:`none`})}),this.context.canvas.appendChild(this.shadow))}showEdges(){this.options.shadow||this.hiddenEdges.length===0||(this.context.graph.showElement(this.hiddenEdges),this.hiddenEdges=[])}hideEdge(){let{hideEdge:e,shadow:t}=this.options;if(e===`none`||t)return;let{graph:n}=this.context;e===`all`?this.hiddenEdges=n.getEdgeData().map(Q):this.hiddenEdges=Array.from(new Set(this.target.map(t=>n.getRelatedEdgesData(t,e).map(Q)).flat())),n.hideElement(this.hiddenEdges)}unbindEvents(){let{graph:e,canvas:t}=this.context,n=t.getLayer().getContextService().$canvas;n&&(n.removeEventListener(`blur`,this.onDragEnd),n.removeEventListener(`contextmenu`,this.onDragEnd)),this.enableElements.forEach(t=>{e.off(`${t}:${X.DRAG_START}`,this.onDragStart),e.off(`${t}:${X.DRAG}`,this.onDrag),e.off(`${t}:${X.DRAG_END}`,this.onDragEnd),e.off(`${t}:${X.POINTER_ENTER}`,this.setCursor),e.off(`${t}:${X.POINTER_LEAVE}`,this.setCursor)}),e.off(`combo:${X.DROP}`,this.onDrop),e.off(`canvas:${X.DROP}`,this.onDrop)}destroy(){var e;this.unbindEvents(),(e=this.shadow)==null||e.destroy(),super.destroy()}};gw.defaultOptions={animation:!0,enable:e=>[`node`,`combo`].includes(e.targetType),trigger:[],dropEffect:`move`,state:`selected`,hideEdge:`none`,shadow:!1,shadowZIndex:100,shadowFill:`#F3F9FF`,shadowFillOpacity:.5,shadowStroke:`#1890FF`,shadowStrokeOpacity:.9,shadowLineDash:[5,5],cursor:{default:`default`,grab:`grab`,grabbing:`grabbing`}};var _w=`*`,vw=function(){function e(){this._events={}}return e.prototype.on=function(e,t,n){return this._events[e]||(this._events[e]=[]),this._events[e].push({callback:t,once:!!n}),this},e.prototype.once=function(e,t){return this.on(e,t,!0)},e.prototype.emit=function(e){for(var t=this,n=[],r=1;r<arguments.length;r++)n[r-1]=arguments[r];var i=this._events[e]||[],a=this._events[_w]||[],o=function(r){for(var i=r.length,a=0;a<i;a++)if(r[a]){var o=r[a],s=o.callback;o.once&&(r.splice(a,1),r.length===0&&delete t._events[e],i--,a--),s.apply(t,n)}};o(i),o(a)},e.prototype.off=function(e,t){if(!e)this._events={};else if(!t)delete this._events[e];else{for(var n=this._events[e]||[],r=n.length,i=0;i<r;i++)n[i].callback===t&&(n.splice(i,1),r--,i--);n.length===0&&delete this._events[e]}return this},e.prototype.getEvents=function(){return this._events},e}();function yw(e,t,n,r){for(;e.length;){let i=e.shift();if(n(i))return!0;t.add(i.id),r(i.id).forEach(n=>{t.has(n.id)||(t.add(n.id),e.push(n))})}return!1}function bw(e,t,n,r){if(n(e))return!0;t.add(e.id);for(let i of r(e.id))if(!t.has(i.id)&&bw(i,t,n,r))return!0;return!1}var xw=()=>!0,Sw=class{graph;nodeFilter;edgeFilter;cacheEnabled;inEdgesMap=new Map;outEdgesMap=new Map;bothEdgesMap=new Map;allNodesMap=new Map;allEdgesMap=new Map;constructor(e){this.graph=e.graph;let t=e.nodeFilter||xw,n=e.edgeFilter||xw;this.nodeFilter=t,this.edgeFilter=e=>{let{source:r,target:i}=this.graph.getEdgeDetail(e.id);return!t(r)||!t(i)?!1:n(e,r,i)},e.cache===`auto`?(this.cacheEnabled=!0,this.startAutoCache()):e.cache===`manual`?this.cacheEnabled=!0:this.cacheEnabled=!1}clearCache=()=>{this.inEdgesMap.clear(),this.outEdgesMap.clear(),this.bothEdgesMap.clear(),this.allNodesMap.clear(),this.allEdgesMap.clear()};refreshCache=()=>{this.clearCache(),this.updateCache(this.graph.getAllNodes().map(e=>e.id))};updateCache=e=>{let t=new Set;e.forEach(e=>{let n=this.bothEdgesMap.get(e);if(n&&n.forEach(e=>t.add(e.id)),!this.hasNode(e))this.inEdgesMap.delete(e),this.outEdgesMap.delete(e),this.bothEdgesMap.delete(e),this.allNodesMap.delete(e);else{let n=this.graph.getRelatedEdges(e,`in`).filter(this.edgeFilter),r=this.graph.getRelatedEdges(e,`out`).filter(this.edgeFilter),i=Array.from(new Set([...n,...r]));i.forEach(e=>t.add(e.id)),this.inEdgesMap.set(e,n),this.outEdgesMap.set(e,r),this.bothEdgesMap.set(e,i),this.allNodesMap.set(e,this.graph.getNode(e))}}),t.forEach(e=>{this.hasEdge(e)?this.allEdgesMap.set(e,this.graph.getEdge(e)):this.allEdgesMap.delete(e)})};startAutoCache(){this.refreshCache(),this.graph.on(`changed`,this.handleGraphChanged)}stopAutoCache(){this.graph.off(`changed`,this.handleGraphChanged)}handleGraphChanged=e=>{let t=new Set;e.changes.forEach(n=>{switch(n.type){case`NodeAdded`:t.add(n.value.id);break;case`NodeDataUpdated`:t.add(n.id);break;case`EdgeAdded`:t.add(n.value.source),t.add(n.value.target);break;case`EdgeUpdated`:(n.propertyName===`source`||n.propertyName===`target`)&&(t.add(n.oldValue),t.add(n.newValue));break;case`EdgeDataUpdated`:if(e.graph.hasEdge(n.id)){let r=e.graph.getEdge(n.id);t.add(r.source),t.add(r.target)}break;case`EdgeRemoved`:t.add(n.value.source),t.add(n.value.target);break;case`NodeRemoved`:t.add(n.value.id);break;default:break}}),this.updateCache(t)};checkNodeExistence(e){this.getNode(e)}hasNode(e){if(!this.graph.hasNode(e))return!1;let t=this.graph.getNode(e);return this.nodeFilter(t)}areNeighbors(e,t){return this.checkNodeExistence(e),this.getNeighbors(t).some(t=>t.id===e)}getNode(e){let t=this.graph.getNode(e);if(!this.nodeFilter(t))throw Error(`Node not found for id: `+e);return t}getRelatedEdges(e,t){return this.checkNodeExistence(e),this.cacheEnabled?t===`in`?this.inEdgesMap.get(e):t===`out`?this.outEdgesMap.get(e):this.bothEdgesMap.get(e):this.graph.getRelatedEdges(e,t).filter(this.edgeFilter)}getDegree(e,t){return this.getRelatedEdges(e,t).length}getSuccessors(e){let t=this.getRelatedEdges(e,`out`).map(e=>this.getNode(e.target));return Array.from(new Set(t))}getPredecessors(e){let t=this.getRelatedEdges(e,`in`).map(e=>this.getNode(e.source));return Array.from(new Set(t))}getNeighbors(e){let t=this.getPredecessors(e),n=this.getSuccessors(e);return Array.from(new Set([...t,...n]))}hasEdge(e){if(!this.graph.hasEdge(e))return!1;let t=this.graph.getEdge(e);return this.edgeFilter(t)}getEdge(e){let t=this.graph.getEdge(e);if(!this.edgeFilter(t))throw Error(`Edge not found for id: `+e);return t}getEdgeDetail(e){let t=this.getEdge(e);return{edge:t,source:this.getNode(t.source),target:this.getNode(t.target)}}hasTreeStructure(e){return this.graph.hasTreeStructure(e)}getRoots(e){return this.graph.getRoots(e).filter(this.nodeFilter)}getChildren(e,t){return this.checkNodeExistence(e),this.graph.getChildren(e,t).filter(this.nodeFilter)}getParent(e,t){this.checkNodeExistence(e);let n=this.graph.getParent(e,t);return!n||!this.nodeFilter(n)?null:n}getAllNodes(){return this.cacheEnabled?Array.from(this.allNodesMap.values()):this.graph.getAllNodes().filter(this.nodeFilter)}getAllEdges(){return this.cacheEnabled?Array.from(this.allEdgesMap.values()):this.graph.getAllEdges().filter(this.edgeFilter)}bfs(e,t,n=`out`){let r={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[n];yw([this.getNode(e)],new Set,t,r)}dfs(e,t,n=`out`){let r={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[n];bw(this.getNode(e),new Set,t,r)}},Cw=class e extends vw{nodeMap=new Map;edgeMap=new Map;inEdgesMap=new Map;outEdgesMap=new Map;bothEdgesMap=new Map;treeIndices=new Map;changes=[];batchCount=0;onChanged=()=>{};constructor(e){super(),e&&(e.nodes&&this.addNodes(e.nodes),e.edges&&this.addEdges(e.edges),e.tree&&this.addTree(e.tree),e.onChanged&&(this.onChanged=e.onChanged))}batch=e=>{this.batchCount+=1,e(),--this.batchCount,this.batchCount||this.commit()};commit(){let e=this.changes;this.changes=[];let t={graph:this,changes:e};this.emit(`changed`,t),this.onChanged(t)}reduceChanges(e){let t=[];return e.forEach(e=>{switch(e.type){case`NodeRemoved`:{let n=!1;t=t.filter(t=>{if(t.type===`NodeAdded`){let r=t.value.id===e.value.id;return r&&(n=!0),!r}else if(t.type===`NodeDataUpdated`)return t.id!==e.value.id;else if(t.type===`TreeStructureChanged`)return t.nodeId!==e.value.id;return!0}),n||t.push(e);break}case`EdgeRemoved`:{let n=!1;t=t.filter(t=>{if(t.type===`EdgeAdded`){let r=t.value.id===e.value.id;return r&&(n=!0),!r}else if(t.type===`EdgeDataUpdated`||t.type===`EdgeUpdated`)return t.id!==e.value.id;return!0}),n||t.push(e);break}case`NodeDataUpdated`:case`EdgeDataUpdated`:case`EdgeUpdated`:{let n=t.findIndex(t=>t.type===e.type&&t.id===e.id&&(e.propertyName===void 0||t.propertyName===e.propertyName)),r=t[n];r?e.propertyName===void 0?(t.splice(n,1),t.push(e)):r.newValue=e.newValue:t.push(e);break}case`TreeStructureDetached`:t=t.filter(t=>t.type===`TreeStructureAttached`||t.type===`TreeStructureChanged`?t.treeKey!==e.treeKey:!0),t.push(e);break;case`TreeStructureChanged`:{let n=t.find(t=>t.type===`TreeStructureChanged`&&t.treeKey===e.treeKey&&t.nodeId===e.nodeId);n?n.newParentId=e.newParentId:t.push(e);break}default:t.push(e);break}}),t}checkNodeExistence(e){this.getNode(e)}hasNode(e){return this.nodeMap.has(e)}areNeighbors(e,t){return this.getNeighbors(t).some(t=>t.id===e)}getNode(e){let t=this.nodeMap.get(e);if(!t)throw Error(`Node not found for id: `+e);return t}getRelatedEdges(e,t){if(this.checkNodeExistence(e),t===`in`){let t=this.inEdgesMap.get(e);return Array.from(t)}else if(t===`out`){let t=this.outEdgesMap.get(e);return Array.from(t)}else{let t=this.bothEdgesMap.get(e);return Array.from(t)}}getDegree(e,t){return this.getRelatedEdges(e,t).length}getSuccessors(e){let t=this.getRelatedEdges(e,`out`).map(e=>this.getNode(e.target));return Array.from(new Set(t))}getPredecessors(e){let t=this.getRelatedEdges(e,`in`).map(e=>this.getNode(e.source));return Array.from(new Set(t))}getNeighbors(e){let t=this.getPredecessors(e),n=this.getSuccessors(e);return Array.from(new Set([...t,...n]))}doAddNode(e){if(this.hasNode(e.id))throw Error(`Node already exists: `+e.id);this.nodeMap.set(e.id,e),this.inEdgesMap.set(e.id,new Set),this.outEdgesMap.set(e.id,new Set),this.bothEdgesMap.set(e.id,new Set),this.treeIndices.forEach(t=>{t.childrenMap.set(e.id,new Set)}),this.changes.push({type:`NodeAdded`,value:e})}addNodes(e){this.batch(()=>{for(let t of e)this.doAddNode(t)})}addNode(e){this.addNodes([e])}doRemoveNode(e){let t=this.getNode(e);this.bothEdgesMap.get(e)?.forEach(e=>this.doRemoveEdge(e.id)),this.nodeMap.delete(e),this.treeIndices.forEach(n=>{n.childrenMap.get(e)?.forEach(e=>{n.parentMap.delete(e.id)});let r=n.parentMap.get(e);r&&n.childrenMap.get(r.id)?.delete(t),n.parentMap.delete(e),n.childrenMap.delete(e)}),this.bothEdgesMap.delete(e),this.inEdgesMap.delete(e),this.outEdgesMap.delete(e),this.changes.push({type:`NodeRemoved`,value:t})}removeNodes(e){this.batch(()=>{e.forEach(e=>this.doRemoveNode(e))})}removeNode(e){this.removeNodes([e])}updateNodeDataProperty(e,t,n){let r=this.getNode(e);this.batch(()=>{let i=r.data[t],a=n;r.data[t]=a,this.changes.push({type:`NodeDataUpdated`,id:e,propertyName:t,oldValue:i,newValue:a})})}mergeNodeData(e,t){this.batch(()=>{Object.entries(t).forEach(([t,n])=>{this.updateNodeDataProperty(e,t,n)})})}updateNodeData(...e){let t=e[0],n=this.getNode(t);if(typeof e[1]==`string`){this.updateNodeDataProperty(t,e[1],e[2]);return}let r;if(typeof e[1]==`function`){let t=e[1];r=t(n.data)}else typeof e[1]==`object`&&(r=e[1]);this.batch(()=>{let e=n.data,i=r;n.data=r,this.changes.push({type:`NodeDataUpdated`,id:t,oldValue:e,newValue:i})})}checkEdgeExistence(e){if(!this.hasEdge(e))throw Error(`Edge not found for id: `+e)}hasEdge(e){return this.edgeMap.has(e)}getEdge(e){return this.checkEdgeExistence(e),this.edgeMap.get(e)}getEdgeDetail(e){let t=this.getEdge(e);return{edge:t,source:this.getNode(t.source),target:this.getNode(t.target)}}doAddEdge(e){if(this.hasEdge(e.id))throw Error(`Edge already exists: `+e.id);this.checkNodeExistence(e.source),this.checkNodeExistence(e.target),this.edgeMap.set(e.id,e);let t=this.inEdgesMap.get(e.target),n=this.outEdgesMap.get(e.source),r=this.bothEdgesMap.get(e.source),i=this.bothEdgesMap.get(e.target);t.add(e),n.add(e),r.add(e),i.add(e),this.changes.push({type:`EdgeAdded`,value:e})}addEdges(e){this.batch(()=>{for(let t of e)this.doAddEdge(t)})}addEdge(e){this.addEdges([e])}doRemoveEdge(e){let t=this.getEdge(e),n=this.outEdgesMap.get(t.source),r=this.inEdgesMap.get(t.target),i=this.bothEdgesMap.get(t.source),a=this.bothEdgesMap.get(t.target);n.delete(t),r.delete(t),i.delete(t),a.delete(t),this.edgeMap.delete(e),this.changes.push({type:`EdgeRemoved`,value:t})}removeEdges(e){this.batch(()=>{e.forEach(e=>this.doRemoveEdge(e))})}removeEdge(e){this.removeEdges([e])}updateEdgeSource(e,t){let n=this.getEdge(e);this.checkNodeExistence(t);let r=n.source,i=t;this.outEdgesMap.get(r).delete(n),this.bothEdgesMap.get(r).delete(n),this.outEdgesMap.get(i).add(n),this.bothEdgesMap.get(i).add(n),n.source=t,this.batch(()=>{this.changes.push({type:`EdgeUpdated`,id:e,propertyName:`source`,oldValue:r,newValue:i})})}updateEdgeTarget(e,t){let n=this.getEdge(e);this.checkNodeExistence(t);let r=n.target,i=t;this.inEdgesMap.get(r).delete(n),this.bothEdgesMap.get(r).delete(n),this.inEdgesMap.get(i).add(n),this.bothEdgesMap.get(i).add(n),n.target=t,this.batch(()=>{this.changes.push({type:`EdgeUpdated`,id:e,propertyName:`target`,oldValue:r,newValue:i})})}updateEdgeDataProperty(e,t,n){let r=this.getEdge(e);this.batch(()=>{let i=r.data[t],a=n;r.data[t]=a,this.changes.push({type:`EdgeDataUpdated`,id:e,propertyName:t,oldValue:i,newValue:a})})}updateEdgeData(...e){let t=e[0],n=this.getEdge(t);if(typeof e[1]==`string`){this.updateEdgeDataProperty(t,e[1],e[2]);return}let r;if(typeof e[1]==`function`){let t=e[1];r=t(n.data)}else typeof e[1]==`object`&&(r=e[1]);this.batch(()=>{let e=n.data,i=r;n.data=r,this.changes.push({type:`EdgeDataUpdated`,id:t,oldValue:e,newValue:i})})}mergeEdgeData(e,t){this.batch(()=>{Object.entries(t).forEach(([t,n])=>{this.updateEdgeDataProperty(e,t,n)})})}checkTreeExistence(e){if(!this.hasTreeStructure(e))throw Error(`Tree structure not found for treeKey: `+e)}hasTreeStructure(e){return this.treeIndices.has(e)}attachTreeStructure(e){this.treeIndices.has(e)||(this.treeIndices.set(e,{parentMap:new Map,childrenMap:new Map}),this.batch(()=>{this.changes.push({type:`TreeStructureAttached`,treeKey:e})}))}detachTreeStructure(e){this.checkTreeExistence(e),this.treeIndices.delete(e),this.batch(()=>{this.changes.push({type:`TreeStructureDetached`,treeKey:e})})}addTree(e,t){this.batch(()=>{this.attachTreeStructure(t);let n=[],r=Array.isArray(e)?e:[e];for(;r.length;){let e=r.shift();n.push(e),e.children&&r.push(...e.children)}this.addNodes(n),n.forEach(e=>{e.children?.forEach(n=>{this.setParent(n.id,e.id,t)})})})}getRoots(e){return this.checkTreeExistence(e),this.getAllNodes().filter(t=>!this.getParent(t.id,e))}getChildren(e,t){this.checkNodeExistence(e),this.checkTreeExistence(t);let n=this.treeIndices.get(t).childrenMap.get(e);return Array.from(n||[])}getParent(e,t){return this.checkNodeExistence(e),this.checkTreeExistence(t),this.treeIndices.get(t).parentMap.get(e)||null}getAncestors(e,t){let n=[],r=this.getNode(e),i;for(;i=this.getParent(r.id,t);)n.push(i),r=i;return n}setParent(e,t,n){this.checkTreeExistence(n);let r=this.treeIndices.get(n);if(!r)return;let i=this.getNode(e),a=r.parentMap.get(e);if(a?.id===t)return;if(t==null){a&&r.childrenMap.get(a.id)?.delete(i),r.parentMap.delete(e);return}let o=this.getNode(t);r.parentMap.set(e,o),a&&r.childrenMap.get(a.id)?.delete(i);let s=r.childrenMap.get(o.id);s||(s=new Set,r.childrenMap.set(o.id,s)),s.add(i),this.batch(()=>{this.changes.push({type:`TreeStructureChanged`,treeKey:n,nodeId:e,oldParentId:a?.id,newParentId:o.id})})}dfsTree(e,t,n){return bw(this.getNode(e),new Set,t,e=>this.getChildren(e,n))}bfsTree(e,t,n){return yw([this.getNode(e)],new Set,t,e=>this.getChildren(e,n))}getAllNodes(){return Array.from(this.nodeMap.values())}getAllEdges(){return Array.from(this.edgeMap.values())}bfs(e,t,n=`out`){let r={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[n];return yw([this.getNode(e)],new Set,t,r)}dfs(e,t,n=`out`){let r={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[n];return bw(this.getNode(e),new Set,t,r)}clone(){let t=new e({nodes:this.getAllNodes().map(e=>({...e,data:{...e.data}})),edges:this.getAllEdges().map(e=>({...e,data:{...e.data}}))});return this.treeIndices.forEach(({parentMap:e,childrenMap:n},r)=>{let i=new Map;e.forEach((e,n)=>{i.set(n,t.getNode(e.id))});let a=new Map;n.forEach((e,n)=>{a.set(n,new Set(Array.from(e).map(e=>t.getNode(e.id))))}),t.treeIndices.set(r,{parentMap:i,childrenMap:a})}),t}toJSON(){return JSON.stringify({nodes:this.getAllNodes(),edges:this.getAllEdges()})}createView(e){return new Sw({graph:this,...e})}},ww=class{constructor(e,t){this.context=e,this.options=t||{}}},Tw=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Ew=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};function Dw(e){let{type:t}=e;return[`compact-box`,`mindmap`,`dendrogram`,`indented`].includes(t)}function Ow(e){return!Array.isArray(e)&&e?.preLayout}function kw(e,t){class n extends ww{constructor(t,n){if(super(t,n),this.instance=new e({}),this.id=this.instance.id,`stop`in this.instance&&`tick`in this.instance){let e=this.instance;this.stop=e.stop.bind(e),this.tick=t=>(e.tick(t),this.getLayoutResult(e))}}execute(e,t){return Tw(this,void 0,void 0,function*(){return yield this.instance.execute(this.graphData2LayoutModel(e),this.transformOptions(ma({},this.options,t))),this.getLayoutResult(this.instance)})}graphData2LayoutModel(e){let{nodes:t=[],edges:n=[],combos:r=[]}=e;return{nodes:[...t,...r],edges:n}}transformOptions(e){let n=e=>t.model.isCombo(e);if(e.node=e=>{let{style:t}=e||{},r=`combo`in(e||{})?e.combo??null:null,i=Q(e);return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({id:i},zi(t?.x)?{x:t.x}:{}),zi(t?.y)?{y:t.y}:{}),zi(t?.z)?{z:t.z}:{}),{parentId:r}),n(i)?{isCombo:!0}:{})},e.edge=e=>({id:Q(e),source:e.source,target:e.target}),!(`onTick`in e))return e;let r=e.onTick;return e.onTick=e=>r(this.getLayoutResult(e)),e}getLayoutResult(e){let{model:t}=this.context,n={nodes:[],edges:[],combos:[]};return e.forEachNode(e=>{let r=String(e.id),i=t.isCombo(r)?n.combos:n.nodes,a=Object.assign({x:e.x,y:e.y,z:e.z??0},e.size?{size:e.size}:{});i?.push({id:r,style:a})}),e.forEachEdge(e=>{let t={controlPoints:e.points||[]};n.edges.push({id:String(e.id),source:String(e.source),target:String(e.target),style:t})}),n}}return n}function Aw(e){let{nodes:t,edges:n=[]}=e,r={nodes:[],edges:[],combos:[]};return t.forEach(e=>{let t=e.data._isCombo?r.combos:r.nodes,{x:n,y:i,z:a=0}=e.data;t?.push({id:e.id,style:{x:n,y:i,z:a}})}),n.forEach(e=>{let{id:t,source:n,target:i,data:{points:a=[],controlPoints:o=a.slice(1,a.length-1)}}=e;r.edges.push({id:t,source:n,target:i,style:Object.assign({},o?.length?{controlPoints:o.map(vy)}:{})})}),r}function jw(e){return!(`forEachNode`in e.prototype)&&!(`forEachEdge`in e.prototype)}function Mw(e,t){class n extends ww{constructor(t,n){if(super(t,n),this.instance=new e({}),this.id=this.instance.id,`stop`in this.instance&&`tick`in this.instance){let e=this.instance;this.stop=e.stop.bind(e),this.tick=t=>Aw(e.tick?.call(e,t))}}execute(e,t){return Tw(this,void 0,void 0,function*(){return Aw(yield this.instance.execute(this.graphData2LayoutModel(e),this.transformOptions(ma({},this.options,t))))})}transformOptions(e){if(!(`onTick`in e))return e;let t=e.onTick;return e.onTick=e=>t(Aw(e)),e}graphData2LayoutModel(e){let{nodes:n=[],edges:r=[],combos:i=[]}=e,a=n.map(e=>{let t=Q(e),{data:n,style:r,combo:i}=e,a=Ew(e,[`data`,`style`,`combo`]),o={id:t,data:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},n),{data:n}),i?{parentId:i}:{}),{style:r}),a)};return r?.x&&Object.assign(o.data,{x:r.x}),r?.y&&Object.assign(o.data,{y:r.y}),r?.z&&Object.assign(o.data,{z:r.z}),o}),o=new Map(a.map(e=>[e.id,e])),s=r.filter(e=>{let{source:t,target:n}=e;return o.has(t)&&o.has(n)}).map(e=>{let{source:t,target:n,data:r,style:i}=e;return{id:Q(e),source:t,target:n,data:Object.assign({},r),style:Object.assign({},i)}}),c=i.map(e=>({id:Q(e),data:Object.assign({_isCombo:!0},e.data),style:Object.assign({},e.style)})),l=new Cw({nodes:[...a,...c],edges:s});return t.model.model.hasTreeStructure(`combo`)&&(l.attachTreeStructure(e_),a.forEach(e=>{let n=t.model.model.getParent(e.id,e_);n&&l.hasNode(n.id)&&l.setParent(e.id,n.id,e_)})),l}}return n}function Nw(e,t,...n){if(t in e)return e[t](...n);if(`instance`in e){let r=e.instance;if(t in r)return r[t](...n)}return null}function Pw(e,t){if(t in e)return e[t];if(`instance`in e){let n=e.instance;if(t in n)return n[t]}return null}var Fw=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Iw=class extends gw{get forceLayoutInstance(){return this.context.layout.getLayoutInstance().find(e=>[`d3-force`,`d3-force-3d`].includes(e?.id))}validate(e){return this.context.layout?this.forceLayoutInstance?super.validate(e):(c_.warn(`DragElementForce only works with d3-force or d3-force-3d layout`),!1):!1}moveElement(e,t){return Fw(this,void 0,void 0,function*(){let n=this.forceLayoutInstance;this.context.graph.getNodeData(e).forEach((r,i)=>{let{x:a=0,y:o=0}=r.style||{};n&&Nw(n,`setFixedPosition`,e[i],[...Jv([+a,+o],this.clampByRotation(t))])})})}onDragStart(e){if(this.enable=this.validate(e),!this.enable)return;this.target=this.getSelectedNodeIDs([e.target.id]),this.hideEdge(),this.context.graph.frontElement(this.target);let t=this.forceLayoutInstance;t&&Pw(t,`simulation`).alphaTarget(.3).restart(),this.context.graph.getNodeData(this.target).forEach(e=>{let{x:n=0,y:r=0}=e.style||{};t&&Nw(t,`setFixedPosition`,Q(e),[+n,+r])})}onDrag(e){if(!this.enable)return;let t=this.getDelta(e);this.moveElement(this.target,t)}onDragEnd(){let e=this.forceLayoutInstance;e&&Pw(e,`simulation`).alphaTarget(0),!this.options.fixed&&this.context.graph.getNodeData(this.target).forEach(t=>{e&&Nw(e,`setFixedPosition`,Q(t),[null,null,null])})}},Lw=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Rw=class e extends Wv{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.isZoomEvent=e=>!!(e.data&&`scale`in e.data),this.relatedEdgeToUpdate=new Set,this.zoom=this.context.graph.getZoom(),this.fixElementSize=e=>Lw(this,void 0,void 0,function*(){if(!this.validate(e))return;let{graph:t}=this.context,{state:n,nodeFilter:r,edgeFilter:i,comboFilter:a}=this.options,o=(n?t.getElementDataByState(`node`,n):t.getNodeData()).filter(r),s=(n?t.getElementDataByState(`edge`,n):t.getEdgeData()).filter(i),c=(n?t.getElementDataByState(`combo`,n):t.getComboData()).filter(a),l=this.isZoomEvent(e)?this.zoom=Math.max(.01,Math.min(e.data.scale,10)):this.zoom,u=[...o,...c];u.length>0&&u.forEach(e=>this.fixNodeLike(e,l)),this.updateRelatedEdges(),s.length>0&&s.forEach(e=>this.fixEdge(e,l))}),this.cachedStyles=new Map,this.getOriginalFieldValue=(e,t,n)=>{let r=this.cachedStyles.get(e)||[],i=r.find(e=>e.shape===t)?.style||{};return n in i||(i[n]=t.attributes[n],this.cachedStyles.set(e,[...r.filter(e=>e.shape!==t),{shape:t,style:i}])),i[n]},this.scaleEntireElement=(e,t,n)=>{t.setLocalScale(1/n);let r=this.cachedStyles.get(e)||[];r.push({shape:t}),this.cachedStyles.set(e,r)},this.scaleSpecificShapes=(e,t,n)=>{let r=Nb(e);(Array.isArray(n)?n:[n]).forEach(n=>{let{shape:i,fields:a}=n,o=typeof i==`function`?i(r):e.getShape(i);if(o){if(!a){this.scaleEntireElement(e.id,o,t);return}a.forEach(n=>{let r=this.getOriginalFieldValue(e.id,o,n);zi(r)&&(o.style[n]=r/t)})}})},this.skipIfExceedViewport=e=>{let{viewport:t}=this.context;return!t?.isInViewport(e.getRenderBounds(),!1,30)},this.fixNodeLike=(e,t)=>{let n=Q(e),{element:r,model:i}=this.context,a=r.getElement(n);if(!a||this.skipIfExceedViewport(a))return;i.getRelatedEdgesData(n).forEach(e=>this.relatedEdgeToUpdate.add(Q(e)));let o=this.options[a.type];if(!o){this.scaleEntireElement(n,a,t);return}this.scaleSpecificShapes(a,t,o)},this.fixEdge=(e,t)=>{let n=Q(e),r=this.context.element.getElement(n);if(!r||this.skipIfExceedViewport(r))return;let i=this.options.edge;if(!i){r.style.transformOrigin=`center`,this.scaleEntireElement(n,r,t);return}this.scaleSpecificShapes(r,t,i)},this.updateRelatedEdges=()=>{let{element:e}=this.context;this.relatedEdgeToUpdate.size>0&&this.relatedEdgeToUpdate.forEach(t=>{e.getElement(t)?.update({})}),this.relatedEdgeToUpdate.clear()},this.resetTransform=e=>Lw(this,void 0,void 0,function*(){e.data?.firstRender||(this.options.reset?this.restoreCachedStyles():this.fixElementSize({data:{scale:this.zoom}}))}),this.bindEvents()}restoreCachedStyles(){if(this.cachedStyles.size>0){this.cachedStyles.forEach(e=>{e.forEach(({shape:e,style:t})=>{if(ga(t))e.setLocalScale(1);else{if(this.options.state)return;Object.entries(t).forEach(([t,n])=>e.style[t]=n)}})});let{graph:e,element:t}=this.context,n=Object.keys(Object.fromEntries(this.cachedStyles)).filter(t=>t&&e.getElementType(t)===`node`);if(n.length>0){let r=new Set;n.forEach(t=>{e.getRelatedEdgesData(t).forEach(e=>r.add(Q(e)))}),r.forEach(e=>{(t?.getElement(e))?.update({})})}}}bindEvents(){let{graph:e}=this.context;e.on(Z.AFTER_DRAW,this.resetTransform),e.on(Z.AFTER_TRANSFORM,this.fixElementSize)}unbindEvents(){let{graph:e}=this.context;e.off(Z.AFTER_DRAW,this.resetTransform),e.off(Z.AFTER_TRANSFORM,this.fixElementSize)}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return B(t)?t(e):!!t}destroy(){this.unbindEvents(),super.destroy()}};Rw.defaultOptions={enable:e=>e.data.scale<1,nodeFilter:()=>!0,edgeFilter:()=>!0,comboFilter:()=>!0,edge:[{shape:`key`,fields:[`lineWidth`]},{shape:`halo`,fields:[`lineWidth`]},{shape:`label`}],reset:!1};var zw=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Bw=class e extends Wv{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.focus=e=>zw(this,void 0,void 0,function*(){if(!this.validate(e))return;let{graph:t}=this.context;yield t.focusElement(e.target.id,this.options.animation)}),this.shortcut=new Hy(t.graph),this.bindEvents()}bindEvents(){let{graph:e}=this.context;this.unbindEvents(),Ky.forEach(t=>{e.on(`${t}:${X.CLICK}`,this.focus)})}validate(e){if(this.destroyed||!this.isKeydown())return!1;let{enable:t}=this.options;return B(t)?t(e):!!t}isKeydown(){let{trigger:e}=this.options;return e?.length?this.shortcut.match(e):!0}unbindEvents(){let{graph:e}=this.context;Ky.forEach(t=>{e.off(`${t}:${X.CLICK}`,this.focus)})}destroy(){this.unbindEvents(),this.shortcut.destroy(),super.destroy()}};Bw.defaultOptions={animation:{easing:`ease-in`,duration:500},enable:!0,trigger:[]};var Vw=class e extends Wv{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.isFrozen=!1,this.toggleFrozen=e=>{this.isFrozen=e.type===`dragstart`},this.hoverElement=e=>{if(!this.validate(e))return;let t=e.type===X.POINTER_ENTER;this.updateElementsState(e,t);let{onHover:n,onHoverEnd:r}=this.options;t?n?.(e):r?.(e)},this.updateElementsState=(e,t)=>{if(!this.options.state&&!this.options.inactiveState)return;let{graph:n}=this.context,{state:r,animation:i,inactiveState:a}=this.options,o=this.getActiveIds(e),s={};if(r&&Object.assign(s,this.getElementsState(o,r,t)),a){let e=Av(n.getData(),!0).filter(e=>!o.includes(e));Object.assign(s,this.getElementsState(e,a,t))}n.setElementState(s,i)},this.getElementsState=(e,t,n)=>{let{graph:r}=this.context,i={};return e.forEach(e=>{let a=r.getElementState(e);n?i[e]=a.includes(t)?a:[...a,t]:i[e]=a.filter(e=>e!==t)}),i},this.bindEvents()}bindEvents(){let{graph:e}=this.context;this.unbindEvents(),Ky.forEach(t=>{e.on(`${t}:${X.POINTER_ENTER}`,this.hoverElement),e.on(`${t}:${X.POINTER_LEAVE}`,this.hoverElement)});let t=this.context.canvas.document;t.addEventListener(`${X.DRAG_START}`,this.toggleFrozen),t.addEventListener(`${X.DRAG_END}`,this.toggleFrozen)}getActiveIds(e){let{graph:t}=this.context,{degree:n,direction:r}=this.options,i=e.target.id;return n?Yy(t,e.targetType,i,typeof n==`function`?n(e):n,r):[i]}validate(e){if(this.destroyed||this.isFrozen||ew(e.target)||this.context.graph.isCollapsingExpanding)return!1;let{enable:t}=this.options;return B(t)?t(e):!!t}unbindEvents(){let{graph:e}=this.context;Ky.forEach(t=>{e.off(`${t}:${X.POINTER_ENTER}`,this.hoverElement),e.off(`${t}:${X.POINTER_LEAVE}`,this.hoverElement)});let t=this.context.canvas.document;t.removeEventListener(`${X.DRAG_START}`,this.toggleFrozen),t.removeEventListener(`${X.DRAG_END}`,this.toggleFrozen)}destroy(){this.unbindEvents(),super.destroy()}};Vw.defaultOptions={animation:!1,enable:!0,degree:0,direction:`both`,state:`active`,inactiveState:void 0};var Hw=class extends Uy{onPointerDown(e){if(!super.validate(e)||!super.isKeydown()||this.points)return;let{canvas:t,graph:n}=this.context;this.pathShape=new fm({id:`g6-lasso-select`,style:this.options.style}),t.appendChild(this.pathShape),this.points=[Wy(e,n)]}onPointerMove(e){var t;if(!this.points)return;let{immediately:n,mode:r}=this.options;this.points.push(Wy(e,this.context.graph)),(t=this.pathShape)==null||t.setAttribute(`d`,Tb(this.points)),n&&r===`default`&&this.points.length>2&&super.updateElementsStates(this.points)}onPointerUp(){if(this.points){if(this.points.length<2){this.clearLasso();return}super.updateElementsStates(this.points),this.clearLasso()}}clearLasso(){var e;(e=this.pathShape)==null||e.remove(),this.pathShape=void 0,this.points=void 0}},Uw=class e extends Wv{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.hiddenShapes=[],this.isVisible=!0,this.setElementsVisibility=(e,t,n)=>{e.filter(Boolean).forEach(e=>{t===`hidden`&&!e.isVisible()?this.hiddenShapes.push(e):t===`visible`&&this.hiddenShapes.includes(e)?this.hiddenShapes.splice(this.hiddenShapes.indexOf(e),1):Bv(e,t,n)})},this.filterShapes=(e,t)=>{if(B(t))return n=>!t(e,n);let n=t?.[e];return e=>e.className?!n?.includes(e.className):!0},this.hideShapes=e=>{if(!this.validate(e)||!this.isVisible)return;let{element:t}=this.context,{shapes:n={}}=this.options;this.setElementsVisibility(t.getNodes(),`hidden`,this.filterShapes(`node`,n)),this.setElementsVisibility(t.getEdges(),`hidden`,this.filterShapes(`edge`,n)),this.setElementsVisibility(t.getCombos(),`hidden`,this.filterShapes(`combo`,n)),this.isVisible=!1},this.showShapes=sa(e=>{if(!this.validate(e)||this.isVisible)return;let{element:t}=this.context;this.setElementsVisibility(t.getNodes(),`visible`),this.setElementsVisibility(t.getEdges(),`visible`),this.setElementsVisibility(t.getCombos(),`visible`),this.isVisible=!0},this.options.debounce),this.bindEvents()}bindEvents(){let{graph:e}=this.context;e.on(Z.BEFORE_TRANSFORM,this.hideShapes),e.on(Z.AFTER_TRANSFORM,this.showShapes)}unbindEvents(){let{graph:e}=this.context;e.off(Z.BEFORE_TRANSFORM,this.hideShapes),e.off(Z.AFTER_TRANSFORM,this.showShapes)}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return B(t)?t(e):!!t}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}};Uw.defaultOptions={enable:!0,debounce:200,shapes:e=>e===`node`};var Ww=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Gw=class e extends Wv{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.onWheel=e=>Ww(this,void 0,void 0,function*(){this.options.preventDefault&&e.preventDefault();let t=e.deltaX,n=e.deltaY;yield this.scroll([-t,-n],e)}),this.shortcut=new Hy(t.graph),this.bindEvents()}update(e){super.update(e),this.bindEvents()}bindEvents(){var e,t;let{trigger:n}=this.options;if(this.shortcut.unbindAll(),wi(n)){(e=this.graphDom)==null||e.removeEventListener(X.WHEEL,this.onWheel);let{up:t=[],down:r=[],left:i=[],right:a=[]}=n;this.shortcut.bind(t,e=>this.scroll([0,-10],e)),this.shortcut.bind(r,e=>this.scroll([0,10],e)),this.shortcut.bind(i,e=>this.scroll([-10,0],e)),this.shortcut.bind(a,e=>this.scroll([10,0],e))}else (t=this.graphDom)==null||t.addEventListener(X.WHEEL,this.onWheel,{passive:!1})}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}formatDisplacement(e){let{sensitivity:t}=this.options;return e=Xv(e,t),e=this.clampByDirection(e),e=this.clampByRange(e),e}clampByDirection([e,t]){let{direction:n}=this.options;return n===`x`?t=0:n===`y`&&(e=0),[e,t]}clampByRange([e,t]){let{viewport:n,canvas:r}=this.context,[i,a]=r.getSize(),[o,s,c,l]=M_(this.options.range),u=[a*o,i*s,a*c,i*l],d=z_(R_(n.getCanvasCenter()),u),f=Yv(n.getViewportCenter(),[e,t,0]);if(!H_(f,d)){let{min:[n,r],max:[i,a]}=d;(f[0]<n&&e>0||f[0]>i&&e<0)&&(e=0),(f[1]<r&&t>0||f[1]>a&&t<0)&&(t=0)}return[e,t]}scroll(e,t){return Ww(this,void 0,void 0,function*(){if(!this.validate(t))return;let{onFinish:n}=this.options,r=this.context.graph,i=this.formatDisplacement(e);yield r.translateBy(i,!1),n?.()})}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return B(t)?t(e):!!t}destroy(){var e;this.shortcut.destroy(),(e=this.graphDom)==null||e.removeEventListener(X.WHEEL,this.onWheel),super.destroy()}};Gw.defaultOptions={enable:!0,sensitivity:1,preventDefault:!0,range:1/0};var Kw=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},qw=class e extends Wv{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.zoom=(e,t,n)=>Kw(this,void 0,void 0,function*(){if(!this.validate(t))return;let{graph:r}=this.context,i=this.options.origin;!i&&`viewport`in t&&(i=vy(t.viewport));let{sensitivity:a,onFinish:o}=this.options,s=1+Ri(e,-50,50)*a/100,c=r.getZoom();yield r.zoomTo(c*s,n,i),o?.()}),this.onReset=()=>Kw(this,void 0,void 0,function*(){yield this.context.graph.zoomTo(1,this.options.animation)}),this.preventDefault=e=>{this.options.preventDefault&&e.preventDefault()},this.shortcut=new Hy(t.graph),this.bindEvents()}update(e){super.update(e),this.bindEvents()}bindEvents(){let{trigger:e}=this.options;if(this.shortcut.unbindAll(),Array.isArray(e)&&(e.includes(X.PINCH)?this.shortcut.bind([X.PINCH],e=>{this.zoom(e.scale,e,!1)}):(this.context.canvas.getContainer()?.addEventListener(X.WHEEL,this.preventDefault),this.shortcut.bind([...e,X.WHEEL],e=>{let{deltaX:t,deltaY:n}=e;this.zoom(-(n??t),e,!1)}))),typeof e==`object`){let{zoomIn:t=[],zoomOut:n=[],reset:r=[]}=e;this.shortcut.bind(t,e=>this.zoom(10,e,this.options.animation)),this.shortcut.bind(n,e=>this.zoom(-10,e,this.options.animation)),this.shortcut.bind(r,this.onReset)}}validate(e){if(this.destroyed)return!1;let{enable:t}=this.options;return B(t)?t(e):!!t}destroy(){var e;this.shortcut.destroy(),(e=this.context.canvas.getContainer())==null||e.removeEventListener(X.WHEEL,this.preventDefault),super.destroy()}};qw.defaultOptions={animation:{duration:200},enable:!0,sensitivity:1,trigger:[],preventDefault:!0};function Jw(e,t,n,r=`height`){let i=e[r],a=t[r];return n===`center`?(i+a)/2:e.height}var Yw=Object.assign,Xw={getId:e=>e.id||e.name,getPreH:e=>e.preH||0,getPreV:e=>e.preV||0,getHGap:e=>e.hgap||18,getVGap:e=>e.vgap||18,getChildren:e=>e.children,getHeight:e=>e.height||36,getWidth(e){let t=e.label||` `;return e.width||18*t.split(``).length}},Zw=class e{constructor(t,n){if(this.x=0,this.y=0,this.depth=0,this.children=[],this.hgap=0,this.vgap=0,t instanceof e||`x`in t&&`y`in t&&`children`in t){let e=t;this.data=e.data,this.id=e.id,this.x=e.x,this.y=e.y,this.width=e.width,this.height=e.height,this.depth=e.depth,this.children=e.children,this.parent=e.parent,this.hgap=e.hgap,this.vgap=e.vgap,this.preH=e.preH,this.preV=e.preV;return}this.data=t;let r=n.getHGap(t),i=n.getVGap(t);this.preH=n.getPreH(t),this.preV=n.getPreV(t),this.width=n.getWidth(t),this.height=n.getHeight(t),this.width+=this.preH,this.height+=this.preV,this.id=n.getId(t),this.addGap(r,i)}isRoot(){return this.depth===0}isLeaf(){return this.children.length===0}addGap(e,t){this.hgap+=e,this.vgap+=t,this.width+=2*e,this.height+=2*t}eachNode(e){let t,n=[this];for(;t=n.shift();)e(t),n=t.children.concat(n)}DFTraverse(e){this.eachNode(e)}BFTraverse(e){let t,n=[this];for(;t=n.shift();)e(t),n=n.concat(t.children)}getBoundingBox(){let e={left:Number.MAX_VALUE,top:Number.MAX_VALUE,width:0,height:0};return this.eachNode(t=>{e.left=Math.min(e.left,t.x),e.top=Math.min(e.top,t.y),e.width=Math.max(e.width,t.x+t.width),e.height=Math.max(e.height,t.y+t.height)}),e}translate(e=0,t=0){this.eachNode(n=>{n.x+=e,n.y+=t,n.x+=n.preH,n.y+=n.preV})}right2left(){let e=this.getBoundingBox();this.eachNode(t=>{t.x=t.x-2*(t.x-e.left)-t.width}),this.translate(e.width,0)}bottom2top(){let e=this.getBoundingBox();this.eachNode(t=>{t.y=t.y-2*(t.y-e.top)-t.height}),this.translate(0,e.height)}};function Qw(e,t={},n){t=Yw({},Xw,t);let r=new Zw(e,t),i=[r],a;if(!n&&!e.collapsed){for(;a=i.shift();)if(!a.data.collapsed){let e=t.getChildren(a.data),n=e?e.length:0;if(a.children=Array(n),e&&n)for(let r=0;r<n;r++){let n=new Zw(e[r],t);a.children[r]=n,i.push(n),n.parent=a,n.depth=a.depth+1}}}return r}var $w=class{constructor(e,t={}){this.options=t,this.rootNode=Qw(e,t)}execute(){throw Error(`please override this method`)}},eT=class e{constructor(e=0,t=0,n=0,r=[]){this.x=0,this.prelim=0,this.mod=0,this.shift=0,this.change=0,this.tl=null,this.tr=null,this.el=null,this.er=null,this.msel=0,this.mser=0,this.w=e||0,this.h=t||0,this.y=n||0,this.c=r||[],this.cs=r.length}static fromNode(t,n){if(!t)return null;let r=[];return t.children.forEach(t=>{let i=e.fromNode(t,n);i&&r.push(i)}),n?new e(t.height,t.width,t.x,r):new e(t.width,t.height,t.y,r)}};function tT(e,t,n){n?e.y+=t:e.x+=t,e.children.forEach(e=>{tT(e,t,n)})}function nT(e,t){let n=t?e.y:e.x;return e.children.forEach(e=>{n=Math.min(nT(e,t),n)}),n}function rT(e,t){tT(e,-nT(e,t),t)}function iT(e,t,n){n?t.y=e.x:t.x=e.x,e.c.forEach((e,r)=>{iT(e,t.children[r],n)})}function aT(e,t,n=0){t?(e.x=n,n+=e.width):(e.y=n,n+=e.height),e.children.forEach(e=>{aT(e,t,n)})}function oT(e,t={}){let n=t.isHorizontal;function r(e){e.cs===0?(e.el=e,e.er=e,e.msel=e.mser=0):(e.el=e.c[0].el,e.msel=e.c[0].msel,e.er=e.c[e.cs-1].er,e.mser=e.c[e.cs-1].mser)}function i(e,t,n){let r=e.c[t-1],i=r.mod,l=e.c[t],u=l.mod;for(;r!==null&&l!==null;){n&&c(r)>n.low&&(n=n.nxt);let d=i+r.prelim+r.w-(u+l.prelim);d>0&&(u+=d,n&&a(e,t,n.index,d));let f=c(r),p=c(l);f<=p&&(r=s(r),r!==null&&(i+=r.mod)),f>=p&&(l=o(l),l!==null&&(u+=l.mod))}!r&&l?function(e,t,n,r){let i=e.c[0].el;i.tl=n;let a=r-n.mod-e.c[0].msel;i.mod+=a,i.prelim-=a,e.c[0].el=e.c[t].el,e.c[0].msel=e.c[t].msel}(e,t,l,u):r&&!l&&function(e,t,n,r){let i=e.c[t].er;i.tr=n;let a=r-n.mod-e.c[t].mser;i.mod+=a,i.prelim-=a,e.c[t].er=e.c[t-1].er,e.c[t].mser=e.c[t-1].mser}(e,t,r,i)}function a(e,t,n,r){e.c[t].mod+=r,e.c[t].msel+=r,e.c[t].mser+=r,function(e,t,n,r){if(n!==t-1){let i=t-n;e.c[n+1].shift+=r/i,e.c[t].shift-=r/i,e.c[t].change-=r-r/i}}(e,t,n,r)}function o(e){return e.cs===0?e.tl:e.c[0]}function s(e){return e.cs===0?e.tr:e.c[e.cs-1]}function c(e){return e.y+e.h}function l(e,t,n){for(;n!==null&&e>=n.low;)n=n.nxt;return{low:e,index:t,nxt:n}}aT(e,n);let u=eT.fromNode(e,n);return u&&(function e(t){if(t.cs===0)return void r(t);e(t.c[0]);let n=l(c(t.c[0].el),0,null);for(let r=1;r<t.cs;++r){e(t.c[r]);let a=c(t.c[r].er);i(t,r,n),n=l(a,r,n)}(function(e){e.prelim=(e.c[0].prelim+e.c[0].mod+e.c[e.cs-1].mod+e.c[e.cs-1].prelim+e.c[e.cs-1].w)/2-e.w/2})(t),r(t)}(u),function e(t,n){n+=t.mod,t.x=t.prelim+n,function(e){let t=0,n=0;for(let r=0;r<e.cs;r++)t+=e.c[r].shift,n+=t+e.c[r].change,e.c[r].mod+=n}(t);for(let r=0;r<t.cs;r++)e(t.c[r],n)}(u,0),iT(u,e,n),rT(e,n)),e}function sT(e,t){let n=Qw(e.data,t,!0),r=Qw(e.data,t,!0),i=e.children.length,a=Math.round(i/2),o=t.getSide||function(e,t){return t<a?`right`:`left`};for(let t=0;t<i;t++){let i=e.children[t];o(i,t)===`right`?r.children.push(i):n.children.push(i)}return n.eachNode(e=>{e.isRoot()||(e.side=`left`)}),r.eachNode(e=>{e.isRoot()||(e.side=`right`)}),{left:n,right:r}}var cT=[`LR`,`RL`,`TB`,`BT`,`H`,`V`],lT=[`LR`,`RL`,`H`],uT=cT[0];function dT(e,t,n){let r=t.direction||uT;if(t.isHorizontal=(e=>lT.indexOf(e)>-1)(r),r&&cT.indexOf(r)===-1)throw TypeError(`Invalid direction: ${r}`);if(r===cT[0])n(e,t);else if(r===cT[1])n(e,t),e.right2left();else if(r===cT[2])n(e,t);else if(r===cT[3])n(e,t),e.bottom2top();else if(r===cT[4]||r===cT[5]){let{left:r,right:i}=sT(e,t);n(r,t),n(i,t),t.isHorizontal?r.right2left():r.bottom2top(),i.translate(r.x-i.x,r.y-i.y),e.x=r.x,e.y=i.y;let a=e.getBoundingBox();t.isHorizontal?a.top<0&&e.translate(0,-a.top):a.left<0&&e.translate(-a.left,0)}let i=t.fixedRoot;return i===void 0&&(i=!0),i&&e.translate(-(e.x+e.width/2+e.hgap),-(e.y+e.height/2+e.vgap)),function(e,t){if(t.radial){let[n,r]=t.isHorizontal?[`x`,`y`]:[`y`,`x`],i={x:1/0,y:1/0},a={x:-1/0,y:-1/0},o=0;e.DFTraverse(e=>{o++;let{x:t,y:n}=e;i.x=Math.min(i.x,t),i.y=Math.min(i.y,n),a.x=Math.max(a.x,t),a.y=Math.max(a.y,n)});let s=a[r]-i[r];if(s===0)return;let c=2*Math.PI/o;e.DFTraverse(t=>{let a=t[r],o=i[r],l=t[n],u=e[n],d=(a-o)/s*(2*Math.PI-c)+c,f=l-u;t.x=Math.cos(d)*f,t.y=Math.sin(d)*f})}}(e,t),e}var fT=class extends $w{execute(){return dT(this.rootNode,this.options,oT)}},pT={};function mT(e,t){return new fT(e,Yw({},pT,t)).execute()}var hT=class{constructor(e=0,t=[]){this.x=0,this.y=0,this.leftChild=null,this.rightChild=null,this.isLeaf=!1,this.height=e,this.children=t}},gT={isHorizontal:!0,nodeSep:20,nodeSize:20,rankSep:200,subTreeSep:10};function _T(e,t,n){n?(t.x=e.x,t.y=e.y):(t.x=e.y,t.y=e.x),e.children.forEach((e,r)=>{_T(e,t.children[r],n)})}function vT(e,t={}){let n=Yw({},gT,t),r=0,i=null,a=function e(t){t.width=0,t.depth&&t.depth>r&&(r=t.depth);let n=t.children,i=n.length,a=new hT(0,[]);return n.forEach((t,n)=>{let r=e(t);a.children.push(r),n===0&&(a.leftChild=r),n===i-1&&(a.rightChild=r)}),a.originNode=t,a.isLeaf=t.isLeaf(),a}(e);return function e(t){if(t.isLeaf||t.children.length===0)t.drawingDepth=r;else{let n=t.children.map(t=>e(t));t.drawingDepth=Math.min(...n)-1}return t.drawingDepth}(a),function e(t){t.x=t.drawingDepth*n.rankSep,t.isLeaf?(t.y=0,i&&(t.y=i.y+i.height+n.nodeSep,t.originNode.parent!==i.originNode.parent&&(t.y+=n.subTreeSep)),i=t):(t.children.forEach(t=>{e(t)}),t.y=(t.leftChild.y+t.rightChild.y)/2)}(a),_T(a,e,n.isHorizontal),e}var yT=class extends $w{execute(){return this.rootNode.width=0,dT(this.rootNode,this.options,vT)}},bT={};function xT(e,t){return new yT(e,Yw({},bT,t)).execute()}function ST(e,t,n,r){let i=null;e.eachNode(e=>{(function(e,t,n,r,i){let a=(typeof n==`function`?n(e):n)*e.depth;if(!r)try{if(e.parent&&e.id===e.parent.children[0].id)return e.x+=a,void(e.y=t?t.y:0)}catch{}if(e.x+=a,t){if(e.y=t.y+Jw(t,e,i),t.parent&&e.parent&&e.parent.id!==t.parent.id){let n=t.parent,r=n.y+Jw(n,e,i);e.y=r>e.y?r:e.y}}else e.y=0})(e,i,t,n,r),i=e})}var CT=[`LR`,`RL`,`H`],wT=CT[0],TT=class extends $w{execute(){let e=this.options,t=this.rootNode;e.isHorizontal=!0;let{indent:n=20,dropCap:r=!0,direction:i=wT,align:a}=e;if(i&&CT.indexOf(i)===-1)throw TypeError(`Invalid direction: ${i}`);if(i===CT[0])ST(t,n,r,a);else if(i===CT[1])ST(t,n,r,a),t.right2left();else if(i===CT[2]){let{left:i,right:o}=sT(t,e);ST(i,n,r,a),i.right2left(),ST(o,n,r,a);let s=i.getBoundingBox();o.translate(s.width,0),t.x=o.x-t.width/2}return t}},ET={};function DT(e,t){return new TT(e,Yw({},ET,t)).execute()}function OT(e,t){let n=0;return e.children.length?e.children.forEach(e=>{n+=OT(e,t)}):n=e.height,e._subTreeSep=t.getSubTreeSep(e.data),e.totalHeight=Math.max(e.height,n)+2*e._subTreeSep,e.totalHeight}function kT(e){let t=e.children,n=t.length;if(n){t.forEach(e=>{kT(e)});let r=t[0],i=t[n-1],a=i.y-r.y+i.height,o=0;if(t.forEach(e=>{o+=e.totalHeight}),a>e.height)e.y=r.y+a/2-e.height/2;else if(t.length!==1||e.height>o){let n=e.y+(e.height-a)/2-r.y;t.forEach(e=>{e.translate(0,n)})}else e.y=(r.y+r.height/2+i.y+i.height/2)/2-e.height/2}}var AT={getSubTreeSep:()=>0};function jT(e,t={}){return t=Yw({},AT,t),e.parent={x:0,width:0,height:0,y:0},e.BFTraverse(e=>{e.x=e.parent.x+e.parent.width}),e.parent=void 0,OT(e,t),e.startY=0,e.y=e.totalHeight/2-e.height/2,e.eachNode(e=>{let t=e.children,n=t.length;if(n){let r=t[0];if(r.startY=e.startY+e._subTreeSep,n===1)r.y=e.y+e.height/2-r.height/2;else{r.y=r.startY+r.totalHeight/2-r.height/2;for(let e=1;e<n;e++){let n=t[e];n.startY=t[e-1].startY+t[e-1].totalHeight,n.y=n.startY+n.totalHeight/2-n.height/2}}}}),kT(e),e}var MT=class extends $w{execute(){return dT(this.rootNode,this.options,jT)}},NT={};function PT(e,t){return new MT(e,Yw({},NT,t)).execute()}function FT(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n}function IT(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})}var LT={abs:Math.abs,ceil:Math.ceil,floor:Math.floor,max:Math.max,min:Math.min,round:Math.round,sqrt:Math.sqrt,pow:Math.pow},RT=class extends Error{constructor(e,t,n){super(e),this.position=t,this.token=n,this.name=`ExpressionError`}},zT;(function(e){e[e.STRING=0]=`STRING`,e[e.NUMBER=1]=`NUMBER`,e[e.BOOLEAN=2]=`BOOLEAN`,e[e.NULL=3]=`NULL`,e[e.IDENTIFIER=4]=`IDENTIFIER`,e[e.OPERATOR=5]=`OPERATOR`,e[e.FUNCTION=6]=`FUNCTION`,e[e.DOT=7]=`DOT`,e[e.BRACKET_LEFT=8]=`BRACKET_LEFT`,e[e.BRACKET_RIGHT=9]=`BRACKET_RIGHT`,e[e.PAREN_LEFT=10]=`PAREN_LEFT`,e[e.PAREN_RIGHT=11]=`PAREN_RIGHT`,e[e.COMMA=12]=`COMMA`,e[e.QUESTION=13]=`QUESTION`,e[e.COLON=14]=`COLON`,e[e.DOLLAR=15]=`DOLLAR`})(zT||={});var BT=new Set([32,9,10,13]),VT=new Set([43,45,42,47,37,33,38,124,61,60,62]),HT=new Map([[`true`,zT.BOOLEAN],[`false`,zT.BOOLEAN],[`null`,zT.NULL]]),UT=new Map([[`===`,!0],[`!==`,!0],[`<=`,!0],[`>=`,!0],[`&&`,!0],[`||`,!0],[`+`,!0],[`-`,!0],[`*`,!0],[`/`,!0],[`%`,!0],[`!`,!0],[`<`,!0],[`>`,!0]]),WT=new Map([[46,zT.DOT],[91,zT.BRACKET_LEFT],[93,zT.BRACKET_RIGHT],[40,zT.PAREN_LEFT],[41,zT.PAREN_RIGHT],[44,zT.COMMA],[63,zT.QUESTION],[58,zT.COLON],[36,zT.DOLLAR]]),GT=new Map;for(let[e,t]of WT.entries())GT.set(e,{type:t,value:String.fromCharCode(e)});function KT(e){return e>=48&&e<=57}function qT(e){return e>=97&&e<=122||e>=65&&e<=90||e===95}function JT(e){return qT(e)||KT(e)}function YT(e){return VT.has(e)}var XT;(function(e){e[e.Program=0]=`Program`,e[e.Literal=1]=`Literal`,e[e.Identifier=2]=`Identifier`,e[e.MemberExpression=3]=`MemberExpression`,e[e.CallExpression=4]=`CallExpression`,e[e.BinaryExpression=5]=`BinaryExpression`,e[e.UnaryExpression=6]=`UnaryExpression`,e[e.ConditionalExpression=7]=`ConditionalExpression`})(XT||={});var ZT=new Map([[`||`,2],[`&&`,3],[`===`,4],[`!==`,4],[`>`,5],[`>=`,5],[`<`,5],[`<=`,5],[`+`,6],[`-`,6],[`*`,7],[`/`,7],[`%`,7],[`!`,8]]),QT={type:XT.Literal,value:null},$T={type:XT.Literal,value:!0},eE={type:XT.Literal,value:!1},tE=e=>{let t=0,n=e.length,r=()=>t>=n?null:e[t],i=()=>e[t++],a=e=>{let t=r();return t!==null&&t.type===e},o=e=>e.type===zT.OPERATOR?ZT.get(e.value)||-1:e.type===zT.DOT||e.type===zT.BRACKET_LEFT?9:e.type===zT.QUESTION?1:-1,s=e=>{let n,o;if(i().type===zT.DOT){if(!a(zT.IDENTIFIER)){let e=r();throw new RT(`Expected property name`,t,e?e.value:`<end of input>`)}let e=i();n={type:XT.Identifier,name:e.value},o=!1}else{if(n=l(0),!a(zT.BRACKET_RIGHT)){let e=r();throw new RT(`Expected closing bracket`,t,e?e.value:`<end of input>`)}i(),o=!0}return{type:XT.MemberExpression,object:e,property:n,computed:o}},c=()=>{let e=r();if(!e)throw new RT(`Unexpected end of input`,t,`<end of input>`);if(e.type===zT.OPERATOR&&(e.value===`!`||e.value===`-`)){i();let t=c();return{type:XT.UnaryExpression,operator:e.value,argument:t,prefix:!0}}switch(e.type){case zT.NUMBER:return i(),{type:XT.Literal,value:Number(e.value)};case zT.STRING:return i(),{type:XT.Literal,value:e.value};case zT.BOOLEAN:return i(),e.value===`true`?$T:eE;case zT.NULL:return i(),QT;case zT.IDENTIFIER:return i(),{type:XT.Identifier,name:e.value};case zT.FUNCTION:return(()=>{let e=i(),n=[];if(!a(zT.PAREN_LEFT)){let e=r();throw new RT(`Expected opening parenthesis after function name`,t,e?e.value:`<end of input>`)}for(i();;){if(a(zT.PAREN_RIGHT)){i();break}if(!r()){let e=r();throw new RT(`Expected closing parenthesis`,t,e?e.value:`<end of input>`)}if(n.length>0){if(!a(zT.COMMA)){let e=r();throw new RT(`Expected comma between function arguments`,t,e?e.value:`<end of input>`)}i()}let e=l(0);n.push(e)}return{type:XT.CallExpression,callee:{type:XT.Identifier,name:e.value},arguments:n}})();case zT.PAREN_LEFT:{i();let e=l(0);if(!a(zT.PAREN_RIGHT)){let e=r();throw new RT(`Expected closing parenthesis`,t,e?e.value:`<end of input>`)}return i(),e}default:throw new RT(`Unexpected token: ${e.type}`,t,e.value)}},l=(u=0)=>{let d=c();for(;t<n;){let n=e[t],c=o(n);if(c<=u)break;if(n.type!==zT.QUESTION)if(n.type!==zT.OPERATOR){if(n.type!==zT.DOT&&n.type!==zT.BRACKET_LEFT)break;d=s(d)}else{i();let e=l(c);d={type:XT.BinaryExpression,operator:n.value,left:d,right:e}}else{i();let e=l(0);if(!a(zT.COLON)){let e=r();throw new RT(`Expected : in conditional expression`,t,e?e.value:`<end of input>`)}i();let n=l(0);d={type:XT.ConditionalExpression,test:d,consequent:e,alternate:n}}}return d},u=l();return{type:XT.Program,body:u}},nE=(e,t,n)=>{let r=t;n&&(r={...t,context:{...t.context,...n}});let i=e=>{switch(e.type){case XT.Literal:return(e=>e.value)(e);case XT.Identifier:return(e=>{if(!(e.name in r.context))throw new RT(`Undefined variable: ${e.name}`);return r.context[e.name]})(e);case XT.MemberExpression:return(e=>{let t=i(e.object);if(t==null)throw new RT(`Cannot access property of null or undefined`);return t[e.computed?i(e.property):e.property.name]})(e);case XT.CallExpression:return(e=>{let t=r.functions[e.callee.name];if(!t)throw new RT(`Undefined function: ${e.callee.name}`);return t(...e.arguments.map((e=>i(e))))})(e);case XT.BinaryExpression:return(e=>{if(e.operator===`&&`)return i(e.left)&&i(e.right);if(e.operator===`||`)return i(e.left)||i(e.right);let t=i(e.left),n=i(e.right);switch(e.operator){case`+`:return t+n;case`-`:return t-n;case`*`:return t*n;case`/`:return t/n;case`%`:return t%n;case`===`:return t===n;case`!==`:return t!==n;case`>`:return t>n;case`>=`:return t>=n;case`<`:return t<n;case`<=`:return t<=n;default:throw new RT(`Unknown operator: ${e.operator}`)}})(e);case XT.UnaryExpression:return(e=>{let t=i(e.argument);if(e.prefix)switch(e.operator){case`!`:return!t;case`-`:if(typeof t!=`number`)throw new RT(`Cannot apply unary - to non-number: ${t}`);return-t;default:throw new RT(`Unknown operator: ${e.operator}`)}throw new RT(`Postfix operators are not supported: ${e.operator}`)})(e);case XT.ConditionalExpression:return(e=>i(i(e.test)?e.consequent:e.alternate))(e);default:throw new RT(`Evaluation error: Unsupported node type: ${e.type}`)}};return i(e.body)};function rE(e){let t=tE((e=>{let t=e,n=t.length,r=Array(Math.ceil(n/3)),i=0,a=0;function o(e){let r=a+1;a++;let i=``,o=!1;for(;a<n;){let n=t.charCodeAt(a);if(n===e)return o||(i=t.substring(r,a)),a++,{type:zT.STRING,value:i};n===92?(o||=(i=t.substring(r,a),!0),a++,i+=t[a]):o&&(i+=t[a]),a++}throw new RT(`Unterminated string starting with ${String.fromCharCode(e)}`,a,t.substring(Math.max(0,a-10),a))}function s(){let e=a;for(t.charCodeAt(a)===45&&a++;a<n&&KT(t.charCodeAt(a));)a++;if(a<n&&t.charCodeAt(a)===46)for(a++;a<n&&KT(t.charCodeAt(a));)a++;let r=t.slice(e,a);return{type:zT.NUMBER,value:r}}function c(){a++;let e=a;if(a<n&&qT(t.charCodeAt(a)))for(a++;a<n&&JT(t.charCodeAt(a));)a++;let r=t.slice(e,a);return{type:zT.FUNCTION,value:r}}function l(){let e=a++;for(;a<n&&JT(t.charCodeAt(a));)a++;let r=t.slice(e,a),i=HT.get(r);return i?{type:i,value:r}:{type:zT.IDENTIFIER,value:r}}function u(){if(a+2<n){let e=t.substring(a,a+3);if(UT.has(e))return a+=3,{type:zT.OPERATOR,value:e}}if(a+1<n){let e=t.substring(a,a+2);if(UT.has(e))return a+=2,{type:zT.OPERATOR,value:e}}let e=t[a];if(UT.has(e))return a++,{type:zT.OPERATOR,value:e};throw new RT(`Unknown operator at position ${a}: ${t.substring(a,a+1)}`,a,t.substring(Math.max(0,a-10),a))}for(;a<n;){let e=t.charCodeAt(a);if(d=e,BT.has(d)){a++;continue}let f=GT.get(e);if(f)r[i++]=f,a++;else if(e!==34&&e!==39)if(KT(e)||e===45&&a+1<n&&KT(t.charCodeAt(a+1)))r[i++]=s();else if(e!==64)if(qT(e))r[i++]=l();else{if(!YT(e))throw new RT(`Unexpected character: ${t[a]}`,a,t.substring(Math.max(0,a-10),a));r[i++]=u()}else r[i++]=c();else r[i++]=o(e)}var d;return i===r.length?r:r.slice(0,i)})(e)),n=((e={},t={})=>({context:e,functions:t}))({},LT);return(e={})=>nE(t,n,e)}function iE(e,t={}){return rE(e)(t)}function aE(e,t){if(typeof e!=`string`)return;let n=e.trim();if(n)try{return rE(n),iE(n,t)}catch{return}}function oE(e){return typeof e==`number`}function sE(e){if(!e)return[0,0,0];if(oE(e))return[e,e,e];if(Array.isArray(e)&&e.length===0)return[0,0,0];let[t,n=t,r=t]=e;return[t,n,r]}function cE(e){return oE(e)?!0:Array.isArray(e)?e.every(e=>oE(e)):!1}function lE(e){return e==null}function uE(e){return typeof e==`string`}function dE(e){return typeof e==`function`}function fE(e,t){if(typeof e==`function`)return e;if(typeof e==`string`){let n=e;return(...e)=>{let r={};for(let n=0;n<t.length;n++)r[t[n]]=e[n];return aE(n,r)}}return()=>e}function pE(e,t,n=`node`){if(lE(e))return()=>t;if(uE(e)){let r=fE(e,[n]);return e=>{let n=r(e);return oE(n)?n:t}}return dE(e)?e:oE(e)?()=>e:()=>t}function mE(e,t=10,n=`node`){if(lE(e))return()=>t;if(uE(e)){let r=fE(e,[n]);return e=>{let n=r(e);return cE(n)?n:t}}return dE(e)?e:oE(e)||Array.isArray(e)?()=>e:()=>t}var hE=(e,t,n=10,r=0)=>{let i=mE(t,r),a=mE(e,n);return e=>{let[t,n,r]=sE(a(e)),[o,s,c]=sE(i(e));return[t+o,n+s,r+c]}};function gE(e){return[e.x,e.y,e.z??0]}var _E=class{constructor(e,t={}){this.edgeIdCounter=new Map,this.nodeMap=bE(e.nodes,t.node),this.edgeMap=xE(e.edges||[],t.edge,this.getEdgeId.bind(this))}data(){return{nodes:this.nodeMap,edges:this.edgeMap}}replace(e){this.nodeMap=e.nodes,this.edgeMap=e.edges,this.clearCache()}nodes(){return Array.from(this.nodeMap.values())}node(e){return this.nodeMap.get(e)}nodeAt(e){this.indexNodeCache||this.buildNodeIndexCache();let t=this.indexNodeCache.get(e);return t?this.nodeMap.get(t):void 0}nodeIndexOf(e){return this.nodeIndexCache||this.buildNodeIndexCache(),this.nodeIndexCache.get(e)??-1}firstNode(){return this.nodeMap.values().next().value}forEachNode(e){let t=0;this.nodeMap.forEach(n=>e(n,t++))}originalNode(e){return this.nodeMap.get(e)?._original}nodeCount(){return this.nodeMap.size}edges(){return Array.from(this.edgeMap.values())}edge(e){return this.edgeMap.get(e)}firstEdge(){return this.edgeMap.values().next().value}forEachEdge(e){let t=0;this.edgeMap.forEach(n=>e(n,t++))}originalEdge(e){return this.edgeMap.get(e)?._original}edgeCount(){return this.edgeMap.size}getEdgeId(e){if(e.id)return e.id;let t=`${e.source}-${e.target}`,n=this.edgeIdCounter.get(t)||0,r=n===0?t:`${t}-${n}`;return this.edgeIdCounter.set(t,n+1),r}degree(e,t=`both`){this.degreeCache||this.buildDegreeCache();let n=this.degreeCache.get(e);return n?n[t]:0}neighbors(e,t=`both`){if((!this.outAdjacencyCache||!this.inAdjacencyCache)&&this.buildAdjacencyCache(),t===`out`)return Array.from(this.outAdjacencyCache.get(e)||[]);if(t===`in`)return Array.from(this.inAdjacencyCache.get(e)||[]);if(this.bothAdjacencyCache)return Array.from(this.bothAdjacencyCache.get(e)||[]);let n=this.inAdjacencyCache.get(e),r=this.outAdjacencyCache.get(e);if(!n&&!r)return[];if(!n)return Array.from(r);if(!r)return Array.from(n);let i=new Set;return n.forEach(e=>i.add(e)),r.forEach(e=>i.add(e)),Array.from(i)}successors(e){return this.neighbors(e,`out`)}predecessors(e){return this.neighbors(e,`in`)}setNodeOrder(e){let t=new Map;for(let n of e)t.set(n.id,n);this.nodeMap=t,this.nodeIndexCache=void 0,this.indexNodeCache=void 0}clearCache(){this.degreeCache=void 0,this.inAdjacencyCache=void 0,this.outAdjacencyCache=void 0,this.bothAdjacencyCache=void 0,this.nodeIndexCache=void 0,this.indexNodeCache=void 0}buildDegreeCache(){this.degreeCache=new Map;for(let e of this.edges()){let{source:t,target:n}=e;if(e.source===e.target)continue;this.degreeCache.has(t)||this.degreeCache.set(t,{in:0,out:0,both:0});let r=this.degreeCache.get(e.source);r&&(r.out++,r.both++),this.degreeCache.has(n)||this.degreeCache.set(n,{in:0,out:0,both:0});let i=this.degreeCache.get(e.target);i&&(i.in++,i.both++)}}buildAdjacencyCache(){this.inAdjacencyCache=new Map,this.outAdjacencyCache=new Map;for(let e of this.edges())!this.nodeMap.has(e.source)||!this.nodeMap.has(e.target)||(this.outAdjacencyCache.has(e.source)||this.outAdjacencyCache.set(e.source,new Set),this.outAdjacencyCache.get(e.source).add(e.target),this.inAdjacencyCache.has(e.target)||this.inAdjacencyCache.set(e.target,new Set),this.inAdjacencyCache.get(e.target).add(e.source))}buildNodeIndexCache(){this.nodeIndexCache=new Map,this.indexNodeCache=new Map;let e=0;this.nodeMap.forEach((t,n)=>{this.nodeIndexCache.set(n,e),this.indexNodeCache.set(e,n),e++})}destroy(){this.clearCache(),this.nodeMap.clear(),this.edgeMap.clear(),this.edgeIdCounter.clear()}},vE=[`id`,`x`,`y`,`z`,`vx`,`vy`,`vz`,`fx`,`fy`,`fz`,`parentId`],yE=[`id`,`source`,`target`,`points`];function bE(e,t){if(!e)throw Error(`Data.nodes is required`);let n=new Map;for(let r of e){let e={_original:r};for(let t of vE){let n=r[t];lE(n)||(e[t]=n)}if(t){let n=t(r);for(let t in n){let r=n[t];lE(r)||(e[t]=r)}}if(lE(e.id))throw Error(`Node is missing id field`);n.set(e.id,e)}return n}function xE(e,t,n){let r=new Map;for(let i of e){let e={_original:i};for(let t of yE){let n=i[t];lE(n)||(e[t]=n)}if(t){let n=t(i);for(let t in n){let r=n[t];lE(r)||(e[t]=r)}}if(lE(e.source)||lE(e.target))throw Error(`Edge is missing source or target field`);lE(e.id)&&(e.id=n?.(i)),r.set(e.id,e)}return r}function SE(e,t,n,r=2){e.forEachNode(e=>{lE(e.x)&&(e.x=Math.random()*t),lE(e.y)&&(e.y=Math.random()*n),r===3&&lE(e.z)&&(e.z=Math.random()*Math.min(t,n))})}var CE=class{constructor(e,t={}){this.graph=new _E(e,t)}export(){return this.graph.data()}replace(e){this.graph.replace(e)}forEachNode(e){this.graph.forEachNode(e)}forEachEdge(e){this.graph.forEachEdge((t,n)=>{t.sourceNode=this.graph.node(t.source),t.targetNode=this.graph.node(t.target),e(t,n)})}destroy(){this.graph.destroy()}},wE=Symbol(`Comlink.proxy`),TE=Symbol(`Comlink.endpoint`),EE=Symbol(`Comlink.releaseProxy`),DE=Symbol(`Comlink.finalizer`),OE=Symbol(`Comlink.thrown`),kE=e=>typeof e==`object`&&!!e||typeof e==`function`,AE=new Map([[`proxy`,{canHandle:e=>kE(e)&&e[wE],serialize(e){let{port1:t,port2:n}=new MessageChannel;return ME(e,t),[n,[n]]},deserialize(e){return e.start(),FE(e)}}],[`throw`,{canHandle:e=>kE(e)&&OE in e,serialize({value:e}){let t;return t=e instanceof Error?{isError:!0,value:{message:e.message,name:e.name,stack:e.stack}}:{isError:!1,value:e},[t,[]]},deserialize(e){throw e.isError?Object.assign(Error(e.value.message),e.value):e.value}}]]);function jE(e,t){for(let n of e)if(t===n||n===`*`||n instanceof RegExp&&n.test(t))return!0;return!1}function ME(e,t=globalThis,n=[`*`]){t.addEventListener(`message`,function r(i){if(!i||!i.data)return;if(!jE(n,i.origin)){console.warn(`Invalid origin '${i.origin}' for comlink proxy`);return}let{id:a,type:o,path:s}=Object.assign({path:[]},i.data),c=(i.data.argumentList||[]).map(YE),l;try{let t=s.slice(0,-1).reduce((e,t)=>e[t],e),n=s.reduce((e,t)=>e[t],e);switch(o){case`GET`:l=n;break;case`SET`:t[s.slice(-1)[0]]=YE(i.data.value),l=!0;break;case`APPLY`:l=n.apply(t,c);break;case`CONSTRUCT`:l=qE(new n(...c));break;case`ENDPOINT`:{let{port1:t,port2:n}=new MessageChannel;ME(e,n),l=KE(t,[t])}break;case`RELEASE`:l=void 0;break;default:return}}catch(e){l={value:e,[OE]:0}}Promise.resolve(l).catch(e=>({value:e,[OE]:0})).then(n=>{let[i,s]=JE(n);t.postMessage(Object.assign(Object.assign({},i),{id:a}),s),o===`RELEASE`&&(t.removeEventListener(`message`,r),PE(t),DE in e&&typeof e[DE]==`function`&&e[DE]())}).catch(e=>{let[n,r]=JE({value:TypeError(`Unserializable return value`),[OE]:0});t.postMessage(Object.assign(Object.assign({},n),{id:a}),r)})}),t.start&&t.start()}function NE(e){return e.constructor.name===`MessagePort`}function PE(e){NE(e)&&e.close()}function FE(e,t){let n=new Map;return e.addEventListener(`message`,function(e){let{data:t}=e;if(!t||!t.id)return;let r=n.get(t.id);if(r)try{r(t)}finally{n.delete(t.id)}}),HE(e,n,[],t)}function IE(e){if(e)throw Error(`Proxy has been released and is not useable`)}function LE(e){return XE(e,new Map,{type:`RELEASE`}).then(()=>{PE(e)})}var RE=new WeakMap,zE=`FinalizationRegistry`in globalThis&&new FinalizationRegistry(e=>{let t=(RE.get(e)||0)-1;RE.set(e,t),t===0&&LE(e)});function BE(e,t){let n=(RE.get(t)||0)+1;RE.set(t,n),zE&&zE.register(e,t,e)}function VE(e){zE&&zE.unregister(e)}function HE(e,t,n=[],r=function(){}){let i=!1,a=new Proxy(r,{get(r,o){if(IE(i),o===EE)return()=>{VE(a),LE(e),t.clear(),i=!0};if(o===`then`){if(n.length===0)return{then:()=>a};let r=XE(e,t,{type:`GET`,path:n.map(e=>e.toString())}).then(YE);return r.then.bind(r)}return HE(e,t,[...n,o])},set(r,a,o){IE(i);let[s,c]=JE(o);return XE(e,t,{type:`SET`,path:[...n,a].map(e=>e.toString()),value:s},c).then(YE)},apply(r,a,o){IE(i);let s=n[n.length-1];if(s===TE)return XE(e,t,{type:`ENDPOINT`}).then(YE);if(s===`bind`)return HE(e,t,n.slice(0,-1));let[c,l]=WE(o);return XE(e,t,{type:`APPLY`,path:n.map(e=>e.toString()),argumentList:c},l).then(YE)},construct(r,a){IE(i);let[o,s]=WE(a);return XE(e,t,{type:`CONSTRUCT`,path:n.map(e=>e.toString()),argumentList:o},s).then(YE)}});return BE(a,e),a}function UE(e){return Array.prototype.concat.apply([],e)}function WE(e){let t=e.map(JE);return[t.map(e=>e[0]),UE(t.map(e=>e[1]))]}var GE=new WeakMap;function KE(e,t){return GE.set(e,t),e}function qE(e){return Object.assign(e,{[wE]:!0})}function JE(e){for(let[t,n]of AE)if(n.canHandle(e)){let[r,i]=n.serialize(e);return[{type:`HANDLER`,name:t,value:r},i]}return[{type:`RAW`,value:e},GE.get(e)||[]]}function YE(e){switch(e.type){case`HANDLER`:return AE.get(e.name).deserialize(e.value);case`RAW`:return e.value}}function XE(e,t,n,r){return new Promise(i=>{let a=ZE();t.set(a,i),e.start&&e.start(),e.postMessage(Object.assign({id:a},n),r)})}function ZE(){return[,,,,].fill(0).map(()=>Math.floor(Math.random()*(2**53-1)).toString(16)).join(`-`)}var QE=class{constructor(){this.worker=null,this.workerApi=null}execute(e,t,n){return IT(this,void 0,void 0,function*(){if(this.worker||(yield this.initWorker()),!this.workerApi)throw Error(`Worker API not initialized`);return yield this.workerApi.execute(e,t,n)})}destroy(){this.workerApi&&this.workerApi.destroy(),this.worker&&(this.worker.terminate(),this.worker=null,this.workerApi=null)}initWorker(){return IT(this,void 0,void 0,function*(){let e=this.resolveWorkerPath(),t=e.includes(`/lib/`)||e.endsWith(`.mjs`)?`module`:`classic`;this.worker=new Worker(e,{type:t}),this.workerApi=FE(this.worker)})}resolveWorkerPath(){let e=(()=>{if(typeof document>`u`)return null;let e=document.currentScript;if(e?.src)return e.src;let t=document.getElementsByTagName(`script`);for(let e=t.length-1;e>=0;e--){let n=t[e].src;if(n&&(n.includes(`index.js`)||n.includes(`index.min.js`)))return n}return null})();if(e){if(e.includes(`index.js`)||e.includes(`index.min.js`)){let t=e.replace(/index(\.min)?\.(m?js)(\?.*)?$/,`worker.js`);if(t!==e)return t}let t=e.replace(/\/runtime\/[^/]+\.(m?js)(\?.*)?$/,`/worker.js`);if(t!==e)return t;let n=e.replace(/\/[^/]+\.(m?js)(\?.*)?$/,`/worker.js`);if(n!==e)return n}return`./worker.js`}},$E=class{constructor(e){this.supervisor=null,this.initialOptions=this.mergeOptions(this.getDefaultOptions(),e)}get options(){return this.runtimeOptions||this.initialOptions}mergeOptions(e,t){return Object.assign({},e,t||{})}execute(e,t){return IT(this,void 0,void 0,function*(){this.runtimeOptions=this.mergeOptions(this.initialOptions,t);let{node:n,edge:r,enableWorker:i}=this.runtimeOptions;this.context=new CE(e,{node:n,edge:r}),this.model=this.context.graph,i&&typeof Worker<`u`?yield this.layoutInWorker(e,this.runtimeOptions):yield this.layout(this.runtimeOptions)})}layoutInWorker(e,t){var n;return IT(this,void 0,void 0,function*(){try{this.supervisor||=new QE;let r=yield this.supervisor.execute(this.id,e,t);(n=this.context)==null||n.replace(r)}catch(e){console.error(`Layout in worker failed, fallback to main thread layout.`,e),yield this.layout(t)}})}forEachNode(e){this.context.forEachNode(e)}forEachEdge(e){this.context.forEachEdge(e)}destroy(){var e;(e=this.context)==null||e.destroy(),this.model=null,this.context=null,this.supervisor&&=(this.supervisor.destroy(),null)}},eD=class extends $E{};function tD(e){return!!e.tick&&!!e.stop}var nD=class{constructor(e={}){this.options=e,this.nodes=new Map,this.edges=new Map,this.inEdges=new Map,this.outEdges=new Map,this.parentMap=new Map,this.childrenMap=new Map,e.tree&&Array.isArray(e.tree)&&e.tree.length>0&&(typeof e.tree[0]==`string`?e.tree.forEach(e=>{this.parentMap.set(e,new Map),this.childrenMap.set(e,new Map)}):(this.attachTreeStructure(`default`),this.addTree(e.tree))),e.nodes&&e.nodes.forEach(e=>this.addNode(e)),e.edges&&e.edges.forEach(e=>this.addEdge(e))}addNode(e){this.nodes.has(e.id)||(this.nodes.set(e.id,e),this.inEdges.set(e.id,new Set),this.outEdges.set(e.id,new Set))}addNodes(e){e.forEach(e=>this.addNode(e))}getNode(e){return this.nodes.get(e)}hasNode(e){return this.nodes.has(e)}removeNode(e){if(!this.nodes.has(e))return;let t=Array.from(this.inEdges.get(e)||[]),n=Array.from(this.outEdges.get(e)||[]);t.forEach(e=>this.removeEdge(e)),n.forEach(e=>this.removeEdge(e)),this.nodes.delete(e),this.inEdges.delete(e),this.outEdges.delete(e),this.parentMap.forEach(t=>{t.delete(e)}),this.childrenMap.forEach(t=>{t.delete(e)})}getAllNodes(){return Array.from(this.nodes.values())}addEdge(e){if(!this.nodes.has(e.source)||!this.nodes.has(e.target))throw Error(`Cannot add edge ${e.id}: source ${e.source} or target ${e.target} does not exist`);this.edges.set(e.id,e),this.outEdges.get(e.source).add(e.id),this.inEdges.get(e.target).add(e.id)}addEdges(e){e.forEach(e=>this.addEdge(e))}getEdge(e){return this.edges.get(e)}hasEdge(e){return this.edges.has(e)}removeEdge(e){var t,n;let r=this.edges.get(e);r&&(this.edges.delete(e),(t=this.outEdges.get(r.source))==null||t.delete(e),(n=this.inEdges.get(r.target))==null||n.delete(e))}getAllEdges(){return Array.from(this.edges.values())}updateEdgeData(e,t){let n=this.edges.get(e);n&&Object.assign(n.data,t)}updateNodeData(e,t){let n=this.nodes.get(e);n&&Object.assign(n.data,t)}getRelatedEdges(e,t=`both`){let n=[];if(t===`in`||t===`both`){let t=this.inEdges.get(e);t&&t.forEach(e=>{let t=this.edges.get(e);t&&n.push(t)})}if(t===`out`||t===`both`){let t=this.outEdges.get(e);t&&t.forEach(e=>{let t=this.edges.get(e);t&&n.push(t)})}return n}getSuccessors(e){let t=this.outEdges.get(e);if(!t||t.size===0)return[];let n=[];return t.forEach(e=>{let t=this.edges.get(e);if(t){let e=this.nodes.get(t.target);e&&n.push(e)}}),n.length>0?n:[]}getPredecessors(e){let t=this.inEdges.get(e);if(!t||t.size===0)return[];let n=[];return t.forEach(e=>{let t=this.edges.get(e);if(t){let e=this.nodes.get(t.source);e&&n.push(e)}}),n.length>0?n:[]}getNeighbors(e){let t=this.getSuccessors(e)||[],n=this.getPredecessors(e)||[],r=[...t,...n],i=Array.from(new Map(r.map(e=>[e.id,e])).values());return i.length>0?i:[]}attachTreeStructure(e){this.parentMap.has(e)||(this.parentMap.set(e,new Map),this.childrenMap.set(e,new Map))}addTree(e,t){let n=t||(this.options.tree?.[0]??`default`);this.hasTreeStructure(n)||this.attachTreeStructure(n);let r=Array.isArray(e)?e:[e],i=(e,t)=>{this.addNode({id:e.id,data:e.data}),t!==void 0&&this.setParent(e.id,t,n),e.children&&e.children.length>0&&e.children.forEach(t=>{i(t,e.id)})};r.forEach(e=>i(e))}hasTreeStructure(e){return this.parentMap.has(e)}setParent(e,t,n){var r;let i=n||(this.options.tree?.[0]??`default`);this.parentMap.has(i)||this.attachTreeStructure(i);let a=this.parentMap.get(i),o=this.childrenMap.get(i),s=a.get(e);s!==void 0&&((r=o.get(s))==null||r.delete(e)),a.set(e,t),o.has(t)||o.set(t,new Set),o.get(t).add(e)}getParent(e,t){let n=t||(this.options.tree?.[0]??`default`);this.parentMap.has(n)||this.attachTreeStructure(n);let r=this.parentMap.get(n);if(!r)return;let i=r.get(e);return i===void 0?null:this.nodes.get(i)}getChildren(e,t){let n=t||(this.options.tree?.[0]??`default`),r=this.childrenMap.get(n);if(!r)return[];let i=r.get(e);return i?Array.from(i).map(e=>this.nodes.get(e)).filter(e=>e!==void 0):[]}getRoots(e){let t=e||(this.options.tree?.[0]??`default`),n=this.parentMap.get(t),r=[];return this.nodes.forEach(e=>{n&&n.get(e.id)!==void 0||r.push(e)}),r}dfsTree(e,t){let n=[e],r=new Set;for(;n.length>0;){let e=n.pop();if(r.has(e))continue;let i=this.getNode(e);if(i){if(r.add(e),t(i)===!0)continue;let a=this.getChildren(e);for(let e=a.length-1;e>=0;e--)r.has(a[e].id)||n.push(a[e].id)}}}},rD=(e,t)=>{if(e!==`next`&&e!==`prev`)return t},iD=e=>{e.prev.next=e.next,e.next.prev=e.prev,delete e.next,delete e.prev},aD=class{constructor(){let e={};e.prev=e,e.next=e.prev,this.shortcut=e}dequeue(){let e=this.shortcut,t=e.prev;if(t&&t!==e)return iD(t),t}enqueue(e){let t=this.shortcut;e.prev&&e.next&&iD(e),e.next=t.next,t.next.prev=e,t.next=e,e.prev=t}toString(){let e=[],t=this.shortcut,n=t.prev;for(;n!==t;)e.push(JSON.stringify(n,rD)),n=n?.prev;return`[${e.join(`, `)}]`}},oD=class extends aD{},sD=()=>1,cD=(e,t)=>{if(e.getAllNodes().length<=1)return[];let n=dD(e,t||sD);return lD(n.graph,n.buckets,n.zeroIdx).map(t=>e.getRelatedEdges(t.v,`out`).filter(({target:e})=>e===t.w))?.flat()},lD=(e,t,n)=>{let r=[],i=t[t.length-1],a=t[0],o;for(;e.getAllNodes().length;){for(;o=a.dequeue();)uD(e,t,n,o);for(;o=i.dequeue();)uD(e,t,n,o);if(e.getAllNodes().length){for(let i=t.length-2;i>0;--i)if(o=t[i].dequeue(),o){r=r.concat(uD(e,t,n,o,!0));break}}}return r},uD=(e,t,n,r,i)=>{var a,o;let s=[];return e.hasNode(r.v)&&((a=e.getRelatedEdges(r.v,`in`))==null||a.forEach(r=>{let a=r.data.weight,o=e.getNode(r.source);i&&s.push({v:r.source,w:r.target,in:0,out:0}),o.data.out===void 0&&(o.data.out=0),o.data.out-=a,fD(t,n,Object.assign({v:o.id},o.data))}),(o=e.getRelatedEdges(r.v,`out`))==null||o.forEach(r=>{let i=r.data.weight,a=r.target,o=e.getNode(a);o.data.in===void 0&&(o.data.in=0),o.data.in-=i,fD(t,n,Object.assign({v:o.id},o.data))}),e.removeNode(r.v)),i?s:void 0},dD=(e,t)=>{let n=new nD,r=0,i=0;e.getAllNodes().forEach(e=>{n.addNode({id:e.id,data:{v:e.id,in:0,out:0}})}),e.getAllEdges().forEach(e=>{let a=n.getRelatedEdges(e.source,`out`).find(t=>t.target===e.target),o=t?.(e)||1;a?n.updateEdgeData(a?.id,Object.assign(Object.assign({},a.data),{weight:a.data.weight+o})):n.addEdge({id:e.id,source:e.source,target:e.target,data:{weight:o}}),i=Math.max(i,n.getNode(e.source).data.out+=o),r=Math.max(r,n.getNode(e.target).data.in+=o)});let a=[],o=i+r+3;for(let e=0;e<o;e++)a.push(new oD);let s=r+1;return n.getAllNodes().forEach(e=>{fD(a,s,Object.assign({v:e.id},n.getNode(e.id).data))}),{buckets:a,zeroIdx:s,graph:n}},fD=(e,t,n)=>{n.out?n.in?e[n.out-n.in+t].enqueue(n):e[e.length-1].enqueue(n):e[0].enqueue(n)},pD=(e,t)=>{cD(e,(e=>e=>e.data.weight||1)())?.forEach(t=>{let n=t.data;e.removeEdge(t.id),n.forwardName=t.data.name,n.reversed=!0,e.addEdge({id:t.id,source:t.target,target:t.source,data:Object.assign({},n)})})},mD=e=>{e.getAllEdges().forEach(t=>{let n=t.data;if(n.reversed){e.removeEdge(t.id);let r=n.forwardName;delete n.reversed,delete n.forwardName,e.addEdge({id:t.id,source:t.target,target:t.source,data:Object.assign(Object.assign({},n),{forwardName:r})})}})},hD=(e,t)=>Number(e)-Number(t),gD=(e,t,n,r)=>{let i;do i=`${r}${Math.random()}`;while(e.hasNode(i));return n.dummy=t,e.addNode({id:i,data:n}),i},_D=e=>{let t=new nD;return e.getAllNodes().forEach(e=>{t.addNode(Object.assign({},e))}),e.getAllEdges().forEach(e=>{let n=t.getRelatedEdges(e.source,`out`).find(t=>t.target===e.target);n?t.updateEdgeData(n?.id,Object.assign(Object.assign({},n.data),{weight:n.data.weight+e.data.weight||0,minlen:Math.max(n.data.minlen,e.data.minlen||1)})):t.addEdge({id:e.id,source:e.source,target:e.target,data:{weight:e.data.weight||0,minlen:e.data.minlen||1}})}),t},vD=e=>{let t=new nD;return e.getAllNodes().forEach(n=>{e.getChildren(n.id).length||t.addNode(Object.assign({},n))}),e.getAllEdges().forEach(e=>{t.addEdge(e)}),t},yD=(e,t)=>e?.reduce((e,n,r)=>(e[n]=t[r],e),{}),bD=(e,t)=>{let n=Number(e.x),r=Number(e.y),i=Number(t.x)-n,a=Number(t.y)-r,o=Number(e.width)/2,s=Number(e.height)/2;if(!i&&!a)return{x:0,y:0};let c,l;return Math.abs(a)*o>Math.abs(i)*s?(a<0&&(s=-s),c=s*i/a,l=s):(i<0&&(o=-o),c=o,l=o*a/i),{x:n+c,y:r+l}},xD=e=>{let t=[],n=TD(e)+1;for(let e=0;e<n;e++)t.push([]);e.getAllNodes().forEach(e=>{let n=e.data.rank;n!==void 0&&t[n]&&t[n].push(e.id)});for(let r=0;r<n;r++)t[r]=t[r].sort((t,n)=>hD(e.getNode(t).data.order,e.getNode(n).data.order));return t},SD=e=>{let t=e.getAllNodes().filter(e=>e.data.rank!==void 0).map(e=>e.data.rank),n=Math.min(...t);e.getAllNodes().forEach(e=>{e.data.hasOwnProperty(`rank`)&&n!==1/0&&(e.data.rank-=n)})},CD=(e,t=0)=>{let n=e.getAllNodes(),r=n.filter(e=>e.data.rank!==void 0).map(e=>e.data.rank),i=Math.min(...r),a=[];n.forEach(e=>{let t=(e.data.rank||0)-i;a[t]||(a[t]=[]),a[t].push(e.id)});let o=0;for(let n=0;n<a.length;n++){let r=a[n];r===void 0?n%t!==0&&--o:o&&r?.forEach(t=>{let n=e.getNode(t);n&&(n.data.rank=n.data.rank||0,n.data.rank+=o)})}},wD=(e,t,n,r)=>{let i={width:0,height:0};return oE(n)&&oE(r)&&(i.rank=n,i.order=r),gD(e,`border`,i,t)},TD=e=>{let t;return e.getAllNodes().forEach(e=>{let n=e.data.rank;n!==void 0&&(t===void 0||n>t)&&(t=n)}),t||=0,t},ED=(e,t)=>{let n={lhs:[],rhs:[]};return e?.forEach(e=>{t(e)?n.lhs.push(e):n.rhs.push(e)}),n},DD=(e,t)=>e.reduce((e,n)=>t(e)>t(n)?n:e),OD=(e,t,n,r,i,a)=>{if(!r.includes(t.id)){r.push(t.id),n||a.push(t.id);let o=i(t.id);o&&o.forEach(t=>OD(e,t,n,r,i,a)),n&&a.push(t.id)}},kD=(e,t,n,r)=>{let i=Array.isArray(t)?t:[t],a=t=>e.getNeighbors(t),o=[],s=[];return i.forEach(t=>{if(e.hasNode(t.id))OD(e,t,n===`post`,s,a,o);else throw Error(`Graph does not have node: ${t}`)}),o},AD=e=>{let t=n=>{let r=e.getChildren(n),i=e.getNode(n);if(r?.length&&r.forEach(e=>t(e.id)),i.data.hasOwnProperty(`minRank`)){i.data.borderLeft=[],i.data.borderRight=[];for(let t=i.data.minRank,r=i.data.maxRank+1;t<r;t+=1)jD(e,`borderLeft`,`_bl`,n,i,t),jD(e,`borderRight`,`_br`,n,i,t)}};e.getRoots().forEach(e=>t(e.id))},jD=(e,t,n,r,i,a)=>{let o={rank:a,borderType:t,width:0,height:0},s=a-i.data.minRank,c=i.data[t][s-1],l=gD(e,`border`,o,n);i.data[t][s]=l,e.setParent(l,r),c&&e.addEdge({id:`e${Math.random()}`,source:c,target:l,data:{weight:1}})},MD=(e,t)=>{let n=t.toLowerCase();(n===`lr`||n===`rl`)&&PD(e)},ND=(e,t)=>{let n=t.toLowerCase();(n===`bt`||n===`rl`)&&ID(e),(n===`lr`||n===`rl`)&&(RD(e),PD(e))},PD=e=>{e.getAllNodes().forEach(e=>{FD(e)}),e.getAllEdges().forEach(e=>{FD(e)})},FD=e=>{let t=e.data.width;e.data.width=e.data.height,e.data.height=t},ID=e=>{e.getAllNodes().forEach(e=>{LD(e.data)}),e.getAllEdges().forEach(e=>{var t;(t=e.data.points)==null||t.forEach(e=>LD(e)),e.data.hasOwnProperty(`y`)&&LD(e.data)})},LD=e=>{e?.y&&(e.y=-e.y)},RD=e=>{e.getAllNodes().forEach(e=>{zD(e.data)}),e.getAllEdges().forEach(e=>{var t;(t=e.data.points)==null||t.forEach(e=>zD(e)),e.data.hasOwnProperty(`x`)&&zD(e.data)})},zD=e=>{let t=e.x;e.x=e.y,e.y=t},BD=e=>{let t=gD(e,`root`,{},`_root`),n=HD(e),r=Math.max(...Object.values(n));Math.abs(r)===1/0&&(r=1);let i=r-1,a=2*i+1;e.getAllEdges().forEach(e=>{e.data.minlen*=a});let o=UD(e)+1;return e.getRoots().forEach(r=>{VD(e,t,a,o,i,n,r.id)}),{nestingRoot:t,nodeRankFactor:a}},VD=(e,t,n,r,i,a,o)=>{let s=e.getChildren(o);if(!s?.length){o!==t&&e.addEdge({id:`e${Math.random()}`,source:t,target:o,data:{weight:0,minlen:n}});return}let c=wD(e,`_bt`),l=wD(e,`_bb`),u=e.getNode(o);e.setParent(c,o),u.data.borderTop=c,e.setParent(l,o),u.data.borderBottom=l,s?.forEach(s=>{VD(e,t,n,r,i,a,s.id);let u=s.data.borderTop?s.data.borderTop:s.id,d=s.data.borderBottom?s.data.borderBottom:s.id,f=s.data.borderTop?r:2*r,p=u===d?i-a[o]+1:1;e.addEdge({id:`e${Math.random()}`,source:c,target:u,data:{minlen:p,weight:f,nestingEdge:!0}}),e.addEdge({id:`e${Math.random()}`,source:d,target:l,data:{minlen:p,weight:f,nestingEdge:!0}})}),e.getParent(o)||e.addEdge({id:`e${Math.random()}`,source:t,target:c,data:{weight:0,minlen:i+a[o]}})},HD=e=>{let t={},n=(r,i)=>{e.getChildren(r)?.forEach(e=>n(e.id,i+1)),t[r]=i};return e.getRoots().forEach(e=>n(e.id,1)),t},UD=e=>{let t=0;return e.getAllEdges().forEach(e=>{t+=e.data.weight}),t},WD=(e,t)=>{t&&e.removeNode(t),e.getAllEdges().forEach(t=>{t.data.nestingEdge&&e.removeEdge(t.id)})},GD=`edge`,KD=`edge-label`,qD=(e,t)=>{e.getAllEdges().forEach(n=>JD(e,n,t))},JD=(e,t,n)=>{let r=t.source,i=e.getNode(r).data.rank,a=t.target,o=e.getNode(a).data.rank,s=t.data.labelRank;if(o===i+1)return;e.removeEdge(t.id);let c,l,u;for(u=0,++i;i<o;++u,++i)t.data.points=[],l={originalEdge:t,width:0,height:0,rank:i},c=gD(e,GD,l,`_d`),i===s&&(l.width=t.data.width,l.height=t.data.height,l.dummy=KD,l.labelpos=t.data.labelpos),e.addEdge({id:`e${Math.random()}`,source:r,target:c,data:{weight:t.data.weight}}),u===0&&n.push(c),r=c;e.addEdge({id:`e${Math.random()}`,source:r,target:a,data:{weight:t.data.weight}})},YD=(e,t)=>{t.forEach(t=>{let n=e.getNode(t),{data:r}=n,i=r.originalEdge,a;i&&e.addEdge(i);let o=t;for(;n.data.dummy;)a=e.getSuccessors(o)[0],e.removeNode(o),i.data.points.push({x:n.data.x,y:n.data.y}),n.data.dummy===KD&&(i.data.x=n.data.x,i.data.y=n.data.y,i.data.width=n.data.width,i.data.height=n.data.height),o=a.id,n=e.getNode(o)})},XD=(e,t,n)=>{let r={},i;n?.forEach(n=>{let a=e.getParent(n),o,s;for(;a;){if(o=e.getParent(a.id),o?(s=r[o.id],r[o.id]=a.id):(s=i,i=a.id),s&&s!==a.id){t.hasNode(s)||t.addNode({id:s,data:{}}),t.hasNode(a.id)||t.addNode({id:a.id,data:{}}),t.hasEdge(`e${s}-${a.id}`)||t.addEdge({id:`e${s}-${a.id}`,source:s,target:a.id,data:{}});return}a=o}})},ZD=(e,t,n)=>{let r=QD(e),i=new nD;return i.addNode({id:r,data:{}}),e.getAllNodes().forEach(a=>{let o=e.getParent(a.id);(a.data.rank===t||a.data.minRank<=t&&t<=a.data.maxRank)&&(i.hasNode(a.id)||i.addNode(Object.assign({},a)),o?.id&&!i.hasNode(o?.id)&&i.addNode(Object.assign({},o)),i.setParent(a.id,o?.id||r),e.getRelatedEdges(a.id,n).forEach(t=>{let n=t.source===a.id?t.target:t.source;i.hasNode(n)||i.addNode(Object.assign({},e.getNode(n)));let r=i.getRelatedEdges(n,`out`).find(({target:e})=>e===a.id),o=r===void 0?0:r.data.weight;r?i.updateEdgeData(r.id,Object.assign(Object.assign({},r.data),{weight:t.data.weight+o})):i.addEdge({id:t.id,source:n,target:a.id,data:{weight:t.data.weight+o}})}),a.data.hasOwnProperty(`minRank`)&&i.updateNodeData(a.id,Object.assign(Object.assign({},a.data),{borderLeft:[a.data.borderLeft?.[t-a.data.minRank]],borderRight:[a.data.borderRight?.[t-a.data.minRank]]})))}),i},QD=e=>{let t;for(;e.hasNode(t=`_root${Math.random()}`););return t},$D=(e,t,n)=>{let r=yD(n,n.map((e,t)=>t)),i=t.map(t=>e.getRelatedEdges(t,`out`).map(e=>({pos:r[e.target]||0,weight:e.data.weight}))?.sort((e,t)=>e.pos-t.pos)).flat().filter(e=>e!==void 0),a=1;for(;a<n.length;)a<<=1;let o=2*a-1;--a;let s=Array(o).fill(0,0,o),c=0;return i?.forEach(e=>{if(e){let t=e.pos+a;s[t]+=e.weight;let n=0;for(;t>0;)t%2&&(n+=s[t+1]),t=t-1>>1,s[t]+=e.weight;c+=e.weight*n}}),c},eO=(e,t)=>{let n=0;for(let r=1;r<t?.length;r+=1)n+=$D(e,t[r-1],t[r]);return n},tO=e=>{let t={},n=e.getAllNodes(),r=n.map(e=>e.data.rank??-1/0),i=Math.max(...r),a=[];for(let e=0;e<i+1;e++)a.push([]);let o=n.sort((t,n)=>e.getNode(t.id).data.rank-e.getNode(n.id).data.rank);return o.filter(t=>e.getNode(t.id).data.fixorder!==void 0).sort((t,n)=>e.getNode(t.id).data.fixorder-e.getNode(n.id).data.fixorder)?.forEach(n=>{isNaN(e.getNode(n.id).data.rank)||a[e.getNode(n.id).data.rank].push(n.id),t[n.id]=!0}),o?.forEach(n=>e.dfsTree(n.id,e=>{if(t.hasOwnProperty(e.id))return!0;t[e.id]=!0,isNaN(e.data.rank)||a[e.data.rank].push(e.id)})),a},nO=(e,t)=>t.map(t=>{let n=e.getRelatedEdges(t,`in`);if(!n?.length)return{v:t};let r={sum:0,weight:0};return n?.forEach(t=>{let n=e.getNode(t.source);r.sum+=t.data.weight*n.data.order,r.weight+=t.data.weight}),{v:t,barycenter:r.sum/r.weight,weight:r.weight}}),rO=(e,t)=>{var n,r;let i={};return e?.forEach((e,t)=>{i[e.v]={i:t,indegree:0,in:[],out:[],vs:[e.v]};let n=i[e.v];e.barycenter!==void 0&&(n.barycenter=e.barycenter,n.weight=e.weight)}),(n=t.getAllEdges())==null||n.forEach(e=>{let t=i[e.source],n=i[e.target];t!==void 0&&n!==void 0&&(n.indegree++,t.out.push(i[e.target]))}),iO((r=Object.values(i)).filter?.call(r,e=>!e.indegree))},iO=e=>{var t,n;let r=[],i=e=>t=>{t.merged||(t.barycenter===void 0||e.barycenter===void 0||t.barycenter>=e.barycenter)&&aO(e,t)},a=t=>n=>{n.in.push(t),--n.indegree===0&&e.push(n)};for(;e?.length;){let o=e.pop();r.push(o),(t=o.in.reverse())==null||t.forEach(e=>i(o)(e)),(n=o.out)==null||n.forEach(e=>a(o)(e))}let o=r.filter(e=>!e.merged),s=[`vs`,`i`,`barycenter`,`weight`];return o.map(e=>{let t={};return s?.forEach(n=>{e[n]!==void 0&&(t[n]=e[n])}),t})},aO=(e,t)=>{let n=0,r=0;e.weight&&(n+=e.barycenter*e.weight,r+=e.weight),t.weight&&(n+=t.barycenter*t.weight,r+=t.weight),e.vs=t.vs?.concat(e.vs),e.barycenter=n/r,e.weight=r,e.i=Math.min(t.i,e.i),t.merged=!0},oO=(e,t,n,r)=>{let i=ED(e,e=>{let t=e.hasOwnProperty(`fixorder`)&&!isNaN(e.fixorder);return r?!t&&e.hasOwnProperty(`barycenter`):t||e.hasOwnProperty(`barycenter`)}),a=i.lhs,o=i.rhs.sort((e,t)=>-e.i- -t.i),s=[],c=0,l=0,u=0;a?.sort(cO(!!t,!!n)),u=sO(s,o,u),a?.forEach(e=>{u+=e.vs?.length,s.push(e.vs),c+=e.barycenter*e.weight,l+=e.weight,u=sO(s,o,u)});let d={vs:s.flat()};return l&&(d.barycenter=c/l,d.weight=l),d},sO=(e,t,n)=>{let r=n,i;for(;t.length&&(i=t[t.length-1]).i<=r;)t.pop(),e?.push(i.vs),r++;return r},cO=(e,t)=>(n,r)=>{if(n.fixorder!==void 0&&r.fixorder!==void 0)return n.fixorder-r.fixorder;if(n.barycenter<r.barycenter)return-1;if(n.barycenter>r.barycenter)return 1;if(t&&n.order!==void 0&&r.order!==void 0){if(n.order<r.order)return-1;if(n.order>r.order)return 1}return e?r.i-n.i:n.i-r.i},lO=(e,t,n,r,i,a)=>{var o;let s=e.getChildren(t).map(e=>e.id),c=e.getNode(t),l=c?c.data.borderLeft:void 0,u=c?c.data.borderRight:void 0,d={};l&&(s=s?.filter(e=>e!==l&&e!==u));let f=nO(e,s||[]);f?.forEach(t=>{if(e.getChildren(t.v)?.length){let i=lO(e,t.v,n,r,a);d[t.v]=i,i.hasOwnProperty(`barycenter`)&&dO(t,i)}});let p=rO(f,n);uO(p,d),(o=p.filter(e=>e.vs.length>0))==null||o.forEach(t=>{let n=e.getNode(t.vs[0]);n&&(t.fixorder=n.data.fixorder,t.order=n.data.order)});let m=oO(p,r,i,a);if(l&&(m.vs=[l,m.vs,u].flat(),e.getPredecessors(l)?.length)){let t=e.getNode(e.getPredecessors(l)?.[0].id||``),n=e.getNode(e.getPredecessors(u)?.[0].id||``);m.hasOwnProperty(`barycenter`)||(m.barycenter=0,m.weight=0),m.barycenter=(m.barycenter*m.weight+t.data.order+n.data.order)/(m.weight+2),m.weight+=2}return m},uO=(e,t)=>{e?.forEach(e=>{e.vs=(e.vs?.map(e=>t[e]?t[e].vs:e)).flat()})},dO=(e,t)=>{e.barycenter===void 0?(e.barycenter=t.barycenter,e.weight=t.weight):(e.barycenter=(e.barycenter*e.weight+t.barycenter*t.weight)/(e.weight+t.weight),e.weight+=t.weight)};function fO(e){return Array.isArray(e)}var pO=function(e){if(typeof e!=`object`||!e)return e;var t;if(fO(e)){t=[];for(var n=0,r=e.length;n<r;n++)typeof e[n]==`object`&&e[n]!=null?t[n]=pO(e[n]):t[n]=e[n]}else for(var i in t={},e)typeof e[i]==`object`&&e[i]!=null?t[i]=pO(e[i]):t[i]=e[i];return t},mO=(e,t)=>{let n=TD(e),r=[],i=[];for(let e=1;e<n+1;e++)r.push(e);for(let e=n-1;e>-1;e--)i.push(e);let a=hO(e,r,`in`),o=hO(e,i,`out`),s=tO(e);_O(e,s);let c=1/0,l;for(let n=0,r=0;r<4;++n,++r){gO(n%2?a:o,n%4>=2,!1,t),s=xD(e);let i=eO(e,s);i<c&&(r=0,l=pO(s),c=i)}s=tO(e),_O(e,s);for(let n=0,r=0;r<4;++n,++r){gO(n%2?a:o,n%4>=2,!0,t),s=xD(e);let i=eO(e,s);i<c&&(r=0,l=pO(s),c=i)}_O(e,l)},hO=(e,t,n)=>t.map(t=>ZD(e,t,n)),gO=(e,t,n,r)=>{let i=new nD;e?.forEach(e=>{let a=e.getRoots()[0].id,o=lO(e,a,i,t,n,r);for(let t=0;t<o.vs?.length;t++){let n=e.getNode(o.vs[t]);n&&(n.data.order=t)}XD(e,i,o.vs)})},_O=(e,t)=>{t?.forEach(t=>{t?.forEach((t,n)=>{e.getNode(t).data.order=n})})},vO=(e,t)=>{let n=e.getAllNodes().filter(t=>!e.getChildren(t.id)?.length).map(e=>e.data.rank),r=Math.max(...n),i=[];for(let e=0;e<r+1;e++)i[e]=[];t?.forEach(t=>{let n=e.getNode(t);!n||n.data.dummy||isNaN(n.data.rank)||(n.data.fixorder=i[n.data.rank].length,i[n.data.rank].push(t))})},yO=e=>{let t={},n=0,r=i=>{let a=n;e.getChildren(i).forEach(e=>r(e.id)),t[i]={low:a,lim:n++}};return e.getRoots().forEach(e=>r(e.id)),t},bO=(e,t,n,r)=>{let i=[],a=[],o=Math.min(t[n].low,t[r].low),s=Math.max(t[n].lim,t[r].lim),c,l;c=n;do c=e.getParent(c)?.id,i.push(c);while(c&&(t[c].low>o||s>t[c].lim));for(l=c,c=r;c&&c!==l;)a.push(c),c=e.getParent(c)?.id;return{lca:l,path:i.concat(a.reverse())}},xO=(e,t)=>{let n=yO(e);t.forEach(t=>{let r=t,i=e.getNode(r),a=i.data.originalEdge;if(!a)return;let o=bO(e,n,a.source,a.target),s=o.path,c=o.lca,l=0,u=s[l],d=!0;for(;r!==a.target;){if(i=e.getNode(r),d){for(;u!==c&&e.getNode(u)?.data.maxRank<i.data.rank;)l++,u=s[l];u===c&&(d=!1)}if(!d){for(;l<s.length-1&&e.getNode(s[l+1])?.data.minRank<=i.data.rank;)l++;u=s[l]}e.hasNode(u)&&e.setParent(r,u),r=e.getSuccessors(r)[0].id}})},SO=(e,t)=>{let n={};return t?.length&&t.reduce((t,r)=>{let i=0,a=0,o=t.length,s=r?.[r?.length-1];return r?.forEach((t,c)=>{var l;let u=wO(e,t),d=u?e.getNode(u.id).data.order:o;(u||t===s)&&((l=r.slice(a,c+1))==null||l.forEach(t=>{var r;(r=e.getPredecessors(t))==null||r.forEach(r=>{let a=e.getNode(r.id),o=a.data.order;(o<i||d<o)&&!(a.data.dummy&&e.getNode(t)?.data.dummy)&&TO(n,r.id,t)})}),a=c+1,i=d)}),r}),n},CO=(e,t)=>{let n={};function r(t,r,i,a,o){var s;let c;for(let l=r;l<i;l++)c=t[l],e.getNode(c)?.data.dummy&&((s=e.getPredecessors(c))==null||s.forEach(t=>{let r=e.getNode(t.id);r.data.dummy&&(r.data.order<a||r.data.order>o)&&TO(n,t.id,c)}))}function i(e){return JSON.stringify(e.slice(1))}function a(e,t){let n=i(e);t.get(n)||(r(...e),t.set(n,!0))}return t?.length&&t.reduce((t,n)=>{let r=-1,i,o=0,s=new Map;return n?.forEach((c,l)=>{if(e.getNode(c)?.data.dummy===`border`){let t=e.getPredecessors(c)||[];t.length&&(i=e.getNode(t[0].id).data.order,a([n,o,l,r,i],s),o=l,r=i)}a([n,o,n.length,i,t.length],s)}),n}),n},wO=(e,t)=>{if(e.getNode(t)?.data.dummy)return e.getPredecessors(t)?.find(t=>e.getNode(t.id).data.dummy)},TO=(e,t,n)=>{let r=t,i=n;if(r>i){let e=r;r=i,i=e}let a=e[r];a||(e[r]=a={}),a[i]=!0},EO=(e,t,n)=>{let r=t,i=n;if(r>i){let e=t;r=i,i=e}return!!e[r]},DO=(e,t,n,r)=>{let i={},a={},o={};return t?.forEach(e=>{e?.forEach((e,t)=>{i[e]=e,a[e]=e,o[e]=t})}),t?.forEach(e=>{let t=-1;e?.forEach(e=>{let s=r(e).map(e=>e.id);if(s.length){s=s.sort((e,t)=>o[e]-o[t]);let r=(s.length-1)/2;for(let c=Math.floor(r),l=Math.ceil(r);c<=l;++c){let r=s[c];a[e]===e&&t<o[r]&&!EO(n,e,r)&&(a[r]=e,a[e]=i[e]=i[r],t=o[r])}}})}),{root:i,align:a}},OO=(e,t,n,r,i,a,o)=>{var s;let c={},l=kO(e,t,n,i,a,o),u=o?`borderLeft`:`borderRight`,d=(e,t)=>{let n=l.getAllNodes(),r=n.pop(),i={};for(;r;)i[r.id]?e(r.id):(i[r.id]=!0,n.push(r),n=n.concat(t(r.id))),r=n.pop()};return d(e=>{c[e]=(l.getRelatedEdges(e,`in`)||[]).reduce((e,t)=>Math.max(e,(c[t.source]||0)+t.data.weight),0)},l.getPredecessors.bind(l)),d(t=>{let n=(l.getRelatedEdges(t,`out`)||[]).reduce((e,t)=>Math.min(e,(c[t.target]||0)-t.data.weight),1/0),r=e.getNode(t);n!==1/0&&r.data.borderType!==u&&(c[t]=Math.max(c[t],n))},l.getSuccessors.bind(l)),(s=Object.values(r))==null||s.forEach(e=>{c[e]=c[n[e]]}),c},kO=(e,t,n,r,i,a)=>{let o=new nD,s=NO(r,i,a);return t?.forEach(t=>{let r;t?.forEach(t=>{let i=n[t];if(o.hasNode(i)||o.addNode({id:i,data:{}}),r){let a=n[r],c=o.getRelatedEdges(a,`out`).find(e=>e.target===i);c?o.updateEdgeData(c.id,Object.assign(Object.assign({},c.data),{weight:Math.max(s(e,t,r),c.data.weight||0)})):o.addEdge({id:`e${Math.random()}`,source:a,target:i,data:{weight:Math.max(s(e,t,r),0)}})}r=t})}),o},AO=(e,t)=>DD(Object.values(t),t=>{var n;let r=-1/0,i=1/0;return(n=Object.keys(t))==null||n.forEach(n=>{let a=t[n],o=PO(e,n)/2;r=Math.max(a+o,r),i=Math.min(a-o,i)}),r-i});function jO(e,t){let n=Object.values(t),r=Math.min(...n),i=Math.max(...n);[`u`,`d`].forEach(n=>{[`l`,`r`].forEach(a=>{let o=n+a,s=e[o],c;if(s===t)return;let l=Object.values(s);c=a===`l`?r-Math.min(...l):i-Math.max(...l),c&&(e[o]={},Object.keys(s).forEach(t=>{e[o][t]=s[t]+c}))})})}var MO=(e,t)=>{let n={};return Object.keys(e.ul).forEach(r=>{if(t)n[r]=e[t.toLowerCase()][r];else{let t=Object.values(e).map(e=>e[r]);n[r]=(t[0]+t[1])/2}}),n},NO=(e,t,n)=>(r,i,a)=>{let o=r.getNode(i),s=r.getNode(a),c=0,l=0;if(c+=o.data.width/2,o.data.hasOwnProperty(`labelpos`))switch((o.data.labelpos||``).toLowerCase()){case`l`:l=-o.data.width/2;break;case`r`:l=o.data.width/2;break}if(l&&(c+=n?l:-l),l=0,c+=(o.data.dummy?t:e)/2,c+=(s.data.dummy?t:e)/2,c+=s.data.width/2,s.data.labelpos)switch((s.data.labelpos||``).toLowerCase()){case`l`:l=s.data.width/2;break;case`r`:l=-s.data.width/2;break}return l&&(c+=n?l:-l),l=0,c},PO=(e,t)=>e.getNode(t).data.width||0,FO=(e,t)=>{let{ranksep:n=0}=t||{},r=xD(e),i=0;r?.forEach(t=>{let r=t.map(t=>e.getNode(t).data.height),a=Math.max(...r,0);t?.forEach(t=>{e.getNode(t).data.y=i+a/2}),i+=a+n})},IO=(e,t)=>{let{align:n,nodesep:r=0,edgesep:i=0}=t||{},a=xD(e),o=Object.assign(SO(e,a),CO(e,a)),s={},c=[];[`u`,`d`].forEach(t=>{c=t===`u`?a:Object.values(a).reverse(),[`l`,`r`].forEach(n=>{n===`r`&&(c=c.map(e=>Object.values(e).reverse()));let a=(t===`u`?e.getPredecessors:e.getSuccessors).bind(e),l=DO(e,c,o,a),u=OO(e,c,l.root,l.align,r,i,n===`r`);n===`r`&&Object.keys(u).forEach(e=>u[e]=-u[e]),s[t+n]=u})});let l=AO(e,s);return l&&jO(s,l),MO(s,n)},LO=(e,t)=>{var n;let r=vD(e);FO(r,t);let i=IO(r,t);(n=Object.keys(i))==null||n.forEach(e=>{r.getNode(e).data.x=i[e]})},RO=e=>{let t={},n=r=>{var i;let a=e.getNode(r);if(!a)return 0;if(t[r])return a.data.rank;t[r]=!0;let o;return(i=e.getRelatedEdges(r,`out`))==null||i.forEach(e=>{let t=n(e.target)-e.data.minlen;t&&(o===void 0||t<o)&&(o=t)}),o||=0,a.data.rank=o,o};e.getAllNodes().filter(t=>e.getRelatedEdges(t.id,`in`).length===0).forEach(e=>n(e.id))},zO=e=>{let t={},n,r=i=>{var a;let o=e.getNode(i);if(!o)return 0;if(t[i])return o.data.rank;t[i]=!0;let s;return(a=e.getRelatedEdges(i,`out`))==null||a.forEach(e=>{let t=r(e.target)-e.data.minlen;t&&(s===void 0||t<s)&&(s=t)}),s||=0,(n===void 0||s<n)&&(n=s),o.data.rank=s,s};e.getAllNodes().filter(t=>e.getRelatedEdges(t.id,`in`).length===0).forEach(e=>{e&&r(e.id)}),n===void 0&&(n=0);let i={},a=(t,n)=>{var r;let o=e.getNode(t),s=isNaN(o.data.layer)?n:o.data.layer;(o.data.rank===void 0||o.data.rank<s)&&(o.data.rank=s),!i[t]&&(i[t]=!0,(r=e.getRelatedEdges(t,`out`))==null||r.forEach(e=>{a(e.target,s+e.data.minlen)}))};e.getAllNodes().forEach(e=>{let t=e.data;t&&(isNaN(t.layer)?t.rank-=n:a(e.id,t.layer))})},BO=(e,t)=>e.getNode(t.target).data.rank-e.getNode(t.source).data.rank-t.data.minlen,VO=e=>{let t=new nD({tree:[]}),n=e.getAllNodes()[0],r=e.getAllNodes().length;t.addNode(n);let i,a;for(;HO(t,e)<r;)i=GO(t,e),a=t.hasNode(i.source)?BO(e,i):-BO(e,i),KO(t,e,a);return t},HO=(e,t)=>{let n=r=>{t.getRelatedEdges(r,`both`).forEach(i=>{let a=i.source,o=r===a?i.target:a;!e.hasNode(o)&&!BO(t,i)&&(e.addNode({id:o,data:{}}),e.addEdge({id:i.id,source:r,target:o,data:{}}),n(o))})};return e.getAllNodes().forEach(e=>n(e.id)),e.getAllNodes().length},UO=e=>{let t=new nD({tree:[]}),n=e.getAllNodes()[0],r=e.getAllNodes().length;t.addNode(n);let i,a;for(;WO(t,e)<r;)i=GO(t,e),a=t.hasNode(i.source)?BO(e,i):-BO(e,i),KO(t,e,a);return t},WO=(e,t)=>{let n=r=>{var i;(i=t.getRelatedEdges(r,`both`))==null||i.forEach(i=>{let a=i.source,o=r===a?i.target:a;!e.hasNode(o)&&(t.getNode(o).data.layer!==void 0||!BO(t,i))&&(e.addNode({id:o,data:{}}),e.addEdge({id:i.id,source:r,target:o,data:{}}),n(o))})};return e.getAllNodes().forEach(e=>n(e.id)),e.getAllNodes().length},GO=(e,t)=>DD(t.getAllEdges(),n=>e.hasNode(n.source)===e.hasNode(n.target)?1/0:BO(t,n)),KO=(e,t,n)=>{e.getAllNodes().forEach(e=>{let r=t.getNode(e.id);r.data.rank||(r.data.rank=0),r.data.rank+=n})},qO=e=>{let t=_D(e);RO(t);let n=VO(t);ZO(n),JO(n,t);let r,i;for(;r=$O(n);)i=ek(n,t,r),tk(n,t,r,i)},JO=(e,t)=>{let n=kD(e,e.getAllNodes(),`post`);n=n.slice(0,n?.length-1),n.forEach(n=>{YO(e,t,n)})},YO=(e,t,n)=>{let r=e.getNode(n).data.parent,i=e.getRelatedEdges(n,`both`).find(e=>e.target===r||e.source===r);i.data.cutvalue=XO(e,t,n)},XO=(e,t,n)=>{let r=e.getNode(n).data.parent,i=!0,a=t.getRelatedEdges(n,`out`).find(e=>e.target===r),o=0;return a||=(i=!1,t.getRelatedEdges(r,`out`).find(e=>e.target===n)),o=a.data.weight,t.getRelatedEdges(n,`both`).forEach(t=>{let a=t.source===n,s=a?t.target:t.source;if(s!==r){let r=a===i,c=t.data.weight;if(o+=r?c:-c,rk(e,n,s)){let t=e.getRelatedEdges(n,`both`).find(e=>e.source===s||e.target===s).data.cutvalue;o+=r?-t:t}}}),o},ZO=(e,t=e.getAllNodes()[0].id)=>{QO(e,{},1,t)},QO=(e,t,n,r,i)=>{var a;let o=n,s=n,c=e.getNode(r);return t[r]=!0,(a=e.getNeighbors(r))==null||a.forEach(n=>{t[n.id]||(s=QO(e,t,s,n.id,r))}),c.data.low=o,c.data.lim=s++,i?c.data.parent=i:delete c.data.parent,s},$O=e=>e.getAllEdges().find(e=>e.data.cutvalue<0),ek=(e,t,n)=>{let r=n.source,i=n.target;t.getRelatedEdges(r,`out`).find(e=>e.target===i)||(r=n.target,i=n.source);let a=e.getNode(r),o=e.getNode(i),s=a,c=!1;return a.data.lim>o.data.lim&&(s=o,c=!0),DD(t.getAllEdges().filter(t=>c===ik(e.getNode(t.source),s)&&c!==ik(e.getNode(t.target),s)),e=>BO(t,e))},tk=(e,t,n,r)=>{let i=e.getRelatedEdges(n.source,`both`).find(e=>e.source===n.target||e.target===n.target);i&&e.removeEdge(i.id),e.addEdge({id:`e${Math.random()}`,source:r.source,target:r.target,data:{}}),ZO(e),JO(e,t),nk(e,t)},nk=(e,t)=>{let n=kD(e,e.getAllNodes().find(e=>!e.data.parent),`pre`);n=n.slice(1),n.forEach(n=>{let r=e.getNode(n).data.parent,i=t.getRelatedEdges(n,`out`).find(e=>e.target===r),a=!1;!i&&t.hasNode(r)&&(i=t.getRelatedEdges(r,`out`).find(e=>e.target===n),a=!0),t.getNode(n).data.rank=(t.hasNode(r)&&t.getNode(r).data.rank||0)+(a?i?.data.minlen:-i?.data.minlen)})},rk=(e,t,n)=>e.getRelatedEdges(t,`both`).find(e=>e.source===n||e.target===n),ik=(e,t)=>t.data.low<=e.data.lim&&e.data.lim<=t.data.lim,ak=(e,t)=>{switch(t){case`network-simplex`:ck(e);break;case`tight-tree`:sk(e);break;case`longest-path`:ok(e);break;default:sk(e)}},ok=RO,sk=e=>{zO(e),UO(e)},ck=e=>{qO(e)},lk=(e,t)=>{let{edgeLabelSpace:n,keepNodeOrder:r,prevGraph:i,rankdir:a,ranksep:o}=t;!r&&i&&dk(e,i);let s=vk(e);n&&(t.ranksep=yk(s,{rankdir:a,ranksep:o}));let c;try{c=uk(s,t)}catch(e){if(e.message===`Not possible to find intersection inside of the rectangle`){console.error(`The following error may be caused by improper layer setting, please make sure your manual layer setting does not violate the graph's structure:
|
|
13
|
+
`,e);return}throw e}return fk(e,s),c},uk=(e,t)=>{let{ranker:n,rankdir:r=`tb`,nodeOrder:i,keepNodeOrder:a,align:o,nodesep:s=50,edgesep:c=20,ranksep:l=50}=t;Ok(e),pD(e);let{nestingRoot:u,nodeRankFactor:d}=BD(e);ak(vD(e),n),bk(e),CD(e,d),WD(e,u),SD(e),xk(e),Sk(e);let f=[];qD(e,f),xO(e,f),AD(e),a&&vO(e,i),mO(e,a),kk(e),MD(e,r),LO(e,{align:o,nodesep:s,edgesep:c,ranksep:l}),Ak(e),Dk(e),YD(e,f),Tk(e),ND(e,r);let{width:p,height:m}=Ck(e);return wk(e),Ek(e),mD(e),{width:p,height:m}},dk=(e,t)=>{e.getAllNodes().forEach(n=>{let r=e.getNode(n.id);if(t.hasNode(n.id)){let e=t.getNode(n.id);r.data.fixorder=e.data._order,delete e.data._order}else delete r.data.fixorder})},fk=(e,t)=>{e.getAllNodes().forEach(n=>{let r=e.getNode(n.id);if(r){let e=t.getNode(n.id);r.data.x=e.data.x,r.data.y=e.data.y,r.data._order=e.data.order,r.data._rank=e.data.rank,t.getChildren(n.id)?.length&&(r.data.width=e.data.width,r.data.height=e.data.height)}}),e.getAllEdges().forEach(n=>{let r=e.getEdge(n.id),i=t.getEdge(n.id);r.data.points=i?i.data.points:[],i&&i.data.hasOwnProperty(`x`)&&(r.data.x=i.data.x,r.data.y=i.data.y)})},pk=[`width`,`height`,`layer`,`fixorder`],mk={width:0,height:0},hk=[`minlen`,`weight`,`width`,`height`,`labeloffset`],gk={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:`r`},_k=[`labelpos`],vk=e=>{let t=new nD({tree:[]});return e.getAllNodes().forEach(n=>{let r=Mk(e.getNode(n.id).data),i=jk(Object.assign(Object.assign({},mk),r),pk);t.hasNode(n.id)||t.addNode({id:n.id,data:Object.assign({},i)});let a=e.hasTreeStructure(`combo`)?e.getParent(n.id,`combo`):e.getParent(n.id);lE(a)||(t.hasNode(a.id)||t.addNode(Object.assign({},a)),t.setParent(n.id,a.id))}),e.getAllEdges().forEach(n=>{let r=Mk(e.getEdge(n.id).data),i={};_k?.forEach(e=>{r[e]!==void 0&&(i[e]=r[e])}),t.addEdge({id:n.id,source:n.source,target:n.target,data:Object.assign({},gk,jk(r,hk),i)})}),t},yk=(e,t)=>{let{ranksep:n=0,rankdir:r}=t;return e.getAllNodes().forEach(e=>{isNaN(e.data.layer)||e.data.layer||(e.data.layer=0)}),e.getAllEdges().forEach(e=>{e.data.minlen*=2,e.data.labelpos?.toLowerCase()!==`c`&&(r===`TB`||r===`BT`?e.data.width+=e.data.labeloffset:e.data.height+=e.data.labeloffset)}),n/2},bk=e=>{e.getAllEdges().forEach(t=>{if(t.data.width&&t.data.height){let n=e.getNode(t.source);gD(e,`edge-proxy`,{e:t,rank:(e.getNode(t.target).data.rank-n.data.rank)/2+n.data.rank},`_ep`)}})},xk=e=>{let t=0;return e.getAllNodes().forEach(n=>{n.data.borderTop&&(n.data.minRank=e.getNode(n.data.borderTop)?.data.rank,n.data.maxRank=e.getNode(n.data.borderBottom)?.data.rank,t=Math.max(t,n.data.maxRank||-1/0))}),t},Sk=e=>{e.getAllNodes().forEach(t=>{t.data.dummy===`edge-proxy`&&(e.getEdge(t.data.e.id).data.labelRank=t.data.rank,e.removeNode(t.id))})},Ck=(e,t)=>{let n,r=0,i,a=0,{marginx:o=0,marginy:s=0}={},c=e=>{if(!e.data)return;let t=e.data.x,o=e.data.y,s=e.data.width,c=e.data.height;!isNaN(t)&&!isNaN(s)&&(n===void 0&&(n=t-s/2),n=Math.min(n,t-s/2),r=Math.max(r,t+s/2)),!isNaN(o)&&!isNaN(c)&&(i===void 0&&(i=o-c/2),i=Math.min(i,o-c/2),a=Math.max(a,o+c/2))};return e.getAllNodes().forEach(e=>{c(e)}),e.getAllEdges().forEach(e=>{e?.data.hasOwnProperty(`x`)&&c(e)}),n-=o,i-=s,e.getAllNodes().forEach(e=>{e.data.x-=n,e.data.y-=i}),e.getAllEdges().forEach(e=>{var t;(t=e.data.points)==null||t.forEach(e=>{e.x-=n,e.y-=i}),e.data.hasOwnProperty(`x`)&&(e.data.x-=n),e.data.hasOwnProperty(`y`)&&(e.data.y-=i)}),{width:r-n+o,height:a-i+s}},wk=e=>{e.getAllEdges().forEach(t=>{let n=e.getNode(t.source),r=e.getNode(t.target),i,a;t.data.points?(i=t.data.points[0],a=t.data.points[t.data.points.length-1]):(t.data.points=[],i={x:r.data.x,y:r.data.y},a={x:n.data.x,y:n.data.y}),t.data.points.unshift(bD(n.data,i)),t.data.points.push(bD(r.data,a))})},Tk=e=>{e.getAllEdges().forEach(e=>{if(e.data.hasOwnProperty(`x`))switch((e.data.labelpos===`l`||e.data.labelpos===`r`)&&(e.data.width-=e.data.labeloffset),e.data.labelpos){case`l`:e.data.x-=e.data.width/2+e.data.labeloffset;break;case`r`:e.data.x+=e.data.width/2+e.data.labeloffset;break}})},Ek=e=>{e.getAllEdges().forEach(e=>{var t;e.data.reversed&&((t=e.data.points)==null||t.reverse())})},Dk=e=>{e.getAllNodes().forEach(t=>{if(e.getChildren(t.id)?.length){let n=e.getNode(t.id),r=e.getNode(n.data.borderTop),i=e.getNode(n.data.borderBottom),a=e.getNode(n.data.borderLeft[n.data.borderLeft?.length-1]),o=e.getNode(n.data.borderRight[n.data.borderRight?.length-1]);n.data.width=Math.abs(o?.data.x-a?.data.x)||10,n.data.height=Math.abs(i?.data.y-r?.data.y)||10,n.data.x=(a?.data.x||0)+n.data.width/2,n.data.y=(r?.data.y||0)+n.data.height/2}}),e.getAllNodes().forEach(t=>{t.data.dummy===`border`&&e.removeNode(t.id)})},Ok=e=>{e.getAllEdges().forEach(t=>{if(t.source===t.target){let n=e.getNode(t.source);n.data.selfEdges||(n.data.selfEdges=[]),n.data.selfEdges.push(t),e.removeEdge(t.id)}})},kk=e=>{xD(e)?.forEach(t=>{let n=0;t?.forEach((t,r)=>{var i;let a=e.getNode(t);a.data.order=r+n,(i=a.data.selfEdges)==null||i.forEach(t=>{gD(e,`selfedge`,{width:t.data.width,height:t.data.height,rank:a.data.rank,order:r+ ++n,e:t},`_se`)}),delete a.data.selfEdges})})},Ak=e=>{e.getAllNodes().forEach(t=>{let n=e.getNode(t.id);if(n.data.dummy===`selfedge`){let r=e.getNode(n.data.e.source),i=r.data.x+r.data.width/2,a=r.data.y,o=n.data.x-i,s=r.data.height/2;e.hasEdge(n.data.e.id)?e.updateEdgeData(n.data.e.id,n.data.e.data):e.addEdge({id:n.data.e.id,source:n.data.e.source,target:n.data.e.target,data:n.data.e.data}),e.removeNode(t.id),n.data.e.data.points=[{x:i+2*o/3,y:a-s},{x:i+5*o/6,y:a-s},{y:a,x:i+o},{x:i+5*o/6,y:a+s},{x:i+2*o/3,y:a+s}],n.data.e.data.x=n.data.x,n.data.e.data.y=n.data.y}})},jk=(e,t)=>{let n={};return t?.forEach(t=>{e[t]!==void 0&&(n[t]=+e[t])}),n},Mk=(e={})=>{let t={};return Object.keys(e).forEach(n=>{t[n.toLowerCase()]=e[n]}),t},Nk={nodeSize:10,nodeSpacing:0,rankdir:`TB`,nodesep:50,ranksep:50,edgeLabelSpace:!0,ranker:`tight-tree`,controlPoints:!1,radial:!1,focusNode:null},Pk=class extends $E{constructor(){super(...arguments),this.id=`antv-dagre`}getDefaultOptions(){return Nk}layout(e){return IT(this,void 0,void 0,function*(){let{nodeSize:t,nodeSpacing:n,align:r,rankdir:i=`TB`,ranksep:a,nodesep:o,edgeLabelSpace:s,ranker:c=`tight-tree`,nodeOrder:l,begin:u,controlPoints:d,radial:f,sortByCombo:p,preset:m,ranksepFunc:h,nodesepFunc:g}=e,_=pE(h,a??50,`node`),v=pE(g,o??50,`node`),y=v,b=_;(i===`LR`||i===`RL`)&&(y=_,b=v);let x=new nD({tree:[]}),S=this.model.nodes(),C=this.model.edges(),w=hE(t,n,Nk.nodeSize,Nk.nodeSpacing);S.forEach(e=>{let t=e._original,n=w(t),r=b(t),i=y(t),a=n[0]+2*i,o=n[1]+2*r,s=e.data?.layer;oE(s)?x.addNode({id:e.id,data:{width:a,height:o,layer:s,originalWidth:n[0],originalHeight:n[1]}}):x.addNode({id:e.id,data:{width:a,height:o,originalWidth:n[0],originalHeight:n[1]}})}),C.forEach(e=>{x.addEdge({id:e.id,source:e.source,target:e.target,data:{}})}),p&&(x.attachTreeStructure(`combo`),S.forEach(e=>{let t=e?.parentId;t!==void 0&&x.hasNode(t)&&x.setParent(e.id,t,`combo`)}));let T=null;m?.length&&(T=new nD,m.forEach(e=>{T.addNode({id:e.id,data:e.data})})),lk(x,{prevGraph:T,edgeLabelSpace:s,keepNodeOrder:!!l,nodeOrder:l||[],acyclicer:`greedy`,ranker:c,rankdir:i,nodesep:o,align:r});let E=[0,0];if(u){let e=1/0,t=1/0;x.getAllNodes().forEach(n=>{e>n.data.x&&(e=n.data.x),t>n.data.y&&(t=n.data.y)}),x.getAllEdges().forEach(n=>{var r;(r=n.data.points)==null||r.forEach(n=>{e>n.x&&(e=n.x),t>n.y&&(t=n.y)})}),E[0]=u[0]-e,E[1]=u[1]-t}let D=i===`LR`||i===`RL`;if(!f){let e=new Set,t=i===`BT`||i===`RL`?(e,t)=>t-e:(e,t)=>e-t;x.getAllNodes().forEach(t=>{t.data.x=t.data.x+E[0],t.data.y=t.data.y+E[1],e.add(D?t.data.x:t.data.y)});let n=Array.from(e).sort(t),r=D?(e,t)=>e.x!==t.x:(e,t)=>e.y!==t.y,a=D?(e,t,n)=>{let r=Math.max(t.y,n.y),i=Math.min(t.y,n.y);return e.filter(e=>e.y<=r&&e.y>=i)}:(e,t,n)=>{let r=Math.max(t.x,n.x),i=Math.min(t.x,n.x);return e.filter(e=>e.x<=r&&e.x>=i)};x.getAllEdges().forEach((e,t)=>{s&&d&&e.data.type!==`loop`&&(e.data.controlPoints=Fk(e.data.points?.map(({x:e,y:t})=>({x:e+E[0],y:t+E[1]})),x.getNode(e.source),x.getNode(e.target),n,D,r,a))})}this.model.forEachNode(e=>{let t=x.getNode(e.id);if(t){let{x:n,y:r,width:i,height:a,originalWidth:o,originalHeight:s}=t.data,c=p?x.getChildren(e.id,`combo`):x.getChildren(e.id);if(c.length>0){let t=1/0,n=-1/0,r=1/0,i=-1/0;c.forEach(e=>{let a=e.id,o=x.getNode(a);if(o?.data){let e=o.data.x,a=o.data.y,s=o.data.originalWidth||o.data.width||0,c=o.data.originalHeight||o.data.height||0;t=Math.min(t,e-s/2),n=Math.max(n,e+s/2),r=Math.min(r,a-c/2),i=Math.max(i,a+c/2)}});let a=(n-t||0)+40,o=(i-r||0)+40;e.x=(t+n)/2,e.y=(r+i)/2,e.size=[a,o]}else e.x=n,e.y=r,e.size=[o,s]}}),this.model.forEachEdge(e=>{let t=x.getEdge(e.id);t&&t.data.controlPoints&&(e.points=t.data.controlPoints.map(gE))})})}},Fk=(e,t,n,r,i,a,o)=>{let s=e?.slice(1,e.length-1)||[];if(t&&n){let{x:e,y:c}=t.data,{x:l,y:u}=n.data;if(i&&(e=t.data.y,c=t.data.x,l=n.data.y,u=n.data.x),u!==c&&e!==l){let d=r.indexOf(c),f=r[d+1];if(f){let e=s[0],t=i?{x:(c+f)/2,y:e?.y||l}:{x:e?.x||l,y:(c+f)/2};(!e||a(e,t))&&s.unshift(t)}let p=r.indexOf(u),m=Math.abs(p-d);if(m===1)s=o(s,t.data,n.data),s.length||s.push(i?{x:(c+u)/2,y:e}:{x:e,y:(c+u)/2});else if(m>1){let t=r[p-1];if(t){let n=s[s.length-1],r=i?{x:(u+t)/2,y:n?.y||l}:{x:n?.x||e,y:(u+t)/2};(!n||a(n,r))&&s.push(r)}}}}return s};function Ik(e,t,n=2){if(e.nodeCount()===1){let r=e.firstNode();r.x=t[0],r.y=t[1],n===3&&(r.z=t[2]||0)}}function Lk(e,t){let n=e.nodes();return n.sort(t),e.setNodeOrder(n),e}function Rk(e,t=`desc`){return Lk(e,(n,r)=>{let i=e.degree(n.id),a=e.degree(r.id);return t===`asc`?i-a:a-i})}function zk(e){return Lk(e,(e,t)=>{let n=e.id,r=t.id;return typeof n==`number`&&typeof r==`number`?n-r:String(n).localeCompare(String(r))})}function Bk(e,t){return Lk(e,(n,r)=>t(e.originalNode(n.id),e.originalNode(r.id)))}function Vk(e,t=!1){let n=e.nodeCount();if(n===0)return e;let r=e.nodes(),i=[r[0]],a={};a[r[0].id]=!0;let o=0,s=0;return e.forEachNode(c=>{if(s!==0){let l=e.degree(c.id,`both`),u=s<n-1?e.degree(r[s+1].id,`both`):0,d=i[o].id,f=e.neighbors(d,`both`).includes(c.id);if((s===n-1||l!==u||f)&&!a[c.id])i.push(c),a[c.id]=!0,o++;else{let o=t?e.successors(d):e.neighbors(d),s=!1;for(let t=0;t<o.length;t++){let n=o[t],r=e.node(n);if(r&&e.degree(n)===e.degree(c.id)&&!a[n]){i.push(r),a[n]=!0,s=!0;break}}let l=0;for(;!s&&(a[r[l].id]||(i.push(r[l]),a[r[l].id]=!0,s=!0),l++,l!==n););}}s++}),e.setNodeOrder(i),e}var Hk=e=>{let{width:t,height:n,center:r}=e,i=t??(typeof window<`u`?window.innerWidth:0),a=n??(typeof window<`u`?window.innerHeight:0);return{width:i,height:a,center:r??[i/2,a/2]}},Uk={radius:null,startRadius:null,endRadius:null,startAngle:0,endAngle:2*Math.PI,clockwise:!0,divisions:1,ordering:null,angleRatio:1,nodeSize:10,nodeSpacing:0},Wk=class extends $E{constructor(){super(...arguments),this.id=`circular`}getDefaultOptions(){return Uk}layout(){return IT(this,void 0,void 0,function*(){let{width:e,height:t,center:n}=Hk(this.options),r=this.model.nodeCount();if(!r||r===1){Ik(this.model,n);return}let{ordering:i,nodeSpacing:a,nodeSize:o,endAngle:s=2*Math.PI,startAngle:c=0,divisions:l,angleRatio:u,clockwise:d}=this.options;i===`topology`?Vk(this.model,!1):i===`topology-directed`?Vk(this.model,!0):i===`degree`&&Rk(this.model,`asc`);let{radius:f,startRadius:p,endRadius:m}=this.options,h=this.model.nodes(),g=hE(o,a,Uk.nodeSize,Uk.nodeSpacing);if(a){let e=0;for(let t of h)e+=Math.max(...g(t._original));f=e/(2*Math.PI)}else !f&&!p&&!m?f=Math.min(t,e)/2:!p&&m?p=m:p&&!m&&(m=p);let _=(s-c)/r*u,v=Math.ceil(r/l),y=2*Math.PI/l;for(let e=0;e<r;){let t=h[e],i=f;!i&&p!==null&&m!==null&&(i=p+e*(m-p)/(r-1)),i||=10+e*100/(r-1);let a=Math.floor(e/v),o=e%v*_+y*a,l=c+o;d||(l=s-o),t.x=n[0]+Math.cos(l)*i,t.y=n[1]+Math.sin(l)*i,e++}})}},Gk={nodeSize:30,nodeSpacing:10,preventOverlap:!1,sweep:void 0,equidistant:!1,startAngle:3/2*Math.PI,clockwise:!0,maxLevelDiff:void 0,sortBy:`degree`},Kk=class extends $E{constructor(){super(...arguments),this.id=`concentric`}getDefaultOptions(){return Gk}layout(){return IT(this,void 0,void 0,function*(){let{width:e,height:t,center:n}=Hk(this.options),r=this.model.nodeCount();if(!r||r===1){Ik(this.model,n);return}let{sortBy:i,maxLevelDiff:a,sweep:o,clockwise:s,equidistant:c,preventOverlap:l,startAngle:u=Gk.startAngle,nodeSize:d,nodeSpacing:f}=this.options,p=!i||i===`degree`?`degree`:fE(i,[`node`]);p===`degree`?Rk(this.model):Bk(this.model,(e,t)=>{let n=p(e),r=p(t);return n===r?0:n>r?-1:1});let m=this.model.nodes(),h=new Map;for(let e of m){let t=p===`degree`?this.model.degree(e.id):p(e._original);h.set(e.id,t)}let g=this.model.firstNode(),_=a||h.get(g.id)/4,v=hE(d,f,Gk.nodeSize,Gk.nodeSpacing),y=new Map;for(let e of m)y.set(e.id,Math.max(...v(e._original)));let b=[{nodes:[]}],x=b[0];for(let e=0;e<r;e++){let t=m[e];if(x.nodes.length>0){let e=x.nodes[0],n=Math.abs(h.get(e.id)-h.get(t.id));_&&n>=_&&(x={nodes:[]},b.push(x))}x.nodes.push(t)}for(let e of b){let t=e.nodes.map(e=>y.get(e.id));e.nodeSizes=t,e.maxNodeSize=Math.max(...t)}if(b.forEach(e=>{e.dTheta=(o===void 0?2*Math.PI-2*Math.PI/e.nodes.length:o)/Math.max(1,e.nodes.length-1)}),l){let e=0;for(let t=0;t<b.length;t++){let n=b[t];if(n.nodes.length>1){let t=n.nodeSizes||[],r=0;for(let e=0;e<t.length-1;e++)r=Math.max(r,(t[e]+t[e+1])/2);let i=Math.cos(n.dTheta)-Math.cos(0),a=Math.sin(n.dTheta)-Math.sin(0),o=Math.sqrt(i*i+a*a),s=o>0?r/o:0;e=Math.max(s,e)}if(n.r=e,t<b.length-1){let r=b[t+1],i=((n.maxNodeSize||0)+(r.maxNodeSize||0))/2;e+=Math.max(0,i)}}}else{let n=0;b[0].r=0;for(let e=0;e<b.length-1;e++){let t=b[e],r=b[e+1],i=((t.maxNodeSize||0)+(r.maxNodeSize||0))/2;n+=Math.max(0,i),r.r=n}let r=Math.min(e,t)/2,i=1;for(let e of b){let t=e.r||0;if(t<=0)continue;let n=r-(e.maxNodeSize||0);if(n<=0){i=0;break}i=Math.min(i,n/t)}if(i=Math.max(0,Math.min(1,i)),i!==1)for(let e of b)e.r=(e.r||0)*i}if(c){let e=0,t=0;for(let n=0;n<b.length;n++){let r=(b[n].r||0)-t;e=Math.max(e,r)}t=0,b.forEach((n,r)=>{r===0&&(t=n.r||0),n.r=t,t+=e})}b.forEach(e=>{let t=e.dTheta||0,r=e.r||0;e.nodes.forEach((e,i)=>{let a=u+(s?1:-1)*t*i;e.x=n[0]+r*Math.cos(a),e.y=n[1]+r*Math.sin(a)})})})}},qk=(function(e){var t=typeof e;return e!==null&&t===`object`||t===`function`});function Jk(e,...t){return t.forEach(t=>{t&&Object.keys(t).forEach(n=>{let r=t[n];r!==void 0&&(e[n]=r)})}),e}var Yk=1664525,Xk=1013904223,Zk=4294967296;function Qk(){let e=1;return()=>(e=(Yk*e+Xk)%Zk)/Zk}var $k=0,eA=0,tA=0,nA=1e3,rA,iA,aA=0,oA=0,sA=0,cA=typeof performance==`object`&&performance.now?performance:Date,lA=typeof window==`object`&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function uA(){return oA||=(lA(dA),cA.now()+sA)}function dA(){oA=0}function fA(){this._call=this._time=this._next=null}fA.prototype=pA.prototype={constructor:fA,restart:function(e,t,n){if(typeof e!=`function`)throw TypeError(`callback is not a function`);n=(n==null?uA():+n)+(t==null?0:+t),!this._next&&iA!==this&&(iA?iA._next=this:rA=this,iA=this),this._call=e,this._time=n,vA()},stop:function(){this._call&&(this._call=null,this._time=1/0,vA())}};function pA(e,t,n){var r=new fA;return r.restart(e,t,n),r}function mA(){uA(),++$k;for(var e=rA,t;e;)(t=oA-e._time)>=0&&e._call.call(void 0,t),e=e._next;--$k}function hA(){oA=(aA=cA.now())+sA,$k=eA=0;try{mA()}finally{$k=0,_A(),oA=0}}function gA(){var e=cA.now(),t=e-aA;t>nA&&(sA-=t,aA=e)}function _A(){for(var e,t=rA,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:rA=n);iA=e,vA(r)}function vA(e){$k||(eA&&=clearTimeout(eA),e-oA>24?(e<1/0&&(eA=setTimeout(hA,e-cA.now()-sA)),tA&&=clearInterval(tA)):(tA||=(aA=cA.now(),setInterval(gA,nA)),$k=1,lA(hA)))}var yA={value:()=>{}};function bA(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+``)||r in n||/[\s.]/.test(r))throw Error(`illegal type: `+r);n[r]=[]}return new xA(n)}function xA(e){this._=e}function SA(e,t){return e.trim().split(/^|\s+/).map(function(e){var n=``,r=e.indexOf(`.`);if(r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}xA.prototype=bA.prototype={constructor:xA,on:function(e,t){var n=this._,r=SA(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((i=(e=r[a]).type)&&(i=CA(n[i],e.name)))return i;return}if(t!=null&&typeof t!=`function`)throw Error(`invalid callback: `+t);for(;++a<o;)if(i=(e=r[a]).type)n[i]=wA(n[i],e.name,t);else if(t==null)for(i in n)n[i]=wA(n[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new xA(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,n)}};function CA(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function wA(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=yA,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}function TA(e){return e.x}function EA(e){return e.y}var DA=10,OA=Math.PI*(3-Math.sqrt(5));function kA(e){var t,n=1,r=.001,i=1-r**(1/300),a=0,o=.6,s=new Map,c=pA(d),l=bA(`tick`,`end`),u=Qk();e??=[];function d(){f(),l.call(`tick`,t),n<r&&(c.stop(),l.call(`end`,t))}function f(r){var c,l=e.length,u;r===void 0&&(r=1);for(var d=0;d<r;++d)for(n+=(a-n)*i,s.forEach(function(e){e(n)}),c=0;c<l;++c)u=e[c],u.fx==null?u.x+=u.vx*=o:(u.x=u.fx,u.vx=0),u.fy==null?u.y+=u.vy*=o:(u.y=u.fy,u.vy=0);return t}function p(){for(var t=0,n=e.length,r;t<n;++t){if(r=e[t],r.index=t,r.fx!=null&&(r.x=r.fx),r.fy!=null&&(r.y=r.fy),isNaN(r.x)||isNaN(r.y)){var i=DA*Math.sqrt(.5+t),a=t*OA;r.x=i*Math.cos(a),r.y=i*Math.sin(a)}(isNaN(r.vx)||isNaN(r.vy))&&(r.vx=r.vy=0)}}function m(t){return t.initialize&&t.initialize(e,u),t}return p(),t={tick:f,restart:function(){return c.restart(d),t},stop:function(){return c.stop(),t},nodes:function(n){return arguments.length?(e=n,p(),s.forEach(m),t):e},alpha:function(e){return arguments.length?(n=+e,t):n},alphaMin:function(e){return arguments.length?(r=+e,t):r},alphaDecay:function(e){return arguments.length?(i=+e,t):+i},alphaTarget:function(e){return arguments.length?(a=+e,t):a},velocityDecay:function(e){return arguments.length?(o=1-e,t):1-o},randomSource:function(e){return arguments.length?(u=e,s.forEach(m),t):u},force:function(e,n){return arguments.length>1?(n==null?s.delete(e):s.set(e,m(n)),t):s.get(e)},find:function(t,n,r){var i=0,a=e.length,o,s,c,l,u;for(r==null?r=1/0:r*=r,i=0;i<a;++i)l=e[i],o=t-l.x,s=n-l.y,c=o*o+s*s,c<r&&(u=l,r=c);return u},on:function(e,n){return arguments.length>1?(l.on(e,n),t):l.on(e)}}}function AA(e){return function(){return e}}function jA(e){var t=AA(.1),n,r,i;typeof e!=`function`&&(e=AA(e==null?0:+e));function a(e){for(var t=0,a=n.length,o;t<a;++t)o=n[t],o.vx+=(i[t]-o.x)*r[t]*e}function o(){if(n){var a,o=n.length;for(r=Array(o),i=Array(o),a=0;a<o;++a)r[a]=isNaN(i[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return a.initialize=function(e){n=e,o()},a.strength=function(e){return arguments.length?(t=typeof e==`function`?e:AA(+e),o(),a):t},a.x=function(t){return arguments.length?(e=typeof t==`function`?t:AA(+t),o(),a):e},a}function MA(e){var t=AA(.1),n,r,i;typeof e!=`function`&&(e=AA(e==null?0:+e));function a(e){for(var t=0,a=n.length,o;t<a;++t)o=n[t],o.vy+=(i[t]-o.y)*r[t]*e}function o(){if(n){var a,o=n.length;for(r=Array(o),i=Array(o),a=0;a<o;++a)r[a]=isNaN(i[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return a.initialize=function(e){n=e,o()},a.strength=function(e){return arguments.length?(t=typeof e==`function`?e:AA(+e),o(),a):t},a.y=function(t){return arguments.length?(e=typeof t==`function`?t:AA(+t),o(),a):e},a}function NA(e){return(e()-.5)*1e-6}function PA(e){let t=+this._x.call(null,e),n=+this._y.call(null,e);return FA(this.cover(t,n),t,n,e)}function FA(e,t,n,r){if(isNaN(t)||isNaN(n))return e;var i,a=e._root,o={data:r},s=e._x0,c=e._y0,l=e._x1,u=e._y1,d,f,p,m,h,g,_,v;if(!a)return e._root=o,e;for(;a.length;)if((h=t>=(d=(s+l)/2))?s=d:l=d,(g=n>=(f=(c+u)/2))?c=f:u=f,i=a,!(a=a[_=g<<1|h]))return i[_]=o,e;if(p=+e._x.call(null,a.data),m=+e._y.call(null,a.data),t===p&&n===m)return o.next=a,i?i[_]=o:e._root=o,e;do i=i?i[_]=[,,,,]:e._root=[,,,,],(h=t>=(d=(s+l)/2))?s=d:l=d,(g=n>=(f=(c+u)/2))?c=f:u=f;while((_=g<<1|h)==(v=(m>=f)<<1|p>=d));return i[v]=a,i[_]=o,e}function IA(e){var t,n,r=e.length,i,a,o=Array(r),s=Array(r),c=1/0,l=1/0,u=-1/0,d=-1/0;for(n=0;n<r;++n)isNaN(i=+this._x.call(null,t=e[n]))||isNaN(a=+this._y.call(null,t))||(o[n]=i,s[n]=a,i<c&&(c=i),i>u&&(u=i),a<l&&(l=a),a>d&&(d=a));if(c>u||l>d)return this;for(this.cover(c,l).cover(u,d),n=0;n<r;++n)FA(this,o[n],s[n],e[n]);return this}function LA(e,t){if(isNaN(e=+e)||isNaN(t=+t))return this;var n=this._x0,r=this._y0,i=this._x1,a=this._y1;if(isNaN(n))i=(n=Math.floor(e))+1,a=(r=Math.floor(t))+1;else{for(var o=i-n||1,s=this._root,c,l;n>e||e>=i||r>t||t>=a;)switch(l=(t<r)<<1|e<n,c=[,,,,],c[l]=s,s=c,o*=2,l){case 0:i=n+o,a=r+o;break;case 1:n=i-o,a=r+o;break;case 2:i=n+o,r=a-o;break;case 3:n=i-o,r=a-o;break}this._root&&this._root.length&&(this._root=s)}return this._x0=n,this._y0=r,this._x1=i,this._y1=a,this}function RA(){var e=[];return this.visit(function(t){if(!t.length)do e.push(t.data);while(t=t.next)}),e}function zA(e){return arguments.length?this.cover(+e[0][0],+e[0][1]).cover(+e[1][0],+e[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function BA(e,t,n,r,i){this.node=e,this.x0=t,this.y0=n,this.x1=r,this.y1=i}function VA(e,t,n){var r,i=this._x0,a=this._y0,o,s,c,l,u=this._x1,d=this._y1,f=[],p=this._root,m,h;for(p&&f.push(new BA(p,i,a,u,d)),n==null?n=1/0:(i=e-n,a=t-n,u=e+n,d=t+n,n*=n);m=f.pop();)if(!(!(p=m.node)||(o=m.x0)>u||(s=m.y0)>d||(c=m.x1)<i||(l=m.y1)<a))if(p.length){var g=(o+c)/2,_=(s+l)/2;f.push(new BA(p[3],g,_,c,l),new BA(p[2],o,_,g,l),new BA(p[1],g,s,c,_),new BA(p[0],o,s,g,_)),(h=(t>=_)<<1|e>=g)&&(m=f[f.length-1],f[f.length-1]=f[f.length-1-h],f[f.length-1-h]=m)}else{var v=e-+this._x.call(null,p.data),y=t-+this._y.call(null,p.data),b=v*v+y*y;if(b<n){var x=Math.sqrt(n=b);i=e-x,a=t-x,u=e+x,d=t+x,r=p.data}}return r}function HA(e){if(isNaN(u=+this._x.call(null,e))||isNaN(d=+this._y.call(null,e)))return this;var t,n=this._root,r,i,a,o=this._x0,s=this._y0,c=this._x1,l=this._y1,u,d,f,p,m,h,g,_;if(!n)return this;if(n.length)for(;;){if((m=u>=(f=(o+c)/2))?o=f:c=f,(h=d>=(p=(s+l)/2))?s=p:l=p,t=n,!(n=n[g=h<<1|m]))return this;if(!n.length)break;(t[g+1&3]||t[g+2&3]||t[g+3&3])&&(r=t,_=g)}for(;n.data!==e;)if(i=n,!(n=n.next))return this;return(a=n.next)&&delete n.next,i?(a?i.next=a:delete i.next,this):t?(a?t[g]=a:delete t[g],(n=t[0]||t[1]||t[2]||t[3])&&n===(t[3]||t[2]||t[1]||t[0])&&!n.length&&(r?r[_]=n:this._root=n),this):(this._root=a,this)}function UA(e){for(var t=0,n=e.length;t<n;++t)this.remove(e[t]);return this}function WA(){return this._root}function GA(){var e=0;return this.visit(function(t){if(!t.length)do++e;while(t=t.next)}),e}function KA(e){var t=[],n,r=this._root,i,a,o,s,c;for(r&&t.push(new BA(r,this._x0,this._y0,this._x1,this._y1));n=t.pop();)if(!e(r=n.node,a=n.x0,o=n.y0,s=n.x1,c=n.y1)&&r.length){var l=(a+s)/2,u=(o+c)/2;(i=r[3])&&t.push(new BA(i,l,u,s,c)),(i=r[2])&&t.push(new BA(i,a,u,l,c)),(i=r[1])&&t.push(new BA(i,l,o,s,u)),(i=r[0])&&t.push(new BA(i,a,o,l,u))}return this}function qA(e){var t=[],n=[],r;for(this._root&&t.push(new BA(this._root,this._x0,this._y0,this._x1,this._y1));r=t.pop();){var i=r.node;if(i.length){var a,o=r.x0,s=r.y0,c=r.x1,l=r.y1,u=(o+c)/2,d=(s+l)/2;(a=i[0])&&t.push(new BA(a,o,s,u,d)),(a=i[1])&&t.push(new BA(a,u,s,c,d)),(a=i[2])&&t.push(new BA(a,o,d,u,l)),(a=i[3])&&t.push(new BA(a,u,d,c,l))}n.push(r)}for(;r=n.pop();)e(r.node,r.x0,r.y0,r.x1,r.y1);return this}function JA(e){return e[0]}function YA(e){return arguments.length?(this._x=e,this):this._x}function XA(e){return e[1]}function ZA(e){return arguments.length?(this._y=e,this):this._y}function QA(e,t,n){var r=new $A(t??JA,n??XA,NaN,NaN,NaN,NaN);return e==null?r:r.addAll(e)}function $A(e,t,n,r,i,a){this._x=e,this._y=t,this._x0=n,this._y0=r,this._x1=i,this._y1=a,this._root=void 0}function ej(e){for(var t={data:e.data},n=t;e=e.next;)n=n.next={data:e.data};return t}var tj=QA.prototype=$A.prototype;tj.copy=function(){var e=new $A(this._x,this._y,this._x0,this._y0,this._x1,this._y1),t=this._root,n,r;if(!t)return e;if(!t.length)return e._root=ej(t),e;for(n=[{source:t,target:e._root=[,,,,]}];t=n.pop();)for(var i=0;i<4;++i)(r=t.source[i])&&(r.length?n.push({source:r,target:t.target[i]=[,,,,]}):t.target[i]=ej(r));return e},tj.add=PA,tj.addAll=IA,tj.cover=LA,tj.data=RA,tj.extent=zA,tj.find=VA,tj.remove=HA,tj.removeAll=UA,tj.root=WA,tj.size=GA,tj.visit=KA,tj.visitAfter=qA,tj.x=YA,tj.y=ZA;function nj(e){return e.x+e.vx}function rj(e){return e.y+e.vy}function ij(e){var t,n,r,i=1,a=1;typeof e!=`function`&&(e=AA(e==null?1:+e));function o(){for(var e,o=t.length,c,l,u,d,f,p,m=0;m<a;++m)for(c=QA(t,nj,rj).visitAfter(s),e=0;e<o;++e)l=t[e],f=n[l.index],p=f*f,u=l.x+l.vx,d=l.y+l.vy,c.visit(h);function h(e,t,n,a,o){var s=e.data,c=e.r,m=f+c;if(s){if(s.index>l.index){var h=u-s.x-s.vx,g=d-s.y-s.vy,_=h*h+g*g;_<m*m&&(h===0&&(h=NA(r),_+=h*h),g===0&&(g=NA(r),_+=g*g),_=(m-(_=Math.sqrt(_)))/_*i,l.vx+=(h*=_)*(m=(c*=c)/(p+c)),l.vy+=(g*=_)*m,s.vx-=h*(m=1-m),s.vy-=g*m)}return}return t>u+m||a<u-m||n>d+m||o<d-m}}function s(e){if(e.data)return e.r=n[e.data.index];for(var t=e.r=0;t<4;++t)e[t]&&e[t].r>e.r&&(e.r=e[t].r)}function c(){if(t){var r,i=t.length,a;for(n=Array(i),r=0;r<i;++r)a=t[r],n[a.index]=+e(a,r,t)}}return o.initialize=function(e,n){t=e,r=n,c()},o.iterations=function(e){return arguments.length?(a=+e,o):a},o.strength=function(e){return arguments.length?(i=+e,o):i},o.radius=function(t){return arguments.length?(e=typeof t==`function`?t:AA(+t),c(),o):e},o}function aj(){var e,t,n,r,i=AA(-30),a,o=1,s=1/0,c=.81;function l(n){var i,a=e.length,o=QA(e,TA,EA).visitAfter(d);for(r=n,i=0;i<a;++i)t=e[i],o.visit(f)}function u(){if(e){var t,n=e.length,r;for(a=Array(n),t=0;t<n;++t)r=e[t],a[r.index]=+i(r,t,e)}}function d(e){var t=0,n,r,i=0,o,s,c;if(e.length){for(o=s=c=0;c<4;++c)(n=e[c])&&(r=Math.abs(n.value))&&(t+=n.value,i+=r,o+=r*n.x,s+=r*n.y);e.x=o/i,e.y=s/i}else{n=e,n.x=n.data.x,n.y=n.data.y;do t+=a[n.data.index];while(n=n.next)}e.value=t}function f(e,i,l,u){if(!e.value)return!0;var d=e.x-t.x,f=e.y-t.y,p=u-i,m=d*d+f*f;if(p*p/c<m)return m<s&&(d===0&&(d=NA(n),m+=d*d),f===0&&(f=NA(n),m+=f*f),m<o&&(m=Math.sqrt(o*m)),t.vx+=d*e.value*r/m,t.vy+=f*e.value*r/m),!0;if(!(e.length||m>=s)){(e.data!==t||e.next)&&(d===0&&(d=NA(n),m+=d*d),f===0&&(f=NA(n),m+=f*f),m<o&&(m=Math.sqrt(o*m)));do e.data!==t&&(p=a[e.data.index]*r/m,t.vx+=d*p,t.vy+=f*p);while(e=e.next)}}return l.initialize=function(t,r){e=t,n=r,u()},l.strength=function(e){return arguments.length?(i=typeof e==`function`?e:AA(+e),u(),l):i},l.distanceMin=function(e){return arguments.length?(o=e*e,l):Math.sqrt(o)},l.distanceMax=function(e){return arguments.length?(s=e*e,l):Math.sqrt(s)},l.theta=function(e){return arguments.length?(c=e*e,l):Math.sqrt(c)},l}function oj(e){return e.index}function sj(e,t){var n=e.get(t);if(!n)throw Error(`node not found: `+t);return n}function cj(e){var t=oj,n=d,r,i=AA(30),a,o,s,c,l,u=1;e??=[];function d(e){return 1/Math.min(s[e.source.index],s[e.target.index])}function f(t){for(var n=0,i=e.length;n<u;++n)for(var o=0,s,d,f,p,m,h,g;o<i;++o)s=e[o],d=s.source,f=s.target,p=f.x+f.vx-d.x-d.vx||NA(l),m=f.y+f.vy-d.y-d.vy||NA(l),h=Math.sqrt(p*p+m*m),h=(h-a[o])/h*t*r[o],p*=h,m*=h,f.vx-=p*(g=c[o]),f.vy-=m*g,d.vx+=p*(g=1-g),d.vy+=m*g}function p(){if(o){var n,i=o.length,l=e.length,u=new Map(o.map((e,n)=>[t(e,n,o),e])),d;for(n=0,s=Array(i);n<l;++n)d=e[n],d.index=n,typeof d.source!=`object`&&(d.source=sj(u,d.source)),typeof d.target!=`object`&&(d.target=sj(u,d.target)),s[d.source.index]=(s[d.source.index]||0)+1,s[d.target.index]=(s[d.target.index]||0)+1;for(n=0,c=Array(l);n<l;++n)d=e[n],c[n]=s[d.source.index]/(s[d.source.index]+s[d.target.index]);r=Array(l),m(),a=Array(l),h()}}function m(){if(o)for(var t=0,i=e.length;t<i;++t)r[t]=+n(e[t],t,e)}function h(){if(o)for(var t=0,n=e.length;t<n;++t)a[t]=+i(e[t],t,e)}return f.initialize=function(e,t){o=e,l=t,p()},f.links=function(t){return arguments.length?(e=t,p(),f):e},f.id=function(e){return arguments.length?(t=e,f):t},f.iterations=function(e){return arguments.length?(u=+e,f):u},f.strength=function(e){return arguments.length?(n=typeof e==`function`?e:AA(+e),m(),f):n},f.distance=function(e){return arguments.length?(i=typeof e==`function`?e:AA(+e),h(),f):i},f}var lj=(e,t)=>e[t];function uj(){function e(e){return()=>e}let t=e=>e.cluster,n=e(1),r=e(-1),i=e(100),a=e(.1),o=[0,0],s=[],c={},l=[],u=100,d=100,f={none:{x:0,y:0}},p=[],m,h=`force`,g=!0,_=.1;function v(e){if(!g)return v;m.tick(),w();for(let n=0,r=s.length,i,a=e*_;n<r;++n)i=s[n],i.vx||=0,i.vy||=0,i.vx+=(f[t(i._original)].x-i.x)*a,i.vy+=(f[t(i._original)].y-i.y)*a}function y(){s&&b()}function b(){if(!s||!s.length)return;let e=s[0];if(t(e._original)===void 0)throw Error(`Couldnt find the grouping attribute for the nodes. Make sure to set it up with forceInABox.groupBy('clusterAttr') before calling .links()`);let n=x();m=kA(n.nodes).force(`x`,jA(u).strength(.1)).force(`y`,MA(d).strength(.1)).force(`collide`,ij(e=>e.r).iterations(4)).force(`charge`,aj().strength(r)).force(`links`,cj(n.nodes.length?n.links:[]).distance(i).strength(a)),p=m.nodes(),w()}function x(){let e=[],t=[],n={},r=[],i={},a=[];return i=S(s),a=C(l),r=Object.keys(i),r.forEach((t,r)=>{let a=i[t];e.push({id:t,size:a.count,r:Math.sqrt(a.sumforceNodeSize/Math.PI)}),n[t]=r}),a.forEach(e=>{let r=lj(e,`source`),i=lj(e,`target`),a=n[r],o=n[i];a!==void 0&&o!==void 0&&t.push({source:a,target:o,count:e.count})}),{nodes:e,links:t}}function S(e){let r={};return e.forEach(e=>{let n=t(e._original);r[n]||(r[n]={count:0,sumforceNodeSize:0})}),e.forEach(e=>{let i=t(e._original),a=n(e._original),o=r[i];o.count+=1,o.sumforceNodeSize+=a*a*Math.PI*1.3,r[i]=o}),r}function C(e){let t={},n=[];return e.forEach(e=>{let n=T(e),r=0;t[n]!==void 0&&(r=t[n]),r+=1,t[n]=r}),Object.entries(t).forEach(([e,t])=>{let r=e.split(`~`)[0],i=e.split(`~`)[1];r!==void 0&&i!==void 0&&n.push({source:r,target:i,count:t})}),n}function w(){return f={none:{x:0,y:0}},p.forEach(e=>{f[e.id]={x:e.x-o[0],y:e.y-o[1]}}),f}function T(e){let n=lj(e,`source`),r=lj(e,`target`),i=t(c[n]._original),a=t(c[r]._original);return i<=a?`${i}~${a}`:`${a}~${i}`}function E(e){c={},e.forEach(e=>{c[e.id]=e})}function D(e){return arguments.length?(h=e,y(),v):h}function O(e){return arguments.length?typeof e==`string`?(t=t=>t[e],v):(t=e,v):t}function k(e){return arguments.length?(g=e,v):g}function A(e){return arguments.length?(_=e,v):_}function j(e){return arguments.length?(u=e,v):u}function ee(e){return arguments.length?(d=e,v):d}function M(e){return arguments.length?(E(e||[]),s=e||[],v):s}function te(e){return arguments.length?(l=e||[],y(),v):l}function ne(t){return arguments.length?(n=typeof t==`function`?t:e(+t),y(),v):n}function re(t){return arguments.length?(r=typeof t==`function`?t:e(+t),y(),v):r}function ie(t){return arguments.length?(i=typeof t==`function`?t:e(+t),y(),v):i}function N(t){return arguments.length?(a=typeof t==`function`?t:e(+t),y(),v):a}function ae(e){return arguments.length?(o=e,v):o}return v.initialize=e=>{s=e,y()},v.template=D,v.groupBy=O,v.enableGrouping=k,v.strength=A,v.centerX=j,v.centerY=ee,v.nodes=M,v.links=te,v.forceNodeSize=ne,v.nodeSize=v.forceNodeSize,v.forceCharge=re,v.forceLinkDistance=ie,v.forceLinkStrength=N,v.offset=ae,v.getFocis=w,v}var dj=function(e){return typeof e==`object`&&!!e},fj={}.toString,pj=function(e,t){return fj.call(e)===`[object `+t+`]`},mj=function(e){if(!dj(e)||!pj(e,`Object`))return!1;if(Object.getPrototypeOf(e)===null)return!0;for(var t=e;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t},hj=5;function gj(e,t){if(Object.hasOwn)return Object.hasOwn(e,t);if(e==null)throw TypeError(`Cannot convert undefined or null to object`);return Object.prototype.hasOwnProperty.call(Object(e),t)}function _j(e,t,n,r){for(var i in n||=0,r||=hj,t)if(gj(t,i)){var a=t[i];a!==null&&mj(a)?(mj(e[i])||(e[i]={}),n<r?_j(e[i],a,n+1,r):e[i]=t[i]):fO(a)?(e[i]=[],e[i]=e[i].concat(a)):a!==void 0&&(e[i]=a)}}var vj=function(e){for(var t=[...arguments].slice(1),n=0;n<t.length;n+=1)_j(e,t[n]);return e};function yj(e,t){var n,r=1;e??=0,t??=0;function i(){var i,a=n.length,o,s=0,c=0;for(i=0;i<a;++i)o=n[i],s+=o.x,c+=o.y;for(s=(s/a-e)*r,c=(c/a-t)*r,i=0;i<a;++i)o=n[i],o.x-=s,o.y-=c}return i.initialize=function(e){n=e},i.x=function(t){return arguments.length?(e=+t,i):e},i.y=function(e){return arguments.length?(t=+e,i):t},i.strength=function(e){return arguments.length?(r=+e,i):r},i}function bj(e,t,n){var r,i=AA(.1),a,o;typeof e!=`function`&&(e=AA(+e)),t??=0,n??=0;function s(e){for(var i=0,s=r.length;i<s;++i){var c=r[i],l=c.x-t||1e-6,u=c.y-n||1e-6,d=Math.sqrt(l*l+u*u),f=(o[i]-d)*a[i]*e/d;c.vx+=l*f,c.vy+=u*f}}function c(){if(r){var t,n=r.length;for(a=Array(n),o=Array(n),t=0;t<n;++t)o[t]=+e(r[t],t,r),a[t]=isNaN(o[t])?0:+i(r[t],t,r)}}return s.initialize=function(e){r=e,c()},s.strength=function(e){return arguments.length?(i=typeof e==`function`?e:AA(+e),c(),s):i},s.radius=function(t){return arguments.length?(e=typeof t==`function`?t:AA(+t),c(),s):e},s.x=function(e){return arguments.length?(t=+e,s):t},s.y=function(e){return arguments.length?(n=+e,s):n},s}var xj={edgeId:`edge.id`,manyBody:{strength:-30},preventOverlap:!1,nodeSize:10,nodeSpacing:0,x:!1,y:!1,clustering:!1,clusterNodeStrength:-1,clusterEdgeStrength:.1,clusterEdgeDistance:100,clusterFociStrength:.8,clusterNodeSize:10},Sj=class extends eD{getDefaultOptions(){return xj}mergeOptions(e,t){return vj({},e,t)}constructor(e){super(e),this.id=`d3-force`,this.d3Nodes=[],this.d3Edges=[],this.config={simulationAttrs:[`alpha`,`alphaMin`,`alphaDecay`,`alphaTarget`,`velocityDecay`,`randomSource`]},this.options.forceSimulation&&(this.simulation=this.options.forceSimulation)}stop(){return this.simulation&&this.simulation.stop(),this}tick(e=1){var t,n;if(this.simulation){for(let t=0;t<e;t++)this.simulation.tick();this.syncPositionsFromD3(),(n=(t=this.options).onTick)==null||n.call(t,this)}return this}restart(e){return this.simulation&&(e!==void 0&&this.simulation.alpha(e),this.simulation.restart()),this}reheat(){return this.restart(1)}getAlpha(){return this.simulation?.alpha()??0}setAlpha(e){return this.simulation&&this.simulation.alpha(e),this}getForce(e){return this.simulation?.force(e)}force(e,t){return this.simulation&&this.simulation.force(e,t),this}nodes(){return this.simulation?.nodes()??[]}find(e,t,n){if(this.simulation)return this.simulation.find(e,t,n)}setFixedPosition(e,t){let n=this.d3Nodes.find(t=>t.id===e),r=this.model.node(e);if(!r||!n)return;let i=[`fx`,`fy`,`fz`];if(t===null){i.forEach(e=>{delete r[e],delete n[e]});return}t.forEach((e,t)=>{t<i.length&&(typeof e==`number`||e===null)&&(r[i[t]]=e,n[i[t]]=e)})}parseOptions(e){let t=e;return t.iterations===void 0&&(t.link&&t.link.iterations===void 0&&(t.iterations=t.link.iterations),t.collide&&t.collide.iterations===void 0&&(t.iterations=t.collide.iterations)),t}layout(){var e;return IT(this,void 0,void 0,function*(){let t=this.parseOptions(this.options||{});this.createD3Copies();let n=this.setSimulation(t);return n.nodes(this.d3Nodes),(e=n.force(`link`))==null||e.links(this.d3Edges),new Promise(e=>{n.on(`end`,()=>{this.syncPositionsFromD3(),e()})})})}createD3Copies(){this.d3Nodes=[],this.d3Edges=[],this.model.forEachNode(e=>{this.d3Nodes.push(Object.assign({},e))}),this.model.forEachEdge(e=>{this.d3Edges.push(Object.assign({},e))})}syncPositionsFromD3(){this.d3Nodes.forEach(e=>{let t=this.model.node(e.id);t&&(t.x=e.x,t.y=e.y,e.z!==void 0&&(t.z=e.z),e.fx!==void 0&&(t.fx=e.fx),e.fy!==void 0&&(t.fy=e.fy),e.fz!==void 0&&(t.fz=e.fz),e.vx!==void 0&&(t.vx=e.vx),e.vy!==void 0&&(t.vy=e.vy),e.vz!==void 0&&(t.vz=e.vz))})}initSimulation(){return kA()}setSimulation(e){let t=this.simulation||this.options.forceSimulation||this.initSimulation();return this.simulation||=t.on(`tick`,()=>{var t;this.syncPositionsFromD3(),(t=e.onTick)==null||t.call(e,this)}),Cj(t,this.config.simulationAttrs.map(t=>[t,e[t]])),this.setupForces(t,e),t}setupForces(e,t){this.setupLinkForce(e,t),this.setupManyBodyForce(e,t),this.setupCenterForce(e,t),this.setupCollisionForce(e,t),this.setupXForce(e,t),this.setupYForce(e,t),this.setupRadialForce(e,t),this.setupClusterForce(e,t)}getCenterOptions(e){if(e.center===!1)return;let t=Hk({width:e.width,height:e.height});return Jk({},e.center||{},{x:t.width/2,y:t.height/2,strength:e.centerStrength})}setupCenterForce(e,t){let n=this.getCenterOptions(t);if(n){let t=e.force(`center`);t||(t=yj(n.x,n.y),e.force(`center`,t));let r=[];n.x!==void 0&&r.push([`x`,n.x]),n.y!==void 0&&r.push([`y`,n.y]),n.strength!==void 0&&r.push([`strength`,n.strength]),Cj(t,r)}else e.force(`center`,null)}getManyBodyOptions(e){if(e.manyBody!==!1)return Jk({},e.manyBody||{},{strength:e.nodeStrength?fE(e.nodeStrength,[`node`]):void 0,distanceMin:e.distanceMin,distanceMax:e.distanceMax,theta:e.theta})}setupManyBodyForce(e,t){let n=this.getManyBodyOptions(t);if(n){let t=e.force(`charge`);t||(t=aj(),e.force(`charge`,t));let r=[];n.strength!==void 0&&r.push([`strength`,n.strength]),n.distanceMin!==void 0&&r.push([`distanceMin`,n.distanceMin]),n.distanceMax!==void 0&&r.push([`distanceMax`,n.distanceMax]),n.theta!==void 0&&r.push([`theta`,n.theta]),Cj(t,r)}else e.force(`charge`,null)}getLinkOptions(e){if(e.link!==!1)return Jk({},e.link||{},{id:e.edgeId?fE(e.edgeId,[`edge`]):void 0,distance:e.linkDistance?fE(e.linkDistance,[`edge`]):void 0,strength:e.edgeStrength?fE(e.edgeStrength,[`edge`]):void 0,iterations:e.edgeIterations})}setupLinkForce(e,t){let n=this.model.edges(),r=this.getLinkOptions(t);if(n.length>0&&r){let t=e.force(`link`);t||(t=cj(),e.force(`link`,t));let n=[];r.id!==void 0&&n.push([`id`,r.id]),r.distance!==void 0&&n.push([`distance`,r.distance]),r.strength!==void 0&&n.push([`strength`,r.strength]),r.iterations!==void 0&&n.push([`iterations`,r.iterations]),Cj(t,n)}else e.force(`link`,null)}getCollisionOptions(e){if(e.preventOverlap===!1&&(e.collide===!1||e.collide===void 0))return;let t=hE(e.nodeSize,e.nodeSpacing,xj.nodeSize,xj.nodeSpacing);return Jk({},e.collide||{},{radius:e.collide&&e.collide.radius||(e=>Math.max(...t(e._original))/2),strength:e.collideStrength,iterations:e.collideIterations})}setupCollisionForce(e,t){let n=this.getCollisionOptions(t);if(n){let t=e.force(`collide`);t||(t=ij(),e.force(`collide`,t));let r=[];n.radius!==void 0&&r.push([`radius`,n.radius]),n.strength!==void 0&&r.push([`strength`,n.strength]),n.iterations!==void 0&&r.push([`iterations`,n.iterations]),Cj(t,r)}else e.force(`collide`,null)}getXForceOptions(e){if(e.x===!1)return;let t=this.getCenterOptions(e);return Jk({},e.x||{},{x:e.forceXPosition??(t&&t.x),strength:e.forceXStrength})}setupXForce(e,t){let n=this.getXForceOptions(t);if(n){let t=e.force(`x`);t||(t=jA(),e.force(`x`,t));let r=[];n.x!==void 0&&r.push([`x`,n.x]),n.strength!==void 0&&r.push([`strength`,n.strength]),Cj(t,r)}else e.force(`x`,null)}getYForceOptions(e){if(e.y===!1)return;let t=this.getCenterOptions(e);return Jk({},e.y||{},{y:e.forceYPosition??(t&&t.y),strength:e.forceYStrength})}setupYForce(e,t){let n=this.getYForceOptions(t);if(n){let t=e.force(`y`);t||(t=MA(),e.force(`y`,t));let r=[];n.y!==void 0&&r.push([`y`,n.y]),n.strength!==void 0&&r.push([`strength`,n.strength]),Cj(t,r)}else e.force(`y`,null)}getRadialOptions(e){if(e.radial!==void 0||e.radialStrength!==void 0||e.radialRadius!==void 0||e.radialX!==void 0||e.radialY!==void 0){let t=this.getCenterOptions(e);return Jk({},e.radial||{},{strength:e.radialStrength,radius:e.radialRadius??100,x:e.radialX??(t&&t.x),y:e.radialY??(t&&t.y)})}}setupRadialForce(e,t){let n=this.getRadialOptions(t);if(n){let t=e.force(`radial`);t||(t=bj(n.radius||100,n.x,n.y),e.force(`radial`,t));let r=[];n.radius!==void 0&&r.push([`radius`,n.radius]),n.strength!==void 0&&r.push([`strength`,n.strength]),n.x!==void 0&&r.push([`x`,n.x]),n.y!==void 0&&r.push([`y`,n.y]),Cj(t,r)}else e.force(`radial`,null)}setupClusterForce(e,t){let{clustering:n}=t;if(n){let{clusterFociStrength:n,clusterEdgeDistance:r,clusterEdgeStrength:i,clusterNodeStrength:a,clusterNodeSize:o,clusterBy:s}=t,c=this.getCenterOptions(t),l=e.force(`group`);l||(l=uj(),e.force(`group`,l)),Cj(l,[[`centerX`,c&&c.x],[`centerY`,c&&c.y],[`template`,`force`],[`strength`,n],[`groupBy`,s?fE(s,[`node`]):void 0],[`nodes`,this.model.nodes()],[`links`,this.model.edges()],[`forceLinkDistance`,r],[`forceLinkStrength`,i],[`forceCharge`,a],[`forceNodeSize`,o]])}else e.force(`group`,null)}},Cj=(e,t)=>t.reduce((t,[n,r])=>!t[n]||r===void 0?t:t[n].call(e,r),e);function wj(e){return function(){return e}}function Tj(e){var t=wj(.1),n,r,i;typeof e!=`function`&&(e=wj(e==null?0:+e));function a(e){for(var t=0,a=n.length,o;t<a;++t)o=n[t],o.vz+=(i[t]-o.z)*r[t]*e}function o(){if(n){var a,o=n.length;for(r=Array(o),i=Array(o),a=0;a<o;++a)r[a]=isNaN(i[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return a.initialize=function(e){n=e,o()},a.strength=function(e){return arguments.length?(t=typeof e==`function`?e:wj(+e),o(),a):t},a.z=function(t){return arguments.length?(e=typeof t==`function`?t:wj(+t),o(),a):e},a}function Ej(e){var t=wj(.1),n,r,i;typeof e!=`function`&&(e=wj(e==null?0:+e));function a(e){for(var t=0,a=n.length,o;t<a;++t)o=n[t],o.vy+=(i[t]-o.y)*r[t]*e}function o(){if(n){var a,o=n.length;for(r=Array(o),i=Array(o),a=0;a<o;++a)r[a]=isNaN(i[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return a.initialize=function(e){n=e,o()},a.strength=function(e){return arguments.length?(t=typeof e==`function`?e:wj(+e),o(),a):t},a.y=function(t){return arguments.length?(e=typeof t==`function`?t:wj(+t),o(),a):e},a}function Dj(e){var t=wj(.1),n,r,i;typeof e!=`function`&&(e=wj(e==null?0:+e));function a(e){for(var t=0,a=n.length,o;t<a;++t)o=n[t],o.vx+=(i[t]-o.x)*r[t]*e}function o(){if(n){var a,o=n.length;for(r=Array(o),i=Array(o),a=0;a<o;++a)r[a]=isNaN(i[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return a.initialize=function(e){n=e,o()},a.strength=function(e){return arguments.length?(t=typeof e==`function`?e:wj(+e),o(),a):t},a.x=function(t){return arguments.length?(e=typeof t==`function`?t:wj(+t),o(),a):e},a}function Oj(e,t,n,r){var i,a,o=wj(.1),s,c;typeof e!=`function`&&(e=wj(+e)),t??=0,n??=0,r??=0;function l(e){for(var o=0,l=i.length;o<l;++o){var u=i[o],d=u.x-t||1e-6,f=(u.y||0)-n||1e-6,p=(u.z||0)-r||1e-6,m=Math.sqrt(d*d+f*f+p*p),h=(c[o]-m)*s[o]*e/m;u.vx+=d*h,a>1&&(u.vy+=f*h),a>2&&(u.vz+=p*h)}}function u(){if(i){var t,n=i.length;for(s=Array(n),c=Array(n),t=0;t<n;++t)c[t]=+e(i[t],t,i),s[t]=isNaN(c[t])?0:+o(i[t],t,i)}}return l.initialize=function(e,...t){i=e,a=t.find(e=>[1,2,3].includes(e))||2,u()},l.strength=function(e){return arguments.length?(o=typeof e==`function`?e:wj(+e),u(),l):o},l.radius=function(t){return arguments.length?(e=typeof t==`function`?t:wj(+t),u(),l):e},l.x=function(e){return arguments.length?(t=+e,l):t},l.y=function(e){return arguments.length?(n=+e,l):n},l.z=function(e){return arguments.length?(r=+e,l):r},l}function kj(e){return(e()-.5)*1e-6}function Aj(e){let t=+this._x.call(null,e);return jj(this.cover(t),t,e)}function jj(e,t,n){if(isNaN(t))return e;var r,i=e._root,a={data:n},o=e._x0,s=e._x1,c,l,u,d,f;if(!i)return e._root=a,e;for(;i.length;)if((u=t>=(c=(o+s)/2))?o=c:s=c,r=i,!(i=i[d=+u]))return r[d]=a,e;if(l=+e._x.call(null,i.data),t===l)return a.next=i,r?r[d]=a:e._root=a,e;do r=r?r[d]=[,,]:e._root=[,,],(u=t>=(c=(o+s)/2))?o=c:s=c;while((d=+u)==(f=+(l>=c)));return r[f]=i,r[d]=a,e}function Mj(e){Array.isArray(e)||(e=Array.from(e));let t=e.length,n=new Float64Array(t),r=1/0,i=-1/0;for(let a=0,o;a<t;++a)isNaN(o=+this._x.call(null,e[a]))||(n[a]=o,o<r&&(r=o),o>i&&(i=o));if(r>i)return this;this.cover(r).cover(i);for(let r=0;r<t;++r)jj(this,n[r],e[r]);return this}function Nj(e){if(isNaN(e=+e))return this;var t=this._x0,n=this._x1;if(isNaN(t))n=(t=Math.floor(e))+1;else{for(var r=n-t||1,i=this._root,a,o;t>e||e>=n;)switch(o=+(e<t),a=[,,],a[o]=i,i=a,r*=2,o){case 0:n=t+r;break;case 1:t=n-r;break}this._root&&this._root.length&&(this._root=i)}return this._x0=t,this._x1=n,this}function Pj(){var e=[];return this.visit(function(t){if(!t.length)do e.push(t.data);while(t=t.next)}),e}function Fj(e){return arguments.length?this.cover(+e[0][0]).cover(+e[1][0]):isNaN(this._x0)?void 0:[[this._x0],[this._x1]]}function Ij(e,t,n){this.node=e,this.x0=t,this.x1=n}function Lj(e,t){var n,r=this._x0,i,a,o=this._x1,s=[],c=this._root,l,u;for(c&&s.push(new Ij(c,r,o)),t==null?t=1/0:(r=e-t,o=e+t);l=s.pop();)if(!(!(c=l.node)||(i=l.x0)>o||(a=l.x1)<r))if(c.length){var d=(i+a)/2;s.push(new Ij(c[1],d,a),new Ij(c[0],i,d)),(u=+(e>=d))&&(l=s[s.length-1],s[s.length-1]=s[s.length-1-u],s[s.length-1-u]=l)}else{var f=Math.abs(e-+this._x.call(null,c.data));f<t&&(t=f,r=e-f,o=e+f,n=c.data)}return n}function Rj(e){if(isNaN(c=+this._x.call(null,e)))return this;var t,n=this._root,r,i,a,o=this._x0,s=this._x1,c,l,u,d,f;if(!n)return this;if(n.length)for(;;){if((u=c>=(l=(o+s)/2))?o=l:s=l,t=n,!(n=n[d=+u]))return this;if(!n.length)break;t[d+1&1]&&(r=t,f=d)}for(;n.data!==e;)if(i=n,!(n=n.next))return this;return(a=n.next)&&delete n.next,i?(a?i.next=a:delete i.next,this):t?(a?t[d]=a:delete t[d],(n=t[0]||t[1])&&n===(t[1]||t[0])&&!n.length&&(r?r[f]=n:this._root=n),this):(this._root=a,this)}function zj(e){for(var t=0,n=e.length;t<n;++t)this.remove(e[t]);return this}function Bj(){return this._root}function Vj(){var e=0;return this.visit(function(t){if(!t.length)do++e;while(t=t.next)}),e}function Hj(e){var t=[],n,r=this._root,i,a,o;for(r&&t.push(new Ij(r,this._x0,this._x1));n=t.pop();)if(!e(r=n.node,a=n.x0,o=n.x1)&&r.length){var s=(a+o)/2;(i=r[1])&&t.push(new Ij(i,s,o)),(i=r[0])&&t.push(new Ij(i,a,s))}return this}function Uj(e){var t=[],n=[],r;for(this._root&&t.push(new Ij(this._root,this._x0,this._x1));r=t.pop();){var i=r.node;if(i.length){var a,o=r.x0,s=r.x1,c=(o+s)/2;(a=i[0])&&t.push(new Ij(a,o,c)),(a=i[1])&&t.push(new Ij(a,c,s))}n.push(r)}for(;r=n.pop();)e(r.node,r.x0,r.x1);return this}function Wj(e){return e[0]}function Gj(e){return arguments.length?(this._x=e,this):this._x}function Kj(e,t){var n=new qj(t??Wj,NaN,NaN);return e==null?n:n.addAll(e)}function qj(e,t,n){this._x=e,this._x0=t,this._x1=n,this._root=void 0}function Jj(e){for(var t={data:e.data},n=t;e=e.next;)n=n.next={data:e.data};return t}var Yj=Kj.prototype=qj.prototype;Yj.copy=function(){var e=new qj(this._x,this._x0,this._x1),t=this._root,n,r;if(!t)return e;if(!t.length)return e._root=Jj(t),e;for(n=[{source:t,target:e._root=[,,]}];t=n.pop();)for(var i=0;i<2;++i)(r=t.source[i])&&(r.length?n.push({source:r,target:t.target[i]=[,,]}):t.target[i]=Jj(r));return e},Yj.add=Aj,Yj.addAll=Mj,Yj.cover=Nj,Yj.data=Pj,Yj.extent=Fj,Yj.find=Lj,Yj.remove=Rj,Yj.removeAll=zj,Yj.root=Bj,Yj.size=Vj,Yj.visit=Hj,Yj.visitAfter=Uj,Yj.x=Gj;function Xj(e){let t=+this._x.call(null,e),n=+this._y.call(null,e),r=+this._z.call(null,e);return Zj(this.cover(t,n,r),t,n,r,e)}function Zj(e,t,n,r,i){if(isNaN(t)||isNaN(n)||isNaN(r))return e;var a,o=e._root,s={data:i},c=e._x0,l=e._y0,u=e._z0,d=e._x1,f=e._y1,p=e._z1,m,h,g,_,v,y,b,x,S,C,w;if(!o)return e._root=s,e;for(;o.length;)if((b=t>=(m=(c+d)/2))?c=m:d=m,(x=n>=(h=(l+f)/2))?l=h:f=h,(S=r>=(g=(u+p)/2))?u=g:p=g,a=o,!(o=o[C=S<<2|x<<1|b]))return a[C]=s,e;if(_=+e._x.call(null,o.data),v=+e._y.call(null,o.data),y=+e._z.call(null,o.data),t===_&&n===v&&r===y)return s.next=o,a?a[C]=s:e._root=s,e;do a=a?a[C]=Array(8):e._root=Array(8),(b=t>=(m=(c+d)/2))?c=m:d=m,(x=n>=(h=(l+f)/2))?l=h:f=h,(S=r>=(g=(u+p)/2))?u=g:p=g;while((C=S<<2|x<<1|b)==(w=(y>=g)<<2|(v>=h)<<1|_>=m));return a[w]=o,a[C]=s,e}function Qj(e){Array.isArray(e)||(e=Array.from(e));let t=e.length,n=new Float64Array(t),r=new Float64Array(t),i=new Float64Array(t),a=1/0,o=1/0,s=1/0,c=-1/0,l=-1/0,u=-1/0;for(let d=0,f,p,m,h;d<t;++d)isNaN(p=+this._x.call(null,f=e[d]))||isNaN(m=+this._y.call(null,f))||isNaN(h=+this._z.call(null,f))||(n[d]=p,r[d]=m,i[d]=h,p<a&&(a=p),p>c&&(c=p),m<o&&(o=m),m>l&&(l=m),h<s&&(s=h),h>u&&(u=h));if(a>c||o>l||s>u)return this;this.cover(a,o,s).cover(c,l,u);for(let a=0;a<t;++a)Zj(this,n[a],r[a],i[a],e[a]);return this}function $j(e,t,n){if(isNaN(e=+e)||isNaN(t=+t)||isNaN(n=+n))return this;var r=this._x0,i=this._y0,a=this._z0,o=this._x1,s=this._y1,c=this._z1;if(isNaN(r))o=(r=Math.floor(e))+1,s=(i=Math.floor(t))+1,c=(a=Math.floor(n))+1;else{for(var l=o-r||1,u=this._root,d,f;r>e||e>=o||i>t||t>=s||a>n||n>=c;)switch(f=(n<a)<<2|(t<i)<<1|e<r,d=Array(8),d[f]=u,u=d,l*=2,f){case 0:o=r+l,s=i+l,c=a+l;break;case 1:r=o-l,s=i+l,c=a+l;break;case 2:o=r+l,i=s-l,c=a+l;break;case 3:r=o-l,i=s-l,c=a+l;break;case 4:o=r+l,s=i+l,a=c-l;break;case 5:r=o-l,s=i+l,a=c-l;break;case 6:o=r+l,i=s-l,a=c-l;break;case 7:r=o-l,i=s-l,a=c-l;break}this._root&&this._root.length&&(this._root=u)}return this._x0=r,this._y0=i,this._z0=a,this._x1=o,this._y1=s,this._z1=c,this}function eM(){var e=[];return this.visit(function(t){if(!t.length)do e.push(t.data);while(t=t.next)}),e}function tM(e){return arguments.length?this.cover(+e[0][0],+e[0][1],+e[0][2]).cover(+e[1][0],+e[1][1],+e[1][2]):isNaN(this._x0)?void 0:[[this._x0,this._y0,this._z0],[this._x1,this._y1,this._z1]]}function nM(e,t,n,r,i,a,o){this.node=e,this.x0=t,this.y0=n,this.z0=r,this.x1=i,this.y1=a,this.z1=o}function rM(e,t,n,r){var i,a=this._x0,o=this._y0,s=this._z0,c,l,u,d,f,p,m=this._x1,h=this._y1,g=this._z1,_=[],v=this._root,y,b;for(v&&_.push(new nM(v,a,o,s,m,h,g)),r==null?r=1/0:(a=e-r,o=t-r,s=n-r,m=e+r,h=t+r,g=n+r,r*=r);y=_.pop();)if(!(!(v=y.node)||(c=y.x0)>m||(l=y.y0)>h||(u=y.z0)>g||(d=y.x1)<a||(f=y.y1)<o||(p=y.z1)<s))if(v.length){var x=(c+d)/2,S=(l+f)/2,C=(u+p)/2;_.push(new nM(v[7],x,S,C,d,f,p),new nM(v[6],c,S,C,x,f,p),new nM(v[5],x,l,C,d,S,p),new nM(v[4],c,l,C,x,S,p),new nM(v[3],x,S,u,d,f,C),new nM(v[2],c,S,u,x,f,C),new nM(v[1],x,l,u,d,S,C),new nM(v[0],c,l,u,x,S,C)),(b=(n>=C)<<2|(t>=S)<<1|e>=x)&&(y=_[_.length-1],_[_.length-1]=_[_.length-1-b],_[_.length-1-b]=y)}else{var w=e-+this._x.call(null,v.data),T=t-+this._y.call(null,v.data),E=n-+this._z.call(null,v.data),D=w*w+T*T+E*E;if(D<r){var O=Math.sqrt(r=D);a=e-O,o=t-O,s=n-O,m=e+O,h=t+O,g=n+O,i=v.data}}return i}var iM=(e,t,n,r,i,a)=>Math.sqrt((e-r)**2+(t-i)**2+(n-a)**2);function aM(e,t,n,r){let i=[],a=e-r,o=t-r,s=n-r,c=e+r,l=t+r,u=n+r;return this.visit((d,f,p,m,h,g,_)=>{if(!d.length)do{let a=d.data;iM(e,t,n,this._x(a),this._y(a),this._z(a))<=r&&i.push(a)}while(d=d.next);return f>c||p>l||m>u||h<a||g<o||_<s}),i}function oM(e){if(isNaN(f=+this._x.call(null,e))||isNaN(p=+this._y.call(null,e))||isNaN(m=+this._z.call(null,e)))return this;var t,n=this._root,r,i,a,o=this._x0,s=this._y0,c=this._z0,l=this._x1,u=this._y1,d=this._z1,f,p,m,h,g,_,v,y,b,x,S;if(!n)return this;if(n.length)for(;;){if((v=f>=(h=(o+l)/2))?o=h:l=h,(y=p>=(g=(s+u)/2))?s=g:u=g,(b=m>=(_=(c+d)/2))?c=_:d=_,t=n,!(n=n[x=b<<2|y<<1|v]))return this;if(!n.length)break;(t[x+1&7]||t[x+2&7]||t[x+3&7]||t[x+4&7]||t[x+5&7]||t[x+6&7]||t[x+7&7])&&(r=t,S=x)}for(;n.data!==e;)if(i=n,!(n=n.next))return this;return(a=n.next)&&delete n.next,i?(a?i.next=a:delete i.next,this):t?(a?t[x]=a:delete t[x],(n=t[0]||t[1]||t[2]||t[3]||t[4]||t[5]||t[6]||t[7])&&n===(t[7]||t[6]||t[5]||t[4]||t[3]||t[2]||t[1]||t[0])&&!n.length&&(r?r[S]=n:this._root=n),this):(this._root=a,this)}function sM(e){for(var t=0,n=e.length;t<n;++t)this.remove(e[t]);return this}function cM(){return this._root}function lM(){var e=0;return this.visit(function(t){if(!t.length)do++e;while(t=t.next)}),e}function uM(e){var t=[],n,r=this._root,i,a,o,s,c,l,u;for(r&&t.push(new nM(r,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));n=t.pop();)if(!e(r=n.node,a=n.x0,o=n.y0,s=n.z0,c=n.x1,l=n.y1,u=n.z1)&&r.length){var d=(a+c)/2,f=(o+l)/2,p=(s+u)/2;(i=r[7])&&t.push(new nM(i,d,f,p,c,l,u)),(i=r[6])&&t.push(new nM(i,a,f,p,d,l,u)),(i=r[5])&&t.push(new nM(i,d,o,p,c,f,u)),(i=r[4])&&t.push(new nM(i,a,o,p,d,f,u)),(i=r[3])&&t.push(new nM(i,d,f,s,c,l,p)),(i=r[2])&&t.push(new nM(i,a,f,s,d,l,p)),(i=r[1])&&t.push(new nM(i,d,o,s,c,f,p)),(i=r[0])&&t.push(new nM(i,a,o,s,d,f,p))}return this}function dM(e){var t=[],n=[],r;for(this._root&&t.push(new nM(this._root,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));r=t.pop();){var i=r.node;if(i.length){var a,o=r.x0,s=r.y0,c=r.z0,l=r.x1,u=r.y1,d=r.z1,f=(o+l)/2,p=(s+u)/2,m=(c+d)/2;(a=i[0])&&t.push(new nM(a,o,s,c,f,p,m)),(a=i[1])&&t.push(new nM(a,f,s,c,l,p,m)),(a=i[2])&&t.push(new nM(a,o,p,c,f,u,m)),(a=i[3])&&t.push(new nM(a,f,p,c,l,u,m)),(a=i[4])&&t.push(new nM(a,o,s,m,f,p,d)),(a=i[5])&&t.push(new nM(a,f,s,m,l,p,d)),(a=i[6])&&t.push(new nM(a,o,p,m,f,u,d)),(a=i[7])&&t.push(new nM(a,f,p,m,l,u,d))}n.push(r)}for(;r=n.pop();)e(r.node,r.x0,r.y0,r.z0,r.x1,r.y1,r.z1);return this}function fM(e){return e[0]}function pM(e){return arguments.length?(this._x=e,this):this._x}function mM(e){return e[1]}function hM(e){return arguments.length?(this._y=e,this):this._y}function gM(e){return e[2]}function _M(e){return arguments.length?(this._z=e,this):this._z}function vM(e,t,n,r){var i=new yM(t??fM,n??mM,r??gM,NaN,NaN,NaN,NaN,NaN,NaN);return e==null?i:i.addAll(e)}function yM(e,t,n,r,i,a,o,s,c){this._x=e,this._y=t,this._z=n,this._x0=r,this._y0=i,this._z0=a,this._x1=o,this._y1=s,this._z1=c,this._root=void 0}function bM(e){for(var t={data:e.data},n=t;e=e.next;)n=n.next={data:e.data};return t}var xM=vM.prototype=yM.prototype;xM.copy=function(){var e=new yM(this._x,this._y,this._z,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1),t=this._root,n,r;if(!t)return e;if(!t.length)return e._root=bM(t),e;for(n=[{source:t,target:e._root=Array(8)}];t=n.pop();)for(var i=0;i<8;++i)(r=t.source[i])&&(r.length?n.push({source:r,target:t.target[i]=Array(8)}):t.target[i]=bM(r));return e},xM.add=Xj,xM.addAll=Qj,xM.cover=$j,xM.data=eM,xM.extent=tM,xM.find=rM,xM.findAllWithinRadius=aM,xM.remove=oM,xM.removeAll=sM,xM.root=cM,xM.size=lM,xM.visit=uM,xM.visitAfter=dM,xM.x=pM,xM.y=hM,xM.z=_M;function SM(e){return e.x+e.vx}function CM(e){return e.y+e.vy}function wM(e){return e.z+e.vz}function TM(e){var t,n,r,i,a=1,o=1;typeof e!=`function`&&(e=wj(e==null?1:+e));function s(){for(var e,s=t.length,l,u,d,f,p,m,h,g=0;g<o;++g)for(l=(n===1?Kj(t,SM):n===2?QA(t,SM,CM):n===3?vM(t,SM,CM,wM):null).visitAfter(c),e=0;e<s;++e)u=t[e],m=r[u.index],h=m*m,d=u.x+u.vx,n>1&&(f=u.y+u.vy),n>2&&(p=u.z+u.vz),l.visit(_);function _(e,t,r,o,s,c,l){var g=[t,r,o,s,c,l],_=g[0],v=g[1],y=g[2],b=g[n],x=g[n+1],S=g[n+2],C=e.data,w=e.r,T=m+w;if(C){if(C.index>u.index){var E=d-C.x-C.vx,D=n>1?f-C.y-C.vy:0,O=n>2?p-C.z-C.vz:0,k=E*E+D*D+O*O;k<T*T&&(E===0&&(E=kj(i),k+=E*E),n>1&&D===0&&(D=kj(i),k+=D*D),n>2&&O===0&&(O=kj(i),k+=O*O),k=(T-(k=Math.sqrt(k)))/k*a,u.vx+=(E*=k)*(T=(w*=w)/(h+w)),n>1&&(u.vy+=(D*=k)*T),n>2&&(u.vz+=(O*=k)*T),C.vx-=E*(T=1-T),n>1&&(C.vy-=D*T),n>2&&(C.vz-=O*T))}return}return _>d+T||b<d-T||n>1&&(v>f+T||x<f-T)||n>2&&(y>p+T||S<p-T)}}function c(e){if(e.data)return e.r=r[e.data.index];for(var t=e.r=0;t<2**n;++t)e[t]&&e[t].r>e.r&&(e.r=e[t].r)}function l(){if(t){var n,i=t.length,a;for(r=Array(i),n=0;n<i;++n)a=t[n],r[a.index]=+e(a,n,t)}}return s.initialize=function(e,...r){t=e,i=r.find(e=>typeof e==`function`)||Math.random,n=r.find(e=>[1,2,3].includes(e))||2,l()},s.iterations=function(e){return arguments.length?(o=+e,s):o},s.strength=function(e){return arguments.length?(a=+e,s):a},s.radius=function(t){return arguments.length?(e=typeof t==`function`?t:wj(+t),l(),s):e},s}function EM(e,t,n){var r,i=1;e??=0,t??=0,n??=0;function a(){var a,o=r.length,s,c=0,l=0,u=0;for(a=0;a<o;++a)s=r[a],c+=s.x||0,l+=s.y||0,u+=s.z||0;for(c=(c/o-e)*i,l=(l/o-t)*i,u=(u/o-n)*i,a=0;a<o;++a)s=r[a],c&&(s.x-=c),l&&(s.y-=l),u&&(s.z-=u)}return a.initialize=function(e){r=e},a.x=function(t){return arguments.length?(e=+t,a):e},a.y=function(e){return arguments.length?(t=+e,a):t},a.z=function(e){return arguments.length?(n=+e,a):n},a.strength=function(e){return arguments.length?(i=+e,a):i},a}var DM=1664525,OM=1013904223,kM=4294967296;function AM(){let e=1;return()=>(e=(DM*e+OM)%kM)/kM}var jM=3;function MM(e){return e.x}function NM(e){return e.y}function PM(e){return e.z}var FM=10,IM=Math.PI*(3-Math.sqrt(5)),LM=Math.PI*20/(9+Math.sqrt(221));function RM(e,t){t||=2;var n=Math.min(jM,Math.max(1,Math.round(t))),r,i=1,a=.001,o=1-a**(1/300),s=0,c=.6,l=new Map,u=pA(p),d=bA(`tick`,`end`),f=AM();e??=[];function p(){m(),d.call(`tick`,r),i<a&&(u.stop(),d.call(`end`,r))}function m(t){var a,u=e.length,d;t===void 0&&(t=1);for(var f=0;f<t;++f)for(i+=(s-i)*o,l.forEach(function(e){e(i)}),a=0;a<u;++a)d=e[a],d.fx==null?d.x+=d.vx*=c:(d.x=d.fx,d.vx=0),n>1&&(d.fy==null?d.y+=d.vy*=c:(d.y=d.fy,d.vy=0)),n>2&&(d.fz==null?d.z+=d.vz*=c:(d.z=d.fz,d.vz=0));return r}function h(){for(var t=0,r=e.length,i;t<r;++t){if(i=e[t],i.index=t,i.fx!=null&&(i.x=i.fx),i.fy!=null&&(i.y=i.fy),i.fz!=null&&(i.z=i.fz),isNaN(i.x)||n>1&&isNaN(i.y)||n>2&&isNaN(i.z)){var a=FM*(n>2?Math.cbrt(.5+t):n>1?Math.sqrt(.5+t):t),o=t*IM,s=t*LM;n===1?i.x=a:n===2?(i.x=a*Math.cos(o),i.y=a*Math.sin(o)):(i.x=a*Math.sin(o)*Math.cos(s),i.y=a*Math.cos(o),i.z=a*Math.sin(o)*Math.sin(s))}(isNaN(i.vx)||n>1&&isNaN(i.vy)||n>2&&isNaN(i.vz))&&(i.vx=0,n>1&&(i.vy=0),n>2&&(i.vz=0))}}function g(t){return t.initialize&&t.initialize(e,f,n),t}return h(),r={tick:m,restart:function(){return u.restart(p),r},stop:function(){return u.stop(),r},numDimensions:function(e){return arguments.length?(n=Math.min(jM,Math.max(1,Math.round(e))),l.forEach(g),r):n},nodes:function(t){return arguments.length?(e=t,h(),l.forEach(g),r):e},alpha:function(e){return arguments.length?(i=+e,r):i},alphaMin:function(e){return arguments.length?(a=+e,r):a},alphaDecay:function(e){return arguments.length?(o=+e,r):+o},alphaTarget:function(e){return arguments.length?(s=+e,r):s},velocityDecay:function(e){return arguments.length?(c=1-e,r):1-c},randomSource:function(e){return arguments.length?(f=e,l.forEach(g),r):f},force:function(e,t){return arguments.length>1?(t==null?l.delete(e):l.set(e,g(t)),r):l.get(e)},find:function(){var t=Array.prototype.slice.call(arguments),r=t.shift()||0,i=(n>1?t.shift():null)||0,a=(n>2?t.shift():null)||0,o=t.shift()||1/0,s=0,c=e.length,l,u,d,f,p,m;for(o*=o,s=0;s<c;++s)p=e[s],l=r-p.x,u=i-(p.y||0),d=a-(p.z||0),f=l*l+u*u+d*d,f<o&&(m=p,o=f);return m},on:function(e,t){return arguments.length>1?(d.on(e,t),r):d.on(e)}}}function zM(){var e,t,n,r,i,a=wj(-30),o,s=1,c=1/0,l=.81;function u(r){var a,o=e.length,s=(t===1?Kj(e,MM):t===2?QA(e,MM,NM):t===3?vM(e,MM,NM,PM):null).visitAfter(f);for(i=r,a=0;a<o;++a)n=e[a],s.visit(p)}function d(){if(e){var t,n=e.length,r;for(o=Array(n),t=0;t<n;++t)r=e[t],o[r.index]=+a(r,t,e)}}function f(e){var n=0,r,i,a=0,s,c,l,u,d=e.length;if(d){for(s=c=l=u=0;u<d;++u)(r=e[u])&&(i=Math.abs(r.value))&&(n+=r.value,a+=i,s+=i*(r.x||0),c+=i*(r.y||0),l+=i*(r.z||0));n*=Math.sqrt(4/d),e.x=s/a,t>1&&(e.y=c/a),t>2&&(e.z=l/a)}else{r=e,r.x=r.data.x,t>1&&(r.y=r.data.y),t>2&&(r.z=r.data.z);do n+=o[r.data.index];while(r=r.next)}e.value=n}function p(e,a,u,d,f){if(!e.value)return!0;var p=[u,d,f][t-1],m=e.x-n.x,h=t>1?e.y-n.y:0,g=t>2?e.z-n.z:0,_=p-a,v=m*m+h*h+g*g;if(_*_/l<v)return v<c&&(m===0&&(m=kj(r),v+=m*m),t>1&&h===0&&(h=kj(r),v+=h*h),t>2&&g===0&&(g=kj(r),v+=g*g),v<s&&(v=Math.sqrt(s*v)),n.vx+=m*e.value*i/v,t>1&&(n.vy+=h*e.value*i/v),t>2&&(n.vz+=g*e.value*i/v)),!0;if(!(e.length||v>=c)){(e.data!==n||e.next)&&(m===0&&(m=kj(r),v+=m*m),t>1&&h===0&&(h=kj(r),v+=h*h),t>2&&g===0&&(g=kj(r),v+=g*g),v<s&&(v=Math.sqrt(s*v)));do e.data!==n&&(_=o[e.data.index]*i/v,n.vx+=m*_,t>1&&(n.vy+=h*_),t>2&&(n.vz+=g*_));while(e=e.next)}}return u.initialize=function(n,...i){e=n,r=i.find(e=>typeof e==`function`)||Math.random,t=i.find(e=>[1,2,3].includes(e))||2,d()},u.strength=function(e){return arguments.length?(a=typeof e==`function`?e:wj(+e),d(),u):a},u.distanceMin=function(e){return arguments.length?(s=e*e,u):Math.sqrt(s)},u.distanceMax=function(e){return arguments.length?(c=e*e,u):Math.sqrt(c)},u.theta=function(e){return arguments.length?(l=e*e,u):Math.sqrt(l)},u}function BM(e){return e.index}function VM(e,t){var n=e.get(t);if(!n)throw Error(`node not found: `+t);return n}function HM(e){var t=BM,n=f,r,i=wj(30),a,o,s,c,l,u,d=1;e??=[];function f(e){return 1/Math.min(c[e.source.index],c[e.target.index])}function p(t){for(var n=0,i=e.length;n<d;++n)for(var o=0,c,f,p,m=0,h=0,g=0,_,v;o<i;++o)c=e[o],f=c.source,p=c.target,m=p.x+p.vx-f.x-f.vx||kj(u),s>1&&(h=p.y+p.vy-f.y-f.vy||kj(u)),s>2&&(g=p.z+p.vz-f.z-f.vz||kj(u)),_=Math.sqrt(m*m+h*h+g*g),_=(_-a[o])/_*t*r[o],m*=_,h*=_,g*=_,p.vx-=m*(v=l[o]),s>1&&(p.vy-=h*v),s>2&&(p.vz-=g*v),f.vx+=m*(v=1-v),s>1&&(f.vy+=h*v),s>2&&(f.vz+=g*v)}function m(){if(o){var n,i=o.length,s=e.length,u=new Map(o.map((e,n)=>[t(e,n,o),e])),d;for(n=0,c=Array(i);n<s;++n)d=e[n],d.index=n,typeof d.source!=`object`&&(d.source=VM(u,d.source)),typeof d.target!=`object`&&(d.target=VM(u,d.target)),c[d.source.index]=(c[d.source.index]||0)+1,c[d.target.index]=(c[d.target.index]||0)+1;for(n=0,l=Array(s);n<s;++n)d=e[n],l[n]=c[d.source.index]/(c[d.source.index]+c[d.target.index]);r=Array(s),h(),a=Array(s),g()}}function h(){if(o)for(var t=0,i=e.length;t<i;++t)r[t]=+n(e[t],t,e)}function g(){if(o)for(var t=0,n=e.length;t<n;++t)a[t]=+i(e[t],t,e)}return p.initialize=function(e,...t){o=e,u=t.find(e=>typeof e==`function`)||Math.random,s=t.find(e=>[1,2,3].includes(e))||2,m()},p.links=function(t){return arguments.length?(e=t,m(),p):e},p.id=function(e){return arguments.length?(t=e,p):t},p.iterations=function(e){return arguments.length?(d=+e,p):d},p.strength=function(e){return arguments.length?(n=typeof e==`function`?e:wj(+e),h(),p):n},p.distance=function(e){return arguments.length?(i=typeof e==`function`?e:wj(+e),g(),p):i},p}var UM=class extends Sj{constructor(){super(...arguments),this.id=`d3-force-3d`,this.config={simulationAttrs:[`alpha`,`alphaMin`,`alphaDecay`,`alphaTarget`,`velocityDecay`,`randomSource`,`numDimensions`]},this.forceMap={link:HM,manyBody:zM,center:EM,collide:TM,radial:Oj,x:Dj,y:Ej,z:Tj}}getDefaultOptions(){return{numDimensions:3,link:{id:e=>e.id},manyBody:{},center:{x:0,y:0,z:0}}}initSimulation(){return RM()}setupForces(e,t){Object.entries(this.forceMap).forEach(([n,r])=>{let i=n;if(t[n]){let n=e.force(i);n||(n=r(),e.force(i,n)),Cj(n,Object.entries(t[i]))}else e.force(i,null)})}},WM=typeof globalThis<`u`?globalThis:typeof window<`u`?window:typeof global<`u`?global:typeof self<`u`?self:{};function GM(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,`default`)?e.default:e}function KM(e){if(Object.prototype.hasOwnProperty.call(e,`__esModule`))return e;var t=e.default;if(typeof t==`function`){var n=function e(){var n=!1;try{n=this instanceof e}catch{}return n?Reflect.construct(t,arguments,this.constructor):t.apply(this,arguments)};n.prototype=t.prototype}else n={};return Object.defineProperty(n,`__esModule`,{value:!0}),Object.keys(e).forEach(function(t){var r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:function(){return e[t]}})}),n}function qM(e){throw Error(`Could not dynamically require "`+e+`". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.`)}var JM,YM;function XM(){if(YM)return JM;YM=1;function e(){this.__data__=[],this.size=0}return JM=e,JM}var ZM,QM;function $M(){if(QM)return ZM;QM=1;function e(e,t){return e===t||e!==e&&t!==t}return ZM=e,ZM}var eN,tN;function nN(){if(tN)return eN;tN=1;var e=$M();function t(t,n){for(var r=t.length;r--;)if(e(t[r][0],n))return r;return-1}return eN=t,eN}var rN,iN;function aN(){if(iN)return rN;iN=1;var e=nN(),t=Array.prototype.splice;function n(n){var r=this.__data__,i=e(r,n);return i<0?!1:(i==r.length-1?r.pop():t.call(r,i,1),--this.size,!0)}return rN=n,rN}var oN,sN;function cN(){if(sN)return oN;sN=1;var e=nN();function t(t){var n=this.__data__,r=e(n,t);return r<0?void 0:n[r][1]}return oN=t,oN}var lN,uN;function dN(){if(uN)return lN;uN=1;var e=nN();function t(t){return e(this.__data__,t)>-1}return lN=t,lN}var fN,pN;function mN(){if(pN)return fN;pN=1;var e=nN();function t(t,n){var r=this.__data__,i=e(r,t);return i<0?(++this.size,r.push([t,n])):r[i][1]=n,this}return fN=t,fN}var hN,gN;function _N(){if(gN)return hN;gN=1;var e=XM(),t=aN(),n=cN(),r=dN(),i=mN();function a(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}return a.prototype.clear=e,a.prototype.delete=t,a.prototype.get=n,a.prototype.has=r,a.prototype.set=i,hN=a,hN}var vN,yN;function bN(){if(yN)return vN;yN=1;var e=_N();function t(){this.__data__=new e,this.size=0}return vN=t,vN}var xN,SN;function CN(){if(SN)return xN;SN=1;function e(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}return xN=e,xN}var wN,TN;function EN(){if(TN)return wN;TN=1;function e(e){return this.__data__.get(e)}return wN=e,wN}var DN,ON;function kN(){if(ON)return DN;ON=1;function e(e){return this.__data__.has(e)}return DN=e,DN}var AN,jN;function MN(){return jN?AN:(jN=1,AN=typeof WM==`object`&&WM&&WM.Object===Object&&WM,AN)}var NN,PN;function FN(){if(PN)return NN;PN=1;var e=MN(),t=typeof self==`object`&&self&&self.Object===Object&&self;return NN=e||t||Function(`return this`)(),NN}var IN,LN;function RN(){return LN?IN:(LN=1,IN=FN().Symbol,IN)}var zN,BN;function VN(){if(BN)return zN;BN=1;var e=RN(),t=Object.prototype,n=t.hasOwnProperty,r=t.toString,i=e?e.toStringTag:void 0;function a(e){var t=n.call(e,i),a=e[i];try{e[i]=void 0;var o=!0}catch{}var s=r.call(e);return o&&(t?e[i]=a:delete e[i]),s}return zN=a,zN}var HN,UN;function WN(){if(UN)return HN;UN=1;var e=Object.prototype.toString;function t(t){return e.call(t)}return HN=t,HN}var GN,KN;function qN(){if(KN)return GN;KN=1;var e=RN(),t=VN(),n=WN(),r=`[object Null]`,i=`[object Undefined]`,a=e?e.toStringTag:void 0;function o(e){return e==null?e===void 0?i:r:a&&a in Object(e)?t(e):n(e)}return GN=o,GN}var JN,YN;function XN(){if(YN)return JN;YN=1;function e(e){var t=typeof e;return e!=null&&(t==`object`||t==`function`)}return JN=e,JN}var ZN,QN;function $N(){if(QN)return ZN;QN=1;var e=qN(),t=XN(),n=`[object AsyncFunction]`,r=`[object Function]`,i=`[object GeneratorFunction]`,a=`[object Proxy]`;function o(o){if(!t(o))return!1;var s=e(o);return s==r||s==i||s==n||s==a}return ZN=o,ZN}var eP,tP;function nP(){return tP?eP:(tP=1,eP=FN()[`__core-js_shared__`],eP)}var rP,iP;function aP(){if(iP)return rP;iP=1;var e=nP(),t=function(){var t=/[^.]+$/.exec(e&&e.keys&&e.keys.IE_PROTO||``);return t?`Symbol(src)_1.`+t:``}();function n(e){return!!t&&t in e}return rP=n,rP}var oP,sP;function cP(){if(sP)return oP;sP=1;var e=Function.prototype.toString;function t(t){if(t!=null){try{return e.call(t)}catch{}try{return t+``}catch{}}return``}return oP=t,oP}var lP,uP;function dP(){if(uP)return lP;uP=1;var e=$N(),t=aP(),n=XN(),r=cP(),i=/[\\^$.*+?()[\]{}|]/g,a=/^\[object .+?Constructor\]$/,o=Function.prototype,s=Object.prototype,c=o.toString,l=s.hasOwnProperty,u=RegExp(`^`+c.call(l).replace(i,`\\$&`).replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,`$1.*?`)+`$`);function d(i){return!n(i)||t(i)?!1:(e(i)?u:a).test(r(i))}return lP=d,lP}var fP,pP;function mP(){if(pP)return fP;pP=1;function e(e,t){return e?.[t]}return fP=e,fP}var hP,gP;function _P(){if(gP)return hP;gP=1;var e=dP(),t=mP();function n(n,r){var i=t(n,r);return e(i)?i:void 0}return hP=n,hP}var vP,yP;function bP(){return yP?vP:(yP=1,vP=_P()(FN(),`Map`),vP)}var xP,SP;function CP(){return SP?xP:(SP=1,xP=_P()(Object,`create`),xP)}var wP,TP;function EP(){if(TP)return wP;TP=1;var e=CP();function t(){this.__data__=e?e(null):{},this.size=0}return wP=t,wP}var DP,OP;function kP(){if(OP)return DP;OP=1;function e(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=+!!t,t}return DP=e,DP}var AP,jP;function MP(){if(jP)return AP;jP=1;var e=CP(),t=`__lodash_hash_undefined__`,n=Object.prototype.hasOwnProperty;function r(r){var i=this.__data__;if(e){var a=i[r];return a===t?void 0:a}return n.call(i,r)?i[r]:void 0}return AP=r,AP}var NP,PP;function FP(){if(PP)return NP;PP=1;var e=CP(),t=Object.prototype.hasOwnProperty;function n(n){var r=this.__data__;return e?r[n]!==void 0:t.call(r,n)}return NP=n,NP}var IP,LP;function RP(){if(LP)return IP;LP=1;var e=CP(),t=`__lodash_hash_undefined__`;function n(n,r){var i=this.__data__;return this.size+=+!this.has(n),i[n]=e&&r===void 0?t:r,this}return IP=n,IP}var zP,BP;function VP(){if(BP)return zP;BP=1;var e=EP(),t=kP(),n=MP(),r=FP(),i=RP();function a(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}return a.prototype.clear=e,a.prototype.delete=t,a.prototype.get=n,a.prototype.has=r,a.prototype.set=i,zP=a,zP}var HP,UP;function WP(){if(UP)return HP;UP=1;var e=VP(),t=_N(),n=bP();function r(){this.size=0,this.__data__={hash:new e,map:new(n||t),string:new e}}return HP=r,HP}var GP,KP;function qP(){if(KP)return GP;KP=1;function e(e){var t=typeof e;return t==`string`||t==`number`||t==`symbol`||t==`boolean`?e!==`__proto__`:e===null}return GP=e,GP}var JP,YP;function XP(){if(YP)return JP;YP=1;var e=qP();function t(t,n){var r=t.__data__;return e(n)?r[typeof n==`string`?`string`:`hash`]:r.map}return JP=t,JP}var ZP,QP;function $P(){if(QP)return ZP;QP=1;var e=XP();function t(t){var n=e(this,t).delete(t);return this.size-=+!!n,n}return ZP=t,ZP}var eF,tF;function nF(){if(tF)return eF;tF=1;var e=XP();function t(t){return e(this,t).get(t)}return eF=t,eF}var rF,iF;function aF(){if(iF)return rF;iF=1;var e=XP();function t(t){return e(this,t).has(t)}return rF=t,rF}var oF,sF;function cF(){if(sF)return oF;sF=1;var e=XP();function t(t,n){var r=e(this,t),i=r.size;return r.set(t,n),this.size+=r.size==i?0:1,this}return oF=t,oF}var lF,uF;function dF(){if(uF)return lF;uF=1;var e=WP(),t=$P(),n=nF(),r=aF(),i=cF();function a(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}return a.prototype.clear=e,a.prototype.delete=t,a.prototype.get=n,a.prototype.has=r,a.prototype.set=i,lF=a,lF}var fF,pF;function mF(){if(pF)return fF;pF=1;var e=_N(),t=bP(),n=dF(),r=200;function i(i,a){var o=this.__data__;if(o instanceof e){var s=o.__data__;if(!t||s.length<r-1)return s.push([i,a]),this.size=++o.size,this;o=this.__data__=new n(s)}return o.set(i,a),this.size=o.size,this}return fF=i,fF}var hF,gF;function _F(){if(gF)return hF;gF=1;var e=_N(),t=bN(),n=CN(),r=EN(),i=kN(),a=mF();function o(t){this.size=(this.__data__=new e(t)).size}return o.prototype.clear=t,o.prototype.delete=n,o.prototype.get=r,o.prototype.has=i,o.prototype.set=a,hF=o,hF}var vF,yF;function bF(){if(yF)return vF;yF=1;function e(e,t){for(var n=-1,r=e==null?0:e.length;++n<r&&t(e[n],n,e)!==!1;);return e}return vF=e,vF}var xF,SF;function CF(){if(SF)return xF;SF=1;var e=_P();return xF=function(){try{var t=e(Object,`defineProperty`);return t({},``,{}),t}catch{}}(),xF}var wF,TF;function EF(){if(TF)return wF;TF=1;var e=CF();function t(t,n,r){n==`__proto__`&&e?e(t,n,{configurable:!0,enumerable:!0,value:r,writable:!0}):t[n]=r}return wF=t,wF}var DF,OF;function kF(){if(OF)return DF;OF=1;var e=EF(),t=$M(),n=Object.prototype.hasOwnProperty;function r(r,i,a){var o=r[i];(!(n.call(r,i)&&t(o,a))||a===void 0&&!(i in r))&&e(r,i,a)}return DF=r,DF}var AF,jF;function MF(){if(jF)return AF;jF=1;var e=kF(),t=EF();function n(n,r,i,a){var o=!i;i||={};for(var s=-1,c=r.length;++s<c;){var l=r[s],u=a?a(i[l],n[l],l,i,n):void 0;u===void 0&&(u=n[l]),o?t(i,l,u):e(i,l,u)}return i}return AF=n,AF}var NF,PF;function FF(){if(PF)return NF;PF=1;function e(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}return NF=e,NF}var IF,LF;function RF(){if(LF)return IF;LF=1;function e(e){return typeof e==`object`&&!!e}return IF=e,IF}var zF,BF;function VF(){if(BF)return zF;BF=1;var e=qN(),t=RF(),n=`[object Arguments]`;function r(r){return t(r)&&e(r)==n}return zF=r,zF}var HF,UF;function WF(){if(UF)return HF;UF=1;var e=VF(),t=RF(),n=Object.prototype,r=n.hasOwnProperty,i=n.propertyIsEnumerable;return HF=e(function(){return arguments}())?e:function(e){return t(e)&&r.call(e,`callee`)&&!i.call(e,`callee`)},HF}var GF,KF;function qF(){return KF?GF:(KF=1,GF=Array.isArray,GF)}var JF={exports:{}},YF,XF;function ZF(){if(XF)return YF;XF=1;function e(){return!1}return YF=e,YF}JF.exports;var QF;function $F(){return QF?JF.exports:(QF=1,(function(e,t){var n=FN(),r=ZF(),i=t&&!t.nodeType&&t,a=i&&e&&!e.nodeType&&e,o=a&&a.exports===i?n.Buffer:void 0;e.exports=(o?o.isBuffer:void 0)||r})(JF,JF.exports),JF.exports)}var eI,tI;function nI(){if(tI)return eI;tI=1;var e=9007199254740991,t=/^(?:0|[1-9]\d*)$/;function n(n,r){var i=typeof n;return r??=e,!!r&&(i==`number`||i!=`symbol`&&t.test(n))&&n>-1&&n%1==0&&n<r}return eI=n,eI}var rI,iI;function aI(){if(iI)return rI;iI=1;var e=9007199254740991;function t(t){return typeof t==`number`&&t>-1&&t%1==0&&t<=e}return rI=t,rI}var oI,sI;function cI(){if(sI)return oI;sI=1;var e=qN(),t=aI(),n=RF(),r=`[object Arguments]`,i=`[object Array]`,a=`[object Boolean]`,o=`[object Date]`,s=`[object Error]`,c=`[object Function]`,l=`[object Map]`,u=`[object Number]`,d=`[object Object]`,f=`[object RegExp]`,p=`[object Set]`,m=`[object String]`,h=`[object WeakMap]`,g=`[object ArrayBuffer]`,_=`[object DataView]`,v=`[object Float32Array]`,y=`[object Float64Array]`,b=`[object Int8Array]`,x=`[object Int16Array]`,S=`[object Int32Array]`,C=`[object Uint8Array]`,w=`[object Uint8ClampedArray]`,T=`[object Uint16Array]`,E=`[object Uint32Array]`,D={};D[v]=D[y]=D[b]=D[x]=D[S]=D[C]=D[w]=D[T]=D[E]=!0,D[r]=D[i]=D[g]=D[a]=D[_]=D[o]=D[s]=D[c]=D[l]=D[u]=D[d]=D[f]=D[p]=D[m]=D[h]=!1;function O(r){return n(r)&&t(r.length)&&!!D[e(r)]}return oI=O,oI}var lI,uI;function dI(){if(uI)return lI;uI=1;function e(e){return function(t){return e(t)}}return lI=e,lI}var fI={exports:{}};fI.exports;var pI;function mI(){return pI?fI.exports:(pI=1,(function(e,t){var n=MN(),r=t&&!t.nodeType&&t,i=r&&e&&!e.nodeType&&e,a=i&&i.exports===r&&n.process;e.exports=function(){try{return i&&i.require&&i.require(`util`).types||a&&a.binding&&a.binding(`util`)}catch{}}()})(fI,fI.exports),fI.exports)}var hI,gI;function _I(){if(gI)return hI;gI=1;var e=cI(),t=dI(),n=mI(),r=n&&n.isTypedArray;return hI=r?t(r):e,hI}var vI,yI;function bI(){if(yI)return vI;yI=1;var e=FF(),t=WF(),n=qF(),r=$F(),i=nI(),a=_I(),o=Object.prototype.hasOwnProperty;function s(s,c){var l=n(s),u=!l&&t(s),d=!l&&!u&&r(s),f=!l&&!u&&!d&&a(s),p=l||u||d||f,m=p?e(s.length,String):[],h=m.length;for(var g in s)(c||o.call(s,g))&&!(p&&(g==`length`||d&&(g==`offset`||g==`parent`)||f&&(g==`buffer`||g==`byteLength`||g==`byteOffset`)||i(g,h)))&&m.push(g);return m}return vI=s,vI}var xI,SI;function CI(){if(SI)return xI;SI=1;var e=Object.prototype;function t(t){var n=t&&t.constructor;return t===(typeof n==`function`&&n.prototype||e)}return xI=t,xI}var wI,TI;function EI(){if(TI)return wI;TI=1;function e(e,t){return function(n){return e(t(n))}}return wI=e,wI}var DI,OI;function kI(){return OI?DI:(OI=1,DI=EI()(Object.keys,Object),DI)}var AI,jI;function MI(){if(jI)return AI;jI=1;var e=CI(),t=kI(),n=Object.prototype.hasOwnProperty;function r(r){if(!e(r))return t(r);var i=[];for(var a in Object(r))n.call(r,a)&&a!=`constructor`&&i.push(a);return i}return AI=r,AI}var NI,PI;function FI(){if(PI)return NI;PI=1;var e=$N(),t=aI();function n(n){return n!=null&&t(n.length)&&!e(n)}return NI=n,NI}var II,LI;function RI(){if(LI)return II;LI=1;var e=bI(),t=MI(),n=FI();function r(r){return n(r)?e(r):t(r)}return II=r,II}var zI,BI;function VI(){if(BI)return zI;BI=1;var e=MF(),t=RI();function n(n,r){return n&&e(r,t(r),n)}return zI=n,zI}var HI,UI;function WI(){if(UI)return HI;UI=1;function e(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}return HI=e,HI}var GI,KI;function qI(){if(KI)return GI;KI=1;var e=XN(),t=CI(),n=WI(),r=Object.prototype.hasOwnProperty;function i(i){if(!e(i))return n(i);var a=t(i),o=[];for(var s in i)s==`constructor`&&(a||!r.call(i,s))||o.push(s);return o}return GI=i,GI}var JI,YI;function XI(){if(YI)return JI;YI=1;var e=bI(),t=qI(),n=FI();function r(r){return n(r)?e(r,!0):t(r)}return JI=r,JI}var ZI,QI;function $I(){if(QI)return ZI;QI=1;var e=MF(),t=XI();function n(n,r){return n&&e(r,t(r),n)}return ZI=n,ZI}var eL={exports:{}};eL.exports;var tL;function nL(){return tL?eL.exports:(tL=1,(function(e,t){var n=FN(),r=t&&!t.nodeType&&t,i=r&&e&&!e.nodeType&&e,a=i&&i.exports===r?n.Buffer:void 0,o=a?a.allocUnsafe:void 0;function s(e,t){if(t)return e.slice();var n=e.length,r=o?o(n):new e.constructor(n);return e.copy(r),r}e.exports=s})(eL,eL.exports),eL.exports)}var rL,iL;function aL(){if(iL)return rL;iL=1;function e(e,t){var n=-1,r=e.length;for(t||=Array(r);++n<r;)t[n]=e[n];return t}return rL=e,rL}var oL,sL;function cL(){if(sL)return oL;sL=1;function e(e,t){for(var n=-1,r=e==null?0:e.length,i=0,a=[];++n<r;){var o=e[n];t(o,n,e)&&(a[i++]=o)}return a}return oL=e,oL}var lL,uL;function dL(){if(uL)return lL;uL=1;function e(){return[]}return lL=e,lL}var fL,pL;function mL(){if(pL)return fL;pL=1;var e=cL(),t=dL(),n=Object.prototype.propertyIsEnumerable,r=Object.getOwnPropertySymbols;return fL=r?function(t){return t==null?[]:(t=Object(t),e(r(t),function(e){return n.call(t,e)}))}:t,fL}var hL,gL;function _L(){if(gL)return hL;gL=1;var e=MF(),t=mL();function n(n,r){return e(n,t(n),r)}return hL=n,hL}var vL,yL;function bL(){if(yL)return vL;yL=1;function e(e,t){for(var n=-1,r=t.length,i=e.length;++n<r;)e[i+n]=t[n];return e}return vL=e,vL}var xL,SL;function CL(){return SL?xL:(SL=1,xL=EI()(Object.getPrototypeOf,Object),xL)}var wL,TL;function EL(){if(TL)return wL;TL=1;var e=bL(),t=CL(),n=mL(),r=dL();return wL=Object.getOwnPropertySymbols?function(r){for(var i=[];r;)e(i,n(r)),r=t(r);return i}:r,wL}var DL,OL;function kL(){if(OL)return DL;OL=1;var e=MF(),t=EL();function n(n,r){return e(n,t(n),r)}return DL=n,DL}var AL,jL;function ML(){if(jL)return AL;jL=1;var e=bL(),t=qF();function n(n,r,i){var a=r(n);return t(n)?a:e(a,i(n))}return AL=n,AL}var NL,PL;function FL(){if(PL)return NL;PL=1;var e=ML(),t=mL(),n=RI();function r(r){return e(r,n,t)}return NL=r,NL}var IL,LL;function RL(){if(LL)return IL;LL=1;var e=ML(),t=EL(),n=XI();function r(r){return e(r,n,t)}return IL=r,IL}var zL,BL;function VL(){return BL?zL:(BL=1,zL=_P()(FN(),`DataView`),zL)}var HL,UL;function WL(){return UL?HL:(UL=1,HL=_P()(FN(),`Promise`),HL)}var GL,KL;function qL(){return KL?GL:(KL=1,GL=_P()(FN(),`Set`),GL)}var JL,YL;function XL(){return YL?JL:(YL=1,JL=_P()(FN(),`WeakMap`),JL)}var ZL,QL;function $L(){if(QL)return ZL;QL=1;var e=VL(),t=bP(),n=WL(),r=qL(),i=XL(),a=qN(),o=cP(),s=`[object Map]`,c=`[object Object]`,l=`[object Promise]`,u=`[object Set]`,d=`[object WeakMap]`,f=`[object DataView]`,p=o(e),m=o(t),h=o(n),g=o(r),_=o(i),v=a;return(e&&v(new e(new ArrayBuffer(1)))!=f||t&&v(new t)!=s||n&&v(n.resolve())!=l||r&&v(new r)!=u||i&&v(new i)!=d)&&(v=function(e){var t=a(e),n=t==c?e.constructor:void 0,r=n?o(n):``;if(r)switch(r){case p:return f;case m:return s;case h:return l;case g:return u;case _:return d}return t}),ZL=v,ZL}var eR,tR;function nR(){if(tR)return eR;tR=1;var e=Object.prototype.hasOwnProperty;function t(t){var n=t.length,r=new t.constructor(n);return n&&typeof t[0]==`string`&&e.call(t,`index`)&&(r.index=t.index,r.input=t.input),r}return eR=t,eR}var rR,iR;function aR(){return iR?rR:(iR=1,rR=FN().Uint8Array,rR)}var oR,sR;function cR(){if(sR)return oR;sR=1;var e=aR();function t(t){var n=new t.constructor(t.byteLength);return new e(n).set(new e(t)),n}return oR=t,oR}var lR,uR;function dR(){if(uR)return lR;uR=1;var e=cR();function t(t,n){var r=n?e(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.byteLength)}return lR=t,lR}var fR,pR;function mR(){if(pR)return fR;pR=1;var e=/\w*$/;function t(t){var n=new t.constructor(t.source,e.exec(t));return n.lastIndex=t.lastIndex,n}return fR=t,fR}var hR,gR;function _R(){if(gR)return hR;gR=1;var e=RN(),t=e?e.prototype:void 0,n=t?t.valueOf:void 0;function r(e){return n?Object(n.call(e)):{}}return hR=r,hR}var vR,yR;function bR(){if(yR)return vR;yR=1;var e=cR();function t(t,n){var r=n?e(t.buffer):t.buffer;return new t.constructor(r,t.byteOffset,t.length)}return vR=t,vR}var xR,SR;function CR(){if(SR)return xR;SR=1;var e=cR(),t=dR(),n=mR(),r=_R(),i=bR(),a=`[object Boolean]`,o=`[object Date]`,s=`[object Map]`,c=`[object Number]`,l=`[object RegExp]`,u=`[object Set]`,d=`[object String]`,f=`[object Symbol]`,p=`[object ArrayBuffer]`,m=`[object DataView]`,h=`[object Float32Array]`,g=`[object Float64Array]`,_=`[object Int8Array]`,v=`[object Int16Array]`,y=`[object Int32Array]`,b=`[object Uint8Array]`,x=`[object Uint8ClampedArray]`,S=`[object Uint16Array]`,C=`[object Uint32Array]`;function w(w,T,E){var D=w.constructor;switch(T){case p:return e(w);case a:case o:return new D(+w);case m:return t(w,E);case h:case g:case _:case v:case y:case b:case x:case S:case C:return i(w,E);case s:return new D;case c:case d:return new D(w);case l:return n(w);case u:return new D;case f:return r(w)}}return xR=w,xR}var wR,TR;function ER(){if(TR)return wR;TR=1;var e=XN(),t=Object.create;return wR=function(){function n(){}return function(r){if(!e(r))return{};if(t)return t(r);n.prototype=r;var i=new n;return n.prototype=void 0,i}}(),wR}var DR,OR;function kR(){if(OR)return DR;OR=1;var e=ER(),t=CL(),n=CI();function r(r){return typeof r.constructor==`function`&&!n(r)?e(t(r)):{}}return DR=r,DR}var AR,jR;function MR(){if(jR)return AR;jR=1;var e=$L(),t=RF(),n=`[object Map]`;function r(r){return t(r)&&e(r)==n}return AR=r,AR}var NR,PR;function FR(){if(PR)return NR;PR=1;var e=MR(),t=dI(),n=mI(),r=n&&n.isMap;return NR=r?t(r):e,NR}var IR,LR;function RR(){if(LR)return IR;LR=1;var e=$L(),t=RF(),n=`[object Set]`;function r(r){return t(r)&&e(r)==n}return IR=r,IR}var zR,BR;function VR(){if(BR)return zR;BR=1;var e=RR(),t=dI(),n=mI(),r=n&&n.isSet;return zR=r?t(r):e,zR}var HR,UR;function WR(){if(UR)return HR;UR=1;var e=_F(),t=bF(),n=kF(),r=VI(),i=$I(),a=nL(),o=aL(),s=_L(),c=kL(),l=FL(),u=RL(),d=$L(),f=nR(),p=CR(),m=kR(),h=qF(),g=$F(),_=FR(),v=XN(),y=VR(),b=RI(),x=XI(),S=1,C=2,w=4,T=`[object Arguments]`,E=`[object Array]`,D=`[object Boolean]`,O=`[object Date]`,k=`[object Error]`,A=`[object Function]`,j=`[object GeneratorFunction]`,ee=`[object Map]`,M=`[object Number]`,te=`[object Object]`,ne=`[object RegExp]`,re=`[object Set]`,ie=`[object String]`,N=`[object Symbol]`,ae=`[object WeakMap]`,oe=`[object ArrayBuffer]`,P=`[object DataView]`,se=`[object Float32Array]`,ce=`[object Float64Array]`,le=`[object Int8Array]`,ue=`[object Int16Array]`,de=`[object Int32Array]`,fe=`[object Uint8Array]`,pe=`[object Uint8ClampedArray]`,me=`[object Uint16Array]`,he=`[object Uint32Array]`,ge={};ge[T]=ge[E]=ge[oe]=ge[P]=ge[D]=ge[O]=ge[se]=ge[ce]=ge[le]=ge[ue]=ge[de]=ge[ee]=ge[M]=ge[te]=ge[ne]=ge[re]=ge[ie]=ge[N]=ge[fe]=ge[pe]=ge[me]=ge[he]=!0,ge[k]=ge[A]=ge[ae]=!1;function _e(E,D,O,k,ee,M){var ne,re=D&S,ie=D&C,N=D&w;if(O&&(ne=ee?O(E,k,ee,M):O(E)),ne!==void 0)return ne;if(!v(E))return E;var ae=h(E);if(ae){if(ne=f(E),!re)return o(E,ne)}else{var oe=d(E),P=oe==A||oe==j;if(g(E))return a(E,re);if(oe==te||oe==T||P&&!ee){if(ne=ie||P?{}:m(E),!re)return ie?c(E,i(ne,E)):s(E,r(ne,E))}else{if(!ge[oe])return ee?E:{};ne=p(E,oe,re)}}M||=new e;var se=M.get(E);if(se)return se;M.set(E,ne),y(E)?E.forEach(function(e){ne.add(_e(e,D,O,e,E,M))}):_(E)&&E.forEach(function(e,t){ne.set(t,_e(e,D,O,t,E,M))});var ce=ae?void 0:(N?ie?u:l:ie?x:b)(E);return t(ce||E,function(e,t){ce&&(t=e,e=E[t]),n(ne,t,_e(e,D,O,t,E,M))}),ne}return HR=_e,HR}var GR,KR;function qR(){if(KR)return GR;KR=1;var e=WR(),t=4;function n(n){return e(n,t)}return GR=n,GR}var JR,YR;function XR(){if(YR)return JR;YR=1;function e(e){return function(){return e}}return JR=e,JR}var ZR,QR;function $R(){if(QR)return ZR;QR=1;function e(e){return function(t,n,r){for(var i=-1,a=Object(t),o=r(t),s=o.length;s--;){var c=o[e?s:++i];if(n(a[c],c,a)===!1)break}return t}}return ZR=e,ZR}var ez,tz;function nz(){return tz?ez:(tz=1,ez=$R()(),ez)}var rz,iz;function az(){if(iz)return rz;iz=1;var e=nz(),t=RI();function n(n,r){return n&&e(n,r,t)}return rz=n,rz}var oz,sz;function cz(){if(sz)return oz;sz=1;var e=FI();function t(t,n){return function(r,i){if(r==null)return r;if(!e(r))return t(r,i);for(var a=r.length,o=n?a:-1,s=Object(r);(n?o--:++o<a)&&i(s[o],o,s)!==!1;);return r}}return oz=t,oz}var lz,uz;function dz(){if(uz)return lz;uz=1;var e=az();return lz=cz()(e),lz}var fz,pz;function mz(){if(pz)return fz;pz=1;function e(e){return e}return fz=e,fz}var hz,gz;function _z(){if(gz)return hz;gz=1;var e=mz();function t(t){return typeof t==`function`?t:e}return hz=t,hz}var vz,yz;function bz(){if(yz)return vz;yz=1;var e=bF(),t=dz(),n=_z(),r=qF();function i(i,a){return(r(i)?e:t)(i,n(a))}return vz=i,vz}var xz,Sz;function Cz(){return Sz?xz:(Sz=1,xz=bz(),xz)}var wz,Tz;function Ez(){if(Tz)return wz;Tz=1;var e=dz();function t(t,n){var r=[];return e(t,function(e,t,i){n(e,t,i)&&r.push(e)}),r}return wz=t,wz}var Dz,Oz;function kz(){if(Oz)return Dz;Oz=1;var e=`__lodash_hash_undefined__`;function t(t){return this.__data__.set(t,e),this}return Dz=t,Dz}var Az,jz;function Mz(){if(jz)return Az;jz=1;function e(e){return this.__data__.has(e)}return Az=e,Az}var Nz,Pz;function Fz(){if(Pz)return Nz;Pz=1;var e=dF(),t=kz(),n=Mz();function r(t){var n=-1,r=t==null?0:t.length;for(this.__data__=new e;++n<r;)this.add(t[n])}return r.prototype.add=r.prototype.push=t,r.prototype.has=n,Nz=r,Nz}var Iz,Lz;function Rz(){if(Lz)return Iz;Lz=1;function e(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}return Iz=e,Iz}var zz,Bz;function Vz(){if(Bz)return zz;Bz=1;function e(e,t){return e.has(t)}return zz=e,zz}var Hz,Uz;function Wz(){if(Uz)return Hz;Uz=1;var e=Fz(),t=Rz(),n=Vz(),r=1,i=2;function a(a,o,s,c,l,u){var d=s&r,f=a.length,p=o.length;if(f!=p&&!(d&&p>f))return!1;var m=u.get(a),h=u.get(o);if(m&&h)return m==o&&h==a;var g=-1,_=!0,v=s&i?new e:void 0;for(u.set(a,o),u.set(o,a);++g<f;){var y=a[g],b=o[g];if(c)var x=d?c(b,y,g,o,a,u):c(y,b,g,a,o,u);if(x!==void 0){if(x)continue;_=!1;break}if(v){if(!t(o,function(e,t){if(!n(v,t)&&(y===e||l(y,e,s,c,u)))return v.push(t)})){_=!1;break}}else if(!(y===b||l(y,b,s,c,u))){_=!1;break}}return u.delete(a),u.delete(o),_}return Hz=a,Hz}var Gz,Kz;function qz(){if(Kz)return Gz;Kz=1;function e(e){var t=-1,n=Array(e.size);return e.forEach(function(e,r){n[++t]=[r,e]}),n}return Gz=e,Gz}var Jz,Yz;function Xz(){if(Yz)return Jz;Yz=1;function e(e){var t=-1,n=Array(e.size);return e.forEach(function(e){n[++t]=e}),n}return Jz=e,Jz}var Zz,Qz;function $z(){if(Qz)return Zz;Qz=1;var e=RN(),t=aR(),n=$M(),r=Wz(),i=qz(),a=Xz(),o=1,s=2,c=`[object Boolean]`,l=`[object Date]`,u=`[object Error]`,d=`[object Map]`,f=`[object Number]`,p=`[object RegExp]`,m=`[object Set]`,h=`[object String]`,g=`[object Symbol]`,_=`[object ArrayBuffer]`,v=`[object DataView]`,y=e?e.prototype:void 0,b=y?y.valueOf:void 0;function x(e,y,x,S,C,w,T){switch(x){case v:if(e.byteLength!=y.byteLength||e.byteOffset!=y.byteOffset)return!1;e=e.buffer,y=y.buffer;case _:return!(e.byteLength!=y.byteLength||!w(new t(e),new t(y)));case c:case l:case f:return n(+e,+y);case u:return e.name==y.name&&e.message==y.message;case p:case h:return e==y+``;case d:var E=i;case m:var D=S&o;if(E||=a,e.size!=y.size&&!D)return!1;var O=T.get(e);if(O)return O==y;S|=s,T.set(e,y);var k=r(E(e),E(y),S,C,w,T);return T.delete(e),k;case g:if(b)return b.call(e)==b.call(y)}return!1}return Zz=x,Zz}var eB,tB;function nB(){if(tB)return eB;tB=1;var e=FL(),t=1,n=Object.prototype.hasOwnProperty;function r(r,i,a,o,s,c){var l=a&t,u=e(r),d=u.length;if(d!=e(i).length&&!l)return!1;for(var f=d;f--;){var p=u[f];if(!(l?p in i:n.call(i,p)))return!1}var m=c.get(r),h=c.get(i);if(m&&h)return m==i&&h==r;var g=!0;c.set(r,i),c.set(i,r);for(var _=l;++f<d;){p=u[f];var v=r[p],y=i[p];if(o)var b=l?o(y,v,p,i,r,c):o(v,y,p,r,i,c);if(!(b===void 0?v===y||s(v,y,a,o,c):b)){g=!1;break}_||=p==`constructor`}if(g&&!_){var x=r.constructor,S=i.constructor;x!=S&&`constructor`in r&&`constructor`in i&&!(typeof x==`function`&&x instanceof x&&typeof S==`function`&&S instanceof S)&&(g=!1)}return c.delete(r),c.delete(i),g}return eB=r,eB}var rB,iB;function aB(){if(iB)return rB;iB=1;var e=_F(),t=Wz(),n=$z(),r=nB(),i=$L(),a=qF(),o=$F(),s=_I(),c=1,l=`[object Arguments]`,u=`[object Array]`,d=`[object Object]`,f=Object.prototype.hasOwnProperty;function p(p,m,h,g,_,v){var y=a(p),b=a(m),x=y?u:i(p),S=b?u:i(m);x=x==l?d:x,S=S==l?d:S;var C=x==d,w=S==d,T=x==S;if(T&&o(p)){if(!o(m))return!1;y=!0,C=!1}if(T&&!C)return v||=new e,y||s(p)?t(p,m,h,g,_,v):n(p,m,x,h,g,_,v);if(!(h&c)){var E=C&&f.call(p,`__wrapped__`),D=w&&f.call(m,`__wrapped__`);if(E||D){var O=E?p.value():p,k=D?m.value():m;return v||=new e,_(O,k,h,g,v)}}return T?(v||=new e,r(p,m,h,g,_,v)):!1}return rB=p,rB}var oB,sB;function cB(){if(sB)return oB;sB=1;var e=aB(),t=RF();function n(r,i,a,o,s){return r===i?!0:r==null||i==null||!t(r)&&!t(i)?r!==r&&i!==i:e(r,i,a,o,n,s)}return oB=n,oB}var lB,uB;function dB(){if(uB)return lB;uB=1;var e=_F(),t=cB(),n=1,r=2;function i(i,a,o,s){var c=o.length,l=c,u=!s;if(i==null)return!l;for(i=Object(i);c--;){var d=o[c];if(u&&d[2]?d[1]!==i[d[0]]:!(d[0]in i))return!1}for(;++c<l;){d=o[c];var f=d[0],p=i[f],m=d[1];if(u&&d[2]){if(p===void 0&&!(f in i))return!1}else{var h=new e;if(s)var g=s(p,m,f,i,a,h);if(!(g===void 0?t(m,p,n|r,s,h):g))return!1}}return!0}return lB=i,lB}var fB,pB;function mB(){if(pB)return fB;pB=1;var e=XN();function t(t){return t===t&&!e(t)}return fB=t,fB}var hB,gB;function _B(){if(gB)return hB;gB=1;var e=mB(),t=RI();function n(n){for(var r=t(n),i=r.length;i--;){var a=r[i],o=n[a];r[i]=[a,o,e(o)]}return r}return hB=n,hB}var vB,yB;function bB(){if(yB)return vB;yB=1;function e(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}return vB=e,vB}var xB,SB;function CB(){if(SB)return xB;SB=1;var e=dB(),t=_B(),n=bB();function r(r){var i=t(r);return i.length==1&&i[0][2]?n(i[0][0],i[0][1]):function(t){return t===r||e(t,r,i)}}return xB=r,xB}var wB,TB;function EB(){if(TB)return wB;TB=1;var e=qN(),t=RF(),n=`[object Symbol]`;function r(r){return typeof r==`symbol`||t(r)&&e(r)==n}return wB=r,wB}var DB,OB;function kB(){if(OB)return DB;OB=1;var e=qF(),t=EB(),n=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,r=/^\w*$/;function i(i,a){if(e(i))return!1;var o=typeof i;return o==`number`||o==`symbol`||o==`boolean`||i==null||t(i)?!0:r.test(i)||!n.test(i)||a!=null&&i in Object(a)}return DB=i,DB}var AB,jB;function MB(){if(jB)return AB;jB=1;var e=dF(),t=`Expected a function`;function n(r,i){if(typeof r!=`function`||i!=null&&typeof i!=`function`)throw TypeError(t);var a=function(){var e=arguments,t=i?i.apply(this,e):e[0],n=a.cache;if(n.has(t))return n.get(t);var o=r.apply(this,e);return a.cache=n.set(t,o)||n,o};return a.cache=new(n.Cache||e),a}return n.Cache=e,AB=n,AB}var NB,PB;function FB(){if(PB)return NB;PB=1;var e=MB(),t=500;function n(n){var r=e(n,function(e){return i.size===t&&i.clear(),e}),i=r.cache;return r}return NB=n,NB}var IB,LB;function RB(){if(LB)return IB;LB=1;var e=FB(),t=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,n=/\\(\\)?/g;return IB=e(function(e){var r=[];return e.charCodeAt(0)===46&&r.push(``),e.replace(t,function(e,t,i,a){r.push(i?a.replace(n,`$1`):t||e)}),r}),IB}var zB,BB;function VB(){if(BB)return zB;BB=1;function e(e,t){for(var n=-1,r=e==null?0:e.length,i=Array(r);++n<r;)i[n]=t(e[n],n,e);return i}return zB=e,zB}var HB,UB;function WB(){if(UB)return HB;UB=1;var e=RN(),t=VB(),n=qF(),r=EB(),i=e?e.prototype:void 0,a=i?i.toString:void 0;function o(e){if(typeof e==`string`)return e;if(n(e))return t(e,o)+``;if(r(e))return a?a.call(e):``;var i=e+``;return i==`0`&&1/e==-1/0?`-0`:i}return HB=o,HB}var GB,KB;function qB(){if(KB)return GB;KB=1;var e=WB();function t(t){return t==null?``:e(t)}return GB=t,GB}var JB,YB;function XB(){if(YB)return JB;YB=1;var e=qF(),t=kB(),n=RB(),r=qB();function i(i,a){return e(i)?i:t(i,a)?[i]:n(r(i))}return JB=i,JB}var ZB,QB;function $B(){if(QB)return ZB;QB=1;var e=EB();function t(t){if(typeof t==`string`||e(t))return t;var n=t+``;return n==`0`&&1/t==-1/0?`-0`:n}return ZB=t,ZB}var eV,tV;function nV(){if(tV)return eV;tV=1;var e=XB(),t=$B();function n(n,r){r=e(r,n);for(var i=0,a=r.length;n!=null&&i<a;)n=n[t(r[i++])];return i&&i==a?n:void 0}return eV=n,eV}var rV,iV;function aV(){if(iV)return rV;iV=1;var e=nV();function t(t,n,r){var i=t==null?void 0:e(t,n);return i===void 0?r:i}return rV=t,rV}var oV,sV;function cV(){if(sV)return oV;sV=1;function e(e,t){return e!=null&&t in Object(e)}return oV=e,oV}var lV,uV;function dV(){if(uV)return lV;uV=1;var e=XB(),t=WF(),n=qF(),r=nI(),i=aI(),a=$B();function o(o,s,c){s=e(s,o);for(var l=-1,u=s.length,d=!1;++l<u;){var f=a(s[l]);if(!(d=o!=null&&c(o,f)))break;o=o[f]}return d||++l!=u?d:(u=o==null?0:o.length,!!u&&i(u)&&r(f,u)&&(n(o)||t(o)))}return lV=o,lV}var fV,pV;function mV(){if(pV)return fV;pV=1;var e=cV(),t=dV();function n(n,r){return n!=null&&t(n,r,e)}return fV=n,fV}var hV,gV;function _V(){if(gV)return hV;gV=1;var e=cB(),t=aV(),n=mV(),r=kB(),i=mB(),a=bB(),o=$B(),s=1,c=2;function l(l,u){return r(l)&&i(u)?a(o(l),u):function(r){var i=t(r,l);return i===void 0&&i===u?n(r,l):e(u,i,s|c)}}return hV=l,hV}var vV,yV;function bV(){if(yV)return vV;yV=1;function e(e){return function(t){return t?.[e]}}return vV=e,vV}var xV,SV;function CV(){if(SV)return xV;SV=1;var e=nV();function t(t){return function(n){return e(n,t)}}return xV=t,xV}var wV,TV;function EV(){if(TV)return wV;TV=1;var e=bV(),t=CV(),n=kB(),r=$B();function i(i){return n(i)?e(r(i)):t(i)}return wV=i,wV}var DV,OV;function kV(){if(OV)return DV;OV=1;var e=CB(),t=_V(),n=mz(),r=qF(),i=EV();function a(a){return typeof a==`function`?a:a==null?n:typeof a==`object`?r(a)?t(a[0],a[1]):e(a):i(a)}return DV=a,DV}var AV,jV;function MV(){if(jV)return AV;jV=1;var e=cL(),t=Ez(),n=kV(),r=qF();function i(i,a){return(r(i)?e:t)(i,n(a,3))}return AV=i,AV}var NV,PV;function FV(){if(PV)return NV;PV=1;var e=Object.prototype.hasOwnProperty;function t(t,n){return t!=null&&e.call(t,n)}return NV=t,NV}var IV,LV;function RV(){if(LV)return IV;LV=1;var e=FV(),t=dV();function n(n,r){return n!=null&&t(n,r,e)}return IV=n,IV}var zV,BV;function VV(){if(BV)return zV;BV=1;var e=MI(),t=$L(),n=WF(),r=qF(),i=FI(),a=$F(),o=CI(),s=_I(),c=`[object Map]`,l=`[object Set]`,u=Object.prototype.hasOwnProperty;function d(d){if(d==null)return!0;if(i(d)&&(r(d)||typeof d==`string`||typeof d.splice==`function`||a(d)||s(d)||n(d)))return!d.length;var f=t(d);if(f==c||f==l)return!d.size;if(o(d))return!e(d).length;for(var p in d)if(u.call(d,p))return!1;return!0}return zV=d,zV}var HV,UV;function WV(){if(UV)return HV;UV=1;function e(e){return e===void 0}return HV=e,HV}var GV,KV;function qV(){if(KV)return GV;KV=1;var e=dz(),t=FI();function n(n,r){var i=-1,a=t(n)?Array(n.length):[];return e(n,function(e,t,n){a[++i]=r(e,t,n)}),a}return GV=n,GV}var JV,YV;function XV(){if(YV)return JV;YV=1;var e=VB(),t=kV(),n=qV(),r=qF();function i(i,a){return(r(i)?e:n)(i,t(a,3))}return JV=i,JV}var ZV,QV;function $V(){if(QV)return ZV;QV=1;function e(e,t,n,r){var i=-1,a=e==null?0:e.length;for(r&&a&&(n=e[++i]);++i<a;)n=t(n,e[i],i,e);return n}return ZV=e,ZV}var eH,tH;function nH(){if(tH)return eH;tH=1;function e(e,t,n,r,i){return i(e,function(e,i,a){n=r?(r=!1,e):t(n,e,i,a)}),n}return eH=e,eH}var rH,iH;function aH(){if(iH)return rH;iH=1;var e=$V(),t=dz(),n=kV(),r=nH(),i=qF();function a(a,o,s){var c=i(a)?e:r,l=arguments.length<3;return c(a,n(o,4),s,l,t)}return rH=a,rH}var oH,sH;function cH(){if(sH)return oH;sH=1;var e=qN(),t=qF(),n=RF(),r=`[object String]`;function i(i){return typeof i==`string`||!t(i)&&n(i)&&e(i)==r}return oH=i,oH}var lH,uH;function dH(){return uH?lH:(uH=1,lH=bV()(`length`),lH)}var fH,pH;function mH(){if(pH)return fH;pH=1;var e=RegExp(`[\\u200d\\ud800-\\udfff\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff\\ufe0e\\ufe0f]`);function t(t){return e.test(t)}return fH=t,fH}var hH,gH;function _H(){if(gH)return hH;gH=1;var e=`\\ud800-\\udfff`,t=`\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff`,n=`\\ufe0e\\ufe0f`,r=`[`+e+`]`,i=`[`+t+`]`,a=`\\ud83c[\\udffb-\\udfff]`,o=`(?:`+i+`|`+a+`)`,s=`[^`+e+`]`,c=`(?:\\ud83c[\\udde6-\\uddff]){2}`,l=`[\\ud800-\\udbff][\\udc00-\\udfff]`,u=`\\u200d`,d=o+`?`,f=`[`+n+`]?`,p=`(?:`+u+`(?:`+[s,c,l].join(`|`)+`)`+f+d+`)*`,m=f+d+p,h=`(?:`+[s+i+`?`,i,c,l,r].join(`|`)+`)`,g=RegExp(a+`(?=`+a+`)|`+h+m,`g`);function _(e){for(var t=g.lastIndex=0;g.test(e);)++t;return t}return hH=_,hH}var vH,yH;function bH(){if(yH)return vH;yH=1;var e=dH(),t=mH(),n=_H();function r(r){return t(r)?n(r):e(r)}return vH=r,vH}var xH,SH;function CH(){if(SH)return xH;SH=1;var e=MI(),t=$L(),n=FI(),r=cH(),i=bH(),a=`[object Map]`,o=`[object Set]`;function s(s){if(s==null)return 0;if(n(s))return r(s)?i(s):s.length;var c=t(s);return c==a||c==o?s.size:e(s).length}return xH=s,xH}var wH,TH;function EH(){if(TH)return wH;TH=1;var e=bF(),t=ER(),n=az(),r=kV(),i=CL(),a=qF(),o=$F(),s=$N(),c=XN(),l=_I();function u(u,d,f){var p=a(u),m=p||o(u)||l(u);if(d=r(d,4),f==null){var h=u&&u.constructor;f=m?p?new h:[]:c(u)&&s(h)?t(i(u)):{}}return(m?e:n)(u,function(e,t,n){return d(f,e,t,n)}),f}return wH=u,wH}var DH,OH;function kH(){if(OH)return DH;OH=1;var e=RN(),t=WF(),n=qF(),r=e?e.isConcatSpreadable:void 0;function i(e){return n(e)||t(e)||!!(r&&e&&e[r])}return DH=i,DH}var AH,jH;function MH(){if(jH)return AH;jH=1;var e=bL(),t=kH();function n(r,i,a,o,s){var c=-1,l=r.length;for(a||=t,s||=[];++c<l;){var u=r[c];i>0&&a(u)?i>1?n(u,i-1,a,o,s):e(s,u):o||(s[s.length]=u)}return s}return AH=n,AH}var NH,PH;function FH(){if(PH)return NH;PH=1;function e(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}return NH=e,NH}var IH,LH;function RH(){if(LH)return IH;LH=1;var e=FH(),t=Math.max;function n(n,r,i){return r=t(r===void 0?n.length-1:r,0),function(){for(var a=arguments,o=-1,s=t(a.length-r,0),c=Array(s);++o<s;)c[o]=a[r+o];o=-1;for(var l=Array(r+1);++o<r;)l[o]=a[o];return l[r]=i(c),e(n,this,l)}}return IH=n,IH}var zH,BH;function VH(){if(BH)return zH;BH=1;var e=XR(),t=CF(),n=mz();return zH=t?function(n,r){return t(n,`toString`,{configurable:!0,enumerable:!1,value:e(r),writable:!0})}:n,zH}var HH,UH;function WH(){if(UH)return HH;UH=1;var e=800,t=16,n=Date.now;function r(r){var i=0,a=0;return function(){var o=n(),s=t-(o-a);if(a=o,s>0){if(++i>=e)return arguments[0]}else i=0;return r.apply(void 0,arguments)}}return HH=r,HH}var GH,KH;function qH(){if(KH)return GH;KH=1;var e=VH();return GH=WH()(e),GH}var JH,YH;function XH(){if(YH)return JH;YH=1;var e=mz(),t=RH(),n=qH();function r(r,i){return n(t(r,i,e),r+``)}return JH=r,JH}var ZH,QH;function $H(){if(QH)return ZH;QH=1;function e(e,t,n,r){for(var i=e.length,a=n+(r?1:-1);r?a--:++a<i;)if(t(e[a],a,e))return a;return-1}return ZH=e,ZH}var eU,tU;function nU(){if(tU)return eU;tU=1;function e(e){return e!==e}return eU=e,eU}var rU,iU;function aU(){if(iU)return rU;iU=1;function e(e,t,n){for(var r=n-1,i=e.length;++r<i;)if(e[r]===t)return r;return-1}return rU=e,rU}var oU,sU;function cU(){if(sU)return oU;sU=1;var e=$H(),t=nU(),n=aU();function r(r,i,a){return i===i?n(r,i,a):e(r,t,a)}return oU=r,oU}var lU,uU;function dU(){if(uU)return lU;uU=1;var e=cU();function t(t,n){return!!(t!=null&&t.length)&&e(t,n,0)>-1}return lU=t,lU}var fU,pU;function mU(){if(pU)return fU;pU=1;function e(e,t,n){for(var r=-1,i=e==null?0:e.length;++r<i;)if(n(t,e[r]))return!0;return!1}return fU=e,fU}var hU,gU;function _U(){if(gU)return hU;gU=1;function e(){}return hU=e,hU}var vU,yU;function bU(){if(yU)return vU;yU=1;var e=qL(),t=_U(),n=Xz();return vU=e&&1/n(new e([,-0]))[1]==1/0?function(t){return new e(t)}:t,vU}var xU,SU;function CU(){if(SU)return xU;SU=1;var e=Fz(),t=dU(),n=mU(),r=Vz(),i=bU(),a=Xz(),o=200;function s(s,c,l){var u=-1,d=t,f=s.length,p=!0,m=[],h=m;if(l)p=!1,d=n;else if(f>=o){var g=c?null:i(s);if(g)return a(g);p=!1,d=r,h=new e}else h=c?[]:m;outer:for(;++u<f;){var _=s[u],v=c?c(_):_;if(_=l||_!==0?_:0,p&&v===v){for(var y=h.length;y--;)if(h[y]===v)continue outer;c&&h.push(v),m.push(_)}else d(h,v,l)||(h!==m&&h.push(v),m.push(_))}return m}return xU=s,xU}var wU,TU;function EU(){if(TU)return wU;TU=1;var e=FI(),t=RF();function n(n){return t(n)&&e(n)}return wU=n,wU}var DU,OU;function kU(){if(OU)return DU;OU=1;var e=MH(),t=XH(),n=CU(),r=EU();return DU=t(function(t){return n(e(t,1,r,!0))}),DU}var AU,jU;function MU(){if(jU)return AU;jU=1;var e=VB();function t(t,n){return e(n,function(e){return t[e]})}return AU=t,AU}var NU,PU;function FU(){if(PU)return NU;PU=1;var e=MU(),t=RI();function n(n){return n==null?[]:e(n,t(n))}return NU=n,NU}var IU,LU;function RU(){if(LU)return IU;LU=1;var e;if(typeof qM==`function`)try{e={clone:qR(),constant:XR(),each:Cz(),filter:MV(),has:RV(),isArray:qF(),isEmpty:VV(),isFunction:$N(),isUndefined:WV(),keys:RI(),map:XV(),reduce:aH(),size:CH(),transform:EH(),union:kU(),values:FU()}}catch{}return e||=window._,IU=e,IU}var zU,BU;function VU(){if(BU)return zU;BU=1;var e=RU();zU=i;var t=`\0`,n=`\0`,r=``;function i(t){this._isDirected=e.has(t,`directed`)?t.directed:!0,this._isMultigraph=e.has(t,`multigraph`)?t.multigraph:!1,this._isCompound=e.has(t,`compound`)?t.compound:!1,this._label=void 0,this._defaultNodeLabelFn=e.constant(void 0),this._defaultEdgeLabelFn=e.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[n]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}i.prototype._nodeCount=0,i.prototype._edgeCount=0,i.prototype.isDirected=function(){return this._isDirected},i.prototype.isMultigraph=function(){return this._isMultigraph},i.prototype.isCompound=function(){return this._isCompound},i.prototype.setGraph=function(e){return this._label=e,this},i.prototype.graph=function(){return this._label},i.prototype.setDefaultNodeLabel=function(t){return e.isFunction(t)||(t=e.constant(t)),this._defaultNodeLabelFn=t,this},i.prototype.nodeCount=function(){return this._nodeCount},i.prototype.nodes=function(){return e.keys(this._nodes)},i.prototype.sources=function(){var t=this;return e.filter(this.nodes(),function(n){return e.isEmpty(t._in[n])})},i.prototype.sinks=function(){var t=this;return e.filter(this.nodes(),function(n){return e.isEmpty(t._out[n])})},i.prototype.setNodes=function(t,n){var r=arguments,i=this;return e.each(t,function(e){r.length>1?i.setNode(e,n):i.setNode(e)}),this},i.prototype.setNode=function(t,r){return e.has(this._nodes,t)?(arguments.length>1&&(this._nodes[t]=r),this):(this._nodes[t]=arguments.length>1?r:this._defaultNodeLabelFn(t),this._isCompound&&(this._parent[t]=n,this._children[t]={},this._children[n][t]=!0),this._in[t]={},this._preds[t]={},this._out[t]={},this._sucs[t]={},++this._nodeCount,this)},i.prototype.node=function(e){return this._nodes[e]},i.prototype.hasNode=function(t){return e.has(this._nodes,t)},i.prototype.removeNode=function(t){var n=this;if(e.has(this._nodes,t)){var r=function(e){n.removeEdge(n._edgeObjs[e])};delete this._nodes[t],this._isCompound&&(this._removeFromParentsChildList(t),delete this._parent[t],e.each(this.children(t),function(e){n.setParent(e)}),delete this._children[t]),e.each(e.keys(this._in[t]),r),delete this._in[t],delete this._preds[t],e.each(e.keys(this._out[t]),r),delete this._out[t],delete this._sucs[t],--this._nodeCount}return this},i.prototype.setParent=function(t,r){if(!this._isCompound)throw Error(`Cannot set parent in a non-compound graph`);if(e.isUndefined(r))r=n;else{r+=``;for(var i=r;!e.isUndefined(i);i=this.parent(i))if(i===t)throw Error(`Setting `+r+` as parent of `+t+` would create a cycle`);this.setNode(r)}return this.setNode(t),this._removeFromParentsChildList(t),this._parent[t]=r,this._children[r][t]=!0,this},i.prototype._removeFromParentsChildList=function(e){delete this._children[this._parent[e]][e]},i.prototype.parent=function(e){if(this._isCompound){var t=this._parent[e];if(t!==n)return t}},i.prototype.children=function(t){if(e.isUndefined(t)&&(t=n),this._isCompound){var r=this._children[t];if(r)return e.keys(r)}else if(t===n)return this.nodes();else if(this.hasNode(t))return[]},i.prototype.predecessors=function(t){var n=this._preds[t];if(n)return e.keys(n)},i.prototype.successors=function(t){var n=this._sucs[t];if(n)return e.keys(n)},i.prototype.neighbors=function(t){var n=this.predecessors(t);if(n)return e.union(n,this.successors(t))},i.prototype.isLeaf=function(e){return(this.isDirected()?this.successors(e):this.neighbors(e)).length===0},i.prototype.filterNodes=function(t){var n=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});n.setGraph(this.graph());var r=this;e.each(this._nodes,function(e,r){t(r)&&n.setNode(r,e)}),e.each(this._edgeObjs,function(e){n.hasNode(e.v)&&n.hasNode(e.w)&&n.setEdge(e,r.edge(e))});var i={};function a(e){var t=r.parent(e);return t===void 0||n.hasNode(t)?(i[e]=t,t):t in i?i[t]:a(t)}return this._isCompound&&e.each(n.nodes(),function(e){n.setParent(e,a(e))}),n},i.prototype.setDefaultEdgeLabel=function(t){return e.isFunction(t)||(t=e.constant(t)),this._defaultEdgeLabelFn=t,this},i.prototype.edgeCount=function(){return this._edgeCount},i.prototype.edges=function(){return e.values(this._edgeObjs)},i.prototype.setPath=function(t,n){var r=this,i=arguments;return e.reduce(t,function(e,t){return i.length>1?r.setEdge(e,t,n):r.setEdge(e,t),t}),this},i.prototype.setEdge=function(){var t,n,r,i,o=!1,l=arguments[0];typeof l==`object`&&l&&`v`in l?(t=l.v,n=l.w,r=l.name,arguments.length===2&&(i=arguments[1],o=!0)):(t=l,n=arguments[1],r=arguments[3],arguments.length>2&&(i=arguments[2],o=!0)),t=``+t,n=``+n,e.isUndefined(r)||(r=``+r);var u=s(this._isDirected,t,n,r);if(e.has(this._edgeLabels,u))return o&&(this._edgeLabels[u]=i),this;if(!e.isUndefined(r)&&!this._isMultigraph)throw Error(`Cannot set a named edge when isMultigraph = false`);this.setNode(t),this.setNode(n),this._edgeLabels[u]=o?i:this._defaultEdgeLabelFn(t,n,r);var d=c(this._isDirected,t,n,r);return t=d.v,n=d.w,Object.freeze(d),this._edgeObjs[u]=d,a(this._preds[n],t),a(this._sucs[t],n),this._in[n][u]=d,this._out[t][u]=d,this._edgeCount++,this},i.prototype.edge=function(e,t,n){var r=arguments.length===1?l(this._isDirected,arguments[0]):s(this._isDirected,e,t,n);return this._edgeLabels[r]},i.prototype.hasEdge=function(t,n,r){var i=arguments.length===1?l(this._isDirected,arguments[0]):s(this._isDirected,t,n,r);return e.has(this._edgeLabels,i)},i.prototype.removeEdge=function(e,t,n){var r=arguments.length===1?l(this._isDirected,arguments[0]):s(this._isDirected,e,t,n),i=this._edgeObjs[r];return i&&(e=i.v,t=i.w,delete this._edgeLabels[r],delete this._edgeObjs[r],o(this._preds[t],e),o(this._sucs[e],t),delete this._in[t][r],delete this._out[e][r],this._edgeCount--),this},i.prototype.inEdges=function(t,n){var r=this._in[t];if(r){var i=e.values(r);return n?e.filter(i,function(e){return e.v===n}):i}},i.prototype.outEdges=function(t,n){var r=this._out[t];if(r){var i=e.values(r);return n?e.filter(i,function(e){return e.w===n}):i}},i.prototype.nodeEdges=function(e,t){var n=this.inEdges(e,t);if(n)return n.concat(this.outEdges(e,t))};function a(e,t){e[t]?e[t]++:e[t]=1}function o(e,t){--e[t]||delete e[t]}function s(n,i,a,o){var s=``+i,c=``+a;if(!n&&s>c){var l=s;s=c,c=l}return s+r+c+r+(e.isUndefined(o)?t:o)}function c(e,t,n,r){var i=``+t,a=``+n;if(!e&&i>a){var o=i;i=a,a=o}var s={v:i,w:a};return r&&(s.name=r),s}function l(e,t){return s(e,t.v,t.w,t.name)}return zU}var HU,UU;function WU(){return UU?HU:(UU=1,HU=`2.1.8`,HU)}var GU,KU;function qU(){return KU?GU:(KU=1,GU={Graph:VU(),version:WU()},GU)}var JU,YU;function XU(){if(YU)return JU;YU=1;var e=RU(),t=VU();JU={write:n,read:a};function n(t){var n={options:{directed:t.isDirected(),multigraph:t.isMultigraph(),compound:t.isCompound()},nodes:r(t),edges:i(t)};return e.isUndefined(t.graph())||(n.value=e.clone(t.graph())),n}function r(t){return e.map(t.nodes(),function(n){var r=t.node(n),i=t.parent(n),a={v:n};return e.isUndefined(r)||(a.value=r),e.isUndefined(i)||(a.parent=i),a})}function i(t){return e.map(t.edges(),function(n){var r=t.edge(n),i={v:n.v,w:n.w};return e.isUndefined(n.name)||(i.name=n.name),e.isUndefined(r)||(i.value=r),i})}function a(n){var r=new t(n.options).setGraph(n.value);return e.each(n.nodes,function(e){r.setNode(e.v,e.value),e.parent&&r.setParent(e.v,e.parent)}),e.each(n.edges,function(e){r.setEdge({v:e.v,w:e.w,name:e.name},e.value)}),r}return JU}var ZU,QU;function $U(){if(QU)return ZU;QU=1;var e=RU();ZU=t;function t(t){var n={},r=[],i;function a(r){e.has(n,r)||(n[r]=!0,i.push(r),e.each(t.successors(r),a),e.each(t.predecessors(r),a))}return e.each(t.nodes(),function(e){i=[],a(e),i.length&&r.push(i)}),r}return ZU}var eW,tW;function nW(){if(tW)return eW;tW=1;var e=RU();eW=t;function t(){this._arr=[],this._keyIndices={}}return t.prototype.size=function(){return this._arr.length},t.prototype.keys=function(){return this._arr.map(function(e){return e.key})},t.prototype.has=function(t){return e.has(this._keyIndices,t)},t.prototype.priority=function(e){var t=this._keyIndices[e];if(t!==void 0)return this._arr[t].priority},t.prototype.min=function(){if(this.size()===0)throw Error(`Queue underflow`);return this._arr[0].key},t.prototype.add=function(t,n){var r=this._keyIndices;if(t=String(t),!e.has(r,t)){var i=this._arr,a=i.length;return r[t]=a,i.push({key:t,priority:n}),this._decrease(a),!0}return!1},t.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key},t.prototype.decrease=function(e,t){var n=this._keyIndices[e];if(t>this._arr[n].priority)throw Error(`New priority is greater than current priority. Key: `+e+` Old: `+this._arr[n].priority+` New: `+t);this._arr[n].priority=t,this._decrease(n)},t.prototype._heapify=function(e){var t=this._arr,n=2*e,r=n+1,i=e;n<t.length&&(i=t[n].priority<t[i].priority?n:i,r<t.length&&(i=t[r].priority<t[i].priority?r:i),i!==e&&(this._swap(e,i),this._heapify(i)))},t.prototype._decrease=function(e){for(var t=this._arr,n=t[e].priority,r;e!==0&&(r=e>>1,!(t[r].priority<n));)this._swap(e,r),e=r},t.prototype._swap=function(e,t){var n=this._arr,r=this._keyIndices,i=n[e],a=n[t];n[e]=a,n[t]=i,r[a.key]=e,r[i.key]=t},eW}var rW,iW;function aW(){if(iW)return rW;iW=1;var e=RU(),t=nW();rW=r;var n=e.constant(1);function r(e,t,r,a){return i(e,String(t),r||n,a||function(t){return e.outEdges(t)})}function i(e,n,r,i){var a={},o=new t,s,c,l=function(e){var t=e.v===s?e.w:e.v,n=a[t],i=r(e),l=c.distance+i;if(i<0)throw Error(`dijkstra does not allow negative edge weights. Bad edge: `+e+` Weight: `+i);l<n.distance&&(n.distance=l,n.predecessor=s,o.decrease(t,l))};for(e.nodes().forEach(function(e){var t=e===n?0:1/0;a[e]={distance:t},o.add(e,t)});o.size()>0&&(s=o.removeMin(),c=a[s],c.distance!==1/0);)i(s).forEach(l);return a}return rW}var oW,sW;function cW(){if(sW)return oW;sW=1;var e=aW(),t=RU();oW=n;function n(n,r,i){return t.transform(n.nodes(),function(t,a){t[a]=e(n,a,r,i)},{})}return oW}var lW,uW;function dW(){if(uW)return lW;uW=1;var e=RU();lW=t;function t(t){var n=0,r=[],i={},a=[];function o(s){var c=i[s]={onStack:!0,lowlink:n,index:n++};if(r.push(s),t.successors(s).forEach(function(t){e.has(i,t)?i[t].onStack&&(c.lowlink=Math.min(c.lowlink,i[t].index)):(o(t),c.lowlink=Math.min(c.lowlink,i[t].lowlink))}),c.lowlink===c.index){var l=[],u;do u=r.pop(),i[u].onStack=!1,l.push(u);while(s!==u);a.push(l)}}return t.nodes().forEach(function(t){e.has(i,t)||o(t)}),a}return lW}var fW,pW;function mW(){if(pW)return fW;pW=1;var e=RU(),t=dW();fW=n;function n(n){return e.filter(t(n),function(e){return e.length>1||e.length===1&&n.hasEdge(e[0],e[0])})}return fW}var hW,gW;function _W(){if(gW)return hW;gW=1;var e=RU();hW=n;var t=e.constant(1);function n(e,n,i){return r(e,n||t,i||function(t){return e.outEdges(t)})}function r(e,t,n){var r={},i=e.nodes();return i.forEach(function(e){r[e]={},r[e][e]={distance:0},i.forEach(function(t){e!==t&&(r[e][t]={distance:1/0})}),n(e).forEach(function(n){var i=n.v===e?n.w:n.v,a=t(n);r[e][i]={distance:a,predecessor:e}})}),i.forEach(function(e){var t=r[e];i.forEach(function(n){var a=r[n];i.forEach(function(n){var r=a[e],i=t[n],o=a[n],s=r.distance+i.distance;s<o.distance&&(o.distance=s,o.predecessor=i.predecessor)})})}),r}return hW}var vW,yW;function bW(){if(yW)return vW;yW=1;var e=RU();vW=t,t.CycleException=n;function t(t){var r={},i={},a=[];function o(s){if(e.has(i,s))throw new n;e.has(r,s)||(i[s]=!0,r[s]=!0,e.each(t.predecessors(s),o),delete i[s],a.push(s))}if(e.each(t.sinks(),o),e.size(r)!==t.nodeCount())throw new n;return a}function n(){}return n.prototype=Error(),vW}var xW,SW;function CW(){if(SW)return xW;SW=1;var e=bW();xW=t;function t(t){try{e(t)}catch(t){if(t instanceof e.CycleException)return!1;throw t}return!0}return xW}var wW,TW;function EW(){if(TW)return wW;TW=1;var e=RU();wW=t;function t(t,r,i){e.isArray(r)||(r=[r]);var a=(t.isDirected()?t.successors:t.neighbors).bind(t),o=[],s={};return e.each(r,function(e){if(!t.hasNode(e))throw Error(`Graph does not have node: `+e);n(t,e,i===`post`,s,a,o)}),o}function n(t,r,i,a,o,s){e.has(a,r)||(a[r]=!0,i||s.push(r),e.each(o(r),function(e){n(t,e,i,a,o,s)}),i&&s.push(r))}return wW}var DW,OW;function kW(){if(OW)return DW;OW=1;var e=EW();DW=t;function t(t,n){return e(t,n,`post`)}return DW}var AW,jW;function MW(){if(jW)return AW;jW=1;var e=EW();AW=t;function t(t,n){return e(t,n,`pre`)}return AW}var NW,PW;function FW(){if(PW)return NW;PW=1;var e=RU(),t=VU(),n=nW();NW=r;function r(r,i){var a=new t,o={},s=new n,c;function l(e){var t=e.v===c?e.w:e.v,n=s.priority(t);if(n!==void 0){var r=i(e);r<n&&(o[t]=c,s.decrease(t,r))}}if(r.nodeCount()===0)return a;e.each(r.nodes(),function(e){s.add(e,1/0),a.setNode(e)}),s.decrease(r.nodes()[0],0);for(var u=!1;s.size()>0;){if(c=s.removeMin(),e.has(o,c))a.setEdge(c,o[c]);else if(u)throw Error(`Input graph is not connected: `+r);else u=!0;r.nodeEdges(c).forEach(l)}return a}return NW}var IW,LW;function RW(){return LW?IW:(LW=1,IW={components:$U(),dijkstra:aW(),dijkstraAll:cW(),findCycles:mW(),floydWarshall:_W(),isAcyclic:CW(),postorder:kW(),preorder:MW(),prim:FW(),tarjan:dW(),topsort:bW()},IW)}var zW,BW;function VW(){if(BW)return zW;BW=1;var e=qU();return zW={Graph:e.Graph,json:XU(),alg:RW(),version:e.version},zW}var HW,UW;function WW(){if(UW)return HW;UW=1;var e;if(typeof qM==`function`)try{e=VW()}catch{}return e||=window.graphlib,HW=e,HW}var GW,KW;function qW(){if(KW)return GW;KW=1;var e=WR(),t=1,n=4;function r(r){return e(r,t|n)}return GW=r,GW}var JW,YW;function XW(){if(YW)return JW;YW=1;var e=$M(),t=FI(),n=nI(),r=XN();function i(i,a,o){if(!r(o))return!1;var s=typeof a;return(s==`number`?t(o)&&n(a,o.length):s==`string`&&a in o)?e(o[a],i):!1}return JW=i,JW}var ZW,QW;function $W(){if(QW)return ZW;QW=1;var e=XH(),t=$M(),n=XW(),r=XI(),i=Object.prototype,a=i.hasOwnProperty;return ZW=e(function(e,o){e=Object(e);var s=-1,c=o.length,l=c>2?o[2]:void 0;for(l&&n(o[0],o[1],l)&&(c=1);++s<c;)for(var u=o[s],d=r(u),f=-1,p=d.length;++f<p;){var m=d[f],h=e[m];(h===void 0||t(h,i[m])&&!a.call(e,m))&&(e[m]=u[m])}return e}),ZW}var eG,tG;function nG(){if(tG)return eG;tG=1;var e=kV(),t=FI(),n=RI();function r(r){return function(i,a,o){var s=Object(i);if(!t(i)){var c=e(a,3);i=n(i),a=function(e){return c(s[e],e,s)}}var l=r(i,a,o);return l>-1?s[c?i[l]:l]:void 0}}return eG=r,eG}var rG,iG;function aG(){if(iG)return rG;iG=1;var e=/\s/;function t(t){for(var n=t.length;n--&&e.test(t.charAt(n)););return n}return rG=t,rG}var oG,sG;function cG(){if(sG)return oG;sG=1;var e=aG(),t=/^\s+/;function n(n){return n&&n.slice(0,e(n)+1).replace(t,``)}return oG=n,oG}var lG,uG;function dG(){if(uG)return lG;uG=1;var e=cG(),t=XN(),n=EB(),r=NaN,i=/^[-+]0x[0-9a-f]+$/i,a=/^0b[01]+$/i,o=/^0o[0-7]+$/i,s=parseInt;function c(c){if(typeof c==`number`)return c;if(n(c))return r;if(t(c)){var l=typeof c.valueOf==`function`?c.valueOf():c;c=t(l)?l+``:l}if(typeof c!=`string`)return c===0?c:+c;c=e(c);var u=a.test(c);return u||o.test(c)?s(c.slice(2),u?2:8):i.test(c)?r:+c}return lG=c,lG}var fG,pG;function mG(){if(pG)return fG;pG=1;var e=dG(),t=1/0,n=17976931348623157e292;function r(r){return r?(r=e(r),r===t||r===-t?(r<0?-1:1)*n:r===r?r:0):r===0?r:0}return fG=r,fG}var hG,gG;function _G(){if(gG)return hG;gG=1;var e=mG();function t(t){var n=e(t),r=n%1;return n===n?r?n-r:n:0}return hG=t,hG}var vG,yG;function bG(){if(yG)return vG;yG=1;var e=$H(),t=kV(),n=_G(),r=Math.max;function i(i,a,o){var s=i==null?0:i.length;if(!s)return-1;var c=o==null?0:n(o);return c<0&&(c=r(s+c,0)),e(i,t(a,3),c)}return vG=i,vG}var xG,SG;function CG(){return SG?xG:(SG=1,xG=nG()(bG()),xG)}var wG,TG;function EG(){if(TG)return wG;TG=1;var e=MH();function t(t){return t!=null&&t.length?e(t,1):[]}return wG=t,wG}var DG,OG;function kG(){if(OG)return DG;OG=1;var e=nz(),t=_z(),n=XI();function r(r,i){return r==null?r:e(r,t(i),n)}return DG=r,DG}var AG,jG;function MG(){if(jG)return AG;jG=1;function e(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}return AG=e,AG}var NG,PG;function FG(){if(PG)return NG;PG=1;var e=EF(),t=az(),n=kV();function r(r,i){var a={};return i=n(i,3),t(r,function(t,n,r){e(a,n,i(t,n,r))}),a}return NG=r,NG}var IG,LG;function RG(){if(LG)return IG;LG=1;var e=EB();function t(t,n,r){for(var i=-1,a=t.length;++i<a;){var o=t[i],s=n(o);if(s!=null&&(c===void 0?s===s&&!e(s):r(s,c)))var c=s,l=o}return l}return IG=t,IG}var zG,BG;function VG(){if(BG)return zG;BG=1;function e(e,t){return e>t}return zG=e,zG}var HG,UG;function WG(){if(UG)return HG;UG=1;var e=RG(),t=VG(),n=mz();function r(r){return r&&r.length?e(r,n,t):void 0}return HG=r,HG}var GG,KG;function qG(){if(KG)return GG;KG=1;var e=EF(),t=$M();function n(n,r,i){(i!==void 0&&!t(n[r],i)||i===void 0&&!(r in n))&&e(n,r,i)}return GG=n,GG}var JG,YG;function XG(){if(YG)return JG;YG=1;var e=qN(),t=CL(),n=RF(),r=`[object Object]`,i=Function.prototype,a=Object.prototype,o=i.toString,s=a.hasOwnProperty,c=o.call(Object);function l(i){if(!n(i)||e(i)!=r)return!1;var a=t(i);if(a===null)return!0;var l=s.call(a,`constructor`)&&a.constructor;return typeof l==`function`&&l instanceof l&&o.call(l)==c}return JG=l,JG}var ZG,QG;function $G(){if(QG)return ZG;QG=1;function e(e,t){if(!(t===`constructor`&&typeof e[t]==`function`)&&t!=`__proto__`)return e[t]}return ZG=e,ZG}var eK,tK;function nK(){if(tK)return eK;tK=1;var e=MF(),t=XI();function n(n){return e(n,t(n))}return eK=n,eK}var rK,iK;function aK(){if(iK)return rK;iK=1;var e=qG(),t=nL(),n=bR(),r=aL(),i=kR(),a=WF(),o=qF(),s=EU(),c=$F(),l=$N(),u=XN(),d=XG(),f=_I(),p=$G(),m=nK();function h(h,g,_,v,y,b,x){var S=p(h,_),C=p(g,_),w=x.get(C);if(w){e(h,_,w);return}var T=b?b(S,C,_+``,h,g,x):void 0,E=T===void 0;if(E){var D=o(C),O=!D&&c(C),k=!D&&!O&&f(C);T=C,D||O||k?o(S)?T=S:s(S)?T=r(S):O?(E=!1,T=t(C,!0)):k?(E=!1,T=n(C,!0)):T=[]:d(C)||a(C)?(T=S,a(S)?T=m(S):(!u(S)||l(S))&&(T=i(C))):E=!1}E&&(x.set(C,T),y(T,C,v,b,x),x.delete(C)),e(h,_,T)}return rK=h,rK}var oK,sK;function cK(){if(sK)return oK;sK=1;var e=_F(),t=qG(),n=nz(),r=aK(),i=XN(),a=XI(),o=$G();function s(c,l,u,d,f){c!==l&&n(l,function(n,a){if(f||=new e,i(n))r(c,l,a,u,s,d,f);else{var p=d?d(o(c,a),n,a+``,c,l,f):void 0;p===void 0&&(p=n),t(c,a,p)}},a)}return oK=s,oK}var lK,uK;function dK(){if(uK)return lK;uK=1;var e=XH(),t=XW();function n(n){return e(function(e,r){var i=-1,a=r.length,o=a>1?r[a-1]:void 0,s=a>2?r[2]:void 0;for(o=n.length>3&&typeof o==`function`?(a--,o):void 0,s&&t(r[0],r[1],s)&&(o=a<3?void 0:o,a=1),e=Object(e);++i<a;){var c=r[i];c&&n(e,c,i,o)}return e})}return lK=n,lK}var fK,pK;function mK(){if(pK)return fK;pK=1;var e=cK();return fK=dK()(function(t,n,r){e(t,n,r)}),fK}var hK,gK;function _K(){if(gK)return hK;gK=1;function e(e,t){return e<t}return hK=e,hK}var vK,yK;function bK(){if(yK)return vK;yK=1;var e=RG(),t=_K(),n=mz();function r(r){return r&&r.length?e(r,n,t):void 0}return vK=r,vK}var xK,SK;function CK(){if(SK)return xK;SK=1;var e=RG(),t=kV(),n=_K();function r(r,i){return r&&r.length?e(r,t(i,2),n):void 0}return xK=r,xK}var wK,TK;function EK(){if(TK)return wK;TK=1;var e=FN();return wK=function(){return e.Date.now()},wK}var DK,OK;function kK(){if(OK)return DK;OK=1;var e=kF(),t=XB(),n=nI(),r=XN(),i=$B();function a(a,o,s,c){if(!r(a))return a;o=t(o,a);for(var l=-1,u=o.length,d=u-1,f=a;f!=null&&++l<u;){var p=i(o[l]),m=s;if(p===`__proto__`||p===`constructor`||p===`prototype`)return a;if(l!=d){var h=f[p];m=c?c(h,p,f):void 0,m===void 0&&(m=r(h)?h:n(o[l+1])?[]:{})}e(f,p,m),f=f[p]}return a}return DK=a,DK}var AK,jK;function MK(){if(jK)return AK;jK=1;var e=nV(),t=kK(),n=XB();function r(r,i,a){for(var o=-1,s=i.length,c={};++o<s;){var l=i[o],u=e(r,l);a(u,l)&&t(c,n(l,r),u)}return c}return AK=r,AK}var NK,PK;function FK(){if(PK)return NK;PK=1;var e=MK(),t=mV();function n(n,r){return e(n,r,function(e,r){return t(n,r)})}return NK=n,NK}var IK,LK;function RK(){if(LK)return IK;LK=1;var e=EG(),t=RH(),n=qH();function r(r){return n(t(r,void 0,e),r+``)}return IK=r,IK}var zK,BK;function VK(){if(BK)return zK;BK=1;var e=FK();return zK=RK()(function(t,n){return t==null?{}:e(t,n)}),zK}var HK,UK;function WK(){if(UK)return HK;UK=1;var e=Math.ceil,t=Math.max;function n(n,r,i,a){for(var o=-1,s=t(e((r-n)/(i||1)),0),c=Array(s);s--;)c[a?s:++o]=n,n+=i;return c}return HK=n,HK}var GK,KK;function qK(){if(KK)return GK;KK=1;var e=WK(),t=XW(),n=mG();function r(r){return function(i,a,o){return o&&typeof o!=`number`&&t(i,a,o)&&(a=o=void 0),i=n(i),a===void 0?(a=i,i=0):a=n(a),o=o===void 0?i<a?1:-1:n(o),e(i,a,o,r)}}return GK=r,GK}var JK,YK;function XK(){return YK?JK:(YK=1,JK=qK()(),JK)}var ZK,QK;function $K(){if(QK)return ZK;QK=1;function e(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}return ZK=e,ZK}var eq,tq;function nq(){if(tq)return eq;tq=1;var e=EB();function t(t,n){if(t!==n){var r=t!==void 0,i=t===null,a=t===t,o=e(t),s=n!==void 0,c=n===null,l=n===n,u=e(n);if(!c&&!u&&!o&&t>n||o&&s&&l&&!c&&!u||i&&s&&l||!r&&l||!a)return 1;if(!i&&!o&&!u&&t<n||u&&r&&a&&!i&&!o||c&&r&&a||!s&&a||!l)return-1}return 0}return eq=t,eq}var rq,iq;function aq(){if(iq)return rq;iq=1;var e=nq();function t(t,n,r){for(var i=-1,a=t.criteria,o=n.criteria,s=a.length,c=r.length;++i<s;){var l=e(a[i],o[i]);if(l)return i>=c?l:l*(r[i]==`desc`?-1:1)}return t.index-n.index}return rq=t,rq}var oq,sq;function cq(){if(sq)return oq;sq=1;var e=VB(),t=nV(),n=kV(),r=qV(),i=$K(),a=dI(),o=aq(),s=mz(),c=qF();function l(l,u,d){u=u.length?e(u,function(e){return c(e)?function(n){return t(n,e.length===1?e[0]:e)}:e}):[s];var f=-1;return u=e(u,a(n)),i(r(l,function(t,n,r){return{criteria:e(u,function(e){return e(t)}),index:++f,value:t}}),function(e,t){return o(e,t,d)})}return oq=l,oq}var lq,uq;function dq(){if(uq)return lq;uq=1;var e=MH(),t=cq(),n=XH(),r=XW();return lq=n(function(n,i){if(n==null)return[];var a=i.length;return a>1&&r(n,i[0],i[1])?i=[]:a>2&&r(i[0],i[1],i[2])&&(i=[i[0]]),t(n,e(i,1),[])}),lq}var fq,pq;function mq(){if(pq)return fq;pq=1;var e=qB(),t=0;function n(n){var r=++t;return e(n)+r}return fq=n,fq}var hq,gq;function _q(){if(gq)return hq;gq=1;function e(e,t,n){for(var r=-1,i=e.length,a=t.length,o={};++r<i;){var s=r<a?t[r]:void 0;n(o,e[r],s)}return o}return hq=e,hq}var vq,yq;function bq(){if(yq)return vq;yq=1;var e=kF(),t=_q();function n(n,r){return t(n||[],r||[],e)}return vq=n,vq}var xq,Sq;function Cq(){if(Sq)return xq;Sq=1;var e;if(typeof qM==`function`)try{e={cloneDeep:qW(),constant:XR(),defaults:$W(),each:Cz(),filter:MV(),find:CG(),flatten:EG(),forEach:bz(),forIn:kG(),has:RV(),isUndefined:WV(),last:MG(),map:XV(),mapValues:FG(),max:WG(),merge:mK(),min:bK(),minBy:CK(),now:EK(),pick:VK(),range:XK(),reduce:aH(),sortBy:dq(),uniqueId:mq(),values:FU(),zipObject:bq()}}catch{}return e||=window._,xq=e,xq}var wq,Tq;function Eq(){if(Tq)return wq;Tq=1,wq=e;function e(){var e={};e._next=e._prev=e,this._sentinel=e}e.prototype.dequeue=function(){var e=this._sentinel,n=e._prev;if(n!==e)return t(n),n},e.prototype.enqueue=function(e){var n=this._sentinel;e._prev&&e._next&&t(e),e._next=n._next,n._next._prev=e,n._next=e,e._prev=n},e.prototype.toString=function(){for(var e=[],t=this._sentinel,r=t._prev;r!==t;)e.push(JSON.stringify(r,n)),r=r._prev;return`[`+e.join(`, `)+`]`};function t(e){e._prev._next=e._next,e._next._prev=e._prev,delete e._next,delete e._prev}function n(e,t){if(e!==`_next`&&e!==`_prev`)return t}return wq}var Dq,Oq;function kq(){if(Oq)return Dq;Oq=1;var e=Cq(),t=WW().Graph,n=Eq();Dq=i;var r=e.constant(1);function i(t,n){if(t.nodeCount()<=1)return[];var i=s(t,n||r),o=a(i.graph,i.buckets,i.zeroIdx);return e.flatten(e.map(o,function(e){return t.outEdges(e.v,e.w)}),!0)}function a(e,t,n){for(var r=[],i=t[t.length-1],a=t[0],s;e.nodeCount();){for(;s=a.dequeue();)o(e,t,n,s);for(;s=i.dequeue();)o(e,t,n,s);if(e.nodeCount()){for(var c=t.length-2;c>0;--c)if(s=t[c].dequeue(),s){r=r.concat(o(e,t,n,s,!0));break}}}return r}function o(t,n,r,i,a){var o=a?[]:void 0;return e.forEach(t.inEdges(i.v),function(e){var i=t.edge(e),s=t.node(e.v);a&&o.push({v:e.v,w:e.w}),s.out-=i,c(n,r,s)}),e.forEach(t.outEdges(i.v),function(e){var i=t.edge(e),a=e.w,o=t.node(a);o.in-=i,c(n,r,o)}),t.removeNode(i.v),o}function s(r,i){var a=new t,o=0,s=0;e.forEach(r.nodes(),function(e){a.setNode(e,{v:e,in:0,out:0})}),e.forEach(r.edges(),function(e){var t=a.edge(e.v,e.w)||0,n=i(e),r=t+n;a.setEdge(e.v,e.w,r),s=Math.max(s,a.node(e.v).out+=n),o=Math.max(o,a.node(e.w).in+=n)});var l=e.range(s+o+3).map(function(){return new n}),u=o+1;return e.forEach(a.nodes(),function(e){c(l,u,a.node(e))}),{graph:a,buckets:l,zeroIdx:u}}function c(e,t,n){n.out?n.in?e[n.out-n.in+t].enqueue(n):e[e.length-1].enqueue(n):e[0].enqueue(n)}return Dq}var Aq,jq;function Mq(){if(jq)return Aq;jq=1;var e=Cq(),t=kq();Aq={run:n,undo:i};function n(n){var i=n.graph().acyclicer===`greedy`?t(n,a(n)):r(n);e.forEach(i,function(t){var r=n.edge(t);n.removeEdge(t),r.forwardName=t.name,r.reversed=!0,n.setEdge(t.w,t.v,r,e.uniqueId(`rev`))});function a(e){return function(t){return e.edge(t).weight}}}function r(t){var n=[],r={},i={};function a(o){e.has(i,o)||(i[o]=!0,r[o]=!0,e.forEach(t.outEdges(o),function(t){e.has(r,t.w)?n.push(t):a(t.w)}),delete r[o])}return e.forEach(t.nodes(),a),n}function i(t){e.forEach(t.edges(),function(e){var n=t.edge(e);if(n.reversed){t.removeEdge(e);var r=n.forwardName;delete n.reversed,delete n.forwardName,t.setEdge(e.w,e.v,n,r)}})}return Aq}var Nq,Pq;function Fq(){if(Pq)return Nq;Pq=1;var e=Cq(),t=WW().Graph;Nq={addDummyNode:n,simplify:r,asNonCompoundGraph:i,successorWeights:a,predecessorWeights:o,intersectRect:s,buildLayerMatrix:c,normalizeRanks:l,removeEmptyRanks:u,addBorderNode:d,maxRank:f,partition:p,time:m,notime:h};function n(t,n,r,i){var a;do a=e.uniqueId(i);while(t.hasNode(a));return r.dummy=n,t.setNode(a,r),a}function r(n){var r=new t().setGraph(n.graph());return e.forEach(n.nodes(),function(e){r.setNode(e,n.node(e))}),e.forEach(n.edges(),function(e){var t=r.edge(e.v,e.w)||{weight:0,minlen:1},i=n.edge(e);r.setEdge(e.v,e.w,{weight:t.weight+i.weight,minlen:Math.max(t.minlen,i.minlen)})}),r}function i(n){var r=new t({multigraph:n.isMultigraph()}).setGraph(n.graph());return e.forEach(n.nodes(),function(e){n.children(e).length||r.setNode(e,n.node(e))}),e.forEach(n.edges(),function(e){r.setEdge(e,n.edge(e))}),r}function a(t){var n=e.map(t.nodes(),function(n){var r={};return e.forEach(t.outEdges(n),function(e){r[e.w]=(r[e.w]||0)+t.edge(e).weight}),r});return e.zipObject(t.nodes(),n)}function o(t){var n=e.map(t.nodes(),function(n){var r={};return e.forEach(t.inEdges(n),function(e){r[e.v]=(r[e.v]||0)+t.edge(e).weight}),r});return e.zipObject(t.nodes(),n)}function s(e,t){var n=e.x,r=e.y,i=t.x-n,a=t.y-r,o=e.width/2,s=e.height/2;if(!i&&!a)throw Error(`Not possible to find intersection inside of the rectangle`);var c,l;return Math.abs(a)*o>Math.abs(i)*s?(a<0&&(s=-s),c=s*i/a,l=s):(i<0&&(o=-o),c=o,l=o*a/i),{x:n+c,y:r+l}}function c(t){var n=e.map(e.range(f(t)+1),function(){return[]});return e.forEach(t.nodes(),function(r){var i=t.node(r),a=i.rank;e.isUndefined(a)||(n[a][i.order]=r)}),n}function l(t){var n=e.min(e.map(t.nodes(),function(e){return t.node(e).rank}));e.forEach(t.nodes(),function(r){var i=t.node(r);e.has(i,`rank`)&&(i.rank-=n)})}function u(t){var n=e.min(e.map(t.nodes(),function(e){return t.node(e).rank})),r=[];e.forEach(t.nodes(),function(e){var i=t.node(e).rank-n;r[i]||(r[i]=[]),r[i].push(e)});var i=0,a=t.graph().nodeRankFactor;e.forEach(r,function(n,r){e.isUndefined(n)&&r%a!==0?--i:i&&e.forEach(n,function(e){t.node(e).rank+=i})})}function d(e,t,r,i){var a={width:0,height:0};return arguments.length>=4&&(a.rank=r,a.order=i),n(e,`border`,a,t)}function f(t){return e.max(e.map(t.nodes(),function(n){var r=t.node(n).rank;if(!e.isUndefined(r))return r}))}function p(t,n){var r={lhs:[],rhs:[]};return e.forEach(t,function(e){n(e)?r.lhs.push(e):r.rhs.push(e)}),r}function m(t,n){var r=e.now();try{return n()}finally{console.log(t+` time: `+(e.now()-r)+`ms`)}}function h(e,t){return t()}return Nq}var Iq,Lq;function Rq(){if(Lq)return Iq;Lq=1;var e=Cq(),t=Fq();Iq={run:n,undo:i};function n(t){t.graph().dummyChains=[],e.forEach(t.edges(),function(e){r(t,e)})}function r(e,n){var r=n.v,i=e.node(r).rank,a=n.w,o=e.node(a).rank,s=n.name,c=e.edge(n),l=c.labelRank;if(o!==i+1){e.removeEdge(n);var u,d,f;for(f=0,++i;i<o;++f,++i)c.points=[],d={width:0,height:0,edgeLabel:c,edgeObj:n,rank:i},u=t.addDummyNode(e,`edge`,d,`_d`),i===l&&(d.width=c.width,d.height=c.height,d.dummy=`edge-label`,d.labelpos=c.labelpos),e.setEdge(r,u,{weight:c.weight},s),f===0&&e.graph().dummyChains.push(u),r=u;e.setEdge(r,a,{weight:c.weight},s)}}function i(t){e.forEach(t.graph().dummyChains,function(e){var n=t.node(e),r=n.edgeLabel,i;for(t.setEdge(n.edgeObj,r);n.dummy;)i=t.successors(e)[0],t.removeNode(e),r.points.push({x:n.x,y:n.y}),n.dummy===`edge-label`&&(r.x=n.x,r.y=n.y,r.width=n.width,r.height=n.height),e=i,n=t.node(e)})}return Iq}var zq,Bq;function Vq(){if(Bq)return zq;Bq=1;var e=Cq();zq={longestPath:t,slack:n};function t(t){var n={};function r(i){var a=t.node(i);if(e.has(n,i))return a.rank;n[i]=!0;var o=e.min(e.map(t.outEdges(i),function(e){return r(e.w)-t.edge(e).minlen}));return(o===1/0||o==null)&&(o=0),a.rank=o}e.forEach(t.sources(),r)}function n(e,t){return e.node(t.w).rank-e.node(t.v).rank-e.edge(t).minlen}return zq}var Hq,Uq;function Wq(){if(Uq)return Hq;Uq=1;var e=Cq(),t=WW().Graph,n=Vq().slack;Hq=r;function r(e){var r=new t({directed:!1}),s=e.nodes()[0],c=e.nodeCount();r.setNode(s,{});for(var l,u;i(r,e)<c;)l=a(r,e),u=r.hasNode(l.v)?n(e,l):-n(e,l),o(r,e,u);return r}function i(t,r){function i(a){e.forEach(r.nodeEdges(a),function(e){var o=e.v,s=a===o?e.w:o;!t.hasNode(s)&&!n(r,e)&&(t.setNode(s,{}),t.setEdge(a,s,{}),i(s))})}return e.forEach(t.nodes(),i),t.nodeCount()}function a(t,r){return e.minBy(r.edges(),function(e){if(t.hasNode(e.v)!==t.hasNode(e.w))return n(r,e)})}function o(t,n,r){e.forEach(t.nodes(),function(e){n.node(e).rank+=r})}return Hq}var Gq,Kq;function qq(){if(Kq)return Gq;Kq=1;var e=Cq(),t=Wq(),n=Vq().slack,r=Vq().longestPath,i=WW().alg.preorder,a=WW().alg.postorder,o=Fq().simplify;Gq=s,s.initLowLimValues=d,s.initCutValues=c,s.calcCutValue=u,s.leaveEdge=p,s.enterEdge=m,s.exchangeEdges=h;function s(e){e=o(e),r(e);var n=t(e);d(n),c(n,e);for(var i,a;i=p(n);)a=m(n,e,i),h(n,e,i,a)}function c(t,n){var r=a(t,t.nodes());r=r.slice(0,r.length-1),e.forEach(r,function(e){l(t,n,e)})}function l(e,t,n){var r=e.node(n).parent;e.edge(n,r).cutvalue=u(e,t,n)}function u(t,n,r){var i=t.node(r).parent,a=!0,o=n.edge(r,i),s=0;return o||=(a=!1,n.edge(i,r)),s=o.weight,e.forEach(n.nodeEdges(r),function(e){var o=e.v===r,c=o?e.w:e.v;if(c!==i){var l=o===a,u=n.edge(e).weight;if(s+=l?u:-u,_(t,r,c)){var d=t.edge(r,c).cutvalue;s+=l?-d:d}}}),s}function d(e,t){arguments.length<2&&(t=e.nodes()[0]),f(e,{},1,t)}function f(t,n,r,i,a){var o=r,s=t.node(i);return n[i]=!0,e.forEach(t.neighbors(i),function(a){e.has(n,a)||(r=f(t,n,r,a,i))}),s.low=o,s.lim=r++,a?s.parent=a:delete s.parent,r}function p(t){return e.find(t.edges(),function(e){return t.edge(e).cutvalue<0})}function m(t,r,i){var a=i.v,o=i.w;r.hasEdge(a,o)||(a=i.w,o=i.v);var s=t.node(a),c=t.node(o),l=s,u=!1;s.lim>c.lim&&(l=c,u=!0);var d=e.filter(r.edges(),function(e){return u===v(t,t.node(e.v),l)&&u!==v(t,t.node(e.w),l)});return e.minBy(d,function(e){return n(r,e)})}function h(e,t,n,r){var i=n.v,a=n.w;e.removeEdge(i,a),e.setEdge(r.v,r.w,{}),d(e),c(e,t),g(e,t)}function g(t,n){var r=i(t,e.find(t.nodes(),function(e){return!n.node(e).parent}));r=r.slice(1),e.forEach(r,function(e){var r=t.node(e).parent,i=n.edge(e,r),a=!1;i||(i=n.edge(r,e),a=!0),n.node(e).rank=n.node(r).rank+(a?i.minlen:-i.minlen)})}function _(e,t,n){return e.hasEdge(t,n)}function v(e,t,n){return n.low<=t.lim&&t.lim<=n.lim}return Gq}var Jq,Yq;function Xq(){if(Yq)return Jq;Yq=1;var e=Vq().longestPath,t=Wq(),n=qq();Jq=r;function r(e){switch(e.graph().ranker){case`network-simplex`:o(e);break;case`tight-tree`:a(e);break;case`longest-path`:i(e);break;default:o(e)}}var i=e;function a(n){e(n),t(n)}function o(e){n(e)}return Jq}var Zq,Qq;function $q(){if(Qq)return Zq;Qq=1;var e=Cq();Zq=t;function t(t){var i=r(t);e.forEach(t.graph().dummyChains,function(e){for(var r=t.node(e),a=r.edgeObj,o=n(t,i,a.v,a.w),s=o.path,c=o.lca,l=0,u=s[l],d=!0;e!==a.w;){if(r=t.node(e),d){for(;(u=s[l])!==c&&t.node(u).maxRank<r.rank;)l++;u===c&&(d=!1)}if(!d){for(;l<s.length-1&&t.node(u=s[l+1]).minRank<=r.rank;)l++;u=s[l]}t.setParent(e,u),e=t.successors(e)[0]}})}function n(e,t,n,r){var i=[],a=[],o=Math.min(t[n].low,t[r].low),s=Math.max(t[n].lim,t[r].lim),c=n,l;do c=e.parent(c),i.push(c);while(c&&(t[c].low>o||s>t[c].lim));for(l=c,c=r;(c=e.parent(c))!==l;)a.push(c);return{path:i.concat(a.reverse()),lca:l}}function r(t){var n={},r=0;function i(a){var o=r;e.forEach(t.children(a),i),n[a]={low:o,lim:r++}}return e.forEach(t.children(),i),n}return Zq}var eJ,tJ;function nJ(){if(tJ)return eJ;tJ=1;var e=Cq(),t=Fq();eJ={run:n,cleanup:o};function n(n){var o=t.addDummyNode(n,`root`,{},`_root`),s=i(n),c=e.max(e.values(s))-1,l=2*c+1;n.graph().nestingRoot=o,e.forEach(n.edges(),function(e){n.edge(e).minlen*=l});var u=a(n)+1;e.forEach(n.children(),function(e){r(n,o,l,u,c,s,e)}),n.graph().nodeRankFactor=l}function r(n,i,a,o,s,c,l){var u=n.children(l);if(!u.length){l!==i&&n.setEdge(i,l,{weight:0,minlen:a});return}var d=t.addBorderNode(n,`_bt`),f=t.addBorderNode(n,`_bb`),p=n.node(l);n.setParent(d,l),p.borderTop=d,n.setParent(f,l),p.borderBottom=f,e.forEach(u,function(e){r(n,i,a,o,s,c,e);var t=n.node(e),u=t.borderTop?t.borderTop:e,p=t.borderBottom?t.borderBottom:e,m=t.borderTop?o:2*o,h=u===p?s-c[l]+1:1;n.setEdge(d,u,{weight:m,minlen:h,nestingEdge:!0}),n.setEdge(p,f,{weight:m,minlen:h,nestingEdge:!0})}),n.parent(l)||n.setEdge(i,d,{weight:0,minlen:s+c[l]})}function i(t){var n={};function r(i,a){var o=t.children(i);o&&o.length&&e.forEach(o,function(e){r(e,a+1)}),n[i]=a}return e.forEach(t.children(),function(e){r(e,1)}),n}function a(t){return e.reduce(t.edges(),function(e,n){return e+t.edge(n).weight},0)}function o(t){var n=t.graph();t.removeNode(n.nestingRoot),delete n.nestingRoot,e.forEach(t.edges(),function(e){t.edge(e).nestingEdge&&t.removeEdge(e)})}return eJ}var rJ,iJ;function aJ(){if(iJ)return rJ;iJ=1;var e=Cq(),t=Fq();rJ=n;function n(t){function n(i){var a=t.children(i),o=t.node(i);if(a.length&&e.forEach(a,n),e.has(o,`minRank`)){o.borderLeft=[],o.borderRight=[];for(var s=o.minRank,c=o.maxRank+1;s<c;++s)r(t,`borderLeft`,`_bl`,i,o,s),r(t,`borderRight`,`_br`,i,o,s)}}e.forEach(t.children(),n)}function r(e,n,r,i,a,o){var s={width:0,height:0,rank:o,borderType:n},c=a[n][o-1],l=t.addDummyNode(e,`border`,s,r);a[n][o]=l,e.setParent(l,i),c&&e.setEdge(c,l,{weight:1})}return rJ}var oJ,sJ;function cJ(){if(sJ)return oJ;sJ=1;var e=Cq();oJ={adjust:t,undo:n};function t(e){var t=e.graph().rankdir.toLowerCase();(t===`lr`||t===`rl`)&&r(e)}function n(e){var t=e.graph().rankdir.toLowerCase();(t===`bt`||t===`rl`)&&a(e),(t===`lr`||t===`rl`)&&(s(e),r(e))}function r(t){e.forEach(t.nodes(),function(e){i(t.node(e))}),e.forEach(t.edges(),function(e){i(t.edge(e))})}function i(e){var t=e.width;e.width=e.height,e.height=t}function a(t){e.forEach(t.nodes(),function(e){o(t.node(e))}),e.forEach(t.edges(),function(n){var r=t.edge(n);e.forEach(r.points,o),e.has(r,`y`)&&o(r)})}function o(e){e.y=-e.y}function s(t){e.forEach(t.nodes(),function(e){c(t.node(e))}),e.forEach(t.edges(),function(n){var r=t.edge(n);e.forEach(r.points,c),e.has(r,`x`)&&c(r)})}function c(e){var t=e.x;e.x=e.y,e.y=t}return oJ}var lJ,uJ;function dJ(){if(uJ)return lJ;uJ=1;var e=Cq();lJ=t;function t(t){var n={},r=e.filter(t.nodes(),function(e){return!t.children(e).length}),i=e.max(e.map(r,function(e){return t.node(e).rank})),a=e.map(e.range(i+1),function(){return[]});function o(r){e.has(n,r)||(n[r]=!0,a[t.node(r).rank].push(r),e.forEach(t.successors(r),o))}var s=e.sortBy(r,function(e){return t.node(e).rank});return e.forEach(s,o),a}return lJ}var fJ,pJ;function mJ(){if(pJ)return fJ;pJ=1;var e=Cq();fJ=t;function t(e,t){for(var r=0,i=1;i<t.length;++i)r+=n(e,t[i-1],t[i]);return r}function n(t,n,r){for(var i=e.zipObject(r,e.map(r,function(e,t){return t})),a=e.flatten(e.map(n,function(n){return e.sortBy(e.map(t.outEdges(n),function(e){return{pos:i[e.w],weight:t.edge(e).weight}}),`pos`)}),!0),o=1;o<r.length;)o<<=1;var s=2*o-1;--o;var c=e.map(Array(s),function(){return 0}),l=0;return e.forEach(a.forEach(function(e){var t=e.pos+o;c[t]+=e.weight;for(var n=0;t>0;)t%2&&(n+=c[t+1]),t=t-1>>1,c[t]+=e.weight;l+=e.weight*n})),l}return fJ}var hJ,gJ;function _J(){if(gJ)return hJ;gJ=1;var e=Cq();hJ=t;function t(t,n){return e.map(n,function(n){var r=t.inEdges(n);if(r.length){var i=e.reduce(r,function(e,n){var r=t.edge(n),i=t.node(n.v);return{sum:e.sum+r.weight*i.order,weight:e.weight+r.weight}},{sum:0,weight:0});return{v:n,barycenter:i.sum/i.weight,weight:i.weight}}else return{v:n}})}return hJ}var vJ,yJ;function bJ(){if(yJ)return vJ;yJ=1;var e=Cq();vJ=t;function t(t,r){var i={};return e.forEach(t,function(t,n){var r=i[t.v]={indegree:0,in:[],out:[],vs:[t.v],i:n};e.isUndefined(t.barycenter)||(r.barycenter=t.barycenter,r.weight=t.weight)}),e.forEach(r.edges(),function(t){var n=i[t.v],r=i[t.w];!e.isUndefined(n)&&!e.isUndefined(r)&&(r.indegree++,n.out.push(i[t.w]))}),n(e.filter(i,function(e){return!e.indegree}))}function n(t){var n=[];function i(t){return function(n){n.merged||(e.isUndefined(n.barycenter)||e.isUndefined(t.barycenter)||n.barycenter>=t.barycenter)&&r(t,n)}}function a(e){return function(n){n.in.push(e),--n.indegree===0&&t.push(n)}}for(;t.length;){var o=t.pop();n.push(o),e.forEach(o.in.reverse(),i(o)),e.forEach(o.out,a(o))}return e.map(e.filter(n,function(e){return!e.merged}),function(t){return e.pick(t,[`vs`,`i`,`barycenter`,`weight`])})}function r(e,t){var n=0,r=0;e.weight&&(n+=e.barycenter*e.weight,r+=e.weight),t.weight&&(n+=t.barycenter*t.weight,r+=t.weight),e.vs=t.vs.concat(e.vs),e.barycenter=n/r,e.weight=r,e.i=Math.min(t.i,e.i),t.merged=!0}return vJ}var xJ,SJ;function CJ(){if(SJ)return xJ;SJ=1;var e=Cq(),t=Fq();xJ=n;function n(n,a){var o=t.partition(n,function(t){return e.has(t,`barycenter`)}),s=o.lhs,c=e.sortBy(o.rhs,function(e){return-e.i}),l=[],u=0,d=0,f=0;s.sort(i(!!a)),f=r(l,c,f),e.forEach(s,function(e){f+=e.vs.length,l.push(e.vs),u+=e.barycenter*e.weight,d+=e.weight,f=r(l,c,f)});var p={vs:e.flatten(l,!0)};return d&&(p.barycenter=u/d,p.weight=d),p}function r(t,n,r){for(var i;n.length&&(i=e.last(n)).i<=r;)n.pop(),t.push(i.vs),r++;return r}function i(e){return function(t,n){return t.barycenter<n.barycenter?-1:t.barycenter>n.barycenter?1:e?n.i-t.i:t.i-n.i}}return xJ}var wJ,TJ;function EJ(){if(TJ)return wJ;TJ=1;var e=Cq(),t=_J(),n=bJ(),r=CJ();wJ=i;function i(s,c,l,u){var d=s.children(c),f=s.node(c),p=f?f.borderLeft:void 0,m=f?f.borderRight:void 0,h={};p&&(d=e.filter(d,function(e){return e!==p&&e!==m}));var g=t(s,d);e.forEach(g,function(t){if(s.children(t.v).length){var n=i(s,t.v,l,u);h[t.v]=n,e.has(n,`barycenter`)&&o(t,n)}});var _=n(g,l);a(_,h);var v=r(_,u);if(p&&(v.vs=e.flatten([p,v.vs,m],!0),s.predecessors(p).length)){var y=s.node(s.predecessors(p)[0]),b=s.node(s.predecessors(m)[0]);e.has(v,`barycenter`)||(v.barycenter=0,v.weight=0),v.barycenter=(v.barycenter*v.weight+y.order+b.order)/(v.weight+2),v.weight+=2}return v}function a(t,n){e.forEach(t,function(t){t.vs=e.flatten(t.vs.map(function(e){return n[e]?n[e].vs:e}),!0)})}function o(t,n){e.isUndefined(t.barycenter)?(t.barycenter=n.barycenter,t.weight=n.weight):(t.barycenter=(t.barycenter*t.weight+n.barycenter*n.weight)/(t.weight+n.weight),t.weight+=n.weight)}return wJ}var DJ,OJ;function kJ(){if(OJ)return DJ;OJ=1;var e=Cq(),t=WW().Graph;DJ=n;function n(n,i,a){var o=r(n),s=new t({compound:!0}).setGraph({root:o}).setDefaultNodeLabel(function(e){return n.node(e)});return e.forEach(n.nodes(),function(t){var r=n.node(t),c=n.parent(t);(r.rank===i||r.minRank<=i&&i<=r.maxRank)&&(s.setNode(t),s.setParent(t,c||o),e.forEach(n[a](t),function(r){var i=r.v===t?r.w:r.v,a=s.edge(i,t),o=e.isUndefined(a)?0:a.weight;s.setEdge(i,t,{weight:n.edge(r).weight+o})}),e.has(r,`minRank`)&&s.setNode(t,{borderLeft:r.borderLeft[i],borderRight:r.borderRight[i]}))}),s}function r(t){for(var n;t.hasNode(n=e.uniqueId(`_root`)););return n}return DJ}var AJ,jJ;function MJ(){if(jJ)return AJ;jJ=1;var e=Cq();AJ=t;function t(t,n,r){var i={},a;e.forEach(r,function(e){for(var r=t.parent(e),o,s;r;){if(o=t.parent(r),o?(s=i[o],i[o]=r):(s=a,a=r),s&&s!==r){n.setEdge(s,r);return}r=o}})}return AJ}var NJ,PJ;function FJ(){if(PJ)return NJ;PJ=1;var e=Cq(),t=dJ(),n=mJ(),r=EJ(),i=kJ(),a=MJ(),o=WW().Graph,s=Fq();NJ=c;function c(r){var i=s.maxRank(r),a=l(r,e.range(1,i+1),`inEdges`),o=l(r,e.range(i-1,-1,-1),`outEdges`),c=t(r);d(r,c);for(var f=1/0,p,m=0,h=0;h<4;++m,++h){u(m%2?a:o,m%4>=2),c=s.buildLayerMatrix(r);var g=n(r,c);g<f&&(h=0,p=e.cloneDeep(c),f=g)}d(r,p)}function l(t,n,r){return e.map(n,function(e){return i(t,e,r)})}function u(t,n){var i=new o;e.forEach(t,function(t){var o=t.graph().root,s=r(t,o,i,n);e.forEach(s.vs,function(e,n){t.node(e).order=n}),a(t,i,s.vs)})}function d(t,n){e.forEach(n,function(n){e.forEach(n,function(e,n){t.node(e).order=n})})}return NJ}var IJ,LJ;function RJ(){if(LJ)return IJ;LJ=1;var e=Cq(),t=WW().Graph,n=Fq();IJ={positionX:m,findType1Conflicts:r,findType2Conflicts:i,addConflict:o,hasConflict:s,verticalAlignment:c,horizontalCompaction:l,alignCoordinates:f,findSmallestWidthAlignment:d,balance:p};function r(t,n){var r={};function i(n,i){var s=0,c=0,l=n.length,u=e.last(i);return e.forEach(i,function(n,d){var f=a(t,n),p=f?t.node(f).order:l;(f||n===u)&&(e.forEach(i.slice(c,d+1),function(n){e.forEach(t.predecessors(n),function(e){var i=t.node(e),a=i.order;(a<s||p<a)&&!(i.dummy&&t.node(n).dummy)&&o(r,e,n)})}),c=d+1,s=p)}),i}return e.reduce(n,i),r}function i(t,n){var r={};function i(n,i,a,s,c){var l;e.forEach(e.range(i,a),function(i){l=n[i],t.node(l).dummy&&e.forEach(t.predecessors(l),function(e){var n=t.node(e);n.dummy&&(n.order<s||n.order>c)&&o(r,e,l)})})}function a(n,r){var a=-1,o,s=0;return e.forEach(r,function(e,c){if(t.node(e).dummy===`border`){var l=t.predecessors(e);l.length&&(o=t.node(l[0]).order,i(r,s,c,a,o),s=c,a=o)}i(r,s,r.length,o,n.length)}),r}return e.reduce(n,a),r}function a(t,n){if(t.node(n).dummy)return e.find(t.predecessors(n),function(e){return t.node(e).dummy})}function o(e,t,n){if(t>n){var r=t;t=n,n=r}var i=e[t];i||(e[t]=i={}),i[n]=!0}function s(t,n,r){if(n>r){var i=n;n=r,r=i}return e.has(t[n],r)}function c(t,n,r,i){var a={},o={},c={};return e.forEach(n,function(t){e.forEach(t,function(e,t){a[e]=e,o[e]=e,c[e]=t})}),e.forEach(n,function(t){var n=-1;e.forEach(t,function(t){var l=i(t);if(l.length){l=e.sortBy(l,function(e){return c[e]});for(var u=(l.length-1)/2,d=Math.floor(u),f=Math.ceil(u);d<=f;++d){var p=l[d];o[t]===t&&n<c[p]&&!s(r,t,p)&&(o[p]=t,o[t]=a[t]=a[p],n=c[p])}}})}),{root:a,align:o}}function l(t,n,r,i,a){var o={},s=u(t,n,r,a),c=a?`borderLeft`:`borderRight`;function l(e,t){for(var n=s.nodes(),r=n.pop(),i={};r;)i[r]?e(r):(i[r]=!0,n.push(r),n=n.concat(t(r))),r=n.pop()}function d(e){o[e]=s.inEdges(e).reduce(function(e,t){return Math.max(e,o[t.v]+s.edge(t))},0)}function f(e){var n=s.outEdges(e).reduce(function(e,t){return Math.min(e,o[t.w]-s.edge(t))},1/0),r=t.node(e);n!==1/0&&r.borderType!==c&&(o[e]=Math.max(o[e],n))}return l(d,s.predecessors.bind(s)),l(f,s.successors.bind(s)),e.forEach(i,function(e){o[e]=o[r[e]]}),o}function u(n,r,i,a){var o=new t,s=n.graph(),c=h(s.nodesep,s.edgesep,a);return e.forEach(r,function(t){var r;e.forEach(t,function(e){var t=i[e];if(o.setNode(t),r){var a=i[r],s=o.edge(a,t);o.setEdge(a,t,Math.max(c(n,e,r),s||0))}r=e})}),o}function d(t,n){return e.minBy(e.values(n),function(n){var r=-1/0,i=1/0;return e.forIn(n,function(e,n){var a=g(t,n)/2;r=Math.max(e+a,r),i=Math.min(e-a,i)}),r-i})}function f(t,n){var r=e.values(n),i=e.min(r),a=e.max(r);e.forEach([`u`,`d`],function(r){e.forEach([`l`,`r`],function(o){var s=r+o,c=t[s],l;if(c!==n){var u=e.values(c);l=o===`l`?i-e.min(u):a-e.max(u),l&&(t[s]=e.mapValues(c,function(e){return e+l}))}})})}function p(t,n){return e.mapValues(t.ul,function(r,i){if(n)return t[n.toLowerCase()][i];var a=e.sortBy(e.map(t,i));return(a[1]+a[2])/2})}function m(t){var a=n.buildLayerMatrix(t),o=e.merge(r(t,a),i(t,a)),s={},u;return e.forEach([`u`,`d`],function(n){u=n===`u`?a:e.values(a).reverse(),e.forEach([`l`,`r`],function(r){r===`r`&&(u=e.map(u,function(t){return e.values(t).reverse()}));var i=(n===`u`?t.predecessors:t.successors).bind(t),a=c(t,u,o,i),d=l(t,u,a.root,a.align,r===`r`);r===`r`&&(d=e.mapValues(d,function(e){return-e})),s[n+r]=d})}),f(s,d(t,s)),p(s,t.graph().align)}function h(t,n,r){return function(i,a,o){var s=i.node(a),c=i.node(o),l=0,u;if(l+=s.width/2,e.has(s,`labelpos`))switch(s.labelpos.toLowerCase()){case`l`:u=-s.width/2;break;case`r`:u=s.width/2;break}if(u&&(l+=r?u:-u),u=0,l+=(s.dummy?n:t)/2,l+=(c.dummy?n:t)/2,l+=c.width/2,e.has(c,`labelpos`))switch(c.labelpos.toLowerCase()){case`l`:u=c.width/2;break;case`r`:u=-c.width/2;break}return u&&(l+=r?u:-u),u=0,l}}function g(e,t){return e.node(t).width}return IJ}var zJ,BJ;function VJ(){if(BJ)return zJ;BJ=1;var e=Cq(),t=Fq(),n=RJ().positionX;zJ=r;function r(r){r=t.asNonCompoundGraph(r),i(r),e.forEach(n(r),function(e,t){r.node(t).x=e})}function i(n){var r=t.buildLayerMatrix(n),i=n.graph().ranksep,a=0;e.forEach(r,function(t){var r=e.max(e.map(t,function(e){return n.node(e).height}));e.forEach(t,function(e){n.node(e).y=a+r/2}),a+=r+i})}return zJ}var HJ,UJ;function WJ(){if(UJ)return HJ;UJ=1;var e=Cq(),t=Mq(),n=Rq(),r=Xq(),i=Fq().normalizeRanks,a=$q(),o=Fq().removeEmptyRanks,s=nJ(),c=aJ(),l=cJ(),u=FJ(),d=VJ(),f=Fq(),p=WW().Graph;HJ=m;function m(e,t){var n=t&&t.debugTiming?f.time:f.notime;n(`layout`,function(){var t=n(` buildLayoutGraph`,function(){return T(e)});n(` runLayout`,function(){h(t,n)}),n(` updateInputGraph`,function(){g(e,t)})})}function h(e,p){p(` makeSpaceForEdgeLabels`,function(){E(e)}),p(` removeSelfEdges`,function(){ne(e)}),p(` acyclic`,function(){t.run(e)}),p(` nestingGraph.run`,function(){s.run(e)}),p(` rank`,function(){r(f.asNonCompoundGraph(e))}),p(` injectEdgeLabelProxies`,function(){D(e)}),p(` removeEmptyRanks`,function(){o(e)}),p(` nestingGraph.cleanup`,function(){s.cleanup(e)}),p(` normalizeRanks`,function(){i(e)}),p(` assignRankMinMax`,function(){O(e)}),p(` removeEdgeLabelProxies`,function(){k(e)}),p(` normalize.run`,function(){n.run(e)}),p(` parentDummyChains`,function(){a(e)}),p(` addBorderSegments`,function(){c(e)}),p(` order`,function(){u(e)}),p(` insertSelfEdges`,function(){re(e)}),p(` adjustCoordinateSystem`,function(){l.adjust(e)}),p(` position`,function(){d(e)}),p(` positionSelfEdges`,function(){ie(e)}),p(` removeBorderNodes`,function(){te(e)}),p(` normalize.undo`,function(){n.undo(e)}),p(` fixupEdgeLabelCoords`,function(){ee(e)}),p(` undoCoordinateSystem`,function(){l.undo(e)}),p(` translateGraph`,function(){A(e)}),p(` assignNodeIntersects`,function(){j(e)}),p(` reversePoints`,function(){M(e)}),p(` acyclic.undo`,function(){t.undo(e)})}function g(t,n){e.forEach(t.nodes(),function(e){var r=t.node(e),i=n.node(e);r&&(r.x=i.x,r.y=i.y,n.children(e).length&&(r.width=i.width,r.height=i.height))}),e.forEach(t.edges(),function(r){var i=t.edge(r),a=n.edge(r);i.points=a.points,e.has(a,`x`)&&(i.x=a.x,i.y=a.y)}),t.graph().width=n.graph().width,t.graph().height=n.graph().height}var _=[`nodesep`,`edgesep`,`ranksep`,`marginx`,`marginy`],v={ranksep:50,edgesep:20,nodesep:50,rankdir:`tb`},y=[`acyclicer`,`ranker`,`rankdir`,`align`],b=[`width`,`height`],x={width:0,height:0},S=[`minlen`,`weight`,`width`,`height`,`labeloffset`],C={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:`r`},w=[`labelpos`];function T(t){var n=new p({multigraph:!0,compound:!0}),r=ae(t.graph());return n.setGraph(e.merge({},v,N(r,_),e.pick(r,y))),e.forEach(t.nodes(),function(r){var i=ae(t.node(r));n.setNode(r,e.defaults(N(i,b),x)),n.setParent(r,t.parent(r))}),e.forEach(t.edges(),function(r){var i=ae(t.edge(r));n.setEdge(r,e.merge({},C,N(i,S),e.pick(i,w)))}),n}function E(t){var n=t.graph();n.ranksep/=2,e.forEach(t.edges(),function(e){var r=t.edge(e);r.minlen*=2,r.labelpos.toLowerCase()!==`c`&&(n.rankdir===`TB`||n.rankdir===`BT`?r.width+=r.labeloffset:r.height+=r.labeloffset)})}function D(t){e.forEach(t.edges(),function(e){var n=t.edge(e);if(n.width&&n.height){var r=t.node(e.v),i={rank:(t.node(e.w).rank-r.rank)/2+r.rank,e};f.addDummyNode(t,`edge-proxy`,i,`_ep`)}})}function O(t){var n=0;e.forEach(t.nodes(),function(r){var i=t.node(r);i.borderTop&&(i.minRank=t.node(i.borderTop).rank,i.maxRank=t.node(i.borderBottom).rank,n=e.max(n,i.maxRank))}),t.graph().maxRank=n}function k(t){e.forEach(t.nodes(),function(e){var n=t.node(e);n.dummy===`edge-proxy`&&(t.edge(n.e).labelRank=n.rank,t.removeNode(e))})}function A(t){var n=1/0,r=0,i=1/0,a=0,o=t.graph(),s=o.marginx||0,c=o.marginy||0;function l(e){var t=e.x,o=e.y,s=e.width,c=e.height;n=Math.min(n,t-s/2),r=Math.max(r,t+s/2),i=Math.min(i,o-c/2),a=Math.max(a,o+c/2)}e.forEach(t.nodes(),function(e){l(t.node(e))}),e.forEach(t.edges(),function(n){var r=t.edge(n);e.has(r,`x`)&&l(r)}),n-=s,i-=c,e.forEach(t.nodes(),function(e){var r=t.node(e);r.x-=n,r.y-=i}),e.forEach(t.edges(),function(r){var a=t.edge(r);e.forEach(a.points,function(e){e.x-=n,e.y-=i}),e.has(a,`x`)&&(a.x-=n),e.has(a,`y`)&&(a.y-=i)}),o.width=r-n+s,o.height=a-i+c}function j(t){e.forEach(t.edges(),function(e){var n=t.edge(e),r=t.node(e.v),i=t.node(e.w),a,o;n.points?(a=n.points[0],o=n.points[n.points.length-1]):(n.points=[],a=i,o=r),n.points.unshift(f.intersectRect(r,a)),n.points.push(f.intersectRect(i,o))})}function ee(t){e.forEach(t.edges(),function(n){var r=t.edge(n);if(e.has(r,`x`))switch((r.labelpos===`l`||r.labelpos===`r`)&&(r.width-=r.labeloffset),r.labelpos){case`l`:r.x-=r.width/2+r.labeloffset;break;case`r`:r.x+=r.width/2+r.labeloffset;break}})}function M(t){e.forEach(t.edges(),function(e){var n=t.edge(e);n.reversed&&n.points.reverse()})}function te(t){e.forEach(t.nodes(),function(n){if(t.children(n).length){var r=t.node(n),i=t.node(r.borderTop),a=t.node(r.borderBottom),o=t.node(e.last(r.borderLeft)),s=t.node(e.last(r.borderRight));r.width=Math.abs(s.x-o.x),r.height=Math.abs(a.y-i.y),r.x=o.x+r.width/2,r.y=i.y+r.height/2}}),e.forEach(t.nodes(),function(e){t.node(e).dummy===`border`&&t.removeNode(e)})}function ne(t){e.forEach(t.edges(),function(e){if(e.v===e.w){var n=t.node(e.v);n.selfEdges||=[],n.selfEdges.push({e,label:t.edge(e)}),t.removeEdge(e)}})}function re(t){var n=f.buildLayerMatrix(t);e.forEach(n,function(n){var r=0;e.forEach(n,function(n,i){var a=t.node(n);a.order=i+r,e.forEach(a.selfEdges,function(e){f.addDummyNode(t,`selfedge`,{width:e.label.width,height:e.label.height,rank:a.rank,order:i+ ++r,e:e.e,label:e.label},`_se`)}),delete a.selfEdges})})}function ie(t){e.forEach(t.nodes(),function(e){var n=t.node(e);if(n.dummy===`selfedge`){var r=t.node(n.e.v),i=r.x+r.width/2,a=r.y,o=n.x-i,s=r.height/2;t.setEdge(n.e,n.label),t.removeNode(e),n.label.points=[{x:i+2*o/3,y:a-s},{x:i+5*o/6,y:a-s},{x:i+o,y:a},{x:i+5*o/6,y:a+s},{x:i+2*o/3,y:a+s}],n.label.x=n.x,n.label.y=n.y}})}function N(t,n){return e.mapValues(e.pick(t,n),Number)}function ae(t){var n={};return e.forEach(t,function(e,t){n[t.toLowerCase()]=e}),n}return HJ}var GJ,KJ;function qJ(){if(KJ)return GJ;KJ=1;var e=Cq(),t=Fq(),n=WW().Graph;GJ={debugOrdering:r};function r(r){var i=t.buildLayerMatrix(r),a=new n({compound:!0,multigraph:!0}).setGraph({});return e.forEach(r.nodes(),function(e){a.setNode(e,{label:e}),a.setParent(e,`layer`+r.node(e).rank)}),e.forEach(r.edges(),function(e){a.setEdge(e.v,e.w,{},e.name)}),e.forEach(i,function(t,n){var r=`layer`+n;a.setNode(r,{rank:`same`}),e.reduce(t,function(e,t){return a.setEdge(e,t,{style:`invis`}),t})}),a}return GJ}var JJ,YJ;function XJ(){return YJ?JJ:(YJ=1,JJ=`0.8.5`,JJ)}var ZJ,QJ;function $J(){return QJ?ZJ:(QJ=1,ZJ={graphlib:WW(),layout:WJ(),debug:qJ(),util:{time:Fq().time,notime:Fq().notime},version:XJ()},ZJ)}var eY=$J(),tY=GM(eY),nY=function(e){return pj(e,`Boolean`)};function rY(e,t){if(e){var n;if(fO(e))for(var r=0,i=e.length;r<i&&(n=t(e[r],r),n!==!1);r++);else if(qk(e)){for(var a in e)if(e.hasOwnProperty(a)&&(n=t(e[a],a),n===!1))break}}}var iY=Object.prototype.hasOwnProperty,aY=(function(e,t){if(e===null||!mj(e))return{};var n={};return rY(t,function(t){iY.call(e,t)&&(n[t]=e[t])}),n}),oY=class extends $E{constructor(){super(...arguments),this.id=`dagre`,this.isCompoundGraph=null,this.config={graphAttributes:[`rankdir`,`align`,`nodesep`,`edgesep`,`ranksep`,`marginx`,`marginy`,`acyclicer`,`ranker`],nodeAttributes:[`width`,`height`],edgeAttributes:[`minlen`,`weight`,`width`,`height`,`labelpos`,`labeloffset`]}}getDefaultOptions(){return{directed:!0,multigraph:!0,rankdir:`TB`,align:void 0,nodesep:50,edgesep:10,ranksep:50,marginx:0,marginy:0,acyclicer:void 0,ranker:`network-simplex`,nodeSize:[0,0],edgeMinLen:1,edgeWeight:1,edgeLabelSize:[0,0],edgeLabelPos:`r`,edgeLabelOffset:10}}layout(){return IT(this,void 0,void 0,function*(){let e=new eY.graphlib.Graph({directed:!!this.options.directed,multigraph:!!this.options.multigraph,compound:this.isCompound()});e.setGraph(aY(this.options,this.config.graphAttributes)),e.setDefaultEdgeLabel(()=>({}));let t=mE(this.options.nodeSize,0);this.model.forEachNode(n=>{let r=n._original,[i,a]=sE(t(r)),o={width:i,height:a};if(e.setNode(String(n.id),o),this.isCompound()){if(lE(n.parentId))return;e.setParent(String(n.id),String(n.parentId))}});let{edgeLabelSize:n,edgeLabelOffset:r,edgeLabelPos:i,edgeMinLen:a,edgeWeight:o}=this.options,s=mE(n,0,`edge`),c=pE(r,10,`edge`),l=typeof i==`string`?()=>i:fE(i,[`edge`]),u=pE(a,1,`edge`),d=pE(o,1,`edge`);this.model.forEachEdge(t=>{let n=t._original,[r,i]=sE(s(n)),a={width:r,height:i,labelpos:l(n),labeloffset:c(n),minlen:u(n),weight:d(n)};e.setEdge(String(t.source),String(t.target),a,String(t.id))}),tY.layout(e),this.model.forEachNode(t=>{let n=e.node(String(t.id));n&&(t.x=n.x,t.y=n.y,t.size=[n.width,n.height])}),this.model.forEachEdge(t=>{let n=e.edge(String(t.source),String(t.target),String(t.id));if(!n)return;let{width:r,height:i,weight:a,minlen:o,labelpos:s,labeloffset:c,points:l}=n;t.labelSize=[r,i],t.weight=a,t.minLen=o,t.labelPos=s,t.labelOffset=c,t.points=l.map(gE)})})}isCompound(){return this.isCompoundGraph===null?nY(this.options.compound)?this.isCompoundGraph=this.options.compound:(this.isCompoundGraph=this.model.nodes().some(e=>!lE(e.parentId)),this.isCompoundGraph):this.isCompoundGraph}};function sY(e=2){let t=!1;function n(t,n){t.forEachEdge(r=>{let{source:i,target:a}=r,o=t.node(i),s=t.node(a);if(!o||!s)return;let c=s.x-o.x,l=s.y-o.y,u=e===3?(s.z??0)-(o.z??0):0;!c&&!l&&(c=.01,l=.01,e===3&&!u&&(u=.01));let d=Math.sqrt(c*c+l*l+u*u);if(d<Number(o.size)+Number(s.size))return;let f=c/d,p=l/d,m=u/d,{linkDistance:h=200,edgeStrength:g=200}=r,_=(h-d)*g,v=o.mass||1,y=s.mass||1,b=1/v,x=1/y,S=f*_,C=p*_,w=m*_;n[i].x-=S*b,n[i].y-=C*b,n[i].z-=w*b,n[a].x+=S*x,n[a].y+=C*x,n[a].z+=w*x})}return n.dimensions=function(t){return arguments.length?(e=t,n):e},n.preventOverlap=function(e){return arguments.length?(t=e,n):t},n}function cY(e){let t,n=800,r=600;function i(e,i){if(!t)return;let{leaf:a,single:o,others:s,center:c}=t,l=e.nodes(),u=e.edges(),d=l.map(e=>Object.assign(Object.assign({},e),{data:e.data||{}})),f=u.map(e=>Object.assign(Object.assign({},e),{data:e.data||{}}));e.forEachNode(t=>{let{id:l,mass:u,x:p,y:m,z:h=0,data:g}=t,_=e.degree(l,`in`),v=e.degree(l,`out`),y=e.degree(l,`both`),b=Object.assign(Object.assign({},t),{data:g||{}}),{x,y:S,z:C,centerStrength:w}=c?.(b,d,f,n,r)||{x:0,y:0,z:0,centerStrength:0};if(!oE(x)||!oE(S))return;let T=(p-x)/u,E=(m-S)/u,D=(h-(C||0))/u;if(w&&(i[l].x-=w*T,i[l].y-=w*E,i[l].z-=w*D),y===0){let e=o(b);if(!e)return;i[l].x-=e*T,i[l].y-=e*E,i[l].z-=e*D;return}if(_===0||v===0){let e=a(b,d,f);if(!e)return;i[l].x-=e*T,i[l].y-=e*E,i[l].z-=e*D;return}let O=s(b);O&&(i[l].x-=O*T,i[l].y-=O*E,i[l].z-=O*D)})}return i.options=function(e){return arguments.length?(t=e,i):t},i.width=function(e){return arguments.length?(n=e,i):n},i.height=function(e){return arguments.length?(r=e,i):r},i}var lY=1e-6,uY=500;function dY(e=2){let t=1;function n(n,r){let i=n.nodes();if(i.length<2||t<=0)return;if(e===2){let e=i.map((e,t)=>({id:e.id,index:t,x:e.x,y:e.y,r:Number(e.size)/2,mass:e.mass||1,fx:e.fx,fy:e.fy})),t=QA(e,e=>e.x,e=>e.y).visitAfter(fY);for(let n of e)t.visit((e,t,i,o,s)=>{let c=e.r||0,l=n.r+c;if(t>n.x+l||o<n.x-l||i>n.y+l||s<n.y-l)return!0;if(!e.data)return!1;let u=e;do{let e=u.data;e&&e.index>n.index&&a(n,e,r),u=u.next}while(u);return!1});return}let s=i.map((e,t)=>({id:e.id,index:t,x:e.x,y:e.y,z:e.z??0,r:Number(e.size)/2,mass:e.mass||1,fx:e.fx,fy:e.fy,fz:e.fz}));for(let e=0;e<s.length;e++)for(let t=e+1;t<s.length;t++)o(s[e],s[t],r)}function r(e){return oE(e.fx)&&oE(e.fy)?0:1/(e.mass||1)}function i(e){return oE(e.fx)&&oE(e.fy)&&oE(e.fz)?0:1/(e.mass||1)}function a(e,n,i){let a=e.x-n.x,o=e.y-n.y,s=Math.hypot(a,o),c=e.r+n.r;if(s>=c)return;s<lY&&(a=e.index<n.index?lY:-lY,o=0,s=Math.abs(a));let l=c-s,u=a/s,d=o/s,f=l*t*uY,p=r(e),m=r(n);p&&(i[e.id].x+=u*f*p,i[e.id].y+=d*f*p),m&&(i[n.id].x-=u*f*m,i[n.id].y-=d*f*m)}function o(e,n,r){let a=e.x-n.x,o=e.y-n.y,s=e.z-n.z,c=Math.sqrt(a*a+o*o+s*s),l=e.r+n.r;if(c>=l)return;c<lY&&(a=e.index<n.index?lY:-lY,o=0,s=0,c=Math.abs(a));let u=l-c,d=a/c,f=o/c,p=s/c,m=u*t*uY,h=i(e),g=i(n);h&&(r[e.id].x+=d*m*h,r[e.id].y+=f*m*h,r[e.id].z+=p*m*h),g&&(r[n.id].x-=d*m*g,r[n.id].y-=f*m*g,r[n.id].z-=p*m*g)}return n.dimensions=function(t){return arguments.length?(e=t,n):e},n.strength=function(e){return arguments.length?(t=e,n):t},n}function fY(e){let t=0;if(e.length)for(let n=0;n<e.length;n++){let r=e[n];r&&r.r>t&&(t=r.r)}else if(e.data){t=e.data.r||0;let n=e.next;for(;n;)t=Math.max(t,n.data?.r||0),n=n.next}e.r=t}function pY(e=[0,0,0],t=10){let n;function r(r,i){r.nodes()&&r.forEachNode(a=>{let{id:o,mass:s,x:c,y:l,z:u=0}=a,d=0,f=0,p=0,m=t,h=r.degree(o),g=n?.(a,h);if(g){let[e,t,n]=g;d=c-e,f=l-t,m=n}else d=c-e[0],f=l-e[1],p=u-(e[2]||0);m&&(i[o].x-=m*d/s,i[o].y-=m*f/s,i[o].z-=m*p/s)})}return r.center=function(t){return arguments.length?(e=t,r):e},r.gravity=function(e){return arguments.length?(t=e,r):t},r.getCenter=function(e){return arguments.length?(n=e,r):n},r}function mY(e=1,t=.005,n=2){function r(r,i){let a=t*t;_Y(r,e,a,i,n)}return r.factor=function(t){return arguments.length?(e=t,r):e},r.coulombDisScale=function(e){return arguments.length?(t=e,r):t},r.dimensions=function(e){return arguments.length?(n=e,r):n},r}var hY=.81,gY=.1;function _Y(e,t,n,r,i=2){let a=t/n,o=e.nodes().map((e,t)=>{let{nodeStrength:n,x:r,y:i,z:o,size:s,mass:c}=e;return{x:r,y:i,z:o,size:s,index:t,id:e.id,vx:0,vy:0,vz:0,weight:a*n,mass:c||1}}),s=(i===2?QA(o,e=>e.x,e=>e.y):vM(o,e=>e.x,e=>e.y,e=>e.z)).visitAfter(vY),c=new Map;return o.forEach(e=>{c.set(e.id,e),bY(e,s,i)}),o.map(e=>{let t=e.id;r[t]={x:e.vx/e.mass,y:e.vy/e.mass,z:e.vz/e.mass}}),r}function vY(e){let t=0,n=0,r=0,i=0,a=0,o=e.length;if(o){for(let s=0;s<o;s++){let o=e[s];o&&o.weight&&(t+=o.weight,n+=o.x*o.weight,r+=o.y*o.weight,i+=o.z*o.weight,a+=o.size*o.weight)}e.x=n/t,e.y=r/t,e.z=i/t,e.size=a/t,e.weight=t}else{let t=e;e.x=t.data.x,e.y=t.data.y,e.z=t.data.z,e.size=t.data.size,e.weight=t.data.weight}}var yY=(e,t,n,r,i,a,o,s,c)=>{if(e.data?.id===s.id)return;let l=c===2?r:c===3?a:n,u=s.x-e.x||gY,d=s.y-e.y||gY,f=s.z-e.z||gY,p=[u,d,f],m=l-t,h=0;for(let e=0;e<c;e++)h+=p[e]*p[e];let g=Math.sqrt(h)*h;if(m*m*hY<h){let t=e.weight/g;return s.vx+=u*t,s.vy+=d*t,s.vz+=f*t,!0}if(e.length)return!1;if(e.data!==s){let t=e.data.weight/g;s.vx+=u*t,s.vy+=d*t,s.vz+=f*t}};function bY(e,t,n){t.visit((t,r,i,a,o,s,c)=>yY(t,r,i,a,o,s,c,e,n))}var xY=`*`,SY=function(){function e(){this._events={}}return e.prototype.on=function(e,t,n){return this._events[e]||(this._events[e]=[]),this._events[e].push({callback:t,once:!!n}),this},e.prototype.once=function(e,t){return this.on(e,t,!0)},e.prototype.emit=function(e){for(var t=this,n=[],r=1;r<arguments.length;r++)n[r-1]=arguments[r];var i=this._events[e]||[],a=this._events[xY]||[],o=function(r){for(var i=r.length,a=0;a<i;a++)if(r[a]){var o=r[a],s=o.callback;o.once&&(r.splice(a,1),r.length===0&&delete t._events[e],i--,a--),s.apply(t,n)}};o(i),o(a)},e.prototype.off=function(e,t){if(!e)this._events={};else if(!t)delete this._events[e];else{for(var n=this._events[e]||[],r=n.length,i=0;i<r;i++)n[i].callback===t&&(n.splice(i,1),r--,i--);n.length===0&&delete this._events[e]}return this},e.prototype.getEvents=function(){return this._events},e}(),CY=class extends SY{constructor(){super(...arguments),this.iteration=0,this.judgingDistance=1/0,this.running=!1,this.tickCallback=null,this.endCallback=null,this.timer=0}initialize(e){this.options=e,this.iteration=0,this.judgingDistance=1/0}on(e,t){return e===`tick`&&(this.tickCallback=t),e===`end`&&(this.endCallback=t),this}tick(e=1){var t;for(let n=0;n<e;n++)this.judgingDistance=this.runOneStep(),this.iteration++,(t=this.tickCallback)==null||t.call(this);return this}restart(){if(this.running)return this;let{maxIteration:e=500,minMovement:t=0,animate:n=!0}=this.options;if(!n||typeof window>`u`){for(;this.iteration<e&&(this.judgingDistance>t||this.iteration<1);)this.tick(1);return Promise.resolve().then(()=>{var e;(e=this.endCallback)==null||e.call(this)}),this}return this.running=!0,this.timer=window.setInterval(()=>{var n;this.tick(1),(this.iteration>=e||this.judgingDistance<t)&&(this.stop(),(n=this.endCallback)==null||n.call(this))},0),this}stop(){return this.running=!1,this.timer&&=(clearInterval(this.timer),0),this}},wY=class extends CY{constructor(){super(...arguments),this.forces=new Map,this.velMap={}}data(e){return this.model=e,e.forEachNode(e=>{this.velMap[e.id]={x:0,y:0,z:0}}),this}force(e,t){return arguments.length===1?this.forces.get(e)||null:(t===null?this.forces.delete(e):t&&this.forces.set(e,t),t||null)}runOneStep(){let e={},t=this.model.nodes();if(!t.length)return 0;t.forEach(t=>{e[t.id]={x:0,y:0,z:0}}),this.forces.forEach(t=>{t(this.model,e)}),this.updateVelocity(e);let n=this.updatePosition();return this.monitor(e,t),n}setFixedPosition(e,t){let n=this.model.node(e);if(!n)return;let r=[`fx`,`fy`,`fz`];if(t===null){r.forEach(e=>delete n[e]);return}t.forEach((e,t)=>{t<r.length&&(typeof e==`number`||e===null)&&(n[r[t]]=e)});let i=this.velMap[e];i&&(i.x=0,i.y=0,i.z=0)}updateVelocity(e){let{damping:t=.9,maxSpeed:n=100,interval:r=.02,dimensions:i=2}=this.options;this.model.nodes().forEach(a=>{let o=a.id,s=(this.velMap[o].x+e[o].x*r)*t,c=(this.velMap[o].y+e[o].y*r)*t,l=i===3?(this.velMap[o].z+e[o].z*r)*t:0,u=Math.sqrt(s*s+c*c+l*l);if(u>n){let e=n/u;s*=e,c*=e,l*=e}this.velMap[o]={x:s,y:c,z:l}})}updatePosition(){let{distanceThresholdMode:e=`mean`,interval:t=.02,dimensions:n=2}=this.options,r=this.model.nodes(),i=0,a=e===`max`?-1/0:e===`min`?1/0:0;return r.forEach(r=>{let o=r.id;if(oE(r.fx)&&oE(r.fy)){r.x=r.fx,r.y=r.fy,n===3&&oE(r.fz)&&(r.z=r.fz);return}let s=this.velMap[o].x*t,c=this.velMap[o].y*t,l=n===3?this.velMap[o].z*t:0;r.x+=s,r.y+=c,n===3&&(r.z=(r.z||0)+l);let u=Math.sqrt(s*s+c*c+l*l);e===`max`?a=Math.max(a,u):e===`min`?a=Math.min(a,u):i+=u}),e===`mean`?i/r.length:a}monitor(e,t){let{monitor:n,dimensions:r=2}=this.options;if(!n)return;let i=0;t.forEach(t=>{let n=e[t.id],a=n.x*n.x+n.y*n.y+(r===3?n.z*n.z:0);i+=(t.mass||1)*a*.5}),n({energy:i,nodes:t,edges:this.model.edges(),iterations:this.iteration})}},TY=function(e){return e!==null&&typeof e!=`function`&&isFinite(e.length)},EY={}.toString,DY=function(e){return EY.call(e).replace(/^\[object /,``).replace(/]$/,``)},OY=Object.prototype,kY=function(e){var t=e&&e.constructor;return e===(typeof t==`function`&&t.prototype||OY)},AY=Object.prototype.hasOwnProperty;function jY(e){if(lE(e))return!0;if(TY(e))return!e.length;var t=DY(e);if(t===`Map`||t===`Set`)return!e.size;if(kY(e))return!Object.keys(e).length;for(var n in e)if(AY.call(e,n))return!1;return!0}var MY={nodeSize:30,dimensions:2,maxIteration:500,gravity:10,factor:1,edgeStrength:50,nodeStrength:1e3,coulombDisScale:.005,damping:.9,maxSpeed:200,minMovement:.4,interval:.02,linkDistance:200,clusterNodeStrength:20,collideStrength:1,preventOverlap:!0,distanceThresholdMode:`mean`},NY=class extends eD{constructor(){super(...arguments),this.id=`force`,this.simulation=null}getDefaultOptions(){return MY}layout(){return IT(this,void 0,void 0,function*(){let e=this.parseOptions(this.options),{width:t,height:n,dimensions:r}=e;if(this.initializePhysicsData(this.model,e),SE(this.model,t,n,r),!this.model.nodes()?.length)return;let i=this.setSimulation(e);return i.data(this.model),i.initialize(e),i.restart(),new Promise(e=>{i.on(`end`,()=>e())})})}initializePhysicsData(e,t){let{nodeSize:n,getMass:r,nodeStrength:i,edgeStrength:a,linkDistance:o}=t;e.forEachNode(e=>{let t=e._original;e.size=n(t),e.mass=r(t),e.nodeStrength=i(t)}),e.forEachEdge(t=>{let n=t._original;t.edgeStrength=a(n),t.linkDistance=o(n,e.originalNode(t.source),e.originalNode(t.target))})}setSimulation(e){let t=this.simulation||new wY;return this.simulation||=t.on(`tick`,()=>{var t;(t=e.onTick)==null||t.call(e,this)}),this.setupRepulsiveForce(t,e),this.setupAttractiveForce(t,e),this.setupCollideForce(t,e),this.setupGravityForce(t,e),this.setupCentripetalForce(t,e),t}setupRepulsiveForce(e,t){let{factor:n,coulombDisScale:r,dimensions:i}=t,a=e.force(`repulsive`);a||(a=mY(n,r,i),e.force(`repulsive`,a)),a.factor&&a.factor(n),a.coulombDisScale&&a.coulombDisScale(r),a.dimensions&&a.dimensions(i)}setupAttractiveForce(e,t){let{dimensions:n,preventOverlap:r}=t;if((this.model.edges()||[]).length>0){let t=e.force(`attractive`);t||(t=sY(n),e.force(`attractive`,t)),t.dimensions&&t.dimensions(n),t.preventOverlap&&t.preventOverlap(r)}else e.force(`attractive`,null)}setupGravityForce(e,t){let{center:n,gravity:r,getCenter:i}=t;if(r){let t=e.force(`gravity`);t||(t=pY(n,r),e.force(`gravity`,t)),t.center&&t.center(n),t.gravity&&t.gravity(r),t.getCenter&&t.getCenter(i)}else e.force(`gravity`,null)}setupCollideForce(e,t){let{preventOverlap:n,collideStrength:r=1,dimensions:i}=t;if(n&&r){let t=e.force(`collide`);t||(t=dY(i),e.force(`collide`,t)),t.strength&&t.strength(r),t.dimensions&&t.dimensions(i)}else e.force(`collide`,null)}setupCentripetalForce(e,t){let{centripetalOptions:n,width:r,height:i}=t;if(n){let t=e.force(`centripetal`);t||(t=cY(),e.force(`centripetal`,t)),t.options&&t.options(n),t.width&&t.width(r),t.height&&t.height(i)}else e.force(`centripetal`,null)}parseOptions(e){let t=Object.assign(Object.assign({},e),Hk(e));t.nodeClusterBy&&=fE(t.nodeClusterBy,[`node`]),e.getMass?t.getMass=pE(e.getMass,1):t.getMass=e=>{if(!e)return 1;let t=this.model.degree(e.id,`both`);return!t||t<5?1:t*5*1},e.getCenter&&(t.getCenter=fE(e.getCenter,[`node`,`degree`]));let n=hE(e.nodeSize,e.nodeSpacing);return t.nodeSize=e=>{if(!e)return 0;let[t,r,i]=n(e);return Math.max(t,r,i)},t.linkDistance=e.linkDistance?fE(e.linkDistance,[`edge`,`source`,`target`]):(e,t,n)=>1+e.nodeSize(t)+e.nodeSize(n),t.nodeStrength=pE(e.nodeStrength,1),t.edgeStrength=pE(e.edgeStrength,1,`edge`),t.clusterNodeStrength=pE(e.clusterNodeStrength,1),this.formatCentripetal(t),t}formatCentripetal(e){let{dimensions:t,centripetalOptions:n,center:r,leafCluster:i,clustering:a,nodeClusterBy:o}=e,s=fE(n?.leaf,[`node`,`nodes`,`edges`]),c=pE(n?.single,2),l=pE(n?.others,1),u=fE(n?.center??(e=>({x:r[0],y:r[1],z:t===3?r[2]:void 0})),[`node`,`nodes`,`edges`,`width`,`height`]),d=Object.assign(Object.assign({},n),{leaf:s,single:c,others:l,center:u});n&&(e.centripetalOptions=d);let f,p;if(i&&o&&(f=this.getSameTypeLeafMap(o),p=Array.from(new Set(this.model.nodes()?.map(e=>o(e._original))))||[],e.centripetalOptions=Object.assign({},d,{single:()=>100,leaf:t=>{let{siblingLeaves:n,sameTypeLeaves:r}=f[t.id]||{};return r?.length===n?.length||p?.length===1?1:e.clusterNodeStrength(t)},others:()=>1,center:e=>{let t=this.model.degree(e.id,`both`);if(!t)return{x:100,y:100,z:0};let n;if(t===1){let{sameTypeLeaves:t=[]}=f[e.id]||{};t.length===1?n=void 0:t.length>1&&(n=this.getAvgNodePosition(t))}else n=void 0;return{x:n?.x,y:n?.y,z:n?.z}}})),a&&o){f||=this.getSameTypeLeafMap(o);let t=[];jY(t)&&this.model.forEachNode(e=>{let n=o(e._original);n&&!t.includes(n)&&t.push(n)});let n={};t.forEach(e=>{let t=this.model.nodes().filter(t=>o(t._original)===e);n[e]=this.getAvgNodePosition(t)}),e.centripetalOptions=Object.assign(d,{single:t=>e.clusterNodeStrength(t),leaf:t=>e.clusterNodeStrength(t),others:t=>e.clusterNodeStrength(t),center:e=>{let t=n[o(e._original)];return{x:t?.x,y:t?.y,z:t?.z}}})}}getSameTypeLeafMap(e){let t={};return this.model.forEachNode(n=>{this.model.degree(n.id,`both`)===1&&(t[n.id]=this.getCoreNodeAndSiblingLeaves(n,e))}),t}getCoreNodeAndSiblingLeaves(e,t){let n=this.model.degree(e.id,`in`),r=this.model.degree(e.id,`out`),i=e,a=[];if(n===0){let t=this.model.successors(e.id);i=this.model.node(t[0]),a=this.model.neighbors(i.id).map(e=>this.model.node(e))}else if(r===0){let t=this.model.predecessors(e.id);i=this.model.node(t[0]),a=this.model.neighbors(i.id).map(e=>this.model.node(e))}a=a.filter(e=>this.model.degree(e.id,`in`)===0||this.model.degree(e.id,`out`)===0);let o=t(e._original)||``,s=a.filter(e=>t(e._original)===o&&(this.model.degree(e.id,`in`)===0||this.model.degree(e.id,`out`)===0));return{coreNode:i,siblingLeaves:a,sameTypeLeaves:s}}getAvgNodePosition(e){let t={x:0,y:0};e.forEach(e=>{t.x+=e.x||0,t.y+=e.y||0});let n=e.length||1;return{x:t.x/n,y:t.y/n}}tick(e=1){return this.simulation&&this.simulation.tick(e),this}stop(){return this.simulation&&this.simulation.stop(),this}restart(){return this.simulation&&this.simulation.restart(),this}setFixedPosition(e,t){return this.simulation&&this.simulation.setFixedPosition(e,t),this}},PY=class e{constructor(e){this.id=e.id||0,this.rx=e.rx,this.ry=e.ry,this.fx=0,this.fy=0,this.mass=e.mass,this.degree=e.degree,this.g=e.g||0}distanceTo(e){let t=this.rx-e.rx,n=this.ry-e.ry;return Math.hypot(t,n)}setPos(e,t){this.rx=e,this.ry=t}resetForce(){this.fx=0,this.fy=0}addForce(e){let t=e.rx-this.rx,n=e.ry-this.ry,r=Math.hypot(t,n);r=r<1e-4?1e-4:r;let i=this.g*(this.degree+1)*(e.degree+1)/r;this.fx+=i*t/r,this.fy+=i*n/r}in(e){return e.contains(this.rx,this.ry)}add(t){let n=this.mass+t.mass;return new e({rx:(this.rx*this.mass+t.rx*t.mass)/n,ry:(this.ry*this.mass+t.ry*t.mass)/n,mass:n,degree:this.degree+t.degree})}},FY=class e{constructor(e){this.xmid=e.xmid,this.ymid=e.ymid,this.length=e.length,this.massCenter=e.massCenter||[0,0],this.mass=e.mass||1}getLength(){return this.length}contains(e,t){let n=this.length/2;return e<=this.xmid+n&&e>=this.xmid-n&&t<=this.ymid+n&&t>=this.ymid-n}NW(){return new e({xmid:this.xmid-this.length/4,ymid:this.ymid+this.length/4,length:this.length/2})}NE(){return new e({xmid:this.xmid+this.length/4,ymid:this.ymid+this.length/4,length:this.length/2})}SW(){return new e({xmid:this.xmid-this.length/4,ymid:this.ymid-this.length/4,length:this.length/2})}SE(){return new e({xmid:this.xmid+this.length/4,ymid:this.ymid-this.length/4,length:this.length/2})}},IY=class e{constructor(e){this.body=null,this.quad=null,this.NW=null,this.NE=null,this.SW=null,this.SE=null,this.theta=.5,e!=null&&(this.quad=e)}insert(t){if(this.body==null){this.body=t;return}this._isExternal()?(this.quad&&(this.NW=new e(this.quad.NW()),this.NE=new e(this.quad.NE()),this.SW=new e(this.quad.SW()),this.SE=new e(this.quad.SE())),this._putBody(this.body),this._putBody(t),this.body=this.body.add(t)):(this.body=this.body.add(t),this._putBody(t))}_putBody(e){this.quad&&(e.in(this.quad.NW())&&this.NW?this.NW.insert(e):e.in(this.quad.NE())&&this.NE?this.NE.insert(e):e.in(this.quad.SW())&&this.SW?this.SW.insert(e):e.in(this.quad.SE())&&this.SE&&this.SE.insert(e))}_isExternal(){return this.NW==null&&this.NE==null&&this.SW==null&&this.SE==null}updateForce(e){this.body==null||e===this.body||(this._isExternal()||(this.quad?this.quad.getLength():0)/this.body.distanceTo(e)<this.theta?e.addForce(this.body):(this.NW&&this.NW.updateForce(e),this.NE&&this.NE.updateForce(e),this.SW&&this.SW.updateForce(e),this.SE&&this.SE.updateForce(e)))}},LY=class extends CY{constructor(){super(...arguments),this.sg=0,this.forces={},this.preForces={},this.bodies={},this.sizes={},this.maxIteration=0}data(e,t){return this.model=e,this.sizes=t,this}initialize(e){super.initialize(e),this.maxIteration=e.maxIteration,this.sg=0,this.initForces()}initForces(){let{model:e,options:t}=this,{kr:n,barnesHut:r}=t,i=e.nodes();this.forces={},this.preForces={},this.bodies={};for(let t=0;t<i.length;t+=1){let a=i[t];if(this.forces[a.id]=[0,0],this.preForces[a.id]=[0,0],r){let r={id:t,rx:a.x,ry:a.y,mass:1,g:n,degree:e.degree(a.id)};this.bodies[a.id]=new PY(r)}}}setFixedPosition(e,t){let n=this.model.node(e);if(!n)return;let r=[`fx`,`fy`,`fz`];if(t===null){r.forEach(e=>{delete n[e]});return}t.forEach((e,t)=>{t<r.length&&(typeof e==`number`||e===null)&&(n[r[t]]=e)})}isNodeFixed(e){return oE(e.fx)&&oE(e.fy)}syncFixedPositions(){this.model.forEachNode(e=>{this.isNodeFixed(e)&&(e.x=e.fx,e.y=e.fy)})}runOneStep(){let{model:e,options:t}=this,{preventOverlap:n,barnesHut:r}=t,i=this.maxIteration-this.iteration,a=e.nodes();for(let e=0;e<a.length;e+=1){let{id:t}=a[e];this.preForces[t]=[...this.forces[t]||[0,0]],this.forces[t]=[0,0]}return this.syncFixedPositions(),this.calculateAttractive(i),r&&!n?this.calculateOptRepulsiveGravity():this.calculateRepulsiveGravity(i,100),this.updatePositions()}calculateAttractive(e){let{model:t,options:n}=this,{preventOverlap:r,dissuadeHubs:i,mode:a,prune:o}=n,s=t.edges();for(let e=0;e<s.length;e+=1){let{source:n,target:c}=s[e],l=t.node(n),u=t.node(c),d=t.degree(n),f=t.degree(c);if(o&&(d<=1||f<=1))continue;let p=u.x-l.x,m=u.y-l.y,h=Math.hypot(p,m);h=h<1e-4?1e-4:h;let g=p/h,_=m/h,v=h;r&&(v=Math.max(0,h-this.sizes[n]-this.sizes[c]));let y=v,b=v;a===`linlog`&&(y=Math.log(1+v),b=y),i&&(y=v/d,b=v/f),this.forces[n][0]+=y*g,this.forces[n][1]+=y*_,this.forces[c][0]-=b*g,this.forces[c][1]-=b*_}}calculateOptRepulsiveGravity(){let{model:e,options:t}=this,{kg:n,center:r,prune:i,kr:a}=t,o=e.nodes(),s=o.length,c=1/0,l=-1/0,u=1/0,d=-1/0;for(let t=0;t<s;t+=1){let{id:n,x:r,y:a}=o[t];if(i&&e.degree(n)<=1)continue;let s=this.bodies[n];s&&(s.setPos(r,a),r<c&&(c=r),r>l&&(l=r),a<u&&(u=a),a>d&&(d=a))}let f=Math.max(l-c,d-u);(!isFinite(f)||f<=0)&&(f=1);let p=new FY({xmid:(l+c)/2,ymid:(d+u)/2,length:f,massCenter:r,mass:s}),m=new IY(p);for(let t=0;t<s;t+=1){let{id:n}=o[t];if(i&&e.degree(n)<=1)continue;let r=this.bodies[n];r&&r.in(p)&&m.insert(r)}for(let t=0;t<s;t+=1){let{id:a,x:s,y:c}=o[t],l=e.degree(a);if(i&&l<=1)continue;let u=this.bodies[a];if(!u)continue;u.resetForce(),m.updateForce(u),this.forces[a][0]-=u.fx,this.forces[a][1]-=u.fy;let d=s-r[0],f=c-r[1],p=Math.hypot(d,f);p=p<1e-4?1e-4:p;let h=d/p,g=f/p,_=n*(l+1);this.forces[a][0]-=_*h,this.forces[a][1]-=_*g}}calculateRepulsiveGravity(e,t){let{model:n,options:r}=this,{preventOverlap:i,kr:a,kg:o,center:s,prune:c}=r,l=n.nodes(),u=l.length;for(let e=0;e<u;e+=1){let r=l[e],d=n.degree(r.id);for(let o=e+1;o<u;o+=1){let e=l[o],s=n.degree(e.id);if(c&&(d<=1||s<=1))continue;let u=e.x-r.x,f=e.y-r.y,p=Math.hypot(u,f);p=p<1e-4?1e-4:p;let m=u/p,h=f/p,g=p,_;if(i){let n=p-this.sizes[r.id]-this.sizes[e.id];n<0?_=t*(d+1)*(s+1):n===0?_=0:(g=n,_=a*(d+1)*(s+1)/g)}else _=a*(d+1)*(s+1)/g;this.forces[r.id][0]-=_*m,this.forces[r.id][1]-=_*h,this.forces[e.id][0]+=_*m,this.forces[e.id][1]+=_*h}let f=r.x-s[0],p=r.y-s[1],m=Math.hypot(f,p);m=m<1e-4?1e-4:m;let h=f/m,g=p/m,_=o*(d+1);this.forces[r.id][0]-=_*h,this.forces[r.id][1]-=_*g}}updatePositions(){let{model:e,options:t}=this,{ks:n,tao:r,prune:i,ksmax:a,distanceThresholdMode:o=`max`}=t,s=e.nodes(),c=s.length,l={},u={},d=0,f=0;for(let t=0;t<c;t+=1){let{id:n}=s[t],r=e.degree(n);if(i&&r<=1)continue;let a=this.preForces[n]||[0,0],o=this.forces[n]||[0,0],c=o[0]-a[0],p=o[1]-a[1],m=Math.hypot(c,p),h=o[0]+a[0],g=o[1]+a[1],_=Math.hypot(h,g);l[n]=m,u[n]=_/2,d+=(r+1)*l[n],f+=(r+1)*u[n]}let p=this.sg,m=this.sg;d<=0?p=m>0?m:1:(p=r*f/d,m!==0&&(p=p>1.5*m?1.5*m:p)),this.sg=p;let h=0,g=1/0,_=0,v=0;for(let t=0;t<c;t+=1){let r=s[t],o=r.id,c=e.degree(o);if(i&&c<=1||this.isNodeFixed(r))continue;let u=l[o]||0,d=n*p/(1+p*Math.sqrt(u)),f=Math.hypot(this.forces[o][0],this.forces[o][1]);f=f<1e-4?1e-4:f;let m=a/f;d>m&&(d=m);let y=d*this.forces[o][0],b=d*this.forces[o][1];r.x+=y,r.y+=b;let x=Math.hypot(y,b);x>0&&(v++,_+=x,x>h&&(h=x),x<g&&(g=x))}switch(o){case`min`:return g;case`mean`:return v>0?_/v:0;default:return h}}destroy(){this.stop(),this.forces={},this.preForces={},this.bodies={},this.sizes={},this.off()}},RY={nodeSize:10,nodeSpacing:0,width:300,height:300,kr:5,kg:1,mode:`normal`,preventOverlap:!1,dissuadeHubs:!1,maxIteration:0,ks:.1,ksmax:10,tao:.1},zY=class extends eD{constructor(){super(...arguments),this.id=`force-atlas2`,this.simulation=null}getDefaultOptions(){return RY}layout(e){return IT(this,void 0,void 0,function*(){let t=this.parseOptions(e),{width:n,height:r,prune:i,center:a}=t,o=this.model.nodeCount();if(!o||o===1)return Ik(this.model,a);SE(this.model,n,r);let s=this.getSizes(t.nodeSize,t.nodeSpacing),c=this.setSimulation();c.data(this.model,s),c.initialize(t),c.restart();let l=()=>new Promise(e=>{c.on(`end`,e)});if(!i)return l();if(yield l(),i){let e=this.model.edges();for(let t=0;t<e.length;t+=1){let{source:n,target:r}=e[t],i=this.model.degree(n),a=this.model.degree(r),o=this.model.node(n),s=this.model.node(r);i<=1?(o.x=s.x,o.y=s.y):a<=1&&(s.x=o.x,s.y=o.y)}c.initialize(Object.assign(Object.assign({},t),{prune:!1,barnesHut:!1})),c.tick(100)}})}getSizes(e,t){let n={},r=hE(e,t,RY.nodeSize,RY.nodeSpacing);return this.model.forEachNode(e=>{n[e.id]=Math.max(...r(e._original))}),n}setSimulation(){let e=this.simulation||new LY;return this.simulation||=e.on(`tick`,()=>{var e;return(e=this.options).onTick?.call(e,this)}),this.simulation}parseOptions(e={}){let{barnesHut:t,prune:n,maxIteration:r,kr:i,kg:a}=e,o={},s=this.model.nodeCount();return t===void 0&&s>250&&(o.barnesHut=!0),n===void 0&&s>100&&(o.prune=!0),r===0&&!n?(o.maxIteration=250,s<=200&&s>100?o.maxIteration=1e3:s>200&&(o.maxIteration=1200)):r===0&&n&&(o.maxIteration=100,s<=200&&s>100?o.maxIteration=500:s>200&&(o.maxIteration=950)),i||(o.kr=50,s>100&&s<=500?o.kr=20:s>500&&(o.kr=1)),a||(o.kg=20,s>100&&s<=500?o.kg=10:s>500&&(o.kg=1)),Object.assign(Object.assign(Object.assign({},e),o),Hk(e))}stop(){var e;(e=this.simulation)==null||e.stop()}tick(e=1){var t;(t=this.simulation)==null||t.tick(e)}restart(){var e;(e=this.simulation)==null||e.restart()}setFixedPosition(e,t){var n;(n=this.simulation)==null||n.setFixedPosition(e,t)}destroy(){var e;super.destroy(),this.stop(),(e=this.simulation)==null||e.destroy(),this.simulation=null}},BY=800,VY=class extends CY{constructor(){super(...arguments),this.displacements=null,this.clusterMap=null}data(e){return this.model=e,this}initialize(e){super.initialize(e),this.recomputeConstants(),this.displacements=null,this.clusterMap=null,this.initDisplacements()}recomputeConstants(){let{model:e,options:t}=this,{width:n,height:r}=Hk(t),i=n*r;this.k2=i/(e.nodeCount()+1),this.k=Math.sqrt(this.k2),this.maxDisplace=Math.sqrt(i)/10}runOneStep(){return this.syncFixedPositions(),this.initDisplacements(),this.calculateRepulsive(),this.calculateAttractive(),this.applyClusterGravity(),this.applyGlobalGravity(),this.updatePositions()}setFixedPosition(e,t){let n=this.model.node(e);if(!n)return;let r=[`fx`,`fy`,`fz`];if(t===null){r.forEach(e=>{delete n[e]});return}t.forEach((e,t)=>{t<r.length&&(typeof e==`number`||e===null)&&(n[r[t]]=e)})}isNodeFixed(e){return!lE(e.fx)&&!lE(e.fy)}syncFixedPositions(){let{model:e,options:t}=this,n=t.dimensions===3;e.forEachNode(e=>{this.isNodeFixed(e)&&(e.x=e.fx,e.y=e.fy,n&&e.fz!==void 0&&(e.z=e.fz))})}initDisplacements(){this.displacements||(this.displacements=new Map,this.model.forEachNode(e=>{this.displacements.set(e.id,{x:0,y:0,z:0})})),this.displacements.forEach(e=>{e.x=0,e.y=0,e.z=0})}calculateRepulsive(){let{model:e,options:t}=this,n=t.dimensions===3,r=e.nodes();for(let e=0;e<r.length;e++){let t=r[e],i=this.displacements.get(t.id),a=this.isNodeFixed(t);for(let o=e+1;o<r.length;o++){let e=r[o],s=this.displacements.get(e.id),c=this.isNodeFixed(e),l=t.x-e.x,u=t.y-e.y,d=n?t.z-e.z:0,f=l*l+u*u+d*d;f===0&&(f=1,l=.01,u=.01,d=.01);let p=this.k2/f,m=l*p,h=u*p,g=d*p;!a&&!c?(i.x+=m,i.y+=h,s.x-=m,s.y-=h,n&&(i.z+=g,s.z-=g)):a&&!c?(s.x-=m*2,s.y-=h*2,n&&(s.z-=g*2)):!a&&c&&(i.x+=m*2,i.y+=h*2,n&&(i.z+=g*2))}}}calculateAttractive(){let{model:e,options:t}=this,n=t.dimensions===3;e.forEachEdge(t=>{let{source:r,target:i}=t;if(!r||!i||r===i)return;let a=e.node(r),o=e.node(i),s=this.displacements.get(r),c=this.displacements.get(i),l=this.isNodeFixed(a),u=this.isNodeFixed(o),d=o.x-a.x,f=o.y-a.y,p=n?o.z-a.z:0,m=Math.sqrt(d*d+f*f+p*p);if(m===0)return;let h=m/this.k,g=d*h,_=f*h,v=p*h;!l&&!u?(s.x+=g,s.y+=_,c.x-=g,c.y-=_,n&&(s.z+=v,c.z-=v)):l&&!u?(c.x-=g*2,c.y-=_*2,n&&(c.z-=v*2)):!l&&u&&(s.x+=g*2,s.y+=_*2,n&&(s.z+=v*2))})}applyClusterGravity(){let{model:e,options:t}=this,{nodeClusterBy:n,clusterGravity:r,dimensions:i,clustering:a}=t;if(!a||(this.clusterMap||(this.clusterMap=new Map,e.forEachNode(t=>{let r=n(e.originalNode(t.id));this.clusterMap.has(r)||this.clusterMap.set(r,{name:r,cx:0,cy:0,cz:0,count:0})})),this.clusterMap.size===0))return;let o=i===3;this.clusterMap.forEach(e=>{e.cx=0,e.cy=0,e.cz=0,e.count=0}),e.forEachNode(t=>{let r=n(e.originalNode(t.id)),i=this.clusterMap.get(r);i&&(i.cx+=t.x,i.cy+=t.y,o&&(i.cz+=t.z),i.count++)}),this.clusterMap.forEach(e=>{e.count>0&&(e.cx/=e.count,e.cy/=e.count,e.cz/=e.count)}),e.forEachNode(t=>{let{id:i}=t;if(this.isNodeFixed(t))return;let a=n(e.originalNode(i)),s=this.clusterMap.get(a);if(!s)return;let c=this.displacements.get(i),l=t.x-s.cx,u=t.y-s.cy,d=o?t.z-s.cz:0,f=Math.sqrt(l*l+u*u+d*d);if(f===0)return;let p=this.k*r;c.x-=p*l/f,c.y-=p*u/f,o&&(c.z-=p*d/f)})}applyGlobalGravity(){let{model:e,options:t}=this,{gravity:n,center:r,dimensions:i}=t,a=i===3,o=.01*this.k*n;e.forEachNode(e=>{let{id:t}=e;if(this.isNodeFixed(e))return;let n=this.displacements.get(t);n.x-=o*(e.x-r[0]),n.y-=o*(e.y-r[1]),a&&(n.z-=o*(e.z-(r[2]||0)))})}updatePositions(){let{model:e,options:t}=this,{speed:n,dimensions:r,distanceThresholdMode:i=`max`}=t,a=r===3,o=0,s=1/0,c=0,l=0;if(e.forEachNode(e=>{let{id:t}=e;if(this.isNodeFixed(e))return;let r=this.displacements.get(t),i=Math.sqrt(r.x*r.x+r.y*r.y+(a?r.z*r.z:0));if(i===0)return;let u=Math.min(this.maxDisplace*(n/BY),i),d=u/i;e.x+=r.x*d,e.y+=r.y*d,a&&(e.z+=r.z*d),o=Math.max(o,u),s=Math.min(s,u),c+=u,l++}),l===0)return 0;switch(i){case`min`:return s===1/0?0:s;case`mean`:return c/l;default:return o}}destroy(){var e,t;this.stop(),(e=this.displacements)==null||e.clear(),(t=this.clusterMap)==null||t.clear()}},HY={maxIteration:1e3,gravity:10,speed:5,clustering:!1,clusterGravity:10,width:300,height:300,nodeClusterBy:`node.cluster`,dimensions:2},UY=class extends eD{constructor(){super(...arguments),this.id=`fruchterman`,this.simulation=null}getDefaultOptions(){return HY}parseOptions(e={}){let{clustering:t,nodeClusterBy:n}=this.options,r=t&&!!n;return Object.assign(e,Hk(e),{clustering:r,nodeClusterBy:fE(n,[`node`])}),e}layout(){return IT(this,void 0,void 0,function*(){let e=this.parseOptions(this.options),{dimensions:t,center:n,width:r,height:i}=e,a=this.model.nodeCount();if(!a||a===1){Ik(this.model,n,t);return}SE(this.model,r,i,t);let o=this.setSimulation();return o.data(this.model),o.initialize(e),o.restart(),new Promise(e=>{o.on(`end`,()=>e())})})}setSimulation(){let e=this.simulation||new VY;return this.simulation||=e.on(`tick`,()=>{var e;return(e=this.options).onTick?.call(e,this)}),this.simulation}restart(){var e;(e=this.simulation)==null||e.restart()}stop(){var e;(e=this.simulation)==null||e.stop()}tick(e=1){var t;(t=this.simulation)==null||t.tick(e)}setFixedPosition(e,t){var n;(n=this.simulation)==null||n.setFixedPosition(e,t)}destroy(){var e;super.destroy(),this.stop(),(e=this.simulation)==null||e.destroy(),this.simulation=null}},WY={begin:[0,0],preventOverlap:!0,condense:!1,rows:void 0,cols:void 0,position:void 0,sortBy:`degree`,nodeSize:30,nodeSpacing:10,width:300,height:300},GY=class extends $E{constructor(){super(...arguments),this.id=`grid`}getDefaultOptions(){return WY}parseOptions(e={},t){let{rows:n,cols:r,position:i,sortBy:a}=e,{width:o,height:s,center:c}=Hk(e),l=e.rows,u=e.cols,d=t.nodeCount();if(n!=null&&r!=null)l=n,u=r;else if(n!=null&&r==null)l=n,u=Math.ceil(d/l);else if(n==null&&r!=null)u=r,l=Math.ceil(d/u);else{let e=Math.sqrt(d*s/o);l=Math.round(e),u=Math.round(o/s*e)}l=Math.max(l,1),u=Math.max(u,1);let f={rows:l,cols:u};if(f.cols*f.rows>d){let e=KY(f),t=qY(f);(e-1)*t>=d?KY(f,e-1):(t-1)*e>=d&&qY(f,t-1)}else for(;f.cols*f.rows<d;){let e=KY(f),t=qY(f);(t+1)*e>=d?qY(f,t+1):KY(f,e+1)}let p=a?a===`degree`||a===`id`?a:fE(a,[`nodeA`,`nodeB`]):WY.sortBy;return Object.assign(Object.assign({},e),{sortBy:p,rcs:f,center:c,width:o,height:s,position:fE(i,[`node`])})}layout(){return IT(this,void 0,void 0,function*(){let{begin:e,rcs:t,sortBy:n,width:r,height:i,condense:a,preventOverlap:o,nodeSpacing:s,nodeSize:c,position:l}=this.parseOptions(this.options,this.model),u=this.model.nodeCount();if(!u||u===1){Ik(this.model,e);return}n===`degree`?Rk(this.model):n===`id`?zk(this.model):Bk(this.model,n);let d=a?0:r/t.cols,f=a?0:i/t.rows;if(o){let e=hE(c,s,WY.nodeSize,WY.nodeSpacing);this.model.forEachNode(t=>{let[n,r]=e(t._original);d=Math.max(d,n),f=Math.max(f,r)})}let p={},m={row:0,col:0},h={};this.model.forEachNode(n=>{let r=n._original,i;if(l&&(i=l(r)),i&&(i.row!==void 0||i.col!==void 0)){let e={row:i.row,col:i.col};if(e.col===void 0)for(e.col=0;JY(p,e);)e.col++;else if(e.row===void 0)for(e.row=0;JY(p,e);)e.row++;h[n.id]=e,YY(p,e)}ZY(n,e,d,f,h,t,m,p)})})}},KY=(e,t)=>{let n,r=e.rows||5,i=e.cols||5;return t==null?n=Math.min(r,i):Math.min(r,i)===e.rows?e.rows=t:e.cols=t,n},qY=(e,t)=>{let n,r=e.rows||5,i=e.cols||5;return t==null?n=Math.max(r,i):Math.max(r,i)===e.rows?e.rows=t:e.cols=t,n},JY=(e,t)=>e[`c-${t.row}-${t.col}`]||!1,YY=(e,t)=>e[`c-${t.row}-${t.col}`]=!0,XY=(e,t)=>{let n=e.cols||5;t.col++,t.col>=n&&(t.col=0,t.row++)},ZY=(e,t,n,r,i,a,o,s)=>{let c,l,u=i[e.id];if(u)c=u.col*n+n/2+t[0],l=u.row*r+r/2+t[1];else{for(;JY(s,o);)XY(a,o);c=o.col*n+n/2+t[0],l=o.row*r+r/2+t[1],YY(s,o),XY(a,o)}e.x=c,e.y=l},QY={},$Y=s({isAnyArray:()=>tX}),eX=Object.prototype.toString;function tX(e){let t=eX.call(e);return t.endsWith(`Array]`)&&!t.includes(`Big`)}var nX=KM($Y);function rX(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!tX(e))throw TypeError(`input must be an array`);if(e.length===0)throw TypeError(`input must not be empty`);var n=t.fromIndex,r=n===void 0?0:n,i=t.toIndex,a=i===void 0?e.length:i;if(r<0||r>=e.length||!Number.isInteger(r))throw Error(`fromIndex must be a positive integer smaller than length`);if(a<=r||a>e.length||!Number.isInteger(a))throw Error(`toIndex must be an integer greater than fromIndex and at most equal to length`);for(var o=e[r],s=r+1;s<a;s++)e[s]>o&&(o=e[s]);return o}function iX(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!tX(e))throw TypeError(`input must be an array`);if(e.length===0)throw TypeError(`input must not be empty`);var n=t.fromIndex,r=n===void 0?0:n,i=t.toIndex,a=i===void 0?e.length:i;if(r<0||r>=e.length||!Number.isInteger(r))throw Error(`fromIndex must be a positive integer smaller than length`);if(a<=r||a>e.length||!Number.isInteger(a))throw Error(`toIndex must be an integer greater than fromIndex and at most equal to length`);for(var o=e[r],s=r+1;s<a;s++)e[s]<o&&(o=e[s]);return o}var aX=s({default:()=>oX});function oX(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!tX(e))throw TypeError(`input must be an array`);if(e.length===0)throw TypeError(`input must not be empty`);var n;if(t.output!==void 0){if(!tX(t.output))throw TypeError(`output option must be an array if specified`);n=t.output}else n=Array(e.length);var r=iX(e),i=rX(e);if(r===i)throw RangeError(`minimum and maximum input values are equal. Cannot rescale a constant array`);var a=t.min,o=a===void 0?t.autoMinMax?r:0:a,s=t.max,c=s===void 0?t.autoMinMax?i:1:s;if(o>=c)throw RangeError(`min option must be smaller than max option`);for(var l=(c-o)/(i-r),u=0;u<e.length;u++)n[u]=(e[u]-r)*l+o;return n}var sX=KM(aX),cX;function lX(){if(cX)return QY;cX=1,Object.defineProperty(QY,`__esModule`,{value:!0});var e=nX,t=sX;let n=` `.repeat(2),r=` `.repeat(4);function i(){return a(this)}function a(e,t={}){let{maxRows:i=15,maxColumns:a=10,maxNumSize:s=8,padMinus:c=`auto`}=t;return`${e.constructor.name} {
|
|
14
|
+
${n}[
|
|
15
|
+
${r}${o(e,i,a,s,c)}
|
|
16
|
+
${n}]
|
|
17
|
+
${n}rows: ${e.rows}
|
|
18
|
+
${n}columns: ${e.columns}
|
|
19
|
+
}`}function o(e,t,n,i,a){let{rows:o,columns:c}=e,l=Math.min(o,t),u=Math.min(c,n),d=[];if(a===`auto`){a=!1;loop:for(let t=0;t<l;t++)for(let n=0;n<u;n++)if(e.get(t,n)<0){a=!0;break loop}}for(let t=0;t<l;t++){let n=[];for(let r=0;r<u;r++)n.push(s(e.get(t,r),i,a));d.push(`${n.join(` `)}`)}return u!==c&&(d[d.length-1]+=` ... ${c-n} more columns`),l!==o&&d.push(`... ${o-t} more rows`),d.join(`\n${r}`)}function s(e,t,n){return(e>=0&&n?` ${c(e,t-1)}`:c(e,t)).padEnd(t)}function c(e,t){let n=e.toString();if(n.length<=t)return n;let r=e.toFixed(t);if(r.length>t&&(r=e.toFixed(Math.max(0,t-(r.length-t)))),r.length<=t&&!r.startsWith(`0.000`)&&!r.startsWith(`-0.000`))return r;let i=e.toExponential(t);return i.length>t&&(i=e.toExponential(Math.max(0,t-(i.length-t)))),i.slice(0)}function l(e,t){e.prototype.add=function(e){return typeof e==`number`?this.addS(e):this.addM(e)},e.prototype.addS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)+e);return this},e.prototype.addM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)+e.get(t,n));return this},e.add=function(e,n){return new t(e).add(n)},e.prototype.sub=function(e){return typeof e==`number`?this.subS(e):this.subM(e)},e.prototype.subS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)-e);return this},e.prototype.subM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)-e.get(t,n));return this},e.sub=function(e,n){return new t(e).sub(n)},e.prototype.subtract=e.prototype.sub,e.prototype.subtractS=e.prototype.subS,e.prototype.subtractM=e.prototype.subM,e.subtract=e.sub,e.prototype.mul=function(e){return typeof e==`number`?this.mulS(e):this.mulM(e)},e.prototype.mulS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)*e);return this},e.prototype.mulM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)*e.get(t,n));return this},e.mul=function(e,n){return new t(e).mul(n)},e.prototype.multiply=e.prototype.mul,e.prototype.multiplyS=e.prototype.mulS,e.prototype.multiplyM=e.prototype.mulM,e.multiply=e.mul,e.prototype.div=function(e){return typeof e==`number`?this.divS(e):this.divM(e)},e.prototype.divS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)/e);return this},e.prototype.divM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)/e.get(t,n));return this},e.div=function(e,n){return new t(e).div(n)},e.prototype.divide=e.prototype.div,e.prototype.divideS=e.prototype.divS,e.prototype.divideM=e.prototype.divM,e.divide=e.div,e.prototype.mod=function(e){return typeof e==`number`?this.modS(e):this.modM(e)},e.prototype.modS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)%e);return this},e.prototype.modM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)%e.get(t,n));return this},e.mod=function(e,n){return new t(e).mod(n)},e.prototype.modulus=e.prototype.mod,e.prototype.modulusS=e.prototype.modS,e.prototype.modulusM=e.prototype.modM,e.modulus=e.mod,e.prototype.and=function(e){return typeof e==`number`?this.andS(e):this.andM(e)},e.prototype.andS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)&e);return this},e.prototype.andM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)&e.get(t,n));return this},e.and=function(e,n){return new t(e).and(n)},e.prototype.or=function(e){return typeof e==`number`?this.orS(e):this.orM(e)},e.prototype.orS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)|e);return this},e.prototype.orM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)|e.get(t,n));return this},e.or=function(e,n){return new t(e).or(n)},e.prototype.xor=function(e){return typeof e==`number`?this.xorS(e):this.xorM(e)},e.prototype.xorS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)^e);return this},e.prototype.xorM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)^e.get(t,n));return this},e.xor=function(e,n){return new t(e).xor(n)},e.prototype.leftShift=function(e){return typeof e==`number`?this.leftShiftS(e):this.leftShiftM(e)},e.prototype.leftShiftS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)<<e);return this},e.prototype.leftShiftM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)<<e.get(t,n));return this},e.leftShift=function(e,n){return new t(e).leftShift(n)},e.prototype.signPropagatingRightShift=function(e){return typeof e==`number`?this.signPropagatingRightShiftS(e):this.signPropagatingRightShiftM(e)},e.prototype.signPropagatingRightShiftS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)>>e);return this},e.prototype.signPropagatingRightShiftM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)>>e.get(t,n));return this},e.signPropagatingRightShift=function(e,n){return new t(e).signPropagatingRightShift(n)},e.prototype.rightShift=function(e){return typeof e==`number`?this.rightShiftS(e):this.rightShiftM(e)},e.prototype.rightShiftS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)>>>e);return this},e.prototype.rightShiftM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)>>>e.get(t,n));return this},e.rightShift=function(e,n){return new t(e).rightShift(n)},e.prototype.zeroFillRightShift=e.prototype.rightShift,e.prototype.zeroFillRightShiftS=e.prototype.rightShiftS,e.prototype.zeroFillRightShiftM=e.prototype.rightShiftM,e.zeroFillRightShift=e.rightShift,e.prototype.not=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,~this.get(e,t));return this},e.not=function(e){return new t(e).not()},e.prototype.abs=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.abs(this.get(e,t)));return this},e.abs=function(e){return new t(e).abs()},e.prototype.acos=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.acos(this.get(e,t)));return this},e.acos=function(e){return new t(e).acos()},e.prototype.acosh=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.acosh(this.get(e,t)));return this},e.acosh=function(e){return new t(e).acosh()},e.prototype.asin=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.asin(this.get(e,t)));return this},e.asin=function(e){return new t(e).asin()},e.prototype.asinh=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.asinh(this.get(e,t)));return this},e.asinh=function(e){return new t(e).asinh()},e.prototype.atan=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.atan(this.get(e,t)));return this},e.atan=function(e){return new t(e).atan()},e.prototype.atanh=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.atanh(this.get(e,t)));return this},e.atanh=function(e){return new t(e).atanh()},e.prototype.cbrt=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.cbrt(this.get(e,t)));return this},e.cbrt=function(e){return new t(e).cbrt()},e.prototype.ceil=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.ceil(this.get(e,t)));return this},e.ceil=function(e){return new t(e).ceil()},e.prototype.clz32=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.clz32(this.get(e,t)));return this},e.clz32=function(e){return new t(e).clz32()},e.prototype.cos=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.cos(this.get(e,t)));return this},e.cos=function(e){return new t(e).cos()},e.prototype.cosh=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.cosh(this.get(e,t)));return this},e.cosh=function(e){return new t(e).cosh()},e.prototype.exp=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.exp(this.get(e,t)));return this},e.exp=function(e){return new t(e).exp()},e.prototype.expm1=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.expm1(this.get(e,t)));return this},e.expm1=function(e){return new t(e).expm1()},e.prototype.floor=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.floor(this.get(e,t)));return this},e.floor=function(e){return new t(e).floor()},e.prototype.fround=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.fround(this.get(e,t)));return this},e.fround=function(e){return new t(e).fround()},e.prototype.log=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.log(this.get(e,t)));return this},e.log=function(e){return new t(e).log()},e.prototype.log1p=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.log1p(this.get(e,t)));return this},e.log1p=function(e){return new t(e).log1p()},e.prototype.log10=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.log10(this.get(e,t)));return this},e.log10=function(e){return new t(e).log10()},e.prototype.log2=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.log2(this.get(e,t)));return this},e.log2=function(e){return new t(e).log2()},e.prototype.round=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.round(this.get(e,t)));return this},e.round=function(e){return new t(e).round()},e.prototype.sign=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.sign(this.get(e,t)));return this},e.sign=function(e){return new t(e).sign()},e.prototype.sin=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.sin(this.get(e,t)));return this},e.sin=function(e){return new t(e).sin()},e.prototype.sinh=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.sinh(this.get(e,t)));return this},e.sinh=function(e){return new t(e).sinh()},e.prototype.sqrt=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.sqrt(this.get(e,t)));return this},e.sqrt=function(e){return new t(e).sqrt()},e.prototype.tan=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.tan(this.get(e,t)));return this},e.tan=function(e){return new t(e).tan()},e.prototype.tanh=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.tanh(this.get(e,t)));return this},e.tanh=function(e){return new t(e).tanh()},e.prototype.trunc=function(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)this.set(e,t,Math.trunc(this.get(e,t)));return this},e.trunc=function(e){return new t(e).trunc()},e.pow=function(e,n){return new t(e).pow(n)},e.prototype.pow=function(e){return typeof e==`number`?this.powS(e):this.powM(e)},e.prototype.powS=function(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)**e);return this},e.prototype.powM=function(e){if(e=t.checkMatrix(e),this.rows!==e.rows||this.columns!==e.columns)throw RangeError(`Matrices dimensions must be equal`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)**e.get(t,n));return this}}function u(e,t,n){let r=n?e.rows:e.rows-1;if(t<0||t>r)throw RangeError(`Row index out of range`)}function d(e,t,n){let r=n?e.columns:e.columns-1;if(t<0||t>r)throw RangeError(`Column index out of range`)}function f(e,t){if(t.to1DArray&&(t=t.to1DArray()),t.length!==e.columns)throw RangeError(`vector size must be the same as the number of columns`);return t}function p(e,t){if(t.to1DArray&&(t=t.to1DArray()),t.length!==e.rows)throw RangeError(`vector size must be the same as the number of rows`);return t}function m(t,n){if(!e.isAnyArray(n))throw TypeError(`row indices must be an array`);for(let e=0;e<n.length;e++)if(n[e]<0||n[e]>=t.rows)throw RangeError(`row indices are out of range`)}function h(t,n){if(!e.isAnyArray(n))throw TypeError(`column indices must be an array`);for(let e=0;e<n.length;e++)if(n[e]<0||n[e]>=t.columns)throw RangeError(`column indices are out of range`)}function g(e,t,n,r,i){if(arguments.length!==5)throw RangeError(`expected 4 arguments`);if(v(`startRow`,t),v(`endRow`,n),v(`startColumn`,r),v(`endColumn`,i),t>n||r>i||t<0||t>=e.rows||n<0||n>=e.rows||r<0||r>=e.columns||i<0||i>=e.columns)throw RangeError(`Submatrix indices are out of range`)}function _(e,t=0){let n=[];for(let r=0;r<e;r++)n.push(t);return n}function v(e,t){if(typeof t!=`number`)throw TypeError(`${e} must be a number`)}function y(e){if(e.isEmpty())throw Error(`Empty matrix has no elements to index`)}function b(e){let t=_(e.rows);for(let n=0;n<e.rows;++n)for(let r=0;r<e.columns;++r)t[n]+=e.get(n,r);return t}function x(e){let t=_(e.columns);for(let n=0;n<e.rows;++n)for(let r=0;r<e.columns;++r)t[r]+=e.get(n,r);return t}function S(e){let t=0;for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)t+=e.get(n,r);return t}function C(e){let t=_(e.rows,1);for(let n=0;n<e.rows;++n)for(let r=0;r<e.columns;++r)t[n]*=e.get(n,r);return t}function w(e){let t=_(e.columns,1);for(let n=0;n<e.rows;++n)for(let r=0;r<e.columns;++r)t[r]*=e.get(n,r);return t}function T(e){let t=1;for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)t*=e.get(n,r);return t}function E(e,t,n){let r=e.rows,i=e.columns,a=[];for(let o=0;o<r;o++){let r=0,s=0,c=0;for(let t=0;t<i;t++)c=e.get(o,t)-n[o],r+=c,s+=c*c;t?a.push((s-r*r/i)/(i-1)):a.push((s-r*r/i)/i)}return a}function D(e,t,n){let r=e.rows,i=e.columns,a=[];for(let o=0;o<i;o++){let i=0,s=0,c=0;for(let t=0;t<r;t++)c=e.get(t,o)-n[o],i+=c,s+=c*c;t?a.push((s-i*i/r)/(r-1)):a.push((s-i*i/r)/r)}return a}function O(e,t,n){let r=e.rows,i=e.columns,a=r*i,o=0,s=0,c=0;for(let t=0;t<r;t++)for(let r=0;r<i;r++)c=e.get(t,r)-n,o+=c,s+=c*c;return t?(s-o*o/a)/(a-1):(s-o*o/a)/a}function k(e,t){for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)e.set(n,r,e.get(n,r)-t[n])}function A(e,t){for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)e.set(n,r,e.get(n,r)-t[r])}function j(e,t){for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)e.set(n,r,e.get(n,r)-t)}function ee(e){let t=[];for(let n=0;n<e.rows;n++){let r=0;for(let t=0;t<e.columns;t++)r+=e.get(n,t)**2/(e.columns-1);t.push(Math.sqrt(r))}return t}function M(e,t){for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)e.set(n,r,e.get(n,r)/t[n])}function te(e){let t=[];for(let n=0;n<e.columns;n++){let r=0;for(let t=0;t<e.rows;t++)r+=e.get(t,n)**2/(e.rows-1);t.push(Math.sqrt(r))}return t}function ne(e,t){for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)e.set(n,r,e.get(n,r)/t[r])}function re(e){let t=e.size-1,n=0;for(let r=0;r<e.columns;r++)for(let i=0;i<e.rows;i++)n+=e.get(i,r)**2/t;return Math.sqrt(n)}function ie(e,t){for(let n=0;n<e.rows;n++)for(let r=0;r<e.columns;r++)e.set(n,r,e.get(n,r)/t)}class N{static from1DArray(e,t,n){if(e*t!==n.length)throw RangeError(`data length does not match given dimensions`);let r=new P(e,t);for(let i=0;i<e;i++)for(let e=0;e<t;e++)r.set(i,e,n[i*t+e]);return r}static rowVector(e){let t=new P(1,e.length);for(let n=0;n<e.length;n++)t.set(0,n,e[n]);return t}static columnVector(e){let t=new P(e.length,1);for(let n=0;n<e.length;n++)t.set(n,0,e[n]);return t}static zeros(e,t){return new P(e,t)}static ones(e,t){return new P(e,t).fill(1)}static rand(e,t,n={}){if(typeof n!=`object`)throw TypeError(`options must be an object`);let{random:r=Math.random}=n,i=new P(e,t);for(let n=0;n<e;n++)for(let e=0;e<t;e++)i.set(n,e,r());return i}static randInt(e,t,n={}){if(typeof n!=`object`)throw TypeError(`options must be an object`);let{min:r=0,max:i=1e3,random:a=Math.random}=n;if(!Number.isInteger(r))throw TypeError(`min must be an integer`);if(!Number.isInteger(i))throw TypeError(`max must be an integer`);if(r>=i)throw RangeError(`min must be smaller than max`);let o=i-r,s=new P(e,t);for(let n=0;n<e;n++)for(let e=0;e<t;e++){let t=r+Math.round(a()*o);s.set(n,e,t)}return s}static eye(e,t,n){t===void 0&&(t=e),n===void 0&&(n=1);let r=Math.min(e,t),i=this.zeros(e,t);for(let e=0;e<r;e++)i.set(e,e,n);return i}static diag(e,t,n){let r=e.length;t===void 0&&(t=r),n===void 0&&(n=t);let i=Math.min(r,t,n),a=this.zeros(t,n);for(let t=0;t<i;t++)a.set(t,t,e[t]);return a}static min(e,t){e=this.checkMatrix(e),t=this.checkMatrix(t);let n=e.rows,r=e.columns,i=new P(n,r);for(let a=0;a<n;a++)for(let n=0;n<r;n++)i.set(a,n,Math.min(e.get(a,n),t.get(a,n)));return i}static max(e,t){e=this.checkMatrix(e),t=this.checkMatrix(t);let n=e.rows,r=e.columns,i=new this(n,r);for(let a=0;a<n;a++)for(let n=0;n<r;n++)i.set(a,n,Math.max(e.get(a,n),t.get(a,n)));return i}static checkMatrix(e){return N.isMatrix(e)?e:new P(e)}static isMatrix(e){return e!=null&&e.klass===`Matrix`}get size(){return this.rows*this.columns}apply(e){if(typeof e!=`function`)throw TypeError(`callback must be a function`);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)e.call(this,t,n);return this}to1DArray(){let e=[];for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)e.push(this.get(t,n));return e}to2DArray(){let e=[];for(let t=0;t<this.rows;t++){e.push([]);for(let n=0;n<this.columns;n++)e[t].push(this.get(t,n))}return e}toJSON(){return this.to2DArray()}isRowVector(){return this.rows===1}isColumnVector(){return this.columns===1}isVector(){return this.rows===1||this.columns===1}isSquare(){return this.rows===this.columns}isEmpty(){return this.rows===0||this.columns===0}isSymmetric(){if(this.isSquare()){for(let e=0;e<this.rows;e++)for(let t=0;t<=e;t++)if(this.get(e,t)!==this.get(t,e))return!1;return!0}return!1}isDistance(){if(!this.isSymmetric())return!1;for(let e=0;e<this.rows;e++)if(this.get(e,e)!==0)return!1;return!0}isEchelonForm(){let e=0,t=0,n=-1,r=!0,i=!1;for(;e<this.rows&&r;){for(t=0,i=!1;t<this.columns&&i===!1;)this.get(e,t)===0?t++:this.get(e,t)===1&&t>n?(i=!0,n=t):(r=!1,i=!0);e++}return r}isReducedEchelonForm(){let e=0,t=0,n=-1,r=!0,i=!1;for(;e<this.rows&&r;){for(t=0,i=!1;t<this.columns&&i===!1;)this.get(e,t)===0?t++:this.get(e,t)===1&&t>n?(i=!0,n=t):(r=!1,i=!0);for(let n=t+1;n<this.rows;n++)this.get(e,n)!==0&&(r=!1);e++}return r}echelonForm(){let e=this.clone(),t=0,n=0;for(;t<e.rows&&n<e.columns;){let r=t;for(let i=t;i<e.rows;i++)e.get(i,n)>e.get(r,n)&&(r=i);if(e.get(r,n)===0)n++;else{e.swapRows(t,r);let i=e.get(t,n);for(let r=n;r<e.columns;r++)e.set(t,r,e.get(t,r)/i);for(let r=t+1;r<e.rows;r++){let i=e.get(r,n)/e.get(t,n);e.set(r,n,0);for(let a=n+1;a<e.columns;a++)e.set(r,a,e.get(r,a)-e.get(t,a)*i)}t++,n++}}return e}reducedEchelonForm(){let e=this.echelonForm(),t=e.columns,n=e.rows,r=n-1;for(;r>=0;)if(e.maxRow(r)===0)r--;else{let i=0,a=!1;for(;i<n&&a===!1;)e.get(r,i)===1?a=!0:i++;for(let n=0;n<r;n++){let a=e.get(n,i);for(let o=i;o<t;o++){let t=e.get(n,o)-a*e.get(r,o);e.set(n,o,t)}}r--}return e}set(){throw Error(`set method is unimplemented`)}get(){throw Error(`get method is unimplemented`)}repeat(e={}){if(typeof e!=`object`)throw TypeError(`options must be an object`);let{rows:t=1,columns:n=1}=e;if(!Number.isInteger(t)||t<=0)throw TypeError(`rows must be a positive integer`);if(!Number.isInteger(n)||n<=0)throw TypeError(`columns must be a positive integer`);let r=new P(this.rows*t,this.columns*n);for(let e=0;e<t;e++)for(let t=0;t<n;t++)r.setSubMatrix(this,this.rows*e,this.columns*t);return r}fill(e){for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,e);return this}neg(){return this.mulS(-1)}getRow(e){u(this,e);let t=[];for(let n=0;n<this.columns;n++)t.push(this.get(e,n));return t}getRowVector(e){return P.rowVector(this.getRow(e))}setRow(e,t){u(this,e),t=f(this,t);for(let n=0;n<this.columns;n++)this.set(e,n,t[n]);return this}swapRows(e,t){u(this,e),u(this,t);for(let n=0;n<this.columns;n++){let r=this.get(e,n);this.set(e,n,this.get(t,n)),this.set(t,n,r)}return this}getColumn(e){d(this,e);let t=[];for(let n=0;n<this.rows;n++)t.push(this.get(n,e));return t}getColumnVector(e){return P.columnVector(this.getColumn(e))}setColumn(e,t){d(this,e),t=p(this,t);for(let n=0;n<this.rows;n++)this.set(n,e,t[n]);return this}swapColumns(e,t){d(this,e),d(this,t);for(let n=0;n<this.rows;n++){let r=this.get(n,e);this.set(n,e,this.get(n,t)),this.set(n,t,r)}return this}addRowVector(e){e=f(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)+e[n]);return this}subRowVector(e){e=f(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)-e[n]);return this}mulRowVector(e){e=f(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)*e[n]);return this}divRowVector(e){e=f(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)/e[n]);return this}addColumnVector(e){e=p(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)+e[t]);return this}subColumnVector(e){e=p(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)-e[t]);return this}mulColumnVector(e){e=p(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)*e[t]);return this}divColumnVector(e){e=p(this,e);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.set(t,n,this.get(t,n)/e[t]);return this}mulRow(e,t){u(this,e);for(let n=0;n<this.columns;n++)this.set(e,n,this.get(e,n)*t);return this}mulColumn(e,t){d(this,e);for(let n=0;n<this.rows;n++)this.set(n,e,this.get(n,e)*t);return this}max(e){if(this.isEmpty())return NaN;switch(e){case`row`:{let e=Array(this.rows).fill(-1/0);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.get(t,n)>e[t]&&(e[t]=this.get(t,n));return e}case`column`:{let e=Array(this.columns).fill(-1/0);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.get(t,n)>e[n]&&(e[n]=this.get(t,n));return e}case void 0:{let e=this.get(0,0);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.get(t,n)>e&&(e=this.get(t,n));return e}default:throw Error(`invalid option: ${e}`)}}maxIndex(){y(this);let e=this.get(0,0),t=[0,0];for(let n=0;n<this.rows;n++)for(let r=0;r<this.columns;r++)this.get(n,r)>e&&(e=this.get(n,r),t[0]=n,t[1]=r);return t}min(e){if(this.isEmpty())return NaN;switch(e){case`row`:{let e=Array(this.rows).fill(1/0);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.get(t,n)<e[t]&&(e[t]=this.get(t,n));return e}case`column`:{let e=Array(this.columns).fill(1/0);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.get(t,n)<e[n]&&(e[n]=this.get(t,n));return e}case void 0:{let e=this.get(0,0);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)this.get(t,n)<e&&(e=this.get(t,n));return e}default:throw Error(`invalid option: ${e}`)}}minIndex(){y(this);let e=this.get(0,0),t=[0,0];for(let n=0;n<this.rows;n++)for(let r=0;r<this.columns;r++)this.get(n,r)<e&&(e=this.get(n,r),t[0]=n,t[1]=r);return t}maxRow(e){if(u(this,e),this.isEmpty())return NaN;let t=this.get(e,0);for(let n=1;n<this.columns;n++)this.get(e,n)>t&&(t=this.get(e,n));return t}maxRowIndex(e){u(this,e),y(this);let t=this.get(e,0),n=[e,0];for(let r=1;r<this.columns;r++)this.get(e,r)>t&&(t=this.get(e,r),n[1]=r);return n}minRow(e){if(u(this,e),this.isEmpty())return NaN;let t=this.get(e,0);for(let n=1;n<this.columns;n++)this.get(e,n)<t&&(t=this.get(e,n));return t}minRowIndex(e){u(this,e),y(this);let t=this.get(e,0),n=[e,0];for(let r=1;r<this.columns;r++)this.get(e,r)<t&&(t=this.get(e,r),n[1]=r);return n}maxColumn(e){if(d(this,e),this.isEmpty())return NaN;let t=this.get(0,e);for(let n=1;n<this.rows;n++)this.get(n,e)>t&&(t=this.get(n,e));return t}maxColumnIndex(e){d(this,e),y(this);let t=this.get(0,e),n=[0,e];for(let r=1;r<this.rows;r++)this.get(r,e)>t&&(t=this.get(r,e),n[0]=r);return n}minColumn(e){if(d(this,e),this.isEmpty())return NaN;let t=this.get(0,e);for(let n=1;n<this.rows;n++)this.get(n,e)<t&&(t=this.get(n,e));return t}minColumnIndex(e){d(this,e),y(this);let t=this.get(0,e),n=[0,e];for(let r=1;r<this.rows;r++)this.get(r,e)<t&&(t=this.get(r,e),n[0]=r);return n}diag(){let e=Math.min(this.rows,this.columns),t=[];for(let n=0;n<e;n++)t.push(this.get(n,n));return t}norm(e=`frobenius`){switch(e){case`max`:return this.max();case`frobenius`:return Math.sqrt(this.dot(this));default:throw RangeError(`unknown norm type: ${e}`)}}cumulativeSum(){let e=0;for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)e+=this.get(t,n),this.set(t,n,e);return this}dot(e){N.isMatrix(e)&&(e=e.to1DArray());let t=this.to1DArray();if(t.length!==e.length)throw RangeError(`vectors do not have the same size`);let n=0;for(let r=0;r<t.length;r++)n+=t[r]*e[r];return n}mmul(e){e=P.checkMatrix(e);let t=this.rows,n=this.columns,r=e.columns,i=new P(t,r),a=new Float64Array(n);for(let o=0;o<r;o++){for(let t=0;t<n;t++)a[t]=e.get(t,o);for(let e=0;e<t;e++){let t=0;for(let r=0;r<n;r++)t+=this.get(e,r)*a[r];i.set(e,o,t)}}return i}mpow(e){if(!this.isSquare())throw RangeError(`Matrix must be square`);if(!Number.isInteger(e)||e<0)throw RangeError(`Exponent must be a non-negative integer`);let t=P.eye(this.rows),n=this;for(let r=e;r>=1;r/=2)r&1&&(t=t.mmul(n)),n=n.mmul(n);return t}strassen2x2(e){e=P.checkMatrix(e);let t=new P(2,2),n=this.get(0,0),r=e.get(0,0),i=this.get(0,1),a=e.get(0,1),o=this.get(1,0),s=e.get(1,0),c=this.get(1,1),l=e.get(1,1),u=(n+c)*(r+l),d=(o+c)*r,f=n*(a-l),p=c*(s-r),m=(n+i)*l,h=(o-n)*(r+a),g=(i-c)*(s+l),_=u+p-m+g,v=f+m,y=d+p,b=u-d+f+h;return t.set(0,0,_),t.set(0,1,v),t.set(1,0,y),t.set(1,1,b),t}strassen3x3(e){e=P.checkMatrix(e);let t=new P(3,3),n=this.get(0,0),r=this.get(0,1),i=this.get(0,2),a=this.get(1,0),o=this.get(1,1),s=this.get(1,2),c=this.get(2,0),l=this.get(2,1),u=this.get(2,2),d=e.get(0,0),f=e.get(0,1),p=e.get(0,2),m=e.get(1,0),h=e.get(1,1),g=e.get(1,2),_=e.get(2,0),v=e.get(2,1),y=e.get(2,2),b=(n+r+i-a-o-l-u)*h,x=(n-a)*(-f+h),S=o*(-d+f+m-h-g-_+y),C=(-n+a+o)*(d-f+h),w=(a+o)*(-d+f),T=n*d,E=(-n+c+l)*(d-p+g),D=(-n+c)*(p-g),O=(c+l)*(-d+p),k=(n+r+i-o-s-c-l)*g,A=l*(-d+p+m-h-g-_+v),j=(-i+l+u)*(h+_-v),ee=(i-u)*(h-v),M=i*_,te=(l+u)*(-_+v),ne=(-i+o+s)*(g+_-y),re=(i-s)*(g-y),ie=(o+s)*(-_+y),N=r*m,ae=s*v,oe=a*p,se=c*f,ce=u*y,le=T+M+N,ue=b+C+w+T+j+M+te,de=T+E+O+k+M+ne+ie,fe=x+S+C+T+M+ne+re,pe=x+C+w+T+ae,me=M+ne+re+ie+oe,he=T+E+D+A+j+ee+M,ge=j+ee+M+te+se,_e=T+E+D+O+ce;return t.set(0,0,le),t.set(0,1,ue),t.set(0,2,de),t.set(1,0,fe),t.set(1,1,pe),t.set(1,2,me),t.set(2,0,he),t.set(2,1,ge),t.set(2,2,_e),t}mmulStrassen(e){e=P.checkMatrix(e);let t=this.clone(),n=t.rows,r=t.columns,i=e.rows,a=e.columns;r!==i&&console.warn(`Multiplying ${n} x ${r} and ${i} x ${a} matrix: dimensions do not match.`);function o(e,t,n){let r=e.rows,i=e.columns;if(r===t&&i===n)return e;{let r=N.zeros(t,n);return r=r.setSubMatrix(e,0,0),r}}let s=Math.max(n,i),c=Math.max(r,a);t=o(t,s,c),e=o(e,s,c);function l(e,t,n,r){if(n<=512||r<=512)return e.mmul(t);n%2==1&&r%2==1?(e=o(e,n+1,r+1),t=o(t,n+1,r+1)):n%2==1?(e=o(e,n+1,r),t=o(t,n+1,r)):r%2==1&&(e=o(e,n,r+1),t=o(t,n,r+1));let i=parseInt(e.rows/2,10),a=parseInt(e.columns/2,10),s=e.subMatrix(0,i-1,0,a-1),c=t.subMatrix(0,i-1,0,a-1),u=e.subMatrix(0,i-1,a,e.columns-1),d=t.subMatrix(0,i-1,a,t.columns-1),f=e.subMatrix(i,e.rows-1,0,a-1),p=t.subMatrix(i,t.rows-1,0,a-1),m=e.subMatrix(i,e.rows-1,a,e.columns-1),h=t.subMatrix(i,t.rows-1,a,t.columns-1),g=l(N.add(s,m),N.add(c,h),i,a),_=l(N.add(f,m),c,i,a),v=l(s,N.sub(d,h),i,a),y=l(m,N.sub(p,c),i,a),b=l(N.add(s,u),h,i,a),x=l(N.sub(f,s),N.add(c,d),i,a),S=l(N.sub(u,m),N.add(p,h),i,a),C=N.add(g,y);C.sub(b),C.add(S);let w=N.add(v,b),T=N.add(_,y),E=N.sub(g,_);E.add(v),E.add(x);let D=N.zeros(2*C.rows,2*C.columns);return D=D.setSubMatrix(C,0,0),D=D.setSubMatrix(w,C.rows,0),D=D.setSubMatrix(T,0,C.columns),D=D.setSubMatrix(E,C.rows,C.columns),D.subMatrix(0,n-1,0,r-1)}return l(t,e,s,c)}scaleRows(e={}){if(typeof e!=`object`)throw TypeError(`options must be an object`);let{min:n=0,max:r=1}=e;if(!Number.isFinite(n))throw TypeError(`min must be a number`);if(!Number.isFinite(r))throw TypeError(`max must be a number`);if(n>=r)throw RangeError(`min must be smaller than max`);let i=new P(this.rows,this.columns);for(let e=0;e<this.rows;e++){let a=this.getRow(e);a.length>0&&t(a,{min:n,max:r,output:a}),i.setRow(e,a)}return i}scaleColumns(e={}){if(typeof e!=`object`)throw TypeError(`options must be an object`);let{min:n=0,max:r=1}=e;if(!Number.isFinite(n))throw TypeError(`min must be a number`);if(!Number.isFinite(r))throw TypeError(`max must be a number`);if(n>=r)throw RangeError(`min must be smaller than max`);let i=new P(this.rows,this.columns);for(let e=0;e<this.columns;e++){let a=this.getColumn(e);a.length&&t(a,{min:n,max:r,output:a}),i.setColumn(e,a)}return i}flipRows(){let e=Math.ceil(this.columns/2);for(let t=0;t<this.rows;t++)for(let n=0;n<e;n++){let e=this.get(t,n),r=this.get(t,this.columns-1-n);this.set(t,n,r),this.set(t,this.columns-1-n,e)}return this}flipColumns(){let e=Math.ceil(this.rows/2);for(let t=0;t<this.columns;t++)for(let n=0;n<e;n++){let e=this.get(n,t),r=this.get(this.rows-1-n,t);this.set(n,t,r),this.set(this.rows-1-n,t,e)}return this}kroneckerProduct(e){e=P.checkMatrix(e);let t=this.rows,n=this.columns,r=e.rows,i=e.columns,a=new P(t*r,n*i);for(let o=0;o<t;o++)for(let t=0;t<n;t++)for(let n=0;n<r;n++)for(let s=0;s<i;s++)a.set(r*o+n,i*t+s,this.get(o,t)*e.get(n,s));return a}kroneckerSum(e){if(e=P.checkMatrix(e),!this.isSquare()||!e.isSquare())throw Error(`Kronecker Sum needs two Square Matrices`);let t=this.rows,n=e.rows,r=this.kroneckerProduct(P.eye(n,n)),i=P.eye(t,t).kroneckerProduct(e);return r.add(i)}transpose(){let e=new P(this.columns,this.rows);for(let t=0;t<this.rows;t++)for(let n=0;n<this.columns;n++)e.set(n,t,this.get(t,n));return e}sortRows(e=ae){for(let t=0;t<this.rows;t++)this.setRow(t,this.getRow(t).sort(e));return this}sortColumns(e=ae){for(let t=0;t<this.columns;t++)this.setColumn(t,this.getColumn(t).sort(e));return this}subMatrix(e,t,n,r){g(this,e,t,n,r);let i=new P(t-e+1,r-n+1);for(let a=e;a<=t;a++)for(let t=n;t<=r;t++)i.set(a-e,t-n,this.get(a,t));return i}subMatrixRow(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=this.columns-1),t>n||t<0||t>=this.columns||n<0||n>=this.columns)throw RangeError(`Argument out of range`);let r=new P(e.length,n-t+1);for(let i=0;i<e.length;i++)for(let a=t;a<=n;a++){if(e[i]<0||e[i]>=this.rows)throw RangeError(`Row index out of range: ${e[i]}`);r.set(i,a-t,this.get(e[i],a))}return r}subMatrixColumn(e,t,n){if(t===void 0&&(t=0),n===void 0&&(n=this.rows-1),t>n||t<0||t>=this.rows||n<0||n>=this.rows)throw RangeError(`Argument out of range`);let r=new P(n-t+1,e.length);for(let i=0;i<e.length;i++)for(let a=t;a<=n;a++){if(e[i]<0||e[i]>=this.columns)throw RangeError(`Column index out of range: ${e[i]}`);r.set(a-t,i,this.get(a,e[i]))}return r}setSubMatrix(e,t,n){if(e=P.checkMatrix(e),e.isEmpty())return this;let r=t+e.rows-1,i=n+e.columns-1;g(this,t,r,n,i);for(let r=0;r<e.rows;r++)for(let i=0;i<e.columns;i++)this.set(t+r,n+i,e.get(r,i));return this}selection(e,t){m(this,e),h(this,t);let n=new P(e.length,t.length);for(let r=0;r<e.length;r++){let i=e[r];for(let e=0;e<t.length;e++){let a=t[e];n.set(r,e,this.get(i,a))}}return n}trace(){let e=Math.min(this.rows,this.columns),t=0;for(let n=0;n<e;n++)t+=this.get(n,n);return t}clone(){return this.constructor.copy(this,new P(this.rows,this.columns))}static copy(e,t){for(let[n,r,i]of e.entries())t.set(n,r,i);return t}sum(e){switch(e){case`row`:return b(this);case`column`:return x(this);case void 0:return S(this);default:throw Error(`invalid option: ${e}`)}}product(e){switch(e){case`row`:return C(this);case`column`:return w(this);case void 0:return T(this);default:throw Error(`invalid option: ${e}`)}}mean(e){let t=this.sum(e);switch(e){case`row`:for(let e=0;e<this.rows;e++)t[e]/=this.columns;return t;case`column`:for(let e=0;e<this.columns;e++)t[e]/=this.rows;return t;case void 0:return t/this.size;default:throw Error(`invalid option: ${e}`)}}variance(t,n={}){if(typeof t==`object`&&(n=t,t=void 0),typeof n!=`object`)throw TypeError(`options must be an object`);let{unbiased:r=!0,mean:i=this.mean(t)}=n;if(typeof r!=`boolean`)throw TypeError(`unbiased must be a boolean`);switch(t){case`row`:if(!e.isAnyArray(i))throw TypeError(`mean must be an array`);return E(this,r,i);case`column`:if(!e.isAnyArray(i))throw TypeError(`mean must be an array`);return D(this,r,i);case void 0:if(typeof i!=`number`)throw TypeError(`mean must be a number`);return O(this,r,i);default:throw Error(`invalid option: ${t}`)}}standardDeviation(e,t){typeof e==`object`&&(t=e,e=void 0);let n=this.variance(e,t);if(e===void 0)return Math.sqrt(n);for(let e=0;e<n.length;e++)n[e]=Math.sqrt(n[e]);return n}center(t,n={}){if(typeof t==`object`&&(n=t,t=void 0),typeof n!=`object`)throw TypeError(`options must be an object`);let{center:r=this.mean(t)}=n;switch(t){case`row`:if(!e.isAnyArray(r))throw TypeError(`center must be an array`);return k(this,r),this;case`column`:if(!e.isAnyArray(r))throw TypeError(`center must be an array`);return A(this,r),this;case void 0:if(typeof r!=`number`)throw TypeError(`center must be a number`);return j(this,r),this;default:throw Error(`invalid option: ${t}`)}}scale(t,n={}){if(typeof t==`object`&&(n=t,t=void 0),typeof n!=`object`)throw TypeError(`options must be an object`);let r=n.scale;switch(t){case`row`:if(r===void 0)r=ee(this);else if(!e.isAnyArray(r))throw TypeError(`scale must be an array`);return M(this,r),this;case`column`:if(r===void 0)r=te(this);else if(!e.isAnyArray(r))throw TypeError(`scale must be an array`);return ne(this,r),this;case void 0:if(r===void 0)r=re(this);else if(typeof r!=`number`)throw TypeError(`scale must be a number`);return ie(this,r),this;default:throw Error(`invalid option: ${t}`)}}toString(e){return a(this,e)}[Symbol.iterator](){return this.entries()}*entries(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)yield[e,t,this.get(e,t)]}*values(){for(let e=0;e<this.rows;e++)for(let t=0;t<this.columns;t++)yield this.get(e,t)}}N.prototype.klass=`Matrix`,typeof Symbol<`u`&&(N.prototype[Symbol.for(`nodejs.util.inspect.custom`)]=i);function ae(e,t){return e-t}function oe(e){return e.every(e=>typeof e==`number`)}N.random=N.rand,N.randomInt=N.randInt,N.diagonal=N.diag,N.prototype.diagonal=N.prototype.diag,N.identity=N.eye,N.prototype.negate=N.prototype.neg,N.prototype.tensorProduct=N.prototype.kroneckerProduct;class P extends N{data;#e(e,t){if(this.data=[],Number.isInteger(t)&&t>=0)for(let n=0;n<e;n++)this.data.push(new Float64Array(t));else throw TypeError(`nColumns must be a positive integer`);this.rows=e,this.columns=t}constructor(t,n){if(super(),P.isMatrix(t))this.#e(t.rows,t.columns),P.copy(t,this);else if(Number.isInteger(t)&&t>=0)this.#e(t,n);else if(e.isAnyArray(t)){let e=t;if(t=e.length,n=t?e[0].length:0,typeof n!=`number`)throw TypeError(`Data must be a 2D array with at least one element`);this.data=[];for(let r=0;r<t;r++){if(e[r].length!==n)throw RangeError(`Inconsistent array dimensions`);if(!oe(e[r]))throw TypeError(`Input data contains non-numeric values`);this.data.push(Float64Array.from(e[r]))}this.rows=t,this.columns=n}else throw TypeError(`First argument must be a positive number or an array`)}set(e,t,n){return this.data[e][t]=n,this}get(e,t){return this.data[e][t]}removeRow(e){return u(this,e),this.data.splice(e,1),--this.rows,this}addRow(e,t){return t===void 0&&(t=e,e=this.rows),u(this,e,!0),t=Float64Array.from(f(this,t)),this.data.splice(e,0,t),this.rows+=1,this}removeColumn(e){d(this,e);for(let t=0;t<this.rows;t++){let n=new Float64Array(this.columns-1);for(let r=0;r<e;r++)n[r]=this.data[t][r];for(let r=e+1;r<this.columns;r++)n[r-1]=this.data[t][r];this.data[t]=n}return--this.columns,this}addColumn(e,t){t===void 0&&(t=e,e=this.columns),d(this,e,!0),t=p(this,t);for(let n=0;n<this.rows;n++){let r=new Float64Array(this.columns+1),i=0;for(;i<e;i++)r[i]=this.data[n][i];for(r[i++]=t[n];i<this.columns+1;i++)r[i]=this.data[n][i-1];this.data[n]=r}return this.columns+=1,this}}l(N,P);class se extends N{#e;get size(){return this.#e.size}get rows(){return this.#e.rows}get columns(){return this.#e.columns}get diagonalSize(){return this.rows}static isSymmetricMatrix(e){return P.isMatrix(e)&&e.klassType===`SymmetricMatrix`}static zeros(e){return new this(e)}static ones(e){return new this(e).fill(1)}constructor(e){if(super(),P.isMatrix(e)){if(!e.isSymmetric())throw TypeError(`not symmetric data`);this.#e=P.copy(e,new P(e.rows,e.rows))}else if(Number.isInteger(e)&&e>=0)this.#e=new P(e,e);else if(this.#e=new P(e),!this.isSymmetric())throw TypeError(`not symmetric data`)}clone(){let e=new se(this.diagonalSize);for(let[t,n,r]of this.upperRightEntries())e.set(t,n,r);return e}toMatrix(){return new P(this)}get(e,t){return this.#e.get(e,t)}set(e,t,n){return this.#e.set(e,t,n),this.#e.set(t,e,n),this}removeCross(e){return this.#e.removeRow(e),this.#e.removeColumn(e),this}addCross(e,t){t===void 0&&(t=e,e=this.diagonalSize);let n=t.slice();return n.splice(e,1),this.#e.addRow(e,n),this.#e.addColumn(e,t),this}applyMask(e){if(e.length!==this.diagonalSize)throw RangeError(`Mask size do not match with matrix size`);let t=[];for(let[n,r]of e.entries())r||t.push(n);t.reverse();for(let e of t)this.removeCross(e);return this}toCompact(){let{diagonalSize:e}=this,t=Array(e*(e+1)/2);for(let n=0,r=0,i=0;i<t.length;i++)t[i]=this.get(r,n),++n>=e&&(n=++r);return t}static fromCompact(e){let t=e.length,n=(Math.sqrt(8*t+1)-1)/2;if(!Number.isInteger(n))throw TypeError(`This array is not a compact representation of a Symmetric Matrix, ${JSON.stringify(e)}`);let r=new se(n);for(let i=0,a=0,o=0;o<t;o++)r.set(i,a,e[o]),++i>=n&&(i=++a);return r}*upperRightEntries(){for(let e=0,t=0;e<this.diagonalSize;){let n=this.get(e,t);yield[e,t,n],++t>=this.diagonalSize&&(t=++e)}}*upperRightValues(){for(let e=0,t=0;e<this.diagonalSize;)yield this.get(e,t),++t>=this.diagonalSize&&(t=++e)}}se.prototype.klassType=`SymmetricMatrix`;class ce extends se{static isDistanceMatrix(e){return se.isSymmetricMatrix(e)&&e.klassSubType===`DistanceMatrix`}constructor(e){if(super(e),!this.isDistance())throw TypeError(`Provided arguments do no produce a distance matrix`)}set(e,t,n){return e===t&&(n=0),super.set(e,t,n)}addCross(e,t){return t===void 0&&(t=e,e=this.diagonalSize),t=t.slice(),t[e]=0,super.addCross(e,t)}toSymmetricMatrix(){return new se(this)}clone(){let e=new ce(this.diagonalSize);for(let[t,n,r]of this.upperRightEntries())t!==n&&e.set(t,n,r);return e}toCompact(){let{diagonalSize:e}=this,t=(e-1)*e/2,n=Array(t);for(let t=1,r=0,i=0;i<n.length;i++)n[i]=this.get(r,t),++t>=e&&(t=++r+1);return n}static fromCompact(e){let t=e.length;if(t===0)return new this(0);let n=(Math.sqrt(8*t+1)+1)/2;if(!Number.isInteger(n))throw TypeError(`This array is not a compact representation of a DistanceMatrix, ${JSON.stringify(e)}`);let r=new this(n);for(let i=1,a=0,o=0;o<t;o++)r.set(i,a,e[o]),++i>=n&&(i=++a+1);return r}}ce.prototype.klassSubType=`DistanceMatrix`;class le extends N{constructor(e,t,n){super(),this.matrix=e,this.rows=t,this.columns=n}}class ue extends le{constructor(e,t){d(e,t),super(e,e.rows,1),this.column=t}set(e,t,n){return this.matrix.set(e,this.column,n),this}get(e){return this.matrix.get(e,this.column)}}class de extends le{constructor(e,t){h(e,t),super(e,e.rows,t.length),this.columnIndices=t}set(e,t,n){return this.matrix.set(e,this.columnIndices[t],n),this}get(e,t){return this.matrix.get(e,this.columnIndices[t])}}class fe extends le{constructor(e){super(e,e.rows,e.columns)}set(e,t,n){return this.matrix.set(e,this.columns-t-1,n),this}get(e,t){return this.matrix.get(e,this.columns-t-1)}}class pe extends le{constructor(e){super(e,e.rows,e.columns)}set(e,t,n){return this.matrix.set(this.rows-e-1,t,n),this}get(e,t){return this.matrix.get(this.rows-e-1,t)}}class me extends le{constructor(e,t){u(e,t),super(e,1,e.columns),this.row=t}set(e,t,n){return this.matrix.set(this.row,t,n),this}get(e,t){return this.matrix.get(this.row,t)}}class he extends le{constructor(e,t){m(e,t),super(e,t.length,e.columns),this.rowIndices=t}set(e,t,n){return this.matrix.set(this.rowIndices[e],t,n),this}get(e,t){return this.matrix.get(this.rowIndices[e],t)}}class ge extends le{constructor(e,t,n){m(e,t),h(e,n),super(e,t.length,n.length),this.rowIndices=t,this.columnIndices=n}set(e,t,n){return this.matrix.set(this.rowIndices[e],this.columnIndices[t],n),this}get(e,t){return this.matrix.get(this.rowIndices[e],this.columnIndices[t])}}class _e extends le{constructor(e,t,n,r,i){g(e,t,n,r,i),super(e,n-t+1,i-r+1),this.startRow=t,this.startColumn=r}set(e,t,n){return this.matrix.set(this.startRow+e,this.startColumn+t,n),this}get(e,t){return this.matrix.get(this.startRow+e,this.startColumn+t)}}class ve extends le{constructor(e){super(e,e.columns,e.rows)}set(e,t,n){return this.matrix.set(t,e,n),this}get(e,t){return this.matrix.get(t,e)}}class ye extends N{constructor(e,t={}){let{rows:n=1}=t;if(e.length%n!==0)throw Error(`the data length is not divisible by the number of rows`);super(),this.rows=n,this.columns=e.length/n,this.data=e}set(e,t,n){let r=this._calculateIndex(e,t);return this.data[r]=n,this}get(e,t){let n=this._calculateIndex(e,t);return this.data[n]}_calculateIndex(e,t){return e*this.columns+t}}class be extends N{constructor(e){super(),this.data=e,this.rows=e.length,this.columns=e[0].length}set(e,t,n){return this.data[e][t]=n,this}get(e,t){return this.data[e][t]}}function xe(t,n){if(e.isAnyArray(t))return t[0]&&e.isAnyArray(t[0])?new be(t):new ye(t,n);throw Error(`the argument is not an array`)}class Se{constructor(e){e=be.checkMatrix(e);let t=e.clone(),n=t.rows,r=t.columns,i=new Float64Array(n),a=1,o,s,c,l,u,d,f,p,m;for(o=0;o<n;o++)i[o]=o;for(p=new Float64Array(n),s=0;s<r;s++){for(o=0;o<n;o++)p[o]=t.get(o,s);for(o=0;o<n;o++){for(m=Math.min(o,s),u=0,c=0;c<m;c++)u+=t.get(o,c)*p[c];p[o]-=u,t.set(o,s,p[o])}for(l=s,o=s+1;o<n;o++)Math.abs(p[o])>Math.abs(p[l])&&(l=o);if(l!==s){for(c=0;c<r;c++)d=t.get(l,c),t.set(l,c,t.get(s,c)),t.set(s,c,d);f=i[l],i[l]=i[s],i[s]=f,a=-a}if(s<n&&t.get(s,s)!==0)for(o=s+1;o<n;o++)t.set(o,s,t.get(o,s)/t.get(s,s))}this.LU=t,this.pivotVector=i,this.pivotSign=a}isSingular(){let e=this.LU,t=e.columns;for(let n=0;n<t;n++)if(e.get(n,n)===0)return!0;return!1}solve(e){e=P.checkMatrix(e);let t=this.LU;if(t.rows!==e.rows)throw Error(`Invalid matrix dimensions`);if(this.isSingular())throw Error(`LU matrix is singular`);let n=e.columns,r=e.subMatrixRow(this.pivotVector,0,n-1),i=t.columns,a,o,s;for(s=0;s<i;s++)for(a=s+1;a<i;a++)for(o=0;o<n;o++)r.set(a,o,r.get(a,o)-r.get(s,o)*t.get(a,s));for(s=i-1;s>=0;s--){for(o=0;o<n;o++)r.set(s,o,r.get(s,o)/t.get(s,s));for(a=0;a<s;a++)for(o=0;o<n;o++)r.set(a,o,r.get(a,o)-r.get(s,o)*t.get(a,s))}return r}get determinant(){let e=this.LU;if(!e.isSquare())throw Error(`Matrix must be square`);let t=this.pivotSign,n=e.columns;for(let r=0;r<n;r++)t*=e.get(r,r);return t}get lowerTriangularMatrix(){let e=this.LU,t=e.rows,n=e.columns,r=new P(t,n);for(let i=0;i<t;i++)for(let t=0;t<n;t++)i>t?r.set(i,t,e.get(i,t)):i===t?r.set(i,t,1):r.set(i,t,0);return r}get upperTriangularMatrix(){let e=this.LU,t=e.rows,n=e.columns,r=new P(t,n);for(let i=0;i<t;i++)for(let t=0;t<n;t++)i<=t?r.set(i,t,e.get(i,t)):r.set(i,t,0);return r}get pivotPermutationVector(){return Array.from(this.pivotVector)}}function Ce(e,t){let n=0;return Math.abs(e)>Math.abs(t)?(n=t/e,Math.abs(e)*Math.sqrt(1+n*n)):t===0?0:(n=e/t,Math.abs(t)*Math.sqrt(1+n*n))}class we{constructor(e){e=be.checkMatrix(e);let t=e.clone(),n=e.rows,r=e.columns,i=new Float64Array(r),a,o,s,c;for(s=0;s<r;s++){let e=0;for(a=s;a<n;a++)e=Ce(e,t.get(a,s));if(e!==0){for(t.get(s,s)<0&&(e=-e),a=s;a<n;a++)t.set(a,s,t.get(a,s)/e);for(t.set(s,s,t.get(s,s)+1),o=s+1;o<r;o++){for(c=0,a=s;a<n;a++)c+=t.get(a,s)*t.get(a,o);for(c=-c/t.get(s,s),a=s;a<n;a++)t.set(a,o,t.get(a,o)+c*t.get(a,s))}}i[s]=-e}this.QR=t,this.Rdiag=i}solve(e){e=P.checkMatrix(e);let t=this.QR,n=t.rows;if(e.rows!==n)throw Error(`Matrix row dimensions must agree`);if(!this.isFullRank())throw Error(`Matrix is rank deficient`);let r=e.columns,i=e.clone(),a=t.columns,o,s,c,l;for(c=0;c<a;c++)for(s=0;s<r;s++){for(l=0,o=c;o<n;o++)l+=t.get(o,c)*i.get(o,s);for(l=-l/t.get(c,c),o=c;o<n;o++)i.set(o,s,i.get(o,s)+l*t.get(o,c))}for(c=a-1;c>=0;c--){for(s=0;s<r;s++)i.set(c,s,i.get(c,s)/this.Rdiag[c]);for(o=0;o<c;o++)for(s=0;s<r;s++)i.set(o,s,i.get(o,s)-i.get(c,s)*t.get(o,c))}return i.subMatrix(0,a-1,0,r-1)}isFullRank(){let e=this.QR.columns;for(let t=0;t<e;t++)if(this.Rdiag[t]===0)return!1;return!0}get upperTriangularMatrix(){let e=this.QR,t=e.columns,n=new P(t,t),r,i;for(r=0;r<t;r++)for(i=0;i<t;i++)r<i?n.set(r,i,e.get(r,i)):r===i?n.set(r,i,this.Rdiag[r]):n.set(r,i,0);return n}get orthogonalMatrix(){let e=this.QR,t=e.rows,n=e.columns,r=new P(t,n),i,a,o,s;for(o=n-1;o>=0;o--){for(i=0;i<t;i++)r.set(i,o,0);for(r.set(o,o,1),a=o;a<n;a++)if(e.get(o,o)!==0){for(s=0,i=o;i<t;i++)s+=e.get(i,o)*r.get(i,a);for(s=-s/e.get(o,o),i=o;i<t;i++)r.set(i,a,r.get(i,a)+s*e.get(i,o))}}return r}}class Te{constructor(e,t={}){if(e=be.checkMatrix(e),e.isEmpty())throw Error(`Matrix must be non-empty`);let n=e.rows,r=e.columns,{computeLeftSingularVectors:i=!0,computeRightSingularVectors:a=!0,autoTranspose:o=!1}=t,s=!!i,c=!!a,l=!1,u;if(n<r)if(!o)u=e.clone(),console.warn(`Computing SVD on a matrix with more columns than rows. Consider enabling autoTranspose`);else{u=e.transpose(),n=u.rows,r=u.columns,l=!0;let t=s;s=c,c=t}else u=e.clone();let d=Math.min(n,r),f=Math.min(n+1,r),p=new Float64Array(f),m=new P(n,d),h=new P(r,r),g=new Float64Array(r),_=new Float64Array(n),v=new Float64Array(f);for(let e=0;e<f;e++)v[e]=e;let y=Math.min(n-1,r),b=Math.max(0,Math.min(r-2,n)),x=Math.max(y,b);for(let e=0;e<x;e++){if(e<y){p[e]=0;for(let t=e;t<n;t++)p[e]=Ce(p[e],u.get(t,e));if(p[e]!==0){u.get(e,e)<0&&(p[e]=-p[e]);for(let t=e;t<n;t++)u.set(t,e,u.get(t,e)/p[e]);u.set(e,e,u.get(e,e)+1)}p[e]=-p[e]}for(let t=e+1;t<r;t++){if(e<y&&p[e]!==0){let r=0;for(let i=e;i<n;i++)r+=u.get(i,e)*u.get(i,t);r=-r/u.get(e,e);for(let i=e;i<n;i++)u.set(i,t,u.get(i,t)+r*u.get(i,e))}g[t]=u.get(e,t)}if(s&&e<y)for(let t=e;t<n;t++)m.set(t,e,u.get(t,e));if(e<b){g[e]=0;for(let t=e+1;t<r;t++)g[e]=Ce(g[e],g[t]);if(g[e]!==0){g[e+1]<0&&(g[e]=0-g[e]);for(let t=e+1;t<r;t++)g[t]/=g[e];g[e+1]+=1}if(g[e]=-g[e],e+1<n&&g[e]!==0){for(let t=e+1;t<n;t++)_[t]=0;for(let t=e+1;t<n;t++)for(let n=e+1;n<r;n++)_[t]+=g[n]*u.get(t,n);for(let t=e+1;t<r;t++){let r=-g[t]/g[e+1];for(let i=e+1;i<n;i++)u.set(i,t,u.get(i,t)+r*_[i])}}if(c)for(let t=e+1;t<r;t++)h.set(t,e,g[t])}}let S=Math.min(r,n+1);if(y<r&&(p[y]=u.get(y,y)),n<S&&(p[S-1]=0),b+1<S&&(g[b]=u.get(b,S-1)),g[S-1]=0,s){for(let e=y;e<d;e++){for(let t=0;t<n;t++)m.set(t,e,0);m.set(e,e,1)}for(let e=y-1;e>=0;e--)if(p[e]!==0){for(let t=e+1;t<d;t++){let r=0;for(let i=e;i<n;i++)r+=m.get(i,e)*m.get(i,t);r=-r/m.get(e,e);for(let i=e;i<n;i++)m.set(i,t,m.get(i,t)+r*m.get(i,e))}for(let t=e;t<n;t++)m.set(t,e,-m.get(t,e));m.set(e,e,1+m.get(e,e));for(let t=0;t<e-1;t++)m.set(t,e,0)}else{for(let t=0;t<n;t++)m.set(t,e,0);m.set(e,e,1)}}if(c)for(let e=r-1;e>=0;e--){if(e<b&&g[e]!==0)for(let t=e+1;t<r;t++){let n=0;for(let i=e+1;i<r;i++)n+=h.get(i,e)*h.get(i,t);n=-n/h.get(e+1,e);for(let i=e+1;i<r;i++)h.set(i,t,h.get(i,t)+n*h.get(i,e))}for(let t=0;t<r;t++)h.set(t,e,0);h.set(e,e,1)}let C=S-1,w=2**-52;for(;S>0;){let e,t;for(e=S-2;e>=-1&&e!==-1;e--){let t=Number.MIN_VALUE+w*Math.abs(p[e]+Math.abs(p[e+1]));if(Math.abs(g[e])<=t||Number.isNaN(g[e])){g[e]=0;break}}if(e===S-2)t=4;else{let n;for(n=S-1;n>=e&&n!==e;n--){let t=(n===S?0:Math.abs(g[n]))+(n===e+1?0:Math.abs(g[n-1]));if(Math.abs(p[n])<=w*t){p[n]=0;break}}n===e?t=3:n===S-1?t=1:(t=2,e=n)}switch(e++,t){case 1:{let t=g[S-2];g[S-2]=0;for(let n=S-2;n>=e;n--){let i=Ce(p[n],t),a=p[n]/i,o=t/i;if(p[n]=i,n!==e&&(t=-o*g[n-1],g[n-1]=a*g[n-1]),c)for(let e=0;e<r;e++)i=a*h.get(e,n)+o*h.get(e,S-1),h.set(e,S-1,-o*h.get(e,n)+a*h.get(e,S-1)),h.set(e,n,i)}break}case 2:{let t=g[e-1];g[e-1]=0;for(let r=e;r<S;r++){let i=Ce(p[r],t),a=p[r]/i,o=t/i;if(p[r]=i,t=-o*g[r],g[r]=a*g[r],s)for(let t=0;t<n;t++)i=a*m.get(t,r)+o*m.get(t,e-1),m.set(t,e-1,-o*m.get(t,r)+a*m.get(t,e-1)),m.set(t,r,i)}break}case 3:{let t=Math.max(Math.abs(p[S-1]),Math.abs(p[S-2]),Math.abs(g[S-2]),Math.abs(p[e]),Math.abs(g[e])),i=p[S-1]/t,a=p[S-2]/t,o=g[S-2]/t,l=p[e]/t,u=g[e]/t,d=((a+i)*(a-i)+o*o)/2,f=i*o*(i*o),_=0;(d!==0||f!==0)&&(_=d<0?0-Math.sqrt(d*d+f):Math.sqrt(d*d+f),_=f/(d+_));let v=(l+i)*(l-i)+_,y=l*u;for(let t=e;t<S-1;t++){let i=Ce(v,y);i===0&&(i=Number.MIN_VALUE);let a=v/i,o=y/i;if(t!==e&&(g[t-1]=i),v=a*p[t]+o*g[t],g[t]=a*g[t]-o*p[t],y=o*p[t+1],p[t+1]=a*p[t+1],c)for(let e=0;e<r;e++)i=a*h.get(e,t)+o*h.get(e,t+1),h.set(e,t+1,-o*h.get(e,t)+a*h.get(e,t+1)),h.set(e,t,i);if(i=Ce(v,y),i===0&&(i=Number.MIN_VALUE),a=v/i,o=y/i,p[t]=i,v=a*g[t]+o*p[t+1],p[t+1]=-o*g[t]+a*p[t+1],y=o*g[t+1],g[t+1]=a*g[t+1],s&&t<n-1)for(let e=0;e<n;e++)i=a*m.get(e,t)+o*m.get(e,t+1),m.set(e,t+1,-o*m.get(e,t)+a*m.get(e,t+1)),m.set(e,t,i)}g[S-2]=v;break}case 4:if(p[e]<=0&&(p[e]=p[e]<0?-p[e]:0,c))for(let t=0;t<=C;t++)h.set(t,e,-h.get(t,e));for(;e<C&&!(p[e]>=p[e+1]);){let t=p[e];if(p[e]=p[e+1],p[e+1]=t,c&&e<r-1)for(let n=0;n<r;n++)t=h.get(n,e+1),h.set(n,e+1,h.get(n,e)),h.set(n,e,t);if(s&&e<n-1)for(let r=0;r<n;r++)t=m.get(r,e+1),m.set(r,e+1,m.get(r,e)),m.set(r,e,t);e++}S--;break}}if(l){let e=h;h=m,m=e}this.m=n,this.n=r,this.s=p,this.U=m,this.V=h}solve(e){let t=e,n=this.threshold,r=this.s.length,i=P.zeros(r,r);for(let e=0;e<r;e++)Math.abs(this.s[e])<=n?i.set(e,e,0):i.set(e,e,1/this.s[e]);let a=this.U,o=this.rightSingularVectors,s=o.mmul(i),c=o.rows,l=a.rows,u=P.zeros(c,l);for(let e=0;e<c;e++)for(let t=0;t<l;t++){let n=0;for(let i=0;i<r;i++)n+=s.get(e,i)*a.get(t,i);u.set(e,t,n)}return u.mmul(t)}solveForDiagonal(e){return this.solve(P.diag(e))}inverse(){let e=this.V,t=this.threshold,n=e.rows,r=e.columns,i=new P(n,this.s.length);for(let a=0;a<n;a++)for(let n=0;n<r;n++)Math.abs(this.s[n])>t&&i.set(a,n,e.get(a,n)/this.s[n]);let a=this.U,o=a.rows,s=a.columns,c=new P(n,o);for(let e=0;e<n;e++)for(let t=0;t<o;t++){let n=0;for(let r=0;r<s;r++)n+=i.get(e,r)*a.get(t,r);c.set(e,t,n)}return c}get condition(){return this.s[0]/this.s[Math.min(this.m,this.n)-1]}get norm2(){return this.s[0]}get rank(){let e=Math.max(this.m,this.n)*this.s[0]*2**-52,t=0,n=this.s;for(let r=0,i=n.length;r<i;r++)n[r]>e&&t++;return t}get diagonal(){return Array.from(this.s)}get threshold(){return 2**-52/2*Math.max(this.m,this.n)*this.s[0]}get leftSingularVectors(){return this.U}get rightSingularVectors(){return this.V}get diagonalMatrix(){return P.diag(this.s)}}function Ee(e,t=!1){return e=be.checkMatrix(e),t?new Te(e).inverse():De(e,P.eye(e.rows))}function De(e,t,n=!1){return e=be.checkMatrix(e),t=be.checkMatrix(t),n?new Te(e).solve(t):e.isSquare()?new Se(e).solve(t):new we(e).solve(t)}function Oe(e){if(e=P.checkMatrix(e),e.isSquare()){if(e.columns===0)return 1;let t,n,r,i;if(e.columns===2)return t=e.get(0,0),n=e.get(0,1),r=e.get(1,0),i=e.get(1,1),t*i-n*r;if(e.columns===3){let i,a,o;return i=new ge(e,[1,2],[1,2]),a=new ge(e,[1,2],[0,2]),o=new ge(e,[1,2],[0,1]),t=e.get(0,0),n=e.get(0,1),r=e.get(0,2),t*Oe(i)-n*Oe(a)+r*Oe(o)}else return new Se(e).determinant}else throw Error(`determinant can only be calculated for a square matrix`)}function ke(e,t){let n=[];for(let r=0;r<e;r++)r!==t&&n.push(r);return n}function Ae(e,t,n,r=1e-9,i=1e-9){if(e>i)return Array(t.rows+1).fill(0);{let e=t.addRow(n,[0]);for(let t=0;t<e.rows;t++)Math.abs(e.get(t,0))<r&&e.set(t,0,0);return e.to1DArray()}}function je(e,t={}){let{thresholdValue:n=1e-9,thresholdError:r=1e-9}=t;e=P.checkMatrix(e);let i=e.rows,a=new P(i,i);for(let t=0;t<i;t++){let o=P.columnVector(e.getRow(t)),s=e.subMatrixRow(ke(i,t)).transpose(),c=new Te(s).solve(o),l=P.sub(o,s.mmul(c)).abs().max();a.setRow(t,Ae(l,c,t,n,r))}return a}function Me(e,t=2**-52){if(e=P.checkMatrix(e),e.isEmpty())return e.transpose();let n=new Te(e,{autoTranspose:!0}),r=n.leftSingularVectors,i=n.rightSingularVectors,a=n.diagonal;for(let e=0;e<a.length;e++)Math.abs(a[e])>t?a[e]=1/a[e]:a[e]=0;return i.mmul(P.diag(a).mmul(r.transpose()))}function Ne(t,n=t,r={}){t=new P(t);let i=!1;if(typeof n==`object`&&!P.isMatrix(n)&&!e.isAnyArray(n)?(r=n,n=t,i=!0):n=new P(n),t.rows!==n.rows)throw TypeError(`Both matrices must have the same number of rows`);let{center:a=!0}=r;a&&(t=t.center(`column`),i||(n=n.center(`column`)));let o=t.transpose().mmul(n);for(let e=0;e<o.rows;e++)for(let n=0;n<o.columns;n++)o.set(e,n,o.get(e,n)*(1/(t.rows-1)));return o}function F(t,n=t,r={}){t=new P(t);let i=!1;if(typeof n==`object`&&!P.isMatrix(n)&&!e.isAnyArray(n)?(r=n,n=t,i=!0):n=new P(n),t.rows!==n.rows)throw TypeError(`Both matrices must have the same number of rows`);let{center:a=!0,scale:o=!0}=r;a&&(t.center(`column`),i||n.center(`column`)),o&&(t.scale(`column`),i||n.scale(`column`));let s=t.standardDeviation(`column`,{unbiased:!0}),c=i?s:n.standardDeviation(`column`,{unbiased:!0}),l=t.transpose().mmul(n);for(let e=0;e<l.rows;e++)for(let n=0;n<l.columns;n++)l.set(e,n,l.get(e,n)*(1/(s[e]*c[n]))*(1/(t.rows-1)));return l}class Pe{constructor(e,t={}){let{assumeSymmetric:n=!1}=t;if(e=be.checkMatrix(e),!e.isSquare())throw Error(`Matrix is not a square matrix`);if(e.isEmpty())throw Error(`Matrix must be non-empty`);let r=e.columns,i=new P(r,r),a=new Float64Array(r),o=new Float64Array(r),s=e,c,l,u=!1;if(u=n?!0:e.isSymmetric(),u){for(c=0;c<r;c++)for(l=0;l<r;l++)i.set(c,l,s.get(c,l));Fe(r,o,a,i),Ie(r,o,a,i)}else{let e=new P(r,r),t=new Float64Array(r);for(l=0;l<r;l++)for(c=0;c<r;c++)e.set(c,l,s.get(c,l));Le(r,e,t,i),Re(r,o,a,i,e)}this.n=r,this.e=o,this.d=a,this.V=i}get realEigenvalues(){return Array.from(this.d)}get imaginaryEigenvalues(){return Array.from(this.e)}get eigenvectorMatrix(){return this.V}get diagonalMatrix(){let e=this.n,t=this.e,n=this.d,r=new P(e,e),i,a;for(i=0;i<e;i++){for(a=0;a<e;a++)r.set(i,a,0);r.set(i,i,n[i]),t[i]>0?r.set(i,i+1,t[i]):t[i]<0&&r.set(i,i-1,t[i])}return r}}function Fe(e,t,n,r){let i,a,o,s,c,l,u,d;for(c=0;c<e;c++)n[c]=r.get(e-1,c);for(s=e-1;s>0;s--){for(d=0,o=0,l=0;l<s;l++)d+=Math.abs(n[l]);if(d===0)for(t[s]=n[s-1],c=0;c<s;c++)n[c]=r.get(s-1,c),r.set(s,c,0),r.set(c,s,0);else{for(l=0;l<s;l++)n[l]/=d,o+=n[l]*n[l];for(i=n[s-1],a=Math.sqrt(o),i>0&&(a=-a),t[s]=d*a,o-=i*a,n[s-1]=i-a,c=0;c<s;c++)t[c]=0;for(c=0;c<s;c++){for(i=n[c],r.set(c,s,i),a=t[c]+r.get(c,c)*i,l=c+1;l<=s-1;l++)a+=r.get(l,c)*n[l],t[l]+=r.get(l,c)*i;t[c]=a}for(i=0,c=0;c<s;c++)t[c]/=o,i+=t[c]*n[c];for(u=i/(o+o),c=0;c<s;c++)t[c]-=u*n[c];for(c=0;c<s;c++){for(i=n[c],a=t[c],l=c;l<=s-1;l++)r.set(l,c,r.get(l,c)-(i*t[l]+a*n[l]));n[c]=r.get(s-1,c),r.set(s,c,0)}}n[s]=o}for(s=0;s<e-1;s++){if(r.set(e-1,s,r.get(s,s)),r.set(s,s,1),o=n[s+1],o!==0){for(l=0;l<=s;l++)n[l]=r.get(l,s+1)/o;for(c=0;c<=s;c++){for(a=0,l=0;l<=s;l++)a+=r.get(l,s+1)*r.get(l,c);for(l=0;l<=s;l++)r.set(l,c,r.get(l,c)-a*n[l])}}for(l=0;l<=s;l++)r.set(l,s+1,0)}for(c=0;c<e;c++)n[c]=r.get(e-1,c),r.set(e-1,c,0);r.set(e-1,e-1,1),t[0]=0}function Ie(e,t,n,r){let i,a,o,s,c,l,u,d,f,p,m,h,g,_,v,y;for(o=1;o<e;o++)t[o-1]=t[o];t[e-1]=0;let b=0,x=0,S=2**-52;for(l=0;l<e;l++){for(x=Math.max(x,Math.abs(n[l])+Math.abs(t[l])),u=l;u<e&&!(Math.abs(t[u])<=S*x);)u++;if(u>l)do{for(i=n[l],d=(n[l+1]-i)/(2*t[l]),f=Ce(d,1),d<0&&(f=-f),n[l]=t[l]/(d+f),n[l+1]=t[l]*(d+f),p=n[l+1],a=i-n[l],o=l+2;o<e;o++)n[o]-=a;for(b+=a,d=n[u],m=1,h=m,g=m,_=t[l+1],v=0,y=0,o=u-1;o>=l;o--)for(g=h,h=m,y=v,i=m*t[o],a=m*d,f=Ce(d,t[o]),t[o+1]=v*f,v=t[o]/f,m=d/f,d=m*n[o]-v*i,n[o+1]=a+v*(m*i+v*n[o]),c=0;c<e;c++)a=r.get(c,o+1),r.set(c,o+1,v*r.get(c,o)+m*a),r.set(c,o,m*r.get(c,o)-v*a);d=-v*y*g*_*t[l]/p,t[l]=v*d,n[l]=m*d}while(Math.abs(t[l])>S*x);n[l]=n[l]+b,t[l]=0}for(o=0;o<e-1;o++){for(c=o,d=n[o],s=o+1;s<e;s++)n[s]<d&&(c=s,d=n[s]);if(c!==o)for(n[c]=n[o],n[o]=d,s=0;s<e;s++)d=r.get(s,o),r.set(s,o,r.get(s,c)),r.set(s,c,d)}}function Le(e,t,n,r){let i=e-1,a,o,s,c,l,u,d;for(u=1;u<=i-1;u++){for(d=0,c=u;c<=i;c++)d+=Math.abs(t.get(c,u-1));if(d!==0){for(s=0,c=i;c>=u;c--)n[c]=t.get(c,u-1)/d,s+=n[c]*n[c];for(o=Math.sqrt(s),n[u]>0&&(o=-o),s-=n[u]*o,n[u]=n[u]-o,l=u;l<e;l++){for(a=0,c=i;c>=u;c--)a+=n[c]*t.get(c,l);for(a/=s,c=u;c<=i;c++)t.set(c,l,t.get(c,l)-a*n[c])}for(c=0;c<=i;c++){for(a=0,l=i;l>=u;l--)a+=n[l]*t.get(c,l);for(a/=s,l=u;l<=i;l++)t.set(c,l,t.get(c,l)-a*n[l])}n[u]=d*n[u],t.set(u,u-1,d*o)}}for(c=0;c<e;c++)for(l=0;l<e;l++)r.set(c,l,+(c===l));for(u=i-1;u>=1;u--)if(t.get(u,u-1)!==0){for(c=u+1;c<=i;c++)n[c]=t.get(c,u-1);for(l=u;l<=i;l++){for(o=0,c=u;c<=i;c++)o+=n[c]*r.get(c,l);for(o=o/n[u]/t.get(u,u-1),c=u;c<=i;c++)r.set(c,l,r.get(c,l)+o*n[c])}}}function Re(e,t,n,r,i){let a=e-1,o=e-1,s=2**-52,c=0,l=0,u=0,d=0,f=0,p=0,m=0,h=0,g,_,v,y,b,x,S,C,w,T,E,D,O,k,A;for(g=0;g<e;g++)for((g<0||g>o)&&(n[g]=i.get(g,g),t[g]=0),_=Math.max(g-1,0);_<e;_++)l+=Math.abs(i.get(g,_));for(;a>=0;){for(y=a;y>0&&(p=Math.abs(i.get(y-1,y-1))+Math.abs(i.get(y,y)),p===0&&(p=l),!(Math.abs(i.get(y,y-1))<s*p));)y--;if(y===a)i.set(a,a,i.get(a,a)+c),n[a]=i.get(a,a),t[a]=0,a--,h=0;else if(y===a-1){if(S=i.get(a,a-1)*i.get(a-1,a),u=(i.get(a-1,a-1)-i.get(a,a))/2,d=u*u+S,m=Math.sqrt(Math.abs(d)),i.set(a,a,i.get(a,a)+c),i.set(a-1,a-1,i.get(a-1,a-1)+c),C=i.get(a,a),d>=0){for(m=u>=0?u+m:u-m,n[a-1]=C+m,n[a]=n[a-1],m!==0&&(n[a]=C-S/m),t[a-1]=0,t[a]=0,C=i.get(a,a-1),p=Math.abs(C)+Math.abs(m),u=C/p,d=m/p,f=Math.sqrt(u*u+d*d),u/=f,d/=f,_=a-1;_<e;_++)m=i.get(a-1,_),i.set(a-1,_,d*m+u*i.get(a,_)),i.set(a,_,d*i.get(a,_)-u*m);for(g=0;g<=a;g++)m=i.get(g,a-1),i.set(g,a-1,d*m+u*i.get(g,a)),i.set(g,a,d*i.get(g,a)-u*m);for(g=0;g<=o;g++)m=r.get(g,a-1),r.set(g,a-1,d*m+u*r.get(g,a)),r.set(g,a,d*r.get(g,a)-u*m)}else n[a-1]=C+u,n[a]=C+u,t[a-1]=m,t[a]=-m;a-=2,h=0}else{if(C=i.get(a,a),w=0,S=0,y<a&&(w=i.get(a-1,a-1),S=i.get(a,a-1)*i.get(a-1,a)),h===10){for(c+=C,g=0;g<=a;g++)i.set(g,g,i.get(g,g)-C);p=Math.abs(i.get(a,a-1))+Math.abs(i.get(a-1,a-2)),C=w=.75*p,S=-.4375*p*p}if(h===30&&(p=(w-C)/2,p=p*p+S,p>0)){for(p=Math.sqrt(p),w<C&&(p=-p),p=C-S/((w-C)/2+p),g=0;g<=a;g++)i.set(g,g,i.get(g,g)-p);c+=p,C=w=S=.964}for(h+=1,b=a-2;b>=y&&(m=i.get(b,b),f=C-m,p=w-m,u=(f*p-S)/i.get(b+1,b)+i.get(b,b+1),d=i.get(b+1,b+1)-m-f-p,f=i.get(b+2,b+1),p=Math.abs(u)+Math.abs(d)+Math.abs(f),u/=p,d/=p,f/=p,!(b===y||Math.abs(i.get(b,b-1))*(Math.abs(d)+Math.abs(f))<s*(Math.abs(u)*(Math.abs(i.get(b-1,b-1))+Math.abs(m)+Math.abs(i.get(b+1,b+1))))));)b--;for(g=b+2;g<=a;g++)i.set(g,g-2,0),g>b+2&&i.set(g,g-3,0);for(v=b;v<=a-1&&(k=v!==a-1,v!==b&&(u=i.get(v,v-1),d=i.get(v+1,v-1),f=k?i.get(v+2,v-1):0,C=Math.abs(u)+Math.abs(d)+Math.abs(f),C!==0&&(u/=C,d/=C,f/=C)),C!==0);v++)if(p=Math.sqrt(u*u+d*d+f*f),u<0&&(p=-p),p!==0){for(v===b?y!==b&&i.set(v,v-1,-i.get(v,v-1)):i.set(v,v-1,-p*C),u+=p,C=u/p,w=d/p,m=f/p,d/=u,f/=u,_=v;_<e;_++)u=i.get(v,_)+d*i.get(v+1,_),k&&(u+=f*i.get(v+2,_),i.set(v+2,_,i.get(v+2,_)-u*m)),i.set(v,_,i.get(v,_)-u*C),i.set(v+1,_,i.get(v+1,_)-u*w);for(g=0;g<=Math.min(a,v+3);g++)u=C*i.get(g,v)+w*i.get(g,v+1),k&&(u+=m*i.get(g,v+2),i.set(g,v+2,i.get(g,v+2)-u*f)),i.set(g,v,i.get(g,v)-u),i.set(g,v+1,i.get(g,v+1)-u*d);for(g=0;g<=o;g++)u=C*r.get(g,v)+w*r.get(g,v+1),k&&(u+=m*r.get(g,v+2),r.set(g,v+2,r.get(g,v+2)-u*f)),r.set(g,v,r.get(g,v)-u),r.set(g,v+1,r.get(g,v+1)-u*d)}}}if(l!==0){for(a=e-1;a>=0;a--)if(u=n[a],d=t[a],d===0)for(y=a,i.set(a,a,1),g=a-1;g>=0;g--){for(S=i.get(g,g)-u,f=0,_=y;_<=a;_++)f+=i.get(g,_)*i.get(_,a);if(t[g]<0)m=S,p=f;else if(y=g,t[g]===0?i.set(g,a,S===0?-f/(s*l):-f/S):(C=i.get(g,g+1),w=i.get(g+1,g),d=(n[g]-u)*(n[g]-u)+t[g]*t[g],x=(C*p-m*f)/d,i.set(g,a,x),i.set(g+1,a,Math.abs(C)>Math.abs(m)?(-f-S*x)/C:(-p-w*x)/m)),x=Math.abs(i.get(g,a)),s*x*x>1)for(_=g;_<=a;_++)i.set(_,a,i.get(_,a)/x)}else if(d<0)for(y=a-1,Math.abs(i.get(a,a-1))>Math.abs(i.get(a-1,a))?(i.set(a-1,a-1,d/i.get(a,a-1)),i.set(a-1,a,-(i.get(a,a)-u)/i.get(a,a-1))):(A=ze(0,-i.get(a-1,a),i.get(a-1,a-1)-u,d),i.set(a-1,a-1,A[0]),i.set(a-1,a,A[1])),i.set(a,a-1,0),i.set(a,a,1),g=a-2;g>=0;g--){for(T=0,E=0,_=y;_<=a;_++)T+=i.get(g,_)*i.get(_,a-1),E+=i.get(g,_)*i.get(_,a);if(S=i.get(g,g)-u,t[g]<0)m=S,f=T,p=E;else if(y=g,t[g]===0?(A=ze(-T,-E,S,d),i.set(g,a-1,A[0]),i.set(g,a,A[1])):(C=i.get(g,g+1),w=i.get(g+1,g),D=(n[g]-u)*(n[g]-u)+t[g]*t[g]-d*d,O=(n[g]-u)*2*d,D===0&&O===0&&(D=s*l*(Math.abs(S)+Math.abs(d)+Math.abs(C)+Math.abs(w)+Math.abs(m))),A=ze(C*f-m*T+d*E,C*p-m*E-d*T,D,O),i.set(g,a-1,A[0]),i.set(g,a,A[1]),Math.abs(C)>Math.abs(m)+Math.abs(d)?(i.set(g+1,a-1,(-T-S*i.get(g,a-1)+d*i.get(g,a))/C),i.set(g+1,a,(-E-S*i.get(g,a)-d*i.get(g,a-1))/C)):(A=ze(-f-w*i.get(g,a-1),-p-w*i.get(g,a),m,d),i.set(g+1,a-1,A[0]),i.set(g+1,a,A[1]))),x=Math.max(Math.abs(i.get(g,a-1)),Math.abs(i.get(g,a))),s*x*x>1)for(_=g;_<=a;_++)i.set(_,a-1,i.get(_,a-1)/x),i.set(_,a,i.get(_,a)/x)}for(g=0;g<e;g++)if(g<0||g>o)for(_=g;_<e;_++)r.set(g,_,i.get(g,_));for(_=e-1;_>=0;_--)for(g=0;g<=o;g++){for(m=0,v=0;v<=Math.min(_,o);v++)m+=r.get(g,v)*i.get(v,_);r.set(g,_,m)}}}function ze(e,t,n,r){let i,a;return Math.abs(n)>Math.abs(r)?(i=r/n,a=n+i*r,[(e+i*t)/a,(t-i*e)/a]):(i=n/r,a=r+i*n,[(i*e+t)/a,(i*t-e)/a])}class Be{constructor(e){if(e=be.checkMatrix(e),!e.isSymmetric())throw Error(`Matrix is not symmetric`);let t=e,n=t.rows,r=new P(n,n),i=!0,a,o,s;for(o=0;o<n;o++){let e=0;for(s=0;s<o;s++){let n=0;for(a=0;a<s;a++)n+=r.get(s,a)*r.get(o,a);n=(t.get(o,s)-n)/r.get(s,s),r.set(o,s,n),e+=n*n}for(e=t.get(o,o)-e,i&&=e>0,r.set(o,o,Math.sqrt(Math.max(e,0))),s=o+1;s<n;s++)r.set(o,s,0)}this.L=r,this.positiveDefinite=i}isPositiveDefinite(){return this.positiveDefinite}solve(e){e=be.checkMatrix(e);let t=this.L,n=t.rows;if(e.rows!==n)throw Error(`Matrix dimensions do not match`);if(this.isPositiveDefinite()===!1)throw Error(`Matrix is not positive definite`);let r=e.columns,i=e.clone(),a,o,s;for(s=0;s<n;s++)for(o=0;o<r;o++){for(a=0;a<s;a++)i.set(s,o,i.get(s,o)-i.get(a,o)*t.get(s,a));i.set(s,o,i.get(s,o)/t.get(s,s))}for(s=n-1;s>=0;s--)for(o=0;o<r;o++){for(a=s+1;a<n;a++)i.set(s,o,i.get(s,o)-i.get(a,o)*t.get(a,s));i.set(s,o,i.get(s,o)/t.get(s,s))}return i}get lowerTriangularMatrix(){return this.L}}class Ve{constructor(t,n={}){t=be.checkMatrix(t);let{Y:r}=n,{scaleScores:i=!1,maxIterations:a=1e3,terminationCriteria:o=1e-10}=n,s;if(r){if(r=e.isAnyArray(r)&&typeof r[0]==`number`?P.columnVector(r):be.checkMatrix(r),r.rows!==t.rows)throw Error(`Y should have the same number of rows as X`);s=r.getColumnVector(0)}else s=t.getColumnVector(0);let c=1,l,u,d,f;for(let e=0;e<a&&c>o;e++)d=t.transpose().mmul(s).div(s.transpose().mmul(s).get(0,0)),d=d.div(d.norm()),l=t.mmul(d).div(d.transpose().mmul(d).get(0,0)),e>0&&(c=l.clone().sub(f).pow(2).sum()),f=l.clone(),r?(u=r.transpose().mmul(l).div(l.transpose().mmul(l).get(0,0)),u=u.div(u.norm()),s=r.mmul(u).div(u.transpose().mmul(u).get(0,0))):s=l;if(r){let e=t.transpose().mmul(l).div(l.transpose().mmul(l).get(0,0));e=e.div(e.norm());let n=t.clone().sub(l.clone().mmul(e.transpose())),i=s.transpose().mmul(l).div(l.transpose().mmul(l).get(0,0)),a=r.clone().sub(l.clone().mulS(i.get(0,0)).mmul(u.transpose()));this.t=l,this.p=e.transpose(),this.w=d.transpose(),this.q=u,this.u=s,this.s=l.transpose().mmul(l),this.xResidual=n,this.yResidual=a,this.betas=i}else this.w=d.transpose(),this.s=l.transpose().mmul(l).sqrt(),i?this.t=l.clone().div(this.s.get(0,0)):this.t=l,this.xResidual=t.sub(l.mmul(d.transpose()))}}return QY.AbstractMatrix=N,QY.CHO=Be,QY.CholeskyDecomposition=Be,QY.DistanceMatrix=ce,QY.EVD=Pe,QY.EigenvalueDecomposition=Pe,QY.LU=Se,QY.LuDecomposition=Se,QY.Matrix=P,QY.MatrixColumnSelectionView=de,QY.MatrixColumnView=ue,QY.MatrixFlipColumnView=fe,QY.MatrixFlipRowView=pe,QY.MatrixRowSelectionView=he,QY.MatrixRowView=me,QY.MatrixSelectionView=ge,QY.MatrixSubView=_e,QY.MatrixTransposeView=ve,QY.NIPALS=Ve,QY.Nipals=Ve,QY.QR=we,QY.QrDecomposition=we,QY.SVD=Te,QY.SingularValueDecomposition=Te,QY.SymmetricMatrix=se,QY.WrapperMatrix1D=ye,QY.WrapperMatrix2D=be,QY.correlation=F,QY.covariance=Ne,QY.default=P,QY.determinant=Oe,QY.inverse=Ee,QY.linearDependencies=je,QY.pseudoInverse=Me,QY.solve=De,QY.wrap=xe,QY}var uX=lX(),dX=GM(uX),fX=uX.Matrix,pX=uX.SingularValueDecomposition;dX.Matrix?dX.Matrix:uX.Matrix;var mX=(e,t)=>{let n=e.nodeCount(),r=Array.from({length:n},()=>[]),i={},a=0;return e.forEachNode(e=>{i[e.id]=a++}),e.forEachEdge(e=>{let n=i[e.source],a=i[e.target];n==null||a==null||(r[n].push(a),t||r[a].push(n))}),r},hX=(e,t)=>{let n=e.length,r=Array(n);for(let i=0;i<n;i++){let n=e[i],a=n.length,o=Array(a);for(let e=0;e<a;e++)o[e]=n[e]*t;r[i]=o}return r};function gX(e){let t=e.length;Array(t).fill(0);let n=Array.from({length:t},()=>Array(t).fill(1/0));for(let r=0;r<t;r++)n[r]=_X(e,r);return n}function _X(e,t){let n=e.length,r=Array(n).fill(1/0);r[t]=0;let i=new vX;for(i.push([0,t]);!i.empty();){let[t,n]=i.pop();if(t!==r[n])continue;let a=e[n];for(let e=0;e<a.length;e++){let n=a[e],o=t+1;o<r[n]&&(r[n]=o,i.push([o,n]))}}return r}var vX=class{constructor(){this.data=[]}push(e){this.data.push(e),this.bubbleUp(this.data.length-1)}pop(){let e=this.data[0],t=this.data.pop();return this.data.length>0&&(this.data[0]=t,this.bubbleDown(0)),e}empty(){return this.data.length===0}bubbleUp(e){let t=this.data;for(;e>0;){let n=e-1>>1;if(t[n][0]<=t[e][0])break;[t[n],t[e]]=[t[e],t[n]],e=n}}bubbleDown(e){let t=this.data,n=t.length;for(;;){let r=e*2+1,i=e*2+2,a=e;if(r<n&&t[r][0]<t[a][0]&&(a=r),i<n&&t[i][0]<t[a][0]&&(a=i),a===e)break;[t[e],t[a]]=[t[a],t[e]],e=a}}},yX={center:[0,0],linkDistance:50},bX=class extends $E{constructor(){super(...arguments),this.id=`mds`}getDefaultOptions(){return yX}layout(){return IT(this,void 0,void 0,function*(){let{linkDistance:e=yX.linkDistance}=this.options,{center:t}=Hk(this.options),n=this.model.nodeCount();if(n===0||n===1){Ik(this.model,t);return}let r=gX(mX(this.model,!1));xX(r);let i=SX(hX(r,e)),a=0;this.model.forEachNode(e=>{let n=i[a++];e.x=n[0]+t[0],e.y=n[1]+t[1]})})}},xX=e=>{let t=-1/0,n=[],r=e.length;for(let i=0;i<r;i++){let r=e[i],a=r.length;for(let e=0;e<a;e++){let a=r[e];a===1/0?n.push([i,e]):t<a&&(t=a)}}for(let r=0;r<n.length;r++){let[i,a]=n[r];e[i][a]=t}},SX=(e,t=2,n=yX.linkDistance)=>{try{let n=e.length,r=new fX(n,n);for(let t=0;t<n;t++)for(let i=0;i<n;i++){let n=e[t][i];r.set(t,i,-.5*n*n)}let i=r.mean(`row`),a=r.mean(`column`),o=r.mean();r.add(o).subRowVector(i).subColumnVector(a);let s=new pX(r),c=fX.sqrt(s.diagonalMatrix).diagonal(),l=s.leftSingularVectors,u=c,d=[];for(let e=0;e<l.rows;e++){let n=[];for(let r=0;r<t;r++)n.push(l.get(e,r)*u[r]);d.push(n)}return d}catch{let t=[];for(let r=0;r<e.length;r++){let e=Math.random()*n,r=Math.random()*n;t.push([e,r])}return t}},CX=800,wX={maxIteration:10,width:10,speed:100,gravity:10,k:5},TX=(e,t)=>{let{maxIteration:n,width:r,k:i,speed:a=wX.speed,strictRadial:o,focusNode:s,radiiMap:c,nodeSizeFunc:l}=Object.assign(Object.assign({},wX),t),u=i*.002,d=new Map,f=r/10;for(let t=0;t<n&&(e.forEachNode(e=>{d.set(e.id,{x:0,y:0})}),EX(e,d,i,c,l),!(DX(e,d,a,o,s,f,c)<u));t++);},EX=(e,t,n,r,i)=>{let a=0;e.forEachNode(o=>{let s=0;e.forEachNode(e=>{if(s<=a){s++;return}if(o.id===e.id||r.get(o.id)!==r.get(e.id))return;let c=o.x-e.x,l=o.y-e.y,u=Math.sqrt(c*c+l*l);if(u===0){u=1;let e=a>s?1:-1;c=.01*e,l=.01*e}let d=Math.max(...i(o._original)),f=Math.max(...i(e._original));if(u<f/2+d/2){let r=n*n/u,i=t.get(o.id),a=t.get(e.id),s=c/u*r,d=l/u*r;t.set(o.id,{x:i.x+s,y:i.y+d}),t.set(e.id,{x:a.x-s,y:a.y-d})}s++}),a++})},DX=(e,t,n,r,i,a,o)=>{r&&e.forEachNode(e=>{let n=e.x-i.x,r=e.y-i.y,a=Math.sqrt(n*n+r*r),o=r/a,s=-n/a,c=t.get(e.id),l=Math.sqrt(c.x*c.x+c.y*c.y),u=Math.acos((o*c.x+s*c.y)/l);u>Math.PI/2&&(u-=Math.PI/2,o*=-1,s*=-1);let d=Math.cos(u)*l;t.set(e.id,{x:o*d,y:s*d})});let s=0,c=0;return e.forEachNode(e=>{if(e.id===i.id)return;let l=t.get(e.id),u=Math.sqrt(l.x*l.x+l.y*l.y);if(u>0){let t=Math.min(n/CX*a,u);if(e.x+=l.x/u*t,e.y+=l.y/u*t,r){let t=e.x-i.x,n=e.y-i.y,r=Math.sqrt(t*t+n*n);t=t/r*o.get(e.id),n=n/r*o.get(e.id),e.x=i.x+t,e.y=i.y+n}s+=t,c++}}),c>0?s/c:0},OX={focusNode:null,linkDistance:50,maxIteration:1e3,maxPreventOverlapIteration:200,preventOverlap:!1,sortStrength:10,strictRadial:!0,unitRadius:null,nodeSize:10,nodeSpacing:0},kX=class extends $E{constructor(){super(...arguments),this.id=`radial`}getDefaultOptions(){return OX}layout(){return IT(this,void 0,void 0,function*(){let{width:e,height:t,center:n}=Hk(this.options),r=this.model.nodeCount();if(!r||r===1)return Ik(this.model,n);let{focusNode:i,linkDistance:a=OX.linkDistance,maxIteration:o=OX.maxIteration,maxPreventOverlapIteration:s=OX.maxPreventOverlapIteration,nodeSize:c,nodeSpacing:l,preventOverlap:u,sortBy:d,sortStrength:f=OX.sortStrength,strictRadial:p,unitRadius:m}=this.options,h=i&&this.model.node(i)||this.model.firstNode(),g=this.model.nodeIndexOf(h.id),_=gX(mX(this.model,!1));MX(_,g,NX(_,g)+1);let v=_[g],y=(e-n[0]>n[0]?n[0]:e-n[0])||e/2,b=(t-n[1]>n[1]?n[1]:t-n[1])||t/2,x=Math.min(y,b),S=Math.max(...v),C=[],w=new Map,T=m??x/S;v.forEach((e,t)=>{let n=e*T;C.push(n),w.set(this.model.nodeAt(t).id,n)});let E=AX(this.model,_,a,C,T,d,f),D=SX(E,2,a),O=D[g],k=0;if(this.model.forEachNode(e=>{let t=D[k];e.x=t[0]-O[0],e.y=t[1]-O[1],k++}),this.run(o,E,C,g),this.model.forEachNode(e=>{e.x+=n[0],e.y+=n[1]}),u){let t={nodeSizeFunc:hE(c,l,OX.nodeSize,OX.nodeSpacing),radiiMap:w,width:e,strictRadial:!!p,focusNode:h,maxIteration:s,k:r/4.5};TX(this.model,t)}})}run(e,t,n,r){let i=jX(t),a=this.model.nodeCount(),o=this.model.nodes(),s=new Float64Array(a),c=new Float64Array(a);for(let e=0;e<a;e++)s[e]=o[e].x,c[e]=o[e].y;for(let l=0;l<=e;l++){let u=l/e,d=1-u;for(let e=0;e<a;e++){if(e===r)continue;let l=s[e],f=c[e],p=Math.sqrt(l*l+f*f),m=p===0?0:1/p,h=0,g=0,_=0;for(let n=0;n<a;n++){if(e===n)continue;let r=s[n],a=c[n],o=Math.sqrt((l-r)*(l-r)+(f-a)*(f-a)),u=o===0?0:1/o,d=t[n][e];_+=i[e][n],h+=i[e][n]*(r+d*(l-r)*u),g+=i[e][n]*(a+d*(f-a)*u)}let v=n[e]===0?0:1/n[e];_*=d,_+=u*v*v,h*=d,h+=u*v*l*m,g*=d,g+=u*v*f*m,s[e]=h/_,c[e]=g/_,o[e].x=s[e],o[e].y=c[e]}}}},AX=(e,t,n,r,i,a,o)=>{let s=t.length,c=Array(s),l=Array(s);for(let e=0;e<s;e++)l[e]=r[e]/i;let u=(n+i)/2,d=new Map,f=!a||a===`data`?null:fE(a,[`node`]),p=a===`data`;for(let i=0;i<s;i++){let a=t[i],m=Array(s);c[i]=m;let h=l[i]||1;for(let t=0;t<s;t++){if(i===t){m[t]=0;continue}let s=a[t];if(r[i]===r[t])if(p)m[t]=s*Math.abs(i-t)*o/h;else if(f){let n=e.nodeAt(i),r=e.nodeAt(t),a=d.get(n.id);if(a===void 0){let e=f(n._original)||0;a=typeof e==`string`?e.charCodeAt(0):Number(e||0),d.set(n.id,a)}let c=d.get(r.id);if(c===void 0){let e=f(r._original)||0;c=typeof e==`string`?e.charCodeAt(0):Number(e||0),d.set(r.id,c)}m[t]=s*Math.abs(a-c)*o/h}else m[t]=s*n/h;else m[t]=s*u}}return c},jX=e=>{let t=e.length,n=e[0].length,r=[];for(let i=0;i<t;i++){let t=[];for(let r=0;r<n;r++)e[i][r]===0?t.push(0):t.push(1/(e[i][r]*e[i][r]));r.push(t)}return r},MX=(e,t,n)=>{let r=e.length;for(let i=0;i<r;i++)if(e[t][i]===1/0){e[t][i]=n,e[i][t]=n;for(let a=0;a<r;a++)e[i][a]!==1/0&&e[t][a]===1/0&&(e[t][a]=n+e[i][a],e[a][t]=n+e[i][a])}for(let n=0;n<r;n++)if(n!==t){for(let i=0;i<r;i++)if(e[n][i]===1/0){let r=Math.abs(e[t][n]-e[t][i]);r=r===0?1:r,e[n][i]=r}}},NX=(e,t)=>{let n=e[t],r=0;for(let e=0;e<n.length;e++)n[e]!==1/0&&(r=Math.max(r,n[e]));return r},PX=class extends $E{constructor(){super(...arguments),this.id=`random`}getDefaultOptions(){return{center:[0,0],width:300,height:300}}layout(){return IT(this,void 0,void 0,function*(){let{width:e,height:t,center:n}=Hk(this.options);this.model.forEachNode(r=>{r.x=IX(e)+n[0],r.y=IX(t)+n[1]})})}},FX=.9,IX=e=>(Math.random()-.5)*FX*e,LX={"antv-dagre":Pk,"d3-force-3d":UM,"d3-force":Sj,"force-atlas2":zY,circular:Wk,concentric:Kk,dagre:oY,force:NY,fruchterman:UY,grid:GY,mds:bX,radial:kX,random:PX},RX={layout:e=>e?{type:`concentric`,preventOverlap:!0}:{type:`force`,preventOverlap:!0},nodeSize:20,nodeSpacing:0,comboPadding:10,comboSpacing:0},zX=`root`,BX=class extends $E{constructor(){super(...arguments),this.id=`combo-combined`,this.relativePositions=new Map,this.getParentId=e=>e.parentId||zX}getDefaultOptions(){return RX}layout(){return IT(this,void 0,void 0,function*(){let{center:e}=Hk(this.options);this.resetLayoutState();let t=this.buildHierarchyTree();yield this.layoutHierarchy(t),this.convertToGlobalPositions(t,e),this.applyPositionsToModel(t)})}isCombo(e){return!!e.isCombo}resetLayoutState(){this.relativePositions.clear()}layoutHierarchy(e){return IT(this,void 0,void 0,function*(){for(let t of e.children||[])this.isCombo(t)&&(yield this.layoutHierarchy(t));let t=e.children||[];if(t.length===0){e.size=[0,0,0],e.parentId=e.id===zX?null:e.parentId;return}let n=this.getLayoutConfig(e),{type:r}=n,i=FT(n,[`type`]),a=new(this.getLayoutClass(r))(i);yield VX(a,this.createTemporaryGraphData(t),{});let o=a.model.nodes();this.recordRelativePositions(o,e);let{center:s,width:c,height:l}=this.calculateComboBounds(e);e.size=[c,l,0],(e.children||[]).forEach(e=>{let t=this.relativePositions.get(e.id);if(!t)return;let n=Object.assign(Object.assign({},t),{x:t.x-s[0],y:t.y-s[1]});this.relativePositions.set(e.id,n)})})}recordRelativePositions(e,t){let n=this.calculateComboCenter(e);e.forEach(e=>{this.relativePositions.set(e.id,{x:e.x-n[0],y:e.y-n[1],relativeTo:String(t.id)})})}buildHierarchyTree(){let e={id:zX,isCombo:!0,children:[],parentId:null},t=new Map;return t.set(zX,e),this.model.forEachNode(e=>{if(this.isCombo(e)){let n=Object.assign(Object.assign({},e),{children:[],parentId:this.getParentId(e)});t.set(String(e.id),n)}}),this.model.forEachNode(e=>{let n=t.get(this.getParentId(e));if(this.isCombo(e)){let r=t.get(String(e.id));n&&r&&(n.children.push(r),r.parentId=n.id)}else n&&n.children.push(Object.assign(Object.assign({},e),{children:[],parentId:this.getParentId(e)}))}),e}convertToGlobalPositions(e,t){let n=e.id===zX?null:this.relativePositions.get(e.id),r=t[0]+(n?.x??0),i=t[1]+(n?.y??0);e.x=r,e.y=i,(e.children||[]).forEach(e=>{let t=this.relativePositions.get(e.id);e.x=r+(t?.x??0),e.y=i+(t?.y??0),e.size=this.getNodeLikeSize(e,!1),this.isCombo(e)&&this.convertToGlobalPositions(e,[r,i])})}getLayoutConfig(e){let t=typeof this.options.layout==`object`?this.options.layout:fE(this.options.layout,[`comboId`]);if(typeof t==`function`){let n=e.id===zX?null:e.id;return this.normalizeLayoutConfig(t(n))}return this.normalizeLayoutConfig(t)}normalizeLayoutConfig(e){let t=Object.assign(Object.assign({type:`concentric`},Hk(this.options)),{nodeSize:`node.size`,nodeSpacing:0});return e?typeof e==`string`?Object.assign(Object.assign({},t),{type:e}):Object.assign(Object.assign({},t),e):t}getLayoutClass(e){return LX[e]||LX.concentric}createTemporaryGraphData(e){let t=e.map(e=>Object.assign(Object.assign({},e),{size:this.getNodeLikeSize(e)})),n=new Set(e.map(e=>String(e.id))),r=[],i=e=>{let t=String(e),r=new Set;for(;t&&!r.has(t);){if(n.has(t))return t;r.add(t);let e=this.model.node(t)?.parentId;t=e==null?null:String(e)}return null};return this.model.forEachEdge(e=>{let t=i(String(e.source)),n=i(String(e.target));!t||!n||t!==n&&r.push({source:t,target:n})}),{nodes:t,edges:r}}calculateComboCenter(e){if(e.length===0)return[0,0];let t=new Map;e.forEach(e=>{let n=this.getNodeLikeSize(e);t.set(e.id,n)});let n=1/0,r=1/0,i=-1/0,a=-1/0;return e.forEach(e=>{let[o=0,s=0]=t.get(e.id);n=Math.min(n,e.x-o/2),r=Math.min(r,e.y-s/2),i=Math.max(i,e.x+o/2),a=Math.max(a,e.y+s/2)}),!Number.isFinite(n)||!Number.isFinite(r)?[0,0]:[(n+i)/2,(r+a)/2]}calculateComboBounds(e){let t=e.children||[];if(t.length===0)return{center:[0,0],width:0,height:0};let n=1/0,r=1/0,i=-1/0,a=-1/0;if(t.forEach(e=>{let t=this.relativePositions.get(e.id),o=t?.x??0,s=t?.y??0,[c,l]=this.getNodeLikeSize(e);n=Math.min(n,o-c/2),r=Math.min(r,s-l/2),i=Math.max(i,o+c/2),a=Math.max(a,s+l/2)}),!Number.isFinite(n)||!Number.isFinite(r))return{center:[0,0],width:0,height:0};let o=pE(this.options.comboPadding,20,`combo`)(e._original);return{center:[(n+i)/2,(r+a)/2],width:i-n+o*2,height:a-r+o*2}}getNodeLikeSize(e,t=!0){return this.isCombo(e)?this.getComboSize(e,t):this.getNodeSize(e,t)}getNodeSize(e,t=!0){let{nodeSize:n,nodeSpacing:r}=this.options;return hE(n,t?r:0)(e._original)}getComboSize(e,t=!0){let n=pE(this.options.comboSpacing,0,`combo`),r=t?n(e._original):0,[i,a]=e.size;return[i+r/2,a+r/2,0]}applyPositionsToModel(e){let t=e=>{let t=this.model.node(e.id);t&&(t.x=e.x,t.y=e.y,e.size&&(t.size=e.size))},n=e=>{e.id!==zX&&t(e),(e.children||[]).forEach(e=>{this.isCombo(e)?n(e):t(e)})};n(e)}};function VX(e,t,n={}){return IT(this,void 0,void 0,function*(){return tD(e)?(e.execute(t,n),e.stop(),e.tick(n.iterations??300)):yield e.execute(t,n)})}var HX=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},UX=class e extends ww{constructor(){super(...arguments),this.id=`fishbone`}getRoot(){let e=this.context.model.getRootsData();if(!(ga(e)||e.length>2))return e[0]}formatSize(e){let t=typeof e==`function`?e:()=>e;return e=>sb(t(e))}doLayout(e,t){let{hGap:n,getRibSep:r,vGap:i,nodeSize:a,height:o}=t,{model:s}=this.context,c=this.formatSize(a),l=c(e)[0]+r(e),u=(e,t=0)=>{var r;return t+=n*((e.children||[]).length+1),(r=e.children)==null||r.forEach(e=>{var n;(n=s.getNodeLikeDatum(e).children)==null||n.forEach(e=>{t=u(s.getNodeLikeDatum(e),t)})}),t},d=e=>{if(e.depth===1)return l;let t=s.getParentData(e.id,`tree`);if(KX(e)){let r=s.getParentData(t.id,`tree`),a=m(e)-m(r);return d(t)+a*n/i}else{let n=(t.children||[]).indexOf(e.id),r=s.getNodeData((t.children||[]).slice(n));return f(t)-r.reduce((e,t)=>e+u(t),0)-c(t)[0]/2}},f=ua(e=>{if(GX(e))return c(e)[0]/2;let t=s.getParentData(e.id,`tree`);if(KX(e))return d(e)+u(e)+c(e)[0]/2;{let r=m(e)-m(t),a=n/i;return d(e)+r*a}},e=>e.id),p=e=>m(s.getParentData(e,`tree`)),m=ua(e=>{if(GX(e))return o/2;if(KX(e)){let t=s.getParentData(e.id,`tree`),n=t.children.indexOf(e.id);if(n===0)return p(t.id)+i;let r=s.getNodeLikeDatum(t.children[n-1]);if(ga(r.children))return m(r)+i;let a=s.getDescendantsData(r.id);return Math.max(...a.map(e=>KX(e)?p(e.id):m(e)))+i}else{if(ga(e.children))return p(e.id)+i;let t=s.getNodeLikeDatum(e.children.slice(-1)[0]);if(ga(t.children))return m(t)+i;let n=s.getDescendantsData(e.id).slice(-1)[0];return(KX(n)?p(n.id):m(n))+i}},e=>e.id),h=0,g={nodes:[],edges:[]},_=e=>{var t;(t=e.children)==null||t.forEach(e=>_(s.getNodeLikeDatum(e)));let n=m(e),i=f(e);if(g.nodes.push({id:e.id,x:i,y:n}),GX(e))return;let a=s.getRelatedEdgesData(e.id,`in`)[0],o=[d(e),KX(e)?n:p(e.id)];g.edges.push({id:Q(a),controlPoints:[o],relatedNodeId:e.id}),h=Math.max(h,i+r(e)),e.depth===1&&(l=h)};return _(e),g}placeAlterative(e,t){let n=(t.children||[]).filter((e,t)=>t%2!=0);if(n.length===0)return e;let{model:r}=this.context,i=e.nodes.find(e=>e.id===t.id).y,a=e=>{let t=r.getAncestorsData(e,`tree`);if(ga(t))return!1;let i=t.length===1?e:t[t.length-2].id;return n.includes(i)};e.nodes.forEach(e=>{a(e.id)&&(e.y=2*i-e.y)}),e.edges.forEach(e=>{a(e.relatedNodeId)&&(e.controlPoints=e.controlPoints.map(e=>[e[0],2*i-e[1]]))})}rightToLeft(e,t){return e.nodes.forEach(e=>e.x=t.width-e.x),e.edges.forEach(e=>{e.controlPoints=e.controlPoints.map(e=>[t.width-e[0],e[1]])}),e}execute(t,n){return HX(this,void 0,void 0,function*(){let r=Object.assign(Object.assign(Object.assign({},e.defaultOptions),this.options),n),{direction:i,nodeSize:a}=r,o=this.getRoot();if(!o)return t;let s=this.formatSize(a);r.vGap||=Math.max(...(t.nodes||[]).map(e=>s(e)[1])),r.hGap||=Math.max(...(t.nodes||[]).map(e=>s(e)[0]));let c=this.doLayout(o,r);this.placeAlterative(c,o),i===`RL`&&(c=this.rightToLeft(c,r));let{model:l}=this.context,u=[],d=[];return c.nodes.forEach(e=>{let{id:t,x:n,y:r}=e,i=l.getNodeLikeDatum(t);u.push(WX(i,{x:n,y:r}))}),c.edges.forEach(e=>{let{id:t,controlPoints:n}=e,r=l.getEdgeDatum(t);d.push(WX(r,{controlPoints:n}))}),{nodes:u,edges:d}})}};UX.defaultOptions={direction:`RL`,getRibSep:()=>60};var WX=(e,t)=>Object.assign(Object.assign({},e),{style:Object.assign(Object.assign({},e.style||{}),t)}),GX=e=>e.depth===0,KX=e=>(e.depth||=0)%2==0,qX=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},JX=class e extends ww{constructor(){super(...arguments),this.id=`snake`}formatSize(e,t){let n=typeof t==`function`?t:(()=>t);return e.reduce((e,t)=>{let[r,i]=sb(n(t))||[0,0];return[Math.max(e[0],r),Math.max(e[1],i)]},[0,0])}validate(e){let{nodes:t=[],edges:n=[]}=e,r={},i={},a={};t.forEach(e=>{r[e.id]=0,i[e.id]=0,a[e.id]=[]}),n.forEach(e=>{r[e.target]++,i[e.source]++,a[e.source].push(e.target)});let o=new Set,s=e=>{o.has(e)||(o.add(e),a[e].forEach(s))};if(s(t[0].id),o.size!==t.length)return!1;let c=t.filter(e=>r[e.id]===0),l=t.filter(e=>i[e.id]===0);return!(c.length!==1||l.length!==1||t.filter(e=>r[e.id]===1&&i[e.id]===1).length!==t.length-2)}execute(t,n){return qX(this,void 0,void 0,function*(){if(!this.validate(t))return t;let{nodeSize:r,padding:i,sortBy:a,cols:o,colGap:s,rowGap:c,clockwise:l,width:u,height:d}=Object.assign({},e.defaultOptions,this.options,n),[f,p,m,h]=M_(i),g=this.formatSize(t.nodes||[],r),_=Math.ceil((t.nodes||[]).length/o),v=s||(u-h-p-o*g[0])/(o-1),y=c||(d-f-m-_*g[1])/(_-1);return(y===1/0||y<0)&&(y=0),(v===1/0||v<0)&&(v=0),{nodes:((a?t.nodes?.sort(a):YX(t))||[]).map((e,t)=>{let n=Math.floor(t/o),r=t%o,i=h+(l?n%2==0?r:o-1-r:n%2==0?o-1-r:r)*(g[0]+v)+g[0]/2,a=f+n*(g[1]+y)+g[1]/2;return{id:e.id,style:{x:i,y:a}}})}})}};JX.defaultOptions={padding:0,cols:5,clockwise:!0};function YX(e){let{nodes:t=[],edges:n=[]}=e,r={},i={};t.forEach(e=>{r[e.id]=0,i[e.id]=[]}),n.forEach(e=>{r[e.target]++,i[e.source].push(e.target)});let a=[],o=[];for(t.forEach(e=>{r[e.id]===0&&a.push(e.id)});a.length>0;){let e=a.shift(),n=t.find(t=>t.id===e);o.push(n),i[e].forEach(e=>{r[e]--,r[e]===0&&a.push(e)})}return o}var XX=[`rgb(158, 1, 66)`,`rgb(213, 62, 79)`,`rgb(244, 109, 67)`,`rgb(253, 174, 97)`,`rgb(254, 224, 139)`,`rgb(255, 255, 191)`,`rgb(230, 245, 152)`,`rgb(171, 221, 164)`,`rgb(102, 194, 165)`,`rgb(50, 136, 189)`,`rgb(94, 79, 162)`],ZX=[`rgb(78, 121, 167)`,`rgb(242, 142, 44)`,`rgb(225, 87, 89)`,`rgb(118, 183, 178)`,`rgb(89, 161, 79)`,`rgb(237, 201, 73)`,`rgb(175, 122, 161)`,`rgb(255, 157, 167)`,`rgb(156, 117, 95)`,`rgb(186, 176, 171)`],QX=[`rgb(255, 245, 235)`,`rgb(254, 230, 206)`,`rgb(253, 208, 162)`,`rgb(253, 174, 107)`,`rgb(253, 141, 60)`,`rgb(241, 105, 19)`,`rgb(217, 72, 1)`,`rgb(166, 54, 3)`,`rgb(127, 39, 4)`],$X=[`rgb(247, 252, 245)`,`rgb(229, 245, 224)`,`rgb(199, 233, 192)`,`rgb(161, 217, 155)`,`rgb(116, 196, 118)`,`rgb(65, 171, 93)`,`rgb(35, 139, 69)`,`rgb(0, 109, 44)`,`rgb(0, 68, 27)`],eZ=[`rgb(247, 251, 255)`,`rgb(222, 235, 247)`,`rgb(198, 219, 239)`,`rgb(158, 202, 225)`,`rgb(107, 174, 214)`,`rgb(66, 146, 198)`,`rgb(33, 113, 181)`,`rgb(8, 81, 156)`,`rgb(8, 48, 107)`],tZ=class extends Uv{};function nZ(e,t=!0,n){let r=document.createElement(`div`);return r.setAttribute(`class`,`g6-${e}`),Object.assign(r.style,{position:`absolute`,display:`block`}),t&&Object.assign(r.style,{position:`unset`,gridArea:`1 / 1 / 2 / 2`,inset:`0px`,height:`100%`,width:`100%`,overflow:`hidden`,pointerEvents:`none`}),n&&Object.assign(r.style,n),r}function rZ(e,t=`div`,n={},r=``,i=document.body){let a=document.getElementById(e);a&&a.remove();let o=document.createElement(t);return o.innerHTML=r,o.id=e,Object.assign(o.style,n),i.appendChild(o),o}var iZ=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},aZ=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.$element=nZ(`background`),this.context.canvas.getContainer().prepend(this.$element),this.update(n)}update(e){let t=Object.create(null,{update:{get:()=>super.update}});return iZ(this,void 0,void 0,function*(){t.update.call(this,e),Object.assign(this.$element.style,Sa(this.options,[`key`,`type`]))})}destroy(){super.destroy(),this.$element.remove()}};aZ.defaultOptions={transition:`background 0.5s`,backgroundSize:`cover`,zIndex:`-1`};function oZ(e,t,n,r,i,a){let o=e,s=t,c=n-o,l=r-s,u=i-o,d=a-s,f=u*c+d*l,p=0;f<=0?p=0:(u=c-u,d=l-d,f=u*c+d*l,p=f<=0?0:f*f/(c*c+l*l));let m=u*u+d*d-p;return m<0?0:m}function sZ(e,t,n,r){return(e-n)*(e-n)+(t-r)*(t-r)}function cZ(e,t,n,r,i){return sZ(e,t,n,r)<i*i}function lZ(e){if(!Number.isFinite(e))return e=>e;if(e===0)return Math.round;let t=10**e;return e=>Math.round(e*t)/t}function uZ(e){let t=Math.min(e.x1,e.x2),n=Math.max(e.x1,e.x2),r=Math.min(e.y1,e.y2),i=Math.max(e.y1,e.y2);return{x:t,y:r,x2:n,y2:i,width:n-t,height:i-r}}var dZ=class e{constructor(e,t,n,r){this.x1=e,this.y1=t,this.x2=n,this.y2=r}equals(e){return this.x1===e.x1&&this.y1===e.y1&&this.x2===e.x2&&this.y2===e.y2}draw(e){e.moveTo(this.x1,this.y1),e.lineTo(this.x2,this.y2)}toString(){return`Line(from=(${this.x1},${this.y1}),to=(${this.x2},${this.y2}))`}static from(t){return new e(t.x1,t.y1,t.x2,t.y2)}cuts(e,t){return this.y1===this.y2||t<this.y1&&t<=this.y2||t>this.y1&&t>=this.y2||e>this.x1&&e>=this.x2?!1:e<this.x1&&e<=this.x2?!0:e<=this.x1+(t-this.y1)*(this.x2-this.x1)/(this.y2-this.y1)}distSquare(e,t){return oZ(this.x1,this.y1,this.x2,this.y2,e,t)}ptClose(e,t,n){if(this.x1<this.x2){if(e<this.x1-n||e>this.x2+n)return!1}else if(e<this.x2-n||e>this.x1+n)return!1;if(this.y1<this.y2){if(t<this.y1-n||t>this.y2+n)return!1}else if(t<this.y2-n||t>this.y1+n)return!1;return!0}},fZ;(function(e){e[e.POINT=1]=`POINT`,e[e.PARALLEL=2]=`PARALLEL`,e[e.COINCIDENT=3]=`COINCIDENT`,e[e.NONE=4]=`NONE`})(fZ||={});var pZ=class{constructor(e,t=0,n=0){this.state=e,this.x=t,this.y=n}};function mZ(e,t){let n=(t.x2-t.x1)*(e.y1-t.y1)-(t.y2-t.y1)*(e.x1-t.x1),r=(e.x2-e.x1)*(e.y1-t.y1)-(e.y2-e.y1)*(e.x1-t.x1),i=(t.y2-t.y1)*(e.x2-e.x1)-(t.x2-t.x1)*(e.y2-e.y1);if(i){let t=n/i,a=r/i;return 0<=t&&t<=1&&0<=a&&a<=1?new pZ(fZ.POINT,e.x1+t*(e.x2-e.x1),e.y1+t*(e.y2-e.y1)):new pZ(fZ.NONE)}return new pZ(n===0||r===0?fZ.COINCIDENT:fZ.PARALLEL)}function hZ(e,t){let n=(t.x2-t.x1)*(e.y1-t.y1)-(t.y2-t.y1)*(e.x1-t.x1),r=(e.x2-e.x1)*(e.y1-t.y1)-(e.y2-e.y1)*(e.x1-t.x1),i=(t.y2-t.y1)*(e.x2-e.x1)-(t.x2-t.x1)*(e.y2-e.y1);if(i){let e=n/i,t=r/i;if(0<=e&&e<=1&&0<=t&&t<=1)return e}return 1/0}function gZ(e,t){function n(e,n,r,i){let a=hZ(t,new dZ(e,n,r,i));return a=Math.abs(a-.5),+(a>=0&&a<=1)}let r=n(e.x,e.y,e.x2,e.y);return r+=n(e.x,e.y,e.x,e.y2),r>1||(r+=n(e.x,e.y2,e.x2,e.y2),r>1)?!0:(r+=n(e.x2,e.y,e.x2,e.y2),r>0)}var _Z;(function(e){e[e.LEFT=0]=`LEFT`,e[e.TOP=1]=`TOP`,e[e.RIGHT=2]=`RIGHT`,e[e.BOTTOM=3]=`BOTTOM`})(_Z||={});function vZ(e,t,n){let r=new Set;return e.width<=0?(r.add(_Z.LEFT),r.add(_Z.RIGHT)):t<e.x?r.add(_Z.LEFT):t>e.x+e.width&&r.add(_Z.RIGHT),e.height<=0?(r.add(_Z.TOP),r.add(_Z.BOTTOM)):n<e.y?r.add(_Z.TOP):n>e.y+e.height&&r.add(_Z.BOTTOM),r}function yZ(e,t){let n=t.x1,r=t.y1,i=t.x2,a=t.y2,o=Array.from(vZ(e,i,a));if(o.length===0)return!0;let s=vZ(e,n,r);for(;s.size!==0;){for(let e of o)if(s.has(e))return!1;if(s.has(_Z.RIGHT)||s.has(_Z.LEFT)){let t=e.x;s.has(_Z.RIGHT)&&(t+=e.width),r+=(t-n)*(a-r)/(i-n),n=t}else{let t=e.y;s.has(_Z.BOTTOM)&&(t+=e.height),n+=(t-r)*(i-n)/(a-r),r=t}s=vZ(e,n,r)}return!0}function bZ(e,t){let n=1/0,r=0;function i(e,i,a,o){let s=hZ(t,new dZ(e,i,a,o));s=Math.abs(s-.5),s>=0&&s<=1&&(r++,s<n&&(n=s))}return i(e.x,e.y,e.x2,e.y),i(e.x,e.y,e.x,e.y2),r>1||(i(e.x,e.y2,e.x2,e.y2),r>1)?n:(i(e.x2,e.y,e.x2,e.y2),r===0?-1:n)}function xZ(e,t){let n=0,r=mZ(e,new dZ(t.x,t.y,t.x2,t.y));n+=+(r.state===fZ.POINT);let i=mZ(e,new dZ(t.x,t.y,t.x,t.y2));n+=+(i.state===fZ.POINT);let a=mZ(e,new dZ(t.x,t.y2,t.x2,t.y2));n+=+(a.state===fZ.POINT);let o=mZ(e,new dZ(t.x2,t.y,t.x2,t.y2));return n+=+(o.state===fZ.POINT),{top:r,left:i,bottom:a,right:o,count:n}}var SZ=class e{constructor(e,t,n,r){this.x=e,this.y=t,this.width=n,this.height=r}get x2(){return this.x+this.width}get y2(){return this.y+this.height}get cx(){return this.x+this.width/2}get cy(){return this.y+this.height/2}get radius(){return Math.max(this.width,this.height)/2}static from(t){return new e(t.x,t.y,t.width,t.height)}equals(e){return this.x===e.x&&this.y===e.y&&this.width===e.width&&this.height===e.height}clone(){return new e(this.x,this.y,this.width,this.height)}add(e){let t=Math.min(this.x,e.x),n=Math.min(this.y,e.y),r=Math.max(this.x2,e.x+e.width),i=Math.max(this.y2,e.y+e.height);this.x=t,this.y=n,this.width=r-t,this.height=i-n}addPoint(e){let t=Math.min(this.x,e.x),n=Math.min(this.y,e.y),r=Math.max(this.x2,e.x),i=Math.max(this.y2,e.y);this.x=t,this.y=n,this.width=r-t,this.height=i-n}toString(){return`Rectangle[x=${this.x}, y=${this.y}, w=${this.width}, h=${this.height}]`}draw(e){e.rect(this.x,this.y,this.width,this.height)}containsPt(e,t){return e>=this.x&&e<=this.x2&&t>=this.y&&t<=this.y2}get area(){return this.width*this.height}intersects(e){return this.area<=0||e.width<=0||e.height<=0?!1:e.x+e.width>this.x&&e.y+e.height>this.y&&e.x<this.x2&&e.y<this.y2}distSquare(e,t){if(this.containsPt(e,t))return 0;let n=vZ(this,e,t);return n.has(_Z.TOP)?n.has(_Z.LEFT)?sZ(e,t,this.x,this.y):n.has(_Z.RIGHT)?sZ(e,t,this.x2,this.y):(this.y-t)*(this.y-t):n.has(_Z.BOTTOM)?n.has(_Z.LEFT)?sZ(e,t,this.x,this.y2):n.has(_Z.RIGHT)?sZ(e,t,this.x2,this.y2):(t-this.y2)*(t-this.y2):n.has(_Z.LEFT)?(this.x-e)*(this.x-e):n.has(_Z.RIGHT)?(e-this.x2)*(e-this.x2):0}};function CZ(e){if(e.length===0)return null;let t=e[0],n=new SZ(t.x,t.y,0,0);for(let t of e)n.addPoint(t);return n}var wZ=class e{constructor(e,t,n){this.cx=e,this.cy=t,this.radius=n}get x(){return this.cx-this.radius}get x2(){return this.cx+this.radius}get width(){return this.radius*2}get y(){return this.cy-this.radius}get y2(){return this.cy+this.radius}get height(){return this.radius*2}static from(t){return new e(t.cx,t.cy,t.radius)}containsPt(e,t){return sZ(this.cx,this.cy,e,t)<this.radius*this.radius}distSquare(e,t){let n=sZ(this.cx,this.cy,e,t);if(n<this.radius*this.radius)return 0;let r=Math.sqrt(n)-this.radius;return r*r}draw(e){e.ellipse(this.cx,this.cy,this.radius,this.radius,0,0,Math.PI*2)}},TZ=class e{constructor(e,t=0,n=0,r=0,i=0,a=10,o=10,s=new Float32Array(Math.max(0,a*o)).fill(0)){this.pixelGroup=e,this.i=t,this.j=n,this.pixelX=r,this.pixelY=i,this.width=a,this.height=o,this.area=s}createSub(t,n){return new e(this.pixelGroup,t.x,t.y,n.x,n.y,t.width,t.height)}static fromPixelRegion(t,n){return new e(n,0,0,t.x,t.y,Math.ceil(t.width/n),Math.ceil(t.height/n))}copy(t,n){return new e(this.pixelGroup,this.scaleX(n.x),this.scaleY(n.y),n.x,n.y,t.width,t.height,t.area)}boundX(e){return e<this.i?this.i:e>=this.width?this.width-1:e}boundY(e){return e<this.j?this.j:e>=this.height?this.height-1:e}scaleX(e){return this.boundX(Math.floor((e-this.pixelX)/this.pixelGroup))}scaleY(e){return this.boundY(Math.floor((e-this.pixelY)/this.pixelGroup))}scale(e){let t=this.scaleX(e.x),n=this.scaleY(e.y),r=this.boundX(Math.ceil((e.x+e.width-this.pixelX)/this.pixelGroup)),i=this.boundY(Math.ceil((e.y+e.height-this.pixelY)/this.pixelGroup));return new SZ(t,n,r-t,i-n)}invertScaleX(e){return Math.round(e*this.pixelGroup+this.pixelX)}invertScaleY(e){return Math.round(e*this.pixelGroup+this.pixelY)}addPadding(e,t){let n=Math.ceil(t/this.pixelGroup),r=this.boundX(e.x-n),i=this.boundY(e.y-n),a=this.boundX(e.x2+n),o=this.boundY(e.y2+n);return new SZ(r,i,a-r,o-i)}get(e,t){return e<0||t<0||e>=this.width||t>=this.height?NaN:this.area[e+t*this.width]}inc(e,t,n){e<0||t<0||e>=this.width||t>=this.height||(this.area[e+t*this.width]+=n)}set(e,t,n){e<0||t<0||e>=this.width||t>=this.height||(this.area[e+t*this.width]=n)}incArea(e,t){if(e.width<=0||e.height<=0||t===0)return;let n=this.width,r=e.width,i=Math.max(0,e.i),a=Math.max(0,e.j),o=Math.min(e.i+e.width,n),s=Math.min(e.j+e.height,this.height);if(!(s<=0||o<=0||i>=n||s>=this.height))for(let c=a;c<s;c++){let a=(c-e.j)*r,s=c*n;for(let n=i;n<o;n++){let r=e.area[n-e.i+a];r!==0&&(this.area[n+s]+=t*r)}}}fill(e){this.area.fill(e)}fillArea(e,t){let n=e.x+e.y*this.width;for(let r=0;r<e.height;r++){let i=n+r*this.width;this.area.fill(t,i,i+e.width)}}fillHorizontalLine(e,t,n,r){let i=e+t*this.width;this.area.fill(r,i,i+n)}fillVerticalLine(e,t,n,r){let i=e+t*this.width;for(let e=0;e<n;e++)this.area[i+e*this.width]=r}clear(){this.area.fill(0)}toString(){let e=``;for(let t=0;t<this.height;t++){let n=t*this.width;for(let t=0;t<this.width;t++){let r=this.area[n+t];e+=r.toFixed(1).padStart(6),e+=` `}e+=`
|
|
20
|
+
`}return e}draw(e,t=!0){if(this.width<=0||this.height<=0)return;e.save(),t&&e.translate(this.pixelX,this.pixelY);let n=this.area.reduce((e,t)=>Math.min(e,t),1/0),r=this.area.reduce((e,t)=>Math.max(e,t),-1/0),i=e=>(e-n)/(r-n);e.scale(this.pixelGroup,this.pixelGroup);for(let t=0;t<this.width;t++)for(let n=0;n<this.height;n++){let r=this.area[t+n*this.width];e.fillStyle=`rgba(0, 0, 0, ${i(r)})`,e.fillRect(t,n,1,1)}e.restore()}drawThreshold(e,t,n=!0){if(!(this.width<=0||this.height<=0)){e.save(),n&&e.translate(this.pixelX,this.pixelY),e.scale(this.pixelGroup,this.pixelGroup);for(let n=0;n<this.width;n++)for(let r=0;r<this.height;r++)e.fillStyle=this.area[n+r*this.width]>t?`black`:`white`,e.fillRect(n,r,1,1);e.restore()}}};function EZ(e,t){let n=e=>({x:e.x-t,y:e.y-t,width:e.width+2*t,height:e.height+2*t});return Array.isArray(e)?e.map(n):n(e)}function DZ(e,t,n){return OZ(Object.assign(uZ(e),{distSquare:(t,n)=>oZ(e.x1,e.y1,e.x2,e.y2,t,n)}),t,n)}function OZ(e,t,n){let r=EZ(e,n),i=t.scale(r),a=t.createSub(i,r);return kZ(a,t,n,(t,n)=>e.distSquare(t,n)),a}function kZ(e,t,n,r){let i=n*n;for(let a=0;a<e.height;a++)for(let o=0;o<e.width;o++){let s=r(t.invertScaleX(e.i+o),t.invertScaleY(e.j+a));if(s===0){e.set(o,a,i);continue}if(s<i){let t=n-Math.sqrt(s);e.set(o,a,t*t)}}return e}function AZ(e,t,n){let r=t.scale(e),i=t.addPadding(r,n),a=t.createSub(i,{x:e.x-n,y:e.y-n}),o=r.x-i.x,s=r.y-i.y,c=i.x2-r.x2,l=i.y2-r.y2,u=i.width-o-c,d=i.height-s-l,f=n*n;a.fillArea({x:o,y:s,width:u+1,height:d+1},f);let p=[0],m=Math.max(s,o,c,l);{let i=t.invertScaleX(r.x+r.width/2);for(let a=1;a<m;a++){let o=t.invertScaleY(r.y-a),s=e.distSquare(i,o);if(s<f){let e=n-Math.sqrt(s);p.push(e*e)}else break}}let h=[],g=Math.max(o,c),_=Math.max(s,c);for(let i=1;i<g;i++){let a=t.invertScaleX(r.x-i),o=[];for(let i=1;i<_;i++){let s=t.invertScaleY(r.y-i),c=e.distSquare(a,s);if(c<f){let e=n-Math.sqrt(c);o.push(e*e)}else o.push(0)}h.push(o)}for(let e=1;e<Math.min(s,p.length);e++){let t=p[e];a.fillHorizontalLine(o,s-e,u+1,t)}for(let e=1;e<Math.min(l,p.length);e++){let t=p[e];a.fillHorizontalLine(o,s+d+e,u+1,t)}for(let e=1;e<Math.min(o,p.length);e++){let t=p[e];a.fillVerticalLine(o-e,s,d+1,t)}for(let e=1;e<Math.min(l,p.length);e++){let t=p[e];a.fillVerticalLine(o+u+e,s,d+1,t)}for(let e=1;e<o;e++){let t=h[e-1],n=o-e;for(let e=1;e<s;e++)a.set(n,s-e,t[e-1]);for(let e=1;e<l;e++)a.set(n,s+d+e,t[e-1])}for(let e=1;e<c;e++){let t=h[e-1],n=o+u+e;for(let e=1;e<s;e++)a.set(n,s-e,t[e-1]);for(let e=1;e<l;e++)a.set(n,s+d+e,t[e-1])}return a}function jZ(e,t){return{x:e,y:t}}function MZ(e,t,n,r){if(e.length===0)return[];let i=LZ(e);return i.map((e,a)=>NZ(t,e,i.slice(0,a),n,r)).flat()}function NZ(e,t,n,r,i){let a=jZ(t.cx,t.cy),o=IZ(a,n,e);return o==null?[]:FZ(PZ(new dZ(a.x,a.y,o.cx,o.cy),e,r,i),e)}function PZ(e,t,n,r){let i=[],a=[];a.push(e);let o=!0;for(let e=0;e<n&&o;e++)for(o=!1;!o&&a.length>0;){let e=a.pop(),n=BZ(t,e),s=n?xZ(e,n):null;if(!n||!s||s.count!==2){o||i.push(e);continue}let c=r,l=HZ(n,c,s,!0),u=zZ(l,a)||zZ(l,i),d=RZ(l,t);for(;!u&&d&&c>=1;)c/=1.5,l=HZ(n,c,s,!0),u=zZ(l,a)||zZ(l,i),d=RZ(l,t);if(l&&!u&&!d&&(a.push(new dZ(e.x1,e.y1,l.x,l.y)),a.push(new dZ(l.x,l.y,e.x2,e.y2)),o=!0),o)continue;c=r,l=HZ(n,c,s,!1);let f=zZ(l,a)||zZ(l,i);for(d=RZ(l,t);!f&&d&&c>=1;)c/=1.5,l=HZ(n,c,s,!1),f=zZ(l,a)||zZ(l,i),d=RZ(l,t);l&&!f&&(a.push(new dZ(e.x1,e.y1,l.x,l.y)),a.push(new dZ(l.x,l.y,e.x2,e.y2)),o=!0),o||i.push(e)}for(;a.length>0;)i.push(a.pop());return i}function FZ(e,t){let n=[];for(;e.length>0;){let r=e.pop();if(e.length===0){n.push(r);break}let i=e.pop(),a=new dZ(r.x1,r.y1,i.x2,i.y2);BZ(t,a)?(n.push(r),e.push(i)):e.push(a)}return n}function IZ(e,t,n){let r=1/0;return t.reduce((t,i)=>{let a=sZ(e.x,e.y,i.cx,i.cy);if(a>r)return t;let o=VZ(n,new dZ(e.x,e.y,i.cx,i.cy));return a*(o+1)*(o+1)<r&&(t=i,r=a*(o+1)*(o+1)),t},null)}function LZ(e){if(e.length<2)return e;let t=0,n=0;return e.forEach(e=>{t+=e.cx,n+=e.cy}),t/=e.length,n/=e.length,e.map(e=>{let r=t-e.cx,i=n-e.cy;return[e,r*r+i*i]}).sort((e,t)=>e[1]-t[1]).map(e=>e[0])}function RZ(e,t){return t.some(t=>t.containsPt(e.x,e.y))}function zZ(e,t){return t.some(t=>!!(cZ(t.x1,t.y1,e.x,e.y,.001)||cZ(t.x2,t.y2,e.x,e.y,.001)))}function BZ(e,t){let n=1/0,r=null;for(let i of e){if(!yZ(i,t))continue;let e=bZ(i,t);e>=0&&e<n&&(r=i,n=e)}return r}function VZ(e,t){return e.reduce((e,n)=>yZ(n,t)&&gZ(n,t)?e+1:e,0)}function HZ(e,t,n,r){let i=n.top,a=n.left,o=n.bottom,s=n.right;if(r){if(a.state===fZ.POINT){if(i.state===fZ.POINT)return jZ(e.x-t,e.y-t);if(o.state===fZ.POINT)return jZ(e.x-t,e.y2+t);let n=e.width*e.height;return e.width*((a.y-e.y+(s.y-e.y))*.5)<n*.5?a.y>s.y?jZ(e.x-t,e.y-t):jZ(e.x2+t,e.y-t):a.y<s.y?jZ(e.x-t,e.y2+t):jZ(e.x2+t,e.y2+t)}if(s.state===fZ.POINT){if(i.state===fZ.POINT)return jZ(e.x2+t,e.y-t);if(o.state===fZ.POINT)return jZ(e.x2+t,e.y2+t)}let n=e.height*e.width;return e.height*((i.x-e.x+(s.x-e.x))*.5)<n*.5?i.x>o.x?jZ(e.x-t,e.y-t):jZ(e.x-t,e.y2+t):i.x<o.x?jZ(e.x2+t,e.y-t):jZ(e.x2+t,e.y2+t)}if(a.state===fZ.POINT){if(i.state===fZ.POINT)return jZ(e.x2+t,e.y2+t);if(o.state===fZ.POINT)return jZ(e.x2+t,e.y-t);let n=e.height*e.width;return e.width*((a.y-e.y+(s.y-e.y))*.5)<n*.5?a.y>s.y?jZ(e.x2+t,e.y2+t):jZ(e.x-t,e.y2+t):a.y<s.y?jZ(e.x2+t,e.y-t):jZ(e.x-t,e.y-t)}if(s.state===fZ.POINT){if(i.state===fZ.POINT)return jZ(e.x-t,e.y2+t);if(o.state===fZ.POINT)return jZ(e.x-t,e.y-t)}let c=e.height*e.width;return e.height*((i.x-e.x+(s.x-e.x))*.5)<c*.5?i.x>o.x?jZ(e.x2+t,e.y2+t):jZ(e.x2+t,e.y-t):i.x<o.x?jZ(e.x-t,e.y2+t):jZ(e.x-t,e.y-t)}function UZ(e,t,n,r){if(!(e.closed?n<e.length:n<e.length-1))return!1;let i=e.get(t),a=e.get(n+1);for(let o=t+1;o<=n;o++){let t=e.get(o);if(oZ(i.x,i.y,a.x,a.y,t.x,t.y)>r)return!1}return!0}function WZ(e=0){return t=>{if(e<0||t.length<3)return t;let n=[],r=0,i=e*e;for(;r<t.length;){let e=r+1;for(;UZ(t,r,e,i);)e++;n.push(t.get(r)),r=e}return new JZ(n)}}function GZ(e,t){switch(e){case-2:return(((-t+3)*t-3)*t+1)/6;case-1:return((3*t-6)*t*t+4)/6;case 0:return(((-3*t+3)*t+3)*t+1)/6;case 1:return t*t*t/6;default:throw Error(`unknown error`)}}function KZ(e=6){function t(e,t,n){let r=0,i=0;for(let a=-2;a<=1;a++){let o=e.get(t+a),s=GZ(a,n);r+=s*o.x,i+=s*o.y}return{x:r,y:i}}return n=>{if(n.length<3)return n;let r=[],i=n.closed,a=n.length+3-1+(i?0:2);r.push(t(n,2-(i?0:2),0));for(let o=2-(i?0:2);o<a;o++)for(let i=1;i<=e;i++)r.push(t(n,o,i/e));return new JZ(r)}}function qZ(e=8){return t=>{let n=e,r=t.length;if(n>1)for(r=Math.floor(t.length/n);r<3&&n>1;)--n,r=Math.floor(t.length/n);let i=[];for(let e=0,a=0;a<r;a++,e+=n)i.push(t.get(e));return new JZ(i)}}var JZ=class{constructor(e=[],t=!0){this.points=e,this.closed=t}get(e){let t=e,n=this.points.length;return e<0?this.closed?this.get(e+n):this.points[0]:e>=n?this.closed?this.get(e-n):this.points[n-1]:this.points[t]}get length(){return this.points.length}toString(e=1/0){let t=this.points;if(t.length===0)return``;let n=typeof e==`function`?e:lZ(e),r=`M`;for(let e of t)r+=`${n(e.x)},${n(e.y)} L`;return r=r.slice(0,-1),this.closed&&(r+=` Z`),r}draw(e){let t=this.points;if(t.length!==0){e.beginPath(),e.moveTo(t[0].x,t[0].y);for(let n of t)e.lineTo(n.x,n.y);this.closed&&e.closePath()}}sample(e){return qZ(e)(this)}simplify(e){return WZ(e)(this)}bSplines(e){return KZ(e)(this)}apply(e){return e(this)}containsElements(e){let t=CZ(this.points);return t?e.every(e=>t.containsPt(e.cx,e.cy)&&this.withinArea(e.cx,e.cy)):!1}withinArea(e,t){if(this.length===0)return!1;let n=0,r=this.points[0],i=new dZ(r.x,r.y,r.x,r.y);for(let r=1;r<this.points.length;r++){let a=this.points[r];i.x1=i.x2,i.y1=i.y2,i.x2=a.x,i.y2=a.y,i.cuts(e,t)&&n++}return i.x1=i.x2,i.y1=i.y2,i.x2=r.x,i.y2=r.y,i.cuts(e,t)&&n++,n%2==1}},YZ=class{constructor(e=0){this.count=0,this.arr=[],this.set=new Set,this.arr.length=e}add(e){this.set.add(`${e.x}x${e.y}`),this.arr[this.count++]=e}contains(e){return this.set.has(`${e.x}x${e.y}`)}isFirst(e){if(this.count===0)return!1;let t=this.arr[0];return t!=null&&t.x===e.x&&t.y===e.y}path(){return new JZ(this.arr.slice(0,this.count))}clear(){this.set.clear(),this.count=0}get(e){return this.arr[e]}get length(){return this.count}},XZ=0,ZZ=1,QZ=2,$Z=3;function eQ(e,t){let n=new YZ((Math.floor(e.width)+Math.floor(e.height))*2);function r(n,r,i,a){let o=e.get(n,r);return Number.isNaN(o)?NaN:o>t?i+a:i}function i(e,t){let n=XZ;return n=r(e,t,n,1),n=r(e+1,t,n,2),n=r(e,t+1,n,4),n=r(e+1,t+1,n,8),Number.isNaN(n)?-1:n}let a=ZZ;function o(t,r){let o=t,s=r,c=e.invertScaleX(o),l=e.invertScaleY(s);for(let t=0;t<e.width*e.height;t++){let t={x:c,y:l};if(n.contains(t)){if(n.isFirst(t))return!0}else n.add(t);let r=i(o,s);switch(r){case-1:return!0;case 0:case 3:case 2:case 7:a=QZ;break;case 12:case 14:case 4:a=$Z;break;case 6:a=a===XZ?$Z:QZ;break;case 1:case 13:case 5:a=XZ;break;case 9:a=a===QZ?XZ:ZZ;break;case 10:case 8:case 11:a=ZZ;break;default:return console.warn(`Marching squares invalid state: `+r),!0}switch(a){case XZ:s--,l-=e.pixelGroup;break;case ZZ:s++,l+=e.pixelGroup;break;case $Z:o--,c-=e.pixelGroup;break;case QZ:o++,c+=e.pixelGroup;break;default:return console.warn(`Marching squares invalid state: `+r),!0}}return!0}for(let r=0;r<e.width;r++)for(let a=0;a<e.height;a++){if(e.get(r,a)<=t)continue;let s=i(r,a);if(!(s<0||s===15)&&o(r,a))return n.path()}return null}var tQ={maxRoutingIterations:100,maxMarchingIterations:20,pixelGroup:4,edgeR0:10,edgeR1:20,nodeR0:15,nodeR1:50,morphBuffer:10,threshold:1,memberInfluenceFactor:1,edgeInfluenceFactor:1,nonMemberInfluenceFactor:-.8,virtualEdges:!0};function nQ(e){return e!=null&&typeof e.radius==`number`}function rQ(e,t){if(nQ(e)!==nQ(t))return!1;if(nQ(e)){let n=t;return e.cx===n.cx&&e.cy===n.cy&&e.radius===n.radius}let n=t;return e.x===n.x&&e.y===n.y&&e.width===n.width&&e.height===n.height}var iQ;(function(e){e[e.MEMBERS=0]=`MEMBERS`,e[e.NON_MEMBERS=1]=`NON_MEMBERS`,e[e.EDGES=2]=`EDGES`})(iQ||={});var aQ=class{constructor(e={}){this.dirty=new Set,this.members=[],this.nonMembers=[],this.virtualEdges=[],this.edges=[],this.activeRegion=new SZ(0,0,0,0),this.potentialArea=new TZ(1,0,0,0,0,0,0),this.o=Object.assign({},tQ,e)}pushMember(...e){if(e.length!==0){this.dirty.add(iQ.MEMBERS);for(let t of e)this.members.push({raw:t,obj:nQ(t)?wZ.from(t):SZ.from(t),area:null})}}removeMember(e){let t=this.members.findIndex(t=>rQ(t.raw,e));return t<0?!1:(this.members.splice(t,1),this.dirty.add(iQ.MEMBERS),!0)}removeNonMember(e){let t=this.nonMembers.findIndex(t=>rQ(t.raw,e));return t<0?!1:(this.nonMembers.splice(t,1),this.dirty.add(iQ.NON_MEMBERS),!0)}removeEdge(e){let t=this.edges.findIndex(t=>t.obj.equals(e));return t<0?!1:(this.edges.splice(t,1),this.dirty.add(iQ.NON_MEMBERS),!0)}pushNonMember(...e){if(e.length!==0){this.dirty.add(iQ.NON_MEMBERS);for(let t of e)this.nonMembers.push({raw:t,obj:nQ(t)?wZ.from(t):SZ.from(t),area:null})}}pushEdge(...e){if(e.length!==0){this.dirty.add(iQ.EDGES);for(let t of e)this.edges.push({raw:t,obj:dZ.from(t),area:null})}}update(){let e=this.dirty.has(iQ.MEMBERS),t=this.dirty.has(iQ.NON_MEMBERS),n=this.dirty.has(iQ.EDGES);this.dirty.clear();let r=this.members.map(e=>e.obj);if(this.o.virtualEdges&&(e||t)){let e=MZ(r,this.nonMembers.map(e=>e.obj),this.o.maxRoutingIterations,this.o.morphBuffer),t=new Map(this.virtualEdges.map(e=>[e.obj.toString(),e.area]));this.virtualEdges=e.map(e=>({raw:e,obj:e,area:t.get(e.toString())??null})),n=!0}let i=!1;if(e||n){let e=sQ(r,this.virtualEdges.concat(this.edges).map(e=>e.obj)),t=Math.max(this.o.edgeR1,this.o.nodeR1)+this.o.morphBuffer,n=SZ.from(EZ(e,t));n.equals(this.activeRegion)||(i=!0,this.activeRegion=n)}if(i){let e=Math.ceil(this.activeRegion.width/this.o.pixelGroup),t=Math.ceil(this.activeRegion.height/this.o.pixelGroup);this.activeRegion.x!==this.potentialArea.pixelX||this.activeRegion.y!==this.potentialArea.pixelY?(this.potentialArea=TZ.fromPixelRegion(this.activeRegion,this.o.pixelGroup),this.members.forEach(e=>e.area=null),this.nonMembers.forEach(e=>e.area=null),this.edges.forEach(e=>e.area=null),this.virtualEdges.forEach(e=>e.area=null)):(e!==this.potentialArea.width||t!==this.potentialArea.height)&&(this.potentialArea=TZ.fromPixelRegion(this.activeRegion,this.o.pixelGroup))}let a=new Map,o=e=>{if(e.area){let t=`${e.obj.width}x${e.obj.height}x${e.obj instanceof SZ?`R`:`C`}`;a.set(t,e.area)}},s=e=>{if(e.area)return;let t=`${e.obj.width}x${e.obj.height}x${e.obj instanceof SZ?`R`:`C`}`;if(a.has(t)){let n=a.get(t);e.area=this.potentialArea.copy(n,{x:e.obj.x-this.o.nodeR1,y:e.obj.y-this.o.nodeR1});return}let n=e.obj instanceof SZ?AZ(e.obj,this.potentialArea,this.o.nodeR1):OZ(e.obj,this.potentialArea,this.o.nodeR1);e.area=n,a.set(t,n)};this.members.forEach(o),this.nonMembers.forEach(o),this.members.forEach(s),this.nonMembers.forEach(e=>{this.activeRegion.intersects(e.obj)?s(e):e.area=null}),this.edges.forEach(e=>{e.area||=DZ(e.obj,this.potentialArea,this.o.edgeR1)}),this.virtualEdges.forEach(e=>{e.area||=DZ(e.obj,this.potentialArea,this.o.edgeR1)})}drawMembers(e){for(let t of this.members)t.obj.draw(e)}drawNonMembers(e){for(let t of this.nonMembers)t.obj.draw(e)}drawEdges(e){for(let t of this.edges)t.obj.draw(e)}drawPotentialArea(e,t=!0){this.potentialArea.draw(e,t)}compute(){if(this.members.length===0)return new JZ([]);this.dirty.size>0&&this.update();let{o:e,potentialArea:t}=this,n=this.members.map(e=>e.area),r=this.virtualEdges.concat(this.edges).map(e=>e.area),i=this.nonMembers.filter(e=>e.area!=null).map(e=>e.area),a=this.members.map(e=>e.obj);return oQ(t,n,r,i,e=>e.containsElements(a),e)}};function oQ(e,t,n,r,i,a={}){let o=Object.assign({},tQ,a),s=o.threshold,c=o.memberInfluenceFactor,l=o.edgeInfluenceFactor,u=o.nonMemberInfluenceFactor,d=(o.nodeR0-o.nodeR1)*(o.nodeR0-o.nodeR1),f=(o.edgeR0-o.edgeR1)*(o.edgeR0-o.edgeR1);for(let a=0;a<o.maxMarchingIterations;a++){if(e.clear(),c!==0){let n=c/d;for(let r of t)e.incArea(r,n)}if(l!==0){let t=l/f;for(let r of n)e.incArea(r,t)}if(u!==0){let t=u/d;for(let n of r)e.incArea(n,t)}let p=eQ(e,s);if(p&&i(p))return p;if(s*=.95,a<=o.maxMarchingIterations*.5)c*=1.2,l*=1.2;else if(u!==0&&r.length>0)u*=.8;else break}return new JZ([])}function sQ(e,t){if(e.length===0)return new SZ(0,0,0,0);let n=SZ.from(e[0]);for(let t of e)n.add(t);for(let e of t)n.add(uZ(e));return n}var cQ=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},lQ=class e extends tZ{constructor(t,n){super(t,ma({},e.defaultOptions,n)),this.path=null,this.members=new Map,this.avoidMembers=new Map,this.bubbleSetOptions={},this.drawBubbleSets=()=>{let{style:e,bubbleSetOptions:t}=this.parseOptions();_a(this.bubbleSetOptions,t)||this.init(),this.bubbleSetOptions=Object.assign({},t);let n=Object.assign(Object.assign({},e),{d:this.getPath()});this.shape?this.shape.update(n):(this.shape=new Mb({style:n}),this.context.canvas.appendChild(this.shape))},this.updateBubbleSetsPath=e=>{if(!this.shape)return;let t=Q(e.data);[...this.options.members,...this.options.avoidMembers].includes(t)&&this.shape.update(Object.assign(Object.assign({},this.parseOptions().style),{d:this.getPath(t)}))},this.getPath=e=>{let{graph:t}=this.context,n=this.options.members,r=[...this.members.keys()],i=this.options.avoidMembers,a=[...this.avoidMembers.keys()];if(n.length===0&&i.length===0)return this.members.clear(),this.avoidMembers.clear(),this.path=[],this.path;if(!e&&this.path&&_a(n,r)&&_a(i,a))return this.path;let{enter:o=[],exit:s=[]}=zv(r,n,e=>e),{enter:c=[],exit:l=[]}=zv(a,i,e=>e);if(e){let t=n.includes(e),r=i.includes(e);t&&(s.push(e),o.push(e)),r&&(l.push(e),c.push(e))}let u=(e,n,r)=>{e.forEach(e=>{let i=r?this.members:this.avoidMembers,a=r?`pushMember`:`pushNonMember`,o=r?`removeMember`:`removeNonMember`;if(n){let n;t.getElementType(e)===`edge`?([n]=dQ(t,e),this.bubbleSets.pushEdge(n)):([n]=uQ(t,e),this.bubbleSets[a](n)),i.set(e,n)}else{let n=i.get(e);n&&(t.getElementType(e)===`edge`?this.bubbleSets.removeEdge(n):this.bubbleSets[o](n),i.delete(e))}})};return u(s,!1,!0),u(o,!0,!0),u(l,!1,!1),u(c,!0,!1),this.path=kb(this.bubbleSets.compute().sample(8).simplify(0).bSplines().simplify(0).points.map(vy)),this.path},this.bindEvents(),this.bubbleSets=new aQ(this.options)}bindEvents(){this.context.graph.on(Z.AFTER_RENDER,this.drawBubbleSets),this.context.graph.on(Z.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath)}init(){this.bubbleSets=new aQ(this.options),this.members.clear(),this.avoidMembers.clear(),this.path=null}parseOptions(){let e=this.options,{type:t,key:n,members:r,avoidMembers:i}=e,a=cQ(e,[`type`,`key`,`members`,`avoidMembers`]),o=Object.keys(a).reduce((e,t)=>(t in tQ?e.bubbleSetOptions[t]=a[t]:e.style[t]=a[t],e),{style:{},bubbleSetOptions:{}});return Object.assign({type:t,key:n,members:r,avoidMembers:i},o)}addMember(e){let t=Array.isArray(e)?e:[e];t.some(e=>this.options.avoidMembers.includes(e))&&(this.options.avoidMembers=this.options.avoidMembers.filter(e=>!t.includes(e))),this.options.members=[...new Set([...this.options.members,...t])],this.drawBubbleSets()}removeMember(e){let t=Array.isArray(e)?e:[e];this.options.members=this.options.members.filter(e=>!t.includes(e)),this.drawBubbleSets()}updateMember(e){this.options.members=B(e)?e(this.options.members):e,this.drawBubbleSets()}getMember(){return this.options.members}addAvoidMember(e){let t=Array.isArray(e)?e:[e];t.some(e=>this.options.members.includes(e))&&(this.options.members=this.options.members.filter(e=>!t.includes(e))),this.options.avoidMembers=[...new Set([...this.options.avoidMembers,...t])],this.drawBubbleSets()}removeAvoidMember(e){let t=Array.isArray(e)?e:[e];this.options.avoidMembers.some(e=>t.includes(e))&&(this.options.avoidMembers=this.options.avoidMembers.filter(e=>!t.includes(e)),this.drawBubbleSets())}updateAvoidMember(e){this.options.avoidMembers=Array.isArray(e)?e:[e],this.drawBubbleSets()}getAvoidMember(){return this.options.avoidMembers}destroy(){this.context.graph.off(Z.AFTER_RENDER,this.drawBubbleSets),this.context.graph.off(Z.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath),this.shape&&=(this.shape.destroy(),void 0),super.destroy()}};lQ.defaultOptions=Object.assign({members:[],avoidMembers:[],fill:`lightblue`,fillOpacity:.2,stroke:`blue`,strokeOpacity:.2},tQ);var uQ=(e,t)=>(Array.isArray(t)?t:[t]).map(t=>{let n=e.getElementRenderBounds(t);return new SZ(n.min[0],n.min[1],P_(n),F_(n))}),dQ=(e,t)=>(Array.isArray(t)?t:[t]).map(t=>{let n=e.getEdgeData(t),r=e.getElementPosition(n.source),i=e.getElementPosition(n.target);return dZ.from({x1:r[0],y1:r[1],x2:i[0],y2:i[1]})});function fQ(e){return`
|
|
21
|
+
<ul class="g6-contextmenu-ul">
|
|
22
|
+
${e.map(e=>`<li class="g6-contextmenu-li" value="${e.value}">${e.name}</li>`).join(``)}
|
|
23
|
+
</ul>
|
|
24
|
+
`}var pQ=`
|
|
25
|
+
.g6-contextmenu {
|
|
26
|
+
font-size: 12px;
|
|
27
|
+
background-color: rgba(255, 255, 255, 0.96);
|
|
28
|
+
border-radius: 4px;
|
|
29
|
+
overflow-x: hidden;
|
|
30
|
+
overflow-y: auto;
|
|
31
|
+
max-height: calc(100% - 8px);
|
|
32
|
+
box-shadow: rgba(0, 0, 0, 0.12) 0px 6px 12px 0px;
|
|
33
|
+
transition: visibility 0.2s cubic-bezier(0.23, 1, 0.32, 1) 0s, left 0.4s cubic-bezier(0.23, 1, 0.32, 1) 0s, top 0.4s cubic-bezier(0.23, 1, 0.32, 1) 0s;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.g6-contextmenu::-webkit-scrollbar {
|
|
37
|
+
width: 6px;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.g6-contextmenu::-webkit-scrollbar-thumb {
|
|
41
|
+
background-color: rgba(0, 0, 0, 0.2);
|
|
42
|
+
border-radius: 3px;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
.g6-contextmenu::-webkit-scrollbar-thumb:hover {
|
|
46
|
+
background-color: rgba(0, 0, 0, 0.3);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
.g6-contextmenu-ul {
|
|
50
|
+
max-width: 256px;
|
|
51
|
+
min-width: 96px;
|
|
52
|
+
list-style: none;
|
|
53
|
+
padding: 0;
|
|
54
|
+
margin: 0;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
.g6-contextmenu-li {
|
|
58
|
+
padding: 8px 12px;
|
|
59
|
+
cursor: pointer;
|
|
60
|
+
user-select: none;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
.g6-contextmenu-li:hover {
|
|
64
|
+
background-color: #f5f5f5;
|
|
65
|
+
cursor: pointer;
|
|
66
|
+
}
|
|
67
|
+
`,mQ=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},hQ=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.targetElement=null,this.wheelHandler=e=>{e.stopPropagation()},this.onTriggerEvent=e=>{var t;(t=e.preventDefault)==null||t.call(e),this.show(e)},this.onMenuItemClick=e=>{let{onClick:t,trigger:n}=this.options;if(e.target instanceof HTMLElement&&e.target.className.includes(`g6-contextmenu-li`)){let n=e.target.getAttribute(`value`);t?.(n,e.target,this.targetElement),this.hide()}n!==`click`&&this.hide()},this.initElement(),this.update(n)}initElement(){this.$element=nZ(`contextmenu`,!1,{zIndex:`99`});let{className:e}=this.options;e&&this.$element.classList.add(e),this.$element.addEventListener(`wheel`,this.wheelHandler),this.context.canvas.getContainer().appendChild(this.$element),rZ(`g6-contextmenu-css`,`style`,{},pQ,document.head)}show(e){return mQ(this,void 0,void 0,function*(){let{enable:t,offset:n}=this.options;if(typeof t==`function`&&!t(e)||!t){this.hide();return}let r=yield this.getDOMContent(e);r instanceof HTMLElement?(this.$element.innerHTML=``,this.$element.appendChild(r)):this.$element.innerHTML=r;let i=this.context.graph.getCanvas().getContainer().getBoundingClientRect(),a=e.client.x-i.left+n[0],o=e.client.y-i.top+n[1];this.$element.style.display=`block`;let s=this.$element.offsetWidth,c=this.$element.offsetHeight,l=i.width,u=i.height;a=Math.max(4,Math.min(a,l-s-4)),o=Math.max(4,Math.min(o,u-c-4)),this.$element.style.left=`${a}px`,this.$element.style.top=`${o}px`,this.targetElement=e.target})}hide(){this.$element.style.display=`none`,this.targetElement=null}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy(),this.$element.remove()}getDOMContent(e){return mQ(this,void 0,void 0,function*(){let{getContent:t,getItems:n}=this.options;return n?fQ(yield n(e)):yield t(e)})}bindEvents(){let{graph:e}=this.context,{trigger:t}=this.options;e.on(`canvas:${t}`,this.onTriggerEvent),e.on(`node:${t}`,this.onTriggerEvent),e.on(`edge:${t}`,this.onTriggerEvent),e.on(`combo:${t}`,this.onTriggerEvent),document.addEventListener(`click`,this.onMenuItemClick)}unbindEvents(){let{graph:e}=this.context,{trigger:t}=this.options;e.off(`canvas:${t}`,this.onTriggerEvent),e.off(`node:${t}`,this.onTriggerEvent),e.off(`edge:${t}`,this.onTriggerEvent),e.off(`combo:${t}`,this.onTriggerEvent),document.removeEventListener(`click`,this.onMenuItemClick),this.$element.removeEventListener(`wheel`,this.wheelHandler)}};hQ.defaultOptions={trigger:`contextmenu`,offset:[4,4],loadingContent:`<div class="g6-contextmenu-loading">Loading...</div>`,getContent:()=>`It is a empty context menu.`,enable:()=>!0};var gQ=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.edgeBundles={},this.edgePoints={},this.onBundle=()=>{let{model:e,element:t}=this.context,n=e.getEdgeData();this.divideEdges(this.options.divisions);let{cycles:r,iterRate:i,divRate:a}=this.options,{lambda:o,divisions:s,iterations:c}=this.options;for(let e=0;e<r;e++){for(let e=0;e<c;e++){let e={};n.forEach(t=>{var n;if(t.source===t.target)return;let r=Q(t);e[r]=this.getEdgeForces(t,s,o);for(let t=0;t<s+1;t++)(n=this.edgePoints)[r]||(n[r]=[]),this.edgePoints[r][t]=Jv(this.edgePoints[r][t],e[r][t])})}o/=2,s*=a,c*=i,this.divideEdges(s)}n.forEach(e=>{let n=Q(e);t.getElement(n)?.update({d:zS(this.edgePoints[n])})})},this.bindEvents()}get nodeMap(){let e=this.context.model.getNodeData();return Object.fromEntries(e.map(e=>[Q(e),sy(my(e))]))}divideEdges(e){this.context.model.getEdgeData().forEach(t=>{var n;let r=Q(t);(n=this.edgePoints)[r]||(n[r]=[]);let i=this.nodeMap[t.source],a=this.nodeMap[t.target];if(e===1)this.edgePoints[r].push(i),this.edgePoints[r].push(Zv(Jv(i,a),2)),this.edgePoints[r].push(a);else{let t=(this.edgePoints[r].length===0?ty(i,a):CQ(this.edgePoints[r]))/(e+1),n=t,o=[i];for(let e=1;e<this.edgePoints[r].length;e++){let i=this.edgePoints[r][e-1],a=this.edgePoints[r][e],s=ty(a,i);for(;s>n;){let e=n/s,r=Jv(i,Xv(Yv(a,i),e));o.push(r),s-=n,n=t}n-=s}o.push(a),this.edgePoints[r]=o}})}getVectorPosition(e){let t=this.nodeMap[e.source],n=this.nodeMap[e.target],[r,i]=Yv(n,t);return{source:t,target:n,vx:r,vy:i,length:ty(t,n)}}measureEdgeCompatibility(e,t){let n=this.getVectorPosition(e),r=this.getVectorPosition(t),i=_Q(n,r),a=vQ(n,r),o=yQ(n,r),s=SQ(n,r);return i*a*o*s}getEdgeBundles(){let e={},t=this.options.bundleThreshold,n=this.context.model.getEdgeData();return n.forEach((r,i)=>{n.forEach((n,a)=>{var o,s;a<=i||this.measureEdgeCompatibility(r,n)>=t&&(e[o=Q(r)]||(e[o]=[]),e[Q(r)].push(n),e[s=Q(n)]||(e[s]=[]),e[Q(n)].push(r))})}),e}getSpringForce(e,t){let{pre:n,cur:r,next:i}=e;return Xv(Yv(Jv(n,i),Xv(r,2)),t)}getElectrostaticForce(e,t){ga(this.edgeBundles)&&(this.edgeBundles=this.getEdgeBundles());let n=this.edgeBundles[Q(t)],r=[0,0];return n?.forEach(n=>{let i=this.edgePoints[Q(n)][e],a=this.edgePoints[Q(t)][e],o=Yv(i,a),s=ty(i,a);r=Jv(r,Xv(o,1/s))}),r}getEdgeForces(e,t,n){let r=this.nodeMap[e.source],i=this.nodeMap[e.target],a=this.options.K/(ty(r,i)*(t+1)),o=[[0,0]],s=Q(e);for(let r=1;r<t;r++){let t=this.getSpringForce({pre:this.edgePoints[s][r-1],cur:this.edgePoints[s][r],next:this.edgePoints[s][r+1]||[0,0]},a),i=this.getElectrostaticForce(r,e);o.push(Xv(Jv(t,i),n))}return o.push([0,0]),o}bindEvents(){let{graph:e}=this.context;e.on(Z.AFTER_RENDER,this.onBundle)}unbindEvents(){let{graph:e}=this.context;e.off(Z.AFTER_RENDER,this.onBundle)}destroy(){this.unbindEvents(),super.destroy()}};gQ.defaultOptions={K:.1,lambda:.1,divisions:1,divRate:2,cycles:6,iterations:90,iterRate:2/3,bundleThreshold:.6};var _Q=(e,t)=>Math.abs(Qv([e.vx,e.vy],[t.vx,t.vy])/(e.length*t.length)),vQ=(e,t)=>{let n=(e.length+t.length)/2;return 2/(n/Math.min(e.length,t.length)+Math.max(e.length,t.length)/n)},yQ=(e,t)=>{let n=(e.length+t.length)/2;return n/(n+ty(Zv(Jv(e.source,e.target),2),Zv(Jv(t.source,t.target),2)))},bQ=(e,t)=>{if(t.source[0]===t.target[0])return[t.source[0],e[1]];if(t.source[1]===t.target[1])return[e[0],t.source[1]];let n=(t.source[1]-t.target[1])/(t.source[0]-t.target[0]),r=(n*n*t.source[0]+n*(e[1]-t.source[1])+e[0])/(n*n+1);return[r,n*(r-t.source[0])+t.source[1]]},xQ=(e,t)=>{let n=bQ(t.source,e),r=bQ(t.target,e),i=Zv(Jv(n,r),2),a=Zv(Jv(e.source,e.target),2);return ty(n,r)===0?0:Math.max(0,1-2*ty(a,i)/ty(n,r))},SQ=(e,t)=>Math.min(xQ(e,t),xQ(t,e)),CQ=e=>{let t=0;for(let n=1;n<e.length;n++)t+=ty(e[n],e[n-1]);return t},wQ={fill:`#fff`,fillOpacity:1,lineWidth:1,stroke:`#000`,strokeOpacity:.8,zIndex:-1/0},TQ=.05,EQ=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.shapes=new Map,this.r=this.options.r,this.onEdgeFilter=e=>{if(this.options.trigger===`drag`&&this.isLensOn)return;let t=vy(e.canvas);this.renderLens(t),this.renderFocusElements()},this.renderLens=e=>{let t=Object.assign({},wQ,this.options.style);this.isLensOn||(this.lens=new Gb({style:t}),this.canvas.appendChild(this.lens)),Object.assign(t,yy(e),{size:this.r*2}),this.lens.update(t)},this.getFilterData=()=>{let{filter:e}=this.options,{model:t}=this.context,n=t.getData();if(!e)return n;let{nodes:r,edges:i,combos:a}=n;return{nodes:r.filter(t=>e(Q(t),`node`)),edges:i.filter(t=>e(Q(t),`edge`)),combos:a.filter(t=>e(Q(t),`combo`))}},this.getFocusElements=e=>{let{nodes:t,edges:n}=this.getFilterData(),r=t.filter(t=>ty(my(t),e)<this.r),i=r.map(e=>Q(e));return{nodes:r,edges:n.filter(e=>{let{source:t,target:n}=e,r=i.includes(t),a=i.includes(n);switch(this.options.nodeType){case`both`:return r&&a;case`either`:return r!==a;case`source`:return r&&!a;case`target`:return!r&&a;default:return!1}})}},this.renderFocusElements=()=>{let{element:e,graph:t}=this.context;if(!this.isLensOn)return;let n=this.lens.getCenter(),{nodes:r,edges:i}=this.getFocusElements(n),a=new Set,o=n=>{let r=Q(n);a.add(r);let i=e.getElement(r);if(!i)return;let o=this.shapes.get(r)||i.cloneNode();o.setPosition(i.getPosition()),o.id=i.id,this.shapes.has(r)?Object.entries(i.attributes).forEach(([e,t])=>{o.style[e]!==t&&(o.style[e]=t)}):(this.canvas.appendChild(o),this.shapes.set(r,o));let s=t.getElementType(r),c=this.getElementStyle(s,n);o.update(c)};r.forEach(o),i.forEach(o),this.shapes.forEach((e,t)=>{a.has(t)||(e.destroy(),this.shapes.delete(t))})},this.scaleRByWheel=e=>{this.options.preventDefault&&e.preventDefault();let{clientX:t,clientY:n,deltaX:r,deltaY:i}=e,{graph:a,canvas:o}=this.context,s=a.getCanvasByClient([t,n]),c=this.lens?.getCenter();if(!this.isLensOn||ty(s,c)>this.r)return;let{maxR:l,minR:u}=this.options,d=r+i>0?1/(1-TQ):1-TQ,f=Math.min(...o.getSize())/2;this.r=Math.max(u||0,Math.min(l||f,this.r*d)),this.renderLens(c),this.renderFocusElements()},this.isLensDragging=!1,this.onDragStart=e=>{let t=vy(e.canvas),n=this.lens?.getCenter();!this.isLensOn||ty(t,n)>this.r||(this.isLensDragging=!0)},this.onDrag=e=>{if(!this.isLensDragging)return;let t=vy(e.canvas);this.renderLens(t),this.renderFocusElements()},this.onDragEnd=()=>{this.isLensDragging=!1},this.bindEvents()}get canvas(){return this.context.canvas.getLayer(`transient`)}get isLensOn(){return this.lens&&!this.lens.destroyed}getElementStyle(e,t){let n=e===`node`?this.options.nodeStyle:this.options.edgeStyle;return typeof n==`function`?n(t):n}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}bindEvents(){var e;let{graph:t}=this.context,{trigger:n,scaleRBy:r}=this.options,i=t.getCanvas().getLayer();[`click`,`drag`].includes(n)&&i.addEventListener(X.CLICK,this.onEdgeFilter),n===`pointermove`?i.addEventListener(X.POINTER_MOVE,this.onEdgeFilter):n===`drag`&&(i.addEventListener(X.DRAG_START,this.onDragStart),i.addEventListener(X.DRAG,this.onDrag),i.addEventListener(X.DRAG_END,this.onDragEnd)),r===`wheel`&&((e=this.graphDom)==null||e.addEventListener(X.WHEEL,this.scaleRByWheel,{passive:!1}))}unbindEvents(){var e;let{graph:t}=this.context,{trigger:n,scaleRBy:r}=this.options,i=t.getCanvas().getLayer();[`click`,`drag`].includes(n)&&i.removeEventListener(X.CLICK,this.onEdgeFilter),n===`pointermove`?i.removeEventListener(X.POINTER_MOVE,this.onEdgeFilter):n===`drag`&&(i.removeEventListener(X.DRAG_START,this.onDragStart),i.removeEventListener(X.DRAG,this.onDrag),i.removeEventListener(X.DRAG_END,this.onDragEnd)),r===`wheel`&&((e=this.graphDom)==null||e.removeEventListener(X.WHEEL,this.scaleRByWheel))}update(e){this.unbindEvents(),super.update(e),this.r=e.r??this.r,this.bindEvents()}destroy(){this.unbindEvents(),this.isLensOn&&this.lens.destroy(),this.shapes.forEach((e,t)=>{e.destroy(),this.shapes.delete(t)}),super.destroy()}};EQ.defaultOptions={trigger:`pointermove`,r:60,nodeType:`both`,filter:()=>!0,style:{lineWidth:2},nodeStyle:{label:!1},edgeStyle:{label:!0},scaleRBy:`wheel`,preventDefault:!0};var DQ={fill:`#ccc`,fillOpacity:.1,lineWidth:2,stroke:`#000`,strokeOpacity:.8,labelFontSize:12},OQ=.05,kQ=.1,AQ=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.r=this.options.r,this.d=this.options.d,this.onCreateFisheye=e=>{if(this.options.trigger===`drag`&&this.isLensOn)return;let t=vy(e.canvas);this.onMagnify(t)},this.onMagnify=e=>{e.some(isNaN)||(this.renderLens(e),this.renderFocusElements())},this.renderLens=e=>{let t=Object.assign({},DQ,this.options.style);this.isLensOn||(this.lens=new Gb({style:t}),this.canvas.appendChild(this.lens)),Object.assign(t,yy(e),{size:this.r*2,label:this.options.showDPercent,labelText:this.getDPercent()}),this.lens.update(t)},this.getDPercent=()=>{let{minD:e,maxD:t}=this.options;return`${Math.round((this.d-e)/(t-e)*100)}%`},this.prevMagnifiedStyleMap=new Map,this.prevOriginStyleMap=new Map,this.renderFocusElements=()=>{if(!this.isLensOn)return;let{graph:e}=this.context,t=this.lens.getCenter(),n=(this.d+1)*this.r,r=new Map,i=new Map;e.getNodeData().forEach(a=>{let o=my(a),s=ty(o,t);if(s>this.r)return;let c=n*s/(this.d*s+this.r),[l,u]=o,[d,f]=t,p=(l-d)/s,m=(u-f)/s,h=[d+c*p,f+c*m],g=Q(a),_=this.getNodeStyle(a),v=xa(e.getElementRenderStyle(g),Object.keys(_));r.set(g,Object.assign(Object.assign({},yy(h)),_)),i.set(g,Object.assign(Object.assign({},yy(o)),v))}),this.updateStyle(r,i)},this.getNodeStyle=e=>{let{nodeStyle:t}=this.options;return typeof t==`function`?t(e):t},this.updateStyle=(e,t)=>{let{graph:n,element:r}=this.context,{enter:i,exit:a,keep:o}=zv(Array.from(this.prevMagnifiedStyleMap.keys()),Array.from(e.keys()),e=>e),s=new Set,c=(e,t)=>{r.getElement(e)?.update(t),n.getRelatedEdgesData(e).forEach(e=>{s.add(Q(e))})};[...i,...o].forEach(t=>{c(t,e.get(t))}),a.forEach(e=>{c(e,this.prevOriginStyleMap.get(e)),this.prevOriginStyleMap.delete(e)}),s.forEach(e=>{r.getElement(e)?.update({})}),this.prevMagnifiedStyleMap=e,t.forEach((e,t)=>{this.prevOriginStyleMap.has(t)||this.prevOriginStyleMap.set(t,e)})},this.isWheelValid=e=>{if(this.options.preventDefault&&e.preventDefault(),!this.isLensOn)return!1;let{clientX:t,clientY:n}=e;return!(ty(this.context.graph.getCanvasByClient([t,n]),this.lens.getCenter())>this.r)},this.scaleR=e=>{let{maxR:t,minR:n}=this.options,r=e?1/(1-OQ):1-OQ,i=Math.min(...this.context.canvas.getSize())/2;this.r=Math.max(n||0,Math.min(t||i,this.r*r))},this.scaleD=e=>{let{maxD:t,minD:n}=this.options,r=e?this.d+kQ:this.d-kQ;this.d=Math.max(n,Math.min(t,r))},this.scaleRByWheel=e=>{if(!this.isWheelValid(e))return;let{deltaX:t,deltaY:n}=e;this.scaleR(t+n>0);let r=this.lens.getCenter();this.onMagnify(r)},this.scaleDByWheel=e=>{if(!this.isWheelValid(e))return;let{deltaX:t,deltaY:n}=e;this.scaleD(t+n>0);let r=this.lens.getCenter();this.onMagnify(r)},this.isDragValid=e=>(this.options.preventDefault&&e.preventDefault(),!(!this.isLensOn||ty(vy(e.canvas),this.lens.getCenter())>this.r)),this.isLensDragging=!1,this.onDragStart=e=>{this.isDragValid(e)&&(this.isLensDragging=!0)},this.onDrag=e=>{if(!this.isLensDragging)return;let t=vy(e.canvas);this.onMagnify(t)},this.onDragEnd=()=>{this.isLensDragging=!1},this.scaleRByDrag=e=>{if(!this.isLensDragging)return;let{dx:t,dy:n}=e;this.scaleR(t-n>0);let r=this.lens.getCenter();this.onMagnify(r)},this.scaleDByDrag=e=>{if(!this.isLensDragging)return;let{dx:t,dy:n}=e;this.scaleD(t-n>0);let r=this.lens.getCenter();this.onMagnify(r)},this.bindEvents()}get canvas(){return this.context.canvas.getLayer(`transient`)}get isLensOn(){return this.lens&&!this.lens.destroyed}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}bindEvents(){var e;let{graph:t}=this.context,{trigger:n,scaleRBy:r,scaleDBy:i}=this.options,a=t.getCanvas().getLayer();if([`click`,`drag`].includes(n)&&a.addEventListener(X.CLICK,this.onCreateFisheye),n===`pointermove`&&a.addEventListener(X.POINTER_MOVE,this.onCreateFisheye),n===`drag`||r===`drag`||i===`drag`){a.addEventListener(X.DRAG_START,this.onDragStart),a.addEventListener(X.DRAG_END,this.onDragEnd);let e=n===`drag`?this.onDrag:r===`drag`?this.scaleRByDrag:this.scaleDByDrag;a.addEventListener(X.DRAG,e)}if(r===`wheel`||i===`wheel`){let t=r===`wheel`?this.scaleRByWheel:this.scaleDByWheel;(e=this.graphDom)==null||e.addEventListener(X.WHEEL,t,{passive:!1})}}unbindEvents(){var e;let{graph:t}=this.context,{trigger:n,scaleRBy:r,scaleDBy:i}=this.options,a=t.getCanvas().getLayer();if([`click`,`drag`].includes(n)&&a.removeEventListener(X.CLICK,this.onCreateFisheye),n===`pointermove`&&a.removeEventListener(X.POINTER_MOVE,this.onCreateFisheye),n===`drag`||r===`drag`||i===`drag`){a.removeEventListener(X.DRAG_START,this.onDragStart),a.removeEventListener(X.DRAG_END,this.onDragEnd);let e=n===`drag`?this.onDrag:r===`drag`?this.scaleRByDrag:this.scaleDByDrag;a.removeEventListener(X.DRAG,e)}if(r===`wheel`||i===`wheel`){let t=r===`wheel`?this.scaleRByWheel:this.scaleDByWheel;(e=this.graphDom)==null||e.removeEventListener(X.WHEEL,t)}}update(e){this.unbindEvents(),super.update(e),this.r=e.r??this.r,this.d=e.d??this.d,this.bindEvents()}destroy(){var e;this.unbindEvents(),this.isLensOn&&((e=this.lens)==null||e.destroy()),this.prevMagnifiedStyleMap.clear(),this.prevOriginStyleMap.clear(),super.destroy()}};AQ.defaultOptions={trigger:`pointermove`,r:120,d:1.5,maxD:5,minD:0,showDPercent:!0,style:{},nodeStyle:{label:!0},preventDefault:!0};var jQ=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.$el=this.context.canvas.getContainer(),this.graphSize=[0,0],this.onFullscreenChange=()=>{var e,t,n,r;let i=!!document.fullscreenElement;this.options.autoFit&&this.setGraphSize(i),i?(t=(e=this.options).onEnter)==null||t.call(e):(r=(n=this.options).onExit)==null||r.call(n)},this.shortcut=new Hy(t.graph),this.bindEvents(),this.style=document.createElement(`style`),document.head.appendChild(this.style),this.style.innerHTML=`
|
|
68
|
+
:not(:root):fullscreen::backdrop {
|
|
69
|
+
background: transparent;
|
|
70
|
+
}
|
|
71
|
+
`}bindEvents(){this.unbindEvents(),this.shortcut.unbindAll();let{request:e=[],exit:t=[]}=this.options.trigger;this.shortcut.bind(e,this.request),this.shortcut.bind(t,this.exit),[`webkitfullscreenchange`,`mozfullscreenchange`,`fullscreenchange`,`MSFullscreenChange`].forEach(e=>{document.addEventListener(e,this.onFullscreenChange,!1)})}unbindEvents(){this.shortcut.unbindAll(),[`webkitfullscreenchange`,`mozfullscreenchange`,`fullscreenchange`,`MSFullscreenChange`].forEach(e=>{document.removeEventListener(e,this.onFullscreenChange,!1)})}setGraphSize(e=!0){let t,n;e?(t=globalThis.screen?.width||0,n=globalThis.screen?.height||0,this.graphSize=this.context.graph.getSize()):[t,n]=this.graphSize,this.context.graph.setSize(t,n),this.context.graph.render()}request(){document.fullscreenElement||!MQ()||this.$el.requestFullscreen().catch(e=>{c_.warn(`Error attempting to enable full-screen: ${e.message} (${e.name})`)})}exit(){document.fullscreenElement&&document.exitFullscreen()}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}destroy(){this.exit(),this.style.remove(),super.destroy()}};jQ.defaultOptions={trigger:{},autoFit:!0};function MQ(){return document.fullscreenEnabled||Reflect.get(document,`webkitFullscreenEnabled`)||Reflect.get(document,`mozFullscreenEnabled`)||Reflect.get(document,`msFullscreenEnabled`)}var NQ=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.$element=nZ(`grid-line`,!0),this.offset=[0,0],this.currentScale=1,this.followZoom=e=>{let{data:{scale:t,origin:n}}=e;if(!t||n===void 0&&this.context.viewport===void 0)return;let r=this.currentScale;this.currentScale=t;let i=t/r,a=Xv(n||this.context.graph.getCanvasCenter(),1-i),o=this.baseSize*t,s=Jv(oy(Xv(this.offset,i),o),a);this.$element.style.backgroundSize=`${o}px ${o}px`,this.$element.style.backgroundPosition=`${s[0]}px ${s[1]}px`,this.offset=oy(s,o)},this.followTranslate=e=>{if(!this.options.follow)return;let{data:{translate:t}}=e;t&&this.updateOffset(t)},this.onTransform=e=>{let t=this.parseFollow(this.options.follow);t.zoom&&this.followZoom(e),t.translate&&this.followTranslate(e)},this.context.canvas.getContainer().prepend(this.$element),this.baseSize=this.options.size,this.updateStyle(),this.bindEvents()}update(e){super.update(e),e.size!==void 0&&(this.baseSize=e.size),this.updateStyle()}bindEvents(){let{graph:e}=this.context;e.on(Z.AFTER_TRANSFORM,this.onTransform)}updateStyle(){let{stroke:e,lineWidth:t,border:n,borderLineWidth:r,borderStroke:i,borderStyle:a}=this.options,o=this.baseSize*this.currentScale;Object.assign(this.$element.style,{border:n?`${r}px ${a} ${i}`:`none`,backgroundImage:`linear-gradient(${e} ${t}px, transparent ${t}px), linear-gradient(90deg, ${e} ${t}px, transparent ${t}px)`,backgroundSize:`${o}px ${o}px`,backgroundRepeat:`repeat`})}updateOffset(e){let t=this.baseSize*this.currentScale;this.offset=oy(Jv(this.offset,e),t),this.$element.style.backgroundPosition=`${this.offset[0]}px ${this.offset[1]}px`}parseFollow(e){return Zi(e)?{translate:e,zoom:e}:{translate:e?.translate??!1,zoom:e?.zoom??!1}}destroy(){this.context.graph.off(Z.AFTER_TRANSFORM,this.onTransform),this.$element.remove(),super.destroy()}};NQ.defaultOptions={border:!0,borderLineWidth:1,borderStroke:`#eee`,borderStyle:`solid`,lineWidth:1,size:20,stroke:`#eee`};function PQ(e){let t={Added:new Map,Updated:new Map,Removed:new Map};return e.forEach(e=>{let{type:n,value:r}=e,i=Q(r);if(n===`NodeAdded`||n===`EdgeAdded`||n===`ComboAdded`)t.Added.set(i,e);else if(n===`NodeUpdated`||n===`EdgeUpdated`||n===`ComboUpdated`)if(t.Added.has(i))t.Added.set(i,{type:n.replace(`Updated`,`Added`),value:r});else if(t.Updated.has(i)){let{original:e}=t.Updated.get(i);t.Updated.set(i,{type:n,value:r,original:e})}else t.Removed.has(i)||t.Updated.set(i,e);else (n===`NodeRemoved`||n===`EdgeRemoved`||n===`ComboRemoved`)&&(t.Added.has(i)?t.Added.delete(i):(t.Updated.has(i)&&t.Updated.delete(i),t.Removed.set(i,e)))}),[...Array.from(t.Added.values()),...Array.from(t.Updated.values()),...Array.from(t.Removed.values())]}function FQ(e){let{NodeAdded:t=[],NodeUpdated:n=[],NodeRemoved:r=[],EdgeAdded:i=[],EdgeUpdated:a=[],EdgeRemoved:o=[],ComboAdded:s=[],ComboUpdated:c=[],ComboRemoved:l=[]}=Li(e,e=>e.type);return{add:{nodes:t,edges:i,combos:s},update:{nodes:n,edges:a,combos:c},remove:{nodes:r,edges:o,combos:l}}}function IQ(e,t){for(let n in e)wi(e[n])&&!Array.isArray(e[n])&&e[n]!==null?(t[n]||(t[n]={}),IQ(e[n],t[n])):t[n]===void 0&&(t[n]=f_(n))}function LQ(e,t=!1,n){let r={animation:t,current:{add:{},update:{},remove:{}},original:{add:{},update:{},remove:{}}},{add:i,update:a,remove:o}=FQ(PQ(e));return[`nodes`,`edges`,`combos`].forEach(e=>{a[e]&&a[e].forEach(t=>{var i,a;let o=Object.assign({},t.value),s=Object.assign({},t.original);if(n){let e=n.graph.getElementType(Q(t.original)),r=e===`edge`?`stroke`:`fill`,i=n.element.getElementComputedStyle(e,t.original);s=Object.assign(Object.assign({},t.original),{style:Object.assign({[r]:i[r]},t.original.style)})}IQ(o,s),(i=r.current.update)[e]||(i[e]=[]),r.current.update[e].push(o),(a=r.original.update)[e]||(a[e]=[]),r.original.update[e].push(s)}),i[e]&&i[e].forEach(t=>{var n,i;let a=Object.assign({},t.value);(n=r.current.add)[e]||(n[e]=[]),r.current.add[e].push(a),(i=r.original.remove)[e]||(i[e]=[]),r.original.remove[e].push(a)}),o[e]&&o[e].forEach(t=>{var n,i;let a=Object.assign({},t.value);(n=r.current.remove)[e]||(n[e]=[]),r.current.remove[e].push(a),(i=r.original.add)[e]||(i[e]=[]),r.original.add[e].push(a)})}),r}var RQ=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.batchChanges=null,this.batchAnimation=!1,this.undoStack=[],this.redoStack=[],this.freezed=!1,this.executeCommand=(e,t=!0)=>{var n,r,i;this.freezed=!0,(r=(n=this.options).executeCommand)==null||r.call(n,e);let a=t?e.original:e.current;this.context.graph.addData(a.add),this.context.graph.updateData(a.update),this.context.graph.removeData(Av(a.remove,!1)),(i=this.context.element)==null||i.draw({silence:!0,animation:e.animation}),this.freezed=!1},this.addCommand=e=>{if(!this.freezed){if(e.type===Z.AFTER_DRAW){let{dataChanges:t=[],animation:n=!0}=e.data;if(this.context.batch?.isBatching){if(!this.batchChanges)return;this.batchChanges.push(t),this.batchAnimation&&=n;return}this.batchChanges=[t],this.batchAnimation=n}this.undoStackPush(LQ(this.batchChanges.flat(),this.batchAnimation,this.context)),this.notify(Qg.ADD,this.undoStack[this.undoStack.length-1])}},this.initBatchCommand=e=>{let{initiate:t}=e.data;this.batchAnimation=!1,t?this.batchChanges=[]:this.undoStack.pop()||(this.batchChanges=null)},this.emitter=new vw;let{graph:r}=this.context;r.on(Z.AFTER_DRAW,this.addCommand),r.on(Z.BATCH_START,this.initBatchCommand),r.on(Z.BATCH_END,this.addCommand)}canUndo(){return this.undoStack.length>0}canRedo(){return this.redoStack.length>0}undo(){var e,t,n;let r=this.undoStack.pop();if(r){if(this.executeCommand(r),(e=this.options).beforeAddCommand?.call(e,r,!1)===!1)return;this.redoStack.push(r),(n=(t=this.options).afterAddCommand)==null||n.call(t,r,!1),this.notify(Qg.UNDO,r)}return this}redo(){let e=this.redoStack.pop();return e&&(this.executeCommand(e,!1),this.undoStackPush(e),this.notify(Qg.REDO,e)),this}undoAndCancel(){let e=this.undoStack.pop();return e&&(this.executeCommand(e,!1),this.redoStack=[],this.notify(Qg.CANCEL,e)),this}undoStackPush(e){var t,n,r;let{stackSize:i}=this.options;i!==0&&this.undoStack.length>=i&&this.undoStack.shift(),(t=this.options).beforeAddCommand?.call(t,e,!0)!==!1&&(this.undoStack.push(e),(r=(n=this.options).afterAddCommand)==null||r.call(n,e,!0))}clear(){this.undoStack=[],this.redoStack=[],this.batchChanges=null,this.batchAnimation=!1,this.notify(Qg.CLEAR,null)}notify(e,t){this.emitter.emit(e,{cmd:t}),this.emitter.emit(Qg.CHANGE,{cmd:t})}on(e,t){this.emitter.on(e,t)}destroy(){let{graph:e}=this.context;e.off(Z.AFTER_DRAW,this.addCommand),e.off(Z.BATCH_START,this.initBatchCommand),e.off(Z.BATCH_END,this.addCommand),this.emitter.off(),super.destroy(),this.undoStack=[],this.redoStack=[]}};RQ.defaultOptions={stackSize:0};var zQ={toXy(e,t){if(!t)return[...e];let n=t[0].slice(1),r=t[1].slice(1);return e.map(e=>[e[n],e[r]])},fromXy(e,t){if(!t)return[...e];let n=t[0].slice(1),r=t[1].slice(1);return e.map(([e,t])=>({[n]:e,[r]:t}))}},BQ=class{constructor(e,t){this._cells=[],this._cellSize=t,this._reverseCellSize=1/t;for(let t of e){let e=this.coordToCellNum(t[0]),n=this.coordToCellNum(t[1]);this._cells[e]||(this._cells[e]=[]),this._cells[e][n]||(this._cells[e][n]=[]),this._cells[e][n].push(t)}}cellPoints(e,t){return this._cells[e]?.[t]||[]}rangePoints(e){let t=this.coordToCellNum(e[0]),n=this.coordToCellNum(e[1]),r=this.coordToCellNum(e[2]),i=this.coordToCellNum(e[3]),a=[];for(let e=t;e<=r;e++)for(let t=n;t<=i;t++){let n=this.cellPoints(e,t);for(let e of n)a.push(e)}return a}removePoint(e){let t=this.coordToCellNum(e[0]),n=this.coordToCellNum(e[1]),r=this._cells[t][n],i=r.findIndex(([t,n])=>t===e[0]&&n===e[1]);return i>-1&&r.splice(i,1),r}trunc(e){return Math.trunc(e)}coordToCellNum(e){return this.trunc(e*this._reverseCellSize)}extendBbox(e,t){return[e[0]-t*this._cellSize,e[1]-t*this._cellSize,e[2]+t*this._cellSize,e[3]+t*this._cellSize]}};function VQ(e,t){return new BQ(e,t)}var HQ=+(2**27+1);function UQ(e,t,n){let r=e*t,i=HQ*e,a=i-(i-e),o=e-a,s=HQ*t,c=s-(s-t),l=t-c,u=r-a*c-o*c-a*l,d=o*l-u;return n?(n[0]=d,n[1]=r,n):[d,r]}function WQ(e,t,n){let r=e+t,i=r-e,a=r-i,o=t-i,s=e-a;return n?(n[0]=s+o,n[1]=r,n):[s+o,r]}function GQ(e,t){let n=e.length;if(n===1){let n=UQ(e[0],t);return n[0]?n:[n[1]]}let r=Array(2*n),i=[.1,.1],a=[.1,.1],o=0;UQ(e[0],t,i),i[0]&&(r[o++]=i[0]);for(let s=1;s<n;++s){UQ(e[s],t,a);let n=i[1];WQ(n,a[0],i),i[0]&&(r[o++]=i[0]);let c=a[1],l=i[1],u=c+l,d=l-(u-c);i[1]=u,d&&(r[o++]=d)}return i[1]&&(r[o++]=i[1]),o===0&&(r[o++]=0),r.length=o,r}function KQ(e,t){let n=e+t,r=n-e,i=n-r,a=t-r,o=e-i+a;return o?[o,n]:[n]}function qQ(e,t){let n=e.length|0,r=t.length|0;if(n===1&&r===1)return KQ(e[0],-t[0]);let i=n+r,a=Array(i),o=0,s=0,c=0,l=Math.abs,u=e[s],d=l(u),f=-t[c],p=l(f),m,h;d<p?(h=u,s+=1,s<n&&(u=e[s],d=l(u))):(h=f,c+=1,c<r&&(f=-t[c],p=l(f))),s<n&&d<p||c>=r?(m=u,s+=1,s<n&&(u=e[s],d=l(u))):(m=f,c+=1,c<r&&(f=-t[c],p=l(f)));let g=m+h,_=g-m,v=h-_,y=v,b=g,x,S,C,w,T;for(;s<n&&c<r;)d<p?(m=u,s+=1,s<n&&(u=e[s],d=l(u))):(m=f,c+=1,c<r&&(f=-t[c],p=l(f))),h=y,g=m+h,_=g-m,v=h-_,v&&(a[o++]=v),x=b+g,S=x-b,C=x-S,w=g-S,T=b-C,y=T+w,b=x;for(;s<n;)m=u,h=y,g=m+h,_=g-m,v=h-_,v&&(a[o++]=v),x=b+g,S=x-b,C=x-S,w=g-S,T=b-C,y=T+w,b=x,s+=1,s<n&&(u=e[s]);for(;c<r;)m=f,h=y,g=m+h,_=g-m,v=h-_,v&&(a[o++]=v),x=b+g,S=x-b,C=x-S,w=g-S,T=b-C,y=T+w,b=x,c+=1,c<r&&(f=-t[c]);return y&&(a[o++]=y),b&&(a[o++]=b),o||(a[o++]=0),a.length=o,a}function JQ(e,t){let n=e+t,r=n-e,i=n-r,a=t-r,o=e-i+a;return o?[o,n]:[n]}function YQ(e,t){let n=e.length|0,r=t.length|0;if(n===1&&r===1)return JQ(e[0],t[0]);let i=n+r,a=Array(i),o=0,s=0,c=0,l=Math.abs,u=e[s],d=l(u),f=t[c],p=l(f),m,h;d<p?(h=u,s+=1,s<n&&(u=e[s],d=l(u))):(h=f,c+=1,c<r&&(f=t[c],p=l(f))),s<n&&d<p||c>=r?(m=u,s+=1,s<n&&(u=e[s],d=l(u))):(m=f,c+=1,c<r&&(f=t[c],p=l(f)));let g=m+h,_=g-m,v=h-_,y=v,b=g,x,S,C,w,T;for(;s<n&&c<r;)d<p?(m=u,s+=1,s<n&&(u=e[s],d=l(u))):(m=f,c+=1,c<r&&(f=t[c],p=l(f))),h=y,g=m+h,_=g-m,v=h-_,v&&(a[o++]=v),x=b+g,S=x-b,C=x-S,w=g-S,T=b-C,y=T+w,b=x;for(;s<n;)m=u,h=y,g=m+h,_=g-m,v=h-_,v&&(a[o++]=v),x=b+g,S=x-b,C=x-S,w=g-S,T=b-C,y=T+w,b=x,s+=1,s<n&&(u=e[s]);for(;c<r;)m=f,h=y,g=m+h,_=g-m,v=h-_,v&&(a[o++]=v),x=b+g,S=x-b,C=x-S,w=g-S,T=b-C,y=T+w,b=x,c+=1,c<r&&(f=t[c]);return y&&(a[o++]=y),b&&(a[o++]=b),o||(a[o++]=0),a.length=o,a}var XQ=5,ZQ=11102230246251565e-32,QQ=(3+16*ZQ)*ZQ,$Q=(7+56*ZQ)*ZQ;function e$(e,t,n,r){return function(n,i,a){let o=r(e(e(t(i[1],a[0]),t(-a[1],i[0])),e(t(n[1],i[0]),t(-i[1],n[0]))),e(t(n[1],a[0]),t(-a[1],n[0])));return o[o.length-1]}}function t$(e,t,n,r){return function(i,a,o,s){let c=r(e(e(n(e(t(o[1],s[0]),t(-s[1],o[0])),a[2]),e(n(e(t(a[1],s[0]),t(-s[1],a[0])),-o[2]),n(e(t(a[1],o[0]),t(-o[1],a[0])),s[2]))),e(n(e(t(a[1],s[0]),t(-s[1],a[0])),i[2]),e(n(e(t(i[1],s[0]),t(-s[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),s[2])))),e(e(n(e(t(o[1],s[0]),t(-s[1],o[0])),i[2]),e(n(e(t(i[1],s[0]),t(-s[1],i[0])),-o[2]),n(e(t(i[1],o[0]),t(-o[1],i[0])),s[2]))),e(n(e(t(a[1],o[0]),t(-o[1],a[0])),i[2]),e(n(e(t(i[1],o[0]),t(-o[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),o[2])))));return c[c.length-1]}}function n$(e,t,n,r){return function(i,a,o,s,c){let l=r(e(e(e(n(e(n(e(t(s[1],c[0]),t(-c[1],s[0])),o[2]),e(n(e(t(o[1],c[0]),t(-c[1],o[0])),-s[2]),n(e(t(o[1],s[0]),t(-s[1],o[0])),c[2]))),a[3]),e(n(e(n(e(t(s[1],c[0]),t(-c[1],s[0])),a[2]),e(n(e(t(a[1],c[0]),t(-c[1],a[0])),-s[2]),n(e(t(a[1],s[0]),t(-s[1],a[0])),c[2]))),-o[3]),n(e(n(e(t(o[1],c[0]),t(-c[1],o[0])),a[2]),e(n(e(t(a[1],c[0]),t(-c[1],a[0])),-o[2]),n(e(t(a[1],o[0]),t(-o[1],a[0])),c[2]))),s[3]))),e(n(e(n(e(t(o[1],s[0]),t(-s[1],o[0])),a[2]),e(n(e(t(a[1],s[0]),t(-s[1],a[0])),-o[2]),n(e(t(a[1],o[0]),t(-o[1],a[0])),s[2]))),-c[3]),e(n(e(n(e(t(s[1],c[0]),t(-c[1],s[0])),a[2]),e(n(e(t(a[1],c[0]),t(-c[1],a[0])),-s[2]),n(e(t(a[1],s[0]),t(-s[1],a[0])),c[2]))),i[3]),n(e(n(e(t(s[1],c[0]),t(-c[1],s[0])),i[2]),e(n(e(t(i[1],c[0]),t(-c[1],i[0])),-s[2]),n(e(t(i[1],s[0]),t(-s[1],i[0])),c[2]))),-a[3])))),e(e(n(e(n(e(t(a[1],c[0]),t(-c[1],a[0])),i[2]),e(n(e(t(i[1],c[0]),t(-c[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),c[2]))),s[3]),e(n(e(n(e(t(a[1],s[0]),t(-s[1],a[0])),i[2]),e(n(e(t(i[1],s[0]),t(-s[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),s[2]))),-c[3]),n(e(n(e(t(o[1],s[0]),t(-s[1],o[0])),a[2]),e(n(e(t(a[1],s[0]),t(-s[1],a[0])),-o[2]),n(e(t(a[1],o[0]),t(-o[1],a[0])),s[2]))),i[3]))),e(n(e(n(e(t(o[1],s[0]),t(-s[1],o[0])),i[2]),e(n(e(t(i[1],s[0]),t(-s[1],i[0])),-o[2]),n(e(t(i[1],o[0]),t(-o[1],i[0])),s[2]))),-a[3]),e(n(e(n(e(t(a[1],s[0]),t(-s[1],a[0])),i[2]),e(n(e(t(i[1],s[0]),t(-s[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),s[2]))),o[3]),n(e(n(e(t(a[1],o[0]),t(-o[1],a[0])),i[2]),e(n(e(t(i[1],o[0]),t(-o[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),o[2]))),-s[3]))))),e(e(e(n(e(n(e(t(s[1],c[0]),t(-c[1],s[0])),o[2]),e(n(e(t(o[1],c[0]),t(-c[1],o[0])),-s[2]),n(e(t(o[1],s[0]),t(-s[1],o[0])),c[2]))),i[3]),n(e(n(e(t(s[1],c[0]),t(-c[1],s[0])),i[2]),e(n(e(t(i[1],c[0]),t(-c[1],i[0])),-s[2]),n(e(t(i[1],s[0]),t(-s[1],i[0])),c[2]))),-o[3])),e(n(e(n(e(t(o[1],c[0]),t(-c[1],o[0])),i[2]),e(n(e(t(i[1],c[0]),t(-c[1],i[0])),-o[2]),n(e(t(i[1],o[0]),t(-o[1],i[0])),c[2]))),s[3]),n(e(n(e(t(o[1],s[0]),t(-s[1],o[0])),i[2]),e(n(e(t(i[1],s[0]),t(-s[1],i[0])),-o[2]),n(e(t(i[1],o[0]),t(-o[1],i[0])),s[2]))),-c[3]))),e(e(n(e(n(e(t(o[1],c[0]),t(-c[1],o[0])),a[2]),e(n(e(t(a[1],c[0]),t(-c[1],a[0])),-o[2]),n(e(t(a[1],o[0]),t(-o[1],a[0])),c[2]))),i[3]),n(e(n(e(t(o[1],c[0]),t(-c[1],o[0])),i[2]),e(n(e(t(i[1],c[0]),t(-c[1],i[0])),-o[2]),n(e(t(i[1],o[0]),t(-o[1],i[0])),c[2]))),-a[3])),e(n(e(n(e(t(a[1],c[0]),t(-c[1],a[0])),i[2]),e(n(e(t(i[1],c[0]),t(-c[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),c[2]))),o[3]),n(e(n(e(t(a[1],o[0]),t(-o[1],a[0])),i[2]),e(n(e(t(i[1],o[0]),t(-o[1],i[0])),-a[2]),n(e(t(i[1],a[0]),t(-a[1],i[0])),o[2]))),-c[3])))));return l[l.length-1]}}function r$(e){return(e===3?e$:e===4?t$:n$)(YQ,UQ,GQ,qQ)}var i$=r$(3),a$=r$(4),o$=[function(){return 0},function(){return 0},function(e,t){return t[0]-e[0]},function(e,t,n){let r=(e[1]-n[1])*(t[0]-n[0]),i=(e[0]-n[0])*(t[1]-n[1]),a=r-i,o;if(r>0){if(i<=0)return a;o=r+i}else if(r<0){if(i>=0)return a;o=-(r+i)}else return a;let s=QQ*o;return a>=s||a<=-s?a:i$(e,t,n)},function(e,t,n,r){let i=e[0]-r[0],a=t[0]-r[0],o=n[0]-r[0],s=e[1]-r[1],c=t[1]-r[1],l=n[1]-r[1],u=e[2]-r[2],d=t[2]-r[2],f=n[2]-r[2],p=a*l,m=o*c,h=o*s,g=i*l,_=i*c,v=a*s,y=u*(p-m)+d*(h-g)+f*(_-v),b=$Q*((Math.abs(p)+Math.abs(m))*Math.abs(u)+(Math.abs(h)+Math.abs(g))*Math.abs(d)+(Math.abs(_)+Math.abs(v))*Math.abs(f));return y>b||-y>b?y:a$(e,t,n,r)}];function s$(e){let t=o$[e.length];return t||=o$[e.length]=r$(e.length),t.apply(void 0,...e)}function c$(e,t,n,r,i,a,o){return function(...t){switch(t.length){case 0:case 1:return 0;case 2:return r(t[0],t[1]);case 3:return i(t[0],t[1],t[2]);case 4:return a(t[0],t[1],t[2],t[3]);case 5:return o(t[0],t[1],t[2],t[3],t[4])}return e(t)}}function l$(){for(;o$.length<=XQ;)o$.push(r$(o$.length));let e=c$(void 0,s$,...o$);for(let t=0;t<=XQ;++t)e[t]=o$[t];return e}var u$=l$(),d$=u$[3];function f$(e){let t=e.length;if(t<3){let n=Array(t);for(let e=0;e<t;++e)n[e]=e;return t===2&&e[0][0]===e[1][0]&&e[0][1]===e[1][1]?[0]:n}let n=Array(t);for(let e=0;e<t;++e)n[e]=e;n.sort((t,n)=>e[t][0]-e[n][0]||e[t][1]-e[n][1]);let r=[n[0],n[1]],i=[n[0],n[1]];for(let a=2;a<t;++a){let t=n[a],o=e[t],s=r.length;for(;s>1&&d$(e[r[s-2]],e[r[s-1]],o)<=0;)--s,r.pop();for(r.push(t),s=i.length;s>1&&d$(e[i[s-2]],e[i[s-1]],o)>=0;)--s,i.pop();i.push(t)}let a=Array(i.length+r.length-2),o=0;for(let e=0,t=r.length;e<t;++e)a[o++]=r[e];for(let e=i.length-2;e>0;--e)a[o++]=i[e];return a}function p$(e,t,n,r){for(let i=0;i<2;++i){let a=e[i],o=t[i],[s,c]=[Math.min(a,o),Math.max(a,o)],l=n[i],u=r[i],[d,f]=[Math.min(l,u),Math.max(l,u)];if(f<s||c<d)return!1}return!0}function m$(e,t,n,r){let i=u$(e,n,r),a=u$(t,n,r);if(i>0&&a>0||i<0&&a<0)return!1;let o=u$(n,e,t),s=u$(r,e,t);return o>0&&s>0||o<0&&s<0?!1:i===0&&a===0&&o===0&&s===0?p$(e,t,n,r):!0}function h$(e){let t=[e[0]],n=e[0];for(let r=1;r<e.length;r++){let i=e[r];(n[0]!==i[0]||n[1]!==i[1])&&t.push(i),n=i}return t}function g$(e){return e.sort(function(e,t){return e[0]-t[0]||e[1]-t[1]})}function _$(e,t){return(t[0]-e[0])**2+(t[1]-e[1])**2}function v$(e,t,n){let r=[t[0]-e[0],t[1]-e[1]],i=[n[0]-e[0],n[1]-e[1]],a=_$(e,t),o=_$(e,n);return(r[0]*i[0]+r[1]*i[1])/Math.sqrt(a*o)}function y$(e,t){for(let n=0;n<t.length-1;n++){let r=[t[n],t[n+1]];if(!(e[0][0]===r[0][0]&&e[0][1]===r[0][1]||e[0][0]===r[1][0]&&e[0][1]===r[1][1])&&m$(e[0],e[1],r[0],r[1]))return!0}return!1}function b$(e){let t=1/0,n=1/0,r=-1/0,i=-1/0;for(let a=e.length-1;a>=0;a--)e[a][0]<t&&(t=e[a][0]),e[a][1]<n&&(n=e[a][1]),e[a][0]>r&&(r=e[a][0]),e[a][1]>i&&(i=e[a][1]);return[r-t,i-n]}function x$(e){return[Math.min(e[0][0],e[1][0]),Math.min(e[0][1],e[1][1]),Math.max(e[0][0],e[1][0]),Math.max(e[0][1],e[1][1])]}function S$(e,t,n){let r=null,i=T$,a=T$,o,s;for(let c=0;c<t.length;c++)o=v$(e[0],e[1],t[c]),s=v$(e[1],e[0],t[c]),o>i&&s>a&&!y$([e[0],t[c]],n)&&!y$([e[1],t[c]],n)&&(i=o,a=s,r=t[c]);return r}function C$(e,t,n,r,i){let a=!1;for(let o=0;o<e.length-1;o++){let s=[e[o],e[o+1]],c=s[0][0]+`,`+s[0][1]+`,`+s[1][0]+`,`+s[1][1];if(_$(s[0],s[1])<t||i.has(c))continue;let l=0,u=x$(s),d,f,p;do u=r.extendBbox(u,l),d=u[2]-u[0],f=u[3]-u[1],p=S$(s,r.rangePoints(u),e),l++;while(p===null&&(n[0]>d||n[1]>f));d>=n[0]&&f>=n[1]&&i.add(c),p!==null&&(e.splice(o+1,0,p),r.removePoint(p),a=!0)}return a?C$(e,t,n,r,i):e}function w$(e,t,n){let r=t||20,i=h$(g$(zQ.toXy(e,n)));if(i.length<4){let e=i.concat([i[0]]);return n?zQ.fromXy(e,n):e}let a=b$(i),o=[a[0]*E$,a[1]*E$],s=f$(i).reverse().map(e=>i[e]);s.push(s[0]);let c=i.filter(function(e){return s.indexOf(e)<0}),l=Math.ceil(1/(i.length/(a[0]*a[1]))),u=C$(s,r**2,o,VQ(c,l),new Set);return n?zQ.fromXy(u,n):u}var T$=Math.cos(90/(180/Math.PI)),E$=.6;function D$(e,t,n){if(e.length===1)return O$(e[0],t,n);if(e.length===2)return k$(e,t,n);if(e.length===3){let[r,i,a]=Iy(e);if(Ty(r,i,a))return k$([r,a],t,n)}switch(n){case`smooth`:return j$(e,t);case`sharp`:return M$(e,t);default:return A$(e,t)}}var O$=(e,t,n)=>{if(n===`sharp`)return[[`M`,e[0]-t,e[1]-t],[`L`,e[0]+t,e[1]-t],[`L`,e[0]+t,e[1]+t],[`L`,e[0]-t,e[1]+t],[`Z`]];let r=[t,t,0,0,0];return[[`M`,e[0],e[1]-t],[`A`,...r,e[0],e[1]+t],[`A`,...r,e[0],e[1]-t]]},k$=(e,t,n)=>{let r=[t,t,0,0,0],i=n===`sharp`?Jv(e[0],ey(ry(Yv(e[0],e[1])),t)):e[0],a=n===`sharp`?Jv(e[1],ey(ry(Yv(e[1],e[0])),t)):e[1],o=ey(ry(ay(Yv(i,a),!1)),t),s=ey(o,-1),c=Jv(i,o),l=Jv(a,o),u=Jv(a,s),d=Jv(i,s);return n===`sharp`?[[`M`,c[0],c[1]],[`L`,l[0],l[1]],[`L`,u[0],u[1]],[`L`,d[0],d[1]],[`Z`]]:[[`M`,c[0],c[1]],[`L`,l[0],l[1]],[`A`,...r,u[0],u[1]],[`L`,d[0],d[1]],[`A`,...r,c[0],c[1]]]},A$=(e,t)=>{let n=Iy(e).map((n,r)=>{let i=(r-2+e.length)%e.length,a=(r-1+e.length)%e.length,o=(r+1)%e.length,s=e[i],c=e[a],l=e[o],u=Yv(s,c),d=Yv(c,n),f=Yv(n,l),p=(e,t)=>iy(e,t,!0)<Math.PI,m=p(u,d),h=p(d,f),g=e=>ey(ry(ay(e,!1)),t),_=g(d);return[{p:sy(m?Jv(c,g(u)):Jv(c,_)),concave:m&&c},{p:sy(h?Jv(n,g(f)):Jv(n,_)),concave:h&&n}]}),r=[t,t,0,0,0],i=n.findIndex((e,t)=>!n[(t-1+n.length)%n.length][0].concave&&!n[(t-1+n.length)%n.length][1].concave&&!e[0].concave&&!e[0].concave&&!e[1].concave),a=n.slice(i).concat(n.slice(0,i)),o=[];return a.flatMap((e,t)=>{let i=[],s=a[n.length-1];return t===0&&i.push([`M`,...s[1].p]),e[0].concave?o.push(e[0].p,e[1].p):i.push([`A`,...r,...e[0].p]),e[1].concave?o.unshift(e[1].p):i.push([`L`,...e[1].p]),o.length===3&&(i.pop(),i.push([`C`,...o.flat()]),o=[]),i})},j$=(e,t)=>{let n=Iy(e).map((t,n)=>{let r=e[(n+1)%e.length];return{p:t,v:ry(Yv(r,t))}});return n.forEach((r,i)=>{let a=n[i>0?i-1:e.length-1].v,o=ry(Jv(a,ey(r.v,iy(a,r.v,!0)<Math.PI?1:-1)));r.p=Jv(r.p,ey(o,t))}),kb(n.map(e=>e.p))},M$=(e,t)=>{let n=e.map((n,r)=>{let i=e[r===0?e.length-1:r-1],a=cy(ey(ry(ay(Yv(i,n),!1)),t));return[Jv(i,a),Jv(n,a)]}).flat();return n.map((e,t)=>t%2==0?null:fy([n[(t-1)%n.length],n[t%n.length]],[n[(t+1)%n.length],n[(t+2)%n.length]],!0)).filter(Boolean).map((e,t)=>[t===0?`M`:`L`,e[0],e[1]]).concat([[`Z`]])},N$=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},P$=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.hullMemberIds=[],this.drawHull=()=>{if(!this.shape)this.shape=new Mb({style:this.getHullStyle()}),this.context.canvas.appendChild(this.shape);else{let e=!_a(this.optionsCache,this.options);this.shape.update(this.getHullStyle(e))}this.optionsCache=Object.assign({},this.options)},this.updateHullPath=e=>{this.shape&&this.options.members.includes(Q(e.data))&&this.shape.update({d:this.getHullPath(!0)})},this.getHullPath=(e=!1)=>{let{graph:t}=this.context,n=this.getMember();if(n.length===0)return``;let r=n.map(e=>t.getNodeData(e)),i=w$(r.map(my),this.options.concavity).slice(1).reverse(),a=i.flatMap(e=>r.filter(t=>_a(my(t),e)).map(Q));return _a(a,this.hullMemberIds)&&!e?this.path:(this.hullMemberIds=a,this.path=D$(i,this.getPadding(),this.options.corner),this.path)},this.bindEvents()}bindEvents(){this.context.graph.on(Z.AFTER_RENDER,this.drawHull),this.context.graph.on(Z.AFTER_ELEMENT_UPDATE,this.updateHullPath)}unbindEvents(){this.context.graph.off(Z.AFTER_RENDER,this.drawHull),this.context.graph.off(Z.AFTER_ELEMENT_UPDATE,this.updateHullPath)}getHullStyle(e){let t=this.options,{members:n,padding:r,corner:i}=t,a=N$(t,[`members`,`padding`,`corner`]);return Object.assign(Object.assign({},a),{d:this.getHullPath(e)})}getPadding(){let{graph:e}=this.context;return this.hullMemberIds.reduce((t,n)=>{let{halfExtents:r}=e.getElementRenderBounds(n),i=Math.max(r[0],r[1]);return Math.max(t,i)},0)+this.options.padding}addMember(e){let t=Array.isArray(e)?e:[e];this.options.members=[...new Set([...this.options.members,...t])],this.shape.update({d:this.getHullPath()})}removeMember(e){let t=Array.isArray(e)?e:[e];this.options.members=this.options.members.filter(e=>!t.includes(e)),t.some(e=>this.hullMemberIds.includes(e))&&this.shape.update({d:this.getHullPath()})}updateMember(e){this.options.members=B(e)?e(this.options.members):e,this.shape.update(this.getHullStyle(!0))}getMember(){return this.options.members}destroy(){this.unbindEvents(),this.shape.destroy(),this.hullMemberIds=[],super.destroy()}};P$.defaultOptions={members:[],padding:10,corner:`rounded`,concavity:1/0,fill:`lightblue`,fillOpacity:.2,labelOpacity:1,stroke:`blue`,strokeOpacity:.2};function F$(e,t){t(e),e.children&&e.children.forEach(function(e){e&&F$(e,t)})}function I$(e){R$(e,!0)}function L$(e){R$(e,!1)}function R$(e,t){var n=t?`visible`:`hidden`;F$(e,function(e){e.attr(`visibility`,n)})}var z$=function(e){ka(t,e);function t(){var t=[...arguments],n=e.apply(this,W([],U(t),!1))||this;return n.isMutationObserved=!0,n.addEventListener(op.INSERTED,function(){L$(n)}),n}return t}(am);function B$(e){var t=e.appendChild(new z$({class:`offscreen`}));return L$(t),t}function V$(e){for(var t=e;t;){if(t.className===`offscreen`)return!0;t=t.parent}return!1}var H$=function(e){ka(t,e);function t(t){t===void 0&&(t={});var n=t.style,r=Aa(t,[`style`]);return e.call(this,H({style:H({text:``,fill:`black`,fontFamily:`sans-serif`,fontSize:16,fontStyle:`normal`,fontVariant:`normal`,fontWeight:`normal`,lineWidth:1,textAlign:`start`,textBaseline:`middle`},n)},r))||this}return Object.defineProperty(t.prototype,`offscreenGroup`,{get:function(){return this._offscreen||=B$(this),this._offscreen},enumerable:!1,configurable:!0}),t.prototype.disconnectedCallback=function(){var e;(e=this._offscreen)==null||e.destroy()},t}(ym);function U$(e){return e*Math.PI/180}function W$(e){return Number((e*180/Math.PI).toPrecision(5))}var G$=function(){function e(e,t,n,r){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),r===void 0&&(r=0),this.x=0,this.y=0,this.width=0,this.height=0,this.x=e,this.y=t,this.width=n,this.height=r}return Object.defineProperty(e.prototype,`bottom`,{get:function(){return this.y+this.height},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`left`,{get:function(){return this.x},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`right`,{get:function(){return this.x+this.width},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`top`,{get:function(){return this.y},enumerable:!1,configurable:!0}),e.fromRect=function(t){return new e(t.x,t.y,t.width,t.height)},e.prototype.toJSON=function(){return{x:this.x,y:this.y,width:this.width,height:this.height,top:this.top,right:this.right,bottom:this.bottom,left:this.left}},e.prototype.isPointIn=function(e,t){return e>=this.left&&e<=this.right&&t>=this.top&&t<=this.bottom},e}();function K$(e,t){return B(e)?e.apply(void 0,W([],U(t),!1)):e}var q$=function(e,t){var n=function(e){return`${t}-${e}`},r=Object.fromEntries(Object.entries(e).map(function(e){var t=U(e,2),r=t[0],i=t[1],a=n(i);return[r,{name:a,class:`.${a}`,id:`#${a}`,toString:function(){return a}}]}));return Object.assign(r,{prefix:n}),r},J$=5,Y$=function(e,t,n,r){n===void 0&&(n=0),r===void 0&&(r=J$),Object.entries(t).forEach(function(i){var a=U(i,2),o=a[0],s=a[1],c=e;Object.prototype.hasOwnProperty.call(t,o)&&(s?ki(s)?(ki(e[o])||(c[o]={}),n<r?Y$(e[o],s,n+1,r):c[o]=t[o]):Ci(s)?(c[o]=[],c[o]=c[o].concat(s)):c[o]=s:c[o]=s)})},X$=function(e){for(var t=[...arguments].slice(1),n=0;n<t.length;n+=1)Y$(e,t[n]);return e},Z$=function(e){return e!==void 0&&e!=null&&!Number.isNaN(e)},Q$,$$,e1=ua(function(e,t){var n=t.fontSize,r=t.fontFamily,i=t.fontWeight,a=t.fontStyle,o=t.fontVariant;return $$?$$(e,n):(Q$||=Y.offscreenCanvasCreator.getOrCreateContext(void 0),Q$.font=[a,o,i,`${n}px`,r].join(` `),Q$.measureText(e).width)},function(e,t){return[e,Object.values(t||t1(e)).join()].join(``)},4096),t1=function(e){var t=e.style.fontFamily||`sans-serif`,n=e.style.fontWeight||`normal`,r=e.style.fontStyle||`normal`,i=e.style.fontVariant,a=e.style.fontSize;return a=typeof a==`object`?a.value:a,{fontSize:a,fontFamily:t,fontWeight:n,fontStyle:r,fontVariant:i}};function n1(e){return e.nodeName===`text`?e:e.nodeName===`g`&&e.children.length===1&&e.children[0].nodeName===`text`?e.children[0]:null}function r1(e,t){var n=n1(e);n&&n.attr(t)}function i1(e,t,n){n===void 0&&(n=`...`),r1(e,{wordWrap:!0,wordWrapWidth:t,maxLines:1,textOverflow:n})}function a1(e,t,n,r){n===void 0&&(n=2),r===void 0&&(r=`top`),r1(e,{wordWrap:!0,wordWrapWidth:t,maxLines:n,textBaseline:r})}function o1(e){var t=e.nativeEvent,n=e.touches,r=e.clientX,i=e.clientY;if(t)return[t.clientX,t.clientY];if(n){var a=n[0];return[a.clientX,a.clientY]}return typeof r==`number`&&typeof i==`number`?[r,i]:[0,0]}function s1(e){return typeof e==`function`?e():Pi(e)||zi(e)?new H$({style:{text:String(e)}}):e}function c1(e,t){return typeof e==`function`?e():Pi(e)||zi(e)?new sm({style:H(H({pointerEvents:`auto`},t),{innerHTML:e})}):e}function l1(e,t){return e.reduce(function(e,n){return(e[n[t]]=e[n[t]]||[]).push(n),e},{})}function u1(e,t,n,r,i){return r===void 0&&(r=!0),i===void 0&&(i=function(e){e.node().removeChildren()}),e?n(t):(r&&i(t),null)}function d1(e,t,n,r,i){return r===void 0&&(r=!0),i===void 0&&(i=!1),r&&e===t||i&&e===n?!0:e>t&&e<n}var f1=function(e,t){return function(n){return e*(1-n)+t*n}};function p1(e,t){var n=t?t.length:0,r=e?Math.min(n,e.length):0;return function(i){var a=Array(r),o=Array(n),s=0;for(s=0;s<r;++s)a[s]=h1(e[s],t[s]);for(;s<n;++s)o[s]=t[s];for(s=0;s<r;++s)o[s]=a[s](i);return o}}function m1(e,t){e===void 0&&(e={}),t===void 0&&(t={});var n={},r={};return Object.entries(t).forEach(function(t){var i=U(t,2),a=i[0],o=i[1];a in e?n[a]=h1(e[a],o):r[a]=o}),function(e){return Object.entries(n).forEach(function(t){var n=U(t,2),i=n[0],a=n[1];return r[i]=a(e)}),r}}function h1(e,t){return typeof e==`number`&&typeof t==`number`?f1(e,t):Array.isArray(e)&&Array.isArray(t)?p1(e,t):typeof e==`object`&&typeof t==`object`?m1(e,t):(function(t){return e})}function g1(e,t,n,r){if(!r)return e.attr(`__keyframe_data__`,n),null;var i=r.duration,a=i===void 0?0:i,o=h1(t,n),s=Math.ceil(a/16),c=Array(s).fill(0).map(function(e,t,n){return{__keyframe_data__:o(t/(n.length-1))}});return e.animate(c,H({fill:`both`},r))}function _1(e,t){return[e[0]*t,e[1]*t]}function v1(e,t){return[e[0]+t[0],e[1]+t[1]]}function y1(e,t){return[e[0]-t[0],e[1]-t[1]]}function b1(e,t){return[Math.min(e[0],t[0]),Math.min(e[1],t[1])]}function x1(e,t){return[Math.max(e[0],t[0]),Math.max(e[1],t[1])]}function S1(e,t){return Math.sqrt((e[0]-t[0])**2+(e[1]-t[1])**2)}function C1(e){if(e[0]===0&&e[1]===0)return[0,0];var t=Math.sqrt(e[0]**2+e[1]**2);return[e[0]/t,e[1]/t]}function w1(e,t){return t?[e[1],-e[0]]:[-e[1],e[0]]}function T1(e,t){return+e.toPrecision(t)}function E1(e,t){var n={},r=Array.isArray(t)?t:[t];for(var i in e)r.includes(i)||(n[i]=e[i]);return n}function D1(e,t,n,r){var i,a=[],o=!!r,s,c,l=[1/0,1/0],u=[-1/0,-1/0],d,f,p;if(o){i=U(r,2),l=i[0],u=i[1];for(var m=0,h=e.length;m<h;m+=1){var g=e[m];l=b1(l,g),u=x1(u,g)}}for(var m=0,_=e.length;m<_;m+=1){var g=e[m];if(m===0&&!n)p=g;else if(m===_-1&&!n)f=g,a.push(p),a.push(f);else{s=e[[m?m-1:_-1,m-1][+!n]],c=e[n?(m+1)%_:m+1];var v=[0,0];v=y1(c,s),v=_1(v,t);var y=S1(g,s),b=S1(g,c),x=y+b;x!==0&&(y/=x,b/=x);var S=_1(v,-y),C=_1(v,b);f=v1(g,S),d=v1(g,C),d=b1(d,x1(c,g)),d=x1(d,b1(c,g)),S=y1(d,g),S=_1(S,-y/b),f=v1(g,S),f=b1(f,x1(s,g)),f=x1(f,b1(s,g)),C=y1(g,f),C=_1(C,b/y),d=v1(g,C),o&&(f=x1(f,l),f=b1(f,u),d=x1(d,l),d=b1(d,u)),a.push(p),a.push(f),p=d}}return n&&a.push(a.shift()),a}function O1(e,t,n){var r;t===void 0&&(t=!1),n===void 0&&(n=[[0,0],[1,1]]);for(var i=!!t,a=[],o=0,s=e.length;o<s;o+=2)a.push([e[o],e[o+1]]);for(var c=D1(a,.4,i,n),l=a.length,u=[],d,f,p,o=0;o<l-1;o+=1)d=c[o*2],f=c[o*2+1],p=a[o+1],u.push([`C`,d[0],d[1],f[0],f[1],p[0],p[1]]);return i&&(d=c[l],f=c[l+1],r=U(a,1),p=r[0],u.push([`C`,d[0],d[1],f[0],f[1],p[0],p[1]])),u}var k1=`$el.cx.cy.d.dx.dy.fill.fillOpacity.filter.fontFamily.fontSize.fontStyle.fontVariant.fontWeight.height.img.increasedLineWidthForHitTesting.innerHTML.isBillboard.billboardRotation.isSizeAttenuation.isClosed.isOverflowing.leading.letterSpacing.lineDash.lineHeight.lineWidth.markerEnd.markerEndOffset.markerMid.markerStart.markerStartOffset.maxLines.metrics.miterLimit.offsetX.offsetY.opacity.path.points.r.radius.rx.ry.shadowColor.src.stroke.strokeOpacity.text.textAlign.textBaseline.textDecorationColor.textDecorationLine.textDecorationStyle.textOverflow.textPath.textPathSide.textPathStartOffset.transform.transformOrigin.visibility.width.wordWrap.wordWrapWidth.x.x1.x2.y.y1.y2.z1.z2.zIndex`.split(`.`);function A1(e){return k1.includes(e)}function j1(e){var t={};for(var n in e)A1(n)&&(t[n]=e[n]);return t}function M1(e,t){if(e.length<=t)return e;for(var n=Math.floor(e.length/t),r=[],i=0;i<e.length;i+=n)r.push(e[i]);return r}function N1(e,t,n){n===void 0&&(n=!1);var r=e.getBBox(),i=r.width,a=r.height,o=t/Math.max(i,a);return n&&(e.style.transform=`scale(${o})`),o}function P1(e,t){var n=new Map;return e.forEach(function(e){var r=t(e);n.has(r)||n.set(r,[]),n.get(r).push(e)}),n}function F1(e){throw Error(e)}var I1=function(){function e(e,n,r,i,a,o,s){e===void 0&&(e=null),n===void 0&&(n=null),r===void 0&&(r=null),i===void 0&&(i=null),a===void 0&&(a=[null,null,null,null,null]),o===void 0&&(o=[]),s===void 0&&(s=[]),t.add(this),this._elements=Array.from(e),this._data=n,this._parent=r,this._document=i,this._enter=a[0],this._update=a[1],this._exit=a[2],this._merge=a[3],this._split=a[4],this._transitions=o,this._facetElements=s}e.prototype.selectAll=function(e){return new n(typeof e==`string`?this._parent.querySelectorAll(e):e,null,this._elements[0],this._document)},e.prototype.selectFacetAll=function(e){var t=typeof e==`string`?this._parent.querySelectorAll(e):e;return new n(this._elements,null,this._parent,this._document,void 0,void 0,t)},e.prototype.select=function(e){var t=typeof e==`string`?this._parent.querySelectorAll(e)[0]||null:e;return new n([t],null,t,this._document)},e.prototype.append=function(e){var t=this,r=typeof e==`function`?e:function(){return t.createElement(e)},i=[];if(this._data!==null){for(var a=0;a<this._data.length;a++){var o=this._data[a],s=U(Array.isArray(o)?o:[o,null],2),c=s[0],l=s[1],u=r(c,a);u.__data__=c,l!==null&&(u.__fromElements__=l),this._parent.appendChild(u),i.push(u)}return new n(i,null,this._parent,this._document)}for(var a=0;a<this._elements.length;a++){var d=this._elements[a],c=d.__data__,u=r(c,a);d.appendChild(u),i.push(u)}return new n(i,null,i[0],this._document)},e.prototype.maybeAppend=function(e,n){var i=Na(this,t,`m`,r).call(this,e[0]===`#`?e:`#${e}`,n);return i.attr(`id`,e),i},e.prototype.maybeAppendByClassName=function(e,n){var i=e.toString(),a=Na(this,t,`m`,r).call(this,i[0]===`.`?i:`.${i}`,n);return a.attr(`className`,i),a},e.prototype.maybeAppendByName=function(e,n){var i=Na(this,t,`m`,r).call(this,`[name="${e}"]`,n);return i.attr(`name`,e),i},e.prototype.data=function(e,t,r){var i,a;t===void 0&&(t=function(e){return e}),r===void 0&&(r=function(){return null});for(var o=[],s=[],c=new Set(this._elements),l=[],u=new Set,d=new Map(this._elements.map(function(e,n){return[t(e.__data__,n),e]})),f=new Map(this._facetElements.map(function(e,n){return[t(e.__data__,n),e]})),p=P1(this._elements,function(e){return r(e.__data__)}),m=0;m<e.length;m++){var h=e[m],g=t(h,m),_=r(h,m);if(d.has(g)){var v=d.get(g);v.__data__=h,v.__facet__=!1,s.push(v),c.delete(v),d.delete(g)}else if(f.has(g)){var v=f.get(g);v.__data__=h,v.__facet__=!0,s.push(v),f.delete(g)}else if(p.has(g)){var y=p.get(g);l.push([h,y]);try{for(var b=(i=void 0,ja(y)),x=b.next();!x.done;x=b.next()){var v=x.value;c.delete(v)}}catch(e){i={error:e}}finally{try{x&&!x.done&&(a=b.return)&&a.call(b)}finally{if(i)throw i.error}}p.delete(g)}else if(d.has(_)){var v=d.get(_);v.__toData__?v.__toData__.push(h):v.__toData__=[h],u.add(v),c.delete(v)}else o.push(h)}var S=[new n([],o,this._parent,this._document),new n(s,null,this._parent,this._document),new n(c,null,this._parent,this._document),new n([],l,this._parent,this._document),new n(u,null,this._parent,this._document)];return new n(this._elements,null,this._parent,this._document,S)},e.prototype.merge=function(e){var t=W(W([],U(this._elements),!1),U(e._elements),!1),r=W(W([],U(this._transitions),!1),U(e._transitions),!1);return new n(t,null,this._parent,this._document,void 0,r)},e.prototype.createElement=function(e){if(this._document)return this._document.createElement(e,{});var t=n.registry[e];return t?new t:F1(`Unknown node type: ${e}`)},e.prototype.join=function(e,t,n,r,i){e===void 0&&(e=function(e){return e}),t===void 0&&(t=function(e){return e}),n===void 0&&(n=function(e){return e.remove()}),r===void 0&&(r=function(e){return e}),i===void 0&&(i=function(e){return e.remove()});var a=e(this._enter),o=t(this._update),s=n(this._exit),c=r(this._merge),l=i(this._split);return o.merge(a).merge(s).merge(c).merge(l)},e.prototype.remove=function(){for(var e=function(e){var n=t._elements[e],r=t._transitions[e];r?r.then(function(){return n.remove()}):n.remove()},t=this,r=0;r<this._elements.length;r++)e(r);return new n([],null,this._parent,this._document,void 0,this._transitions)},e.prototype.each=function(e){for(var t=0;t<this._elements.length;t++){var n=this._elements[t],r=n.__data__;e.call(n,r,t)}return this},e.prototype.attr=function(e,t){var n=typeof t==`function`?t:function(){return t};return this.each(function(r,i){t!==void 0&&(this[e]=n.call(this,r,i))})},e.prototype.style=function(e,t,n){n===void 0&&(n=!0);var r=typeof t!=`function`||!n?function(){return t}:t;return this.each(function(n,i){t!==void 0&&(this.style[e]=r.call(this,n,i))})},e.prototype.styles=function(e,t){return e===void 0&&(e={}),t===void 0&&(t=!0),this.each(function(n,r){var i=this;Object.entries(e).forEach(function(e){var a=U(e,2),o=a[0],s=a[1],c=typeof s!=`function`||!t?function(){return s}:s;s!==void 0&&i.attr(o,c.call(i,n,r))})})},e.prototype.update=function(e,t){t===void 0&&(t=!0);var n=typeof e!=`function`||!t?function(){return e}:e;return this.each(function(t,r){e&&this.update&&this.update(n.call(this,t,r))})},e.prototype.maybeUpdate=function(e,t){t===void 0&&(t=!0);var n=typeof e!=`function`||!t?function(){return e}:e;return this.each(function(t,r){e&&this.update&&this.update(n.call(this,t,r))})},e.prototype.transition=function(e){this._transitions;var t=Array(this._elements.length);return this.each(function(n,r){t[r]=e.call(this,n,r)}),this._transitions=Ai(t),this},e.prototype.on=function(e,t){return this.each(function(){this.addEventListener(e,t)}),this},e.prototype.call=function(e){var t=[...arguments].slice(1);return e.call.apply(e,W([this._parent,this],U(t),!1)),this},e.prototype.node=function(){return this._elements[0]},e.prototype.nodes=function(){return this._elements},e.prototype.transitions=function(){return this._transitions.filter(function(e){return!!e})},e.prototype.parent=function(){return this._parent};var t,n=e,r;return t=new WeakSet,r=function(e,t){var r=this._elements[0],i=r.querySelector(e);if(i)return new n([i],null,this._parent,this._document);var a=typeof t==`string`?this.createElement(t):t();return r.appendChild(a),new n([a],null,this._parent,this._document)},e.registry={g:am,rect:_m,circle:em,path:fm,text:H$,ellipse:rm,image:cm,line:um,polygon:mm,polyline:gm,html:sm},e}();function $(e){return new I1([e],null,e,e.ownerDocument)}function L1(e,t,n){return e.querySelector(t)?$(e).select(t):$(e).append(n)}function R1(e){if(zi(e))return[e,e,e,e];if(Ci(e)){var t=e.length;if(t===1)return[e[0],e[0],e[0],e[0]];if(t===2)return[e[0],e[1],e[0],e[1]];if(t===3)return[e[0],e[1],e[2],e[1]];if(t===4)return e}return[0,0,0,0]}function z1(e){var t=e.getLocalBounds(),n=t.min,r=t.max,i=U([n,r],2),a=U(i[0],2),o=a[0],s=a[1],c=U(i[1],2),l=c[0],u=c[1];return{x:o,y:s,width:l-o,height:u-s,left:o,bottom:u,top:s,right:l}}function B1(e,t){var n=U(e,2),r=n[0],i=n[1],a=U(t,2),o=a[0],s=a[1];return r!==o&&i===s}function V1(e,t){var n,r,i=t.attributes;try{for(var a=ja(Object.entries(i)),o=a.next();!o.done;o=a.next()){var s=U(o.value,2),c=s[0],l=s[1];c!==`id`&&c!==`className`&&e.attr(c,l)}}catch(e){n={error:e}}finally{try{o&&!o.done&&(r=a.return)&&r.call(a)}finally{if(n)throw n.error}}}function H1(e){return e.toString().charAt(0).toUpperCase()+e.toString().slice(1)}function U1(e){return e.toString().charAt(0).toLowerCase()+e.toString().slice(1)}function W1(e,t){return`${t}${H1(e)}`}function G1(e,t,n){n===void 0&&(n=!0);var r=t||e.match(/^([a-z][a-z0-9]+)/)?.[0]||``,i=e.replace(RegExp(`^(${r})`),``);return n?U1(i):i}function K1(e,t){Object.entries(t).forEach(function(t){var n=U(t,2),r=n[0],i=n[1];W([e],U(e.querySelectorAll(r)),!1).filter(function(e){return e.matches(r)}).forEach(function(e){if(e){var t=e;t.style.cssText+=Object.entries(i).reduce(function(e,t){return`${e}${t.join(`:`)};`},``)}})})}var q1=function(e,t){if(!e?.startsWith(t))return!1;var n=e[t.length];return n>=`A`&&n<=`Z`};function J1(e,t,n){n===void 0&&(n=!1);var r={};return Object.entries(e).forEach(function(e){var i=U(e,2),a=i[0],o=i[1];if(!(a===`className`||a===`class`)){if(q1(a,`show`)&&q1(G1(a,`show`),t)!==n)a===W1(t,`show`)?r[a]=o:r[a.replace(new RegExp(H1(t)),``)]=o;else if(!q1(a,`show`)&&q1(a,t)!==n){var s=G1(a,t);s===`filter`&&typeof o==`function`||(r[s]=o)}}}),r}function Y1(e,t){return Object.entries(e).reduce(function(e,n){var r=U(n,2),i=r[0],a=r[1];return i.startsWith(`show`)?e[`show${t}${i.slice(4)}`]=a:e[`${t}${H1(i)}`]=a,e},{})}function X1(e,t){t===void 0&&(t=[`x`,`y`,`class`,`className`]);var n=[`transform`,`transformOrigin`,`anchor`,`visibility`,`pointerEvents`,`zIndex`,`cursor`,`clipPath`,`clipPathTargets`,`offsetPath`,`offsetPathTargets`,`offsetDistance`,`draggable`,`droppable`],r={},i={};return Object.entries(e).forEach(function(e){var a=U(e,2),o=a[0],s=a[1];t.includes(o)||(n.indexOf(o)===-1?r[o]=s:i[o]=s)}),[r,i]}function Z1(e,t){var n={YYYY:e.getFullYear(),MM:e.getMonth()+1,DD:e.getDate(),HH:e.getHours(),mm:e.getMinutes(),ss:e.getSeconds()},r=t;return Object.keys(n).forEach(function(e){var t=n[e];r=r.replace(e,e===`YYYY`?`${t}`:`${t}`.padStart(2,`0`))}),r}function Q1(e,t,n){var r=e.getBBox(),i=r.width,a=r.height,o=U([t,n].map(function(e,t){return e.includes(`%`)?parseFloat(e.match(/[+-]?([0-9]*[.])?[0-9]+/)?.[0]||`0`)/100*(t===0?i:a):e}),2);return[o[0],o[1]]}function $1(e,t){if(t)try{var n=t.replace(/translate\(([+-]*[\d]+[%]*),[ ]*([+-]*[\d]+[%]*)\)/g,function(t,n,r){return`translate(${Q1(e,n,r)})`});e.attr(`transform`,n)}catch{}}function e0(e){return e[0]?.map(function(t,n){return e.map(function(e){return e[n]})})||[]}var t0=function(e,t){if(t==null){e.innerHTML=``;return}e.replaceChildren?Array.isArray(t)?e.replaceChildren.apply(e,W([],U(t),!1)):e.replaceChildren(t):(e.innerHTML=``,Array.isArray(t)?t.forEach(function(t){return e.appendChild(t)}):e.appendChild(t))};function n0(e){return/\S+-\S+/g.test(e)?e.split(`-`).map(function(e){return e[0]}):e.length>2?[e[0]]:e.split(``)}var r0=function(e){var t=new DOMParser().parseFromString(e,`text/html`).body.firstElementChild;if(console.log(t?.getClientRects(),11),!t)return 0;var n=t.getAttribute(`style`)||``,r=Object.fromEntries(n.split(`;`).map(function(e){return e.trim()}).filter(function(e){return e.includes(`:`)}).map(function(e){var t=U(e.split(`:`).map(function(e){return e.trim()}),2),n=t[0],r=t[1];return[n.toLowerCase(),r]})),i=function(e){if(!e)return 0;var t=e.match(/([\d.]+)px/);return t?parseFloat(t[1]):0};if(r.height)return i(r.height);var a=i(r[`font-size`])||16,o=r[`line-height`],s=!o||o===`normal`?1.2*a:o.endsWith(`px`)?i(o):/^[\d.]+$/.test(o)?parseFloat(o)*a:a,c=i(r[`padding-top`]),l=i(r[`padding-bottom`]);if(r.padding){var u=r.padding.split(/\s+/).map(i);u.length===1||u.length===2?(c=u[0],l=u[0]):(u.length===3||u.length===4)&&(c=u[0],l=u[2])}var d=i(r[`border-top-width`]),f=i(r[`border-bottom-width`]);if(r.border){var p=r.border.match(/([\d.]+)px/);p&&(d=parseFloat(p[1]),f=parseFloat(p[1]))}if(r[`border-width`]){var u=r[`border-width`].split(/\s+/).map(i);u.length===1||u.length===2?(d=u[0],f=u[0]):(u.length===3||u.length===4)&&(d=u[0],f=u[2])}return s+c+l+d+f};function i0(){R$(this,this.attributes.visibility!==`hidden`)}var a0=function(e){ka(t,e);function t(t,n){n===void 0&&(n={});var r=e.call(this,X$({},{style:n},t))||this;return r.initialized=!1,r._defaultOptions=n,r}return Object.defineProperty(t.prototype,`offscreenGroup`,{get:function(){return this._offscreen||=B$(this),this._offscreen},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`defaultOptions`,{get:function(){return this._defaultOptions},enumerable:!1,configurable:!0}),t.prototype.connectedCallback=function(){this.render(this.attributes,this),this.bindEvents(this.attributes,this),this.initialized=!0},t.prototype.disconnectedCallback=function(){var e;(e=this._offscreen)==null||e.destroy()},t.prototype.attributeChangedCallback=function(e){e===`visibility`&&i0.call(this)},t.prototype.update=function(e,t){return this.attr(X$({},this.attributes,e||{})),this.render?.call(this,this.attributes,this,t)},t.prototype.clear=function(){this.removeChildren()},t.prototype.bindEvents=function(e,t){},t.prototype.getSubShapeStyle=function(e){return e.x,e.y,e.transform,e.transformOrigin,e.class,e.className,e.zIndex,Aa(e,[`x`,`y`,`transform`,`transformOrigin`,`class`,`className`,`zIndex`])},t}(nm),o0=function(e,t,n){return[[`M`,e-n,t],[`A`,n,n,0,1,0,e+n,t],[`A`,n,n,0,1,0,e-n,t],[`Z`]]},s0=o0,c0=function(e,t,n){return[[`M`,e-n,t-n],[`L`,e+n,t-n],[`L`,e+n,t+n],[`L`,e-n,t+n],[`Z`]]},l0=function(e,t,n){return[[`M`,e-n,t],[`L`,e,t-n],[`L`,e+n,t],[`L`,e,t+n],[`Z`]]},u0=function(e,t,n){var r=n*Math.sin(1/3*Math.PI);return[[`M`,e-n,t+r],[`L`,e,t-r],[`L`,e+n,t+r],[`Z`]]},d0=function(e,t,n){var r=n*Math.sin(1/3*Math.PI);return[[`M`,e-n,t-r],[`L`,e+n,t-r],[`L`,e,t+r],[`Z`]]},f0=function(e,t,n){var r=n/2*Math.sqrt(3);return[[`M`,e,t-n],[`L`,e+r,t-n/2],[`L`,e+r,t+n/2],[`L`,e,t+n],[`L`,e-r,t+n/2],[`L`,e-r,t-n/2],[`Z`]]},p0=function(e,t,n){var r=n-1.5;return[[`M`,e-n,t-r],[`L`,e+n,t+r],[`L`,e+n,t-r],[`L`,e-n,t+r],[`Z`]]},m0=function(e,t,n){return[[`M`,e,t+n],[`L`,e,t-n]]},h0=function(e,t,n){return[[`M`,e-n,t-n],[`L`,e+n,t+n],[`M`,e+n,t-n],[`L`,e-n,t+n]]},g0=function(e,t,n){return[[`M`,e-n/2,t-n],[`L`,e+n/2,t-n],[`M`,e,t-n],[`L`,e,t+n],[`M`,e-n/2,t+n],[`L`,e+n/2,t+n]]},_0=function(e,t,n){return[[`M`,e-n,t],[`L`,e+n,t],[`M`,e,t-n],[`L`,e,t+n]]},v0=function(e,t,n){return[[`M`,e-n,t],[`L`,e+n,t]]},y0=function(e,t,n){return[[`M`,e-n,t],[`L`,e+n,t]]},b0=y0,x0=function(e,t,n){return[[`M`,e-n,t],[`A`,n/2,n/2,0,1,1,e,t],[`A`,n/2,n/2,0,1,0,e+n,t]]},S0=function(e,t,n){return[[`M`,e-n-1,t-2.5],[`L`,e,t-2.5],[`L`,e,t+2.5],[`L`,e+n+1,t+2.5]]},C0=function(e,t,n){return[[`M`,e-n-1,t+2.5],[`L`,e,t+2.5],[`L`,e,t-2.5],[`L`,e+n+1,t-2.5]]},w0=function(e,t,n){return[[`M`,e-(n+1),t+2.5],[`L`,e-n/2,t+2.5],[`L`,e-n/2,t-2.5],[`L`,e+n/2,t-2.5],[`L`,e+n/2,t+2.5],[`L`,e+n+1,t+2.5]]};function T0(e,t){return[[`M`,e-5,t+2.5],[`L`,e-5,t],[`L`,e,t],[`L`,e,t-3],[`L`,e,t+3],[`L`,e+6.5,t+3]]}var E0=function(e,t,n){return[[`M`,e-n,t-n],[`L`,e+n,t],[`L`,e-n,t+n],[`Z`]]},D0=function(e,t,n){var r=n,i=n*.2,a=n*.7;return[[`M`,e-r,t],[`A`,r,r,0,1,0,e+r,t],[`A`,r,r,0,1,0,e-r,t],[`Z`],[`M`,e-a,t],[`L`,e-i,t],[`M`,e+i,t],[`L`,e+a,t],[`M`,e,t-a],[`L`,e,t-i],[`M`,e,t+i],[`L`,e,t+a]]};function O0(e){var t=`default`;if(wi(e)&&e instanceof Image)t=`image`;else if(B(e))t=`symbol`;else if(Pi(e)){var n=RegExp(`data:(image|text)`);t=e.match(n)?`base64`:/^(https?:\/\/(([a-zA-Z0-9]+-?)+[a-zA-Z0-9]+\.)+[a-zA-Z]+)(:\d+)?(\/.*)?(\?.*)?(#.*)?$/.test(e)?`url`:`symbol`}return t}function k0(e){var t=O0(e);return[`base64`,`url`,`image`].includes(t)?`image`:e&&t===`symbol`?`path`:null}var A0=function(e){ka(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.render=function(e,n){var r=e.x,i=r===void 0?0:r,a=e.y,o=a===void 0?0:a,s=this.getSubShapeStyle(e),c=s.symbol,l=s.size,u=l===void 0?16:l,d=Aa(s,[`symbol`,`size`]),f=k0(c);u1(!!f,$(n),function(e){e.maybeAppendByClassName(`marker`,f).attr(`className`,`marker ${f}-marker`).call(function(e){if(f===`image`){var n=u*2;e.styles({img:c,width:n,height:n,x:i-u,y:o-u})}else{var n=u/2,r=B(c)?c:t.getSymbol(c);e.styles(H({d:r?.(i,o,n)},d))}})})},t.MARKER_SYMBOL_MAP=new Map,t.registerSymbol=function(e,n){t.MARKER_SYMBOL_MAP.set(e,n)},t.getSymbol=function(e){return t.MARKER_SYMBOL_MAP.get(e)},t.getSymbols=function(){return Array.from(t.MARKER_SYMBOL_MAP.keys())},t}(a0);A0.registerSymbol(`cross`,h0),A0.registerSymbol(`hyphen`,v0),A0.registerSymbol(`line`,m0),A0.registerSymbol(`plus`,_0),A0.registerSymbol(`tick`,g0),A0.registerSymbol(`circle`,o0),A0.registerSymbol(`point`,s0),A0.registerSymbol(`bowtie`,p0),A0.registerSymbol(`hexagon`,f0),A0.registerSymbol(`square`,c0),A0.registerSymbol(`diamond`,l0),A0.registerSymbol(`triangle`,u0),A0.registerSymbol(`triangle-down`,d0),A0.registerSymbol(`line`,m0),A0.registerSymbol(`dot`,y0),A0.registerSymbol(`dash`,b0),A0.registerSymbol(`smooth`,x0),A0.registerSymbol(`hv`,S0),A0.registerSymbol(`vh`,C0),A0.registerSymbol(`hvh`,w0),A0.registerSymbol(`vhv`,T0),A0.registerSymbol(`focus`,D0);function j0(e,...t){return t.reduce((e,t)=>n=>e(t(n)),e)}function M0(e,t){return t-e?n=>(n-e)/(t-e):e=>.5}function N0(e,t){let n=t<e?t:e,r=e>t?e:t;return e=>Math.min(Math.max(n,e),r)}function P0(e,t,n,r,i){let a=n||0,o=r||e.length,s=i||(e=>e);for(;a<o;){let n=Math.floor((a+o)/2);s(e[n])>t?o=n:a=n+1}return a}var F0=Math.sqrt(50),I0=Math.sqrt(10),L0=Math.sqrt(2);function R0(e,t,n){let r=(t-e)/Math.max(0,n),i=Math.floor(Math.log(r)/Math.LN10),a=r/10**i;return i>=0?(a>=F0?10:a>=I0?5:a>=L0?2:1)*10**i:-(10**-i)/(a>=F0?10:a>=I0?5:a>=L0?2:1)}var z0=(e,t,n=5)=>{let r=[e,t],i=0,a=r.length-1,o=r[i],s=r[a],c;return s<o&&([o,s]=[s,o],[i,a]=[a,i]),c=R0(o,s,n),c>0?(o=Math.floor(o/c)*c,s=Math.ceil(s/c)*c,c=R0(o,s,n)):c<0&&(o=Math.ceil(o*c)/c,s=Math.floor(s*c)/c,c=R0(o,s,n)),c>0?(r[i]=Math.floor(o/c)*c,r[a]=Math.ceil(s/c)*c):c<0&&(r[i]=Math.ceil(o*c)/c,r[a]=Math.floor(s*c)/c),r};function B0(e){return!na(e)&&!$i(e)&&!Number.isNaN(e)}var V0=o(((e,t)=>{t.exports={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]}})),H0=o(((e,t)=>{t.exports=function(e){return!e||typeof e==`string`?!1:e instanceof Array||Array.isArray(e)||e.length>=0&&(e.splice instanceof Function||Object.getOwnPropertyDescriptor(e,e.length-1)&&e.constructor.name!==`String`)}})),U0=o(((e,t)=>{var n=H0(),r=Array.prototype.concat,i=Array.prototype.slice,a=t.exports=function(e){for(var t=[],a=0,o=e.length;a<o;a++){var s=e[a];n(s)?t=r.call(t,i.call(s)):t.push(s)}return t};a.wrap=function(e){return function(){return e(a(arguments))}}})),W0=l(o(((e,t)=>{var n=V0(),r=U0(),i=Object.hasOwnProperty,a=Object.create(null);for(var o in n)i.call(n,o)&&(a[n[o]]=o);var s=t.exports={to:{},get:{}};s.get=function(e){var t=e.substring(0,3).toLowerCase(),n,r;switch(t){case`hsl`:n=s.get.hsl(e),r=`hsl`;break;case`hwb`:n=s.get.hwb(e),r=`hwb`;break;default:n=s.get.rgb(e),r=`rgb`;break}return n?{model:r,value:n}:null},s.get.rgb=function(e){if(!e)return null;var t=/^#([a-f0-9]{3,4})$/i,r=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,a=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,o=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,s=/^(\w+)$/,l=[0,0,0,1],u,d,f;if(u=e.match(r)){for(f=u[2],u=u[1],d=0;d<3;d++){var p=d*2;l[d]=parseInt(u.slice(p,p+2),16)}f&&(l[3]=parseInt(f,16)/255)}else if(u=e.match(t)){for(u=u[1],f=u[3],d=0;d<3;d++)l[d]=parseInt(u[d]+u[d],16);f&&(l[3]=parseInt(f+f,16)/255)}else if(u=e.match(a)){for(d=0;d<3;d++)l[d]=parseInt(u[d+1],0);u[4]&&(u[5]?l[3]=parseFloat(u[4])*.01:l[3]=parseFloat(u[4]))}else if(u=e.match(o)){for(d=0;d<3;d++)l[d]=Math.round(parseFloat(u[d+1])*2.55);u[4]&&(u[5]?l[3]=parseFloat(u[4])*.01:l[3]=parseFloat(u[4]))}else if(u=e.match(s))return u[1]===`transparent`?[0,0,0,0]:i.call(n,u[1])?(l=n[u[1]],l[3]=1,l):null;else return null;for(d=0;d<3;d++)l[d]=c(l[d],0,255);return l[3]=c(l[3],0,1),l},s.get.hsl=function(e){if(!e)return null;var t=e.match(/^hsla?\(\s*([+-]?(?:\d{0,3}\.)?\d+)(?:deg)?\s*,?\s*([+-]?[\d\.]+)%\s*,?\s*([+-]?[\d\.]+)%\s*(?:[,|\/]\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/);if(t){var n=parseFloat(t[4]);return[(parseFloat(t[1])%360+360)%360,c(parseFloat(t[2]),0,100),c(parseFloat(t[3]),0,100),c(isNaN(n)?1:n,0,1)]}return null},s.get.hwb=function(e){if(!e)return null;var t=e.match(/^hwb\(\s*([+-]?\d{0,3}(?:\.\d+)?)(?:deg)?\s*,\s*([+-]?[\d\.]+)%\s*,\s*([+-]?[\d\.]+)%\s*(?:,\s*([+-]?(?=\.\d|\d)(?:0|[1-9]\d*)?(?:\.\d*)?(?:[eE][+-]?\d+)?)\s*)?\)$/);if(t){var n=parseFloat(t[4]);return[(parseFloat(t[1])%360+360)%360,c(parseFloat(t[2]),0,100),c(parseFloat(t[3]),0,100),c(isNaN(n)?1:n,0,1)]}return null},s.to.hex=function(){var e=r(arguments);return`#`+l(e[0])+l(e[1])+l(e[2])+(e[3]<1?l(Math.round(e[3]*255)):``)},s.to.rgb=function(){var e=r(arguments);return e.length<4||e[3]===1?`rgb(`+Math.round(e[0])+`, `+Math.round(e[1])+`, `+Math.round(e[2])+`)`:`rgba(`+Math.round(e[0])+`, `+Math.round(e[1])+`, `+Math.round(e[2])+`, `+e[3]+`)`},s.to.rgb.percent=function(){var e=r(arguments),t=Math.round(e[0]/255*100),n=Math.round(e[1]/255*100),i=Math.round(e[2]/255*100);return e.length<4||e[3]===1?`rgb(`+t+`%, `+n+`%, `+i+`%)`:`rgba(`+t+`%, `+n+`%, `+i+`%, `+e[3]+`)`},s.to.hsl=function(){var e=r(arguments);return e.length<4||e[3]===1?`hsl(`+e[0]+`, `+e[1]+`%, `+e[2]+`%)`:`hsla(`+e[0]+`, `+e[1]+`%, `+e[2]+`%, `+e[3]+`)`},s.to.hwb=function(){var e=r(arguments),t=``;return e.length>=4&&e[3]!==1&&(t=`, `+e[3]),`hwb(`+e[0]+`, `+e[1]+`%, `+e[2]+`%`+t+`)`},s.to.keyword=function(e){return a[e.slice(0,3)]};function c(e,t,n){return Math.min(Math.max(t,e),n)}function l(e){var t=Math.round(e).toString(16).toUpperCase();return t.length<2?`0`+t:t}}))());function G0(e,t,n){let r=n;return r<0&&(r+=1),r>1&&--r,r<1/6?e+(t-e)*6*r:r<1/2?t:r<2/3?e+(t-e)*(2/3-r)*6:e}function K0(e){let t=e[0]/360,n=e[1]/100,r=e[2]/100,i=e[3];if(n===0)return[r*255,r*255,r*255,i];let a=r<.5?r*(1+n):r+n-r*n,o=2*r-a,s=G0(o,a,t+1/3),c=G0(o,a,t),l=G0(o,a,t-1/3);return[s*255,c*255,l*255,i]}function q0(e){let t=W0.default.get(e);if(!t)return null;let{model:n,value:r}=t;return n===`rgb`?r:n===`hsl`?K0(r):null}var J0=(e,t)=>n=>e*(1-n)+t*n,Y0=(e,t)=>{let n=q0(e),r=q0(t);return n===null||r===null?n?()=>e:()=>t:e=>{let t=[,,,,];for(let i=0;i<4;i+=1){let a=n[i],o=r[i];t[i]=a*(1-e)+o*e}let[i,a,o,s]=t;return`rgba(${Math.round(i)}, ${Math.round(a)}, ${Math.round(o)}, ${s})`}},X0=(e,t)=>typeof e==`number`&&typeof t==`number`?J0(e,t):typeof e==`string`&&typeof t==`string`?Y0(e,t):()=>e,Z0=(e,t)=>{let n=J0(e,t);return e=>Math.round(n(e))};function Q0({map:e,initKey:t},n){let r=t(n);return e.has(r)?e.get(r):n}function $0({map:e,initKey:t},n){let r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function e2({map:e,initKey:t},n){let r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function t2(e){return typeof e==`object`?e.valueOf():e}var n2=class extends Map{constructor(e){if(super(),this.map=new Map,this.initKey=t2,e!==null)for(let[t,n]of e)this.set(t,n)}get(e){return super.get(Q0({map:this.map,initKey:this.initKey},e))}has(e){return super.has(Q0({map:this.map,initKey:this.initKey},e))}set(e,t){return super.set($0({map:this.map,initKey:this.initKey},e),t)}delete(e){return super.delete(e2({map:this.map,initKey:this.initKey},e))}},r2=class{constructor(e){this.options=ma({},this.getDefaultOptions()),this.update(e)}getOptions(){return this.options}update(e={}){this.options=ma({},this.options,e),this.rescale(e)}rescale(e){}},i2=Symbol(`defaultUnknown`);function a2(e,t,n){for(let r=0;r<t.length;r+=1)e.has(t[r])||e.set(n(t[r]),r)}function o2(e){let{value:t,from:n,to:r,mapper:i,notFoundReturn:a}=e,o=i.get(t);if(o===void 0){if(a!==i2)return a;o=n.push(t)-1,i.set(t,o)}return r[o%r.length]}function s2(e){return e instanceof Date?e=>`${e}`:typeof e==`object`?e=>JSON.stringify(e):e=>e}var c2=class e extends r2{getDefaultOptions(){return{domain:[],range:[],unknown:i2}}constructor(e){super(e)}map(e){return this.domainIndexMap.size===0&&a2(this.domainIndexMap,this.getDomain(),this.domainKey),o2({value:this.domainKey(e),mapper:this.domainIndexMap,from:this.getDomain(),to:this.getRange(),notFoundReturn:this.options.unknown})}invert(e){return this.rangeIndexMap.size===0&&a2(this.rangeIndexMap,this.getRange(),this.rangeKey),o2({value:this.rangeKey(e),mapper:this.rangeIndexMap,from:this.getRange(),to:this.getDomain(),notFoundReturn:this.options.unknown})}rescale(e){let[t]=this.options.domain,[n]=this.options.range;if(this.domainKey=s2(t),this.rangeKey=s2(n),!this.rangeIndexMap){this.rangeIndexMap=new Map,this.domainIndexMap=new Map;return}(!e||e.range)&&this.rangeIndexMap.clear(),(!e||e.domain||e.compare)&&(this.domainIndexMap.clear(),this.sortedDomain=void 0)}clone(){return new e(this.options)}getRange(){return this.options.range}getDomain(){if(this.sortedDomain)return this.sortedDomain;let{domain:e,compare:t}=this.options;return this.sortedDomain=t?[...e].sort(t):e,this.sortedDomain}};function l2(e){let t=Math.min(...e);return e.map(e=>e/t)}function u2(e,t){let n=t-e.length;return n>0?[...e,...Array(n).fill(1)]:n<0?e.slice(0,t):e}function d2(e){return Math.round(e*0xe8d4a51000)/0xe8d4a51000}function f2(e){let{domain:t,range:n,paddingOuter:r,paddingInner:i,flex:a,round:o,align:s}=e,c=t.length,l=u2(a,c),[u,d]=n,f=d-u,p=f/(2/c*r+1-1/c*i),m=p*i/c,h=p-c*m,g=l2(l),_=h/g.reduce((e,t)=>e+t),v=new n2(t.map((e,t)=>{let n=g[t]*_;return[e,o?Math.floor(n):n]})),y=new n2(t.map((e,t)=>{let n=g[t]*_+m;return[e,o?Math.floor(n):n]})),b=Array.from(y.values()).reduce((e,t)=>e+t),x=u+(f-(b-b/c*i))*s,S=o?Math.round(x):x,C=Array(c);for(let e=0;e<c;e+=1){C[e]=d2(S);let n=t[e];S+=y.get(n)}return{valueBandWidth:v,valueStep:y,adjustedRange:C}}function p2(e){let{domain:t}=e,n=t.length;if(n===0)return{valueBandWidth:void 0,valueStep:void 0,adjustedRange:[]};if(e.flex?.length)return f2(e);let{range:r,paddingOuter:i,paddingInner:a,round:o,align:s}=e,c,l,u=r[0],d=r[1]-u,f=i*2,p=n-a;c=d/Math.max(1,f+p),o&&(c=Math.floor(c)),u+=(d-c*(n-a))*s,l=c*(1-a),o&&(u=Math.round(u),l=Math.round(l));let m=Array(n).fill(0).map((e,t)=>u+t*c);return{valueStep:c,valueBandWidth:l,adjustedRange:m}}var m2=class e extends c2{getDefaultOptions(){return{domain:[],range:[0,1],align:.5,round:!1,paddingInner:0,paddingOuter:0,padding:0,unknown:i2,flex:[]}}constructor(e){super(e)}clone(){return new e(this.options)}getStep(e){return this.valueStep===void 0?1:typeof this.valueStep==`number`?this.valueStep:e===void 0?Array.from(this.valueStep.values())[0]:this.valueStep.get(e)}getBandWidth(e){return this.valueBandWidth===void 0?1:typeof this.valueBandWidth==`number`?this.valueBandWidth:e===void 0?Array.from(this.valueBandWidth.values())[0]:this.valueBandWidth.get(e)}getRange(){return this.adjustedRange}getPaddingInner(){let{padding:e,paddingInner:t}=this.options;return e>0?e:t}getPaddingOuter(){let{padding:e,paddingOuter:t}=this.options;return e>0?e:t}rescale(){super.rescale();let{align:e,domain:t,range:n,round:r,flex:i}=this.options,{adjustedRange:a,valueBandWidth:o,valueStep:s}=p2({align:e,range:n,round:r,flex:i,paddingInner:this.getPaddingInner(),paddingOuter:this.getPaddingOuter(),domain:t});this.valueStep=s,this.valueBandWidth=o,this.adjustedRange=a}},h2=(e,t,n)=>{let r,i,a=e,o=t;if(a===o&&n>0)return[a];let s=R0(a,o,n);if(s===0||!Number.isFinite(s))return[];if(s>0){a=Math.ceil(a/s),o=Math.floor(o/s),i=Array(r=Math.ceil(o-a+1));for(let e=0;e<r;e+=1)i[e]=(a+e)*s}else{s=-s,a=Math.ceil(a*s),o=Math.floor(o*s),i=Array(r=Math.ceil(o-a+1));for(let e=0;e<r;e+=1)i[e]=(a+e)/s}return i},g2=(e,t,n)=>{let[r,i]=e,[a,o]=t,s,c;return r<i?(s=M0(r,i),c=n(a,o)):(s=M0(i,r),c=n(o,a)),j0(c,s)},_2=(e,t,n)=>{let r=Math.min(e.length,t.length)-1,i=Array(r),a=Array(r),o=e[0]>e[r],s=o?[...e].reverse():e,c=o?[...t].reverse():t;for(let e=0;e<r;e+=1)i[e]=M0(s[e],s[e+1]),a[e]=n(c[e],c[e+1]);return t=>{let n=P0(e,t,1,r)-1,o=i[n],s=a[n];return j0(s,o)(t)}},v2=(e,t,n,r)=>(Math.min(e.length,t.length)>2?_2:g2)(e,t,r?Z0:n),y2=class extends r2{getDefaultOptions(){return{domain:[0,1],range:[0,1],nice:!1,clamp:!1,round:!1,interpolate:J0,tickCount:5}}map(e){return B0(e)?this.output(e):this.options.unknown}invert(e){return B0(e)?this.input(e):this.options.unknown}nice(){if(!this.options.nice)return;let[e,t,n,...r]=this.getTickMethodOptions();this.options.domain=this.chooseNice()(e,t,n,...r)}getTicks(){let{tickMethod:e}=this.options,[t,n,r,...i]=this.getTickMethodOptions();return e(t,n,r,...i)}getTickMethodOptions(){let{domain:e,tickCount:t}=this.options;return[e[0],e[e.length-1],t]}chooseNice(){return z0}rescale(){this.nice();let[e,t]=this.chooseTransforms();this.composeOutput(e,this.chooseClamp(e)),this.composeInput(e,t,this.chooseClamp(t))}chooseClamp(e){let{clamp:t,range:n}=this.options,r=this.options.domain.map(e),i=Math.min(r.length,n.length);return t?N0(r[0],r[i-1]):Da}composeOutput(e,t){let{domain:n,range:r,round:i,interpolate:a}=this.options;this.output=j0(v2(n.map(e),r,a,i),t,e)}composeInput(e,t,n){let{domain:r,range:i}=this.options;this.input=j0(t,n,v2(i,r.map(e),J0))}},b2=class e extends y2{getDefaultOptions(){return{domain:[0,1],range:[0,1],unknown:void 0,nice:!1,clamp:!1,round:!1,interpolate:X0,tickMethod:h2,tickCount:5}}chooseTransforms(){return[Da,Da]}clone(){return new e(this.options)}},x2=function(e){ka(t,e);function t(t){var n=this,r=t.style,i=Aa(t,[`style`]);return n=e.call(this,ma({},{type:`column`},H({style:r},i)))||this,n.columnsGroup=new am({name:`columns`}),n.appendChild(n.columnsGroup),n.render(),n}return t.prototype.render=function(){var e=this.attributes,t=e.columns,n=e.x,r=e.y;this.columnsGroup.style.transform=`translate(${n}, ${r})`,$(this.columnsGroup).selectAll(`.column`).data(t.flat()).join(function(e){return e.append(`rect`).attr(`className`,`column`).each(function(e){this.attr(e)})},function(e){return e.each(function(e){this.attr(e)})},function(e){return e.remove()})},t.prototype.update=function(e){this.attr(X$({},this.attributes,e)),this.render()},t.prototype.clear=function(){this.removeChildren()},t}($p),S2=function(e){ka(t,e);function t(t){var n=this,r=t.style,i=Aa(t,[`style`]);return n=e.call(this,ma({},{type:`lines`},H({style:r},i)))||this,n.linesGroup=n.appendChild(new am),n.areasGroup=n.appendChild(new am),n.render(),n}return t.prototype.render=function(){var e=this.attributes,t=e.lines,n=e.areas,r=e.x,i=e.y;this.style.transform=`translate(${r}, ${i})`,t&&this.renderLines(t),n&&this.renderAreas(n)},t.prototype.clear=function(){this.linesGroup.removeChildren(),this.areasGroup.removeChildren()},t.prototype.update=function(e){this.attr(X$({},this.attributes,e)),this.render()},t.prototype.renderLines=function(e){$(this.linesGroup).selectAll(`.line`).data(e).join(function(e){return e.append(`path`).attr(`className`,`line`).each(function(e){this.attr(e)})},function(e){return e.each(function(e){this.attr(e)})},function(e){return e.remove()})},t.prototype.renderAreas=function(e){$(this.linesGroup).selectAll(`.area`).data(e).join(function(e){return e.append(`path`).attr(`className`,`area`).each(function(e){this.attr(e)})},function(e){return e.each(function(e){this.style(e)})},function(e){return e.remove()})},t}($p);function C2(e,t){var n,r=t.x,i=t.y,a=U(i.getOptions().range||[0,0],2),o=a[0],s=a[1];return s>o&&(n=U([o,s],2),s=n[0],o=n[1]),e.map(function(e){return e.map(function(e,t){return[r.map(t),Ri(i.map(e),s,o)]})})}function w2(e,t){t===void 0&&(t=!1);var n=t?e.length-1:0,r=e.map(function(e,t){return W([t===n?`M`:`L`],U(e),!1)});return t?r.reverse():r}function T2(e,t){if(t===void 0&&(t=!1),e.length<=2)return w2(e);for(var n=[],r=e.length,i=0;i<r;i+=1){var a=t?e[r-i-1]:e[i];_a(a,n.slice(-2))||n.push.apply(n,W([],U(a),!1))}var o=O1(n,!1);return t?o.unshift(W([`M`],U(e[r-1]),!1)):o.unshift(W([`M`],U(e[0]),!1)),o}function E2(e,t,n){var r=oa(e);return r.push([`L`,t,n],[`L`,0,n],[`Z`]),r}function D2(e,t,n,r){return e.map(function(e){return E2(t?T2(e):w2(e),n,r)})}function O2(e,t,n){for(var r=[],i=e.length-1;i>=0;--i){var a=e[i],o=w2(a),s=void 0;if(i===0)s=E2(o,t,n);else{var c=e[i-1],l=w2(c,!0);l[0][0]=`L`,s=W(W(W([],U(o),!1),U(l),!1),[[`Z`]],!1)}r.push(s)}return r}function k2(e,t,n){for(var r=[],i=e.length-1;i>=0;--i){var a=e[i],o=T2(a),s=void 0;if(i===0)s=E2(o,t,n);else{var c=e[i-1],l=T2(c,!0),u=a[0];l[0][0]=`L`,s=W(W(W([],U(o),!1),U(l),!1),[W([`M`],U(u),!1),[`Z`]],!1)}r.push(s)}return r}function A2(e){return e.length===0?[0,0]:[Mi(Ui(e,function(e){return Mi(e)||0})),ji(Hi(e,function(e){return ji(e)||0}))]}function j2(e){for(var t=oa(e),n=t[0].length,r=U([Array(n).fill(0),Array(n).fill(0)],2),i=r[0],a=r[1],o=0;o<t.length;o+=1)for(var s=t[o],c=0;c<n;c+=1)s[c]>=0?(s[c]+=i[c],i[c]=s[c]):(s[c]+=a[c],a[c]=s[c]);return t}var M2=function(e){ka(t,e);function t(t){return e.call(this,t,{type:`line`,x:0,y:0,width:200,height:20,isStack:!1,color:[`#83daad`,`#edbf45`,`#d2cef9`,`#e290b3`,`#6f63f4`],smooth:!0,lineLineWidth:1,areaOpacity:0,isGroup:!1,columnLineWidth:1,columnStroke:`#fff`,scale:1,spacing:0})||this}return Object.defineProperty(t.prototype,`rawData`,{get:function(){var e=this.attributes.data;if(!e||e?.length===0)return[[]];var t=oa(e);return zi(t[0])?[t]:t},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`data`,{get:function(){return this.attributes.isStack?j2(this.rawData):this.rawData},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`scales`,{get:function(){return this.createScales(this.data)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`baseline`,{get:function(){var e=this.scales.y,t=U(e.getOptions().domain||[0,0],2),n=t[0],r=t[1];return r<0?e.map(r):e.map(n<0?0:n)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`containerShape`,{get:function(){var e=this.attributes;return{width:e.width,height:e.height}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`linesStyle`,{get:function(){var e=this,t=this.attributes,n=t.type,r=t.isStack,i=t.smooth;if(n!==`line`)throw Error(`linesStyle can only be used in line type`);var a=J1(this.attributes,`area`),o=J1(this.attributes,`line`),s=this.containerShape.width,c=this.data;if(c[0].length===0)return{lines:[],areas:[]};var l=this.scales,u=l.x,d=l.y,f=C2(c,{type:`line`,x:u,y:d}),p=[];if(a){var m=this.baseline;p=r?i?k2(f,s,m):O2(f,s,m):D2(f,i,s,m)}return{lines:f.map(function(t,n){return H({stroke:e.getColor(n),d:i?T2(t):w2(t)},o)}),areas:p.map(function(t,n){return H({d:t,fill:e.getColor(n)},a)})}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`columnsStyle`,{get:function(){var e=this,t=J1(this.attributes,`column`),n=this.attributes,r=n.isStack,i=n.type,a=n.scale;if(i!==`column`)throw Error(`columnsStyle can only be used in column type`);var o=this.containerShape.height,s=this.rawData;if(!s)return{columns:[]};r&&(s=j2(s));var c=this.createScales(s),l=c.x,u=c.y,d=U(A2(s),2),f=d[0],p=d[1],m=new b2({domain:[0,p-(f>0?0:f)],range:[0,o*a]}),h=l.getBandWidth(),g=this.rawData;return{columns:s.map(function(n,i){return n.map(function(n,a){var o=h/s.length;return H(H({fill:e.getColor(i)},t),r?function(){return{x:l.map(a),y:u.map(n),width:h,height:m.map(g[i][a])}}():function(){return{x:l.map(a)+o*i,y:n>=0?u.map(n):u.map(0),width:o,height:m.map(Math.abs(n))}}())})})}},enumerable:!1,configurable:!0}),t.prototype.render=function(e,t){L1(t,`.container`,`rect`).attr(`className`,`container`).node();var n=e.type,r=e.x,i=e.y,a=`spark${n}`,o=H({x:r,y:i},n===`line`?this.linesStyle:this.columnsStyle);$(t).selectAll(`.spark`).data([n]).join(function(e){return e.append(function(e){return e===`line`?new S2({className:a,style:o}):new x2({className:a,style:o})}).attr(`className`,`spark ${a}`)},function(e){return e.update(o)},function(e){return e.remove()})},t.prototype.getColor=function(e){var t=this.attributes.color;return Ci(t)?t[e%t.length]:B(t)?t.call(null,e):t},t.prototype.createScales=function(e){var t=this.attributes,n=t.type,r=t.scale,i=t.range,a=i===void 0?[]:i,o=t.spacing,s=this.containerShape,c=s.width,l=s.height,u=U(A2(e),2),d=u[0],f=u[1],p=new b2({domain:[a[0]??d,a[1]??f],range:[l,l*(1-r)]});return n===`line`?{type:n,x:new b2({domain:[0,e[0].length-1],range:[0,c]}),y:p}:{type:n,x:new m2({domain:e[0].map(function(e,t){return t}),range:[0,c],paddingInner:o,paddingOuter:o/2,align:.5}),y:p}},t.tag=`sparkline`,t}(a0);function N2(e){return typeof e==`boolean`?!1:`enter`in e&&`update`in e&&`exit`in e}function P2(e){if(!e)return{enter:!1,update:!1,exit:!1};var t=[`enter`,`update`,`exit`],n=Object.fromEntries(Object.entries(e).filter(function(e){var n=U(e,1)[0];return!t.includes(n)}));return Object.fromEntries(t.map(function(t){return N2(e)?e[t]===!1?[t,!1]:[t,H(H({},e[t]),n)]:[t,n]}))}function F2(e,t){e?e.finished.then(t):t()}function I2(e,t){e.length===0?t():Promise.all(e.map(function(e){return e?.finished})).then(t)}function L2(e,t){`update`in e?e.update(t):e.attr(t)}function R2(e,t,n){if(t.length===0)return null;if(!n){var r=t.slice(-1)[0];return L2(e,{style:r}),null}return e.animate(t,n)}function z2(e,t){return!(e.nodeName!==`text`||t.nodeName!==`text`||e.attributes.text!==t.attributes.text)}function B2(e,t,n,r){if(r===void 0&&(r=`destroy`),z2(e,t))return e.remove(),[null];var i=function(){r===`destroy`?e.destroy():r===`hide`&&L$(e),t.isVisible()&&I$(t)};if(!n)return i(),[null];var a=n.duration,o=a===void 0?0:a,s=n.delay,c=s===void 0?0:s,l=Math.ceil(o/2),u=o/4,d=U(e.getGeometryBounds().center,2),f=d[0],p=d[1],m=U(t.getGeometryBounds().center,2),h=m[0],g=m[1],_=U([(f+h)/2-f,(p+g)/2-p],2),v=_[0],y=_[1],b=e.style.opacity,x=b===void 0?1:b,S=t.style.opacity,C=S===void 0?1:S,w=e.style.transform||``,T=t.style.transform||``,E=e.animate([{opacity:x,transform:`translate(0, 0) ${w}`},{opacity:0,transform:`translate(${v}, ${y}) ${w}`}],H(H({fill:`both`},n),{duration:c+l+u})),D=t.animate([{opacity:0,transform:`translate(${-v}, ${-y}) ${T}`,offset:.01},{opacity:C,transform:`translate(0, 0) ${T}`}],H(H({fill:`both`},n),{duration:l+u,delay:c+l-u}));return F2(D,i),[E,D]}function V2(e,t,n){var r={},i={};return Object.entries(t).forEach(function(t){var n=U(t,2),a=n[0],o=n[1];if(!V(o)){var s=e.style[a]||e.parsedStyle[a]||0;s!==o&&(r[a]=s,i[a]=o)}}),n?R2(e,[r,i],H({fill:`both`},n)):(L2(e,i),null)}function H2(e,t){return e.style.opacity||(e.style.opacity=1),V2(e,{opacity:0},t)}var U2={fill:`#fff`,lineWidth:1,radius:2,size:10,stroke:`#bfbfbf`,strokeOpacity:1,zIndex:0},W2={fill:`#000`,fillOpacity:.45,fontSize:12,textAlign:`center`,textBaseline:`middle`,zIndex:1},G2={x:0,y:0,orientation:`horizontal`,showLabel:!0,type:`start`},K2=q$({foreground:`foreground`,handle:`handle`,selection:`selection`,sparkline:`sparkline`,sparklineGroup:`sparkline-group`,track:`track`,brushArea:`brush-area`},`slider`),q2=q$({labelGroup:`label-group`,label:`label`,iconGroup:`icon-group`,icon:`icon`,iconRect:`icon-rect`,iconLine:`icon-line`},`handle`),J2=function(e){ka(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.render=function(e,t){var n=e.x,r=e.y,i=e.size,a=i===void 0?10:i,o=e.radius,s=o===void 0?a/4:o,c=e.orientation,l=e.classNamePrefix,u=Aa(e,[`x`,`y`,`size`,`radius`,`orientation`,`classNamePrefix`]),d=a,f=d*2.4,p=l?`${q2.iconRect.name} ${l}handle-icon-rect`:q2.iconRect.name,m=function(e){return l?`${q2.iconLine}-${e} ${l}handle-icon-line`:`${q2.iconLine}-${e}`},h=$(t).maybeAppendByClassName(q2.iconRect,`rect`).attr(`className`,p).styles(H(H({},u),{width:d,height:f,radius:s,x:n-d/2,y:r-f/2,transformOrigin:`center`})),g=n+1/3*d-d/2,_=n+2/3*d-d/2,v=r+1/4*f-f/2,y=r+3/4*f-f/2;h.maybeAppendByClassName(`${q2.iconLine}-1`,`line`).attr(`className`,m(1)).styles(H({x1:g,x2:g,y1:v,y2:y},u)),h.maybeAppendByClassName(`${q2.iconLine}-2`,`line`).attr(`className`,m(2)).styles(H({x1:_,x2:_,y1:v,y2:y},u)),c===`vertical`&&(h.node().style.transform=`rotate(90)`)},t}(a0),Y2=function(e){ka(t,e);function t(t){return e.call(this,t,G2)||this}return t.prototype.renderLabel=function(e){var t=this,n=this.attributes,r=n.x,i=n.y,a=n.showLabel,o=J1(this.attributes,`label`),s=o.x,c=s===void 0?0:s,l=o.y,u=l===void 0?0:l,d=o.transform,f=o.transformOrigin,p=U(X1(Aa(o,[`x`,`y`,`transform`,`transformOrigin`]),[]),2),m=p[0],h=p[1],g=$(e).maybeAppendByClassName(q2.labelGroup,`g`).styles(h),_=H(H({},W2),m),v=_.text,y=Aa(_,[`text`]);u1(!!a,g,function(e){t.label=e.maybeAppendByClassName(q2.label,`text`).styles(H(H({},y),{x:r+c,y:i+u,transform:d,transformOrigin:f,text:`${v}`})),t.label.on(`mousedown`,function(e){e.stopPropagation()}),t.label.on(`touchstart`,function(e){e.stopPropagation()})})},t.prototype.renderIcon=function(e){var t=this.attributes,n=t.x,r=t.y,i=t.orientation,a=t.type,o=t.classNamePrefix,s=H(H({x:n,y:r,orientation:i,classNamePrefix:o},U2),J1(this.attributes,`icon`)),c=this.attributes.iconShape,l=c===void 0?function(){return new J2({style:s})}:c;$(e).maybeAppendByClassName(q2.iconGroup,`g`).selectAll(q2.icon.class).data([l]).join(function(e){return e.append(typeof l==`string`?l:function(){return l(a)}).attr(`className`,q2.icon.name)},function(e){return e.update(s)},function(e){return e.remove()})},t.prototype.render=function(e,t){this.renderIcon(t),this.renderLabel(t)},t}(a0),X2=function(e){ka(t,e);function t(t){var n=e.call(this,t,H(H(H({x:0,y:0,animate:{duration:100,fill:`both`},brushable:!0,formatter:function(e){return e.toString()},handleSpacing:2,orientation:`horizontal`,padding:0,autoFitLabel:!0,scrollable:!0,selectionFill:`#5B8FF9`,selectionFillOpacity:.45,selectionZIndex:2,showHandle:!0,showLabel:!0,slidable:!0,trackFill:`#416180`,trackLength:200,trackOpacity:.05,trackSize:20,trackZIndex:-1,values:[0,1],type:`range`,selectionType:`select`,handleIconOffset:0},Y1(G2,`handle`)),Y1(U2,`handleIcon`)),Y1(W2,`handleLabel`)))||this;return n.range=[0,1],n.onDragStart=function(e){return function(t){t.stopPropagation(),n.target=e,n.prevPos=n.getOrientVal(o1(t));var r=n.availableSpace,i=r.x,a=r.y,o=n.getBBox(),s=o.x,c=o.y;n.selectionStartPos=n.getRatio(n.prevPos-n.getOrientVal([i,a])-n.getOrientVal([+s,+c])),n.selectionWidth=0,document.addEventListener(`pointermove`,n.onDragging),document.addEventListener(`pointerup`,n.onDragEnd)}},n.onDragging=function(e){var t=n.attributes,r=t.slidable,i=t.brushable,a=t.type;e.stopPropagation();var o=n.getOrientVal(o1(e)),s=o-n.prevPos;if(s){var c=n.getRatio(s);switch(n.target){case`start`:r&&n.setValuesOffset(c);break;case`end`:r&&n.setValuesOffset(0,c);break;case`selection`:r&&n.setValuesOffset(c,c);break;case`track`:if(!i)return;n.selectionWidth+=c,a===`range`?n.innerSetValues([n.selectionStartPos,n.selectionStartPos+n.selectionWidth].sort(),!0):n.innerSetValues([0,n.selectionStartPos+n.selectionWidth],!0);break;default:break}n.prevPos=o}},n.onDragEnd=function(){document.removeEventListener(`pointermove`,n.onDragging),document.removeEventListener(`pointermove`,n.onDragging),document.removeEventListener(`pointerup`,n.onDragEnd),n.target=``,n.updateHandlesPosition(!1)},n.onValueChange=function(e){var t=n.attributes,r=t.onChange,i=t.type,a=i===`range`?e:e[1],o=i===`range`?n.getValues():n.getValues()[1],s=new Xf(`valuechange`,{detail:{oldValue:a,value:o}});n.dispatchEvent(s),r?.(o)},n.selectionStartPos=0,n.selectionWidth=0,n.prevPos=0,n.target=``,n}return Object.defineProperty(t.prototype,`values`,{get:function(){return this.attributes.values},set:function(e){this.attributes.values=this.clampValues(e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`sparklineStyle`,{get:function(){if(this.attributes.orientation!==`horizontal`)return null;var e=J1(this.attributes,`sparkline`);return H(H({zIndex:0},this.availableSpace),e)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`shape`,{get:function(){var e=this.attributes,t=e.trackLength,n=e.trackSize,r=U(this.getOrientVal([[t,n],[n,t]]),2);return{width:r[0],height:r[1]}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`availableSpace`,{get:function(){var e=this.attributes;e.x,e.y;var t=e.padding,n=U(R1(t),4),r=n[0],i=n[1],a=n[2],o=n[3],s=this.shape,c=s.width,l=s.height;return{x:o,y:r,width:c-(o+i),height:l-(r+a)}},enumerable:!1,configurable:!0}),t.prototype.getValues=function(){return this.values},t.prototype.setValues=function(e,t){e===void 0&&(e=[0,0]),t===void 0&&(t=!1),this.attributes.values=e;var n=t===!1?!1:this.attributes.animate;this.updateSelectionArea(n),this.updateHandlesPosition(n)},t.prototype.updateSelectionArea=function(e){var t=this.calcSelectionArea();this.foregroundGroup.selectAll(K2.selection.class).each(function(n,r){V2(this,t[r],e)})},t.prototype.updateHandlesPosition=function(e){this.attributes.showHandle&&(this.startHandle&&V2(this.startHandle,this.getHandleStyle(`start`),e),this.endHandle&&V2(this.endHandle,this.getHandleStyle(`end`),e))},t.prototype.innerSetValues=function(e,t){e===void 0&&(e=[0,0]),t===void 0&&(t=!1);var n=this.values,r=this.clampValues(e);this.attributes.values=r,this.setValues(r),t&&this.onValueChange(n)},t.prototype.renderTrack=function(e){var t=this.attributes,n=t.x,r=t.y,i=J1(this.attributes,`track`);this.trackShape=$(e).maybeAppendByClassName(K2.track,`rect`).styles(H(H({x:n,y:r},this.shape),i))},t.prototype.renderBrushArea=function(e){var t=this.attributes,n=t.x,r=t.y,i=t.brushable;this.brushArea=$(e).maybeAppendByClassName(K2.brushArea,`rect`).styles(H({x:n,y:r,fill:`transparent`,cursor:i?`crosshair`:`default`},this.shape))},t.prototype.renderSparkline=function(e){var t=this,n=this.attributes,r=n.x,i=n.y,a=n.orientation,o=$(e).maybeAppendByClassName(K2.sparklineGroup,`g`);u1(a===`horizontal`,o,function(e){var n=H(H({},t.sparklineStyle),{x:r,y:i});e.maybeAppendByClassName(K2.sparkline,function(){return new M2({style:n})}).update(n)})},t.prototype.renderHandles=function(){var e=this,t,n=this.attributes,r=n.showHandle,i=n.type===`range`?[`start`,`end`]:[`end`],a=r?i:[],o=this;(t=this.foregroundGroup)==null||t.selectAll(K2.handle.class).data(a.map(function(e){return{type:e}}),function(e){return e.type}).join(function(t){return t.append(function(t){var n=t.type;return new Y2({style:e.getHandleStyle(n)})}).each(function(e){var t=e.type;this.attr(`class`,`${K2.handle.name} ${t}-handle`);var n=`${t}Handle`;o[n]=this,this.addEventListener(`pointerdown`,o.onDragStart(t))})},function(e){return e.each(function(e){var t=e.type;this.update(o.getHandleStyle(t))})},function(e){return e.each(function(e){var t=`${e.type}Handle`;o[t]=void 0}).remove()})},t.prototype.renderSelection=function(e){var t=this.attributes,n=t.x,r=t.y,i=t.type,a=t.selectionType;this.foregroundGroup=$(e).maybeAppendByClassName(K2.foreground,`g`);var o=J1(this.attributes,`selection`),s=function(e){return e.style(`visibility`,function(e){return e.show?`visible`:`hidden`}).style(`cursor`,function(e){return a===`select`?`grab`:a===`invert`?`crosshair`:`default`}).styles(H(H({},o),{transform:`translate(${n}, ${r})`}))},c=this;this.foregroundGroup.selectAll(K2.selection.class).data(i===`value`?[]:this.calcSelectionArea().map(function(e,t){return{style:H({},e),index:t,show:a===`select`?t===1:t!==1}}),function(e){return e.index}).join(function(e){return e.append(`rect`).attr(`className`,K2.selection.name).call(s).each(function(e,t){var n=this;t===1?(c.selectionShape=$(this),this.on(`pointerdown`,function(e){n.attr(`cursor`,`grabbing`),c.onDragStart(`selection`)(e)}),c.dispatchCustomEvent(this,`pointerenter`,`selectionMouseenter`),c.dispatchCustomEvent(this,`pointerleave`,`selectionMouseleave`),c.dispatchCustomEvent(this,`click`,`selectionClick`),this.addEventListener(`pointerdown`,function(){n.attr(`cursor`,`grabbing`)}),this.addEventListener(`pointerup`,function(){n.attr(`cursor`,`pointer`)}),this.addEventListener(`pointerover`,function(){n.attr(`cursor`,`pointer`)})):this.on(`pointerdown`,c.onDragStart(`track`))})},function(e){return e.call(s)},function(e){return e.remove()}),this.updateSelectionArea(!1),this.renderHandles()},t.prototype.render=function(e,t){this.renderTrack(t),this.renderSparkline(t),this.renderBrushArea(t),this.renderSelection(t)},t.prototype.clampValues=function(e,t){var n;t===void 0&&(t=4);var r=U(this.range,2),i=r[0],a=r[1],o=U(this.getValues().map(function(e){return T1(e,t)}),2),s=o[0],c=o[1],l=U(((Array.isArray(e)?e:[s,e??c])||[s,c]).map(function(e){return T1(e,t)}),2),u=l[0],d=l[1];if(this.attributes.type===`value`)return[0,Ri(d,i,a)];u>d&&(n=U([d,u],2),u=n[0],d=n[1]);var f=d-u;return f>a-i?[i,a]:u<i?s===i&&c===d?[i,d]:[i,f+i]:d>a?c===a&&s===u?[u,a]:[a-f,a]:[u,d]},t.prototype.calcSelectionArea=function(e){var t=U(this.clampValues(e),2),n=t[0],r=t[1],i=this.availableSpace,a=i.x,o=i.y,s=i.width,c=i.height;return this.getOrientVal([[{y:o,height:c,x:a,width:n*s},{y:o,height:c,x:n*s+a,width:(r-n)*s},{y:o,height:c,x:r*s,width:(1-r)*s}],[{x:a,width:s,y:o,height:n*c},{x:a,width:s,y:n*c+o,height:(r-n)*c},{x:a,width:s,y:r*c,height:(1-r)*c}]])},t.prototype.calcHandlePosition=function(e){var t=this.attributes.handleIconOffset,n=this.availableSpace,r=n.x,i=n.y,a=n.width,o=n.height,s=U(this.clampValues(),2),c=s[0],l=s[1],u=e===`start`?-t:t,d=(e===`start`?c:l)*this.getOrientVal([a,o])+u;return{x:r+this.getOrientVal([d,a/2]),y:i+this.getOrientVal([o/2,d])}},t.prototype.inferTextStyle=function(e){return this.attributes.orientation===`horizontal`?{}:e===`start`?{transformOrigin:`left center`,transform:`rotate(90)`,textAlign:`start`}:e===`end`?{transformOrigin:`right center`,transform:`rotate(90)`,textAlign:`end`}:{}},t.prototype.calcHandleText=function(e){var t,n=this.attributes,r=n.type,i=n.orientation,a=n.formatter,o=n.autoFitLabel,s=J1(this.attributes,`handle`),c=J1(s,`label`),l=s.spacing,u=this.getHandleSize(),d=this.clampValues(),f=a(e===`start`?d[0]:d[1]),p=new H$({style:H(H(H({},c),this.inferTextStyle(e)),{text:f})}),m=p.getBBox(),h=m.width,g=m.height;if(p.destroy(),!o){if(r===`value`)return{text:f,x:0,y:-g-l};var _=l+u+(i===`horizontal`?h/2:0);return t={text:f},t[i===`horizontal`?`x`:`y`]=e===`start`?-_:_,t}var v=0,y=0,b=this.availableSpace,x=b.width,S=b.height,C=this.calcSelectionArea()[1],w=C.x,T=C.y,E=C.width,D=C.height,O=l+u;if(i===`horizontal`){var k=O+h/2;v=e===`start`?w-O-h>0?-k:k:x-w-E-O>h?k:-k}else{var A=O,j=g+O;y=e===`start`?T-u>g?-j:A:S-(T+D)-u>g?j:-A}return{x:v,y,text:f}},t.prototype.getHandleLabelStyle=function(e){return H(H(H({},J1(this.attributes,`handleLabel`)),this.calcHandleText(e)),this.inferTextStyle(e))},t.prototype.getHandleIconStyle=function(){var e=this.attributes.handleIconShape,t=J1(this.attributes,`handleIcon`);return H({cursor:this.getOrientVal([`ew-resize`,`ns-resize`]),shape:e,size:this.getHandleSize()},t)},t.prototype.getHandleStyle=function(e){var t=this.attributes,n=t.x,r=t.y,i=t.showLabel,a=t.showLabelOnInteraction,o=t.orientation,s=this.calcHandlePosition(e),c=s.x,l=s.y,u=this.calcHandleText(e),d=i;return!i&&a&&(d=!!this.target),H(H(H({},Y1(this.getHandleIconStyle(),`icon`)),Y1(H(H({},this.getHandleLabelStyle(e)),u),`label`)),{transform:`translate(${c+n}, ${l+r})`,orientation:o,showLabel:d,type:e,zIndex:3})},t.prototype.getHandleSize=function(){var e=this.attributes,t=e.handleIconSize,n=e.width,r=e.height;return t||Math.floor((this.getOrientVal([+r,+n])+4)/2.4)},t.prototype.getOrientVal=function(e){var t=U(e,2),n=t[0],r=t[1];return this.attributes.orientation===`horizontal`?n:r},t.prototype.setValuesOffset=function(e,t){t===void 0&&(t=0);var n=this.attributes.type,r=U(this.getValues(),2),i=r[0],a=r[1],o=[i+(n===`range`?e:0),a+t].sort();this.innerSetValues(o,!0)},t.prototype.getRatio=function(e){var t=this.availableSpace,n=t.width,r=t.height;return e/this.getOrientVal([n,r])},t.prototype.dispatchCustomEvent=function(e,t,n){var r=this;e.on(t,function(e){e.stopPropagation(),r.dispatchEvent(new Xf(n,{detail:e}))})},t.prototype.bindEvents=function(){this.addEventListener(`wheel`,this.onScroll);var e=this.brushArea;this.dispatchCustomEvent(e,`click`,`trackClick`),this.dispatchCustomEvent(e,`pointerenter`,`trackMouseenter`),this.dispatchCustomEvent(e,`pointerleave`,`trackMouseleave`),e.on(`pointerdown`,this.onDragStart(`track`))},t.prototype.onScroll=function(e){if(this.attributes.scrollable){var t=e.deltaX,n=e.deltaY||t,r=this.getRatio(n);this.setValuesOffset(r,r)}},t.tag=`slider`,t}(a0),Z2={gridGroup:`grid-group`,mainGroup:`main-group`,lineGroup:`line-group`,tickGroup:`tick-group`,labelGroup:`label-group`,titleGroup:`title-group`,grid:`grid`,line:`line`,lineFirst:`line-first`,lineSecond:`line-second`,tick:`tick`,tickItem:`tick-item`,label:`label`,labelItem:`label-item`,title:`title`},Q2={data:[],animate:{enter:!1,update:{duration:100,easing:`ease-in-out-sine`,fill:`both`},exit:{duration:100,fill:`both`}},showArrow:!0,showGrid:!0,showLabel:!0,showLine:!0,showTick:!0,showTitle:!0,showTrunc:!1,dataThreshold:100,lineLineWidth:1,lineStroke:`black`,crossPadding:10,titleFill:`black`,titleFontSize:12,titlePosition:`lb`,titleSpacing:0,titleTextAlign:`center`,titleTextBaseline:`middle`,lineArrow:function(){return new fm({style:{d:[[`M`,10,10],[`L`,-10,0],[`L`,10,-10],[`L`,0,0],[`L`,10,10],[`Z`]],fill:`black`,transformOrigin:`center`}})},labelAlign:`parallel`,labelDirection:`positive`,labelFontSize:12,labelSpacing:0,gridConnect:`line`,gridControlAngles:[],gridDirection:`positive`,gridLength:0,gridType:`segment`,lineArrowOffset:15,lineArrowSize:10,tickDirection:`positive`,tickLength:5,tickLineWidth:1,tickStroke:`black`,labelOverlap:[]};ma({},Q2,{style:{type:`arc`}}),ma({},Q2,{style:{}});var $2=q$({mainGroup:Z2.mainGroup,gridGroup:Z2.gridGroup,grid:Z2.grid,lineGroup:Z2.lineGroup,line:Z2.line,tickGroup:Z2.tickGroup,tick:Z2.tick,tickItem:Z2.tickItem,labelGroup:Z2.labelGroup,label:Z2.label,labelItem:Z2.labelItem,titleGroup:Z2.titleGroup,title:Z2.title,lineFirst:Z2.lineFirst,lineSecond:Z2.lineSecond},`axis`),e4=q$({lineGroup:`line-group`,line:`line`,regionGroup:`region-group`,region:`region`},`grid`);function t4(e){return e.reduce(function(e,t,n){return e.push(W([n===0?`M`:`L`],U(t),!1)),e},[])}function n4(e,t,n){var r=t.connect,i=r===void 0?`line`:r,a=t.center;if(i===`line`)return t4(e);if(!a)return[];var o=S1(e[0],a),s=+!n;return e.reduce(function(e,t,n){return n===0?e.push(W([`M`],U(t),!1)):e.push(W([`A`,o,o,0,0,s],U(t),!1)),e},[])}function r4(e,t,n){return t.type===`surround`?n4(e,t,n):t4(e)}function i4(e,t,n){var r=n.type,i=n.connect,a=n.center,o=n.closed?[[`Z`]]:[],s=U([r4(e,n),r4(t.slice().reverse(),n,!0)],2),c=s[0],l=s[1],u=U([e[0],t.slice(-1)[0]],2),d=u[0],f=u[1],p=function(e,t){return[c,e,l,t,o].flat()};if(i===`line`||r===`surround`)return p([W([`L`],U(f),!1)],[W([`L`],U(d),!1)]);if(!a)throw Error(`Arc grid need to specified center`);var m=U([S1(f,a),S1(d,a)],2),h=m[0],g=m[1];return p([W([`A`,h,h,0,0,1],U(f),!1),W([`L`],U(f),!1)],[W([`A`,g,g,0,0,0],U(d),!1),W([`L`],U(d),!1)])}function a4(e,t,n,r){var i=n.animate,a=n.isBillboard,o=t.map(function(e,t){return{id:e.id||`grid-line-${t}`,d:r4(e.points,n)}});return e.selectAll(e4.line.class).data(o,function(e){return e.id}).join(function(e){return e.append(`path`).each(function(e,t){var n=K$(j1(H({d:e.d},r)),[e,t,o]);this.attr(H({class:e4.line.name,stroke:`#D9D9D9`,lineWidth:1,lineDash:[4,4],isBillboard:a},n))})},function(e){return e.transition(function(e,t){var n=K$(j1(H({d:e.d},r)),[e,t,o]);return V2(this,n,i.update)})},function(e){return e.transition(function(){var e=this,t=H2(this,i.exit);return F2(t,function(){return e.remove()}),t})}).transitions()}function o4(e,t,n){var r=n.animate,i=n.connect,a=n.areaFill;if(t.length<2||!a||!i)return[];for(var o=Array.isArray(a)?a:[a,`transparent`],s=function(e){return o[e%o.length]},c=[],l=0;l<t.length-1;l++){var u=U([t[l].points,t[l+1].points],2),d=u[0],f=u[1],p=i4(d,f,n);c.push({d:p,fill:s(l)})}return e.selectAll(e4.region.class).data(c,function(e,t){return t}).join(function(e){return e.append(`path`).each(function(e,t){var n=K$(e,[e,t,c]);this.attr(n)}).attr(`className`,e4.region.name)},function(e){return e.transition(function(e,t){var n=K$(e,[e,t,c]);return V2(this,n,r.update)})},function(e){return e.transition(function(){var e=this,t=H2(this,r.exit);return F2(t,function(){return e.remove()}),t})}).transitions()}function s4(e){var t=e.data,n=t===void 0?[]:t;return e.closed?n.map(function(e){var t=e.points,n=U(t,1)[0];return H(H({},e),{points:W(W([],U(t),!1),[n],!1)})}):n}var c4=function(e){ka(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.render=function(e,t){e.type,e.center,e.areaFill,e.closed;var n=Aa(e,[`type`,`center`,`areaFill`,`closed`]),r=s4(e),i=$(t).maybeAppendByClassName(e4.lineGroup,`g`),a=$(t).maybeAppendByClassName(e4.regionGroup,`g`),o=a4(i,r,e,n),s=o4(a,r,e);return W(W([],U(o),!1),U(s),!1)},t}(a0);function l4(e,t){return Object.fromEntries(Object.entries(e).map(function(e){var n=U(e,2),r=n[0],i=n[1];return[r,K$(i,t)]}))}function u4(e,t){return t&&B(t)?e.filter(t):e}function d4(e,t){var n=t.startAngle;return(t.endAngle-n)*e+n}function f4(e,t){if(t.type===`linear`){var n=U(t.startPos,2),r=n[0],i=n[1],a=U(t.endPos,2),o=a[0],s=a[1],c=U([o-r,s-i],2),l=c[0],u=c[1];return C1([l,u])}var d=U$(d4(e,t));return[-Math.sin(d),Math.cos(d)]}function p4(e,t,n){return w1(f4(e,n),t!==`positive`)}function m4(e,t){return p4(e,t.labelDirection,t)}function h4(e,t,n){return n?`${e} ${n}axis-${t}`:e}function g4(e,t,n,r){return r&&e.attr(`className`,h4(t.name,n,r)),e}function _4(e,t){var n=U(t.startPos,2),r=n[0],i=n[1],a=U(t.endPos,2),o=a[0],s=a[1],c=U([o-r,s-i],2),l=c[0],u=c[1];return[r+l*e,i+u*e]}function v4(e,t){var n=t.radius,r=U(t.center,2),i=r[0],a=r[1],o=U$(d4(e,t));return[i+n*Math.cos(o),a+n*Math.sin(o)]}function y4(e,t){return t.type===`linear`?_4(e,t):v4(e,t)}function b4(e){return f4(0,e)[1]===0}function x4(e){return f4(0,e)[0]===0}function S4(e,t){return t-e===360}function C4(e,t,n,r,i){var a=t-e,o=U([i,i],2),s=o[0],c=o[1],l=U([U$(e),U$(t)],2),u=l[0],d=l[1],f=function(e){return[n+i*Math.cos(e),r+i*Math.sin(e)]},p=U(f(u),2),m=p[0],h=p[1],g=U(f(d),2),_=g[0],v=g[1];if(S4(e,t)){var y=U(f((d+u)/2),2),b=y[0],x=y[1];return[[`M`,m,h],[`A`,s,c,0,1,0,b,x],[`A`,s,c,0,1,0,_,v]]}return`M${m},${h},A${s},${c},0,${+(a>180)},${e>t?0:1},${_},${v}`}function w4(e){var t=e.attributes,n=t.startAngle,r=t.endAngle,i=t.center,a=t.radius;return W(W([n,r],U(i),!1),[a],!1)}function T4(e,t,n,r){var i=t.startAngle,a=t.endAngle,o=t.center,s=t.radius,c=t.classNamePrefix;return e.selectAll($2.line.class).data([{d:C4.apply(void 0,W(W([i,a],U(o),!1),[s],!1))}],function(e,t){return t}).join(function(e){var n=e.append(`path`).attr(`className`,$2.line.name).styles(t).styles({d:function(e){return e.d}});return g4(n,$2.line,Z2.line,c),n},function(e){return e.transition(function(){var e=this,t=g1(this,w4(this),W(W([i,a],U(o),!1),[s],!1),r.update);if(t){var n=function(){var t=va(e.attributes,`__keyframe_data__`);e.style.d=C4.apply(void 0,W([],U(t),!1))};t.onframe=n,t.onfinish=n}return t}).styles(t)},function(e){return e.remove()}).styles(n).transitions()}function E4(e,t){t.truncRange,t.truncShape,t.lineExtension}function D4(e,t,n){n===void 0&&(n=[0,0]);var r=U([e,t,n],3),i=U(r[0],2),a=i[0],o=i[1],s=U(r[1],2),c=s[0],l=s[1],u=U(r[2],2),d=u[0],f=u[1],p=U([c-a,l-o],2),m=p[0],h=p[1],g=Math.sqrt(m**2+h**2),_=U([-d/g,f/g],2),v=_[0],y=_[1];return[v*m,v*h,y*m,y*h]}function O4(e){var t=U(e,2),n=U(t[0],2),r=n[0],i=n[1],a=U(t[1],2);return{x1:r,y1:i,x2:a[0],y2:a[1]}}function k4(e,t,n,r){var i=t.showTrunc,a=t.startPos,o=t.endPos,s=t.truncRange,c=t.lineExtension,l=t.classNamePrefix,u=U([a,o],2),d=U(u[0],2),f=d[0],p=d[1],m=U(u[1],2),h=m[0],g=m[1],_=U(c?D4(a,o,c):[,,,,].fill(0),4),v=_[0],y=_[1],b=_[2],x=_[3],S=function(t){return e.selectAll($2.line.class).data(t,function(e,t){return t}).join(function(e){var t=e.append(`line`).styles(n).transition(function(e){return V2(this,O4(e.line),!1)});return t.attr(`className`,function(e){if(!l)return`${$2.line.name} ${e.className}`;var t=h4($2.line.name,Z2.line,l);if(e.className===$2.lineFirst.name){var n=h4($2.lineFirst.name,Z2.lineFirst,l);return`${t} ${n}`}if(e.className===$2.lineSecond.name){var n=h4($2.lineSecond.name,Z2.lineSecond,l);return`${t} ${n}`}return t}),t},function(e){return e.styles(n).transition(function(e){var t=e.line;return V2(this,O4(t),r.update)})},function(e){return e.remove()}).transitions()};if(!i||!s)return S([{line:[[f+v,p+y],[h+b,g+x]],className:$2.line.name}]);var C=U(s,2),w=C[0],T=C[1],E=h-f,D=g-p,O=U([f+E*w,p+D*w],2),k=O[0],A=O[1],j=U([f+E*T,p+D*T],2),ee=j[0],M=j[1],te=S([{line:[[f+v,p+y],[k,A]],className:$2.lineFirst.name},{line:[[ee,M],[h+b,g+x]],className:$2.lineSecond.name}]);return E4(e,t),te}function A4(e,t,n,r){var i=n.showArrow,a=n.showTrunc,o=n.lineArrow,s=n.lineArrowOffset,c=n.lineArrowSize,l=t===`arc`?e.select($2.line.class):a?e.select($2.lineSecond.class):e.select($2.line.class);if(!i||!o||n.type===`arc`&&S4(n.startAngle,n.endAngle)){var u=l.node();u&&(u.style.markerEnd=void 0);return}var d=s1(o);d.attr(r),N1(d,c,!0),l.style(`markerEnd`,d).style(`markerEndOffset`,-s)}function j4(e,t,n){var r=t.type,i,a=J1(t,`line`);return i=r===`linear`?k4(e,t,E1(a,`arrow`),n):T4(e,t,E1(a,`arrow`),n),A4(e,r,t,a),i}function M4(e,t){return p4(e,t.gridDirection,t)}function N4(e){var t=e.type,n=e.gridCenter;return t===`linear`?n:n||e.center}function P4(e,t){var n=t.gridLength;return e.map(function(e,r){var i=e.value,a=U(y4(i,t),2),o=a[0],s=a[1],c=U(_1(M4(i,t),n),2),l=c[0],u=c[1];return{id:r,points:[[o,s],[o+l,s+u]]}})}function F4(e,t){var n=t.gridControlAngles,r=N4(t);if(!r)throw Error(`grid center is not provide`);if(e.length<2)throw Error(`Invalid grid data`);if(!n||n.length===0)throw Error(`Invalid gridControlAngles`);var i=U(r,2),a=i[0],o=i[1];return e.map(function(e,r){var i=e.value,s=U(y4(i,t),2),c=s[0],l=s[1],u=U([c-a,l-o],2),d=u[0],f=u[1],p=[];return n.forEach(function(e){var t=U$(e),n=U([Math.cos(t),Math.sin(t)],2),r=n[0],i=n[1],s=d*r-f*i+a,c=d*i+f*r+o;p.push([s,c])}),{points:p,id:r}})}function I4(e,t,n,r){var i=n.classNamePrefix,a=J1(n,`grid`),o=a.type,s=a.areaFill,c=N4(n),l=u4(t,n.gridFilter),u=o===`segment`?P4(l,n):F4(l,n),d=H(H({},a),{center:c,areaFill:B(s)?l.map(function(e,t){return K$(s,[e,t,l])}):s,animate:r,data:u});return e.selectAll($2.grid.class).data([1]).join(function(e){var t=e.append(function(){return new c4({style:d})}).attr(`className`,$2.grid.name);return g4(t,$2.grid,Z2.grid,i),t},function(e){return e.transition(function(){return this.update(d)})},function(e){return e.remove()}).transitions()}var L4=function(){function e(e,t,n,r){this.set(e,t,n,r)}return Object.defineProperty(e.prototype,`left`,{get:function(){return this.x1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`top`,{get:function(){return this.y1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`right`,{get:function(){return this.x2},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`bottom`,{get:function(){return this.y2},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`width`,{get:function(){return this.defined(`x2`)&&this.defined(`x1`)?this.x2-this.x1:void 0},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,`height`,{get:function(){return this.defined(`y2`)&&this.defined(`y1`)?this.y2-this.y1:void 0},enumerable:!1,configurable:!0}),e.prototype.rotatedPoints=function(e,t,n){var r=this,i=r.x1,a=r.y1,o=r.x2,s=r.y2,c=Math.cos(e),l=Math.sin(e),u=t-t*c+n*l,d=n-t*l-n*c;return[[c*i-l*s+u,l*i+c*s+d],[c*o-l*s+u,l*o+c*s+d],[c*i-l*a+u,l*i+c*a+d],[c*o-l*a+u,l*o+c*a+d]]},e.prototype.set=function(e,t,n,r){return n<e?(this.x2=e,this.x1=n):(this.x1=e,this.x2=n),r<t?(this.y2=t,this.y1=r):(this.y1=t,this.y2=r),this},e.prototype.defined=function(e){return this[e]!==Number.MAX_VALUE&&this[e]!==-Number.MAX_VALUE},e}();function R4(e,t){var n=e.getEulerAngles()||0;e.setEulerAngles(0);var r=e.getBounds(),i=U(r.min,2),a=i[0],o=i[1],s=U(r.max,2),c=s[0],l=s[1],u=e.getBBox(),d=u.width,f=u.height,p=0,m=0,h=a,g=o,_=n1(e);if(_){f-=1.5;var v=_.style.textAlign,y=_.style.textBaseline;v===`center`?h=(a+c)/2:(v===`right`||v===`end`)&&(h=c),y===`middle`?g=(o+l)/2:y===`bottom`&&(g=l)}var b=U(R1(t),4),x=b[0],S=x===void 0?0:x,C=b[1],w=C===void 0?0:C,T=b[2],E=T===void 0?S:T,D=b[3],O=D===void 0?w:D,k=new L4((p+=a)-O,(m+=o)-S,p+d+w,m+f+E);return e.setEulerAngles(n),k.rotatedPoints(U$(n),h,g)}function z4(e,t){return t[0]<=Math.max(e[0][0],e[1][0])&&t[0]<=Math.min(e[0][0],e[1][0])&&t[1]<=Math.max(e[0][1],e[1][1])&&t[1]<=Math.min(e[0][1],e[1][1])}function B4(e,t,n){var r=(t[1]-e[1])*(n[0]-t[0])-(t[0]-e[0])*(n[1]-t[1]);return r===0?0:r<0?2:1}function V4(e,t){var n=B4(e[0],e[1],t[0]),r=B4(e[0],e[1],t[1]),i=B4(t[0],t[1],e[0]),a=B4(t[0],t[1],e[1]);return!!(n!==r&&i!==a||n===0&&z4(e,t[0])||r===0&&z4(e,t[1])||i===0&&z4(t,e[0])||a===0&&z4(t,e[1]))}function H4(e,t){var n=e.length;if(n<3)return!1;var r=[t,[9999,t[1]]],i=0,a=0;do{var o=[e[a],e[(a+1)%n]];if(V4(o,r)){if(B4(o[0],t,o[1])===0)return z4(o,t);i++}a=(a+1)%n}while(a!==0);return!!(i&1)}function U4(e,t){return t.every(function(t){return H4(e,t)})}function W4(e,t,n){var r=e.x1,i=e.x2,a=e.y1,o=e.y2;return U4([[r,a],[i,a],[i,o],[r,o]],R4(t,n))}function G4(e,t){var n=U(e,4),r=n[0],i=n[1],a=n[2],o=n[3],s=U(t,4),c=s[0],l=s[1],u=s[2],d=s[3],f=a-r,p=o-i,m=u-c,h=d-l,g=f*h-m*p;if(g===0)return!1;var _=g>0,v=r-c,y=i-l,b=f*y-p*v;if(b<0===_)return!1;var x=m*y-h*v;return!(x<0===_||b>g===_||x>g===_)}function K4(e,t){return[[e[0],e[1],e[2],e[3]],[e[2],e[3],e[4],e[5]],[e[4],e[5],e[6],e[7]],[e[6],e[7],e[0],e[1]]].some(function(e){return G4(t,e)})}function q4(e,t,n){var r,i,a=R4(e,n).flat(1),o=R4(t,n).flat(1),s=[[a[0],a[1],a[2],a[3]],[a[0],a[1],a[4],a[5]],[a[4],a[5],a[6],a[7]],[a[2],a[3],a[6],a[7]]];try{for(var c=ja(s),l=c.next();!l.done;l=c.next()){var u=l.value;if(K4(o,u))return!0}}catch(e){r={error:e}}finally{try{l&&!l.done&&(i=c.return)&&i.call(c)}finally{if(r)throw r.error}}return!1}function J4(e,t){var n=e.type,r=e.labelDirection,i=e.crossSize;if(!i)return!1;if(n===`arc`){var a=e.center,o=e.radius,s=U(a,2),c=s[0],l=s[1],u=r===`negative`?0:i,d=-o-u,f=o+u,p=U(R1(t),4),m=p[0],h=p[1],g=p[2],_=p[3];return new L4(c+d-_,l+d-m,c+f+h,l+f+g)}var v=U(e.startPos,2),y=v[0],b=v[1],x=U(e.endPos,2),S=x[0],C=x[1],w=U(x4(e)?[-t,0,t,0]:[0,t,0,-t],4),T=w[0],E=w[1],D=w[2],O=w[3],k=_1(m4(0,e),i),A=new L4(y,b,S,C);return A.x1+=O,A.y1+=T,A.x2+=E+k[0],A.y2+=D+k[1],A}function Y4(e,t,n){var r,i,a=t.crossPadding,o=new Set,s=null,c=J4(t,a),l=function(e){return c?W4(c,e):!0},u=function(e,t){return!e||!e.firstChild?!0:!q4(e.firstChild,t.firstChild,R1(n))};try{for(var d=ja(e),f=d.next();!f.done;f=d.next()){var p=f.value;l(p)?!s||u(s,p)?s=p:(o.add(s),o.add(p)):o.add(p)}}catch(e){r={error:e}}finally{try{f&&!f.done&&(i=d.return)&&i.call(d)}finally{if(r)throw r.error}}return Array.from(o)}function X4(e,t){return t===void 0&&(t={}),V(e)?0:typeof e==`number`?e:Math.floor(e1(e,t))}function Z4(e,t,n,r){if(!(e.length<=0)){var i=t.suffix,a=i===void 0?`...`:i,o=t.minLength,s=t.maxLength,c=s===void 0?1/0:s,l=t.step,u=l===void 0?` `:l,d=t.margin,f=d===void 0?[0,0,0,0]:d,p=t1(r.getTextShape(e[0])),m=X4(u,p),h=o?X4(o,p):m,g=X4(c,p);(V(g)||g===1/0)&&(g=Math.max.apply(null,e.map(function(e){return e.getBBox().width})));var _=e.slice(),v=U(f,4);v[0],v[1],v[2],v[3];for(var y=function(t){if(_.forEach(function(e){r.ellipsis(r.getTextShape(e),t,a)}),_=Y4(e,n,f),_.length<1)return{value:void 0}},b=g;b>h+m;b-=m){var x=y(b);if(typeof x==`object`)return x.value}}}var Q4={parity:function(e,t){var n=t.seq,r=n===void 0?2:n;return e.filter(function(e,t){return t%r?(L$(e),!1):!0})}},$4=function(e){return e.filter(Z$)};function e3(e,t,n,r){var i=e.length,a=t.keepHeader,o=t.keepTail;if(!(i<=1||i===2&&a&&o)){var s=Q4.parity,c=function(e){return e.forEach(r.show),e},l=2,u=e.slice(),d=e.slice(),f=Math.min.apply(Math,W([1],U(e.map(function(e){return e.getBBox().width})),!1));if(n.type===`linear`&&(b4(n)||x4(n))){var p=z1(e[0]).left,m=z1(e[i-1]).right,h=Math.abs(m-p)||1;l=Math.max(Math.floor(i*f/h),l)}var g,_;for(a&&(g=u.splice(0,1)[0]),o&&(_=u.splice(-1,1)[0],u.reverse()),c(u);l<e.length&&Y4($4(_?W(W([_],U(d),!1),[g],!1):W([g],U(d),!1)),n,t?.margin).length;){if(_&&!g&&l%2==0){var v=u.splice(0,1);v.forEach(r.hide)}else if(_&&g){var v=u.splice(0,1);v.forEach(r.hide)}d=s(c(u),{seq:l}),l++}}}function t3(e,t,n,r){var i,a,o=t.optionalAngles,s=o===void 0?[0,45,90]:o,c=t.margin,l=t.recoverWhenFailed,u=l===void 0?!0:l,d=e.map(function(e){return e.getLocalEulerAngles()}),f=function(){return Y4(e,n,c).length<1},p=function(t){return e.forEach(function(e,n){var i=Array.isArray(t)?t[n]:t;r.rotate(e,+i)})};try{for(var m=ja(s),h=m.next();!h.done;h=m.next()){var g=h.value;if(p(g),f())return}}catch(e){i={error:e}}finally{try{h&&!h.done&&(a=m.return)&&a.call(m)}finally{if(i)throw i.error}}u&&p(d)}function n3(e){var t=e.type,n=e.labelDirection;return t===`linear`&&b4(e)?n===`negative`?`bottom`:`top`:`middle`}function r3(e,t,n,r,i){var a=t.maxLines,o=a===void 0?3:a,s=t.recoverWhenFailed,c=s===void 0?!0:s,l=t.margin,u=l===void 0?[0,0,0,0]:l,d=K$(t.wordWrapWidth??50,[i]),f=e.map(function(e){return e.attr(`maxLines`)||1}),p=Math.min.apply(Math,W([],U(f),!1)),m=function(){return Y4(e,n,u).length<1},h=n3(n),g=function(t){return e.forEach(function(e,n){var i=Array.isArray(t)?t[n]:t;r.wrap(e,d,i,h)})};if(!(p>o)){if(n.type===`linear`&&b4(n)){if(g(o),m())return}else for(var _=p;_<=o;_++)if(g(_),m())return;c&&g(f)}}var i3=new Map([[`hide`,e3],[`rotate`,t3],[`ellipsis`,Z4],[`wrap`,r3]]);function a3(e,t,n){return t.labelOverlap.length<1?!1:n===`hide`?!V$(e[0]):n===`rotate`?!e.some(function(e){return!!e.attr(`transform`)?.includes(`rotate`)}):n===`ellipsis`||n===`wrap`?e.filter(function(e){return e.querySelector(`text`)}).length>=1:!0}function o3(e,t,n,r){var i=t.labelOverlap,a=i===void 0?[]:i;a.length&&a.forEach(function(i){var a=i.type,o=i3.get(a);a3(e,t,a)&&o?.(e,i,t,r,n)})}function s3(){var e=[...arguments],t=function(e){return e===`positive`?-1:1};return e.reduce(function(e,n){return e*t(n)},1)}function c3(e){for(var t=e;t<0;)t+=360;return Math.round(t%360)}function l3(e,t){var n=U(e,2),r=n[0],i=n[1],a=U(t,2),o=a[0],s=a[1],c=U([r*o+i*s,r*s-i*o],2),l=c[0],u=c[1];return Math.atan2(u,l)}function u3(e){var t=(e+360)%180;return d1(t,-90,90)||(t+=180),t}function d3(e,t,n){var r=n.labelAlign;if(t.style.transform?.includes(`rotate`))return t.getLocalEulerAngles();var i=0,a=m4(e.value,n),o=f4(e.value,n);return r===`horizontal`?0:(i=r===`perpendicular`?l3([1,0],a):l3([o[0]<0?-1:1,0],o),u3(W$(i)))}function f3(e,t,n){var r=n.type,i=n.labelAlign,a=m4(e,n),o=c3(t),s=c3(W$(l3([1,0],a))),c=`center`,l=`middle`;return r===`linear`?[90,270].includes(s)&&o===0?(c=`center`,l=a[1]===1?`top`:`bottom`):!(s%180)&&[90,270].includes(o)?c=`center`:s===0?(d1(o,0,90,!1,!0)||d1(o,0,90)||d1(o,270,360))&&(c=`start`):s===90?d1(o,0,90,!1,!0)?c=`start`:(d1(o,90,180)||d1(o,270,360))&&(c=`end`):s===270?d1(o,0,90,!1,!0)?c=`end`:(d1(o,90,180)||d1(o,270,360))&&(c=`start`):s===180&&(o===90?c=`start`:(d1(o,0,90)||d1(o,270,360))&&(c=`end`)):i===`parallel`?l=d1(s,0,180,!0)?`top`:`bottom`:i===`horizontal`?d1(s,90,270,!1)?c=`end`:(d1(s,270,360,!1)||d1(s,0,90))&&(c=`start`):i===`perpendicular`&&(c=d1(s,90,270)?`end`:`start`),{textAlign:c,textBaseline:l}}function p3(e,t,n){t.setLocalEulerAngles(e);var r=t.__data__.value,i=f3(r,e,n),a=t.querySelector($2.labelItem.class);a&&v3(a,i)}function m3(e,t,n){var r=n.showTick,i=n.tickLength,a=n.tickDirection,o=n.labelDirection,s=n.labelSpacing,c=t.indexOf(e),l=K$(s,[e,c,t]),u=U([m4(e.value,n),s3(o,a)],2),d=u[0],f=U(v1(_1(d,l+(u[1]===1?K$(r?i:0,[e,c,t]):0)),y4(e.value,n)),2);return{x:f[0],y:f[1]}}function h3(e,t,n,r){var i=r.labelFormatter;return B(i)?function(){return s1(K$(i,[e,t,n,m4(e.value,r)]))}:function(){return s1(e.label||``)}}function g3(e,t,n,r){var i=r.labelRender,a=(va(r,`endPos.0`,400)-va(r,`startPos.0`,0))/n.length,o=B(i)?K$(i,[e,t,n,m4(e.value,r)]):e.label||``,s=r0(o)||30;return function(){return c1(o,{width:a,height:s})}}var _3={html:[`fill`],text:[]};function v3(e,t){[`text`,`html`].includes(e.nodeName)&&e.attr(E1(t,_3[e.nodeName]))}function y3(e,t){o3(this.node().childNodes,e,t,{hide:L$,show:I$,rotate:function(t,n){p3(+n,t,e)},ellipsis:function(e,t,n){e&&i1(e,t||1/0,n)},wrap:function(e,t,n){e&&a1(e,t,n)},getTextShape:function(e){return e.querySelector($2.labelItem.class)}})}function b3(e,t,n,r,i){var a=n.indexOf(t),o=i.labelRender,s=i.classNamePrefix,c=$(e).append(o?g3(t,a,n,i):h3(t,a,n,i)).attr(`className`,$2.labelItem.name).node();g4($(c),$2.labelItem,Z2.labelItem,s);var l=U(X1(l4(r,[t,a,n])),2),u=l[0],d=l[1],f=d.transform,p=Aa(d,[`transform`]);$1(c,f);var m=d3(t,c,i);if(c.getLocalEulerAngles()||c.setLocalEulerAngles(m),v3(c,H(H({},f3(t.value,m,i)),u)),c.nodeName===`html`){var h=c.getBBox(),g=c.style.x||0;c.attr(`x`,g-h.width/2)}return e.attr(p),c}function x3(e,t,n,r,i){var a=n.classNamePrefix,o=u4(t,n.labelFilter),s=J1(n,`label`),c,l=e.selectAll($2.label.class).data(o,function(e,t){return t}).join(function(e){var r=e.append(`g`).attr(`className`,$2.label.name).transition(function(e){b3(this,e,t,s,n);var r=m3(e,t,n),i=r.x,a=r.y;return this.style.transform=`translate(${i}, ${a})`,null});return g4(r,$2.label,Z2.label,a),r},function(e){return e.transition(function(e){var i=B2(this.querySelector($2.labelItem.class),b3(this,e,t,s,n),r.update),a=m3(e,t,n),o=a.x,c=a.y,l=V2(this,{transform:`translate(${o}, ${c})`},r.update);return W(W([],U(i),!1),[l],!1)})},function(e){return c=e,e.transition(function(){var e=this,t=H2(this.childNodes[0],r.exit);return F2(t,function(){return $(e).remove()}),t}),c}).transitions();return I2(l,function(){y3.call(e,n,i)}),l}function S3(e,t){return p4(e,t.tickDirection,t)}function C3(e,t){var n=U(e,2),r=n[0],i=n[1];return[[0,0],[r*t,i*t]]}function w3(e,t,n,r,i){var a=i.tickLength,o=U(C3(r,K$(a,[e,t,n])),2),s=U(o[0],2),c=s[0],l=s[1],u=U(o[1],2);return{x1:c,x2:u[0],y1:l,y2:u[1]}}function T3(e,t,n,r,i){var a=i.tickFormatter,o=i.classNamePrefix,s=S3(t.value,i),c=`line`;B(a)&&(c=function(){return K$(a,[t,n,r,s])});var l=e.append(c).attr(`className`,$2.tickItem.name);return g4(l,$2.tickItem,Z2.tickItem,o),l}function E3(e,t,n,r,i,a,o){var s=S3(e.value,a),c=w3(e,t,n,s,a),l=c.x1,u=c.x2,d=c.y1,f=c.y2,p=U(X1(l4(o,[e,t,n,s])),2),m=p[0],h=p[1];r.node().nodeName===`line`&&r.styles(H({x1:l,x2:u,y1:d,y2:f},m)),i.attr(h),r.styles(m)}function D3(e,t,n,r,i,a){E3(e,t,n,T3($(this),e,t,n,r),this,r,i);var o=U(y4(e.value,r),2),s=o[0],c=o[1];return V2(this,{transform:`translate(${s}, ${c})`},a)}function O3(e,t,n,r){var i=n.classNamePrefix,a=u4(t,n.tickFilter),o=J1(n,`tick`);return e.selectAll($2.tick.class).data(a,function(e){return e.id||e.label}).join(function(e){var t=e.append(`g`).attr(`className`,$2.tick.name).transition(function(e,t){return D3.call(this,e,t,a,n,o,!1)});return g4(t,$2.tick,Z2.tick,i),t},function(e){return e.transition(function(e,t){return this.removeChildren(),D3.call(this,e,t,a,n,o,r.update)})},function(e){return e.transition(function(){var e=this,t=H2(this.childNodes[0],r.exit);return F2(t,function(){return e.remove()}),t})}).transitions()}function k3(e,t,n){var r=n.titlePosition,i=r===void 0?`lb`:r,a=n.titleSpacing,o=n0(i),s=e.node().getLocalBounds(),c=U(s.min,2),l=c[0],u=c[1],d=U(s.halfExtents,2),f=d[0],p=d[1],m=U(t.node().getLocalBounds().halfExtents,2),h=m[0],g=m[1],_=U([l+f,u+p],2),v=_[0],y=_[1],b=U(R1(a),4),x=b[0],S=b[1],C=b[2],w=b[3];if([`start`,`end`].includes(i)&&n.type===`linear`){var T=n.startPos,E=n.endPos,D=U(i===`start`?[T,E]:[E,T],2),O=D[0],k=D[1],A=U(_1(C1([-k[0]+O[0],-k[1]+O[1]]),x),2),j=A[0],ee=A[1];return{x:O[0]+j,y:O[1]+ee}}return o.includes(`t`)&&(y-=p+g+x),o.includes(`r`)&&(v+=f+h+S),o.includes(`l`)&&(v-=f+h+w),o.includes(`b`)&&(y+=p+g+C),{x:v,y}}function A3(e,t,n){var r=e.getGeometryBounds().halfExtents[1]*2;if(t===`vertical`){if(n===`left`)return`rotate(-90) translate(0, ${r/2})`;if(n===`right`)return`rotate(-90) translate(0, -${r/2})`}return``}function j3(e,t,n,r,i){var a=U(X1(J1(r,`title`)),2),o=a[0],s=a[1],c=s.transform,l=s.transformOrigin,u=Aa(s,[`transform`,`transformOrigin`]);t.styles(u);var d=c||A3(e.node(),o.direction,o.position);e.styles(H(H({},o),{transformOrigin:l})),$1(e.node(),d);var f=k3($(n._offscreen||n.querySelector($2.mainGroup.class)),t,r),p=f.x,m=f.y;return V2(t.node(),{transform:`translate(${p}, ${m})`},i)}function M3(e,t,n,r){var i=n.titleText,a=n.classNamePrefix;return e.selectAll($2.title.class).data([{title:i}].filter(function(e){return!!e.title}),function(e,t){return e.title}).join(function(o){var s=o.append(function(){return s1(i)}).attr(`className`,$2.title.name).transition(function(){return j3($(this),e,t,n,r.enter)});return g4(s,$2.title,Z2.title,a),s},function(i){return i.transition(function(){return j3($(this),e,t,n,r.update)})},function(e){return e.remove()}).transitions()}function N3(e,t,n,r){var i=e.showLine,a=e.showTick,o=e.showLabel,s=e.classNamePrefix,c=t.maybeAppendByClassName($2.lineGroup,`g`);g4(c,$2.lineGroup,Z2.lineGroup,s);var l=u1(i,c,function(t){return j4(t,e,r)})||[],u=t.maybeAppendByClassName($2.tickGroup,`g`);g4(u,$2.tickGroup,Z2.tickGroup,s);var d=u1(a,u,function(t){return O3(t,n,e,r)})||[],f=t.maybeAppendByClassName($2.labelGroup,`g`);g4(f,$2.labelGroup,Z2.labelGroup,s);var p=u1(o,f,function(i){return x3(i,n,e,r,t.node())})||[];return W(W(W([],U(l),!1),U(d),!1),U(p),!1).filter(function(e){return!!e})}var P3=function(e){ka(t,e);function t(t){return e.call(this,t,Q2)||this}return t.prototype.render=function(e,t,n){var r=this,i=e.titleText,a=e.data,o=e.animate,s=e.showTitle,c=e.showGrid,l=e.dataThreshold,u=e.truncRange,d=e.classNamePrefix,f=t.className||`axis`;d?t.attr(`className`,`${f} ${d}axis`):t.className||t.attr(`className`,`axis`);var p=M1(a,l).filter(function(e){var t=e.value;return!(u&&t>u[0]&&t<u[1])}),m=P2(n===void 0?o:n),h=$(t).maybeAppendByClassName($2.gridGroup,`g`);g4(h,$2.gridGroup,Z2.gridGroup,d);var g=u1(c,h,function(t){return I4(t,p,e,m)})||[],_=$(t).maybeAppendByClassName($2.mainGroup,`g`);g4(_,$2.mainGroup,Z2.mainGroup,d),i&&(!this.initialized&&m.enter||this.initialized&&m.update)&&N3(e,$(this.offscreenGroup),p,P2(!1));var v=N3(e,$(_.node()),p,m),y=$(t).maybeAppendByClassName($2.titleGroup,`g`);g4(y,$2.titleGroup,Z2.titleGroup,d);var b=u1(s,y,function(t){return M3(t,r,e,m)})||[];return W(W(W([],U(g),!1),U(v),!1),U(b),!1).flat().filter(function(e){return!!e})},t}(a0);function F3(e,t,n){return n?`${e} ${n}legend-${t}`:e}function I3(e,t,n){var r=1.4*n;return[[`M`,e-n,t-r],[`L`,e+n,t-r],[`L`,e+n,t+r],[`L`,e-n,t+r],[`Z`]]}var L3=1.4,R3=.4;function z3(e,t,n){var r=n,i=r*L3,a=r/2,o=r/6,s=e+i*R3;return[[`M`,e,t],[`L`,s,t+a],[`L`,e+i,t+a],[`L`,e+i,t-a],[`L`,s,t-a],[`Z`],[`M`,s,t+o],[`L`,e+i-2,t+o],[`M`,s,t-o],[`L`,e+i-2,t-o]]}function B3(e,t,n){var r=n,i=r*L3,a=r/2,o=r/6,s=t+i*R3;return[[`M`,e,t],[`L`,e-a,s],[`L`,e-a,t+i],[`L`,e+a,t+i],[`L`,e+a,s],[`Z`],[`M`,e-o,s],[`L`,e-o,t+i-2],[`M`,e+o,s],[`L`,e+o,t+i-2]]}A0.registerSymbol(`hiddenHandle`,I3),A0.registerSymbol(`verticalHandle`,z3),A0.registerSymbol(`horizontalHandle`,B3);function V3(e,t,n){return e===void 0&&(e=`horizontal`),e===`horizontal`?t:n}var H3={title:`title`,item:`item`,marker:`marker`,label:`label`,value:`value`,focusIcon:`focus-icon`,background:`background`,ribbon:`ribbon`,track:`track`,selection:`selection`,handle:`handle`,handleMarker:`handle-marker`,handleLabel:`handle-label`,indicator:`indicator`,prevBtn:`prev-btn`,nextBtn:`next-btn`,pageInfo:`page-info`},U3=q$({markerGroup:`marker-group`,marker:`marker`,labelGroup:`label-group`,label:`label`},`handle`),W3={showLabel:!0,formatter:function(e){return e.toString()},markerSize:25,markerStroke:`#c5c5c5`,markerFill:`#fff`,markerLineWidth:1,labelFontSize:12,labelFill:`#c5c5c5`,labelText:``,orientation:`vertical`,spacing:0};(function(e){ka(t,e);function t(t){return e.call(this,t,W3)||this}return t.prototype.render=function(e,t){var n=$(t).maybeAppendByClassName(U3.markerGroup,`g`);this.renderMarker(n);var r=$(t).maybeAppendByClassName(U3.labelGroup,`g`);this.renderLabel(r)},t.prototype.renderMarker=function(e){var t=this,n=this.attributes,r=n.orientation,i=n.classNamePrefix,a=n.markerSymbol,o=a===void 0?V3(r,`horizontalHandle`,`verticalHandle`):a;u1(!!o,e,function(e){var n=J1(t.attributes,`marker`),r=H({symbol:o},n),a=F3(U3.marker.name,H3.handleMarker,i);if(t.marker=e.maybeAppendByClassName(U3.marker,function(){return new A0({style:r,className:a})}).update(r),i){var s=t.marker.node().querySelector(`.marker`);if(s){var c=(s.getAttribute(`class`)||``).split(` `)[0],l=F3(c,H3.handleMarker,i);s.setAttribute(`class`,l)}}})},t.prototype.renderLabel=function(e){var t=this,n=this.attributes,r=n.showLabel,i=n.orientation,a=n.spacing,o=a===void 0?0:a,s=n.formatter,c=n.classNamePrefix;u1(r,e,function(e){var n=J1(t.attributes,`label`),r=n.text,a=Aa(n,[`text`]),l=e.select(U3.marker.class)?.node().getBBox()||{},u=l.width,d=u===void 0?0:u,f=l.height,p=U(V3(i,[0,(f===void 0?0:f)+o,`center`,`top`],[d+o,0,`start`,`middle`]),4),m=p[0],h=p[1],g=p[2],_=p[3],v=F3(U3.label.name,H3.handleLabel,c);e.maybeAppendByClassName(U3.label,`text`).attr(`className`,v).styles(H(H({},a),{x:m,y:h,text:s(r).toString(),textAlign:g,textBaseline:_}))})},t})(a0);var G3={showTitle:!0,padding:0,orientation:`horizontal`,backgroundFill:`transparent`,titleText:``,titleSpacing:4,titlePosition:`top-left`,titleFill:`#2C3542`,titleFontWeight:`bold`,titleFontFamily:`sans-serif`,titleFontSize:12},K3=X$({},G3,{});X$({},G3,Y1(W3,`handle`),{color:[`#d0e3fa`,`#acc7f6`,`#8daaf2`,`#6d8eea`,`#4d73cd`,`#325bb1`,`#5a3e75`,`#8c3c79`,`#e23455`,`#e7655b`],indicatorBackgroundFill:`#262626`,indicatorLabelFill:`white`,indicatorLabelFontSize:12,indicatorVisibility:`hidden`,labelAlign:`value`,labelDirection:`positive`,labelSpacing:5,showHandle:!0,showIndicator:!0,showLabel:!0,slidable:!0,titleText:``,type:`continuous`});var q3=q$({title:`title`,html:`html`,titleGroup:`title-group`,items:`items`,itemsGroup:`items-group`,contentGroup:`content-group`,ribbonGroup:`ribbon-group`,ribbon:`ribbon`,handlesGroup:`handles-group`,handle:`handle`,startHandle:`start-handle`,endHandle:`end-handle`,labelGroup:`label-group`,label:`label`,indicator:`indicator`},`legend`),J3=q$({text:`text`},`title`);function Y3(e,t){var n=e.attributes,r=n.position,i=n.spacing,a=n.inset,o=n.text,s=e.getBBox(),c=t.getBBox(),l=n0(r),u=U(R1(o?i:0),4),d=u[0],f=u[1],p=u[2],m=u[3],h=U(R1(a),4),g=h[0],_=h[1],v=h[2],y=h[3],b=U([m+f,d+p],2),x=b[0],S=b[1],C=U([y+_,g+v],2),w=C[0],T=C[1];if(l[0]===`l`)return new G$(s.x,s.y,c.width+s.width+x+w,Math.max(c.height+T,s.height));if(l[0]===`t`)return new G$(s.x,s.y,Math.max(c.width+w,s.width),c.height+s.height+S+T);var E=U([t.attributes.width||c.width,t.attributes.height||c.height],2),D=E[0],O=E[1];return new G$(c.x,c.y,D+s.width+x+w,O+s.height+S+T)}function X3(e,t){var n=Object.entries(t).reduce(function(t,n){var r=U(n,2),i=r[0],a=r[1];return e.node().attr(i)||(t[i]=a),t},{});e.styles(n)}function Z3(e){var t,n,r,i,a=e,o=a.width,s=a.height,c=a.position,l=U([o/2,s/2],2),u=l[0],d=l[1],f=U([+u,+d,`center`,`middle`],4),p=f[0],m=f[1],h=f[2],g=f[3],_=n0(c);return _.includes(`l`)&&(t=U([0,`start`],2),p=t[0],h=t[1]),_.includes(`r`)&&(n=U([+o,`end`],2),p=n[0],h=n[1]),_.includes(`t`)&&(r=U([0,`top`],2),m=r[0],g=r[1]),_.includes(`b`)&&(i=U([+s,`bottom`],2),m=i[0],g=i[1]),{x:p,y:m,textAlign:h,textBaseline:g}}var Q3=function(e){ka(t,e);function t(t){return e.call(this,t,{text:``,width:0,height:0,fill:`#4a505a`,fontWeight:`bold`,fontSize:12,fontFamily:`sans-serif`,inset:0,spacing:0,position:`top-left`})||this}return t.prototype.getAvailableSpace=function(){var e=this,t=this.attributes,n=t.width,r=t.height,i=t.position,a=t.spacing,o=t.inset,s=e.querySelector(J3.text.class);if(!s)return new G$(0,0,+n,+r);var c=s.getBBox(),l=c.width,u=c.height,d=U(R1(a),4),f=d[0],p=d[1],m=d[2],h=d[3],g=U([0,0,+n,+r],4),_=g[0],v=g[1],y=g[2],b=g[3],x=n0(i);if(x.includes(`i`))return new G$(_,v,y,b);x.forEach(function(e,t){var i,a,o,s;e===`t`&&(i=U(t===0?[u+m,+r-u-m]:[0,+r],2),v=i[0],b=i[1]),e===`r`&&(a=U([+n-l-h],1),y=a[0]),e===`b`&&(o=U([+r-u-f],1),b=o[0]),e===`l`&&(s=U(t===0?[l+p,+n-l-p]:[0,+n],2),_=s[0],y=s[1])});var S=U(R1(o),4),C=S[0],w=S[1],T=S[2],E=S[3],D=U([E+w,C+T],2),O=D[0],k=D[1];return new G$(_+E,v+C,y-O,b-k)},t.prototype.getBBox=function(){return this.title?this.title.getBBox():new G$(0,0,0,0)},t.prototype.render=function(e,t){var n=this;e.width,e.height,e.position,e.spacing;var r=e.classNamePrefix,i=Aa(e,[`width`,`height`,`position`,`spacing`,`classNamePrefix`]),a=U(X1(i),1)[0],o=Z3(e),s=o.x,c=o.y,l=o.textAlign,u=o.textBaseline;u1(!!i.text,$(t),function(e){var t=F3(J3.text.name,H3.title,r);n.title=e.maybeAppendByClassName(J3.text,`text`).attr(`className`,t).styles(a).call(X3,{x:s,y:c,textAlign:l,textBaseline:u}).node()})},t}(a0),$3=q$({prevBtnGroup:`prev-btn-group`,prevBtn:`prev-btn`,nextBtnGroup:`next-btn-group`,nextBtn:`next-btn`,pageInfoGroup:`page-info-group`,pageInfo:`page-info`,playWindow:`play-window`,contentGroup:`content-group`,controller:`controller`,clipPath:`clip-path`},`navigator`),e6=function(e){ka(t,e);function t(t){var n=e.call(this,t,{x:0,y:0,animate:{easing:`linear`,duration:200,fill:`both`},buttonCursor:`pointer`,buttonFill:`black`,buttonD:E0(0,0,6),buttonSize:12,controllerPadding:5,controllerSpacing:5,formatter:function(e,t){return`${e}/${t}`},defaultPage:0,loop:!1,orientation:`horizontal`,pageNumFill:`black`,pageNumFontSize:12,pageNumTextAlign:`start`,pageNumTextBaseline:`middle`})||this;return n.playState=`idle`,n.contentGroup=n.appendChild(new am({class:$3.contentGroup.name})),n.playWindow=n.contentGroup.appendChild(new am({class:$3.playWindow.name})),n.innerCurrPage=n.defaultPage,n}return Object.defineProperty(t.prototype,`defaultPage`,{get:function(){var e=this.attributes.defaultPage;return Ri(e,0,Math.max(this.pageViews.length-1,0))},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`pageViews`,{get:function(){return this.playWindow.children},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`controllerShape`,{get:function(){return this.totalPages>1?{width:55,height:0}:{width:0,height:0}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`pageShape`,{get:function(){var e=this.pageViews,t=U(e0(e.map(function(e){var t=e.getBBox();return[t.width,t.height]})).map(function(e){return Math.max.apply(Math,W([],U(e),!1))}),2),n=t[0],r=t[1],i=this.attributes,a=i.pageWidth,o=a===void 0?n:a,s=i.pageHeight;return{pageWidth:o,pageHeight:s===void 0?r:s}},enumerable:!1,configurable:!0}),t.prototype.getContainer=function(){return this.playWindow},Object.defineProperty(t.prototype,`totalPages`,{get:function(){return this.pageViews.length},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`currPage`,{get:function(){return this.innerCurrPage},enumerable:!1,configurable:!0}),t.prototype.getBBox=function(){var t=e.prototype.getBBox.call(this),n=t.x,r=t.y,i=this.controllerShape,a=this.pageShape,o=a.pageWidth,s=a.pageHeight;return new G$(n,r,o+i.width,s)},t.prototype.goTo=function(e){var t=this,n=this.attributes.animate,r=this,i=r.currPage,a=r.playState,o=r.playWindow,s=r.pageViews;if(a!==`idle`||e<0||s.length<=0||e>=s.length)return null;s[i].setLocalPosition(0,0),this.prepareFollowingPage(e);var c=U(this.getFollowingPageDiff(e),2),l=c[0],u=c[1];this.playState=`running`;var d=R2(o,[{transform:`translate(0, 0)`},{transform:`translate(${-l}, ${-u})`}],n);return F2(d,function(){t.innerCurrPage=e,t.playState=`idle`,t.setVisiblePages([e]),t.updatePageInfo()}),d},t.prototype.prev=function(){var e=this.attributes.loop,t=this.pageViews.length,n=this.currPage;if(!e&&n<=0)return null;var r=e?(n-1+t)%t:Ri(n-1,0,t);return this.goTo(r)},t.prototype.next=function(){var e=this.attributes.loop,t=this.pageViews.length,n=this.currPage;if(!e&&n>=t-1)return null;var r=e?(n+1)%t:Ri(n+1,0,t);return this.goTo(r)},t.prototype.renderClipPath=function(e){var t=this.pageShape,n=t.pageWidth,r=t.pageHeight;if(!n||!r){this.contentGroup.style.clipPath=void 0;return}this.clipPath=e.maybeAppendByClassName($3.clipPath,`rect`).styles({width:n,height:r}),this.contentGroup.attr(`clipPath`,this.clipPath.node())},t.prototype.setVisiblePages=function(e){this.playWindow.children.forEach(function(t,n){e.includes(n)?I$(t):L$(t)})},t.prototype.adjustControllerLayout=function(){var e=this,t=e.prevBtnGroup,n=e.nextBtnGroup,r=e.pageInfoGroup,i=this.attributes,a=i.orientation,o=i.controllerPadding,s=r.getBBox(),c=s.width;s.height;var l=U(a===`horizontal`?[-180,0]:[-90,90],2),u=l[0],d=l[1];t.setLocalEulerAngles(u),n.setLocalEulerAngles(d);var f=t.getBBox(),p=f.width,m=f.height,h=n.getBBox(),g=h.width,_=h.height,v=Math.max(p,c,g),y=a===`horizontal`?{offset:[[0,0],[p/2+o,0],[p+c+o*2,0]],textAlign:`start`}:{offset:[[v/2,-m-o],[v/2,0],[v/2,_+o]],textAlign:`center`},b=U(y.offset,3),x=U(b[0],2),S=x[0],C=x[1],w=U(b[1],2),T=w[0],E=w[1],D=U(b[2],2),O=D[0],k=D[1],A=y.textAlign,j=r.querySelector(`text`);j&&(j.style.textAlign=A),t.setLocalPosition(S,C),r.setLocalPosition(T,E),n.setLocalPosition(O,k)},t.prototype.updatePageInfo=function(){var e,t=this,n=t.currPage,r=t.pageViews,i=t.attributes.formatter;r.length<2||((e=this.pageInfoGroup.querySelector($3.pageInfo.class))==null||e.attr(`text`,i(n+1,r.length)),this.adjustControllerLayout())},t.prototype.getFollowingPageDiff=function(e){var t=this.currPage;if(t===e)return[0,0];var n=this.attributes.orientation,r=this.pageShape,i=r.pageWidth,a=r.pageHeight,o=e<t?-1:1;return n===`horizontal`?[o*i,0]:[0,o*a]},t.prototype.prepareFollowingPage=function(e){var t=this,n=t.currPage,r=t.pageViews;if(this.setVisiblePages([e,n]),e!==n){var i=U(this.getFollowingPageDiff(e),2),a=i[0],o=i[1];r[e].setLocalPosition(a,o)}},t.prototype.renderController=function(e){var t=this,n=this.attributes,r=n.controllerSpacing,i=n.classNamePrefix,a=i===void 0?``:i,o=this.pageShape,s=o.pageWidth,c=o.pageHeight,l=this.pageViews.length>=2,u=e.maybeAppendByClassName($3.controller,`g`);if(R$(u.node(),l),l){var d=J1(this.attributes,`button`),f=J1(this.attributes,`pageNum`),p=U(X1(d),2),m=p[0],h=p[1],g=m.size,_=Aa(m,[`size`]),v=!u.select($3.prevBtnGroup.class).node(),y=u.maybeAppendByClassName($3.prevBtnGroup,`g`).styles(h);this.prevBtnGroup=y.node();var b=y.maybeAppendByClassName($3.prevBtn,`path`);if(a){var x=F3($3.prevBtn.name,H3.prevBtn,a);b.node().setAttribute(`class`,x)}var S=u.maybeAppendByClassName($3.nextBtnGroup,`g`).styles(h);this.nextBtnGroup=S.node();var C=S.maybeAppendByClassName($3.nextBtn,`path`);if(a){var w=F3($3.nextBtn.name,H3.nextBtn,a);C.node().setAttribute(`class`,w)}[b,C].forEach(function(e){e.styles(H(H({},_),{transformOrigin:`center`})),N1(e.node(),g,!0)});var T=u.maybeAppendByClassName($3.pageInfoGroup,`g`);this.pageInfoGroup=T.node();var E=T.maybeAppendByClassName($3.pageInfo,`text`);if(E.styles(f),a){var D=F3($3.pageInfo.name,H3.pageInfo,a);E.node().setAttribute(`class`,D)}this.updatePageInfo(),u.node().setLocalPosition(s+r,c/2),v&&(this.prevBtnGroup.addEventListener(`click`,function(){t.prev()}),this.nextBtnGroup.addEventListener(`click`,function(){t.next()}))}},t.prototype.render=function(e,t){var n=e.x,r=n===void 0?0:n,i=e.y,a=i===void 0?0:i;this.attr(`transform`,`translate(${r}, ${a})`);var o=$(t);this.renderClipPath(o),this.renderController(o),this.setVisiblePages([this.defaultPage]),this.goTo(this.defaultPage)},t.prototype.bindEvents=function(){var e=this,t=sa(function(){return e.render(e.attributes,e)},50);this.playWindow.addEventListener(op.INSERTED,t),this.playWindow.addEventListener(op.REMOVED,t)},t}(a0),t6,n6={CONTAINER:`component-poptip`,ARROW:`component-poptip-arrow`,TEXT:`component-poptip-text`},r6=(t6={},t6[`.${n6.CONTAINER}`]={visibility:`visible`,position:`absolute`,"background-color":`rgba(0, 0, 0)`,"box-shadow":`0px 0px 10px #aeaeae`,"border-radius":`3px`,color:`#fff`,opacity:.8,"font-size":`12px`,padding:`4px 6px`,display:`flex`,"justify-content":`center`,"align-items":`center`,"z-index":8,transition:`visibility 50ms`},t6[`.${n6.TEXT}`]={"text-align":`center`},t6[`.${n6.CONTAINER}[data-position='top']`]={transform:`translate(-50%, -100%)`},t6[`.${n6.CONTAINER}[data-position='left']`]={transform:`translate(-100%, -50%)`},t6[`.${n6.CONTAINER}[data-position='right']`]={transform:`translate(0, -50%)`},t6[`.${n6.CONTAINER}[data-position='bottom']`]={transform:`translate(-50%, 0)`},t6[`.${n6.CONTAINER}[data-position='top-left']`]={transform:`translate(0,-100%)`},t6[`.${n6.CONTAINER}[data-position='top-right']`]={transform:`translate(-100%,-100%)`},t6[`.${n6.CONTAINER}[data-position='left-top']`]={transform:`translate(-100%, 0)`},t6[`.${n6.CONTAINER}[data-position='left-bottom']`]={transform:`translate(-100%, -100%)`},t6[`.${n6.CONTAINER}[data-position='right-top']`]={transform:`translate(0, 0)`},t6[`.${n6.CONTAINER}[data-position='right-bottom']`]={transform:`translate(0, -100%)`},t6[`.${n6.CONTAINER}[data-position='bottom-left']`]={transform:`translate(0, 0)`},t6[`.${n6.CONTAINER}[data-position='bottom-right']`]={transform:`translate(-100%, 0)`},t6[`.${n6.ARROW}`]={width:`4px`,height:`4px`,transform:`rotate(45deg)`,"background-color":`rgba(0, 0, 0)`,position:`absolute`,"z-index":-1},t6[`.${n6.CONTAINER}[data-position='top']`]={transform:`translate(-50%, calc(-100% - 5px))`},t6[`[data-position='top'] .${n6.ARROW}`]={bottom:`-2px`},t6[`.${n6.CONTAINER}[data-position='left']`]={transform:`translate(calc(-100% - 5px), -50%)`},t6[`[data-position='left'] .${n6.ARROW}`]={right:`-2px`},t6[`.${n6.CONTAINER}[data-position='right']`]={transform:`translate(5px, -50%)`},t6[`[data-position='right'] .${n6.ARROW}`]={left:`-2px`},t6[`.${n6.CONTAINER}[data-position='bottom']`]={transform:`translate(-50%, 5px)`},t6[`[data-position='bottom'] .${n6.ARROW}`]={top:`-2px`},t6[`.${n6.CONTAINER}[data-position='top-left']`]={transform:`translate(0, calc(-100% - 5px))`},t6[`[data-position='top-left'] .${n6.ARROW}`]={left:`10px`,bottom:`-2px`},t6[`.${n6.CONTAINER}[data-position='top-right']`]={transform:`translate(-100%, calc(-100% - 5px))`},t6[`[data-position='top-right'] .${n6.ARROW}`]={right:`10px`,bottom:`-2px`},t6[`.${n6.CONTAINER}[data-position='left-top']`]={transform:`translate(calc(-100% - 5px), 0)`},t6[`[data-position='left-top'] .${n6.ARROW}`]={right:`-2px`,top:`8px`},t6[`.${n6.CONTAINER}[data-position='left-bottom']`]={transform:`translate(calc(-100% - 5px), -100%)`},t6[`[data-position='left-bottom'] .${n6.ARROW}`]={right:`-2px`,bottom:`8px`},t6[`.${n6.CONTAINER}[data-position='right-top']`]={transform:`translate(5px, 0)`},t6[`[data-position='right-top'] .${n6.ARROW}`]={left:`-2px`,top:`8px`},t6[`.${n6.CONTAINER}[data-position='right-bottom']`]={transform:`translate(5px, -100%)`},t6[`[data-position='right-bottom'] .${n6.ARROW}`]={left:`-2px`,bottom:`8px`},t6[`.${n6.CONTAINER}[data-position='bottom-left']`]={transform:`translate(0, 5px)`},t6[`[data-position='bottom-left'] .${n6.ARROW}`]={top:`-2px`,left:`8px`},t6[`.${n6.CONTAINER}[data-position='bottom-right']`]={transform:`translate(-100%, 5px)`},t6[`[data-position='bottom-right'] .${n6.ARROW}`]={top:`-2px`,right:`8px`},t6),i6=void 0;function a6(e,t,n,r,i,a){if(i===void 0&&(i=!1),a===void 0&&(a=!1),a)return[e,t];var o=n.getBoundingClientRect(),s=o.x,c=o.y,l=o.width,u=o.height;switch(r){case`top`:return i?[s+l/2,c]:[e,c];case`left`:return i?[s,c+u/2]:[s,t];case`bottom`:return i?[s+l/2,c+u]:[e,c+u];case`right`:return i?[s+l,c+u/2]:[s+l,t];case`top-right`:case`right-top`:return[s+l,c];case`left-bottom`:case`bottom-left`:return[s,c+u];case`right-bottom`:case`bottom-right`:return[s+l,c+u];default:return[s,c]}}var o6=function(e){var t;return function(){var n=[...arguments];return t||=e.apply(i6,n),t}};function s6(e){var t=e&&document.getElementById(e);return t||(t=document.createElement(`div`),t.setAttribute(`id`,e),document.body.appendChild(t)),t}function c6(e){return o6(s6)(e)}var l6=function(e){ka(t,e);function t(n){var r=e.call(this,ma({style:{id:`component-poptip`}},t.defaultOptions,n))||this;return r.visibility=`visible`,r.map=new Map,r.domStyles=``,r.initShape(),r.render(r.attributes,r),r}return Object.defineProperty(t.prototype,`visible`,{get:function(){return this.visibility===`visible`},enumerable:!1,configurable:!0}),t.prototype.render=function(e,t){this.visibility=this.style.visibility,this.updatePoptipElement()},t.prototype.update=function(e){this.attr(ma({},this.style,e)),this.render(this.attributes,this)},t.prototype.bind=function(e,t){var n=this;if(e){var r=this.style.text,i=function(i){var a=e,o=n.style,s=r;if(t){var c=typeof t==`function`?t.call(null,i):t,l=c.html,u=c.target,d=Aa(c,[`html`,`target`]);o=aa({},n.style,d),(u||u===!1)&&(a=u),typeof l==`string`&&(s=l)}var f=o.position,p=o.arrowPointAtCenter,m=o.follow,h=o.offset;if(a){var g=i,_=g.clientX,v=g.clientY,y=U(a6(_,v,a,f,p,m),2),b=y[0],x=y[1];n.showTip(b,x,{text:s,position:f,offset:h})}else n.hideTip()},a=function(){n.hideTip()};e.addEventListener(`mousemove`,i),e.addEventListener(`mouseleave`,a),this.map.set(e,[i,a])}},t.prototype.unbind=function(e){if(this.map.has(e)){var t=U(this.map.get(e)||[],2),n=t[0],r=t[1];n&&e.removeEventListener(`mousemove`,n),r&&e.removeEventListener(`mouseleave`,r),this.map.delete(e)}},t.prototype.clear=function(){this.container.innerHTML=``},t.prototype.destroy=function(){var t=this,n;W([],U(this.map.keys()),!1).forEach(function(e){return t.unbind(e)}),(n=this.container)==null||n.remove(),e.prototype.destroy.call(this)},t.prototype.showTip=function(e,t,n){var r=va(n,`text`);if(!(r&&typeof r!=`string`)&&(this.applyStyles(),e&&t&&n)){var i=n.offset,a=n.position;if(a&&this.container.setAttribute(`data-position`,a),this.setOffsetPosition(e,t,i),typeof r==`string`){var o=this.container.querySelector(`.${n6.TEXT}`);o&&(o.innerHTML=r)}this.visibility=`visible`,this.container.style.visibility=`visible`}},t.prototype.hideTip=function(){this.visibility=`hidden`,this.container.style.visibility=`hidden`},t.prototype.getContainer=function(){return this.container},t.prototype.getClassName=function(){var e=this.style.containerClassName;return`${n6.CONTAINER}${e?` ${e}`:``}`},t.prototype.initShape=function(){var e=this,t=this.style.id;this.container=c6(t),this.container.className=this.getClassName(),this.container.addEventListener(`mousemove`,function(){return e.showTip()}),this.container.addEventListener(`mouseleave`,function(){return e.hideTip()})},t.prototype.updatePoptipElement=function(){var e=this.container;this.clear();var t=this.style,n=t.id,r=t.template,i=t.text;this.container.setAttribute(`id`,n),this.container.className=this.getClassName(),e.innerHTML=`<span class="${n6.ARROW}"></span>`,Pi(r)?e.innerHTML+=r:r&&ra(r)&&e.appendChild(r),i&&(e.getElementsByClassName(n6.TEXT)[0].textContent=i),this.applyStyles(),this.container.style.visibility=this.visibility},t.prototype.applyStyles=function(){var e=X$({},r6,this.style.domStyles),t=Object.entries(e).reduce(function(e,t){var n=U(t,2),r=n[0],i=n[1];return`${e}${r}{${Object.entries(i).reduce(function(e,t){var n=U(t,2);return`${e}${n[0]}: ${n[1]};`},``)}}`},``);if(this.domStyles!==t){this.domStyles=t;var n=this.container.querySelector(`style`);n&&this.container.removeChild(n),n=document.createElement(`style`),n.innerHTML=t,this.container.appendChild(n)}},t.prototype.setOffsetPosition=function(e,t,n){n===void 0&&(n=this.style.offset);var r=U(n,2),i=r[0],a=i===void 0?0:i,o=r[1],s=o===void 0?0:o;this.container.style.left=`${e+a}px`,this.container.style.top=`${t+s}px`},t.tag=`poptip`,t.defaultOptions={style:{x:0,y:0,width:0,height:0,target:null,visibility:`hidden`,text:``,position:`top`,follow:!1,offset:[0,0],domStyles:r6,template:`<div class="${n6.TEXT}"></div>`}},t}(a0),u6=q$({layout:`flex`,markerGroup:`marker-group`,marker:`marker`,labelGroup:`label-group`,label:`label`,valueGroup:`value-group`,focusGroup:`focus-group`,focus:`focus`,value:`value`,backgroundGroup:`background-group`,background:`background`},`legend-category-item`),d6={offset:[0,20],domStyles:{".component-poptip":{opacity:`1`,padding:`8px 12px`,background:`#fff`,boxShadow:`0 2px 8px rgba(0, 0, 0, 0.15)`},".component-poptip-arrow":{display:`none`},".component-poptip-text":{color:`#000`,lineHeight:`20px`}}};function f6(e){var t=e.querySelector(u6.marker.class);return t?t.style:{}}var p6=function(e){ka(t,e);function t(t,n){var r=e.call(this,t,{span:[1,1],marker:function(){return new em({style:{r:6}})},markerSize:10,labelFill:`#646464`,valueFill:`#646464`,labelFontSize:12,valueFontSize:12,labelTextBaseline:`middle`,valueTextBaseline:`middle`})||this;return r.keyFields={},r.keyFields=n||{},r}return Object.defineProperty(t.prototype,`showValue`,{get:function(){var e=this.attributes.valueText;return e?typeof e==`string`||typeof e==`number`?e!==``:typeof e==`function`?!0:e.attr(`text`)!==``:!1},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`actualSpace`,{get:function(){var e=this.labelGroup,t=this.valueGroup,n=this.attributes,r=n.markerSize,i=n.focus,a=n.focusMarkerSize,o=e.node().getBBox(),s=o.width,c=o.height,l=t.node().getBBox(),u=l.width,d=l.height;return{markerWidth:r,labelWidth:s,valueWidth:u,focusWidth:i?a??12:0,height:Math.max(r,c,d)}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`span`,{get:function(){var e=this.attributes.span;if(!e)return[1,1];var t=U(R1(e),2),n=t[0],r=t[1],i=this.showValue?r:0,a=n+i;return[n/a,i/a]},enumerable:!1,configurable:!0}),t.prototype.setAttribute=function(t,n){e.prototype.setAttribute.call(this,t,n)},Object.defineProperty(t.prototype,`shape`,{get:function(){var e,t=this.attributes,n=t.markerSize,r=t.width,i=this.actualSpace,a=i.markerWidth,o=i.focusWidth,s=i.height,c=this.actualSpace,l=c.labelWidth,u=c.valueWidth,d=U(this.spacing,3),f=d[0],p=d[1],m=d[2];if(r){var h=r-n-f-p-o-m,g=U(this.span,2),_=g[0],v=g[1];e=U([_*h,v*h],2),l=e[0],u=e[1]}return{width:a+l+u+f+p+o+m,height:s,markerWidth:a,labelWidth:l,valueWidth:u,focusWidth:o}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`spacing`,{get:function(){var e=this.attributes,t=e.spacing,n=e.focus;if(!t)return[0,0,0];var r=U(R1(t),3),i=r[0],a=r[1],o=r[2];return[i,this.showValue?a:0,n?o:0]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`layout`,{get:function(){var e=this.shape,t=e.markerWidth,n=e.labelWidth,r=e.valueWidth,i=e.focusWidth,a=e.width,o=e.height,s=U(this.spacing,3),c=s[0],l=s[1],u=s[2];return{height:o,width:a,markerWidth:t,labelWidth:n,valueWidth:r,focusWidth:i,position:[t/2,t+c,t+n+c+l,t+n+r+c+l+u+i/2]}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`scaleSize`,{get:function(){var e=f6(this.markerGroup.node()),t=this.attributes,n=t.markerSize,r=t.markerStrokeWidth,i=r===void 0?e.strokeWidth:r,a=t.markerLineWidth,o=a===void 0?e.lineWidth:a,s=t.markerStroke,c=s===void 0?e.stroke:s,l=+(i||o||+!!c)*Math.sqrt(2),u=this.markerGroup.node().getBBox(),d=u.width,f=u.height;return(1-l/Math.max(d,f))*n},enumerable:!1,configurable:!0}),t.prototype.renderMarker=function(e){var t=this,n=this.attributes,r=n.marker,i=n.classNamePrefix,a=J1(this.attributes,`marker`);this.markerGroup=e.maybeAppendByClassName(u6.markerGroup,`g`).style(`zIndex`,0),u1(!!r,this.markerGroup,function(){var e=t.markerGroup.node(),n=e.childNodes?.[0],o=F3(u6.marker.name,H3.marker,i),s=typeof r==`string`?new A0({style:{symbol:r},className:o}):r();n?s.nodeName===n.nodeName?n instanceof A0?n.update(H(H({},a),{symbol:r})):(V1(n,s),$(n).styles(a)):(n.remove(),s instanceof A0||(s.className=F3(u6.marker.name,H3.marker,i)),$(s).styles(a),e.appendChild(s)):(s instanceof A0||(s.className=F3(u6.marker.name,H3.marker,i),$(s).styles(a)),e.appendChild(s)),t.markerGroup.node().scale(1/t.markerGroup.node().getScale()[0]);var c=N1(t.markerGroup.node(),t.scaleSize,!0);t.markerGroup.node().style._transform=`scale(${c})`})},t.prototype.renderLabel=function(e){var t=J1(this.attributes,`label`),n=t.text,r=Aa(t,[`text`]),i=this.attributes.classNamePrefix;this.labelGroup=e.maybeAppendByClassName(u6.labelGroup,`g`).style(`zIndex`,0);var a=F3(u6.label.name,H3.label,i),o=this.labelGroup.maybeAppendByClassName(u6.label,function(){return s1(n)});o.node().setAttribute(`class`,a),o.styles(r)},t.prototype.renderValue=function(e){var t=this,n=J1(this.attributes,`value`),r=n.text,i=Aa(n,[`text`]),a=this.attributes.classNamePrefix;this.valueGroup=e.maybeAppendByClassName(u6.valueGroup,`g`).style(`zIndex`,0),u1(this.showValue,this.valueGroup,function(){var e=F3(u6.value.name,H3.value,a),n=t.valueGroup.maybeAppendByClassName(u6.value,function(){return s1(r)});n.node().setAttribute(`class`,e),n.styles(i)})},t.prototype.createPoptip=function(){var e=this.attributes.poptip||{};e.render;var t=new l6({style:X$(d6,Aa(e,[`render`]))});return this.poptipGroup=t,t},t.prototype.bindPoptip=function(e){var t=this,n=this.attributes.poptip;n&&(this.poptipGroup||this.createPoptip()).bind(e,function(){var e=t.attributes,r=e.labelText,i=e.valueText,a=e.markerFill,o=typeof r==`string`?r:r?.attr(`text`),s=typeof i==`string`?i:i?.attr(`text`);if(typeof n.render==`function`)return{html:n.render(H(H({},t.keyFields),{label:o,value:s,color:a}))};var c=``;return(typeof o==`string`||typeof o==`number`)&&(c+=`<div class="component-poptip-label">${o}</div>`),(typeof s==`string`||typeof s==`number`)&&(c+=`<div class="component-poptip-value">${s}</div>`),{html:c}})},t.prototype.renderFocus=function(e){var t=this,n=this.attributes,r=n.focus,i=n.focusMarkerSize,a=n.classNamePrefix,o={x:0,y:0,size:i,opacity:.6,symbol:`focus`,stroke:`#aaaaaa`,lineWidth:1};na(r)||(this.focusGroup=e.maybeAppendByClassName(u6.focusGroup,`g`).style(`zIndex`,0),u1(r,this.focusGroup,function(){var n=F3(u6.focus.name,H3.focusIcon,a),r=new A0({style:H(H({},o),{symbol:`focus`}),className:n}),i=new em({style:{r:o.size/2,fill:`transparent`}}),s=t.focusGroup.node();s.appendChild(i),s.appendChild(r),r.update({opacity:0}),e.node().addEventListener(`pointerenter`,function(){r.update({opacity:1})}),e.node().addEventListener(`pointerleave`,function(){r.update({opacity:0})})}))},t.prototype.renderPoptip=function(e){var t=this;this.attributes.poptip&&[e.maybeAppendByClassName(u6.value,`g`).node(),e.maybeAppendByClassName(u6.label,`g`).node()].forEach(function(e){e&&t.bindPoptip(e)})},t.prototype.renderBackground=function(e){var t=this.shape,n=t.width,r=t.height,i=J1(this.attributes,`background`);this.background=e.maybeAppendByClassName(u6.backgroundGroup,`g`).style(`zIndex`,-1);var a=this.background.maybeAppendByClassName(u6.background,`rect`);a.styles(H({width:n,height:r},i));var o=this.attributes.classNamePrefix,s=o===void 0?``:o;if(s){var c=F3(u6.background.name,H3.background,s);a.node().setAttribute(`class`,c)}},t.prototype.adjustLayout=function(){var e=this.layout,t=e.labelWidth,n=e.valueWidth,r=e.height,i=U(e.position,4),a=i[0],o=i[1],s=i[2],c=i[3],l=r/2;this.markerGroup.styles({transform:`translate(${a}, ${l})${this.markerGroup.node().style._transform}`}),this.labelGroup.styles({transform:`translate(${o}, ${l})`}),this.focusGroup&&this.focusGroup.styles({transform:`translate(${c}, ${l})`}),i1(this.labelGroup.select(u6.label.class).node(),Math.ceil(t)),this.showValue&&(this.valueGroup.styles({transform:`translate(${s}, ${l})`}),i1(this.valueGroup.select(u6.value.class).node(),Math.ceil(n)))},t.prototype.render=function(e,t){var n=$(t),r=e.x,i=r===void 0?0:r,a=e.y,o=a===void 0?0:a;n.styles({transform:`translate(${i}, ${o})`}),this.renderMarker(n),this.renderLabel(n),this.renderValue(n),this.renderBackground(n),this.renderPoptip(n),this.renderFocus(n),this.adjustLayout()},t}(a0),m6=q$({page:`item-page`,navigator:`navigator`,item:`item`},`items`),h6=function(e,t,n){return n===void 0&&(n=!0),e?t(e):n},g6=function(e){ka(t,e);function t(t){var n=e.call(this,t,{data:[],gridRow:1/0,gridCol:void 0,padding:0,width:1e3,height:100,rowPadding:0,colPadding:0,layout:`flex`,orientation:`horizontal`,click:Ea,mouseenter:Ea,mouseleave:Ea})||this;return n.navigatorShape=[0,0],n}return Object.defineProperty(t.prototype,`pageViews`,{get:function(){return this.navigator.getContainer()},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`grid`,{get:function(){var e=this.attributes,t=e.gridRow,n=e.gridCol,r=e.data;if(!t&&!n)throw Error(`gridRow and gridCol can not be set null at the same time`);return t&&n?[t,n]:t?[t,r.length]:[r.length,n]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`renderData`,{get:function(){var e=this.attributes,t=e.data,n=e.layout,r=e.poptip,i=e.focus,a=e.focusMarkerSize,o=e.classNamePrefix,s=J1(this.attributes,`item`);return t.map(function(e,c){var l=e.id,u=l===void 0?c:l,d=e.label,f=e.value;return{id:`${u}`,index:c,style:H({layout:n,labelText:d,valueText:f,poptip:r,focus:i,focusMarkerSize:a,classNamePrefix:o},Object.fromEntries(Object.entries(s).map(function(n){var r=U(n,2),i=r[0],a=r[1];return[i,K$(a,[e,c,t])]})))}})},enumerable:!1,configurable:!0}),t.prototype.getGridLayout=function(){var e=this,t=this.attributes,n=t.orientation,r=t.width,i=t.rowPadding,a=t.colPadding,o=U(this.navigatorShape,1)[0],s=U(this.grid,2),c=s[0],l=s[1],u=l*c,d=0;return this.pageViews.children.map(function(t,s){var f,p,m=Math.floor(s/u),h=s%u,g=e.ifHorizontal(l,c),_=[Math.floor(h/g),h%g];n===`vertical`&&_.reverse();var v=U(_,2),y=v[0],b=v[1],x=(r-o-(l-1)*a)/l,S=t.getBBox().height,C=U([0,0],2),w=C[0],T=C[1];return n===`horizontal`?(f=U([d,y*(S+i)],2),w=f[0],T=f[1],d=b===l-1?0:d+x+a):(p=U([b*(x+a),d],2),w=p[0],T=p[1],d=y===c-1?0:d+S+i),{page:m,index:s,row:y,col:b,pageIndex:h,width:x,height:S,x:w,y:T}})},t.prototype.getFlexLayout=function(){var e=this.attributes,t=e.width,n=e.height,r=e.rowPadding,i=e.colPadding,a=U(this.navigatorShape,1)[0],o=U(this.grid,2),s=o[0],c=o[1],l=U([t-a,n],2),u=l[0],d=l[1],f=U([0,0,0,0,0,0,0,0],8),p=f[0],m=f[1],h=f[2],g=f[3],_=f[4],v=f[5],y=f[6],b=f[7];return this.pageViews.children.map(function(e,t){var n,a,o,l,f=e.getBBox(),x=f.width,S=f.height,C=y===0?0:i,w=y+C+x;return w<=u&&h6(_,function(e){return e<c})?(n=U([y+C,b,w],3),p=n[0],m=n[1],y=n[2],{width:x,height:S,x:p,y:m,page:h,index:t,pageIndex:g++,row:v,col:_++}):(a=U([v+1,0,0,b+S+r],4),v=a[0],_=a[1],y=a[2],b=a[3],b+S<=d&&h6(v,function(e){return e<s})?(o=U([y,b,x],3),p=o[0],m=o[1],y=o[2],{width:x,height:S,x:p,y:m,page:h,index:t,pageIndex:g++,row:v,col:_++}):(l=U([0,0,x,0,h+1,0,0,0],8),p=l[0],m=l[1],y=l[2],b=l[3],h=l[4],g=l[5],v=l[6],_=l[7],{width:x,height:S,x:p,y:m,page:h,index:t,pageIndex:g++,row:v,col:_++}))})},Object.defineProperty(t.prototype,`itemsLayout`,{get:function(){this.navigatorShape=[0,0];var e=this.attributes.layout===`grid`?this.getGridLayout:this.getFlexLayout,t=e.call(this);return t.slice(-1)[0].page>0?(this.navigatorShape=[55,0],e.call(this)):t},enumerable:!1,configurable:!0}),t.prototype.ifHorizontal=function(e,t){var n=this.attributes.orientation;return V3(n,e,t)},t.prototype.flattenPage=function(e){e.querySelectorAll(m6.item.class).forEach(function(t){e.appendChild(t)}),e.querySelectorAll(m6.page.class).forEach(function(t){e.removeChild(t).destroy()})},t.prototype.renderItems=function(e){var t=this.attributes,n=t.click,r=t.mouseenter,i=t.mouseleave,a=t.classNamePrefix;this.flattenPage(e);var o=this.dispatchCustomEvent.bind(this),s=F3(m6.item.name,H3.item,a);$(e).selectAll(m6.item.class).data(this.renderData,function(e){return e.id}).join(function(e){return e.append(function(e){var t=e.style,n=Aa(e,[`style`]);return new p6({style:t},n)}).attr(`className`,s).on(`click`,function(){n?.(this),o(`itemClick`,{item:this})}).on(`pointerenter`,function(){r?.(this),o(`itemMouseenter`,{item:this})}).on(`pointerleave`,function(){i?.(this),o(`itemMouseleave`,{item:this})})},function(e){return e.each(function(e){var t=e.style;this.update(t)})},function(e){return e.remove()})},t.prototype.relayoutNavigator=function(){var e=this.attributes,t=e.layout,n=e.width,r=this.pageViews.children[0]?.getBBox().height||0,i=U(this.navigatorShape,2),a=i[0],o=i[1];this.navigator.update(t===`grid`?{pageWidth:n-a,pageHeight:r-o}:{})},t.prototype.adjustLayout=function(){var e=this,t=Object.entries(l1(this.itemsLayout,`page`)).map(function(e){var t=U(e,2);return{page:t[0],layouts:t[1]}}),n=W([],U(this.navigator.getContainer().children),!1);t.forEach(function(t){var r=t.layouts,i=e.pageViews.appendChild(new am({className:m6.page.name}));r.forEach(function(e){var t=e.x,r=e.y,a=e.index,o=e.width,s=e.height,c=n[a];i.appendChild(c),ya(c,`__layout__`,e),c.update({x:t,y:r,width:o,height:s})})}),this.relayoutNavigator()},t.prototype.renderNavigator=function(e){var t=this.attributes,n=t.orientation,r=t.classNamePrefix,i=J1(this.attributes,`nav`),a=X$({orientation:n,classNamePrefix:r},i),o=this;return e.selectAll(m6.navigator.class).data([`nav`]).join(function(e){return e.append(function(){return new e6({style:a})}).attr(`className`,m6.navigator.name).each(function(){o.navigator=this})},function(e){return e.each(function(){this.update(a)})},function(e){return e.remove()}),this.navigator},t.prototype.getBBox=function(){return this.navigator.getBBox()},t.prototype.render=function(e,t){var n=this.attributes.data;if(!(!n||n.length===0)){var r=this.renderNavigator($(t));this.renderItems(r.getContainer()),this.adjustLayout()}},t.prototype.dispatchCustomEvent=function(e,t){var n=new Xf(e,{detail:t});this.dispatchEvent(n)},t}(a0),_6=function(e){ka(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.update=function(e){this.attr(e)},t}(sm),v6=function(e){ka(t,e);function t(t){return e.call(this,t,K3)||this}return t.prototype.renderTitle=function(e,t,n){var r=this.attributes,i=r.showTitle,a=r.titleText,o=r.classNamePrefix,s=U(X1(J1(this.attributes,`title`)),2),c=s[0],l=s[1];this.titleGroup=e.maybeAppendByClassName(q3.titleGroup,`g`).styles(l);var u=H(H({width:t,height:n},c),{text:i?a:``,classNamePrefix:o});this.title=this.titleGroup.maybeAppendByClassName(q3.title,function(){return new Q3({style:u})}).update(u)},t.prototype.renderCustom=function(e){var t=this.attributes.data,n={innerHTML:this.attributes.render(t),pointerEvents:`auto`};e.maybeAppendByClassName(q3.html,function(){return new _6({className:q3.html.name,style:n})}).update(n)},t.prototype.renderItems=function(e,t){var n=t.x,r=t.y,i=t.width,a=t.height,o=U(X1(J1(this.attributes,`title`,!0)),2),s=o[0],c=o[1],l=H(H({},s),{width:i,height:a,x:0,y:0});this.itemsGroup=e.maybeAppendByClassName(q3.itemsGroup,`g`).styles(H(H({},c),{transform:`translate(${n}, ${r})`}));var u=this;this.itemsGroup.selectAll(q3.items.class).data([`items`]).join(function(e){return e.append(function(){return new g6({style:l})}).attr(`className`,q3.items.name).each(function(){u.items=$(this)})},function(e){return e.update(l)},function(e){return e.remove()})},t.prototype.adjustLayout=function(){if(this.attributes.showTitle){var e=this.title.node().getAvailableSpace(),t=e.x,n=e.y;this.itemsGroup.node().style.transform=`translate(${t}, ${n})`}},Object.defineProperty(t.prototype,`availableSpace`,{get:function(){var e=this.attributes,t=e.showTitle,n=e.width,r=e.height;return t?this.title.node().getAvailableSpace():new G$(0,0,n,r)},enumerable:!1,configurable:!0}),t.prototype.getBBox=function(){var t=this.title?.node(),n=this.items?.node();return!t||!n?e.prototype.getBBox.call(this):Y3(t,n)},t.prototype.render=function(e,t){var n=this.attributes,r=n.width,i=n.height,a=n.x,o=a===void 0?0:a,s=n.y,c=s===void 0?0:s,l=n.classNamePrefix,u=n.render,d=$(t),f=t.className||`legend-category`;l?t.attr(`className`,`${f} ${l}legend`):t.className||t.attr(`className`,`legend-category`),t.style.transform=`translate(${o}, ${c})`,u?this.renderCustom(d):(this.renderTitle(d,r,i),this.renderItems(d,this.availableSpace),this.adjustLayout())},t}(a0),y6={backgroundFill:`#262626`,backgroundLineCap:`round`,backgroundLineWidth:1,backgroundStroke:`#333`,backgroundZIndex:-1,formatter:function(e){return e.toString()},labelFill:`#fff`,labelFontSize:12,labelTextBaseline:`middle`,padding:[2,4],position:`right`,radius:0,zIndex:999},b6=q$({background:`background`,labelGroup:`label-group`,label:`label`},`indicator`),x6=function(e){ka(t,e);function t(t){var n=e.call(this,t,y6)||this;return n.point=[0,0],n.group=n.appendChild(new am({})),n.isMutationObserved=!0,n}return t.prototype.renderBackground=function(){if(this.label){var e=this.attributes,t=e.position,n=e.padding,r=U(R1(n),4),i=r[0],a=r[1],o=r[2],s=r[3],c=this.label.node().getLocalBounds(),l=c.min,u=c.max,d=new G$(l[0]-s,l[1]-i,u[0]+a-l[0]+s,u[1]+o-l[1]+i),f=this.getPath(t,d),p=J1(this.attributes,`background`);this.background=$(this.group).maybeAppendByClassName(b6.background,`path`).styles(H(H({},p),{d:f})),this.group.appendChild(this.label.node())}},t.prototype.renderLabel=function(){var e=this.attributes,t=e.formatter,n=e.labelText,r=U(X1(J1(this.attributes,`label`)),2),i=r[0],a=r[1];i.text;var o=Aa(i,[`text`]);this.label=$(this.group).maybeAppendByClassName(b6.labelGroup,`g`).styles(a),n&&this.label.maybeAppendByClassName(b6.label,function(){return s1(t(n))}).style(`text`,t(n).toString()).selectAll(`text`).styles(o)},t.prototype.adjustLayout=function(){var e=U(this.point,2),t=e[0],n=e[1],r=this.attributes,i=r.x,a=r.y;this.group.attr(`transform`,`translate(${i-t}, ${a-n})`)},t.prototype.getPath=function(e,t){var n=this.attributes.radius,r=t.x,i=t.y,a=t.width,o=t.height,s=[[`M`,r+n,i],[`L`,r+a-n,i],[`A`,n,n,0,0,1,r+a,i+n],[`L`,r+a,i+o-n],[`A`,n,n,0,0,1,r+a-n,i+o],[`L`,r+n,i+o],[`A`,n,n,0,0,1,r,i+o-n],[`L`,r,i+n],[`A`,n,n,0,0,1,r+n,i],[`Z`]],c={top:4,right:6,bottom:0,left:2}[e],l=this.createCorner([s[c].slice(-2),s[c+1].slice(-2)]);return s.splice.apply(s,W([c+1,1],U(l),!1)),s[0][0]=`M`,s},t.prototype.createCorner=function(e,t){t===void 0&&(t=10);var n=.8,r=B1.apply(void 0,W([],U(e),!1)),i=U(e,2),a=U(i[0],2),o=a[0],s=a[1],c=U(i[1],2),l=c[0],u=c[1],d=U(r?[l-o,[o,l]]:[u-s,[s,u]],2),f=d[0],p=U(d[1],2),m=p[0],h=p[1],g=f/2,_=f/Math.abs(f),v=t*_,y=v/2,b=v*Math.sqrt(3)/2*n,x=U([m,m+g-y,m+g,m+g+y,h],5),S=x[0],C=x[1],w=x[2],T=x[3],E=x[4];return r?(this.point=[w,s-b],[[`L`,S,s],[`L`,C,s],[`L`,w,s-b],[`L`,T,s],[`L`,E,s]]):(this.point=[o+b,w],[[`L`,o,S],[`L`,o,C],[`L`,o+b,w],[`L`,o,T],[`L`,o,E]])},t.prototype.applyVisibility=function(){this.attributes.visibility===`hidden`?L$(this):I$(this)},t.prototype.bindEvents=function(){this.label.on(op.BOUNDS_CHANGED,this.renderBackground)},t.prototype.render=function(){this.renderLabel(),this.renderBackground(),this.adjustLayout(),this.applyVisibility()},t}(a0);function S6(e){return e===void 0&&(e=``),{CONTAINER:`${e}tooltip`,TITLE:`${e}tooltip-title`,LIST:`${e}tooltip-list`,LIST_ITEM:`${e}tooltip-list-item`,NAME:`${e}tooltip-list-item-name`,MARKER:`${e}tooltip-list-item-marker`,NAME_LABEL:`${e}tooltip-list-item-name-label`,VALUE:`${e}tooltip-list-item-value`,CROSSHAIR_X:`${e}tooltip-crosshair-x`,CROSSHAIR_Y:`${e}tooltip-crosshair-y`}}var C6={overflow:`hidden`,"white-space":`nowrap`,"text-overflow":`ellipsis`};function w6(e){var t;e===void 0&&(e=``);var n=S6(e);return t={},t[`.${n.CONTAINER}`]={position:`absolute`,visibility:`visible`,"z-index":8,transition:`visibility 0.2s cubic-bezier(0.23, 1, 0.32, 1), left 0.4s cubic-bezier(0.23, 1, 0.32, 1), top 0.4s cubic-bezier(0.23, 1, 0.32, 1)`,"background-color":`rgba(255, 255, 255, 0.96)`,"box-shadow":`0 6px 12px 0 rgba(0, 0, 0, 0.12)`,"border-radius":`4px`,color:`rgba(0, 0, 0, 0.65)`,"font-size":`12px`,"line-height":`20px`,padding:`12px`,"min-width":`120px`,"max-width":`360px`,"font-family":`Roboto-Regular`},t[`.${n.TITLE}`]={color:`rgba(0, 0, 0, 0.45)`},t[`.${n.LIST}`]={margin:`0px`,"list-style-type":`none`,padding:`0px`},t[`.${n.LIST_ITEM}`]={"list-style-type":`none`,display:`flex`,"line-height":`2em`,"align-items":`center`,"justify-content":`space-between`,"white-space":`nowrap`},t[`.${n.MARKER}`]={width:`8px`,height:`8px`,"border-radius":`50%`,display:`inline-block`,"margin-right":`4px`},t[`.${n.NAME}`]={display:`flex`,"align-items":`center`,"max-width":`216px`},t[`.${n.NAME_LABEL}`]=H({flex:1},C6),t[`.${n.VALUE}`]=H({display:`inline-block`,float:`right`,flex:1,"text-align":`right`,"min-width":`28px`,"margin-left":`30px`,color:`rgba(0, 0, 0, 0.85)`},C6),t[`.${n.CROSSHAIR_X}`]={position:`absolute`,width:`1px`,"background-color":`rgba(0, 0, 0, 0.25)`},t[`.${n.CROSSHAIR_Y}`]={position:`absolute`,height:`1px`,"background-color":`rgba(0, 0, 0, 0.25)`},t}var T6=function(e){ka(t,e);function t(t){var n=this,r=t.style?.template?.prefixCls,i=S6(r);return n=e.call(this,t,{data:[],x:0,y:0,visibility:`visible`,title:``,position:`bottom-right`,offset:[5,5],enterable:!1,container:{x:0,y:0},bounding:null,template:{prefixCls:``,container:`<div class="${i.CONTAINER}"></div>`,title:`<div class="${i.TITLE}"></div>`,item:`<li class="${i.LIST_ITEM}" data-index={index}>
|
|
72
|
+
<span class="${i.NAME}">
|
|
73
|
+
<span class="${i.MARKER}" style="background:{color}"></span>
|
|
74
|
+
<span class="${i.NAME_LABEL}" title="{name}">{name}</span>
|
|
75
|
+
</span>
|
|
76
|
+
<span class="${i.VALUE}" title="{value}">{value}</span>
|
|
77
|
+
</li>`},style:w6(r)})||this,n.timestamp=-1,n.prevCustomContentKey=n.attributes.contentKey,n.initShape(),n.render(n.attributes,n),n}return Object.defineProperty(t.prototype,`HTMLTooltipElement`,{get:function(){return this.element},enumerable:!1,configurable:!0}),t.prototype.getContainer=function(){return this.element},Object.defineProperty(t.prototype,`elementSize`,{get:function(){return{width:this.element.offsetWidth,height:this.element.offsetHeight}},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`HTMLTooltipItemsElements`,{get:function(){var e=this.attributes,t=e.data,n=e.template;return t.map(function(e,t){var r=e.name,i=r===void 0?``:r,a=e.color,o=a===void 0?`black`:a,s=e.index,c=Aa(e,[`name`,`color`,`index`]),l=H({name:i,color:o,index:s??t},c);return No(qi(n.item,l))})},enumerable:!1,configurable:!0}),t.prototype.render=function(e,t){this.renderHTMLTooltipElement(),this.updatePosition()},t.prototype.destroy=function(){var t;(t=this.element)==null||t.remove(),e.prototype.destroy.call(this)},t.prototype.show=function(e,t){var n=this;if(e!==void 0&&t!==void 0){var r=this.element.style.visibility===`hidden`,i=function(){n.attributes.x=e??n.attributes.x,n.attributes.y=t??n.attributes.y,n.updatePosition()};r?this.closeTransition(i):i()}this.element.style.visibility=`visible`},t.prototype.hide=function(e,t){e===void 0&&(e=0),t===void 0&&(t=0),!(this.attributes.enterable&&this.isCursorEntered(e,t))&&(this.element.style.visibility=`hidden`)},t.prototype.initShape=function(){var e=this.attributes.template;this.element=No(e.container),this.id&&this.element.setAttribute(`id`,this.id)},t.prototype.renderCustomContent=function(){if(!(this.prevCustomContentKey!==void 0&&this.prevCustomContentKey===this.attributes.contentKey)){this.prevCustomContentKey=this.attributes.contentKey;var e=this.attributes.content;e&&(typeof e==`string`?this.element.innerHTML=e:t0(this.element,e))}},t.prototype.renderHTMLTooltipElement=function(){var e,t=this.attributes,n=t.template,r=t.title,i=t.enterable,a=t.style,o=t.content,s=S6(n.prefixCls),c=this.element;if(this.element.style.pointerEvents=i?`auto`:`none`,o)this.renderCustomContent();else{r?(c.innerHTML=n.title,c.getElementsByClassName(s.TITLE)[0].innerHTML=r):(e=c.getElementsByClassName(s.TITLE)?.[0])==null||e.remove();var l=this.HTMLTooltipItemsElements,u=document.createElement(`ul`);u.className=s.LIST,t0(u,l);var d=this.element.querySelector(`.${s.LIST}`);d?d.replaceWith(u):c.appendChild(u)}K1(c,a)},t.prototype.getRelativeOffsetFromCursor=function(e){var t=this.attributes,n=t.position,r=t.offset,i=(e||n).split(`-`),a={left:[-1,0],right:[1,0],top:[0,-1],bottom:[0,1]},o=this.elementSize,s=o.width,c=o.height,l=[-s/2,-c/2];return i.forEach(function(e){var t=U(l,2),n=t[0],i=t[1],o=U(a[e],2),u=o[0],d=o[1];l=[n+(s/2+r[0])*u,i+(c/2+r[1])*d]}),l},t.prototype.setOffsetPosition=function(e){var t=U(e,2),n=t[0],r=t[1],i=this.attributes,a=i.x,o=a===void 0?0:a,s=i.y,c=s===void 0?0:s,l=i.container,u=l.x,d=l.y;this.element.style.left=`${+o+u+n}px`,this.element.style.top=`${+c+d+r}px`},t.prototype.updatePosition=function(){var e=this.attributes.showDelay,t=e===void 0?60:e,n=Date.now();this.timestamp>0&&n-this.timestamp<t||(this.timestamp=n,this.setOffsetPosition(this.autoPosition(this.getRelativeOffsetFromCursor())))},t.prototype.autoPosition=function(e){var t=U(e,2),n=t[0],r=t[1],i=this.attributes,a=i.x,o=i.y,s=i.bounding,c=i.position;if(!s)return[n,r];var l=this.element,u=l.offsetWidth,d=l.offsetHeight,f=U([+a+n,+o+r],2),p=f[0],m=f[1],h={left:`right`,right:`left`,top:`bottom`,bottom:`top`},g=s.x,_=s.y,v=s.width,y=s.height,b={left:p<g,right:p+u>g+v,top:m<_,bottom:m+d>_+y},x=[];c.split(`-`).forEach(function(e){b[e]?x.push(h[e]):x.push(e)});var S=x.join(`-`);return this.getRelativeOffsetFromCursor(S)},t.prototype.isCursorEntered=function(e,t){if(this.element){var n=this.element.getBoundingClientRect(),r=n.x,i=n.y,a=n.width,o=n.height;return new G$(r,i,a,o).isPointIn(e,t)}return!1},t.prototype.closeTransition=function(e){var t=this,n=this.element.style.transition;this.element.style.transition=`none`,e(),setTimeout(function(){t.element.style.transition=n},10)},t.tag=`tooltip`,t}(a0),E6=function(e){ka(t,e);function t(n){var r=e.call(this,X$({},t.defaultOptions,n))||this;return r.hoverColor=`#f5f5f5`,r.selectedColor=`#e6f7ff`,r.background=r.appendChild(new _m({})),r.label=r.background.appendChild(new am({})),r}return Object.defineProperty(t.prototype,`padding`,{get:function(){return R1(this.style.padding)},enumerable:!1,configurable:!0}),t.prototype.renderLabel=function(){var e=this.style,t=e.label,n=e.value,r=J1(this.attributes,`label`);$(this.label).maybeAppend(`.label`,function(){return s1(t)}).attr(`className`,`label`).styles(r),this.label.attr(`__data__`,n)},t.prototype.renderBackground=function(){var e=this.label.getBBox(),t=U(this.padding,4),n=t[0],r=t[1],i=t[2],a=t[3],o=e.width,s=e.height,c=o+a+r,l=s+n+i,u=J1(this.attributes,`background`),d=this.style,f=d.width,p=f===void 0?0:f,m=d.height,h=m===void 0?0:m,g=d.selected;this.background.attr(H(H({},u),{width:Math.max(c,p),height:Math.max(l,h),fill:g?this.selectedColor:`#fff`})),this.label.attr({transform:`translate(${a}, ${(l-s)/2})`})},t.prototype.render=function(){this.renderLabel(),this.renderBackground()},t.prototype.bindEvents=function(){var e=this;this.addEventListener(`pointerenter`,function(){e.style.selected||e.background.attr(`fill`,e.hoverColor)}),this.addEventListener(`pointerleave`,function(){e.style.selected||e.background.attr(`fill`,e.style.backgroundFill)});var t=this;this.addEventListener(`click`,function(){var n=e.style,r=n.label,i=n.value,a=n.onClick;a?.(i,{label:r,value:i},t)})},t.defaultOptions={style:{value:``,label:``,cursor:`pointer`}},t}(a0),D6=function(e){ka(t,e);function t(n){var r=e.call(this,X$({},t.defaultOptions,n))||this;r.currentValue=t.defaultOptions.style?.defaultValue,r.isPointerInSelect=!1,r.select=r.appendChild(new _m({className:`select`,style:{cursor:`pointer`,width:0,height:0}})),r.dropdown=r.appendChild(new _m({className:`dropdown`}));var i=r.style.defaultValue;return i&&r.style.options?.some(function(e){return e.value===i})&&(r.currentValue=i),r}return t.prototype.setValue=function(e){this.currentValue=e,this.render()},t.prototype.getValue=function(){return this.currentValue},Object.defineProperty(t.prototype,`dropdownPadding`,{get:function(){return R1(this.style.dropdownPadding)},enumerable:!1,configurable:!0}),t.prototype.renderSelect=function(){var e=this,t=this.style,n=t.x,r=t.y,i=t.width,a=t.height,o=t.bordered,s=t.showDropdownIcon,c=J1(this.attributes,`select`),l=J1(this.attributes,`placeholder`);this.select.attr(H(H({x:n,y:r,width:i,height:a},c),{fill:`#fff`,strokeWidth:+!!o}));var u=this.dropdownPadding;s&&$(this.select).maybeAppend(`.dropdown-icon`,`path`).style(`d`,`M-5,-3.5 L0,3.5 L5,-3.5`).style(`transform`,`translate(${n+i-10-u[1]-u[3]}, ${r+a/2})`).style(`lineWidth`,1).style(`stroke`,this.select.style.stroke);var d=this.style.options?.find(function(t){return t.value===e.currentValue}),f=H({x:n+u[3]},l);$(this.select).selectAll(`.placeholder`).data(d?[]:[1]).join(function(e){return e.append(`text`).attr(`className`,`placeholder`).styles(f).style(`y`,function(){return r+(a-this.getBBox().height)/2})},function(e){return e.styles(f)},function(e){return e.remove()});var p=J1(this.attributes,`optionLabel`),m=H({x:n+u[3]},p);$(this.select).selectAll(`.value`).data(d?[d]:[]).join(function(e){return e.append(function(e){return s1(e.label)}).attr(`className`,`value`).styles(m).style(`y`,function(){return r+(a-this.getBBox().height)/2})},function(e){return e.styles(m)},function(e){return e.remove()})},t.prototype.renderDropdown=function(){var e=this,t=this.style,n=t.x,r=t.y,i=t.width,a=t.height,o=t.options,s=t.onSelect,c=t.open,l=J1(this.attributes,`dropdown`),u=J1(this.attributes,`option`),d=this.dropdownPadding;$(this.dropdown).maybeAppend(`.dropdown-container`,`g`).attr(`className`,`dropdown-container`).selectAll(`.dropdown-item`).data(o,function(e){return e.value}).join(function(t){return t.append(function(t){return new E6({className:`dropdown-item`,style:H(H(H({},t),u),{width:i-d[1]-d[3],selected:t.value===e.currentValue,onClick:function(t,n,r){e.setValue(t),s?.(t,n,r),e.dispatchEvent(new Xf(`change`,{detail:{value:t,option:n,item:r}})),L$(e.dropdown)}})})}).each(function(e,t){var n=(this.parentNode?.children).reduce(function(e,n,r){return r<t&&(e+=n.getBBox().height),e},0);this.attr(`transform`,`translate(${d[3]}, ${d[0]+n})`)})},function(t){return t.update(function(t){return{selected:t.value===e.currentValue}})},function(e){return e.remove()});var f=(this.dropdown.getElementsByClassName(`dropdown-container`)?.[0])?.getBBox(),p=l.spacing;this.dropdown.attr(H({transform:`translate(${n}, ${r+a+p})`,width:f.width+d[1]+d[3],height:f.height+d[0]+d[2]},l)),!c&&L$(this.dropdown)},t.prototype.render=function(){this.renderSelect(),this.renderDropdown()},t.prototype.bindEvents=function(){var e=this;this.addEventListener(`click`,function(e){e.stopPropagation()}),this.select.addEventListener(`click`,function(){e.dropdown.style.visibility===`visible`?L$(e.dropdown):I$(e.dropdown)}),this.addEventListener(`pointerenter`,function(){e.isPointerInSelect=!0}),this.addEventListener(`pointerleave`,function(){e.isPointerInSelect=!1}),document==null||document.addEventListener(`click`,function(){e.isPointerInSelect||L$(e.dropdown)})},t.defaultOptions={style:{x:0,y:0,width:140,height:32,options:[],bordered:!0,defaultValue:``,selectRadius:8,selectStroke:`#d9d9d9`,showDropdownIcon:!0,placeholderText:`请选择`,placeholderFontSize:12,placeholderTextBaseline:`top`,placeholderFill:`#c2c2c2`,dropdownFill:`#fff`,dropdownStroke:`#d9d9d9`,dropdownRadius:8,dropdownShadowBlur:4,dropdownShadowColor:`rgba(0, 0, 0, 0.08)`,dropdownPadding:8,dropdownSpacing:10,optionPadding:[8,12],optionFontSize:12,optionTextBaseline:`top`,optionBackgroundFill:`#fff`,optionBackgroundRadius:4,optionLabelFontSize:12,optionLabelTextBaseline:`top`}},t}(a0),O6=function(e){ka(t,e);function t(n){var r=e.call(this,X$({},{style:{backgroundOpacity:t.backgroundOpacities.default}},t.defaultOptions,n))||this;return r.showBackground=!0,r.background=r.appendChild(new _m({})),r.icon=r.appendChild(new am({})),r}return Object.defineProperty(t.prototype,`label`,{get:function(){return`BaseIcon`},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`lineWidth`,{get:function(){return Math.log10(this.attributes.size)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`padding`,{get:function(){return R1(this.attributes.size/5)},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`iconSize`,{get:function(){var e=this.attributes.size,t=U(this.padding,4),n=t[0],r=t[1],i=t[2],a=t[3];return Math.max(e-Math.max(a+r,n+i),this.lineWidth*2+1)},enumerable:!1,configurable:!0}),t.prototype.renderBackground=function(){var e=this.attributes,t=e.x,n=e.y,r=e.size,i=r/2,a=J1(this.attributes,`background`);this.background.attr(H({x:t-i,y:n-i,width:r,height:r},a))},t.prototype.showIndicator=function(){if(this.label){var e=this.attributes.size,t=this.background.getBBox(),n=t.x,r=t.y;this.indicator.update({x:n+e/2,y:r-5,labelText:this.label,visibility:`visible`})}},t.prototype.hideIndicator=function(){this.indicator.update({visibility:`hidden`})},t.prototype.connectedCallback=function(){e.prototype.connectedCallback.call(this);var t=this.attributes.size,n=this.background.getBBox(),r=n.x,i=n.y,a=this.ownerDocument?.defaultView;a&&(this.indicator=a.appendChild(new x6({style:{x:r+t/2,y:i-t/2,visibility:`hidden`,position:`top`,radius:3,zIndex:100}})))},t.prototype.disconnectedCallback=function(){this.indicator.destroy()},t.prototype.render=function(){this.renderIcon(),this.showBackground&&this.renderBackground()},t.prototype.bindEvents=function(){var e=this,n=this.attributes.onClick;if(this.addEventListener(`click`,function(){n?.(e)}),this.showBackground){var r=function(){return e.background.attr({opacity:t.backgroundOpacities.default})},i=function(){return e.background.attr({opacity:t.backgroundOpacities.hover})},a=function(){return e.background.attr({opacity:t.backgroundOpacities.active})};this.addEventListener(`pointerenter`,function(){i(),e.showIndicator()}),this.addEventListener(`pointerleave`,function(){r(),e.hideIndicator()}),this.addEventListener(`pointerdown`,function(){a()}),this.addEventListener(`pointerup`,function(){r()})}},t.tag=`IconBase`,t.defaultOptions={style:{x:0,y:0,size:10,color:`#565758`,backgroundRadius:4,backgroundFill:`#e2e2e2`}},t.backgroundOpacities={default:0,hover:.8,active:1},t}(a0),k6=function(e,t){return t===void 0&&(t=`#565758`),new fm({style:{fill:t,d:`M ${e},${e} L -${e},0 L ${e},-${e} Z`,transformOrigin:`center`}})},A6=function(e){ka(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.arcPath=function(e,t,n){var r=U([n,n],2),i=r[0],a=r[1],o=function(r){return[e+n*Math.cos(r),t+n*Math.sin(r)]},s=U(o(-5/4*Math.PI),2),c=s[0],l=s[1],u=U(o(1/4*Math.PI),2);return`M${c},${l},A${i},${a},0,1,1,${u[0]},${u[1]}`},Object.defineProperty(t.prototype,`label`,{get:function(){return`重置`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this.iconSize,a=this.lineWidth,o=a+.5;$(this.icon).maybeAppend(`.reset`,`path`).styles({stroke:r,lineWidth:a,d:this.arcPath(t,n,i/2-a),markerStart:k6(o,r)})},t}(O6),j6=function(e){ka(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`快退`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this.iconSize,a=i/2,o=i/2/3**.5,s=[[t,n],[t,n-o],[t-a,n],[t,n+o],[t,n],[t+a,n-o],[t+a,n+o],[t,n]];$(this.icon).maybeAppend(`.backward`,`polygon`).styles({points:s,fill:r})},t}(O6),M6=function(e){ka(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`快进`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this.iconSize,a=i/2,o=i/2/3**.5,s=[[t,n],[t,n-o],[t+a,n],[t,n+o],[t,n],[t-a,n-o],[t-a,n+o],[t,n]];$(this.icon).maybeAppend(`.forward`,`polygon`).styles({points:s,fill:r})},t}(O6),N6=function(e){ka(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`播放`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this.iconSize,a=i/3*3**.5*.8,o=[[t+a,n],[t-a/2,n-i/2*.8],[t-a/2,n+i/2*.8],[t+a,n]];$(this.icon).maybeAppend(`.play`,`polygon`).styles({points:o,fill:r})},t}(O6),P6=function(e){ka(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`暂停`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this.iconSize,a=i/3,o=[[t-a,n-i/2],[t-a,n+i/2],[t-a/2,n+i/2],[t-a/2,n-i/2],[t-a,n-i/2],[t+a/2,n-i/2],[t+a/2,n+i/2],[t+a,n+i/2],[t+a,n-i/2]];$(this.icon).maybeAppend(`.pause`,`polygon`).styles({points:o,fill:r})},t}(O6),F6=function(e){ka(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`范围时间`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this,a=i.iconSize,o=i.lineWidth,s=o;$(this.icon).maybeAppend(`.left-line`,`line`).styles({x1:t-a/2,y1:n-a/2,x2:t-a/2,y2:n+a/2,stroke:r,lineWidth:o}),$(this.icon).maybeAppend(`.right-line`,`line`).styles({x1:t+a/2,y1:n-a/2,x2:t+a/2,y2:n+a/2,stroke:r,lineWidth:o}),$(this.icon).maybeAppend(`.left-arrow`,`line`).styles({x1:t,y1:n,x2:t-a/2+s*2,y2:n,stroke:r,lineWidth:o,markerEnd:k6(o*2,r)}),$(this.icon).maybeAppend(`.right-arrow`,`line`).styles({x1:t,y1:n,x2:t+a/2-s*2,y2:n,stroke:r,lineWidth:o,markerEnd:k6(o*2,r)})},t}(O6),I6=function(e){ka(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`单一时间`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this,a=i.iconSize,o=i.lineWidth;$(this.icon).maybeAppend(`.line`,`line`).styles({x1:t,y1:n-a/2,x2:t,y2:n+a/2,stroke:r,lineWidth:o});var s=o;$(this.icon).maybeAppend(`.left-arrow`,`line`).styles({x1:t-a/2-s*2,y1:n,x2:t-s*2,y2:n,stroke:r,lineWidth:o,markerEnd:k6(o*2,r)}),$(this.icon).maybeAppend(`.right-arrow`,`line`).styles({x1:t+a/2+s*2,y1:n,x2:t+s*2,y2:n,stroke:r,lineWidth:o,markerEnd:k6(o*2,r)})},t}(O6),L6=function(e){return[[-e/2,-e/2],[-e/2,e/2],[e/2,e/2]]},R6=function(e){ka(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`折线图`},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this,a=i.iconSize,o=i.lineWidth,s=o,c=(a-s*2-o)/4,l=(a-s*2-o)/2,u=U([t-a/2+s,n+a/2-s*2],2),d=u[0],f=u[1];$(this.icon).maybeAppend(`.coordinate`,`polyline`).styles({points:L6(a).map(function(e){var r=U(e,2),i=r[0],a=r[1];return[i+t,a+n]}),stroke:r,lineWidth:o}),$(this.icon).maybeAppend(`.line`,`polyline`).styles({points:[[d,f],[d+c,f-l],[d+c*2,f],[d+c*4,f-l*2]],stroke:r,lineWidth:o})},t}(O6),z6=function(e){ka(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return Object.defineProperty(t.prototype,`label`,{get:function(){return`条形图`},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`data`,{get:function(){return[1,4,2,4,3]},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.data,t=this.attributes,n=t.x,r=t.y,i=t.color,a=this,o=a.iconSize,s=a.lineWidth,c=s,l=(o-c)/e.length,u=(o-c*2)/4,d=U([n-o/2+c*2,r+o/2-c],2),f=d[0],p=d[1];$(this.icon).maybeAppend(`.coordinate`,`polyline`).styles({points:L6(o).map(function(e){var t=U(e,2),i=t[0],a=t[1];return[i+n,a+r]}),stroke:i,lineWidth:s}),$(this.icon).maybeAppend(`.bars`,`g`).selectAll(`.column`).data(this.data.map(function(e,t){return{value:e,index:t}})).join(function(e){return e.append(`line`).attr(`className`,`column`).style(`x1`,function(e){return f+l*e.index}).style(`y1`,p).style(`x2`,function(e){return f+l*e.index}).style(`y2`,function(e){return p-u*e.value}).styles({y1:p,stroke:i,lineWidth:s})})},t}(O6),B6=function(e){ka(t,e);function t(t){var n=e.call(this,X$({},{style:{color:`#d8d9d9`}},t))||this;return n.showBackground=!1,n}return t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.color,i=this,a=i.iconSize,o=i.lineWidth;$(this.icon).maybeAppend(`.split`,`line`).styles({x1:t,y1:n-a/2,x2:t,y2:n+a/2,stroke:r,lineWidth:o})},t}(O6),V6=function(e){ka(t,e);function t(){var t=e.apply(this,W([],U(arguments),!1))||this;return t.showBackground=!1,t}return Object.defineProperty(t.prototype,`padding`,{get:function(){return R1(0)},enumerable:!1,configurable:!0}),t.prototype.renderIcon=function(){var e=this.iconSize,t=this.attributes,n=t.x,r=t.y,i=t.speed,a=i===void 0?1:i,o=Sa(this.attributes,[`x`,`y`,`transform`,`transformOrigin`,`width`,`height`,`size`,`color`,`speed`]),s=Ri(e,20,1/0),c=20,l=H(H({},o),{x:n-s/2,y:r-c/2,width:s,height:c,defaultValue:a,bordered:!1,showDropdownIcon:!1,selectRadius:2,dropdownPadding:this.padding,dropdownRadius:2,dropdownSpacing:e/5,placeholderFontSize:e/2,optionPadding:0,optionLabelFontSize:e/2,optionBackgroundRadius:1,options:[{label:`1x`,value:1},{label:`1.5x`,value:1.5},{label:`2x`,value:2}]});$(this.icon).maybeAppend(`.speed`,function(){return new D6({style:l})}).attr(`className`,`speed`).each(function(){this.update(l)})},t.tag=`SpeedSelect`,t}(O6),H6=function(e){ka(t,e);function t(t){var n=e.call(this,t)||this;return n.icon=n.appendChild(new am({})),n.currentType=n.attributes.type,n}return t.prototype.getType=function(){return this.currentType},t.prototype.render=function(){var e=this,t=this.attributes;t.onChange;var n=Aa(t,[`onChange`]);$(this.icon).selectAll(`.icon`).data([this.currentType]).join(function(t){return t.append(function(t){var n=e.toggles.find(function(e){return U(e,1)[0]===t})?.[1];if(!n)throw Error(`Invalid type: ${t}`);return new n({})}).attr(`className`,`icon`).styles(n,!1).update({})},function(e){return e.styles({restStyles:n}).update({})},function(e){return e.remove()})},t.prototype.bindEvents=function(){var e=this,t=this.attributes.onChange;this.addEventListener(`click`,function(n){n.preventDefault(),n.stopPropagation();var r=(e.toggles.findIndex(function(t){return U(t,1)[0]===e.currentType})+1)%e.toggles.length,i=e.toggles[r][0];t?.(e.currentType),e.currentType=i,e.render()})},t.tag=`ToggleIcon`,t}(a0),U6=function(e){ka(t,e);function t(t){var n=e.call(this,X$({},{style:{type:`play`}},t))||this;return n.toggles=[[`play`,N6],[`pause`,P6]],n}return t}(H6),W6=function(e){ka(t,e);function t(t){var n=e.call(this,X$({},{style:{type:`range`}},t))||this;return n.toggles=[[`range`,F6],[`value`,I6]],n}return t}(H6),G6=function(e){ka(t,e);function t(t){var n=e.call(this,X$({},{style:{type:`column`}},t))||this;return n.toggles=[[`line`,R6],[`column`,z6]],n}return t}(H6),K6={reset:A6,speed:V6,backward:j6,playPause:U6,forward:M6,selectionType:W6,chartType:G6,split:B6},q6=function(e){ka(t,e);function t(n){var r=e.call(this,X$({},t.defaultOptions,n))||this;return r.background=r.appendChild(new _m({})),r.functions=r.appendChild(new am({})),r}return Object.defineProperty(t.prototype,`padding`,{get:function(){return R1(this.attributes.padding)},enumerable:!1,configurable:!0}),t.prototype.renderBackground=function(){var e=this.style,t=e.x,n=e.y,r=e.width,i=e.height,a=J1(this.attributes,`background`);this.background.attr(H({x:t,y:n,width:r,height:i},a))},t.prototype.renderFunctions=function(){var e=this,t,n=this.attributes,r=n.functions,i=n.iconSize,a=n.iconSpacing,o=n.x,s=n.y,c=n.width,l=n.height,u=n.align,d=U(this.padding,4),f=d[1],p=d[3],m=r.reduce(function(e,t){return e.length&&t.length?e.concat.apply(e,W([`split`],U(t),!1)):e.concat.apply(e,W([],U(t),!1))},[]),h=m.length*(i+a)-a,g={left:p+i/2,center:(c-h)/2+i/2,right:c-h-p-f+i/2}[u]||0;(t=this.speedSelect)==null||t.destroy(),this.functions.removeChildren(),m.forEach(function(t,n){var r=K6[t],c={x:o+n*(i+a)+g,y:s+l/2,size:i};if(r===V6?(c.speed=e.attributes.speed,c.onSelect=function(n){return e.handleFunctionChange(t,{value:n})}):[U6,W6,G6].includes(r)?(c.onChange=function(n){return e.handleFunctionChange(t,{value:n})},r===U6&&(c.type=e.attributes.state===`play`?`pause`:`play`),r===W6&&(c.type=e.attributes.selectionType===`range`?`value`:`range`),r===G6&&(c.type=e.attributes.chartType===`line`?`column`:`line`)):c.onClick=function(){return e.handleFunctionChange(t,{value:t})},r===V6){var u=e.ownerDocument?.defaultView;u&&(e.speedSelect=new r({style:H(H({},c),{zIndex:100})}),u.appendChild(e.speedSelect))}else e.functions.appendChild(new r({style:c}))})},t.prototype.disconnectedCallback=function(){var t;e.prototype.disconnectedCallback.call(this),(t=this.speedSelect)==null||t.destroy()},t.prototype.render=function(){this.renderBackground(),this.renderFunctions()},t.prototype.handleFunctionChange=function(e,t){var n=this.attributes.onChange;n?.(e,t)},t.defaultOptions={style:{x:0,y:0,width:300,height:40,padding:0,align:`center`,iconSize:25,iconSpacing:0,speed:1,state:`pause`,chartType:`line`,selectionType:`range`,backgroundFill:`#fbfdff`,backgroundStroke:`#ebedf0`,functions:[[`reset`,`speed`],[`backward`,`playPause`,`forward`],[`selectionType`,`chartType`]]}},t}(a0),J6=function(e){ka(t,e);function t(n){var r=e.call(this,X$({},t.defaultOptions,n))||this;return r.bindEvents(),r}return t.prototype.bindEvents=function(){var e=this;this.addEventListener(`mouseenter`,function(){e.attr(`lineWidth`,Math.ceil((e.style.r||0)/2))}),this.addEventListener(`mouseleave`,function(){e.attr(`lineWidth`,0)})},t.defaultOptions={style:{r:5,fill:`#3f7cf7`,lineWidth:0,stroke:`#3f7cf7`,strokeOpacity:.5,cursor:`pointer`}},t}(em),Y6=function(e){ka(t,e);function t(n){return e.call(this,X$({},t.defaultOptions,n))||this}return t.prototype.renderBackground=function(){var e=this.attributes,t=e.x,n=e.y,r=e.width,i=e.height,a=J1(this.attributes,`background`);$(this).maybeAppend(`background`,`rect`).attr(`className`,`background`).styles(H({x:t-r/2,y:n-i/2,width:r,height:i},a))},t.prototype.renderIcon=function(){var e=this.attributes,t=e.x,n=e.y,r=e.iconSize,i=J1(this.attributes,`icon`),a=1,o=r/2;$(this).maybeAppend(`icon-left-line`,`line`).attr(`className`,`icon-left-line`).styles(H({x1:t-a,y1:n-o,x2:t-a,y2:n+o},i)),$(this).maybeAppend(`icon-right-line`,`line`).attr(`className`,`icon-right-line`).styles(H({x1:t+a,y1:n-o,x2:t+a,y2:n+o},i))},t.prototype.renderBorder=function(){var e=this.attributes,t=e.x,n=e.y,r=e.width,i=e.height,a=e.type,o=J1(this.attributes,`border`),s=a===`start`?r/2:-r/2;$(this).maybeAppend(`border`,`line`).attr(`className`,`border`).styles(H({x1:s+t,y1:n-i/2,x2:s+t,y2:n+i/2},o))},t.prototype.render=function(){this.renderBackground(),this.renderIcon(),this.renderBorder()},t.defaultOptions={style:{x:0,y:0,width:10,height:50,iconSize:10,type:`start`,backgroundFill:`#fff`,backgroundFillOpacity:.5,iconStroke:`#9a9a9a`,iconLineWidth:1,borderStroke:`#e8e8e8`,borderLineWidth:1}},t}(a0);function X6(e,t){return typeof e==`number`?Q6(e):Z6(e,t)}function Z6(e,t){var n=new Date(e);switch(t){case`half-hour`:case`hour`:case`four-hour`:return[0,6,12,18].includes(n.getHours())&&n.getMinutes()===0?Z1(n,`HH:mm
|
|
78
|
+
YYYY-MM-DD`):Z1(n,`HH:mm`);case`half-day`:return n.getHours()<12?`AM
|
|
79
|
+
${Z1(n,`YYYY-MM-DD`)}`:`PM`;case`day`:return[1,10,20].includes(n.getDate())?Z1(n,`DD
|
|
80
|
+
YYYY-MM`):Z1(n,`DD`);case`week`:return n.getDate()<=7?Z1(n,`DD
|
|
81
|
+
YYYY-MM`):Z1(n,`DD`);case`month`:return[0,6].includes(n.getMonth())?Z1(n,`MM月
|
|
82
|
+
YYYY`):Z1(n,`MM月`);case`season`:return[0].includes(n.getMonth())?Z1(n,`MM月
|
|
83
|
+
YYYY`):Z1(n,`MM月`);case`year`:return Z1(n,`YYYY`);default:return Z1(n,`YYYY-MM-DD HH:mm`)}}function Q6(e){var t=String(Math.floor(e/3600)).padStart(2,`0`),n=String(Math.floor(e%3600/60)).padStart(2,`0`),r=String(Math.floor(e%60)).padStart(2,`0`);return e<3600?`${n}:${r}`:`${t}:${n}:${r}`}var $6=function(e){ka(t,e);function t(n){var r=e.call(this,X$({},t.defaultOptions,n))||this;r.axis=r.appendChild(new P3({style:{type:`linear`,startPos:[0,0],endPos:[0,0],data:[],showArrow:!1,animate:!1}})),r.timeline=r.appendChild(new X2({style:{onChange:function(e){r.handleSliderChange(e)}}})),r.controller=r.appendChild(new q6({})),r.states={},r.handleSliderChange=function(e){var t=(function(){var e=r.states.values;return Array.isArray(e)?W([],U(e),!1):e})();r.setBySliderValues(e),r.dispatchOnChange(t)};var i=r.attributes,a=i.selectionType,o=i.chartType,s=i.speed,c=i.state,l=i.playMode,u=i.values;return r.states={chartType:o,playMode:l,selectionType:a,speed:s,state:c},r.setByTimebarValues(u),r}return Object.defineProperty(t.prototype,`data`,{get:function(){return this.attributes.data.sort(function(e,t){return e.time<t.time?-1:+(e.time>t.time)})},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`space`,{get:function(){var e=this.attributes,t=e.x,n=e.y,r=e.width,i=e.height,a=e.type,o=e.controllerHeight,s=Ri(+i-o,0,+i),c=new G$(t,n+ +i-o,+r,o),l,u=0;a===`chart`?(u=35,l=new G$(t,n+s-u,+r,u)):l=new G$;var d=a===`time`?10:s,f=new G$(t,n+(a===`time`?s:s-d),+r,d-u);return{axisBBox:l,controllerBBox:c,timelineBBox:f}},enumerable:!1,configurable:!0}),t.prototype.setBySliderValues=function(e){var t=this.data,n=U(Array.isArray(e)?e:[0,e],2),r=n[0],i=n[1],a=t.length,o=t[Math.floor(r*a)],s=t[Math.ceil(i*a)-+!Array.isArray(e)];this.states.values=[o?.time??t[0].time,s?.time??1/0]},t.prototype.setByTimebarValues=function(e){var t=this.data,n=U(Array.isArray(e)?e:[void 0,e],2),r=n[0],i=n[1],a=t.find(function(e){return e.time===r}),o=t.find(function(e){return e.time===i});this.states.values=[a?.time??t[0]?.time,o?.time??1/0]},t.prototype.setByIndex=function(e){var t=this.data,n=U(e,2),r=n[0],i=n[1];this.states.values=[t[r]?.time??t[0].time,this.data[i]?.time??1/0]},Object.defineProperty(t.prototype,`sliderValues`,{get:function(){var e=this.states,t=e.values,n=e.selectionType,r=U(Array.isArray(t)?t:[void 0,t],2),i=r[0],a=r[1],o=this.data,s=o.length,c=n===`value`;return[function(){var e=o.findIndex(function(e){return e.time===i});return c?0:e>-1?e/s:0}(),function(){if(a===1/0)return 1;var e=o.findIndex(function(e){return e.time===a});return e>-1?e/s:c?.5:1}()]},enumerable:!1,configurable:!0}),Object.defineProperty(t.prototype,`values`,{get:function(){var e=this.states,t=e.values,n=e.selectionType,r=U(Array.isArray(t)?t:[this.data[0].time,t],2),i=r[0],a=r[1];return n===`value`?a:[i,a]},enumerable:!1,configurable:!0}),t.prototype.getDatumByRatio=function(e){var t=this.data,n=t.length;return t[Math.floor(e*(n-1))]},Object.defineProperty(t.prototype,`chartHandleIconShape`,{get:function(){var e=this.states.selectionType,t=this.space.timelineBBox.height;return e===`range`?function(e){return new Y6({style:{type:e,height:t,iconSize:t/6}})}:function(){return new um({style:{x1:0,y1:-t/2,x2:0,y2:t/2,lineWidth:2,stroke:`#c8c8c8`}})}},enumerable:!1,configurable:!0}),t.prototype.getChartStyle=function(e){var t=this,n=e.x,r=e.y,i=e.width,a=e.height,o=this.states,s=o.selectionType,c=o.chartType,l=this.data,u=this.attributes,d=u.type,f=u.labelFormatter,p=J1(this.attributes,`chart`);p.type;var m=Aa(p,[`type`]),h=s===`range`;if(d===`time`)return H({handleIconShape:function(){return new J6({})},selectionFill:`#2e7ff8`,selectionFillOpacity:1,showLabelOnInteraction:!0,handleLabelDy:h?-15:0,autoFitLabel:h,handleSpacing:h?-15:0,trackFill:`#edeeef`,trackLength:i,trackOpacity:.5,trackRadius:a/2,trackSize:a/2,type:s,values:this.sliderValues,formatter:function(e){if(f)return f(e);var n=t.getDatumByRatio(e).time;return typeof n==`number`?Q6(n):Z1(n,`YYYY-MM-DD HH:mm:ss`)},transform:`translate(${n}, ${r})`,zIndex:1},m);var g=s===`range`?5:0,_=l.map(function(e){return e.value});return H({handleIconOffset:g,handleIconShape:this.chartHandleIconShape,selectionFill:`#fff`,selectionFillOpacity:.5,selectionType:`invert`,sparklineSpacing:.1,sparklineColumnLineWidth:0,sparklineColor:`#d4e5fd`,sparklineAreaOpacity:1,sparklineAreaLineWidth:0,sparklineData:_,sparklineType:c,sparklineScale:.8,trackLength:i,trackSize:a,type:s,values:this.sliderValues,transform:`translate(${n}, ${r})`,zIndex:1},m)},t.prototype.renderChart=function(e){e===void 0&&(e=this.space.timelineBBox),this.timeline.update(this.getChartStyle(e))},t.prototype.updateSelection=function(){this.timeline.setValues(this.sliderValues,!0),this.handleSliderChange(this.sliderValues)},t.prototype.getAxisStyle=function(e){var t=this.data,n=this.attributes,r=n.interval,i=n.labelFormatter,a=J1(this.attributes,`axis`),o=e.x,s=e.y,c=e.width,l=W(W([],U(t),!1),[{time:0}],!1).map(function(e,t,n){var r=e.time;return{label:`${r}`,value:t/(n.length-1),time:r}});return H({startPos:[o,s],endPos:[o+c,s],data:l,labelFilter:function(e,t){return t<l.length-1},labelFormatter:function(e){var t=e.time;return i?i(t):X6(t,r)}},a)},t.prototype.renderAxis=function(e){e===void 0&&(e=this.space.axisBBox),this.attributes.type===`chart`&&this.axis.update(this.getAxisStyle(e))},t.prototype.renderController=function(e){e===void 0&&(e=this.space.controllerBBox);var t=this.attributes.type,n=this.states,r=n.state,i=n.speed,a=n.selectionType,o=n.chartType,s=J1(this.attributes,`controller`),c=this,l=H(H(H({},e),{iconSize:20,speed:i,state:r,selectionType:a,chartType:o,onChange:function(e,t){var n=t.value;switch(e){case`reset`:c.internalReset();break;case`speed`:c.handleSpeedChange(n);break;case`backward`:c.internalBackward();break;case`playPause`:n===`play`?c.internalPlay():c.internalPause();break;case`forward`:c.internalForward();break;case`selectionType`:c.handleSelectionTypeChange(n);break;case`chartType`:c.handleChartTypeChange(n);break;default:break}}}),s);t===`time`&&(l.functions=[[`reset`,`speed`],[`backward`,`playPause`,`forward`],[`selectionType`]]),this.controller.update(l)},t.prototype.dispatchOnChange=function(e){var t=this.data,n=this.attributes.onChange,r=this.states,i=r.values,a=r.selectionType,o=U(i,2),s=o[0],c=o[1],l=c===1/0?t.at(-1).time:c;(!e||!function(e,t){return Array.isArray(e)?Array.isArray(t)?e[0]===t[0]&&(e[1]===t[1]||e[1]===1/0||t[1]===1/0):!1:Array.isArray(t)?!1:e===t}(e,a===`range`?[s,l]:l))&&n?.(a===`range`?[s,l]:l)},t.prototype.internalReset=function(e){var t,n,r=this.states.selectionType;this.internalPause(),this.setBySliderValues(r===`range`?[0,1]:[0,0]),this.renderController(),this.updateSelection(),e||((n=(t=this.attributes)?.onReset)==null||n.call(t),this.dispatchOnChange())},t.prototype.reset=function(){this.internalReset()},t.prototype.moveSelection=function(e,t){var n=this.data,r=n.length,i=this.states,a=i.values,o=i.selectionType,s=i.playMode,c=U(a,2),l=c[0],u=c[1],d=n.findIndex(function(e){return e.time===l}),f=n.findIndex(function(e){return e.time===u});f===-1&&(f=r);var p=e===`backward`?-1:1,m;o===`range`?s===`acc`?(m=[d,f+p],p===-1&&d===f&&(m=[d,r])):m=[d+p,f+p]:m=[d,f+p];var h=function(e){var t=U(e.sort(function(e,t){return e-t}),2),n=t[0],i=t[1],a=function(e){return Ri(e,0,r)};return i>r?o===`value`?[0,0]:s===`acc`?[a(n),a(n)]:[0,a(i-n)]:n<0?s===`acc`?[0,a(i)]:[a(n+r-i),r]:[a(n),a(i)]}(m);return this.setByIndex(h),this.updateSelection(),h},t.prototype.internalBackward=function(e){var t,n,r=this.moveSelection(`backward`,e);return e||((n=(t=this.attributes)?.onBackward)==null||n.call(t),this.dispatchOnChange()),r},t.prototype.backward=function(){this.internalBackward()},t.prototype.internalPlay=function(e){var t=this,n,r,i=this.data,a=this.attributes.loop,o=this.states.speed,s=o===void 0?1:o;this.playInterval=window.setInterval(function(){t.internalForward()[1]===i.length&&!a&&(t.internalPause(),t.renderController())},1e3/s),this.states.state=`play`,!e&&((r=(n=this.attributes)?.onPlay)==null||r.call(n))},t.prototype.play=function(){this.internalPlay()},t.prototype.internalPause=function(e){var t,n;clearInterval(this.playInterval),this.states.state=`pause`,!e&&((n=(t=this.attributes)?.onPause)==null||n.call(t))},t.prototype.pause=function(){this.internalPause()},t.prototype.internalForward=function(e){var t,n,r=this.moveSelection(`forward`,e);return e||((n=(t=this.attributes)?.onForward)==null||n.call(t),this.dispatchOnChange()),r},t.prototype.forward=function(){this.internalForward()},t.prototype.handleSpeedChange=function(e){var t,n;this.states.speed=e,this.states.state===`play`&&(this.internalPause(!0),this.internalPlay(!0)),(n=(t=this.attributes)?.onSpeedChange)==null||n.call(t,e)},t.prototype.handleSelectionTypeChange=function(e){var t,n;this.states.selectionType=e,this.renderChart(),(n=(t=this.attributes)?.onSelectionTypeChange)==null||n.call(t,e)},t.prototype.handleChartTypeChange=function(e){var t,n;this.states.chartType=e,this.renderChart(),(n=(t=this.attributes)?.onChartTypeChange)==null||n.call(t,e)},t.prototype.render=function(){var e=this.space,t=e.axisBBox,n=e.controllerBBox,r=e.timelineBBox;this.renderController(n),this.renderAxis(t),this.renderChart(r),this.states.state===`play`&&this.internalPlay()},t.prototype.destroy=function(){e.prototype.destroy.call(this),this.internalPause(!0)},t.defaultOptions={style:{x:0,y:0,axisLabelFill:`#6e6e6e`,axisLabelTextAlign:`left`,axisLabelTextBaseline:`top`,axisLabelTransform:`translate(5, -12)`,axisLineLineWidth:1,axisLineStroke:`#cacdd1`,axisTickLength:15,axisTickLineWidth:1,axisTickStroke:`#cacdd1`,chartShowLabel:!1,chartType:`line`,controllerAlign:`center`,controllerHeight:40,data:[],interval:`day`,loop:!1,playMode:`acc`,selectionType:`range`,type:`time`}},t}(a0);function e8(e){let{width:t,height:n,renderer:r}=e,i=t8(e);return[i,new Lm({width:t,height:n,container:i,renderer:r||new sS})]}function t8(e){var t;let{container:n,className:r,graphCanvas:i}=e;if(n)return typeof n==`string`?document.getElementById(n):n;let a=nZ(r,!1),{width:o,height:s,containerStyle:c}=e,[l,u]=n8(e);return Object.assign(a.style,Object.assign({position:`absolute`,left:l+`px`,top:u+`px`,width:o+`px`,height:s+`px`},c)),(t=i.getContainer())==null||t.appendChild(a),a}function n8(e){let{width:t,height:n,placement:r,graphCanvas:i}=e,[a,o]=i.getSize(),[s,c]=py(r);return[s*(a-t),c*(o-n)]}var r8=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},i8=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.typePrefix=`__data__`,this.draw=!1,this.fieldMap={node:new Map,edge:new Map,combo:new Map},this.selectedItems=[],this.bindEvents=()=>{let{graph:e}=this.context;e.on(Z.AFTER_DRAW,this.createElement)},this.changeState=(e,t)=>{let{graph:n}=this.context,{typePrefix:r}=this,i=va(e,[r,`id`]),a=va(e,[r,`style`,`labelText`]),[o]=i.split(`__`),s=this.fieldMap[o].get(a)||[];n.setElementState(Object.fromEntries(s?.map(e=>[e,t])))},this.click=e=>{if(this.options.trigger===`hover`)return;let t=va(e,[this.typePrefix,`id`]);this.selectedItems.includes(t)?(this.selectedItems=this.selectedItems.filter(e=>e!==t),this.changeState(e,[])):(this.selectedItems.push(t),this.changeState(e,`selected`))},this.mouseleave=e=>{this.options.trigger!==`click`&&(this.selectedItems=[],this.changeState(e,[]))},this.mouseenter=e=>{if(this.options.trigger===`click`)return;let t=va(e,[this.typePrefix,`id`]);this.selectedItems.includes(t)?this.selectedItems=this.selectedItems.filter(e=>e!==t):(this.selectedItems.push(t),this.changeState(e,`active`))},this.setFieldMap=(e,t,n)=>{if(!e)return;let r=this.fieldMap[n];if(r)if(!r.has(e))r.set(e,[t]);else{let n=r.get(e);n&&(n.push(t),r.set(e,n))}},this.getEvents=()=>({mouseenter:this.mouseenter,mouseleave:this.mouseleave,click:this.click}),this.getMarkerData=(e,t)=>{if(!e)return[];let{model:n,element:r}=this.context,{nodes:i,edges:a,combos:o}=n.getData(),s={},c=t=>B(e)?e(t):e,l={node:`circle`,edge:`line`,combo:`rect`},u={circle:`circle`,ellipse:`circle`,image:`bowtie`,rect:`square`,star:`cross`,triangle:`triangle`,diamond:`diamond`,cubic:`dot`,line:`hyphen`,polyline:`hyphen`,quadratic:`hv`,"cubic-horizontal":`hyphen`,"cubic-vertical":`line`},d=(e,t)=>r?.getElementComputedStyle(e,t),f=(e,t)=>{e.forEach(e=>{let{id:n}=e,i=va(e,[`data`,c(e)]),a=r?.getElementType(t,e)||`circle`,o=d(t,e),f=(t===`edge`?o?.stroke:o?.fill)||`#1783ff`;n&&i&&i.replace(/\s+/g,``)&&(this.setFieldMap(i,n,t),s[i]||(s[i]={id:`${t}__${n}`,label:i,marker:u[a]||l[t],elementType:t,lineWidth:1,stroke:f,fill:f}))})};switch(t){case`node`:f(i,`node`);break;case`edge`:f(a,`edge`);break;case`combo`:f(o,`combo`);break;default:return[]}return Object.values(s)},this.createElement=()=>{if(this.draw){this.updateElement();return}let e=this.options,{width:t,height:n,nodeField:r,edgeField:i,comboField:a,trigger:o,position:s,container:c,containerStyle:l,className:u}=e,d=r8(e,[`width`,`height`,`nodeField`,`edgeField`,`comboField`,`trigger`,`position`,`container`,`containerStyle`,`className`]),f=this.getMarkerData(r,`node`),p=this.getMarkerData(i,`edge`),m=this.getMarkerData(a,`combo`),h=[...f,...m,...p],g=new v6({className:`legend`,style:Object.assign({width:t,height:n,data:h,itemMarkerLineWidth:({lineWidth:e})=>e,itemMarker:({marker:e})=>e,itemMarkerStroke:({stroke:e})=>e,itemMarkerFill:({fill:e})=>e,gridCol:f.length},d,this.getEvents())});this.category=g,this.upsertCanvas().appendChild(g),this.draw=!0},this.bindEvents()}update(e){super.update(e),this.clear(),this.createElement()}clear(){var e,t;(e=this.canvas)==null||e.destroy(),(t=this.container)==null||t.remove(),this.canvas=void 0,this.container=void 0,this.draw=!1}updateElement(){this.category&&this.category.update({itemMarkerOpacity:({id:e})=>!this.selectedItems.length||this.selectedItems.includes(e)?1:.5,itemLabelOpacity:({id:e})=>!this.selectedItems.length||this.selectedItems.includes(e)?1:.5})}upsertCanvas(){if(this.canvas)return this.canvas;let e=this.context.canvas,[t,n]=e.getSize(),{width:r=t,height:i=n,position:a,container:o,containerStyle:s,className:c}=this.options,[l,u]=e8({width:r,height:i,graphCanvas:e,container:o,containerStyle:s,placement:a,className:`legend`});return this.container=l,c&&l.classList.add(c),this.canvas=u,this.canvas}destroy(){this.clear(),this.context.graph.off(Z.AFTER_DRAW,this.createElement),super.destroy()}};i8.defaultOptions={position:`bottom`,trigger:`hover`,orientation:`horizontal`,layout:`flex`,itemSpacing:4,rowPadding:10,colPadding:10,itemMarkerSize:16,itemLabelFontSize:16,width:240,height:160};var a8=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.onDraw=e=>{e?.data?.render||this.onRender()},this.landmarkMap=new Map,this.mask=null,this.isMaskDragging=!1,this.onMaskDragStart=e=>{this.mask&&(this.isMaskDragging=!0,this.mask.setPointerCapture(e.pointerId),this.mask.addEventListener(`pointermove`,this.onMaskDrag),this.mask.addEventListener(`pointerup`,this.onMaskDragEnd),this.mask.addEventListener(`pointercancel`,this.onMaskDragEnd))},this.onMaskDrag=e=>{if(!this.mask||!this.isMaskDragging)return;let{size:[t,n]}=this.options,{movementX:r,movementY:i}=e,{left:a,top:o,width:s,height:c}=this.mask.style,[,,l,u]=this.maskBBox,d=parseInt(a)+r,f=parseInt(o)+i,p=parseInt(s),m=parseInt(c);d<0&&(d=0),f<0&&(f=0),d+p>t&&(d=s8(t-p,0)),f+m>n&&(f=s8(n-m,0)),p<l&&(r>0?(d=s8(d-r,0),p=o8(p+r,t)):r<0&&(p=o8(p-r,t))),m<u&&(i>0?(f=s8(f-i,0),m=o8(m+i,n)):i<0&&(m=o8(m-i,n))),Object.assign(this.mask.style,{left:d+`px`,top:f+`px`,width:p+`px`,height:m+`px`});let h=parseInt(a)-d,g=parseInt(o)-f;if(h===0&&g===0)return;let _=this.context.canvas.getCamera().getZoom()/this.canvas.getCamera().getZoom();this.context.graph.translateBy([h*_,g*_],!1)},this.onMaskDragEnd=e=>{this.mask&&(this.isMaskDragging=!1,this.mask.releasePointerCapture(e.pointerId),this.mask.removeEventListener(`pointermove`,this.onMaskDrag),this.mask.removeEventListener(`pointerup`,this.onMaskDragEnd),this.mask.removeEventListener(`pointercancel`,this.onMaskDragEnd))},this.onTransform=Ca(()=>{this.isMaskDragging||(this.updateMask(),this.setCamera())},32,{leading:!0}),this.setOnRender(),this.bindEvents()}update(e){this.unbindEvents(),super.update(e),`delay`in e&&this.setOnRender(),this.bindEvents()}setOnRender(){this.onRender=sa(()=>{this.renderMinimap(),this.renderMask()},this.options.delay)}bindEvents(){let{graph:e}=this.context;e.on(Z.AFTER_DRAW,this.onDraw),e.on(Z.AFTER_RENDER,this.onRender),e.on(Z.AFTER_ANIMATE,this.onRender),e.on(Z.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){let{graph:e}=this.context;e.off(Z.AFTER_DRAW,this.onDraw),e.off(Z.AFTER_RENDER,this.onRender),e.off(Z.AFTER_ANIMATE,this.onRender),e.off(Z.AFTER_TRANSFORM,this.onTransform)}renderMinimap(){let e=this.getElements(),t=this.initCanvas();this.setShapes(t,e)}getElements(){let{filter:e}=this.options,{model:t,element:n}=this.context,r=t.getData(),i={nodes:r.nodes.filter(e=>n?.getElement(Q(e))),edges:r.edges.filter(e=>{let t=n?.getElement(Q(e));return t&&YC(t)}),combos:r.combos.filter(e=>n?.getElement(Q(e)))};if(!e)return i;let{nodes:a,edges:o,combos:s}=i;return{nodes:a.filter(t=>e(Q(t),`node`)),edges:o.filter(t=>e(Q(t),`edge`)),combos:s.filter(t=>e(Q(t),`combo`))}}setShapes(e,t){let{nodes:n,edges:r,combos:i}=t,{shape:a}=this.options,{element:o}=this.context,s=(t,n)=>{let r=Q(t),i=o?.getElement(r);if(!i)return;let s=i.getShape(`key`),c;if(typeof a==`string`){let e=a;c=i.getShape(e).cloneNode()}else{let e=a(r,n,i);c=e===i?e.cloneNode(!0):e}c.setPosition(s.getPosition()),i.style.zIndex&&(c.style.zIndex=i.style.zIndex),c.id=i.id,e.appendChild(c)};e.removeChildren(),r.forEach(e=>s(e,`edge`)),i.forEach(e=>s(e,`combo`)),n.forEach(e=>s(e,`node`))}initCanvas(){let{renderer:e,size:[t,n]}=this.options;if(this.canvas){let{width:r,height:i}=this.canvas.getConfig();(t!==r||n!==i)&&this.canvas.resize(t,n),e&&this.canvas.setRenderer(e)}else{let{className:r,position:i,container:a,containerStyle:o}=this.options,[s,c]=e8({renderer:e,width:t,height:n,placement:i,className:`minimap`,container:a,containerStyle:o,graphCanvas:this.context.canvas});r&&s.classList.add(r),this.container=s,this.canvas=c}return this.setCamera(),this.canvas}createLandmark(e,t,n){let r=`${e.join(`,`)}-${t.join(`,`)}-${n}`;if(this.landmarkMap.has(r))return this.landmarkMap.get(r);let i=this.canvas.getCamera().createLandmark(r,{position:e,focalPoint:t,zoom:n});return this.landmarkMap.set(r,i),i}setCamera(){let{canvas:e}=this.context,t=this.canvas?.getCamera();if(!t)return;let{size:[n,r],padding:i}=this.options,[a,o,s,c]=M_(i),{min:l,max:u,center:d}=e.getBounds(`elements`),f=u[0]-l[0],p=u[1]-l[1],m=n-c-o,h=r-a-s,g=m/f,_=h/p,v=Math.min(g,_),y=this.createLandmark(d,d,v);t.gotoLandmark(y,0)}get maskBBox(){let{canvas:e}=this.context,t=e.getSize(),n=e.getCanvasByViewport([0,0]),r=e.getCanvasByViewport(t),i=this.canvas.canvas2Viewport(yy(n)),a=this.canvas.canvas2Viewport(yy(r)),o=a.x-i.x,s=a.y-i.y;return[i.x,i.y,o,s]}calculateMaskBBox(){let{size:[e,t]}=this.options,[n,r,i,a]=this.maskBBox;return n<0&&(i=o8(i+n,e),n=0),r<0&&(a=o8(a+r,t),r=0),n+i>e&&(i=s8(e-n,0)),r+a>t&&(a=s8(t-r,0)),[o8(n,e),o8(r,t),s8(i,0),s8(a,0)]}renderMask(){let{maskStyle:e}=this.options;this.mask||(this.mask=document.createElement(`div`),this.mask.addEventListener(`pointerdown`,this.onMaskDragStart),this.mask.draggable=!0,this.mask.addEventListener(`dragstart`,e=>e.preventDefault&&e.preventDefault())),this.container.appendChild(this.mask),Object.assign(this.mask.style,Object.assign(Object.assign({},e),{cursor:`move`,position:`absolute`,pointerEvents:`auto`})),this.updateMask()}updateMask(){if(!this.mask)return;let[e,t,n,r]=this.calculateMaskBBox();Object.assign(this.mask.style,{top:t+`px`,left:e+`px`,width:n+`px`,height:r+`px`})}destroy(){var e,t,n;this.unbindEvents(),(e=this.canvas)==null||e.destroy(),(t=this.mask)==null||t.remove(),(n=this.container)==null||n.remove(),super.destroy()}};a8.defaultOptions={size:[240,160],shape:`key`,padding:10,position:`right-bottom`,maskStyle:{border:`1px solid #ddd`,background:`rgba(0, 0, 0, 0.1)`},containerStyle:{border:`1px solid #ddd`,background:`#fff`},delay:128};var o8=(e,t)=>Math.min(e,t),s8=(e,t)=>Math.max(e,t),c8=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},l8={x1:0,y1:0,x2:0,y2:0,visibility:`hidden`},u8=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.initSnapline=()=>{let e=this.context.canvas.getLayer(`transient`);this.horizontalLine||=e.appendChild(new um({style:Object.assign(Object.assign({},l8),this.options.horizontalLineStyle)})),this.verticalLine||=e.appendChild(new um({style:Object.assign(Object.assign({},l8),this.options.verticalLineStyle)}))},this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!0,this.autoSnapToLine=(e,t,n)=>c8(this,void 0,void 0,function*(){let{verticalX:r,horizontalY:i}=n,{tolerance:a}=this.options,{min:[o,s],max:[c,l],center:[u,d]}=t,f=0,p=0;r!==null&&(d8(c,r)<a&&(f=r-c),d8(o,r)<a&&(f=r-o),d8(u,r)<a&&(f=r-u),f!==0&&(this.isVerticalSticking=!0)),i!==null&&(d8(l,i)<a&&(p=i-l),d8(s,i)<a&&(p=i-s),d8(d,i)<a&&(p=i-d),p!==0&&(this.isHorizontalSticking=!0)),(f!==0||p!==0)&&(yield this.context.graph.translateElementBy({[e]:[f,p]},!1))}),this.enableSnap=e=>{let{target:t}=e,n=.5;if(this.isHorizontalSticking||this.isVerticalSticking){let[r,i]=this.getDelta(e);if(this.isHorizontalSticking&&this.isVerticalSticking&&Math.abs(r)<=n&&Math.abs(i)<=n)return this.context.graph.translateElementBy({[t.id]:[-r,-i]},!1),!1;if(this.isHorizontalSticking&&Math.abs(i)<=n)return this.context.graph.translateElementBy({[t.id]:[0,-i]},!1),!1;if(this.isVerticalSticking&&Math.abs(r)<=n)return this.context.graph.translateElementBy({[t.id]:[-r,0]},!1),!1;this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!1,setTimeout(()=>{this.enableStick=!0},200)}return this.enableStick},this.calcSnaplineMetadata=(e,t)=>{let{tolerance:n,shape:r}=this.options,{min:[i,a],max:[o,s],center:[c,l]}=t,u=null,d=null,f=null,p=null,m=null,h=null;return this.getNodes().some(t=>{if(_a(e.id,t.id))return!1;let{min:[g,_],max:[v,y],center:[b,x]}=f8(t,r).getRenderBounds();return u===null&&(d8(b,c)<n?u=b:d8(g,i)<n||d8(g,o)<n?u=g:(d8(v,o)<n||d8(v,i)<n)&&(u=v),u!==null&&(d=Math.min(_,a),f=Math.max(y,s))),p===null&&(d8(x,l)<n?p=x:d8(_,a)<n||d8(_,s)<n?p=_:(d8(y,s)<n||d8(y,a)<n)&&(p=y),p!==null&&(m=Math.min(g,i),h=Math.max(v,o))),u!==null&&p!==null}),{verticalX:u,verticalMinY:d,verticalMaxY:f,horizontalY:p,horizontalMinX:m,horizontalMaxX:h}},this.onDragStart=()=>{this.initSnapline()},this.onDrag=e=>c8(this,void 0,void 0,function*(){let{target:t}=e;if(this.options.autoSnap&&!this.enableSnap(e))return;let n=f8(t,this.options.shape).getRenderBounds(),r=this.calcSnaplineMetadata(t,n);this.hideSnapline(),(r.verticalX!==null||r.horizontalY!==null)&&this.updateSnapline(r),this.options.autoSnap&&(yield this.autoSnapToLine(t.id,n,r))}),this.onDragEnd=()=>{this.hideSnapline()},this.bindEvents()}getNodes(){let{filter:e}=this.options,t=(this.context.element?.getNodes()||[]).filter(e=>YC(e)&&this.context.viewport?.isInViewport(e.getRenderBounds()));return e?t.filter(t=>e(t)):t}hideSnapline(){this.horizontalLine.style.visibility=`hidden`,this.verticalLine.style.visibility=`hidden`}getLineWidth(e){let{lineWidth:t}=this.options[`${e}LineStyle`];return+(t||l8.lineWidth||1)/this.context.graph.getZoom()}updateSnapline(e){let{verticalX:t,verticalMinY:n,verticalMaxY:r,horizontalY:i,horizontalMinX:a,horizontalMaxX:o}=e,[s,c]=this.context.canvas.getSize(),{offset:l}=this.options;i===null?this.horizontalLine.style.visibility=`hidden`:Object.assign(this.horizontalLine.style,{x1:l===1/0?0:a-l,y1:i,x2:l===1/0?s:o+l,y2:i,visibility:`visible`,lineWidth:this.getLineWidth(`horizontal`)}),t===null?this.verticalLine.style.visibility=`hidden`:Object.assign(this.verticalLine.style,{x1:t,y1:l===1/0?0:n-l,x2:t,y2:l===1/0?c:r+l,visibility:`visible`,lineWidth:this.getLineWidth(`vertical`)})}getDelta(e){let t=this.context.graph.getZoom();return Zv([e.dx,e.dy],t)}bindEvents(){return c8(this,void 0,void 0,function*(){let{graph:e}=this.context;e.on($g.DRAG_START,this.onDragStart),e.on($g.DRAG,this.onDrag),e.on($g.DRAG_END,this.onDragEnd)})}unbindEvents(){let{graph:e}=this.context;e.off($g.DRAG_START,this.onDragStart),e.off($g.DRAG,this.onDrag),e.off($g.DRAG_END,this.onDragEnd)}destroyElements(){var e,t;(e=this.horizontalLine)==null||e.destroy(),(t=this.verticalLine)==null||t.destroy()}destroy(){this.destroyElements(),this.unbindEvents(),super.destroy()}};u8.defaultOptions={tolerance:5,offset:20,autoSnap:!0,shape:`key`,verticalLineStyle:{stroke:`#1783FF`},horizontalLineStyle:{stroke:`#1783FF`},filter:()=>!0};var d8=(e,t)=>Math.abs(e-t),f8=(e,t)=>typeof t==`function`?t(e):e.getShape(t),p8=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},m8=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},h8=[`timestamp`,`time`,`date`,`datetime`],g8=class e extends tZ{get padding(){return M_(this.options.padding)}constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.backup(),this.upsertTimebar()}play(){var e;(e=this.timebar)==null||e.play()}pause(){var e;(e=this.timebar)==null||e.pause()}forward(){var e;(e=this.timebar)==null||e.forward()}backward(){var e;(e=this.timebar)==null||e.backward()}reset(){var e;(e=this.timebar)==null||e.reset()}update(e){super.update(e),this.backup(),this.upsertTimebar()}backup(){this.originalData=_8(this.context.graph.getData())}upsertTimebar(){let{canvas:e}=this.context,t=this.options,{onChange:n,timebarType:r,data:i,x:a,y:o,width:s,height:c,mode:l}=t,u=m8(t,[`onChange`,`timebarType`,`data`,`x`,`y`,`width`,`height`,`mode`]),d=e.getSize(),[f]=this.padding;this.upsertCanvas().ready.then(()=>{var e;let t=Object.assign(Object.assign({x:d[0]/2-s/2,y:f,onChange:e=>{let t=(Ci(e)?e:[e,e]).map(e=>Qi(e)?e.getTime():e);this.options.mode===`modify`?this.filterElements(t):this.hiddenElements(t),n?.(t)}},u),{data:i.map(e=>zi(e)?{time:e,value:0}:e),width:s,height:c,type:r});this.timebar?this.timebar.update(t):(this.timebar=new $6({style:t}),(e=this.canvas)==null||e.appendChild(this.timebar))})}upsertCanvas(){if(this.canvas)return this.canvas;let{className:e,height:t,position:n}=this.options,r=this.context.canvas,[i]=r.getSize(),[a,,o]=this.padding,[s,c]=e8({width:i,height:t+a+o,graphCanvas:r,className:`timebar`,placement:n});return this.container=s,e&&s.classList.add(e),this.canvas=c,this.canvas}filterElements(e){return p8(this,void 0,void 0,function*(){if(!this.originalData)return;let{elementTypes:t,getTime:n}=this.options,{graph:r,element:i}=this.context,a=_8(this.originalData);t.forEach(t=>{let r=`${t}s`;a[r]=(this.originalData[r]||[]).filter(t=>!!v8(n(t),e))});let o=[...a.nodes,...a.combos].map(e=>Q(e));a.edges=a.edges.filter(e=>{let t=e.source,n=e.target;return o.includes(t)&&o.includes(n)}),r.setData(a),yield i.draw({animation:!1,silence:!0})?.finished})}hiddenElements(e){let{graph:t}=this.context,{elementTypes:n,getTime:r}=this.options,i=[],a=[];n.forEach(t=>{let n=`${t}s`;(this.originalData?.[n]||[]).forEach(t=>{let n=Q(t);v8(r(t),e)?a.push(n):i.push(n)})}),t.hideElement(i,!1),t.showElement(a,!1)}destroy(){var e,t,n;let{graph:r}=this.context;this.originalData&&r.setData(Object.assign({},this.originalData)),(e=this.timebar)==null||e.destroy(),(t=this.canvas)==null||t.destroy(),(n=this.container)==null||n.remove(),this.originalData=void 0,this.container=void 0,this.timebar=void 0,this.canvas=void 0,super.destroy()}};g8.defaultOptions={position:`bottom`,enable:!0,timebarType:`time`,className:`g6-timebar`,width:450,height:60,zIndex:3,elementTypes:[`node`],padding:10,mode:`modify`,getTime:e=>y8(e,h8,void 0),loop:!1};var _8=e=>{let{nodes:t=[],edges:n=[],combos:r=[]}=e;return{nodes:[...t],edges:[...n],combos:[...r]}},v8=(e,t)=>{if(zi(t))return e===t;let[n,r]=t;return e>=n&&e<=r},y8=(e,t,n)=>{for(let n=0;n<t.length;n++){let r=t[n],i=e.data?.[r];if(i)return i}return n},b8=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},x8={fill:`#1D2129`,wordWrap:!0,maxLines:1,textOverflow:`ellipsis`,textBaseline:`top`,textAlign:`start`,x:0},S8=Object.assign(Object.assign({},x8),{fillOpacity:.9,fontSize:16,fontWeight:`bold`}),C8=Object.assign(Object.assign({},x8),{fillOpacity:.65,fontSize:12,fontWeight:`normal`}),w8={align:`left`,spacing:8,size:44,padding:[16,24,0,24]},T8=`title`,E8=`subtitle`,D8=class extends tZ{get padding(){return M_(this.options.padding)}constructor(e,t){let n=Object.assign({},w8,t);super(e,n),this.onRender=()=>{let e=this.updateCanvas();this.renderTitle(e)},this.bindEvents()}bindEvents(){let{graph:e}=this.context;e.on(Z.AFTER_RENDER,this.onRender),e.on(Z.AFTER_ANIMATE,this.onRender)}unbindEvents(){let{graph:e}=this.context;e.off(Z.AFTER_RENDER,this.onRender),e.off(Z.AFTER_ANIMATE,this.onRender)}destroy(){var e,t;this.unbindEvents(),(e=this.canvas)==null||e.destroy(),(t=this.container)==null||t.remove(),super.destroy()}updateCanvas(){let{size:e,className:t,align:n}=this.options,[r]=this.context.canvas.getSize(),[i=0,,a=0]=this.padding,o=e+i+a;if(this.canvas){let{width:e,height:t}=this.canvas.getConfig();(r!==e||o!==t)&&this.canvas.resize(r,o)}else{let e={left:`left-top`,center:`top`,right:`right-top`},[i,a]=e8({width:r,height:o,placement:e[n]||e.left,className:`title-canvas`,graphCanvas:this.context.canvas});t&&i.classList.add(t),this.container=i,this.canvas=a}return this.canvas}renderTitle(e){let t=new O8({options:this.options,ctx:this.context});e.removeChildren(),t.getTitle().forEach(t=>{t&&e.appendChild(t)})}},O8=class{get padding(){return M_(this.options.padding)}constructor(e){let{options:t,ctx:n}=e;this.options=t,this.context=n}getTitle(){let e=this.options,t=T8,n=e[t],r=E8,i=e[r],{spacing:a=44,padding:o,align:s}=e,c=b8(e,[typeof t==`symbol`?t:t+``,typeof r==`symbol`?r:r+``,`spacing`,`padding`,`align`]),l=n,u=i,d=ib(c,T8),f=ib(c,E8),[p]=this.context.graph.getSize(),[m=0,h=0,,g=0]=this.padding,_=p,v=_-g-h,y=null,b=g,x=`left`;switch(s){case`left`:b=g,x=`left`;break;case`center`:b=_/2,x=`center`;break;case`right`:b=_-h,x=`right`;break;default:b=g,x=`left`}let S=new Cb({className:T8,style:Object.assign(Object.assign(Object.assign(Object.assign({},S8),{wordWrapWidth:v-5,x:b,y:m,textAlign:x}),d),{text:l})}),C=S.getBBox();return u&&(y=new Cb({className:`subTitle`,style:Object.assign(Object.assign(Object.assign(Object.assign({},C8),{wordWrapWidth:v-5,x:b,y:C.height+a+m,textAlign:x}),f),{text:u})})),[S,y]}};function k8(e){let t={top:`unset`,right:`unset`,bottom:`unset`,left:`unset`};return e.split(`-`).forEach(e=>{t[e]=`8px`}),t.flexDirection=e.startsWith(`top`)||e.startsWith(`bottom`)?`row`:`column`,t}var A8=`
|
|
84
|
+
.g6-toolbar {
|
|
85
|
+
position: absolute;
|
|
86
|
+
z-index: 100;
|
|
87
|
+
display: flex;
|
|
88
|
+
flex-direction: row;
|
|
89
|
+
align-items: center;
|
|
90
|
+
justify-content: center;
|
|
91
|
+
border-radius: 4px;
|
|
92
|
+
box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1);
|
|
93
|
+
opacity: 0.65;
|
|
94
|
+
}
|
|
95
|
+
.g6-toolbar .g6-toolbar-item {
|
|
96
|
+
display: inline-block;
|
|
97
|
+
width: 16px;
|
|
98
|
+
height: 16px;
|
|
99
|
+
padding: 4px;
|
|
100
|
+
cursor: pointer;
|
|
101
|
+
box-sizing: content-box;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
.g6-toolbar .g6-toolbar-item:hover {
|
|
105
|
+
background-color: #f0f0f0;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
.g6-toolbar .g6-toolbar-item svg {
|
|
109
|
+
display: inline-block;
|
|
110
|
+
width: 100%;
|
|
111
|
+
height: 100%;
|
|
112
|
+
pointer-events: none;
|
|
113
|
+
}
|
|
114
|
+
`,j8=`
|
|
115
|
+
<svg>
|
|
116
|
+
<symbol id="zoom-in" viewBox="64 64 896 896">
|
|
117
|
+
<path d="M637 443H519V309c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v134H325c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h118v134c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V519h118c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zm284 424L775 721c122.1-148.9 113.6-369.5-26-509-148-148.1-388.4-148.1-537 0-148.1 148.6-148.1 389 0 537 139.5 139.6 360.1 148.1 509 26l146 146c3.2 2.8 8.3 2.8 11 0l43-43c2.8-2.7 2.8-7.8 0-11zM696 696c-118.8 118.7-311.2 118.7-430 0-118.7-118.8-118.7-311.2 0-430 118.8-118.7 311.2-118.7 430 0 118.7 118.8 118.7 311.2 0 430z"></path>
|
|
118
|
+
</symbol>
|
|
119
|
+
<symbol id="zoom-out" viewBox="64 64 896 896">
|
|
120
|
+
<path d="M637 443H325c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h312c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zm284 424L775 721c122.1-148.9 113.6-369.5-26-509-148-148.1-388.4-148.1-537 0-148.1 148.6-148.1 389 0 537 139.5 139.6 360.1 148.1 509 26l146 146c3.2 2.8 8.3 2.8 11 0l43-43c2.8-2.7 2.8-7.8 0-11zM696 696c-118.8 118.7-311.2 118.7-430 0-118.7-118.8-118.7-311.2 0-430 118.8-118.7 311.2-118.7 430 0 118.7 118.8 118.7 311.2 0 430z"></path>
|
|
121
|
+
</symbol>
|
|
122
|
+
<symbol id="edit" viewBox="64 64 896 896">
|
|
123
|
+
<path d="M257.7 752c2 0 4-.2 6-.5L431.9 722c2-.4 3.9-1.3 5.3-2.8l423.9-423.9a9.96 9.96 0 000-14.1L694.9 114.9c-1.9-1.9-4.4-2.9-7.1-2.9s-5.2 1-7.1 2.9L256.8 538.8c-1.5 1.5-2.4 3.3-2.8 5.3l-29.5 168.2a33.5 33.5 0 009.4 29.8c6.6 6.4 14.9 9.9 23.8 9.9zm67.4-174.4L687.8 215l73.3 73.3-362.7 362.6-88.9 15.7 15.6-89zM880 836H144c-17.7 0-32 14.3-32 32v36c0 4.4 3.6 8 8 8h784c4.4 0 8-3.6 8-8v-36c0-17.7-14.3-32-32-32z"></path>
|
|
124
|
+
</symbol>
|
|
125
|
+
<symbol id="delete" viewBox="64 64 896 896">
|
|
126
|
+
<path d="M360 184h-8c4.4 0 8-3.6 8-8v8h304v-8c0 4.4 3.6 8 8 8h-8v72h72v-80c0-35.3-28.7-64-64-64H352c-35.3 0-64 28.7-64 64v80h72v-72zm504 72H160c-17.7 0-32 14.3-32 32v32c0 4.4 3.6 8 8 8h60.4l24.7 523c1.6 34.1 29.8 61 63.9 61h454c34.2 0 62.3-26.8 63.9-61l24.7-523H888c4.4 0 8-3.6 8-8v-32c0-17.7-14.3-32-32-32zM731.3 840H292.7l-24.2-512h487l-24.2 512z"></path>
|
|
127
|
+
</symbol>
|
|
128
|
+
<symbol id="redo" viewBox="64 64 896 896">
|
|
129
|
+
<path d="M758.2 839.1C851.8 765.9 912 651.9 912 523.9 912 303 733.5 124.3 512.6 124 291.4 123.7 112 302.8 112 523.9c0 125.2 57.5 236.9 147.6 310.2 3.5 2.8 8.6 2.2 11.4-1.3l39.4-50.5c2.7-3.4 2.1-8.3-1.2-11.1-8.1-6.6-15.9-13.7-23.4-21.2a318.64 318.64 0 01-68.6-101.7C200.4 609 192 567.1 192 523.9s8.4-85.1 25.1-124.5c16.1-38.1 39.2-72.3 68.6-101.7 29.4-29.4 63.6-52.5 101.7-68.6C426.9 212.4 468.8 204 512 204s85.1 8.4 124.5 25.1c38.1 16.1 72.3 39.2 101.7 68.6 29.4 29.4 52.5 63.6 68.6 101.7 16.7 39.4 25.1 81.3 25.1 124.5s-8.4 85.1-25.1 124.5a318.64 318.64 0 01-68.6 101.7c-9.3 9.3-19.1 18-29.3 26L668.2 724a8 8 0 00-14.1 3l-39.6 162.2c-1.2 5 2.6 9.9 7.7 9.9l167 .8c6.7 0 10.5-7.7 6.3-12.9l-37.3-47.9z"></path>
|
|
130
|
+
</symbol>
|
|
131
|
+
<symbol id="undo" viewBox="64 64 896 896">
|
|
132
|
+
<path d="M511.4 124C290.5 124.3 112 303 112 523.9c0 128 60.2 242 153.8 315.2l-37.5 48c-4.1 5.3-.3 13 6.3 12.9l167-.8c5.2 0 9-4.9 7.7-9.9L369.8 727a8 8 0 00-14.1-3L315 776.1c-10.2-8-20-16.7-29.3-26a318.64 318.64 0 01-68.6-101.7C200.4 609 192 567.1 192 523.9s8.4-85.1 25.1-124.5c16.1-38.1 39.2-72.3 68.6-101.7 29.4-29.4 63.6-52.5 101.7-68.6C426.9 212.4 468.8 204 512 204s85.1 8.4 124.5 25.1c38.1 16.1 72.3 39.2 101.7 68.6 29.4 29.4 52.5 63.6 68.6 101.7 16.7 39.4 25.1 81.3 25.1 124.5s-8.4 85.1-25.1 124.5a318.64 318.64 0 01-68.6 101.7c-7.5 7.5-15.3 14.5-23.4 21.2a7.93 7.93 0 00-1.2 11.1l39.4 50.5c2.8 3.5 7.9 4.1 11.4 1.3C854.5 760.8 912 649.1 912 523.9c0-221.1-179.4-400.2-400.6-399.9z"></path>
|
|
133
|
+
</symbol>
|
|
134
|
+
<symbol id="export" viewBox="64 64 896 896">
|
|
135
|
+
<path d="M880 912H144c-17.7 0-32-14.3-32-32V144c0-17.7 14.3-32 32-32h360c4.4 0 8 3.6 8 8v56c0 4.4-3.6 8-8 8H184v656h656V520c0-4.4 3.6-8 8-8h56c4.4 0 8 3.6 8 8v360c0 17.7-14.3 32-32 32zM770.87 199.13l-52.2-52.2a8.01 8.01 0 014.7-13.6l179.4-21c5.1-.6 9.5 3.7 8.9 8.9l-21 179.4c-.8 6.6-8.9 9.4-13.6 4.7l-52.4-52.4-256.2 256.2a8.03 8.03 0 01-11.3 0l-42.4-42.4a8.03 8.03 0 010-11.3l256.1-256.3z"></path>
|
|
136
|
+
</symbol>
|
|
137
|
+
<symbol id="auto-fit" viewBox="64 64 896 896">
|
|
138
|
+
<path d="M952 474H829.8C812.5 327.6 696.4 211.5 550 194.2V72c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v122.2C327.6 211.5 211.5 327.6 194.2 474H72c-4.4 0-8 3.6-8 8v60c0 4.4 3.6 8 8 8h122.2C211.5 696.4 327.6 812.5 474 829.8V952c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V829.8C696.4 812.5 812.5 696.4 829.8 550H952c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8zM512 756c-134.8 0-244-109.2-244-244s109.2-244 244-244 244 109.2 244 244-109.2 244-244 244z"></path>
|
|
139
|
+
<path d="M512 392c-32.1 0-62.1 12.4-84.8 35.2-22.7 22.7-35.2 52.7-35.2 84.8s12.5 62.1 35.2 84.8C449.9 619.4 480 632 512 632s62.1-12.5 84.8-35.2C619.4 574.1 632 544 632 512s-12.5-62.1-35.2-84.8A118.57 118.57 0 00512 392z"></path>
|
|
140
|
+
</symbol>
|
|
141
|
+
<symbol id="reset" viewBox="64 64 896 896">
|
|
142
|
+
<path d="M909.1 209.3l-56.4 44.1C775.8 155.1 656.2 92 521.9 92 290 92 102.3 279.5 102 511.5 101.7 743.7 289.8 932 521.9 932c181.3 0 335.8-115 394.6-276.1 1.5-4.2-.7-8.9-4.9-10.3l-56.7-19.5a8 8 0 00-10.1 4.8c-1.8 5-3.8 10-5.9 14.9-17.3 41-42.1 77.8-73.7 109.4A344.77 344.77 0 01655.9 829c-42.3 17.9-87.4 27-133.8 27-46.5 0-91.5-9.1-133.8-27A341.5 341.5 0 01279 755.2a342.16 342.16 0 01-73.7-109.4c-17.9-42.4-27-87.4-27-133.9s9.1-91.5 27-133.9c17.3-41 42.1-77.8 73.7-109.4 31.6-31.6 68.4-56.4 109.3-73.8 42.3-17.9 87.4-27 133.8-27 46.5 0 91.5 9.1 133.8 27a341.5 341.5 0 01109.3 73.8c9.9 9.9 19.2 20.4 27.8 31.4l-60.2 47a8 8 0 003 14.1l175.6 43c5 1.2 9.9-2.6 9.9-7.7l.8-180.9c-.1-6.6-7.8-10.3-13-6.2z"></path>
|
|
143
|
+
</symbol>
|
|
144
|
+
<symbol id="exit-fullscreen" viewBox="0 0 1024 1024">
|
|
145
|
+
<path d="M418.13333333 361.43786666c0 0.2048-0.13653333 0.4096-0.13653334 0.68266667C417.99679999 362.32533333 418.13333333 362.53013333 418.13333333 362.73493333 418.13333333 371.54133333 414.44693333 379.392 408.78079999 385.39946666 408.43946666 385.7408 408.30293333 386.21866666 408.02986666 386.49173333c-1.09226667 1.09226667-2.59413333 1.77493333-3.82293333 2.73066667C398.40426666 393.65973333 391.64586666 396.8 383.93173333 396.8 383.72693333 396.8 383.59039999 396.73173333 383.38559999 396.73173333S382.97599999 396.8 382.77119999 396.8L112.29866666 396.8C92.50133333 396.8 76.79999999 381.50826666 76.79999999 362.66666666 76.66346666 343.89333333 92.63786666 328.53333333 112.16213333 328.53333333l189.44 0L87.44959999 114.51733333C73.59146666 100.59093333 73.25013333 78.5408 86.63039999 65.29706666c13.17546667-13.44853333 35.36213333-12.97066667 49.152 0.88746667l214.08426667 214.08426667L349.86666666 90.89706666C349.79839999 71.23626666 365.22666666 55.46666666 383.99999999 55.46666666 402.77333333 55.33013333 418.13333333 71.30453333 418.13333333 90.8288L418.13333333 361.43786666zM928.90453333 328.53333333l-189.44 0 214.15253333-214.08426667c13.85813333-13.9264 14.19946667-35.90826667 0.88746667-49.22026666-13.17546667-13.44853333-35.36213333-12.97066667-49.152 0.88746666l-214.08426667 214.08426667L691.26826666 90.89706666C691.26826666 71.23626666 675.83999999 55.46666666 657.06666666 55.46666666 638.29333333 55.33013333 622.93333333 71.30453333 622.93333333 90.8288l0 270.60906666c0 0.2048 0.13653333 0.4096 0.13653333 0.68266667C623.06986666 362.32533333 622.93333333 362.53013333 622.93333333 362.73493333 622.93333333 371.54133333 626.61973333 379.392 632.28586666 385.39946666c0.34133333 0.34133333 0.47786667 0.8192 0.8192 1.09226667 1.09226667 1.09226667 2.59413333 1.77493333 3.8912 2.73066667C642.66239999 393.65973333 649.42079999 396.8 657.13493333 396.8c0.2048 0 0.34133333-0.06826667 0.54613333-0.06826667S658.09066666 396.8 658.29546666 396.8l270.5408 0C948.56533333 396.8 964.26666666 381.50826666 964.26666666 362.66666666 964.40319999 343.89333333 948.42879999 328.53333333 928.90453333 328.53333333zM418.13333333 635.73333333c0-8.8064-3.6864-16.5888-9.35253334-22.66453333C408.43946666 612.72746666 408.30293333 612.2496 408.02986666 611.90826666 406.86933333 610.88426666 405.43573333 610.2016 404.20693333 609.24586666 398.47253333 604.80853333 391.64586666 601.6 383.93173333 601.6 383.72693333 601.6 383.59039999 601.73653333 383.38559999 601.73653333S382.97599999 601.6 382.77119999 601.6L112.29866666 601.6C92.50133333 601.6 76.79999999 616.96 76.79999999 635.73333333 76.66346666 654.50666666 92.63786666 669.86666666 112.16213333 669.86666666l189.44 0-214.15253334 214.15253334c-13.85813333 13.85813333-14.19946667 35.84-0.88746666 49.22026666 13.17546667 13.44853333 35.36213333 12.9024 49.152-0.95573333l214.08426666-214.08426667 0 189.37173334c0 19.59253333 15.42826667 35.49866667 34.2016 35.36213333C402.77333333 943.2064 418.13333333 927.232 418.13333333 907.5712L418.13333333 637.09866666c0-0.27306667-0.13653333-0.47786667-0.13653334-0.68266666C417.99679999 636.14293333 418.13333333 635.93813333 418.13333333 635.73333333zM739.46453333 669.86666666l189.44 0c19.456 0 35.49866667-15.36 35.36213333-34.13333333C964.26666666 616.96 948.56533333 601.6 928.76799999 601.6L658.29546666 601.6C658.09066666 601.6 657.88586666 601.73653333 657.68106666 601.73653333S657.33973333 601.6 657.13493333 601.6C649.42079999 601.6 642.59413333 604.80853333 636.85973333 609.24586666 635.63093333 610.2016 634.19733333 610.88426666 633.03679999 611.90826666 632.76373333 612.2496 632.62719999 612.72746666 632.28586666 613.0688 626.61973333 619.14453333 622.93333333 626.92693333 622.93333333 635.73333333c0 0.2048 0.13653333 0.4096 0.13653333 0.68266667C623.06986666 636.6208 622.93333333 636.8256 622.93333333 637.09866666l0 270.5408C622.93333333 927.232 638.29333333 943.2064 657.06666666 942.93333333c18.77333333 0.13653333 34.2016-15.70133333 34.2016-35.36213333l0-189.37173334 214.08426667 214.08426667c13.78986667 13.85813333 35.90826667 14.40426667 49.152 0.95573333 13.312-13.312 12.97066667-35.36213333-0.88746667-49.22026666L739.46453333 669.86666666z" ></path></symbol>
|
|
146
|
+
<symbol id="request-fullscreen" viewBox="0 0 1024 1024">
|
|
147
|
+
<path d="M69.818182 87.598545v273.128728a34.909091 34.909091 0 0 0 69.818182 0V163.653818l221.928727 222.021818a33.512727 33.512727 0 0 0 47.383273-47.383272L186.926545 116.363636h197.073455a34.909091 34.909091 0 0 0 0-69.818181H110.871273C85.364364 46.545455 69.818182 59.671273 69.818182 87.598545zM938.542545 46.545455H665.413818a34.909091 34.909091 0 0 0 0 69.818181h197.073455L640.465455 338.292364a33.512727 33.512727 0 0 0 47.383272 47.383272l221.928728-222.021818v197.073455a34.909091 34.909091 0 0 0 69.818181 0V87.598545c0-27.927273-15.453091-41.053091-40.96-41.05309z m-827.671272 907.636363h273.128727a34.909091 34.909091 0 0 0 0-69.818182H186.926545l222.021819-221.928727a33.512727 33.512727 0 0 0-47.383273-47.383273L139.636364 837.073455V640a34.909091 34.909091 0 0 0-69.818182 0v273.128727c0 27.927273 15.546182 41.053091 41.053091 41.053091z m868.724363-41.053091V640a34.909091 34.909091 0 0 0-69.818181 0v197.073455L687.941818 615.051636a33.512727 33.512727 0 0 0-47.383273 47.383273L862.487273 884.363636H665.413818a34.909091 34.909091 0 0 0 0 69.818182h273.128727c25.6 0 41.053091-13.125818 41.053091-41.053091z" ></path></symbol>
|
|
148
|
+
</svg>
|
|
149
|
+
`,M8=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},N8=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.$element=nZ(`toolbar`,!1),this.onToolbarItemClick=e=>{let{onClick:t}=this.options;if(e.target instanceof Element&&e.target.className.includes(`g6-toolbar-item`)){let n=e.target.getAttribute(`value`);t?.(n,e.target)}};let r=this.context.canvas.getContainer();this.$element.style.display=`flex`,r.appendChild(this.$element),rZ(`g6-toolbar-css`,`style`,{},A8,document.head),rZ(`g6-toolbar-svgicon`,`div`,{display:`none`},j8),this.$element.addEventListener(`click`,this.onToolbarItemClick),this.update(n)}update(e){let t=Object.create(null,{update:{get:()=>super.update}});return M8(this,void 0,void 0,function*(){t.update.call(this,e);let{className:n,position:r,style:i}=this.options;this.$element.className=`g6-toolbar ${n||``}`,Object.assign(this.$element.style,i,k8(r)),this.$element.innerHTML=yield this.getDOMContent()})}destroy(){this.$element.removeEventListener(`click`,this.onToolbarItemClick),this.$element.remove(),super.destroy()}getDOMContent(){return M8(this,void 0,void 0,function*(){return(yield this.options.getItems()).map(e=>`
|
|
150
|
+
<div class="g6-toolbar-item" value="${e.value}" title="${e.title??``}">
|
|
151
|
+
<svg aria-hidden="true" focusable="false">
|
|
152
|
+
<use xlink:href="#${e.id}"></use>
|
|
153
|
+
</svg>
|
|
154
|
+
</div>`).join(``)})}};N8.defaultOptions={position:`top-left`};var P8=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},F8=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.currentTarget=null,this.tooltipElement=null,this.container=null,this.isEnable=(e,t)=>{let{enable:n}=this.options;return typeof n==`function`?n(e,t):n},this.onClick=e=>{let{target:{id:t}}=e;this.currentTarget===t?this.hide(e):this.show(e)},this.onPointerMove=e=>{let{target:t}=e;!this.currentTarget||t.id===this.currentTarget||this.show(e)},this.onPointerLeave=e=>{this.hide(e)},this.onCanvasMove=e=>{this.hide(e)},this.onPointerOver=e=>{this.show(e)},this.showById=e=>P8(this,void 0,void 0,function*(){let t={target:{id:e}};yield this.show(t)}),this.getElementData=(e,t)=>{let{model:n}=this.context;switch(t){case`node`:return n.getNodeData([e]);case`edge`:return n.getEdgeData([e]);case`combo`:return n.getComboData([e]);default:return[]}},this.show=e=>P8(this,void 0,void 0,function*(){var t,n;let{client:r,target:{id:i}}=e;if(ew(e.target))return;let a=this.context.graph.getElementType(i),{getContent:o,title:s}=this.options,c=this.getElementData(i,a);if(!this.tooltipElement)return;if(!this.isEnable(e,c)){this.hide(e);return}let l={};if(o){if(l.content=yield o(e,c),!l.content)return}else{let e=this.context.graph.getElementRenderStyle(i),t=a===`node`?e.fill:e.stroke;l={title:s||a,data:c.map(e=>({name:`ID`,value:e.id||`${e.source} -> ${e.target}`,color:t}))}}this.currentTarget=i;let u,d;if(r)u=r.x,d=r.y;else{let e=va(c,`0.style`,{x:0,y:0});u=e.x,d=e.y}(n=(t=this.options).onOpenChange)==null||n.call(t,!0),this.tooltipElement.update(Object.assign(Object.assign(Object.assign({},this.tooltipStyleProps),{x:u,y:d,style:{".tooltip":{visibility:`visible`}}}),l))}),this.hide=e=>{var t,n,r,i,a;if(!e){(n=(t=this.options).onOpenChange)==null||n.call(t,!1),(r=this.tooltipElement)==null||r.hide(),this.currentTarget=null;return}if(!this.tooltipElement||!this.currentTarget)return;let{client:{x:o,y:s}}=e;(a=(i=this.options).onOpenChange)==null||a.call(i,!1),this.tooltipElement.hide(o,s),this.currentTarget=null},this.initTooltip=()=>{var e;let t=new T6({className:`tooltip`,style:this.tooltipStyleProps});return(e=this.container)==null||e.appendChild(t.HTMLTooltipElement),t},this.render(),this.bindEvents()}getEvents(){return this.options.trigger===`click`?{"node:click":this.onClick,"edge:click":this.onClick,"combo:click":this.onClick,"canvas:click":this.onPointerLeave,contextmenu:this.onPointerLeave,drag:this.onPointerLeave}:{"node:pointerover":this.onPointerOver,"node:pointermove":this.onPointerMove,"canvas:pointermove":this.onCanvasMove,"edge:pointerover":this.onPointerOver,"edge:pointermove":this.onPointerMove,"combo:pointerover":this.onPointerOver,"combo:pointermove":this.onPointerMove,contextmenu:this.onPointerLeave,"node:drag":this.onPointerLeave}}update(e){var t;this.unbindEvents(),super.update(e),this.tooltipElement&&((t=this.container)==null||t.removeChild(this.tooltipElement.HTMLTooltipElement)),this.tooltipElement=this.initTooltip(),this.bindEvents()}render(){let{canvas:e}=this.context,t=e.getContainer();t&&(this.container=t,this.tooltipElement=this.initTooltip())}unbindEvents(){let{graph:e}=this.context,t=this.getEvents();Object.keys(t).forEach(n=>{e.off(n,t[n])})}bindEvents(){let{graph:e}=this.context,t=this.getEvents();Object.keys(t).forEach(n=>{e.on(n,t[n])})}get tooltipStyleProps(){let{canvas:e}=this.context,{center:t}=e.getBounds(),{top:n,left:r}=e.getContainer().getBoundingClientRect(),{style:i,position:a,enterable:o,container:s={x:-r,y:-n},title:c,offset:l}=this.options,[u,d]=t,[f,p]=e.getSize();return{x:u,y:d,container:s,title:c,bounding:{x:0,y:0,width:f,height:p},position:a,enterable:o,offset:l,style:i}}destroy(){var e;this.unbindEvents(),this.tooltipElement&&((e=this.container)==null||e.removeChild(this.tooltipElement.HTMLTooltipElement)),super.destroy()}};F8.defaultOptions={trigger:`hover`,position:`top-right`,enterable:!1,enable:!0,offset:[10,10],style:{".tooltip":{visibility:`hidden`}}};var I8=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},L8;function R8(e,t){return L8||=document.createElement(`canvas`),L8.width=e,L8.height=t,L8.getContext(`2d`).clearRect(0,0,e,t),L8}function z8(e,t,n,r){return I8(this,void 0,void 0,function*(){let i=R8(e,t),a=i.getContext(`2d`),{rotate:o,opacity:s,textFill:c,textFontSize:l,textFontFamily:u,textFontVariant:d,textFontWeight:f,textAlign:p,textBaseline:m}=r;return a.textAlign=p,a.textBaseline=m,a.translate(e/2,t/2),a.font=`${l}px ${u} ${d} ${f}`,o&&a.rotate(o),s&&(a.globalAlpha=s),c&&(a.fillStyle=c,a.fillText(`${n}`,0,0)),i.toDataURL()})}function B8(e,t,n,r){return I8(this,void 0,void 0,function*(){let i=R8(e,t),a=i.getContext(`2d`),{rotate:o,opacity:s}=r;o&&a.rotate(o),s&&(a.globalAlpha=s);let c=new Image;return c.crossOrigin=`anonymous`,c.src=n,new Promise(n=>{c.onload=function(){let r=e>c.width?(e-c.width)/2:0,o=t>c.height?(t-c.height)/2:0;a.drawImage(c,0,0,c.width,c.height,r,o,e-r*2,t-o*2),n(i.toDataURL())}})})}var V8=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},H8=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},U8=class e extends tZ{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.$element=nZ(`watermark`),this.context.canvas.getContainer().appendChild(this.$element),this.update(n)}update(e){let t=Object.create(null,{update:{get:()=>super.update}});return V8(this,void 0,void 0,function*(){t.update.call(this,e);let n=this.options,{width:r,height:i,text:a,imageURL:o}=n,s=H8(n,[`width`,`height`,`text`,`imageURL`]);Object.keys(s).forEach(t=>{t.startsWith(`background`)&&(this.$element.style[t]=e[t])});let c=o?yield B8(r,i,o,s):yield z8(r,i,a,s);this.$element.style.backgroundImage=`url(${c})`})}destroy(){super.destroy(),this.$element.remove()}};U8.defaultOptions={width:200,height:100,opacity:.2,rotate:Math.PI/12,text:``,textFill:`#000`,textFontSize:16,textAlign:`center`,textBaseline:`middle`,backgroundRepeat:`repeat`};var W8=[`#7E92B5`,`#F4664A`,`#FFBE3A`],G8={type:`group`,color:[`#1783FF`,`#00C9C9`,`#F08F56`,`#D580FF`,`#7863FF`,`#DB9D0D`,`#60C42D`,`#FF80CA`,`#2491B3`,`#17C76F`]},K8={type:`group`,color:[`#99ADD1`,`#1783FF`,`#00C9C9`,`#F08F56`,`#D580FF`,`#7863FF`,`#DB9D0D`,`#60C42D`,`#FF80CA`,`#2491B3`,`#17C76F`]};function q8(e){let{bgColor:t,textColor:n,nodeColor:r,nodeColorDisabled:i,nodeStroke:a,nodeHaloStrokeOpacityActive:o=.15,nodeHaloStrokeOpacitySelected:s=.25,nodeOpacityDisabled:c=.06,nodeIconOpacityInactive:l=.85,nodeOpacityInactive:u=.25,nodeBadgePalette:d=W8,nodePaletteOptions:f=G8,edgeColor:p,edgeColorDisabled:m,edgePaletteOptions:h=K8,comboColor:g,comboColorDisabled:_,comboStroke:v,comboStrokeDisabled:y,edgeColorInactive:b}=e;return{background:t,node:{palette:f,style:{donutOpacity:1,badgeBackgroundOpacity:1,badgeFill:`#fff`,badgeFontSize:8,badgePadding:[0,4],badgePalette:d,fill:r,fillOpacity:1,halo:!1,iconFill:`#fff`,iconOpacity:1,labelBackground:!1,labelBackgroundFill:t,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelFill:n,labelFillOpacity:.85,labelLineHeight:16,labelPadding:[0,2],labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelOffsetY:2,lineWidth:0,portFill:r,portLineWidth:1,portStroke:a,portStrokeOpacity:.65,size:32,stroke:a,strokeOpacity:1,zIndex:2},state:{selected:{halo:!0,haloLineWidth:24,haloStrokeOpacity:s,labelFontSize:12,labelFontWeight:`bold`,lineWidth:4,stroke:a},active:{halo:!0,haloLineWidth:12,haloStrokeOpacity:o},highlight:{labelFontWeight:`bold`,lineWidth:4,stroke:a,strokeOpacity:.85},inactive:{badgeBackgroundOpacity:u,donutOpacity:u,fillOpacity:u,iconOpacity:l,labelFill:n,labelFillOpacity:u,strokeOpacity:u},disabled:{badgeBackgroundOpacity:.25,donutOpacity:c,fill:i,fillOpacity:c,iconFill:i,iconOpacity:.25,labelFill:n,labelFillOpacity:.25,strokeOpacity:c}},animation:{enter:`fade`,exit:`fade`,show:`fade`,hide:`fade`,expand:`node-expand`,collapse:`node-collapse`,update:[{fields:[`x`,`y`,`fill`,`stroke`]}],translate:[{fields:[`x`,`y`]}]}},edge:{palette:h,style:{badgeBackgroundFill:p,badgeFill:`#fff`,badgeFontSize:8,badgeOffsetX:10,badgeBackgroundOpacity:1,fillOpacity:1,halo:!1,haloLineWidth:12,haloStrokeOpacity:1,increasedLineWidthForHitTesting:2,labelBackground:!1,labelBackgroundFill:t,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[4,4,4,4],labelFill:n,labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelPlacement:`center`,labelTextBaseline:`middle`,lineWidth:1,stroke:p,strokeOpacity:1,zIndex:1},state:{selected:{halo:!0,haloStrokeOpacity:.25,labelFontSize:14,labelFontWeight:`bold`,lineWidth:3},active:{halo:!0,haloStrokeOpacity:.15},highlight:{labelFontWeight:`bold`,lineWidth:3},inactive:{stroke:b,fillOpacity:.08,labelOpacity:.25,strokeOpacity:.08,badgeBackgroundOpacity:.25},disabled:{stroke:m,fillOpacity:.45,strokeOpacity:.45,labelOpacity:.25,badgeBackgroundOpacity:.45}},animation:{enter:`fade`,exit:`fade`,expand:`path-in`,collapse:`path-out`,show:`fade`,hide:`fade`,update:[{fields:[`sourceNode`,`targetNode`]},{fields:[`stroke`],shape:`key`}],translate:[{fields:[`sourceNode`,`targetNode`]}]}},combo:{style:{collapsedMarkerFill:t,collapsedMarkerFontSize:12,collapsedMarkerFillOpacity:1,collapsedSize:32,collapsedFillOpacity:1,fill:g,halo:!1,haloLineWidth:12,haloStroke:v,haloStrokeOpacity:.25,labelBackground:!1,labelBackgroundFill:t,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[2,4,2,4],labelFill:n,labelFontSize:12,labelFontWeight:400,labelOpacity:1,lineDash:0,lineWidth:1,fillOpacity:.04,strokeOpacity:1,padding:10,stroke:v},state:{selected:{halo:!0,labelFontSize:14,labelFontWeight:700,lineWidth:4},active:{halo:!0},highlight:{labelFontWeight:700,lineWidth:4},inactive:{fillOpacity:.65,labelOpacity:.25,strokeOpacity:.65},disabled:{fill:_,fillOpacity:.25,labelOpacity:.25,stroke:y,strokeOpacity:.25}},animation:{enter:`fade`,exit:`fade`,show:`fade`,hide:`fade`,expand:`combo-expand`,collapse:`combo-collapse`,update:[{fields:[`x`,`y`]},{fields:[`fill`,`stroke`,`lineWidth`],shape:`key`}],translate:[{fields:[`x`,`y`]}]}}}}var J8=q8({bgColor:`#000000`,comboColor:`#fdfdfd`,comboColorDisabled:`#d0e4ff`,comboStroke:`#99add1`,comboStrokeDisabled:`#969696`,edgeColor:`#637088`,edgeColorDisabled:`#637088`,edgeColorInactive:`#D0E4FF`,edgePaletteOptions:{type:`group`,color:[`#637088`,`#0F55A6`,`#008383`,`#9C5D38`,`#8B53A6`,`#4E40A6`,`#8F6608`,`#3E801D`,`#A65383`,`#175E75`,`#0F8248`]},nodeColor:`#1783ff`,nodeColorDisabled:`#D0E4FF`,nodeHaloStrokeOpacityActive:.25,nodeHaloStrokeOpacitySelected:.45,nodeIconOpacityInactive:.45,nodeOpacityDisabled:.25,nodeOpacityInactive:.45,nodeStroke:`#d0e4ff`,textColor:`#ffffff`}),Y8=q8({bgColor:`#ffffff`,comboColor:`#99ADD1`,comboColorDisabled:`#f0f0f0`,comboStroke:`#99add1`,comboStrokeDisabled:`#d9d9d9`,edgeColor:`#99add1`,edgeColorDisabled:`#d9d9d9`,edgeColorInactive:`#1B324F`,nodeColor:`#1783ff`,nodeColorDisabled:`#1B324F`,nodeHaloStrokeOpacityActive:.15,nodeHaloStrokeOpacitySelected:.25,nodeIconOpacityInactive:.85,nodeOpacityDisabled:.06,nodeOpacityInactive:.25,nodeStroke:`#000000`,textColor:`#000000`}),X8=class extends Uv{beforeDraw(e,t){return e}afterLayout(e,t){}},Z8=class extends X8{beforeDraw(e){let{model:t}=this.context,n=e.add.combos,r=e=>{let n=[];return e.forEach((e,r)=>{let i=t.getAncestorsData(r,`combo`).map(e=>Q(e)).reverse();n.push([r,e,i.length])}),new Map(n.sort(([,,e],[,,t])=>t-e).map(([e,t])=>[e,t]))};return e.add.combos=r(n),e.update.combos=r(e.update.combos),e}};function Q8(e,t,n,r,i){let a=Q(r),o=`${n}s`,s=i?r:e.add[o].get(a)||e.update[o].get(a)||e.remove[o].get(a)||r;Object.entries(e).forEach(([e,n])=>{t===e?n[o].set(a,s):n[o].delete(a)})}function $8(e,t){return Object.keys(e).every(n=>e[n]===t[n])}var e5=class extends X8{beforeDraw(e,t){if(t.stage===`visibility`||!this.context.model.model.hasTreeStructure(`combo`))return e;let{model:n}=this.context,{add:r,update:i}=e,a=[...e.update.combos.entries(),...e.add.combos.entries()];for(;a.length;){let[t,o]=a.pop();if(eb(o)){let o=n.getDescendantsData(t),{internal:s,external:c}=qS(o.map(Q),e=>n.getRelatedEdgesData(e));o.forEach(t=>{let r=Q(t),i=a.findIndex(([e])=>e===r);i!==-1&&a.splice(i,1),Q8(e,`remove`,n.getElementType(r),t)}),s.forEach(t=>Q8(e,`remove`,`edge`,t)),c.forEach(e=>{let t=Q(e);this.context.element?.getElement(t)?i.edges.set(t,e):r.edges.set(t,e)})}else{let r=n.getChildrenData(t),{edges:i}=qS(r.map(Q),e=>n.getRelatedEdgesData(e));[...r,...i].forEach(t=>{let r=Q(t),i=n.getElementType(r);this.context.element?.getElement(r)?Q8(e,`update`,i,t):Q8(e,`add`,i,t),i===`combo`&&a.push([r,t])})}}return e}},t5=(e,t,n,r)=>{let i=`${n}s`,a=Q(r);!e.add[i].has(a)&&!e.update[i].has(a)&&e[t][i].set(Q(r),r)},n5=class extends X8{getElement(e){return this.context.element.getElement(e)}handleExpand(e,t){if(t5(t,`add`,`node`,e),eb(e))return;let n=Q(e);t5(t,`add`,`node`,e),this.context.model.getRelatedEdgesData(n).forEach(e=>{Q8(t,`add`,`edge`,e)}),this.context.model.getChildrenData(n).forEach(e=>{this.handleExpand(e,t)})}beforeDraw(e){let{graph:t,model:n}=this.context;if(!n.model.hasTreeStructure(`tree`))return e;let{add:{nodes:r,edges:i},update:{nodes:a}}=e,o=new Map,s=new Map;r.forEach((e,t)=>{eb(e)&&o.set(t,e)}),i.forEach(e=>{if(t.getElementType(e.source)!==`node`)return;let n=t.getNodeData(e.source);eb(n)&&o.set(e.source,n)}),a.forEach((e,t)=>{let n=this.getElement(t);if(!n)return;let r=n.attributes.collapsed;eb(e)?r||o.set(t,e):r&&s.set(t,e)});let c=new Set;return o.forEach((t,r)=>{n.getDescendantsData(r).forEach(t=>{let r=Q(t);c.has(r)||(Q8(e,`remove`,`node`,t),n.getRelatedEdgesData(r).forEach(t=>{Q8(e,`remove`,`edge`,t)}),c.add(r))})}),s.forEach((t,r)=>{if(n.getAncestorsData(r,`tree`).some(eb)){Q8(e,`remove`,`node`,t);return}this.handleExpand(t,e)}),e}};function r5(e,t,n){r_[e][t]&&c_.warn(`The extension ${t} of ${e} has been registered before, and will be overridden.`),Object.assign(r_[e],{[t]:n})}var i5=function(){function e(t){R(this,e),this.dragndropPluginOptions=t}return z(e,[{key:`apply`,value:function(t){var n=this,r=t.renderingService,i=t.renderingContext.root.ownerDocument,a=i.defaultView,o=function(e){var t=e.target,r=t===i,o=r&&n.dragndropPluginOptions.isDocumentDraggable?i:t.closest&&t.closest(`[draggable=true]`);if(o){var s=!1,c=e.timeStamp,l=[e.clientX,e.clientY],u=null,d=[e.clientX,e.clientY],f=function(){var e=_s(hs().mark(function e(a){var f,p,m,h,g,_;return hs().wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(s){e.next=2;break}if(f=a.timeStamp-c,p=fo([a.clientX,a.clientY],l),!(f<=n.dragndropPluginOptions.dragstartTimeThreshold||p<=n.dragndropPluginOptions.dragstartDistanceThreshold)){e.next=1;break}return e.abrupt(`return`);case 1:a.type=`dragstart`,o.dispatchEvent(a),s=!0;case 2:if(a.type=`drag`,a.dx=a.clientX-d[0],a.dy=a.clientY-d[1],o.dispatchEvent(a),d=[a.clientX,a.clientY],r){e.next=4;break}return m=n.dragndropPluginOptions.overlap===`pointer`?[a.canvasX,a.canvasY]:t.getBounds().center,e.next=3,i.elementsFromPoint(m[0],m[1]);case 3:h=e.sent,g=h[h.indexOf(t)+1],_=g?.closest(`[droppable=true]`)||(n.dragndropPluginOptions.isDocumentDroppable?i:null),u!==_&&(u&&(a.type=`dragleave`,a.target=u,u.dispatchEvent(a)),_&&(a.type=`dragenter`,a.target=_,_.dispatchEvent(a)),u=_,u&&(a.type=`dragover`,a.target=u,u.dispatchEvent(a)));case 4:case`end`:return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}();a.addEventListener(`pointermove`,f);var p=function(e){if(s){e.detail={preventClick:!0};var t=e.clone();u&&(t.type=`drop`,t.target=u,u.dispatchEvent(t)),t.type=`dragend`,o.dispatchEvent(t),s=!1}a.removeEventListener(`pointermove`,f)};t.addEventListener(`pointerup`,p,{once:!0}),t.addEventListener(`pointerupoutside`,p,{once:!0})}};r.hooks.init.tap(e.tag,function(){a.addEventListener(`pointerdown`,o)}),r.hooks.destroy.tap(e.tag,function(){a.removeEventListener(`pointerdown`,o)})}}])}();i5.tag=`Dragndrop`;var a5=function(e){function t(){var e,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return R(this,t),e=mn(this,t),e.name=`dragndrop`,e.options=n,e}return gn(t,e),z(t,[{key:`init`,value:function(){this.addRenderingPlugin(new i5(tn({overlap:`pointer`,isDocumentDraggable:!1,isDocumentDroppable:!1,dragstartDistanceThreshold:0,dragstartTimeThreshold:0},this.options)))}},{key:`destroy`,value:function(){this.removeAllRenderingPlugins()}},{key:`setOptions`,value:function(e){Object.assign(this.plugins[0].dragndropPluginOptions,e)}}])}(Ss),o5=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},s5=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},c5=[`main`],l5=[`background`,`main`,`label`,`transient`];function u5(e){return e.main}var d5=class{getConfig(){return this.config}getLayer(e=`main`){return this.extends.layers[e]||u5(this.getLayers())}getLayers(){return this.extends.layers}getRenderer(e){return this.extends.renderers[e]}getCamera(e=`main`){return this.getLayer(e).getCamera()}getRoot(e=`main`){return this.getLayer(e).getRoot()}getContextService(e=`main`){return this.getLayer(e).getContextService()}setCursor(e){this.config.cursor=e,this.getLayer().setCursor(e)}get document(){return this.getLayer().document}get context(){return this.getLayer().context}constructor(e){this.config={enableMultiLayer:!0},Object.assign(this.config,e);let t=this.config,{renderer:n,background:r,cursor:i,enableMultiLayer:a}=t,o=s5(t,[`renderer`,`background`,`cursor`,`enableMultiLayer`]),s=a?l5:c5,c=f5(n,s),l=Object.fromEntries(s.map(e=>[e,new Lm(Object.assign(Object.assign({},o),{supportsMutipleCanvasesInOneContainer:a,renderer:c[e],background:a?e===`background`?r:void 0:r}))]));p5(l),this.extends={config:this.config,renderer:n,renderers:c,layers:l}}get ready(){return Promise.all(Object.entries(this.getLayers()).map(([,e])=>e.ready))}resize(e,t){Object.assign(this.extends.config,{width:e,height:t}),Object.values(this.getLayers()).forEach(n=>{let r=n.getCamera(),i=r.getPosition(),a=r.getFocalPoint();n.resize(e,t),r.setPosition(i),r.setFocalPoint(a)})}getBounds(e){return B_(Object.values(this.getLayers()).map(t=>e?t.getRoot().childNodes.find(t=>t.classList.includes(e)):t.getRoot()).filter(e=>e?.childNodes.length>0).map(e=>e.getBounds()))}getContainer(){let e=this.extends.config.container;return typeof e==`string`?document.getElementById(e):e}getSize(){return[this.extends.config.width||0,this.extends.config.height||0]}appendChild(e,t){let n=e.style?.$layer||`main`;return this.getLayer(n).appendChild(e,t)}setRenderer(e){if(e===this.extends.renderer)return;let t=f5(e,this.config.enableMultiLayer?l5:c5);this.extends.renderers=t,Object.entries(t).forEach(([e,t])=>this.getLayer(e).setRenderer(t)),p5(this.getLayers())}getCanvasByViewport(e){return vy(this.getLayer().viewport2Canvas(yy(e)))}getViewportByCanvas(e){return vy(this.getLayer().canvas2Viewport(yy(e)))}getViewportByClient(e){return vy(this.getLayer().client2Viewport(yy(e)))}getClientByViewport(e){return vy(this.getLayer().viewport2Client(yy(e)))}getClientByCanvas(e){return this.getClientByViewport(this.getViewportByCanvas(e))}getCanvasByClient(e){let t=this.getLayer(),n=t.client2Viewport(yy(e));return vy(t.viewport2Canvas(n))}toDataURL(){return o5(this,arguments,void 0,function*(e={}){let t=globalThis.devicePixelRatio||1,{mode:n=`viewport`}=e,r=s5(e,[`mode`]),[i,a,o,s]=[0,0,0,0];if(n===`viewport`)[o,s]=this.getSize();else if(n===`overall`){let e=this.getBounds(),t=I_(e);[i,a]=e.min,[o,s]=t}let c=No(`<div id="virtual-image"></div>`),l=new Lm({width:o,height:s,renderer:new sS,devicePixelRatio:t,container:c,background:this.extends.config.background});yield l.ready,l.appendChild(this.getLayer(`background`).getRoot().cloneNode(!0)),l.appendChild(this.getRoot().cloneNode(!0));let u=this.getLayer(`label`).getRoot().cloneNode(!0),d=l.viewport2Canvas({x:0,y:0}),f=this.getCanvasByViewport([0,0]);u.translate([f[0]-d.x,f[1]-d.y]),u.scale(1/this.getCamera().getZoom()),l.appendChild(u),l.appendChild(this.getLayer(`transient`).getRoot().cloneNode(!0));let p=this.getCamera(),m=l.getCamera();if(n===`viewport`)m.setZoom(p.getZoom()),m.setPosition(p.getPosition()),m.setFocalPoint(p.getFocalPoint());else if(n===`overall`){let[e,t,n]=m.getPosition(),[r,o,s]=m.getFocalPoint();m.setPosition([e+i,t+a,n]),m.setFocalPoint([r+i,o+a,s])}let h=l.getContextService();return new Promise(e=>{l.addEventListener(Om.RERENDER,()=>o5(this,void 0,void 0,function*(){yield new Promise(e=>setTimeout(e,300)),e(yield h.toDataURL(r))}))})})}destroy(){Object.values(this.getLayers()).forEach(e=>{e.getCamera().cancelLandmarkAnimation(),e.destroy()})}};function f5(e,t){return Object.fromEntries(t.map(t=>{let n=e?.(t)||new sS;return n instanceof sS&&n.setConfig({enableDirtyRectangleRendering:!1}),t===`main`?n.registerPlugin(new a5({isDocumentDraggable:!0,isDocumentDroppable:!0,dragstartDistanceThreshold:10,dragstartTimeThreshold:100})):n.unregisterPlugin(n.getPlugin(`dom-interaction`)),[t,n]}))}function p5(e){Object.entries(e).forEach(([e,t])=>{let n=t.getContextService().getDomElement();n?.style&&(n.style.gridArea=`1 / 1 / 2 / 2`,n.style.outline=`none`,n.tabIndex=1,e!==`main`&&(n.style.pointerEvents=`none`)),n?.parentElement&&(n.parentElement.style.display=`grid`,n.parentElement.style.isolation=`isolate`)})}var m5=e=>e?parseInt(e):0;function h5(e){let t=getComputedStyle(e),n=e.clientWidth||m5(t.width),r=e.clientHeight||m5(t.height),i=m5(t.paddingLeft)+m5(t.paddingRight),a=m5(t.paddingTop)+m5(t.paddingBottom);return[n-i,r-a]}function g5(e){if(!e)return[0,0];let t=640,n=480,[r,i]=h5(e);return t=r||t,n=i||n,[Math.max(zi(t)?t:1,1),Math.max(zi(n)?n:1,1)]}var _5=class{constructor(e){this.type=e}},v5=class extends _5{constructor(e,t){super(e),this.data=t}},y5=class extends _5{constructor(e,t,n,r){super(e),this.animationType=t,this.animation=n,this.data=r}},b5=class extends _5{constructor(e,t,n){super(e),this.elementType=t,this.data=n}},x5=class extends _5{constructor(e,t){super(e),this.data=t}};function S5(e,t){e.emit(t.type,t)}function C5(e){if(!e)return null;if(e instanceof Sm)return{type:`canvas`,element:e};let t=e;for(;t;){if(DC(t))return{type:`node`,element:t};if(OC(t))return{type:`edge`,element:t};if(kC(t))return{type:`combo`,element:t};t=t.parentElement}return null}function w5(e){return e?.style?.zIndex||0}var T5=`cachedStyle`,E5=e=>`__${e}__`;function D5(e,t){let n=Array.isArray(t)?t:[t];va(e,T5)||ya(e,T5,{}),n.forEach(t=>{ya(va(e,T5),E5(t),e.attributes[t])})}function O5(e,t){return va(e,[T5,E5(t)])}function k5(e,t){return E5(t)in(va(e,T5)||{})}var A5=class{constructor(e){this.tasks=[],this.animations=new Set,this.context=e}getTasks(){let e=[...this.tasks];return this.tasks=[],e}add(e,t){this.tasks.push([e,t])}animate(e,t,n){var r,i,a;(r=t?.before)==null||r.call(t);let o=this.getTasks().map(([t,r])=>{var i,a,o;let{element:s,elementType:c,stage:l}=t,u=h_(this.context.options,c,l,e);(i=r?.before)==null||i.call(r);let d=u.length?v_(s,this.inferStyle(t,n),u):null;return d?((a=r?.beforeAnimate)==null||a.call(r,d),d.finished.then(()=>{var e,t;(e=r?.afterAnimate)==null||e.call(r,d),(t=r?.after)==null||t.call(r),this.animations.delete(d)})):(o=r?.after)==null||o.call(r),d}).filter(Boolean);o.forEach(e=>this.animations.add(e));let s=u_(o);return s?((i=t?.beforeAnimate)==null||i.call(t,s),s.finished.then(()=>{var e,n;(e=t?.afterAnimate)==null||e.call(t,s),(n=t?.after)==null||n.call(t),this.release()})):(a=t?.after)==null||a.call(t),s}inferStyle(e,t){let{element:n,elementType:r,stage:i,originalStyle:a,updatedStyle:o={}}=e;e.modifiedStyle||=Object.assign(Object.assign({},a),o);let{modifiedStyle:s}=e,c={},l={};if(i===`enter`)Object.assign(c,{opacity:0});else if(i===`exit`)Object.assign(l,{opacity:0});else if(i===`show`)Object.assign(c,{opacity:0}),Object.assign(l,{opacity:O5(n,`opacity`)??f_(`opacity`)});else if(i===`hide`)Object.assign(c,{opacity:O5(n,`opacity`)??f_(`opacity`)}),Object.assign(l,{opacity:0});else if(i===`collapse`){let{collapse:e}=t||{},{target:i,descendants:o,position:c}=e;if(r===`node`){if(o.includes(n.id)){let[e,t,n]=c;Object.assign(l,{x:e,y:t,z:n})}}else if(r===`combo`){if(n.id===i||o.includes(n.id)){let[e,t]=c;Object.assign(l,{x:e,y:t,childrenNode:a.childrenNode})}}else r===`edge`&&Object.assign(l,{sourceNode:s.sourceNode,targetNode:s.targetNode})}else if(i===`expand`){let{expand:e}=t||{},{target:i,descendants:a,position:o}=e;if(r===`node`){if(n.id===i||a.includes(n.id)){let[e,t,n]=o;Object.assign(c,{x:e,y:t,z:n})}}else if(r===`combo`){if(n.id===i||a.includes(n.id)){let[e,t,n]=o;Object.assign(c,{x:e,y:t,z:n,childrenNode:s.childrenNode})}}else r===`edge`&&Object.assign(c,{sourceNode:s.sourceNode,targetNode:s.targetNode})}return[Object.keys(c).length>0?Object.assign({},a,c):a,Object.keys(l).length>0?Object.assign({},s,l):s]}stop(){this.animations.forEach(e=>e.cancel())}clear(){this.tasks=[]}release(){let{canvas:e}=this.context,t=e.document?.timeline?.animationsWithPromises;t&&(e.document.timeline.animationsWithPromises=t.filter(e=>e.playState!==`finished`))}destroy(){this.stop(),this.animations.clear(),this.tasks=[]}},j5=class{constructor(e){this.batchCount=0,this.context=e}emit(e){let{graph:t}=this.context;t.emit(e.type,e)}startBatch(e=!0){this.batchCount++,this.batchCount===1&&this.emit(new v5(Z.BATCH_START,{initiate:e}))}endBatch(){this.batchCount--,this.batchCount===0&&this.emit(new v5(Z.BATCH_END))}get isBatching(){return this.batchCount>0}destroy(){this.context=null}},M5=class extends Hv{constructor(e){super(e),this.currentTarget=null,this.currentTargetType=null,this.category=`behavior`,this.forwardCanvasEvents=e=>{let{target:t}=e,n=C5(t);if(!n)return;let{graph:r,canvas:i}=this.context,{type:a,element:o}=n;if(`destroyed`in o&&(ew(o)||o.destroyed))return;let{type:s,detail:c,button:l}=e,u=Object.assign(Object.assign({},e),{target:o,targetType:a,originalTarget:t});s===X.POINTER_MOVE&&(this.currentTarget!==o&&(this.currentTarget&&r.emit(`${this.currentTargetType}:${X.POINTER_LEAVE}`,Object.assign(Object.assign({},u),{type:X.POINTER_LEAVE,target:this.currentTarget,targetType:this.currentTargetType})),o&&(Object.assign(u,{type:X.POINTER_ENTER}),r.emit(`${a}:${X.POINTER_ENTER}`,u))),this.currentTarget=o,this.currentTargetType=a),s===X.CLICK&&l===2||(r.emit(`${a}:${s}`,u),r.emit(s,u)),s===X.CLICK&&c===2&&(Object.assign(u,{type:X.DBLCLICK}),r.emit(`${a}:${X.DBLCLICK}`,u),r.emit(X.DBLCLICK,u)),s===X.POINTER_DOWN&&l===2&&(Object.assign(u,{type:X.CONTEXT_MENU,preventDefault:()=>{var e;(e=i.getContainer())==null||e.addEventListener(X.CONTEXT_MENU,e=>e.preventDefault(),{once:!0})}}),r.emit(`${a}:${X.CONTEXT_MENU}`,u),r.emit(X.CONTEXT_MENU,u))},this.forwardContainerEvents=e=>{this.context.graph.emit(e.type,e)},this.forwardEvents(),this.setBehaviors(this.context.options.behaviors||[])}setBehaviors(e){this.setExtensions(e)}forwardEvents(){let e=this.context.canvas.getContainer();e&&[Xg.KEY_DOWN,Xg.KEY_UP].forEach(t=>{e.addEventListener(t,this.forwardContainerEvents)});let t=this.context.canvas.document;t&&[X.CLICK,X.DBLCLICK,X.POINTER_OVER,X.POINTER_LEAVE,X.POINTER_ENTER,X.POINTER_MOVE,X.POINTER_OUT,X.POINTER_DOWN,X.POINTER_UP,X.CONTEXT_MENU,X.DRAG_START,X.DRAG,X.DRAG_END,X.DRAG_ENTER,X.DRAG_OVER,X.DRAG_LEAVE,X.DROP,X.WHEEL].forEach(e=>{t.addEventListener(e,this.forwardCanvasEvents)})}destroy(){let e=this.context.canvas.getContainer();e&&[Xg.KEY_DOWN,Xg.KEY_UP].forEach(t=>{e.removeEventListener(t,this.forwardContainerEvents)}),this.context.canvas.document.removeAllEventListeners(),super.destroy()}},N5=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n};function P5(e){let{id:t=Q(e),style:n,data:r}=e,i=N5(e,[`id`,`style`,`data`]),a=Object.assign(Object.assign({},e),{style:Object.assign({},n),data:Object.assign({},r)});return D_(e)?Object.assign({id:t,data:a},i):{id:t,data:a}}function F5(e){return e.data}function I5(e){if(e.hasTreeStructure(`tree`))return;e.attachTreeStructure(t_);let t=e.getAllEdges();for(let n of t){let{source:t,target:r}=n;e.setParent(r,t,t_)}}var L5=class{constructor(){this.latestRemovedComboIds=new Set,this.comboIds=new Set,this.changes=[],this.batchCount=0,this.isTraceless=!1,this.enableUpdateNodeLikeHierarchy=!0,this.model=new Cw}pushChange(e){if(this.isTraceless)return;let{type:t}=e;if(t===Kg.NodeUpdated||t===Kg.EdgeUpdated||t===Kg.ComboUpdated){let{value:n,original:r}=e;this.changes.push({value:aw(n),original:aw(r),type:t})}else this.changes.push({value:aw(e.value),type:t})}getChanges(){return this.changes}clearChanges(){this.changes=[]}batch(e){this.batchCount++,this.model.batch(e),this.batchCount--}isBatching(){return this.batchCount>0}silence(e){this.isTraceless=!0,e(),this.isTraceless=!1}isCombo(e){return this.comboIds.has(e)||this.latestRemovedComboIds.has(e)}getData(){return{nodes:this.getNodeData(),edges:this.getEdgeData(),combos:this.getComboData()}}getNodeData(e){return this.model.getAllNodes().reduce((t,n)=>{let r=F5(n);return this.isCombo(Q(r))||(e===void 0||e.includes(Q(r)))&&t.push(r),t},[])}getEdgeDatum(e){return F5(this.model.getEdge(e))}getEdgeData(e){return this.model.getAllEdges().reduce((t,n)=>{let r=F5(n);return(e===void 0||e.includes(Q(r)))&&t.push(r),t},[])}getComboData(e){return this.model.getAllNodes().reduce((t,n)=>{let r=F5(n);return this.isCombo(Q(r))&&(e===void 0||e.includes(Q(r)))&&t.push(r),t},[])}getRootsData(e=t_){return this.model.getRoots(e).map(F5)}getAncestorsData(e,t){let{model:n}=this;return!n.hasNode(e)||!n.hasTreeStructure(t)?[]:n.getAncestors(e,t).map(F5)}getDescendantsData(e){let t=this.getElementDataById(e),n=[];return qy(t,e=>{e!==t&&n.push(e)},e=>this.getChildrenData(Q(e)),`TB`),n}getParentData(e,t){let{model:n}=this;if(!t){c_.warn(`The hierarchy structure key is not specified`);return}if(!n.hasNode(e)||!n.hasTreeStructure(t))return;let r=n.getParent(e,t);return r?F5(r):void 0}getChildrenData(e){let t=this.getElementType(e)===`node`?t_:e_,{model:n}=this;return!n.hasNode(e)||!n.hasTreeStructure(t)?[]:n.getChildren(e,t).map(F5)}getElementsDataByType(e){return e===`node`?this.getNodeData():e===`edge`?this.getEdgeData():e===`combo`?this.getComboData():[]}getElementDataById(e){return this.getElementType(e)===`edge`?this.getEdgeDatum(e):this.getNodeLikeDatum(e)}getNodeLikeDatum(e){return F5(this.model.getNode(e))}getNodeLikeData(e){return this.model.getAllNodes().reduce((t,n)=>{let r=F5(n);return e?e.includes(Q(r))&&t.push(r):t.push(r),t},[])}getElementDataByState(e,t){return this.getElementsDataByType(e).filter(e=>e.states?.includes(t))}getElementState(e){return this.getElementDataById(e)?.states||[]}hasNode(e){return this.model.hasNode(e)&&!this.isCombo(e)}hasEdge(e){return this.model.hasEdge(e)}hasCombo(e){return this.model.hasNode(e)&&this.isCombo(e)}getRelatedEdgesData(e,t=`both`){return this.model.getRelatedEdges(e,t).map(F5)}getNeighborNodesData(e){return this.model.getNeighbors(e).map(F5)}setData(e){let{nodes:t=[],edges:n=[],combos:r=[]}=e,{nodes:i,edges:a,combos:o}=this.getData(),s=zv(i,t,e=>Q(e),ow),c=zv(a,n,e=>Q(e),ow),l=zv(o,r,e=>Q(e),ow);this.batch(()=>{let e={nodes:s.enter,edges:c.enter,combos:l.enter};this.addData(e),this.computeZIndex(e,`add`,!0);let t={nodes:s.update,edges:c.update,combos:l.update};this.updateData(t),this.computeZIndex(t,`update`,!0);let n={nodes:s.exit.map(Q),edges:c.exit.map(Q),combos:l.exit.map(Q)};this.removeData(n)})}addData(e){let{nodes:t,edges:n,combos:r}=e;this.batch(()=>{this.addComboData(r),this.addNodeData(t),this.addEdgeData(n)}),this.computeZIndex(e,`add`)}addNodeData(e=[]){e.length&&(this.model.addNodes(e.map(e=>(this.pushChange({value:e,type:Kg.NodeAdded}),P5(e)))),this.updateNodeLikeHierarchy(e),this.computeZIndex({nodes:e},`add`))}addEdgeData(e=[]){e.length&&(this.model.addEdges(e.map(e=>(this.pushChange({value:e,type:Kg.EdgeAdded}),P5(e)))),this.computeZIndex({edges:e},`add`))}addComboData(e=[]){if(!e.length)return;let{model:t}=this;t.hasTreeStructure(`combo`)||t.attachTreeStructure(e_),t.addNodes(e.map(e=>(this.comboIds.add(Q(e)),this.pushChange({value:e,type:Kg.ComboAdded}),P5(e)))),this.updateNodeLikeHierarchy(e),this.computeZIndex({combos:e},`add`)}addChildrenData(e,t){let n=this.getNodeLikeDatum(e),r=t.map(Q);this.addNodeData(t),this.updateNodeData([{id:e,children:[...n.children||[],...r]}]),this.addEdgeData(r.map(t=>({source:e,target:t})))}computeZIndex(e,t,n=!1){!n&&this.isBatching()||this.batch(()=>{let{nodes:n=[],edges:r=[],combos:i=[]}=e;i.forEach(e=>{let n=Q(e);if(t===`add`&&zi(e.style?.zIndex)||t===`update`&&!(`combo`in e))return;let r=this.getParentData(n,e_),i=r?(r.style?.zIndex??0)+1:0;this.preventUpdateNodeLikeHierarchy(()=>{this.updateComboData([{id:n,style:{zIndex:i}}])})}),n.forEach(e=>{let n=Q(e);if(t===`add`&&zi(e.style?.zIndex)||t===`update`&&!(`combo`in e)&&!(`children`in e))return;let r=0,i=this.getParentData(n,e_);if(i)r=(i.style?.zIndex||0)+1;else{let e=this.getParentData(n,t_);e&&(r=e?.style?.zIndex||0)}this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:n,style:{zIndex:r}}])})}),r.forEach(e=>{if(zi(e.style?.zIndex))return;let{id:t,source:n,target:r}=e;if(!t)t=Q(e);else{let e=this.getEdgeDatum(t);n=e.source,r=e.target}if(!n||!r)return;let i=this.getNodeLikeDatum(n)?.style?.zIndex||0,a=this.getNodeLikeDatum(r)?.style?.zIndex||0;this.updateEdgeData([{id:Q(e),style:{zIndex:Math.max(i,a)-1}}])})})}getFrontZIndex(e){let t=this.getElementType(e),n=this.getElementDataById(e),r=this.getData();if(Object.assign(r,{[`${t}s`]:r[`${t}s`].filter(t=>Q(t)!==e)}),t===`combo`&&!eb(n)){let t=new Set(this.getAncestorsData(e,e_).map(Q));r.nodes=r.nodes.filter(e=>!t.has(Q(e))),r.combos=r.combos.filter(e=>!t.has(Q(e))),r.edges=r.edges.filter(({source:e,target:n})=>!t.has(e)&&!t.has(n))}return Math.max(n.style?.zIndex||0,0,...Object.values(r).flat().map(e=>(e?.style?.zIndex||0)+1))}updateNodeLikeHierarchy(e){if(!this.enableUpdateNodeLikeHierarchy)return;let{model:t}=this;e.forEach(e=>{let n=Q(e),r=kv(e);r!==void 0&&(t.hasTreeStructure(`combo`)||t.attachTreeStructure(e_),r===null&&this.refreshComboData(n),this.setParent(n,kv(e),e_));let i=e.children||[];if(i.length){t.hasTreeStructure(`tree`)||t.attachTreeStructure(t_);let e=i.filter(e=>t.hasNode(e));e.forEach(e=>this.setParent(e,n,t_)),e.length!==i.length&&this.updateNodeData([{id:n,children:e}])}})}preventUpdateNodeLikeHierarchy(e){this.enableUpdateNodeLikeHierarchy=!1,e(),this.enableUpdateNodeLikeHierarchy=!0}updateData(e){let{nodes:t,edges:n,combos:r}=e;this.batch(()=>{this.updateNodeData(t),this.updateComboData(r),this.updateEdgeData(n)}),this.computeZIndex(e,`update`)}updateNodeData(e=[]){if(!e.length)return;let{model:t}=this;this.batch(()=>{let n=[];e.forEach(e=>{let r=Q(e),i=F5(t.getNode(r));if(ow(i,e))return;let a=iw(i,e);this.pushChange({value:a,original:i,type:Kg.NodeUpdated}),t.mergeNodeData(r,a),n.push(a)}),this.updateNodeLikeHierarchy(n)}),this.computeZIndex({nodes:e},`update`)}refreshData(){let{nodes:e,edges:t,combos:n}=this.getData();e.forEach(e=>{this.pushChange({value:e,original:e,type:Kg.NodeUpdated})}),t.forEach(e=>{this.pushChange({value:e,original:e,type:Kg.EdgeUpdated})}),n.forEach(e=>{this.pushChange({value:e,original:e,type:Kg.ComboUpdated})})}syncNodeLikeDatum(e){let{model:t}=this,n=Q(e);if(!t.hasNode(n))return;let r=iw(F5(t.getNode(n)),e);t.mergeNodeData(n,r)}syncEdgeDatum(e){let{model:t}=this,n=Q(e);if(!t.hasEdge(n))return;let r=iw(F5(t.getEdge(n)),e);t.mergeEdgeData(n,r)}updateEdgeData(e=[]){if(!e.length)return;let{model:t}=this;this.batch(()=>{e.forEach(e=>{let n=Q(e),r=F5(t.getEdge(n));if(ow(r,e))return;e.source&&r.source!==e.source&&t.updateEdgeSource(n,e.source),e.target&&r.target!==e.target&&t.updateEdgeTarget(n,e.target);let i=iw(r,e);this.pushChange({value:i,original:r,type:Kg.EdgeUpdated}),t.mergeEdgeData(n,i)})}),this.computeZIndex({edges:e},`update`)}updateComboData(e=[]){if(!e.length)return;let{model:t}=this;t.batch(()=>{let n=[];e.forEach(e=>{let r=Q(e),i=F5(t.getNode(r));if(ow(i,e))return;let a=iw(i,e);this.pushChange({value:a,original:i,type:Kg.ComboUpdated}),t.mergeNodeData(r,a),n.push(a)}),this.updateNodeLikeHierarchy(n)}),this.computeZIndex({combos:e},`update`)}setParent(e,t,n,r=!0){if(e===t)return;let i=kv(this.getNodeLikeDatum(e));if(i!==t&&n===`combo`){let n={id:e,combo:t};this.isCombo(e),this.syncNodeLikeDatum(n)}this.model.setParent(e,t,n),r&&n===`combo`&&Fi([i,t]).forEach(e=>{e!==void 0&&this.refreshComboData(e)})}refreshComboData(e){let t=this.getComboData([e])[0],n=this.getAncestorsData(e,e_);t&&this.pushChange({value:t,original:t,type:Kg.ComboUpdated}),n.forEach(e=>{this.pushChange({value:e,original:e,type:Kg.ComboUpdated})})}getElementPosition(e){return my(this.getElementDataById(e))}translateNodeLikeBy(e,t){this.isCombo(e)?this.translateComboBy(e,t):this.translateNodeBy(e,t)}translateNodeLikeTo(e,t){this.isCombo(e)?this.translateComboTo(e,t):this.translateNodeTo(e,t)}translateNodeBy(e,t){let n=Jv(this.getElementPosition(e),[...t,0].slice(0,3));this.translateNodeTo(e,n)}translateNodeTo(e,t){let[n=0,r=0,i=0]=t;this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:e,style:{x:n,y:r,z:i}}])})}translateComboBy(e,t){let[n=0,r=0,i=0]=t;if([n,r,i].some(isNaN)||[n,r,i].every(e=>e===0))return;let a=this.getComboData([e])[0];if(!a)return;let o=new Set;qy(a,e=>{let t=Q(e);if(o.has(t))return;o.add(t);let[a,s,c]=my(e),l=iw(e,{style:{x:a+n,y:s+r,z:c+i}});this.pushChange({value:l,original:e,type:this.isCombo(t)?Kg.ComboUpdated:Kg.NodeUpdated}),this.model.mergeNodeData(t,l)},e=>this.getChildrenData(Q(e)),`BT`)}translateComboTo(e,t){if(t.some(isNaN))return;let[n=0,r=0,i=0]=t,a=this.getComboData([e])?.[0];if(!a)return;let[o,s,c]=my(a),l=n-o,u=r-s,d=i-c;qy(a,e=>{let t=Q(e),[n,r,i]=my(e),a=iw(e,{style:{x:n+l,y:r+u,z:i+d}});this.pushChange({value:a,original:e,type:this.isCombo(t)?Kg.ComboUpdated:Kg.NodeUpdated}),this.model.mergeNodeData(t,a)},e=>this.getChildrenData(Q(e)),`BT`)}removeData(e){let{nodes:t,edges:n,combos:r}=e;this.batch(()=>{this.removeEdgeData(n),this.removeNodeData(t),this.removeComboData(r),this.latestRemovedComboIds=new Set(r)})}removeNodeData(e=[]){e.length&&this.batch(()=>{e.forEach(e=>{this.removeEdgeData(this.getRelatedEdgesData(e).map(Q)),this.pushChange({value:this.getNodeData([e])[0],type:Kg.NodeRemoved}),this.removeNodeLikeHierarchy(e)}),this.model.removeNodes(e)})}removeEdgeData(e=[]){e.length&&(e.forEach(e=>this.pushChange({value:this.getEdgeData([e])[0],type:Kg.EdgeRemoved})),this.model.removeEdges(e))}removeComboData(e=[]){e.length&&this.batch(()=>{e.forEach(e=>{this.pushChange({value:this.getComboData([e])[0],type:Kg.ComboRemoved}),this.removeNodeLikeHierarchy(e),this.comboIds.delete(e)}),this.model.removeNodes(e)})}removeNodeLikeHierarchy(e){if(this.model.hasTreeStructure(`combo`)){let t=kv(this.getNodeLikeDatum(e));this.setParent(e,void 0,e_,!1),this.model.getChildren(e,e_).forEach(e=>{let n=F5(e),r=Q(n);this.setParent(Q(n),t,e_,!1);let i=iw(n,{id:Q(n),combo:t});this.pushChange({value:i,original:n,type:this.isCombo(r)?Kg.ComboUpdated:Kg.NodeUpdated}),this.model.mergeNodeData(Q(n),i)}),V(t)||this.refreshComboData(t)}}getElementType(e){if(this.model.hasNode(e))return this.isCombo(e)?`combo`:`node`;if(this.model.hasEdge(e))return`edge`;throw Error(s_(`Unknown element type of id: ${e}`))}destroy(){let{model:e}=this,t=e.getAllNodes(),n=e.getAllEdges();e.removeEdges(n.map(e=>e.id)),e.removeNodes(t.map(e=>e.id)),this.context={}}},R5=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},z5=class{constructor(e){this.elementMap={},this.shapeTypeMap={},this.paletteStyle={},this.defaultStyle={},this.stateStyle={},this.visibilityCache=new WeakMap,this.context=e}init(){this.initContainer()}initContainer(){if(!this.container||this.container.destroyed){let{canvas:e}=this.context;this.container=e.appendChild(new am({className:`elements`}))}}emit(e,t){t.silence||S5(this.context.graph,e)}forEachElementData(e){Ky.forEach(t=>{e(t,this.context.model.getElementsDataByType(t))})}getElementType(e,t){let{options:n,graph:r}=this.context,i=cw(t)&&n[e]?.type||t.type;return i?typeof i==`string`?i:i.call(r,t):e===`edge`?`line`:`circle`}getTheme(e){return l_(this.context.options)[e]||{}}getThemeStyle(e){return this.getTheme(e).style||{}}getThemeStateStyle(e,t){let{state:n={}}=this.getTheme(e);return Object.assign({},...t.map(e=>n[e]||{}))}computePaletteStyle(){let{options:e}=this.context;this.paletteStyle={},this.forEachElementData((t,n)=>{let r=Object.assign({},pb(this.getTheme(t)?.palette),pb(e[t]?.palette));r?.field&&Object.assign(this.paletteStyle,mb(n,r))})}getPaletteStyle(e,t){let n=this.paletteStyle[t];return n?e===`edge`?{stroke:n}:{fill:n}:{}}computeElementDefaultStyle(e,t){let{options:n}=this.context,r=n[e]?.style||{};`transform`in r&&Array.isArray(r.transform)&&(r.transform=[...r.transform]),this.defaultStyle[Q(t.datum)]=lb(r,t)}computeElementsDefaultStyle(e){let{graph:t}=this.context;this.forEachElementData((n,r)=>{let i=r.length;for(let a=0;a<i;a++){let i=r[a];(e===void 0||e.includes(Q(i)))&&this.computeElementDefaultStyle(n,{datum:i,graph:t})}})}getDefaultStyle(e){return this.defaultStyle[e]||{}}getElementState(e){try{let{model:t}=this.context;return t.getElementState(e)}catch{return[]}}getElementStateStyle(e,t,n){let{options:r}=this.context;return lb(r[e]?.state?.[t]||{},n)}computeElementStatesStyle(e,t,n){this.stateStyle[Q(n.datum)]=Object.assign({},...t.map(t=>this.getElementStateStyle(e,t,n)))}computeElementsStatesStyle(e){let{graph:t}=this.context;this.forEachElementData((n,r)=>{let i=r.length;for(let a=0;a<i;a++){let i=r[a];if(e===void 0||e.includes(Q(i))){let e=this.getElementState(Q(i));this.computeElementStatesStyle(n,e,{datum:i,graph:t})}}})}getStateStyle(e){return this.stateStyle[e]||{}}computeStyle(e,t){e&&[`translate`,`zIndex`].includes(e)||(this.computePaletteStyle(),this.computeElementsDefaultStyle(t),this.computeElementsStatesStyle(t))}getElement(e){return this.elementMap[e]}getNodes(){return this.context.model.getNodeData().map(({id:e})=>this.elementMap[e])}getEdges(){return this.context.model.getEdgeData().map(e=>this.elementMap[Q(e)])}getCombos(){return this.context.model.getComboData().map(({id:e})=>this.elementMap[e])}getElementComputedStyle(e,t){let n=Q(t),r=this.getThemeStyle(e),i=this.getPaletteStyle(e,n),a=t.style||{},o=this.getDefaultStyle(n),s=this.getThemeStateStyle(e,this.getElementState(n)),c=this.getStateStyle(n),l=cw(t)?Object.assign({},r,i,a,o,s,c):Object.assign({},a);if(e===`combo`){let e=this.context.model.getChildrenData(n),t=l.collapsed?[]:e.map(Q).filter(e=>this.getElement(e));Object.assign(l,{childrenNode:t,childrenData:e})}return l}getDrawData(e){this.init();let t=this.computeChangesAndDrawData(e);if(!t)return null;let{type:n=`draw`,stage:r=n}=e;return this.markDestroyElement(t.drawData),this.computeStyle(r),{type:n,stage:r,data:t}}draw(e={animation:!0}){let t=this.getDrawData(e);if(!t)return;let{data:{drawData:{add:n,update:r,remove:i}}}=t;return this.destroyElements(i,e),this.createElements(n,e),this.updateElements(r,e),this.setAnimationTask(e,t)}preLayoutDraw(){return R5(this,arguments,void 0,function*(e={animation:!0}){var t;let n=this.getDrawData(e);if(!n)return;let{data:{drawData:r}}=n;yield((t=this.context.layout)?.preLayout)?.call(t,r);let{add:i,update:a,remove:o}=r;return this.destroyElements(o,e),this.createElements(i,e),this.updateElements(a,e),this.setAnimationTask(e,n)})}setAnimationTask(e,t){let{animation:n,silence:r}=e,{data:{dataChanges:i,drawData:a},stage:o,type:s}=t;return this.context.animation.animate(n,r?{}:{before:()=>this.emit(new v5(Z.BEFORE_DRAW,{dataChanges:i,animation:n,stage:o,render:s===`render`}),e),beforeAnimate:t=>this.emit(new y5(Z.BEFORE_ANIMATE,qg.DRAW,t,a),e),afterAnimate:t=>this.emit(new y5(Z.AFTER_ANIMATE,qg.DRAW,t,a),e),after:()=>this.emit(new v5(Z.AFTER_DRAW,{dataChanges:i,animation:n,stage:o,render:s===`render`,firstRender:this.context.graph.rendered===!1}),e)})}computeChangesAndDrawData(e){let{model:t}=this.context,n=t.getChanges(),r=PQ(n);if(r.length===0)return null;let{NodeAdded:i=[],NodeUpdated:a=[],NodeRemoved:o=[],EdgeAdded:s=[],EdgeUpdated:c=[],EdgeRemoved:l=[],ComboAdded:u=[],ComboUpdated:d=[],ComboRemoved:f=[]}=Li(r,e=>e.type),p=(e,t)=>{let n=[];return e.forEach(e=>{let r=Q(e.value);this.getElement(r)?n.push(e):t.push(e)}),n},m=p(a,i),h=p(c,s),g=p(d,u),_=e=>new Map(e.map(e=>{let t=e.value;return[Q(t),t]})),v={add:{nodes:_(i),edges:_(s),combos:_(u)},update:{nodes:_(m),edges:_(h),combos:_(g)},remove:{nodes:_(o),edges:_(l),combos:_(f)}},y=this.transformData(v,e);return t.clearChanges(),{dataChanges:n,drawData:y}}transformData(e,t){let n=this.context.transform.getTransformInstance();return Object.values(n).reduce((e,n)=>n.beforeDraw(e,t),e)}createElement(e,t,n){var r;let i=Q(t);if(this.getElement(i))return;let a=this.getElementType(e,t),o=this.getElementComputedStyle(e,t),s=i_(e,a);if(!s)return c_.warn(`The element ${a} of ${e} is not registered.`);this.emit(new b5(Z.BEFORE_ELEMENT_CREATE,e,t),n);let c=this.container.appendChild(new s({id:i,context:this.context,style:o}));this.shapeTypeMap[i]=a,this.elementMap[i]=c;let{stage:l=`enter`}=n;(r=this.context.animation)==null||r.add({element:c,elementType:e,stage:l,originalStyle:Object.assign({},c.attributes),updatedStyle:o},{after:()=>{var r;this.emit(new b5(Z.AFTER_ELEMENT_CREATE,e,t),n),(r=c.onCreate)==null||r.call(c)}})}createElements(e,t){let{nodes:n,edges:r,combos:i}=e;[[`node`,n],[`combo`,i],[`edge`,r]].forEach(([e,n])=>{n.forEach(n=>this.createElement(e,n,t))})}getUpdateStageStyle(e,t,n){let{stage:r=`update`}=n;if(r===`translate`)if(e===`node`||e===`combo`){let{style:{x:e=0,y:n=0,z:r=0}={}}=t;return{x:e,y:n,z:r}}else return{};return this.getElementComputedStyle(e,t)}updateElement(e,t,n){var r;let i=Q(t),{stage:a=`update`}=n,o=this.getElement(i);if(!o)return()=>null;this.emit(new b5(Z.BEFORE_ELEMENT_UPDATE,e,t),n);let s=this.getElementType(e,t),c=this.getUpdateStageStyle(e,t,n);this.shapeTypeMap[i]!==s&&(o.destroy(),delete this.shapeTypeMap[i],delete this.elementMap[i],this.createElement(e,t,{animation:!1,silence:!0}));let l=a===`visibility`?c.visibility===`hidden`?`hide`:`show`:a;l===`hide`&&delete c.visibility,(r=this.context.animation)==null||r.add({element:o,elementType:e,stage:l,originalStyle:Object.assign({},o.attributes),updatedStyle:c},{before:()=>{let e=this.elementMap[i];a!==`collapse`&&ZC(e,c),a===`visibility`&&(k5(e,`opacity`)||D5(e,`opacity`),this.visibilityCache.set(e,l===`show`?`visible`:`hidden`),l===`show`&&Bv(e,`visible`))},after:()=>{var r;let o=this.elementMap[i];a===`collapse`&&ZC(o,c),l===`hide`&&Bv(o,this.visibilityCache.get(o)),this.emit(new b5(Z.AFTER_ELEMENT_UPDATE,e,t),n),(r=o.onUpdate)==null||r.call(o)}})}updateElements(e,t){let{nodes:n,edges:r,combos:i}=e;[[`node`,n],[`combo`,i],[`edge`,r]].forEach(([e,n])=>{n.forEach(n=>this.updateElement(e,n,t))})}markDestroyElement(e){Object.values(e.remove).forEach(e=>{e.forEach(e=>{let t=Q(e),n=this.getElement(t);n&&$C(n)})})}destroyElement(e,t,n){var r;let{stage:i=`exit`}=n,a=Q(t),o=this.elementMap[a];if(!o)return()=>null;this.emit(new b5(Z.BEFORE_ELEMENT_DESTROY,e,t),n),(r=this.context.animation)==null||r.add({element:o,elementType:e,stage:i,originalStyle:Object.assign({},o.attributes),updatedStyle:{}},{after:()=>{var r;this.clearElement(a),o.destroy(),(r=o.onDestroy)==null||r.call(o),this.emit(new b5(Z.AFTER_ELEMENT_DESTROY,e,t),n)}})}destroyElements(e,t){let{nodes:n,edges:r,combos:i}=e;[[`combo`,i],[`edge`,r],[`node`,n]].forEach(([e,n])=>{n.forEach(n=>this.destroyElement(e,n,t))})}clearElement(e){delete this.paletteStyle[e],delete this.defaultStyle[e],delete this.stateStyle[e],delete this.elementMap[e],delete this.shapeTypeMap[e]}alignLayoutResultToElement(e,t){var n;let r=e.nodes?.find(e=>Q(e)===t);if(r){let i=Yv(my(this.context.model.getNodeLikeDatum(t)),my(r));(n=e.nodes)==null||n.forEach(e=>{e.style?.x&&(e.style.x+=i[0]),e.style?.y&&(e.style.y+=i[1]),e.style?.z&&(e.style.z+=i[2]||0)})}}syncLayoutResult(e,t){return R5(this,void 0,void 0,function*(){let{layout:n,model:r}=this.context;if(!n)return;let i=this.context.options.layout,a=yield n.simulate(i?(e=>Array.isArray(e)?e.map(e=>Object.assign(Object.assign({},e),{preLayout:!0})):Object.assign(Object.assign({},e),{preLayout:!0}))(i):void 0);t&&this.alignLayoutResultToElement(a,e),r.updateData(a)})}collapseNode(e,t){return R5(this,void 0,void 0,function*(){let{animation:n,align:r}=t;yield this.syncLayoutResult(e,r);let i=this.computeChangesAndDrawData({stage:`collapse`,animation:n});if(this.context.animation.clear(),this.computeStyle(`collapse`),!i)return;let{drawData:a}=i,{add:o,remove:s,update:c}=a;this.markDestroyElement(a);let l={animation:n,stage:`collapse`,data:a};this.destroyElements(s,l),this.createElements(o,l),this.updateElements(c,l),yield this.context.animation.animate(n,{beforeAnimate:e=>this.emit(new y5(Z.BEFORE_ANIMATE,qg.COLLAPSE,e,a),l),afterAnimate:e=>this.emit(new y5(Z.AFTER_ANIMATE,qg.COLLAPSE,e,a),l)},{collapse:{target:e,descendants:Array.from(s.nodes).map(([,e])=>Q(e)),position:my(c.nodes.get(e))}})?.finished})}expandNode(e,t){return R5(this,void 0,void 0,function*(){let{model:n}=this.context,{animation:r,align:i}=t,a=my(n.getNodeData([e])[0]);yield this.syncLayoutResult(e,i);let o=this.computeChangesAndDrawData({stage:`expand`,animation:r});if(this.createElements(o.drawData.add,{animation:!1,stage:`expand`,target:e}),this.context.animation.clear(),this.computeStyle(`expand`),!o)return;let{drawData:s}=o,{update:c,add:l}=s,u={animation:r,stage:`expand`,data:s};l.edges.forEach(e=>c.edges.set(Q(e),e)),l.nodes.forEach(e=>c.nodes.set(Q(e),e)),this.updateElements(c,u),yield this.context.animation.animate(r,{beforeAnimate:e=>this.emit(new y5(Z.BEFORE_ANIMATE,qg.EXPAND,e,s),u),afterAnimate:e=>this.emit(new y5(Z.AFTER_ANIMATE,qg.EXPAND,e,s),u)},{expand:{target:e,descendants:Array.from(l.nodes).map(([,e])=>Q(e)),position:a}})?.finished})}collapseCombo(e,t){return R5(this,void 0,void 0,function*(){let{model:n,element:r}=this.context;if(n.getAncestorsData(e,`combo`).some(e=>eb(e)))return;let i=r.getElement(e),a=i.getComboPosition(Object.assign(Object.assign({},i.attributes),{collapsed:!0})),o=this.computeChangesAndDrawData({stage:`collapse`,animation:t});if(!o)return;let{dataChanges:s,drawData:c}=o;this.markDestroyElement(c);let{update:l,remove:u}=c,d={animation:t,stage:`collapse`,data:c};this.destroyElements(u,d),this.updateElements(l,d);let f=e=>Array.from(e).map(([,e])=>Q(e));yield this.context.animation.animate(t,{before:()=>this.emit(new v5(Z.BEFORE_DRAW,{dataChanges:s,animation:t}),d),beforeAnimate:e=>this.emit(new y5(Z.BEFORE_ANIMATE,qg.COLLAPSE,e,c),d),afterAnimate:e=>this.emit(new y5(Z.AFTER_ANIMATE,qg.COLLAPSE,e,c),d),after:()=>this.emit(new v5(Z.AFTER_DRAW,{dataChanges:s,animation:t}),d)},{collapse:{target:e,descendants:[...f(u.nodes),...f(u.combos)],position:a}})?.finished})}expandCombo(e,t){return R5(this,void 0,void 0,function*(){let{model:n}=this.context,r=my(n.getComboData([e])[0]);this.computeStyle(`expand`);let i=this.computeChangesAndDrawData({stage:`expand`,animation:t});if(!i)return;let{dataChanges:a,drawData:o}=i,{add:s,update:c}=o,l={animation:t,stage:`expand`,data:o,target:e};this.createElements(s,l),this.updateElements(c,l);let u=e=>Array.from(e).map(([,e])=>Q(e));yield this.context.animation.animate(t,{before:()=>this.emit(new v5(Z.BEFORE_DRAW,{dataChanges:a,animation:t}),l),beforeAnimate:e=>this.emit(new y5(Z.BEFORE_ANIMATE,qg.EXPAND,e,o),l),afterAnimate:e=>this.emit(new y5(Z.AFTER_ANIMATE,qg.EXPAND,e,o),l),after:()=>this.emit(new v5(Z.AFTER_DRAW,{dataChanges:a,animation:t}),l)},{expand:{target:e,descendants:[...u(s.nodes),...u(s.combos)],position:r}})?.finished})}clear(){this.container.destroy(),this.initContainer(),this.elementMap={},this.shapeTypeMap={},this.defaultStyle={},this.stateStyle={},this.paletteStyle={}}destroy(){this.clear(),this.container.destroy(),this.context={}}},B5=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},V5=function(e,t){var n={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&typeof Object.getOwnPropertySymbols==`function`)for(var i=0,r=Object.getOwnPropertySymbols(e);i<r.length;i++)t.indexOf(r[i])<0&&Object.prototype.propertyIsEnumerable.call(e,r[i])&&(n[r[i]]=e[r[i]]);return n},H5=class{get presetOptions(){return{animation:!!p_(this.context.options,!0)}}get options(){let{options:e}=this.context;return e.layout}constructor(e){this.instances=[],this.context=e}getLayoutInstance(){return this.instances}preLayout(e){return B5(this,void 0,void 0,function*(){var t,n,r;let{graph:i,model:a}=this.context,{add:o}=e;S5(i,new v5(Z.BEFORE_LAYOUT,{type:`pre`}));let s=yield this.context.layout?.simulate();(t=s?.nodes)==null||t.forEach(e=>{let t=Q(e),n=o.nodes.get(t);a.syncNodeLikeDatum(e),n&&Object.assign(n.style,e.style)}),(n=s?.edges)==null||n.forEach(e=>{let t=Q(e),n=o.edges.get(t);a.syncEdgeDatum(e),n&&Object.assign(n.style,e.style)}),(r=s?.combos)==null||r.forEach(e=>{let t=Q(e),n=o.combos.get(t);a.syncNodeLikeDatum(e),n&&Object.assign(n.style,e.style)}),S5(i,new v5(Z.AFTER_LAYOUT,{type:`pre`})),this.transformDataAfterLayout(`pre`,e)})}postLayout(){return B5(this,arguments,void 0,function*(e=this.options){if(!e)return;let t=Array.isArray(e)?e:[e],{graph:n}=this.context;S5(n,new v5(Z.BEFORE_LAYOUT,{type:`post`}));for(let e=0;e<t.length;e++){let r=t[e],i=this.getLayoutData(r),a=Object.assign(Object.assign({},this.presetOptions),r);S5(n,new v5(Z.BEFORE_STAGE_LAYOUT,{options:a,index:e}));let o=yield this.stepLayout(i,a,e);S5(n,new v5(Z.AFTER_STAGE_LAYOUT,{options:a,index:e})),r.animation||this.updateElementPosition(o,!1)}S5(n,new v5(Z.AFTER_LAYOUT,{type:`post`})),this.transformDataAfterLayout(`post`)})}transformDataAfterLayout(e,t){let n=this.context.transform.getTransformInstance();Object.values(n).forEach(n=>n.afterLayout(e,t))}simulate(){return B5(this,arguments,void 0,function*(e=this.options){if(!e)return{};let t=Array.isArray(e)?e:[e],n={};for(let e=0;e<t.length;e++){let r=t[e],i=this.getLayoutData(r);n=yield this.stepLayout(i,Object.assign(Object.assign(Object.assign({},this.presetOptions),r),{animation:!1}),e)}return n})}stepLayout(e,t,n){return B5(this,void 0,void 0,function*(){return Dw(t)?yield this.treeLayout(e,t,n):yield this.graphLayout(e,t,n)})}graphLayout(e,t,n){return B5(this,void 0,void 0,function*(){let{animation:r,iterations:i=300}=t,a=this.initGraphLayout(t);if(!a)return{};if(this.instances[n]=a,this.instance=a,tD(a))return r?yield a.execute(e,{animate:!0,maxIteration:i,onTick:e=>this.updateElementPosition(e,!1)}):(a.execute(e),a.stop(),a.tick(i));let o=yield a.execute(e);return r&&(yield this.updateElementPosition(o,r)?.finished),o})}treeLayout(e,t,n){return B5(this,void 0,void 0,function*(){let{type:n,animation:r}=t,i=i_(`layout`,n);if(!i)return{};let{nodes:a=[],edges:o=[]}=e,s=new Cw({nodes:a.map(e=>({id:Q(e),data:e.data||{}})),edges:o.map(e=>({id:Q(e),source:e.source,target:e.target,data:e.data||{}}))});I5(s);let c={nodes:[],edges:[]},l={nodes:[],edges:[]};s.getRoots(t_).forEach(e=>{qy(e,e=>{e.children=s.getSuccessors(e.id)},e=>s.getSuccessors(e.id),`TB`);let n=i(e,t),{x:r,y:a,z:o=0}=n;qy(n,e=>{let{id:t,x:n,y:i,z:s=0}=e;c.nodes.push({id:t,style:{x:r,y:a,z:o}}),l.nodes.push({id:t,style:{x:n,y:i,z:s}})},e=>e.children,`TB`)});let u=this.inferTreeLayoutOffset(l);return U5(l,u),r&&(U5(c,u),this.updateElementPosition(c,!1),yield this.updateElementPosition(l,r)?.finished),l})}inferTreeLayoutOffset(e){var t;let[n,r]=[1/0,-1/0],[i,a]=[1/0,-1/0];(t=e.nodes)==null||t.forEach(e=>{let{x:t=0,y:o=0}=e.style||{};n=Math.min(n,t),r=Math.max(r,t),i=Math.min(i,o),a=Math.max(a,o)});let{canvas:o}=this.context,s=o.getSize(),[c,l]=o.getCanvasByViewport([0,0]),[u,d]=o.getCanvasByViewport(s);if(n>=c&&r<=u&&i>=l&&a<=d)return[0,0];let f=(c+u)/2,p=(l+d)/2;return[f-(n+r)/2,p-(i+a)/2]}stopLayout(){this.instance&&tD(this.instance)&&(this.instance.stop(),this.instance=void 0),this.animationResult&&=(this.animationResult.finish(),void 0)}getLayoutData(e){let{nodeFilter:t=()=>!0,comboFilter:n=()=>!0,preLayout:r=!1,isLayoutInvisibleNodes:i=!1}=e,{nodes:a,edges:o,combos:s}=this.context.model.getData(),{element:c,model:l}=this.context,u=e=>c.getElement(e),d=r?e=>!i&&(e.style?.visibility===`hidden`||l.getAncestorsData(e.id,`tree`).some(eb)||l.getAncestorsData(e.id,`combo`).some(eb))?!1:t(e):e=>{let n=u(Q(e));return!n||ew(n)?!1:t(e)},f=a.filter(d),p=s.filter(n),m=new Map(f.map(e=>[Q(e),e]));return p.forEach(e=>m.set(Q(e),e)),{nodes:f,edges:o.filter(({source:e,target:t})=>m.has(e)&&m.has(t)),combos:p}}initGraphLayout(e){let{element:t,viewport:n}=this.context,{type:r,animation:i,iterations:a}=e,o=V5(e,[`type`,`animation`,`iterations`]),[s,c]=n.getCanvasSize(),l=[s/2,c/2],u=e?.nodeSize??(e=>{let n=t?.getElement(e.id);return n?n.attributes.size:t?.getElementComputedStyle(`node`,e).size}),d=i_(`layout`,r);if(!d)return c_.warn(`The layout of ${r} is not registered.`);let f=new(Object.getPrototypeOf(d.prototype)===ww.prototype?d:jw(d)?Mw(d,this.context):kw(d,this.context))(this.context),p={nodeSize:u,width:s,height:c,center:l};switch(f.id){case`d3-force`:case`d3-force-3d`:Object.assign(p,{center:{x:s/2,y:c/2,z:0}});break;default:break}return ma(f.options,p,o),f}updateElementPosition(e,t){let{model:n,element:r}=this.context;return r?(n.updateData(e),r.draw({animation:t,silence:!0})):null}destroy(){this.stopLayout(),this.context={},this.instance=void 0,this.instances=[],this.animationResult=void 0}},U5=(e,t)=>{var n;let[r,i]=t;(n=e.nodes)==null||n.forEach(e=>{if(e.style){let{x:t=0,y:n=0}=e.style;e.style.x=t+r,e.style.y=n+i}else e.style={x:r,y:i}})};function W5(e){return[G5].reduce((e,t)=>t(e),e)}function G5(e){return!e.layout||Array.isArray(e.layout)||`preLayout`in e.layout||[`antv-dagre`,`combo-combined`,`compact-box`,`circular`,`concentric`,`dagre`,`fishbone`,`grid`,`indented`,`mds`,`radial`,`random`,`snake`,`dendrogram`,`mindmap`].includes(e.layout.type)&&(e.layout.preLayout=!0),e}var K5=class extends Hv{constructor(e){super(e),this.category=`plugin`,this.setPlugins(this.context.options.plugins||[])}setPlugins(e){this.setExtensions(e)}getPluginInstance(e){let t=this.extensionMap[e];if(t)return t;c_.warn(`Cannot find the plugin ${e}, will try to find it by type.`);let n=this.extensions.find(t=>t.type===e);if(n)return this.extensionMap[n.key]}},q5=[`update-related-edges`,`collapse-expand-node`,`collapse-expand-combo`,`get-edge-actual-ends`,`arrange-draw-order`],J5=class extends Hv{constructor(e){super(e),this.category=`transform`,this.setTransforms(this.context.options.transforms||[])}getTransforms(){}setTransforms(e){this.setExtensions([...q5.slice(0,q5.length-1),...e,q5[q5.length-1]])}getTransformInstance(e){return e?this.extensionMap[e]:this.extensionMap}},Y5=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},X5=class{get padding(){return M_(this.context.options.padding)}get paddingOffset(){let[e,t,n,r]=this.padding,[i,a,o]=[(r-t)/2,(e-n)/2,0];return[i,a,o]}constructor(e){this.landmarkCounter=0,this.context=e;let[t,n]=this.paddingOffset,{zoom:r,rotation:i,x:a=t,y:o=n}=e.options;this.transform({mode:`absolute`,scale:r,translate:[a,o],rotate:i},!1)}get camera(){let{canvas:e}=this.context;return new Proxy(e.getCamera(),{get:(t,n)=>{let r=Object.entries(e.getLayers()).filter(([e])=>![`main`].includes(e)).map(([,e])=>e.getCamera()),i=t[n];if(typeof i==`function`)return(...e)=>{let a=i.apply(t,e);return r.forEach(t=>{t[n].apply(t,e)}),a}}})}createLandmark(e){return this.camera.createLandmark(`landmark-${this.landmarkCounter++}`,e)}getAnimation(e){let t=p_(this.context.options,e);return t?xa(Object.assign({},t),[`easing`,`duration`]):!1}getCanvasSize(){let{canvas:e}=this.context,{width:t=0,height:n=0}=e.getConfig();return[t,n]}getCanvasCenter(){let{canvas:e}=this.context,{width:t=0,height:n=0}=e.getConfig();return[t/2,n/2,0]}getViewportCenter(){let[e,t]=this.camera.getPosition();return[e,t,0]}getGraphCenter(){return this.context.graph.getViewportByCanvas(this.getCanvasCenter())}getZoom(){return this.camera.getZoom()}getRotation(){return this.camera.getRoll()}getTranslateOptions(e){let{camera:t}=this,{mode:n,translate:r=[]}=e,i=this.getZoom(),a=t.getPosition(),o=t.getFocalPoint(),[s,c]=this.getCanvasCenter(),[l=0,u=0,d=0]=r,f=Zv([-l,-u,-d],i);return n===`relative`?{position:Jv(a,f),focalPoint:Jv(o,f)}:{position:Jv([s,c,a[2]],f),focalPoint:Jv([s,c,o[2]],f)}}getRotateOptions(e){let{mode:t,rotate:n=0}=e;return{roll:t===`relative`?this.camera.getRoll()+n:n}}getZoomOptions(e){let{zoomRange:t}=this.context.options,n=this.camera.getZoom(),{mode:r,scale:i=1}=e;return Ri(r===`relative`?n*i:i,...t)}transform(e,t){return Y5(this,void 0,void 0,function*(){let{graph:n}=this.context,{translate:r,rotate:i,scale:a,origin:o}=e;this.cancelAnimation();let s=this.getAnimation(t);if(S5(n,new x5(Z.BEFORE_TRANSFORM,e)),!i&&a&&!r&&o&&!s){this.camera.setZoomByViewportPoint(this.getZoomOptions(e),o),S5(n,new x5(Z.AFTER_TRANSFORM,e));return}let c={};if(r&&Object.assign(c,this.getTranslateOptions(e)),zi(i)&&Object.assign(c,this.getRotateOptions(e)),zi(a)&&Object.assign(c,{zoom:this.getZoomOptions(e)}),s)return S5(n,new y5(Z.BEFORE_ANIMATE,qg.TRANSFORM,null,e)),new Promise(t=>{this.transformResolver=t,this.camera.gotoLandmark(this.createLandmark(c),Object.assign(Object.assign({},s),{onfinish:()=>{S5(n,new y5(Z.AFTER_ANIMATE,qg.TRANSFORM,null,e)),S5(n,new x5(Z.AFTER_TRANSFORM,e)),this.transformResolver=void 0,t()}}))});this.camera.gotoLandmark(this.createLandmark(c),{duration:0}),S5(n,new x5(Z.AFTER_TRANSFORM,e))})}fitView(e,t){return Y5(this,void 0,void 0,function*(){let[n,r,i,a]=this.padding,{when:o=`always`,direction:s=`both`}=e||{},[c,l]=this.context.canvas.getSize(),u=c-a-r,d=l-n-i,f=this.context.canvas.getBounds(),[p,m]=I_(this.getBBoxInViewport(f));if(o===`overflow`&&!(s===`x`&&p>=u||s===`y`&&m>=d||s===`both`&&p>=u&&m>=d))return yield this.fitCenter({animation:t});let h=u/p,g=d/m,_=s===`x`?h:s===`y`?g:Math.min(h,g),v=this.getAnimation(t);Number.isFinite(_)&&(yield this.transform({mode:`relative`,scale:_,translate:Jv(Yv(this.getCanvasCenter(),this.getBBoxInViewport(f).center),Zv(this.paddingOffset,_))},v))})}fitCenter(e){return Y5(this,void 0,void 0,function*(){let t=this.context.canvas.getBounds();yield this.focus(t,e)})}focusElements(e){return Y5(this,arguments,void 0,function*(e,t={}){let{element:n}=this.context;if(!n)return;let r=e=>t.shapes?e.getShape(t.shapes).getRenderBounds():e.getRenderBounds(),i=B_(e.map(e=>r(n.getElement(e))));yield this.focus(i,t)})}focus(e,t){return Y5(this,void 0,void 0,function*(){let n=this.context.graph.getViewportByCanvas(e.center),r=Yv(t.position||this.getCanvasCenter(),n);yield this.transform({mode:`relative`,translate:Jv(r,this.paddingOffset)},t.animation)})}getBBoxInViewport(e){let{min:t,max:n}=e,{graph:r}=this.context,[i,a]=r.getViewportByCanvas(t),[o,s]=r.getViewportByCanvas(n),c=new As;return c.setMinMax([i,a,0],[o,s,0]),c}isInViewport(e,t=!1,n=0){let{graph:r}=this.context,i=this.getCanvasSize(),[a,o]=r.getCanvasByViewport([0,0]),[s,c]=r.getCanvasByViewport(i),l=new As;return l.setMinMax([a,o,0],[s,c,0]),n&&(l=z_(l,n)),A_(e)?H_(e,l):t?V_(e,l):l.intersects(e)}cancelAnimation(){var e;this.camera.landmarks?.length&&this.camera.cancelLandmarkAnimation(),(e=this.transformResolver)==null||e.call(this)}},Z5=function(e,t,n,r){function i(e){return e instanceof n?e:new n(function(t){t(e)})}return new(n||=Promise)(function(n,a){function o(e){try{c(r.next(e))}catch(e){a(e)}}function s(e){try{c(r.throw(e))}catch(e){a(e)}}function c(e){e.done?n(e.value):i(e.value).then(o,s)}c((r=r.apply(e,t||[])).next())})},Q5=class e extends vw{constructor(t){var n;super(),this.options={},this.rendered=!1,this.destroyed=!1,this.context={model:new L5},this.isCollapsingExpanding=!1,this.onResize=sa(()=>{this.resize()},300),this._setOptions(Object.assign({},e.defaultOptions,t),!0),this.context.graph=this,this.options.autoResize&&((n=globalThis.addEventListener)==null||n.call(globalThis,`resize`,this.onResize))}getOptions(){return this.options}setOptions(e){this._setOptions(e,!1)}_setOptions(e,t){if(this.updateCanvas(e),Object.assign(this.options,W5(e)),t){let{data:t}=e;t&&this.addData(t);return}let{behaviors:n,combo:r,data:i,edge:a,layout:o,node:s,plugins:c,theme:l,transforms:u}=e;n&&this.setBehaviors(n),i&&this.setData(i),s&&this.setNode(s),a&&this.setEdge(a),r&&this.setCombo(r),o&&this.setLayout(o),l&&this.setTheme(l),c&&this.setPlugins(c),u&&this.setTransforms(u)}getSize(){return this.context.canvas?this.context.canvas.getSize():[this.options.width||0,this.options.height||0]}setSize(e,t){e&&(this.options.width=e),t&&(this.options.height=t),this.resize(e,t)}setZoomRange(e){this.options.zoomRange=e}getZoomRange(){return this.options.zoomRange}setNode(e){this.options.node=e,this.context.model.refreshData()}setEdge(e){this.options.edge=e,this.context.model.refreshData()}setCombo(e){this.options.combo=e,this.context.model.refreshData()}getTheme(){return this.options.theme}setTheme(e){this.options.theme=B(e)?e(this.getTheme()):e}setLayout(e){this.options.layout=B(e)?e(this.getLayout()):e}getLayout(){return this.options.layout}setBehaviors(e){var t;this.options.behaviors=B(e)?e(this.getBehaviors()):e,(t=this.context.behavior)==null||t.setBehaviors(this.options.behaviors)}updateBehavior(e){this.setBehaviors(t=>t.map(t=>typeof t==`object`&&t.key===e.key?Object.assign(Object.assign({},t),e):t))}getBehaviors(){return this.options.behaviors||[]}setPlugins(e){var t;this.options.plugins=B(e)?e(this.getPlugins()):e,(t=this.context.plugin)==null||t.setPlugins(this.options.plugins)}updatePlugin(e){this.setPlugins(t=>t.map(t=>typeof t==`object`&&t.key===e.key?Object.assign(Object.assign({},t),e):t))}getPlugins(){return this.options.plugins||[]}getPluginInstance(e){return this.context.plugin.getPluginInstance(e)}setTransforms(e){var t;this.options.transforms=B(e)?e(this.getTransforms()):e,(t=this.context.transform)==null||t.setTransforms(this.options.transforms)}updateTransform(e){this.setTransforms(t=>t.map(t=>typeof t==`object`&&t.key===e.key?Object.assign(Object.assign({},t),e):t)),this.context.model.refreshData()}getTransforms(){return this.options.transforms||[]}getData(){return this.context.model.getData()}hasNode(e){return this.context.model.hasNode(e)}hasEdge(e){return this.context.model.hasEdge(e)}hasCombo(e){return this.context.model.hasCombo(e)}getElementData(e){return Array.isArray(e)?e.map(e=>this.context.model.getElementDataById(e)):this.context.model.getElementDataById(e)}getNodeData(e){return e===void 0?this.context.model.getNodeData():Array.isArray(e)?this.context.model.getNodeData(e):this.context.model.getNodeLikeDatum(e)}getEdgeData(e){return e===void 0?this.context.model.getEdgeData():Array.isArray(e)?this.context.model.getEdgeData(e):this.context.model.getEdgeDatum(e)}getComboData(e){return e===void 0?this.context.model.getComboData():Array.isArray(e)?this.context.model.getComboData(e):this.context.model.getNodeLikeDatum(e)}setData(e){this.context.model.setData(B(e)?e(this.getData()):e)}addData(e){this.context.model.addData(B(e)?e(this.getData()):e)}addNodeData(e){this.context.model.addNodeData(B(e)?e(this.getNodeData()):e)}addEdgeData(e){this.context.model.addEdgeData(B(e)?e(this.getEdgeData()):e)}addComboData(e){this.context.model.addComboData(B(e)?e(this.getComboData()):e)}addChildrenData(e,t){this.context.model.addChildrenData(e,t)}updateData(e){this.context.model.updateData(B(e)?e(this.getData()):e)}updateNodeData(e){this.context.model.updateNodeData(B(e)?e(this.getNodeData()):e)}updateEdgeData(e){this.context.model.updateEdgeData(B(e)?e(this.getEdgeData()):e)}updateComboData(e){this.context.model.updateComboData(B(e)?e(this.getComboData()):e)}removeData(e){this.context.model.removeData(B(e)?e(this.getData()):e)}removeNodeData(e){this.context.model.removeNodeData(B(e)?e(this.getNodeData()):e)}removeEdgeData(e){this.context.model.removeEdgeData(B(e)?e(this.getEdgeData()):e)}removeComboData(e){this.context.model.removeComboData(B(e)?e(this.getComboData()):e)}getElementType(e){return this.context.model.getElementType(e)}getRelatedEdgesData(e,t=`both`){return this.context.model.getRelatedEdgesData(e,t)}getNeighborNodesData(e){return this.context.model.getNeighborNodesData(e)}getAncestorsData(e,t){return this.context.model.getAncestorsData(e,t)}getParentData(e,t){return this.context.model.getParentData(e,t)}getChildrenData(e){return this.context.model.getChildrenData(e)}getDescendantsData(e){return this.context.model.getDescendantsData(e)}getElementDataByState(e,t){return this.context.model.getElementDataByState(e,t)}initCanvas(){return Z5(this,void 0,void 0,function*(){if(this.context.canvas)return yield this.context.canvas.ready;let{container:e=`container`,width:t,height:n,renderer:r,cursor:i,background:a,canvas:o,devicePixelRatio:s=globalThis.devicePixelRatio??1}=this.options;if(e instanceof d5)this.context.canvas=e,i&&e.setCursor(i),r&&e.setRenderer(r),yield e.ready;else{let c=Pi(e)?document.getElementById(e):e,l=g5(c);this.emit(Z.BEFORE_CANVAS_INIT,{container:c,width:t,height:n});let u=new d5(Object.assign(Object.assign({},o),{container:c,width:t||l[0],height:n||l[1],background:a,renderer:r,cursor:i,devicePixelRatio:s}));this.context.canvas=u,yield u.ready,this.emit(Z.AFTER_CANVAS_INIT,{canvas:u})}})}updateCanvas(e){let{renderer:t,cursor:n,height:r,width:i}=e,a=this.context.canvas;a&&(t&&(this.emit(Z.BEFORE_RENDERER_CHANGE,{renderer:this.options.renderer}),a.setRenderer(t),this.emit(Z.AFTER_RENDERER_CHANGE,{renderer:t})),n&&a.setCursor(n),(zi(i)||zi(r))&&this.setSize(i??this.options.width??0,r??this.options.height??0))}initRuntime(){this.context.options=this.options,this.context.batch||(this.context.batch=new j5(this.context)),this.context.plugin||(this.context.plugin=new K5(this.context)),this.context.viewport||(this.context.viewport=new X5(this.context)),this.context.transform||(this.context.transform=new J5(this.context)),this.context.element||(this.context.element=new z5(this.context)),this.context.animation||(this.context.animation=new A5(this.context)),this.context.layout||(this.context.layout=new H5(this.context)),this.context.behavior||(this.context.behavior=new M5(this.context))}prepare(){return Z5(this,void 0,void 0,function*(){if(yield Promise.resolve(),this.destroyed){console.error(s_(`The graph instance has been destroyed`));return}yield this.initCanvas(),this.initRuntime()})}render(){return Z5(this,void 0,void 0,function*(){if(yield this.prepare(),S5(this,new v5(Z.BEFORE_RENDER)),!this.options.layout){let e=this.context.element.draw({type:`render`});yield Promise.all([e?.finished,this.autoFit()])}else if(!this.rendered&&Ow(this.options.layout)){let e=yield this.context.element.preLayoutDraw({type:`render`});yield Promise.all([e?.finished,this.autoFit()])}else{let e=this.context.element.draw({type:`render`});yield Promise.all([e?.finished,this.context.layout.postLayout()]),yield this.autoFit()}this.rendered=!0,S5(this,new v5(Z.AFTER_RENDER))})}draw(){return Z5(this,void 0,void 0,function*(){yield this.prepare(),yield this.context.element.draw()?.finished})}layout(e){return Z5(this,void 0,void 0,function*(){yield this.context.layout.postLayout(e)})}stopLayout(){this.context.layout.stopLayout()}clear(){return Z5(this,void 0,void 0,function*(){let{model:e,element:t}=this.context;e.setData({}),e.clearChanges(),t?.clear()})}destroy(){var e;S5(this,new v5(Z.BEFORE_DESTROY));let{layout:t,animation:n,element:r,model:i,canvas:a,behavior:o,plugin:s}=this.context;s?.destroy(),o?.destroy(),t?.destroy(),n?.destroy(),r?.destroy(),i.destroy(),a?.destroy(),this.options={},this.context={},this.off(),(e=globalThis.removeEventListener)==null||e.call(globalThis,`resize`,this.onResize),this.destroyed=!0,S5(this,new v5(Z.AFTER_DESTROY))}getCanvas(){return this.context.canvas}resize(e,t){let n=g5(this.context.canvas?.getContainer()),r=[e||n[0],t||n[1]];this.context.canvas&&(_a(r,this.context.canvas.getSize())||(S5(this,new v5(Z.BEFORE_SIZE_CHANGE,{size:r})),this.context.canvas.resize(...r),S5(this,new v5(Z.AFTER_SIZE_CHANGE,{size:r}))))}fitView(e,t){return Z5(this,void 0,void 0,function*(){yield this.context.viewport?.fitView(e,t)})}fitCenter(e){return Z5(this,void 0,void 0,function*(){yield this.context.viewport?.fitCenter({animation:e})})}autoFit(){return Z5(this,void 0,void 0,function*(){let{autoFit:e}=this.context.options;if(e)if(Pi(e))e===`view`?yield this.fitView():e===`center`&&(yield this.fitCenter());else{let{type:t,animation:n}=e;t===`view`?yield this.fitView(e.options,n):t===`center`&&(yield this.fitCenter(n))}})}focusElement(e,t){return Z5(this,void 0,void 0,function*(){yield this.context.viewport?.focusElements(Array.isArray(e)?e:[e],{animation:t})})}zoomBy(e,t,n){return Z5(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:`relative`,scale:e,origin:n},t)})}zoomTo(e,t,n){return Z5(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:`absolute`,scale:e,origin:n},t)})}getZoom(){return this.context.viewport.getZoom()}rotateBy(e,t,n){return Z5(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:`relative`,rotate:e,origin:n},t)})}rotateTo(e,t,n){return Z5(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:`absolute`,rotate:e,origin:n},t)})}getRotation(){return this.context.viewport.getRotation()}translateBy(e,t){return Z5(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:`relative`,translate:e},t)})}translateTo(e,t){return Z5(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:`absolute`,translate:e},t)})}getPosition(){return Yv([0,0],this.getCanvasByViewport([0,0]))}translateElementBy(e,t){return Z5(this,arguments,void 0,function*(e,t,n=!0){let[r,i]=wi(e)?[e,t??!0]:[{[e]:t},n];Object.entries(r).forEach(([e,t])=>this.context.model.translateNodeLikeBy(e,t)),yield this.context.element.draw({animation:i,stage:`translate`})?.finished})}translateElementTo(e,t){return Z5(this,arguments,void 0,function*(e,t,n=!0){let[r,i]=wi(e)?[e,t??!0]:[{[e]:t},n];Object.entries(r).forEach(([e,t])=>this.context.model.translateNodeLikeTo(e,t)),yield this.context.element.draw({animation:i,stage:`translate`})?.finished})}getElementPosition(e){return this.context.model.getElementPosition(e)}getElementRenderStyle(e){return Sa(this.context.element.getElement(e).attributes,[`context`])}setElementVisibility(e,t){return Z5(this,arguments,void 0,function*(e,t,n=!0){let[r,i]=wi(e)?[e,t??!0]:[{[e]:t},n],a={nodes:[],edges:[],combos:[]};Object.entries(r).forEach(([e,t])=>{a[`${this.getElementType(e)}s`].push({id:e,style:{visibility:t}})});let{model:o,element:s}=this.context;o.preventUpdateNodeLikeHierarchy(()=>{o.updateData(a)}),yield s.draw({animation:i,stage:`visibility`})?.finished})}showElement(e,t){return Z5(this,void 0,void 0,function*(){let n=Array.isArray(e)?e:[e];yield this.setElementVisibility(Object.fromEntries(n.map(e=>[e,`visible`])),t)})}hideElement(e,t){return Z5(this,void 0,void 0,function*(){let n=Array.isArray(e)?e:[e];yield this.setElementVisibility(Object.fromEntries(n.map(e=>[e,`hidden`])),t)})}getElementVisibility(e){return this.context.element.getElement(e)?.style?.visibility??`visible`}setElementZIndex(e,t){return Z5(this,void 0,void 0,function*(){let n={nodes:[],edges:[],combos:[]},r=wi(e)?e:{[e]:t};Object.entries(r).forEach(([e,t])=>{n[`${this.getElementType(e)}s`].push({id:e,style:{zIndex:t}})});let{model:i,element:a}=this.context;i.preventUpdateNodeLikeHierarchy(()=>i.updateData(n)),yield a.draw({animation:!1,stage:`zIndex`})?.finished})}frontElement(e){return Z5(this,void 0,void 0,function*(){let t=Array.isArray(e)?e:[e],{model:n}=this.context,r={};t.map(e=>{let t=n.getFrontZIndex(e);if(n.getElementType(e)===`combo`){let i=n.getAncestorsData(e,`combo`).at(-1)||this.getComboData(e),a=[i,...n.getDescendantsData(Q(i))],o=t-w5(i);a.forEach(e=>{r[Q(e)]=this.getElementZIndex(Q(e))+o});let{internal:s}=qS(a.map(Q),e=>n.getRelatedEdgesData(e));s.forEach(e=>{let t=Q(e);r[t]=this.getElementZIndex(t)+o})}else r[e]=t}),yield this.setElementZIndex(r)})}getElementZIndex(e){return w5(this.context.model.getElementDataById(e))}setElementState(e,t){return Z5(this,arguments,void 0,function*(e,t,n=!0){let[r,i]=wi(e)?[e,t??!0]:[{[e]:t},n],a=e=>e?Array.isArray(e)?e:[e]:[],o={nodes:[],edges:[],combos:[]};Object.entries(r).forEach(([e,t])=>{o[`${this.getElementType(e)}s`].push({id:e,states:a(t)})}),this.updateData(o),yield this.context.element.draw({animation:i,stage:`state`})?.finished})}getElementState(e){return this.context.model.getElementState(e)}getElementRenderBounds(e){return this.context.element.getElement(e).getRenderBounds()}collapseElement(e){return Z5(this,arguments,void 0,function*(e,t=!0){let{model:n,element:r}=this.context;if(eb(n.getNodeLikeData([e])[0])||this.isCollapsingExpanding)return;typeof t==`boolean`&&(t={animation:t,align:!1});let i=n.getElementType(e);yield this.frontElement(e),this.isCollapsingExpanding=!0,n.updateData(i===`node`?{nodes:[{id:e,style:{collapsed:!0}}]}:{combos:[{id:e,style:{collapsed:!0}}]}),i===`node`?yield r.collapseNode(e,t):i===`combo`&&(yield r.collapseCombo(e,!!t.animation)),this.isCollapsingExpanding=!1})}expandElement(e){return Z5(this,arguments,void 0,function*(e,t=!0){let{model:n,element:r}=this.context;if(!eb(n.getNodeLikeData([e])[0])||this.isCollapsingExpanding)return;typeof t==`boolean`&&(t={animation:t,align:!1});let i=n.getElementType(e);this.isCollapsingExpanding=!0,n.updateData(i===`node`?{nodes:[{id:e,style:{collapsed:!1}}]}:{combos:[{id:e,style:{collapsed:!1}}]}),i===`node`?yield r.expandNode(e,t):i===`combo`&&(yield r.expandCombo(e,!!t.animation)),this.isCollapsingExpanding=!1})}setElementCollapsibility(e,t){let n=this.getElementType(e);n===`node`?this.updateNodeData([{id:e,style:{collapsed:t}}]):n===`combo`&&this.updateComboData([{id:e,style:{collapsed:t}}])}toDataURL(){return Z5(this,arguments,void 0,function*(e={}){return this.context.canvas.toDataURL(e)})}getCanvasByViewport(e){return this.context.canvas.getCanvasByViewport(e)}getViewportByCanvas(e){return this.context.canvas.getViewportByCanvas(e)}getClientByCanvas(e){return this.context.canvas.getClientByCanvas(e)}getCanvasByClient(e){return this.context.canvas.getCanvasByClient(e)}getViewportCenter(){return this.context.viewport.getViewportCenter()}getCanvasCenter(){return this.context.viewport.getCanvasCenter()}on(e,t,n){return super.on(e,t,n)}once(e,t){return super.once(e,t)}off(e,t){return super.off(e,t)}};Q5.defaultOptions={autoResize:!1,theme:`light`,rotation:0,zoom:1,zoomRange:[.01,10]};var $5=class extends X8{beforeDraw(e){let{add:t,update:n}=e,{model:r}=this.context;return[...t.edges.entries(),...n.edges.entries()].forEach(([,e])=>{e7(r,e)}),e}},e7=(e,t)=>{let{source:n,target:r}=t,i=e.getElementDataById(n),a=e.getElementDataById(r),o=JS(i,t=>e.getParentData(t,e_)),s=JS(a,t=>e.getParentData(t,e_)),c={sourceNode:Q(o),targetNode:Q(s)};return t.style?Object.assign(t.style,c):t.style=c,t},t7=(e,t,n)=>{let[r,i]=t,[a,o]=n;return i===r?a:a+(e-r)/(i-r)*(o-a)},n7=(e,t,n)=>{let[r,i]=t,[a,o]=n;return a+Math.log(e-r+1)/Math.log(i-r+1)*(o-a)},r7=(e,t,n,r=2)=>{let[i,a]=t,[o,s]=n;return o+((e-i)/(a-i))**+r*(s-o)},i7=(e,t,n)=>{let[r,i]=t,[a,o]=n;return a+Math.sqrt((e-r)/(i-r))*(o-a)},a7=class e extends X8{constructor(t,n){super(t,ma({},e.defaultOptions,n)),this.assignSizeByCentrality=(e,t,n,r,i,a)=>{let o=[t,n],s=[r[0],i[0]],c=[r[1],i[1]],l=[r[2],i[2]],u=(e,t)=>{if(typeof a==`function`)return a(e,o,t);switch(a){case`linear`:return t7(e,o,t);case`log`:return n7(e,o,t);case`pow`:return r7(e,o,t,2);case`sqrt`:return i7(e,o,t);default:return t[0]}};return[u(e,s),u(e,c),u(e,l)]}}beforeDraw(e){let{model:t}=this.context,n=t.getNodeData(),r=sb(this.options.maxSize),i=sb(this.options.minSize),a=this.getCentralities(this.options.centrality),o=a.size>0?Math.max(...a.values()):0,s=a.size>0?Math.min(...a.values()):0;return n.forEach(t=>{let n=this.assignSizeByCentrality(a.get(Q(t))||0,s,o,i,r,this.options.scale),c=this.context.element?.getElement(Q(t)),l={size:n};this.assignLabelStyle(l,n,t,c),(!c||!$8(l,c.attributes))&&Q8(e,c?`update`:`add`,`node`,ma(t,{style:l}),!0)}),e}assignLabelStyle(e,t,n,r){let i=r?r.config.style:this.context.element?.getElementComputedStyle(`node`,n);if(Object.assign(e,xa(i,[`labelFontSize`,`labelLineHeight`])),this.options.mapLabelSize){let n=this.getLabelSizeByNodeSize(t,1/0,Number(e.labelFontSize));Object.assign(e,{labelFontSize:n,labelLineHeight:n+N_(e.labelPadding)})}return e}getLabelSizeByNodeSize(e,t,n){let r=Math.min(...e)/2,[i,a]=Array.isArray(this.options.mapLabelSize)?this.options.mapLabelSize:[n,t];return Math.min(a,Math.max(r,i))}getCentralities(e){let{model:t}=this.context,n=t.getData();return typeof e==`function`?e(n):jv(n,t.getRelatedEdgesData.bind(t),e)}};a7.defaultOptions={centrality:{type:`degree`},maxSize:80,minSize:20,scale:`linear`,mapLabelSize:!1};var o7=class e extends X8{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n))}get ref(){return this.context.model.getRootsData()[0]}afterLayout(){var e;let t=my(this.ref),{graph:n,model:r}=this.context;(e=r.getData().nodes)==null||e.forEach(e=>{if(Q(e)===Q(this.ref))return;let i=ly(Yv(my(e),t)),a=Math.abs(i)>Math.PI/2,o=!e.children||e.children.length===0,s=Q(e),c=this.context.element?.getElement(s);if(!c||!c.isVisible())return;let l=sb(n.getElementRenderStyle(s).size)[0]/2,u=(o?1:-1)*(l+this.options.offset),d=[[`translate`,u*Math.cos(i),u*Math.sin(i)],[`rotate`,a?Gs(i)+180:Gs(i)]];r.updateNodeData([{id:Q(e),style:{labelTextAlign:a===o?`right`:`left`,labelTextBaseline:`middle`,labelTransform:d}}])}),n.draw()}};o7.defaultOptions={offset:5};var s7=`quadratic`,c7=[`top`,`top-right`,`right`,`right-bottom`,`bottom`,`bottom-left`,`left`,`left-top`],l7=class e extends X8{constructor(t,n){super(t,Object.assign({},e.defaultOptions,n)),this.cacheMergeStyle=new Map,this.getAffectedParallelEdges=e=>{let{add:{edges:t},update:{nodes:n,edges:r,combos:i},remove:{edges:a}}=e,{model:o}=this.context,s=new Map,c=(e,t)=>{o.getRelatedEdgesData(t).forEach(e=>!s.has(Q(e))&&s.set(Q(e),e))};n.forEach(c),i.forEach(c);let l=t=>{let n=new Set(e.remove.edges.keys());d7(t,o.getEdgeData().filter(e=>!n.has(Q(e))).map(e=>e7(o,e)),!0).forEach(e=>{let t=Q(e);s.has(t)||s.set(t,e)})};if(a.size&&a.forEach(l),t.size&&t.forEach(l),r.size){let e=FQ(PQ(o.getChanges())).update.edges;r.forEach(t=>{l(t);let n=e.find(e=>Q(e.value)===Q(t))?.original;n&&!f7(t,n)&&l(n)})}ga(this.options.edges)||s.forEach((e,t)=>!this.options.edges.includes(t)&&s.delete(t));let u=o.getEdgeData().map(Q);return new Map([...s].sort((e,t)=>u.indexOf(e[0])-u.indexOf(t[0])))},this.applyBundlingStyle=(e,t,n)=>{let{edgeMap:r,reverses:i}=u7(t);r.forEach(t=>{t.forEach((t,r,a)=>{let o=a.length,s=t.style||{};if(t.source===t.target){let e=c7.length;s.loopPlacement=c7[r%e],s.loopDist=Math.floor(r/e)*n+50}else if(o===1)s.curveOffset=0;else{let e=(r%2==0?1:-1)*(i[`${t.source}|${t.target}|${r}`]?-1:1);s.curveOffset=o%2==1?e*Math.ceil(r/2)*n*2:e*(Math.floor(r/2)*n*2+n)}let c=Object.assign(t,{type:s7,style:s}),l=this.context.element?.getElement(Q(t));(!l||!$8(c.style,l.attributes))&&Q8(e,l?`update`:`add`,`edge`,c,!0)})})},this.resetEdgeStyle=e=>{let t=e.style||{},n=this.cacheMergeStyle.get(Q(e))||{};return Object.keys(n).forEach(r=>{_a(t[r],n[r])&&(e[r]?t[r]=e[r]:delete t[r])}),Object.assign(e,{style:t})},this.applyMergingStyle=(e,t)=>{let{edgeMap:n,reverses:r}=u7(t);n.forEach(t=>{if(t.length===1){let n=t[0],r=this.context.element?.getElement(Q(n)),i=this.resetEdgeStyle(n);(!r||!$8(i,r.attributes))&&Q8(e,r?`update`:`add`,`edge`,i);return}let n=t.map(({source:e,target:t,style:n={}},i)=>{let{startArrow:a,endArrow:o}=n,s={},[c,l]=r[`${e}|${t}|${i}`]?[`endArrow`,`startArrow`]:[`startArrow`,`endArrow`];return Zi(a)&&(s[c]=a),Zi(o)&&(s[l]=o),s}).reduce((e,t)=>Object.assign(Object.assign({},e),t),{});t.forEach((t,r,i)=>{if(r!==0){Q8(e,`remove`,`edge`,t);return}let a=Object.assign({},B(this.options.style)?this.options.style(i):this.options.style,{childrenData:i});this.cacheMergeStyle.set(Q(t),a);let o=Object.assign(Object.assign({},t),{type:`line`,style:Object.assign(Object.assign(Object.assign({},t.style),n),a)}),s=this.context.element?.getElement(Q(t));(!s||!$8(o.style,s.attributes))&&Q8(e,s?`update`:`add`,`edge`,o,!0)})})}}beforeDraw(e){let t=this.getAffectedParallelEdges(e);return t.size===0||(this.options.mode===`bundle`?this.applyBundlingStyle(e,t,this.options.distance):this.applyMergingStyle(e,t)),e}};l7.defaultOptions={mode:`bundle`,distance:15};var u7=e=>{let t=new Map,n=new Set,r={},i=new Map;for(let[a,o]of e){if(n.has(a))continue;let{source:s,target:c}=o,l=`${s}-${c}`;t.has(l)||(t.set(l,[]),i.set(l,new Set));let u=t.get(l),d=i.get(l);u&&d&&!d.has(a)&&(u.push(o),d.add(a),n.add(a));for(let[u,d]of e)if(!(n.has(u)||u===a)&&f7(o,d)){let e=t.get(l),a=i.get(l);e&&a&&!a.has(u)&&(e.push(d),a.add(u),s===d.target&&c===d.source&&(r[`${d.source}|${d.target}|${e.length-1}`]=!0),n.add(u))}}return{edgeMap:t,reverses:r}},d7=(e,t,n)=>t.filter(t=>(n||Q(t)!==Q(e))&&f7(t,e)),f7=(e,t)=>{let{sourceNode:n,targetNode:r}=e.style||{},{sourceNode:i,targetNode:a}=t.style||{};return n===i&&r===a||n===a&&r===i},p7={animation:{"combo-collapse":T_,"combo-expand":E_,"node-collapse":x_,"node-expand":S_,"path-in":C_,"path-out":w_,fade:y_,translate:b_},behavior:{"brush-select":Uy,"click-select":$y,"collapse-expand":nw,"create-edge":fw,"drag-canvas":mw,"drag-element-force":Iw,"drag-element":gw,"fix-element-size":Rw,"focus-element":Bw,"hover-activate":Vw,"lasso-select":Hw,"auto-adapt-label":Gv,"optimize-viewport-transform":Uw,"scroll-canvas":Gw,"zoom-canvas":qw},combo:{circle:_S,rect:vS},edge:{cubic:oC,line:uC,polyline:wC,quadratic:TC,"cubic-horizontal":sC,"cubic-radial":cC,"cubic-vertical":lC},layout:{"antv-dagre":Pk,"combo-combined":BX,"compact-box":mT,"d3-force":Sj,"force-atlas2":zY,circular:Wk,concentric:Kk,dagre:oY,dendrogram:xT,fishbone:UX,force:NY,fruchterman:UY,grid:GY,indented:DT,mds:bX,mindmap:PT,radial:kX,random:PX,snake:JX},node:{circle:Gb,diamond:qb,ellipse:ex,hexagon:tx,html:lS,image:dS,rect:fS,star:pS,donut:Yb,triangle:mS},palette:{spectral:XX,tableau:ZX,oranges:QX,greens:$X,blues:eZ},theme:{dark:J8,light:Y8},plugin:{"bubble-sets":lQ,"edge-bundling":gQ,"edge-filter-lens":EQ,"grid-line":NQ,background:aZ,contextmenu:hQ,fisheye:AQ,fullscreen:jQ,history:RQ,hull:P$,legend:i8,minimap:a8,snapline:u8,timebar:g8,title:D8,toolbar:N8,tooltip:F8,watermark:U8},transform:{"arrange-draw-order":Z8,"collapse-expand-combo":e5,"collapse-expand-node":n5,"get-edge-actual-ends":$5,"map-node-size":a7,"place-radial-labels":o7,"process-parallel-edges":l7,"update-related-edges":class extends X8{beforeDraw(e,t){let{stage:n}=t;if(n===`visibility`)return e;let{model:r}=this.context,{update:{nodes:i,edges:a,combos:o}}=e,s=(e,t)=>{r.getRelatedEdgesData(t).forEach(e=>!a.has(Q(e))&&a.set(Q(e),e))};return i.forEach(s),o.forEach(s),e}}},shape:{circle:em,ellipse:rm,group:am,html:sm,image:Fb,line:um,path:fm,polygon:mm,polyline:gm,rect:_m,text:ym,label:Cb,badge:wb}};function m7(){Object.entries(p7).forEach(([e,t])=>{Object.entries(t).forEach(([t,n])=>{r5(e,t,n)})})}m7();var h7={width:1200,height:720},g7=[116,180,132,132],_7=`__focus__:`;function v7(){let e=Ie(null),[t,n]=F(h7);return Fe(()=>{let t=e.current;if(!t)return;let r=new ResizeObserver(e=>{let t=e[0];t&&n({width:t.contentRect.width||h7.width,height:t.contentRect.height||h7.height})});return r.observe(t),()=>r.disconnect()},[]),[e,t]}function y7(e){return`${e.source}->${e.target}:${e.edgeType}`}function b7(e){return Math.max(8,Math.min(18,8+e.degree*1.35))}function x7(e,t){if(t<=14)return!0;if(e.orphan)return t<=20;let n=t>40?8:t>25?6:4;return e.degree>=n}function S7(e){let t=e.toLowerCase();return t.includes(`source`)?`rgba(104, 168, 255, 0.28)`:t.includes(`valid`)||t.includes(`support`)?`rgba(88, 214, 167, 0.24)`:t.includes(`counter`)||t.includes(`prereq`)?`rgba(255, 122, 122, 0.24)`:`rgba(214, 226, 255, 0.16)`}function C7(e){let t=e.toLowerCase();if(t.includes(`source`))return[4,8];if(t.includes(`counter`))return[8,8]}function w7(e){return`${Math.round(e*100)}%`}function T7(e,t){return!e||!t||t.nodes.some(t=>t.id===e.id)?null:{...e,nodeKey:`${_7}${e.id}`,degree:0,orphan:!1,detached:!0}}function E7(e){let{graph:t,detachedNode:n}=e,r=t.nodes.map(e=>{let n=Bt(e.pageType),r=x7(e,t.nodes.length);return{id:e.nodeKey,data:{pageId:e.id,pageType:e.pageType,title:e.title,status:e.status,nodeKey:e.nodeKey,degree:e.degree,detached:!1},style:{size:b7(e),fill:n,stroke:`#eff4ff`,lineWidth:1.1,fillOpacity:.9,shadowColor:n,shadowBlur:18,shadowOpacity:.32,halo:!0,haloStroke:n,haloLineWidth:Math.max(12,b7(e)*1.85),haloStrokeOpacity:.18,label:r,labelText:r?e.title:``,labelFill:`rgba(238, 243, 255, 0.76)`,labelFontFamily:`JetBrains Mono`,labelFontSize:r?11:10,labelPlacement:`right`,labelOffsetX:12,labelOffsetY:1}}});if(n){let e=Bt(n.pageType);r.push({id:n.nodeKey,data:{pageId:n.id,pageType:n.pageType,title:n.title,status:n.status,nodeKey:n.nodeKey,degree:0,detached:!0},style:{size:18,fill:e,stroke:`#f8fbff`,lineWidth:1.6,fillOpacity:.96,shadowColor:e,shadowBlur:24,shadowOpacity:.48,halo:!0,haloStroke:e,haloLineWidth:32,haloStrokeOpacity:.38,label:!0,labelText:n.title,labelFill:`rgba(246, 250, 255, 0.92)`,labelFontFamily:`JetBrains Mono`,labelFontSize:11,labelPlacement:`right`,labelOffsetX:14,labelOffsetY:2}})}return{nodes:r,edges:t.edges.map(e=>({id:y7(e),source:e.source,target:e.target,data:{edgeType:e.edgeType},style:{stroke:S7(e.edgeType),strokeOpacity:.14,lineWidth:.8,lineDash:C7(e.edgeType),halo:!1,haloStroke:S7(e.edgeType),haloLineWidth:8,haloStrokeOpacity:.06,endArrow:!1}}))}}function D7(e){let{graph:t,selectedNodeKey:n,hoveredNodeKey:r,detachedNodeKey:i}=e,a={};if(n){let e=new Set([n]),r=new Set;for(let i of t.edges){let t=y7(i);(i.source===n||i.target===n)&&(e.add(i.source),e.add(i.target),r.add(t)),a[t]=r.has(t)?[`highlight`]:[`inactive`]}for(let r of t.nodes)r.nodeKey===n?a[r.nodeKey]=[`selected`]:e.has(r.nodeKey)?a[r.nodeKey]=[`highlight`]:a[r.nodeKey]=[`inactive`];return i&&(a[i]=i===n?[`selected`]:[`inactive`]),a}for(let e of t.edges)a[y7(e)]=[];for(let e of t.nodes)a[e.nodeKey]=r&&e.nodeKey===r?[`hover`]:[];return i&&(a[i]=r&&i===r?[`hover`]:[]),a}async function O7(e,t){e.getZoom()<1.08&&await e.zoomTo(1.12,{duration:420,easing:`ease-in-out`},e.getCanvasCenter()),await e.focusElement(t,{duration:760,easing:`ease-in-out`})}function k7(e){let[t,n]=v7(),r=Ie(null),i=Ie(null),a=Ie(null),o=Ie(e.onSelectPage),s=Ie(null),c=Ie(0),l=Ie(null),u=Ie(null),d=Ie(null),f=Ie(e.resetViewToken),[p,m]=F(null),[h,g]=F(1),[_,v]=F(null);o.current=e.onSelectPage;let y=Le(()=>T7(e.focusedPage,e.graph),[e.focusedPage,e.graph]),b=Le(()=>{if(!e.selectedPageId)return null;let t=e.graph?.nodes.find(t=>t.id===e.selectedPageId);return t?t.nodeKey:y?.id===e.selectedPageId?y.nodeKey:null},[y,e.graph,e.selectedPageId]);l.current=b,u.current=p;let x=Le(()=>{let t=b??p;return t?y?.nodeKey===t?y:e.graph?.nodes.find(e=>e.nodeKey===t)??null:null},[y,p,e.graph,b]),S=Le(()=>{let t=new Map;for(let n of e.graph?.nodes??[])t.set(n.pageType,(t.get(n.pageType)??0)+1);return[...t.entries()].sort((e,t)=>t[1]-e[1]).slice(0,5)},[e.graph]),C=!!(y&&e.selectedPageId===y.id);function w(){let e=a.current,t=b??p;if(e){try{g(e.getZoom())}catch{return}if(!t){v(null);return}try{let r=e.getNodeData(t);if(typeof r?.style?.x!=`number`||typeof r.style.y!=`number`){v(null);return}let[i,a]=e.getViewportByCanvas([r.style.x,r.style.y]);v({left:`${at(i/n.width*100-4,18,72)}%`,top:`${at(a/n.height*100+6,20,78)}%`})}catch{v(null)}}}function T(e){let t=a.current;t&&t.fitView({when:`always`},e?{duration:660,easing:`ease-in-out`}:!1).then(()=>{w()})}if(Fe(()=>()=>{a.current?.destroy(),a.current=null},[]),Fe(()=>{if(!e.graph||!r.current||!i.current||n.width<40||n.height<40)return;let t=`${e.graph.nodes.map(e=>e.nodeKey).join(`|`)}::${e.graph.edges.length}::${!!y}`,c=E7({graph:e.graph,detachedNode:y}),f=!1;async function p(){let p=a.current;if(p?(p.resize(n.width,n.height),p.setData(c),await p.render()):(p=new Q5({container:r.current,width:n.width,height:n.height,zoomRange:[.48,2.6],padding:g7,animation:!0,data:c,layout:{type:`d3-force`,link:{distance:100,strength:.3},manyBody:{strength:-120},collide:{radius:24,strength:.8},center:{x:n.width/2,y:n.height/2,strength:.05}},node:{type:`circle`,state:{selected:{stroke:`#f8fbff`,lineWidth:2.2,fillOpacity:1,shadowBlur:28,halo:!0,haloLineWidth:38,haloStrokeOpacity:.62},highlight:{stroke:`#dce8ff`,lineWidth:1.4,halo:!0,haloLineWidth:22,haloStrokeOpacity:.28},hover:{stroke:`#ffffff`,lineWidth:1.6,halo:!0,haloLineWidth:24,haloStrokeOpacity:.36},inactive:{fillOpacity:.08,strokeOpacity:.06,shadowBlur:0,haloStrokeOpacity:0,labelFill:`rgba(238, 243, 255, 0.12)`}}},edge:{type:`quadratic`,state:{highlight:{strokeOpacity:.72,lineWidth:1.4,halo:!0,haloLineWidth:12,haloStrokeOpacity:.14},inactive:{strokeOpacity:.02,lineWidth:.4}}},behaviors:[{type:`drag-canvas`,key:`drag-canvas`},{type:`zoom-canvas`,key:`zoom-canvas`,sensitivity:1.08},{type:`drag-element-force`,key:`drag-element-force`},{type:`focus-element`,key:`focus-element`,animation:{duration:760,easing:`ease-in-out`}}],plugins:[{key:`stage-minimap`,type:`minimap`,container:i.current,size:[164,96],padding:10,maskStyle:{border:`1px solid rgba(124, 182, 255, 0.46)`,background:`rgba(104, 168, 255, 0.08)`}}]}),p.on($g.CLICK,e=>{let t=String(e.target?.id??``);if(!t)return;let n=(p?.getNodeData(t))?.data?.pageId;n&&o.current(n)}),p.on($g.POINTER_OVER,e=>{let t=String(e.target?.id??``);u.current=t,m(t)}),p.on($g.POINTER_OUT,()=>{u.current=null,m(null)}),p.on(Z.AFTER_TRANSFORM,()=>{w()}),p.on(Z.AFTER_RENDER,()=>{w()}),a.current=p,await p.render()),f)return;let h=D7({graph:e.graph,selectedNodeKey:l.current,hoveredNodeKey:u.current,detachedNodeKey:y?.nodeKey??null});await p.setElementState(h,!1),l.current&&s.current!==l.current?(s.current=l.current,await O7(p,l.current)):d.current===t?w():(d.current=t,T(!1))}return p(),()=>{f=!0}},[y,e.graph,n]),Fe(()=>{if(!e.graph||!a.current?.rendered)return;let t=D7({graph:e.graph,selectedNodeKey:b,hoveredNodeKey:p,detachedNodeKey:y?.nodeKey??null});a.current.setElementState(t,!1).then(()=>{w()})},[y,p,e.graph,b]),Fe(()=>{if(!b||!a.current?.rendered){s.current=null,w();return}if(e.selectionFocusKey===0||c.current===e.selectionFocusKey){w();return}c.current=e.selectionFocusKey,s.current=b,O7(a.current,b).then(()=>{w()})},[e.selectionFocusKey,b]),Fe(()=>{f.current!==e.resetViewToken&&(f.current=e.resetViewToken,T(!0))},[e.resetViewToken]),!e.graph)return I(`section`,{className:`graph-canvas graph-stage`,ref:t,children:I(`div`,{className:`graph-canvas__placeholder graph-stage__placeholder`,children:[I(`strong`,{children:`Loading graph overview…`}),I(`p`,{children:`The daemon is assembling the current full-library overview.`})]})});let E=x?Bt(x.pageType):`var(--accent)`;return I(`section`,{className:`graph-canvas graph-stage`,ref:t,children:[I(`div`,{className:`graph-stage__canvas`,ref:r}),I(`div`,{className:`graph-stage__toolbar`,children:[I(`div`,{className:`graph-stage__toolbar-row`,children:[I(`div`,{className:`graph-stage__tool-group`,children:[I(`button`,{type:`button`,title:`全景`,onClick:()=>T(!0),children:I(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,children:[I(`polyline`,{points:`15 3 21 3 21 9`}),I(`polyline`,{points:`9 21 3 21 3 15`}),I(`line`,{x1:`21`,y1:`3`,x2:`14`,y2:`10`}),I(`line`,{x1:`3`,y1:`21`,x2:`10`,y2:`14`})]})}),I(`button`,{type:`button`,title:`定位选中节点`,disabled:!b,onClick:()=>{!b||!a.current||O7(a.current,b)},children:I(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,children:[I(`circle`,{cx:`12`,cy:`12`,r:`4`}),I(`line`,{x1:`12`,y1:`2`,x2:`12`,y2:`6`}),I(`line`,{x1:`12`,y1:`18`,x2:`12`,y2:`22`}),I(`line`,{x1:`2`,y1:`12`,x2:`6`,y2:`12`}),I(`line`,{x1:`18`,y1:`12`,x2:`22`,y2:`12`})]})}),I(`button`,{type:`button`,title:`重置视图`,onClick:()=>{e.onDeselectPage(),T(!0)},children:I(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,children:[I(`polyline`,{points:`1 4 1 10 7 10`}),I(`path`,{d:`M3.51 15a9 9 0 1 0 2.13-9.36L1 10`})]})})]}),I(`div`,{className:`graph-stage__tool-separator`}),I(`div`,{className:`graph-stage__tool-group`,children:[I(`button`,{type:`button`,title:`缩小`,onClick:()=>{let e=a.current;e&&e.zoomTo(e.getZoom()*.8,{duration:240,easing:`ease-in-out`})},children:I(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,children:I(`line`,{x1:`5`,y1:`12`,x2:`19`,y2:`12`})})}),I(`button`,{type:`button`,className:`graph-stage__zoom-label`,title:`重置为 100%`,onClick:()=>{let e=a.current;e&&e.zoomTo(1,{duration:320,easing:`ease-in-out`})},children:w7(h)}),I(`button`,{type:`button`,title:`放大`,onClick:()=>{let e=a.current;e&&e.zoomTo(e.getZoom()*1.25,{duration:240,easing:`ease-in-out`})},children:I(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`,"stroke-linecap":`round`,"stroke-linejoin":`round`,children:[I(`line`,{x1:`12`,y1:`5`,x2:`12`,y2:`19`}),I(`line`,{x1:`5`,y1:`12`,x2:`19`,y2:`12`})]})})]}),I(`span`,{className:`graph-stage__toolbar-stats shell-meta`,children:[e.graph.truncated?`${e.graph.visibleNodeCount}/${e.graph.totalNodes}`:`${e.graph.visibleNodeCount}`,` nodes · `,e.graph.visibleEdgeCount,` edges`]})]}),e.searchQuery.trim()?I(`div`,{className:`graph-stage__tool-search`,children:[I(`span`,{children:e.searchQuery.trim()}),I(`code`,{children:[e.searchResultCount,` hits`]})]}):null,C&&e.focusedPage?I(`p`,{className:`graph-stage__detached-hint shell-meta`,children:[e.focusedPage.title,` — detached focus node (outside visible slice)`]}):null]}),I(`div`,{className:`graph-stage__legend`,children:[I(`span`,{className:`shell-eyebrow`,children:`Classification`}),I(`div`,{children:S.map(([e,t])=>I(`span`,{children:[I(`i`,{style:{background:Bt(e)}}),e,I(`strong`,{children:t})]},e))})]}),I(`div`,{className:`graph-stage__minimap`,children:[I(`span`,{children:`live map`}),I(`div`,{className:`graph-stage__minimap-host`,ref:i})]}),x&&_?I(`div`,{className:`graph-stage__focus-card`,style:{..._,"--focus-accent":E},children:[I(`strong`,{children:x.title}),I(`span`,{children:x.nodeKey})]}):null,e.loading?I(`span`,{className:`graph-stage__loading-badge shell-meta`,children:`refreshing…`}):null]})}function A7(e){if(e instanceof Ke&&e.bodyText)try{let t=JSON.parse(e.bodyText);if(t.error)return t.error}catch{return e.bodyText}return e instanceof Error?e.message:String(e)}function j7({api:e,graph:t,selectedPageId:n,searchQuery:r,searchResults:i,refreshing:a,bootLoading:o,onSelectPage:s,onDeselectPage:c,onRefresh:l}){let[u,d]=F(null),[f,p]=F(null),[m,h]=F(!1),[g,_]=F(0),[v,y]=F(0),[b,x]=F(!1),[S,C]=F(null);Fe(()=>{let t=!1;if(!n){d(null),p(null);return}return h(!0),Promise.allSettled([e.getPageDetail(n),e.getPageSource(n)]).then(e=>{if(t)return;let[r,i]=e;d(r.status===`fulfilled`?r.value:At(n)),p(i.status===`fulfilled`?i.value:jt(n)),h(!1)}),()=>{t=!0}},[e,n]);let w=!!n,T=u?.page??t?.nodes.find(e=>e.id===n)??i.find(e=>e.id===n)??null;async function E(t){if(n){x(!0);try{let r=await e.openPageSource(n,t);C(`${r.target===`vault`?`Vault source`:`Page source`} opened: ${r.path}`)}catch(e){C(`Open source failed. ${A7(e)}`)}finally{x(!1)}}}return I(ee,{children:[I(`main`,{className:`workspace`,"data-has-detail":w?``:void 0,children:I(k7,{graph:t,selectedPageId:n,selectionFocusKey:g,focusedPage:T,loading:a||o,searchQuery:r,searchResultCount:i.length,resetViewToken:v,onSelectPage:e=>{_(e=>e+1),s(e)},onDeselectPage:c})}),I(Xt,{pageDetail:u,pageSource:f,loading:m,onClose:c,onNavigateToPage:e=>{_(e=>e+1),s(e)},onOpenSource:e=>void E(e),sourceActionPending:b,sourceActionMessage:S})]})}var M7=`wiki-dashboard:inspect-queue-logs`;function N7(e){return e===`error`||e===`pending`||e===`skipped`}function P7(e){return e?e.artifacts?.result?.rawText?e.artifacts.result.rawText:e.artifacts?.prompt?.preview?e.artifacts.prompt.preview:e.artifacts?.queueItem?.rawText?e.artifacts.queueItem.rawText:`No artifact preview.`:`No artifact preview.`}function F7({api:e,onOpenPage:t}){let[n,r]=F(null),[i,a]=F(null),[o,s]=F(null),[c,l]=F(!1),[u,d]=F(``),[f,p]=F(``),[m,h]=F(``),[g,_]=F(null),v=Nt(m,220);Fe(()=>{let t=!1;return e.getQueueSummary().then(e=>{t||r(e)}).catch(()=>{t||r(null)}),()=>{t=!0}},[e]),Fe(()=>{let t=!1;return e.listQueueItems({status:u||void 0,sourceType:f||void 0,query:v.trim()||void 0,limit:180}).then(e=>{t||a(e)}).catch(()=>{t||a(null)}),()=>{t=!0}},[e,v,f,u]),Fe(()=>{let t=!1;if(!g){s(null),l(!1);return}return l(!0),e.getQueueItemDetail(g).then(e=>{t||(s(e),l(!1))}).catch(()=>{t||(s(null),l(!1))}),()=>{t=!0}},[e,g]);let y=Re(async t=>{try{await e.retryQueueItem(t);let[n,i,o]=await Promise.all([e.getQueueSummary(),e.listQueueItems({status:u||void 0,sourceType:f||void 0,query:v.trim()||void 0,limit:180}),e.getQueueItemDetail(t)]);r(n),a(i),s(o)}catch{}},[e,v,f,u]);return I(`div`,{className:`page-content`,children:I(`div`,{className:`page-grid page-grid--queue`,children:[I(`section`,{className:`page-card`,children:[I(`h3`,{children:`Queue Summary`}),n?null:I(`p`,{className:`page-empty`,children:`Queue summary unavailable.`}),n?I(`div`,{className:`page-stack`,children:[I(`div`,{className:`page-counts`,children:Object.entries(n.counts).map(([e,t])=>I(`div`,{children:[I(`small`,{children:e}),I(`strong`,{children:et(t)})]},e))}),I(`div`,{className:`page-section`,children:[I(`h4`,{children:`Filters`}),I(`div`,{className:`filters`,children:[I(`select`,{value:u,onInput:e=>d(e.currentTarget.value),children:[I(`option`,{value:``,children:`all status`}),I(`option`,{value:`pending`,children:`pending`}),I(`option`,{value:`processing`,children:`processing`}),I(`option`,{value:`done`,children:`done`}),I(`option`,{value:`skipped`,children:`skipped`}),I(`option`,{value:`error`,children:`error`})]}),I(`input`,{value:f,placeholder:`source type`,onInput:e=>p(e.currentTarget.value)}),I(`input`,{value:m,placeholder:`file id / decision / result`,onInput:e=>h(e.currentTarget.value)})]})]})]}):null]}),I(`section`,{className:`page-card`,children:[I(`h3`,{children:`Queue Items`}),i?null:I(`p`,{className:`page-empty`,children:`Queue list unavailable.`}),i?I(`div`,{className:`table-wrap`,children:I(`table`,{children:[I(`thead`,{children:I(`tr`,{children:[I(`th`,{children:`file`}),I(`th`,{children:`status`}),I(`th`,{children:`decision`}),I(`th`,{children:`age`}),I(`th`,{})]})}),I(`tbody`,{children:i.items.map(e=>I(`tr`,{children:[I(`td`,{children:e.fileName??e.fileId}),I(`td`,{children:e.status}),I(`td`,{children:e.decision??`n/a`}),I(`td`,{children:nt(e.timing?.queuedAt??null)}),I(`td`,{className:`row-actions`,children:[I(`button`,{type:`button`,onClick:()=>_(e.fileId),children:`detail`}),I(`button`,{type:`button`,onClick:()=>void y(e.fileId),disabled:!N7(e.status),children:`retry`})]})]},e.fileId))})]})}):null]}),I(`section`,{className:`page-card`,children:[I(`h3`,{children:`Queue Item Detail`}),c?I(`p`,{className:`page-empty`,children:`Loading detail…`}):null,!c&&!o?I(`p`,{className:`page-empty`,children:`Select an item to inspect artifacts.`}):null,!c&&o?I(`div`,{className:`page-stack`,children:[I(`p`,{children:I(`strong`,{children:o.item.fileName??o.item.fileId})}),I(`p`,{className:`muted`,children:o.item.errorMessage??`No error message.`}),I(`dl`,{children:[I(`div`,{children:[I(`dt`,{children:`Status`}),I(`dd`,{children:o.item.status})]}),I(`div`,{children:[I(`dt`,{children:`Attempts`}),I(`dd`,{children:et(o.item.attempts??0)})]}),I(`div`,{children:[I(`dt`,{children:`Wait`}),I(`dd`,{children:it(o.item.timing?.waitDurationMs??null)})]}),I(`div`,{children:[I(`dt`,{children:`Process`}),I(`dd`,{children:it(o.item.timing?.processingDurationMs??null)})]}),I(`div`,{children:[I(`dt`,{children:`Result`}),I(`dd`,{children:o.item.resultPageId??`n/a`})]})]}),I(`div`,{className:`detail-card__actions`,children:[I(`button`,{type:`button`,onClick:()=>void y(o.item.fileId),disabled:!N7(o.item.status),children:`retry item`}),I(`button`,{type:`button`,onClick:()=>{window.dispatchEvent(new CustomEvent(M7,{detail:{fileId:o.item.fileId}}))},children:`trace logs`})]}),o.linkedPages?.length?I(`div`,{className:`page-section`,children:[I(`h4`,{children:`Linked Pages`}),I(`div`,{className:`inline-actions`,children:o.linkedPages.map(e=>I(`button`,{type:`button`,className:`row-link`,onClick:()=>t(e.id),children:e.title},e.id))})]}):null,I(`div`,{className:`page-section`,children:[I(`h4`,{children:`Artifact Preview`}),I(`pre`,{children:P7(o)})]})]}):null]})]})})}function I7(e){if(!Array.isArray(e))return[];let t=[];for(let[n,r]of e.entries()){if(!r||typeof r!=`object`)continue;let e=r,i=String(e.id??e.name??`check-${n}`).trim(),a=String(e.severity??e.status??`ok`).trim().toLowerCase(),o=String(e.summary??e.message??``).trim(),s=typeof e.recommendation==`string`&&e.recommendation.trim()?e.recommendation.trim():void 0;t.push({id:i||`check-${n}`,severity:a||`ok`,summary:o||`No detail provided.`,recommendation:s})}return t}function L7(e){return e===`warn`?`warn`:e===`error`?`error`:`ok`}function R7({api:e,status:t}){if(!t)return I(`div`,{className:`page-content`,children:I(`p`,{className:`page-empty`,children:`No system payload yet.`})});let n=I7(t.doctor?.checks);return I(`div`,{className:`page-content`,children:I(`div`,{className:`page-grid page-grid--system`,children:[I(`section`,{className:`page-card`,children:[I(`h3`,{children:`Daemon`}),I(`dl`,{children:[I(`div`,{children:[I(`dt`,{children:`Host`}),I(`dd`,{children:t.daemon.host??`n/a`})]}),I(`div`,{children:[I(`dt`,{children:`Port`}),I(`dd`,{children:t.daemon.port??`n/a`})]}),I(`div`,{children:[I(`dt`,{children:`Task`}),I(`dd`,{children:t.daemon.currentTask??`idle`})]}),I(`div`,{children:[I(`dt`,{children:`Last Result`}),I(`dd`,{children:t.daemon.lastResult??`n/a`})]}),I(`div`,{children:[I(`dt`,{children:`Last Sync`}),I(`dd`,{children:rt(t.lastSyncAt)})]})]})]}),I(`section`,{className:`page-card`,children:[I(`h3`,{children:`Runtime`}),I(`dl`,{children:[I(`div`,{children:[I(`dt`,{children:`Vault Source`}),I(`dd`,{children:t.runtime?.vaultSource??`n/a`})]}),I(`div`,{children:[I(`dt`,{children:`Wiki Path`}),I(`dd`,{children:I(`code`,{children:t.runtime?.wikiPath??`n/a`})})]}),I(`div`,{children:[I(`dt`,{children:`Vault Path`}),I(`dd`,{children:I(`code`,{children:t.runtime?.vaultPath??`n/a`})})]}),I(`div`,{children:[I(`dt`,{children:`DB Path`}),I(`dd`,{children:I(`code`,{children:t.runtime?.dbPath??`n/a`})})]})]})]}),I(`section`,{className:`page-card`,children:[I(`h3`,{children:`Doctor`}),t.doctor?.summary?I(`div`,{className:`page-counts`,children:[I(`div`,{children:[I(`small`,{children:`ok`}),I(`strong`,{children:et(t.doctor.summary.ok)})]}),I(`div`,{children:[I(`small`,{children:`warn`}),I(`strong`,{children:et(t.doctor.summary.warn)})]}),I(`div`,{children:[I(`small`,{children:`error`}),I(`strong`,{children:et(t.doctor.summary.error)})]})]}):null,n.length?I(`ul`,{className:`doctor-list`,children:n.map((e,t)=>I(`li`,{children:[I(`strong`,{children:e.id}),I(`span`,{className:`doctor-severity doctor-severity--${L7(e.severity)}`,children:L7(e.severity)}),I(`p`,{children:e.summary}),e.recommendation?I(`small`,{children:e.recommendation}):null]},`${e.id}-${t}`))}):I(`p`,{className:`page-empty`,children:`No doctor checks reported.`}),t.doctor?.recommendations?.length?I(`div`,{className:`page-section`,children:[I(`h4`,{children:`Recommended Actions`}),I(`ul`,{className:`compact-list`,children:t.doctor.recommendations.slice(0,4).map(e=>I(`li`,{children:e},e))})]}):null]})]})})}function z7({api:e,onOpenPage:t}){let[n,r]=F(null),[i,a]=F(null),[o,s]=F(null),[c,l]=F(``),[u,d]=F(``),[f,p]=F(``),[m,h]=F(null),g=Nt(f,220);Fe(()=>{let t=!1;return e.getVaultSummary().then(e=>{t||r(e)}).catch(()=>{t||r(null)}),()=>{t=!0}},[e]),Fe(()=>{let t=!1;return e.listVaultFiles({query:g.trim()||void 0,sourceType:c||void 0,queueStatus:u||void 0,limit:180}).then(e=>{t||a(e)}).catch(()=>{t||a(null)}),()=>{t=!0}},[e,g,u,c]),Fe(()=>{let t=!1;if(!m){s(null);return}return e.getVaultFileDetail(m).then(e=>{t||s(e)}).catch(()=>{t||s(null)}),()=>{t=!0}},[e,m]);let _=Re(async t=>{try{await e.openVaultFile(t)}catch{}},[e]);return I(`div`,{className:`page-content`,children:I(`div`,{className:`page-grid page-grid--vault`,children:[I(`section`,{className:`page-card`,children:[I(`h3`,{children:`Vault Coverage`}),n?null:I(`p`,{className:`page-empty`,children:`Vault summary unavailable.`}),n?I(`div`,{className:`page-stack`,children:[I(`dl`,{children:[I(`div`,{children:[I(`dt`,{children:`Files`}),I(`dd`,{children:et(n.totalFiles)})]}),I(`div`,{children:[I(`dt`,{children:`Total Bytes`}),I(`dd`,{children:tt(n.totalBytes)})]}),I(`div`,{children:[I(`dt`,{children:`Mapped Pages`}),I(`dd`,{children:et(n.mappedPages)})]}),I(`div`,{children:[I(`dt`,{children:`Not Queued`}),I(`dd`,{children:et(n.coverage.notQueued)})]})]}),I(`div`,{className:`page-section`,children:[I(`h4`,{children:`Filters`}),I(`div`,{className:`filters`,children:[I(`input`,{value:c,placeholder:`source type`,onInput:e=>l(e.currentTarget.value)}),I(`select`,{value:u,onInput:e=>d(e.currentTarget.value),children:[I(`option`,{value:``,children:`all queue states`}),I(`option`,{value:`not-queued`,children:`not-queued`}),I(`option`,{value:`pending`,children:`pending`}),I(`option`,{value:`processing`,children:`processing`}),I(`option`,{value:`done`,children:`done`}),I(`option`,{value:`skipped`,children:`skipped`}),I(`option`,{value:`error`,children:`error`})]}),I(`input`,{value:f,placeholder:`file id / name / cache`,onInput:e=>p(e.currentTarget.value)})]})]})]}):null]}),I(`section`,{className:`page-card`,children:[I(`h3`,{children:`Files`}),i?null:I(`p`,{className:`page-empty`,children:`No vault files loaded.`}),i?I(`div`,{className:`table-wrap`,children:I(`table`,{children:[I(`thead`,{children:I(`tr`,{children:[I(`th`,{children:`name`}),I(`th`,{children:`source`}),I(`th`,{children:`size`}),I(`th`,{children:`queue`}),I(`th`,{children:`pages`}),I(`th`,{children:`cache`})]})}),I(`tbody`,{children:i.items.map(e=>I(`tr`,{children:[I(`td`,{children:I(`button`,{type:`button`,className:`row-link`,onClick:()=>h(e.fileId),children:e.fileName})}),I(`td`,{children:e.sourceType??e.fileExt??`n/a`}),I(`td`,{children:tt(e.fileSize)}),I(`td`,{children:e.queueStatus}),I(`td`,{children:e.generatedPageCount}),I(`td`,{children:e.cacheStatus})]},e.fileId))})]})}):null]}),I(`section`,{className:`page-card`,children:[I(`h3`,{children:`Selected File`}),o?null:I(`p`,{className:`page-empty`,children:`Select a file to inspect preview and local cache paths.`}),o?I(`div`,{className:`page-stack`,children:[I(`p`,{children:I(`strong`,{children:o.file.fileName})}),I(`p`,{className:`muted`,children:o.file.localPath??o.file.filePath}),I(`dl`,{children:[I(`div`,{children:[I(`dt`,{children:`Cache`}),I(`dd`,{children:o.file.cacheStatus})]}),I(`div`,{children:[I(`dt`,{children:`Queue`}),I(`dd`,{children:o.queueItem?.status??`not-queued`})]}),I(`div`,{children:[I(`dt`,{children:`Pages`}),I(`dd`,{children:et(o.relatedPages.length)})]}),I(`div`,{children:[I(`dt`,{children:`Indexed`}),I(`dd`,{children:rt(o.file.indexedAt)})]})]}),o.relatedPages.length?I(`div`,{className:`page-section`,children:[I(`h4`,{children:`Generated Pages`}),I(`div`,{className:`inline-actions`,children:o.relatedPages.map(e=>I(`button`,{type:`button`,className:`row-link`,onClick:()=>t(e.id),children:e.title},e.id))})]}):null,I(`pre`,{children:o.file.preview??`No preview available.`}),I(`div`,{className:`detail-card__actions`,children:I(`button`,{type:`button`,onClick:()=>void _(o.file.fileId),children:`open local file`})})]}):null]})]})})}var B7=`observatory`,V7=new Set([`observatory`,`system`,`queue`,`logs`,`vault`,`lint`]);function H7(){let e=new URLSearchParams(window.location.search),t=e.get(`tab`),n=e.get(`selected`),r=e.get(`q`)??``;return{tab:t&&V7.has(t)?t:B7,selectedPageId:n?.trim()||null,query:r}}function U7(e){let t=new URLSearchParams(window.location.search);e.tab===B7?t.delete(`tab`):t.set(`tab`,e.tab),e.selectedPageId?t.set(`selected`,e.selectedPageId):t.delete(`selected`),e.query.trim()?t.set(`q`,e.query.trim()):t.delete(`q`);let n=t.toString(),r=n?`${window.location.pathname}?${n}${window.location.hash}`:`${window.location.pathname}${window.location.hash}`;window.history.replaceState(null,``,r)}var W7=`tiangong-wiki-dashboard-intro-complete`;function G7(e){if(e instanceof Ke&&e.bodyText)try{let t=JSON.parse(e.bodyText);if(t.error)return t.error}catch{return e.bodyText}return e instanceof Error?e.message:String(e)}function K7(e){if(!e?.nodes.length)return null;let t=e=>e===`source-summary`?3:e===`resume`?2:+(e===`faq`),[n]=[...e.nodes].sort((e,n)=>{let r=t(e.pageType)-t(n.pageType);return r===0?n.degree===e.degree?e.orphan===n.orphan?e.title.localeCompare(n.title):e.orphan?1:-1:n.degree-e.degree:r});return n?.id??null}function q7(){let e=Ie(null),t=Ie(null),n=Ie(!1),r=Ie(null);e.current||=new Xe;let i=e.current,a=Pt(),[o,s]=F(()=>H7()),[c,l]=F(!1),[u,d]=F(!0),[f,p]=F(0),[m,h]=F(!0),[g,_]=F(!1),[v,y]=F(!1),[b,x]=F(null),[S,C]=F(null),[w,T]=F(null),[E,D]=F(null),[O,k]=F(null),A=Nt(o.query,220),j=E?.results??[],ee=o.tab,M=ee===`observatory`&&!!o.selectedPageId;Fe(()=>{let e=()=>{s(H7())};return window.addEventListener(`popstate`,e),()=>{window.removeEventListener(`popstate`,e),t.current!==null&&window.clearTimeout(t.current)}},[]),Fe(()=>{U7(o)},[o]);let te=Le(()=>a?`reduced`:window.sessionStorage.getItem(W7)===`true`&&f===0?`short`:`full`,[f,a]);Fe(()=>{let e=!1;async function t(){h(!0),k(null);let[t,n,r]=await Promise.allSettled([i.getStatus(),i.getGraphOverview(),i.getQueueSummary()]);if(e)return;let a=t.status===`rejected`||n.status===`rejected`||r.status===`rejected`;if(l(a),x(t.status===`fulfilled`?t.value:Tt()),C(n.status===`fulfilled`?n.value:Et()),T(r.status===`fulfilled`?r.value:kt()),a){let e=[t,n,r].find(e=>e.status===`rejected`);e?.status===`rejected`&&k(`Dashboard API unavailable, showing mock fallback. ${G7(e.reason)}`)}h(!1)}return t(),()=>{e=!0}},[i]),Fe(()=>{if(n.current||ee!==`observatory`)return;if(o.selectedPageId){n.current=!0;return}let e=K7(S);e&&(n.current=!0,s(t=>({...t,selectedPageId:e})))},[ee,S,o.selectedPageId]),Fe(()=>{let e=!1;if(!A.trim()){D(null);return}return y(!0),i.searchGraph(A,18).then(t=>{e||(D(t),y(!1))}).catch(()=>{e||(l(!0),D(Dt(A)),y(!1))}),()=>{e=!0}},[i,A]);function ne(e){s(t=>({...t,...e}))}function re(e){ne({tab:`observatory`,selectedPageId:e})}function ie(e){ne(e===`observatory`?{tab:e}:{tab:e,selectedPageId:null})}async function N(){_(!0);try{let[e,t,n]=await Promise.all([i.refreshStatus(),i.getGraphOverview(),i.getQueueSummary()]);x(e),C(t),T(n),l(!1),k(null)}catch(e){l(!0),k(`Refresh failed, retaining current snapshot. ${G7(e)}`)}finally{_(!1)}}return I(vt,{children:I(`div`,{className:`dashboard-root ${M?`has-detail`:``} ${u?`is-intro-active`:``}`,children:[u?I(ht,{graph:S,status:b,mode:te,onComplete:()=>{window.sessionStorage.setItem(W7,`true`),d(!1)}},`${te}-${f}`):null,I(xt,{status:b,graph:S,queue:w,activeTab:ee,searchQuery:o.query,searchResults:j,searchLoading:v,refreshing:g,usingFallback:c,searchInputRef:r,onTabChange:ie,onSearchQueryChange:e=>ne({query:e}),onSelectSearchResult:e=>re(e.id),onRefresh:()=>void N(),onReplayIntro:()=>{t.current!==null&&window.clearTimeout(t.current),d(!1),t.current=window.setTimeout(()=>{p(e=>e+1),d(!0),t.current=null},0)}}),O?I(`div`,{className:`api-warning`,children:O}):null,ee===`observatory`?I(j7,{api:i,graph:S,status:b,selectedPageId:o.selectedPageId,searchQuery:o.query,searchResults:j,searchLoading:v,refreshing:g,bootLoading:m,onSelectPage:e=>ne({selectedPageId:e}),onDeselectPage:()=>ne({selectedPageId:null}),onRefresh:()=>void N()}):null,ee===`system`?I(R7,{api:i,status:b}):null,ee===`queue`?I(F7,{api:i,onOpenPage:re}):null,ee===`logs`?I(Rt,{api:i,usingFallback:c}):null,ee===`vault`?I(z7,{api:i,onOpenPage:re}):null,ee===`lint`?I(It,{api:i,onOpenPage:re}):null]})})}var J7=document.getElementById(`app`);if(!J7)throw Error(`Dashboard root element #app not found.`);ye(I(q7,{}),J7);
|