@shaohui_jin/git-cockpit-mcp-server 0.1.20 → 0.1.21

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.
@@ -1,345 +0,0 @@
1
- var G4=Object.defineProperty;var GC=r=>{throw TypeError(r)};var z4=(r,e,t)=>e in r?G4(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var Fn=(r,e,t)=>z4(r,typeof e!="symbol"?e+"":e,t),Dp=(r,e,t)=>e.has(r)||GC("Cannot "+t);var ya=(r,e,t)=>(Dp(r,e,"read from private field"),t?t.call(r):e.get(r)),Hp=(r,e,t)=>e.has(r)?GC("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(r):e.set(r,t),jc=(r,e,t,n)=>(Dp(r,e,"write to private field"),n?n.call(r,t):e.set(r,t),t),$p=(r,e,t)=>(Dp(r,e,"access private method"),t);import{az as Ol,c as Fe,G as Or,d as Ds,w as en,a6 as Qf,O as Re,W as R,aj as Oe,aA as Df,aB as BA,L as H,a0 as V,P as z,$ as ae,u as we,M as Ae,F as rt,ae as Ot,Z as ke,_ as oe,Y as V4,k as Ue,aC as Gp,aD as zC,S as dn,ac as Vn,aq as wl,A as K4,n as Rh,R as bN,a as j4,ak as pc,X as bl,T as W4,i as Za,e as Nu,aE as BN,ag as q4,aF as Y4,aG as X4,aw as Z4,aH as J4}from"./vue-ICXx-m1J.js";import{E as EN,a as qe,b as vo,g as xN,e as eH}from"./element-plus-C8u1uXZM.js";(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const a of i)if(a.type==="childList")for(const s of a.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&n(s)}).observe(document,{childList:!0,subtree:!0});function t(i){const a={};return i.integrity&&(a.integrity=i.integrity),i.referrerPolicy&&(a.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?a.credentials="include":i.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function n(i){if(i.ep)return;i.ep=!0;const a=t(i);fetch(i.href,a)}})();function CN(r){var e,t;return{...r,insertions:r.insertions??((e=r.stats)==null?void 0:e.insertions)??0,deletions:r.deletions??((t=r.stats)==null?void 0:t.deletions)??0}}class Kb extends Error{constructor(e,t,n,i){super(e),this.status=t,this.code=n,this.requiredApproval=i,this.name="ApiError"}}async function Xt(r,e,t){let n;try{n=await fetch(e,{method:r,headers:t!==void 0?{"Content-Type":"application/json"}:void 0,body:t!==void 0?JSON.stringify(t):void 0})}catch(i){throw new Kb(`无法连接后端服务(${e}):${i instanceof Error?i.message:String(i)}`,0)}if(!n.ok){let i=n.statusText,a,s;try{const o=await n.json();typeof o.error=="string"?(i=o.error,a=o.code,s=o.requiredApproval):o.error&&typeof o.error=="object"?(i=o.error.message??i,a=o.error.code??o.code,s=o.error.requiredApproval??o.requiredApproval):o.message&&(i=o.message,a=o.code,s=o.requiredApproval)}catch{}throw new Kb(i,n.status,a,s)}return await n.json()}function tH(){return Xt("GET","/api/repos")}function nH(){return Xt("GET","/api/repos/overview")}function rH(r){return Xt("POST","/api/repos/open",{path:r})}function iH(r){return Xt("POST",`/api/repos/${r}/activate`)}function aH(r){return Xt("PUT","/api/repos/order",{ids:r})}function sH(r){return Xt("DELETE",`/api/repos/${r}`)}function oH(r){return Xt("GET",`/api/repos/${r}/status`)}function AH(r,e={}){const t=new URLSearchParams;e.maxCount&&t.set("maxCount",String(e.maxCount)),e.all&&t.set("all","true"),e.path&&t.set("path",e.path),e.from&&t.set("from",e.from),e.to&&t.set("to",e.to),e.author&&t.set("author",e.author);const n=t.toString();return Xt("GET",`/api/repos/${r}/log${n?`?${n}`:""}`)}function lH(r,e={}){const t=new URLSearchParams;e.from&&t.set("from",e.from),e.to&&t.set("to",e.to),e.path&&t.set("path",e.path),e.staged&&t.set("staged","true");const n=t.toString();return Xt("GET",`/api/repos/${r}/diff${n?`?${n}`:""}`).then(CN)}function uH(r,e){return Xt("GET",`/api/repos/${r}/show/${encodeURIComponent(e)}`).then(t=>({...t,diff:CN(t.diff)}))}function cH(r){return Xt("GET",`/api/repos/${r}/branches`)}function dH(r){return Xt("GET",`/api/repos/${r}/stashes`)}function hH(r){return Xt("GET",`/api/repos/${r}/worktrees`)}function SN(r){return Xt("GET",`/api/repos/${r}/remotes`)}function zp(r,e={}){const t=new URLSearchParams;return t.set("maxNodes",String(e.maxNodes??200)),e.into&&t.set("into",e.into),e.from&&t.set("from",e.from),Xt("GET",`/api/repos/${r}/branch-graph?${t.toString()}`)}function fH(r){return Xt("GET",`/api/repos/${r}/workspace-conflicts`)}function gH(r,e){const t=new URLSearchParams;return t.set("into",e.into),t.set("from",e.from),e.fetch!==void 0&&t.set("fetch",e.fetch?"true":"false"),e.remote&&t.set("remote",e.remote),e.path&&t.set("path",e.path),t.set("maxFiles",String(e.maxFiles)),Xt("GET",`/api/repos/${r}/merge/rehearse?${t.toString()}`)}function pH(r,e){const t=new URLSearchParams;return t.set("into",e.into),t.set("from",e.from),t.set("path",e.path),t.set("fetch","false"),e.remote&&t.set("remote",e.remote),Xt("GET",`/api/repos/${r}/merge/blame?${t.toString()}`)}function vH(r,e){const t=new URLSearchParams;for(const n of e.intos)t.append("intos",n);for(const n of e.froms)t.append("froms",n);return e.fetch!==void 0&&t.set("fetch",e.fetch?"true":"false"),e.remote&&t.set("remote",e.remote),Xt("GET",`/api/repos/${r}/merge/survey?${t.toString()}`)}function mH(r,e){const t=new URLSearchParams;t.set("into",e.into);for(const n of e.branches)t.append("branches",n);return e.fetch!==void 0&&t.set("fetch",e.fetch?"true":"false"),e.remote&&t.set("remote",e.remote),Xt("GET",`/api/repos/${r}/merge/order?${t.toString()}`)}function _N(r,e){const t=new URLSearchParams;return t.set("into",e.into),t.set("from",e.from),e.remote&&t.set("remote",e.remote),e.sourceBranch&&t.set("sourceBranch",e.sourceBranch),Xt("GET",`/api/repos/${r}/mr/prepare?${t.toString()}`)}function yH(r,e=50){return Xt("GET",`/api/repos/${r}/reflog?maxCount=${e}`)}function wH(r){return Xt("GET",`/api/repos/${r}/backups`)}function bH(){return Xt("GET","/api/jobs")}function BH(r){return Xt("GET",`/api/jobs/${encodeURIComponent(r)}`)}function kN(r,e){return Xt("POST","/api/jobs/clone",{url:r,destDir:e})}function EH(r,e={}){return Xt("POST","/api/jobs",{kind:r,repoId:e.repoId,repoPath:e.repoPath,payload:e.payload??{}})}function xH(r){return Xt("POST",`/api/jobs/${encodeURIComponent(r)}/cancel`)}function jb(r,e,t={}){return Xt("POST",`/api/repos/${r}/tools/${e}`,{params:t})}function CH(r={}){const e=new URLSearchParams;r.limit&&e.set("limit",String(r.limit)),r.tool&&e.set("tool",r.tool);const t=e.toString();return Xt("GET",`/api/logs${t?`?${t}`:""}`)}function SH(r,e){const t=new URLSearchParams;r!=null&&t.set("repoId",String(r)),e!=null&&e.validateToken&&t.set("validateToken","1");const n=t.toString();return Xt("GET",`/api/settings${n?`?${n}`:""}`)}function _H(r,e){const t=e!=null?`?repoId=${e}`:"";return Xt("PUT",`/api/settings${t}`,r)}function kH(r,e){return Xt("POST","/api/settings/mr-template/parse",{markdown:r,filename:e})}function TN(r,e){return Xt("POST","/api/settings/mr-template/preview",{template:r,values:e})}function TH(){return Xt("GET","/api/health")}function FH(r){const e=new EventSource("/api/events");return r.onRepoChanged&&e.addEventListener("repo-changed",t=>{var n;return(n=r.onRepoChanged)==null?void 0:n.call(r,JSON.parse(t.data))}),r.onLog&&e.addEventListener("log",()=>{var t;return(t=r.onLog)==null?void 0:t.call(r)}),r.onJobProgress&&e.addEventListener("job-progress",t=>{var n;return(n=r.onJobProgress)==null?void 0:n.call(r,JSON.parse(t.data))}),r.onError&&(e.onerror=t=>{var n;return(n=r.onError)==null?void 0:n.call(r,t)}),()=>e.close()}const Wb="git-cockpit:currentRepoId";function VC(){try{const r=Number(window.localStorage.getItem(Wb));return Number.isInteger(r)&&r>0?r:null}catch{return null}}function Vp(r){try{r===null?window.localStorage.removeItem(Wb):window.localStorage.setItem(Wb,String(r))}catch{}}const Ii=Ol("repos",{state:()=>({repos:[],currentId:VC(),loading:!1,error:null,healthOk:null,serverVersion:null}),getters:{current(r){return r.repos.find(e=>e.id===r.currentId)??null},currentPath(r){var e;return((e=r.repos.find(t=>t.id===r.currentId))==null?void 0:e.path)??null}},actions:{async checkHealth(){try{const r=await TH();this.healthOk=r.ok,this.serverVersion=r.version||null}catch{this.healthOk=!1,this.serverVersion=null}return this.healthOk===!0},async load(){var r;this.loading=!0,this.error=null;try{const{repos:e}=await tH();this.repos=e;const t=VC();t!==null&&e.some(n=>n.id===t)?this.currentId=t:(!this.currentId||!e.some(n=>n.id===this.currentId))&&(this.currentId=((r=e[0])==null?void 0:r.id)??null),Vp(this.currentId)}catch(e){this.error=e instanceof Error?e.message:String(e)}finally{this.loading=!1}},async open(r){const{repo:e}=await rH(r);return await this.load(),e},async activate(r){const{repo:e}=await iH(r);return this.currentId=r,Vp(r),await this.load(),e},async reorder(r){const e=new Map(this.repos.map(t=>[t.id,t]));this.repos=r.map(t=>e.get(t)).filter(t=>!!t);try{const{repos:t}=await aH(r);this.repos=t}catch{await this.load()}},async remove(r){await sH(r),this.currentId===r&&(this.currentId=null),await this.load()},switchTo(r){this.currentId=r,Vp(r)}}}),MH=()=>({method:"browser",defaultRemote:"origin",remotes:[],current:null,hosts:[],cli:{gh:{name:"gh",found:!1,loggedIn:!1,installUrl:"https://cli.github.com/"},glab:{name:"glab",found:!1,loggedIn:!1,installUrl:"https://gitlab.com/gitlab-org/cli/-/releases"}},template:null});function kE(r){let e=r.trim();if(!e)return null;if(e.startsWith("git@")){const t=e.match(/^git@([^:]+):(.+?)(?:\.git)?$/);if(!t)return null;e=`https://${t[1]}/${t[2]}`}else e.startsWith("ssh://git@")?e=e.replace(/^ssh:\/\/git@/,"https://").replace(/\.git$/,""):e=e.replace(/\.git$/,"");try{const t=new URL(e);return`${t.origin}${t.pathname.replace(/\/+$/,"")}`}catch{return null}}function FN(r){const e=kE(r);if(!e)return null;try{const t=new URL(e).hostname.toLowerCase();return t==="www.github.com"?"github.com":t}catch{return null}}function IH(r){if(!kE(r))return"unknown";const e=FN(r);return e?e==="github.com"||e.endsWith(".github.com")?"github":"gitlab":"unknown"}function OH(r,e){if(!r.length)return null;const t=e==null?void 0:e.trim();if(t){const n=r.find(i=>i.name===t);if(n)return n}return r.find(n=>n.name==="origin")??r[0]??null}function LH(r){var o,A;const e=OH(r.remotes,r.defaultRemote);if(!e)return null;const t=(e.pushUrl||e.fetchUrl||"").trim(),n=t?FN(t):null,i=n?r.hosts.find(l=>l.host===n):void 0;let a=null;const s=t?kE(t):null;if(s)try{a=new URL(s).origin}catch{a=null}return{host:n,origin:a,platform:(i==null?void 0:i.platform)??(t?IH(t):"unknown"),remote:e.name,remoteUrl:t,tokenSet:!!(i!=null&&i.tokenSet),tokenPreview:(((o=r.current)==null?void 0:o.host)===n?r.current.tokenPreview??"":"")||(i==null?void 0:i.tokenPreview)||"",tokenStatus:((A=r.current)==null?void 0:A.host)===n?r.current.tokenStatus??null:null,apiBaseUrl:(i==null?void 0:i.apiBaseUrl)??""}}function KC(r){var t,n;const e=MH();return r?{method:r.method==="cli"||r.method==="token"||r.method==="browser"?r.method:e.method,defaultRemote:r.defaultRemote??e.defaultRemote,remotes:r.remotes??[],current:r.current??null,hosts:r.hosts??[],cli:{gh:{...e.cli.gh,...(t=r.cli)==null?void 0:t.gh},glab:{...e.cli.glab,...(n=r.cli)==null?void 0:n.glab}},template:r.template??null}:e}function jC(r,e){const t={...r,remotes:e.length?e:r.remotes};return t.current=LH(t)??t.current,t}const TE=Ol("settings",{state:()=>({permissions:null,tools:[],mr:null,allowedRepos:[],loading:!1,saving:!1,error:null}),actions:{async load(r,e){var t;this.loading=!0,this.error=null;try{const[n,i]=await Promise.all([SH(r,e),r!=null?SN(r).catch(()=>[]):Promise.resolve([])]);this.permissions=n.permissions,this.tools=n.tools,this.allowedRepos=((t=n.git)==null?void 0:t.allowedRepos)??[],this.mr=jC(KC(n.mr),i)}catch(n){this.error=n instanceof Error?n.message:String(n)}finally{this.loading=!1}},async save(r,e){var t,n;this.saving=!0,this.error=null;try{const i=((t=this.mr)==null?void 0:t.remotes)??[],a=await _H(r,e);if(r.permissions&&this.permissions&&(this.permissions={...this.permissions,...r.permissions}),(n=r.git)!=null&&n.allowedRepos&&(this.allowedRepos=r.git.allowedRepos),a.mr){const s=KC(a.mr);this.mr=jC(s,s.remotes.length?s.remotes:i)}}catch(i){throw this.error=i instanceof Error?i.message:String(i),i}finally{this.saving=!1}}}});function NH(r,e="all"){return e==="local"?r.filter(t=>!t.remote):e==="remote"?r.filter(t=>t.remote):r}function PH(r){const e=r.replace(/^refs\/heads\//,"").replace(/^refs\/remotes\/[^/]+\//,"");return e.startsWith("merge/")?!0:/^[^/]+\/merge\//.test(e)}function MN(r){r.sort((e,t)=>{const n=e.branch?1:0,i=t.branch?1:0;return n!==i?n-i:e.label.localeCompare(t.label)});for(const e of r)e.children&&MN(e.children)}function WC(r,e){const t=[];for(const{path:n,branch:i}of r){const a=n.split("/").filter(A=>A.length>0);if(a.length===0)continue;let s=t,o="";for(const[A,l]of a.entries()){o=o?`${o}/${l}`:l;const u=A===a.length-1,c=s.find(h=>h.label===l),d=c??{key:`${e}:${o}`,value:u?i.name:`${e}:${o}`,label:l,disabled:!u};c||s.push(d),u?(d.value=i.name,d.disabled=!1,d.branch=i,d.fullName=i.name,d.remote=i.remote):(d.children||(d.children=[]),s=d.children)}}return MN(t),t}function IN(r,e="all",t){const n=NH(r,e).filter(A=>t!=null&&t.excludeMergeTemp?!PH(A.name):!0),i=n.filter(A=>!A.remote),a=n.filter(A=>A.remote),s=new Map;for(const A of a){const l=A.name.indexOf("/"),u=l===-1?"":A.name.slice(0,l);if(!u)continue;const c=s.get(u)??[];c.push({path:A.name.slice(l+1),branch:A}),s.set(u,c)}const o=[];if(i.length&&e!=="remote"&&o.push({key:"local",title:`本地分支(${i.length})`,tree:WC(i.map(A=>({path:A.name,branch:A})),"local")}),e!=="local")for(const[A,l]of s)o.push({key:`remote:${A}`,title:`远程 · ${A}(${l.length})`,tree:WC(l,`remote:${A}`)});return o}function UH(r,e=!1){return(e?[...r].reverse():r).map(n=>({key:`group:${n.key}`,value:`group:${n.key}`,label:n.title,disabled:!0,children:n.tree}))}let ql=null;const vc=Ol("branches",{state:()=>({list:[],remotes:[],repoId:null,loading:!1}),getters:{current(r){return r.list.find(e=>e.current)??null},locals(r){return r.list.filter(e=>!e.remote)},remoteBranches(r){return r.list.filter(e=>e.remote)},hasRemote(r){return r.remotes.length>0||r.list.some(e=>e.remote)},panes(r){return IN(r.list,"all")}},actions:{async load(){if(!(ql&&(await ql,this.repoId===Ii().currentId)))return ql=this.fetch().finally(()=>{ql=null}),ql},async fetch(){const r=Ii().currentId;if(r===null){this.list=[],this.remotes=[],this.repoId=null;return}this.repoId!==r&&(this.list=[],this.remotes=[]),this.loading=!0;try{const[{branches:e},t]=await Promise.all([cH(r),SN(r)]);if(Ii().currentId!==r)return;this.list=e,this.remotes=t,this.repoId=r}catch{Ii().currentId===r&&this.repoId!==r&&(this.list=[],this.remotes=[])}finally{this.loading=!1}}}});function Po(r,e){return`${r}\0${e}`}function RH(r,e){return r.into===e.into&&r.from===e.from}const Hf=Ol("mergeSession",{state:()=>({mode:"pair",repoId:null,pairInto:"",pairFrom:"",trail:null,doneKeys:[],mrMarks:{},fromMatrix:!1,openedFromMatrix:null,surveyStale:!1,previewSeq:0,intos:[],froms:[],fetchRemote:!0,loading:!1,loadError:"",survey:null,order:null,active:null,orderView:"best"}),getters:{trailCurrent(r){if(r.trail)return r.trail.pairs[r.trail.index]},trailRemaining(r){return r.trail?r.trail.pairs.filter(e=>{var n;if(r.doneKeys.includes(Po(e.into,e.from)))return!1;const t=(n=r.survey)==null?void 0:n.cells.find(i=>i.into===e.into&&i.from===e.from);return!(t!=null&&t.tempBranch)}).length:0},canSurvey(r){return r.intos.length>0&&r.froms.length>0&&!r.loading},canOrder(r){return r.intos.length===1&&r.froms.length>1&&!r.loading}},actions:{resetIfRepoChanged(r){this.repoId!==r&&(this.repoId=r,this.pairInto="",this.pairFrom="",this.trail=null,this.doneKeys=[],this.mrMarks={},this.fromMatrix=!1,this.openedFromMatrix=null,this.surveyStale=!1,this.intos=[],this.froms=[],this.survey=null,this.order=null,this.active=null,this.loadError="",this.loading=!1)},setMode(r){this.mode=r},dropChip(r,e){r==="into"?this.intos=this.intos.filter(t=>t!==e):this.froms=this.froms.filter(t=>t!==e)},isPairDone(r){var t;if(this.doneKeys.includes(Po(r.into,r.from)))return!0;const e=(t=this.survey)==null?void 0:t.cells.find(n=>n.into===r.into&&n.from===r.from);return!!(e!=null&&e.tempBranch)},markPairDone(r){const e=Po(r.into,r.from);this.doneKeys.includes(e)||(this.doneKeys=[...this.doneKeys,e])},markPairMr(r,e){this.mrMarks={...this.mrMarks,[Po(r.into,r.from)]:e}},stageOf(r){var n;const e=Po(r.into,r.from),t=this.mrMarks[e];return t?t.via==="browser"?"page":"mr":(n=r.tempBranch)!=null&&n.remote?"resolved":r.tempBranch||this.doneKeys.includes(e)?"local":r.outcome==="clean"?"ready":"open"},sourceBranchFor(r){var e;return r.outcome==="clean"?r.from:((e=r.tempBranch)==null?void 0:e.name)??null},canCreateMr(r){const e=this.stageOf(r);return e==="ready"||e==="resolved"||e==="page"||e==="mr"},onRepoChanged(r){if(!this.survey||this.loading)return;const e=Ii().repos.find(n=>n.id===this.repoId);if(!e)return;const t=n=>n.replace(/\\/g,"/").replace(/\/+$/,"").toLowerCase();t(e.path)===t(r)&&(this.surveyStale=!0)},openPair(r,e){const t=e.findIndex(n=>RH(n,r));this.trail=e.length>0&&t>=0?{pairs:e,index:t}:null,this.fromMatrix=!0,this.openedFromMatrix={...r},this.pairInto=r.into,this.pairFrom=r.from,this.mode="pair",this.previewSeq+=1},clearTrail(){this.trail=null,this.fromMatrix=!1,this.openedFromMatrix=null},syncTrailWithPair(){const r=this.openedFromMatrix;r&&(r.into!==this.pairInto||r.from!==this.pairFrom)&&(this.trail=null,this.fromMatrix=!1,this.openedFromMatrix=null)},trailGo(r){const e=this.trail;if(!e)return!1;const t=e.index+r,n=e.pairs[t];return n?(this.trail={pairs:e.pairs,index:t},this.pairInto=n.into,this.pairFrom=n.from,this.mode="pair",this.previewSeq+=1,!0):!1},trailNextPending(){const r=this.trail;if(!r)return this.backToMatrix(),!1;const e=r.pairs.findIndex((t,n)=>n>r.index&&!this.isPairDone(t));return e<0?(this.backToMatrix(),!1):(this.trailGo(e-r.index),!0)},backToMatrix(){this.mode="matrix",this.refreshSurvey()},async runSurvey(r){const e=Ii().currentId;if(e===null||this.intos.length===0||this.froms.length===0)return;this.loading=!0,this.loadError="",this.order=null;const t=this.active?Po(this.active.into,this.active.from):"";this.active=null;try{const n=await vH(e,{intos:[...this.intos],froms:[...this.froms],fetch:r??this.fetchRemote});this.survey=n,this.surveyStale=!1,t&&(this.active=this.survey.cells.find(i=>Po(i.into,i.from)===t)??null)}catch(n){this.loadError=n instanceof Error?n.message:String(n),this.survey=null}finally{this.loading=!1}},async refreshSurvey(){this.intos.length===0||this.froms.length===0||await this.runSurvey(!1)},async runOrder(){const r=Ii().currentId,e=this.intos[0];if(!(r===null||!e||this.intos.length!==1||this.froms.length<2)){this.loading=!0,this.loadError="";try{this.order=await mH(r,{into:e,branches:[...this.froms],fetch:this.fetchRemote}),this.orderView="best"}catch(t){this.loadError=t instanceof Error?t.message:String(t)}finally{this.loading=!1}}}}});function qC(r,e){const t=r.findIndex(i=>i.id===e.id);if(t<0)return[e,...r];const n=r.slice();return n[t]=e,n.sort((i,a)=>i.startedAt<a.startedAt?1:-1)}function QH(r,e){const t=e.replace(/\r\n/g,`
2
- `).replace(/\r/g,`
3
- `).split(`
4
- `);if(!t.length)return;const n=r[r.length-1]??"";r.length>0&&!n.endsWith(`
5
- `)&&e[0]!==`
6
- `?(r[r.length-1]=n+t[0],r.push(...t.slice(1))):r.push(...t)}const FE=Ol("jobs",{state:()=>({jobs:[],loading:!1}),getters:{runningCount(r){return r.jobs.filter(e=>e.status==="running").length}},actions:{async load(){this.loading=!0;try{const{jobs:r}=await bH(),e=new Map(this.jobs.map(t=>[t.id,t]));this.jobs=r.map(t=>{var n;return{...t,logs:((n=e.get(t.id))==null?void 0:n.logs)??(t.tail?t.tail.split(`
7
- `):[])}})}finally{this.loading=!1}},async loadDetail(r){const{job:e}=await BH(r);return this.applyDetail(e),e},applyDetail(r){this.jobs=qC(this.jobs,{...r,logCount:r.logs.length,tail:r.logs.slice(-3).join(`
8
- `),logs:r.logs})},onProgress(r){const e=this.jobs.find(i=>i.id===r.id),t=e!=null&&e.logs?e.logs.slice():[];r.chunk&&QH(t,r.chunk);const n=r.status;this.jobs=qC(this.jobs,{id:r.id,kind:r.kind,title:r.title,status:n,url:r.url,destDir:r.destDir,repoPath:r.repoPath,error:r.error,startedAt:r.startedAt,finishedAt:r.finishedAt,repoId:r.repoId,logCount:r.logCount,tail:t.slice(-3).join(`
9
- `),logs:t}),(n==="ok"||n==="error")&&this.loadDetail(r.id).catch(()=>{})},async cancel(r){await xH(r)}}}),ON=Fe(0),DH=()=>{ON.value+=1};function $f(){return{revision:ON,bump:DH}}const YC=new Set;function Qh(r){return r==="clone"?"克隆":r==="survey"?"矩阵扫描":r==="fetch"?"抓取":r}function Pu(r){var n,i;if(r.kind==="clone")return[r.url,r.destDir?`→ ${r.destDir}`:""].filter(Boolean).join(" ");const e=((n=r.title)==null?void 0:n.trim())||"",t=((i=r.repoPath)==null?void 0:i.trim())||"";return t&&e&&!e.includes(t)?`${e} → ${t}`:e||t||r.id||""}function XC(r){return r==="running"?"进行中":r==="ok"?"成功":r==="error"?"失败":r}function ZC(r){return r==="ok"?"success":r==="error"?"danger":"warning"}function qb(r){EN({type:"info",title:`已开始${Qh(r.kind)}`,message:r.title,position:"top-right",duration:4500,onClick:()=>void r.router.push({path:"/jobs",query:{id:r.id}})})}function HH(r,e){if(r.status!=="ok"&&r.status!=="error")return;const t=`${r.id}:${r.status}`;if(YC.has(t))return;YC.add(t);const n=Qh(r.kind),i=Pu(r);EN({type:r.status==="ok"?"success":"error",title:r.status==="ok"?`${n}完成`:`${n}失败`,message:r.status==="ok"?i:r.error||i,position:"top-right",duration:6e3,onClick:()=>void e.push({path:"/jobs",query:{id:r.id}})})}const $H={class:"repo-box"},GH=["title"],zH={class:"menu-icon"},VH={class:"menu-icon"},KH={key:0,class:"menu-count"},jH={class:"aside-footer"},WH={key:3,class:"aside-version"},qH=Or({__name:"App",setup(r){const e=Ii(),t=TE(),n=vc(),i=Hf(),a=FE(),s=Df(),o=BA(),{bump:A,revision:l}=$f(),u=[{path:"/dashboard",label:"工作台",icon:"▤"},{path:"/status",label:"状态",icon:"◧"},{path:"/merge",label:"合并",icon:"⇄"}],c=[{path:"/jobs",label:"任务",icon:"↻"},{path:"/logs",label:"操作日志",icon:"≡"},{path:"/settings",label:"设置",icon:"⚙"}],d=Ue(()=>{if(!e.currentId)return"未选择仓库";const p=e.repos.find(g=>g.id===e.currentId);return(p==null?void 0:p.path)??"未选择仓库"});function h(p){p!==s.path&&o.push(p)}let f=null;return Ds(async()=>{await e.checkHealth(),await e.load(),await Promise.all([t.load(e.currentId).catch(()=>{}),n.load(),a.load()]),f=FH({onRepoChanged:p=>{A(),i.onRepoChanged(p.repoPath)},onLog:()=>A(),onJobProgress:p=>{a.onProgress(p),HH(p,o),p.status==="ok"&&(A(),e.load())},onError:()=>{}})}),en(()=>e.currentId,()=>{n.load(),t.load(e.currentId).catch(()=>{})}),en(l,()=>void n.load()),Qf(()=>{f==null||f()}),(p,g)=>{const v=Oe("el-menu-item"),m=Oe("el-menu"),y=Oe("el-tag"),w=Oe("el-aside"),B=Oe("router-view"),x=Oe("el-main"),k=Oe("el-container");return H(),Re(k,{class:"app-shell"},{default:R(()=>[V(w,{width:"220px",class:"app-aside"},{default:R(()=>[g[5]||(g[5]=z("div",{class:"brand"},[z("span",{class:"brand-mark"},"⌘"),z("span",{class:"brand-name"},"Git Cockpit")],-1)),z("div",$H,[g[0]||(g[0]=z("div",{class:"repo-box-label"},"当前仓库",-1)),z("div",{class:"repo-box-path mono",title:d.value},ae(d.value),9,GH)]),V(m,{"default-active":we(s).path,class:"nav-menu"},{default:R(()=>[(H(),Ae(rt,null,Ot(u,_=>V(v,{key:_.path,index:_.path,onClick:T=>h(_.path)},{default:R(()=>[z("span",zH,ae(_.icon),1),z("span",null,ae(_.label),1)]),_:2},1032,["index","onClick"])),64)),g[1]||(g[1]=z("div",{class:"nav-divider",role:"separator"},null,-1)),(H(),Ae(rt,null,Ot(c,_=>V(v,{key:_.path,index:_.path,onClick:T=>h(_.path)},{default:R(()=>[z("span",VH,ae(_.icon),1),z("span",null,ae(_.label),1),_.path==="/jobs"&&we(a).runningCount?(H(),Ae("span",KH,ae(we(a).runningCount),1)):ke("",!0)]),_:2},1032,["index","onClick"])),64))]),_:1},8,["default-active"]),z("div",jH,[we(e).healthOk?(H(),Re(y,{key:0,size:"small",type:"success"},{default:R(()=>[...g[2]||(g[2]=[oe("后端已连接",-1)])]),_:1})):we(e).healthOk===!1?(H(),Re(y,{key:1,size:"small",type:"danger"},{default:R(()=>[...g[3]||(g[3]=[oe("后端离线",-1)])]),_:1})):(H(),Re(y,{key:2,size:"small",type:"info"},{default:R(()=>[...g[4]||(g[4]=[oe("连接中…",-1)])]),_:1})),we(e).serverVersion?(H(),Ae("div",WH,ae(we(e).serverVersion),1)):ke("",!0)])]),_:1}),V(k,{class:"app-main"},{default:R(()=>[V(x,{class:"main-content"},{default:R(()=>[V(B,null,{default:R(({Component:_})=>[(H(),Re(V4(_)))]),_:1})]),_:1})]),_:1})]),_:1})}}}),Rr=(r,e)=>{const t=r.__vccOpts||r;for(const[n,i]of e)t[n]=i;return t},YH=Rr(qH,[["__scopeId","data-v-1a3cbc7c"]]),LN=Or({__name:"CloneDialog",props:zC({retrying:{type:Boolean},loading:{type:Boolean}},{visible:{type:Boolean,required:!0},visibleModifiers:{},url:{required:!0},urlModifiers:{},dest:{required:!0},destModifiers:{}}),emits:zC(["submit"],["update:visible","update:url","update:dest"]),setup(r,{emit:e}){const t=Gp(r,"visible"),n=Gp(r,"url"),i=Gp(r,"dest"),a=e;return(s,o)=>{const A=Oe("el-alert"),l=Oe("el-input"),u=Oe("el-form-item"),c=Oe("el-form"),d=Oe("el-button"),h=Oe("el-dialog");return H(),Re(h,{modelValue:t.value,"onUpdate:modelValue":o[4]||(o[4]=f=>t.value=f),title:r.retrying?"修改并重新克隆":"克隆到本地",width:"560px"},{footer:R(()=>[V(d,{onClick:o[2]||(o[2]=f=>t.value=!1)},{default:R(()=>[...o[5]||(o[5]=[oe("取消",-1)])]),_:1}),V(d,{type:"primary",loading:r.loading,onClick:o[3]||(o[3]=f=>a("submit"))},{default:R(()=>[...o[6]||(o[6]=[oe("开始克隆",-1)])]),_:1},8,["loading"])]),default:R(()=>[V(A,{title:"提交后后台克隆,不占用当前仓库队列。地址不要带 token。完成后会自动加入仓库一览。",type:"info",closable:!1,"show-icon":""}),V(c,{"label-width":"100px"},{default:R(()=>[V(u,{label:"项目地址"},{default:R(()=>[V(l,{modelValue:n.value,"onUpdate:modelValue":o[0]||(o[0]=f=>n.value=f),placeholder:"https://github.com/org/repo.git 或 git@host:org/repo.git"},null,8,["modelValue"])]),_:1}),V(u,{label:"保存到"},{default:R(()=>[V(l,{modelValue:i.value,"onUpdate:modelValue":o[1]||(o[1]=f=>i.value=f),placeholder:"本地空目录的绝对路径,例如 D:\\_myproject\\repo"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue","title"])}}});function ME(r){return!r||r.available===!1||r.operation!=="none"||r.conflictCount>0?"stuck":r.dirtyCount>0?"dirty":r.ahead+r.behind>0||r.tempMergeBranchCount>0?"sync":"quiet"}function XH(r,e){return e==="all"?!0:ME(r)===e}const ZH=["title"],JH=["title"],Kp=12,Wc=7,e6=Or({__name:"ActivityHeatmap",props:{days:{default:()=>[]},start:{default:""},total:{default:0}},setup(r){const e=r;function t(a,s){const[o,A,l]=a.split("-").map(Number);if(!o||!A||!l)return"";const u=new Date(o,A-1,l+s),c=u.getFullYear(),d=String(u.getMonth()+1).padStart(2,"0"),h=String(u.getDate()).padStart(2,"0");return`${c}-${d}-${h}`}function n(a){return a<=0?0:a===1?1:a<=3?2:a<=6?3:4}const i=Ue(()=>{const a=e.days.length===Kp*Wc?e.days:new Array(Kp*Wc).fill(0),s=[];for(let o=0;o<Kp;o++){const A=[];for(let l=0;l<Wc;l++){const u=o*Wc+l,c=a[u]??0,d=t(e.start,u);A.push({n:c,lv:n(c),title:d?`${d} · ${c} 次提交`:`${c} 次提交`})}s.push(A)}return s});return(a,s)=>(H(),Ae("div",{class:"heat",title:`近 12 周 ${r.total} 次提交`},[(H(!0),Ae(rt,null,Ot(i.value,(o,A)=>(H(),Ae("div",{key:A,class:"heat-col"},[(H(!0),Ae(rt,null,Ot(o,(l,u)=>(H(),Ae("span",{key:u,class:dn(["heat-cell","lv"+l.lv]),title:l.title},null,10,JH))),128))]))),128))],8,ZH))}}),t6=Rr(e6,[["__scopeId","data-v-3f31a612"]]),n6=["title"],r6={class:"card-top"},i6={class:"card-name mono"},a6={class:"card-actions"},s6={class:"card-meta"},o6={class:"card-branch mono"},A6={class:"card-stat mono"},l6={key:0,class:"stat-draft"},u6={class:"card-foot"},c6=["title"],d6=Or({__name:"RepoCard",props:{repo:{},overview:{},current:{type:Boolean},muted:{type:Boolean},dragging:{type:Boolean},dragOver:{type:Boolean},selected:{type:Boolean}},emits:["select","enter","merge","remove","toggle-select","dragstart","dragover","drop","dragend"],setup(r,{emit:e}){const t=r,n=e;function i(o){const A=new Date(o);return Number.isNaN(A.getTime())?o:A.toLocaleString(void 0,{month:"numeric",day:"numeric",hour:"2-digit",minute:"2-digit"})}function a(o){var l;const A=o.target;if((l=A==null?void 0:A.closest)!=null&&l.call(A,"button")){o.preventDefault();return}n("dragstart",o)}function s(){const o=t.overview;if(!o)return[];const A=[];return o.operation!=="none"&&A.push(o.operation),o.conflictCount>0&&A.push(`${o.conflictCount} 冲突`),A}return(o,A)=>{var c,d,h,f,p,g;const l=Oe("el-checkbox"),u=Oe("el-button");return H(),Ae("div",{class:dn(["repo-card",[we(ME)(r.overview),{current:r.current,muted:r.muted,dragging:r.dragging,"drag-over":r.dragOver}]]),title:r.repo.path,draggable:"true",onClick:A[5]||(A[5]=v=>n("select")),onDblclick:A[6]||(A[6]=v=>n("enter")),onDragstart:a,onDragover:A[7]||(A[7]=v=>n("dragover",v)),onDrop:A[8]||(A[8]=v=>n("drop",v)),onDragend:A[9]||(A[9]=v=>n("dragend"))},[z("div",r6,[V(l,{class:"card-check","model-value":r.selected,onClick:A[0]||(A[0]=Vn(()=>{},["stop"])),onChange:A[1]||(A[1]=v=>n("toggle-select"))},null,8,["model-value"]),z("span",i6,ae(((c=r.overview)==null?void 0:c.name)||r.repo.path.split(/[\\/]/).pop()),1),z("span",a6,[V(u,{size:"small",text:"",type:"primary",onClick:A[2]||(A[2]=Vn(v=>n("enter"),["stop"]))},{default:R(()=>[...A[10]||(A[10]=[oe("进入",-1)])]),_:1}),V(u,{size:"small",text:"",type:"primary",onClick:A[3]||(A[3]=Vn(v=>n("merge"),["stop"]))},{default:R(()=>[...A[11]||(A[11]=[oe("合并",-1)])]),_:1}),V(u,{size:"small",text:"",type:"danger",onClick:A[4]||(A[4]=Vn(v=>n("remove"),["stop"]))},{default:R(()=>[...A[12]||(A[12]=[oe("移除",-1)])]),_:1})])]),z("div",s6,[z("span",o6,ae(((d=r.overview)==null?void 0:d.available)===!1?"不可用":((h=r.overview)==null?void 0:h.current)||"…"),1),r.overview&&r.overview.available!==!1?(H(),Ae(rt,{key:0},[z("span",A6,[z("span",{class:dn(["stat-ahead",{on:r.overview.ahead>0}])},ae(r.overview.ahead)+"↑",3),z("span",{class:dn(["stat-behind",{on:r.overview.behind>0}])},ae(r.overview.behind)+"↓",3)]),z("span",{class:dn(["stat-dirty",{on:r.overview.dirtyCount>0}])},ae(r.overview.dirtyCount)+" 更改",3),r.overview.tempMergeBranchCount>0?(H(),Ae("span",l6,ae(r.overview.tempMergeBranchCount)+" 合并草稿",1)):ke("",!0)],64)):ke("",!0),(H(!0),Ae(rt,null,Ot(s(),v=>(H(),Ae("span",{key:v,class:"card-badge"},ae(v),1))),128))]),z("div",u6,[V(t6,{days:(f=r.overview)==null?void 0:f.activity,start:(p=r.overview)==null?void 0:p.activityStart,total:(g=r.overview)==null?void 0:g.activityTotal},null,8,["days","start","total"]),z("span",{class:"card-opened",title:r.repo.lastOpenedAt},"打开 "+ae(i(r.repo.lastOpenedAt)),9,c6)])],42,n6)}}}),h6=Rr(d6,[["__scopeId","data-v-c6187ea2"]]);function f6(r,e,t){if(e===t)return r.slice();const n=r.slice(),i=n.indexOf(e),a=n.indexOf(t);if(i<0||a<0)return r.slice();const[s]=n.splice(i,1);return s===void 0?r.slice():(n.splice(a,0,s),n)}function g6(r,e,t,n){const i=f6(e,t,n),a=new Set(e);let s=0;return r.map(o=>a.has(o)?i[s++]:o)}const p6={class:"page"},v6={class:"open-row"},m6={class:"list-header"},y6={class:"summary-chips"},w6={class:"list-actions"},b6={key:2,class:"card-grid"},B6=Or({__name:"ReposView",setup(r){const e=Ii(),t=FE(),n=BA(),i=Fe(""),a=Fe(!1),s=Fe(!1),o=Fe(!1),A=Fe(""),l=Fe(""),u=Fe(!1),c=Fe([]),d=Fe(!1),h=Fe("all"),f=Fe(null),p=Fe(null),g=Fe(new Set),v=Fe(!1),{revision:m}=$f();function y(re){return c.value.find(ne=>ne.path===re)}const w=Ue(()=>{let re=0,ne=0,ue=0;for(const Y of e.repos){const U=ME(y(Y.path));U==="stuck"?re+=1:U==="dirty"?ne+=1:U==="sync"&&(ue+=1)}return{stuck:re,dirty:ne,sync:ue}}),B=Ue(()=>e.repos.filter(re=>XH(y(re.path),h.value)));function x(re){h.value=h.value===re&&re!=="all"?"all":re}function k(re){const ne=new Set(g.value);ne.has(re)?ne.delete(re):ne.add(re),g.value=ne}const _=Ue(()=>g.value.size);async function T(){const re=[...g.value];if(!re.length){qe.warning("请先勾选要刷新远程的仓库");return}v.value=!0;let ne=0;const ue=[];try{for(const Y of re){const U=e.repos.find(ie=>ie.id===Y),W=U?y(U.path):void 0;if(!U||(W==null?void 0:W.available)===!1){ue.push((U==null?void 0:U.path)??String(Y));continue}try{const{job:ie}=await EH("fetch",{repoId:Y});ne+=1,qb({id:ie.id,kind:"fetch",title:Pu({...ie,repoPath:ie.repoPath||U.path}),router:n})}catch(ie){ue.push(ie instanceof Error?ie.message:String(ie))}}await t.load(),ne&&!ue.length?qe.success(`已开始抓取 ${ne} 个仓库`):ne?qe.warning(`已开始 ${ne} 个,失败 ${ue.length}`):qe.error(ue[0]||"无法开始抓取"),g.value=new Set}finally{v.value=!1}}function F(re,ne){var ue;f.value=ne,(ue=re.dataTransfer)==null||ue.setData("text/plain",String(ne)),re.dataTransfer&&(re.dataTransfer.effectAllowed="move")}function I(re,ne){f.value==null||f.value===ne||(re.preventDefault(),p.value=ne)}async function O(re,ne){re.preventDefault();const ue=f.value;if(p.value=null,f.value=null,ue==null||ue===ne)return;const Y=e.repos.map(ie=>ie.id),U=B.value.map(ie=>ie.id),W=g6(Y,U,ue,ne);await e.reorder(W)}function P(){f.value=null,p.value=null}async function G(){d.value=!0;try{const{repos:re}=await nH();c.value=re}catch{c.value=[]}finally{d.value=!1}}async function ee(){const re=i.value.trim();if(!re){qe.warning("请输入仓库路径");return}a.value=!0;try{const ne=await e.open(re);qe.success(`已打开 ${ne.path}`),e.switchTo(ne.id),i.value="",await G()}catch(ne){qe.error(ne instanceof Error?ne.message:String(ne))}finally{a.value=!1}}async function te(re,ne){try{await vo.confirm(`确定从列表移除 ${ne}?注意:不会删除磁盘上的仓库文件。`,"移除仓库",{type:"warning",confirmButtonText:"移除",cancelButtonText:"取消"})}catch{return}try{await e.remove(re),qe.success("已移除"),await G()}catch(ue){qe.error(ue instanceof Error?ue.message:String(ue))}}async function N(re){try{await e.activate(re)}catch{e.switchTo(re)}await n.push("/status")}async function K(re){try{await e.activate(re)}catch{e.switchTo(re)}await n.push("/merge")}function J(){o.value=!1,A.value="",l.value="",s.value=!0}async function be(){const re=A.value.trim(),ne=l.value.trim();if(!re||!ne){qe.warning("请填写项目地址和保存路径");return}u.value=!0;try{const{job:ue}=await kN(re,ne);s.value=!1,A.value="",l.value="",await t.load(),qb({id:ue.id,kind:"clone",title:`${re} → ${ne}`,router:n})}catch(ue){qe.error(ue instanceof Error?ue.message:String(ue))}finally{u.value=!1}}return en(m,()=>void G()),Ds(()=>{e.load(),G()}),(re,ne)=>{const ue=Oe("el-input"),Y=Oe("el-button"),U=Oe("el-card"),W=Oe("el-empty");return H(),Ae("div",p6,[ne[14]||(ne[14]=z("h2",{class:"page-title"},"工作台",-1)),V(U,{class:"open-card",shadow:"never"},{header:R(()=>[...ne[9]||(ne[9]=[oe("打开本地仓库",-1)])]),default:R(()=>[z("div",v6,[V(ue,{modelValue:i.value,"onUpdate:modelValue":ne[0]||(ne[0]=ie=>i.value=ie),placeholder:"输入本地 Git 仓库路径,例如 D:\\project\\repo 或 /Users/me/code/app",clearable:"",onKeyup:wl(ee,["enter"])},null,8,["modelValue"]),V(Y,{type:"primary",loading:a.value,onClick:ee},{default:R(()=>[...ne[10]||(ne[10]=[oe("打开",-1)])]),_:1},8,["loading"]),V(Y,{onClick:J},{default:R(()=>[...ne[11]||(ne[11]=[oe("克隆到本地",-1)])]),_:1})])]),_:1}),V(U,{shadow:"never",class:"list-card gc-card-fill"},{header:R(()=>[z("div",m6,[z("div",y6,[ne[12]||(ne[12]=z("span",null,"仓库一览",-1)),z("button",{type:"button",class:dn(["chip",{on:h.value==="all"}]),onClick:ne[1]||(ne[1]=ie=>x("all"))}," 全部 "+ae(we(e).repos.length),3),z("button",{type:"button",class:dn(["chip stuck",{on:h.value==="stuck"}]),onClick:ne[2]||(ne[2]=ie=>x("stuck"))}," 卡住 "+ae(w.value.stuck),3),z("button",{type:"button",class:dn(["chip dirty",{on:h.value==="dirty"}]),onClick:ne[3]||(ne[3]=ie=>x("dirty"))}," 有更改 "+ae(w.value.dirty),3),z("button",{type:"button",class:dn(["chip sync",{on:h.value==="sync"}]),onClick:ne[4]||(ne[4]=ie=>x("sync"))}," 未同步 "+ae(w.value.sync),3)]),z("div",w6,[V(Y,{disabled:_.value===0,loading:v.value,onClick:T},{default:R(()=>[oe("刷新远程"+ae(_.value?` (${_.value})`:""),1)]),_:1},8,["disabled","loading"]),V(Y,{text:"",type:"primary",loading:we(e).loading||d.value,onClick:ne[5]||(ne[5]=()=>{we(e).load(),G()})},{default:R(()=>[...ne[13]||(ne[13]=[oe("刷新",-1)])]),_:1},8,["loading"])])])]),default:R(()=>[!we(e).loading&&we(e).repos.length===0?(H(),Re(W,{key:0,description:"还没有打开仓库。输入本地路径打开,或从远程克隆。"})):B.value.length===0?(H(),Re(W,{key:1,description:"没有符合筛选的仓库","image-size":40})):(H(),Ae("div",b6,[(H(!0),Ae(rt,null,Ot(B.value,ie=>(H(),Re(h6,{key:ie.id,repo:ie,overview:y(ie.path),current:ie.id===we(e).currentId,muted:we(e).currentId!=null&&ie.id!==we(e).currentId,dragging:f.value===ie.id,"drag-over":p.value===ie.id,selected:g.value.has(ie.id),onSelect:Ee=>we(e).switchTo(ie.id),onEnter:Ee=>N(ie.id),onMerge:Ee=>K(ie.id),onRemove:Ee=>te(ie.id,ie.path),onToggleSelect:Ee=>k(ie.id),onDragstart:Ee=>F(Ee,ie.id),onDragover:Ee=>I(Ee,ie.id),onDrop:Ee=>O(Ee,ie.id),onDragend:P},null,8,["repo","overview","current","muted","dragging","drag-over","selected","onSelect","onEnter","onMerge","onRemove","onToggleSelect","onDragstart","onDragover","onDrop"]))),128))]))]),_:1}),V(LN,{visible:s.value,"onUpdate:visible":ne[6]||(ne[6]=ie=>s.value=ie),url:A.value,"onUpdate:url":ne[7]||(ne[7]=ie=>A.value=ie),dest:l.value,"onUpdate:dest":ne[8]||(ne[8]=ie=>l.value=ie),retrying:o.value,loading:u.value,onSubmit:be},null,8,["visible","url","dest","retrying","loading"])])}}}),E6=Rr(B6,[["__scopeId","data-v-d4928d93"]]);function NN(r){const e=BA(),t=Fe(!1),n=Fe(null),i=Fe(!1),a=Ue(()=>r()!==null);async function s(c,d={}){const h=r();if(h===null)return qe.warning("请先选择仓库"),!1;try{const f=await jb(h,c,{...d,dryRun:!0});return f.success?(n.value={tool:c,params:d,preview:f.preview??f.result},t.value=!0,!0):(l(f),!1)}catch(f){return u(f),!1}}async function o(){const c=r(),d=n.value;if(c===null||!d)return null;i.value=!0,t.value=!1;try{const h=await jb(c,d.tool,d.params);return h.success?(h.backupCreated?qe.success(`${d.tool} 执行成功(已自动备份:${h.backupCreated.branch??"分支"}${h.backupCreated.stashRef?` / ${h.backupCreated.stashRef}`:""})`):qe.success(`${d.tool} 执行成功`),h):(l(h),h)}catch(h){return u(h),null}finally{i.value=!1,n.value=null}}function A(){t.value=!1,n.value=null}function l(c){var d,h,f,p;if(((d=c.error)==null?void 0:d.code)==="PERMISSION_DENIED"){c.error.requiredApproval?vo.confirm(`操作 ${c.tool} 属于高风险操作,当前默认禁用,需要在设置中开启后才能执行。是否前往设置?`,"需要审批",{confirmButtonText:"去开启",cancelButtonText:"取消",type:"warning"}).then(()=>e.push({path:"/settings",query:{tab:"git"}})).catch(()=>{}):qe.error(((h=c.error)==null?void 0:h.message)??"操作被拒绝");return}if(((f=c.error)==null?void 0:f.code)==="NO_TOKEN"){vo.confirm(c.error.message||"当前域名尚未配置 Token。","未配置 Token",{confirmButtonText:"去 MR 配置",cancelButtonText:"取消",type:"warning"}).then(()=>e.push({path:"/settings"})).catch(()=>{});return}qe.error(((p=c.error)==null?void 0:p.message)??"操作失败")}function u(c){const d=c instanceof Error?c.message:String(c);qe.error(d)}return{confirmVisible:t,pending:n,executing:i,canRun:a,previewAndConfirm:s,executeConfirmed:o,cancel:A}}const x6={key:2,class:"cmd-box"},C6={class:"cmd-pre mono"},S6={key:3,class:"files-box"},_6={class:"cmd-label"},k6={key:4,class:"note-text"},T6={key:5,class:"body-box"},F6={class:"cmd-pre"},M6={class:"risk-tag"},I6=Or({__name:"ConfirmDialog",props:{visible:{type:Boolean},tool:{},preview:{default:null},note:{default:""}},emits:["update:visible","confirm","cancel"],setup(r,{emit:e}){const t=r,n=e,i=Ue(()=>{const d=t.preview;return d&&"command"in d&&typeof d.command=="string"?d.command:""}),a=Ue(()=>{const d=t.preview,h=d&&"risk"in d&&typeof d.risk=="string"?String(d.risk):"write";return h==="dangerous"||h==="high"?"dangerous":h==="readonly"?"readonly":"write"}),s=Ue(()=>{const d=t.preview;return d&&"affectedFiles"in d&&Array.isArray(d.affectedFiles)?d.affectedFiles:[]}),o=Ue(()=>a.value==="dangerous"?{type:"danger",label:"高风险"}:a.value==="write"?{type:"warning",label:"写操作"}:{type:"info",label:"只读"}),A=Ue(()=>{if(t.note)return t.note;const d=t.preview;return typeof(d==null?void 0:d.note)=="string"?d.note:""}),l=Ue(()=>{const d=t.preview;return typeof(d==null?void 0:d.body)=="string"?d.body:""});function u(){n("confirm")}function c(){n("cancel"),n("update:visible",!1),qe.info("操作已取消")}return(d,h)=>{const f=Oe("el-alert"),p=Oe("el-scrollbar"),g=Oe("el-tag"),v=Oe("el-button"),m=Oe("el-dialog");return H(),Re(m,{"model-value":r.visible,title:`执行操作:${r.tool}`,width:"560px","close-on-click-modal":!1,onClosed:h[0]||(h[0]=y=>n("update:visible",!1))},{footer:R(()=>[z("span",M6,[V(g,{type:o.value.type,size:"small",effect:"dark"},{default:R(()=>[oe(ae(o.value.label),1)]),_:1},8,["type"])]),V(v,{onClick:c},{default:R(()=>[...h[5]||(h[5]=[oe("取消",-1)])]),_:1}),V(v,{type:"primary",danger:a.value==="dangerous",onClick:u},{default:R(()=>[...h[6]||(h[6]=[oe("确认执行",-1)])]),_:1},8,["danger"])]),default:R(()=>[a.value==="dangerous"?(H(),Re(f,{key:0,type:"error",closable:!1,"show-icon":"",class:"risk-alert"},{title:R(()=>[...h[1]||(h[1]=[oe("这是",-1),z("b",null,"高风险",-1),oe("操作,将自动创建备份(临时分支 + stash)",-1)])]),_:1})):a.value==="write"?(H(),Re(f,{key:1,type:"warning",closable:!1,"show-icon":"",class:"risk-alert"},{title:R(()=>[...h[2]||(h[2]=[oe("写操作:执行后将修改仓库状态",-1)])]),_:1})):ke("",!0),i.value?(H(),Ae("div",x6,[h[3]||(h[3]=z("div",{class:"cmd-label"},"将执行的命令(dry-run 预览,未实际执行)",-1)),z("pre",C6,ae(i.value),1)])):ke("",!0),s.value.length?(H(),Ae("div",S6,[z("div",_6,"涉及文件("+ae(s.value.length)+")",1),V(p,{"max-height":"140px"},{default:R(()=>[(H(!0),Ae(rt,null,Ot(s.value,y=>(H(),Ae("div",{key:y,class:"file-item mono"},ae(y),1))),128))]),_:1})])):ke("",!0),A.value?(H(),Ae("div",k6,ae(A.value),1)):ke("",!0),l.value?(H(),Ae("div",T6,[h[4]||(h[4]=z("div",{class:"cmd-label"},"将提交的正文",-1)),z("pre",F6,ae(l.value),1)])):ke("",!0)]),_:1},8,["model-value","title"])}}}),PN=Rr(I6,[["__scopeId","data-v-cef13836"]]);var hr;(function(r){r.INSERT="insert",r.DELETE="delete",r.CONTEXT="context"})(hr||(hr={}));const O6={LINE_BY_LINE:"line-by-line"},L6={NONE:"none"},N6={WORD:"word"};var oA;(function(r){r.AUTO="auto",r.DARK="dark",r.LIGHT="light"})(oA||(oA={}));const P6=["-","[","]","/","{","}","(",")","*","+","?",".","\\","^","$","|"],U6=RegExp("["+P6.join("\\")+"]","g");function R6(r){return r.replace(U6,"\\$&")}function JC(r){return r&&r.replace(/\\/g,"/")}function Q6(r){let e,t,n,i=0;for(e=0,n=r.length;e<n;e++)t=r.charCodeAt(e),i=(i<<5)-i+t,i|=0;return i}function UN(r){const e=r.length;let t=-1/0;for(let n=0;n<e;n++)t=Math.max(t,r[n]);return t}function e2(r,e){const t=r.split(".");return t.length>1?t[t.length-1]:e}function t2(r,e){return e.reduce((t,n)=>t||r.startsWith(n),!1)}const n2=["a/","b/","i/","w/","c/","o/"];function Zs(r,e,t){const n=t!==void 0?[...n2,t]:n2,i=e?new RegExp(`^${R6(e)} "?(.+?)"?$`):new RegExp('^"?(.+?)"?$'),[,a=""]=i.exec(r)||[],s=n.find(A=>a.indexOf(A)===0);return(s?a.slice(s.length):a).replace(/\s+\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}(?:\.\d+)? [+-]\d{4}.*$/,"")}function D6(r,e){return Zs(r,"---",e)}function H6(r,e){return Zs(r,"+++",e)}function RN(r,e={}){const t=[];let n=null,i=null,a=null,s=null,o=null,A=null,l=null;const u="--- ",c="+++ ",d="@@",h=/^old mode (\d{6})/,f=/^new mode (\d{6})/,p=/^deleted file mode (\d{6})/,g=/^new file mode (\d{6})/,v=/^copy from "?(.+)"?/,m=/^copy to "?(.+)"?/,y=/^rename from "?(.+)"?/,w=/^rename to "?(.+)"?/,B=/^similarity index (\d+)%/,x=/^dissimilarity index (\d+)%/,k=/^index ([\da-z]+)\.\.([\da-z]+)\s*(\d{6})?/,_=/^Binary files (.*) and (.*) differ/,T=/^GIT binary patch/,F=/^index ([\da-z]+),([\da-z]+)\.\.([\da-z]+)/,I=/^mode (\d{6}),(\d{6})\.\.(\d{6})/,O=/^new file mode (\d{6})/,P=/^deleted file mode (\d{6}),(\d{6})/,G=r.replace(/\/g,"").replace(/\r\n?/g,`
10
- `).split(`
11
- `);function ee(){i!==null&&n!==null&&(n.blocks.push(i),i=null)}function te(){n!==null&&(!n.oldName&&A!==null&&(n.oldName=A),!n.newName&&l!==null&&(n.newName=l),n.newName&&(t.push(n),n=null)),A=null,l=null}function N(){ee(),te(),n={blocks:[],deletedLines:0,addedLines:0}}function K(re){ee();let ne;n!==null&&((ne=/^@@ -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@.*/.exec(re))?(n.isCombined=!1,a=parseInt(ne[1],10),o=parseInt(ne[2],10)):(ne=/^@@@ -(\d+)(?:,\d+)? -(\d+)(?:,\d+)? \+(\d+)(?:,\d+)? @@@.*/.exec(re))?(n.isCombined=!0,a=parseInt(ne[1],10),s=parseInt(ne[2],10),o=parseInt(ne[3],10)):(re.startsWith(d)&&console.error("Failed to parse lines, starting in 0!"),a=0,o=0,n.isCombined=!1)),i={lines:[],oldStartLine:a,oldStartLine2:s,newStartLine:o,header:re}}function J(re){if(n===null||i===null||a===null||o===null)return;const ne={content:re},ue=n.isCombined?["+ "," +","++"]:["+"],Y=n.isCombined?["- "," -","--"]:["-"];t2(re,ue)?(n.addedLines++,ne.type=hr.INSERT,ne.oldNumber=void 0,ne.newNumber=o++):t2(re,Y)?(n.deletedLines++,ne.type=hr.DELETE,ne.oldNumber=a++,ne.newNumber=void 0):(ne.type=hr.CONTEXT,ne.oldNumber=a++,ne.newNumber=o++),i.lines.push(ne)}function be(re,ne){let ue=ne;for(;ue<G.length-3;){if(re.startsWith("diff"))return!1;if(G[ue].startsWith(u)&&G[ue+1].startsWith(c)&&G[ue+2].startsWith(d))return!0;ue++}return!1}return G.forEach((re,ne)=>{if(!re||re.startsWith("*"))return;let ue;const Y=G[ne-1],U=G[ne+1],W=G[ne+2];if(re.startsWith("diff --git")||re.startsWith("diff --combined")){if(N(),(ue=/^diff --git "?([a-ciow]\/.+)"? "?([a-ciow]\/.+)"?/.exec(re))&&(A=Zs(ue[1],void 0,e.dstPrefix),l=Zs(ue[2],void 0,e.srcPrefix)),n===null)throw new Error("Where is my file !!!");n.isGitDiff=!0;return}if(re.startsWith("Binary files")&&!(n!=null&&n.isGitDiff)){if(N(),(ue=/^Binary files "?([a-ciow]\/.+)"? and "?([a-ciow]\/.+)"? differ/.exec(re))&&(A=Zs(ue[1],void 0,e.dstPrefix),l=Zs(ue[2],void 0,e.srcPrefix)),n===null)throw new Error("Where is my file !!!");n.isBinary=!0;return}if((!n||!n.isGitDiff&&n&&re.startsWith(u)&&U.startsWith(c)&&W.startsWith(d))&&N(),n!=null&&n.isTooBig)return;if(n&&(typeof e.diffMaxChanges=="number"&&n.addedLines+n.deletedLines>e.diffMaxChanges||typeof e.diffMaxLineLength=="number"&&re.length>e.diffMaxLineLength)){n.isTooBig=!0,n.addedLines=0,n.deletedLines=0,n.blocks=[],i=null;const Ee=typeof e.diffTooBigMessage=="function"?e.diffTooBigMessage(t.length):"Diff too big to be displayed";K(Ee);return}if(re.startsWith(u)&&U.startsWith(c)||re.startsWith(c)&&Y.startsWith(u)){if(n&&!n.oldName&&re.startsWith("--- ")&&(ue=D6(re,e.srcPrefix))){n.oldName=ue,n.language=e2(n.oldName,n.language);return}if(n&&!n.newName&&re.startsWith("+++ ")&&(ue=H6(re,e.dstPrefix))){n.newName=ue,n.language=e2(n.newName,n.language);return}}if(n&&(re.startsWith(d)||n.isGitDiff&&n.oldName&&n.newName&&!i)){K(re);return}if(i&&(re.startsWith("+")||re.startsWith("-")||re.startsWith(" "))){J(re);return}const ie=!be(re,ne);if(n===null)throw new Error("Where is my file !!!");(ue=h.exec(re))?n.oldMode=ue[1]:(ue=f.exec(re))?n.newMode=ue[1]:(ue=p.exec(re))?(n.deletedFileMode=ue[1],n.isDeleted=!0):(ue=g.exec(re))?(n.newFileMode=ue[1],n.isNew=!0):(ue=v.exec(re))?(ie&&(n.oldName=ue[1]),n.isCopy=!0):(ue=m.exec(re))?(ie&&(n.newName=ue[1]),n.isCopy=!0):(ue=y.exec(re))?(ie&&(n.oldName=ue[1]),n.isRename=!0):(ue=w.exec(re))?(ie&&(n.newName=ue[1]),n.isRename=!0):(ue=_.exec(re))?(n.isBinary=!0,n.oldName=Zs(ue[1],void 0,e.srcPrefix),n.newName=Zs(ue[2],void 0,e.dstPrefix),K("Binary file")):T.test(re)?(n.isBinary=!0,K(re)):(ue=B.exec(re))?n.unchangedPercentage=parseInt(ue[1],10):(ue=x.exec(re))?n.changedPercentage=parseInt(ue[1],10):(ue=k.exec(re))?(n.checksumBefore=ue[1],n.checksumAfter=ue[2],ue[3]&&(n.mode=ue[3])):(ue=F.exec(re))?(n.checksumBefore=[ue[2],ue[3]],n.checksumAfter=ue[1]):(ue=I.exec(re))?(n.oldMode=[ue[2],ue[3]],n.newMode=ue[1]):(ue=O.exec(re))?(n.newFileMode=ue[1],n.isNew=!0):(ue=P.exec(re))&&(n.deletedFileMode=ue[1],n.isDeleted=!0)}),ee(),te(),t}let QN=class{diff(e,t,n={}){let i;typeof n=="function"?(i=n,n={}):"callback"in n&&(i=n.callback);const a=this.castInput(e,n),s=this.castInput(t,n),o=this.removeEmpty(this.tokenize(a,n)),A=this.removeEmpty(this.tokenize(s,n));return this.diffWithOptionsObj(o,A,n,i)}diffWithOptionsObj(e,t,n,i){var a;const s=m=>{if(m=this.postProcess(m,n),i){setTimeout(function(){i(m)},0);return}else return m},o=t.length,A=e.length;let l=1,u=o+A;n.maxEditLength!=null&&(u=Math.min(u,n.maxEditLength));const c=(a=n.timeout)!==null&&a!==void 0?a:1/0,d=Date.now()+c,h=[{oldPos:-1,lastComponent:void 0}];let f=this.extractCommon(h[0],t,e,0,n);if(h[0].oldPos+1>=A&&f+1>=o)return s(this.buildValues(h[0].lastComponent,t,e));let p=-1/0,g=1/0;const v=()=>{for(let m=Math.max(p,-l);m<=Math.min(g,l);m+=2){let y;const w=h[m-1],B=h[m+1];w&&(h[m-1]=void 0);let x=!1;if(B){const _=B.oldPos-m;x=B&&0<=_&&_<o}const k=w&&w.oldPos+1<A;if(!x&&!k){h[m]=void 0;continue}if(!k||x&&w.oldPos<B.oldPos?y=this.addToPath(B,!0,!1,0,n):y=this.addToPath(w,!1,!0,1,n),f=this.extractCommon(y,t,e,m,n),y.oldPos+1>=A&&f+1>=o)return s(this.buildValues(y.lastComponent,t,e))||!0;h[m]=y,y.oldPos+1>=A&&(g=Math.min(g,m-1)),f+1>=o&&(p=Math.max(p,m+1))}l++};if(i)(function m(){setTimeout(function(){if(l>u||Date.now()>d)return i(void 0);v()||m()},0)})();else for(;l<=u&&Date.now()<=d;){const m=v();if(m)return m}}addToPath(e,t,n,i,a){const s=e.lastComponent;return s&&!a.oneChangePerToken&&s.added===t&&s.removed===n?{oldPos:e.oldPos+i,lastComponent:{count:s.count+1,added:t,removed:n,previousComponent:s.previousComponent}}:{oldPos:e.oldPos+i,lastComponent:{count:1,added:t,removed:n,previousComponent:s}}}extractCommon(e,t,n,i,a){const s=t.length,o=n.length;let A=e.oldPos,l=A-i,u=0;for(;l+1<s&&A+1<o&&this.equals(n[A+1],t[l+1],a);)l++,A++,u++,a.oneChangePerToken&&(e.lastComponent={count:1,previousComponent:e.lastComponent,added:!1,removed:!1});return u&&!a.oneChangePerToken&&(e.lastComponent={count:u,previousComponent:e.lastComponent,added:!1,removed:!1}),e.oldPos=A,l}equals(e,t,n){return n.comparator?n.comparator(e,t):e===t||!!n.ignoreCase&&e.toLowerCase()===t.toLowerCase()}removeEmpty(e){const t=[];for(let n=0;n<e.length;n++)e[n]&&t.push(e[n]);return t}castInput(e,t){return e}tokenize(e,t){return Array.from(e)}join(e){return e.join("")}postProcess(e,t){return e}get useLongestToken(){return!1}buildValues(e,t,n){const i=[];let a;for(;e;)i.push(e),a=e.previousComponent,delete e.previousComponent,e=a;i.reverse();const s=i.length;let o=0,A=0,l=0;for(;o<s;o++){const u=i[o];if(u.removed)u.value=this.join(n.slice(l,l+u.count)),l+=u.count;else{if(!u.added&&this.useLongestToken){let c=t.slice(A,A+u.count);c=c.map(function(d,h){const f=n[l+h];return f.length>d.length?f:d}),u.value=this.join(c)}else u.value=this.join(t.slice(A,A+u.count));A+=u.count,u.added||(l+=u.count)}}return i}};class $6 extends QN{}const G6=new $6;function z6(r,e,t){return G6.diff(r,e,t)}const r2="a-zA-Z0-9_\\u{AD}\\u{C0}-\\u{D6}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}";class V6 extends QN{tokenize(e){const t=new RegExp(`(\\r?\\n)|[${r2}]+|[^\\S\\n\\r]+|[^${r2}]`,"ug");return e.match(t)||[]}}const K6=new V6;function j6(r,e,t){return K6.diff(r,e,t)}function W6(r,e){if(r.length===0)return e.length;if(e.length===0)return r.length;const t=[];let n;for(n=0;n<=e.length;n++)t[n]=[n];let i;for(i=0;i<=r.length;i++)t[0][i]=i;for(n=1;n<=e.length;n++)for(i=1;i<=r.length;i++)e.charAt(n-1)===r.charAt(i-1)?t[n][i]=t[n-1][i-1]:t[n][i]=Math.min(t[n-1][i-1]+1,Math.min(t[n][i-1]+1,t[n-1][i]+1));return t[e.length][r.length]}function IE(r){return(e,t)=>{const n=r(e).trim(),i=r(t).trim();return W6(n,i)/(n.length+i.length)}}function OE(r){function e(n,i,a=new Map){let s=1/0,o;for(let A=0;A<n.length;++A)for(let l=0;l<i.length;++l){const u=JSON.stringify([n[A],i[l]]);let c;a.has(u)&&(c=a.get(u))||(c=r(n[A],i[l]),a.set(u,c)),c<s&&(s=c,o={indexA:A,indexB:l,score:s})}return o}function t(n,i,a=0,s=new Map){const o=e(n,i,s);if(!o||n.length+i.length<3)return[[n,i]];const A=n.slice(0,o.indexA),l=i.slice(0,o.indexB),u=[n[o.indexA]],c=[i[o.indexB]],d=o.indexA+1,h=o.indexB+1,f=n.slice(d),p=i.slice(h),g=t(A,l,a+1,s),v=t(u,c,a+1,s),m=t(f,p,a+1,s);let y=v;return(o.indexA>0||o.indexB>0)&&(y=g.concat(y)),(n.length>d||i.length>h)&&(y=y.concat(m)),y}return t}const pi={INSERTS:"d2h-ins",DELETES:"d2h-del",CONTEXT:"d2h-cntx",INFO:"d2h-info",INSERT_CHANGES:"d2h-ins d2h-change",DELETE_CHANGES:"d2h-del d2h-change"},Gf={matching:L6.NONE,matchWordsThreshold:.25,maxLineLengthHighlight:1e4,diffStyle:N6.WORD,colorScheme:oA.LIGHT},za="/",DN=IE(r=>r.value),q6=OE(DN);function jp(r){return r.indexOf("dev/null")!==-1}function Y6(r){return r.replace(/(<ins[^>]*>((.|\n)*?)<\/ins>)/g,"")}function X6(r){return r.replace(/(<del[^>]*>((.|\n)*?)<\/del>)/g,"")}function Dh(r){switch(r){case hr.CONTEXT:return pi.CONTEXT;case hr.INSERT:return pi.INSERTS;case hr.DELETE:return pi.DELETES}}function LE(r){switch(r){case oA.DARK:return"d2h-dark-color-scheme";case oA.AUTO:return"d2h-auto-color-scheme";case oA.LIGHT:default:return"d2h-light-color-scheme"}}function Z6(r){return r?2:1}function ul(r){return r.slice(0).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#x27;").replace(/\//g,"&#x2F;")}function es(r,e,t=!0){const n=Z6(e);return{prefix:r.substring(0,n),content:t?ul(r.substring(n)):r.substring(n)}}function zf(r){const e=JC(r.oldName),t=JC(r.newName);if(e!==t&&!jp(e)&&!jp(t)){const n=[],i=[],a=e.split(za),s=t.split(za),o=a.length,A=s.length;let l=0,u=o-1,c=A-1;for(;l<u&&l<c&&a[l]===s[l];)n.push(s[l]),l+=1;for(;u>l&&c>l&&a[u]===s[c];)i.unshift(s[c]),u-=1,c-=1;const d=n.join(za),h=i.join(za),f=a.slice(l,u+1).join(za),p=s.slice(l,c+1).join(za);return d.length&&h.length?d+za+"{"+f+" → "+p+"}"+za+h:d.length?d+za+"{"+f+" → "+p+"}":h.length?"{"+f+" → "+p+"}"+za+h:e+" → "+t}else return jp(t)?e:t}function NE(r){return`d2h-${Q6(zf(r)).toString().slice(-6)}`}function PE(r){let e="file-changed";return r.isRename||r.isCopy?e="file-renamed":r.isNew?e="file-added":r.isDeleted?e="file-deleted":r.newName!==r.oldName&&(e="file-renamed"),e}function HN(r,e,t,n={}){const{matching:i,maxLineLengthHighlight:a,matchWordsThreshold:s,diffStyle:o}=Object.assign(Object.assign({},Gf),n),A=es(r,t,!1),l=es(e,t,!1);if(A.content.length>a||l.content.length>a)return{oldLine:{prefix:A.prefix,content:ul(A.content)},newLine:{prefix:l.prefix,content:ul(l.content)}};const u=o==="char"?z6(A.content,l.content):j6(A.content,l.content),c=[];if(o==="word"&&i==="words"){const h=u.filter(g=>g.removed),f=u.filter(g=>g.added);q6(f,h).forEach(g=>{g[0].length===1&&g[1].length===1&&DN(g[0][0],g[1][0])<s&&(c.push(g[0][0]),c.push(g[1][0]))})}const d=u.reduce((h,f)=>{const p=f.added?"ins":f.removed?"del":null,g=c.indexOf(f)>-1?' class="d2h-change"':"",v=ul(f.value);return p!==null?`${h}<${p}${g}>${v}</${p}>`:`${h}${v}`},"");return{oldLine:{prefix:A.prefix,content:Y6(d)},newLine:{prefix:l.prefix,content:X6(d)}}}const i2="file-summary",J6="icon",e5={colorScheme:Gf.colorScheme};class t5{constructor(e,t={}){this.hoganUtils=e,this.config=Object.assign(Object.assign({},e5),t)}render(e){const t=e.map(n=>this.hoganUtils.render(i2,"line",{fileHtmlId:NE(n),oldName:n.oldName,newName:n.newName,fileName:zf(n),deletedLines:"-"+n.deletedLines,addedLines:"+"+n.addedLines},{fileIcon:this.hoganUtils.template(J6,PE(n))})).join(`
12
- `);return this.hoganUtils.render(i2,"wrapper",{colorScheme:LE(this.config.colorScheme),filesNumber:e.length,files:t})}}const $N=Object.assign(Object.assign({},Gf),{renderNothingWhenEmpty:!1,matchingMaxComparisons:2500,maxLineSizeInBlockForComparison:200}),Yl="generic",a2="line-by-line",n5="icon",r5="tag";class i5{constructor(e,t={}){this.hoganUtils=e,this.config=Object.assign(Object.assign({},$N),t)}render(e){const t=e.map(n=>{let i;return n.blocks.length?i=this.generateFileHtml(n):i=this.generateEmptyDiff(),this.makeFileDiffHtml(n,i)}).join(`
13
- `);return this.hoganUtils.render(Yl,"wrapper",{colorScheme:LE(this.config.colorScheme),content:t})}makeFileDiffHtml(e,t){if(this.config.renderNothingWhenEmpty&&Array.isArray(e.blocks)&&e.blocks.length===0)return"";const n=this.hoganUtils.template(a2,"file-diff"),i=this.hoganUtils.template(Yl,"file-path"),a=this.hoganUtils.template(n5,"file"),s=this.hoganUtils.template(r5,PE(e));return n.render({file:e,fileHtmlId:NE(e),diffs:t,filePath:i.render({fileDiffName:zf(e)},{fileIcon:a,fileTag:s})})}generateEmptyDiff(){return this.hoganUtils.render(Yl,"empty-diff",{contentClass:"d2h-code-line",CSSLineClass:pi})}generateFileHtml(e){const t=OE(IE(n=>es(n.content,e.isCombined).content));return e.blocks.map(n=>{let i=this.hoganUtils.render(Yl,"block-header",{CSSLineClass:pi,blockHeader:e.isTooBig?n.header:ul(n.header),lineClass:"d2h-code-linenumber",contentClass:"d2h-code-line"});return this.applyLineGroupping(n).forEach(([a,s,o])=>{if(s.length&&o.length&&!a.length)this.applyRematchMatching(s,o,t).map(([A,l])=>{const{left:u,right:c}=this.processChangedLines(e,e.isCombined,A,l);i+=u,i+=c});else if(a.length)a.forEach(A=>{const{prefix:l,content:u}=es(A.content,e.isCombined);i+=this.generateSingleLineHtml(e,{type:pi.CONTEXT,prefix:l,content:u,oldNumber:A.oldNumber,newNumber:A.newNumber})});else if(s.length||o.length){const{left:A,right:l}=this.processChangedLines(e,e.isCombined,s,o);i+=A,i+=l}else console.error("Unknown state reached while processing groups of lines",a,s,o)}),i}).join(`
14
- `)}applyLineGroupping(e){const t=[];let n=[],i=[];for(let a=0;a<e.lines.length;a++){const s=e.lines[a];(s.type!==hr.INSERT&&i.length||s.type===hr.CONTEXT&&n.length>0)&&(t.push([[],n,i]),n=[],i=[]),s.type===hr.CONTEXT?t.push([[s],[],[]]):s.type===hr.INSERT&&n.length===0?t.push([[],[],[s]]):s.type===hr.INSERT&&n.length>0?i.push(s):s.type===hr.DELETE&&n.push(s)}return(n.length||i.length)&&(t.push([[],n,i]),n=[],i=[]),t}applyRematchMatching(e,t,n){const i=e.length*t.length,a=UN(e.concat(t).map(o=>o.content.length));return i<this.config.matchingMaxComparisons&&a<this.config.maxLineSizeInBlockForComparison&&(this.config.matching==="lines"||this.config.matching==="words")?n(e,t):[[e,t]]}processChangedLines(e,t,n,i){const a={right:"",left:""},s=Math.max(n.length,i.length);for(let o=0;o<s;o++){const A=n[o],l=i[o],u=A!==void 0&&l!==void 0?HN(A.content,l.content,t,this.config):void 0,c=A!==void 0&&A.oldNumber!==void 0?Object.assign(Object.assign({},u!==void 0?{prefix:u.oldLine.prefix,content:u.oldLine.content,type:pi.DELETE_CHANGES}:Object.assign(Object.assign({},es(A.content,t)),{type:Dh(A.type)})),{oldNumber:A.oldNumber,newNumber:A.newNumber}):void 0,d=l!==void 0&&l.newNumber!==void 0?Object.assign(Object.assign({},u!==void 0?{prefix:u.newLine.prefix,content:u.newLine.content,type:pi.INSERT_CHANGES}:Object.assign(Object.assign({},es(l.content,t)),{type:Dh(l.type)})),{oldNumber:l.oldNumber,newNumber:l.newNumber}):void 0,{left:h,right:f}=this.generateLineHtml(e,c,d);a.left+=h,a.right+=f}return a}generateLineHtml(e,t,n){return{left:this.generateSingleLineHtml(e,t),right:this.generateSingleLineHtml(e,n)}}generateSingleLineHtml(e,t){if(t===void 0)return"";const n=this.hoganUtils.render(a2,"numbers",{oldNumber:t.oldNumber||"",newNumber:t.newNumber||""});return this.hoganUtils.render(Yl,"line",{type:t.type,lineClass:"d2h-code-linenumber",contentClass:"d2h-code-line",prefix:t.prefix===" "?"&nbsp;":t.prefix,content:t.content,lineNumber:n,line:t,file:e})}}const GN=Object.assign(Object.assign({},Gf),{renderNothingWhenEmpty:!1,matchingMaxComparisons:2500,maxLineSizeInBlockForComparison:200}),Xl="generic",a5="side-by-side",s5="icon",o5="tag";class A5{constructor(e,t={}){this.hoganUtils=e,this.config=Object.assign(Object.assign({},GN),t)}render(e){const t=e.map(n=>{let i;return n.blocks.length?i=this.generateFileHtml(n):i=this.generateEmptyDiff(),this.makeFileDiffHtml(n,i)}).join(`
15
- `);return this.hoganUtils.render(Xl,"wrapper",{colorScheme:LE(this.config.colorScheme),content:t})}makeFileDiffHtml(e,t){if(this.config.renderNothingWhenEmpty&&Array.isArray(e.blocks)&&e.blocks.length===0)return"";const n=this.hoganUtils.template(a5,"file-diff"),i=this.hoganUtils.template(Xl,"file-path"),a=this.hoganUtils.template(s5,"file"),s=this.hoganUtils.template(o5,PE(e));return n.render({file:e,fileHtmlId:NE(e),diffs:t,filePath:i.render({fileDiffName:zf(e)},{fileIcon:a,fileTag:s})})}generateEmptyDiff(){return{right:"",left:this.hoganUtils.render(Xl,"empty-diff",{contentClass:"d2h-code-side-line",CSSLineClass:pi})}}generateFileHtml(e){const t=OE(IE(n=>es(n.content,e.isCombined).content));return e.blocks.map(n=>{const i={left:this.makeHeaderHtml(n.header,e),right:this.makeHeaderHtml("")};return this.applyLineGroupping(n).forEach(([a,s,o])=>{if(s.length&&o.length&&!a.length)this.applyRematchMatching(s,o,t).map(([A,l])=>{const{left:u,right:c}=this.processChangedLines(e.isCombined,A,l);i.left+=u,i.right+=c});else if(a.length)a.forEach(A=>{const{prefix:l,content:u}=es(A.content,e.isCombined),{left:c,right:d}=this.generateLineHtml({type:pi.CONTEXT,prefix:l,content:u,number:A.oldNumber},{type:pi.CONTEXT,prefix:l,content:u,number:A.newNumber});i.left+=c,i.right+=d});else if(s.length||o.length){const{left:A,right:l}=this.processChangedLines(e.isCombined,s,o);i.left+=A,i.right+=l}else console.error("Unknown state reached while processing groups of lines",a,s,o)}),i}).reduce((n,i)=>({left:n.left+i.left,right:n.right+i.right}),{left:"",right:""})}applyLineGroupping(e){const t=[];let n=[],i=[];for(let a=0;a<e.lines.length;a++){const s=e.lines[a];(s.type!==hr.INSERT&&i.length||s.type===hr.CONTEXT&&n.length>0)&&(t.push([[],n,i]),n=[],i=[]),s.type===hr.CONTEXT?t.push([[s],[],[]]):s.type===hr.INSERT&&n.length===0?t.push([[],[],[s]]):s.type===hr.INSERT&&n.length>0?i.push(s):s.type===hr.DELETE&&n.push(s)}return(n.length||i.length)&&(t.push([[],n,i]),n=[],i=[]),t}applyRematchMatching(e,t,n){const i=e.length*t.length,a=UN(e.concat(t).map(o=>o.content.length));return i<this.config.matchingMaxComparisons&&a<this.config.maxLineSizeInBlockForComparison&&(this.config.matching==="lines"||this.config.matching==="words")?n(e,t):[[e,t]]}makeHeaderHtml(e,t){return this.hoganUtils.render(Xl,"block-header",{CSSLineClass:pi,blockHeader:t!=null&&t.isTooBig?e:ul(e),lineClass:"d2h-code-side-linenumber",contentClass:"d2h-code-side-line"})}processChangedLines(e,t,n){const i={right:"",left:""},a=Math.max(t.length,n.length);for(let s=0;s<a;s++){const o=t[s],A=n[s],l=o!==void 0&&A!==void 0?HN(o.content,A.content,e,this.config):void 0,u=o!==void 0&&o.oldNumber!==void 0?Object.assign(Object.assign({},l!==void 0?{prefix:l.oldLine.prefix,content:l.oldLine.content,type:pi.DELETE_CHANGES}:Object.assign(Object.assign({},es(o.content,e)),{type:Dh(o.type)})),{number:o.oldNumber}):void 0,c=A!==void 0&&A.newNumber!==void 0?Object.assign(Object.assign({},l!==void 0?{prefix:l.newLine.prefix,content:l.newLine.content,type:pi.INSERT_CHANGES}:Object.assign(Object.assign({},es(A.content,e)),{type:Dh(A.type)})),{number:A.newNumber}):void 0,{left:d,right:h}=this.generateLineHtml(u,c);i.left+=d,i.right+=h}return i}generateLineHtml(e,t){return{left:this.generateSingleHtml(e),right:this.generateSingleHtml(t)}}generateSingleHtml(e){const t="d2h-code-side-linenumber",n="d2h-code-side-line";return this.hoganUtils.render(Xl,"line",{type:(e==null?void 0:e.type)||`${pi.CONTEXT} d2h-emptyplaceholder`,lineClass:e!==void 0?t:`${t} d2h-code-side-emptyplaceholder`,contentClass:e!==void 0?n:`${n} d2h-code-side-emptyplaceholder`,prefix:(e==null?void 0:e.prefix)===" "?"&nbsp;":e==null?void 0:e.prefix,content:e==null?void 0:e.content,lineNumber:e==null?void 0:e.number})}}var Wp={},s2;function l5(){return s2||(s2=1,(function(r){(function(e){var t=/\S/,n=/\"/g,i=/\n/g,a=/\r/g,s=/\\/g,o=/\u2028/,A=/\u2029/;e.tags={"#":1,"^":2,"<":3,$:4,"/":5,"!":6,">":7,"=":8,_v:9,"{":10,"&":11,_t:12},e.scan=function(T,F){var I=T.length,O=0,P=1,G=2,ee=O,te=null,N=null,K="",J=[],be=!1,re=0,ne=0,ue="{{",Y="}}";function U(){K.length>0&&(J.push({tag:"_t",text:new String(K)}),K="")}function W(){for(var de=!0,X=ne;X<J.length;X++)if(de=e.tags[J[X].tag]<e.tags._v||J[X].tag=="_t"&&J[X].text.match(t)===null,!de)return!1;return de}function ie(de,X){if(U(),de&&W())for(var xe=ne,ce;xe<J.length;xe++)J[xe].text&&((ce=J[xe+1])&&ce.tag==">"&&(ce.indent=J[xe].text.toString()),J.splice(xe,1));else X||J.push({tag:`
16
- `});be=!1,ne=J.length}function Ee(de,X){var xe="="+Y,ce=de.indexOf(xe,X),De=u(de.substring(de.indexOf("=",X)+1,ce)).split(" ");return ue=De[0],Y=De[De.length-1],ce+xe.length-1}for(F&&(F=F.split(" "),ue=F[0],Y=F[1]),re=0;re<I;re++)ee==O?c(ue,T,re)?(--re,U(),ee=P):T.charAt(re)==`
17
- `?ie(be):K+=T.charAt(re):ee==P?(re+=ue.length-1,N=e.tags[T.charAt(re+1)],te=N?T.charAt(re+1):"_v",te=="="?(re=Ee(T,re),ee=O):(N&&re++,ee=G),be=re):c(Y,T,re)?(J.push({tag:te,n:u(K),otag:ue,ctag:Y,i:te=="/"?be-ue.length:re+Y.length}),K="",re+=Y.length-1,ee=O,te=="{"&&(Y=="}}"?re++:l(J[J.length-1]))):K+=T.charAt(re);return ie(be,!0),J};function l(_){_.n.substr(_.n.length-1)==="}"&&(_.n=_.n.substring(0,_.n.length-1))}function u(_){return _.trim?_.trim():_.replace(/^\s*|\s*$/g,"")}function c(_,T,F){if(T.charAt(F)!=_.charAt(0))return!1;for(var I=1,O=_.length;I<O;I++)if(T.charAt(F+I)!=_.charAt(I))return!1;return!0}var d={_t:!0,"\n":!0,$:!0,"/":!0};function h(_,T,F,I){var O=[],P=null,G=null,ee=null;for(G=F[F.length-1];_.length>0;){if(ee=_.shift(),G&&G.tag=="<"&&!(ee.tag in d))throw new Error("Illegal content in < super tag.");if(e.tags[ee.tag]<=e.tags.$||f(ee,I))F.push(ee),ee.nodes=h(_,ee.tag,F,I);else if(ee.tag=="/"){if(F.length===0)throw new Error("Closing tag without opener: /"+ee.n);if(P=F.pop(),ee.n!=P.n&&!p(ee.n,P.n,I))throw new Error("Nesting error: "+P.n+" vs. "+ee.n);return P.end=ee.i,O}else ee.tag==`
18
- `&&(ee.last=_.length==0||_[0].tag==`
19
- `);O.push(ee)}if(F.length>0)throw new Error("missing closing tag: "+F.pop().n);return O}function f(_,T){for(var F=0,I=T.length;F<I;F++)if(T[F].o==_.n)return _.tag="#",!0}function p(_,T,F){for(var I=0,O=F.length;I<O;I++)if(F[I].c==_&&F[I].o==T)return!0}function g(_){var T=[];for(var F in _)T.push('"'+y(F)+'": function(c,p,t,i) {'+_[F]+"}");return"{ "+T.join(",")+" }"}function v(_){var T=[];for(var F in _.partials)T.push('"'+y(F)+'":{name:"'+y(_.partials[F].name)+'", '+v(_.partials[F])+"}");return"partials: {"+T.join(",")+"}, subs: "+g(_.subs)}e.stringify=function(_,T,F){return"{code: function (c,p,i) { "+e.wrapMain(_.code)+" },"+v(_)+"}"};var m=0;e.generate=function(_,T,F){m=0;var I={code:"",subs:{},partials:{}};return e.walk(_,I),F.asString?this.stringify(I,T,F):this.makeTemplate(I,T,F)},e.wrapMain=function(_){return'var t=this;t.b(i=i||"");'+_+"return t.fl();"},e.template=e.Template,e.makeTemplate=function(_,T,F){var I=this.makePartials(_);return I.code=new Function("c","p","i",this.wrapMain(_.code)),new this.template(I,T,this,F)},e.makePartials=function(_){var T,F={subs:{},partials:_.partials,name:_.name};for(T in F.partials)F.partials[T]=this.makePartials(F.partials[T]);for(T in _.subs)F.subs[T]=new Function("c","p","t","i",_.subs[T]);return F};function y(_){return _.replace(s,"\\\\").replace(n,'\\"').replace(i,"\\n").replace(a,"\\r").replace(o,"\\u2028").replace(A,"\\u2029")}function w(_){return~_.indexOf(".")?"d":"f"}function B(_,T){var F="<"+(T.prefix||""),I=F+_.n+m++;return T.partials[I]={name:_.n,partials:{}},T.code+='t.b(t.rp("'+y(I)+'",c,p,"'+(_.indent||"")+'"));',I}e.codegen={"#":function(_,T){T.code+="if(t.s(t."+w(_.n)+'("'+y(_.n)+'",c,p,1),c,p,0,'+_.i+","+_.end+',"'+_.otag+" "+_.ctag+'")){t.rs(c,p,function(c,p,t){',e.walk(_.nodes,T),T.code+="});c.pop();}"},"^":function(_,T){T.code+="if(!t.s(t."+w(_.n)+'("'+y(_.n)+'",c,p,1),c,p,1,0,0,"")){',e.walk(_.nodes,T),T.code+="};"},">":B,"<":function(_,T){var F={partials:{},code:"",subs:{},inPartial:!0};e.walk(_.nodes,F);var I=T.partials[B(_,T)];I.subs=F.subs,I.partials=F.partials},$:function(_,T){var F={subs:{},code:"",partials:T.partials,prefix:_.n};e.walk(_.nodes,F),T.subs[_.n]=F.code,T.inPartial||(T.code+='t.sub("'+y(_.n)+'",c,p,i);')},"\n":function(_,T){T.code+=k('"\\n"'+(_.last?"":" + i"))},_v:function(_,T){T.code+="t.b(t.v(t."+w(_.n)+'("'+y(_.n)+'",c,p,0)));'},_t:function(_,T){T.code+=k('"'+y(_.text)+'"')},"{":x,"&":x};function x(_,T){T.code+="t.b(t.t(t."+w(_.n)+'("'+y(_.n)+'",c,p,0)));'}function k(_){return"t.b("+_+");"}e.walk=function(_,T){for(var F,I=0,O=_.length;I<O;I++)F=e.codegen[_[I].tag],F&&F(_[I],T);return T},e.parse=function(_,T,F){return F=F||{},h(_,"",[],F.sectionTags||[])},e.cache={},e.cacheKey=function(_,T){return[_,!!T.asString,!!T.disableLambda,T.delimiters,!!T.modelGet].join("||")},e.compile=function(_,T){T=T||{};var F=e.cacheKey(_,T),I=this.cache[F];if(I){var O=I.partials;for(var P in O)delete O[P].instance;return I}return I=this.generate(this.parse(this.scan(_,T.delimiters),_,T),_,T),this.cache[F]=I}})(r)})(Wp)),Wp}var qp={},o2;function u5(){return o2||(o2=1,(function(r){(function(e){e.Template=function(h,f,p,g){h=h||{},this.r=h.code||this.r,this.c=p,this.options=g||{},this.text=f||"",this.partials=h.partials||{},this.subs=h.subs||{},this.buf=""},e.Template.prototype={r:function(h,f,p){return""},v:c,t:u,render:function(f,p,g){return this.ri([f],p||{},g)},ri:function(h,f,p){return this.r(h,f,p)},ep:function(h,f){var p=this.partials[h],g=f[p.name];if(p.instance&&p.base==g)return p.instance;if(typeof g=="string"){if(!this.c)throw new Error("No compiler available.");g=this.c.compile(g,this.options)}if(!g)return null;if(this.partials[h].base=g,p.subs){f.stackText||(f.stackText={});for(key in p.subs)f.stackText[key]||(f.stackText[key]=this.activeSub!==void 0&&f.stackText[this.activeSub]?f.stackText[this.activeSub]:this.text);g=n(g,p.subs,p.partials,this.stackSubs,this.stackPartials,f.stackText)}return this.partials[h].instance=g,g},rp:function(h,f,p,g){var v=this.ep(h,p);return v?v.ri(f,p,g):""},rs:function(h,f,p){var g=h[h.length-1];if(!d(g)){p(h,f,this);return}for(var v=0;v<g.length;v++)h.push(g[v]),p(h,f,this),h.pop()},s:function(h,f,p,g,v,m,y){var w;return d(h)&&h.length===0?!1:(typeof h=="function"&&(h=this.ms(h,f,p,g,v,m,y)),w=!!h,!g&&w&&f&&f.push(typeof h=="object"?h:f[f.length-1]),w)},d:function(h,f,p,g){var v,m=h.split("."),y=this.f(m[0],f,p,g),w=this.options.modelGet,B=null;if(h==="."&&d(f[f.length-2]))y=f[f.length-1];else for(var x=1;x<m.length;x++)v=t(m[x],y,w),v!==void 0?(B=y,y=v):y="";return g&&!y?!1:(!g&&typeof y=="function"&&(f.push(B),y=this.mv(y,f,p),f.pop()),y)},f:function(h,f,p,g){for(var v=!1,m=null,y=!1,w=this.options.modelGet,B=f.length-1;B>=0;B--)if(m=f[B],v=t(h,m,w),v!==void 0){y=!0;break}return y?(!g&&typeof v=="function"&&(v=this.mv(v,f,p)),v):g?!1:""},ls:function(h,f,p,g,v,m){var y=this.options.delimiters;return this.options.delimiters=m,this.b(this.ct(u(h.call(f,v,p)),f,g)),this.options.delimiters=y,!1},ct:function(h,f,p){if(this.options.disableLambda)throw new Error("Lambda features disabled.");return this.c.compile(h,this.options).render(f,p)},b:function(h){this.buf+=h},fl:function(){var h=this.buf;return this.buf="",h},ms:function(h,f,p,g,v,m,y){var w,B=f[f.length-1],x=h.call(B);return typeof x=="function"?g?!0:(w=this.activeSub&&this.subsText&&this.subsText[this.activeSub]?this.subsText[this.activeSub]:this.text,this.ls(x,B,f,p,w.substring(v,m),y)):x},mv:function(h,f,p){var g=f[f.length-1],v=h.call(g);return typeof v=="function"?this.ct(u(v.call(g)),g,p):v},sub:function(h,f,p,g){var v=this.subs[h];v&&(this.activeSub=h,v(f,p,this,g),this.activeSub=!1)}};function t(h,f,p){var g;return f&&typeof f=="object"&&(f[h]!==void 0?g=f[h]:p&&f.get&&typeof f.get=="function"&&(g=f.get(h))),g}function n(h,f,p,g,v,m){function y(){}y.prototype=h;function w(){}w.prototype=h.subs;var B,x=new y;x.subs=new w,x.subsText={},x.buf="",g=g||{},x.stackSubs=g,x.subsText=m;for(B in f)g[B]||(g[B]=f[B]);for(B in g)x.subs[B]=g[B];v=v||{},x.stackPartials=v;for(B in p)v[B]||(v[B]=p[B]);for(B in v)x.partials[B]=v[B];return x}var i=/&/g,a=/</g,s=/>/g,o=/\'/g,A=/\"/g,l=/[&<>\"\']/;function u(h){return String(h??"")}function c(h){return h=u(h),l.test(h)?h.replace(i,"&amp;").replace(a,"&lt;").replace(s,"&gt;").replace(o,"&#39;").replace(A,"&quot;"):h}var d=Array.isArray||function(h){return Object.prototype.toString.call(h)==="[object Array]"}})(r)})(qp)),qp}var Yp,A2;function c5(){if(A2)return Yp;A2=1;var r=l5();return r.Template=u5().Template,r.template=r.Template,Yp=r,Yp}var Ar=c5();const wr={};wr["file-summary-line"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<li class="d2h-file-list-line">'),n.b(`
20
- `+t),n.b(' <span class="d2h-file-name-wrapper">'),n.b(`
21
- `+t),n.b(n.rp("<fileIcon0",r,e," ")),n.b(' <a href="#'),n.b(n.v(n.f("fileHtmlId",r,e,0))),n.b('" class="d2h-file-name">'),n.b(n.v(n.f("fileName",r,e,0))),n.b("</a>"),n.b(`
22
- `+t),n.b(' <span class="d2h-file-stats">'),n.b(`
23
- `+t),n.b(' <span class="d2h-lines-added">'),n.b(n.v(n.f("addedLines",r,e,0))),n.b("</span>"),n.b(`
24
- `+t),n.b(' <span class="d2h-lines-deleted">'),n.b(n.v(n.f("deletedLines",r,e,0))),n.b("</span>"),n.b(`
25
- `+t),n.b(" </span>"),n.b(`
26
- `+t),n.b(" </span>"),n.b(`
27
- `+t),n.b("</li>"),n.fl()},partials:{"<fileIcon0":{name:"fileIcon",partials:{},subs:{}}},subs:{}});wr["file-summary-wrapper"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<div class="d2h-file-list-wrapper '),n.b(n.v(n.f("colorScheme",r,e,0))),n.b('">'),n.b(`
28
- `+t),n.b(' <div class="d2h-file-list-header">'),n.b(`
29
- `+t),n.b(' <span class="d2h-file-list-title">Files changed ('),n.b(n.v(n.f("filesNumber",r,e,0))),n.b(")</span>"),n.b(`
30
- `+t),n.b(' <a class="d2h-file-switch d2h-hide">hide</a>'),n.b(`
31
- `+t),n.b(' <a class="d2h-file-switch d2h-show">show</a>'),n.b(`
32
- `+t),n.b(" </div>"),n.b(`
33
- `+t),n.b(' <ol class="d2h-file-list">'),n.b(`
34
- `+t),n.b(" "),n.b(n.t(n.f("files",r,e,0))),n.b(`
35
- `+t),n.b(" </ol>"),n.b(`
36
- `+t),n.b("</div>"),n.fl()},partials:{},subs:{}});wr["generic-block-header"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b("<tr>"),n.b(`
37
- `+t),n.b(' <td class="'),n.b(n.v(n.f("lineClass",r,e,0))),n.b(" "),n.b(n.v(n.d("CSSLineClass.INFO",r,e,0))),n.b('"></td>'),n.b(`
38
- `+t),n.b(' <td class="'),n.b(n.v(n.d("CSSLineClass.INFO",r,e,0))),n.b('">'),n.b(`
39
- `+t),n.b(' <div class="'),n.b(n.v(n.f("contentClass",r,e,0))),n.b('">'),n.s(n.f("blockHeader",r,e,1),r,e,0,156,173,"{{ }}")&&(n.rs(r,e,function(i,a,s){s.b(s.t(s.f("blockHeader",i,a,0)))}),r.pop()),n.s(n.f("blockHeader",r,e,1),r,e,1,0,0,"")||n.b("&nbsp;"),n.b("</div>"),n.b(`
40
- `+t),n.b(" </td>"),n.b(`
41
- `+t),n.b("</tr>"),n.fl()},partials:{},subs:{}});wr["generic-empty-diff"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b("<tr>"),n.b(`
42
- `+t),n.b(' <td class="'),n.b(n.v(n.d("CSSLineClass.INFO",r,e,0))),n.b('">'),n.b(`
43
- `+t),n.b(' <div class="'),n.b(n.v(n.f("contentClass",r,e,0))),n.b('">'),n.b(`
44
- `+t),n.b(" File without changes"),n.b(`
45
- `+t),n.b(" </div>"),n.b(`
46
- `+t),n.b(" </td>"),n.b(`
47
- `+t),n.b("</tr>"),n.fl()},partials:{},subs:{}});wr["generic-file-path"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<span class="d2h-file-name-wrapper">'),n.b(`
48
- `+t),n.b(n.rp("<fileIcon0",r,e," ")),n.b(' <span class="d2h-file-name">'),n.b(n.v(n.f("fileDiffName",r,e,0))),n.b("</span>"),n.b(`
49
- `+t),n.b(n.rp("<fileTag1",r,e," ")),n.b("</span>"),n.b(`
50
- `+t),n.b('<label class="d2h-file-collapse">'),n.b(`
51
- `+t),n.b(' <input class="d2h-file-collapse-input" type="checkbox" name="viewed" value="viewed">'),n.b(`
52
- `+t),n.b(" Viewed"),n.b(`
53
- `+t),n.b("</label>"),n.fl()},partials:{"<fileIcon0":{name:"fileIcon",partials:{},subs:{}},"<fileTag1":{name:"fileTag",partials:{},subs:{}}},subs:{}});wr["generic-line"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b("<tr>"),n.b(`
54
- `+t),n.b(' <td class="'),n.b(n.v(n.f("lineClass",r,e,0))),n.b(" "),n.b(n.v(n.f("type",r,e,0))),n.b('">'),n.b(`
55
- `+t),n.b(" "),n.b(n.t(n.f("lineNumber",r,e,0))),n.b(`
56
- `+t),n.b(" </td>"),n.b(`
57
- `+t),n.b(' <td class="'),n.b(n.v(n.f("type",r,e,0))),n.b('">'),n.b(`
58
- `+t),n.b(' <div class="'),n.b(n.v(n.f("contentClass",r,e,0))),n.b('">'),n.b(`
59
- `+t),n.s(n.f("prefix",r,e,1),r,e,0,162,238,"{{ }}")&&(n.rs(r,e,function(i,a,s){s.b(' <span class="d2h-code-line-prefix">'),s.b(s.t(s.f("prefix",i,a,0))),s.b("</span>"),s.b(`
60
- `+t)}),r.pop()),n.s(n.f("prefix",r,e,1),r,e,1,0,0,"")||(n.b(' <span class="d2h-code-line-prefix">&nbsp;</span>'),n.b(`
61
- `+t)),n.s(n.f("content",r,e,1),r,e,0,371,445,"{{ }}")&&(n.rs(r,e,function(i,a,s){s.b(' <span class="d2h-code-line-ctn">'),s.b(s.t(s.f("content",i,a,0))),s.b("</span>"),s.b(`
62
- `+t)}),r.pop()),n.s(n.f("content",r,e,1),r,e,1,0,0,"")||(n.b(' <span class="d2h-code-line-ctn"><br></span>'),n.b(`
63
- `+t)),n.b(" </div>"),n.b(`
64
- `+t),n.b(" </td>"),n.b(`
65
- `+t),n.b("</tr>"),n.fl()},partials:{},subs:{}});wr["generic-wrapper"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<div class="d2h-wrapper '),n.b(n.v(n.f("colorScheme",r,e,0))),n.b('">'),n.b(`
66
- `+t),n.b(" "),n.b(n.t(n.f("content",r,e,0))),n.b(`
67
- `+t),n.b("</div>"),n.fl()},partials:{},subs:{}});wr["icon-file-added"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<svg aria-hidden="true" class="d2h-icon d2h-added" height="16" title="added" version="1.1" viewBox="0 0 14 16"'),n.b(`
68
- `+t),n.b(' width="14">'),n.b(`
69
- `+t),n.b(' <path d="M13 1H1C0.45 1 0 1.45 0 2v12c0 0.55 0.45 1 1 1h12c0.55 0 1-0.45 1-1V2c0-0.55-0.45-1-1-1z m0 13H1V2h12v12zM6 9H3V7h3V4h2v3h3v2H8v3H6V9z"></path>'),n.b(`
70
- `+t),n.b("</svg>"),n.fl()},partials:{},subs:{}});wr["icon-file-changed"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<svg aria-hidden="true" class="d2h-icon d2h-changed" height="16" title="modified" version="1.1"'),n.b(`
71
- `+t),n.b(' viewBox="0 0 14 16" width="14">'),n.b(`
72
- `+t),n.b(' <path d="M13 1H1C0.45 1 0 1.45 0 2v12c0 0.55 0.45 1 1 1h12c0.55 0 1-0.45 1-1V2c0-0.55-0.45-1-1-1z m0 13H1V2h12v12zM4 8c0-1.66 1.34-3 3-3s3 1.34 3 3-1.34 3-3 3-3-1.34-3-3z"></path>'),n.b(`
73
- `+t),n.b("</svg>"),n.fl()},partials:{},subs:{}});wr["icon-file-deleted"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<svg aria-hidden="true" class="d2h-icon d2h-deleted" height="16" title="removed" version="1.1"'),n.b(`
74
- `+t),n.b(' viewBox="0 0 14 16" width="14">'),n.b(`
75
- `+t),n.b(' <path d="M13 1H1C0.45 1 0 1.45 0 2v12c0 0.55 0.45 1 1 1h12c0.55 0 1-0.45 1-1V2c0-0.55-0.45-1-1-1z m0 13H1V2h12v12zM11 9H3V7h8v2z"></path>'),n.b(`
76
- `+t),n.b("</svg>"),n.fl()},partials:{},subs:{}});wr["icon-file-renamed"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<svg aria-hidden="true" class="d2h-icon d2h-moved" height="16" title="renamed" version="1.1"'),n.b(`
77
- `+t),n.b(' viewBox="0 0 14 16" width="14">'),n.b(`
78
- `+t),n.b(' <path d="M6 9H3V7h3V4l5 4-5 4V9z m8-7v12c0 0.55-0.45 1-1 1H1c-0.55 0-1-0.45-1-1V2c0-0.55 0.45-1 1-1h12c0.55 0 1 0.45 1 1z m-1 0H1v12h12V2z"></path>'),n.b(`
79
- `+t),n.b("</svg>"),n.fl()},partials:{},subs:{}});wr["icon-file"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<svg aria-hidden="true" class="d2h-icon" height="16" version="1.1" viewBox="0 0 12 16" width="12">'),n.b(`
80
- `+t),n.b(' <path d="M6 5H2v-1h4v1zM2 8h7v-1H2v1z m0 2h7v-1H2v1z m0 2h7v-1H2v1z m10-7.5v9.5c0 0.55-0.45 1-1 1H1c-0.55 0-1-0.45-1-1V2c0-0.55 0.45-1 1-1h7.5l3.5 3.5z m-1 0.5L8 2H1v12h10V5z"></path>'),n.b(`
81
- `+t),n.b("</svg>"),n.fl()},partials:{},subs:{}});wr["line-by-line-file-diff"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<div id="'),n.b(n.v(n.f("fileHtmlId",r,e,0))),n.b('" class="d2h-file-wrapper" data-lang="'),n.b(n.v(n.d("file.language",r,e,0))),n.b('">'),n.b(`
82
- `+t),n.b(' <div class="d2h-file-header">'),n.b(`
83
- `+t),n.b(" "),n.b(n.t(n.f("filePath",r,e,0))),n.b(`
84
- `+t),n.b(" </div>"),n.b(`
85
- `+t),n.b(' <div class="d2h-file-diff">'),n.b(`
86
- `+t),n.b(' <div class="d2h-code-wrapper">'),n.b(`
87
- `+t),n.b(' <table class="d2h-diff-table">'),n.b(`
88
- `+t),n.b(' <tbody class="d2h-diff-tbody">'),n.b(`
89
- `+t),n.b(" "),n.b(n.t(n.f("diffs",r,e,0))),n.b(`
90
- `+t),n.b(" </tbody>"),n.b(`
91
- `+t),n.b(" </table>"),n.b(`
92
- `+t),n.b(" </div>"),n.b(`
93
- `+t),n.b(" </div>"),n.b(`
94
- `+t),n.b("</div>"),n.fl()},partials:{},subs:{}});wr["line-by-line-numbers"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<div class="line-num1">'),n.b(n.v(n.f("oldNumber",r,e,0))),n.b("</div>"),n.b(`
95
- `+t),n.b('<div class="line-num2">'),n.b(n.v(n.f("newNumber",r,e,0))),n.b("</div>"),n.fl()},partials:{},subs:{}});wr["side-by-side-file-diff"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<div id="'),n.b(n.v(n.f("fileHtmlId",r,e,0))),n.b('" class="d2h-file-wrapper" data-lang="'),n.b(n.v(n.d("file.language",r,e,0))),n.b('">'),n.b(`
96
- `+t),n.b(' <div class="d2h-file-header">'),n.b(`
97
- `+t),n.b(" "),n.b(n.t(n.f("filePath",r,e,0))),n.b(`
98
- `+t),n.b(" </div>"),n.b(`
99
- `+t),n.b(' <div class="d2h-files-diff">'),n.b(`
100
- `+t),n.b(' <div class="d2h-file-side-diff">'),n.b(`
101
- `+t),n.b(' <div class="d2h-code-wrapper">'),n.b(`
102
- `+t),n.b(' <table class="d2h-diff-table">'),n.b(`
103
- `+t),n.b(' <tbody class="d2h-diff-tbody">'),n.b(`
104
- `+t),n.b(" "),n.b(n.t(n.d("diffs.left",r,e,0))),n.b(`
105
- `+t),n.b(" </tbody>"),n.b(`
106
- `+t),n.b(" </table>"),n.b(`
107
- `+t),n.b(" </div>"),n.b(`
108
- `+t),n.b(" </div>"),n.b(`
109
- `+t),n.b(' <div class="d2h-file-side-diff">'),n.b(`
110
- `+t),n.b(' <div class="d2h-code-wrapper">'),n.b(`
111
- `+t),n.b(' <table class="d2h-diff-table">'),n.b(`
112
- `+t),n.b(' <tbody class="d2h-diff-tbody">'),n.b(`
113
- `+t),n.b(" "),n.b(n.t(n.d("diffs.right",r,e,0))),n.b(`
114
- `+t),n.b(" </tbody>"),n.b(`
115
- `+t),n.b(" </table>"),n.b(`
116
- `+t),n.b(" </div>"),n.b(`
117
- `+t),n.b(" </div>"),n.b(`
118
- `+t),n.b(" </div>"),n.b(`
119
- `+t),n.b("</div>"),n.fl()},partials:{},subs:{}});wr["tag-file-added"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<span class="d2h-tag d2h-added d2h-added-tag">ADDED</span>'),n.fl()},partials:{},subs:{}});wr["tag-file-changed"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<span class="d2h-tag d2h-changed d2h-changed-tag">CHANGED</span>'),n.fl()},partials:{},subs:{}});wr["tag-file-deleted"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<span class="d2h-tag d2h-deleted d2h-deleted-tag">DELETED</span>'),n.fl()},partials:{},subs:{}});wr["tag-file-renamed"]=new Ar.Template({code:function(r,e,t){var n=this;return n.b(t=t||""),n.b('<span class="d2h-tag d2h-moved d2h-moved-tag">RENAMED</span>'),n.fl()},partials:{},subs:{}});class d5{constructor({compiledTemplates:e={},rawTemplates:t={}}){const n=Object.entries(t).reduce((i,[a,s])=>{const o=Ar.compile(s,{asString:!1});return Object.assign(Object.assign({},i),{[a]:o})},{});this.preCompiledTemplates=Object.assign(Object.assign(Object.assign({},wr),e),n)}static compile(e){return Ar.compile(e,{asString:!1})}render(e,t,n,i,a){const s=this.templateKey(e,t);try{return this.preCompiledTemplates[s].render(n,i,a)}catch{throw new Error(`Could not find template to render '${s}'`)}}template(e,t){return this.preCompiledTemplates[this.templateKey(e,t)]}templateKey(e,t){return`${e}-${t}`}}const zN=Object.assign(Object.assign(Object.assign({},$N),GN),{outputFormat:O6.LINE_BY_LINE,drawFileList:!0});function h5(r,e={}){return RN(r,Object.assign(Object.assign({},zN),e))}function f5(r,e={}){const t=Object.assign(Object.assign({},zN),e),n=typeof r=="string"?RN(r,t):r,i=new d5(t),{colorScheme:a}=t,s={colorScheme:a},o=t.drawFileList?new t5(i,s).render(n):"",A=t.outputFormat==="side-by-side"?new A5(i,t).render(n):new i5(i,t).render(n);return o+A}const g5={class:"diff-viewer"},p5={key:0,class:"diff-files"},v5=["onClick"],m5={class:"diff-file-chevron","aria-hidden":"true"},y5=["title"],w5={class:"diff-file-stats"},b5={class:"add"},B5={class:"del"},E5={key:0,class:"diff-file-hint"},x5=["innerHTML"],C5={key:1,class:"diff-fallback mono"},S5=200,_5=Or({__name:"DiffViewer",props:{patch:{}},setup(r){const e=r,t=/(?:^|[/\\])(pnpm-lock\.yaml|package-lock\.json|yarn\.lock)$/i,n={drawFileList:!1,outputFormat:"line-by-line",matching:"lines",colorScheme:oA.DARK,renderNothingWhenEmpty:!0},i=Fe([]),a=Fe(!1),s=Fe(new Set),o=Fe({});function A(p,g){return`${g}\0${p.oldName}\0${p.newName}`}function l(p){return t.test(p.newName)||t.test(p.oldName)?!0:p.addedLines+p.deletedLines>=S5}function u(p){return p.isRename||p.isCopy?`${p.oldName} → ${p.newName}`:p.newName||p.oldName}function c(p){return p.isBinary?{label:"BINARY",cls:"d2h-changed"}:p.isNew?{label:"ADDED",cls:"d2h-added"}:p.isDeleted?{label:"DELETED",cls:"d2h-deleted"}:p.isRename?{label:"RENAMED",cls:"d2h-moved"}:p.isCopy?{label:"COPIED",cls:"d2h-moved"}:{label:"CHANGED",cls:"d2h-changed"}}function d(p){try{return f5([p],n)}catch{return""}}function h(p,g){return s.value.has(A(p,g))}function f(p,g){const v=A(p,g),m=new Set(s.value);m.has(v)?m.delete(v):(m.add(v),o.value[v]||(o.value={...o.value,[v]:d(p)})),s.value=m}return en(()=>e.patch,p=>{a.value=!1,o.value={};const g=new Set;if(!p.trim()){i.value=[],s.value=g;return}try{const v=h5(p);if(i.value=v,v.length===0){a.value=!0,s.value=g;return}const m={};v.forEach((y,w)=>{if(l(y))return;const B=A(y,w);g.add(B),m[B]=d(y)}),o.value=m,s.value=g}catch{i.value=[],a.value=!0,s.value=g}},{immediate:!0}),(p,g)=>(H(),Ae("div",g5,[i.value.length?(H(),Ae("div",p5,[(H(!0),Ae(rt,null,Ot(i.value,(v,m)=>(H(),Ae("section",{key:A(v,m),class:dn(["diff-file",{"is-open":h(v,m)}])},[z("button",{type:"button",class:"diff-file-head",onClick:y=>f(v,m)},[z("span",m5,ae(h(v,m)?"▾":"▸"),1),z("span",{class:"diff-file-path mono",title:u(v)},ae(u(v)),9,y5),z("span",{class:dn(["d2h-tag",c(v).cls])},ae(c(v).label),3),z("span",w5,[z("span",b5,"+"+ae(v.addedLines),1),z("span",B5,"-"+ae(v.deletedLines),1)]),!h(v,m)&&l(v)?(H(),Ae("span",E5,"点击展开")):ke("",!0)],8,v5),h(v,m)&&o.value[A(v,m)]?(H(),Ae("div",{key:0,class:"diff-file-body diff-html",innerHTML:o.value[A(v,m)]},null,8,x5)):ke("",!0)],2))),128))])):a.value?(H(),Ae("pre",C5,[(H(!0),Ae(rt,null,Ot(r.patch.split(`
120
- `),(v,m)=>(H(),Ae(rt,{key:m},[oe(ae(v)+`
121
- `,1)],64))),128))])):ke("",!0)]))}}),Yb=Rr(_5,[["__scopeId","data-v-4d70ee7c"]]);function fA(r){"@babel/helpers - typeof";return fA=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},fA(r)}function k5(r,e){if(fA(r)!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e);if(fA(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function VN(r){var e=k5(r,"string");return fA(e)=="symbol"?e:e+""}function Ye(r,e,t){return(e=VN(e))in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}function l2(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(i){return Object.getOwnPropertyDescriptor(r,i).enumerable})),t.push.apply(t,n)}return t}function bt(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?l2(Object(t),!0).forEach(function(n){Ye(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):l2(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}function Ne(r,e){if(!(r instanceof e))throw new TypeError("Cannot call a class as a function")}function u2(r,e){for(var t=0;t<e.length;t++){var n=e[t];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(r,VN(n.key),n)}}function Pe(r,e,t){return e&&u2(r.prototype,e),t&&u2(r,t),Object.defineProperty(r,"prototype",{writable:!1}),r}function Hh(r,e){(e==null||e>r.length)&&(e=r.length);for(var t=0,n=Array(e);t<e;t++)n[t]=r[t];return n}function T5(r){if(Array.isArray(r))return Hh(r)}function F5(r){if(typeof Symbol<"u"&&r[Symbol.iterator]!=null||r["@@iterator"]!=null)return Array.from(r)}function UE(r,e){if(r){if(typeof r=="string")return Hh(r,e);var t={}.toString.call(r).slice(8,-1);return t==="Object"&&r.constructor&&(t=r.constructor.name),t==="Map"||t==="Set"?Array.from(r):t==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t)?Hh(r,e):void 0}}function M5(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
122
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Qt(r){return T5(r)||F5(r)||UE(r)||M5()}function Bl(r){return Bl=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},Bl(r)}function KN(){try{var r=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(KN=function(){return!!r})()}function I5(r){if(r===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return r}function O5(r,e){if(e&&(fA(e)=="object"||typeof e=="function"))return e;if(e!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return I5(r)}function Ft(r,e,t){return e=Bl(e),O5(r,KN()?Reflect.construct(e,t||[],Bl(r).constructor):e.apply(r,t))}function Xb(r,e){return Xb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(t,n){return t.__proto__=n,t},Xb(r,e)}function Mt(r,e){if(typeof e!="function"&&e!==null)throw new TypeError("Super expression must either be null or a function");r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),Object.defineProperty(r,"prototype",{writable:!1}),e&&Xb(r,e)}function L5(r){if(Array.isArray(r))return r}function N5(r,e){var t=r==null?null:typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(t!=null){var n,i,a,s,o=[],A=!0,l=!1;try{if(a=(t=t.call(r)).next,e===0){if(Object(t)!==t)return;A=!1}else for(;!(A=(n=a.call(t)).done)&&(o.push(n.value),o.length!==e);A=!0);}catch(u){l=!0,i=u}finally{try{if(!A&&t.return!=null&&(s=t.return(),Object(s)!==s))return}finally{if(l)throw i}}return o}}function P5(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
123
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Tt(r,e){return L5(r)||N5(r,e)||UE(r,e)||P5()}var Xp={exports:{}},c2;function U5(){return c2||(c2=1,(function(r){var e=Object.prototype.hasOwnProperty,t="~";function n(){}Object.create&&(n.prototype=Object.create(null),new n().__proto__||(t=!1));function i(A,l,u){this.fn=A,this.context=l,this.once=u||!1}function a(A,l,u,c,d){if(typeof u!="function")throw new TypeError("The listener must be a function");var h=new i(u,c||A,d),f=t?t+l:l;return A._events[f]?A._events[f].fn?A._events[f]=[A._events[f],h]:A._events[f].push(h):(A._events[f]=h,A._eventsCount++),A}function s(A,l){--A._eventsCount===0?A._events=new n:delete A._events[l]}function o(){this._events=new n,this._eventsCount=0}o.prototype.eventNames=function(){var l=[],u,c;if(this._eventsCount===0)return l;for(c in u=this._events)e.call(u,c)&&l.push(t?c.slice(1):c);return Object.getOwnPropertySymbols?l.concat(Object.getOwnPropertySymbols(u)):l},o.prototype.listeners=function(l){var u=t?t+l:l,c=this._events[u];if(!c)return[];if(c.fn)return[c.fn];for(var d=0,h=c.length,f=new Array(h);d<h;d++)f[d]=c[d].fn;return f},o.prototype.listenerCount=function(l){var u=t?t+l:l,c=this._events[u];return c?c.fn?1:c.length:0},o.prototype.emit=function(l,u,c,d,h,f){var p=t?t+l:l;if(!this._events[p])return!1;var g=this._events[p],v=arguments.length,m,y;if(g.fn){switch(g.once&&this.removeListener(l,g.fn,void 0,!0),v){case 1:return g.fn.call(g.context),!0;case 2:return g.fn.call(g.context,u),!0;case 3:return g.fn.call(g.context,u,c),!0;case 4:return g.fn.call(g.context,u,c,d),!0;case 5:return g.fn.call(g.context,u,c,d,h),!0;case 6:return g.fn.call(g.context,u,c,d,h,f),!0}for(y=1,m=new Array(v-1);y<v;y++)m[y-1]=arguments[y];g.fn.apply(g.context,m)}else{var w=g.length,B;for(y=0;y<w;y++)switch(g[y].once&&this.removeListener(l,g[y].fn,void 0,!0),v){case 1:g[y].fn.call(g[y].context);break;case 2:g[y].fn.call(g[y].context,u);break;case 3:g[y].fn.call(g[y].context,u,c);break;case 4:g[y].fn.call(g[y].context,u,c,d);break;default:if(!m)for(B=1,m=new Array(v-1);B<v;B++)m[B-1]=arguments[B];g[y].fn.apply(g[y].context,m)}}return!0},o.prototype.on=function(l,u,c){return a(this,l,u,c,!1)},o.prototype.once=function(l,u,c){return a(this,l,u,c,!0)},o.prototype.removeListener=function(l,u,c,d){var h=t?t+l:l;if(!this._events[h])return this;if(!u)return s(this,h),this;var f=this._events[h];if(f.fn)f.fn===u&&(!d||f.once)&&(!c||f.context===c)&&s(this,h);else{for(var p=0,g=[],v=f.length;p<v;p++)(f[p].fn!==u||d&&!f[p].once||c&&f[p].context!==c)&&g.push(f[p]);g.length?this._events[h]=g.length===1?g[0]:g:s(this,h)}return this},o.prototype.removeAllListeners=function(l){var u;return l?(u=t?t+l:l,this._events[u]&&s(this,u)):(this._events=new n,this._eventsCount=0),this},o.prototype.off=o.prototype.removeListener,o.prototype.addListener=o.prototype.on,o.prefixed=t,o.EventEmitter=o,r.exports=o})(Xp)),Xp.exports}var R5=U5();const jN=xN(R5);var On=1e-6,mr=typeof Float32Array<"u"?Float32Array:Array,Q5="zyx";function WN(){var r=new mr(9);return mr!=Float32Array&&(r[1]=0,r[2]=0,r[3]=0,r[5]=0,r[6]=0,r[7]=0),r[0]=1,r[4]=1,r[8]=1,r}function D5(r,e){return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[4],r[4]=e[5],r[5]=e[6],r[6]=e[8],r[7]=e[9],r[8]=e[10],r}function H5(r,e,t,n,i,a,s,o,A){var l=new mr(9);return l[0]=r,l[1]=e,l[2]=t,l[3]=n,l[4]=i,l[5]=a,l[6]=s,l[7]=o,l[8]=A,l}function wn(){var r=new mr(16);return mr!=Float32Array&&(r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[11]=0,r[12]=0,r[13]=0,r[14]=0),r[0]=1,r[5]=1,r[10]=1,r[15]=1,r}function qN(r){var e=new mr(16);return e[0]=r[0],e[1]=r[1],e[2]=r[2],e[3]=r[3],e[4]=r[4],e[5]=r[5],e[6]=r[6],e[7]=r[7],e[8]=r[8],e[9]=r[9],e[10]=r[10],e[11]=r[11],e[12]=r[12],e[13]=r[13],e[14]=r[14],e[15]=r[15],e}function El(r,e){return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}function YN(r,e,t,n,i,a,s,o,A,l,u,c,d,h,f,p){var g=new mr(16);return g[0]=r,g[1]=e,g[2]=t,g[3]=n,g[4]=i,g[5]=a,g[6]=s,g[7]=o,g[8]=A,g[9]=l,g[10]=u,g[11]=c,g[12]=d,g[13]=h,g[14]=f,g[15]=p,g}function Zb(r,e,t,n,i,a,s,o,A,l,u,c,d,h,f,p,g){return r[0]=e,r[1]=t,r[2]=n,r[3]=i,r[4]=a,r[5]=s,r[6]=o,r[7]=A,r[8]=l,r[9]=u,r[10]=c,r[11]=d,r[12]=h,r[13]=f,r[14]=p,r[15]=g,r}function Eo(r){return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function XN(r,e){if(r===e){var t=e[1],n=e[2],i=e[3],a=e[6],s=e[7],o=e[11];r[1]=e[4],r[2]=e[8],r[3]=e[12],r[4]=t,r[6]=e[9],r[7]=e[13],r[8]=n,r[9]=a,r[11]=e[14],r[12]=i,r[13]=s,r[14]=o}else r[0]=e[0],r[1]=e[4],r[2]=e[8],r[3]=e[12],r[4]=e[1],r[5]=e[5],r[6]=e[9],r[7]=e[13],r[8]=e[2],r[9]=e[6],r[10]=e[10],r[11]=e[14],r[12]=e[3],r[13]=e[7],r[14]=e[11],r[15]=e[15];return r}function ts(r,e){var t=e[0],n=e[1],i=e[2],a=e[3],s=e[4],o=e[5],A=e[6],l=e[7],u=e[8],c=e[9],d=e[10],h=e[11],f=e[12],p=e[13],g=e[14],v=e[15],m=t*o-n*s,y=t*A-i*s,w=t*l-a*s,B=n*A-i*o,x=n*l-a*o,k=i*l-a*A,_=u*p-c*f,T=u*g-d*f,F=u*v-h*f,I=c*g-d*p,O=c*v-h*p,P=d*v-h*g,G=m*P-y*O+w*I+B*F-x*T+k*_;return G?(G=1/G,r[0]=(o*P-A*O+l*I)*G,r[1]=(i*O-n*P-a*I)*G,r[2]=(p*k-g*x+v*B)*G,r[3]=(d*x-c*k-h*B)*G,r[4]=(A*F-s*P-l*T)*G,r[5]=(t*P-i*F+a*T)*G,r[6]=(g*w-f*k-v*y)*G,r[7]=(u*k-d*w+h*y)*G,r[8]=(s*O-o*F+l*_)*G,r[9]=(n*F-t*O-a*_)*G,r[10]=(f*x-p*w+v*m)*G,r[11]=(c*w-u*x-h*m)*G,r[12]=(o*T-s*I-A*_)*G,r[13]=(t*I-n*T+i*_)*G,r[14]=(p*y-f*B-g*m)*G,r[15]=(u*B-c*y+d*m)*G,r):null}function $5(r,e){var t=e[0],n=e[1],i=e[2],a=e[3],s=e[4],o=e[5],A=e[6],l=e[7],u=e[8],c=e[9],d=e[10],h=e[11],f=e[12],p=e[13],g=e[14],v=e[15],m=t*o-n*s,y=t*A-i*s,w=t*l-a*s,B=n*A-i*o,x=n*l-a*o,k=i*l-a*A,_=u*p-c*f,T=u*g-d*f,F=u*v-h*f,I=c*g-d*p,O=c*v-h*p,P=d*v-h*g;return r[0]=o*P-A*O+l*I,r[1]=i*O-n*P-a*I,r[2]=p*k-g*x+v*B,r[3]=d*x-c*k-h*B,r[4]=A*F-s*P-l*T,r[5]=t*P-i*F+a*T,r[6]=g*w-f*k-v*y,r[7]=u*k-d*w+h*y,r[8]=s*O-o*F+l*_,r[9]=n*F-t*O-a*_,r[10]=f*x-p*w+v*m,r[11]=c*w-u*x-h*m,r[12]=o*T-s*I-A*_,r[13]=t*I-n*T+i*_,r[14]=p*y-f*B-g*m,r[15]=u*B-c*y+d*m,r}function ZN(r){var e=r[0],t=r[1],n=r[2],i=r[3],a=r[4],s=r[5],o=r[6],A=r[7],l=r[8],u=r[9],c=r[10],d=r[11],h=r[12],f=r[13],p=r[14],g=r[15],v=e*s-t*a,m=e*o-n*a,y=t*o-n*s,w=l*f-u*h,B=l*p-c*h,x=u*p-c*f,k=e*x-t*B+n*w,_=a*x-s*B+o*w,T=l*y-u*m+c*v,F=h*y-f*m+p*v;return A*k-i*_+g*T-d*F}function si(r,e,t){var n=e[0],i=e[1],a=e[2],s=e[3],o=e[4],A=e[5],l=e[6],u=e[7],c=e[8],d=e[9],h=e[10],f=e[11],p=e[12],g=e[13],v=e[14],m=e[15],y=t[0],w=t[1],B=t[2],x=t[3];return r[0]=y*n+w*o+B*c+x*p,r[1]=y*i+w*A+B*d+x*g,r[2]=y*a+w*l+B*h+x*v,r[3]=y*s+w*u+B*f+x*m,y=t[4],w=t[5],B=t[6],x=t[7],r[4]=y*n+w*o+B*c+x*p,r[5]=y*i+w*A+B*d+x*g,r[6]=y*a+w*l+B*h+x*v,r[7]=y*s+w*u+B*f+x*m,y=t[8],w=t[9],B=t[10],x=t[11],r[8]=y*n+w*o+B*c+x*p,r[9]=y*i+w*A+B*d+x*g,r[10]=y*a+w*l+B*h+x*v,r[11]=y*s+w*u+B*f+x*m,y=t[12],w=t[13],B=t[14],x=t[15],r[12]=y*n+w*o+B*c+x*p,r[13]=y*i+w*A+B*d+x*g,r[14]=y*a+w*l+B*h+x*v,r[15]=y*s+w*u+B*f+x*m,r}function cl(r,e,t){var n=t[0],i=t[1],a=t[2],s,o,A,l,u,c,d,h,f,p,g,v;return e===r?(r[12]=e[0]*n+e[4]*i+e[8]*a+e[12],r[13]=e[1]*n+e[5]*i+e[9]*a+e[13],r[14]=e[2]*n+e[6]*i+e[10]*a+e[14],r[15]=e[3]*n+e[7]*i+e[11]*a+e[15]):(s=e[0],o=e[1],A=e[2],l=e[3],u=e[4],c=e[5],d=e[6],h=e[7],f=e[8],p=e[9],g=e[10],v=e[11],r[0]=s,r[1]=o,r[2]=A,r[3]=l,r[4]=u,r[5]=c,r[6]=d,r[7]=h,r[8]=f,r[9]=p,r[10]=g,r[11]=v,r[12]=s*n+u*i+f*a+e[12],r[13]=o*n+c*i+p*a+e[13],r[14]=A*n+d*i+g*a+e[14],r[15]=l*n+h*i+v*a+e[15]),r}function JN(r,e,t){var n=t[0],i=t[1],a=t[2];return r[0]=e[0]*n,r[1]=e[1]*n,r[2]=e[2]*n,r[3]=e[3]*n,r[4]=e[4]*i,r[5]=e[5]*i,r[6]=e[6]*i,r[7]=e[7]*i,r[8]=e[8]*a,r[9]=e[9]*a,r[10]=e[10]*a,r[11]=e[11]*a,r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15],r}function G5(r,e,t,n){var i=n[0],a=n[1],s=n[2],o=Math.sqrt(i*i+a*a+s*s),A,l,u,c,d,h,f,p,g,v,m,y,w,B,x,k,_,T,F,I,O,P,G,ee;return o<On?null:(o=1/o,i*=o,a*=o,s*=o,A=Math.sin(t),l=Math.cos(t),u=1-l,c=e[0],d=e[1],h=e[2],f=e[3],p=e[4],g=e[5],v=e[6],m=e[7],y=e[8],w=e[9],B=e[10],x=e[11],k=i*i*u+l,_=a*i*u+s*A,T=s*i*u-a*A,F=i*a*u-s*A,I=a*a*u+l,O=s*a*u+i*A,P=i*s*u+a*A,G=a*s*u-i*A,ee=s*s*u+l,r[0]=c*k+p*_+y*T,r[1]=d*k+g*_+w*T,r[2]=h*k+v*_+B*T,r[3]=f*k+m*_+x*T,r[4]=c*F+p*I+y*O,r[5]=d*F+g*I+w*O,r[6]=h*F+v*I+B*O,r[7]=f*F+m*I+x*O,r[8]=c*P+p*G+y*ee,r[9]=d*P+g*G+w*ee,r[10]=h*P+v*G+B*ee,r[11]=f*P+m*G+x*ee,e!==r&&(r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r)}function eP(r,e,t){var n=Math.sin(t),i=Math.cos(t),a=e[4],s=e[5],o=e[6],A=e[7],l=e[8],u=e[9],c=e[10],d=e[11];return e!==r&&(r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r[4]=a*i+l*n,r[5]=s*i+u*n,r[6]=o*i+c*n,r[7]=A*i+d*n,r[8]=l*i-a*n,r[9]=u*i-s*n,r[10]=c*i-o*n,r[11]=d*i-A*n,r}function tP(r,e,t){var n=Math.sin(t),i=Math.cos(t),a=e[0],s=e[1],o=e[2],A=e[3],l=e[8],u=e[9],c=e[10],d=e[11];return e!==r&&(r[4]=e[4],r[5]=e[5],r[6]=e[6],r[7]=e[7],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r[0]=a*i-l*n,r[1]=s*i-u*n,r[2]=o*i-c*n,r[3]=A*i-d*n,r[8]=a*n+l*i,r[9]=s*n+u*i,r[10]=o*n+c*i,r[11]=A*n+d*i,r}function z5(r,e,t){var n=Math.sin(t),i=Math.cos(t),a=e[0],s=e[1],o=e[2],A=e[3],l=e[4],u=e[5],c=e[6],d=e[7];return e!==r&&(r[8]=e[8],r[9]=e[9],r[10]=e[10],r[11]=e[11],r[12]=e[12],r[13]=e[13],r[14]=e[14],r[15]=e[15]),r[0]=a*i+l*n,r[1]=s*i+u*n,r[2]=o*i+c*n,r[3]=A*i+d*n,r[4]=l*i-a*n,r[5]=u*i-s*n,r[6]=c*i-o*n,r[7]=d*i-A*n,r}function no(r,e){return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=e[0],r[13]=e[1],r[14]=e[2],r[15]=1,r}function Zo(r,e){return r[0]=e[0],r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=e[1],r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=e[2],r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function nP(r,e,t){var n=t[0],i=t[1],a=t[2],s=Math.sqrt(n*n+i*i+a*a),o,A,l;return s<On?null:(s=1/s,n*=s,i*=s,a*=s,o=Math.sin(e),A=Math.cos(e),l=1-A,r[0]=n*n*l+A,r[1]=i*n*l+a*o,r[2]=a*n*l-i*o,r[3]=0,r[4]=n*i*l-a*o,r[5]=i*i*l+A,r[6]=a*i*l+n*o,r[7]=0,r[8]=n*a*l+i*o,r[9]=i*a*l-n*o,r[10]=a*a*l+A,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r)}function rP(r,e){var t=Math.sin(e),n=Math.cos(e);return r[0]=1,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=n,r[6]=t,r[7]=0,r[8]=0,r[9]=-t,r[10]=n,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function iP(r,e){var t=Math.sin(e),n=Math.cos(e);return r[0]=n,r[1]=0,r[2]=-t,r[3]=0,r[4]=0,r[5]=1,r[6]=0,r[7]=0,r[8]=t,r[9]=0,r[10]=n,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function Jb(r,e){var t=Math.sin(e),n=Math.cos(e);return r[0]=n,r[1]=t,r[2]=0,r[3]=0,r[4]=-t,r[5]=n,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=1,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function aP(r,e,t){var n=e[0],i=e[1],a=e[2],s=e[3],o=n+n,A=i+i,l=a+a,u=n*o,c=n*A,d=n*l,h=i*A,f=i*l,p=a*l,g=s*o,v=s*A,m=s*l;return r[0]=1-(h+p),r[1]=c+m,r[2]=d-v,r[3]=0,r[4]=c-m,r[5]=1-(u+p),r[6]=f+g,r[7]=0,r[8]=d+v,r[9]=f-g,r[10]=1-(u+h),r[11]=0,r[12]=t[0],r[13]=t[1],r[14]=t[2],r[15]=1,r}function V5(r,e){var t=new mr(3),n=-e[0],i=-e[1],a=-e[2],s=e[3],o=e[4],A=e[5],l=e[6],u=e[7],c=n*n+i*i+a*a+s*s;return c>0?(t[0]=(o*s+u*n+A*a-l*i)*2/c,t[1]=(A*s+u*i+l*n-o*a)*2/c,t[2]=(l*s+u*a+o*i-A*n)*2/c):(t[0]=(o*s+u*n+A*a-l*i)*2,t[1]=(A*s+u*i+l*n-o*a)*2,t[2]=(l*s+u*a+o*i-A*n)*2),aP(r,e,t),r}function $h(r,e){return r[0]=e[12],r[1]=e[13],r[2]=e[14],r}function xl(r,e){var t=e[0],n=e[1],i=e[2],a=e[4],s=e[5],o=e[6],A=e[8],l=e[9],u=e[10];return r[0]=Math.sqrt(t*t+n*n+i*i),r[1]=Math.sqrt(a*a+s*s+o*o),r[2]=Math.sqrt(A*A+l*l+u*u),r}function Gh(r,e){var t=new mr(3);xl(t,e);var n=1/t[0],i=1/t[1],a=1/t[2],s=e[0]*n,o=e[1]*i,A=e[2]*a,l=e[4]*n,u=e[5]*i,c=e[6]*a,d=e[8]*n,h=e[9]*i,f=e[10]*a,p=s+u+f,g=0;return p>0?(g=Math.sqrt(p+1)*2,r[3]=.25*g,r[0]=(c-h)/g,r[1]=(d-A)/g,r[2]=(o-l)/g):s>u&&s>f?(g=Math.sqrt(1+s-u-f)*2,r[3]=(c-h)/g,r[0]=.25*g,r[1]=(o+l)/g,r[2]=(d+A)/g):u>f?(g=Math.sqrt(1+u-s-f)*2,r[3]=(d-A)/g,r[0]=(o+l)/g,r[1]=.25*g,r[2]=(c+h)/g):(g=Math.sqrt(1+f-s-u)*2,r[3]=(o-l)/g,r[0]=(d+A)/g,r[1]=(c+h)/g,r[2]=.25*g),r}function K5(r,e,t,n){e[0]=n[12],e[1]=n[13],e[2]=n[14];var i=n[0],a=n[1],s=n[2],o=n[4],A=n[5],l=n[6],u=n[8],c=n[9],d=n[10];t[0]=Math.sqrt(i*i+a*a+s*s),t[1]=Math.sqrt(o*o+A*A+l*l),t[2]=Math.sqrt(u*u+c*c+d*d);var h=1/t[0],f=1/t[1],p=1/t[2],g=i*h,v=a*f,m=s*p,y=o*h,w=A*f,B=l*p,x=u*h,k=c*f,_=d*p,T=g+w+_,F=0;return T>0?(F=Math.sqrt(T+1)*2,r[3]=.25*F,r[0]=(B-k)/F,r[1]=(x-m)/F,r[2]=(v-y)/F):g>w&&g>_?(F=Math.sqrt(1+g-w-_)*2,r[3]=(B-k)/F,r[0]=.25*F,r[1]=(v+y)/F,r[2]=(x+m)/F):w>_?(F=Math.sqrt(1+w-g-_)*2,r[3]=(x-m)/F,r[0]=(v+y)/F,r[1]=.25*F,r[2]=(B+k)/F):(F=Math.sqrt(1+_-g-w)*2,r[3]=(v-y)/F,r[0]=(x+m)/F,r[1]=(B+k)/F,r[2]=.25*F),r}function j5(r,e,t,n){var i=e[0],a=e[1],s=e[2],o=e[3],A=i+i,l=a+a,u=s+s,c=i*A,d=i*l,h=i*u,f=a*l,p=a*u,g=s*u,v=o*A,m=o*l,y=o*u,w=n[0],B=n[1],x=n[2];return r[0]=(1-(f+g))*w,r[1]=(d+y)*w,r[2]=(h-m)*w,r[3]=0,r[4]=(d-y)*B,r[5]=(1-(c+g))*B,r[6]=(p+v)*B,r[7]=0,r[8]=(h+m)*x,r[9]=(p-v)*x,r[10]=(1-(c+f))*x,r[11]=0,r[12]=t[0],r[13]=t[1],r[14]=t[2],r[15]=1,r}function Uu(r,e,t,n,i){var a=e[0],s=e[1],o=e[2],A=e[3],l=a+a,u=s+s,c=o+o,d=a*l,h=a*u,f=a*c,p=s*u,g=s*c,v=o*c,m=A*l,y=A*u,w=A*c,B=n[0],x=n[1],k=n[2],_=i[0],T=i[1],F=i[2],I=(1-(p+v))*B,O=(h+w)*B,P=(f-y)*B,G=(h-w)*x,ee=(1-(d+v))*x,te=(g+m)*x,N=(f+y)*k,K=(g-m)*k,J=(1-(d+p))*k;return r[0]=I,r[1]=O,r[2]=P,r[3]=0,r[4]=G,r[5]=ee,r[6]=te,r[7]=0,r[8]=N,r[9]=K,r[10]=J,r[11]=0,r[12]=t[0]+_-(I*_+G*T+N*F),r[13]=t[1]+T-(O*_+ee*T+K*F),r[14]=t[2]+F-(P*_+te*T+J*F),r[15]=1,r}function RE(r,e){var t=e[0],n=e[1],i=e[2],a=e[3],s=t+t,o=n+n,A=i+i,l=t*s,u=n*s,c=n*o,d=i*s,h=i*o,f=i*A,p=a*s,g=a*o,v=a*A;return r[0]=1-c-f,r[1]=u+v,r[2]=d-g,r[3]=0,r[4]=u-v,r[5]=1-l-f,r[6]=h+p,r[7]=0,r[8]=d+g,r[9]=h-p,r[10]=1-l-c,r[11]=0,r[12]=0,r[13]=0,r[14]=0,r[15]=1,r}function W5(r,e,t,n,i,a,s){var o=1/(t-e),A=1/(i-n),l=1/(a-s);return r[0]=a*2*o,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=a*2*A,r[6]=0,r[7]=0,r[8]=(t+e)*o,r[9]=(i+n)*A,r[10]=(s+a)*l,r[11]=-1,r[12]=0,r[13]=0,r[14]=s*a*2*l,r[15]=0,r}function sP(r,e,t,n,i){var a=1/Math.tan(e/2);if(r[0]=a/t,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=a,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[11]=-1,r[12]=0,r[13]=0,r[15]=0,i!=null&&i!==1/0){var s=1/(n-i);r[10]=(i+n)*s,r[14]=2*i*n*s}else r[10]=-1,r[14]=-2*n;return r}var q5=sP;function Y5(r,e,t,n,i){var a=1/Math.tan(e/2);if(r[0]=a/t,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=a,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[11]=-1,r[12]=0,r[13]=0,r[15]=0,i!=null&&i!==1/0){var s=1/(n-i);r[10]=i*s,r[14]=i*n*s}else r[10]=-1,r[14]=-n;return r}function X5(r,e,t,n){var i=Math.tan(e.upDegrees*Math.PI/180),a=Math.tan(e.downDegrees*Math.PI/180),s=Math.tan(e.leftDegrees*Math.PI/180),o=Math.tan(e.rightDegrees*Math.PI/180),A=2/(s+o),l=2/(i+a);return r[0]=A,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=l,r[6]=0,r[7]=0,r[8]=-((s-o)*A*.5),r[9]=(i-a)*l*.5,r[10]=n/(t-n),r[11]=-1,r[12]=0,r[13]=0,r[14]=n*t/(t-n),r[15]=0,r}function oP(r,e,t,n,i,a,s){var o=1/(e-t),A=1/(n-i),l=1/(a-s);return r[0]=-2*o,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=-2*A,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=2*l,r[11]=0,r[12]=(e+t)*o,r[13]=(i+n)*A,r[14]=(s+a)*l,r[15]=1,r}var AP=oP;function lP(r,e,t,n,i,a,s){var o=1/(e-t),A=1/(n-i),l=1/(a-s);return r[0]=-2*o,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=-2*A,r[6]=0,r[7]=0,r[8]=0,r[9]=0,r[10]=l,r[11]=0,r[12]=(e+t)*o,r[13]=(i+n)*A,r[14]=a*l,r[15]=1,r}function uP(r,e,t,n){var i,a,s,o,A,l,u,c,d,h,f=e[0],p=e[1],g=e[2],v=n[0],m=n[1],y=n[2],w=t[0],B=t[1],x=t[2];return Math.abs(f-w)<On&&Math.abs(p-B)<On&&Math.abs(g-x)<On?Eo(r):(u=f-w,c=p-B,d=g-x,h=1/Math.sqrt(u*u+c*c+d*d),u*=h,c*=h,d*=h,i=m*d-y*c,a=y*u-v*d,s=v*c-m*u,h=Math.sqrt(i*i+a*a+s*s),h?(h=1/h,i*=h,a*=h,s*=h):(i=0,a=0,s=0),o=c*s-d*a,A=d*i-u*s,l=u*a-c*i,h=Math.sqrt(o*o+A*A+l*l),h?(h=1/h,o*=h,A*=h,l*=h):(o=0,A=0,l=0),r[0]=i,r[1]=o,r[2]=u,r[3]=0,r[4]=a,r[5]=A,r[6]=c,r[7]=0,r[8]=s,r[9]=l,r[10]=d,r[11]=0,r[12]=-(i*f+a*p+s*g),r[13]=-(o*f+A*p+l*g),r[14]=-(u*f+c*p+d*g),r[15]=1,r)}function Z5(r,e,t,n){var i=e[0],a=e[1],s=e[2],o=n[0],A=n[1],l=n[2],u=i-t[0],c=a-t[1],d=s-t[2],h=u*u+c*c+d*d;h>0&&(h=1/Math.sqrt(h),u*=h,c*=h,d*=h);var f=A*d-l*c,p=l*u-o*d,g=o*c-A*u;return h=f*f+p*p+g*g,h>0&&(h=1/Math.sqrt(h),f*=h,p*=h,g*=h),r[0]=f,r[1]=p,r[2]=g,r[3]=0,r[4]=c*g-d*p,r[5]=d*f-u*g,r[6]=u*p-c*f,r[7]=0,r[8]=u,r[9]=c,r[10]=d,r[11]=0,r[12]=i,r[13]=a,r[14]=s,r[15]=1,r}function J5(r){return"mat4("+r[0]+", "+r[1]+", "+r[2]+", "+r[3]+", "+r[4]+", "+r[5]+", "+r[6]+", "+r[7]+", "+r[8]+", "+r[9]+", "+r[10]+", "+r[11]+", "+r[12]+", "+r[13]+", "+r[14]+", "+r[15]+")"}function e8(r){return Math.sqrt(r[0]*r[0]+r[1]*r[1]+r[2]*r[2]+r[3]*r[3]+r[4]*r[4]+r[5]*r[5]+r[6]*r[6]+r[7]*r[7]+r[8]*r[8]+r[9]*r[9]+r[10]*r[10]+r[11]*r[11]+r[12]*r[12]+r[13]*r[13]+r[14]*r[14]+r[15]*r[15])}function t8(r,e,t){return r[0]=e[0]+t[0],r[1]=e[1]+t[1],r[2]=e[2]+t[2],r[3]=e[3]+t[3],r[4]=e[4]+t[4],r[5]=e[5]+t[5],r[6]=e[6]+t[6],r[7]=e[7]+t[7],r[8]=e[8]+t[8],r[9]=e[9]+t[9],r[10]=e[10]+t[10],r[11]=e[11]+t[11],r[12]=e[12]+t[12],r[13]=e[13]+t[13],r[14]=e[14]+t[14],r[15]=e[15]+t[15],r}function cP(r,e,t){return r[0]=e[0]-t[0],r[1]=e[1]-t[1],r[2]=e[2]-t[2],r[3]=e[3]-t[3],r[4]=e[4]-t[4],r[5]=e[5]-t[5],r[6]=e[6]-t[6],r[7]=e[7]-t[7],r[8]=e[8]-t[8],r[9]=e[9]-t[9],r[10]=e[10]-t[10],r[11]=e[11]-t[11],r[12]=e[12]-t[12],r[13]=e[13]-t[13],r[14]=e[14]-t[14],r[15]=e[15]-t[15],r}function n8(r,e,t){return r[0]=e[0]*t,r[1]=e[1]*t,r[2]=e[2]*t,r[3]=e[3]*t,r[4]=e[4]*t,r[5]=e[5]*t,r[6]=e[6]*t,r[7]=e[7]*t,r[8]=e[8]*t,r[9]=e[9]*t,r[10]=e[10]*t,r[11]=e[11]*t,r[12]=e[12]*t,r[13]=e[13]*t,r[14]=e[14]*t,r[15]=e[15]*t,r}function r8(r,e,t,n){return r[0]=e[0]+t[0]*n,r[1]=e[1]+t[1]*n,r[2]=e[2]+t[2]*n,r[3]=e[3]+t[3]*n,r[4]=e[4]+t[4]*n,r[5]=e[5]+t[5]*n,r[6]=e[6]+t[6]*n,r[7]=e[7]+t[7]*n,r[8]=e[8]+t[8]*n,r[9]=e[9]+t[9]*n,r[10]=e[10]+t[10]*n,r[11]=e[11]+t[11]*n,r[12]=e[12]+t[12]*n,r[13]=e[13]+t[13]*n,r[14]=e[14]+t[14]*n,r[15]=e[15]+t[15]*n,r}function eB(r,e){return r[0]===e[0]&&r[1]===e[1]&&r[2]===e[2]&&r[3]===e[3]&&r[4]===e[4]&&r[5]===e[5]&&r[6]===e[6]&&r[7]===e[7]&&r[8]===e[8]&&r[9]===e[9]&&r[10]===e[10]&&r[11]===e[11]&&r[12]===e[12]&&r[13]===e[13]&&r[14]===e[14]&&r[15]===e[15]}function i8(r,e){var t=r[0],n=r[1],i=r[2],a=r[3],s=r[4],o=r[5],A=r[6],l=r[7],u=r[8],c=r[9],d=r[10],h=r[11],f=r[12],p=r[13],g=r[14],v=r[15],m=e[0],y=e[1],w=e[2],B=e[3],x=e[4],k=e[5],_=e[6],T=e[7],F=e[8],I=e[9],O=e[10],P=e[11],G=e[12],ee=e[13],te=e[14],N=e[15];return Math.abs(t-m)<=On*Math.max(1,Math.abs(t),Math.abs(m))&&Math.abs(n-y)<=On*Math.max(1,Math.abs(n),Math.abs(y))&&Math.abs(i-w)<=On*Math.max(1,Math.abs(i),Math.abs(w))&&Math.abs(a-B)<=On*Math.max(1,Math.abs(a),Math.abs(B))&&Math.abs(s-x)<=On*Math.max(1,Math.abs(s),Math.abs(x))&&Math.abs(o-k)<=On*Math.max(1,Math.abs(o),Math.abs(k))&&Math.abs(A-_)<=On*Math.max(1,Math.abs(A),Math.abs(_))&&Math.abs(l-T)<=On*Math.max(1,Math.abs(l),Math.abs(T))&&Math.abs(u-F)<=On*Math.max(1,Math.abs(u),Math.abs(F))&&Math.abs(c-I)<=On*Math.max(1,Math.abs(c),Math.abs(I))&&Math.abs(d-O)<=On*Math.max(1,Math.abs(d),Math.abs(O))&&Math.abs(h-P)<=On*Math.max(1,Math.abs(h),Math.abs(P))&&Math.abs(f-G)<=On*Math.max(1,Math.abs(f),Math.abs(G))&&Math.abs(p-ee)<=On*Math.max(1,Math.abs(p),Math.abs(ee))&&Math.abs(g-te)<=On*Math.max(1,Math.abs(g),Math.abs(te))&&Math.abs(v-N)<=On*Math.max(1,Math.abs(v),Math.abs(N))}var dP=si,a8=cP;const s8=Object.freeze(Object.defineProperty({__proto__:null,add:t8,adjoint:$5,clone:qN,copy:El,create:wn,decompose:K5,determinant:ZN,equals:i8,exactEquals:eB,frob:e8,fromQuat:RE,fromQuat2:V5,fromRotation:nP,fromRotationTranslation:aP,fromRotationTranslationScale:j5,fromRotationTranslationScaleOrigin:Uu,fromScaling:Zo,fromTranslation:no,fromValues:YN,fromXRotation:rP,fromYRotation:iP,fromZRotation:Jb,frustum:W5,getRotation:Gh,getScaling:xl,getTranslation:$h,identity:Eo,invert:ts,lookAt:uP,mul:dP,multiply:si,multiplyScalar:n8,multiplyScalarAndAdd:r8,ortho:AP,orthoNO:oP,orthoZO:lP,perspective:q5,perspectiveFromFieldOfView:X5,perspectiveNO:sP,perspectiveZO:Y5,rotate:G5,rotateX:eP,rotateY:tP,rotateZ:z5,scale:JN,set:Zb,str:J5,sub:a8,subtract:cP,targetTo:Z5,translate:cl,transpose:XN},Symbol.toStringTag,{value:"Module"}));function Ut(){var r=new mr(3);return mr!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0),r}function Cs(r){var e=new mr(3);return e[0]=r[0],e[1]=r[1],e[2]=r[2],e}function _s(r){var e=r[0],t=r[1],n=r[2];return Math.sqrt(e*e+t*t+n*n)}function bn(r,e,t){var n=new mr(3);return n[0]=r,n[1]=e,n[2]=t,n}function ns(r,e){return r[0]=e[0],r[1]=e[1],r[2]=e[2],r}function ii(r,e,t,n){return r[0]=e,r[1]=t,r[2]=n,r}function mo(r,e,t){return r[0]=e[0]+t[0],r[1]=e[1]+t[1],r[2]=e[2]+t[2],r}function tB(r,e,t){return r[0]=e[0]-t[0],r[1]=e[1]-t[1],r[2]=e[2]-t[2],r}function o8(r,e,t){return r[0]=e[0]*t[0],r[1]=e[1]*t[1],r[2]=e[2]*t[2],r}function A8(r,e,t){return r[0]=Math.min(e[0],t[0]),r[1]=Math.min(e[1],t[1]),r[2]=Math.min(e[2],t[2]),r}function l8(r,e,t){return r[0]=Math.max(e[0],t[0]),r[1]=Math.max(e[1],t[1]),r[2]=Math.max(e[2],t[2]),r}function zh(r,e,t){return r[0]=e[0]*t,r[1]=e[1]*t,r[2]=e[2]*t,r}function u8(r,e){var t=e[0]-r[0],n=e[1]-r[1],i=e[2]-r[2];return Math.sqrt(t*t+n*n+i*i)}function AA(r,e){var t=e[0],n=e[1],i=e[2],a=t*t+n*n+i*i;return a>0&&(a=1/Math.sqrt(a)),r[0]=e[0]*a,r[1]=e[1]*a,r[2]=e[2]*a,r}function rs(r,e){return r[0]*e[0]+r[1]*e[1]+r[2]*e[2]}function Bh(r,e,t){var n=e[0],i=e[1],a=e[2],s=t[0],o=t[1],A=t[2];return r[0]=i*A-a*o,r[1]=a*s-n*A,r[2]=n*o-i*s,r}function nB(r,e,t,n){var i=e[0],a=e[1],s=e[2];return r[0]=i+n*(t[0]-i),r[1]=a+n*(t[1]-a),r[2]=s+n*(t[2]-s),r}function oi(r,e,t){var n=e[0],i=e[1],a=e[2],s=t[3]*n+t[7]*i+t[11]*a+t[15];return s=s||1,r[0]=(t[0]*n+t[4]*i+t[8]*a+t[12])/s,r[1]=(t[1]*n+t[5]*i+t[9]*a+t[13])/s,r[2]=(t[2]*n+t[6]*i+t[10]*a+t[14])/s,r}function c8(r,e,t){var n=e[0],i=e[1],a=e[2];return r[0]=n*t[0]+i*t[3]+a*t[6],r[1]=n*t[1]+i*t[4]+a*t[7],r[2]=n*t[2]+i*t[5]+a*t[8],r}function d8(r,e,t){var n=t[0],i=t[1],a=t[2],s=t[3],o=e[0],A=e[1],l=e[2],u=i*l-a*A,c=a*o-n*l,d=n*A-i*o;return u=u+u,c=c+c,d=d+d,r[0]=o+s*u+i*d-a*c,r[1]=A+s*c+a*u-n*d,r[2]=l+s*d+n*c-i*u,r}function Zl(r,e){var t=r[0],n=r[1],i=r[2],a=e[0],s=e[1],o=e[2];return Math.abs(t-a)<=On*Math.max(1,Math.abs(t),Math.abs(a))&&Math.abs(n-s)<=On*Math.max(1,Math.abs(n),Math.abs(s))&&Math.abs(i-o)<=On*Math.max(1,Math.abs(i),Math.abs(o))}var hP=tB,d2=u8,fP=_s;(function(){var r=Ut();return function(e,t,n,i,a,s){var o,A;for(t||(t=3),n||(n=0),i?A=Math.min(i*t+n,e.length):A=e.length,o=n;o<A;o+=t)r[0]=e[o],r[1]=e[o+1],r[2]=e[o+2],a(r,r,s),e[o]=r[0],e[o+1]=r[1],e[o+2]=r[2];return e}})();function is(){var r=new mr(4);return mr!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0,r[3]=0),r}function fu(r,e,t,n){var i=new mr(4);return i[0]=r,i[1]=e,i[2]=t,i[3]=n,i}function h8(r,e){return r[0]=e[0],r[1]=e[1],r[2]=e[2],r[3]=e[3],r}function f8(r,e,t,n,i){return r[0]=e,r[1]=t,r[2]=n,r[3]=i,r}function g8(r,e){var t=e[0],n=e[1],i=e[2],a=e[3],s=t*t+n*n+i*i+a*a;return s>0&&(s=1/Math.sqrt(s)),r[0]=t*s,r[1]=n*s,r[2]=i*s,r[3]=a*s,r}function Fs(r,e,t){var n=e[0],i=e[1],a=e[2],s=e[3];return r[0]=t[0]*n+t[4]*i+t[8]*a+t[12]*s,r[1]=t[1]*n+t[5]*i+t[9]*a+t[13]*s,r[2]=t[2]*n+t[6]*i+t[10]*a+t[14]*s,r[3]=t[3]*n+t[7]*i+t[11]*a+t[15]*s,r}(function(){var r=is();return function(e,t,n,i,a,s){var o,A;for(t||(t=4),n||(n=0),i?A=Math.min(i*t+n,e.length):A=e.length,o=n;o<A;o+=t)r[0]=e[o],r[1]=e[o+1],r[2]=e[o+2],r[3]=e[o+3],a(r,r,s),e[o]=r[0],e[o+1]=r[1],e[o+2]=r[2],e[o+3]=r[3];return e}})();function fr(){var r=new mr(4);return mr!=Float32Array&&(r[0]=0,r[1]=0,r[2]=0),r[3]=1,r}function ao(r,e,t){t=t*.5;var n=Math.sin(t);return r[0]=n*e[0],r[1]=n*e[1],r[2]=n*e[2],r[3]=Math.cos(t),r}function yo(r,e,t){var n=e[0],i=e[1],a=e[2],s=e[3],o=t[0],A=t[1],l=t[2],u=t[3];return r[0]=n*u+s*o+i*l-a*A,r[1]=i*u+s*A+a*o-n*l,r[2]=a*u+s*l+n*A-i*o,r[3]=s*u-n*o-i*A-a*l,r}function Zp(r,e,t,n){var i=e[0],a=e[1],s=e[2],o=e[3],A=t[0],l=t[1],u=t[2],c=t[3],d,h,f,p,g;return h=i*A+a*l+s*u+o*c,h<0&&(h=-h,A=-A,l=-l,u=-u,c=-c),1-h>On?(d=Math.acos(h),f=Math.sin(d),p=Math.sin((1-n)*d)/f,g=Math.sin(n*d)/f):(p=1-n,g=n),r[0]=p*i+g*A,r[1]=p*a+g*l,r[2]=p*s+g*u,r[3]=p*o+g*c,r}function Jp(r,e){var t=e[0],n=e[1],i=e[2],a=e[3],s=t*t+n*n+i*i+a*a,o=s?1/s:0;return r[0]=-t*o,r[1]=-n*o,r[2]=-i*o,r[3]=a*o,r}function p8(r,e){var t=e[0]+e[4]+e[8],n;if(t>0)n=Math.sqrt(t+1),r[3]=.5*n,n=.5/n,r[0]=(e[5]-e[7])*n,r[1]=(e[6]-e[2])*n,r[2]=(e[1]-e[3])*n;else{var i=0;e[4]>e[0]&&(i=1),e[8]>e[i*3+i]&&(i=2);var a=(i+1)%3,s=(i+2)%3;n=Math.sqrt(e[i*3+i]-e[a*3+a]-e[s*3+s]+1),r[i]=.5*n,n=.5/n,r[3]=(e[a*3+s]-e[s*3+a])*n,r[a]=(e[a*3+i]+e[i*3+a])*n,r[s]=(e[s*3+i]+e[i*3+s])*n}return r}function qc(r,e,t,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:Q5,a=Math.PI/360;e*=a,n*=a,t*=a;var s=Math.sin(e),o=Math.cos(e),A=Math.sin(t),l=Math.cos(t),u=Math.sin(n),c=Math.cos(n);switch(i){case"xyz":r[0]=s*l*c+o*A*u,r[1]=o*A*c-s*l*u,r[2]=o*l*u+s*A*c,r[3]=o*l*c-s*A*u;break;case"xzy":r[0]=s*l*c-o*A*u,r[1]=o*A*c-s*l*u,r[2]=o*l*u+s*A*c,r[3]=o*l*c+s*A*u;break;case"yxz":r[0]=s*l*c+o*A*u,r[1]=o*A*c-s*l*u,r[2]=o*l*u-s*A*c,r[3]=o*l*c+s*A*u;break;case"yzx":r[0]=s*l*c+o*A*u,r[1]=o*A*c+s*l*u,r[2]=o*l*u-s*A*c,r[3]=o*l*c-s*A*u;break;case"zxy":r[0]=s*l*c-o*A*u,r[1]=o*A*c+s*l*u,r[2]=o*l*u+s*A*c,r[3]=o*l*c-s*A*u;break;case"zyx":r[0]=s*l*c-o*A*u,r[1]=o*A*c+s*l*u,r[2]=o*l*u-s*A*c,r[3]=o*l*c+s*A*u;break;default:throw new Error("Unknown angle order "+i)}return r}var v8=fu,Yc=h8,gP=f8,h2=yo,Vh=g8;(function(){var r=Ut(),e=bn(1,0,0),t=bn(0,1,0);return function(n,i,a){var s=rs(i,a);return s<-.999999?(Bh(r,e,i),fP(r)<1e-6&&Bh(r,t,i),AA(r,r),ao(n,r,Math.PI),n):s>.999999?(n[0]=0,n[1]=0,n[2]=0,n[3]=1,n):(Bh(r,i,a),n[0]=r[0],n[1]=r[1],n[2]=r[2],n[3]=1+s,Vh(n,n))}})();(function(){var r=fr(),e=fr();return function(t,n,i,a,s,o){return Zp(r,n,s,o),Zp(e,i,a,o),Zp(t,r,e,2*o*(1-o)),t}})();(function(){var r=WN();return function(e,t,n,i){return r[0]=n[0],r[3]=n[1],r[6]=n[2],r[1]=i[0],r[4]=i[1],r[7]=i[2],r[2]=-t[0],r[5]=-t[1],r[8]=-t[2],Vh(e,p8(e,r))}})();function QE(){var r=new mr(2);return mr!=Float32Array&&(r[0]=0,r[1]=0),r}function m8(r,e){return r[0]=e[0],r[1]=e[1],r}function y8(r,e,t){return r[0]=e,r[1]=t,r}function w8(r,e){var t=e[0],n=e[1],i=t*t+n*n;return i>0&&(i=1/Math.sqrt(i)),r[0]=e[0]*i,r[1]=e[1]*i,r}function b8(r,e){return r[0]*e[0]+r[1]*e[1]}function B8(r,e){return r[0]===e[0]&&r[1]===e[1]}(function(){var r=QE();return function(e,t,n,i,a,s){var o,A;for(t||(t=2),n||(n=0),i?A=Math.min(i*t+n,e.length):A=e.length,o=n;o<A;o+=t)r[0]=e[o],r[1]=e[o+1],a(r,r,s),e[o]=r[0],e[o+1]=r[1];return e}})();var Wu=function(r){return r!==null&&typeof r!="function"&&isFinite(r.length)},E8=function(r,e){return Wu(r)?r.indexOf(e)>-1:!1},x8=function(r,e){if(!Wu(r))return r;for(var t=[],n=0;n<r.length;n++){var i=r[n];e(i,n)&&t.push(i)}return t},C8=function(r,e){return e===void 0&&(e=[]),x8(r,function(t){return!E8(e,t)})};function At(r){return typeof r=="function"}function ut(r){return r==null}function Ui(r){return Array.isArray(r)}const ai=(function(r){var e=typeof r;return r!==null&&e==="object"||e==="function"});function pP(r,e){if(r){var t;if(Ui(r))for(var n=0,i=r.length;n<i&&(t=e(r[n],n),t!==!1);n++);else if(ai(r)){for(var a in r)if(r.hasOwnProperty(a)&&(t=e(r[a],a),t===!1))break}}}var rB=function(r){return typeof r=="object"&&r!==null},S8={}.toString,vP=function(r,e){return S8.call(r)==="[object "+e+"]"},Cl=function(r){if(!rB(r)||!vP(r,"Object"))return!1;if(Object.getPrototypeOf(r)===null)return!0;for(var e=r;Object.getPrototypeOf(e)!==null;)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(r)===e},_8=function(r){if(!Ui(r))return[];for(var e=[],t=0;t<r.length;t++)e=e.concat(r[t]);return e};function Kh(r){if(!Array.isArray(r))return-1/0;var e=r.length;if(!e)return-1/0;for(var t=r[0],n=1;n<e;n++)t=Math.max(t,r[n]);return t}const jh=(function(r){if(Ui(r))return r.reduce(function(e,t){return Math.min(e,t)},r[0])});var k8=function(r,e,t){if(!Ui(r)&&!Cl(r))return r;var n=t;return pP(r,function(i,a){n=e(n,i,a)}),n};function ln(r){return typeof r=="string"}function T8(r,e){e===void 0&&(e=new Map);var t=[];if(Array.isArray(r))for(var n=0,i=r.length;n<i;n++){var a=r[n];e.has(a)||(t.push(a),e.set(a,!0))}return t}var F8=Object.prototype.hasOwnProperty;function Vf(r,e){if(!e||!Ui(r))return{};for(var t={},n=At(e)?e:function(o){return o[e]},i,a=0;a<r.length;a++){var s=r[a];i=n(s),F8.call(t,i)?t[i].push(s):t[i]=[s]}return t}var jn=function(r,e,t){return r<e?e:r>t?t:r};function Yt(r){return typeof r=="number"}var M8=1e-5;function dl(r,e,t){return t===void 0&&(t=M8),r===e||Math.abs(r-e)<t}const I8=(function(r,e){if(Ui(r)){for(var t,n=-1/0,i=0;i<r.length;i++){var a=r[i],s=At(e)?e(a):a[e];s>n&&(t=a,n=s)}return t}}),O8=(function(r,e){if(Ui(r)){for(var t,n=1/0,i=0;i<r.length;i++){var a=r[i],s=At(e)?e(a):a[e];s<n&&(t=a,n=s)}return t}});var mP=function(r,e){return(r%e+e)%e};const yP=(function(r){return ut(r)?"":r.toString()});var L8=function(r){var e=yP(r);return e.charAt(0).toLowerCase()+e.substring(1)};function N8(r,e){return!r||!e?r:r.replace(/\\?\{([^{}]+)\}/g,function(t,n){return t.charAt(0)==="\\"?t.slice(1):e[n]===void 0?"":e[n]})}var Wh=function(r){var e=yP(r);return e.charAt(0).toUpperCase()+e.substring(1)},P8={}.toString,U8=function(r){return P8.call(r).replace(/^\[object /,"").replace(/]$/,"")},qu=function(r){return vP(r,"Boolean")};function R8(r){return r instanceof Date}function Q8(r){return r===null}var D8=Object.prototype,H8=function(r){var e=r&&r.constructor,t=typeof e=="function"&&e.prototype||D8;return r===t},Bt=function(r){return r===void 0};function $8(r){return r instanceof Element||r instanceof Document}function f2(r,e){for(var t in e)e.hasOwnProperty(t)&&t!=="constructor"&&e[t]!==void 0&&(r[t]=e[t])}function G8(r,e,t,n){return e&&f2(r,e),t&&f2(r,t),r}var Sl=function(r){if(typeof r!="object"||r===null)return r;var e;if(Ui(r)){e=[];for(var t=0,n=r.length;t<n;t++)typeof r[t]=="object"&&r[t]!=null?e[t]=Sl(r[t]):e[t]=r[t]}else{e={};for(var i in r)typeof r[i]=="object"&&r[i]!=null?e[i]=Sl(r[i]):e[i]=r[i]}return e};function mc(r,e,t){var n;return function(){var i=this,a=arguments,s=function(){n=null,r.apply(i,a)};clearTimeout(n),n=setTimeout(s,e)}}function z8(r){var e,t,n,i=r||1;function a(o,A){++e>i&&(n=t,s(1),++e),t[o]=A}function s(o){e=0,t=Object.create(null),o||(n=Object.create(null))}return s(),{clear:s,has:function(o){return t[o]!==void 0||n[o]!==void 0},get:function(o){var A=t[o];if(A!==void 0)return A;if((A=n[o])!==void 0)return a(o,A),A},set:function(o,A){t[o]!==void 0?t[o]=A:a(o,A)}}}var ev=new Map;function iB(r,e,t){t===void 0&&(t=128);var n=function(){for(var i=[],a=0;a<arguments.length;a++)i[a]=arguments[a];var s=e?e.apply(this,i):i[0];ev.has(r)||ev.set(r,z8(t));var o=ev.get(r);if(o.has(s))return o.get(s);var A=r.apply(this,i);return o.set(s,A),A};return n}var V8=5;function K8(r,e){if(Object.hasOwn)return Object.hasOwn(r,e);if(r==null)throw new TypeError("Cannot convert undefined or null to object");return Object.prototype.hasOwnProperty.call(Object(r),e)}function wP(r,e,t,n){t=t||0,n=n||V8;for(var i in e)if(K8(e,i)){var a=e[i];a!==null&&Cl(a)?(Cl(r[i])||(r[i]={}),t<n?wP(r[i],a,t+1,n):r[i]=e[i]):Ui(a)?(r[i]=[],r[i]=r[i].concat(a)):a!==void 0&&(r[i]=a)}}var li=function(r){for(var e=[],t=1;t<arguments.length;t++)e[t-1]=arguments[t];for(var n=0;n<e.length;n+=1)wP(r,e[n]);return r},j8=Object.prototype.hasOwnProperty;function Ja(r){if(ut(r))return!0;if(Wu(r))return!r.length;var e=U8(r);if(e==="Map"||e==="Set")return!r.size;if(H8(r))return!Object.keys(r).length;for(var t in r)if(j8.call(r,t))return!1;return!0}var Qn=function(r,e){if(r===e)return!0;if(!r||!e||ln(r)||ln(e))return!1;if(Wu(r)||Wu(e)){if(r.length!==e.length)return!1;for(var t=!0,n=0;n<r.length&&(t=Qn(r[n],e[n]),!!t);n++);return t}if(rB(r)||rB(e)){var i=Object.keys(r),a=Object.keys(e);if(i.length!==a.length)return!1;for(var t=!0,n=0;n<i.length&&(t=Qn(r[i[n]],e[i[n]]),!!t);n++);return t}return!1};const Gr=(function(r,e,t){for(var n=0,i=ln(e)?e.split("."):e;r&&n<i.length;)r=r[i[n++]];return r===void 0||n<i.length?t:r}),Yu=(function(r,e,t){var n=r,i=ln(e)?e.split("."):e;return i.forEach(function(a,s){s<i.length-1?(ai(n[a])||(n[a]=Yt(i[s+1])?[]:{}),n=n[a]):n[a]=t}),r});var W8=Object.prototype.hasOwnProperty;const yc=(function(r,e){if(r===null||!Cl(r))return{};var t={};return pP(e,function(n){W8.call(r,n)&&(t[n]=r[n])}),t}),DE=(function(r,e){return k8(r,function(t,n,i){return e.includes(i)||(t[i]=n),t},{})}),bP=(function(r,e,t){var n,i,a,s,o=0;t||(t={});var A=function(){o=t.leading===!1?0:Date.now(),n=null,s=r.apply(i,a),n||(i=a=null)},l=function(){var u=Date.now();!o&&t.leading===!1&&(o=u);var c=e-(u-o);return i=this,a=arguments,c<=0||c>e?(n&&(clearTimeout(n),n=null),o=u,s=r.apply(i,a),n||(i=a=null)):!n&&t.trailing!==!1&&(n=setTimeout(A,c)),s};return l.cancel=function(){clearTimeout(n),o=0,n=i=a=null},l});var Xc={};const q8=(function(r){return r=r||"g",Xc[r]?Xc[r]+=1:Xc[r]=1,r+Xc[r]}),tv=(function(){}),aB=(function(r){return r});var sB=function(r,e){return sB=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])},sB(r,e)};function Lt(r,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");sB(r,e);function t(){this.constructor=r}r.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}var Ie=function(){return Ie=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++){t=arguments[n];for(var a in t)Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a])}return e},Ie.apply(this,arguments)};function qn(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t}function wc(r){var e=typeof Symbol=="function"&&Symbol.iterator,t=e&&r[e],n=0;if(t)return t.call(r);if(r&&typeof r.length=="number")return{next:function(){return r&&n>=r.length&&(r=void 0),{value:r&&r[n++],done:!r}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Z(r,e){var t=typeof Symbol=="function"&&r[Symbol.iterator];if(!t)return r;var n=t.call(r),i,a=[],s;try{for(;(e===void 0||e-- >0)&&!(i=n.next()).done;)a.push(i.value)}catch(o){s={error:o}}finally{try{i&&!i.done&&(t=n.return)&&t.call(n)}finally{if(s)throw s.error}}return a}function Y8(){for(var r=0,e=0,t=arguments.length;e<t;e++)r+=arguments[e].length;for(var n=Array(r),i=0,e=0;e<t;e++)for(var a=arguments[e],s=0,o=a.length;s<o;s++,i++)n[i]=a[s];return n}function it(r,e,t){if(t||arguments.length===2)for(var n=0,i=e.length,a;n<i;n++)(a||!(n in e))&&(a||(a=Array.prototype.slice.call(e,0,n)),a[n]=e[n]);return r.concat(a||Array.prototype.slice.call(e))}function nv(r,e,t,n){if(t==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?r!==e||!n:!e.has(r))throw new TypeError("Cannot read private member from an object whose class did not declare it");return t==="m"?n:t==="a"?n.call(r):n?n.value:e.get(r)}var BP={x1:0,y1:0,x2:0,y2:0,x:0,y:0,qx:null,qy:null};function X8(r,e,t){if(r[t].length>7){r[t].shift();for(var n=r[t],i=t;n.length;)e[t]="A",r.splice(i+=1,0,["C"].concat(n.splice(0,6)));r.splice(t,1)}}var Ru={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0};function EP(r){return Array.isArray(r)&&r.every(function(e){var t=e[0].toLowerCase();return Ru[t]===e.length-1&&"achlmqstvz".includes(t)})}function xP(r){return EP(r)&&r.every(function(e){var t=e[0];return t===t.toUpperCase()})}function CP(r){return xP(r)&&r.every(function(e){var t=e[0];return"ACLMQZ".includes(t)})}function g2(r){for(var e=r.pathValue[r.segmentStart],t=e.toLowerCase(),n=r.data;n.length>=Ru[t]&&(t==="m"&&n.length>2?(r.segments.push([e].concat(n.splice(0,2))),t="l",e=e==="m"?"l":"L"):r.segments.push([e].concat(n.splice(0,Ru[t]))),!!Ru[t]););}function Z8(r){var e=r.index,t=r.pathValue,n=t.charCodeAt(e);if(n===48){r.param=0,r.index+=1;return}if(n===49){r.param=1,r.index+=1;return}r.err='[path-util]: invalid Arc flag "'.concat(t[e],'", expecting 0 or 1 at index ').concat(e)}function J8(r){return r>=48&&r<=57||r===43||r===45||r===46}function PA(r){return r>=48&&r<=57}function e$(r){var e=r.max,t=r.pathValue,n=r.index,i=n,a=!1,s=!1,o=!1,A=!1,l;if(i>=e){r.err="[path-util]: Invalid path value at index ".concat(i,', "pathValue" is missing param');return}if(l=t.charCodeAt(i),(l===43||l===45)&&(i+=1,l=t.charCodeAt(i)),!PA(l)&&l!==46){r.err="[path-util]: Invalid path value at index ".concat(i,', "').concat(t[i],'" is not a number');return}if(l!==46){if(a=l===48,i+=1,l=t.charCodeAt(i),a&&i<e&&l&&PA(l)){r.err="[path-util]: Invalid path value at index ".concat(n,', "').concat(t[n],'" illegal number');return}for(;i<e&&PA(t.charCodeAt(i));)i+=1,s=!0;l=t.charCodeAt(i)}if(l===46){for(A=!0,i+=1;PA(t.charCodeAt(i));)i+=1,o=!0;l=t.charCodeAt(i)}if(l===101||l===69){if(A&&!s&&!o){r.err="[path-util]: Invalid path value at index ".concat(i,', "').concat(t[i],'" invalid float exponent');return}if(i+=1,l=t.charCodeAt(i),(l===43||l===45)&&(i+=1),i<e&&PA(t.charCodeAt(i)))for(;i<e&&PA(t.charCodeAt(i));)i+=1;else{r.err="[path-util]: Invalid path value at index ".concat(i,', "').concat(t[i],'" invalid integer exponent');return}}r.index=i,r.param=+r.pathValue.slice(n,i)}function t$(r){var e=[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279];return r===10||r===13||r===8232||r===8233||r===32||r===9||r===11||r===12||r===160||r>=5760&&e.includes(r)}function Eh(r){for(var e=r.pathValue,t=r.max;r.index<t&&t$(e.charCodeAt(r.index));)r.index+=1}function n$(r){switch(r|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 r$(r){return(r|32)===97}function i$(r){var e=r.max,t=r.pathValue,n=r.index,i=t.charCodeAt(n),a=Ru[t[n].toLowerCase()];if(r.segmentStart=n,!n$(i)){r.err='[path-util]: Invalid path value "'.concat(t[n],'" is not a path command');return}if(r.index+=1,Eh(r),r.data=[],!a){g2(r);return}for(;;){for(var s=a;s>0;s-=1){if(r$(i)&&(s===3||s===4)?Z8(r):e$(r),r.err.length)return;r.data.push(r.param),Eh(r),r.index<e&&t.charCodeAt(r.index)===44&&(r.index+=1,Eh(r))}if(r.index>=r.max||!J8(t.charCodeAt(r.index)))break}g2(r)}var a$=(function(){function r(e){this.pathValue=e,this.segments=[],this.max=e.length,this.index=0,this.param=0,this.segmentStart=0,this.data=[],this.err=""}return r})();function s$(r){if(EP(r))return[].concat(r);var e=new a$(r);for(Eh(e);e.index<e.max&&!e.err.length;)i$(e);return e.err?e.err:e.segments}function o$(r){if(xP(r))return[].concat(r);var e=s$(r),t=0,n=0,i=0,a=0;return e.map(function(s){var o=s.slice(1).map(Number),A=s[0],l=A.toUpperCase();if(A==="M")return t=o[0],n=o[1],i=t,a=n,["M",t,n];var u;if(A!==l)switch(l){case"A":u=[l,o[0],o[1],o[2],o[3],o[4],o[5]+t,o[6]+n];break;case"V":u=[l,o[0]+n];break;case"H":u=[l,o[0]+t];break;default:{var c=o.map(function(h,f){return h+(f%2?n:t)});u=[l].concat(c)}}else u=[l].concat(o);var d=u.length;switch(l){case"Z":t=i,n=a;break;case"H":t=u[1];break;case"V":n=u[1];break;default:t=u[d-2],n=u[d-1],l==="M"&&(i=t,a=n)}return u})}function A$(r,e){var t=r[0],n=e.x1,i=e.y1,a=e.x2,s=e.y2,o=r.slice(1).map(Number),A=r;if("TQ".includes(t)||(e.qx=null,e.qy=null),t==="H")A=["L",r[1],i];else if(t==="V")A=["L",n,r[1]];else if(t==="S"){var l=n*2-a,u=i*2-s;e.x1=l,e.y1=u,A=["C",l,u].concat(o)}else if(t==="T"){var c=n*2-e.qx,d=i*2-e.qy;e.qx=c,e.qy=d,A=["Q",c,d].concat(o)}else if(t==="Q"){var h=o[0],f=o[1];e.qx=h,e.qy=f}return A}function qh(r){if(CP(r))return[].concat(r);for(var e=o$(r),t=Ie({},BP),n=0;n<e.length;n+=1){e[n]=A$(e[n],t);var i=e[n],a=i.length;t.x1=+i[a-2],t.y1=+i[a-1],t.x2=+i[a-4]||t.x1,t.y2=+i[a-3]||t.y1}return e}function l$(r){return CP(r)&&r.every(function(e){var t=e[0];return"MC".includes(t)})}function Zc(r,e,t){var n=r*Math.cos(t)-e*Math.sin(t),i=r*Math.sin(t)+e*Math.cos(t);return{x:n,y:i}}function HE(r,e,t,n,i,a,s,o,A,l){var u=r,c=e,d=t,h=n,f=o,p=A,g=Math.PI*120/180,v=Math.PI/180*(+i||0),m=[],y,w,B,x,k;if(l)w=l[0],B=l[1],x=l[2],k=l[3];else{y=Zc(u,c,-v),u=y.x,c=y.y,y=Zc(f,p,-v),f=y.x,p=y.y;var _=(u-f)/2,T=(c-p)/2,F=_*_/(d*d)+T*T/(h*h);F>1&&(F=Math.sqrt(F),d*=F,h*=F);var I=d*d,O=h*h,P=(a===s?-1:1)*Math.sqrt(Math.abs((I*O-I*T*T-O*_*_)/(I*T*T+O*_*_)));x=P*d*T/h+(u+f)/2,k=P*-h*_/d+(c+p)/2,w=Math.asin(((c-k)/h*Math.pow(10,9)>>0)/Math.pow(10,9)),B=Math.asin(((p-k)/h*Math.pow(10,9)>>0)/Math.pow(10,9)),w=u<x?Math.PI-w:w,B=f<x?Math.PI-B:B,w<0&&(w=Math.PI*2+w),B<0&&(B=Math.PI*2+B),s&&w>B&&(w-=Math.PI*2),!s&&B>w&&(B-=Math.PI*2)}var G=B-w;if(Math.abs(G)>g){var ee=B,te=f,N=p;B=w+g*(s&&B>w?1:-1),f=x+d*Math.cos(B),p=k+h*Math.sin(B),m=HE(f,p,d,h,i,0,s,te,N,[B,ee,x,k])}G=B-w;var K=Math.cos(w),J=Math.sin(w),be=Math.cos(B),re=Math.sin(B),ne=Math.tan(G/4),ue=4/3*d*ne,Y=4/3*h*ne,U=[u,c],W=[u+ue*J,c-Y*K],ie=[f+ue*re,p-Y*be],Ee=[f,p];if(W[0]=2*U[0]-W[0],W[1]=2*U[1]-W[1],l)return W.concat(ie,Ee,m);m=W.concat(ie,Ee,m);for(var de=[],X=0,xe=m.length;X<xe;X+=1)de[X]=X%2?Zc(m[X-1],m[X],v).y:Zc(m[X],m[X+1],v).x;return de}function u$(r,e,t,n,i,a){var s=.3333333333333333,o=2/3;return[s*r+o*t,s*e+o*n,s*i+o*t,s*a+o*n,i,a]}function Js(r,e,t){var n=r[0],i=r[1],a=e[0],s=e[1];return[n+(a-n)*t,i+(s-i)*t]}var p2=function(r,e,t,n){var i=.5,a=Js([r,e],[t,n],i);return it(it([],a,!0),[t,n,t,n],!1)};function c$(r,e){var t=r[0],n=r.slice(1).map(Number),i=n[0],a=n[1],s,o=e.x1,A=e.y1,l=e.x,u=e.y;switch("TQ".includes(t)||(e.qx=null,e.qy=null),t){case"M":return e.x=i,e.y=a,r;case"A":return s=[o,A].concat(n),["C"].concat(HE(s[0],s[1],s[2],s[3],s[4],s[5],s[6],s[7],s[8],s[9]));case"Q":return e.qx=i,e.qy=a,s=[o,A].concat(n),["C"].concat(u$(s[0],s[1],s[2],s[3],s[4],s[5]));case"L":return["C"].concat(p2(o,A,i,a));case"Z":return o===l&&A===u?["C",o,A,l,u,l,u]:["C"].concat(p2(o,A,l,u))}return r}function oB(r,e){if(e===void 0&&(e=!1),l$(r)){var t=[].concat(r);return e?[t,[]]:t}for(var n=qh(r),i=Ie({},BP),a=[],s="",o=n.length,A,l,u=[],c=0;c<o;c+=1){n[c]&&(s=n[c][0]),a[c]=s;var d=c$(n[c],i);n[c]=d,X8(n,a,c),o=n.length,s==="Z"&&u.push(c),A=n[c],l=A.length,i.x1=+A[l-2],i.y1=+A[l-1],i.x2=+A[l-4]||i.x1,i.y2=+A[l-3]||i.y1}return e?[n,u]:n}function d$(r){return r.map(function(e){return Array.isArray(e)?[].concat(e):e})}function h$(r){var e=r.slice(1).map(function(t,n,i){return n?i[n-1].slice(-2).concat(t.slice(1)):r[0].slice(1).concat(t.slice(1))}).map(function(t){return t.map(function(n,i){return t[t.length-i-2*(1-i%2)]})}).reverse();return[["M"].concat(e[0].slice(0,2))].concat(e.map(function(t){return["C"].concat(t.slice(2))}))}function _i(r,e){return Math.sqrt((r[0]-e[0])*(r[0]-e[0])+(r[1]-e[1])*(r[1]-e[1]))}function AB(r,e,t,n,i){var a=_i([r,e],[t,n]),s={x:0,y:0};if(typeof i=="number")if(i<=0)s={x:r,y:e};else if(i>=a)s={x:t,y:n};else{var o=Js([r,e],[t,n],i/a),A=o[0],l=o[1];s={x:A,y:l}}return{length:a,point:s,min:{x:Math.min(r,t),y:Math.min(e,n)},max:{x:Math.max(r,t),y:Math.max(e,n)}}}function v2(r,e){var t=r.x,n=r.y,i=e.x,a=e.y,s=t*i+n*a,o=Math.sqrt((Math.pow(t,2)+Math.pow(n,2))*(Math.pow(i,2)+Math.pow(a,2))),A=t*a-n*i<0?-1:1,l=A*Math.acos(s/o);return l}function f$(r,e,t,n,i,a,s,o,A,l){var u=Math.abs,c=Math.sin,d=Math.cos,h=Math.sqrt,f=Math.PI,p=u(t),g=u(n),v=(i%360+360)%360,m=v*(f/180);if(r===o&&e===A)return{x:r,y:e};if(p===0||g===0)return AB(r,e,o,A,l).point;var y=(r-o)/2,w=(e-A)/2,B={x:d(m)*y+c(m)*w,y:-c(m)*y+d(m)*w},x=Math.pow(B.x,2)/Math.pow(p,2)+Math.pow(B.y,2)/Math.pow(g,2);x>1&&(p*=h(x),g*=h(x));var k=Math.pow(p,2)*Math.pow(g,2)-Math.pow(p,2)*Math.pow(B.y,2)-Math.pow(g,2)*Math.pow(B.x,2),_=Math.pow(p,2)*Math.pow(B.y,2)+Math.pow(g,2)*Math.pow(B.x,2),T=k/_;T=T<0?0:T;var F=(a!==s?1:-1)*h(T),I={x:F*(p*B.y/g),y:F*(-(g*B.x)/p)},O={x:d(m)*I.x-c(m)*I.y+(r+o)/2,y:c(m)*I.x+d(m)*I.y+(e+A)/2},P={x:(B.x-I.x)/p,y:(B.y-I.y)/g},G=v2({x:1,y:0},P),ee={x:(-B.x-I.x)/p,y:(-B.y-I.y)/g},te=v2(P,ee);!s&&te>0?te-=2*f:s&&te<0&&(te+=2*f),te%=2*f;var N=G+te*l,K=p*d(N),J=g*c(N),be={x:d(m)*K-c(m)*J+O.x,y:c(m)*K+d(m)*J+O.y};return be}function g$(r,e,t,n,i,a,s,o,A,l,u){var c,d=u.bbox,h=d===void 0?!0:d,f=u.length,p=f===void 0?!0:f,g=u.sampleSize,v=g===void 0?30:g,m=typeof l=="number",y=r,w=e,B=0,x=[y,w,B],k=[y,w],_=0,T={x:0,y:0},F=[{x:y,y:w}];m&&l<=0&&(T={x:y,y:w});for(var I=0;I<=v;I+=1){if(_=I/v,c=f$(r,e,t,n,i,a,s,o,A,_),y=c.x,w=c.y,h&&F.push({x:y,y:w}),p&&(B+=_i(k,[y,w])),k=[y,w],m&&B>=l&&l>x[2]){var O=(B-l)/(B-x[2]);T={x:k[0]*(1-O)+x[0]*O,y:k[1]*(1-O)+x[1]*O}}x=[y,w,B]}return m&&l>=B&&(T={x:o,y:A}),{length:B,point:T,min:{x:Math.min.apply(null,F.map(function(P){return P.x})),y:Math.min.apply(null,F.map(function(P){return P.y}))},max:{x:Math.max.apply(null,F.map(function(P){return P.x})),y:Math.max.apply(null,F.map(function(P){return P.y}))}}}function p$(r,e,t,n,i,a,s,o,A){var l=1-A;return{x:Math.pow(l,3)*r+3*Math.pow(l,2)*A*t+3*l*Math.pow(A,2)*i+Math.pow(A,3)*s,y:Math.pow(l,3)*e+3*Math.pow(l,2)*A*n+3*l*Math.pow(A,2)*a+Math.pow(A,3)*o}}function SP(r,e,t,n,i,a,s,o,A,l){var u,c=l.bbox,d=c===void 0?!0:c,h=l.length,f=h===void 0?!0:h,p=l.sampleSize,g=p===void 0?10:p,v=typeof A=="number",m=r,y=e,w=0,B=[m,y,w],x=[m,y],k=0,_={x:0,y:0},T=[{x:m,y}];v&&A<=0&&(_={x:m,y});for(var F=0;F<=g;F+=1){if(k=F/g,u=p$(r,e,t,n,i,a,s,o,k),m=u.x,y=u.y,d&&T.push({x:m,y}),f&&(w+=_i(x,[m,y])),x=[m,y],v&&w>=A&&A>B[2]){var I=(w-A)/(w-B[2]);_={x:x[0]*(1-I)+B[0]*I,y:x[1]*(1-I)+B[1]*I}}B=[m,y,w]}return v&&A>=w&&(_={x:s,y:o}),{length:w,point:_,min:{x:Math.min.apply(null,T.map(function(O){return O.x})),y:Math.min.apply(null,T.map(function(O){return O.y}))},max:{x:Math.max.apply(null,T.map(function(O){return O.x})),y:Math.max.apply(null,T.map(function(O){return O.y}))}}}function v$(r,e,t,n,i,a,s){var o=1-s;return{x:Math.pow(o,2)*r+2*o*s*t+Math.pow(s,2)*i,y:Math.pow(o,2)*e+2*o*s*n+Math.pow(s,2)*a}}function m$(r,e,t,n,i,a,s,o){var A,l=o.bbox,u=l===void 0?!0:l,c=o.length,d=c===void 0?!0:c,h=o.sampleSize,f=h===void 0?10:h,p=typeof s=="number",g=r,v=e,m=0,y=[g,v,m],w=[g,v],B=0,x={x:0,y:0},k=[{x:g,y:v}];p&&s<=0&&(x={x:g,y:v});for(var _=0;_<=f;_+=1){if(B=_/f,A=v$(r,e,t,n,i,a,B),g=A.x,v=A.y,u&&k.push({x:g,y:v}),d&&(m+=_i(w,[g,v])),w=[g,v],p&&m>=s&&s>y[2]){var T=(m-s)/(m-y[2]);x={x:w[0]*(1-T)+y[0]*T,y:w[1]*(1-T)+y[1]*T}}y=[g,v,m]}return p&&s>=m&&(x={x:i,y:a}),{length:m,point:x,min:{x:Math.min.apply(null,k.map(function(F){return F.x})),y:Math.min.apply(null,k.map(function(F){return F.y}))},max:{x:Math.max.apply(null,k.map(function(F){return F.x})),y:Math.max.apply(null,k.map(function(F){return F.y}))}}}function _P(r,e,t){for(var n,i,a,s,o,A,l=qh(r),u=typeof e=="number",c,d=[],h,f=0,p=0,g=0,v=0,m,y=[],w=[],B=0,x={x:0,y:0},k=x,_=x,T=x,F=0,I=0,O=l.length;I<O;I+=1)m=l[I],h=m[0],c=h==="M",d=c?d:[f,p].concat(m.slice(1)),c?(g=m[1],v=m[2],x={x:g,y:v},k=x,B=0,u&&e<.001&&(T=x)):h==="L"?(n=AB(d[0],d[1],d[2],d[3],(e||0)-F),B=n.length,x=n.min,k=n.max,_=n.point):h==="A"?(i=g$(d[0],d[1],d[2],d[3],d[4],d[5],d[6],d[7],d[8],(e||0)-F,t||{}),B=i.length,x=i.min,k=i.max,_=i.point):h==="C"?(a=SP(d[0],d[1],d[2],d[3],d[4],d[5],d[6],d[7],(e||0)-F,t||{}),B=a.length,x=a.min,k=a.max,_=a.point):h==="Q"?(s=m$(d[0],d[1],d[2],d[3],d[4],d[5],(e||0)-F,t||{}),B=s.length,x=s.min,k=s.max,_=s.point):h==="Z"&&(d=[f,p,g,v],o=AB(d[0],d[1],d[2],d[3],(e||0)-F),B=o.length,x=o.min,k=o.max,_=o.point),u&&F<e&&F+B>=e&&(T=_),w.push(k),y.push(x),F+=B,A=h!=="Z"?m.slice(-2):[g,v],f=A[0],p=A[1];return u&&e>=F&&(T={x:f,y:p}),{length:F,point:T,min:{x:Math.min.apply(null,y.map(function(P){return P.x})),y:Math.min.apply(null,y.map(function(P){return P.y}))},max:{x:Math.max.apply(null,w.map(function(P){return P.x})),y:Math.max.apply(null,w.map(function(P){return P.y}))}}}function y$(r,e){return _P(r,void 0,Ie(Ie({},e),{bbox:!1,length:!0})).length}function w$(r){var e=r.length,t=e-1;return r.map(function(n,i){return r.map(function(a,s){var o=i+s,A;return s===0||r[o]&&r[o][0]==="M"?(A=r[o],["M"].concat(A.slice(-2))):(o>=e&&(o-=t),r[o])})})}function b$(r,e){var t=r.length-1,n=[],i=0,a=0,s=w$(r);return s.forEach(function(o,A){r.slice(1).forEach(function(l,u){a+=_i(r[(A+u)%t].slice(-2),e[u%t].slice(-2))}),n[A]=a,a=0}),i=n.indexOf(Math.min.apply(null,n)),s[i]}function B$(r,e,t,n,i,a,s,o){return 3*((o-e)*(t+i)-(s-r)*(n+a)+n*(r-i)-t*(e-a)+o*(i+r/3)-s*(a+e/3))/20}function E$(r){var e=0,t=0,n=0;return oB(r).map(function(i){var a;switch(i[0]){case"M":return e=i[1],t=i[2],0;default:var s=i.slice(1),o=s[0],A=s[1],l=s[2],u=s[3],c=s[4],d=s[5];return n=B$(e,t,o,A,l,u,c,d),a=i.slice(-2),e=a[0],t=a[1],n}}).reduce(function(i,a){return i+a},0)}function m2(r){return E$(r)>=0}function x$(r,e,t){return _P(r,e,Ie(Ie({},t),{bbox:!1,length:!0})).point}var C$=50;function S$(r,e){e===void 0&&(e=.5);var t=r.slice(0,2),n=r.slice(2,4),i=r.slice(4,6),a=r.slice(6,8),s=Js(t,n,e),o=Js(n,i,e),A=Js(i,a,e),l=Js(s,o,e),u=Js(o,A,e),c=Js(l,u,e);return[["C"].concat(s,l,c),["C"].concat(u,A,a)]}function y2(r){return r.map(function(e,t,n){var i=t&&n[t-1].slice(-2).concat(e.slice(1)),a=t?SP(i[0],i[1],i[2],i[3],i[4],i[5],i[6],i[7],i[8],{bbox:!1}).length:0,s;return t?s=a?S$(i):[e,e]:s=[e],{s:e,ss:s,l:a}})}function kP(r,e,t,n){if(n===void 0&&(n=0),n>C$)return console.warn("Maximum recursion depth reached in equalizeSegments"),[r,e];var i=y2(r),a=y2(e),s=i.length,o=a.length,A=i.filter(function(v){return v.l}).length,l=a.filter(function(v){return v.l}).length,u=i.filter(function(v){return v.l}).reduce(function(v,m){var y=m.l;return v+y},0)/A||0,c=a.filter(function(v){return v.l}).reduce(function(v,m){var y=m.l;return v+y},0)/l||0,d=t||Math.max(s,o),h=[u,c],f=[d-s,d-o],p=0,g=[i,a].map(function(v,m){return v.l===d?v.map(function(y){return y.s}):v.map(function(y,w){return p=w&&f[m]&&y.l>=h[m],f[m]-=p?1:0,p?y.ss:[y.s]}).flat()});return g[0].length===g[1].length?g:kP(g[0],g[1],d,n+1)}function lB(r){var e=document.createElement("div");e.innerHTML=r;var t=e.childNodes[0];return t&&e.contains(t)&&e.removeChild(t),t}function _$(r,e){for(;!{}.hasOwnProperty.call(r,e)&&(r=Bl(r))!==null;);return r}function uB(){return uB=typeof Reflect<"u"&&Reflect.get?Reflect.get.bind():function(r,e,t){var n=_$(r,e);if(n){var i=Object.getOwnPropertyDescriptor(n,e);return i.get?i.get.call(arguments.length<3?r:t):i.value}},uB.apply(null,arguments)}function Yh(r,e,t,n){var i=uB(Bl(r.prototype),e,t);return typeof i=="function"?function(a){return i.apply(t,a)}:i}/*!
124
- * @antv/g-math
125
- * @description Geometry util
126
- * @version 3.1.0
127
- * @date 12/22/2025, 3:02:36 AM
128
- * @author AntVis
129
- * @docs https://g.antv.antgroup.com/
130
- */function Ls(r,e,t,n){var i=r-t,a=e-n;return Math.sqrt(i*i+a*a)}function TP(r,e){var t=Math.min.apply(Math,Qt(r)),n=Math.min.apply(Math,Qt(e)),i=Math.max.apply(Math,Qt(r)),a=Math.max.apply(Math,Qt(e));return{x:t,y:n,width:i-t,height:a-n}}function k$(r,e,t){return Math.atan(-e/r*Math.tan(t))}function T$(r,e,t){return Math.atan(e/(r*Math.tan(t)))}function F$(r,e,t,n,i,a){return t*Math.cos(i)*Math.cos(a)-n*Math.sin(i)*Math.sin(a)+r}function M$(r,e,t,n,i,a){return t*Math.sin(i)*Math.cos(a)+n*Math.cos(i)*Math.sin(a)+e}function I$(r,e,t,n,i,a,s){for(var o=k$(t,n,i),A=1/0,l=-1/0,u=[a,s],c=-Math.PI*2;c<=Math.PI*2;c+=Math.PI){var d=o+c;a<s?a<d&&d<s&&u.push(d):s<d&&d<a&&u.push(d)}for(var h=0;h<u.length;h++){var f=F$(r,e,t,n,i,u[h]);f<A&&(A=f),f>l&&(l=f)}for(var p=T$(t,n,i),g=1/0,v=-1/0,m=[a,s],y=-Math.PI*2;y<=Math.PI*2;y+=Math.PI){var w=p+y;a<s?a<w&&w<s&&m.push(w):s<w&&w<a&&m.push(w)}for(var B=0;B<m.length;B++){var x=M$(r,e,t,n,i,m[B]);x<g&&(g=x),x>v&&(v=x)}return{x:A,y:g,width:l-A,height:v-g}}var O$=1e-4;function FP(r,e,t,n,i,a){var s=-1,o=1/0,A=[t,n],l=20;a&&a>200&&(l=a/10);for(var u=1/l,c=u/10,d=0;d<=l;d++){var h=d*u,f=[i.apply(void 0,Qt(r.concat([h]))),i.apply(void 0,Qt(e.concat([h])))],p=Ls(A[0],A[1],f[0],f[1]);p<o&&(s=h,o=p)}if(s===0)return{x:r[0],y:e[0]};if(s===1){var g=r.length;return{x:r[g-1],y:e[g-1]}}o=1/0;for(var v=0;v<32&&!(c<O$);v++){var m=s-c,y=s+c,w=[i.apply(void 0,Qt(r.concat([m]))),i.apply(void 0,Qt(e.concat([m])))],B=Ls(A[0],A[1],w[0],w[1]);if(m>=0&&B<o)s=m,o=B;else{var x=[i.apply(void 0,Qt(r.concat([y]))),i.apply(void 0,Qt(e.concat([y])))],k=Ls(A[0],A[1],x[0],x[1]);y<=1&&k<o?(s=y,o=k):c*=.5}}return{x:i.apply(void 0,Qt(r.concat([s]))),y:i.apply(void 0,Qt(e.concat([s])))}}function MP(r,e,t,n){return Ls(r,e,t,n)}function IP(r,e,t,n,i){return{x:(1-i)*r+i*t,y:(1-i)*e+i*n}}function L$(r,e,t,n,i,a){var s=[t-r,n-e];if(B8(s,[0,0]))return Math.sqrt((i-r)*(i-r)+(a-e)*(a-e));var o=[-s[1],s[0]];w8(o,o);var A=[i-r,a-e];return Math.abs(b8(A,o))}function cB(r,e,t,n,i){var a=1-i;return a*a*a*r+3*e*i*a*a+3*t*i*i*a+n*i*i*i}function w2(r,e,t,n){var i=-3*r+9*e-9*t+3*n,a=6*r-12*e+6*t,s=3*e-3*r,o=[],A,l,u;if(dl(i,0))dl(a,0)||(A=-s/a,A>=0&&A<=1&&o.push(A));else{var c=a*a-4*i*s;dl(c,0)?o.push(-a/(2*i)):c>0&&(u=Math.sqrt(c),A=(-a+u)/(2*i),l=(-a-u)/(2*i),A>=0&&A<=1&&o.push(A),l>=0&&l<=1&&o.push(l))}return o}function N$(r,e,t,n,i,a,s,o){for(var A=[r,s],l=[e,o],u=w2(r,t,i,s),c=w2(e,n,a,o),d=0;d<u.length;d++)A.push(cB(r,t,i,s,u[d]));for(var h=0;h<c.length;h++)l.push(cB(e,n,a,o,c[h]));return TP(A,l)}function P$(r,e,t,n,i,a,s,o,A,l,u){return FP([r,t,i,s],[e,n,a,o],A,l,cB,u)}function b2(r,e,t,n,i,a,s,o,A,l,u){var c=P$(r,e,t,n,i,a,s,o,A,l,u);return Ls(c.x,c.y,A,l)}function U$(r){if(r.length<2)return 0;for(var e=0,t=0;t<r.length-1;t++){var n=r[t],i=r[t+1];e+=Ls(n[0],n[1],i[0],i[1])}return e}function R$(r){return U$(r)}function dB(r,e,t,n){var i=1-n;return i*i*r+2*n*i*e+n*n*t}function B2(r,e,t){var n=r+t-2*e;if(dl(n,0))return[.5];var i=(r-e)/n;return i<=1&&i>=0?[i]:[]}function Q$(r,e,t,n,i,a){var s=B2(r,t,i)[0],o=B2(e,n,a)[0],A=[r,i],l=[e,a];return s!==void 0&&A.push(dB(r,t,i,s)),o!==void 0&&l.push(dB(e,n,a,o)),TP(A,l)}function D$(r,e,t,n,i,a,s,o){return FP([r,t,i],[e,n,a],s,o,dB)}function H$(r,e,t,n,i,a,s,o){var A=D$(r,e,t,n,i,a,s,o);return Ls(A.x,A.y,s,o)}function OP(r,e){this.v=r,this.k=e}function ti(r,e,t,n){var i=Object.defineProperty;try{i({},"",{})}catch{i=0}ti=function(s,o,A,l){function u(c,d){ti(s,c,function(h){return this._invoke(c,d,h)})}o?i?i(s,o,{value:A,enumerable:!l,configurable:!l,writable:!l}):s[o]=A:(u("next",0),u("throw",1),u("return",2))},ti(r,e,t,n)}function $E(){/*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/babel/babel/blob/main/packages/babel-helpers/LICENSE */var r,e,t=typeof Symbol=="function"?Symbol:{},n=t.iterator||"@@iterator",i=t.toStringTag||"@@toStringTag";function a(h,f,p,g){var v=f&&f.prototype instanceof o?f:o,m=Object.create(v.prototype);return ti(m,"_invoke",(function(y,w,B){var x,k,_,T=0,F=B||[],I=!1,O={p:0,n:0,v:r,a:P,f:P.bind(r,4),d:function(ee,te){return x=ee,k=0,_=r,O.n=te,s}};function P(G,ee){for(k=G,_=ee,e=0;!I&&T&&!te&&e<F.length;e++){var te,N=F[e],K=O.p,J=N[2];G>3?(te=J===ee)&&(_=N[(k=N[4])?5:(k=3,3)],N[4]=N[5]=r):N[0]<=K&&((te=G<2&&K<N[1])?(k=0,O.v=ee,O.n=N[1]):K<J&&(te=G<3||N[0]>ee||ee>J)&&(N[4]=G,N[5]=ee,O.n=J,k=0))}if(te||G>1)return s;throw I=!0,ee}return function(G,ee,te){if(T>1)throw TypeError("Generator is already running");for(I&&ee===1&&P(ee,te),k=ee,_=te;(e=k<2?r:_)||!I;){x||(k?k<3?(k>1&&(O.n=-1),P(k,_)):O.n=_:O.v=_);try{if(T=2,x){if(k||(G="next"),e=x[G]){if(!(e=e.call(x,_)))throw TypeError("iterator result is not an object");if(!e.done)return e;_=e.value,k<2&&(k=0)}else k===1&&(e=x.return)&&e.call(x),k<2&&(_=TypeError("The iterator does not provide a '"+G+"' method"),k=1);x=r}else if((e=(I=O.n<0)?_:y.call(w,O))!==s)break}catch(N){x=r,k=1,_=N}finally{T=1}}return{value:e,done:I}}})(h,p,g),!0),m}var s={};function o(){}function A(){}function l(){}e=Object.getPrototypeOf;var u=[][n]?e(e([][n]())):(ti(e={},n,function(){return this}),e),c=l.prototype=o.prototype=Object.create(u);function d(h){return Object.setPrototypeOf?Object.setPrototypeOf(h,l):(h.__proto__=l,ti(h,i,"GeneratorFunction")),h.prototype=Object.create(c),h}return A.prototype=l,ti(c,"constructor",l),ti(l,"constructor",A),A.displayName="GeneratorFunction",ti(l,i,"GeneratorFunction"),ti(c),ti(c,i,"Generator"),ti(c,n,function(){return this}),ti(c,"toString",function(){return"[object Generator]"}),($E=function(){return{w:a,m:d}})()}function Xh(r,e){function t(i,a,s,o){try{var A=r[i](a),l=A.value;return l instanceof OP?e.resolve(l.v).then(function(u){t("next",u,s,o)},function(u){t("throw",u,s,o)}):e.resolve(l).then(function(u){A.value=u,s(A)},function(u){return t("throw",u,s,o)})}catch(u){o(u)}}var n;this.next||(ti(Xh.prototype),ti(Xh.prototype,typeof Symbol=="function"&&Symbol.asyncIterator||"@asyncIterator",function(){return this})),ti(this,"_invoke",function(i,a,s){function o(){return new e(function(A,l){t(i,s,A,l)})}return n=n?n.then(o,o):o()},!0)}function LP(r,e,t,n,i){return new Xh($E().w(r,e,t,n),i||Promise)}function $$(r,e,t,n,i){var a=LP(r,e,t,n,i);return a.next().then(function(s){return s.done?s.value:a.next()})}function G$(r){var e=Object(r),t=[];for(var n in e)t.unshift(n);return function i(){for(;t.length;)if((n=t.pop())in e)return i.value=n,i.done=!1,i;return i.done=!0,i}}function E2(r){if(r!=null){var e=r[typeof Symbol=="function"&&Symbol.iterator||"@@iterator"],t=0;if(e)return e.call(r);if(typeof r.next=="function")return r;if(!isNaN(r.length))return{next:function(){return r&&t>=r.length&&(r=void 0),{value:r&&r[t++],done:!r}}}}throw new TypeError(fA(r)+" is not iterable")}function Pr(){var r=$E(),e=r.m(Pr),t=(Object.getPrototypeOf?Object.getPrototypeOf(e):e.__proto__).constructor;function n(s){var o=typeof s=="function"&&s.constructor;return!!o&&(o===t||(o.displayName||o.name)==="GeneratorFunction")}var i={throw:1,return:2,break:3,continue:3};function a(s){var o,A;return function(l){o||(o={stop:function(){return A(l.a,2)},catch:function(){return l.v},abrupt:function(c,d){return A(l.a,i[c],d)},delegateYield:function(c,d,h){return o.resultName=d,A(l.d,E2(c),h)},finish:function(c){return A(l.f,c)}},A=function(c,d,h){l.p=o.prev,l.n=o.next;try{return c(d,h)}finally{o.next=l.n}}),o.resultName&&(o[o.resultName]=l.v,o.resultName=void 0),o.sent=l.v,o.next=l.n;try{return s.call(this,o)}finally{l.p=o.prev,l.n=o.next}}}return(Pr=function(){return{wrap:function(A,l,u,c){return r.w(a(A),l,u,c&&c.reverse())},isGeneratorFunction:n,mark:r.m,awrap:function(A,l){return new OP(A,l)},AsyncIterator:Xh,async:function(A,l,u,c,d){return(n(l)?LP:$$)(a(A),l,u,c,d)},keys:G$,values:E2}})()}function x2(r,e,t,n,i,a,s){try{var o=r[a](s),A=o.value}catch(l){return void t(l)}o.done?e(A):Promise.resolve(A).then(n,i)}function xo(r){return function(){var e=this,t=arguments;return new Promise(function(n,i){var a=r.apply(e,t);function s(A){x2(a,n,i,s,o,"next",A)}function o(A){x2(a,n,i,s,o,"throw",A)}s(void 0)})}}function ro(r,e){var t=typeof Symbol<"u"&&r[Symbol.iterator]||r["@@iterator"];if(!t){if(Array.isArray(r)||(t=UE(r))||e){t&&(r=t);var n=0,i=function(){};return{s:i,n:function(){return n>=r.length?{done:!0}:{done:!1,value:r[n++]}},e:function(l){throw l},f:i}}throw new TypeError(`Invalid attempt to iterate non-iterable instance.
131
- In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}var a,s=!0,o=!1;return{s:function(){t=t.call(r)},n:function(){var l=t.next();return s=l.done,l},e:function(l){o=!0,a=l},f:function(){try{s||t.return==null||t.return()}finally{if(o)throw a}}}}function z$(r,e){if(r==null)return{};var t={};for(var n in r)if({}.hasOwnProperty.call(r,n)){if(e.indexOf(n)!==-1)continue;t[n]=r[n]}return t}function as(r,e){if(r==null)return{};var t,n,i=z$(r,e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(r);for(n=0;n<a.length;n++)t=a[n],e.indexOf(t)===-1&&{}.propertyIsEnumerable.call(r,t)&&(i[t]=r[t])}return i}/*!
132
- * @antv/g-lite
133
- * @description A core module for rendering engine implements DOM API.
134
- * @version 2.7.0
135
- * @date 12/24/2025, 11:55:20 AM
136
- * @author AntVis
137
- * @docs https://g.antv.antgroup.com/
138
- */var Te=(function(r){return r.GROUP="g",r.FRAGMENT="fragment",r.CIRCLE="circle",r.ELLIPSE="ellipse",r.IMAGE="image",r.RECT="rect",r.LINE="line",r.POLYLINE="polyline",r.POLYGON="polygon",r.TEXT="text",r.PATH="path",r.HTML="html",r.MESH="mesh",r})({}),xh=(function(r){return r[r.ZERO=0]="ZERO",r[r.NEGATIVE_ONE=1]="NEGATIVE_ONE",r})({}),ko=(function(){function r(){Ne(this,r),this.plugins=[]}return Pe(r,[{key:"addRenderingPlugin",value:function(t){this.plugins.push(t),this.context.renderingPlugins.push(t)}},{key:"removeAllRenderingPlugins",value:function(){var t=this;this.plugins.forEach(function(n){var i=t.context.renderingPlugins.indexOf(n);i>=0&&t.context.renderingPlugins.splice(i,1)})}}])})(),V$=(function(){function r(e){Ne(this,r),this.clipSpaceNearZ=xh.NEGATIVE_ONE,this.plugins=[],this.config=bt({enableDirtyCheck:!0,enableCulling:!1,enableAutoRendering:!0,enableDirtyRectangleRendering:!0,enableDirtyRectangleRenderingDebug:!1,enableSizeAttenuation:!0,enableRenderingOptimization:!1},e)}return Pe(r,[{key:"registerPlugin",value:function(t){var n=this.plugins.findIndex(function(i){return i===t});n===-1&&this.plugins.push(t)}},{key:"unregisterPlugin",value:function(t){var n=this.plugins.findIndex(function(i){return i===t});n>-1&&this.plugins.splice(n,1)}},{key:"getPlugins",value:function(){return this.plugins}},{key:"getPlugin",value:function(t){return this.plugins.find(function(n){return n.name===t})}},{key:"getConfig",value:function(){return this.config}},{key:"setConfig",value:function(t){Object.assign(this.config,t)}}])})(),rv=mo,UA=ns,K$=l8,j$=A8,C2=zh,iv=hP,kn=(function(){function r(){Ne(this,r),this.center=[0,0,0],this.halfExtents=[0,0,0],this.min=[0,0,0],this.max=[0,0,0]}return Pe(r,[{key:"update",value:function(t,n){UA(this.center,t),UA(this.halfExtents,n),iv(this.min,this.center,this.halfExtents),rv(this.max,this.center,this.halfExtents)}},{key:"setMinMax",value:function(t,n){rv(this.center,n,t),C2(this.center,this.center,.5),iv(this.halfExtents,n,t),C2(this.halfExtents,this.halfExtents,.5),UA(this.min,t),UA(this.max,n)}},{key:"getMin",value:function(){return this.min}},{key:"getMax",value:function(){return this.max}},{key:"add",value:function(t){if(!r.isEmpty(t)){if(r.isEmpty(this)){this.setMinMax(t.getMin(),t.getMax());return}var n=this.center,i=n[0],a=n[1],s=n[2],o=this.halfExtents,A=o[0],l=o[1],u=o[2],c=i-A,d=i+A,h=a-l,f=a+l,p=s-u,g=s+u,v=t.center,m=v[0],y=v[1],w=v[2],B=t.halfExtents,x=B[0],k=B[1],_=B[2],T=m-x,F=m+x,I=y-k,O=y+k,P=w-_,G=w+_;T<c&&(c=T),F>d&&(d=F),I<h&&(h=I),O>f&&(f=O),P<p&&(p=P),G>g&&(g=G),n[0]=(c+d)*.5,n[1]=(h+f)*.5,n[2]=(p+g)*.5,o[0]=(d-c)*.5,o[1]=(f-h)*.5,o[2]=(g-p)*.5,this.min[0]=c,this.min[1]=h,this.min[2]=p,this.max[0]=d,this.max[1]=f,this.max[2]=g}}},{key:"setFromTransformedAABB",value:function(t,n){var i=this.center,a=this.halfExtents,s=t.center,o=t.halfExtents,A=n[0],l=n[4],u=n[8],c=n[1],d=n[5],h=n[9],f=n[2],p=n[6],g=n[10],v=Math.abs(A),m=Math.abs(l),y=Math.abs(u),w=Math.abs(c),B=Math.abs(d),x=Math.abs(h),k=Math.abs(f),_=Math.abs(p),T=Math.abs(g);i[0]=n[12]+A*s[0]+l*s[1]+u*s[2],i[1]=n[13]+c*s[0]+d*s[1]+h*s[2],i[2]=n[14]+f*s[0]+p*s[1]+g*s[2],a[0]=v*o[0]+m*o[1]+y*o[2],a[1]=w*o[0]+B*o[1]+x*o[2],a[2]=k*o[0]+_*o[1]+T*o[2],iv(this.min,i,a),rv(this.max,i,a)}},{key:"intersects",value:function(t){var n=this.getMax(),i=this.getMin(),a=t.getMax(),s=t.getMin();return i[0]<=a[0]&&n[0]>=s[0]&&i[1]<=a[1]&&n[1]>=s[1]&&i[2]<=a[2]&&n[2]>=s[2]}},{key:"intersection",value:function(t){if(!this.intersects(t))return null;var n=new r,i=K$([0,0,0],this.getMin(),t.getMin()),a=j$([0,0,0],this.getMax(),t.getMax());return n.setMinMax(i,a),n}},{key:"getNegativeFarPoint",value:function(t){return t.pnVertexFlag===273?UA([0,0,0],this.min):t.pnVertexFlag===272?[this.min[0],this.min[1],this.max[2]]:t.pnVertexFlag===257?[this.min[0],this.max[1],this.min[2]]:t.pnVertexFlag===256?[this.min[0],this.max[1],this.max[2]]:t.pnVertexFlag===17?[this.max[0],this.min[1],this.min[2]]:t.pnVertexFlag===16?[this.max[0],this.min[1],this.max[2]]:t.pnVertexFlag===1?[this.max[0],this.max[1],this.min[2]]:[this.max[0],this.max[1],this.max[2]]}},{key:"getPositiveFarPoint",value:function(t){return t.pnVertexFlag===273?UA([0,0,0],this.max):t.pnVertexFlag===272?[this.max[0],this.max[1],this.min[2]]:t.pnVertexFlag===257?[this.max[0],this.min[1],this.max[2]]:t.pnVertexFlag===256?[this.max[0],this.min[1],this.min[2]]:t.pnVertexFlag===17?[this.min[0],this.max[1],this.max[2]]:t.pnVertexFlag===16?[this.min[0],this.max[1],this.min[2]]:t.pnVertexFlag===1?[this.min[0],this.min[1],this.max[2]]:[this.min[0],this.min[1],this.min[2]]}}],[{key:"isEmpty",value:function(t){return!t||t.halfExtents[0]===0&&t.halfExtents[1]===0&&t.halfExtents[2]===0}}])})(),W$=(function(){function r(e,t){Ne(this,r),this.distance=e||0,this.normal=t||bn(0,1,0),this.updatePNVertexFlag()}return Pe(r,[{key:"updatePNVertexFlag",value:function(){this.pnVertexFlag=(+(this.normal[0]>=0)<<8)+(+(this.normal[1]>=0)<<4)+ +(this.normal[2]>=0)}},{key:"distanceToPoint",value:function(t){return rs(t,this.normal)-this.distance}},{key:"normalize",value:function(){var t=1/fP(this.normal);zh(this.normal,this.normal,t),this.distance*=t}},{key:"intersectsLine",value:function(t,n,i){var a=this.distanceToPoint(t),s=this.distanceToPoint(n),o=a/(a-s),A=o>=0&&o<=1;return A&&i&&nB(i,t,n,o),A}}])})(),RA=(function(r){return r[r.OUTSIDE=4294967295]="OUTSIDE",r[r.INSIDE=0]="INSIDE",r[r.INDETERMINATE=2147483647]="INDETERMINATE",r})({}),q$=(function(){function r(e){if(Ne(this,r),this.planes=[],e)this.planes=e;else for(var t=0;t<6;t++)this.planes.push(new W$)}return Pe(r,[{key:"extractFromVPMatrix",value:function(t){var n=Tt(t,16),i=n[0],a=n[1],s=n[2],o=n[3],A=n[4],l=n[5],u=n[6],c=n[7],d=n[8],h=n[9],f=n[10],p=n[11],g=n[12],v=n[13],m=n[14],y=n[15];ii(this.planes[0].normal,o-i,c-A,p-d),this.planes[0].distance=y-g,ii(this.planes[1].normal,o+i,c+A,p+d),this.planes[1].distance=y+g,ii(this.planes[2].normal,o+a,c+l,p+h),this.planes[2].distance=y+v,ii(this.planes[3].normal,o-a,c-l,p-h),this.planes[3].distance=y-v,ii(this.planes[4].normal,o-s,c-u,p-f),this.planes[4].distance=y-m,ii(this.planes[5].normal,o+s,c+u,p+f),this.planes[5].distance=y+m,this.planes.forEach(function(w){w.normalize(),w.updatePNVertexFlag()})}}])})(),zr=(function(){function r(){var e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:0,t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;Ne(this,r),this.x=0,this.y=0,this.x=e,this.y=t}return Pe(r,[{key:"clone",value:function(){return new r(this.x,this.y)}},{key:"copyFrom",value:function(t){this.x=t.x,this.y=t.y}}])})(),_l=(function(){function r(e,t,n,i){Ne(this,r),this.x=e,this.y=t,this.width=n,this.height=i,this.left=e,this.right=e+n,this.top=t,this.bottom=t+i}return Pe(r,[{key:"toJSON",value:function(){}}],[{key:"fromRect",value:function(t){return new r(t.x,t.y,t.width,t.height)}},{key:"applyTransform",value:function(t,n){var i=fu(t.x,t.y,0,1),a=fu(t.x+t.width,t.y,0,1),s=fu(t.x,t.y+t.height,0,1),o=fu(t.x+t.width,t.y+t.height,0,1),A=is(),l=is(),u=is(),c=is();Fs(A,i,n),Fs(l,a,n),Fs(u,s,n),Fs(c,o,n);var d=Math.min(A[0],l[0],u[0],c[0]),h=Math.min(A[1],l[1],u[1],c[1]),f=Math.max(A[0],l[0],u[0],c[0]),p=Math.max(A[1],l[1],u[1],c[1]);return r.fromRect({x:d,y:h,width:f-d,height:p-h})}}])})(),pn="Method not implemented.",QA="Use document.documentElement instead.",Y$="Cannot append a destroyed element.";function hl(r){return r===void 0?0:r>360||r<-360?r%360:r}var av=Ut();function vi(r){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;return Array.isArray(r)&&r.length===3?n?Cs(r):ns(av,r):Yt(r)?n?bn(r,e,t):ii(av,r,e,t):n?bn(r[0],r[1]||e,r[2]||t):ii(av,r[0],r[1]||e,r[2]||t)}var X$=Math.PI/180;function An(r){return r*X$}var Z$=180/Math.PI;function ki(r){return r*Z$}function J$(r){return 360*r}var Zh=Math.PI/2;function eG(r,e){var t=e[0],n=e[1],i=e[2],a=e[3],s=t*t,o=n*n,A=i*i,l=a*a,u=s+o+A+l,c=t*a-n*i;return c>.499995*u?(r[0]=Zh,r[1]=2*Math.atan2(n,t),r[2]=0):c<-.499995*u?(r[0]=-Zh,r[1]=2*Math.atan2(n,t),r[2]=0):(r[0]=Math.asin(2*(t*i-a*n)),r[1]=Math.atan2(2*(t*a+n*i),1-2*(A+l)),r[2]=Math.atan2(2*(t*n+i*a),1-2*(o+A))),r}function tG(r,e){var t,n,i=xl(Ut(),e),a=Tt(i,3),s=a[0],o=a[1],A=a[2],l=Math.asin(-e[2]/s);return l<Zh?l>-Zh?(t=Math.atan2(e[6]/o,e[10]/A),n=Math.atan2(e[1]/s,e[0]/s)):(n=0,t=-Math.atan2(e[4]/o,e[5]/o)):(n=0,t=Math.atan2(e[4]/o,e[5]/o)),r[0]=t,r[1]=l,r[2]=n,r}function sv(r,e){return e.length===16?tG(r,e):eG(r,e)}function nG(r,e,t,n,i){var a=Math.cos(r),s=Math.sin(r);return H5(n*a,i*s,0,-n*s,i*a,0,e,t,1)}function rG(r,e,t,n,i,a,s){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1,A=2*a,l=t-e,u=n-i,c=A/l,d=A/u,h=(t+e)/l,f=(n+i)/u,p,g,v=s-a,m=s*a;return o?(p=-s/v,g=-m/v):(p=-(s+a)/v,g=-2*m/v),r[0]=c,r[1]=0,r[2]=0,r[3]=0,r[4]=0,r[5]=d,r[6]=0,r[7]=0,r[8]=h,r[9]=f,r[10]=p,r[11]=-1,r[12]=0,r[13]=0,r[14]=g,r[15]=0,r}function S2(r){var e=r[0],t=r[1],n=r[3],i=r[4],a=Math.sqrt(e*e+t*t),s=Math.sqrt(n*n+i*i),o=e*i-t*n;if(o<0&&(e<i?a=-a:s=-s),a){var A=1/a;e*=A,t*=A}if(s){var l=1/s;n*=l,i*=l}var u=Math.atan2(t,e),c=ki(u);return[r[6],r[7],a,s,c]}var Va=wn(),wa=wn(),Jl=is(),wt=[Ut(),Ut(),Ut()],_2=Ut();function iG(r,e,t,n,i,a){if(!aG(Va,r)||(El(wa,Va),wa[3]=0,wa[7]=0,wa[11]=0,wa[15]=1,Math.abs(ZN(wa))<1e-8))return!1;var s=Va[3],o=Va[7],A=Va[11],l=Va[12],u=Va[13],c=Va[14],d=Va[15];if(s!==0||o!==0||A!==0){Jl[0]=s,Jl[1]=o,Jl[2]=A,Jl[3]=d;var h=ts(wa,wa);if(!h)return!1;XN(wa,wa),Fs(i,Jl,wa)}else i[0]=i[1]=i[2]=0,i[3]=1;if(e[0]=l,e[1]=u,e[2]=c,sG(wt,Va),t[0]=_s(wt[0]),AA(wt[0],wt[0]),n[0]=rs(wt[0],wt[1]),ov(wt[1],wt[1],wt[0],1,-n[0]),t[1]=_s(wt[1]),AA(wt[1],wt[1]),n[0]/=t[1],n[1]=rs(wt[0],wt[2]),ov(wt[2],wt[2],wt[0],1,-n[1]),n[2]=rs(wt[1],wt[2]),ov(wt[2],wt[2],wt[1],1,-n[2]),t[2]=_s(wt[2]),AA(wt[2],wt[2]),n[1]/=t[2],n[2]/=t[2],Bh(_2,wt[1],wt[2]),rs(wt[0],_2)<0)for(var f=0;f<3;f++)t[f]*=-1,wt[f][0]*=-1,wt[f][1]*=-1,wt[f][2]*=-1;return a[0]=.5*Math.sqrt(Math.max(1+wt[0][0]-wt[1][1]-wt[2][2],0)),a[1]=.5*Math.sqrt(Math.max(1-wt[0][0]+wt[1][1]-wt[2][2],0)),a[2]=.5*Math.sqrt(Math.max(1-wt[0][0]-wt[1][1]+wt[2][2],0)),a[3]=.5*Math.sqrt(Math.max(1+wt[0][0]+wt[1][1]+wt[2][2],0)),wt[2][1]>wt[1][2]&&(a[0]=-a[0]),wt[0][2]>wt[2][0]&&(a[1]=-a[1]),wt[1][0]>wt[0][1]&&(a[2]=-a[2]),!0}function aG(r,e){var t=e[15];if(t===0)return!1;for(var n=1/t,i=0;i<16;i++)r[i]=e[i]*n;return!0}function sG(r,e){r[0][0]=e[0],r[0][1]=e[1],r[0][2]=e[2],r[1][0]=e[4],r[1][1]=e[5],r[1][2]=e[6],r[2][0]=e[8],r[2][1]=e[9],r[2][2]=e[10]}function ov(r,e,t,n,i){r[0]=e[0]*n+t[0]*i,r[1]=e[1]*n+t[1]*i,r[2]=e[2]*n+t[2]*i}var gn=(function(r){return r[r.ORBITING=0]="ORBITING",r[r.EXPLORING=1]="EXPLORING",r[r.TRACKING=2]="TRACKING",r})({}),hB=(function(r){return r[r.DEFAULT=0]="DEFAULT",r[r.ROTATIONAL=1]="ROTATIONAL",r[r.TRANSLATIONAL=2]="TRANSLATIONAL",r[r.CINEMATIC=3]="CINEMATIC",r})({}),aa=(function(r){return r[r.ORTHOGRAPHIC=0]="ORTHOGRAPHIC",r[r.PERSPECTIVE=1]="PERSPECTIVE",r})({}),NP={UPDATED:"updated"},k2=2e-4,PP=(function(){function r(){Ne(this,r),this.clipSpaceNearZ=xh.NEGATIVE_ONE,this.eventEmitter=new jN,this.matrix=wn(),this.right=bn(1,0,0),this.up=bn(0,1,0),this.forward=bn(0,0,1),this.position=bn(0,0,1),this.focalPoint=bn(0,0,0),this.distanceVector=bn(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=wn(),this.projectionMatrixInverse=wn(),this.jitteredProjectionMatrix=void 0,this.enableUpdate=!0,this.type=gn.EXPLORING,this.trackingMode=hB.DEFAULT,this.projectionMode=aa.PERSPECTIVE,this.frustum=new q$,this.orthoMatrix=wn()}return Pe(r,[{key:"isOrtho",value:function(){return this.projectionMode===aa.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(t){this.enableUpdate=t}},{key:"setType",value:function(t,n){return this.type=t,this.type===gn.EXPLORING?this.setWorldRotation(!0):this.setWorldRotation(!1),this._getAngles(),this.type===gn.TRACKING&&n!==void 0&&this.setTrackingMode(n),this}},{key:"setProjectionMode",value:function(t){return this.projectionMode=t,this}},{key:"setTrackingMode",value:function(t){if(this.type!==gn.TRACKING)throw new Error("Impossible to set a tracking mode if the camera is not of tracking type");return this.trackingMode=t,this}},{key:"setWorldRotation",value:function(t){return this.rotateWorld=t,this._getAngles(),this}},{key:"getViewTransform",value:function(){return ts(wn(),this.matrix)}},{key:"getWorldTransform",value:function(){return this.matrix}},{key:"jitterProjectionMatrix",value:function(t,n){var i=no(wn(),[t,n,0]);this.jitteredProjectionMatrix=si(wn(),i,this.projectionMatrix)}},{key:"clearJitterProjectionMatrix",value:function(){this.jitteredProjectionMatrix=void 0}},{key:"setMatrix",value:function(t){return this.matrix=t,this._update(),this}},{key:"setProjectionMatrix",value:function(t){this.projectionMatrix=t}},{key:"setFov",value:function(t){return this.setPerspective(this.near,this.far,t,this.aspect),this}},{key:"setAspect",value:function(t){return this.setPerspective(this.near,this.far,this.fov,t),this}},{key:"setNear",value:function(t){return this.projectionMode===aa.PERSPECTIVE?this.setPerspective(t,this.far,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,t,this.far),this}},{key:"setFar",value:function(t){return this.projectionMode===aa.PERSPECTIVE?this.setPerspective(this.near,t,this.fov,this.aspect):this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,t),this}},{key:"setViewOffset",value:function(t,n,i,a,s,o){return this.aspect=t/n,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=t,this.view.fullHeight=n,this.view.offsetX=i,this.view.offsetY=a,this.view.width=s,this.view.height=o,this.projectionMode===aa.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===aa.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(t){return this.zoom=t,this.projectionMode===aa.ORTHOGRAPHIC?this.setOrthographic(this.left,this.rright,this.top,this.bottom,this.near,this.far):this.projectionMode===aa.PERSPECTIVE&&this.setPerspective(this.near,this.far,this.fov,this.aspect),this}},{key:"setZoomByViewportPoint",value:function(t,n){var i=this.canvas.viewport2Canvas({x:n[0],y:n[1]}),a=i.x,s=i.y,o=this.roll;this.rotate(0,0,-o),this.setPosition(a,s),this.setFocalPoint(a,s),this.setZoom(t),this.rotate(0,0,o);var A=this.canvas.viewport2Canvas({x:n[0],y:n[1]}),l=A.x,u=A.y,c=bn(l-a,u-s,0),d=rs(c,this.right)/_s(this.right),h=rs(c,this.up)/_s(this.up),f=this.getPosition(),p=Tt(f,2),g=p[0],v=p[1],m=this.getFocalPoint(),y=Tt(m,2),w=y[0],B=y[1];return this.setPosition(g-d,v-h),this.setFocalPoint(w-d,B-h),this}},{key:"setPerspective",value:function(t,n,i,a){var s;this.projectionMode=aa.PERSPECTIVE,this.fov=i,this.near=t,this.far=n,this.aspect=a;var o=this.near*Math.tan(An(.5*this.fov))/this.zoom,A=2*o,l=this.aspect*A,u=-.5*l;if((s=this.view)!==null&&s!==void 0&&s.enabled){var c=this.view.fullWidth,d=this.view.fullHeight;u+=this.view.offsetX*l/c,o-=this.view.offsetY*A/d,l*=this.view.width/c,A*=this.view.height/d}return rG(this.projectionMatrix,u,u+l,o-A,o,t,this.far,this.clipSpaceNearZ===xh.ZERO),ts(this.projectionMatrixInverse,this.projectionMatrix),this.triggerUpdate(),this}},{key:"setOrthographic",value:function(t,n,i,a,s,o){var A;this.projectionMode=aa.ORTHOGRAPHIC,this.rright=n,this.left=t,this.top=i,this.bottom=a,this.near=s,this.far=o;var l=(this.rright-this.left)/(2*this.zoom),u=(this.top-this.bottom)/(2*this.zoom),c=(this.rright+this.left)/2,d=(this.top+this.bottom)/2,h=c-l,f=c+l,p=d+u,g=d-u;if((A=this.view)!==null&&A!==void 0&&A.enabled){var v=(this.rright-this.left)/this.view.fullWidth/this.zoom,m=(this.top-this.bottom)/this.view.fullHeight/this.zoom;h+=v*this.view.offsetX,f=h+v*this.view.width,p-=m*this.view.offsetY,g=p-m*this.view.height}return this.clipSpaceNearZ===xh.NEGATIVE_ONE?AP(this.projectionMatrix,h,f,p,g,s,o):lP(this.projectionMatrix,h,f,p,g,s,o),ts(this.projectionMatrixInverse,this.projectionMatrix),this._getOrthoMatrix(),this.triggerUpdate(),this}},{key:"setPosition",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.position[1],i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.position[2],a=vi(t,n,i);return this._setPosition(a),this.setFocalPoint(this.focalPoint),this.triggerUpdate(),this}},{key:"setFocalPoint",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:this.focalPoint[1],i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:this.focalPoint[2],a=bn(0,1,0);if(this.focalPoint=vi(t,n,i),this.trackingMode===hB.CINEMATIC){var s=tB(Ut(),this.focalPoint,this.position);t=s[0],n=s[1],i=s[2];var o=_s(s),A=ki(Math.asin(n/o)),l=90+ki(Math.atan2(i,t)),u=wn();tP(u,u,An(l)),eP(u,u,An(A)),a=oi(Ut(),[0,1,0],u)}return ts(this.matrix,uP(wn(),this.position,this.focalPoint,a)),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(t){if(this.distance===t||t<0)return this;this.distance=t,this.distance<k2&&(this.distance=k2),this.dollyingStep=this.distance/100;var n=Ut();t=this.distance;var i=this.forward,a=this.focalPoint;return n[0]=t*i[0]+a[0],n[1]=t*i[1]+a[1],n[2]=t*i[2]+a[2],this._setPosition(n),this.triggerUpdate(),this}},{key:"setMaxDistance",value:function(t){return this.maxDistance=t,this}},{key:"setMinDistance",value:function(t){return this.minDistance=t,this}},{key:"setAzimuth",value:function(t){return this.azimuth=hl(t),this.computeMatrix(),this._getAxes(),this.type===gn.ORBITING||this.type===gn.EXPLORING?this._getPosition():this.type===gn.TRACKING&&this._getFocalPoint(),this.triggerUpdate(),this}},{key:"getAzimuth",value:function(){return this.azimuth}},{key:"setElevation",value:function(t){return this.elevation=hl(t),this.computeMatrix(),this._getAxes(),this.type===gn.ORBITING||this.type===gn.EXPLORING?this._getPosition():this.type===gn.TRACKING&&this._getFocalPoint(),this.triggerUpdate(),this}},{key:"getElevation",value:function(){return this.elevation}},{key:"setRoll",value:function(t){return this.roll=hl(t),this.computeMatrix(),this._getAxes(),this.type===gn.ORBITING||this.type===gn.EXPLORING?this._getPosition():this.type===gn.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 t=ao(fr(),[0,0,1],An(this.roll));Eo(this.matrix);var n=ao(fr(),[1,0,0],An((this.rotateWorld&&this.type!==gn.TRACKING||this.type===gn.TRACKING?1:-1)*this.elevation)),i=ao(fr(),[0,1,0],An((this.rotateWorld&&this.type!==gn.TRACKING||this.type===gn.TRACKING?1:-1)*this.azimuth)),a=yo(fr(),i,n);a=yo(fr(),a,t);var s=RE(wn(),a);this.type===gn.ORBITING||this.type===gn.EXPLORING?(cl(this.matrix,this.matrix,this.focalPoint),si(this.matrix,this.matrix,s),cl(this.matrix,this.matrix,[0,0,this.distance])):this.type===gn.TRACKING&&(cl(this.matrix,this.matrix,this.position),si(this.matrix,this.matrix,s))}},{key:"_setPosition",value:function(t,n,i){this.position=vi(t,n,i);var a=this.matrix;a[12]=this.position[0],a[13]=this.position[1],a[14]=this.position[2],a[15]=1,this._getOrthoMatrix()}},{key:"_getAxes",value:function(){ns(this.right,vi(Fs(is(),[1,0,0,0],this.matrix))),ns(this.up,vi(Fs(is(),[0,1,0,0],this.matrix))),ns(this.forward,vi(Fs(is(),[0,0,1,0],this.matrix))),AA(this.right,this.right),AA(this.up,this.up),AA(this.forward,this.forward)}},{key:"_getAngles",value:function(){var t=this.distanceVector[0],n=this.distanceVector[1],i=this.distanceVector[2],a=_s(this.distanceVector);if(a===0){this.elevation=0,this.azimuth=0;return}this.type===gn.TRACKING?(this.elevation=ki(Math.asin(n/a)),this.azimuth=ki(Math.atan2(-t,-i))):this.rotateWorld?(this.elevation=ki(Math.asin(n/a)),this.azimuth=ki(Math.atan2(-t,-i))):(this.elevation=-ki(Math.asin(n/a)),this.azimuth=-ki(Math.atan2(-t,-i)))}},{key:"_getPosition",value:function(){ns(this.position,vi(Fs(is(),[0,0,0,1],this.matrix))),this._getDistance()}},{key:"_getFocalPoint",value:function(){c8(this.distanceVector,[0,0,-this.distance],D5(WN(),this.matrix)),mo(this.focalPoint,this.position,this.distanceVector),this._getDistance()}},{key:"_getDistance",value:function(){this.distanceVector=tB(Ut(),this.focalPoint,this.position),this.distance=_s(this.distanceVector),this.dollyingStep=this.distance/100}},{key:"_getOrthoMatrix",value:function(){if(this.projectionMode===aa.ORTHOGRAPHIC){var t=this.position,n=ao(fr(),[0,0,1],-this.roll*Math.PI/180);Uu(this.orthoMatrix,n,bn((this.rright-this.left)/2-t[0],(this.top-this.bottom)/2-t[1],0),bn(this.zoom,this.zoom,1),t)}}},{key:"triggerUpdate",value:function(){if(this.enableUpdate){var t=this.getViewTransform(),n=si(wn(),this.getPerspective(),t);this.getFrustum().extractFromVPMatrix(n),this.eventEmitter.emit(NP.UPDATED)}}},{key:"rotate",value:function(t,n,i){throw new Error(pn)}},{key:"pan",value:function(t,n){throw new Error(pn)}},{key:"dolly",value:function(t){throw new Error(pn)}},{key:"createLandmark",value:function(t,n){throw new Error(pn)}},{key:"gotoLandmark",value:function(t,n){throw new Error(pn)}},{key:"cancelLandmarkAnimation",value:function(){throw new Error(pn)}}])})(),oG=(function(r){return r[r.Standard=0]="Standard",r})({}),Jh=(function(r){return r[r.ADDED=0]="ADDED",r[r.REMOVED=1]="REMOVED",r[r.Z_INDEX_CHANGED=2]="Z_INDEX_CHANGED",r})({}),AG=Ut(),eu=wn(),lG=fr();function T2(r){if(r.localDirtyFlag){var e=r.localSkew[0]!==0||r.localSkew[1]!==0;if(e){Uu(r.localTransform,r.localRotation,r.localPosition,bn(1,1,1),r.origin),(r.localSkew[0]!==0||r.localSkew[1]!==0)&&(Eo(eu),eu[4]=Math.tan(r.localSkew[0]),eu[1]=Math.tan(r.localSkew[1]),si(r.localTransform,r.localTransform,eu));var t=Uu(eu,gP(lG,0,0,0,1),ii(AG,1,1,1),r.localScale,r.origin);si(r.localTransform,r.localTransform,t)}else{var n=r.localTransform,i=r.localPosition,a=r.localRotation,s=r.localScale,o=r.origin,A=i[0]!==0||i[1]!==0||i[2]!==0,l=a[3]!==1||a[0]!==0||a[1]!==0||a[2]!==0,u=s[0]!==1||s[1]!==1||s[2]!==1,c=o[0]!==0||o[1]!==0||o[2]!==0;!l&&!u&&!c?A?no(n,i):Eo(n):Uu(n,a,i,s,o)}r.localDirtyFlag=!1}}function uG(r,e){r.dirtyFlag&&(e?si(r.worldTransform,e.worldTransform,r.localTransform):El(r.worldTransform,r.localTransform),r.dirtyFlag=!1)}var UP={absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:new _l(0,0,0,0)},Ke=(function(r){return r.COORDINATE="<coordinate>",r.COLOR="<color>",r.PAINT="<paint>",r.NUMBER="<number>",r.ANGLE="<angle>",r.OPACITY_VALUE="<opacity-value>",r.SHADOW_BLUR="<shadow-blur>",r.LENGTH="<length>",r.PERCENTAGE="<percentage>",r.LENGTH_PERCENTAGE="<length> | <percentage>",r.LENGTH_PERCENTAGE_12="[<length> | <percentage>]{1,2}",r.LENGTH_PERCENTAGE_14="[<length> | <percentage>]{1,4}",r.LIST_OF_POINTS="<list-of-points>",r.PATH="<path>",r.FILTER="<filter>",r.Z_INDEX="<z-index>",r.OFFSET_DISTANCE="<offset-distance>",r.DEFINED_PATH="<defined-path>",r.MARKER="<marker>",r.TRANSFORM="<transform>",r.TRANSFORM_ORIGIN="<transform-origin>",r.TEXT="<text>",r.TEXT_TRANSFORM="<text-transform>",r})({});function GE(r,e,t){r.prototype=e.prototype=t,t.constructor=r}function RP(r,e){var t=Object.create(r.prototype);for(var n in e)t[n]=e[n];return t}function bc(){}var Xu=.7,ef=1/Xu,fl="\\s*([+-]?\\d+)\\s*",Zu="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",ss="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",cG=/^#([0-9a-f]{3,8})$/,dG=new RegExp(`^rgb\\(${fl},${fl},${fl}\\)$`),hG=new RegExp(`^rgb\\(${ss},${ss},${ss}\\)$`),fG=new RegExp(`^rgba\\(${fl},${fl},${fl},${Zu}\\)$`),gG=new RegExp(`^rgba\\(${ss},${ss},${ss},${Zu}\\)$`),pG=new RegExp(`^hsl\\(${Zu},${ss},${ss}\\)$`),vG=new RegExp(`^hsla\\(${Zu},${ss},${ss},${Zu}\\)$`),F2={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};GE(bc,Kf,{copy(r){return Object.assign(new this.constructor,this,r)},displayable(){return this.rgb().displayable()},hex:M2,formatHex:M2,formatHex8:mG,formatHsl:yG,formatRgb:I2,toString:I2});function M2(){return this.rgb().formatHex()}function mG(){return this.rgb().formatHex8()}function yG(){return QP(this).formatHsl()}function I2(){return this.rgb().formatRgb()}function Kf(r){var e,t;return r=(r+"").trim().toLowerCase(),(e=cG.exec(r))?(t=e[1].length,e=parseInt(e[1],16),t===6?O2(e):t===3?new Oi(e>>8&15|e>>4&240,e>>4&15|e&240,(e&15)<<4|e&15,1):t===8?Jc(e>>24&255,e>>16&255,e>>8&255,(e&255)/255):t===4?Jc(e>>12&15|e>>8&240,e>>8&15|e>>4&240,e>>4&15|e&240,((e&15)<<4|e&15)/255):null):(e=dG.exec(r))?new Oi(e[1],e[2],e[3],1):(e=hG.exec(r))?new Oi(e[1]*255/100,e[2]*255/100,e[3]*255/100,1):(e=fG.exec(r))?Jc(e[1],e[2],e[3],e[4]):(e=gG.exec(r))?Jc(e[1]*255/100,e[2]*255/100,e[3]*255/100,e[4]):(e=pG.exec(r))?P2(e[1],e[2]/100,e[3]/100,1):(e=vG.exec(r))?P2(e[1],e[2]/100,e[3]/100,e[4]):F2.hasOwnProperty(r)?O2(F2[r]):r==="transparent"?new Oi(NaN,NaN,NaN,0):null}function O2(r){return new Oi(r>>16&255,r>>8&255,r&255,1)}function Jc(r,e,t,n){return n<=0&&(r=e=t=NaN),new Oi(r,e,t,n)}function wG(r){return r instanceof bc||(r=Kf(r)),r?(r=r.rgb(),new Oi(r.r,r.g,r.b,r.opacity)):new Oi}function bG(r,e,t,n){return arguments.length===1?wG(r):new Oi(r,e,t,n??1)}function Oi(r,e,t,n){this.r=+r,this.g=+e,this.b=+t,this.opacity=+n}GE(Oi,bG,RP(bc,{brighter(r){return r=r==null?ef:Math.pow(ef,r),new Oi(this.r*r,this.g*r,this.b*r,this.opacity)},darker(r){return r=r==null?Xu:Math.pow(Xu,r),new Oi(this.r*r,this.g*r,this.b*r,this.opacity)},rgb(){return this},clamp(){return new Oi(lA(this.r),lA(this.g),lA(this.b),tf(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:L2,formatHex:L2,formatHex8:BG,formatRgb:N2,toString:N2}));function L2(){return`#${nA(this.r)}${nA(this.g)}${nA(this.b)}`}function BG(){return`#${nA(this.r)}${nA(this.g)}${nA(this.b)}${nA((isNaN(this.opacity)?1:this.opacity)*255)}`}function N2(){const r=tf(this.opacity);return`${r===1?"rgb(":"rgba("}${lA(this.r)}, ${lA(this.g)}, ${lA(this.b)}${r===1?")":`, ${r})`}`}function tf(r){return isNaN(r)?1:Math.max(0,Math.min(1,r))}function lA(r){return Math.max(0,Math.min(255,Math.round(r)||0))}function nA(r){return r=lA(r),(r<16?"0":"")+r.toString(16)}function P2(r,e,t,n){return n<=0?r=e=t=NaN:t<=0||t>=1?r=e=NaN:e<=0&&(r=NaN),new Sa(r,e,t,n)}function QP(r){if(r instanceof Sa)return new Sa(r.h,r.s,r.l,r.opacity);if(r instanceof bc||(r=Kf(r)),!r)return new Sa;if(r instanceof Sa)return r;r=r.rgb();var e=r.r/255,t=r.g/255,n=r.b/255,i=Math.min(e,t,n),a=Math.max(e,t,n),s=NaN,o=a-i,A=(a+i)/2;return o?(e===a?s=(t-n)/o+(t<n)*6:t===a?s=(n-e)/o+2:s=(e-t)/o+4,o/=A<.5?a+i:2-a-i,s*=60):o=A>0&&A<1?0:s,new Sa(s,o,A,r.opacity)}function EG(r,e,t,n){return arguments.length===1?QP(r):new Sa(r,e,t,n??1)}function Sa(r,e,t,n){this.h=+r,this.s=+e,this.l=+t,this.opacity=+n}GE(Sa,EG,RP(bc,{brighter(r){return r=r==null?ef:Math.pow(ef,r),new Sa(this.h,this.s,this.l*r,this.opacity)},darker(r){return r=r==null?Xu:Math.pow(Xu,r),new Sa(this.h,this.s,this.l*r,this.opacity)},rgb(){var r=this.h%360+(this.h<0)*360,e=isNaN(r)||isNaN(this.s)?0:this.s,t=this.l,n=t+(t<.5?t:1-t)*e,i=2*t-n;return new Oi(Av(r>=240?r-240:r+120,i,n),Av(r,i,n),Av(r<120?r+240:r-120,i,n),this.opacity)},clamp(){return new Sa(U2(this.h),ed(this.s),ed(this.l),tf(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const r=tf(this.opacity);return`${r===1?"hsl(":"hsla("}${U2(this.h)}, ${ed(this.s)*100}%, ${ed(this.l)*100}%${r===1?")":`, ${r})`}`}}));function U2(r){return r=(r||0)%360,r<0?r+360:r}function ed(r){return Math.max(0,Math.min(1,r||0))}function Av(r,e,t){return(r<60?e+(t-e)*r/60:r<180?t:r<240?e+(t-e)*(240-r)/60:e)*255}function lr(r,e){if(typeof r!="function"||e!=null&&typeof e!="function")throw new TypeError("Expected a function");var t=function(){for(var i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];var o=e?e.apply(this,a):a[0],A=t.cache;if(A.has(o))return A.get(o);var l=r.apply(this,a);return t.cache=A.set(o,l)||A,l};return t.cache=new(lr.Cache||Map),lr.cacheList.push(t.cache),t}lr.Cache=Map;lr.cacheList=[];lr.clearCache=function(){lr.cacheList.forEach(function(r){return r.clear()})};var We=(function(r){return r[r.kUnknown=0]="kUnknown",r[r.kNumber=1]="kNumber",r[r.kPercentage=2]="kPercentage",r[r.kEms=3]="kEms",r[r.kPixels=4]="kPixels",r[r.kRems=5]="kRems",r[r.kDegrees=6]="kDegrees",r[r.kRadians=7]="kRadians",r[r.kGradians=8]="kGradians",r[r.kTurns=9]="kTurns",r[r.kMilliseconds=10]="kMilliseconds",r[r.kSeconds=11]="kSeconds",r[r.kInteger=12]="kInteger",r})({}),Ca=(function(r){return r[r.kUNumber=0]="kUNumber",r[r.kUPercent=1]="kUPercent",r[r.kULength=2]="kULength",r[r.kUAngle=3]="kUAngle",r[r.kUTime=4]="kUTime",r[r.kUOther=5]="kUOther",r})({}),xG=(function(r){return r[r.kYes=0]="kYes",r[r.kNo=1]="kNo",r})({}),CG=(function(r){return r[r.kYes=0]="kYes",r[r.kNo=1]="kNo",r})({}),SG=[{name:"em",unit_type:We.kEms},{name:"px",unit_type:We.kPixels},{name:"deg",unit_type:We.kDegrees},{name:"rad",unit_type:We.kRadians},{name:"grad",unit_type:We.kGradians},{name:"ms",unit_type:We.kMilliseconds},{name:"s",unit_type:We.kSeconds},{name:"rem",unit_type:We.kRems},{name:"turn",unit_type:We.kTurns}],kl=(function(r){return r[r.kUnknownType=0]="kUnknownType",r[r.kUnparsedType=1]="kUnparsedType",r[r.kKeywordType=2]="kKeywordType",r[r.kUnitType=3]="kUnitType",r[r.kSumType=4]="kSumType",r[r.kProductType=5]="kProductType",r[r.kNegateType=6]="kNegateType",r[r.kInvertType=7]="kInvertType",r[r.kMinType=8]="kMinType",r[r.kMaxType=9]="kMaxType",r[r.kClampType=10]="kClampType",r[r.kTransformType=11]="kTransformType",r[r.kPositionType=12]="kPositionType",r[r.kURLImageType=13]="kURLImageType",r[r.kColorType=14]="kColorType",r[r.kUnsupportedColorType=15]="kUnsupportedColorType",r})({}),_G=function(e){return SG.find(function(t){return t.name===e}).unit_type},kG=function(e){return e?e==="number"?We.kNumber:e==="percent"||e==="%"?We.kPercentage:_G(e):We.kUnknown},TG=function(e){switch(e){case We.kNumber:case We.kInteger:return Ca.kUNumber;case We.kPercentage:return Ca.kUPercent;case We.kPixels:return Ca.kULength;case We.kMilliseconds:case We.kSeconds:return Ca.kUTime;case We.kDegrees:case We.kRadians:case We.kGradians:case We.kTurns:return Ca.kUAngle;default:return Ca.kUOther}},FG=function(e){switch(e){case Ca.kUNumber:return We.kNumber;case Ca.kULength:return We.kPixels;case Ca.kUPercent:return We.kPercentage;case Ca.kUTime:return We.kSeconds;case Ca.kUAngle:return We.kDegrees;default:return We.kUnknown}},R2=function(e){var t=1;switch(e){case We.kPixels:case We.kDegrees:case We.kSeconds:break;case We.kMilliseconds:t=.001;break;case We.kRadians:t=180/Math.PI;break;case We.kGradians:t=.9;break;case We.kTurns:t=360;break}return t},fB=function(e){switch(e){case We.kNumber:case We.kInteger:return"";case We.kPercentage:return"%";case We.kEms:return"em";case We.kRems:return"rem";case We.kPixels:return"px";case We.kDegrees:return"deg";case We.kRadians:return"rad";case We.kGradians:return"grad";case We.kMilliseconds:return"ms";case We.kSeconds:return"s";case We.kTurns:return"turn"}return""},jf=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"toString",value:function(){return this.buildCSSText(xG.kNo,CG.kNo,"")}},{key:"isNumericValue",value:function(){return this.getType()>=kl.kUnitType&&this.getType()<=kl.kClampType}}],[{key:"isAngle",value:function(t){return t===We.kDegrees||t===We.kRadians||t===We.kGradians||t===We.kTurns}},{key:"isLength",value:function(t){return t>=We.kEms&&t<We.kDegrees}},{key:"isRelativeUnit",value:function(t){return t===We.kPercentage||t===We.kEms||t===We.kRems}},{key:"isTime",value:function(t){return t===We.kSeconds||t===We.kMilliseconds}}])})(),MG=(function(r){function e(t){var n;return Ne(this,e),n=Ft(this,e),n.colorSpace=t,n}return Mt(e,r),Pe(e,[{key:"getType",value:function(){return kl.kColorType}},{key:"to",value:function(n){return this}}])})(jf),so=(function(r){return r[r.Constant=0]="Constant",r[r.LinearGradient=1]="LinearGradient",r[r.RadialGradient=2]="RadialGradient",r})({}),td=(function(r){function e(t,n){var i;return Ne(this,e),i=Ft(this,e),i.type=t,i.value=n,i}return Mt(e,r),Pe(e,[{key:"clone",value:function(){return new e(this.type,this.value)}},{key:"buildCSSText",value:function(n,i,a){return a}},{key:"getType",value:function(){return kl.kColorType}}])})(jf),fa=(function(r){function e(t){var n;return Ne(this,e),n=Ft(this,e),n.value=t,n}return Mt(e,r),Pe(e,[{key:"clone",value:function(){return new e(this.value)}},{key:"getType",value:function(){return kl.kKeywordType}},{key:"buildCSSText",value:function(n,i,a){return a+this.value}}])})(jf),IG=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"",n="";return Number.isFinite(e)?n="NaN":e>0?n="infinity":n="-infinity",n+=t},gB=function(e){return FG(TG(e))},vn=(function(r){function e(t){var n,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:We.kNumber;Ne(this,e),n=Ft(this,e);var a;return typeof i=="string"?a=kG(i):a=i,n.unit=a,n.value=t,n}return Mt(e,r),Pe(e,[{key:"clone",value:function(){return new e(this.value,this.unit)}},{key:"equals",value:function(n){var i=n;return this.value===i.value&&this.unit===i.unit}},{key:"getType",value:function(){return kl.kUnitType}},{key:"convertTo",value:function(n){if(this.unit===n)return new e(this.value,this.unit);var i=gB(this.unit);if(i!==gB(n)||i===We.kUnknown)return null;var a=R2(this.unit)/R2(n);return new e(this.value*a,n)}},{key:"buildCSSText",value:function(n,i,a){var s;switch(this.unit){case We.kUnknown:break;case We.kInteger:s=Number(this.value).toFixed(0);break;case We.kNumber:case We.kPercentage:case We.kEms:case We.kRems:case We.kPixels:case We.kDegrees:case We.kRadians:case We.kGradians:case We.kMilliseconds:case We.kSeconds:case We.kTurns:{var o=-999999,A=999999,l=this.value,u=fB(this.unit);if(l<o||l>A){var c=fB(this.unit);!Number.isFinite(l)||Number.isNaN(l)?s=IG(l,c):s=l+(c||"")}else s="".concat(l).concat(u)}}return a+=s,a}}])})(jf),Ea=new vn(0,"px");new vn(1,"px");var gA=new vn(0,"deg"),zE=(function(r){function e(t,n,i){var a,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:1,o=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;return Ne(this,e),a=Ft(this,e,["rgb"]),a.r=t,a.g=n,a.b=i,a.alpha=s,a.isNone=o,a}return Mt(e,r),Pe(e,[{key:"clone",value:function(){return new e(this.r,this.g,this.b,this.alpha)}},{key:"buildCSSText",value:function(n,i,a){return"".concat(a,"rgba(").concat(this.r,",").concat(this.g,",").concat(this.b,",").concat(this.alpha,")")}}])})(MG),Q2=new fa("unset"),OG=new fa("initial"),LG=new fa("inherit"),lv={"":Q2,unset:Q2,initial:OG,inherit:LG},NG=function(e){return lv[e]||(lv[e]=new fa(e)),lv[e]},DP=new zE(0,0,0,0,!0),HP=new zE(0,0,0,0),PG=lr(function(r,e,t,n){return new zE(r,e,t,n)},function(r,e,t,n){return"rgba(".concat(r,",").concat(e,",").concat(t,",").concat(n,")")}),Ln=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:We.kNumber;return new vn(e,t)};new vn(50,"%");function UG(r){var e=r.type,t=r.value;return e==="hex"?"#".concat(t):e==="literal"?t:e==="rgb"?"rgb(".concat(t.join(","),")"):"rgba(".concat(t.join(","),")")}var RG=(function(){var r={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]+\.?))/},e="";function t(N){throw new Error("".concat(e,": ").concat(N))}function n(){var N=i();return e.length>0&&t("Invalid input not EOF"),N}function i(){return y(a)}function a(){return s("linear-gradient",r.linearGradient,A)||s("repeating-linear-gradient",r.repeatingLinearGradient,A)||s("radial-gradient",r.radialGradient,c)||s("repeating-radial-gradient",r.repeatingRadialGradient,c)||s("conic-gradient",r.conicGradient,c)}function s(N,K,J){return o(K,function(be){var re=J();return re&&(ee(r.comma)||t("Missing comma before color stops")),{type:N,orientation:re,colorStops:y(w)}})}function o(N,K){var J=ee(N);if(J){ee(r.startCall)||t("Missing (");var be=K(J);return ee(r.endCall)||t("Missing )"),be}}function A(){return l()||u()}function l(){return G("directional",r.sideOrCorner,1)}function u(){return G("angular",r.angleValue,1)}function c(){var N,K=d(),J;return K&&(N=[],N.push(K),J=e,ee(r.comma)&&(K=d(),K?N.push(K):e=J)),N}function d(){var N=h()||f();if(N)N.at=g();else{var K=p();if(K){N=K;var J=g();J&&(N.at=J)}else{var be=v();be&&(N={type:"default-radial",at:be})}}return N}function h(){var N=G("shape",/^(circle)/i,0);return N&&(N.style=P()||p()),N}function f(){var N=G("shape",/^(ellipse)/i,0);return N&&(N.style=I()||p()),N}function p(){return G("extent-keyword",r.extentKeywords,1)}function g(){if(G("position",/^at/,0)){var N=v();return N||t("Missing positioning value"),N}}function v(){var N=m();if(N.x||N.y)return{type:"position",value:N}}function m(){return{x:I(),y:I()}}function y(N){var K=N(),J=[];if(K)for(J.push(K);ee(r.comma);)K=N(),K?J.push(K):t("One extra comma");return J}function w(){var N=B();return N||t("Expected color definition"),N.length=I(),N}function B(){return k()||T()||_()||x()}function x(){return G("literal",r.literalColor,0)}function k(){return G("hex",r.hexColor,1)}function _(){return o(r.rgbColor,function(){return{type:"rgb",value:y(F)}})}function T(){return o(r.rgbaColor,function(){return{type:"rgba",value:y(F)}})}function F(){return ee(r.number)[1]}function I(){return G("%",r.percentageValue,1)||O()||P()}function O(){return G("position-keyword",r.positionKeywords,1)}function P(){return G("px",r.pixelValue,1)||G("em",r.emValue,1)}function G(N,K,J){var be=ee(K);if(be)return{type:N,value:be[J]}}function ee(N){var K=/^[\n\r\t\s]+/.exec(e);K&&te(K[0].length);var J=N.exec(e);return J&&te(J[0].length),J}function te(N){e=e.substring(N)}return function(N){return e=N,n()}})();function QG(r,e,t,n){var i=An(n.value),a=0,s=0,o=a+e/2,A=s+t/2,l=Math.abs(e*Math.cos(i))+Math.abs(t*Math.sin(i)),u=r[0]+o-Math.cos(i)*l/2,c=r[1]+A-Math.sin(i)*l/2,d=r[0]+o+Math.cos(i)*l/2,h=r[1]+A+Math.sin(i)*l/2;return{x1:u,y1:c,x2:d,y2:h}}function DG(r,e,t,n,i,a){var s=n.value,o=i.value;n.unit===We.kPercentage&&(s=n.value/100*e),i.unit===We.kPercentage&&(o=i.value/100*t);var A=Math.max(_i([0,0],[s,o]),_i([0,t],[s,o]),_i([e,t],[s,o]),_i([e,0],[s,o]));return a&&(a instanceof vn?A=a.value:a instanceof fa&&(a.value==="closest-side"?A=Math.min(s,e-s,o,t-o):a.value==="farthest-side"?A=Math.max(s,e-s,o,t-o):a.value==="closest-corner"&&(A=Math.min(_i([0,0],[s,o]),_i([0,t],[s,o]),_i([e,t],[s,o]),_i([e,0],[s,o]))))),{x:s+r[0],y:o+r[1],r:A}}var HG=/^l\s*\(\s*([\d.]+)\s*\)\s*(.*)/i,$G=/^r\s*\(\s*([\d.]+)\s*,\s*([\d.]+)\s*,\s*([\d.]+)\s*\)\s*(.*)/i,GG=/^p\s*\(\s*([axyn])\s*\)\s*(.*)/i,$P=/[\d.]+:(#[^\s]+|[^\)]+\))/gi;function zG(r){var e,t=r.length;if(r[t-1].length=(e=r[t-1].length)!==null&&e!==void 0?e:{type:"%",value:"100"},t>1){var n;r[0].length=(n=r[0].length)!==null&&n!==void 0?n:{type:"%",value:"0"}}for(var i=0,a=Number(r[0].length.value),s=1;s<t;s++){var o,A=(o=r[s].length)===null||o===void 0?void 0:o.value;if(!ut(A)&&!ut(a)){for(var l=1;l<s-i;l++)r[i+l].length={type:"%",value:"".concat(a+(Number(A)-a)*l/(s-i))};i=s,a=Number(A)}}}var VG={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},KG=lr(function(r){var e;return r.type==="angular"?e=Number(r.value):e=VG[r.value]||0,Ln(e,"deg")}),jG=lr(function(r){var e=50,t=50,n="%",i="%";if((r==null?void 0:r.type)==="position"){var a=r.value,s=a.x,o=a.y;(s==null?void 0:s.type)==="position-keyword"&&(s.value==="left"?e=0:s.value==="center"?e=50:s.value==="right"?e=100:s.value==="top"?t=0:s.value==="bottom"&&(t=100)),(o==null?void 0:o.type)==="position-keyword"&&(o.value==="left"?e=0:o.value==="center"?t=50:o.value==="right"?e=100:o.value==="top"?t=0:o.value==="bottom"&&(t=100)),((s==null?void 0:s.type)==="px"||(s==null?void 0:s.type)==="%"||(s==null?void 0:s.type)==="em")&&(n=s==null?void 0:s.type,e=Number(s.value)),((o==null?void 0:o.type)==="px"||(o==null?void 0:o.type)==="%"||(o==null?void 0:o.type)==="em")&&(i=o==null?void 0:o.type,t=Number(o.value))}return{cx:Ln(e,n),cy:Ln(t,i)}}),WG=lr(function(r){if(r.indexOf("linear")>-1||r.indexOf("radial")>-1){var e=RG(r);return e.map(function(o){var A=o.type,l=o.orientation,u=o.colorStops;zG(u);var c=u.map(function(y){return{offset:Ln(Number(y.length.value),"%"),color:UG(y)}});if(A==="linear-gradient")return new td(so.LinearGradient,{angle:l?KG(l):gA,steps:c});if(A==="radial-gradient"&&(l||(l=[{type:"shape",value:"circle"}]),l[0].type==="shape"&&l[0].value==="circle")){var d=jG(l[0].at),h=d.cx,f=d.cy,p;if(l[0].style){var g=l[0].style,v=g.type,m=g.value;v==="extent-keyword"?p=NG(m):p=Ln(m,v)}return new td(so.RadialGradient,{cx:h,cy:f,size:p,steps:c})}})}var t=r[0];if(r[1]==="("||r[2]==="("){if(t==="l"){var n=HG.exec(r);if(n){var i,a=((i=n[2].match($P))===null||i===void 0?void 0:i.map(function(o){return o.split(":")}))||[];return[new td(so.LinearGradient,{angle:Ln(parseFloat(n[1]),"deg"),steps:a.map(function(o){var A=Tt(o,2),l=A[0],u=A[1];return{offset:Ln(Number(l)*100,"%"),color:u}})})]}}else if(t==="r"){var s=qG(r);if(s)if(ln(s))r=s;else return[new td(so.RadialGradient,s)]}else if(t==="p")return YG(r)}});function qG(r){var e=$G.exec(r);if(e){var t,n=((t=e[4].match($P))===null||t===void 0?void 0:t.map(function(i){return i.split(":")}))||[];return{cx:Ln(50,"%"),cy:Ln(50,"%"),steps:n.map(function(i){var a=Tt(i,2),s=a[0],o=a[1];return{offset:Ln(Number(s)*100,"%"),color:o}})}}return null}function YG(r){var e=GG.exec(r);if(e){var t=e[1],n=e[2];switch(t){case"a":t="repeat";break;case"x":t="repeat-x";break;case"y":t="repeat-y";break;case"n":t="no-repeat";break;default:t="no-repeat"}return{image:n,repetition:t}}return null}function pA(r){return r&&!!r.image}function nf(r){return r&&!ut(r.r)&&!ut(r.g)&&!ut(r.b)}var Qu=lr(function(r){if(pA(r))return bt({repetition:"repeat"},r);if(ut(r)&&(r=""),r==="transparent")return HP;if(r==="currentColor")r="black";else if(r==="none")return DP;var e=WG(r);if(e)return e;var t=Kf(r),n=[0,0,0,0];return t!==null&&(n[0]=t.r||0,n[1]=t.g||0,n[2]=t.b||0,n[3]=t.opacity),PG.apply(void 0,n)});function XG(r,e){if(!(!nf(r)||!nf(e)))return[[Number(r.r),Number(r.g),Number(r.b),Number(r.alpha)],[Number(e.r),Number(e.g),Number(e.b),Number(e.alpha)],function(t){var n=t.slice();if(n[3])for(var i=0;i<3;i++)n[i]=Math.round(jn(n[i],0,255));return n[3]=jn(n[3],0,1),"rgba(".concat(n.join(","),")")}]}function Bc(r,e){if(ut(e))return Ln(0,"px");if(e="".concat(e).trim().toLowerCase(),isFinite(Number(e))){if("px".search(r)>=0)return Ln(Number(e),"px");if("deg".search(r)>=0)return Ln(Number(e),"deg")}var t=[];e=e.replace(r,function(i){return t.push(i),"U".concat(i)});var n="U(".concat(r.source,")");return t.map(function(i){return Ln(Number(e.replace(new RegExp("U".concat(i),"g"),"").replace(new RegExp(n,"g"),"*0")),i)})[0]}var GP=function(e){return Bc(new RegExp("px","g"),e)},ZG=lr(GP),JG=function(e){return Bc(new RegExp("%","g"),e)};lr(JG);var zP=function(e){return Yt(e)||isFinite(Number(e))?Ln(Number(e)||0,"px"):Bc(new RegExp("px|%|em|rem","g"),e)},pB=lr(zP),VP=function(e){return Bc(new RegExp("deg|rad|grad|turn","g"),e)},ez=lr(VP);function tz(r,e,t,n){var i=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,a="",s=r.value||0,o=e.value||0,A=gB(r.unit),l=r.convertTo(A),u=e.convertTo(A);return l&&u?(s=l.value,o=u.value,a=fB(r.unit)):(vn.isLength(r.unit)||vn.isLength(e.unit))&&(s=Gi(r,i,t),o=Gi(e,i,t),a="px"),[s,o,function(c){return c+a}]}function Ti(r){var e=0;return r.unit===We.kDegrees?e=r.value:r.unit===We.kRadians?e=ki(Number(r.value)):r.unit===We.kTurns?e=J$(Number(r.value)):r.value&&(e=r.value),e}function D2(r,e){var t;return Array.isArray(r)?t=r.map(function(n){return Number(n)}):ln(r)?t=r.split(" ").map(function(n){return Number(n)}):Yt(r)&&(t=[r]),e===2?t.length===1?[t[0],t[0]]:[t[0],t[1]]:e===4?t.length===1?[t[0],t[0],t[0],t[0]]:t.length===2?[t[0],t[1],t[0],t[1]]:t.length===3?[t[0],t[1],t[2],t[1]]:[t[0],t[1],t[2],t[3]]:e==="even"&&t.length%2===1?[].concat(Qt(t),Qt(t)):t}function Gi(r,e,t){var n=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(r.unit===We.kPixels)return Number(r.value);if(r.unit===We.kPercentage&&t){var i=t.nodeName===Te.GROUP?t.getLocalBounds():t.getGeometryBounds();return(n?i.min[e]:0)+r.value/100*i.halfExtents[e]*2}return 0}var nz=function(e){return Bc(/deg|rad|grad|turn|px|%/g,e)},rz=["blur","brightness","drop-shadow","contrast","grayscale","sepia","saturate","hue-rotate","invert"];function iz(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";if(r=r.toLowerCase().trim(),r==="none")return[];for(var e=/\s*([\w-]+)\(([^)]*)\)/g,t=[],n,i=0;n=e.exec(r);){if(n.index!==i)return[];if(i=n.index+n[0].length,rz.indexOf(n[1])>-1&&t.push({name:n[1],params:n[2].split(" ").map(function(a){return nz(a)||Qu(a)})}),e.lastIndex===r.length)return t}return[]}function KP(r){return r.toString()}var jP=function(e){return typeof e=="number"?Ln(e):/^\s*[-+]?(\d*\.)?\d+\s*$/.test(e)?Ln(Number(e)):Ln(0)},vB=lr(jP);lr(function(r){return ln(r)?r.split(" ").map(vB):r.map(vB)});function VE(r,e){return[r,e,KP]}function KE(r,e){return function(t,n){return[t,n,function(i){return KP(jn(i,r,e))}]}}function WP(r,e){if(r.length===e.length)return[r,e,function(t){return t}]}function mB(r){return r.parsedStyle.d.totalLength===0&&(r.parsedStyle.d.totalLength=y$(r.parsedStyle.d.absolutePath)),r.parsedStyle.d.totalLength}function az(r){return r.parsedStyle.points.totalLength===0&&(r.parsedStyle.points.totalLength=R$(r.parsedStyle.points.points)),r.parsedStyle.points.totalLength}function sz(r){for(var e=0;e<r.length;e++){var t=r[e-1],n=r[e],i=n[0];if(i==="M"&&t){var a=t[0],s=[n[1],n[2]],o=void 0;a==="L"||a==="M"?o=[t[1],t[2]]:(a==="C"||a==="A"||a==="Q")&&(o=[t[t.length-2],t[t.length-1]]),o&&rf(s,o)&&(r.splice(e,1),e--)}}}function oz(r){for(var e=!1,t=r.length,n=0;n<t;n++){var i=r[n],a=i[0];if(a==="C"||a==="A"||a==="Q"){e=!0;break}}return e}function Az(r){for(var e=[],t=[],n=[],i=0;i<r.length;i++){var a=r[i],s=a[0];s==="M"?(n.length&&(t.push(n),n=[]),n.push([a[1],a[2]])):s==="Z"?n.length&&(e.push(n),n=[]):n.push([a[1],a[2]])}return n.length>0&&t.push(n),{polygons:e,polylines:t}}function rf(r,e){return r[0]===e[0]&&r[1]===e[1]}function lz(r,e){for(var t=[],n=[],i=[],a=0;a<r.length;a++){var s=r[a],o=s.currentPoint,A=s.params,l=s.prePoint,u=void 0;switch(s.command){case"Q":u=Q$(l[0],l[1],A[1],A[2],A[3],A[4]);break;case"C":u=N$(l[0],l[1],A[1],A[2],A[3],A[4],A[5],A[6]);break;case"A":var c=s.arcParams;u=I$(c.cx,c.cy,c.rx,c.ry,c.xRotation,c.startAngle,c.endAngle);break;default:t.push(o[0]),n.push(o[1]);break}u&&(s.box=u,t.push(u.x,u.x+u.width),n.push(u.y,u.y+u.height))}t=t.filter(function(w){return!Number.isNaN(w)&&w!==1/0&&w!==-1/0}),n=n.filter(function(w){return!Number.isNaN(w)&&w!==1/0&&w!==-1/0});var d=jh(t),h=jh(n),f=Kh(t),p=Kh(n);if(i.length===0)return{x:d,y:h,width:f-d,height:p-h};for(var g=0;g<i.length;g++){var v=i[g],m=v.currentPoint,y=void 0;m[0]===d?(y=nd(v,e),d-=y.xExtra):m[0]===f&&(y=nd(v,e),f+=y.xExtra),m[1]===h?(y=nd(v,e),h-=y.yExtra):m[1]===p&&(y=nd(v,e),p+=y.yExtra)}return{x:d,y:h,width:f-d,height:p-h}}function nd(r,e){var t=r.prePoint,n=r.currentPoint,i=r.nextPoint,a=Math.pow(n[0]-t[0],2)+Math.pow(n[1]-t[1],2),s=Math.pow(n[0]-i[0],2)+Math.pow(n[1]-i[1],2),o=Math.pow(t[0]-i[0],2)+Math.pow(t[1]-i[1],2),A=Math.acos((a+s-o)/(2*Math.sqrt(a)*Math.sqrt(s)));if(!A||Math.sin(A)===0||dl(A,0))return{xExtra:0,yExtra:0};var l=Math.abs(Math.atan2(i[1]-n[1],i[0]-n[0])),u=Math.abs(Math.atan2(i[0]-n[0],i[1]-n[1]));l=l>Math.PI/2?Math.PI-l:l,u=u>Math.PI/2?Math.PI-u:u;var c={xExtra:Math.cos(A/2-l)*(e/2*(1/Math.sin(A/2)))-e/2||0,yExtra:Math.cos(u-A/2)*(e/2*(1/Math.sin(A/2)))-e/2||0};return c}function H2(r,e){return[e[0]+(e[0]-r[0]),e[1]+(e[1]-r[1])]}var $2=function(e,t){var n=e.x*t.x+e.y*t.y,i=Math.sqrt((Math.pow(e.x,2)+Math.pow(e.y,2))*(Math.pow(t.x,2)+Math.pow(t.y,2))),a=e.x*t.y-e.y*t.x<0?-1:1,s=a*Math.acos(n/i);return s},G2=function(e,t,n,i,a,s,o,A){t=Math.abs(t),n=Math.abs(n),i=mP(i,360);var l=An(i);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 u=(e.x-o.x)/2,c=(e.y-o.y)/2,d={x:Math.cos(l)*u+Math.sin(l)*c,y:-Math.sin(l)*u+Math.cos(l)*c},h=Math.pow(d.x,2)/Math.pow(t,2)+Math.pow(d.y,2)/Math.pow(n,2);h>1&&(t*=Math.sqrt(h),n*=Math.sqrt(h));var f=Math.pow(t,2)*Math.pow(n,2)-Math.pow(t,2)*Math.pow(d.y,2)-Math.pow(n,2)*Math.pow(d.x,2),p=Math.pow(t,2)*Math.pow(d.y,2)+Math.pow(n,2)*Math.pow(d.x,2),g=f/p;g=g<0?0:g;var v=(a!==s?1:-1)*Math.sqrt(g),m={x:v*(t*d.y/n),y:v*(-(n*d.x)/t)},y={x:Math.cos(l)*m.x-Math.sin(l)*m.y+(e.x+o.x)/2,y:Math.sin(l)*m.x+Math.cos(l)*m.y+(e.y+o.y)/2},w={x:(d.x-m.x)/t,y:(d.y-m.y)/n},B=$2({x:1,y:0},w),x={x:(-d.x-m.x)/t,y:(-d.y-m.y)/n},k=$2(w,x);!s&&k>0?k-=2*Math.PI:s&&k<0&&(k+=2*Math.PI),k%=2*Math.PI;var _=B+k*A,T=t*Math.cos(_),F=n*Math.sin(_),I={x:Math.cos(l)*T-Math.sin(l)*F+y.x,y:Math.sin(l)*T+Math.cos(l)*F+y.y,ellipticalArcStartAngle:B,ellipticalArcEndAngle:B+k,ellipticalArcAngle:_,ellipticalArcCenter:y,resultantRx:t,resultantRy:n};return I};function uz(r){for(var e=[],t=null,n=null,i=null,a=0,s=r.length,o=0;o<s;o++){var A=r[o];n=r[o+1];var l=A[0],u={command:l,prePoint:t,params:A,startTangent:null,endTangent:null,currentPoint:null,nextPoint:null,arcParams:null,box:null,cubicParams:null};switch(l){case"M":i=[A[1],A[2]],a=o;break;case"A":var c=cz(t,A);u.arcParams=c;break}if(l==="Z")t=i,n=r[a+1];else{var d=A.length;t=[A[d-2],A[d-1]]}n&&n[0]==="Z"&&(n=r[a],e[a]&&(e[a].prePoint=t)),u.currentPoint=t,e[a]&&rf(t,e[a].currentPoint)&&(e[a].prePoint=u.prePoint);var h=n?[n[n.length-2],n[n.length-1]]:null;u.nextPoint=h;var f=u.prePoint;if(["L","H","V"].includes(l))u.startTangent=[f[0]-t[0],f[1]-t[1]],u.endTangent=[t[0]-f[0],t[1]-f[1]];else if(l==="Q"){var p=[A[1],A[2]];u.startTangent=[f[0]-p[0],f[1]-p[1]],u.endTangent=[t[0]-p[0],t[1]-p[1]]}else if(l==="T"){var g=e[o-1],v=H2(g.currentPoint,f);g.command==="Q"?(u.command="Q",u.startTangent=[f[0]-v[0],f[1]-v[1]],u.endTangent=[t[0]-v[0],t[1]-v[1]]):(u.command="TL",u.startTangent=[f[0]-t[0],f[1]-t[1]],u.endTangent=[t[0]-f[0],t[1]-f[1]])}else if(l==="C"){var m=[A[1],A[2]],y=[A[3],A[4]];u.startTangent=[f[0]-m[0],f[1]-m[1]],u.endTangent=[t[0]-y[0],t[1]-y[1]],u.startTangent[0]===0&&u.startTangent[1]===0&&(u.startTangent=[m[0]-y[0],m[1]-y[1]]),u.endTangent[0]===0&&u.endTangent[1]===0&&(u.endTangent=[y[0]-m[0],y[1]-m[1]])}else if(l==="S"){var w=e[o-1],B=H2(w.currentPoint,f),x=[A[1],A[2]];w.command==="C"?(u.command="C",u.startTangent=[f[0]-B[0],f[1]-B[1]],u.endTangent=[t[0]-x[0],t[1]-x[1]]):(u.command="SQ",u.startTangent=[f[0]-x[0],f[1]-x[1]],u.endTangent=[t[0]-x[0],t[1]-x[1]])}else if(l==="A"){var k=z2(u,0),_=k.x,T=k.y,F=z2(u,1,!1),I=F.x,O=F.y;u.startTangent=[_,T],u.endTangent=[I,O]}e.push(u)}return e}function z2(r,e){var t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,n=r.arcParams,i=n.rx,a=i===void 0?0:i,s=n.ry,o=s===void 0?0:s,A=n.xRotation,l=n.arcFlag,u=n.sweepFlag,c=G2({x:r.prePoint[0],y:r.prePoint[1]},a,o,A,!!l,!!u,{x:r.currentPoint[0],y:r.currentPoint[1]},e),d=G2({x:r.prePoint[0],y:r.prePoint[1]},a,o,A,!!l,!!u,{x:r.currentPoint[0],y:r.currentPoint[1]},t?e+.005:e-.005),h=d.x-c.x,f=d.y-c.y,p=Math.sqrt(h*h+f*f);return{x:-h/p,y:-f/p}}function rd(r){return Math.sqrt(r[0]*r[0]+r[1]*r[1])}function yB(r,e){return rd(r)*rd(e)?(r[0]*e[0]+r[1]*e[1])/(rd(r)*rd(e)):1}function V2(r,e){return(r[0]*e[1]<r[1]*e[0]?-1:1)*Math.acos(yB(r,e))}function cz(r,e){var t=e[1],n=e[2],i=mP(An(e[3]),Math.PI*2),a=e[4],s=e[5],o=r[0],A=r[1],l=e[6],u=e[7],c=Math.cos(i)*(o-l)/2+Math.sin(i)*(A-u)/2,d=-1*Math.sin(i)*(o-l)/2+Math.cos(i)*(A-u)/2,h=c*c/(t*t)+d*d/(n*n);h>1&&(t*=Math.sqrt(h),n*=Math.sqrt(h));var f=t*t*(d*d)+n*n*(c*c),p=f?Math.sqrt((t*t*(n*n)-f)/f):1;a===s&&(p*=-1),isNaN(p)&&(p=0);var g=n?p*t*d/n:0,v=t?p*-n*c/t:0,m=(o+l)/2+Math.cos(i)*g-Math.sin(i)*v,y=(A+u)/2+Math.sin(i)*g+Math.cos(i)*v,w=[(c-g)/t,(d-v)/n],B=[(-1*c-g)/t,(-1*d-v)/n],x=V2([1,0],w),k=V2(w,B);return yB(w,B)<=-1&&(k=Math.PI),yB(w,B)>=1&&(k=0),s===0&&k>0&&(k-=2*Math.PI),s===1&&k<0&&(k+=2*Math.PI),{cx:m,cy:y,rx:rf(r,[l,u])?0:t,ry:rf(r,[l,u])?0:n,startAngle:x,endAngle:x+k,xRotation:i,arcFlag:a,sweepFlag:s}}var qP=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=qh(e)}catch{t=qh(""),console.error("[g]: Invalid SVG Path definition: ".concat(e))}sz(t);var n=oz(t),i=Az(t),a=i.polygons,s=i.polylines,o=uz(t),A=lz(o,0),l=A.x,u=A.y,c=A.width,d=A.height;return{absolutePath:t,hasArc:n,segments:o,polygons:a,polylines:s,totalLength:0,rect:{x:Number.isFinite(l)?l:0,y:Number.isFinite(u)?u:0,width:Number.isFinite(c)?c:0,height:Number.isFinite(d)?d:0}}},dz=lr(qP);function YP(r){return ln(r)?dz(r):qP(r)}function hz(r,e,t){var n=r.curve,i=e.curve;(!n||n.length===0)&&(n=oB(r.absolutePath,!1),r.curve=n),(!i||i.length===0)&&(i=oB(e.absolutePath,!1),e.curve=i);var a=[n,i];n.length!==i.length&&(a=kP(n,i));var s=m2(a[0])!==m2(a[1])?h$(a[0]):d$(a[0]);return[s,b$(a[1],s),function(o){return o}]}function fz(r,e){var t;return ln(r)?t=r.split(" ").map(function(n){var i=n.split(","),a=Tt(i,2),s=a[0],o=a[1];return[Number(s),Number(o)]}):t=r,{points:t,totalLength:0,segments:[]}}function gz(r,e){return[r.points,e.points,function(t){return t}]}var Gn=null,gl=/\s*(\w+)\(([^)]*)\)/g;function xi(r){return function(e){var t=0;return r.map(function(n){return n===Gn?e[t++]:n})}}function Uo(r){return r}var Ju={matrix:["NNNNNN",[Gn,Gn,0,0,Gn,Gn,0,0,0,0,1,0,Gn,Gn,0,1],Uo],matrix3d:["NNNNNNNNNNNNNNNN",Uo],rotate:["A"],rotateX:["A"],rotateY:["A"],rotateZ:["A"],rotate3d:["NNNA"],perspective:["L"],scale:["Nn",xi([Gn,Gn,new vn(1)]),Uo],scaleX:["N",xi([Gn,new vn(1),new vn(1)]),xi([Gn,new vn(1)])],scaleY:["N",xi([new vn(1),Gn,new vn(1)]),xi([new vn(1),Gn])],scaleZ:["N",xi([new vn(1),new vn(1),Gn])],scale3d:["NNN",Uo],skew:["Aa",null,Uo],skewX:["A",null,xi([Gn,gA])],skewY:["A",null,xi([gA,Gn])],translate:["Tt",xi([Gn,Gn,Ea]),Uo],translateX:["T",xi([Gn,Ea,Ea]),xi([Gn,Ea])],translateY:["T",xi([Ea,Gn,Ea]),xi([Ea,Gn])],translateZ:["L",xi([Ea,Ea,Gn])],translate3d:["TTL",Uo]};function XP(r){for(var e=[],t=r.length,n=0;n<t;n++){var i=r[n],a=i[0],s=i.slice(1);a==="translate"||a==="skew"?s.length===1&&s.push(0):a==="scale"&&s.length===1&&s.push(s[0]);var o=Ju[a];if(!o)return[];var A=s.map(function(l){return Ln(l)});e.push({t:a,d:A})}return e}function ZP(r){if(Array.isArray(r))return XP(r);if(r=(r||"none").trim(),r==="none")return[];var e=[],t,n=0;for(gl.lastIndex=0;t=gl.exec(r);){if(t.index!==n)return[];n=t.index+t[0].length;var i=t[1],a=Ju[i];if(!a)return[];var s=t[2].split(","),o=a[0];if(o.length<s.length)return[];for(var A=[],l=0;l<o.length;l++){var u=s[l],c=o[l],d=void 0;if(u?d={A:function(f){return f.trim()==="0"?gA:ez(f)},N:vB,T:pB,L:ZG}[c.toUpperCase()](u):d={a:gA,n:A[0],t:Ea}[c],d===void 0)return[];A.push(d)}if(e.push({t:i,d:A}),gl.lastIndex===r.length)return e}return[]}function pz(r){if(Array.isArray(r))return XP(r);if(r=(r||"none").trim(),r==="none")return[];var e=[],t,n=0;for(gl.lastIndex=0;t=gl.exec(r);){if(t.index!==n)return[];n=t.index+t[0].length;var i=t[1],a=Ju[i];if(!a)return[];var s=t[2].split(","),o=a[0];if(o.length<s.length)return[];for(var A=[],l=0;l<o.length;l++){var u=s[l],c=o[l],d=void 0;if(u?d={A:function(f){return f.trim()==="0"?gA:VP(f)},N:jP,T:zP,L:GP}[c.toUpperCase()](u):d={a:gA,n:A[0],t:Ea}[c],d===void 0)return[];A.push(d)}if(e.push({t:i,d:A}),gl.lastIndex===r.length)return e}return[]}function vz(r){var e,t,n,i;switch(r.t){case"rotateX":return i=An(Ti(r.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=An(Ti(r.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=An(Ti(r.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":e=r.d[0].value,t=r.d[1].value,n=r.d[2].value,i=An(Ti(r.d[3]));var a=e*e+t*t+n*n;if(a===0)e=1,t=0,n=0;else if(a!==1){var s=Math.sqrt(a);e/=s,t/=s,n/=s}var o=Math.sin(i/2),A=o*Math.cos(i/2),l=o*o;return[1-2*(t*t+n*n)*l,2*(e*t*l+n*A),2*(e*n*l-t*A),0,2*(e*t*l-n*A),1-2*(e*e+n*n)*l,2*(t*n*l+e*A),0,2*(e*n*l+t*A),2*(t*n*l-e*A),1-2*(e*e+t*t)*l,0,0,0,0,1];case"scale":return[r.d[0].value,0,0,0,0,r.d[1].value,0,0,0,0,1,0,0,0,0,1];case"scaleX":return[r.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,r.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,r.d[0].value,0,0,0,0,1];case"scale3d":return[r.d[0].value,0,0,0,0,r.d[1].value,0,0,0,0,r.d[2].value,0,0,0,0,1];case"skew":var u=An(Ti(r.d[0])),c=An(Ti(r.d[1]));return[1,Math.tan(c),0,0,Math.tan(u),1,0,0,0,0,1,0,0,0,0,1];case"skewX":return i=An(Ti(r.d[0])),[1,0,0,0,Math.tan(i),1,0,0,0,0,1,0,0,0,0,1];case"skewY":return i=An(Ti(r.d[0])),[1,Math.tan(i),0,0,0,1,0,0,0,0,1,0,0,0,0,1];case"translate":return e=Gi(r.d[0],0,null)||0,t=Gi(r.d[1],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,e,t,0,1];case"translateX":return e=Gi(r.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,e,0,0,1];case"translateY":return t=Gi(r.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,0,t,0,1];case"translateZ":return n=Gi(r.d[0],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,0,0,n,1];case"translate3d":return e=Gi(r.d[0],0,null)||0,t=Gi(r.d[1],0,null)||0,n=Gi(r.d[2],0,null)||0,[1,0,0,0,0,1,0,0,0,0,1,0,e,t,n,1];case"perspective":var d=Gi(r.d[0],0,null)||0,h=d?-1/d:0;return[1,0,0,0,0,1,0,0,0,0,1,h,0,0,0,1];case"matrix":return[r.d[0].value,r.d[1].value,0,0,r.d[2].value,r.d[3].value,0,0,0,0,1,0,r.d[4].value,r.d[5].value,0,1];case"matrix3d":return r.d.map(function(f){return f.value})}}function mz(r,e){return[r[0]*e[0]+r[4]*e[1]+r[8]*e[2]+r[12]*e[3],r[1]*e[0]+r[5]*e[1]+r[9]*e[2]+r[13]*e[3],r[2]*e[0]+r[6]*e[1]+r[10]*e[2]+r[14]*e[3],r[3]*e[0]+r[7]*e[1]+r[11]*e[2]+r[15]*e[3],r[0]*e[4]+r[4]*e[5]+r[8]*e[6]+r[12]*e[7],r[1]*e[4]+r[5]*e[5]+r[9]*e[6]+r[13]*e[7],r[2]*e[4]+r[6]*e[5]+r[10]*e[6]+r[14]*e[7],r[3]*e[4]+r[7]*e[5]+r[11]*e[6]+r[15]*e[7],r[0]*e[8]+r[4]*e[9]+r[8]*e[10]+r[12]*e[11],r[1]*e[8]+r[5]*e[9]+r[9]*e[10]+r[13]*e[11],r[2]*e[8]+r[6]*e[9]+r[10]*e[10]+r[14]*e[11],r[3]*e[8]+r[7]*e[9]+r[11]*e[10]+r[15]*e[11],r[0]*e[12]+r[4]*e[13]+r[8]*e[14]+r[12]*e[15],r[1]*e[12]+r[5]*e[13]+r[9]*e[14]+r[13]*e[15],r[2]*e[12]+r[6]*e[13]+r[10]*e[14]+r[14]*e[15],r[3]*e[12]+r[7]*e[13]+r[11]*e[14]+r[15]*e[15]]}function yz(r){return r.length===0?[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]:r.map(vz).reduce(mz)}function K2(r){var e=[0,0,0],t=[1,1,1],n=[0,0,0],i=[0,0,0,1],a=[0,0,0,1];return iG(yz(r),e,t,n,i,a),[[e,t,n,a,i]]}var wz=(function(){function r(n,i){for(var a=[[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]],s=0;s<4;s++)for(var o=0;o<4;o++)for(var A=0;A<4;A++)a[s][o]+=i[s][A]*n[A][o];return a}function e(n){return n[0][2]===0&&n[0][3]===0&&n[1][2]===0&&n[1][3]===0&&n[2][0]===0&&n[2][1]===0&&n[2][2]===1&&n[2][3]===0&&n[3][2]===0&&n[3][3]===1}function t(n,i,a,s,o){for(var A=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]],l=0;l<4;l++)A[l][3]=o[l];for(var u=0;u<3;u++)for(var c=0;c<3;c++)A[3][u]+=n[c]*A[c][u];var d=s[0],h=s[1],f=s[2],p=s[3],g=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]];g[0][0]=1-2*(h*h+f*f),g[0][1]=2*(d*h-f*p),g[0][2]=2*(d*f+h*p),g[1][0]=2*(d*h+f*p),g[1][1]=1-2*(d*d+f*f),g[1][2]=2*(h*f-d*p),g[2][0]=2*(d*f-h*p),g[2][1]=2*(h*f+d*p),g[2][2]=1-2*(d*d+h*h),A=r(A,g);var v=[[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]];a[2]&&(v[2][1]=a[2],A=r(A,v)),a[1]&&(v[2][1]=0,v[2][0]=a[0],A=r(A,v)),a[0]&&(v[2][0]=0,v[1][0]=a[0],A=r(A,v));for(var m=0;m<3;m++)for(var y=0;y<3;y++)A[m][y]*=i[m];return e(A)?[A[0][0],A[0][1],A[1][0],A[1][1],A[3][0],A[3][1]]:A[0].concat(A[1],A[2],A[3])}return t})();function bz(r){return r.toFixed(6).replace(".000000","")}function uv(r,e){var t,n;return r.decompositionPair!==e&&(r.decompositionPair=e,t=K2(r)),e.decompositionPair!==r&&(e.decompositionPair=r,n=K2(e)),t[0]===null||n[0]===null?[[!1],[!0],function(i){return i?e[0].d:r[0].d}]:(t[0].push(0),n[0].push(1),[t,n,function(i){var a=Ez(t[0][3],n[0][3],i[5]),s=wz(i[0],i[1],i[2],a,i[4]),o=s.map(bz).join(",");return o}])}function Bz(r,e){for(var t=0,n=0;n<r.length;n++)t+=r[n]*e[n];return t}function Ez(r,e,t){var n=Bz(r,e);n=jn(n,-1,1);var i=[];if(n===1)i=r;else for(var a=Math.acos(n),s=Math.sin(t*a)*1/Math.sqrt(1-n*n),o=0;o<4;o++)i.push(r[o]*(Math.cos(t*a)-n*s)+e[o]*s);return i}function cv(r){return r.replace(/[XY]/,"")}function dv(r){return r.replace(/(X|Y|Z|3d)?$/,"3d")}var xz=function(e,t){return e==="perspective"&&t==="perspective"||(e==="matrix"||e==="matrix3d")&&(t==="matrix"||t==="matrix3d")};function Cz(r,e,t){var n=!1;if(!r.length||!e.length){r.length||(n=!0,r=e,e=[]);for(var i=function(){var I=r[a],O=I.t,P=I.d,G=O.substring(0,5)==="scale"?1:0;e.push({t:O,d:P.map(function(ee){return typeof ee=="number"?Ln(G):Ln(G,ee.unit)})})},a=0;a<r.length;a++)i()}var s=[],o=[],A=[];if(r.length!==e.length){var l=uv(r,e);s=[l[0]],o=[l[1]],A=[["matrix",[l[2]]]]}else for(var u=0;u<r.length;u++){var c=r[u].t,d=e[u].t,h=r[u].d,f=e[u].d,p=Ju[c],g=Ju[d],v=void 0;if(xz(c,d)){var m=uv([r[u]],[e[u]]);s.push(m[0]),o.push(m[1]),A.push(["matrix",[m[2]]]);continue}else if(c===d)v=c;else if(p[2]&&g[2]&&cv(c)===cv(d))v=cv(c),h=p[2](h),f=g[2](f);else if(p[1]&&g[1]&&dv(c)===dv(d))v=dv(c),h=p[1](h),f=g[1](f);else{var y=uv(r,e);s=[y[0]],o=[y[1]],A=[["matrix",[y[2]]]];break}for(var w=[],B=[],x=[],k=0;k<h.length;k++){var _=tz(h[k],f[k],t,!1,k);w[k]=_[0],B[k]=_[1],x.push(_[2])}s.push(w),o.push(B),A.push([v,x])}if(n){var T=s;s=o,o=T}return[s,o,function(F){return F.map(function(I,O){var P=I.map(function(G,ee){return A[O][1][ee](G)}).join(",");return A[O][0]==="matrix"&&P.split(",").length===16&&(A[O][0]="matrix3d"),A[O][0]==="matrix3d"&&P.split(",").length===6&&(A[O][0]="matrix"),"".concat(A[O][0],"(").concat(P,")")}).join(" ")}]}var Sz=lr(function(r){if(ln(r)){if(r==="text-anchor")return[Ln(0,"px"),Ln(0,"px")];var e=r.split(" ");return e.length===1&&(e[0]==="top"||e[0]==="bottom"?(e[1]=e[0],e[0]="center"):e[1]="center"),e.length!==2?null:[pB(j2(e[0])),pB(j2(e[1]))]}return[Ln(r[0]||0,"px"),Ln(r[1]||0,"px")]});function j2(r){return r==="center"?"50%":r==="left"||r==="top"?"0%":r==="right"||r==="bottom"?"100%":r}var jE=[{n:"display",k:["none"]},{n:"opacity",int:!0,inh:!0,d:"1",syntax:Ke.OPACITY_VALUE},{n:"fillOpacity",int:!0,inh:!0,d:"1",syntax:Ke.OPACITY_VALUE},{n:"strokeOpacity",int:!0,inh:!0,d:"1",syntax:Ke.OPACITY_VALUE},{n:"fill",int:!0,k:["none"],d:"none",syntax:Ke.PAINT},{n:"fillRule",k:["nonzero","evenodd"],d:"nonzero"},{n:"stroke",int:!0,k:["none"],d:"none",syntax:Ke.PAINT,l:!0},{n:"shadowType",k:["inner","outer","both"],d:"outer",l:!0},{n:"shadowColor",int:!0,syntax:Ke.COLOR},{n:"shadowOffsetX",int:!0,l:!0,d:"0",syntax:Ke.LENGTH_PERCENTAGE},{n:"shadowOffsetY",int:!0,l:!0,d:"0",syntax:Ke.LENGTH_PERCENTAGE},{n:"shadowBlur",int:!0,l:!0,d:"0",syntax:Ke.SHADOW_BLUR},{n:"lineWidth",int:!0,inh:!0,d:"1",l:!0,a:["strokeWidth"],syntax:Ke.LENGTH_PERCENTAGE},{n:"increasedLineWidthForHitTesting",inh:!0,d:"0",l:!0,syntax:Ke.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:Ke.LENGTH_PERCENTAGE_12},{n:"lineDashOffset",int:!0,inh:!0,d:"0",a:["strokeDashoffset"],syntax:Ke.LENGTH_PERCENTAGE},{n:"offsetPath",syntax:Ke.DEFINED_PATH},{n:"offsetDistance",int:!0,syntax:Ke.OFFSET_DISTANCE},{n:"dx",int:!0,l:!0,d:"0",syntax:Ke.LENGTH_PERCENTAGE},{n:"dy",int:!0,l:!0,d:"0",syntax:Ke.LENGTH_PERCENTAGE},{n:"zIndex",ind:!0,int:!0,d:"0",k:["auto"],syntax:Ke.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:Ke.FILTER},{n:"clipPath",syntax:Ke.DEFINED_PATH},{n:"textPath",syntax:Ke.DEFINED_PATH},{n:"textPathSide",k:["left","right"],d:"left"},{n:"textPathStartOffset",l:!0,d:"0",syntax:Ke.LENGTH_PERCENTAGE},{n:"transform",p:100,int:!0,k:["none"],d:"none",syntax:Ke.TRANSFORM},{n:"transformOrigin",p:100,d:"0 0",l:!0,syntax:Ke.TRANSFORM_ORIGIN},{n:"cx",int:!0,l:!0,d:"0",syntax:Ke.COORDINATE},{n:"cy",int:!0,l:!0,d:"0",syntax:Ke.COORDINATE},{n:"cz",int:!0,l:!0,d:"0",syntax:Ke.COORDINATE},{n:"r",int:!0,l:!0,d:"0",syntax:Ke.LENGTH_PERCENTAGE},{n:"rx",int:!0,l:!0,d:"0",syntax:Ke.LENGTH_PERCENTAGE},{n:"ry",int:!0,l:!0,d:"0",syntax:Ke.LENGTH_PERCENTAGE},{n:"x",int:!0,l:!0,d:"0",syntax:Ke.COORDINATE},{n:"y",int:!0,l:!0,d:"0",syntax:Ke.COORDINATE},{n:"z",int:!0,l:!0,d:"0",syntax:Ke.COORDINATE},{n:"width",int:!0,l:!0,k:["auto","fit-content","min-content","max-content"],d:"0",syntax:Ke.LENGTH_PERCENTAGE},{n:"height",int:!0,l:!0,k:["auto","fit-content","min-content","max-content"],d:"0",syntax:Ke.LENGTH_PERCENTAGE},{n:"radius",int:!0,l:!0,d:"0",syntax:Ke.LENGTH_PERCENTAGE_14},{n:"x1",int:!0,l:!0,syntax:Ke.COORDINATE},{n:"y1",int:!0,l:!0,syntax:Ke.COORDINATE},{n:"z1",int:!0,l:!0,syntax:Ke.COORDINATE},{n:"x2",int:!0,l:!0,syntax:Ke.COORDINATE},{n:"y2",int:!0,l:!0,syntax:Ke.COORDINATE},{n:"z2",int:!0,l:!0,syntax:Ke.COORDINATE},{n:"d",int:!0,l:!0,d:"",syntax:Ke.PATH,p:50},{n:"points",int:!0,l:!0,syntax:Ke.LIST_OF_POINTS,p:50},{n:"text",l:!0,d:"",syntax:Ke.TEXT,p:50},{n:"textTransform",l:!0,inh:!0,k:["capitalize","uppercase","lowercase","none"],d:"none",syntax:Ke.TEXT_TRANSFORM,p:51},{n:"font",l:!0},{n:"fontSize",int:!0,inh:!0,d:"16px",l:!0,syntax:Ke.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:Ke.LENGTH,int:!0,d:"0"},{n:"letterSpacing",l:!0,syntax:Ke.LENGTH,int:!0,d:"0"},{n:"miterLimit",l:!0,syntax:Ke.NUMBER,d:function(e){return e===Te.PATH||e===Te.POLYGON||e===Te.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:Ke.MARKER},{n:"markerEnd",syntax:Ke.MARKER},{n:"markerMid",syntax:Ke.MARKER},{n:"markerStartOffset",syntax:Ke.LENGTH,l:!0,int:!0,d:"0"},{n:"markerEndOffset",syntax:Ke.LENGTH,l:!0,int:!0,d:"0"}],_z=new Set(jE.filter(function(r){return!!r.l}).map(function(r){return r.n})),JP={},kz=(function(){function r(e){var t=this;Ne(this,r),this.runtime=e,jE.forEach(function(n){t.registerMetadata(n)})}return Pe(r,[{key:"registerMetadata",value:function(t){[t.n].concat(Qt(t.a||[])).forEach(function(n){JP[n]=t})}},{key:"getPropertySyntax",value:function(t){return this.runtime.CSSPropertySyntaxFactory[t]}},{key:"processProperties",value:function(t,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{forceUpdateGeometry:!1};Object.assign(t.attributes,n);var a=t.parsedStyle.clipPath,s=t.parsedStyle.offsetPath;Tz(t,n);var o=!!i.forceUpdateGeometry;if(!o){for(var A in n)if(_z.has(A)){o=!0;break}}var l=eU(t);l.has("fill")&&n.fill&&(t.parsedStyle.fill=Qu(n.fill)),l.has("stroke")&&n.stroke&&(t.parsedStyle.stroke=Qu(n.stroke)),l.has("shadowColor")&&n.shadowColor&&(t.parsedStyle.shadowColor=Qu(n.shadowColor)),l.has("filter")&&n.filter&&(t.parsedStyle.filter=iz(n.filter)),l.has("radius")&&!ut(n.radius)&&(t.parsedStyle.radius=D2(n.radius,4)),l.has("lineDash")&&!ut(n.lineDash)&&(t.parsedStyle.lineDash=D2(n.lineDash,"even")),l.has("points")&&n.points&&(t.parsedStyle.points=fz(n.points)),l.has("d")&&n.d===""&&(t.parsedStyle.d=bt({},UP)),l.has("d")&&n.d&&(t.parsedStyle.d=YP(n.d)),l.has("textTransform")&&n.textTransform&&this.runtime.CSSPropertySyntaxFactory[Ke.TEXT_TRANSFORM].calculator(null,null,{value:n.textTransform},t,null),l.has("clipPath")&&!Bt(n.clipPath)&&this.runtime.CSSPropertySyntaxFactory[Ke.DEFINED_PATH].calculator("clipPath",a,n.clipPath,t,this.runtime),l.has("offsetPath")&&n.offsetPath&&this.runtime.CSSPropertySyntaxFactory[Ke.DEFINED_PATH].calculator("offsetPath",s,n.offsetPath,t,this.runtime),l.has("transform")&&n.transform&&(t.parsedStyle.transform=ZP(n.transform)),l.has("transformOrigin")&&n.transformOrigin&&(t.parsedStyle.transformOrigin=Sz(n.transformOrigin)),l.has("markerStart")&&n.markerStart&&(t.parsedStyle.markerStart=this.runtime.CSSPropertySyntaxFactory[Ke.MARKER].calculator(null,n.markerStart,n.markerStart,null,null)),l.has("markerEnd")&&n.markerEnd&&(t.parsedStyle.markerEnd=this.runtime.CSSPropertySyntaxFactory[Ke.MARKER].calculator(null,n.markerEnd,n.markerEnd,null,null)),l.has("markerMid")&&n.markerMid&&(t.parsedStyle.markerMid=this.runtime.CSSPropertySyntaxFactory[Ke.MARKER].calculator("",n.markerMid,n.markerMid,null,null)),l.has("zIndex")&&!ut(n.zIndex)&&this.runtime.CSSPropertySyntaxFactory[Ke.Z_INDEX].postProcessor(t),l.has("offsetDistance")&&!ut(n.offsetDistance)&&this.runtime.CSSPropertySyntaxFactory[Ke.OFFSET_DISTANCE].postProcessor(t),l.has("transform")&&n.transform&&this.runtime.CSSPropertySyntaxFactory[Ke.TRANSFORM].postProcessor(t),l.has("transformOrigin")&&n.transformOrigin&&this.runtime.CSSPropertySyntaxFactory[Ke.TRANSFORM_ORIGIN].postProcessor(t),o&&(t.dirty(!0,!0),i.forceUpdateGeometry||this.runtime.sceneGraphService.dirtyToRoot(t))}},{key:"updateGeometry",value:function(t){var n=t.nodeName,i=this.runtime.geometryUpdaterFactory[n];if(i){var a=t.geometry;a.contentBounds||(a.contentBounds=new kn),a.renderBounds||(a.renderBounds=new kn);var s=t.parsedStyle,o=i.update(s,t),A=o.cx,l=A===void 0?0:A,u=o.cy,c=u===void 0?0:u,d=o.cz,h=d===void 0?0:d,f=o.hwidth,p=f===void 0?0:f,g=o.hheight,v=g===void 0?0:g,m=o.hdepth,y=m===void 0?0:m,w=[Math.abs(p),Math.abs(v),y],B=s.stroke,x=s.lineWidth,k=x===void 0?1:x,_=s.increasedLineWidthForHitTesting,T=_===void 0?0:_,F=s.shadowType,I=F===void 0?"outer":F,O=s.shadowColor,P=s.filter,G=P===void 0?[]:P,ee=s.transformOrigin,te=[l,c,h];a.contentBounds.update(te,w);var N=n===Te.POLYLINE||n===Te.POLYGON||n===Te.PATH?Math.SQRT2:.5,K=B&&!B.isNone;if(K){var J=((k||0)+(T||0))*N;w[0]+=J,w[1]+=J}if(a.renderBounds.update(te,w),O&&I&&I!=="inner"){var be=a.renderBounds,re=be.min,ne=be.max,ue=s.shadowBlur,Y=s.shadowOffsetX,U=s.shadowOffsetY,W=ue||0,ie=Y||0,Ee=U||0,de=re[0]-W+ie,X=ne[0]+W+ie,xe=re[1]-W+Ee,ce=ne[1]+W+Ee;re[0]=Math.min(re[0],de),ne[0]=Math.max(ne[0],X),re[1]=Math.min(re[1],xe),ne[1]=Math.max(ne[1],ce),a.renderBounds.setMinMax(re,ne)}G.forEach(function(dt){var Nn=dt.name,Dt=dt.params;if(Nn==="blur"){var ui=Dt[0].value;a.renderBounds.update(a.renderBounds.center,mo(a.renderBounds.halfExtents,a.renderBounds.halfExtents,[ui,ui,0]))}else if(Nn==="drop-shadow"){var Hn=Dt[0].value,an=Dt[1].value,Jt=Dt[2].value,ye=a.renderBounds,me=ye.min,pt=ye.max,at=me[0]-Jt+Hn,tn=pt[0]+Jt+Hn,Nt=me[1]-Jt+an,Kt=pt[1]+Jt+an;me[0]=Math.min(me[0],at),pt[0]=Math.max(pt[0],tn),me[1]=Math.min(me[1],Nt),pt[1]=Math.max(pt[1],Kt),a.renderBounds.setMinMax(me,pt)}}),t.geometry.dirty=!1;var De=p<0,He=v<0,Xe=(De?-1:1)*(ee?Gi(ee[0],0,t,!0):0),ct=(He?-1:1)*(ee?Gi(ee[1],1,t,!0):0);(Xe||ct)&&t.setOrigin(Xe,ct)}}},{key:"updateSizeAttenuation",value:function(t,n){t.style.isSizeAttenuation?(t.style.rawLineWidth||(t.style.rawLineWidth=t.style.lineWidth),t.style.lineWidth=(t.style.rawLineWidth||1)/n,t.nodeName===Te.CIRCLE&&(t.style.rawR||(t.style.rawR=t.style.r),t.style.r=(t.style.rawR||1)/n)):(t.style.rawLineWidth&&(t.style.lineWidth=t.style.rawLineWidth,delete t.style.rawLineWidth),t.nodeName===Te.CIRCLE&&t.style.rawR&&(t.style.r=t.style.rawR,delete t.style.rawR))}}])})();function Tz(r,e){var t=eU(r);for(var n in e)t.has(n)&&(r.parsedStyle[n]=e[n])}function eU(r){return r.constructor.PARSED_STYLE_LIST}var Fz=(function(){function r(){Ne(this,r),this.mixer=VE}return Pe(r,[{key:"calculator",value:function(t,n,i,a){return Ti(i)}}])})(),Mz=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"calculator",value:function(t,n,i,a,s){return i instanceof fa&&(i=null),s.sceneGraphService.updateDisplayObjectDependency(t,n,i,a),t==="clipPath"&&a.forEach(function(o){o.childNodes.length===0&&s.sceneGraphService.dirtyToRoot(o)}),i}}])})(),Iz=(function(){function r(){Ne(this,r),this.parser=Qu,this.mixer=XG}return Pe(r,[{key:"calculator",value:function(t,n,i,a){return i instanceof fa?i.value==="none"?DP:HP:i}}])})(),Oz=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"calculator",value:function(t,n,i){return i instanceof fa?[]:i}}])})();function W2(r){var e=r.parsedStyle,t=e.fontSize;return ut(t)?null:t}var wB=(function(){function r(){Ne(this,r),this.mixer=VE}return Pe(r,[{key:"calculator",value:function(t,n,i,a,s){if(Yt(i))return i;if(vn.isRelativeUnit(i.unit)){if(i.unit===We.kPercentage)return 0;if(i.unit===We.kEms){if(a.parentNode){var o=W2(a.parentNode);if(o)return o*=i.value,o}return 0}if(i.unit===We.kRems){var A;if(a!=null&&(A=a.ownerDocument)!==null&&A!==void 0&&A.documentElement){var l=W2(a.ownerDocument.documentElement);if(l)return l*=i.value,l}return 0}}else return i.value}}])})(),Lz=(function(){function r(){Ne(this,r),this.mixer=WP}return Pe(r,[{key:"calculator",value:function(t,n,i){return i.map(function(a){return a.value})}}])})(),Nz=(function(){function r(){Ne(this,r),this.mixer=WP}return Pe(r,[{key:"calculator",value:function(t,n,i){return i.map(function(a){return a.value})}}])})(),Pz=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"calculator",value:function(t,n,i,a){var s;i instanceof fa&&(i=null);var o=(s=i)===null||s===void 0?void 0:s.cloneNode(!0);return o&&(o.style.isMarker=!0),o}}])})(),Uz=(function(){function r(){Ne(this,r),this.mixer=VE}return Pe(r,[{key:"calculator",value:function(t,n,i){return i.value}}])})(),Rz=(function(){function r(){Ne(this,r),this.mixer=KE(0,1)}return Pe(r,[{key:"calculator",value:function(t,n,i){return i.value}},{key:"postProcessor",value:function(t){var n=t.parsedStyle,i=n.offsetPath,a=n.offsetDistance;if(i){var s=i.nodeName;if(s===Te.LINE||s===Te.PATH||s===Te.POLYLINE){var o=i.getPoint(a);o&&t.setLocalPosition(o.x,o.y)}}}}])})(),Qz=(function(){function r(){Ne(this,r),this.mixer=KE(0,1)}return Pe(r,[{key:"calculator",value:function(t,n,i){return i.value}}])})(),Dz=(function(){function r(){Ne(this,r),this.parser=YP,this.mixer=hz}return Pe(r,[{key:"calculator",value:function(t,n,i){return i instanceof fa&&i.value==="unset"?{absolutePath:[],hasArc:!1,segments:[],polygons:[],polylines:[],curve:null,totalLength:0,rect:new _l(0,0,0,0)}:i}}])})(),Hz=Pe(function r(){Ne(this,r),this.mixer=gz}),$z=(function(r){function e(){var t;Ne(this,e);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return t=Ft(this,e,[].concat(i)),t.mixer=KE(0,1/0),t}return Mt(e,r),Pe(e)})(wB),Gz=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"calculator",value:function(t,n,i,a){return i instanceof fa?i.value==="unset"?"":i.value:"".concat(i)}},{key:"postProcessor",value:function(t){t.nodeValue="".concat(t.parsedStyle.text)||""}}])})(),zz=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"calculator",value:function(t,n,i,a){var s=a.getAttribute("text");if(s){var o=s;i.value==="capitalize"?o=s.charAt(0).toUpperCase()+s.slice(1):i.value==="lowercase"?o=s.toLowerCase():i.value==="uppercase"&&(o=s.toUpperCase()),a.parsedStyle.text=o}return i.value}}])})(),hv=new WeakMap;function Vz(r,e,t){if(r){var n=typeof r=="string"?document.getElementById(r):r;hv.has(n)&&hv.get(n).destroy(t),hv.set(n,e)}}var WE=typeof window<"u"&&typeof window.document<"u";function Kz(r){return!!r.getAttribute}function jz(r,e){for(var t=0,n=r.length;t<n;){var i=t+n>>>1;tU(r[i],e)<0?t=i+1:n=i}return t}function tU(r,e){var t=Number(r.parsedStyle.zIndex||0),n=Number(e.parsedStyle.zIndex||0);if(t===n){var i=r.parentNode;if(i){var a=i.childNodes||[];return a.indexOf(r)-a.indexOf(e)}}return t-n}function nU(r){var e=r;do{var t,n=(t=e.parsedStyle)===null||t===void 0?void 0:t.clipPath;if(n)return e;e=e.parentElement}while(e!==null);return null}var q2="px";function Wz(r,e,t){WE&&r.style&&(r.style.width=e+q2,r.style.height=t+q2)}function rU(r,e){if(WE)return document.defaultView.getComputedStyle(r,null).getPropertyValue(e)}function qz(r){var e=rU(r,"width");return e==="auto"?r.offsetWidth:parseFloat(e)}function Yz(r){var e=rU(r,"height");return e==="auto"?r.offsetHeight:parseFloat(e)}var Xz=1,Zz={touchstart:"pointerdown",touchend:"pointerup",touchendoutside:"pointerupoutside",touchmove:"pointermove",touchcancel:"pointercancel"},bB=typeof performance=="object"&&performance.now?performance:Date;function af(r){return r.nodeName===Te.FRAGMENT?!0:r.getRootNode().nodeName===Te.FRAGMENT}function EA(){var r=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"auto",e=arguments.length>1?arguments[1]:void 0,t=arguments.length>2?arguments[2]:void 0,n=!1,i=!1,a=!!e&&!e.isNone,s=!!t&&!t.isNone;return r==="visiblepainted"||r==="painted"||r==="auto"?(n=a,i=s):r==="visiblefill"||r==="fill"?n=!0:r==="visiblestroke"||r==="stroke"?i=!0:(r==="visible"||r==="all")&&(n=!0,i=!0),[n,i]}var Jz=1,eV=function(){return Jz++},os=typeof self=="object"&&self.self===self?self:typeof global=="object"&&global.global===global?global:{},tV=Date.now(),nV=function(){return os.performance&&typeof os.performance.now=="function"?os.performance.now():Date.now()-tV},gu={},Y2=Date.now(),rV=function(e){if(typeof e!="function")throw new TypeError("".concat(e," is not a function"));var t=Date.now(),n=t-Y2,i=n>16?0:16-n,a=eV();return gu[a]=e,Object.keys(gu).length>1||setTimeout(function(){Y2=t;var s=gu;gu={},Object.keys(s).forEach(function(o){return s[o](nV())})},i),a},iV=function(e){delete gu[e]},aV=["","webkit","moz","ms","o"],iU=function(e){return typeof e!="string"?rV:e===""?os.requestAnimationFrame:os["".concat(e,"RequestAnimationFrame")]},sV=function(e){return typeof e!="string"?iV:e===""?os.cancelAnimationFrame:os["".concat(e,"CancelAnimationFrame")]||os["".concat(e,"CancelRequestAnimationFrame")]},oV=function(e,t){for(var n=0;e[n]!==void 0;){if(t(e[n]))return e[n];n+=1}},aU=oV(aV,function(r){return!!iU(r)}),qE=iU(aU),sU=sV(aU);os.requestAnimationFrame=qE;os.cancelAnimationFrame=sU;var AV=(function(){function r(){Ne(this,r),this.callbacks=[]}return Pe(r,[{key:"getCallbacksNum",value:function(){return this.callbacks.length}},{key:"tapPromise",value:function(t,n){this.callbacks.push(n)}},{key:"promise",value:function(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];return Promise.all(this.callbacks.map(function(a){return a.apply(void 0,n)}))}}])})(),lV=(function(){function r(){Ne(this,r),this.callbacks=[]}return Pe(r,[{key:"tapPromise",value:function(t,n){this.callbacks.push(n)}},{key:"promise",value:(function(){var e=xo(Pr().mark(function n(){var i,a,s,o,A=arguments;return Pr().wrap(function(l){for(;;)switch(l.prev=l.next){case 0:if(!this.callbacks.length){l.next=6;break}return l.next=1,(i=this.callbacks)[0].apply(i,A);case 1:a=l.sent,s=1;case 2:if(!(s<this.callbacks.length)){l.next=5;break}return o=this.callbacks[s],l.next=3,o(a);case 3:a=l.sent;case 4:s++,l.next=2;break;case 5:return l.abrupt("return",a);case 6:return l.abrupt("return",null);case 7:case"end":return l.stop()}},n,this)}));function t(){return e.apply(this,arguments)}return t})()}])})(),fi=(function(){function r(){Ne(this,r),this.callbacks=[]}return Pe(r,[{key:"tap",value:function(t,n){this.callbacks.push(n)}},{key:"call",value:function(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];var a=arguments;this.callbacks.forEach(function(s){s.apply(void 0,a)})}}])})(),fv=(function(){function r(){Ne(this,r),this.callbacks=[]}return Pe(r,[{key:"tap",value:function(t,n){this.callbacks.push(n)}},{key:"call",value:function(){for(var t=arguments.length,n=new Array(t),i=0;i<t;i++)n[i]=arguments[i];if(this.callbacks.length){for(var a=arguments,s=this.callbacks[0].apply(void 0,a),o=1;o<this.callbacks.length;o++){var A=this.callbacks[o];s=A(s)}return s}return null}}])})(),uV=["serif","sans-serif","monospace","cursive","fantasy","system-ui"],cV=/([\"\'])[^\'\"]+\1/;function X2(r){var e=r.fontSize,t=e===void 0?16:e,n=r.fontFamily,i=n===void 0?"sans-serif":n,a=r.fontStyle,s=a===void 0?"normal":a,o=r.fontVariant,A=o===void 0?"normal":o,l=r.fontWeight,u=l===void 0?"normal":l;return{fontSize:t,fontFamily:i,fontStyle:s,fontVariant:A,fontWeight:u}}var Z2=lr(function(e){for(var t=X2(e),n=t.fontSize,i=t.fontFamily,a=t.fontStyle,s=t.fontVariant,o=t.fontWeight,A=Yt(n)&&"".concat(n,"px")||"16px",l=i.split(","),u=l.length-1;u>=0;u--){var c=l[u].trim();!cV.test(c)&&uV.indexOf(c)<0&&(c='"'.concat(c,'"')),l[u]=c}return"".concat(a," ").concat(s," ").concat(o," ").concat(A," ").concat(l.join(","))},function(r){var e=X2(r),t=e.fontSize,n=e.fontFamily,i=e.fontStyle,a=e.fontVariant,s=e.fontWeight;return"".concat(i,"_").concat(a,"_").concat(s,"_").concat(t,"_").concat(n)}),dV=1e-6,tu=function(e){return Math.max(e,dV)};function gv(r,e,t){return Eo(r),r[4]=Math.tan(e),r[1]=Math.tan(t),r}var ir=wn(),hV=wn(),fV={scale:function(e){Zo(ir,[e[0].value,e[1].value,1].map(function(t){return tu(t)}))},scaleX:function(e){Zo(ir,[e[0].value,1,1].map(function(t){return tu(t)}))},scaleY:function(e){Zo(ir,[1,e[0].value,1].map(function(t){return tu(t)}))},scaleZ:function(e){Zo(ir,[1,1,e[0].value].map(function(t){return tu(t)}))},scale3d:function(e){Zo(ir,[e[0].value,e[1].value,e[2].value].map(function(t){return tu(t)}))},translate:function(e){no(ir,[e[0].value,e[1].value,0])},translateX:function(e){no(ir,[e[0].value,0,0])},translateY:function(e){no(ir,[0,e[0].value,0])},translateZ:function(e){no(ir,[0,0,e[0].value])},translate3d:function(e){no(ir,[e[0].value,e[1].value,e[2].value])},rotate:function(e){Jb(ir,An(Ti(e[0])))},rotateX:function(e){rP(ir,An(Ti(e[0])))},rotateY:function(e){iP(ir,An(Ti(e[0])))},rotateZ:function(e){Jb(ir,An(Ti(e[0])))},rotate3d:function(e){nP(ir,An(Ti(e[3])),[e[0].value,e[1].value,e[2].value])},skew:function(e){gv(ir,An(e[0].value),An(e[1].value))},skewX:function(e){gv(ir,An(e[0].value),0)},skewY:function(e){gv(ir,0,An(e[0].value))},matrix:function(e){Zb(ir,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){Zb.apply(s8,[ir].concat(Qt(e.map(function(t){return t.value}))))}},gV=bn(1,1,1),pV=Ut(),J2={translate:function(e,t){Qe.sceneGraphService.setLocalScale(e,gV,!1),Qe.sceneGraphService.setLocalEulerAngles(e,pV,void 0,void 0,!1),Qe.sceneGraphService.setLocalPosition(e,[t[0].value,t[1].value,0],!1),Qe.sceneGraphService.dirtyLocalTransform(e,e.transformable)}};function oU(r,e){if(r.length){if(r.length===1&&J2[r[0].t]){J2[r[0].t](e,r[0].d);return}for(var t=Eo(hV),n=0;n<r.length;n++){var i=r[n],a=i.t,s=i.d,o=fV[a];o&&(o(s),dP(t,t,ir))}e.setLocalTransform(t)}else e.resetLocalTransform();return e.getLocalTransform()}var vV=(function(){function r(){Ne(this,r),this.parser=pz,this.mixer=Cz}return Pe(r,[{key:"calculator",value:function(t,n,i,a){return i instanceof fa?[]:i}},{key:"postProcessor",value:function(t){oU(t.parsedStyle.transform,t)}}])})(),mV=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"postProcessor",value:function(t){var n=t.parsedStyle.transformOrigin;n[0].unit===We.kPixels&&n[1].unit===We.kPixels?t.setOrigin(n[0].value,n[1].value):t.getGeometryBounds()}}])})(),yV=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"calculator",value:function(t,n,i,a){return i.value}},{key:"postProcessor",value:function(t){if(t.parentNode){var n=t.parentNode,i=n.renderable,a=n.sortable;i&&n.dirty(),a&&(a.dirty=!0,a.dirtyReason=Jh.Z_INDEX_CHANGED)}}}])})(),wV=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"update",value:function(t,n){var i=t.cx,a=i===void 0?0:i,s=t.cy,o=s===void 0?0:s,A=t.r,l=A===void 0?0:A;return{cx:a,cy:o,hwidth:l,hheight:l}}}])})(),bV=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"update",value:function(t,n){var i=t.cx,a=i===void 0?0:i,s=t.cy,o=s===void 0?0:s,A=t.rx,l=A===void 0?0:A,u=t.ry,c=u===void 0?0:u;return{cx:a,cy:o,hwidth:l,hheight:c}}}])})(),BV=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"update",value:function(t){var n=t.x1,i=t.y1,a=t.x2,s=t.y2,o=Math.min(n,a),A=Math.max(n,a),l=Math.min(i,s),u=Math.max(i,s),c=A-o,d=u-l,h=c/2,f=d/2;return{cx:o+h,cy:l+f,hwidth:h,hheight:f}}}])})(),EV=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"update",value:function(t){var n=t.d,i=n.rect,a=i.x,s=i.y,o=i.width,A=i.height,l=o/2,u=A/2;return{cx:a+l,cy:s+u,hwidth:l,hheight:u}}}])})(),xV=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"update",value:function(t){if(t.points&&Ui(t.points.points)){var n=t.points.points,i=Math.min.apply(Math,Qt(n.map(function(d){return d[0]}))),a=Math.max.apply(Math,Qt(n.map(function(d){return d[0]}))),s=Math.min.apply(Math,Qt(n.map(function(d){return d[1]}))),o=Math.max.apply(Math,Qt(n.map(function(d){return d[1]}))),A=a-i,l=o-s,u=A/2,c=l/2;return{cx:i+u,cy:s+c,hwidth:u,hheight:c}}return{cx:0,cy:0,hwidth:0,hheight:0}}}])})(),CV=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"update",value:function(t,n){var i=t.x,a=i===void 0?0:i,s=t.y,o=s===void 0?0:s,A=t.src,l=t.width,u=l===void 0?0:l,c=t.height,d=c===void 0?0:c,h=u,f=d;return A&&!ln(A)&&(h||(h=A.width,t.width=h),f||(f=A.height,t.height=f)),{cx:a+h/2,cy:o+f/2,hwidth:h/2,hheight:f/2}}}])})(),SV=(function(){function r(e){Ne(this,r),this.globalRuntime=e}return Pe(r,[{key:"isReadyToMeasure",value:function(t,n){var i=t.text;return i}},{key:"update",value:function(t,n){var i,a=t.text,s=t.textAlign,o=s===void 0?"start":s,A=t.lineWidth,l=A===void 0?1:A,u=t.textBaseline,c=u===void 0?"alphabetic":u,d=t.dx,h=d===void 0?0:d,f=t.dy,p=f===void 0?0:f,g=t.x,v=g===void 0?0:g,m=t.y,y=m===void 0?0:m;if(!this.isReadyToMeasure(t,n))return t.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 w=(n==null||(i=n.ownerDocument)===null||i===void 0||(i=i.defaultView)===null||i===void 0?void 0:i.getConfig())||{},B=w.offscreenCanvas,x=this.globalRuntime.textService.measureText(a,t,B);t.metrics=x;var k=x.width,_=x.height,T=k/2,F=_/2,I=v+T;o==="center"||o==="middle"?I+=l/2-T:(o==="right"||o==="end")&&(I+=l-T*2);var O=y-F;return c==="middle"?O+=F:c==="top"||c==="hanging"?O+=F*2:c==="alphabetic"||(c==="bottom"||c==="ideographic")&&(O+=0),h&&(I+=h),p&&(O+=p),{cx:I,cy:O,hwidth:T,hheight:F}}}])})(),_V=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"update",value:function(t,n){return{cx:0,cy:0,hwidth:0,hheight:0}}}])})(),kV=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"update",value:function(t,n){var i=t.x,a=i===void 0?0:i,s=t.y,o=s===void 0?0:s,A=t.width,l=A===void 0?0:A,u=t.height,c=u===void 0?0:u;return{cx:a+l/2,cy:o+c/2,hwidth:l/2,hheight:c/2}}}])})(),Wf=(function(){function r(e){Ne(this,r),this.eventPhase=r.prototype.NONE,this.bubbles=!0,this.cancelBubble=!0,this.cancelable=!1,this.defaultPrevented=!1,this.propagationStopped=!1,this.propagationImmediatelyStopped=!1,this.layer=new zr,this.page=new zr,this.canvas=new zr,this.viewport=new zr,this.composed=!1,this.NONE=0,this.CAPTURING_PHASE=1,this.AT_TARGET=2,this.BUBBLING_PHASE=3,this.manager=e}return Pe(r,[{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 new Error(pn)}}])})(),AU=(function(r){function e(){var t;Ne(this,e);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return t=Ft(this,e,[].concat(i)),t.client=new zr,t.movement=new zr,t.offset=new zr,t.global=new zr,t.screen=new zr,t}return Mt(e,r),Pe(e,[{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(n){return"getModifierState"in this.nativeEvent&&this.nativeEvent.getModifierState(n)}},{key:"initMouseEvent",value:function(){throw new Error(pn)}}])})(Wf),sf=(function(r){function e(){var t;Ne(this,e);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return t=Ft(this,e,[].concat(i)),t.width=0,t.height=0,t.isPrimary=!1,t}return Mt(e,r),Pe(e,[{key:"getCoalescedEvents",value:function(){return this.type==="pointermove"||this.type==="mousemove"||this.type==="touchmove"?[this]:[]}},{key:"getPredictedEvents",value:function(){throw new Error("getPredictedEvents is not supported!")}},{key:"clone",value:function(){return this.manager.clonePointerEvent(this)}}])})(AU),BB=(function(r){function e(){return Ne(this,e),Ft(this,e,arguments)}return Mt(e,r),Pe(e,[{key:"clone",value:function(){return this.manager.cloneWheelEvent(this)}}])})(AU),gr=(function(r){function e(t,n){var i;return Ne(this,e),i=Ft(this,e,[null]),i.type=t,i.detail=n==null?void 0:n.detail,n&&!("detail"in n)&&(i.detail=n),Object.assign(i,n),i}return Mt(e,r),Pe(e)})(Wf),lU=(function(){function r(){Ne(this,r),this.emitter=new jN}return Pe(r,[{key:"on",value:function(t,n,i){return this.addEventListener(t,n,i),this}},{key:"addEventListener",value:function(t,n,i){var a=!1,s=!1;if(qu(i))a=i;else if(i){var o=i.capture;a=o===void 0?!1:o;var A=i.once;s=A===void 0?!1:A}a&&(t+="capture"),n=At(n)?n:n.handleEvent;var l=At(n)?void 0:n;return s?this.emitter.once(t,n,l):this.emitter.on(t,n,l),this}},{key:"off",value:function(t,n,i){return t?this.removeEventListener(t,n,i):this.removeAllEventListeners(),this}},{key:"removeAllEventListeners",value:function(){var t;(t=this.emitter)===null||t===void 0||t.removeAllListeners()}},{key:"removeEventListener",value:function(t,n,i){var a;if(!this.emitter)return this;var s=qu(i)?i:i==null?void 0:i.capture;s&&(t+="capture"),n=At(n)?n:(a=n)===null||a===void 0?void 0:a.handleEvent;var o=At(n)?void 0:n;return this.emitter.off(t,n,o),this}},{key:"emit",value:function(t,n){this.dispatchEvent(new gr(t,n))}},{key:"dispatchEventToSelf",value:function(t){t.target||(t.target=this),t.currentTarget=this,this.emitter.emit(t.type,t)}},{key:"dispatchEvent",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,i=arguments.length>2?arguments[2]:void 0;if(i)return this.dispatchEventToSelf(t),!0;var a;if(this.document)a=this;else if(this.defaultView)a=this.defaultView;else{var s;a=(s=this.ownerDocument)===null||s===void 0?void 0:s.defaultView}if(a){if(t.manager=a.getEventService(),!t.manager)return!1;t.defaultPrevented=!1,t.path?t.path.length=0:t.page=[],n||(t.target=this),t.manager.dispatchEvent(t,t.type,n)}else this.dispatchEventToSelf(t);return!t.defaultPrevented}}])})(),Rn=(function(r){function e(){var t;Ne(this,e);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return t=Ft(this,e,[].concat(i)),t.shadow=!1,t.ownerDocument=null,t.isConnected=!1,t.baseURI="",t.childNodes=[],t.nodeType=0,t.nodeName="",t.nodeValue=null,t.mutations=void 0,t.parentNode=null,t.destroyed=!1,t}return Mt(e,r),Pe(e,[{key:"textContent",get:function(){var n="";this.nodeName===Te.TEXT&&(n+=this.style.text);var i=ro(this.childNodes),a;try{for(i.s();!(a=i.n()).done;){var s=a.value;s.nodeName===Te.TEXT?n+=s.nodeValue:n+=s.textContent}}catch(o){i.e(o)}finally{i.f()}return n},set:function(n){var i=this;this.childNodes.slice().forEach(function(a){i.removeChild(a)}),this.nodeName===Te.TEXT&&(this.style.text="".concat(n))}},{key:"getRootNode",value:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return this.parentNode?this.parentNode.getRootNode(n):n.composed&&this.host?this.host.getRootNode(n):this}},{key:"hasChildNodes",value:function(){return this.childNodes.length>0}},{key:"isDefaultNamespace",value:function(n){throw new Error(pn)}},{key:"lookupNamespaceURI",value:function(n){throw new Error(pn)}},{key:"lookupPrefix",value:function(n){throw new Error(pn)}},{key:"normalize",value:function(){throw new Error(pn)}},{key:"isEqualNode",value:function(n){return this===n}},{key:"isSameNode",value:function(n){return this.isEqualNode(n)}},{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(n){if(n===this)return 0;for(var i=n,a=this,s=[i],o=[a];(A=i.parentNode)!==null&&A!==void 0?A:a.parentNode;){var A;i=i.parentNode?(s.push(i.parentNode),i.parentNode):i,a=a.parentNode?(o.push(a.parentNode),a.parentNode):a}if(i!==a)return e.DOCUMENT_POSITION_DISCONNECTED|e.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC|e.DOCUMENT_POSITION_PRECEDING;var l=s.length>o.length?s:o,u=l===s?o:s;if(l[l.length-u.length]===u[0])return l===s?e.DOCUMENT_POSITION_CONTAINED_BY|e.DOCUMENT_POSITION_FOLLOWING:e.DOCUMENT_POSITION_CONTAINS|e.DOCUMENT_POSITION_PRECEDING;for(var c=l.length-u.length,d=u.length-1;d>=0;d--){var h=u[d],f=l[c+d];if(f!==h){var p=h.parentNode.childNodes;return p.indexOf(h)<p.indexOf(f)?u===s?e.DOCUMENT_POSITION_PRECEDING:e.DOCUMENT_POSITION_FOLLOWING:l===s?e.DOCUMENT_POSITION_PRECEDING:e.DOCUMENT_POSITION_FOLLOWING}}return e.DOCUMENT_POSITION_FOLLOWING}},{key:"contain",value:function(n){return this.contains(n)}},{key:"contains",value:function(n){for(var i=n;i&&this!==i;)i=i.parentNode;return!!i}},{key:"getAncestor",value:function(n){for(var i=this;n>0&&i;)i=i.parentNode,n--;return i}},{key:"forEach",value:function(n){for(var i=[this];i.length>0;){var a=i.pop(),s=n(a);if(s===!1)break;for(var o=a.childNodes.length-1;o>=0;o--)i.push(a.childNodes[o])}}}],[{key:"isNode",value:function(n){return!!n.childNodes}}])})(lU);Rn.DOCUMENT_POSITION_DISCONNECTED=1;Rn.DOCUMENT_POSITION_PRECEDING=2;Rn.DOCUMENT_POSITION_FOLLOWING=4;Rn.DOCUMENT_POSITION_CONTAINS=8;Rn.DOCUMENT_POSITION_CONTAINED_BY=16;Rn.DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC=32;var TV=2048,FV=(function(){function r(e,t){var n=this;Ne(this,r),this.nativeHTMLMap=new WeakMap,this.cursor="default",this.mappingTable={},this.mappingState={trackingData:{}},this.eventPool=new Map,this.tmpMatrix=wn(),this.tmpVec3=Ut(),this.onPointerDown=function(i){var a=n.createPointerEvent(i);if(n.dispatchEvent(a,"pointerdown"),a.pointerType==="touch")n.dispatchEvent(a,"touchstart");else if(a.pointerType==="mouse"||a.pointerType==="pen"){var s=a.button===2;n.dispatchEvent(a,s?"rightdown":"mousedown")}var o=n.trackingData(i.pointerId);o.pressTargetsByButton[i.button]=a.composedPath(),n.freeEvent(a)},this.onPointerUp=function(i){var a=bB.now(),s=n.createPointerEvent(i,void 0,void 0,n.context.config.alwaysTriggerPointerEventOnCanvas?n.rootTarget:void 0);if(n.dispatchEvent(s,"pointerup"),s.pointerType==="touch")n.dispatchEvent(s,"touchend");else if(s.pointerType==="mouse"||s.pointerType==="pen"){var o=s.button===2;n.dispatchEvent(s,o?"rightup":"mouseup")}var A=n.trackingData(i.pointerId),l=n.findMountedTarget(A.pressTargetsByButton[i.button]),u=l;if(l&&!s.composedPath().includes(l)){for(var c=l;c&&!s.composedPath().includes(c);){if(s.currentTarget=c,n.notifyTarget(s,"pointerupoutside"),s.pointerType==="touch")n.notifyTarget(s,"touchendoutside");else if(s.pointerType==="mouse"||s.pointerType==="pen"){var d=s.button===2;n.notifyTarget(s,d?"rightupoutside":"mouseupoutside")}Rn.isNode(c)&&(c=c.parentNode)}delete A.pressTargetsByButton[i.button],u=c}if(u){var h,f=n.clonePointerEvent(s,"click");f.target=u,f.path=[],A.clicksByButton[i.button]||(A.clicksByButton[i.button]={clickCount:0,target:f.target,timeStamp:a});var p=n.context.renderingContext.root.ownerDocument.defaultView,g=A.clicksByButton[i.button];g.target===f.target&&a-g.timeStamp<p.getConfig().dblClickSpeed?++g.clickCount:g.clickCount=1,g.target=f.target,g.timeStamp=a,f.detail=g.clickCount,(h=s.detail)!==null&&h!==void 0&&h.preventClick||(!n.context.config.useNativeClickEvent&&(f.pointerType==="mouse"||f.pointerType==="touch")&&n.dispatchEvent(f,"click"),n.dispatchEvent(f,"pointertap")),n.freeEvent(f)}n.freeEvent(s)},this.onPointerMove=function(i){var a=n.createPointerEvent(i,void 0,void 0,n.context.config.alwaysTriggerPointerEventOnCanvas?n.rootTarget:void 0),s=a.pointerType==="mouse"||a.pointerType==="pen",o=n.trackingData(i.pointerId),A=n.findMountedTarget(o.overTargets);if(o.overTargets&&A!==a.target){var l=i.type==="mousemove"?"mouseout":"pointerout",u=n.createPointerEvent(i,l,A||void 0);if(n.dispatchEvent(u,"pointerout"),s&&n.dispatchEvent(u,"mouseout"),!a.composedPath().includes(A)){var c=n.createPointerEvent(i,"pointerleave",A||void 0);for(c.eventPhase=c.AT_TARGET;c.target&&!a.composedPath().includes(c.target);)c.currentTarget=c.target,n.notifyTarget(c),s&&n.notifyTarget(c,"mouseleave"),Rn.isNode(c.target)&&(c.target=c.target.parentNode);n.freeEvent(c)}n.freeEvent(u)}if(A!==a.target){var d=i.type==="mousemove"?"mouseover":"pointerover",h=n.clonePointerEvent(a,d);n.dispatchEvent(h,"pointerover"),s&&n.dispatchEvent(h,"mouseover");for(var f=A&&Rn.isNode(A)&&A.parentNode;f&&f!==(Rn.isNode(n.rootTarget)&&n.rootTarget.parentNode)&&f!==a.target;)f=f.parentNode;var p=!f||f===(Rn.isNode(n.rootTarget)&&n.rootTarget.parentNode);if(p){var g=n.clonePointerEvent(a,"pointerenter");for(g.eventPhase=g.AT_TARGET;g.target&&g.target!==A&&g.target!==(Rn.isNode(n.rootTarget)&&n.rootTarget.parentNode);)g.currentTarget=g.target,n.notifyTarget(g),s&&n.notifyTarget(g,"mouseenter"),Rn.isNode(g.target)&&(g.target=g.target.parentNode);n.freeEvent(g)}n.freeEvent(h)}n.dispatchEvent(a,"pointermove"),a.pointerType==="touch"&&n.dispatchEvent(a,"touchmove"),s&&(n.dispatchEvent(a,"mousemove"),n.cursor=n.getCursor(a.target)),o.overTargets=a.composedPath(),n.freeEvent(a)},this.onPointerOut=function(i){var a=n.trackingData(i.pointerId);if(a.overTargets){var s=i.pointerType==="mouse"||i.pointerType==="pen",o=n.findMountedTarget(a.overTargets),A=n.createPointerEvent(i,"pointerout",o||void 0);n.dispatchEvent(A),s&&n.dispatchEvent(A,"mouseout");var l=n.createPointerEvent(i,"pointerleave",o||void 0);for(l.eventPhase=l.AT_TARGET;l.target&&l.target!==(Rn.isNode(n.rootTarget)&&n.rootTarget.parentNode);)l.currentTarget=l.target,n.notifyTarget(l),s&&n.notifyTarget(l,"mouseleave"),Rn.isNode(l.target)&&(l.target=l.target.parentNode);a.overTargets=null,n.freeEvent(A),n.freeEvent(l)}n.cursor=null},this.onPointerOver=function(i){var a=n.trackingData(i.pointerId),s=n.createPointerEvent(i),o=s.pointerType==="mouse"||s.pointerType==="pen";n.dispatchEvent(s,"pointerover"),o&&n.dispatchEvent(s,"mouseover"),s.pointerType==="mouse"&&(n.cursor=n.getCursor(s.target));var A=n.clonePointerEvent(s,"pointerenter");for(A.eventPhase=A.AT_TARGET;A.target&&A.target!==(Rn.isNode(n.rootTarget)&&n.rootTarget.parentNode);)A.currentTarget=A.target,n.notifyTarget(A),o&&n.notifyTarget(A,"mouseenter"),Rn.isNode(A.target)&&(A.target=A.target.parentNode);a.overTargets=s.composedPath(),n.freeEvent(s),n.freeEvent(A)},this.onPointerUpOutside=function(i){var a=n.trackingData(i.pointerId),s=n.findMountedTarget(a.pressTargetsByButton[i.button]),o=n.createPointerEvent(i);if(s){for(var A=s;A;)o.currentTarget=A,n.notifyTarget(o,"pointerupoutside"),o.pointerType==="touch"||(o.pointerType==="mouse"||o.pointerType==="pen")&&n.notifyTarget(o,o.button===2?"rightupoutside":"mouseupoutside"),Rn.isNode(A)&&(A=A.parentNode);delete a.pressTargetsByButton[i.button]}n.freeEvent(o)},this.onWheel=function(i){var a=n.createWheelEvent(i);n.dispatchEvent(a),n.freeEvent(a)},this.onClick=function(i){if(n.context.config.useNativeClickEvent){var a=n.createPointerEvent(i);n.dispatchEvent(a),n.freeEvent(a)}},this.onPointerCancel=function(i){var a=n.createPointerEvent(i,void 0,void 0,n.context.config.alwaysTriggerPointerEventOnCanvas?n.rootTarget:void 0);n.dispatchEvent(a),n.freeEvent(a)},this.globalRuntime=e,this.context=t}return Pe(r,[{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 t=this.context.contextService.getBoundingClientRect(),n=1,i=1,a=this.context.contextService.getDomElement();if(a&&t){var s=a.offsetWidth,o=a.offsetHeight;s&&o&&(n=t.width/s,i=t.height/o)}return{scaleX:n,scaleY:i,bbox:t}}},{key:"client2Viewport",value:function(t){var n=this.getScale(),i=n.scaleX,a=n.scaleY,s=n.bbox;return new zr((t.x-((s==null?void 0:s.left)||0))/i,(t.y-((s==null?void 0:s.top)||0))/a)}},{key:"viewport2Client",value:function(t){var n=this.getScale(),i=n.scaleX,a=n.scaleY,s=n.bbox;return new zr((t.x+((s==null?void 0:s.left)||0))*i,(t.y+((s==null?void 0:s.top)||0))*a)}},{key:"viewport2Canvas",value:function(t){var n=t.x,i=t.y,a=this.rootTarget.defaultView,s=a.getCamera(),o=this.context.config,A=o.width,l=o.height,u=s.getPerspectiveInverse(),c=s.getWorldTransform(),d=si(this.tmpMatrix,c,u),h=ii(this.tmpVec3,n/A*2-1,(1-i/l)*2-1,0);return oi(h,h,d),new zr(h[0],h[1])}},{key:"canvas2Viewport",value:function(t){var n=this.rootTarget.defaultView,i=n.getCamera(),a=i.getPerspective(),s=i.getViewTransform(),o=si(this.tmpMatrix,a,s),A=ii(this.tmpVec3,t.x,t.y,0);oi(this.tmpVec3,this.tmpVec3,o);var l=this.context.config,u=l.width,c=l.height;return new zr((A[0]+1)/2*u,(1-(A[1]+1)/2)*c)}},{key:"setPickHandler",value:function(t){this.pickHandler=t}},{key:"addEventMapping",value:function(t,n){this.mappingTable[t]||(this.mappingTable[t]=[]),this.mappingTable[t].push({fn:n,priority:0}),this.mappingTable[t].sort(function(i,a){return i.priority-a.priority})}},{key:"mapEvent",value:function(t){if(this.rootTarget){var n=this.mappingTable[t.type];if(n)for(var i=0,a=n.length;i<a;i++)n[i].fn(t);else console.warn("[EventService]: Event mapping not defined for ".concat(t.type))}}},{key:"dispatchEvent",value:function(t,n,i){if(!i)t.propagationStopped=!1,t.propagationImmediatelyStopped=!1,this.propagate(t,n);else{t.eventPhase=t.AT_TARGET;var a=this.rootTarget.defaultView||null;t.currentTarget=a,this.notifyListeners(t,n)}}},{key:"propagate",value:function(t,n){if(t.target){var i=t.composedPath();t.eventPhase=t.CAPTURING_PHASE;for(var a=i.length-1;a>=1;a--)if(t.currentTarget=i[a],this.notifyTarget(t,n),t.propagationStopped||t.propagationImmediatelyStopped)return;if(t.eventPhase=t.AT_TARGET,t.currentTarget=t.target,this.notifyTarget(t,n),!(t.propagationStopped||t.propagationImmediatelyStopped)){var s=i.indexOf(t.currentTarget);t.eventPhase=t.BUBBLING_PHASE;for(var o=s+1;o<i.length;o++)if(t.currentTarget=i[o],this.notifyTarget(t,n),t.propagationStopped||t.propagationImmediatelyStopped)return}}}},{key:"propagationPath",value:function(t){var n=[t],i=this.rootTarget.defaultView||null;if(i&&i===t)return n.unshift(i.document),n;for(var a=0;a<TV&&t!==this.rootTarget;a++)Rn.isNode(t)&&t.parentNode&&(n.push(t.parentNode),t=t.parentNode);return i&&n.push(i),n}},{key:"hitTest",value:function(t){var n=t.viewportX,i=t.viewportY,a=this.context.config,s=a.width,o=a.height,A=a.disableHitTesting;return n<0||i<0||n>s||i>o?null:!A&&this.pickHandler(t)||this.rootTarget||null}},{key:"isNativeEventFromCanvas",value:function(t,n){var i,a=n==null?void 0:n.target;if((i=a)!==null&&i!==void 0&&i.shadowRoot&&(a=n.composedPath()[0]),a){if(a===t)return!0;if(t&&t.contains)return t.contains(a)}return n!=null&&n.composedPath?n.composedPath().indexOf(t)>-1:!1}},{key:"getExistedHTML",value:function(t){if(t.nativeEvent.composedPath)for(var n=0,i=t.nativeEvent.composedPath();n<i.length;n++){var a=i[n],s=this.nativeHTMLMap.get(a);if(s)return s}return null}},{key:"pickTarget",value:function(t){return this.hitTest({clientX:t.clientX,clientY:t.clientY,viewportX:t.viewportX,viewportY:t.viewportY,x:t.canvasX,y:t.canvasY})}},{key:"createPointerEvent",value:function(t,n,i,a){var s=this.allocateEvent(sf);this.copyPointerData(t,s),this.copyMouseData(t,s),this.copyData(t,s),s.nativeEvent=t.nativeEvent,s.originalEvent=t;var o=this.getExistedHTML(s),A=this.context.contextService.getDomElement();return s.target=i??(o||this.isNativeEventFromCanvas(A,s.nativeEvent)&&this.pickTarget(s)||a),typeof n=="string"&&(s.type=n),s}},{key:"createWheelEvent",value:function(t){var n=this.allocateEvent(BB);this.copyWheelData(t,n),this.copyMouseData(t,n),this.copyData(t,n),n.nativeEvent=t.nativeEvent,n.originalEvent=t;var i=this.getExistedHTML(n),a=this.context.contextService.getDomElement();return n.target=i||this.isNativeEventFromCanvas(a,n.nativeEvent)&&this.pickTarget(n),n}},{key:"trackingData",value:function(t){return this.mappingState.trackingData[t]||(this.mappingState.trackingData[t]={pressTargetsByButton:{},clicksByButton:{},overTarget:null}),this.mappingState.trackingData[t]}},{key:"cloneWheelEvent",value:function(t){var n=this.allocateEvent(BB);return n.nativeEvent=t.nativeEvent,n.originalEvent=t.originalEvent,this.copyWheelData(t,n),this.copyMouseData(t,n),this.copyData(t,n),n.target=t.target,n.path=t.composedPath().slice(),n.type=t.type,n}},{key:"clonePointerEvent",value:function(t,n){var i=this.allocateEvent(sf);return i.nativeEvent=t.nativeEvent,i.originalEvent=t.originalEvent,this.copyPointerData(t,i),this.copyMouseData(t,i),this.copyData(t,i),i.target=t.target,i.path=t.composedPath().slice(),i.type=n??i.type,i}},{key:"copyPointerData",value:function(t,n){n.pointerId=t.pointerId,n.width=t.width,n.height=t.height,n.isPrimary=t.isPrimary,n.pointerType=t.pointerType,n.pressure=t.pressure,n.tangentialPressure=t.tangentialPressure,n.tiltX=t.tiltX,n.tiltY=t.tiltY,n.twist=t.twist}},{key:"copyMouseData",value:function(t,n){n.altKey=t.altKey,n.button=t.button,n.buttons=t.buttons,n.ctrlKey=t.ctrlKey,n.metaKey=t.metaKey,n.shiftKey=t.shiftKey,n.client.copyFrom(t.client),n.movement.copyFrom(t.movement),n.canvas.copyFrom(t.canvas),n.screen.copyFrom(t.screen),n.global.copyFrom(t.global),n.offset.copyFrom(t.offset)}},{key:"copyWheelData",value:function(t,n){n.deltaMode=t.deltaMode,n.deltaX=t.deltaX,n.deltaY=t.deltaY,n.deltaZ=t.deltaZ}},{key:"copyData",value:function(t,n){n.isTrusted=t.isTrusted,n.timeStamp=bB.now(),n.type=t.type,n.detail=t.detail,n.view=t.view,n.page.copyFrom(t.page),n.viewport.copyFrom(t.viewport)}},{key:"allocateEvent",value:function(t){this.eventPool.has(t)||this.eventPool.set(t,[]);var n=this.eventPool.get(t).pop()||new t(this);return n.eventPhase=n.NONE,n.currentTarget=null,n.path=[],n.target=null,n}},{key:"freeEvent",value:function(t){if(t.manager!==this)throw new Error("It is illegal to free an event not managed by this EventBoundary!");var n=t.constructor;this.eventPool.has(n)||this.eventPool.set(n,[]),this.eventPool.get(n).push(t)}},{key:"notifyTarget",value:function(t,n){n=n??t.type;var i=t.eventPhase===t.CAPTURING_PHASE||t.eventPhase===t.AT_TARGET?"".concat(n,"capture"):n;this.notifyListeners(t,i),t.eventPhase===t.AT_TARGET&&this.notifyListeners(t,n)}},{key:"notifyListeners",value:function(t,n){var i=t.currentTarget.emitter,a=i._events[n];if(a)if("fn"in a)a.once&&i.removeListener(n,a.fn,void 0,!0),a.fn.call(t.currentTarget||a.context,t);else for(var s=0;s<a.length&&!t.propagationImmediatelyStopped;s++)a[s].once&&i.removeListener(n,a[s].fn,void 0,!0),a[s].fn.call(t.currentTarget||a[s].context,t)}},{key:"findMountedTarget",value:function(t){if(!t)return null;for(var n=t[t.length-1],i=t.length-2;i>=0;i--){var a=t[i];if(a===this.rootTarget||Rn.isNode(a)&&a.parentNode===n)n=t[i];else break}return n}},{key:"getCursor",value:function(t){for(var n=t;n;){var i=Kz(n)&&n.getAttribute("cursor");if(i)return i;n=Rn.isNode(n)&&n.parentNode}}}])})(),YE=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"getOrCreateCanvas",value:function(t,n){if(this.canvas)return this.canvas;if(t||Qe.offscreenCanvas)this.canvas=t||Qe.offscreenCanvas,this.context=this.canvas.getContext("2d",bt({willReadFrequently:!0},n));else try{this.canvas=new window.OffscreenCanvas(0,0),this.context=this.canvas.getContext("2d",bt({willReadFrequently:!0},n)),(!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",bt({willReadFrequently:!0},n))}return this.canvas.width=10,this.canvas.height=10,this.canvas}},{key:"getOrCreateContext",value:function(t,n){return this.context?this.context:(this.getOrCreateCanvas(t,n),this.context)}}],[{key:"createCanvas",value:function(){try{return new window.OffscreenCanvas(0,0)}catch{}try{return document.createElement("canvas")}catch{}return null}}])})(),pl=(function(r){return r[r.CAMERA_CHANGED=0]="CAMERA_CHANGED",r[r.DISPLAY_OBJECT_CHANGED=1]="DISPLAY_OBJECT_CHANGED",r[r.NONE=2]="NONE",r})({}),MV=(function(){function r(e,t){Ne(this,r),this.inited=!1,this.stats={total:0,rendered:0},this.zIndexCounter=0,this.hooks={init:new fi,initAsync:new AV,dirtycheck:new fv,cull:new fv,beginFrame:new fi,beforeRender:new fi,render:new fi,afterRender:new fi,endFrame:new fi,destroy:new fi,pick:new lV,pickSync:new fv,pointerDown:new fi,pointerUp:new fi,pointerMove:new fi,pointerOut:new fi,pointerOver:new fi,pointerWheel:new fi,pointerCancel:new fi,click:new fi},this.globalRuntime=e,this.context=t}return Pe(r,[{key:"init",value:function(t){var n=this,i=bt(bt({},this.globalRuntime),this.context);this.context.renderingPlugins.forEach(function(a){a.apply(i,n.globalRuntime)}),this.hooks.init.call(),this.hooks.initAsync.getCallbacksNum()===0?(this.inited=!0,t()):this.hooks.initAsync.promise().then(function(){n.inited=!0,t()}).catch(function(a){})}},{key:"getStats",value:function(){return this.stats}},{key:"disableDirtyRectangleRendering",value:function(){var t=this.context.config.renderer,n=t.getConfig(),i=n.enableDirtyRectangleRendering;return!i||this.context.renderingContext.renderReasons.has(pl.CAMERA_CHANGED)}},{key:"render",value:function(t,n,i){var a=this,s=t.getConfig(),o=this.context.renderingContext;if(this.stats.total=0,this.stats.rendered=0,this.zIndexCounter=0,this.globalRuntime.sceneGraphService.syncHierarchy(o.root),this.globalRuntime.sceneGraphService.notifyMutationObservers(t),o.renderReasons.size&&this.inited){o.dirtyRectangleRenderingDisabled=this.disableDirtyRectangleRendering();var A=o.renderReasons.size===1&&o.renderReasons.has(pl.CAMERA_CHANGED),l=!s.disableRenderHooks||!A;l&&this.renderDisplayObject(o.root,s,o),this.hooks.beginFrame.call(n),l&&o.renderListCurrentFrame.forEach(function(u){a.hooks.beforeRender.call(u),a.hooks.render.call(u),a.hooks.afterRender.call(u)}),this.hooks.endFrame.call(n),o.renderListCurrentFrame=[],o.renderReasons.clear(),i()}}},{key:"renderDisplayObject",value:function(t,n,i){var a=this,s=n.renderer.getConfig(),o=s.enableDirtyCheck,A=s.enableCulling;function l(p){var g=p.renderable,v=p.sortable,m=o?g.dirty||i.dirtyRectangleRenderingDisabled?p:null:p,y=null;m&&(y=A?a.hooks.cull.call(m,a.context.camera):m,y&&(a.stats.rendered+=1,i.renderListCurrentFrame.push(y))),p.dirty(!1),v.renderOrder=a.zIndexCounter,a.zIndexCounter+=1,a.stats.total+=1,v.dirty&&(a.sort(p,v),v.dirty=!1,v.dirtyChildren=[],v.dirtyReason=void 0)}for(var u=[t];u.length>0;){var c,d=u.pop();l(d);for(var h=((c=d.sortable)===null||c===void 0||(c=c.sorted)===null||c===void 0?void 0:c.length)>0?d.sortable.sorted:d.childNodes,f=h.length-1;f>=0;f--)u.push(h[f])}}},{key:"sort",value:function(t,n){var i,a;(n==null||(i=n.sorted)===null||i===void 0?void 0:i.length)>0&&n.dirtyReason!==Jh.Z_INDEX_CHANGED?n.dirtyChildren.forEach(function(s){var o=n.sorted.indexOf(s);o>-1&&n.sorted.splice(o,1);var A=t.childNodes.indexOf(s);if(A>-1)if(n.sorted.length===0)n.sorted.push(s);else{var l=jz(n.sorted,s);n.sorted.splice(l,0,s)}}):n.sorted=t.childNodes.slice().sort(tU),((a=n.sorted)===null||a===void 0?void 0:a.length)>0&&t.childNodes.filter(function(s){return s.parsedStyle.zIndex}).length===0&&(n.sorted=[])}},{key:"destroy",value:function(){this.inited=!1,this.hooks.destroy.call()}},{key:"dirty",value:function(){this.context.renderingContext.renderReasons.add(pl.DISPLAY_OBJECT_CHANGED)}}])})(),IV=/\[\s*(.*)=(.*)\s*\]/,OV=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"selectOne",value:function(t,n){var i=this;if(t.startsWith("."))return n.find(function(A){return((A==null?void 0:A.classList)||[]).indexOf(i.getIdOrClassname(t))>-1});if(t.startsWith("#"))return n.find(function(A){return A.id===i.getIdOrClassname(t)});if(t.startsWith("[")){var a=this.getAttribute(t),s=a.name,o=a.value;return s?n.find(function(A){return n!==A&&(s==="name"?A.name===o:i.attributeToString(A,s)===o)}):null}return n.find(function(A){return n!==A&&A.nodeName===t})}},{key:"selectAll",value:function(t,n){var i=this;if(t.startsWith("."))return n.findAll(function(A){return n!==A&&((A==null?void 0:A.classList)||[]).indexOf(i.getIdOrClassname(t))>-1});if(t.startsWith("#"))return n.findAll(function(A){return n!==A&&A.id===i.getIdOrClassname(t)});if(t.startsWith("[")){var a=this.getAttribute(t),s=a.name,o=a.value;return s?n.findAll(function(A){return n!==A&&(s==="name"?A.name===o:i.attributeToString(A,s)===o)}):[]}return n.findAll(function(A){return n!==A&&A.nodeName===t})}},{key:"is",value:function(t,n){if(t.startsWith("."))return n.className===this.getIdOrClassname(t);if(t.startsWith("#"))return n.id===this.getIdOrClassname(t);if(t.startsWith("[")){var i=this.getAttribute(t),a=i.name,s=i.value;return a==="name"?n.name===s:this.attributeToString(n,a)===s}return n.nodeName===t}},{key:"getIdOrClassname",value:function(t){return t.substring(1)}},{key:"getAttribute",value:function(t){var n=t.match(IV),i="",a="";return n&&n.length>2&&(i=n[1].replace(/"/g,""),a=n[2].replace(/"/g,"")),{name:i,value:a}}},{key:"attributeToString",value:function(t,n){if(!t.getAttribute)return"";var i=t.getAttribute(n);return ut(i)?"":i.toString?i.toString():""}}])})(),Vt=(function(r){return r.ATTR_MODIFIED="DOMAttrModified",r.INSERTED="DOMNodeInserted",r.MOUNTED="DOMNodeInsertedIntoDocument",r.REMOVED="removed",r.UNMOUNTED="DOMNodeRemovedFromDocument",r.REPARENT="reparent",r.DESTROY="destroy",r.BOUNDS_CHANGED="bounds-changed",r.CULLED="culled",r})({}),ls=(function(r){function e(t,n,i,a,s,o,A,l){var u;return Ne(this,e),u=Ft(this,e,[null]),u.relatedNode=n,u.prevValue=i,u.newValue=a,u.attrName=s,u.attrChange=o,u.prevParsedValue=A,u.newParsedValue=l,u.type=t,u}return Mt(e,r),Pe(e)})(Wf);ls.ADDITION=2;ls.MODIFICATION=1;ls.REMOVAL=3;var LV=new ls(Vt.REPARENT,null,"","","",0,"",""),NV=QE(),id=Ut(),PV=bn(1,1,1),UV=wn(),RV=QE(),Ro=Ut(),QV=wn(),Qo=fr(),DV=Ut(),HV=fr(),$V=Ut(),nu=Ut(),Do=Ut(),ad=wn(),eS=fr(),tS=fr(),sd=fr(),GV=(function(){function r(e){Ne(this,r),this.displayObjectDependencyMap=new WeakMap,this.runtime=e}return Pe(r,[{key:"matches",value:function(t,n){return this.runtime.sceneGraphSelector.is(t,n)}},{key:"querySelector",value:function(t,n){return this.runtime.sceneGraphSelector.selectOne(t,n)}},{key:"querySelectorAll",value:function(t,n){return this.runtime.sceneGraphSelector.selectAll(t,n)}},{key:"attach",value:function(t,n,i){var a,s=!1;t.parentNode&&(s=t.parentNode!==n,this.detach(t));var o=t.nodeName===Te.FRAGMENT,A=af(n);t.parentNode=n;var l=o?t.childNodes:[t];Yt(i)?l.forEach(function(p){n.childNodes.splice(i,0,p),p.parentNode=n}):l.forEach(function(p){n.childNodes.push(p),p.parentNode=n});var u=n,c=u.sortable;if((c!=null&&(a=c.sorted)!==null&&a!==void 0&&a.length||c.dirty||t.parsedStyle.zIndex)&&(c.dirtyChildren.indexOf(t)===-1&&c.dirtyChildren.push(t),c.dirty=!0,c.dirtyReason=Jh.ADDED),!A){if(o)this.dirtyFragment(t);else{var d=t.transformable;d&&this.dirtyWorldTransform(t,d)}if(s){var h,f=((h=n.ownerDocument)===null||h===void 0||(h=h.defaultView)===null||h===void 0||(h=h.getConfig())===null||h===void 0||(h=h.future)===null||h===void 0?void 0:h.experimentalCancelEventPropagation)===!0;t.dispatchEvent(LV,f,f)}}}},{key:"detach",value:function(t){var n,i;if(t.parentNode){var a=t.transformable,s=t.parentNode,o=s.sortable;(o!=null&&(n=o.sorted)!==null&&n!==void 0&&n.length||(i=t.style)!==null&&i!==void 0&&i.zIndex)&&(o.dirtyChildren.indexOf(t)===-1&&o.dirtyChildren.push(t),o.dirty=!0,o.dirtyReason=Jh.REMOVED);var A=t.parentNode.childNodes.indexOf(t);A>-1&&t.parentNode.childNodes.splice(A,1),a&&this.dirtyWorldTransform(t,a),t.parentNode=null}}},{key:"getLocalPosition",value:function(t){return t.transformable.localPosition}},{key:"getLocalRotation",value:function(t){return t.transformable.localRotation}},{key:"getLocalScale",value:function(t){return t.transformable.localScale}},{key:"getLocalSkew",value:function(t){return t.transformable.localSkew}},{key:"getLocalTransform",value:function(t){var n=t.transformable;return T2(n),n.localTransform}},{key:"setLocalPosition",value:function(t,n){var i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,s=t.transformable;nu[0]=n[0],nu[1]=n[1],nu[2]=(i=n[2])!==null&&i!==void 0?i:0,!Zl(s.localPosition,nu)&&(ns(s.localPosition,nu),a&&this.dirtyLocalTransform(t,s))}},{key:"translateLocal",value:function(t,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof n=="number"&&(n=bn(n,i,a));var s=t.transformable;Zl(n,id)||(d8(n,n,s.localRotation),mo(s.localPosition,s.localPosition,n),this.dirtyLocalTransform(t,s))}},{key:"setLocalRotation",value:function(t,n,i,a,s){var o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:!0;typeof n=="number"&&(n=gP(Qo,n,i,a,s));var A=t.transformable;Yc(A.localRotation,n),o&&this.dirtyLocalTransform(t,A)}},{key:"rotateLocal",value:function(t,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof n=="number"&&(n=bn(n,i,a));var s=t.transformable;qc(tS,n[0],n[1],n[2]),h2(s.localRotation,s.localRotation,tS),this.dirtyLocalTransform(t,s)}},{key:"setLocalScale",value:function(t,n){var i,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,s=t.transformable;ii(Ro,n[0],n[1],(i=n[2])!==null&&i!==void 0?i:s.localScale[2]),!Zl(Ro,s.localScale)&&(ns(s.localScale,Ro),a&&this.dirtyLocalTransform(t,s))}},{key:"scaleLocal",value:function(t,n){var i,a=t.transformable;o8(a.localScale,a.localScale,ii(Ro,n[0],n[1],(i=n[2])!==null&&i!==void 0?i:1)),this.dirtyLocalTransform(t,a)}},{key:"setLocalSkew",value:function(t,n,i){var a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;typeof n=="number"&&(n=y8(RV,n,i));var s=t.transformable;m8(s.localSkew,n),a&&this.dirtyLocalTransform(t,s)}},{key:"setLocalEulerAngles",value:function(t,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0,s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!0;typeof n=="number"&&(n=bn(n,i,a));var o=t.transformable;qc(o.localRotation,n[0],n[1],n[2]),s&&this.dirtyLocalTransform(t,o)}},{key:"setLocalTransform",value:function(t,n){var i=$h(DV,n),a=Gh(HV,n),s=xl($V,n);this.setLocalScale(t,s,!1),this.setLocalPosition(t,i,!1),this.setLocalRotation(t,a,void 0,void 0,void 0,!1),this.dirtyLocalTransform(t,t.transformable)}},{key:"resetLocalTransform",value:function(t){this.setLocalScale(t,PV,!1),this.setLocalPosition(t,id,!1),this.setLocalEulerAngles(t,id,void 0,void 0,!1),this.setLocalSkew(t,NV,void 0,!1),this.dirtyLocalTransform(t,t.transformable)}},{key:"getPosition",value:function(t){var n=t.transformable;return $h(n.position,this.getWorldTransform(t,n))}},{key:"getRotation",value:function(t){var n=t.transformable;return Gh(n.rotation,this.getWorldTransform(t,n))}},{key:"getScale",value:function(t){var n=t.transformable;return xl(n.scaling,this.getWorldTransform(t,n))}},{key:"getOrigin",value:function(t){return t.getGeometryBounds(),t.transformable.origin}},{key:"getWorldTransform",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:t.transformable;return!n.localDirtyFlag&&!n.dirtyFlag||(t.parentNode&&t.parentNode.transformable&&this.getWorldTransform(t.parentNode),this.internalUpdateTransform(t)),n.worldTransform}},{key:"setPosition",value:function(t,n){var i,a=t.transformable;if(Do[0]=n[0],Do[1]=n[1],Do[2]=(i=n[2])!==null&&i!==void 0?i:0,!Zl(this.getPosition(t),Do)){if(ns(a.position,Do),t.parentNode===null||!t.parentNode.transformable)ns(a.localPosition,Do);else{var s=t.parentNode.transformable;El(ad,s.worldTransform),ts(ad,ad),oi(a.localPosition,Do,ad)}this.dirtyLocalTransform(t,a)}}},{key:"translate",value:function(t,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof n=="number"&&(n=ii(Ro,n,i,a)),!Zl(n,id)&&(mo(Ro,this.getPosition(t),n),this.setPosition(t,Ro))}},{key:"setRotation",value:function(t,n,i,a,s){var o=t.transformable;if(typeof n=="number"&&(n=v8(n,i,a,s)),t.parentNode===null||!t.parentNode.transformable)this.setLocalRotation(t,n);else{var A=this.getRotation(t.parentNode);Yc(Qo,A),Jp(Qo,Qo),yo(o.localRotation,Qo,n),Vh(o.localRotation,o.localRotation),this.dirtyLocalTransform(t,o)}}},{key:"rotate",value:function(t,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof n=="number"&&(n=bn(n,i,a));var s=t.transformable;if(t.parentNode===null||!t.parentNode.transformable)this.rotateLocal(t,n);else{var o=Qo;qc(o,n[0],n[1],n[2]);var A=this.getRotation(t),l=this.getRotation(t.parentNode);Yc(sd,l),Jp(sd,sd),yo(o,sd,o),yo(s.localRotation,o,A),Vh(s.localRotation,s.localRotation),this.dirtyLocalTransform(t,s)}}},{key:"setOrigin",value:function(t,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof n=="number"&&(n=[n,i,a]);var s=t.transformable;if(!(n[0]===s.origin[0]&&n[1]===s.origin[1]&&n[2]===s.origin[2])){var o=s.origin;o[0]=n[0],o[1]=n[1],o[2]=n[2]||0,this.dirtyLocalTransform(t,s)}}},{key:"setEulerAngles",value:function(t,n){var i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:0;typeof n=="number"&&(n=bn(n,i,a));var s=t.transformable;if(t.parentNode===null||!t.parentNode.transformable)this.setLocalEulerAngles(t,n);else{qc(s.localRotation,n[0],n[1],n[2]);var o=this.getRotation(t.parentNode);Yc(eS,Jp(Qo,o)),h2(s.localRotation,s.localRotation,eS),this.dirtyLocalTransform(t,s)}}},{key:"getGeometryBounds",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,i=t,a=i.geometry;a.dirty&&Qe.styleValueRegistry.updateGeometry(t);var s=n?a.renderBounds:a.contentBounds||null;return s||new kn}},{key:"getTransformedGeometryBounds",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,i=arguments.length>2?arguments[2]:void 0,a=this.getGeometryBounds(t,n);if(!kn.isEmpty(a)){var s=i||new kn;return s.setFromTransformedAABB(a,this.getWorldTransform(t)),s}return null}},{key:"getBounds",value:function(t){var n=this,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a=t,s=a.renderable;if(!s.boundsDirty&&!i&&s.bounds)return s.bounds;if(!s.renderBoundsDirty&&i&&s.renderBounds)return s.renderBounds;var o=i?s.renderBounds:s.bounds,A=this.getTransformedGeometryBounds(t,i,o),l=t.childNodes;if(l.forEach(function(d){var h=n.getBounds(d,i);h&&(A?A.add(h):(A=o||new kn,A.update(h.center,h.halfExtents)))}),A||(A=new kn),i){var u=nU(t);if(u){var c=u.parsedStyle.clipPath.getBounds(i);A?c&&(A=c.intersection(A)):A.update(c.center,c.halfExtents)}}return i?(s.renderBounds=A,s.renderBoundsDirty=!1):(s.bounds=A,s.boundsDirty=!1),A}},{key:"getLocalBounds",value:function(t){if(t.parentNode){var n=UV;t.parentNode.transformable&&(n=ts(QV,this.getWorldTransform(t.parentNode)));var i=this.getBounds(t);if(!kn.isEmpty(i)){var a=new kn;return a.setFromTransformedAABB(i,n),a}}return this.getBounds(t)}},{key:"getBoundingClientRect",value:function(t){var n,i,a=this.getGeometryBounds(t);kn.isEmpty(a)||(i=new kn,i.setFromTransformedAABB(a,this.getWorldTransform(t)));var s=(n=t.ownerDocument)===null||n===void 0||(n=n.defaultView)===null||n===void 0?void 0:n.getContextService().getBoundingClientRect();if(i){var o=i.getMin(),A=Tt(o,2),l=A[0],u=A[1],c=i.getMax(),d=Tt(c,2),h=d[0],f=d[1];return new _l(l+((s==null?void 0:s.left)||0),u+((s==null?void 0:s.top)||0),h-l,f-u)}return new _l((s==null?void 0:s.left)||0,(s==null?void 0:s.top)||0,0,0)}},{key:"internalUpdateTransform",value:function(t){var n,i=(n=t.parentNode)===null||n===void 0?void 0:n.transformable;T2(t.transformable),uG(t.transformable,i)}},{key:"internalUpdateElement",value:function(t,n){var i,a,s,o,A=((i=t.ownerDocument)===null||i===void 0||(i=i.defaultView)===null||i===void 0||(i=i.getConfig())===null||i===void 0||(i=i.future)===null||i===void 0?void 0:i.experimentalAttributeUpdateOptimization)===!0,l=n[n.length-1],u=(l==null?void 0:l.transformDirty)||((a=t.transformable)===null||a===void 0?void 0:a.localDirtyFlag);if(t.transformable){var c;(c=t.transformable).dirtyFlag||(c.dirtyFlag=u)}if(this.internalUpdateTransform(t),u){var d;(d=t.dirty)===null||d===void 0||d.call(t,!0,!0)}var h=((s=t.renderable)===null||s===void 0?void 0:s.boundsDirty)||((o=t.renderable)===null||o===void 0?void 0:o.renderBoundsDirty);if((u||h)&&(l==null?void 0:l.shapeUpdated)===!1&&A)for(var f=n.length-1;f>=0;){var p,g,v=n[f];if(v.shapeUpdated)break;(p=(g=v.node).dirty)===null||p===void 0||p.call(g,!0,!0),v.shapeUpdated=!0,f-=1}return u}},{key:"syncHierarchy",value:function(t){for(var n,i,a=[t],s=t.parentNode?[{node:t.parentNode,transformDirty:((n=t.parentNode.transformable)===null||n===void 0?void 0:n.localDirtyFlag)||((i=t.parentNode.transformable)===null||i===void 0?void 0:i.dirtyFlag),shapeUpdated:!1}]:[];a.length>0;){for(var o=a.pop(),A=s[s.length-1];s.length>0&&o.parentNode!==A.node;)A=s.pop();var l=this.internalUpdateElement(o,s);if(o.childNodes.length>0){for(var u=o.childNodes.length-1;u>=0;u--)a.push(o.childNodes[u]);s.push({node:o,transformDirty:l,shapeUpdated:!1})}}}},{key:"dirtyLocalTransform",value:function(t,n){af(t)||n.localDirtyFlag||(n.localDirtyFlag=!0,n.dirtyFlag||this.dirtyWorldTransform(t,n))}},{key:"dirtyWorldTransform",value:function(t,n){this.dirtyWorldInternal(t,n),this.dirtyToRoot(t,!0)}},{key:"dirtyWorldInternal",value:function(t,n){var i,a=this,s=((i=t.ownerDocument)===null||i===void 0||(i=i.defaultView)===null||i===void 0||(i=i.getConfig())===null||i===void 0||(i=i.future)===null||i===void 0?void 0:i.experimentalAttributeUpdateOptimization)===!0;n.dirtyFlag||(n.dirtyFlag=!0,t.dirty(!0,!0),s||t.childNodes.forEach(function(o){var A=o.transformable;a.dirtyWorldInternal(o,A)}))}},{key:"dirtyToRoot",value:function(t){for(var n,i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a=t,s=((n=t.ownerDocument)===null||n===void 0||(n=n.defaultView)===null||n===void 0||(n=n.getConfig())===null||n===void 0||(n=n.future)===null||n===void 0?void 0:n.experimentalAttributeUpdateOptimization)===!0;a;){var o,A;if((o=(A=a).dirty)===null||o===void 0||o.call(A,!0,!0),s)break;a=a.parentNode}i&&t.forEach(function(c){var d;(d=c.dirty)===null||d===void 0||d.call(c,!0,!0)}),this.informDependentDisplayObjects(t);var l=t.mutations||[],u=l.find(function(c){return c.type==="attributes"&&c._boundsChangeData});u?u._boundsChangeData={affectChildren:u._boundsChangeData.affectChildren||i}:(u={type:"attributes",target:t,_boundsChangeData:{affectChildren:i}},l.push(u)),t.mutations=l}},{key:"dirtyFragment",value:function(t){var n,i,a=t.transformable;a&&(a.dirtyFlag=!0,a.localDirtyFlag=!0),(n=(i=t).dirty)===null||n===void 0||n.call(i,!0,!0);for(var s=t.childNodes.length,o=0;o<s;o++)this.dirtyFragment(t.childNodes[o])}},{key:"notifyMutationObservers",value:function(t){var n=new Set;if(t.getRoot().forEach(function(a){(a.mutations||[]).forEach(function(s){s.type==="attributes"&&s._boundsChangeData&&(s._boundsChangeData.affectChildren?a.forEach(function(o){var A=bt({},s);A.target=o,n.add(A)}):n.add(s))}),a.mutations=void 0}),n.size>0){var i=new gr(Vt.BOUNDS_CHANGED,{detail:Array.from(n)});t.dispatchEvent(i,!0,!0)}}},{key:"updateDisplayObjectDependency",value:function(t,n,i,a){if(n&&n!==i){var s=this.displayObjectDependencyMap.get(n);if(s&&s[t]){var o=s[t].indexOf(a);s[t].splice(o,1)}}if(i){var A=this.displayObjectDependencyMap.get(i);A||(this.displayObjectDependencyMap.set(i,{}),A=this.displayObjectDependencyMap.get(i)),A[t]||(A[t]=[]),A[t].push(a)}}},{key:"informDependentDisplayObjects",value:function(t){var n,i=this,a=this.displayObjectDependencyMap.get(t);if(a){var s=(n=t.ownerDocument)===null||n===void 0||(n=n.defaultView)===null||n===void 0||(n=n.getConfig())===null||n===void 0||(n=n.future)===null||n===void 0?void 0:n.experimentalCancelEventPropagation;Object.keys(a).forEach(function(o){a[o].forEach(function(A){i.dirtyToRoot(A,!0),A.dispatchEvent(new ls(Vt.ATTR_MODIFIED,A,i,i,o,ls.MODIFICATION,i,i),s,s),A.isCustomElement&&A.isConnected&&A.attributeChangedCallback&&A.attributeChangedCallback(o,i,i)})})}}}])})(),nS=(function(){function r(e){if(Ne(this,r),e<=0)throw new Error("LRU capacity must be a positive number.");this.capacity=e,this.cache=new Map}return Pe(r,[{key:"get",value:function(t){if(this.cache.has(t)){var n=this.cache.get(t);return this.cache.delete(t),this.cache.set(t,n),n}}},{key:"put",value:function(t,n){if(this.cache.has(t)&&this.cache.delete(t),this.cache.set(t,n),this.cache.size>this.capacity){var i=this.cache.keys().next().value;this.cache.delete(i)}}},{key:"len",value:function(){return this.cache.size}},{key:"clear",value:function(){this.cache.clear()}}])})(),Ho={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]},rS=/[a-zA-Z0-9\u00C0-\u00D6\u00D8-\u00f6\u00f8-\u00ff!"#$%&'()*+,-./:;]/,zV=/[!%),.:;?\]}¢°·'""†‡›℃∶、。〃〆〕〗〞﹚﹜!"%'),.:;?!]}~]/,VV=/[$(£¥·'"〈《「『【〔〖〝﹙﹛$(.[{£¥]/,KV=/[!),.:;?\]}¢·–—'"•"、。〆〞〕〉》」︰︱︲︳﹐﹑﹒﹓﹔﹕﹖﹘﹚﹜!),.:;?︶︸︺︼︾﹀﹂﹗]|}、]/,jV=/[([{£¥'"‵〈《「『〔〝︴﹙﹛({︵︷︹︻︽︿﹁﹃﹏]/,WV=/[)\]}〕〉》」』】〙〗〟'"⦆»ヽヾーァィゥェォッャュョヮヵヶぁぃぅぇぉっゃゅょゎゕゖㇰㇱㇲㇳㇴㇵㇶㇷㇸㇹㇺㇻㇼㇽㇾㇿ々〻‐゠–〜?!‼⁇⁈⁉・、:;,。.]/,qV=/[([{〔〈《「『【〘〖〝'"⦅«—...‥〳〴〵]/,YV=/[!%),.:;?\]}¢°'"†‡℃〆〈《「『〕!%),.:;?]}]/,XV=/[$([{£¥'"々〇〉》」〔$([{⦆¥₩#]/,ZV=new RegExp("".concat(zV.source,"|").concat(KV.source,"|").concat(WV.source,"|").concat(YV.source)),JV=new RegExp("".concat(VV.source,"|").concat(jV.source,"|").concat(qV.source,"|").concat(XV.source)),eK=(function(){function r(e){var t=this;Ne(this,r),this.fontMetricsCache={},this.shouldBreakByKinsokuShorui=function(n,i){return t.isBreakingSpace(i)?!1:!!(n&&(JV.exec(i)||ZV.exec(n)))},this.trimByKinsokuShorui=function(n){var i=Qt(n),a=i[i.length-2];if(!a)return n;var s=a[a.length-1];return i[i.length-2]=a.slice(0,-1),i[i.length-1]=s+i[i.length-1],i},this.runtime=e,this.charWidthCache=new nS(100)}return Pe(r,[{key:"measureFont",value:function(t,n){if(this.fontMetricsCache[t])return this.fontMetricsCache[t];var i={ascent:0,descent:0,fontSize:0},a=this.runtime.offscreenCanvasCreator.getOrCreateCanvas(n),s=this.runtime.offscreenCanvasCreator.getOrCreateContext(n,{willReadFrequently:!0});s.font=t;var o=Ho.MetricsString+Ho.BaselineSymbol,A=Math.ceil(s.measureText(o).width),l=Math.ceil(s.measureText(Ho.BaselineSymbol).width),u=Ho.HeightMultiplier*l;l=l*Ho.BaselineMultiplier|0,a.width=A,a.height=u,s.fillStyle="#f00",s.fillRect(0,0,A,u),s.font=t,s.textBaseline="alphabetic",s.fillStyle="#000",s.fillText(o,0,l);var c=s.getImageData(0,0,A||1,u||1).data,d=c.length,h=A*4,f=0,p=0,g=!1;for(f=0;f<l;++f){for(var v=0;v<h;v+=4)if(c[p+v]!==255){g=!0;break}if(!g)p+=h;else break}for(i.ascent=l-f,p=d-h,g=!1,f=u;f>l;--f){for(var m=0;m<h;m+=4)if(c[p+m]!==255){g=!0;break}if(!g)p-=h;else break}return i.descent=f-l,i.fontSize=i.ascent+i.descent,this.fontMetricsCache[t]=i,i}},{key:"measureText",value:function(t,n,i){var a=n.fontSize,s=a===void 0?16:a,o=n.wordWrap,A=o===void 0?!1:o,l=n.lineHeight,u=n.lineWidth,c=u===void 0?1:u,d=n.textBaseline,h=d===void 0?"alphabetic":d,f=n.textAlign,p=f===void 0?"start":f,g=n.letterSpacing,v=g===void 0?0:g,m=n.textPath;n.textPathSide,n.textPathStartOffset;var y=n.leading,w=y===void 0?0:y,B=Z2(n),x=this.measureFont(B,i);x.fontSize===0&&(x.fontSize=s,x.ascent=s);var k=this.runtime.offscreenCanvasCreator.getOrCreateContext(i);k.font=B,n.isOverflowing=!1;var _=A?this.wordWrap(t,n,i):t,T=_.split(/(?:\r\n|\r|\n)/),F=new Array(T.length),I=0;if(m){m.getTotalLength();for(var O=0;O<T.length;O++)k.measureText(T[O]).width+(T[O].length-1)*v}else{for(var P=0;P<T.length;P++){var G=k.measureText(T[P]).width+(T[P].length-1)*v;F[P]=G,I=Math.max(I,G)}var ee=I+c,te=l||x.fontSize+c,N=Math.max(te,x.fontSize+c)+(T.length-1)*(te+w);te+=w;var K=0;return h==="middle"?K=-N/2:h==="bottom"||h==="alphabetic"||h==="ideographic"?K=-N:(h==="top"||h==="hanging")&&(K=0),{font:B,width:ee,height:N,lines:T,lineWidths:F,lineHeight:te,maxLineWidth:I,fontProperties:x,lineMetrics:F.map(function(J,be){var re=0;return p==="center"||p==="middle"?re-=J/2:(p==="right"||p==="end")&&(re-=J),new _l(re-c/2,K+be*te,J+c,te)})}}}},{key:"wordWrap",value:function(t,n,i){var a=this,s=Array.from(t);if(s.length===0)return"";var o=this,A=n.wordWrapWidth,l=A===void 0?0:A,u=n.letterSpacing,c=u===void 0?0:u,d=n.maxLines,h=d===void 0?1/0:d,f=n.textOverflow,p=this.runtime.offscreenCanvasCreator.getOrCreateContext(i),g=l+c,v="";f==="ellipsis"?v="...":f&&f!=="clip"&&(v=f);var m=[""],y=0,w=0,B=-1,x=Z2(n),k=this.charWidthCache.get(x);k||(k=new nS(500),this.charWidthCache.put(x,k));var _=function(J){return a.getFromCache(J,c,k,p)},T=_(v);function F(K,J,be,re){for(;_(K)<re&&J<s.length-1&&!o.isNewline(s[J+1]);)J+=1,K+=s[J];for(;_(K)>re&&J>=be;)J-=1,K=K.slice(0,-1);return{lineTxt:K,txtLastCharIndex:J}}function I(K,J){if(!(T<=0||T>g)){if(!m[K]){m[K]=v;return}var be=F(m[K],J,B+1,g-T);m[K]=be.lineTxt+v}}for(var O=0;O<s.length;O++){var P=s[O],G=s[O-1],ee=s[O+1],te=_(P);if(this.isNewline(P)){if(y+1>=h){O<s.length-1&&I(y,O-1),n.isOverflowing=!0;break}B=O-1,y+=1,w=0,m[y]="";continue}if(te>g){I(y,O-1),n.isOverflowing=!0;break}if(w>0&&w+te>g){var N=F(m[y],O-1,B+1,g);if(N.txtLastCharIndex!==O-1){if(m[y]=N.lineTxt,N.txtLastCharIndex===s.length-1)break;O=N.txtLastCharIndex+1,P=s[O],G=s[O-1],ee=s[O+1],te=_(P)}if(y+1>=h){I(y,O-1),n.isOverflowing=!0;break}if(B=O-1,y+=1,w=0,m[y]="",this.isBreakingSpace(P))continue;this.canBreakInLastChar(P)||(m=this.trimToBreakable(m),w=this.sumTextWidthByCache(m[y]||"",_)),this.shouldBreakByKinsokuShorui(P,ee)&&(m=this.trimByKinsokuShorui(m),w+=_(G||""))}w+=te,m[y]+=P}return m.join(`
139
- `)}},{key:"isBreakingSpace",value:function(t){return typeof t!="string"?!1:Ho.BreakingSpaces.indexOf(t.charCodeAt(0))>=0}},{key:"isNewline",value:function(t){return typeof t!="string"?!1:Ho.Newlines.indexOf(t.charCodeAt(0))>=0}},{key:"trimToBreakable",value:function(t){var n=Qt(t),i=n[n.length-2],a=this.findBreakableIndex(i);if(a===-1||!i)return n;var s=i.slice(a,a+1),o=this.isBreakingSpace(s),A=a+1,l=a+(o?0:1);return n[n.length-1]+=i.slice(A,i.length),n[n.length-2]=i.slice(0,l),n}},{key:"canBreakInLastChar",value:function(t){return!(t&&rS.test(t))}},{key:"sumTextWidthByCache",value:function(t,n){return t.split("").reduce(function(i,a){return i+n(a)},0)}},{key:"findBreakableIndex",value:function(t){for(var n=t.length-1;n>=0;n--)if(!rS.test(t[n]))return n;return-1}},{key:"getFromCache",value:function(t,n,i,a){var s=i.get(t);if(typeof s!="number"){var o=t.length*n,A=a.measureText(t);s=A.width+o,i.put(t,s)}return s}},{key:"clearCache",value:function(){this.fontMetricsCache={},this.charWidthCache.clear()}}])})(),Qe={},tK=(function(r){var e=new CV,t=new xV;return r={},Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(r,Te.FRAGMENT,null),Te.CIRCLE,new wV),Te.ELLIPSE,new bV),Te.RECT,e),Te.IMAGE,e),Te.GROUP,new _V),Te.LINE,new BV),Te.TEXT,new SV(Qe)),Te.POLYLINE,t),Te.POLYGON,t),Ye(Ye(Ye(r,Te.PATH,new EV),Te.HTML,new kV),Te.MESH,null)})(),nK=(function(r){var e=new Iz,t=new wB;return r={},Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(r,Ke.PERCENTAGE,null),Ke.NUMBER,new Uz),Ke.ANGLE,new Fz),Ke.DEFINED_PATH,new Mz),Ke.PAINT,e),Ke.COLOR,e),Ke.FILTER,new Oz),Ke.LENGTH,t),Ke.LENGTH_PERCENTAGE,t),Ke.LENGTH_PERCENTAGE_12,new Lz),Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(r,Ke.LENGTH_PERCENTAGE_14,new Nz),Ke.COORDINATE,new wB),Ke.OFFSET_DISTANCE,new Rz),Ke.OPACITY_VALUE,new Qz),Ke.PATH,new Dz),Ke.LIST_OF_POINTS,new Hz),Ke.SHADOW_BLUR,new $z),Ke.TEXT,new Gz),Ke.TEXT_TRANSFORM,new zz),Ke.TRANSFORM,new vV),Ye(Ye(Ye(r,Ke.TRANSFORM_ORIGIN,new mV),Ke.Z_INDEX,new yV),Ke.MARKER,new Pz)})(),rK=function(){return typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{}};Qe.CameraContribution=PP;Qe.AnimationTimeline=null;Qe.EasingFunction=null;Qe.offscreenCanvasCreator=new YE;Qe.sceneGraphSelector=new OV;Qe.sceneGraphService=new GV(Qe);Qe.textService=new eK(Qe);Qe.geometryUpdaterFactory=tK;Qe.CSSPropertySyntaxFactory=nK;Qe.styleValueRegistry=new kz(Qe);Qe.layoutRegistry=null;Qe.globalThis=rK();Qe.enableStyleSyntax=!0;Qe.enableSizeAttenuation=!1;var iK=0,EB=new ls(Vt.INSERTED,null,"","","",0,"",""),xB=new ls(Vt.REMOVED,null,"","","",0,"",""),uU=new gr(Vt.DESTROY),aK=(function(r){function e(){var t;Ne(this,e);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return t=Ft(this,e,[].concat(i)),t.entity=iK++,t.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]},t.renderable={bounds:void 0,boundsDirty:!0,renderBounds:void 0,renderBoundsDirty:!0,dirtyRenderBounds:void 0,dirty:!1},t.geometry={contentBounds:void 0,renderBounds:void 0,dirty:!0},t.cullable={strategy:oG.Standard,visibilityPlaneMask:-1,visible:!0,enable:!0},t.sortable={dirty:!1,sorted:void 0,renderOrder:0,dirtyChildren:[],dirtyReason:void 0},t.namespaceURI="g",t.scrollLeft=0,t.scrollTop=0,t.clientTop=0,t.clientLeft=0,t.style={},t.computedStyle={},t.parsedStyle={},t.attributes={},t}return Mt(e,r),Pe(e,[{key:"dirty",value:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,i=arguments.length>1?arguments[1]:void 0;this.renderable.dirty=n,i!==void 0&&(this.renderable.boundsDirty=i,this.renderable.renderBoundsDirty=i,this.geometry.dirty=i)}},{key:"className",get:function(){return this.getAttribute("class")||""},set:function(n){this.setAttribute("class",n)}},{key:"classList",get:function(){return this.className.split(" ").filter(function(n){return n!==""})}},{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 n=this.parentNode.childNodes.indexOf(this);return this.parentNode.childNodes[n+1]||null}return null}},{key:"previousSibling",get:function(){if(this.parentNode){var n=this.parentNode.childNodes.indexOf(this);return this.parentNode.childNodes[n-1]||null}return null}},{key:"cloneNode",value:function(n){throw new Error(pn)}},{key:"appendChild",value:function(n,i){var a;if(n.destroyed)throw new Error(Y$);return Qe.sceneGraphService.attach(n,this,i),(a=this.ownerDocument)!==null&&a!==void 0&&a.defaultView&&(!af(this)&&n.nodeName===Te.FRAGMENT?this.ownerDocument.defaultView.mountFragment(n):this.ownerDocument.defaultView.mountChildren(n)),this.isMutationObserved&&(EB.relatedNode=this,n.dispatchEvent(EB)),n}},{key:"insertBefore",value:function(n,i){if(!i)this.appendChild(n);else{n.parentElement&&n.parentElement.removeChild(n);var a=this.childNodes.indexOf(i);a===-1?this.appendChild(n):this.appendChild(n,a)}return n}},{key:"replaceChild",value:function(n,i){var a=this.childNodes.indexOf(i);return this.removeChild(i),this.appendChild(n,a),i}},{key:"removeChild",value:function(n){var i,a,s=((i=this.ownerDocument)===null||i===void 0||(i=i.defaultView)===null||i===void 0||(i=i.getConfig().future)===null||i===void 0?void 0:i.experimentalCancelEventPropagation)===!0;return xB.relatedNode=this,n.dispatchEvent(xB,s,s),(a=n.ownerDocument)!==null&&a!==void 0&&a.defaultView&&n.ownerDocument.defaultView.unmountChildren(n),Qe.sceneGraphService.detach(n),n}},{key:"removeChildren",value:function(){for(var n=this.childNodes.length-1;n>=0;n--){var i=this.childNodes[n];this.removeChild(i)}}},{key:"destroyChildren",value:function(){for(var n=this.childNodes.length-1;n>=0;n--){var i=this.childNodes[n];i.childNodes.length>0&&i.destroyChildren(),i.destroy()}}},{key:"matches",value:function(n){return Qe.sceneGraphService.matches(n,this)}},{key:"getElementById",value:function(n){return Qe.sceneGraphService.querySelector("#".concat(n),this)}},{key:"getElementsByName",value:function(n){return Qe.sceneGraphService.querySelectorAll('[name="'.concat(n,'"]'),this)}},{key:"getElementsByClassName",value:function(n){return Qe.sceneGraphService.querySelectorAll(".".concat(n),this)}},{key:"getElementsByTagName",value:function(n){return Qe.sceneGraphService.querySelectorAll(n,this)}},{key:"querySelector",value:function(n){return Qe.sceneGraphService.querySelector(n,this)}},{key:"querySelectorAll",value:function(n){return Qe.sceneGraphService.querySelectorAll(n,this)}},{key:"closest",value:function(n){var i=this;do{if(Qe.sceneGraphService.matches(n,i))return i;i=i.parentElement}while(i!==null);return null}},{key:"find",value:function(n){var i=this,a=null;return this.forEach(function(s){return s!==i&&n(s)?(a=s,!1):!0}),a}},{key:"findAll",value:function(n){var i=this,a=[];return this.forEach(function(s){s!==i&&n(s)&&a.push(s)}),a}},{key:"after",value:function(){var n=this;if(this.parentNode){for(var i=this.parentNode.childNodes.indexOf(this),a=arguments.length,s=new Array(a),o=0;o<a;o++)s[o]=arguments[o];s.forEach(function(A,l){var u;return(u=n.parentNode)===null||u===void 0?void 0:u.appendChild(A,i+l+1)})}}},{key:"before",value:function(){if(this.parentNode){for(var n,i=this.parentNode.childNodes.indexOf(this),a=arguments.length,s=new Array(a),o=0;o<a;o++)s[o]=arguments[o];var A=s[0],l=Hh(s).slice(1);this.parentNode.appendChild(A,i),(n=A).after.apply(n,Qt(l))}}},{key:"replaceWith",value:function(){this.after.apply(this,arguments),this.remove()}},{key:"append",value:function(){for(var n=this,i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];a.forEach(function(o){return n.appendChild(o)})}},{key:"prepend",value:function(){for(var n=this,i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];a.forEach(function(o,A){return n.appendChild(o,A)})}},{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 n,i=((n=this.ownerDocument)===null||n===void 0||(n=n.defaultView)===null||n===void 0||(n=n.getConfig().future)===null||n===void 0?void 0:n.experimentalCancelEventPropagation)===!0;this.destroyChildren(),this.dispatchEvent(uU,i,i),this.remove(),this.emitter.removeAllListeners(),this.destroyed=!0}},{key:"getGeometryBounds",value:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;return Qe.sceneGraphService.getGeometryBounds(this,n)}},{key:"getTransformedGeometryBounds",value:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1;return Qe.sceneGraphService.getTransformedGeometryBounds(this,n)}},{key:"getBounds",value:function(){return Qe.sceneGraphService.getBounds(this)}},{key:"getRenderBounds",value:function(){return Qe.sceneGraphService.getBounds(this,!0)}},{key:"getLocalBounds",value:function(){return Qe.sceneGraphService.getLocalBounds(this)}},{key:"getBoundingClientRect",value:function(){return Qe.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(n){if(typeof n!="symbol"){var i=this.attributes[n];return i}}},{key:"hasAttribute",value:function(n){return this.getAttributeNames().includes(n)}},{key:"hasAttributes",value:function(){return!!this.getAttributeNames().length}},{key:"removeAttribute",value:function(n){this.setAttribute(n,null),delete this.attributes[n]}},{key:"setAttribute",value:function(n,i){this.attributes[n]=i}},{key:"getAttributeNS",value:function(n,i){throw new Error(pn)}},{key:"getAttributeNode",value:function(n){throw new Error(pn)}},{key:"getAttributeNodeNS",value:function(n,i){throw new Error(pn)}},{key:"hasAttributeNS",value:function(n,i){throw new Error(pn)}},{key:"removeAttributeNS",value:function(n,i){throw new Error(pn)}},{key:"removeAttributeNode",value:function(n){throw new Error(pn)}},{key:"setAttributeNS",value:function(n,i,a){throw new Error(pn)}},{key:"setAttributeNode",value:function(n){throw new Error(pn)}},{key:"setAttributeNodeNS",value:function(n){throw new Error(pn)}},{key:"toggleAttribute",value:function(n,i){throw new Error(pn)}}])})(Rn);function Zt(r){return!!(r!=null&&r.nodeName)}var sK=Qe.globalThis.Proxy?Qe.globalThis.Proxy:function(){},Ya=new ls(Vt.ATTR_MODIFIED,null,null,null,null,ls.MODIFICATION,null,null),ru=Ut(),oK=fr(),Cn=(function(r){function e(t){var n;return Ne(this,e),n=Ft(this,e),n.isCustomElement=!1,n.isMutationObserved=!1,n.activeAnimations=[],n.config=t,n.id=t.id||"",n.name=t.name||"",(t.className||t.class)&&(n.className=t.className||t.class),n.nodeName=t.type||Te.GROUP,t.initialParsedStyle&&Object.assign(n.parsedStyle,t.initialParsedStyle),n.initAttributes(t.style),Qe.enableStyleSyntax&&(n.style=new sK({setProperty:function(a,s){n.setAttribute(a,s)},getPropertyValue:function(a){return n.getAttribute(a)},removeProperty:function(a){n.removeAttribute(a)},item:function(){return""}},{get:function(a,s){return a[s]!==void 0?a[s]:n.getAttribute(s)},set:function(a,s,o){return n.setAttribute(s,o),!0}})),n}return Mt(e,r),Pe(e,[{key:"destroy",value:function(){Yh(e,"destroy",this)([]),this.getAnimations().forEach(function(n){n.cancel()})}},{key:"cloneNode",value:function(n,i){var a=bt({},this.attributes);for(var s in a){var o=a[s];Zt(o)&&s!=="clipPath"&&s!=="offsetPath"&&s!=="textPath"&&(a[s]=o.cloneNode(n)),i&&(a[s]=i(s,o))}var A=new this.constructor(bt(bt({},this.config),{},{style:a}));return A.setLocalTransform(this.getLocalTransform()),n&&this.children.forEach(function(l){if(!l.style.isMarker){var u=l.cloneNode(n);A.appendChild(u)}}),A}},{key:"initAttributes",value:function(){var n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i={forceUpdateGeometry:!0};Qe.styleValueRegistry.processProperties(this,n,i),this.dirty()}},{key:"setAttribute",value:function(n,i){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!0;Bt(i)||(a||i!==this.attributes[n])&&(this.internalSetAttribute(n,i,{memoize:s}),Yh(e,"setAttribute",this)([n,i]))}},{key:"setAttributes",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=i.skipDispatchAttrModifiedEvent,s=a===void 0?!1:a,o,A;if(s||(o=bt({},this.attributes),A=bt({},this.parsedStyle)),Qe.styleValueRegistry.processProperties(this,n,i),this.dirty(),!s)for(var l in n)this.dispatchAttrModifiedEvent(l,o[l],n[l],A[l])}},{key:"internalSetAttribute",value:function(n,i){var a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{},s=this.attributes[n],o=this.parsedStyle[n];Qe.styleValueRegistry.processProperties(this,Ye({},n,i),a),this.dirty(),this.dispatchAttrModifiedEvent(n,s,i,o)}},{key:"dispatchAttrModifiedEvent",value:function(n,i,a,s){var o=this.parsedStyle[n];if(this.isConnected)if(Ya.relatedNode=this,Ya.prevValue=i,Ya.newValue=a,Ya.attrName=n,Ya.prevParsedValue=s,Ya.newParsedValue=o,this.isMutationObserved)this.dispatchEvent(Ya);else{var A,l=((A=this.ownerDocument.defaultView.getConfig().future)===null||A===void 0?void 0:A.experimentalCancelEventPropagation)===!0;Ya.target=this,this.ownerDocument.defaultView.dispatchEvent(Ya,!0,l)}if(this.isCustomElement&&this.isConnected||!this.isCustomElement){var u,c;(u=(c=this).attributeChangedCallback)===null||u===void 0||u.call(c,n,i,a,s,o)}}},{key:"getBBox",value:function(){var n=this.getBounds(),i=n.getMin(),a=Tt(i,2),s=a[0],o=a[1],A=n.getMax(),l=Tt(A,2),u=l[0],c=l[1];return new _l(s,o,u-s,c-o)}},{key:"setOrigin",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Qe.sceneGraphService.setOrigin(this,vi(n,i,a,!1)),this}},{key:"getOrigin",value:function(){return Qe.sceneGraphService.getOrigin(this)}},{key:"setPosition",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Qe.sceneGraphService.setPosition(this,vi(n,i,a,!1)),this}},{key:"setLocalPosition",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Qe.sceneGraphService.setLocalPosition(this,vi(n,i,a,!1)),this}},{key:"translate",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Qe.sceneGraphService.translate(this,vi(n,i,a,!1)),this}},{key:"translateLocal",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return Qe.sceneGraphService.translateLocal(this,vi(n,i,a,!1)),this}},{key:"getPosition",value:function(){return Qe.sceneGraphService.getPosition(this)}},{key:"getLocalPosition",value:function(){return Qe.sceneGraphService.getLocalPosition(this)}},{key:"scale",value:function(n,i,a){return this.scaleLocal(n,i,a)}},{key:"scaleLocal",value:function(n,i,a){return typeof n=="number"&&(i=i||n,a=a||n,n=vi(n,i,a,!1)),Qe.sceneGraphService.scaleLocal(this,n),this}},{key:"setLocalScale",value:function(n,i,a){return typeof n=="number"&&(i=i||n,a=a||n,n=vi(n,i,a,!1)),Qe.sceneGraphService.setLocalScale(this,n),this}},{key:"getLocalScale",value:function(){return Qe.sceneGraphService.getLocalScale(this)}},{key:"getScale",value:function(){return Qe.sceneGraphService.getScale(this)}},{key:"getEulerAngles",value:function(){var n=sv(ru,Qe.sceneGraphService.getWorldTransform(this)),i=Tt(n,3),a=i[2];return ki(a)}},{key:"getLocalEulerAngles",value:function(){var n=sv(ru,Qe.sceneGraphService.getLocalRotation(this)),i=Tt(n,3),a=i[2];return ki(a)}},{key:"setEulerAngles",value:function(n){return Qe.sceneGraphService.setEulerAngles(this,0,0,n),this}},{key:"setLocalEulerAngles",value:function(n){return Qe.sceneGraphService.setLocalEulerAngles(this,0,0,n),this}},{key:"rotateLocal",value:function(n,i,a){return ut(i)&&ut(a)?Qe.sceneGraphService.rotateLocal(this,0,0,n):Qe.sceneGraphService.rotateLocal(this,n,i,a),this}},{key:"rotate",value:function(n,i,a){return ut(i)&&ut(a)?Qe.sceneGraphService.rotate(this,0,0,n):Qe.sceneGraphService.rotate(this,n,i,a),this}},{key:"setRotation",value:function(n,i,a,s){return Qe.sceneGraphService.setRotation(this,n,i,a,s),this}},{key:"setLocalRotation",value:function(n,i,a,s){return Qe.sceneGraphService.setLocalRotation(this,n,i,a,s),this}},{key:"setLocalSkew",value:function(n,i){return Qe.sceneGraphService.setLocalSkew(this,n,i),this}},{key:"getRotation",value:function(){return Qe.sceneGraphService.getRotation(this)}},{key:"getLocalRotation",value:function(){return Qe.sceneGraphService.getLocalRotation(this)}},{key:"getLocalSkew",value:function(){return Qe.sceneGraphService.getLocalSkew(this)}},{key:"getLocalTransform",value:function(){return Qe.sceneGraphService.getLocalTransform(this)}},{key:"getWorldTransform",value:function(){return Qe.sceneGraphService.getWorldTransform(this)}},{key:"setLocalTransform",value:function(n){return Qe.sceneGraphService.setLocalTransform(this,n),this}},{key:"resetLocalTransform",value:function(){Qe.sceneGraphService.resetLocalTransform(this)}},{key:"getAnimations",value:function(){return this.activeAnimations}},{key:"animate",value:function(n,i){var a,s=(a=this.ownerDocument)===null||a===void 0?void 0:a.timeline;return s?s.play(this,n,i):null}},{key:"isVisible",value:function(){var n;return((n=this.parsedStyle)===null||n===void 0?void 0:n.visibility)!=="hidden"}},{key:"interactive",get:function(){return this.isInteractive()},set:function(n){this.style.pointerEvents=n?"auto":"none"}},{key:"isInteractive",value:function(){var n;return((n=this.parsedStyle)===null||n===void 0?void 0:n.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,Qt(this.parentNode.children.map(function(n){return Number(n.style.zIndex)})))+1),this}},{key:"toBack",value:function(){return this.parentNode&&(this.style.zIndex=Math.min.apply(Math,Qt(this.parentNode.children.map(function(n){return Number(n.style.zIndex)})))-1),this}},{key:"getConfig",value:function(){return this.config}},{key:"attr",value:function(){for(var n=this,i=arguments.length,a=new Array(i),s=0;s<i;s++)a[s]=arguments[s];var o=a[0],A=a[1];return o?ai(o)?(Object.keys(o).forEach(function(l){n.setAttribute(l,o[l])}),this):a.length===2?(this.setAttribute(o,A),this):this.attributes[o]:this.attributes}},{key:"getMatrix",value:function(n){var i=n||this.getWorldTransform(),a=$h(ru,i),s=Tt(a,2),o=s[0],A=s[1],l=xl(ru,i),u=Tt(l,2),c=u[0],d=u[1],h=Gh(oK,i),f=sv(ru,h),p=Tt(f,3),g=p[0],v=p[2];return nG(g||v,o,A,c,d)}},{key:"getLocalMatrix",value:function(){return this.getMatrix(this.getLocalTransform())}},{key:"setMatrix",value:function(n){var i=S2(n),a=Tt(i,5),s=a[0],o=a[1],A=a[2],l=a[3],u=a[4];this.setEulerAngles(u).setPosition(s,o).setLocalScale(A,l)}},{key:"setLocalMatrix",value:function(n){var i=S2(n),a=Tt(i,5),s=a[0],o=a[1],A=a[2],l=a[3],u=a[4];this.setLocalEulerAngles(u).setLocalPosition(s,o).setLocalScale(A,l)}},{key:"show",value:function(){this.forEach(function(n){n.style.visibility="visible"})}},{key:"hide",value:function(){this.forEach(function(n){n.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(n){return this.children[n]||null}},{key:"add",value:function(n,i){return this.appendChild(n,i)}},{key:"set",value:function(n,i){this.config[n]=i}},{key:"get",value:function(n){return this.config[n]}},{key:"moveTo",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(n,i,a),this}},{key:"move",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,a=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0;return this.setPosition(n,i,a),this}},{key:"setZIndex",value:function(n){return this.style.zIndex=n,this}}])})(aK);Cn.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"]);var us=(function(r){function e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Ne(this,e),Ft(this,e,[bt({type:Te.CIRCLE},t)])}return Mt(e,r),Pe(e)})(Cn);us.PARSED_STYLE_LIST=new Set([].concat(Qt(Cn.PARSED_STYLE_LIST),["cx","cy","cz","r","isBillboard","isSizeAttenuation"]));var AK=["style"],Ec=(function(r){function e(){var t,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=n.style,a=as(n,AK);return Ne(this,e),t=Ft(this,e,[bt({style:i},a)]),t.isCustomElement=!0,t}return Mt(e,r),Pe(e)})(Cn);Ec.PARSED_STYLE_LIST=new Set(["class","className","clipPath","cursor","draggable","droppable","opacity","pointerEvents","transform","transformOrigin","zIndex","visibility"]);var xc=(function(r){function e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Ne(this,e),Ft(this,e,[bt({type:Te.ELLIPSE},t)])}return Mt(e,r),Pe(e)})(Cn);xc.PARSED_STYLE_LIST=new Set([].concat(Qt(Cn.PARSED_STYLE_LIST),["cx","cy","cz","rx","ry","isBillboard","isSizeAttenuation"]));var lK=(function(r){function e(){return Ne(this,e),Ft(this,e,[{type:Te.FRAGMENT}])}return Mt(e,r),Pe(e)})(Cn);lK.PARSED_STYLE_LIST=new Set(["class","className"]);var Mr=(function(r){function e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Ne(this,e),Ft(this,e,[bt({type:Te.GROUP},t)])}return Mt(e,r),Pe(e)})(Cn);Mr.PARSED_STYLE_LIST=new Set(["class","className","clipPath","cursor","draggable","droppable","opacity","pointerEvents","transform","transformOrigin","zIndex","visibility"]);var uK=["style"],xA=(function(r){function e(){var t,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=n.style,a=as(n,uK);return Ne(this,e),t=Ft(this,e,[bt({type:Te.HTML,style:i},a)]),t.cullable.enable=!1,t}return Mt(e,r),Pe(e,[{key:"getDomElement",value:function(){return this.parsedStyle.$el}},{key:"getClientRects",value:function(){return[this.getBoundingClientRect()]}},{key:"getLocalBounds",value:function(){if(this.parentNode){var n=ts(wn(),this.parentNode.getWorldTransform()),i=this.getBounds();if(!kn.isEmpty(i)){var a=new kn;return a.setFromTransformedAABB(i,n),a}}return this.getBounds()}}])})(Cn);xA.PARSED_STYLE_LIST=new Set([].concat(Qt(Cn.PARSED_STYLE_LIST),["x","y","$el","innerHTML","width","height"]));var Cc=(function(r){function e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Ne(this,e),Ft(this,e,[bt({type:Te.IMAGE},t)])}return Mt(e,r),Pe(e)})(Cn);Cc.PARSED_STYLE_LIST=new Set([].concat(Qt(Cn.PARSED_STYLE_LIST),["x","y","z","src","width","height","isBillboard","billboardRotation","isSizeAttenuation","keepAspectRatio"]));var cK=["style"],vA=(function(r){function e(){var t,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=n.style,a=as(n,cK);Ne(this,e),t=Ft(this,e,[bt({type:Te.LINE,style:bt({x1:0,y1:0,x2:0,y2:0,z1:0,z2:0},i)},a)]),t.markerStartAngle=0,t.markerEndAngle=0;var s=t.parsedStyle,o=s.markerStart,A=s.markerEnd;return o&&Zt(o)&&(t.markerStartAngle=o.getLocalEulerAngles(),t.appendChild(o)),A&&Zt(A)&&(t.markerEndAngle=A.getLocalEulerAngles(),t.appendChild(A)),t.transformMarker(!0),t.transformMarker(!1),t}return Mt(e,r),Pe(e,[{key:"attributeChangedCallback",value:function(n,i,a,s,o){n==="x1"||n==="y1"||n==="x2"||n==="y2"||n==="markerStartOffset"||n==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):n==="markerStart"?(s&&Zt(s)&&(this.markerStartAngle=0,s.remove()),o&&Zt(o)&&(this.markerStartAngle=o.getLocalEulerAngles(),this.appendChild(o),this.transformMarker(!0))):n==="markerEnd"&&(s&&Zt(s)&&(this.markerEndAngle=0,s.remove()),o&&Zt(o)&&(this.markerEndAngle=o.getLocalEulerAngles(),this.appendChild(o),this.transformMarker(!1)))}},{key:"transformMarker",value:function(n){var i=this.parsedStyle,a=i.markerStart,s=i.markerEnd,o=i.markerStartOffset,A=i.markerEndOffset,l=i.x1,u=i.x2,c=i.y1,d=i.y2,h=n?a:s;if(!(!h||!Zt(h))){var f=0,p,g,v,m,y,w;n?(v=l,m=c,p=u-l,g=d-c,y=o||0,w=this.markerStartAngle):(v=u,m=d,p=l-u,g=c-d,y=A||0,w=this.markerEndAngle),f=Math.atan2(g,p),h.setLocalEulerAngles(f*180/Math.PI+w),h.setLocalPosition(v+Math.cos(f)*y,m+Math.sin(f)*y)}}},{key:"getPoint",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a=this.parsedStyle,s=a.x1,o=a.y1,A=a.x2,l=a.y2,u=IP(s,o,A,l,n),c=u.x,d=u.y,h=oi(Ut(),bn(c,d,0),i?this.getWorldTransform():this.getLocalTransform());return new zr(h[0],h[1])}},{key:"getPointAtLength",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(n/this.getTotalLength(),i)}},{key:"getTotalLength",value:function(){var n=this.parsedStyle,i=n.x1,a=n.y1,s=n.x2,o=n.y2;return MP(i,a,s,o)}}])})(Cn);vA.PARSED_STYLE_LIST=new Set([].concat(Qt(Cn.PARSED_STYLE_LIST),["x1","y1","x2","y2","z1","z2","isBillboard","isSizeAttenuation","markerStart","markerEnd","markerStartOffset","markerEndOffset"]));var dK=["style"],Ai=(function(r){function e(){var t,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=n.style,a=as(n,dK);Ne(this,e),t=Ft(this,e,[bt({type:Te.PATH,style:i,initialParsedStyle:{miterLimit:4,d:bt({},UP)}},a)]),t.markerStartAngle=0,t.markerEndAngle=0,t.markerMidList=[];var s=t.parsedStyle,o=s.markerStart,A=s.markerEnd,l=s.markerMid;return o&&Zt(o)&&(t.markerStartAngle=o.getLocalEulerAngles(),t.appendChild(o)),l&&Zt(l)&&t.placeMarkerMid(l),A&&Zt(A)&&(t.markerEndAngle=A.getLocalEulerAngles(),t.appendChild(A)),t.transformMarker(!0),t.transformMarker(!1),t}return Mt(e,r),Pe(e,[{key:"attributeChangedCallback",value:function(n,i,a,s,o){n==="d"?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):n==="markerStartOffset"||n==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):n==="markerStart"?(s&&Zt(s)&&(this.markerStartAngle=0,s.remove()),o&&Zt(o)&&(this.markerStartAngle=o.getLocalEulerAngles(),this.appendChild(o),this.transformMarker(!0))):n==="markerEnd"?(s&&Zt(s)&&(this.markerEndAngle=0,s.remove()),o&&Zt(o)&&(this.markerEndAngle=o.getLocalEulerAngles(),this.appendChild(o),this.transformMarker(!1))):n==="markerMid"&&this.placeMarkerMid(o)}},{key:"transformMarker",value:function(n){var i=this.parsedStyle,a=i.markerStart,s=i.markerEnd,o=i.markerStartOffset,A=i.markerEndOffset,l=n?a:s;if(!(!l||!Zt(l))){var u=0,c,d,h,f,p,g;if(n){var v=this.getStartTangent(),m=Tt(v,2),y=m[0],w=m[1];h=w[0],f=w[1],c=y[0]-w[0],d=y[1]-w[1],p=o||0,g=this.markerStartAngle}else{var B=this.getEndTangent(),x=Tt(B,2),k=x[0],_=x[1];h=_[0],f=_[1],c=k[0]-_[0],d=k[1]-_[1],p=A||0,g=this.markerEndAngle}u=Math.atan2(d,c),l.setLocalEulerAngles(u*180/Math.PI+g),l.setLocalPosition(h+Math.cos(u)*p,f+Math.sin(u)*p)}}},{key:"placeMarkerMid",value:function(n){var i=this.parsedStyle.d.segments;if(this.markerMidList.forEach(function(u){u.remove()}),n&&Zt(n))for(var a=1;a<i.length-1;a++){var s=Tt(i[a].currentPoint,2),o=s[0],A=s[1],l=a===1?n:n.cloneNode(!0);this.markerMidList.push(l),this.appendChild(l),l.setLocalPosition(o,A)}}},{key:"getTotalLength",value:function(){return mB(this)}},{key:"getPointAtLength",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a=this.parsedStyle.d.absolutePath,s=x$(a,n),o=s.x,A=s.y,l=oi(Ut(),bn(o,A,0),i?this.getWorldTransform():this.getLocalTransform());return new zr(l[0],l[1])}},{key:"getPoint",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPointAtLength(n*mB(this),i)}},{key:"getStartTangent",value:function(){var n=this.parsedStyle.d.segments,i=[];if(n.length>1){var a=n[0].currentPoint,s=n[1].currentPoint,o=n[1].startTangent;i=[],o?(i.push([a[0]-o[0],a[1]-o[1]]),i.push([a[0],a[1]])):(i.push([s[0],s[1]]),i.push([a[0],a[1]]))}return i}},{key:"getEndTangent",value:function(){var n=this.parsedStyle.d.segments,i=n.length,a=[];if(i>1){var s=n[i-2].currentPoint,o=n[i-1].currentPoint,A=n[i-1].endTangent;a=[],A?(a.push([o[0]-A[0],o[1]-A[1]]),a.push([o[0],o[1]])):(a.push([s[0],s[1]]),a.push([o[0],o[1]]))}return a}}])})(Cn);Ai.PARSED_STYLE_LIST=new Set([].concat(Qt(Cn.PARSED_STYLE_LIST),["d","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isBillboard","isSizeAttenuation"]));var hK=["style"],CA=(function(r){function e(){var t,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},i=n.style,a=as(n,hK);Ne(this,e),t=Ft(this,e,[bt({type:Te.POLYGON,style:i,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!0}},a)]),t.markerStartAngle=0,t.markerEndAngle=0,t.markerMidList=[];var s=t.parsedStyle,o=s.markerStart,A=s.markerEnd,l=s.markerMid;return o&&Zt(o)&&(t.markerStartAngle=o.getLocalEulerAngles(),t.appendChild(o)),l&&Zt(l)&&t.placeMarkerMid(l),A&&Zt(A)&&(t.markerEndAngle=A.getLocalEulerAngles(),t.appendChild(A)),t.transformMarker(!0),t.transformMarker(!1),t}return Mt(e,r),Pe(e,[{key:"attributeChangedCallback",value:function(n,i,a,s,o){n==="points"?(this.transformMarker(!0),this.transformMarker(!1),this.placeMarkerMid(this.parsedStyle.markerMid)):n==="markerStartOffset"||n==="markerEndOffset"?(this.transformMarker(!0),this.transformMarker(!1)):n==="markerStart"?(s&&Zt(s)&&(this.markerStartAngle=0,s.remove()),o&&Zt(o)&&(this.markerStartAngle=o.getLocalEulerAngles(),this.appendChild(o),this.transformMarker(!0))):n==="markerEnd"?(s&&Zt(s)&&(this.markerEndAngle=0,s.remove()),o&&Zt(o)&&(this.markerEndAngle=o.getLocalEulerAngles(),this.appendChild(o),this.transformMarker(!1))):n==="markerMid"&&this.placeMarkerMid(o)}},{key:"transformMarker",value:function(n){var i=this.parsedStyle,a=i.markerStart,s=i.markerEnd,o=i.markerStartOffset,A=i.markerEndOffset,l=i.points,u=l||{},c=u.points,d=n?a:s;if(!(!d||!Zt(d)||!c)){var h=0,f,p,g,v,m,y;if(g=c[0][0],v=c[0][1],n)f=c[1][0]-c[0][0],p=c[1][1]-c[0][1],m=o||0,y=this.markerStartAngle;else{var w=c.length;this.parsedStyle.isClosed?(f=c[w-1][0]-c[0][0],p=c[w-1][1]-c[0][1]):(g=c[w-1][0],v=c[w-1][1],f=c[w-2][0]-c[w-1][0],p=c[w-2][1]-c[w-1][1]),m=A||0,y=this.markerEndAngle}h=Math.atan2(p,f),d.setLocalEulerAngles(h*180/Math.PI+y),d.setLocalPosition(g+Math.cos(h)*m,v+Math.sin(h)*m)}}},{key:"placeMarkerMid",value:function(n){var i=this.parsedStyle.points,a=i||{},s=a.points;if(this.markerMidList.forEach(function(c){c.remove()}),this.markerMidList=[],n&&Zt(n)&&s)for(var o=1;o<(this.parsedStyle.isClosed?s.length:s.length-1);o++){var A=s[o][0],l=s[o][1],u=o===1?n:n.cloneNode(!0);this.markerMidList.push(u),this.appendChild(u),u.setLocalPosition(A,l)}}}])})(Cn);CA.PARSED_STYLE_LIST=new Set([].concat(Qt(Cn.PARSED_STYLE_LIST),["points","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isClosed","isBillboard","isSizeAttenuation"]));var fK=["style"],qf=(function(r){function e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=t.style,i=as(t,fK);return Ne(this,e),Ft(this,e,[bt({type:Te.POLYLINE,style:n,initialParsedStyle:{points:{points:[],totalLength:0,segments:[]},miterLimit:4,isClosed:!1}},i)])}return Mt(e,r),Pe(e,[{key:"getTotalLength",value:function(){return az(this)}},{key:"getPointAtLength",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;return this.getPoint(n/this.getTotalLength(),i)}},{key:"getPoint",value:function(n){var i=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,a=this.parsedStyle.points.points;if(this.parsedStyle.points.segments.length===0){var s=[],o=0,A,l,u=this.getTotalLength();a.forEach(function(v,m){a[m+1]&&(A=[0,0],A[0]=o/u,l=MP(v[0],v[1],a[m+1][0],a[m+1][1]),o+=l,A[1]=o/u,s.push(A))}),this.parsedStyle.points.segments=s}var c=0,d=0;this.parsedStyle.points.segments.forEach(function(v,m){n>=v[0]&&n<=v[1]&&(c=(n-v[0])/(v[1]-v[0]),d=m)});var h=IP(a[d][0],a[d][1],a[d+1][0],a[d+1][1],c),f=h.x,p=h.y,g=oi(Ut(),bn(f,p,0),i?this.getWorldTransform():this.getLocalTransform());return new zr(g[0],g[1])}},{key:"getStartTangent",value:function(){var n=this.parsedStyle.points.points,i=[];return i.push([n[1][0],n[1][1]]),i.push([n[0][0],n[0][1]]),i}},{key:"getEndTangent",value:function(){var n=this.parsedStyle.points.points,i=n.length-1,a=[];return a.push([n[i-1][0],n[i-1][1]]),a.push([n[i][0],n[i][1]]),a}}])})(CA);qf.PARSED_STYLE_LIST=new Set([].concat(Qt(CA.PARSED_STYLE_LIST),["points","markerStart","markerMid","markerEnd","markerStartOffset","markerEndOffset","isBillboard"]));var jr=(function(r){function e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Ne(this,e),Ft(this,e,[bt({type:Te.RECT},t)])}return Mt(e,r),Pe(e)})(Cn);jr.PARSED_STYLE_LIST=new Set([].concat(Qt(Cn.PARSED_STYLE_LIST),["x","y","z","width","height","isBillboard","isSizeAttenuation","radius"]));var gK=["style"],SA=(function(r){function e(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=t.style,i=as(t,gK);return Ne(this,e),Ft(this,e,[bt({type:Te.TEXT,style:bt({fill:"black"},n)},i)])}return Mt(e,r),Pe(e,[{key:"getComputedTextLength",value:function(){var n;return this.getGeometryBounds(),((n=this.parsedStyle.metrics)===null||n===void 0?void 0:n.maxLineWidth)||0}},{key:"getLineBoundingRects",value:function(){var n;return this.getGeometryBounds(),((n=this.parsedStyle.metrics)===null||n===void 0?void 0:n.lineMetrics)||[]}},{key:"isOverflowing",value:function(){return this.getGeometryBounds(),!!this.parsedStyle.isOverflowing}}])})(Cn);SA.PARSED_STYLE_LIST=new Set([].concat(Qt(Cn.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"]));var pK=(function(){function r(){Ne(this,r),this.registry={},this.define(Te.CIRCLE,us),this.define(Te.ELLIPSE,xc),this.define(Te.RECT,jr),this.define(Te.IMAGE,Cc),this.define(Te.LINE,vA),this.define(Te.GROUP,Mr),this.define(Te.PATH,Ai),this.define(Te.POLYGON,CA),this.define(Te.POLYLINE,qf),this.define(Te.TEXT,SA),this.define(Te.HTML,xA)}return Pe(r,[{key:"define",value:function(t,n){this.registry[t]=n}},{key:"get",value:function(t){return this.registry[t]}}])})(),vK={number:function(e){return new vn(e)},percent:function(e){return new vn(e,"%")},px:function(e){return new vn(e,"px")},em:function(e){return new vn(e,"em")},rem:function(e){return new vn(e,"rem")},deg:function(e){return new vn(e,"deg")},grad:function(e){return new vn(e,"grad")},rad:function(e){return new vn(e,"rad")},turn:function(e){return new vn(e,"turn")},s:function(e){return new vn(e,"s")},ms:function(e){return new vn(e,"ms")},registerProperty:function(e){var t=e.name,n=e.inherits,i=e.interpolable,a=e.initialValue,s=e.syntax;Qe.styleValueRegistry.registerMetadata({n:t,inh:n,int:i,d:a,syntax:s})},registerLayout:function(e,t){Qe.layoutRegistry.registerLayout(e,t)}},cU=(function(r){function e(){var t;Ne(this,e),t=Ft(this,e),t.defaultView=null,t.ownerDocument=null,t.nodeName="document";try{t.timeline=new Qe.AnimationTimeline(t)}catch{}var n={};return jE.forEach(function(i){var a=i.n,s=i.inh,o=i.d;s&&o&&(n[a]=At(o)?o(Te.GROUP):o)}),t.documentElement=new Mr({id:"g-root",style:n}),t.documentElement.ownerDocument=t,t.documentElement.parentNode=t,t.childNodes=[t.documentElement],t}return Mt(e,r),Pe(e,[{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(n,i){if(n==="svg")return this.documentElement;var a=this.defaultView.customElements.get(n);a||(console.warn("Unsupported tagName: ",n),a=n==="tspan"?SA:Mr);var s=new a(i);return s.ownerDocument=this,s}},{key:"createElementNS",value:function(n,i,a){return this.createElement(i,a)}},{key:"cloneNode",value:function(n){throw new Error(pn)}},{key:"destroy",value:function(){try{this.documentElement.destroyChildren(),this.timeline.destroy()}catch{}}},{key:"elementsFromBBox",value:function(n,i,a,s){var o=[],A=function(u){if(!(!u.isInteractive()||u.isCulled())){var c=u.parsedStyle.pointerEvents,d=c===void 0?"auto":c,h=["auto","visiblepainted","visiblefill","visiblestroke","visible"].includes(d);if(!h||u.isVisible()){var f=u.getTransformedGeometryBounds(!0);f&&!kn.isEmpty(f)&&f.max[0]>=n&&f.min[0]<=a&&f.max[1]>=i&&f.min[1]<=s&&o.push(u)}u.childNodes&&u.childNodes.forEach(function(p){p instanceof Cn&&A(p)})}};return A(this.documentElement),o.sort(function(l,u){return u.sortable.renderOrder-l.sortable.renderOrder}),o}},{key:"elementFromPointSync",value:function(n,i){var a=this.defaultView.canvas2Viewport({x:n,y:i}),s=a.x,o=a.y,A=this.defaultView.getConfig(),l=A.width,u=A.height;if(s<0||o<0||s>l||o>u)return null;var c=this.defaultView.viewport2Client({x:s,y:o}),d=c.x,h=c.y,f=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!0,position:{x:n,y:i,viewportX:s,viewportY:o,clientX:d,clientY:h},picked:[]}),p=f.picked;return p&&p[0]||this.documentElement}},{key:"elementFromPoint",value:(function(){var t=xo(Pr().mark(function i(a,s){var o,A,l,u,c,d,h,f,p,g,v;return Pr().wrap(function(m){for(;;)switch(m.prev=m.next){case 0:if(o=this.defaultView.canvas2Viewport({x:a,y:s}),A=o.x,l=o.y,u=this.defaultView.getConfig(),c=u.width,d=u.height,!(A<0||l<0||A>c||l>d)){m.next=1;break}return m.abrupt("return",null);case 1:return h=this.defaultView.viewport2Client({x:A,y:l}),f=h.x,p=h.y,m.next=2,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!0,position:{x:a,y:s,viewportX:A,viewportY:l,clientX:f,clientY:p},picked:[]});case 2:return g=m.sent,v=g.picked,m.abrupt("return",v&&v[0]||this.documentElement);case 3:case"end":return m.stop()}},i,this)}));function n(i,a){return t.apply(this,arguments)}return n})()},{key:"elementsFromPointSync",value:function(n,i){var a=this.defaultView.canvas2Viewport({x:n,y:i}),s=a.x,o=a.y,A=this.defaultView.getConfig(),l=A.width,u=A.height;if(s<0||o<0||s>l||o>u)return[];var c=this.defaultView.viewport2Client({x:s,y:o}),d=c.x,h=c.y,f=this.defaultView.getRenderingService().hooks.pickSync.call({topmost:!1,position:{x:n,y:i,viewportX:s,viewportY:o,clientX:d,clientY:h},picked:[]}),p=f.picked;return p[p.length-1]!==this.documentElement&&p.push(this.documentElement),p}},{key:"elementsFromPoint",value:(function(){var t=xo(Pr().mark(function i(a,s){var o,A,l,u,c,d,h,f,p,g,v;return Pr().wrap(function(m){for(;;)switch(m.prev=m.next){case 0:if(o=this.defaultView.canvas2Viewport({x:a,y:s}),A=o.x,l=o.y,u=this.defaultView.getConfig(),c=u.width,d=u.height,!(A<0||l<0||A>c||l>d)){m.next=1;break}return m.abrupt("return",[]);case 1:return h=this.defaultView.viewport2Client({x:A,y:l}),f=h.x,p=h.y,m.next=2,this.defaultView.getRenderingService().hooks.pick.promise({topmost:!1,position:{x:a,y:s,viewportX:A,viewportY:l,clientX:f,clientY:p},picked:[]});case 2:return g=m.sent,v=g.picked,v[v.length-1]!==this.documentElement&&v.push(this.documentElement),m.abrupt("return",v);case 3:case"end":return m.stop()}},i,this)}));function n(i,a){return t.apply(this,arguments)}return n})()},{key:"appendChild",value:function(n,i){throw new Error(QA)}},{key:"insertBefore",value:function(n,i){throw new Error(QA)}},{key:"removeChild",value:function(n,i){throw new Error(QA)}},{key:"replaceChild",value:function(n,i,a){throw new Error(QA)}},{key:"append",value:function(){throw new Error(QA)}},{key:"prepend",value:function(){throw new Error(QA)}},{key:"getElementById",value:function(n){return this.documentElement.getElementById(n)}},{key:"getElementsByName",value:function(n){return this.documentElement.getElementsByName(n)}},{key:"getElementsByTagName",value:function(n){return this.documentElement.getElementsByTagName(n)}},{key:"getElementsByClassName",value:function(n){return this.documentElement.getElementsByClassName(n)}},{key:"querySelector",value:function(n){return this.documentElement.querySelector(n)}},{key:"querySelectorAll",value:function(n){return this.documentElement.querySelectorAll(n)}},{key:"find",value:function(n){return this.documentElement.find(n)}},{key:"findAll",value:function(n){return this.documentElement.findAll(n)}}])})(Rn),dU=(function(){function r(e){Ne(this,r),this.strategies=e}return Pe(r,[{key:"apply",value:function(t){var n=t.config,i=t.camera,a=t.renderingService,s=t.renderingContext,o=this.strategies;a.hooks.cull.tap(r.tag,function(A){if(A){var l,u=A.cullable;if(o.length===0?u.visible=s.unculledEntities.indexOf(A.entity)>-1:u.visible=o.every(function(d){return d.isVisible(i,A)}),!A.isCulled()&&A.isVisible())return A;var c=((l=n.future)===null||l===void 0?void 0:l.experimentalCancelEventPropagation)===!0;return A.dispatchEvent(new gr(Vt.CULLED),c,c),null}return A}),a.hooks.afterRender.tap(r.tag,function(A){A.cullable.visibilityPlaneMask=-1})}}])})();dU.tag="Culling";var hU=(function(){function r(){var e=this;Ne(this,r),this.autoPreventDefault=!1,this.rootPointerEvent=new sf(null),this.rootWheelEvent=new BB(null),this.onPointerMove=function(t){var n,i=(n=e.context.renderingContext.root)===null||n===void 0||(n=n.ownerDocument)===null||n===void 0?void 0:n.defaultView;if(!(i.supportsTouchEvents&&t.pointerType==="touch")){var a=e.normalizeToPointerEvent(t,i),s=ro(a),o;try{for(s.s();!(o=s.n()).done;){var A=o.value,l=e.bootstrapEvent(e.rootPointerEvent,A,i,t);e.context.eventService.mapEvent(l)}}catch(u){s.e(u)}finally{s.f()}e.setCursor(e.context.eventService.cursor)}},this.onClick=function(t){var n,i=(n=e.context.renderingContext.root)===null||n===void 0||(n=n.ownerDocument)===null||n===void 0?void 0:n.defaultView,a=e.normalizeToPointerEvent(t,i),s=ro(a),o;try{for(s.s();!(o=s.n()).done;){var A=o.value,l=e.bootstrapEvent(e.rootPointerEvent,A,i,t);e.context.eventService.mapEvent(l)}}catch(u){s.e(u)}finally{s.f()}e.setCursor(e.context.eventService.cursor)}}return Pe(r,[{key:"apply",value:function(t){var n=this;this.context=t;var i=t.renderingService,a=this.context.renderingContext.root.ownerDocument.defaultView;this.context.eventService.setPickHandler(function(s){var o=n.context.renderingService.hooks.pickSync.call({position:s,picked:[],topmost:!0}),A=o.picked;return A[0]||null}),i.hooks.pointerWheel.tap(r.tag,function(s){var o=n.normalizeWheelEvent(s);n.context.eventService.mapEvent(o)}),i.hooks.pointerDown.tap(r.tag,function(s){if(!(a.supportsTouchEvents&&s.pointerType==="touch")){var o=n.normalizeToPointerEvent(s,a);if(n.autoPreventDefault&&o[0].isNormalized){var A=s.cancelable||!("cancelable"in s);A&&s.preventDefault()}var l=ro(o),u;try{for(l.s();!(u=l.n()).done;){var c=u.value,d=n.bootstrapEvent(n.rootPointerEvent,c,a,s);n.context.eventService.mapEvent(d)}}catch(h){l.e(h)}finally{l.f()}n.setCursor(n.context.eventService.cursor)}}),i.hooks.pointerUp.tap(r.tag,function(s){if(!(a.supportsTouchEvents&&s.pointerType==="touch")){var o=n.context.contextService.getDomElement(),A=n.context.eventService.isNativeEventFromCanvas(o,s),l=A?"":"outside",u=n.normalizeToPointerEvent(s,a),c=ro(u),d;try{for(c.s();!(d=c.n()).done;){var h=d.value,f=n.bootstrapEvent(n.rootPointerEvent,h,a,s);f.type+=l,n.context.eventService.mapEvent(f)}}catch(p){c.e(p)}finally{c.f()}n.setCursor(n.context.eventService.cursor)}}),i.hooks.pointerMove.tap(r.tag,this.onPointerMove),i.hooks.pointerOver.tap(r.tag,this.onPointerMove),i.hooks.pointerOut.tap(r.tag,this.onPointerMove),i.hooks.click.tap(r.tag,this.onClick),i.hooks.pointerCancel.tap(r.tag,function(s){var o=n.normalizeToPointerEvent(s,a),A=ro(o),l;try{for(A.s();!(l=A.n()).done;){var u=l.value,c=n.bootstrapEvent(n.rootPointerEvent,u,a,s);n.context.eventService.mapEvent(c)}}catch(d){A.e(d)}finally{A.f()}n.setCursor(n.context.eventService.cursor)})}},{key:"bootstrapEvent",value:function(t,n,i,a){t.view=i,t.originalEvent=null,t.nativeEvent=a,t.pointerId=n.pointerId,t.width=n.width,t.height=n.height,t.isPrimary=n.isPrimary,t.pointerType=n.pointerType,t.pressure=n.pressure,t.tangentialPressure=n.tangentialPressure,t.tiltX=n.tiltX,t.tiltY=n.tiltY,t.twist=n.twist,this.transferMouseData(t,n);var s=this.context.eventService.client2Viewport({x:n.clientX,y:n.clientY}),o=s.x,A=s.y;t.viewport.x=o,t.viewport.y=A;var l=this.context.eventService.viewport2Canvas(t.viewport),u=l.x,c=l.y;return t.canvas.x=u,t.canvas.y=c,t.global.copyFrom(t.canvas),t.offset.copyFrom(t.canvas),t.isTrusted=a.isTrusted,t.type==="pointerleave"&&(t.type="pointerout"),t.type.startsWith("mouse")&&(t.type=t.type.replace("mouse","pointer")),t.type.startsWith("touch")&&(t.type=Zz[t.type]||t.type),t}},{key:"normalizeWheelEvent",value:function(t){var n=this.rootWheelEvent;this.transferMouseData(n,t),n.deltaMode=t.deltaMode,n.deltaX=t.deltaX,n.deltaY=t.deltaY,n.deltaZ=t.deltaZ;var i=this.context.eventService.client2Viewport({x:t.clientX,y:t.clientY}),a=i.x,s=i.y;n.viewport.x=a,n.viewport.y=s;var o=this.context.eventService.viewport2Canvas(n.viewport),A=o.x,l=o.y;return n.canvas.x=A,n.canvas.y=l,n.global.copyFrom(n.canvas),n.offset.copyFrom(n.canvas),n.nativeEvent=t,n.type=t.type,n}},{key:"transferMouseData",value:function(t,n){t.isTrusted=n.isTrusted,t.srcElement=n.srcElement,t.timeStamp=bB.now(),t.type=n.type,t.altKey=n.altKey,t.metaKey=n.metaKey,t.shiftKey=n.shiftKey,t.ctrlKey=n.ctrlKey,t.button=n.button,t.buttons=n.buttons,t.client.x=n.clientX,t.client.y=n.clientY,t.movement.x=n.movementX,t.movement.y=n.movementY,t.page.x=n.pageX,t.page.y=n.pageY,t.screen.x=n.screenX,t.screen.y=n.screenY,t.relatedTarget=null}},{key:"setCursor",value:function(t){this.context.contextService.applyCursorStyle(t||this.context.config.cursor||"default")}},{key:"normalizeToPointerEvent",value:function(t,n){var i=[];if(n.isTouchEvent(t))for(var a=0;a<t.changedTouches.length;a++){var s=t.changedTouches[a];Bt(s.button)&&(s.button=0),Bt(s.buttons)&&(s.buttons=1),Bt(s.isPrimary)&&(s.isPrimary=t.touches.length===1&&t.type==="touchstart"),Bt(s.width)&&(s.width=s.radiusX||1),Bt(s.height)&&(s.height=s.radiusY||1),Bt(s.tiltX)&&(s.tiltX=0),Bt(s.tiltY)&&(s.tiltY=0),Bt(s.pointerType)&&(s.pointerType="touch"),Bt(s.pointerId)&&(s.pointerId=s.identifier||0),Bt(s.pressure)&&(s.pressure=s.force||.5),Bt(s.twist)&&(s.twist=0),Bt(s.tangentialPressure)&&(s.tangentialPressure=0),s.isNormalized=!0,s.type=t.type,i.push(s)}else if(n.isMouseEvent(t)){var o=t;Bt(o.isPrimary)&&(o.isPrimary=!0),Bt(o.width)&&(o.width=1),Bt(o.height)&&(o.height=1),Bt(o.tiltX)&&(o.tiltX=0),Bt(o.tiltY)&&(o.tiltY=0),Bt(o.pointerType)&&(o.pointerType="mouse"),Bt(o.pointerId)&&(o.pointerId=Xz),Bt(o.pressure)&&(o.pressure=.5),Bt(o.twist)&&(o.twist=0),Bt(o.tangentialPressure)&&(o.tangentialPressure=0),o.isNormalized=!0,i.push(o)}else i.push(t);return i}}])})();hU.tag="Event";var mK=[Te.CIRCLE,Te.ELLIPSE,Te.IMAGE,Te.RECT,Te.LINE,Te.POLYLINE,Te.POLYGON,Te.TEXT,Te.PATH,Te.HTML],yK=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"isVisible",value:function(t,n){var i,a=n.cullable;if(!a.enable)return!0;var s=n.getRenderBounds();if(kn.isEmpty(s))return!1;var o=t.getFrustum(),A=(i=n.parentNode)===null||i===void 0||(i=i.cullable)===null||i===void 0?void 0:i.visibilityPlaneMask;return a.visibilityPlaneMask=this.computeVisibilityWithPlaneMask(n,s,A||RA.INDETERMINATE,o.planes),a.visible=a.visibilityPlaneMask!==RA.OUTSIDE,a.visible}},{key:"computeVisibilityWithPlaneMask",value:function(t,n,i,a){if(i===RA.OUTSIDE||i===RA.INSIDE)return i;for(var s=RA.INSIDE,o=mK.indexOf(t.nodeName)>-1,A=0,l=a.length;A<l;++A){var u=1<<A;if((i&u)!==0&&!(o&&(A===4||A===5))){var c=a[A],d=c.normal,h=c.distance;if(rs(d,n.getPositiveFarPoint(a[A]))+h<0)return RA.OUTSIDE;rs(d,n.getNegativeFarPoint(a[A]))+h<0&&(s|=u)}}return s}}])})(),fU=(function(){function r(){Ne(this,r),this.mutationRecords=[],this.isFirstTimeRendering=!0,this.isFirstTimeRenderingFinished=!1}return Pe(r,[{key:"apply",value:function(t){var n=this,i,a=t.renderingService,s=t.renderingContext,o=s.root.ownerDocument.defaultView,A=function(f){a.dirty()},l=function(f){var p,g=f.detail;(p=n.mutationRecords).push.apply(p,Qt(g)),a.dirty()},u=function(f){var p=f.target;Qe.enableSizeAttenuation&&Qe.styleValueRegistry.updateSizeAttenuation(p,o.getCamera().getZoom())},c=function(f){var p=f.target;Qe.sceneGraphService.dirtyToRoot(p),a.dirty()};a.hooks.init.tap(r.tag,function(){o.addEventListener(Vt.MOUNTED,u),o.addEventListener(Vt.UNMOUNTED,c),o.addEventListener(Vt.ATTR_MODIFIED,A),o.addEventListener(Vt.BOUNDS_CHANGED,l)}),a.hooks.destroy.tap(r.tag,function(){o.removeEventListener(Vt.MOUNTED,u),o.removeEventListener(Vt.UNMOUNTED,c),o.removeEventListener(Vt.ATTR_MODIFIED,A),o.removeEventListener(Vt.BOUNDS_CHANGED,l),n.mutationRecords=[]});var d=(i=Qe.globalThis.requestIdleCallback)!==null&&i!==void 0?i:qE.bind(Qe.globalThis);a.hooks.endFrame.tap(r.tag,function(){n.isFirstTimeRendering&&(n.isFirstTimeRendering=!1,d(function(){n.isFirstTimeRenderingFinished=!0})),n.mutationRecords=[]})}}])})();fU.tag="Prepare";var Vi=(function(r){return r.READY="ready",r.BEFORE_RENDER="beforerender",r.RERENDER="rerender",r.AFTER_RENDER="afterrender",r.BEFORE_DESTROY="beforedestroy",r.AFTER_DESTROY="afterdestroy",r.RESIZE="resize",r.DIRTY_RECTANGLE="dirtyrectangle",r.RENDERER_CHANGED="rendererchanged",r})({}),iS=500,wK=.1,bK=1e3,od=new gr(Vt.MOUNTED),Ad=new gr(Vt.UNMOUNTED),pv=new gr(Vi.BEFORE_RENDER),aS=new gr(Vi.RERENDER),vv=new gr(Vi.AFTER_RENDER),CB=(function(r){function e(t){var n;Ne(this,e),n=Ft(this,e),n.Element=Cn,n.inited=!1,n.context={};var i=t.container,a=t.canvas,s=t.renderer,o=t.width,A=t.height,l=t.background,u=t.cursor,c=t.supportsMutipleCanvasesInOneContainer,d=t.cleanUpOnDestroy,h=d===void 0?!0:d,f=t.offscreenCanvas,p=t.devicePixelRatio,g=t.requestAnimationFrame,v=t.cancelAnimationFrame,m=t.createImage,y=t.supportsTouchEvents,w=t.supportsPointerEvents,B=t.isTouchEvent,x=t.isMouseEvent,k=t.dblClickSpeed,_=o,T=A,F=p||WE&&window.devicePixelRatio||1;return F=F>=1?Math.ceil(F):1,a&&(_=o||qz(a)||a.width/F,T=A||Yz(a)||a.height/F),n.customElements=new pK,n.devicePixelRatio=F,n.requestAnimationFrame=g??qE.bind(Qe.globalThis),n.cancelAnimationFrame=v??sU.bind(Qe.globalThis),n.createImage=m??function(){return new window.Image},n.supportsTouchEvents=y??"ontouchstart"in Qe.globalThis,n.supportsPointerEvents=w??!!Qe.globalThis.PointerEvent,n.isTouchEvent=B??function(I){return n.supportsTouchEvents&&I instanceof Qe.globalThis.TouchEvent},n.isMouseEvent=x??function(I){return!Qe.globalThis.MouseEvent||I instanceof Qe.globalThis.MouseEvent&&(!n.supportsPointerEvents||!(I instanceof Qe.globalThis.PointerEvent))},f&&(Qe.offscreenCanvas=f),n.document=new cU,n.document.defaultView=n,c||Vz(i,n,h),n.initRenderingContext(bt(bt({},t),{},{width:_,height:T,background:l??"transparent",cursor:u??"default",cleanUpOnDestroy:h,devicePixelRatio:F,requestAnimationFrame:n.requestAnimationFrame,cancelAnimationFrame:n.cancelAnimationFrame,createImage:n.createImage,supportsTouchEvents:n.supportsTouchEvents,supportsPointerEvents:n.supportsPointerEvents,isTouchEvent:n.isTouchEvent,isMouseEvent:n.isMouseEvent,dblClickSpeed:k??200})),n.initDefaultCamera(_,T,s.clipSpaceNearZ),n.initRenderer(s,!0),n}return Mt(e,r),Pe(e,[{key:"initRenderingContext",value:function(n){this.context.config=n,this.context.renderingContext={root:this.document.documentElement,unculledEntities:[],renderListCurrentFrame:[],renderReasons:new Set,force:!1,dirty:!1}}},{key:"initDefaultCamera",value:function(n,i,a){var s=this,o=new Qe.CameraContribution;o.clipSpaceNearZ=a,o.setType(gn.EXPLORING,hB.DEFAULT).setPosition(n/2,i/2,iS).setFocalPoint(n/2,i/2,0).setOrthographic(n/-2,n/2,i/2,i/-2,wK,bK),o.canvas=this,o.eventEmitter.on(NP.UPDATED,function(){s.context.renderingContext.renderReasons.add(pl.CAMERA_CHANGED),Qe.enableSizeAttenuation&&s.getConfig().renderer.getConfig().enableSizeAttenuation&&s.updateSizeAttenuation()}),this.context.camera=o}},{key:"updateSizeAttenuation",value:function(){var n=this.getCamera().getZoom();this.document.documentElement.forEach(function(i){Qe.styleValueRegistry.updateSizeAttenuation(i,n)})}},{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 n=this;return this.readyPromise||(this.readyPromise=new Promise(function(i){n.resolveReadyPromise=function(){i(n)}}),this.inited&&this.resolveReadyPromise()),this.readyPromise}},{key:"destroy",value:function(){var n,i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,a=arguments.length>1?arguments[1]:void 0;lr.clearCache();var s=((n=this.getConfig().future)===null||n===void 0?void 0:n.experimentalCancelEventPropagation)===!0;a||this.dispatchEvent(new gr(Vi.BEFORE_DESTROY),s,s),this.frameId&&this.cancelAnimationFrame(this.frameId);var o=this.getRoot();i&&(this.unmountChildren(o),this.document.destroy(),this.getEventService().destroy()),this.getRenderingService().destroy(),this.getContextService().destroy(),a||this.dispatchEvent(new gr(Vi.AFTER_DESTROY),s,s);var A=function(u){u.currentTarget=null,u.manager=null,u.target=null,u.relatedNode=null};A(od),A(Ad),A(pv),A(aS),A(vv),A(Ya),A(EB),A(xB),A(uU),Qe.textService.clearCache()}},{key:"changeSize",value:function(n,i){this.resize(n,i)}},{key:"resize",value:function(n,i){var a,s=this.context.config;s.width=n,s.height=i,this.getContextService().resize(n,i);var o=this.context.camera,A=o.getProjectionMode();o.setPosition(n/2,i/2,iS).setFocalPoint(n/2,i/2,0),A===aa.ORTHOGRAPHIC?o.setOrthographic(n/-2,n/2,i/2,i/-2,o.getNear(),o.getFar()):o.setAspect(n/i);var l=((a=s.future)===null||a===void 0?void 0:a.experimentalCancelEventPropagation)===!0;this.dispatchEvent(new gr(Vi.RESIZE,{width:n,height:i}),l,l)}},{key:"appendChild",value:function(n,i){return this.document.documentElement.appendChild(n,i)}},{key:"insertBefore",value:function(n,i){return this.document.documentElement.insertBefore(n,i)}},{key:"removeChild",value:function(n){return this.document.documentElement.removeChild(n)}},{key:"removeChildren",value:function(){this.document.documentElement.removeChildren()}},{key:"destroyChildren",value:function(){this.document.documentElement.destroyChildren()}},{key:"render",value:function(n){var i,a=this;n&&(pv.detail=n,vv.detail=n);var s=((i=this.getConfig().future)===null||i===void 0?void 0:i.experimentalCancelEventPropagation)===!0;this.dispatchEvent(pv,s,s);var o=this.getRenderingService();o.render(this,n,function(){a.dispatchEvent(aS,s,s)}),this.dispatchEvent(vv,s,s)}},{key:"run",value:function(){var n=this,i=function(s,o){n.render(o),n.frameId=n.requestAnimationFrame(i)};i()}},{key:"initRenderer",value:function(n){var i=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1;if(!n)throw new Error("Renderer is required.");this.inited=!1,this.readyPromise=void 0,this.context.renderingPlugins=[],this.context.renderingPlugins.push(new hU,new fU,new dU([new yK])),this.loadRendererContainerModule(n),this.context.contextService=new this.context.ContextService(bt(bt({},Qe),this.context)),this.context.renderingService=new MV(Qe,this.context),this.context.eventService=new FV(Qe,this.context),this.context.eventService.init(),this.context.contextService.init?(this.context.contextService.init(),this.initRenderingService(n,a,!0)):this.context.contextService.initAsync().then(function(){i.initRenderingService(n,a)}).catch(function(s){console.error(s)})}},{key:"initRenderingService",value:function(n){var i=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:!1,s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1;this.context.renderingService.init(function(){var o;i.inited=!0;var A=((o=i.getConfig().future)===null||o===void 0?void 0:o.experimentalCancelEventPropagation)===!0;a?s?i.requestAnimationFrame(function(){i.dispatchEvent(new gr(Vi.READY),A,A)}):i.dispatchEvent(new gr(Vi.READY),A,A):i.dispatchEvent(new gr(Vi.RENDERER_CHANGED),A,A),i.readyPromise&&i.resolveReadyPromise(),a||i.getRoot().forEach(function(l){var u,c;(u=(c=l).dirty)===null||u===void 0||u.call(c,!0,!0)}),i.mountChildren(i.getRoot()),n.getConfig().enableAutoRendering&&i.run()})}},{key:"loadRendererContainerModule",value:function(n){var i=this,a=n.getPlugins();a.forEach(function(s){s.context=i.context,s.init(Qe)})}},{key:"setRenderer",value:function(n){var i=this.getConfig();if(i.renderer!==n){var a=i.renderer;i.renderer=n,this.destroy(!1,!0),Qt((a==null?void 0:a.getPlugins())||[]).reverse().forEach(function(s){s.destroy(Qe)}),this.initRenderer(n)}}},{key:"setCursor",value:function(n){var i=this.getConfig();i.cursor=n,this.getContextService().applyCursorStyle(n)}},{key:"unmountChildren",value:function(n){var i=this;if(n.childNodes.forEach(function(o){i.unmountChildren(o)}),this.inited){if(n.isMutationObserved)n.dispatchEvent(Ad);else{var a,s=((a=this.getConfig().future)===null||a===void 0?void 0:a.experimentalCancelEventPropagation)===!0;Ad.target=n,this.dispatchEvent(Ad,!0,s)}n!==this.document.documentElement&&(n.ownerDocument=null),n.isConnected=!1}n.isCustomElement&&n.disconnectedCallback&&n.disconnectedCallback()}},{key:"mountChildren",value:function(n){var i=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:af(n);if(this.inited){if(!n.isConnected&&(n.ownerDocument=this.document,n.isConnected=!0,!a))if(n.isMutationObserved)n.dispatchEvent(od);else{var s,o=((s=this.getConfig().future)===null||s===void 0?void 0:s.experimentalCancelEventPropagation)===!0;od.target=n,this.dispatchEvent(od,!0,o)}}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: ",n.nodeName);n.childNodes.forEach(function(A){i.mountChildren(A,a)}),n.isCustomElement&&n.connectedCallback&&n.connectedCallback()}},{key:"mountFragment",value:function(n){this.mountChildren(n,!1)}},{key:"client2Viewport",value:function(n){return this.getEventService().client2Viewport(n)}},{key:"viewport2Client",value:function(n){return this.getEventService().viewport2Client(n)}},{key:"viewport2Canvas",value:function(n){return this.getEventService().viewport2Canvas(n)}},{key:"canvas2Viewport",value:function(n){return this.getEventService().canvas2Viewport(n)}},{key:"getPointByClient",value:function(n,i){return this.client2Viewport({x:n,y:i})}},{key:"getClientByPoint",value:function(n,i){return this.viewport2Client({x:n,y:i})}}])})(lU),BK=(function(){function r(){Ne(this,r),this.cacheStore=new Map}return Pe(r,[{key:"onRefAdded",value:function(t){}},{key:"has",value:function(t){return this.cacheStore.has(t)}},{key:"put",value:function(t,n,i){return this.cacheStore.has(t)?!1:(this.cacheStore.set(t,{value:n,counter:new Set([i.entity])}),this.onRefAdded(i),!0)}},{key:"get",value:function(t,n){var i=this.cacheStore.get(t);return i?(i.counter.has(n.entity)||(i.counter.add(n.entity),this.onRefAdded(n)),i.value):null}},{key:"update",value:function(t,n,i){var a=this.cacheStore.get(t);return a?(a.value=bt(bt({},a.value),n),a.counter.has(i.entity)||(a.counter.add(i.entity),this.onRefAdded(i)),!0):!1}},{key:"release",value:function(t,n){var i=this.cacheStore.get(t);return i?(i.counter.delete(n.entity),i.counter.size<=0&&this.cacheStore.delete(t),!0):!1}},{key:"releaseRef",value:function(t){var n=this;Array.from(this.cacheStore.keys()).forEach(function(i){n.release(i,t)})}},{key:"getSize",value:function(){return this.cacheStore.size}},{key:"clear",value:function(){this.cacheStore.clear()}}])})(),mv=[],yv=[],SB=(function(){function r(){Ne(this,r)}return Pe(r,null,[{key:"stop",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:r.api;r.rafId&&(t.cancelAnimationFrame(r.rafId),r.rafId=null)}},{key:"executeTask",value:function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:r.api;mv.length<=0&&yv.length<=0||(yv.forEach(function(n){return n()}),yv=mv.splice(0,r.TASK_NUM_PER_FRAME),r.rafId=t.requestAnimationFrame(function(){r.executeTask(t)}))}},{key:"sliceImage",value:function(t,n,i,a){for(var s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0,o=arguments.length>5&&arguments[5]!==void 0?arguments[5]:r.api,A=t.naturalWidth||t.width,l=t.naturalHeight||t.height,u=n-s,c=i-s,d=Math.ceil(A/u),h=Math.ceil(l/c),f={tileSize:[n,i],gridSize:[h,d],tiles:Array(h).fill(null).map(function(){return Array(d).fill(null)})},p=function(m){for(var y=function(x){mv.push(function(){var k=x*u,_=m*c,T=[Math.min(n,A-k),Math.min(i,l-_)],F=T[0],I=T[1],O=o.createCanvas();O.width=n,O.height=i;var P=O.getContext("2d");P.drawImage(t,k,_,F,I,0,0,F,I),f.tiles[m][x]={x:k,y:_,tileX:x,tileY:m,data:O},a()})},w=0;w<d;w++)y(w)},g=0;g<h;g++)p(g);return r.stop(),r.executeTask(),f}}])})();SB.TASK_NUM_PER_FRAME=10;var Di=new BK;Di.onRefAdded=function(e){var t=this;e.addEventListener(Vt.DESTROY,function(){t.releaseRef(e)},{once:!0})};var XE=(function(){function r(e,t){Ne(this,r),this.gradientCache={},this.patternCache={},this.context=e,this.runtime=t}return Pe(r,[{key:"getImageSync",value:function(t,n,i){var a=ln(t)?t:t.src;if(Di.has(a)){var s=Di.get(a,n);if(s.img.complete)return i==null||i(s),s}return this.getOrCreateImage(t,n).then(function(o){i==null||i(o)}).catch(function(o){console.error(o)}),null}},{key:"getOrCreateImage",value:function(t,n){var i=this,a=ln(t)?t:t.src;if(!ln(t)&&!Di.has(a)){var s={img:t,size:[t.naturalWidth||t.width,t.naturalHeight||t.height],tileSize:ld(t)};Di.put(a,s,n)}if(Di.has(a)){var o=Di.get(a,n);return o.img.complete?Promise.resolve(o):new Promise(function(A,l){o.img.addEventListener("load",function(){o.size=[o.img.naturalWidth||o.img.width,o.img.naturalHeight||o.img.height],o.tileSize=ld(o.img),A(o)}),o.img.addEventListener("error",function(u){l(u)})})}return new Promise(function(A,l){var u=i.context.config.createImage();if(u){var c={img:u,size:[0,0],tileSize:ld(u)};Di.put(a,c,n),u.onload=function(){c.size=[u.naturalWidth||u.width,u.naturalHeight||u.height],c.tileSize=ld(c.img),A(c)},u.onerror=function(d){l(d)},u.crossOrigin="Anonymous",u.src=a}})}},{key:"createDownSampledImage",value:(function(){var e=xo(Pr().mark(function n(i,a){var s,o,A,l,u,c,d,h,f,p,g,v,m,y;return Pr().wrap(function(w){for(;;)switch(w.prev=w.next){case 0:return w.next=1,this.getOrCreateImage(i,a);case 1:if(s=w.sent,!(typeof s.downSamplingRate<"u")){w.next=2;break}return w.abrupt("return",s);case 2:if(o=this.context.config.enableLargeImageOptimization,A=typeof o=="boolean"?{}:o,l=A.maxDownSampledImageSize,u=l===void 0?2048:l,c=A.downSamplingRateThreshold,d=c===void 0?.5:c,h=this.runtime.globalThis.createImageBitmap,f=Tt(s.size,2),p=f[0],g=f[1],v=s.img,m=Math.min((u+u)/(p+g),Math.max(.01,Math.min(d,.5))),y=bt(bt({},s),{},{downSamplingRate:m}),Di.update(s.img.src,y,a),!h){w.next=7;break}return w.prev=3,w.next=4,h(s.img,{resizeWidth:p*m,resizeHeight:g*m});case 4:v=w.sent,w.next=6;break;case 5:w.prev=5,w.catch(3),m=1;case 6:w.next=8;break;case 7:m=1;case 8:return y=bt(bt({},this.getImageSync(i,a)),{},{downSampled:v,downSamplingRate:m}),Di.update(s.img.src,y,a),w.abrupt("return",y);case 9:case"end":return w.stop()}},n,this,[[3,5]])}));function t(n,i){return e.apply(this,arguments)}return t})()},{key:"createImageTiles",value:(function(){var e=xo(Pr().mark(function n(i,a,s,o){var A,l,u,c,d;return Pr().wrap(function(h){for(;;)switch(h.prev=h.next){case 0:return h.next=1,this.getOrCreateImage(i,o);case 1:return A=h.sent,l=o.ownerDocument.defaultView,u=l.requestAnimationFrame,c=l.cancelAnimationFrame,SB.api={requestAnimationFrame:u,cancelAnimationFrame:c,createCanvas:function(){return YE.createCanvas()}},d=bt(bt({},A),SB.sliceImage(A.img,A.tileSize[0],A.tileSize[0],s)),Di.update(A.img.src,d,o),h.abrupt("return",d);case 2:case"end":return h.stop()}},n,this)}));function t(n,i,a,s){return e.apply(this,arguments)}return t})()},{key:"releaseImage",value:function(t,n){Di.release(ln(t)?t:t.src,n)}},{key:"releaseImageRef",value:function(t){Di.releaseRef(t)}},{key:"getOrCreatePatternSync",value:function(t,n,i,a,s,o,A){var l=this.generatePatternKey(n);if(l&&this.patternCache[l])return this.patternCache[l];var u=n.image,c=n.repetition,d=n.transform,h,f=!1;if(ln(u)){var p=this.getImageSync(u,t,A);h=p==null?void 0:p.img}else a?(h=a,f=!0):h=u;var g=h&&i.createPattern(h,c);if(g){var v;d?v=oU(ZP(d),new Cn({})):v=Eo(wn()),f&&JN(v,v,[1/s,1/s,1]),g.setTransform({a:v[0],b:v[1],c:v[4],d:v[5],e:v[12]+o[0],f:v[13]+o[1]})}return l&&g&&(this.patternCache[l]=g),g}},{key:"getOrCreateGradient",value:function(t,n){var i=this.generateGradientKey(t),a=t.type,s=t.steps,o=t.min,A=t.width,l=t.height,u=t.angle,c=t.cx,d=t.cy,h=t.size;if(this.gradientCache[i])return this.gradientCache[i];var f=null;if(a===so.LinearGradient){var p=QG(o,A,l,u),g=p.x1,v=p.y1,m=p.x2,y=p.y2;f=n.createLinearGradient(g,v,m,y)}else if(a===so.RadialGradient){var w=DG(o,A,l,c,d,h),B=w.x,x=w.y,k=w.r;f=n.createRadialGradient(B,x,0,B,x,k)}return f&&(s.forEach(function(_){var T=_.offset,F=_.color;if(T.unit===We.kPercentage){var I;(I=f)===null||I===void 0||I.addColorStop(T.value/100,F.toString())}}),this.gradientCache[i]=f),this.gradientCache[i]}},{key:"generateGradientKey",value:function(t){var n=t.type,i=t.min,a=t.width,s=t.height,o=t.steps,A=t.angle,l=t.cx,u=t.cy,c=t.size;return"gradient-".concat(n,"-").concat((A==null?void 0:A.toString())||0,"-").concat((l==null?void 0:l.toString())||0,"-").concat((u==null?void 0:u.toString())||0,"-").concat((c==null?void 0:c.toString())||0,"-").concat(i[0],"-").concat(i[1],"-").concat(a,"-").concat(s,"-").concat(o.map(function(d){var h=d.offset,f=d.color;return"".concat(h).concat(f)}).join("-"))}},{key:"generatePatternKey",value:function(t){var n=t.image,i=t.repetition;if(ln(n))return"pattern-".concat(n,"-").concat(i);if(n.nodeName==="rect")return"pattern-".concat(n.entity,"-").concat(i)}}])})();XE.isSupportTile=!!YE.createCanvas();function ld(r){if(!r.complete)return[0,0];var e=r.naturalWidth||r.width,t=r.naturalHeight||r.height,n=256;return[256,512].forEach(function(i){var a=Math.ceil(t/i),s=Math.ceil(e/i);a*s<1e3&&(n=i)}),[n,n]}var gU=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"apply",value:function(t){var n=t.renderingService,i=t.renderingContext,a=t.imagePool,s=i.root.ownerDocument.defaultView,o=function(c,d,h){var f=c.parsedStyle,p=f.width,g=f.height;p&&!g?c.setAttribute("height",h/d*p):!p&&g&&c.setAttribute("width",d/h*g)},A=function(c){var d=c.target,h=d.nodeName,f=d.attributes;if(h===Te.IMAGE){var p=f.src,g=f.keepAspectRatio;a.getImageSync(p,d,function(v){var m=v.img,y=m.width,w=m.height;g&&o(d,y,w),d.dirty(),n.dirty()})}},l=function(c){var d=c.target,h=c.attrName,f=c.prevValue,p=c.newValue;d.nodeName!==Te.IMAGE||h!=="src"||(f!==p&&a.releaseImage(f,d),ln(p)&&a.getOrCreateImage(p,d).then(function(g){var v=g.img,m=v.width,y=v.height;d.attributes.keepAspectRatio&&o(d,m,y),d.dirty(),n.dirty()}).catch(function(){}))};n.hooks.init.tap(r.tag,function(){s.addEventListener(Vt.MOUNTED,A),s.addEventListener(Vt.ATTR_MODIFIED,l)}),n.hooks.destroy.tap(r.tag,function(){s.removeEventListener(Vt.MOUNTED,A),s.removeEventListener(Vt.ATTR_MODIFIED,l)})}}])})();gU.tag="LoadImage";var EK=(function(r){function e(){var t;Ne(this,e);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return t=Ft(this,e,[].concat(i)),t.name="image-loader",t}return Mt(e,r),Pe(e,[{key:"init",value:function(n){this.context.imagePool=new XE(this.context,n),this.addRenderingPlugin(new gU)}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}}])})(ko),xK=Object.freeze({__proto__:null,ImagePool:XE,Plugin:EK}),CK="g-canvas-camera",pU=(function(){function r(){Ne(this,r),this.displayObjectHTMLElementMap=new WeakMap}return Pe(r,[{key:"joinTransformMatrix",value:function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[0,0,0];return"matrix(".concat([t[0],t[1],t[4],t[5],t[12]+n[0],t[13]+n[1]].join(","),")")}},{key:"apply",value:function(t,n){var i=this,a=t.camera,s=t.renderingContext,o=t.renderingService;this.context=t;var A=s.root.ownerDocument.defaultView,l=A.context.eventService.nativeHTMLMap,u=function(v,m){m.style.transform=i.joinTransformMatrix(v.getWorldTransform(),v.getOrigin())},c=function(v){var m=v.target;if(m.nodeName===Te.HTML){i.$camera||(i.$camera=i.createCamera(a));var y=i.getOrCreateEl(m);i.$camera.appendChild(y),Object.keys(m.attributes).forEach(function(w){i.updateAttribute(w,m)}),u(m,y),l.set(y,m)}},d=function(v){var m=v.target;if(m.nodeName===Te.HTML&&i.$camera){var y=i.getOrCreateEl(m);y&&(y.remove(),l.delete(y))}},h=function(v){var m=v.target;if(m.nodeName===Te.HTML){var y=v.attrName;i.updateAttribute(y,m)}},f=function(v){for(var m=v.detail,y=0;y<m.length;y++){var w=m[y],B=w.target,x=B.nodeName===Te.FRAGMENT?B.childNodes:[B];x.forEach(function(k){if(k.nodeName===Te.HTML){var _=i.getOrCreateEl(k);u(k,_)}})}},p=function(){if(i.$camera){var v=i.context.config,m=v.width,y=v.height;i.$camera.parentElement.style.width="".concat(m||0,"px"),i.$camera.parentElement.style.height="".concat(y||0,"px")}};o.hooks.init.tap(r.tag,function(){A.addEventListener(Vi.RESIZE,p),A.addEventListener(Vt.MOUNTED,c),A.addEventListener(Vt.UNMOUNTED,d),A.addEventListener(Vt.ATTR_MODIFIED,h),A.addEventListener(Vt.BOUNDS_CHANGED,f)}),o.hooks.endFrame.tap(r.tag,function(){i.$camera&&s.renderReasons.has(pl.CAMERA_CHANGED)&&(i.$camera.style.transform=i.joinTransformMatrix(a.getOrthoMatrix()))}),o.hooks.destroy.tap(r.tag,function(){i.$camera&&i.$camera.remove(),A.removeEventListener(Vi.RESIZE,p),A.removeEventListener(Vt.MOUNTED,c),A.removeEventListener(Vt.UNMOUNTED,d),A.removeEventListener(Vt.ATTR_MODIFIED,h),A.removeEventListener(Vt.BOUNDS_CHANGED,f)})}},{key:"createCamera",value:function(t){var n=this.context.config,i=n.document,a=n.width,s=n.height,o=this.context.contextService.getDomElement(),A=o.parentNode;if(A){var l=CK,u=A.querySelector("#".concat(l));if(!u){var c=(i||document).createElement("div");c.style.overflow="hidden",c.style.pointerEvents="none",c.style.position="absolute",c.style.left="0px",c.style.top="0px",c.style.width="".concat(a||0,"px"),c.style.height="".concat(s||0,"px");var d=(i||document).createElement("div");u=d,d.id=l,d.style.position="absolute",d.style.left="".concat(o.offsetLeft||0,"px"),d.style.top="".concat(o.offsetTop||0,"px"),d.style.transformOrigin="left top",d.style.transform=this.joinTransformMatrix(t.getOrthoMatrix()),d.style.pointerEvents="none",d.style.width="100%",d.style.height="100%",c.appendChild(d),A.appendChild(c)}return u}return null}},{key:"getOrCreateEl",value:function(t){var n=this.context.config.document,i=this.displayObjectHTMLElementMap.get(t);return i||(i=(n||document).createElement("div"),t.parsedStyle.$el=i,this.displayObjectHTMLElementMap.set(t,i),t.id&&(i.id=t.id),t.name&&i.setAttribute("name",t.name),t.className&&(i.className=t.className),i.style.position="absolute",i.style["will-change"]="transform",i.style.transform=this.joinTransformMatrix(t.getWorldTransform(),t.getOrigin())),i}},{key:"updateAttribute",value:function(t,n){var i=this.getOrCreateEl(n);switch(t){case"innerHTML":var a=n.parsedStyle.innerHTML;ln(a)?i.innerHTML=a:(i.innerHTML="",i.appendChild(a));break;case"x":i.style.left="".concat(n.parsedStyle.x,"px");break;case"y":i.style.top="".concat(n.parsedStyle.y,"px");break;case"transformOrigin":var s=n.parsedStyle.transformOrigin;i.style["transform-origin"]="".concat(s[0].buildCSSText(null,null,"")," ").concat(s[1].buildCSSText(null,null,""));break;case"width":var o=n.parsedStyle.width;i.style.width=Yt(o)?"".concat(o,"px"):o.toString();break;case"height":var A=n.parsedStyle.height;i.style.height=Yt(A)?"".concat(A,"px"):A.toString();break;case"zIndex":var l=n.parsedStyle.zIndex;i.style["z-index"]="".concat(l);break;case"visibility":var u=n.parsedStyle.visibility;i.style.visibility=u;break;case"pointerEvents":var c=n.parsedStyle.pointerEvents,d=c===void 0?"auto":c;i.style.pointerEvents=d;break;case"opacity":var h=n.parsedStyle.opacity;i.style.opacity="".concat(h);break;case"fill":var f=n.parsedStyle.fill,p="";nf(f)?f.isNone?p="transparent":p=n.getAttribute("fill"):Array.isArray(f)?p=n.getAttribute("fill"):pA(f),i.style.background=p;break;case"stroke":var g=n.parsedStyle.stroke,v="";nf(g)?g.isNone?v="transparent":v=n.getAttribute("stroke"):Array.isArray(g)?v=n.getAttribute("stroke"):pA(g),i.style["border-color"]=v,i.style["border-style"]="solid";break;case"lineWidth":var m=n.parsedStyle.lineWidth;i.style["border-width"]="".concat(m||0,"px");break;case"lineDash":i.style["border-style"]="dashed";break;case"filter":var y=n.style.filter;i.style.filter=y;break;default:!ut(n.style[t])&&n.style[t]!==""&&(i.style[t]=n.style[t])}}}])})();pU.tag="HTMLRendering";var SK=(function(r){function e(){var t;Ne(this,e);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return t=Ft(this,e,[].concat(i)),t.name="html-renderer",t}return Mt(e,r),Pe(e,[{key:"init",value:function(){this.addRenderingPlugin(new pU)}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}}])})(ko),_K=Object.freeze({__proto__:null,Plugin:SK}),vU=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"apply",value:function(t,n){var i=this,a=t.renderingService,s=t.renderingContext,o=t.config;this.context=t;var A=s.root.ownerDocument.defaultView,l=function(_){a.hooks.pointerMove.call(_)},u=function(_){a.hooks.pointerUp.call(_)},c=function(_){a.hooks.pointerDown.call(_)},d=function(_){a.hooks.pointerOver.call(_)},h=function(_){a.hooks.pointerOut.call(_)},f=function(_){a.hooks.pointerCancel.call(_)},p=function(_){a.hooks.pointerWheel.call(_)},g=function(_){a.hooks.click.call(_)},v=function(_){n.globalThis.document.addEventListener("pointermove",l,!0),_.addEventListener("pointerdown",c,!0),_.addEventListener("pointerleave",h,!0),_.addEventListener("pointerover",d,!0),n.globalThis.addEventListener("pointerup",u,!0),n.globalThis.addEventListener("pointercancel",f,!0)},m=function(_){_.addEventListener("touchstart",c,!0),_.addEventListener("touchend",u,!0),_.addEventListener("touchmove",l,!0),_.addEventListener("touchcancel",f,!0)},y=function(_){n.globalThis.document.addEventListener("mousemove",l,!0),_.addEventListener("mousedown",c,!0),_.addEventListener("mouseout",h,!0),_.addEventListener("mouseover",d,!0),n.globalThis.addEventListener("mouseup",u,!0)},w=function(_){n.globalThis.document.removeEventListener("pointermove",l,!0),_.removeEventListener("pointerdown",c,!0),_.removeEventListener("pointerleave",h,!0),_.removeEventListener("pointerover",d,!0),n.globalThis.removeEventListener("pointerup",u,!0),n.globalThis.removeEventListener("pointercancel",f,!0)},B=function(_){_.removeEventListener("touchstart",c,!0),_.removeEventListener("touchend",u,!0),_.removeEventListener("touchmove",l,!0),_.removeEventListener("touchcancel",f,!0)},x=function(_){n.globalThis.document.removeEventListener("mousemove",l,!0),_.removeEventListener("mousedown",c,!0),_.removeEventListener("mouseout",h,!0),_.removeEventListener("mouseover",d,!0),n.globalThis.removeEventListener("mouseup",u,!0)};a.hooks.init.tap(r.tag,function(){var k=i.context.contextService.getDomElement();n.globalThis.navigator.msPointerEnabled?(k.style.msContentZooming="none",k.style.msTouchAction="none"):A.supportsPointerEvents&&(k.style.touchAction="none"),A.supportsPointerEvents?v(k):y(k),A.supportsTouchEvents&&m(k),o.useNativeClickEvent&&k.addEventListener("click",g,!0),k.addEventListener("wheel",p,{passive:!0,capture:!0})}),a.hooks.destroy.tap(r.tag,function(){var k=i.context.contextService.getDomElement();n.globalThis.navigator.msPointerEnabled?(k.style.msContentZooming="",k.style.msTouchAction=""):A.supportsPointerEvents&&(k.style.touchAction=""),A.supportsPointerEvents?w(k):x(k),A.supportsTouchEvents&&B(k),o.useNativeClickEvent&&k.removeEventListener("click",g,!0),k.removeEventListener("wheel",p,!0)})}}])})();vU.tag="DOMInteraction";var kK=(function(r){function e(){var t;Ne(this,e);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return t=Ft(this,e,[].concat(i)),t.name="dom-interaction",t}return Mt(e,r),Pe(e,[{key:"init",value:function(){this.addRenderingPlugin(new vU)}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}}])})(ko),TK=Object.freeze({__proto__:null,Plugin:kK}),FK=(function(){function r(){Ne(this,r)}return Pe(r,[{key:"apply",value:function(t){var n=t.renderingService,i=t.contextService,a=t.config,s=i.getDomElement(),o=function(p){n.hooks.pointerDown.call(p)},A=function(p){n.hooks.pointerUp.call(p)},l=function(p){n.hooks.pointerMove.call(p)},u=function(p){n.hooks.pointerOver.call(p)},c=function(p){n.hooks.pointerOut.call(p)},d=function(p){n.hooks.click.call(p)},h=function(p){n.hooks.pointerCancel.call(p)};n.hooks.init.tap(r.tag,function(){s.addEventListener("touchstart",o,!0),s.addEventListener("touchend",A,!0),s.addEventListener("touchmove",l,!0),s.addEventListener("touchcancel",h,!0),s.addEventListener("mouseout",c,!0),s.addEventListener("mouseover",u,!0),a.useNativeClickEvent&&s.addEventListener("click",d,!0)}),n.hooks.destroy.tap(r.tag,function(){s.removeEventListener("touchstart",o,!0),s.removeEventListener("touchend",A,!0),s.removeEventListener("touchmove",l,!0),s.removeEventListener("touchcancel",h,!0),s.removeEventListener("mouseout",c,!0),s.removeEventListener("mouseover",u,!0),a.useNativeClickEvent&&s.removeEventListener("click",d,!0)})}}])})();FK.tag="MobileInteraction";/*!
140
- * html2canvas 1.4.1 <https://html2canvas.hertzen.com>
141
- * Copyright (c) 2022 Niklas von Hertzen <https://hertzen.com>
142
- * Released under MIT License
143
- *//*! *****************************************************************************
144
- Copyright (c) Microsoft Corporation.
145
-
146
- Permission to use, copy, modify, and/or distribute this software for any
147
- purpose with or without fee is hereby granted.
148
-
149
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
150
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
151
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
152
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
153
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
154
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
155
- PERFORMANCE OF THIS SOFTWARE.
156
- ***************************************************************************** */var _B=function(r,e){return _B=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])},_B(r,e)};function Pa(r,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");_B(r,e);function t(){this.constructor=r}r.prototype=e===null?Object.create(e):(t.prototype=e.prototype,new t)}function sa(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,[])).next())})}function Hi(r,e){var t={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},n,i,a,s;return s={next:o(0),throw:o(1),return:o(2)},typeof Symbol=="function"&&(s[Symbol.iterator]=function(){return this}),s;function o(l){return function(u){return A([l,u])}}function A(l){if(n)throw new TypeError("Generator is already executing.");for(;t;)try{if(n=1,i&&(a=l[0]&2?i.return:l[0]?i.throw||((a=i.return)&&a.call(i),0):i.next)&&!(a=a.call(i,l[1])).done)return a;switch(i=0,a&&(l=[l[0]&2,a.value]),l[0]){case 0:case 1:a=l;break;case 4:return t.label++,{value:l[1],done:!1};case 5:t.label++,i=l[1],l=[0];continue;case 7:l=t.ops.pop(),t.trys.pop();continue;default:if(a=t.trys,!(a=a.length>0&&a[a.length-1])&&(l[0]===6||l[0]===2)){t=0;continue}if(l[0]===3&&(!a||l[1]>a[0]&&l[1]<a[3])){t.label=l[1];break}if(l[0]===6&&t.label<a[1]){t.label=a[1],a=l;break}if(a&&t.label<a[2]){t.label=a[2],t.ops.push(l);break}a[2]&&t.ops.pop(),t.trys.pop();continue}l=e.call(r,t)}catch(u){l=[6,u],i=0}finally{n=a=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}var mA=(function(){function r(e,t,n,i){this.left=e,this.top=t,this.width=n,this.height=i}return r.prototype.add=function(e,t,n,i){return new r(this.left+e,this.top+t,this.width+n,this.height+i)},r.fromClientRect=function(e,t){return new r(t.left+e.windowBounds.left,t.top+e.windowBounds.top,t.width,t.height)},r.fromDOMRectList=function(e,t){var n=Array.from(t).find(function(i){return i.width!==0});return n?new r(n.left+e.windowBounds.left,n.top+e.windowBounds.top,n.width,n.height):r.EMPTY},r.EMPTY=new r(0,0,0,0),r})(),ZE=function(r,e){return mA.fromClientRect(r,e.getBoundingClientRect())},Yf=function(r){for(var e=[],t=0,n=r.length;t<n;){var i=r.charCodeAt(t++);if(i>=55296&&i<=56319&&t<n){var a=r.charCodeAt(t++);(a&64512)===56320?e.push(((i&1023)<<10)+(a&1023)+65536):(e.push(i),t--)}else e.push(i)}return e},sr=function(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];if(String.fromCodePoint)return String.fromCodePoint.apply(String,r);var t=r.length;if(!t)return"";for(var n=[],i=-1,a="";++i<t;){var s=r[i];s<=65535?n.push(s):(s-=65536,n.push((s>>10)+55296,s%1024+56320)),(i+1===t||n.length>16384)&&(a+=String.fromCharCode.apply(String,n),n.length=0)}return a},sS="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",MK=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(var ud=0;ud<sS.length;ud++)MK[sS.charCodeAt(ud)]=ud;var oS="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",pu=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(var cd=0;cd<oS.length;cd++)pu[oS.charCodeAt(cd)]=cd;var IK=function(r){var e=r.length*.75,t=r.length,n,i=0,a,s,o,A;r[r.length-1]==="="&&(e--,r[r.length-2]==="="&&e--);var l=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&typeof Uint8Array.prototype.slice<"u"?new ArrayBuffer(e):new Array(e),u=Array.isArray(l)?l:new Uint8Array(l);for(n=0;n<t;n+=4)a=pu[r.charCodeAt(n)],s=pu[r.charCodeAt(n+1)],o=pu[r.charCodeAt(n+2)],A=pu[r.charCodeAt(n+3)],u[i++]=a<<2|s>>4,u[i++]=(s&15)<<4|o>>2,u[i++]=(o&3)<<6|A&63;return l},OK=function(r){for(var e=r.length,t=[],n=0;n<e;n+=2)t.push(r[n+1]<<8|r[n]);return t},LK=function(r){for(var e=r.length,t=[],n=0;n<e;n+=4)t.push(r[n+3]<<24|r[n+2]<<16|r[n+1]<<8|r[n]);return t},uA=5,JE=11,wv=2,NK=JE-uA,mU=65536>>uA,PK=1<<uA,bv=PK-1,UK=1024>>uA,RK=mU+UK,QK=RK,DK=32,HK=QK+DK,$K=65536>>JE,GK=1<<NK,zK=GK-1,AS=function(r,e,t){return r.slice?r.slice(e,t):new Uint16Array(Array.prototype.slice.call(r,e,t))},VK=function(r,e,t){return r.slice?r.slice(e,t):new Uint32Array(Array.prototype.slice.call(r,e,t))},KK=function(r,e){var t=IK(r),n=Array.isArray(t)?LK(t):new Uint32Array(t),i=Array.isArray(t)?OK(t):new Uint16Array(t),a=24,s=AS(i,a/2,n[4]/2),o=n[5]===2?AS(i,(a+n[4])/2):VK(n,Math.ceil((a+n[4])/4));return new jK(n[0],n[1],n[2],n[3],s,o)},jK=(function(){function r(e,t,n,i,a,s){this.initialValue=e,this.errorValue=t,this.highStart=n,this.highValueIndex=i,this.index=a,this.data=s}return r.prototype.get=function(e){var t;if(e>=0){if(e<55296||e>56319&&e<=65535)return t=this.index[e>>uA],t=(t<<wv)+(e&bv),this.data[t];if(e<=65535)return t=this.index[mU+(e-55296>>uA)],t=(t<<wv)+(e&bv),this.data[t];if(e<this.highStart)return t=HK-$K+(e>>JE),t=this.index[t],t+=e>>uA&zK,t=this.index[t],t=(t<<wv)+(e&bv),this.data[t];if(e<=1114111)return this.data[this.highValueIndex]}return this.errorValue},r})(),lS="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",WK=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(var dd=0;dd<lS.length;dd++)WK[lS.charCodeAt(dd)]=dd;var qK="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==",uS=50,YK=1,yU=2,wU=3,XK=4,ZK=5,cS=7,bU=8,dS=9,oo=10,kB=11,hS=12,TB=13,JK=14,vu=15,FB=16,hd=17,iu=18,e9=19,fS=20,MB=21,au=22,Bv=23,DA=24,$i=25,mu=26,yu=27,HA=28,t9=29,Jo=30,n9=31,fd=32,gd=33,IB=34,OB=35,LB=36,ec=37,NB=38,Ch=39,Sh=40,Ev=41,BU=42,r9=43,i9=[9001,65288],EU="!",qt="×",pd="÷",PB=KK(qK),Bs=[Jo,LB],UB=[YK,yU,wU,ZK],xU=[oo,bU],gS=[yu,mu],a9=UB.concat(xU),pS=[NB,Ch,Sh,IB,OB],s9=[vu,TB],o9=function(r,e){e===void 0&&(e="strict");var t=[],n=[],i=[];return r.forEach(function(a,s){var o=PB.get(a);if(o>uS?(i.push(!0),o-=uS):i.push(!1),["normal","auto","loose"].indexOf(e)!==-1&&[8208,8211,12316,12448].indexOf(a)!==-1)return n.push(s),t.push(FB);if(o===XK||o===kB){if(s===0)return n.push(s),t.push(Jo);var A=t[s-1];return a9.indexOf(A)===-1?(n.push(n[s-1]),t.push(A)):(n.push(s),t.push(Jo))}if(n.push(s),o===n9)return t.push(e==="strict"?MB:ec);if(o===BU||o===t9)return t.push(Jo);if(o===r9)return a>=131072&&a<=196605||a>=196608&&a<=262141?t.push(ec):t.push(Jo);t.push(o)}),[n,t,i]},xv=function(r,e,t,n){var i=n[t];if(Array.isArray(r)?r.indexOf(i)!==-1:r===i)for(var a=t;a<=n.length;){a++;var s=n[a];if(s===e)return!0;if(s!==oo)break}if(i===oo)for(var a=t;a>0;){a--;var o=n[a];if(Array.isArray(r)?r.indexOf(o)!==-1:r===o)for(var A=t;A<=n.length;){A++;var s=n[A];if(s===e)return!0;if(s!==oo)break}if(o!==oo)break}return!1},vS=function(r,e){for(var t=r;t>=0;){var n=e[t];if(n===oo)t--;else return n}return 0},A9=function(r,e,t,n,i){if(t[n]===0)return qt;var a=n-1;if(Array.isArray(i)&&i[a]===!0)return qt;var s=a-1,o=a+1,A=e[a],l=s>=0?e[s]:0,u=e[o];if(A===yU&&u===wU)return qt;if(UB.indexOf(A)!==-1)return EU;if(UB.indexOf(u)!==-1||xU.indexOf(u)!==-1)return qt;if(vS(a,e)===bU)return pd;if(PB.get(r[a])===kB||(A===fd||A===gd)&&PB.get(r[o])===kB||A===cS||u===cS||A===dS||[oo,TB,vu].indexOf(A)===-1&&u===dS||[hd,iu,e9,DA,HA].indexOf(u)!==-1||vS(a,e)===au||xv(Bv,au,a,e)||xv([hd,iu],MB,a,e)||xv(hS,hS,a,e))return qt;if(A===oo)return pd;if(A===Bv||u===Bv)return qt;if(u===FB||A===FB)return pd;if([TB,vu,MB].indexOf(u)!==-1||A===JK||l===LB&&s9.indexOf(A)!==-1||A===HA&&u===LB||u===fS||Bs.indexOf(u)!==-1&&A===$i||Bs.indexOf(A)!==-1&&u===$i||A===yu&&[ec,fd,gd].indexOf(u)!==-1||[ec,fd,gd].indexOf(A)!==-1&&u===mu||Bs.indexOf(A)!==-1&&gS.indexOf(u)!==-1||gS.indexOf(A)!==-1&&Bs.indexOf(u)!==-1||[yu,mu].indexOf(A)!==-1&&(u===$i||[au,vu].indexOf(u)!==-1&&e[o+1]===$i)||[au,vu].indexOf(A)!==-1&&u===$i||A===$i&&[$i,HA,DA].indexOf(u)!==-1)return qt;if([$i,HA,DA,hd,iu].indexOf(u)!==-1)for(var c=a;c>=0;){var d=e[c];if(d===$i)return qt;if([HA,DA].indexOf(d)!==-1)c--;else break}if([yu,mu].indexOf(u)!==-1)for(var c=[hd,iu].indexOf(A)!==-1?s:a;c>=0;){var d=e[c];if(d===$i)return qt;if([HA,DA].indexOf(d)!==-1)c--;else break}if(NB===A&&[NB,Ch,IB,OB].indexOf(u)!==-1||[Ch,IB].indexOf(A)!==-1&&[Ch,Sh].indexOf(u)!==-1||[Sh,OB].indexOf(A)!==-1&&u===Sh||pS.indexOf(A)!==-1&&[fS,mu].indexOf(u)!==-1||pS.indexOf(u)!==-1&&A===yu||Bs.indexOf(A)!==-1&&Bs.indexOf(u)!==-1||A===DA&&Bs.indexOf(u)!==-1||Bs.concat($i).indexOf(A)!==-1&&u===au&&i9.indexOf(r[o])===-1||Bs.concat($i).indexOf(u)!==-1&&A===iu)return qt;if(A===Ev&&u===Ev){for(var h=t[a],f=1;h>0&&(h--,e[h]===Ev);)f++;if(f%2!==0)return qt}return A===fd&&u===gd?qt:pd},l9=function(r,e){e||(e={lineBreak:"normal",wordBreak:"normal"});var t=o9(r,e.lineBreak),n=t[0],i=t[1],a=t[2];(e.wordBreak==="break-all"||e.wordBreak==="break-word")&&(i=i.map(function(o){return[$i,Jo,BU].indexOf(o)!==-1?ec:o}));var s=e.wordBreak==="keep-all"?a.map(function(o,A){return o&&r[A]>=19968&&r[A]<=40959}):void 0;return[n,i,s]},u9=(function(){function r(e,t,n,i){this.codePoints=e,this.required=t===EU,this.start=n,this.end=i}return r.prototype.slice=function(){return sr.apply(void 0,this.codePoints.slice(this.start,this.end))},r})(),c9=function(r,e){var t=Yf(r),n=l9(t,e),i=n[0],a=n[1],s=n[2],o=t.length,A=0,l=0;return{next:function(){if(l>=o)return{done:!0,value:null};for(var u=qt;l<o&&(u=A9(t,a,i,++l,s))===qt;);if(u!==qt||l===o){var c=new u9(t,u,A,l);return A=l,{value:c,done:!1}}return{done:!0,value:null}}}},d9=1,h9=2,Sc=4,mS=8,of=10,yS=47,Du=92,f9=9,g9=32,vd=34,su=61,p9=35,v9=36,m9=37,md=39,yd=40,ou=41,y9=95,Fi=45,w9=33,b9=60,B9=62,E9=64,x9=91,C9=93,S9=61,_9=123,wd=63,k9=125,wS=124,T9=126,F9=128,bS=65533,Cv=42,rA=43,M9=44,I9=58,O9=59,tc=46,L9=0,N9=8,P9=11,U9=14,R9=31,Q9=127,Ka=-1,CU=48,SU=97,_U=101,D9=102,H9=117,$9=122,kU=65,TU=69,FU=70,G9=85,z9=90,ni=function(r){return r>=CU&&r<=57},V9=function(r){return r>=55296&&r<=57343},$A=function(r){return ni(r)||r>=kU&&r<=FU||r>=SU&&r<=D9},K9=function(r){return r>=SU&&r<=$9},j9=function(r){return r>=kU&&r<=z9},W9=function(r){return K9(r)||j9(r)},q9=function(r){return r>=F9},bd=function(r){return r===of||r===f9||r===g9},Af=function(r){return W9(r)||q9(r)||r===y9},BS=function(r){return Af(r)||ni(r)||r===Fi},Y9=function(r){return r>=L9&&r<=N9||r===P9||r>=U9&&r<=R9||r===Q9},eo=function(r,e){return r!==Du?!1:e!==of},Bd=function(r,e,t){return r===Fi?Af(e)||eo(e,t):Af(r)?!0:!!(r===Du&&eo(r,e))},Sv=function(r,e,t){return r===rA||r===Fi?ni(e)?!0:e===tc&&ni(t):ni(r===tc?e:r)},X9=function(r){var e=0,t=1;(r[e]===rA||r[e]===Fi)&&(r[e]===Fi&&(t=-1),e++);for(var n=[];ni(r[e]);)n.push(r[e++]);var i=n.length?parseInt(sr.apply(void 0,n),10):0;r[e]===tc&&e++;for(var a=[];ni(r[e]);)a.push(r[e++]);var s=a.length,o=s?parseInt(sr.apply(void 0,a),10):0;(r[e]===TU||r[e]===_U)&&e++;var A=1;(r[e]===rA||r[e]===Fi)&&(r[e]===Fi&&(A=-1),e++);for(var l=[];ni(r[e]);)l.push(r[e++]);var u=l.length?parseInt(sr.apply(void 0,l),10):0;return t*(i+o*Math.pow(10,-s))*Math.pow(10,A*u)},Z9={type:2},J9={type:3},ej={type:4},tj={type:13},nj={type:8},rj={type:21},ij={type:9},aj={type:10},sj={type:11},oj={type:12},Aj={type:14},Ed={type:23},lj={type:1},uj={type:25},cj={type:24},dj={type:26},hj={type:27},fj={type:28},gj={type:29},pj={type:31},RB={type:32},MU=(function(){function r(){this._value=[]}return r.prototype.write=function(e){this._value=this._value.concat(Yf(e))},r.prototype.read=function(){for(var e=[],t=this.consumeToken();t!==RB;)e.push(t),t=this.consumeToken();return e},r.prototype.consumeToken=function(){var e=this.consumeCodePoint();switch(e){case vd:return this.consumeStringToken(vd);case p9:var t=this.peekCodePoint(0),n=this.peekCodePoint(1),i=this.peekCodePoint(2);if(BS(t)||eo(n,i)){var a=Bd(t,n,i)?h9:d9,s=this.consumeName();return{type:5,value:s,flags:a}}break;case v9:if(this.peekCodePoint(0)===su)return this.consumeCodePoint(),tj;break;case md:return this.consumeStringToken(md);case yd:return Z9;case ou:return J9;case Cv:if(this.peekCodePoint(0)===su)return this.consumeCodePoint(),Aj;break;case rA:if(Sv(e,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(e),this.consumeNumericToken();break;case M9:return ej;case Fi:var o=e,A=this.peekCodePoint(0),l=this.peekCodePoint(1);if(Sv(o,A,l))return this.reconsumeCodePoint(e),this.consumeNumericToken();if(Bd(o,A,l))return this.reconsumeCodePoint(e),this.consumeIdentLikeToken();if(A===Fi&&l===B9)return this.consumeCodePoint(),this.consumeCodePoint(),cj;break;case tc:if(Sv(e,this.peekCodePoint(0),this.peekCodePoint(1)))return this.reconsumeCodePoint(e),this.consumeNumericToken();break;case yS:if(this.peekCodePoint(0)===Cv)for(this.consumeCodePoint();;){var u=this.consumeCodePoint();if(u===Cv&&(u=this.consumeCodePoint(),u===yS))return this.consumeToken();if(u===Ka)return this.consumeToken()}break;case I9:return dj;case O9:return hj;case b9:if(this.peekCodePoint(0)===w9&&this.peekCodePoint(1)===Fi&&this.peekCodePoint(2)===Fi)return this.consumeCodePoint(),this.consumeCodePoint(),uj;break;case E9:var c=this.peekCodePoint(0),d=this.peekCodePoint(1),h=this.peekCodePoint(2);if(Bd(c,d,h)){var s=this.consumeName();return{type:7,value:s}}break;case x9:return fj;case Du:if(eo(e,this.peekCodePoint(0)))return this.reconsumeCodePoint(e),this.consumeIdentLikeToken();break;case C9:return gj;case S9:if(this.peekCodePoint(0)===su)return this.consumeCodePoint(),nj;break;case _9:return sj;case k9:return oj;case H9:case G9:var f=this.peekCodePoint(0),p=this.peekCodePoint(1);return f===rA&&($A(p)||p===wd)&&(this.consumeCodePoint(),this.consumeUnicodeRangeToken()),this.reconsumeCodePoint(e),this.consumeIdentLikeToken();case wS:if(this.peekCodePoint(0)===su)return this.consumeCodePoint(),ij;if(this.peekCodePoint(0)===wS)return this.consumeCodePoint(),rj;break;case T9:if(this.peekCodePoint(0)===su)return this.consumeCodePoint(),aj;break;case Ka:return RB}return bd(e)?(this.consumeWhiteSpace(),pj):ni(e)?(this.reconsumeCodePoint(e),this.consumeNumericToken()):Af(e)?(this.reconsumeCodePoint(e),this.consumeIdentLikeToken()):{type:6,value:sr(e)}},r.prototype.consumeCodePoint=function(){var e=this._value.shift();return typeof e>"u"?-1:e},r.prototype.reconsumeCodePoint=function(e){this._value.unshift(e)},r.prototype.peekCodePoint=function(e){return e>=this._value.length?-1:this._value[e]},r.prototype.consumeUnicodeRangeToken=function(){for(var e=[],t=this.consumeCodePoint();$A(t)&&e.length<6;)e.push(t),t=this.consumeCodePoint();for(var n=!1;t===wd&&e.length<6;)e.push(t),t=this.consumeCodePoint(),n=!0;if(n){var i=parseInt(sr.apply(void 0,e.map(function(A){return A===wd?CU:A})),16),a=parseInt(sr.apply(void 0,e.map(function(A){return A===wd?FU:A})),16);return{type:30,start:i,end:a}}var s=parseInt(sr.apply(void 0,e),16);if(this.peekCodePoint(0)===Fi&&$A(this.peekCodePoint(1))){this.consumeCodePoint(),t=this.consumeCodePoint();for(var o=[];$A(t)&&o.length<6;)o.push(t),t=this.consumeCodePoint();var a=parseInt(sr.apply(void 0,o),16);return{type:30,start:s,end:a}}else return{type:30,start:s,end:s}},r.prototype.consumeIdentLikeToken=function(){var e=this.consumeName();return e.toLowerCase()==="url"&&this.peekCodePoint(0)===yd?(this.consumeCodePoint(),this.consumeUrlToken()):this.peekCodePoint(0)===yd?(this.consumeCodePoint(),{type:19,value:e}):{type:20,value:e}},r.prototype.consumeUrlToken=function(){var e=[];if(this.consumeWhiteSpace(),this.peekCodePoint(0)===Ka)return{type:22,value:""};var t=this.peekCodePoint(0);if(t===md||t===vd){var n=this.consumeStringToken(this.consumeCodePoint());return n.type===0&&(this.consumeWhiteSpace(),this.peekCodePoint(0)===Ka||this.peekCodePoint(0)===ou)?(this.consumeCodePoint(),{type:22,value:n.value}):(this.consumeBadUrlRemnants(),Ed)}for(;;){var i=this.consumeCodePoint();if(i===Ka||i===ou)return{type:22,value:sr.apply(void 0,e)};if(bd(i))return this.consumeWhiteSpace(),this.peekCodePoint(0)===Ka||this.peekCodePoint(0)===ou?(this.consumeCodePoint(),{type:22,value:sr.apply(void 0,e)}):(this.consumeBadUrlRemnants(),Ed);if(i===vd||i===md||i===yd||Y9(i))return this.consumeBadUrlRemnants(),Ed;if(i===Du)if(eo(i,this.peekCodePoint(0)))e.push(this.consumeEscapedCodePoint());else return this.consumeBadUrlRemnants(),Ed;else e.push(i)}},r.prototype.consumeWhiteSpace=function(){for(;bd(this.peekCodePoint(0));)this.consumeCodePoint()},r.prototype.consumeBadUrlRemnants=function(){for(;;){var e=this.consumeCodePoint();if(e===ou||e===Ka)return;eo(e,this.peekCodePoint(0))&&this.consumeEscapedCodePoint()}},r.prototype.consumeStringSlice=function(e){for(var t=5e4,n="";e>0;){var i=Math.min(t,e);n+=sr.apply(void 0,this._value.splice(0,i)),e-=i}return this._value.shift(),n},r.prototype.consumeStringToken=function(e){var t="",n=0;do{var i=this._value[n];if(i===Ka||i===void 0||i===e)return t+=this.consumeStringSlice(n),{type:0,value:t};if(i===of)return this._value.splice(0,n),lj;if(i===Du){var a=this._value[n+1];a!==Ka&&a!==void 0&&(a===of?(t+=this.consumeStringSlice(n),n=-1,this._value.shift()):eo(i,a)&&(t+=this.consumeStringSlice(n),t+=sr(this.consumeEscapedCodePoint()),n=-1))}n++}while(!0)},r.prototype.consumeNumber=function(){var e=[],t=Sc,n=this.peekCodePoint(0);for((n===rA||n===Fi)&&e.push(this.consumeCodePoint());ni(this.peekCodePoint(0));)e.push(this.consumeCodePoint());n=this.peekCodePoint(0);var i=this.peekCodePoint(1);if(n===tc&&ni(i))for(e.push(this.consumeCodePoint(),this.consumeCodePoint()),t=mS;ni(this.peekCodePoint(0));)e.push(this.consumeCodePoint());n=this.peekCodePoint(0),i=this.peekCodePoint(1);var a=this.peekCodePoint(2);if((n===TU||n===_U)&&((i===rA||i===Fi)&&ni(a)||ni(i)))for(e.push(this.consumeCodePoint(),this.consumeCodePoint()),t=mS;ni(this.peekCodePoint(0));)e.push(this.consumeCodePoint());return[X9(e),t]},r.prototype.consumeNumericToken=function(){var e=this.consumeNumber(),t=e[0],n=e[1],i=this.peekCodePoint(0),a=this.peekCodePoint(1),s=this.peekCodePoint(2);if(Bd(i,a,s)){var o=this.consumeName();return{type:15,number:t,flags:n,unit:o}}return i===m9?(this.consumeCodePoint(),{type:16,number:t,flags:n}):{type:17,number:t,flags:n}},r.prototype.consumeEscapedCodePoint=function(){var e=this.consumeCodePoint();if($A(e)){for(var t=sr(e);$A(this.peekCodePoint(0))&&t.length<6;)t+=sr(this.consumeCodePoint());bd(this.peekCodePoint(0))&&this.consumeCodePoint();var n=parseInt(t,16);return n===0||V9(n)||n>1114111?bS:n}return e===Ka?bS:e},r.prototype.consumeName=function(){for(var e="";;){var t=this.consumeCodePoint();if(BS(t))e+=sr(t);else if(eo(t,this.peekCodePoint(0)))e+=sr(this.consumeEscapedCodePoint());else return this.reconsumeCodePoint(t),e}},r})(),IU=(function(){function r(e){this._tokens=e}return r.create=function(e){var t=new MU;return t.write(e),new r(t.read())},r.parseValue=function(e){return r.create(e).parseComponentValue()},r.parseValues=function(e){return r.create(e).parseComponentValues()},r.prototype.parseComponentValue=function(){for(var e=this.consumeToken();e.type===31;)e=this.consumeToken();if(e.type===32)throw new 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 new SyntaxError("Error parsing CSS component value, multiple values found when expecting only one")},r.prototype.parseComponentValues=function(){for(var e=[];;){var t=this.consumeComponentValue();if(t.type===32)return e;e.push(t),e.push()}},r.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},r.prototype.consumeSimpleBlock=function(e){for(var t={type:e,values:[]},n=this.consumeToken();;){if(n.type===32||vj(n,e))return t;this.reconsumeToken(n),t.values.push(this.consumeComponentValue()),n=this.consumeToken()}},r.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())}},r.prototype.consumeToken=function(){var e=this._tokens.shift();return typeof e>"u"?RB:e},r.prototype.reconsumeToken=function(e){this._tokens.unshift(e)},r})(),_c=function(r){return r.type===15},Xf=function(r){return r.type===17},er=function(r){return r.type===20},QB=function(r,e){return er(r)&&r.value===e},Zf=function(r){return r.type!==31&&r.type!==4},gs=function(r){var e=[],t=[];return r.forEach(function(n){if(n.type===4){if(t.length===0)throw new Error("Error parsing function args, zero tokens for arg");e.push(t),t=[];return}n.type!==31&&t.push(n)}),t.length&&e.push(t),e},vj=function(r,e){return e===11&&r.type===12||e===28&&r.type===29?!0:e===2&&r.type===3},Co=function(r){return r.type===17||r.type===15},pr=function(r){return r.type===16||Co(r)},OU=function(r){return r.length>1?[r[0],r[1]]:[r[0]]},Kr={type:17,number:0,flags:Sc},ex={type:16,number:50,flags:Sc},Ao={type:16,number:100,flags:Sc},wu=function(r,e,t){var n=r[0],i=r[1];return[Tn(n,e),Tn(typeof i<"u"?i:n,t)]},Tn=function(r,e){if(r.type===16)return r.number/100*e;if(_c(r))switch(r.unit){case"rem":case"em":return 16*r.number;case"px":default:return r.number}return r.number},LU="deg",NU="grad",PU="rad",UU="turn",Jf={name:"angle",parse:function(r,e){if(e.type===15)switch(e.unit){case LU:return Math.PI*e.number/180;case NU:return Math.PI/200*e.number;case PU:return e.number;case UU:return Math.PI*2*e.number}throw new Error("Unsupported angle type")}},RU=function(r){return r.type===15&&(r.unit===LU||r.unit===NU||r.unit===PU||r.unit===UU)},QU=function(r){var e=r.filter(er).map(function(t){return t.value}).join(" ");switch(e){case"to bottom right":case"to right bottom":case"left top":case"top left":return[Kr,Kr];case"to top":case"bottom":return da(0);case"to bottom left":case"to left bottom":case"right top":case"top right":return[Kr,Ao];case"to right":case"left":return da(90);case"to top left":case"to left top":case"right bottom":case"bottom right":return[Ao,Ao];case"to bottom":case"top":return da(180);case"to top right":case"to right top":case"left bottom":case"bottom left":return[Ao,Kr];case"to left":case"right":return da(270)}return 0},da=function(r){return Math.PI*r/180},wo={name:"color",parse:function(r,e){if(e.type===18){var t=mj[e.name];if(typeof t>"u")throw new Error('Attempting to parse an unsupported color function "'+e.name+'"');return t(r,e.values)}if(e.type===5){if(e.value.length===3){var n=e.value.substring(0,1),i=e.value.substring(1,2),a=e.value.substring(2,3);return lo(parseInt(n+n,16),parseInt(i+i,16),parseInt(a+a,16),1)}if(e.value.length===4){var n=e.value.substring(0,1),i=e.value.substring(1,2),a=e.value.substring(2,3),s=e.value.substring(3,4);return lo(parseInt(n+n,16),parseInt(i+i,16),parseInt(a+a,16),parseInt(s+s,16)/255)}if(e.value.length===6){var n=e.value.substring(0,2),i=e.value.substring(2,4),a=e.value.substring(4,6);return lo(parseInt(n,16),parseInt(i,16),parseInt(a,16),1)}if(e.value.length===8){var n=e.value.substring(0,2),i=e.value.substring(2,4),a=e.value.substring(4,6),s=e.value.substring(6,8);return lo(parseInt(n,16),parseInt(i,16),parseInt(a,16),parseInt(s,16)/255)}}if(e.type===20){var o=nc[e.value.toUpperCase()];if(typeof o<"u")return o}return nc.TRANSPARENT}},vl=function(r){return(255&r)===0},Nr=function(r){var e=255&r,t=255&r>>8,n=255&r>>16,i=255&r>>24;return e<255?"rgba("+i+","+n+","+t+","+e/255+")":"rgb("+i+","+n+","+t+")"},lo=function(r,e,t,n){return(r<<24|e<<16|t<<8|Math.round(n*255)<<0)>>>0},ES=function(r,e){if(r.type===17)return r.number;if(r.type===16){var t=e===3?1:255;return e===3?r.number/100*t:Math.round(r.number/100*t)}return 0},xS=function(r,e){var t=e.filter(Zf);if(t.length===3){var n=t.map(ES),i=n[0],a=n[1],s=n[2];return lo(i,a,s,1)}if(t.length===4){var o=t.map(ES),i=o[0],a=o[1],s=o[2],A=o[3];return lo(i,a,s,A)}return 0};function _v(r,e,t){return t<0&&(t+=1),t>=1&&(t-=1),t<1/6?(e-r)*t*6+r:t<1/2?e:t<2/3?(e-r)*6*(2/3-t)+r:r}var CS=function(r,e){var t=e.filter(Zf),n=t[0],i=t[1],a=t[2],s=t[3],o=(n.type===17?da(n.number):Jf.parse(r,n))/(Math.PI*2),A=pr(i)?i.number/100:0,l=pr(a)?a.number/100:0,u=typeof s<"u"&&pr(s)?Tn(s,1):1;if(A===0)return lo(l*255,l*255,l*255,1);var c=l<=.5?l*(A+1):l+A-l*A,d=l*2-c,h=_v(d,c,o+1/3),f=_v(d,c,o),p=_v(d,c,o-1/3);return lo(h*255,f*255,p*255,u)},mj={hsl:CS,hsla:CS,rgb:xS,rgba:xS},SS=function(r,e){return wo.parse(r,IU.create(e).parseComponentValue())},nc={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},yj={name:"background-clip",initialValue:"border-box",prefix:!1,type:1,parse:function(r,e){return e.map(function(t){if(er(t))switch(t.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},wj={name:"background-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},eg=function(r,e){var t=wo.parse(r,e[0]),n=e[1];return n&&pr(n)?{color:t,stop:n}:{color:t,stop:null}},_S=function(r,e){var t=r[0],n=r[r.length-1];t.stop===null&&(t.stop=Kr),n.stop===null&&(n.stop=Ao);for(var i=[],a=0,s=0;s<r.length;s++){var o=r[s].stop;if(o!==null){var A=Tn(o,e);A>a?i.push(A):i.push(a),a=A}else i.push(null)}for(var l=null,s=0;s<i.length;s++){var u=i[s];if(u===null)l===null&&(l=s);else if(l!==null){for(var c=s-l,d=i[l-1],h=(u-d)/(c+1),f=1;f<=c;f++)i[l+f-1]=h*f;l=null}}return r.map(function(p,g){var v=p.color;return{color:v,stop:Math.max(Math.min(1,i[g]/e),0)}})},bj=function(r,e,t){var n=e/2,i=t/2,a=Tn(r[0],e)-n,s=i-Tn(r[1],t);return(Math.atan2(s,a)+Math.PI*2)%(Math.PI*2)},Bj=function(r,e,t){var n=typeof r=="number"?r:bj(r,e,t),i=Math.abs(e*Math.sin(n))+Math.abs(t*Math.cos(n)),a=e/2,s=t/2,o=i/2,A=Math.sin(n-Math.PI/2)*o,l=Math.cos(n-Math.PI/2)*o;return[i,a-l,a+l,s-A,s+A]},Ba=function(r,e){return Math.sqrt(r*r+e*e)},kS=function(r,e,t,n,i){var a=[[0,0],[0,e],[r,0],[r,e]];return a.reduce(function(s,o){var A=o[0],l=o[1],u=Ba(t-A,n-l);return(i?u<s.optimumDistance:u>s.optimumDistance)?{optimumCorner:o,optimumDistance:u}:s},{optimumDistance:i?1/0:-1/0,optimumCorner:null}).optimumCorner},Ej=function(r,e,t,n,i){var a=0,s=0;switch(r.size){case 0:r.shape===0?a=s=Math.min(Math.abs(e),Math.abs(e-n),Math.abs(t),Math.abs(t-i)):r.shape===1&&(a=Math.min(Math.abs(e),Math.abs(e-n)),s=Math.min(Math.abs(t),Math.abs(t-i)));break;case 2:if(r.shape===0)a=s=Math.min(Ba(e,t),Ba(e,t-i),Ba(e-n,t),Ba(e-n,t-i));else if(r.shape===1){var o=Math.min(Math.abs(t),Math.abs(t-i))/Math.min(Math.abs(e),Math.abs(e-n)),A=kS(n,i,e,t,!0),l=A[0],u=A[1];a=Ba(l-e,(u-t)/o),s=o*a}break;case 1:r.shape===0?a=s=Math.max(Math.abs(e),Math.abs(e-n),Math.abs(t),Math.abs(t-i)):r.shape===1&&(a=Math.max(Math.abs(e),Math.abs(e-n)),s=Math.max(Math.abs(t),Math.abs(t-i)));break;case 3:if(r.shape===0)a=s=Math.max(Ba(e,t),Ba(e,t-i),Ba(e-n,t),Ba(e-n,t-i));else if(r.shape===1){var o=Math.max(Math.abs(t),Math.abs(t-i))/Math.max(Math.abs(e),Math.abs(e-n)),c=kS(n,i,e,t,!1),l=c[0],u=c[1];a=Ba(l-e,(u-t)/o),s=o*a}break}return Array.isArray(r.size)&&(a=Tn(r.size[0],n),s=r.size.length===2?Tn(r.size[1],i):a),[a,s]},xj=function(r,e){var t=da(180),n=[];return gs(e).forEach(function(i,a){if(a===0){var s=i[0];if(s.type===20&&s.value==="to"){t=QU(i);return}else if(RU(s)){t=Jf.parse(r,s);return}}var o=eg(r,i);n.push(o)}),{angle:t,stops:n,type:1}},xd=function(r,e){var t=da(180),n=[];return gs(e).forEach(function(i,a){if(a===0){var s=i[0];if(s.type===20&&["top","left","right","bottom"].indexOf(s.value)!==-1){t=QU(i);return}else if(RU(s)){t=(Jf.parse(r,s)+da(270))%da(360);return}}var o=eg(r,i);n.push(o)}),{angle:t,stops:n,type:1}},Cj=function(r,e){var t=da(180),n=[],i=1,a=0,s=3,o=[];return gs(e).forEach(function(A,l){var u=A[0];if(l===0){if(er(u)&&u.value==="linear"){i=1;return}else if(er(u)&&u.value==="radial"){i=2;return}}if(u.type===18){if(u.name==="from"){var c=wo.parse(r,u.values[0]);n.push({stop:Kr,color:c})}else if(u.name==="to"){var c=wo.parse(r,u.values[0]);n.push({stop:Ao,color:c})}else if(u.name==="color-stop"){var d=u.values.filter(Zf);if(d.length===2){var c=wo.parse(r,d[1]),h=d[0];Xf(h)&&n.push({stop:{type:16,number:h.number*100,flags:h.flags},color:c})}}}}),i===1?{angle:(t+da(180))%da(360),stops:n,type:i}:{size:s,shape:a,stops:n,position:o,type:i}},DU="closest-side",HU="farthest-side",$U="closest-corner",GU="farthest-corner",zU="circle",VU="ellipse",KU="cover",jU="contain",Sj=function(r,e){var t=0,n=3,i=[],a=[];return gs(e).forEach(function(s,o){var A=!0;if(o===0){var l=!1;A=s.reduce(function(c,d){if(l)if(er(d))switch(d.value){case"center":return a.push(ex),c;case"top":case"left":return a.push(Kr),c;case"right":case"bottom":return a.push(Ao),c}else(pr(d)||Co(d))&&a.push(d);else if(er(d))switch(d.value){case zU:return t=0,!1;case VU:return t=1,!1;case"at":return l=!0,!1;case DU:return n=0,!1;case KU:case HU:return n=1,!1;case jU:case $U:return n=2,!1;case GU:return n=3,!1}else if(Co(d)||pr(d))return Array.isArray(n)||(n=[]),n.push(d),!1;return c},A)}if(A){var u=eg(r,s);i.push(u)}}),{size:n,shape:t,stops:i,position:a,type:2}},Cd=function(r,e){var t=0,n=3,i=[],a=[];return gs(e).forEach(function(s,o){var A=!0;if(o===0?A=s.reduce(function(u,c){if(er(c))switch(c.value){case"center":return a.push(ex),!1;case"top":case"left":return a.push(Kr),!1;case"right":case"bottom":return a.push(Ao),!1}else if(pr(c)||Co(c))return a.push(c),!1;return u},A):o===1&&(A=s.reduce(function(u,c){if(er(c))switch(c.value){case zU:return t=0,!1;case VU:return t=1,!1;case jU:case DU:return n=0,!1;case HU:return n=1,!1;case $U:return n=2,!1;case KU:case GU:return n=3,!1}else if(Co(c)||pr(c))return Array.isArray(n)||(n=[]),n.push(c),!1;return u},A)),A){var l=eg(r,s);i.push(l)}}),{size:n,shape:t,stops:i,position:a,type:2}},_j=function(r){return r.type===1},kj=function(r){return r.type===2},tx={name:"image",parse:function(r,e){if(e.type===22){var t={url:e.value,type:0};return r.cache.addImage(e.value),t}if(e.type===18){var n=WU[e.name];if(typeof n>"u")throw new Error('Attempting to parse an unsupported image function "'+e.name+'"');return n(r,e.values)}throw new Error("Unsupported image type "+e.type)}};function Tj(r){return!(r.type===20&&r.value==="none")&&(r.type!==18||!!WU[r.name])}var WU={"linear-gradient":xj,"-moz-linear-gradient":xd,"-ms-linear-gradient":xd,"-o-linear-gradient":xd,"-webkit-linear-gradient":xd,"radial-gradient":Sj,"-moz-radial-gradient":Cd,"-ms-radial-gradient":Cd,"-o-radial-gradient":Cd,"-webkit-radial-gradient":Cd,"-webkit-gradient":Cj},Fj={name:"background-image",initialValue:"none",type:1,prefix:!1,parse:function(r,e){if(e.length===0)return[];var t=e[0];return t.type===20&&t.value==="none"?[]:e.filter(function(n){return Zf(n)&&Tj(n)}).map(function(n){return tx.parse(r,n)})}},Mj={name:"background-origin",initialValue:"border-box",prefix:!1,type:1,parse:function(r,e){return e.map(function(t){if(er(t))switch(t.value){case"padding-box":return 1;case"content-box":return 2}return 0})}},Ij={name:"background-position",initialValue:"0% 0%",type:1,prefix:!1,parse:function(r,e){return gs(e).map(function(t){return t.filter(pr)}).map(OU)}},Oj={name:"background-repeat",initialValue:"repeat",prefix:!1,type:1,parse:function(r,e){return gs(e).map(function(t){return t.filter(er).map(function(n){return n.value}).join(" ")}).map(Lj)}},Lj=function(r){switch(r){case"no-repeat":return 1;case"repeat-x":case"repeat no-repeat":return 2;case"repeat-y":case"no-repeat repeat":return 3;case"repeat":default:return 0}},ml;(function(r){r.AUTO="auto",r.CONTAIN="contain",r.COVER="cover"})(ml||(ml={}));var Nj={name:"background-size",initialValue:"0",prefix:!1,type:1,parse:function(r,e){return gs(e).map(function(t){return t.filter(Pj)})}},Pj=function(r){return er(r)||pr(r)},tg=function(r){return{name:"border-"+r+"-color",initialValue:"transparent",prefix:!1,type:3,format:"color"}},Uj=tg("top"),Rj=tg("right"),Qj=tg("bottom"),Dj=tg("left"),ng=function(r){return{name:"border-radius-"+r,initialValue:"0 0",prefix:!1,type:1,parse:function(e,t){return OU(t.filter(pr))}}},Hj=ng("top-left"),$j=ng("top-right"),Gj=ng("bottom-right"),zj=ng("bottom-left"),rg=function(r){return{name:"border-"+r+"-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}}},Vj=rg("top"),Kj=rg("right"),jj=rg("bottom"),Wj=rg("left"),ig=function(r){return{name:"border-"+r+"-width",initialValue:"0",type:0,prefix:!1,parse:function(e,t){return _c(t)?t.number:0}}},qj=ig("top"),Yj=ig("right"),Xj=ig("bottom"),Zj=ig("left"),Jj={name:"color",initialValue:"transparent",prefix:!1,type:3,format:"color"},eW={name:"direction",initialValue:"ltr",prefix:!1,type:2,parse:function(r,e){switch(e){case"rtl":return 1;case"ltr":default:return 0}}},tW={name:"display",initialValue:"inline-block",prefix:!1,type:1,parse:function(r,e){return e.filter(er).reduce(function(t,n){return t|nW(n.value)},0)}},nW=function(r){switch(r){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},rW={name:"float",initialValue:"none",prefix:!1,type:2,parse:function(r,e){switch(e){case"left":return 1;case"right":return 2;case"inline-start":return 3;case"inline-end":return 4}return 0}},iW={name:"letter-spacing",initialValue:"0",prefix:!1,type:0,parse:function(r,e){return e.type===20&&e.value==="normal"?0:e.type===17||e.type===15?e.number:0}},lf;(function(r){r.NORMAL="normal",r.STRICT="strict"})(lf||(lf={}));var aW={name:"line-break",initialValue:"normal",prefix:!1,type:2,parse:function(r,e){switch(e){case"strict":return lf.STRICT;case"normal":default:return lf.NORMAL}}},sW={name:"line-height",initialValue:"normal",prefix:!1,type:4},TS=function(r,e){return er(r)&&r.value==="normal"?1.2*e:r.type===17?e*r.number:pr(r)?Tn(r,e):e},oW={name:"list-style-image",initialValue:"none",type:0,prefix:!1,parse:function(r,e){return e.type===20&&e.value==="none"?null:tx.parse(r,e)}},AW={name:"list-style-position",initialValue:"outside",prefix:!1,type:2,parse:function(r,e){switch(e){case"inside":return 0;case"outside":default:return 1}}},lW={name:"list-style-type",initialValue:"none",prefix:!1,type:2,parse:function(r,e){switch(e){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;case"none":default:return-1}}},ag=function(r){return{name:"margin-"+r,initialValue:"0",prefix:!1,type:4}},uW=ag("top"),cW=ag("right"),dW=ag("bottom"),hW=ag("left"),fW={name:"overflow",initialValue:"visible",prefix:!1,type:1,parse:function(r,e){return e.filter(er).map(function(t){switch(t.value){case"hidden":return 1;case"scroll":return 2;case"clip":return 3;case"auto":return 4;case"visible":default:return 0}})}},gW={name:"overflow-wrap",initialValue:"normal",prefix:!1,type:2,parse:function(r,e){switch(e){case"break-word":return"break-word";case"normal":default:return"normal"}}},sg=function(r){return{name:"padding-"+r,initialValue:"0",prefix:!1,type:3,format:"length-percentage"}},pW=sg("top"),vW=sg("right"),mW=sg("bottom"),yW=sg("left"),wW={name:"text-align",initialValue:"left",prefix:!1,type:2,parse:function(r,e){switch(e){case"right":return 2;case"center":case"justify":return 1;case"left":default:return 0}}},bW={name:"position",initialValue:"static",prefix:!1,type:2,parse:function(r,e){switch(e){case"relative":return 1;case"absolute":return 2;case"fixed":return 3;case"sticky":return 4}return 0}},BW={name:"text-shadow",initialValue:"none",type:1,prefix:!1,parse:function(r,e){return e.length===1&&QB(e[0],"none")?[]:gs(e).map(function(t){for(var n={color:nc.TRANSPARENT,offsetX:Kr,offsetY:Kr,blur:Kr},i=0,a=0;a<t.length;a++){var s=t[a];Co(s)?(i===0?n.offsetX=s:i===1?n.offsetY=s:n.blur=s,i++):n.color=wo.parse(r,s)}return n})}},EW={name:"text-transform",initialValue:"none",prefix:!1,type:2,parse:function(r,e){switch(e){case"uppercase":return 2;case"lowercase":return 1;case"capitalize":return 3}return 0}},xW={name:"transform",initialValue:"none",prefix:!0,type:0,parse:function(r,e){if(e.type===20&&e.value==="none")return null;if(e.type===18){var t=_W[e.name];if(typeof t>"u")throw new Error('Attempting to parse an unsupported transform function "'+e.name+'"');return t(e.values)}return null}},CW=function(r){var e=r.filter(function(t){return t.type===17}).map(function(t){return t.number});return e.length===6?e:null},SW=function(r){var e=r.filter(function(A){return A.type===17}).map(function(A){return A.number}),t=e[0],n=e[1];e[2],e[3];var i=e[4],a=e[5];e[6],e[7],e[8],e[9],e[10],e[11];var s=e[12],o=e[13];return e[14],e[15],e.length===16?[t,n,i,a,s,o]:null},_W={matrix:CW,matrix3d:SW},FS={type:16,number:50,flags:Sc},kW=[FS,FS],TW={name:"transform-origin",initialValue:"50% 50%",prefix:!0,type:1,parse:function(r,e){var t=e.filter(pr);return t.length!==2?kW:[t[0],t[1]]}},FW={name:"visible",initialValue:"none",prefix:!1,type:2,parse:function(r,e){switch(e){case"hidden":return 1;case"collapse":return 2;case"visible":default:return 0}}},Hu;(function(r){r.NORMAL="normal",r.BREAK_ALL="break-all",r.KEEP_ALL="keep-all"})(Hu||(Hu={}));var MW={name:"word-break",initialValue:"normal",prefix:!1,type:2,parse:function(r,e){switch(e){case"break-all":return Hu.BREAK_ALL;case"keep-all":return Hu.KEEP_ALL;case"normal":default:return Hu.NORMAL}}},IW={name:"z-index",initialValue:"auto",prefix:!1,type:0,parse:function(r,e){if(e.type===20)return{auto:!0,order:0};if(Xf(e))return{auto:!1,order:e.number};throw new Error("Invalid z-index number parsed")}},qU={name:"time",parse:function(r,e){if(e.type===15)switch(e.unit.toLowerCase()){case"s":return 1e3*e.number;case"ms":return e.number}throw new Error("Unsupported time type")}},OW={name:"opacity",initialValue:"1",type:0,prefix:!1,parse:function(r,e){return Xf(e)?e.number:1}},LW={name:"text-decoration-color",initialValue:"transparent",prefix:!1,type:3,format:"color"},NW={name:"text-decoration-line",initialValue:"none",prefix:!1,type:1,parse:function(r,e){return e.filter(er).map(function(t){switch(t.value){case"underline":return 1;case"overline":return 2;case"line-through":return 3;case"none":return 4}return 0}).filter(function(t){return t!==0})}},PW={name:"font-family",initialValue:"",prefix:!1,type:1,parse:function(r,e){var t=[],n=[];return e.forEach(function(i){switch(i.type){case 20:case 0:t.push(i.value);break;case 17:t.push(i.number.toString());break;case 4:n.push(t.join(" ")),t.length=0;break}}),t.length&&n.push(t.join(" ")),n.map(function(i){return i.indexOf(" ")===-1?i:"'"+i+"'"})}},UW={name:"font-size",initialValue:"0",prefix:!1,type:3,format:"length"},RW={name:"font-weight",initialValue:"normal",type:0,prefix:!1,parse:function(r,e){if(Xf(e))return e.number;if(er(e))switch(e.value){case"bold":return 700;case"normal":default:return 400}return 400}},QW={name:"font-variant",initialValue:"none",type:1,prefix:!1,parse:function(r,e){return e.filter(er).map(function(t){return t.value})}},DW={name:"font-style",initialValue:"normal",prefix:!1,type:2,parse:function(r,e){switch(e){case"oblique":return"oblique";case"italic":return"italic";case"normal":default:return"normal"}}},Cr=function(r,e){return(r&e)!==0},HW={name:"duration",initialValue:"0s",prefix:!1,type:1,parse:function(r,e){return e.filter(_c).map(function(t){return qU.parse(r,t)})}},$W={name:"box-shadow",initialValue:"none",type:1,prefix:!1,parse:function(r,e){return e.length===1&&QB(e[0],"none")?[]:gs(e).map(function(t){for(var n={color:255,offsetX:Kr,offsetY:Kr,blur:Kr,spread:Kr,inset:!1},i=0,a=0;a<t.length;a++){var s=t[a];QB(s,"inset")?n.inset=!0:Co(s)?(i===0?n.offsetX=s:i===1?n.offsetY=s:i===2?n.blur=s:n.spread=s,i++):n.color=wo.parse(r,s)}return n})}},GW={name:"paint-order",initialValue:"normal",prefix:!1,type:1,parse:function(r,e){var t=[0,1,2],n=[];return e.filter(er).forEach(function(i){switch(i.value){case"stroke":n.push(1);break;case"fill":n.push(0);break;case"markers":n.push(2);break}}),t.forEach(function(i){n.indexOf(i)===-1&&n.push(i)}),n}},zW={name:"-webkit-text-stroke-color",initialValue:"currentcolor",prefix:!1,type:3,format:"color"},VW={name:"-webkit-text-stroke-width",initialValue:"0",type:0,prefix:!1,parse:function(r,e){return _c(e)?e.number:0}},KW=(function(){function r(e,t){var n,i;this.animationDuration=ot(e,HW,t.animationDuration),this.backgroundClip=ot(e,yj,t.backgroundClip),this.backgroundColor=ot(e,wj,t.backgroundColor),this.backgroundImage=ot(e,Fj,t.backgroundImage),this.backgroundOrigin=ot(e,Mj,t.backgroundOrigin),this.backgroundPosition=ot(e,Ij,t.backgroundPosition),this.backgroundRepeat=ot(e,Oj,t.backgroundRepeat),this.backgroundSize=ot(e,Nj,t.backgroundSize),this.borderTopColor=ot(e,Uj,t.borderTopColor),this.borderRightColor=ot(e,Rj,t.borderRightColor),this.borderBottomColor=ot(e,Qj,t.borderBottomColor),this.borderLeftColor=ot(e,Dj,t.borderLeftColor),this.borderTopLeftRadius=ot(e,Hj,t.borderTopLeftRadius),this.borderTopRightRadius=ot(e,$j,t.borderTopRightRadius),this.borderBottomRightRadius=ot(e,Gj,t.borderBottomRightRadius),this.borderBottomLeftRadius=ot(e,zj,t.borderBottomLeftRadius),this.borderTopStyle=ot(e,Vj,t.borderTopStyle),this.borderRightStyle=ot(e,Kj,t.borderRightStyle),this.borderBottomStyle=ot(e,jj,t.borderBottomStyle),this.borderLeftStyle=ot(e,Wj,t.borderLeftStyle),this.borderTopWidth=ot(e,qj,t.borderTopWidth),this.borderRightWidth=ot(e,Yj,t.borderRightWidth),this.borderBottomWidth=ot(e,Xj,t.borderBottomWidth),this.borderLeftWidth=ot(e,Zj,t.borderLeftWidth),this.boxShadow=ot(e,$W,t.boxShadow),this.color=ot(e,Jj,t.color),this.direction=ot(e,eW,t.direction),this.display=ot(e,tW,t.display),this.float=ot(e,rW,t.cssFloat),this.fontFamily=ot(e,PW,t.fontFamily),this.fontSize=ot(e,UW,t.fontSize),this.fontStyle=ot(e,DW,t.fontStyle),this.fontVariant=ot(e,QW,t.fontVariant),this.fontWeight=ot(e,RW,t.fontWeight),this.letterSpacing=ot(e,iW,t.letterSpacing),this.lineBreak=ot(e,aW,t.lineBreak),this.lineHeight=ot(e,sW,t.lineHeight),this.listStyleImage=ot(e,oW,t.listStyleImage),this.listStylePosition=ot(e,AW,t.listStylePosition),this.listStyleType=ot(e,lW,t.listStyleType),this.marginTop=ot(e,uW,t.marginTop),this.marginRight=ot(e,cW,t.marginRight),this.marginBottom=ot(e,dW,t.marginBottom),this.marginLeft=ot(e,hW,t.marginLeft),this.opacity=ot(e,OW,t.opacity);var a=ot(e,fW,t.overflow);this.overflowX=a[0],this.overflowY=a[a.length>1?1:0],this.overflowWrap=ot(e,gW,t.overflowWrap),this.paddingTop=ot(e,pW,t.paddingTop),this.paddingRight=ot(e,vW,t.paddingRight),this.paddingBottom=ot(e,mW,t.paddingBottom),this.paddingLeft=ot(e,yW,t.paddingLeft),this.paintOrder=ot(e,GW,t.paintOrder),this.position=ot(e,bW,t.position),this.textAlign=ot(e,wW,t.textAlign),this.textDecorationColor=ot(e,LW,(n=t.textDecorationColor)!==null&&n!==void 0?n:t.color),this.textDecorationLine=ot(e,NW,(i=t.textDecorationLine)!==null&&i!==void 0?i:t.textDecoration),this.textShadow=ot(e,BW,t.textShadow),this.textTransform=ot(e,EW,t.textTransform),this.transform=ot(e,xW,t.transform),this.transformOrigin=ot(e,TW,t.transformOrigin),this.visibility=ot(e,FW,t.visibility),this.webkitTextStrokeColor=ot(e,zW,t.webkitTextStrokeColor),this.webkitTextStrokeWidth=ot(e,VW,t.webkitTextStrokeWidth),this.wordBreak=ot(e,MW,t.wordBreak),this.zIndex=ot(e,IW,t.zIndex)}return r.prototype.isVisible=function(){return this.display>0&&this.opacity>0&&this.visibility===0},r.prototype.isTransparent=function(){return vl(this.backgroundColor)},r.prototype.isTransformed=function(){return this.transform!==null},r.prototype.isPositioned=function(){return this.position!==0},r.prototype.isPositionedWithZIndex=function(){return this.isPositioned()&&!this.zIndex.auto},r.prototype.isFloating=function(){return this.float!==0},r.prototype.isInlineLevel=function(){return Cr(this.display,4)||Cr(this.display,33554432)||Cr(this.display,268435456)||Cr(this.display,536870912)||Cr(this.display,67108864)||Cr(this.display,134217728)},r})(),ot=function(r,e,t){var n=new MU,i=t!==null&&typeof t<"u"?t.toString():e.initialValue;n.write(i);var a=new IU(n.read());switch(e.type){case 2:var s=a.parseComponentValue();return e.parse(r,er(s)?s.value:e.initialValue);case 0:return e.parse(r,a.parseComponentValue());case 1:return e.parse(r,a.parseComponentValues());case 4:return a.parseComponentValue();case 3:switch(e.format){case"angle":return Jf.parse(r,a.parseComponentValue());case"color":return wo.parse(r,a.parseComponentValue());case"image":return tx.parse(r,a.parseComponentValue());case"length":var o=a.parseComponentValue();return Co(o)?o:Kr;case"length-percentage":var A=a.parseComponentValue();return pr(A)?A:Kr;case"time":return qU.parse(r,a.parseComponentValue())}break}},jW="data-html2canvas-debug",WW=function(r){var e=r.getAttribute(jW);switch(e){case"all":return 1;case"clone":return 2;case"parse":return 3;case"render":return 4;default:return 0}},MS=function(r,e){var t=WW(r);return t===1||e===t},ps=(function(){function r(e,t){if(this.context=e,this.textNodes=[],this.elements=[],this.flags=0,MS(t,3))debugger;this.styles=new KW(e,window.getComputedStyle(t,null)),Wq(t)&&(this.styles.animationDuration.some(function(n){return n>0})&&(t.style.animationDuration="0s"),this.styles.transform!==null&&(t.style.transform="none")),this.bounds=ZE(this.context,t),MS(t,4)&&(this.flags|=16)}return r})(),qW="AAAAAAAAAAAAEA4AGBkAAFAaAAACAAAAAAAIABAAGAAwADgACAAQAAgAEAAIABAACAAQAAgAEAAIABAACAAQAAgAEAAIABAAQABIAEQATAAIABAACAAQAAgAEAAIABAAVABcAAgAEAAIABAACAAQAGAAaABwAHgAgACIAI4AlgAIABAAmwCjAKgAsAC2AL4AvQDFAMoA0gBPAVYBWgEIAAgACACMANoAYgFkAWwBdAF8AX0BhQGNAZUBlgGeAaMBlQGWAasBswF8AbsBwwF0AcsBYwHTAQgA2wG/AOMBdAF8AekB8QF0AfkB+wHiAHQBfAEIAAMC5gQIAAsCEgIIAAgAFgIeAggAIgIpAggAMQI5AkACygEIAAgASAJQAlgCYAIIAAgACAAKBQoFCgUTBRMFGQUrBSsFCAAIAAgACAAIAAgACAAIAAgACABdAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABoAmgCrwGvAQgAbgJ2AggAHgEIAAgACADnAXsCCAAIAAgAgwIIAAgACAAIAAgACACKAggAkQKZAggAPADJAAgAoQKkAqwCsgK6AsICCADJAggA0AIIAAgACAAIANYC3gIIAAgACAAIAAgACABAAOYCCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAkASoB+QIEAAgACAA8AEMCCABCBQgACABJBVAFCAAIAAgACAAIAAgACAAIAAgACABTBVoFCAAIAFoFCABfBWUFCAAIAAgACAAIAAgAbQUIAAgACAAIAAgACABzBXsFfQWFBYoFigWKBZEFigWKBYoFmAWfBaYFrgWxBbkFCAAIAAgACAAIAAgACAAIAAgACAAIAMEFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAMgFCADQBQgACAAIAAgACAAIAAgACAAIAAgACAAIAO4CCAAIAAgAiQAIAAgACABAAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAD0AggACAD8AggACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIANYFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAMDvwAIAAgAJAIIAAgACAAIAAgACAAIAAgACwMTAwgACAB9BOsEGwMjAwgAKwMyAwsFYgE3A/MEPwMIAEUDTQNRAwgAWQOsAGEDCAAIAAgACAAIAAgACABpAzQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFOgU0BTUFNgU3BTgFOQU6BTQFNQU2BTcFOAU5BToFNAU1BTYFNwU4BTkFIQUoBSwFCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABtAwgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABMAEwACAAIAAgACAAIABgACAAIAAgACAC/AAgACAAyAQgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACAAIAAwAAgACAAIAAgACAAIAAgACAAIAAAARABIAAgACAAIABQASAAIAAgAIABwAEAAjgCIABsAqAC2AL0AigDQAtwC+IJIQqVAZUBWQqVAZUBlQGVAZUBlQGrC5UBlQGVAZUBlQGVAZUBlQGVAXsKlQGVAbAK6wsrDGUMpQzlDJUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAZUBlQGVAfAKAAuZA64AtwCJALoC6ADwAAgAuACgA/oEpgO6AqsD+AAIAAgAswMIAAgACAAIAIkAuwP5AfsBwwPLAwgACAAIAAgACADRA9kDCAAIAOED6QMIAAgACAAIAAgACADuA/YDCAAIAP4DyQAIAAgABgQIAAgAXQAOBAgACAAIAAgACAAIABMECAAIAAgACAAIAAgACAD8AAQBCAAIAAgAGgQiBCoECAExBAgAEAEIAAgACAAIAAgACAAIAAgACAAIAAgACAA4BAgACABABEYECAAIAAgATAQYAQgAVAQIAAgACAAIAAgACAAIAAgACAAIAFoECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAOQEIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAB+BAcACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAEABhgSMBAgACAAIAAgAlAQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAwAEAAQABAADAAMAAwADAAQABAAEAAQABAAEAAQABHATAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAdQMIAAgACAAIAAgACAAIAMkACAAIAAgAfQMIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACACFA4kDCAAIAAgACAAIAOcBCAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAIcDCAAIAAgACAAIAAgACAAIAAgACAAIAJEDCAAIAAgACADFAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABgBAgAZgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAbAQCBXIECAAIAHkECAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACABAAJwEQACjBKoEsgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAC6BMIECAAIAAgACAAIAAgACABmBAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAxwQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAGYECAAIAAgAzgQIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBd0FXwUIAOIF6gXxBYoF3gT5BQAGCAaKBYoFigWKBYoFigWKBYoFigWKBYoFigXWBIoFigWKBYoFigWKBYoFigWKBYsFEAaKBYoFigWKBYoFigWKBRQGCACKBYoFigWKBQgACAAIANEECAAIABgGigUgBggAJgYIAC4GMwaKBYoF0wQ3Bj4GigWKBYoFigWKBYoFigWKBYoFigWKBYoFigUIAAgACAAIAAgACAAIAAgAigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWKBYoFigWLBf///////wQABAAEAAQABAAEAAQABAAEAAQAAwAEAAQAAgAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAQADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUAAAAFAAUAAAAFAAUAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUAAQAAAAUABQAFAAUABQAFAAAAAAAFAAUAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAFAAUAAQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAAABwAHAAcAAAAHAAcABwAFAAEAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAcABwAFAAUAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAAAAQABAAAAAAAAAAAAAAAFAAUABQAFAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAHAAcAAAAHAAcAAAAAAAUABQAHAAUAAQAHAAEABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwABAAUABQAFAAUAAAAAAAAAAAAAAAEAAQABAAEAAQABAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABQANAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAAEAAQABAAEAAQABAAEAAQABAAEAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAABQAHAAUABQAFAAAAAAAAAAcABQAFAAUABQAFAAQABAAEAAQABAAEAAQABAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAEAAQABAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUAAAAFAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAUAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAcABwAFAAcABwAAAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUABwAHAAUABQAFAAUAAAAAAAcABwAAAAAABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAABQAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAAAAAAAAAAABQAFAAAAAAAFAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAFAAUABQAFAAUAAAAFAAUABwAAAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABwAFAAUABQAFAAAAAAAHAAcAAAAAAAcABwAFAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAAAAAAAAAHAAcABwAAAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAABQAHAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAUABQAFAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAHAAcABQAHAAcAAAAFAAcABwAAAAcABwAFAAUAAAAAAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAFAAcABwAFAAUABQAAAAUAAAAHAAcABwAHAAcABwAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAHAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAABwAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAUAAAAFAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABwAFAAUABQAFAAUAAAAFAAUAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABwAFAAUABQAFAAUABQAAAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABQAFAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABQAFAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAHAAUABQAFAAUABQAFAAUABwAHAAcABwAHAAcABwAHAAUABwAHAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABwAHAAcABwAFAAUABwAHAAcAAAAAAAAAAAAHAAcABQAHAAcABwAHAAcABwAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAcABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAUABQAFAAUABQAFAAUAAAAFAAAABQAAAAAABQAFAAUABQAFAAUABQAFAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAFAAUAAAAAAAUABQAFAAUABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABwAFAAcABwAHAAcABwAFAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAUABQAFAAUABwAHAAUABQAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABQAFAAcABwAHAAUABwAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAcABQAFAAUABQAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAAAAAABwAFAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAAAAAAAAAFAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAUABQAHAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAUABQAFAAUABQAHAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAcABwAFAAUABQAFAAcABwAFAAUABwAHAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAFAAcABwAFAAUABwAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAFAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAFAAUABQAAAAAABQAFAAAAAAAAAAAAAAAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAcABwAAAAAAAAAAAAAABwAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAcABwAFAAcABwAAAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAFAAUABQAAAAUABQAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABwAFAAUABQAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAUABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAHAAcABQAHAAUABQAAAAAAAAAAAAAAAAAFAAAABwAHAAcABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAHAAcABwAAAAAABwAHAAAAAAAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABwAHAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAFAAUABwAFAAcABwAFAAcABQAFAAcABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAHAAcABQAFAAUABQAAAAAABwAHAAcABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAHAAUABQAFAAUABQAFAAUABQAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABwAFAAcABwAFAAUABQAFAAUABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAcABwAFAAUABQAFAAcABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAUABQAFAAUABQAHAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAFAAUABQAFAAAAAAAFAAUABwAHAAcABwAFAAAAAAAAAAcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABwAHAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAcABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUAAAAHAAUABQAFAAUABQAFAAUABwAFAAUABwAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUAAAAAAAAABQAAAAUABQAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAHAAcABwAHAAcAAAAFAAUAAAAHAAcABQAHAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAAAAUABQAFAAAAAAAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAFAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAFAAUABQAAAAAABQAFAAUABQAFAAUABQAAAAUABQAAAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAUABQAFAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABQAFAAUABQAFAAUABQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAFAAUABQAFAAUADgAOAA4ADgAOAA4ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAA8ADwAPAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAcABwAHAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAgACAAIAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAMAAwADAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAAAAAAAAAAAAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAKAAoACgAAAAAAAAAAAAsADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwACwAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAMAAwADAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAADgAOAA4AAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAAAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4AAAAOAAAAAAAAAAAAAAAAAA4AAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAAAAAAAAAAAA4AAAAOAAAAAAAAAAAADgAOAA4AAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAA4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4AAAAAAA4ADgAOAA4ADgAOAA4ADgAOAAAADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4ADgAOAAAAAAAAAAAAAAAAAAAAAAAAAAAADgAOAA4ADgAOAA4AAAAAAAAAAAAAAAAAAAAAAA4ADgAOAA4ADgAOAA4ADgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAOAA4ADgAOAA4ADgAAAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4ADgAOAA4AAAAAAAAAAAA=",IS="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bu=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(var Sd=0;Sd<IS.length;Sd++)bu[IS.charCodeAt(Sd)]=Sd;var YW=function(r){var e=r.length*.75,t=r.length,n,i=0,a,s,o,A;r[r.length-1]==="="&&(e--,r[r.length-2]==="="&&e--);var l=typeof ArrayBuffer<"u"&&typeof Uint8Array<"u"&&typeof Uint8Array.prototype.slice<"u"?new ArrayBuffer(e):new Array(e),u=Array.isArray(l)?l:new Uint8Array(l);for(n=0;n<t;n+=4)a=bu[r.charCodeAt(n)],s=bu[r.charCodeAt(n+1)],o=bu[r.charCodeAt(n+2)],A=bu[r.charCodeAt(n+3)],u[i++]=a<<2|s>>4,u[i++]=(s&15)<<4|o>>2,u[i++]=(o&3)<<6|A&63;return l},XW=function(r){for(var e=r.length,t=[],n=0;n<e;n+=2)t.push(r[n+1]<<8|r[n]);return t},ZW=function(r){for(var e=r.length,t=[],n=0;n<e;n+=4)t.push(r[n+3]<<24|r[n+2]<<16|r[n+1]<<8|r[n]);return t},cA=5,nx=11,kv=2,JW=nx-cA,YU=65536>>cA,eq=1<<cA,Tv=eq-1,tq=1024>>cA,nq=YU+tq,rq=nq,iq=32,aq=rq+iq,sq=65536>>nx,oq=1<<JW,Aq=oq-1,OS=function(r,e,t){return r.slice?r.slice(e,t):new Uint16Array(Array.prototype.slice.call(r,e,t))},lq=function(r,e,t){return r.slice?r.slice(e,t):new Uint32Array(Array.prototype.slice.call(r,e,t))},uq=function(r,e){var t=YW(r),n=Array.isArray(t)?ZW(t):new Uint32Array(t),i=Array.isArray(t)?XW(t):new Uint16Array(t),a=24,s=OS(i,a/2,n[4]/2),o=n[5]===2?OS(i,(a+n[4])/2):lq(n,Math.ceil((a+n[4])/4));return new cq(n[0],n[1],n[2],n[3],s,o)},cq=(function(){function r(e,t,n,i,a,s){this.initialValue=e,this.errorValue=t,this.highStart=n,this.highValueIndex=i,this.index=a,this.data=s}return r.prototype.get=function(e){var t;if(e>=0){if(e<55296||e>56319&&e<=65535)return t=this.index[e>>cA],t=(t<<kv)+(e&Tv),this.data[t];if(e<=65535)return t=this.index[YU+(e-55296>>cA)],t=(t<<kv)+(e&Tv),this.data[t];if(e<this.highStart)return t=aq-sq+(e>>nx),t=this.index[t],t+=e>>cA&Aq,t=this.index[t],t=(t<<kv)+(e&Tv),this.data[t];if(e<=1114111)return this.data[this.highValueIndex]}return this.errorValue},r})(),LS="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",dq=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(var _d=0;_d<LS.length;_d++)dq[LS.charCodeAt(_d)]=_d;var hq=1,Fv=2,Mv=3,NS=4,PS=5,fq=7,US=8,Iv=9,Ov=10,RS=11,QS=12,DS=13,HS=14,Lv=15,gq=function(r){for(var e=[],t=0,n=r.length;t<n;){var i=r.charCodeAt(t++);if(i>=55296&&i<=56319&&t<n){var a=r.charCodeAt(t++);(a&64512)===56320?e.push(((i&1023)<<10)+(a&1023)+65536):(e.push(i),t--)}else e.push(i)}return e},pq=function(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];if(String.fromCodePoint)return String.fromCodePoint.apply(String,r);var t=r.length;if(!t)return"";for(var n=[],i=-1,a="";++i<t;){var s=r[i];s<=65535?n.push(s):(s-=65536,n.push((s>>10)+55296,s%1024+56320)),(i+1===t||n.length>16384)&&(a+=String.fromCharCode.apply(String,n),n.length=0)}return a},vq=uq(qW),Aa="×",Nv="÷",mq=function(r){return vq.get(r)},yq=function(r,e,t){var n=t-2,i=e[n],a=e[t-1],s=e[t];if(a===Fv&&s===Mv)return Aa;if(a===Fv||a===Mv||a===NS||s===Fv||s===Mv||s===NS)return Nv;if(a===US&&[US,Iv,RS,QS].indexOf(s)!==-1||(a===RS||a===Iv)&&(s===Iv||s===Ov)||(a===QS||a===Ov)&&s===Ov||s===DS||s===PS||s===fq||a===hq)return Aa;if(a===DS&&s===HS){for(;i===PS;)i=e[--n];if(i===HS)return Aa}if(a===Lv&&s===Lv){for(var o=0;i===Lv;)o++,i=e[--n];if(o%2===0)return Aa}return Nv},wq=function(r){var e=gq(r),t=e.length,n=0,i=0,a=e.map(mq);return{next:function(){if(n>=t)return{done:!0,value:null};for(var s=Aa;n<t&&(s=yq(e,a,++n))===Aa;);if(s!==Aa||n===t){var o=pq.apply(null,e.slice(i,n));return i=n,{value:o,done:!1}}return{done:!0,value:null}}}},bq=function(r){for(var e=wq(r),t=[],n;!(n=e.next()).done;)n.value&&t.push(n.value.slice());return t},Bq=function(r){var e=123;if(r.createRange){var t=r.createRange();if(t.getBoundingClientRect){var n=r.createElement("boundtest");n.style.height=e+"px",n.style.display="block",r.body.appendChild(n),t.selectNode(n);var i=t.getBoundingClientRect(),a=Math.round(i.height);if(r.body.removeChild(n),a===e)return!0}}return!1},Eq=function(r){var e=r.createElement("boundtest");e.style.width="50px",e.style.display="block",e.style.fontSize="12px",e.style.letterSpacing="0px",e.style.wordSpacing="0px",r.body.appendChild(e);var t=r.createRange();e.innerHTML=typeof"".repeat=="function"?"&#128104;".repeat(10):"";var n=e.firstChild,i=Yf(n.data).map(function(A){return sr(A)}),a=0,s={},o=i.every(function(A,l){t.setStart(n,a),t.setEnd(n,a+A.length);var u=t.getBoundingClientRect();a+=A.length;var c=u.x>s.x||u.y>s.y;return s=u,l===0?!0:c});return r.body.removeChild(e),o},xq=function(){return typeof new Image().crossOrigin<"u"},Cq=function(){return typeof new XMLHttpRequest().responseType=="string"},Sq=function(r){var e=new Image,t=r.createElement("canvas"),n=t.getContext("2d");if(!n)return!1;e.src="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg'></svg>";try{n.drawImage(e,0,0),t.toDataURL()}catch{return!1}return!0},$S=function(r){return r[0]===0&&r[1]===255&&r[2]===0&&r[3]===255},_q=function(r){var e=r.createElement("canvas"),t=100;e.width=t,e.height=t;var n=e.getContext("2d");if(!n)return Promise.reject(!1);n.fillStyle="rgb(0, 255, 0)",n.fillRect(0,0,t,t);var i=new Image,a=e.toDataURL();i.src=a;var s=DB(t,t,0,0,i);return n.fillStyle="red",n.fillRect(0,0,t,t),GS(s).then(function(o){n.drawImage(o,0,0);var A=n.getImageData(0,0,t,t).data;n.fillStyle="red",n.fillRect(0,0,t,t);var l=r.createElement("div");return l.style.backgroundImage="url("+a+")",l.style.height=t+"px",$S(A)?GS(DB(t,t,0,0,l)):Promise.reject(!1)}).then(function(o){return n.drawImage(o,0,0),$S(n.getImageData(0,0,t,t).data)}).catch(function(){return!1})},DB=function(r,e,t,n,i){var a="http://www.w3.org/2000/svg",s=document.createElementNS(a,"svg"),o=document.createElementNS(a,"foreignObject");return s.setAttributeNS(null,"width",r.toString()),s.setAttributeNS(null,"height",e.toString()),o.setAttributeNS(null,"width","100%"),o.setAttributeNS(null,"height","100%"),o.setAttributeNS(null,"x",t.toString()),o.setAttributeNS(null,"y",n.toString()),o.setAttributeNS(null,"externalResourcesRequired","true"),s.appendChild(o),o.appendChild(i),s},GS=function(r){return new Promise(function(e,t){var n=new Image;n.onload=function(){return e(n)},n.onerror=t,n.src="data:image/svg+xml;charset=utf-8,"+encodeURIComponent(new XMLSerializer().serializeToString(r))})},zi={get SUPPORT_RANGE_BOUNDS(){var r=Bq(document);return Object.defineProperty(zi,"SUPPORT_RANGE_BOUNDS",{value:r}),r},get SUPPORT_WORD_BREAKING(){var r=zi.SUPPORT_RANGE_BOUNDS&&Eq(document);return Object.defineProperty(zi,"SUPPORT_WORD_BREAKING",{value:r}),r},get SUPPORT_SVG_DRAWING(){var r=Sq(document);return Object.defineProperty(zi,"SUPPORT_SVG_DRAWING",{value:r}),r},get SUPPORT_FOREIGNOBJECT_DRAWING(){var r=typeof Array.from=="function"&&typeof window.fetch=="function"?_q(document):Promise.resolve(!1);return Object.defineProperty(zi,"SUPPORT_FOREIGNOBJECT_DRAWING",{value:r}),r},get SUPPORT_CORS_IMAGES(){var r=xq();return Object.defineProperty(zi,"SUPPORT_CORS_IMAGES",{value:r}),r},get SUPPORT_RESPONSE_TYPE(){var r=Cq();return Object.defineProperty(zi,"SUPPORT_RESPONSE_TYPE",{value:r}),r},get SUPPORT_CORS_XHR(){var r="withCredentials"in new XMLHttpRequest;return Object.defineProperty(zi,"SUPPORT_CORS_XHR",{value:r}),r},get SUPPORT_NATIVE_TEXT_SEGMENTATION(){var r=!!(typeof Intl<"u"&&Intl.Segmenter);return Object.defineProperty(zi,"SUPPORT_NATIVE_TEXT_SEGMENTATION",{value:r}),r}},$u=(function(){function r(e,t){this.text=e,this.bounds=t}return r})(),kq=function(r,e,t,n){var i=Mq(e,t),a=[],s=0;return i.forEach(function(o){if(t.textDecorationLine.length||o.trim().length>0)if(zi.SUPPORT_RANGE_BOUNDS){var A=zS(n,s,o.length).getClientRects();if(A.length>1){var l=rx(o),u=0;l.forEach(function(d){a.push(new $u(d,mA.fromDOMRectList(r,zS(n,u+s,d.length).getClientRects()))),u+=d.length})}else a.push(new $u(o,mA.fromDOMRectList(r,A)))}else{var c=n.splitText(o.length);a.push(new $u(o,Tq(r,n))),n=c}else zi.SUPPORT_RANGE_BOUNDS||(n=n.splitText(o.length));s+=o.length}),a},Tq=function(r,e){var t=e.ownerDocument;if(t){var n=t.createElement("html2canvaswrapper");n.appendChild(e.cloneNode(!0));var i=e.parentNode;if(i){i.replaceChild(n,e);var a=ZE(r,n);return n.firstChild&&i.replaceChild(n.firstChild,n),a}}return mA.EMPTY},zS=function(r,e,t){var n=r.ownerDocument;if(!n)throw new Error("Node has no owner document");var i=n.createRange();return i.setStart(r,e),i.setEnd(r,e+t),i},rx=function(r){if(zi.SUPPORT_NATIVE_TEXT_SEGMENTATION){var e=new Intl.Segmenter(void 0,{granularity:"grapheme"});return Array.from(e.segment(r)).map(function(t){return t.segment})}return bq(r)},Fq=function(r,e){if(zi.SUPPORT_NATIVE_TEXT_SEGMENTATION){var t=new Intl.Segmenter(void 0,{granularity:"word"});return Array.from(t.segment(r)).map(function(n){return n.segment})}return Oq(r,e)},Mq=function(r,e){return e.letterSpacing!==0?rx(r):Fq(r,e)},Iq=[32,160,4961,65792,65793,4153,4241],Oq=function(r,e){for(var t=c9(r,{lineBreak:e.lineBreak,wordBreak:e.overflowWrap==="break-word"?"break-word":e.wordBreak}),n=[],i,a=function(){if(i.value){var s=i.value.slice(),o=Yf(s),A="";o.forEach(function(l){Iq.indexOf(l)===-1?A+=sr(l):(A.length&&n.push(A),n.push(sr(l)),A="")}),A.length&&n.push(A)}};!(i=t.next()).done;)a();return n},Lq=(function(){function r(e,t,n){this.text=Nq(t.data,n.textTransform),this.textBounds=kq(e,this.text,n,t)}return r})(),Nq=function(r,e){switch(e){case 1:return r.toLowerCase();case 3:return r.replace(Pq,Uq);case 2:return r.toUpperCase();default:return r}},Pq=/(^|\s|:|-|\(|\))([a-z])/g,Uq=function(r,e,t){return r.length>0?e+t.toUpperCase():r},XU=(function(r){Pa(e,r);function e(t,n){var i=r.call(this,t,n)||this;return i.src=n.currentSrc||n.src,i.intrinsicWidth=n.naturalWidth,i.intrinsicHeight=n.naturalHeight,i.context.cache.addImage(i.src),i}return e})(ps),ZU=(function(r){Pa(e,r);function e(t,n){var i=r.call(this,t,n)||this;return i.canvas=n,i.intrinsicWidth=n.width,i.intrinsicHeight=n.height,i}return e})(ps),JU=(function(r){Pa(e,r);function e(t,n){var i=r.call(this,t,n)||this,a=new XMLSerializer,s=ZE(t,n);return n.setAttribute("width",s.width+"px"),n.setAttribute("height",s.height+"px"),i.svg="data:image/svg+xml,"+encodeURIComponent(a.serializeToString(n)),i.intrinsicWidth=n.width.baseVal.value,i.intrinsicHeight=n.height.baseVal.value,i.context.cache.addImage(i.svg),i}return e})(ps),eR=(function(r){Pa(e,r);function e(t,n){var i=r.call(this,t,n)||this;return i.value=n.value,i}return e})(ps),HB=(function(r){Pa(e,r);function e(t,n){var i=r.call(this,t,n)||this;return i.start=n.start,i.reversed=typeof n.reversed=="boolean"&&n.reversed===!0,i}return e})(ps),Rq=[{type:15,flags:0,unit:"px",number:3}],Qq=[{type:16,flags:0,number:50}],Dq=function(r){return r.width>r.height?new mA(r.left+(r.width-r.height)/2,r.top,r.height,r.height):r.width<r.height?new mA(r.left,r.top+(r.height-r.width)/2,r.width,r.width):r},Hq=function(r){var e=r.type===$q?new Array(r.value.length+1).join("•"):r.value;return e.length===0?r.placeholder||"":e},uf="checkbox",cf="radio",$q="password",VS=707406591,ix=(function(r){Pa(e,r);function e(t,n){var i=r.call(this,t,n)||this;switch(i.type=n.type.toLowerCase(),i.checked=n.checked,i.value=Hq(n),(i.type===uf||i.type===cf)&&(i.styles.backgroundColor=3739148031,i.styles.borderTopColor=i.styles.borderRightColor=i.styles.borderBottomColor=i.styles.borderLeftColor=2779096575,i.styles.borderTopWidth=i.styles.borderRightWidth=i.styles.borderBottomWidth=i.styles.borderLeftWidth=1,i.styles.borderTopStyle=i.styles.borderRightStyle=i.styles.borderBottomStyle=i.styles.borderLeftStyle=1,i.styles.backgroundClip=[0],i.styles.backgroundOrigin=[0],i.bounds=Dq(i.bounds)),i.type){case uf:i.styles.borderTopRightRadius=i.styles.borderTopLeftRadius=i.styles.borderBottomRightRadius=i.styles.borderBottomLeftRadius=Rq;break;case cf:i.styles.borderTopRightRadius=i.styles.borderTopLeftRadius=i.styles.borderBottomRightRadius=i.styles.borderBottomLeftRadius=Qq;break}return i}return e})(ps),tR=(function(r){Pa(e,r);function e(t,n){var i=r.call(this,t,n)||this,a=n.options[n.selectedIndex||0];return i.value=a&&a.text||"",i}return e})(ps),nR=(function(r){Pa(e,r);function e(t,n){var i=r.call(this,t,n)||this;return i.value=n.value,i}return e})(ps),rR=(function(r){Pa(e,r);function e(t,n){var i=r.call(this,t,n)||this;i.src=n.src,i.width=parseInt(n.width,10)||0,i.height=parseInt(n.height,10)||0,i.backgroundColor=i.styles.backgroundColor;try{if(n.contentWindow&&n.contentWindow.document&&n.contentWindow.document.documentElement){i.tree=zq(t,n.contentWindow.document.documentElement);var a=n.contentWindow.document.documentElement?SS(t,getComputedStyle(n.contentWindow.document.documentElement).backgroundColor):nc.TRANSPARENT,s=n.contentWindow.document.body?SS(t,getComputedStyle(n.contentWindow.document.body).backgroundColor):nc.TRANSPARENT;i.backgroundColor=vl(a)?vl(s)?i.styles.backgroundColor:s:a}}catch{}return i}return e})(ps),Gq=["OL","UL","MENU"],_h=function(r,e,t,n){for(var i=e.firstChild,a=void 0;i;i=a)if(a=i.nextSibling,jq(i)&&i.data.trim().length>0)t.textNodes.push(new Lq(r,i,t.styles));else if(aR(i))if(r7(i)&&i.assignedNodes)i.assignedNodes().forEach(function(o){return _h(r,o,t,n)});else{var s=iR(r,i);s.styles.isVisible()&&(Vq(i,s,n)?s.flags|=4:Kq(s.styles)&&(s.flags|=2),Gq.indexOf(i.tagName)!==-1&&(s.flags|=8),t.elements.push(s),i.slot,i.shadowRoot?_h(r,i.shadowRoot,s,n):!oR(i)&&!sR(i)&&!AR(i)&&_h(r,i,s,n))}},iR=function(r,e){return t7(e)?new XU(r,e):e7(e)?new ZU(r,e):sR(e)?new JU(r,e):Yq(e)?new eR(r,e):Xq(e)?new HB(r,e):Zq(e)?new ix(r,e):AR(e)?new tR(r,e):oR(e)?new nR(r,e):n7(e)?new rR(r,e):new ps(r,e)},zq=function(r,e){var t=iR(r,e);return t.flags|=4,_h(r,e,t,t),t},Vq=function(r,e,t){return e.styles.isPositionedWithZIndex()||e.styles.opacity<1||e.styles.isTransformed()||Jq(r)&&t.styles.isTransparent()},Kq=function(r){return r.isPositioned()||r.isFloating()},jq=function(r){return r.nodeType===Node.TEXT_NODE},aR=function(r){return r.nodeType===Node.ELEMENT_NODE},Wq=function(r){return aR(r)&&typeof r.style<"u"&&!qq(r)},qq=function(r){return typeof r.className=="object"},Yq=function(r){return r.tagName==="LI"},Xq=function(r){return r.tagName==="OL"},Zq=function(r){return r.tagName==="INPUT"},sR=function(r){return r.tagName==="svg"},Jq=function(r){return r.tagName==="BODY"},e7=function(r){return r.tagName==="CANVAS"},t7=function(r){return r.tagName==="IMG"},n7=function(r){return r.tagName==="IFRAME"},oR=function(r){return r.tagName==="TEXTAREA"},AR=function(r){return r.tagName==="SELECT"},r7=function(r){return r.tagName==="SLOT"},KS={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"]},jS={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:["Ք","Փ","Ւ","Ց","Ր","Տ","Վ","Ս","Ռ","Ջ","Պ","Չ","Ո","Շ","Ն","Յ","Մ","Ճ","Ղ","Ձ","Հ","Կ","Ծ","Խ","Լ","Ի","Ժ","Թ","Ը","Է","Զ","Ե","Դ","Գ","Բ","Ա"]},i7={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:["י׳","ט׳","ח׳","ז׳","ו׳","ה׳","ד׳","ג׳","ב׳","א׳","ת","ש","ר","ק","צ","פ","ע","ס","נ","מ","ל","כ","יט","יח","יז","טז","טו","י","ט","ח","ז","ו","ה","ד","ג","ב","א"]},a7={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:["ჵ","ჰ","ჯ","ჴ","ხ","ჭ","წ","ძ","ც","ჩ","შ","ყ","ღ","ქ","ფ","ჳ","ტ","ს","რ","ჟ","პ","ო","ჲ","ნ","მ","ლ","კ","ი","თ","ჱ","ზ","ვ","ე","დ","გ","ბ","ა"]},GA=function(r,e,t,n,i,a){return r<e||r>t?ax(r,i,a.length>0):n.integers.reduce(function(s,o,A){for(;r>=o;)r-=o,s+=n.values[A];return s},"")+a},lR=function(r,e,t,n){var i="";do t||r--,i=n(r)+i,r/=e;while(r*e>=e);return i},nr=function(r,e,t,n,i){var a=t-e+1;return(r<0?"-":"")+(lR(Math.abs(r),a,n,function(s){return sr(Math.floor(s%a)+e)})+i)},$o=function(r,e,t){t===void 0&&(t=". ");var n=e.length;return lR(Math.abs(r),n,!1,function(i){return e[Math.floor(i%n)]})+t},tl=1,qs=2,Ys=4,Bu=8,Es=function(r,e,t,n,i,a){if(r<-9999||r>9999)return ax(r,4,i.length>0);var s=Math.abs(r),o=i;if(s===0)return e[0]+o;for(var A=0;s>0&&A<=4;A++){var l=s%10;l===0&&Cr(a,tl)&&o!==""?o=e[l]+o:l>1||l===1&&A===0||l===1&&A===1&&Cr(a,qs)||l===1&&A===1&&Cr(a,Ys)&&r>100||l===1&&A>1&&Cr(a,Bu)?o=e[l]+(A>0?t[A-1]:"")+o:l===1&&A>0&&(o=t[A-1]+o),s=Math.floor(s/10)}return(r<0?n:"")+o},WS="十百千萬",qS="拾佰仟萬",YS="マイナス",Pv="마이너스",ax=function(r,e,t){var n=t?". ":"",i=t?"、":"",a=t?", ":"",s=t?" ":"";switch(e){case 0:return"•"+s;case 1:return"◦"+s;case 2:return"◾"+s;case 5:var o=nr(r,48,57,!0,n);return o.length<4?"0"+o:o;case 4:return $o(r,"〇一二三四五六七八九",i);case 6:return GA(r,1,3999,KS,3,n).toLowerCase();case 7:return GA(r,1,3999,KS,3,n);case 8:return nr(r,945,969,!1,n);case 9:return nr(r,97,122,!1,n);case 10:return nr(r,65,90,!1,n);case 11:return nr(r,1632,1641,!0,n);case 12:case 49:return GA(r,1,9999,jS,3,n);case 35:return GA(r,1,9999,jS,3,n).toLowerCase();case 13:return nr(r,2534,2543,!0,n);case 14:case 30:return nr(r,6112,6121,!0,n);case 15:return $o(r,"子丑寅卯辰巳午未申酉戌亥",i);case 16:return $o(r,"甲乙丙丁戊己庚辛壬癸",i);case 17:case 48:return Es(r,"零一二三四五六七八九",WS,"負",i,qs|Ys|Bu);case 47:return Es(r,"零壹貳參肆伍陸柒捌玖",qS,"負",i,tl|qs|Ys|Bu);case 42:return Es(r,"零一二三四五六七八九",WS,"负",i,qs|Ys|Bu);case 41:return Es(r,"零壹贰叁肆伍陆柒捌玖",qS,"负",i,tl|qs|Ys|Bu);case 26:return Es(r,"〇一二三四五六七八九","十百千万",YS,i,0);case 25:return Es(r,"零壱弐参四伍六七八九","拾百千万",YS,i,tl|qs|Ys);case 31:return Es(r,"영일이삼사오육칠팔구","십백천만",Pv,a,tl|qs|Ys);case 33:return Es(r,"零一二三四五六七八九","十百千萬",Pv,a,0);case 32:return Es(r,"零壹貳參四五六七八九","拾百千",Pv,a,tl|qs|Ys);case 18:return nr(r,2406,2415,!0,n);case 20:return GA(r,1,19999,a7,3,n);case 21:return nr(r,2790,2799,!0,n);case 22:return nr(r,2662,2671,!0,n);case 22:return GA(r,1,10999,i7,3,n);case 23:return $o(r,"あいうえおかきくけこさしすせそたちつてとなにぬねのはひふへほまみむめもやゆよらりるれろわゐゑをん");case 24:return $o(r,"いろはにほへとちりぬるをわかよたれそつねならむうゐのおくやまけふこえてあさきゆめみしゑひもせす");case 27:return nr(r,3302,3311,!0,n);case 28:return $o(r,"アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヰヱヲン",i);case 29:return $o(r,"イロハニホヘトチリヌルヲワカヨタレソツネナラムウヰノオクヤマケフコエテアサキユメミシヱヒモセス",i);case 34:return nr(r,3792,3801,!0,n);case 37:return nr(r,6160,6169,!0,n);case 38:return nr(r,4160,4169,!0,n);case 39:return nr(r,2918,2927,!0,n);case 40:return nr(r,1776,1785,!0,n);case 43:return nr(r,3046,3055,!0,n);case 44:return nr(r,3174,3183,!0,n);case 45:return nr(r,3664,3673,!0,n);case 46:return nr(r,3872,3881,!0,n);case 3:default:return nr(r,48,57,!0,n)}},XS;(function(r){r[r.BEFORE=0]="BEFORE",r[r.AFTER=1]="AFTER"})(XS||(XS={}));var s7=(function(){function r(){}return r.getOrigin=function(e){var t=r._link;return t?(t.href=e,t.href=t.href,t.protocol+t.hostname+t.port):"about:blank"},r.isSameOrigin=function(e){return r.getOrigin(e)===r._origin},r.setContext=function(e){r._link=e.document.createElement("a"),r._origin=r.getOrigin(e.location.href)},r._origin="about:blank",r})(),et=(function(){function r(e,t){this.type=0,this.x=e,this.y=t}return r.prototype.add=function(e,t){return new r(this.x+e,this.y+t)},r})(),zA=function(r,e,t){return new et(r.x+(e.x-r.x)*t,r.y+(e.y-r.y)*t)},kd=(function(){function r(e,t,n,i){this.type=1,this.start=e,this.startControl=t,this.endControl=n,this.end=i}return r.prototype.subdivide=function(e,t){var n=zA(this.start,this.startControl,e),i=zA(this.startControl,this.endControl,e),a=zA(this.endControl,this.end,e),s=zA(n,i,e),o=zA(i,a,e),A=zA(s,o,e);return t?new r(this.start,n,s,A):new r(A,o,a,this.end)},r.prototype.add=function(e,t){return new r(this.start.add(e,t),this.startControl.add(e,t),this.endControl.add(e,t),this.end.add(e,t))},r.prototype.reverse=function(){return new r(this.end,this.endControl,this.startControl,this.start)},r})(),ua=function(r){return r.type===1},o7=(function(){function r(e){var t=e.styles,n=e.bounds,i=wu(t.borderTopLeftRadius,n.width,n.height),a=i[0],s=i[1],o=wu(t.borderTopRightRadius,n.width,n.height),A=o[0],l=o[1],u=wu(t.borderBottomRightRadius,n.width,n.height),c=u[0],d=u[1],h=wu(t.borderBottomLeftRadius,n.width,n.height),f=h[0],p=h[1],g=[];g.push((a+A)/n.width),g.push((f+c)/n.width),g.push((s+p)/n.height),g.push((l+d)/n.height);var v=Math.max.apply(Math,g);v>1&&(a/=v,s/=v,A/=v,l/=v,c/=v,d/=v,f/=v,p/=v);var m=n.width-A,y=n.height-d,w=n.width-c,B=n.height-p,x=t.borderTopWidth,k=t.borderRightWidth,_=t.borderBottomWidth,T=t.borderLeftWidth,F=Tn(t.paddingTop,e.bounds.width),I=Tn(t.paddingRight,e.bounds.width),O=Tn(t.paddingBottom,e.bounds.width),P=Tn(t.paddingLeft,e.bounds.width);this.topLeftBorderDoubleOuterBox=a>0||s>0?Un(n.left+T/3,n.top+x/3,a-T/3,s-x/3,cn.TOP_LEFT):new et(n.left+T/3,n.top+x/3),this.topRightBorderDoubleOuterBox=a>0||s>0?Un(n.left+m,n.top+x/3,A-k/3,l-x/3,cn.TOP_RIGHT):new et(n.left+n.width-k/3,n.top+x/3),this.bottomRightBorderDoubleOuterBox=c>0||d>0?Un(n.left+w,n.top+y,c-k/3,d-_/3,cn.BOTTOM_RIGHT):new et(n.left+n.width-k/3,n.top+n.height-_/3),this.bottomLeftBorderDoubleOuterBox=f>0||p>0?Un(n.left+T/3,n.top+B,f-T/3,p-_/3,cn.BOTTOM_LEFT):new et(n.left+T/3,n.top+n.height-_/3),this.topLeftBorderDoubleInnerBox=a>0||s>0?Un(n.left+T*2/3,n.top+x*2/3,a-T*2/3,s-x*2/3,cn.TOP_LEFT):new et(n.left+T*2/3,n.top+x*2/3),this.topRightBorderDoubleInnerBox=a>0||s>0?Un(n.left+m,n.top+x*2/3,A-k*2/3,l-x*2/3,cn.TOP_RIGHT):new et(n.left+n.width-k*2/3,n.top+x*2/3),this.bottomRightBorderDoubleInnerBox=c>0||d>0?Un(n.left+w,n.top+y,c-k*2/3,d-_*2/3,cn.BOTTOM_RIGHT):new et(n.left+n.width-k*2/3,n.top+n.height-_*2/3),this.bottomLeftBorderDoubleInnerBox=f>0||p>0?Un(n.left+T*2/3,n.top+B,f-T*2/3,p-_*2/3,cn.BOTTOM_LEFT):new et(n.left+T*2/3,n.top+n.height-_*2/3),this.topLeftBorderStroke=a>0||s>0?Un(n.left+T/2,n.top+x/2,a-T/2,s-x/2,cn.TOP_LEFT):new et(n.left+T/2,n.top+x/2),this.topRightBorderStroke=a>0||s>0?Un(n.left+m,n.top+x/2,A-k/2,l-x/2,cn.TOP_RIGHT):new et(n.left+n.width-k/2,n.top+x/2),this.bottomRightBorderStroke=c>0||d>0?Un(n.left+w,n.top+y,c-k/2,d-_/2,cn.BOTTOM_RIGHT):new et(n.left+n.width-k/2,n.top+n.height-_/2),this.bottomLeftBorderStroke=f>0||p>0?Un(n.left+T/2,n.top+B,f-T/2,p-_/2,cn.BOTTOM_LEFT):new et(n.left+T/2,n.top+n.height-_/2),this.topLeftBorderBox=a>0||s>0?Un(n.left,n.top,a,s,cn.TOP_LEFT):new et(n.left,n.top),this.topRightBorderBox=A>0||l>0?Un(n.left+m,n.top,A,l,cn.TOP_RIGHT):new et(n.left+n.width,n.top),this.bottomRightBorderBox=c>0||d>0?Un(n.left+w,n.top+y,c,d,cn.BOTTOM_RIGHT):new et(n.left+n.width,n.top+n.height),this.bottomLeftBorderBox=f>0||p>0?Un(n.left,n.top+B,f,p,cn.BOTTOM_LEFT):new et(n.left,n.top+n.height),this.topLeftPaddingBox=a>0||s>0?Un(n.left+T,n.top+x,Math.max(0,a-T),Math.max(0,s-x),cn.TOP_LEFT):new et(n.left+T,n.top+x),this.topRightPaddingBox=A>0||l>0?Un(n.left+Math.min(m,n.width-k),n.top+x,m>n.width+k?0:Math.max(0,A-k),Math.max(0,l-x),cn.TOP_RIGHT):new et(n.left+n.width-k,n.top+x),this.bottomRightPaddingBox=c>0||d>0?Un(n.left+Math.min(w,n.width-T),n.top+Math.min(y,n.height-_),Math.max(0,c-k),Math.max(0,d-_),cn.BOTTOM_RIGHT):new et(n.left+n.width-k,n.top+n.height-_),this.bottomLeftPaddingBox=f>0||p>0?Un(n.left+T,n.top+Math.min(B,n.height-_),Math.max(0,f-T),Math.max(0,p-_),cn.BOTTOM_LEFT):new et(n.left+T,n.top+n.height-_),this.topLeftContentBox=a>0||s>0?Un(n.left+T+P,n.top+x+F,Math.max(0,a-(T+P)),Math.max(0,s-(x+F)),cn.TOP_LEFT):new et(n.left+T+P,n.top+x+F),this.topRightContentBox=A>0||l>0?Un(n.left+Math.min(m,n.width+T+P),n.top+x+F,m>n.width+T+P?0:A-T+P,l-(x+F),cn.TOP_RIGHT):new et(n.left+n.width-(k+I),n.top+x+F),this.bottomRightContentBox=c>0||d>0?Un(n.left+Math.min(w,n.width-(T+P)),n.top+Math.min(y,n.height+x+F),Math.max(0,c-(k+I)),d-(_+O),cn.BOTTOM_RIGHT):new et(n.left+n.width-(k+I),n.top+n.height-(_+O)),this.bottomLeftContentBox=f>0||p>0?Un(n.left+T+P,n.top+B,Math.max(0,f-(T+P)),p-(_+O),cn.BOTTOM_LEFT):new et(n.left+T+P,n.top+n.height-(_+O))}return r})(),cn;(function(r){r[r.TOP_LEFT=0]="TOP_LEFT",r[r.TOP_RIGHT=1]="TOP_RIGHT",r[r.BOTTOM_RIGHT=2]="BOTTOM_RIGHT",r[r.BOTTOM_LEFT=3]="BOTTOM_LEFT"})(cn||(cn={}));var Un=function(r,e,t,n,i){var a=4*((Math.sqrt(2)-1)/3),s=t*a,o=n*a,A=r+t,l=e+n;switch(i){case cn.TOP_LEFT:return new kd(new et(r,l),new et(r,l-o),new et(A-s,e),new et(A,e));case cn.TOP_RIGHT:return new kd(new et(r,e),new et(r+s,e),new et(A,l-o),new et(A,l));case cn.BOTTOM_RIGHT:return new kd(new et(A,e),new et(A,e+o),new et(r+s,l),new et(r,l));case cn.BOTTOM_LEFT:default:return new kd(new et(A,l),new et(A-s,l),new et(r,e+o),new et(r,e))}},df=function(r){return[r.topLeftBorderBox,r.topRightBorderBox,r.bottomRightBorderBox,r.bottomLeftBorderBox]},A7=function(r){return[r.topLeftContentBox,r.topRightContentBox,r.bottomRightContentBox,r.bottomLeftContentBox]},hf=function(r){return[r.topLeftPaddingBox,r.topRightPaddingBox,r.bottomRightPaddingBox,r.bottomLeftPaddingBox]},l7=(function(){function r(e,t,n){this.offsetX=e,this.offsetY=t,this.matrix=n,this.type=0,this.target=6}return r})(),Td=(function(){function r(e,t){this.path=e,this.target=t,this.type=1}return r})(),u7=(function(){function r(e){this.opacity=e,this.type=2,this.target=6}return r})(),c7=function(r){return r.type===0},uR=function(r){return r.type===1},d7=function(r){return r.type===2},ZS=function(r,e){return r.length===e.length?r.some(function(t,n){return t===e[n]}):!1},h7=function(r,e,t,n,i){return r.map(function(a,s){switch(s){case 0:return a.add(e,t);case 1:return a.add(e+n,t);case 2:return a.add(e+n,t+i);case 3:return a.add(e,t+i)}return a})},cR=(function(){function r(e){this.element=e,this.inlineLevel=[],this.nonInlineLevel=[],this.negativeZIndex=[],this.zeroOrAutoZIndexOrTransformedOrOpacity=[],this.positiveZIndex=[],this.nonPositionedFloats=[],this.nonPositionedInlineLevel=[]}return r})(),dR=(function(){function r(e,t){if(this.container=e,this.parent=t,this.effects=[],this.curves=new o7(this.container),this.container.styles.opacity<1&&this.effects.push(new u7(this.container.styles.opacity)),this.container.styles.transform!==null){var n=this.container.bounds.left+this.container.styles.transformOrigin[0].number,i=this.container.bounds.top+this.container.styles.transformOrigin[1].number,a=this.container.styles.transform;this.effects.push(new l7(n,i,a))}if(this.container.styles.overflowX!==0){var s=df(this.curves),o=hf(this.curves);ZS(s,o)?this.effects.push(new Td(s,6)):(this.effects.push(new Td(s,2)),this.effects.push(new Td(o,4)))}}return r.prototype.getEffects=function(e){for(var t=[2,3].indexOf(this.container.styles.position)===-1,n=this.parent,i=this.effects.slice(0);n;){var a=n.effects.filter(function(A){return!uR(A)});if(t||n.container.styles.position!==0||!n.parent){if(i.unshift.apply(i,a),t=[2,3].indexOf(n.container.styles.position)===-1,n.container.styles.overflowX!==0){var s=df(n.curves),o=hf(n.curves);ZS(s,o)||i.unshift(new Td(o,6))}}else i.unshift.apply(i,a);n=n.parent}return i.filter(function(A){return Cr(A.target,e)})},r})(),$B=function(r,e,t,n){r.container.elements.forEach(function(i){var a=Cr(i.flags,4),s=Cr(i.flags,2),o=new dR(i,r);Cr(i.styles.display,2048)&&n.push(o);var A=Cr(i.flags,8)?[]:n;if(a||s){var l=a||i.styles.isPositioned()?t:e,u=new cR(o);if(i.styles.isPositioned()||i.styles.opacity<1||i.styles.isTransformed()){var c=i.styles.zIndex.order;if(c<0){var d=0;l.negativeZIndex.some(function(f,p){return c>f.element.container.styles.zIndex.order?(d=p,!1):d>0}),l.negativeZIndex.splice(d,0,u)}else if(c>0){var h=0;l.positiveZIndex.some(function(f,p){return c>=f.element.container.styles.zIndex.order?(h=p+1,!1):h>0}),l.positiveZIndex.splice(h,0,u)}else l.zeroOrAutoZIndexOrTransformedOrOpacity.push(u)}else i.styles.isFloating()?l.nonPositionedFloats.push(u):l.nonPositionedInlineLevel.push(u);$B(o,u,a?u:t,A)}else i.styles.isInlineLevel()?e.inlineLevel.push(o):e.nonInlineLevel.push(o),$B(o,e,t,A);Cr(i.flags,8)&&hR(i,A)})},hR=function(r,e){for(var t=r instanceof HB?r.start:1,n=r instanceof HB?r.reversed:!1,i=0;i<e.length;i++){var a=e[i];a.container instanceof eR&&typeof a.container.value=="number"&&a.container.value!==0&&(t=a.container.value),a.listValue=ax(t,a.container.styles.listStyleType,!0),t+=n?-1:1}},f7=function(r){var e=new dR(r,null),t=new cR(e),n=[];return $B(e,t,t,n),hR(e.container,n),t},JS=function(r,e){switch(e){case 0:return ha(r.topLeftBorderBox,r.topLeftPaddingBox,r.topRightBorderBox,r.topRightPaddingBox);case 1:return ha(r.topRightBorderBox,r.topRightPaddingBox,r.bottomRightBorderBox,r.bottomRightPaddingBox);case 2:return ha(r.bottomRightBorderBox,r.bottomRightPaddingBox,r.bottomLeftBorderBox,r.bottomLeftPaddingBox);case 3:default:return ha(r.bottomLeftBorderBox,r.bottomLeftPaddingBox,r.topLeftBorderBox,r.topLeftPaddingBox)}},g7=function(r,e){switch(e){case 0:return ha(r.topLeftBorderBox,r.topLeftBorderDoubleOuterBox,r.topRightBorderBox,r.topRightBorderDoubleOuterBox);case 1:return ha(r.topRightBorderBox,r.topRightBorderDoubleOuterBox,r.bottomRightBorderBox,r.bottomRightBorderDoubleOuterBox);case 2:return ha(r.bottomRightBorderBox,r.bottomRightBorderDoubleOuterBox,r.bottomLeftBorderBox,r.bottomLeftBorderDoubleOuterBox);case 3:default:return ha(r.bottomLeftBorderBox,r.bottomLeftBorderDoubleOuterBox,r.topLeftBorderBox,r.topLeftBorderDoubleOuterBox)}},p7=function(r,e){switch(e){case 0:return ha(r.topLeftBorderDoubleInnerBox,r.topLeftPaddingBox,r.topRightBorderDoubleInnerBox,r.topRightPaddingBox);case 1:return ha(r.topRightBorderDoubleInnerBox,r.topRightPaddingBox,r.bottomRightBorderDoubleInnerBox,r.bottomRightPaddingBox);case 2:return ha(r.bottomRightBorderDoubleInnerBox,r.bottomRightPaddingBox,r.bottomLeftBorderDoubleInnerBox,r.bottomLeftPaddingBox);case 3:default:return ha(r.bottomLeftBorderDoubleInnerBox,r.bottomLeftPaddingBox,r.topLeftBorderDoubleInnerBox,r.topLeftPaddingBox)}},v7=function(r,e){switch(e){case 0:return Fd(r.topLeftBorderStroke,r.topRightBorderStroke);case 1:return Fd(r.topRightBorderStroke,r.bottomRightBorderStroke);case 2:return Fd(r.bottomRightBorderStroke,r.bottomLeftBorderStroke);case 3:default:return Fd(r.bottomLeftBorderStroke,r.topLeftBorderStroke)}},Fd=function(r,e){var t=[];return ua(r)?t.push(r.subdivide(.5,!1)):t.push(r),ua(e)?t.push(e.subdivide(.5,!0)):t.push(e),t},ha=function(r,e,t,n){var i=[];return ua(r)?i.push(r.subdivide(.5,!1)):i.push(r),ua(t)?i.push(t.subdivide(.5,!0)):i.push(t),ua(n)?i.push(n.subdivide(.5,!0).reverse()):i.push(n),ua(e)?i.push(e.subdivide(.5,!1).reverse()):i.push(e),i},fR=function(r){var e=r.bounds,t=r.styles;return e.add(t.borderLeftWidth,t.borderTopWidth,-(t.borderRightWidth+t.borderLeftWidth),-(t.borderTopWidth+t.borderBottomWidth))},ff=function(r){var e=r.styles,t=r.bounds,n=Tn(e.paddingLeft,t.width),i=Tn(e.paddingRight,t.width),a=Tn(e.paddingTop,t.width),s=Tn(e.paddingBottom,t.width);return t.add(n+e.borderLeftWidth,a+e.borderTopWidth,-(e.borderRightWidth+e.borderLeftWidth+n+i),-(e.borderTopWidth+e.borderBottomWidth+a+s))},m7=function(r,e){return r===0?e.bounds:r===2?ff(e):fR(e)},y7=function(r,e){return r===0?e.bounds:r===2?ff(e):fR(e)},Uv=function(r,e,t){var n=m7(nl(r.styles.backgroundOrigin,e),r),i=y7(nl(r.styles.backgroundClip,e),r),a=w7(nl(r.styles.backgroundSize,e),t,n),s=a[0],o=a[1],A=wu(nl(r.styles.backgroundPosition,e),n.width-s,n.height-o),l=b7(nl(r.styles.backgroundRepeat,e),A,a,n,i),u=Math.round(n.left+A[0]),c=Math.round(n.top+A[1]);return[l,u,c,s,o]},VA=function(r){return er(r)&&r.value===ml.AUTO},Md=function(r){return typeof r=="number"},w7=function(r,e,t){var n=e[0],i=e[1],a=e[2],s=r[0],o=r[1];if(!s)return[0,0];if(pr(s)&&o&&pr(o))return[Tn(s,t.width),Tn(o,t.height)];var A=Md(a);if(er(s)&&(s.value===ml.CONTAIN||s.value===ml.COVER)){if(Md(a)){var l=t.width/t.height;return l<a!=(s.value===ml.COVER)?[t.width,t.width/a]:[t.height*a,t.height]}return[t.width,t.height]}var u=Md(n),c=Md(i),d=u||c;if(VA(s)&&(!o||VA(o))){if(u&&c)return[n,i];if(!A&&!d)return[t.width,t.height];if(d&&A){var h=u?n:i*a,f=c?i:n/a;return[h,f]}var p=u?n:t.width,g=c?i:t.height;return[p,g]}if(A){var v=0,m=0;return pr(s)?v=Tn(s,t.width):pr(o)&&(m=Tn(o,t.height)),VA(s)?v=m*a:(!o||VA(o))&&(m=v/a),[v,m]}var y=null,w=null;if(pr(s)?y=Tn(s,t.width):o&&pr(o)&&(w=Tn(o,t.height)),y!==null&&(!o||VA(o))&&(w=u&&c?y/n*i:t.height),w!==null&&VA(s)&&(y=u&&c?w/i*n:t.width),y!==null&&w!==null)return[y,w];throw new Error("Unable to calculate background-size for element")},nl=function(r,e){var t=r[e];return typeof t>"u"?r[0]:t},b7=function(r,e,t,n,i){var a=e[0],s=e[1],o=t[0],A=t[1];switch(r){case 2:return[new et(Math.round(n.left),Math.round(n.top+s)),new et(Math.round(n.left+n.width),Math.round(n.top+s)),new et(Math.round(n.left+n.width),Math.round(A+n.top+s)),new et(Math.round(n.left),Math.round(A+n.top+s))];case 3:return[new et(Math.round(n.left+a),Math.round(n.top)),new et(Math.round(n.left+a+o),Math.round(n.top)),new et(Math.round(n.left+a+o),Math.round(n.height+n.top)),new et(Math.round(n.left+a),Math.round(n.height+n.top))];case 1:return[new et(Math.round(n.left+a),Math.round(n.top+s)),new et(Math.round(n.left+a+o),Math.round(n.top+s)),new et(Math.round(n.left+a+o),Math.round(n.top+s+A)),new et(Math.round(n.left+a),Math.round(n.top+s+A))];default:return[new et(Math.round(i.left),Math.round(i.top)),new et(Math.round(i.left+i.width),Math.round(i.top)),new et(Math.round(i.left+i.width),Math.round(i.height+i.top)),new et(Math.round(i.left),Math.round(i.height+i.top))]}},B7="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7",e_="Hidden Text",E7=(function(){function r(e){this._data={},this._document=e}return r.prototype.parseMetrics=function(e,t){var n=this._document.createElement("div"),i=this._document.createElement("img"),a=this._document.createElement("span"),s=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",s.appendChild(n),i.src=B7,i.width=1,i.height=1,i.style.margin="0",i.style.padding="0",i.style.verticalAlign="baseline",a.style.fontFamily=e,a.style.fontSize=t,a.style.margin="0",a.style.padding="0",a.appendChild(this._document.createTextNode(e_)),n.appendChild(a),n.appendChild(i);var o=i.offsetTop-a.offsetTop+2;n.removeChild(a),n.appendChild(this._document.createTextNode(e_)),n.style.lineHeight="normal",i.style.verticalAlign="super";var A=i.offsetTop-n.offsetTop+2;return s.removeChild(n),{baseline:o,middle:A}},r.prototype.getMetrics=function(e,t){var n=e+" "+t;return typeof this._data[n]>"u"&&(this._data[n]=this.parseMetrics(e,t)),this._data[n]},r})(),gR=(function(){function r(e,t){this.context=e,this.options=t}return r})(),x7=1e4;(function(r){Pa(e,r);function e(t,n){var i=r.call(this,t,n)||this;return i._activeEffects=[],i.canvas=n.canvas?n.canvas:document.createElement("canvas"),i.ctx=i.canvas.getContext("2d"),n.canvas||(i.canvas.width=Math.floor(n.width*n.scale),i.canvas.height=Math.floor(n.height*n.scale),i.canvas.style.width=n.width+"px",i.canvas.style.height=n.height+"px"),i.fontMetrics=new E7(document),i.ctx.scale(i.options.scale,i.options.scale),i.ctx.translate(-n.x,-n.y),i.ctx.textBaseline="bottom",i._activeEffects=[],i.context.logger.debug("Canvas renderer initialized ("+n.width+"x"+n.height+") with scale "+n.scale),i}return e.prototype.applyEffects=function(t){for(var n=this;this._activeEffects.length;)this.popEffect();t.forEach(function(i){return n.applyEffect(i)})},e.prototype.applyEffect=function(t){this.ctx.save(),d7(t)&&(this.ctx.globalAlpha=t.opacity),c7(t)&&(this.ctx.translate(t.offsetX,t.offsetY),this.ctx.transform(t.matrix[0],t.matrix[1],t.matrix[2],t.matrix[3],t.matrix[4],t.matrix[5]),this.ctx.translate(-t.offsetX,-t.offsetY)),uR(t)&&(this.path(t.path),this.ctx.clip()),this._activeEffects.push(t)},e.prototype.popEffect=function(){this._activeEffects.pop(),this.ctx.restore()},e.prototype.renderStack=function(t){return sa(this,void 0,void 0,function(){var n;return Hi(this,function(i){switch(i.label){case 0:return n=t.element.container.styles,n.isVisible()?[4,this.renderStackContent(t)]:[3,2];case 1:i.sent(),i.label=2;case 2:return[2]}})})},e.prototype.renderNode=function(t){return sa(this,void 0,void 0,function(){return Hi(this,function(n){switch(n.label){case 0:if(Cr(t.container.flags,16))debugger;return t.container.styles.isVisible()?[4,this.renderNodeBackgroundAndBorders(t)]:[3,3];case 1:return n.sent(),[4,this.renderNodeContent(t)];case 2:n.sent(),n.label=3;case 3:return[2]}})})},e.prototype.renderTextWithLetterSpacing=function(t,n,i){var a=this;if(n===0)this.ctx.fillText(t.text,t.bounds.left,t.bounds.top+i);else{var s=rx(t.text);s.reduce(function(o,A){return a.ctx.fillText(A,o,t.bounds.top+i),o+a.ctx.measureText(A).width},t.bounds.left)}},e.prototype.createFontStyle=function(t){var n=t.fontVariant.filter(function(s){return s==="normal"||s==="small-caps"}).join(""),i=T7(t.fontFamily).join(", "),a=_c(t.fontSize)?""+t.fontSize.number+t.fontSize.unit:t.fontSize.number+"px";return[[t.fontStyle,n,t.fontWeight,a,i].join(" "),i,a]},e.prototype.renderTextNode=function(t,n){return sa(this,void 0,void 0,function(){var i,a,s,o,A,l,u,c,d=this;return Hi(this,function(h){return i=this.createFontStyle(n),a=i[0],s=i[1],o=i[2],this.ctx.font=a,this.ctx.direction=n.direction===1?"rtl":"ltr",this.ctx.textAlign="left",this.ctx.textBaseline="alphabetic",A=this.fontMetrics.getMetrics(s,o),l=A.baseline,u=A.middle,c=n.paintOrder,t.textBounds.forEach(function(f){c.forEach(function(p){switch(p){case 0:d.ctx.fillStyle=Nr(n.color),d.renderTextWithLetterSpacing(f,n.letterSpacing,l);var g=n.textShadow;g.length&&f.text.trim().length&&(g.slice(0).reverse().forEach(function(v){d.ctx.shadowColor=Nr(v.color),d.ctx.shadowOffsetX=v.offsetX.number*d.options.scale,d.ctx.shadowOffsetY=v.offsetY.number*d.options.scale,d.ctx.shadowBlur=v.blur.number,d.renderTextWithLetterSpacing(f,n.letterSpacing,l)}),d.ctx.shadowColor="",d.ctx.shadowOffsetX=0,d.ctx.shadowOffsetY=0,d.ctx.shadowBlur=0),n.textDecorationLine.length&&(d.ctx.fillStyle=Nr(n.textDecorationColor||n.color),n.textDecorationLine.forEach(function(v){switch(v){case 1:d.ctx.fillRect(f.bounds.left,Math.round(f.bounds.top+l),f.bounds.width,1);break;case 2:d.ctx.fillRect(f.bounds.left,Math.round(f.bounds.top),f.bounds.width,1);break;case 3:d.ctx.fillRect(f.bounds.left,Math.ceil(f.bounds.top+u),f.bounds.width,1);break}}));break;case 1:n.webkitTextStrokeWidth&&f.text.trim().length&&(d.ctx.strokeStyle=Nr(n.webkitTextStrokeColor),d.ctx.lineWidth=n.webkitTextStrokeWidth,d.ctx.lineJoin=window.chrome?"miter":"round",d.ctx.strokeText(f.text,f.bounds.left,f.bounds.top+l)),d.ctx.strokeStyle="",d.ctx.lineWidth=0,d.ctx.lineJoin="miter";break}})}),[2]})})},e.prototype.renderReplacedElement=function(t,n,i){if(i&&t.intrinsicWidth>0&&t.intrinsicHeight>0){var a=ff(t),s=hf(n);this.path(s),this.ctx.save(),this.ctx.clip(),this.ctx.drawImage(i,0,0,t.intrinsicWidth,t.intrinsicHeight,a.left,a.top,a.width,a.height),this.ctx.restore()}},e.prototype.renderNodeContent=function(t){return sa(this,void 0,void 0,function(){var n,i,a,s,o,A,m,m,l,u,c,d,w,h,f,B,p,g,v,m,y,w,B;return Hi(this,function(x){switch(x.label){case 0:this.applyEffects(t.getEffects(4)),n=t.container,i=t.curves,a=n.styles,s=0,o=n.textNodes,x.label=1;case 1:return s<o.length?(A=o[s],[4,this.renderTextNode(A,a)]):[3,4];case 2:x.sent(),x.label=3;case 3:return s++,[3,1];case 4:if(!(n instanceof XU))return[3,8];x.label=5;case 5:return x.trys.push([5,7,,8]),[4,this.context.cache.match(n.src)];case 6:return m=x.sent(),this.renderReplacedElement(n,i,m),[3,8];case 7:return x.sent(),this.context.logger.error("Error loading image "+n.src),[3,8];case 8:if(n instanceof ZU&&this.renderReplacedElement(n,i,n.canvas),!(n instanceof JU))return[3,12];x.label=9;case 9:return x.trys.push([9,11,,12]),[4,this.context.cache.match(n.svg)];case 10:return m=x.sent(),this.renderReplacedElement(n,i,m),[3,12];case 11:return x.sent(),this.context.logger.error("Error loading svg "+n.svg.substring(0,255)),[3,12];case 12:return n instanceof rR&&n.tree?(l=new e(this.context,{scale:this.options.scale,backgroundColor:n.backgroundColor,x:0,y:0,width:n.width,height:n.height}),[4,l.render(n.tree)]):[3,14];case 13:u=x.sent(),n.width&&n.height&&this.ctx.drawImage(u,0,0,n.width,n.height,n.bounds.left,n.bounds.top,n.bounds.width,n.bounds.height),x.label=14;case 14:if(n instanceof ix&&(c=Math.min(n.bounds.width,n.bounds.height),n.type===uf?n.checked&&(this.ctx.save(),this.path([new et(n.bounds.left+c*.39363,n.bounds.top+c*.79),new et(n.bounds.left+c*.16,n.bounds.top+c*.5549),new et(n.bounds.left+c*.27347,n.bounds.top+c*.44071),new et(n.bounds.left+c*.39694,n.bounds.top+c*.5649),new et(n.bounds.left+c*.72983,n.bounds.top+c*.23),new et(n.bounds.left+c*.84,n.bounds.top+c*.34085),new et(n.bounds.left+c*.39363,n.bounds.top+c*.79)]),this.ctx.fillStyle=Nr(VS),this.ctx.fill(),this.ctx.restore()):n.type===cf&&n.checked&&(this.ctx.save(),this.ctx.beginPath(),this.ctx.arc(n.bounds.left+c/2,n.bounds.top+c/2,c/4,0,Math.PI*2,!0),this.ctx.fillStyle=Nr(VS),this.ctx.fill(),this.ctx.restore())),C7(n)&&n.value.length){switch(d=this.createFontStyle(a),w=d[0],h=d[1],f=this.fontMetrics.getMetrics(w,h).baseline,this.ctx.font=w,this.ctx.fillStyle=Nr(a.color),this.ctx.textBaseline="alphabetic",this.ctx.textAlign=_7(n.styles.textAlign),B=ff(n),p=0,n.styles.textAlign){case 1:p+=B.width/2;break;case 2:p+=B.width;break}g=B.add(p,0,0,-B.height/2+1),this.ctx.save(),this.path([new et(B.left,B.top),new et(B.left+B.width,B.top),new et(B.left+B.width,B.top+B.height),new et(B.left,B.top+B.height)]),this.ctx.clip(),this.renderTextWithLetterSpacing(new $u(n.value,g),a.letterSpacing,f),this.ctx.restore(),this.ctx.textBaseline="alphabetic",this.ctx.textAlign="left"}if(!Cr(n.styles.display,2048))return[3,20];if(n.styles.listStyleImage===null)return[3,19];if(v=n.styles.listStyleImage,v.type!==0)return[3,18];m=void 0,y=v.url,x.label=15;case 15:return x.trys.push([15,17,,18]),[4,this.context.cache.match(y)];case 16:return m=x.sent(),this.ctx.drawImage(m,n.bounds.left-(m.width+10),n.bounds.top),[3,18];case 17:return x.sent(),this.context.logger.error("Error loading list-style-image "+y),[3,18];case 18:return[3,20];case 19:t.listValue&&n.styles.listStyleType!==-1&&(w=this.createFontStyle(a)[0],this.ctx.font=w,this.ctx.fillStyle=Nr(a.color),this.ctx.textBaseline="middle",this.ctx.textAlign="right",B=new mA(n.bounds.left,n.bounds.top+Tn(n.styles.paddingTop,n.bounds.width),n.bounds.width,TS(a.lineHeight,a.fontSize.number)/2+1),this.renderTextWithLetterSpacing(new $u(t.listValue,B),a.letterSpacing,TS(a.lineHeight,a.fontSize.number)/2+2),this.ctx.textBaseline="bottom",this.ctx.textAlign="left"),x.label=20;case 20:return[2]}})})},e.prototype.renderStackContent=function(t){return sa(this,void 0,void 0,function(){var n,i,v,a,s,v,o,A,v,l,u,v,c,d,v,h,f,v,p,g,v;return Hi(this,function(m){switch(m.label){case 0:if(Cr(t.element.container.flags,16))debugger;return[4,this.renderNodeBackgroundAndBorders(t.element)];case 1:m.sent(),n=0,i=t.negativeZIndex,m.label=2;case 2:return n<i.length?(v=i[n],[4,this.renderStack(v)]):[3,5];case 3:m.sent(),m.label=4;case 4:return n++,[3,2];case 5:return[4,this.renderNodeContent(t.element)];case 6:m.sent(),a=0,s=t.nonInlineLevel,m.label=7;case 7:return a<s.length?(v=s[a],[4,this.renderNode(v)]):[3,10];case 8:m.sent(),m.label=9;case 9:return a++,[3,7];case 10:o=0,A=t.nonPositionedFloats,m.label=11;case 11:return o<A.length?(v=A[o],[4,this.renderStack(v)]):[3,14];case 12:m.sent(),m.label=13;case 13:return o++,[3,11];case 14:l=0,u=t.nonPositionedInlineLevel,m.label=15;case 15:return l<u.length?(v=u[l],[4,this.renderStack(v)]):[3,18];case 16:m.sent(),m.label=17;case 17:return l++,[3,15];case 18:c=0,d=t.inlineLevel,m.label=19;case 19:return c<d.length?(v=d[c],[4,this.renderNode(v)]):[3,22];case 20:m.sent(),m.label=21;case 21:return c++,[3,19];case 22:h=0,f=t.zeroOrAutoZIndexOrTransformedOrOpacity,m.label=23;case 23:return h<f.length?(v=f[h],[4,this.renderStack(v)]):[3,26];case 24:m.sent(),m.label=25;case 25:return h++,[3,23];case 26:p=0,g=t.positiveZIndex,m.label=27;case 27:return p<g.length?(v=g[p],[4,this.renderStack(v)]):[3,30];case 28:m.sent(),m.label=29;case 29:return p++,[3,27];case 30:return[2]}})})},e.prototype.mask=function(t){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(t.slice(0).reverse()),this.ctx.closePath()},e.prototype.path=function(t){this.ctx.beginPath(),this.formatPath(t),this.ctx.closePath()},e.prototype.formatPath=function(t){var n=this;t.forEach(function(i,a){var s=ua(i)?i.start:i;a===0?n.ctx.moveTo(s.x,s.y):n.ctx.lineTo(s.x,s.y),ua(i)&&n.ctx.bezierCurveTo(i.startControl.x,i.startControl.y,i.endControl.x,i.endControl.y,i.end.x,i.end.y)})},e.prototype.renderRepeat=function(t,n,i,a){this.path(t),this.ctx.fillStyle=n,this.ctx.translate(i,a),this.ctx.fill(),this.ctx.translate(-i,-a)},e.prototype.resizeImage=function(t,n,i){var a;if(t.width===n&&t.height===i)return t;var s=(a=this.canvas.ownerDocument)!==null&&a!==void 0?a:document,o=s.createElement("canvas");o.width=Math.max(1,n),o.height=Math.max(1,i);var A=o.getContext("2d");return A.drawImage(t,0,0,t.width,t.height,0,0,n,i),o},e.prototype.renderBackgroundImage=function(t){return sa(this,void 0,void 0,function(){var n,i,a,s,o,A;return Hi(this,function(l){switch(l.label){case 0:n=t.styles.backgroundImage.length-1,i=function(u){var c,d,h,F,te,N,P,G,_,f,F,te,N,P,G,p,g,v,m,y,w,B,x,k,_,T,F,I,O,P,G,ee,te,N,K,J,be,re,ne,ue,Y,U;return Hi(this,function(W){switch(W.label){case 0:if(u.type!==0)return[3,5];c=void 0,d=u.url,W.label=1;case 1:return W.trys.push([1,3,,4]),[4,a.context.cache.match(d)];case 2:return c=W.sent(),[3,4];case 3:return W.sent(),a.context.logger.error("Error loading background-image "+d),[3,4];case 4:return c&&(h=Uv(t,n,[c.width,c.height,c.width/c.height]),F=h[0],te=h[1],N=h[2],P=h[3],G=h[4],_=a.ctx.createPattern(a.resizeImage(c,P,G),"repeat"),a.renderRepeat(F,_,te,N)),[3,6];case 5:_j(u)?(f=Uv(t,n,[null,null,null]),F=f[0],te=f[1],N=f[2],P=f[3],G=f[4],p=Bj(u.angle,P,G),g=p[0],v=p[1],m=p[2],y=p[3],w=p[4],B=document.createElement("canvas"),B.width=P,B.height=G,x=B.getContext("2d"),k=x.createLinearGradient(v,y,m,w),_S(u.stops,g).forEach(function(ie){return k.addColorStop(ie.stop,Nr(ie.color))}),x.fillStyle=k,x.fillRect(0,0,P,G),P>0&&G>0&&(_=a.ctx.createPattern(B,"repeat"),a.renderRepeat(F,_,te,N))):kj(u)&&(T=Uv(t,n,[null,null,null]),F=T[0],I=T[1],O=T[2],P=T[3],G=T[4],ee=u.position.length===0?[ex]:u.position,te=Tn(ee[0],P),N=Tn(ee[ee.length-1],G),K=Ej(u,te,N,P,G),J=K[0],be=K[1],J>0&&be>0&&(re=a.ctx.createRadialGradient(I+te,O+N,0,I+te,O+N,J),_S(u.stops,J*2).forEach(function(ie){return re.addColorStop(ie.stop,Nr(ie.color))}),a.path(F),a.ctx.fillStyle=re,J!==be?(ne=t.bounds.left+.5*t.bounds.width,ue=t.bounds.top+.5*t.bounds.height,Y=be/J,U=1/Y,a.ctx.save(),a.ctx.translate(ne,ue),a.ctx.transform(1,0,0,Y,0,0),a.ctx.translate(-ne,-ue),a.ctx.fillRect(I,U*(O-ue)+ue,P,G*U),a.ctx.restore()):a.ctx.fill())),W.label=6;case 6:return n--,[2]}})},a=this,s=0,o=t.styles.backgroundImage.slice(0).reverse(),l.label=1;case 1:return s<o.length?(A=o[s],[5,i(A)]):[3,4];case 2:l.sent(),l.label=3;case 3:return s++,[3,1];case 4:return[2]}})})},e.prototype.renderSolidBorder=function(t,n,i){return sa(this,void 0,void 0,function(){return Hi(this,function(a){return this.path(JS(i,n)),this.ctx.fillStyle=Nr(t),this.ctx.fill(),[2]})})},e.prototype.renderDoubleBorder=function(t,n,i,a){return sa(this,void 0,void 0,function(){var s,o;return Hi(this,function(A){switch(A.label){case 0:return n<3?[4,this.renderSolidBorder(t,i,a)]:[3,2];case 1:return A.sent(),[2];case 2:return s=g7(a,i),this.path(s),this.ctx.fillStyle=Nr(t),this.ctx.fill(),o=p7(a,i),this.path(o),this.ctx.fill(),[2]}})})},e.prototype.renderNodeBackgroundAndBorders=function(t){return sa(this,void 0,void 0,function(){var n,i,a,s,o,A,l,u,c=this;return Hi(this,function(d){switch(d.label){case 0:return this.applyEffects(t.getEffects(2)),n=t.container.styles,i=!vl(n.backgroundColor)||n.backgroundImage.length,a=[{style:n.borderTopStyle,color:n.borderTopColor,width:n.borderTopWidth},{style:n.borderRightStyle,color:n.borderRightColor,width:n.borderRightWidth},{style:n.borderBottomStyle,color:n.borderBottomColor,width:n.borderBottomWidth},{style:n.borderLeftStyle,color:n.borderLeftColor,width:n.borderLeftWidth}],s=S7(nl(n.backgroundClip,0),t.curves),i||n.boxShadow.length?(this.ctx.save(),this.path(s),this.ctx.clip(),vl(n.backgroundColor)||(this.ctx.fillStyle=Nr(n.backgroundColor),this.ctx.fill()),[4,this.renderBackgroundImage(t.container)]):[3,2];case 1:d.sent(),this.ctx.restore(),n.boxShadow.slice(0).reverse().forEach(function(h){c.ctx.save();var f=df(t.curves),p=h.inset?0:x7,g=h7(f,-p+(h.inset?1:-1)*h.spread.number,(h.inset?1:-1)*h.spread.number,h.spread.number*(h.inset?-2:2),h.spread.number*(h.inset?-2:2));h.inset?(c.path(f),c.ctx.clip(),c.mask(g)):(c.mask(f),c.ctx.clip(),c.path(g)),c.ctx.shadowOffsetX=h.offsetX.number+p,c.ctx.shadowOffsetY=h.offsetY.number,c.ctx.shadowColor=Nr(h.color),c.ctx.shadowBlur=h.blur.number,c.ctx.fillStyle=h.inset?Nr(h.color):"rgba(0,0,0,1)",c.ctx.fill(),c.ctx.restore()}),d.label=2;case 2:o=0,A=0,l=a,d.label=3;case 3:return A<l.length?(u=l[A],u.style!==0&&!vl(u.color)&&u.width>0?u.style!==2?[3,5]:[4,this.renderDashedDottedBorder(u.color,u.width,o,t.curves,2)]:[3,11]):[3,13];case 4:return d.sent(),[3,11];case 5:return u.style!==3?[3,7]:[4,this.renderDashedDottedBorder(u.color,u.width,o,t.curves,3)];case 6:return d.sent(),[3,11];case 7:return u.style!==4?[3,9]:[4,this.renderDoubleBorder(u.color,u.width,o,t.curves)];case 8:return d.sent(),[3,11];case 9:return[4,this.renderSolidBorder(u.color,o,t.curves)];case 10:d.sent(),d.label=11;case 11:o++,d.label=12;case 12:return A++,[3,3];case 13:return[2]}})})},e.prototype.renderDashedDottedBorder=function(t,n,i,a,s){return sa(this,void 0,void 0,function(){var o,A,l,u,c,d,h,f,p,g,v,m,y,w,B,x,B,x;return Hi(this,function(k){return this.ctx.save(),o=v7(a,i),A=JS(a,i),s===2&&(this.path(A),this.ctx.clip()),ua(A[0])?(l=A[0].start.x,u=A[0].start.y):(l=A[0].x,u=A[0].y),ua(A[1])?(c=A[1].end.x,d=A[1].end.y):(c=A[1].x,d=A[1].y),i===0||i===2?h=Math.abs(l-c):h=Math.abs(u-d),this.ctx.beginPath(),s===3?this.formatPath(o):this.formatPath(A.slice(0,2)),f=n<3?n*3:n*2,p=n<3?n*2:n,s===3&&(f=n,p=n),g=!0,h<=f*2?g=!1:h<=f*2+p?(v=h/(2*f+p),f*=v,p*=v):(m=Math.floor((h+p)/(f+p)),y=(h-m*f)/(m-1),w=(h-(m+1)*f)/m,p=w<=0||Math.abs(p-y)<Math.abs(p-w)?y:w),g&&(s===3?this.ctx.setLineDash([0,f+p]):this.ctx.setLineDash([f,p])),s===3?(this.ctx.lineCap="round",this.ctx.lineWidth=n):this.ctx.lineWidth=n*2+1.1,this.ctx.strokeStyle=Nr(t),this.ctx.stroke(),this.ctx.setLineDash([]),s===2&&(ua(A[0])&&(B=A[3],x=A[0],this.ctx.beginPath(),this.formatPath([new et(B.end.x,B.end.y),new et(x.start.x,x.start.y)]),this.ctx.stroke()),ua(A[1])&&(B=A[1],x=A[2],this.ctx.beginPath(),this.formatPath([new et(B.end.x,B.end.y),new et(x.start.x,x.start.y)]),this.ctx.stroke())),this.ctx.restore(),[2]})})},e.prototype.render=function(t){return sa(this,void 0,void 0,function(){var n;return Hi(this,function(i){switch(i.label){case 0:return this.options.backgroundColor&&(this.ctx.fillStyle=Nr(this.options.backgroundColor),this.ctx.fillRect(this.options.x,this.options.y,this.options.width,this.options.height)),n=f7(t),[4,this.renderStack(n)];case 1:return i.sent(),this.applyEffects([]),[2,this.canvas]}})})},e})(gR);var C7=function(r){return r instanceof nR||r instanceof tR?!0:r instanceof ix&&r.type!==cf&&r.type!==uf},S7=function(r,e){switch(r){case 0:return df(e);case 2:return A7(e);case 1:default:return hf(e)}},_7=function(r){switch(r){case 1:return"center";case 2:return"right";case 0:default:return"left"}},k7=["-apple-system","system-ui"],T7=function(r){return/iPhone OS 15_(0|1)/.test(window.navigator.userAgent)?r.filter(function(e){return k7.indexOf(e)===-1}):r};(function(r){Pa(e,r);function e(t,n){var i=r.call(this,t,n)||this;return i.canvas=n.canvas?n.canvas:document.createElement("canvas"),i.ctx=i.canvas.getContext("2d"),i.options=n,i.canvas.width=Math.floor(n.width*n.scale),i.canvas.height=Math.floor(n.height*n.scale),i.canvas.style.width=n.width+"px",i.canvas.style.height=n.height+"px",i.ctx.scale(i.options.scale,i.options.scale),i.ctx.translate(-n.x,-n.y),i.context.logger.debug("EXPERIMENTAL ForeignObject renderer initialized ("+n.width+"x"+n.height+" at "+n.x+","+n.y+") with scale "+n.scale),i}return e.prototype.render=function(t){return sa(this,void 0,void 0,function(){var n,i;return Hi(this,function(a){switch(a.label){case 0:return n=DB(this.options.width*this.options.scale,this.options.height*this.options.scale,this.options.scale,this.options.scale,t),[4,F7(n)];case 1:return i=a.sent(),this.options.backgroundColor&&(this.ctx.fillStyle=Nr(this.options.backgroundColor),this.ctx.fillRect(0,0,this.options.width*this.options.scale,this.options.height*this.options.scale)),this.ctx.drawImage(i,-this.options.x*this.options.scale,-this.options.y*this.options.scale),[2,this.canvas]}})})},e})(gR);var F7=function(r){return new Promise(function(e,t){var n=new Image;n.onload=function(){e(n)},n.onerror=t,n.src="data:image/svg+xml;charset=utf-8,"+encodeURIComponent(new XMLSerializer().serializeToString(r))})};typeof window<"u"&&s7.setContext(window);/*!
157
- * @antv/g
158
- * @description A core module for rendering engine implements DOM API.
159
- * @version 6.3.1
160
- * @date 12/24/2025, 11:55:39 AM
161
- * @author AntVis
162
- * @docs https://g.antv.antgroup.com/
163
- */var Rv=(function(r){function e(t,n,i,a){var s;return Ne(this,e),s=Ft(this,e,[t]),s.currentTime=i,s.timelineTime=a,s.target=n,s.type="finish",s.bubbles=!1,s.currentTarget=n,s.defaultPrevented=!1,s.eventPhase=s.AT_TARGET,s.timeStamp=Date.now(),s.currentTime=i,s.timelineTime=a,s}return Mt(e,r),Pe(e)})(Wf),M7=0,I7=(function(){function r(e,t){var n;Ne(this,r),this.currentTimePending=!1,this._idle=!0,this._paused=!1,this._finishedFlag=!0,this._currentTime=0,this._playbackRate=1,this._inTimeline=!0,this.effect=e,e.animation=this,this.timeline=t,this.id="".concat(M7++),this._inEffect=!!this.effect.update(0),this._totalDuration=Number((n=this.effect)===null||n===void 0?void 0:n.getComputedTiming().endTime),this._holdTime=0,this._paused=!1,this.oldPlayState="idle",this.updatePromises()}return Pe(r,[{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 t=this;return this.readyPromise||(this.timeline.animationsWithPromises.indexOf(this)===-1&&this.timeline.animationsWithPromises.push(this),this.readyPromise=new Promise(function(n,i){t.resolveReadyPromise=function(){n(t)},t.rejectReadyPromise=function(){i(new Error)}}),this.pending||this.resolveReadyPromise()),this.readyPromise}},{key:"finished",get:function(){var t=this;return this.finishedPromise||(this.timeline.animationsWithPromises.indexOf(this)===-1&&this.timeline.animationsWithPromises.push(this),this.finishedPromise=new Promise(function(n,i){t.resolveFinishedPromise=function(){n(t)},t.rejectFinishedPromise=function(){i(new Error)}}),this.playState==="finished"&&this.resolveFinishedPromise()),this.finishedPromise}},{key:"currentTime",get:function(){return this.updatePromises(),this._idle||this.currentTimePending?null:this._currentTime},set:function(t){if(t=Number(t),!isNaN(t)){if(this.timeline.restart(),!this._paused&&this._startTime!==null){var n;this._startTime=Number((n=this.timeline)===null||n===void 0?void 0:n.currentTime)-t/this.playbackRate}this.currentTimePending=!1,this._currentTime!==t&&(this._idle&&(this._idle=!1,this._paused=!0),this.tickCurrentTime(t,!0),this.timeline.applyDirtiedAnimation(this))}}},{key:"startTime",get:function(){return this._startTime},set:function(t){if(t!==null){if(this.updatePromises(),t=Number(t),isNaN(t)||this._paused||this._idle)return;this._startTime=t,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(t){if(t!==this._playbackRate){this.updatePromises();var n=this.currentTime;this._playbackRate=t,this.startTime=null,this.playState!=="paused"&&this.playState!=="idle"&&(this._finishedFlag=!1,this._idle=!1,this.ensureAlive(),this.timeline.applyDirtiedAnimation(this)),n!==null&&(this.currentTime=n),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 t;if((t=this.effect.target)!==null&&t!==void 0&&t.destroyed)return this.readyPromise=void 0,this.finishedPromise=void 0,!1;var n=this.oldPlayState,i=this.pending?"pending":this.playState;return this.readyPromise&&i!==n&&(i==="idle"?(this.rejectReadyPromise(),this.readyPromise=void 0):n==="pending"?this.resolveReadyPromise():i==="pending"&&(this.readyPromise=void 0)),this.finishedPromise&&i!==n&&(i==="idle"?(this.rejectFinishedPromise(),this.finishedPromise=void 0):i==="finished"?this.resolveFinishedPromise():n==="finished"&&(this.finishedPromise=void 0)),this.oldPlayState=i,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(),this._idle=!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 t=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 n=new Rv(null,this,this.currentTime,null);setTimeout(function(){t.oncancel(n)})}}},{key:"reverse",value:function(){this.updatePromises();var t=this.currentTime;this.playbackRate*=-1,this.play(),t!==null&&(this.currentTime=t),this.updatePromises()}},{key:"updatePlaybackRate",value:function(t){this.playbackRate=t}},{key:"targetAnimations",value:function(){var t,n=(t=this.effect)===null||t===void 0?void 0:t.target;return n.getAnimations()}},{key:"markTarget",value:function(){var t=this.targetAnimations();t.indexOf(this)===-1&&t.push(this)}},{key:"unmarkTarget",value:function(){var t=this.targetAnimations(),n=t.indexOf(this);n!==-1&&t.splice(n,1)}},{key:"tick",value:function(t,n){!this._idle&&!this._paused&&(this._startTime===null?n&&(this.startTime=t-this._currentTime/this.playbackRate):this._isFinished||this.tickCurrentTime((t-this._startTime)*this.playbackRate)),n&&(this.currentTimePending=!1,this.fireEvents(t))}},{key:"rewind",value:function(){if(this.playbackRate>=0)this.currentTime=0;else if(this._totalDuration<1/0)this.currentTime=this._totalDuration;else throw new Error("Unable to rewind negative playback rate animation with infinite duration")}},{key:"persist",value:function(){throw new Error(pn)}},{key:"addEventListener",value:function(t,n,i){throw new Error(pn)}},{key:"removeEventListener",value:function(t,n,i){throw new Error(pn)}},{key:"dispatchEvent",value:function(t){throw new Error(pn)}},{key:"commitStyles",value:function(){throw new Error(pn)}},{key:"ensureAlive",value:function(){if(this.playbackRate<0&&this.currentTime===0){var t;this._inEffect=!!((t=this.effect)!==null&&t!==void 0&&t.update(-1))}else{var n;this._inEffect=!!((n=this.effect)!==null&&n!==void 0&&n.update(this.currentTime))}!this._inTimeline&&(this._inEffect||!this._finishedFlag)&&(this._inTimeline=!0,this.timeline.animations.push(this))}},{key:"tickCurrentTime",value:function(t,n){t!==this._currentTime&&(this._currentTime=t,this._isFinished&&!n&&(this._currentTime=this._playbackRate>0?this._totalDuration:0),this.ensureAlive())}},{key:"fireEvents",value:function(t){var n=this;if(this._isFinished){if(!this._finishedFlag){if(this.onfinish){var i=new Rv(null,this,this.currentTime,t);setTimeout(function(){n.onfinish&&n.onfinish(i)})}this._finishedFlag=!0}}else{if(this.onframe&&this.playState==="running"){var a=new Rv(null,this,this.currentTime,t);this.onframe(a)}this._finishedFlag=!1}}}])})(),O7=4,L7=.001,N7=1e-7,P7=10,Eu=11,Id=1/(Eu-1),U7=typeof Float32Array=="function",pR=function(e,t){return 1-3*t+3*e},vR=function(e,t){return 3*t-6*e},mR=function(e){return 3*e},gf=function(e,t,n){return((pR(t,n)*e+vR(t,n))*e+mR(t))*e},yR=function(e,t,n){return 3*pR(t,n)*e*e+2*vR(t,n)*e+mR(t)},R7=function(e,t,n,i,a){var s,o,A=0;do o=t+(n-t)/2,s=gf(o,i,a)-e,s>0?n=o:t=o;while(Math.abs(s)>N7&&++A<P7);return o},Q7=function(e,t,n,i){for(var a=0;a<O7;++a){var s=yR(t,n,i);if(s===0)return t;var o=gf(t,n,i)-e;t-=o/s}return t},sx=function(e,t,n,i){if(!(e>=0&&e<=1&&n>=0&&n<=1))throw new Error("bezier x values must be in [0, 1] range");if(e===t&&n===i)return function(A){return A};for(var a=U7?new Float32Array(Eu):new Array(Eu),s=0;s<Eu;++s)a[s]=gf(s*Id,e,n);var o=function(l){for(var u=0,c=1,d=Eu-1;c!==d&&a[c]<=l;++c)u+=Id;--c;var h=(l-a[c])/(a[c+1]-a[c]),f=u+h*Id,p=yR(f,e,n);return p>=L7?Q7(l,f,e,n):p===0?f:R7(l,u,u+Id,e,n)};return function(A){return A===0||A===1?A:gf(o(A),t,i)}},D7=function(e){return e=e.replace(/([A-Z])/g,function(t){return"-".concat(t.toLowerCase())}),e.charAt(0)==="-"?e.substring(1):e},Od=function(e){return Math.pow(e,2)},Ld=function(e){return Math.pow(e,3)},Nd=function(e){return Math.pow(e,4)},Pd=function(e){return Math.pow(e,5)},Ud=function(e){return Math.pow(e,6)},Rd=function(e){return 1-Math.cos(e*Math.PI/2)},Qd=function(e){return 1-Math.sqrt(1-e*e)},Dd=function(e){return e*e*(3*e-2)},Hd=function(e){for(var t,n=4;e<((t=Math.pow(2,--n))-1)/11;);return 1/Math.pow(4,3-n)-7.5625*Math.pow((t*3-2)/22-e,2)},$d=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=Tt(t,2),i=n[0],a=i===void 0?1:i,s=n[1],o=s===void 0?.5:s,A=jn(Number(a),1,10),l=jn(Number(o),.1,2);return e===0||e===1?e:-A*Math.pow(2,10*(e-1))*Math.sin((e-1-l/(Math.PI*2)*Math.asin(1/A))*(Math.PI*2)/l)},Au=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=arguments.length>2?arguments[2]:void 0,i=Tt(t,4),a=i[0],s=a===void 0?1:a,o=i[1],A=o===void 0?100:o,l=i[2],u=l===void 0?10:l,c=i[3],d=c===void 0?0:c;s=jn(s,.1,1e3),A=jn(A,.1,1e3),u=jn(u,.1,1e3),d=jn(d,.1,1e3);var h=Math.sqrt(A/s),f=u/(2*Math.sqrt(A*s)),p=f<1?h*Math.sqrt(1-f*f):0,g=1,v=f<1?(f*h+-d)/p:-d+h,m=n?n*e/1e3:e;return f<1?m=Math.exp(-m*f*h)*(g*Math.cos(p*m)+v*Math.sin(p*m)):m=(g+v*m)*Math.exp(-m*h),e===0||e===1?e:1-m},Qv=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=t,i=Tt(n,2),a=i[0],s=a===void 0?10:a,o=i[1],A=o==="start"?Math.ceil:Math.floor;return A(jn(e,0,1)*s)/s},t_=function(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],n=Tt(t,4),i=n[0],a=n[1],s=n[2],o=n[3];return sx(i,a,s,o)(e)},Gd=sx(.42,0,1,1),na=function(e){return function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],i=arguments.length>2?arguments[2]:void 0;return 1-e(1-t,n,i)}},ra=function(e){return function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],i=arguments.length>2?arguments[2]:void 0;return t<.5?e(t*2,n,i)/2:1-e(t*-2+2,n,i)/2}},ia=function(e){return function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],i=arguments.length>2?arguments[2]:void 0;return t<.5?(1-e(1-t*2,n,i))/2:(e(t*2-1,n,i)+1)/2}},n_={steps:Qv,"step-start":function(e){return Qv(e,[1,"start"])},"step-end":function(e){return Qv(e,[1,"end"])},linear:function(e){return e},"cubic-bezier":t_,ease:function(e){return t_(e,[.25,.1,.25,1])},in:Gd,out:na(Gd),"in-out":ra(Gd),"out-in":ia(Gd),"in-quad":Od,"out-quad":na(Od),"in-out-quad":ra(Od),"out-in-quad":ia(Od),"in-cubic":Ld,"out-cubic":na(Ld),"in-out-cubic":ra(Ld),"out-in-cubic":ia(Ld),"in-quart":Nd,"out-quart":na(Nd),"in-out-quart":ra(Nd),"out-in-quart":ia(Nd),"in-quint":Pd,"out-quint":na(Pd),"in-out-quint":ra(Pd),"out-in-quint":ia(Pd),"in-expo":Ud,"out-expo":na(Ud),"in-out-expo":ra(Ud),"out-in-expo":ia(Ud),"in-sine":Rd,"out-sine":na(Rd),"in-out-sine":ra(Rd),"out-in-sine":ia(Rd),"in-circ":Qd,"out-circ":na(Qd),"in-out-circ":ra(Qd),"out-in-circ":ia(Qd),"in-back":Dd,"out-back":na(Dd),"in-out-back":ra(Dd),"out-in-back":ia(Dd),"in-bounce":Hd,"out-bounce":na(Hd),"in-out-bounce":ra(Hd),"out-in-bounce":ia(Hd),"in-elastic":$d,"out-elastic":na($d),"in-out-elastic":ra($d),"out-in-elastic":ia($d),spring:Au,"spring-in":Au,"spring-out":na(Au),"spring-in-out":ra(Au),"spring-out-in":ia(Au)},H7=function(e){return D7(e).replace(/^ease-/,"").replace(/(\(|\s).+/,"").toLowerCase().trim()},$7=function(e){return n_[H7(e)]||n_.linear},G7=function(e){return e},z7=1,V7=.5,r_=0;function i_(r,e){return function(t){if(t>=1)return 1;var n=1/r;return t+=e*n,t-t%n}}var zd="\\s*(-?\\d+\\.?\\d*|-?\\.\\d+)\\s*",K7=new RegExp("cubic-bezier\\(".concat(zd,",").concat(zd,",").concat(zd,",").concat(zd,"\\)")),j7=/steps\(\s*(\d+)\s*\)/,W7=/steps\(\s*(\d+)\s*,\s*(start|middle|end)\s*\)/;function ox(r){var e=K7.exec(r);if(e)return sx.apply(void 0,Qt(e.slice(1).map(Number)));var t=j7.exec(r);if(t)return i_(Number(t[1]),r_);var n=W7.exec(r);return n?i_(Number(n[1]),{start:z7,middle:V7,end:r_}[n[2]]):$7(r)}function q7(r){return Math.abs(Y7(r)/(r.playbackRate||1))}function Y7(r){var e;return r.duration===0||r.iterations===0?0:(r.duration==="auto"?0:Number(r.duration))*((e=r.iterations)!==null&&e!==void 0?e:1)}var wR=0,Ax=1,og=2,bR=3;function X7(r,e,t){if(e===null)return wR;var n=t.endTime;return e<Math.min(t.delay,n)?Ax:e>=Math.min(t.delay+r+t.endDelay,n)?og:bR}function Z7(r,e,t,n,i){switch(n){case Ax:return e==="backwards"||e==="both"?0:null;case bR:return t-i;case og:return e==="forwards"||e==="both"?r:null;case wR:return null}}function J7(r,e,t,n,i){var a=i;return r===0?e!==Ax&&(a+=t):a+=n/r,a}function eY(r,e,t,n,i,a){var s=r===1/0?e%1:r%1;return s===0&&t===og&&n!==0&&(i!==0||a===0)&&(s=1),s}function tY(r,e,t,n){return r===og&&e===1/0?1/0:t===1?Math.floor(n)-1:Math.floor(n)}function nY(r,e,t){var n=r;if(r!=="normal"&&r!=="reverse"){var i=e;r==="alternate-reverse"&&(i+=1),n="normal",i!==1/0&&i%2!==0&&(n="reverse")}return n==="normal"?t:1-t}function rY(r,e,t){var n=X7(r,e,t),i=Z7(r,t.fill,e,n,t.delay);if(i===null)return null;var a=t.duration==="auto"?0:t.duration,s=J7(a,n,t.iterations,i,t.iterationStart),o=eY(s,t.iterationStart,n,t.iterations,i,a),A=tY(n,t.iterations,o,s),l=nY(t.direction,A,o);return t.currentIteration=A,t.progress=l,t.easingFunction(l)}function iY(r,e,t){var n=aY(r,e),i=sY(n,t);return function(a,s){if(s!==null)i.filter(function(A){return s>=A.applyFrom&&s<A.applyTo}).forEach(function(A){var l=s-A.startOffset,u=A.endOffset-A.startOffset,c=u===0?0:l/u;a.setAttribute(A.property,A.interpolation(c),!1,!1)});else for(var o in n)BR(o)&&a.setAttribute(o,null)}}function BR(r){return r!=="offset"&&r!=="easing"&&r!=="composite"&&r!=="computedOffset"}function aY(r,e){for(var t={},n=0;n<r.length;n++)for(var i in r[n])if(BR(i)){var a={offset:r[n].offset,computedOffset:r[n].computedOffset,easing:r[n].easing,easingFunction:ox(r[n].easing)||e.easingFunction,value:r[n][i]};t[i]=t[i]||[],t[i].push(a)}return t}function sY(r,e){var t=[];for(var n in r)for(var i=r[n],a=0;a<i.length-1;a++){var s=a,o=a+1,A=i[s].computedOffset,l=i[o].computedOffset,u=A,c=l;a===0&&(u=-1/0,l===0&&(o=s)),a===i.length-2&&(c=1/0,A===1&&(s=o)),t.push({applyFrom:u,applyTo:c,startOffset:i[s].computedOffset,endOffset:i[o].computedOffset,easingFunction:i[s].easingFunction,property:n,interpolation:oY(n,i[s].value,i[o].value,e)})}return t.sort(function(d,h){return d.startOffset-h.startOffset}),t}var a_=function(e,t,n){return function(i){var a=ER(e,t,i);return Yt(a)?a:n(a)}};function oY(r,e,t,n){var i=JP[r];if(i&&i.syntax&&i.int){var a=Qe.styleValueRegistry.getPropertySyntax(i.syntax);if(a){var s=a.parser,o=s?s(e,n):e,A=s?s(t,n):t,l=a.mixer(o,A,n);if(l){var u=a_.apply(void 0,Qt(l));return function(c){return c===0?e:c===1?t:u(c)}}}}return a_(!1,!0,function(c){return c?t:e})}function ER(r,e,t){if(typeof r=="number"&&typeof e=="number")return r*(1-t)+e*t;if(typeof r=="boolean"&&typeof e=="boolean"||typeof r=="string"&&typeof e=="string")return t<.5?r:e;if(Array.isArray(r)&&Array.isArray(e)){for(var n=r.length,i=e.length,a=Math.max(n,i),s=[],o=0;o<a;o++)s.push(ER(r[o<n?o:n-1],e[o<i?o:i-1],t));return s}throw new Error("Mismatched interpolation arguments ".concat(r,":").concat(e))}var AY=(function(){function r(){Ne(this,r),this.delay=0,this.direction="normal",this.duration="auto",this._easing="linear",this.easingFunction=G7,this.endDelay=0,this.fill="auto",this.iterationStart=0,this.iterations=1,this.currentIteration=null,this.progress=null}return Pe(r,[{key:"easing",get:function(){return this._easing},set:function(t){this.easingFunction=ox(t),this._easing=t}}])})();function lY(r){var e=[];for(var t in r)if(!(t in["easing","offset","composite"])){var n=r[t];Array.isArray(n)||(n=[n]);for(var i=n.length,a=0;a<i;a++){if(!e[a]){var s={};"offset"in r&&(s.offset=Number(r.offset)),"easing"in r&&(s.easing=r.easing),"composite"in r&&(s.composite=r.composite),e[a]=s}n[a]!==void 0&&n[a]!==null&&(e[a][t]=n[a])}}return e.sort(function(o,A){return(o.computedOffset||0)-(A.computedOffset||0)}),e}function s_(r,e){if(r===null)return[];Array.isArray(r)||(r=lY(r));for(var t=r.map(function(A){var l={};e!=null&&e.composite&&(l.composite="auto");for(var u in A){var c=A[u];if(u==="offset"){if(c!==null){if(c=Number(c),!isFinite(c))throw new Error("Keyframe offsets must be numbers.");if(c<0||c>1)throw new Error("Keyframe offsets must be between 0 and 1.");l.computedOffset=c}}else if(u==="composite"&&["replace","add","accumulate","auto"].indexOf(c)===-1)throw new Error("".concat(c," compositing is not supported"));l[u]=c}return l.offset===void 0&&(l.offset=null),l.easing===void 0&&(l.easing=(e==null?void 0:e.easing)||"linear"),l.composite===void 0&&(l.composite="auto"),l}),n=!0,i=-1/0,a=0;a<t.length;a++){var s=t[a].offset;if(ut(s))n=!1;else{if(s<i)throw new TypeError("Keyframes are not loosely sorted by offset. Sort or specify offsets.");i=s}}t=t.filter(function(A){return Number(A.offset)>=0&&Number(A.offset)<=1});function o(){var A,l=t,u=l.length;if(t[u-1].computedOffset=Number((A=t[u-1].offset)!==null&&A!==void 0?A:1),u>1){var c;t[0].computedOffset=Number((c=t[0].offset)!==null&&c!==void 0?c:0)}for(var d=0,h=Number(t[0].computedOffset),f=1;f<u;f++){var p=t[f].computedOffset;if(!ut(p)&&!ut(h)){for(var g=1;g<f-d;g++)t[d+g].computedOffset=h+(Number(p)-h)*g/(f-d);d=f,h=Number(p)}}}return n||o(),t}var uY="backwards|forwards|both|none".split("|"),cY="reverse|alternate|alternate-reverse".split("|");function dY(r,e){var t=new AY;return typeof r=="number"&&!isNaN(r)?t.duration=r:r!==void 0&&Object.keys(r).forEach(function(n){if(r[n]!==void 0&&r[n]!==null&&r[n]!=="auto"){if((typeof t[n]=="number"||n==="duration")&&(typeof r[n]!="number"||isNaN(r[n]))||n==="fill"&&uY.indexOf(r[n])===-1||n==="direction"&&cY.indexOf(r[n])===-1)return;t[n]=r[n]}}),t}function hY(r,e){return r=fY(r??{duration:"auto"}),dY(r)}function fY(r){return typeof r=="number"&&(isNaN(r)?r={duration:"auto"}:r={duration:r}),r}var gY=(function(){function r(e,t,n){var i=this;Ne(this,r),this.composite="replace",this.iterationComposite="replace",this.target=e,this.timing=hY(n),this.timing.effect=this,this.timing.activeDuration=q7(this.timing),this.timing.endTime=Math.max(0,this.timing.delay+this.timing.activeDuration+this.timing.endDelay),this.normalizedKeyframes=s_(t,this.timing),this.interpolations=iY(this.normalizedKeyframes,this.timing,this.target);var a=Qe.globalThis.Proxy;this.computedTiming=a?new a(this.timing,{get:function(o,A){return A==="duration"?o.duration==="auto"?0:o.duration:A==="fill"?o.fill==="auto"?"none":o.fill:A==="localTime"?i.animation&&i.animation.currentTime||null:A==="currentIteration"?!i.animation||i.animation.playState!=="running"?null:o.currentIteration||0:A==="progress"?!i.animation||i.animation.playState!=="running"?null:o.progress||0:o[A]},set:function(){return!0}}):this.timing}return Pe(r,[{key:"applyInterpolations",value:function(){this.interpolations(this.target,Number(this.timeFraction))}},{key:"update",value:function(t){return t===null?!1:(this.timeFraction=rY(this.timing.activeDuration,t,this.timing),this.timeFraction!==null)}},{key:"getKeyframes",value:function(){return this.normalizedKeyframes}},{key:"setKeyframes",value:function(t){this.normalizedKeyframes=s_(t)}},{key:"getComputedTiming",value:function(){return this.computedTiming}},{key:"getTiming",value:function(){return this.timing}},{key:"updateTiming",value:function(t){var n=this;Object.keys(t||{}).forEach(function(i){n.timing[i]=t[i]})}}])})();function o_(r,e){return Number(r.id)-Number(e.id)}var pY=(function(){function r(e){var t=this;Ne(this,r),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(n){t.currentTime=n,t.discardAnimations(),t.animations.length===0?t.timelineTicking=!1:t.requestAnimationFrame(t.webAnimationsNextTick)},this.processRafCallbacks=function(n){var i=t.rafCallbacks;t.rafCallbacks=[],n<Number(t.currentTime)&&(n=Number(t.currentTime)),t.animations.sort(o_),t.animations=t.tick(n,!0,t.animations)[0],i.forEach(function(a){a[1](n)}),t.applyPendingEffects()},this.document=e}return Pe(r,[{key:"getAnimations",value:function(){return this.discardAnimations(),this.animations.slice()}},{key:"isTicking",value:function(){return this.inTick}},{key:"play",value:function(t,n,i){var a=new gY(t,n,i),s=new I7(a,this);return this.animations.push(s),this.restartWebAnimationsNextTick(),s.updatePromises(),s.play(),s.updatePromises(),s}},{key:"applyDirtiedAnimation",value:function(t){var n=this;if(!this.inTick){t.markTarget();var i=t.targetAnimations();i.sort(o_);var a=this.tick(Number(this.currentTime),!1,i.slice())[1];a.forEach(function(s){var o=n.animations.indexOf(s);o!==-1&&n.animations.splice(o,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(t){t==null||t.applyInterpolations()}),this.pendingEffects=[]}},{key:"updateAnimationsPromises",value:function(){this.animationsWithPromises=this.animationsWithPromises.filter(function(t){return t.updatePromises()})}},{key:"discardAnimations",value:function(){this.updateAnimationsPromises(),this.animations=this.animations.filter(function(t){return t.playState!=="finished"&&t.playState!=="idle"})}},{key:"restartWebAnimationsNextTick",value:function(){this.timelineTicking||(this.timelineTicking=!0,this.requestAnimationFrame(this.webAnimationsNextTick))}},{key:"rAF",value:function(t){var n=this.rafId++;return this.rafCallbacks.length===0&&(this.frameId=this.document.defaultView.requestAnimationFrame(this.processRafCallbacks)),this.rafCallbacks.push([n,t]),n}},{key:"requestAnimationFrame",value:function(t){var n=this;return this.rAF(function(i){n.updateAnimationsPromises(),t(i),n.updateAnimationsPromises()})}},{key:"tick",value:function(t,n,i){var a=this,s,o;this.inTick=!0,this.hasRestartedThisFrame=!1,this.currentTime=t,this.ticking=!1;var A=[],l=[],u=[],c=[];return i.forEach(function(d){d.tick(t,n),d._inEffect?(l.push(d.effect),d.markTarget()):(A.push(d.effect),d.unmarkTarget()),d._needsTick&&(a.ticking=!0);var h=d._inEffect||d._needsTick;d._inTimeline=h,h?u.push(d):c.push(d)}),(s=this.pendingEffects).push.apply(s,A),(o=this.pendingEffects).push.apply(o,l),this.ticking&&this.requestAnimationFrame(function(){}),this.inTick=!1,[u,c]}}])})();Qe.EasingFunction=ox;Qe.AnimationTimeline=pY;var vY=(function(r){function e(){var t;Ne(this,e);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return t=Ft(this,e,[].concat(i)),t.landmarks=[],t}return Mt(e,r),Pe(e,[{key:"rotate",value:function(n,i,a){if(this.relElevation=hl(i),this.relAzimuth=hl(n),this.relRoll=hl(a),this.elevation+=this.relElevation,this.azimuth+=this.relAzimuth,this.roll+=this.relRoll,this.type===gn.EXPLORING){var s=ao(fr(),[1,0,0],An((this.rotateWorld?1:-1)*this.relElevation)),o=ao(fr(),[0,1,0],An((this.rotateWorld?1:-1)*this.relAzimuth)),A=ao(fr(),[0,0,1],An(this.relRoll)),l=yo(fr(),o,s);l=yo(fr(),l,A);var u=RE(wn(),l);cl(this.matrix,this.matrix,[0,0,-this.distance]),si(this.matrix,this.matrix,u),cl(this.matrix,this.matrix,[0,0,this.distance])}else{if(Math.abs(this.elevation)>90)return this;this.computeMatrix()}return this._getAxes(),this.type===gn.ORBITING||this.type===gn.EXPLORING?this._getPosition():this.type===gn.TRACKING&&this._getFocalPoint(),this._update(),this}},{key:"pan",value:function(n,i){var a=vi(n,i,0),s=Cs(this.position);return mo(s,s,zh(Ut(),this.right,a[0])),mo(s,s,zh(Ut(),this.up,a[1])),this._setPosition(s),this.triggerUpdate(),this}},{key:"dolly",value:function(n){var i=this.forward,a=Cs(this.position),s=n*this.dollyingStep,o=this.distance+n*this.dollyingStep;return s=Math.max(Math.min(o,this.maxDistance),this.minDistance)-this.distance,a[0]+=s*i[0],a[1]+=s*i[1],a[2]+=s*i[2],this._setPosition(a),this.type===gn.ORBITING||this.type===gn.EXPLORING?this._getDistance():this.type===gn.TRACKING&&mo(this.focalPoint,a,this.distanceVector),this.triggerUpdate(),this}},{key:"cancelLandmarkAnimation",value:function(){this.landmarkAnimationID!==void 0&&this.canvas.cancelAnimationFrame(this.landmarkAnimationID)}},{key:"createLandmark",value:function(n){var i,a,s,o,A=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},l=A.position,u=l===void 0?this.position:l,c=A.focalPoint,d=c===void 0?this.focalPoint:c,h=A.roll,f=A.zoom,p=new Qe.CameraContribution;p.setType(this.type,void 0),p.setPosition(u[0],(i=u[1])!==null&&i!==void 0?i:this.position[1],(a=u[2])!==null&&a!==void 0?a:this.position[2]),p.setFocalPoint(d[0],(s=d[1])!==null&&s!==void 0?s:this.focalPoint[1],(o=d[2])!==null&&o!==void 0?o:this.focalPoint[2]),p.setRoll(h??this.roll),p.setZoom(f??this.zoom);var g={name:n,matrix:qN(p.getWorldTransform()),right:Cs(p.right),up:Cs(p.up),forward:Cs(p.forward),position:Cs(p.getPosition()),focalPoint:Cs(p.getFocalPoint()),distanceVector:Cs(p.getDistanceVector()),distance:p.getDistance(),dollyingStep:p.getDollyingStep(),azimuth:p.getAzimuth(),elevation:p.getElevation(),roll:p.getRoll(),relAzimuth:p.relAzimuth,relElevation:p.relElevation,relRoll:p.relRoll,zoom:p.getZoom()};return this.landmarks.push(g),g}},{key:"gotoLandmark",value:function(n){var i=this,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=ln(n)?this.landmarks.find(function(I){return I.name===n}):n;if(s){var o=Yt(a)?{duration:a}:a,A=o.easing,l=A===void 0?"linear":A,u=o.duration,c=u===void 0?100:u,d=o.easingFunction,h=d===void 0?void 0:d,f=o.onfinish,p=f===void 0?void 0:f,g=o.onframe,v=g===void 0?void 0:g,m=.01;this.cancelLandmarkAnimation();var y=s.position,w=s.focalPoint,B=s.zoom,x=s.roll,k=h||Qe.EasingFunction(l),_,T=function(){i.setFocalPoint(w),i.setPosition(y),i.setRoll(x),i.setZoom(B),i.computeMatrix(),i.triggerUpdate(),p==null||p()};if(c===0)return T();var F=function(O){_===void 0&&(_=O);var P=O-_;if(P>=c){T();return}var G=k(P/c),ee=Ut(),te=Ut(),N=1,K=0;nB(ee,i.focalPoint,w,G),nB(te,i.position,y,G),K=i.roll*(1-G)+x*G,N=i.zoom*(1-G)+B*G,i.setFocalPoint(ee),i.setPosition(te),i.setRoll(K),i.setZoom(N);var J=d2(ee,w)+d2(te,y);if(J<=m&&B===void 0&&x===void 0)return T();i.computeMatrix(),i.triggerUpdate(),P<c&&(v==null||v(G),i.landmarkAnimationID=i.canvas.requestAnimationFrame(F))};this.canvas.requestAnimationFrame(F)}}}])})(PP);Qe.CameraContribution=vY;var mY=["body","startHead","endHead","startHeadOffset","endHeadOffset"],yY=["body","startHead","endHead","startHeadOffset","endHeadOffset"],wY=["body","startHead","endHead","startHeadOffset","endHeadOffset"],xR=(function(r){function e(t){var n;Ne(this,e),n=Ft(this,e,[bt(bt({},t),{},{type:e.tag})]);var i=n.attributes,a=i.body,s=i.startHead,o=i.endHead;i.startHeadOffset,i.endHeadOffset;var A=as(i,mY);if(!a)throw new Error("Arrow's body is required");return n.body=a,n.appendChild(n.body),n.handleBodyAttributeChanged(n.body),s&&n.appendArrowHead(n.getArrowHeadType(s),!0),o&&n.appendArrowHead(n.getArrowHeadType(o),!1),n.applyArrowStyle(A,[n.body,n.startHead,n.endHead]),n}return Mt(e,r),Pe(e,[{key:"handleBodyAttributeChanged",value:function(n){var i=this;n.addEventListener(Vt.ATTR_MODIFIED,function(a){var s=a.attrName;s==="x1"||s==="y1"?i.startHead&&i.transformArrowHead(i.startHead,!0):(s==="x2"||s==="y2")&&i.endHead&&i.transformArrowHead(i.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(n,i,a){if(n==="opacity"||n==="strokeOpacity"||n==="stroke"||n==="lineWidth"||n==="increasedLineWidthForHitTesting")this.applyArrowStyle(Ye({},n,a),[this.body,this.startHead,this.endHead]);else if(n==="startHead"||n==="endHead"){var s=n==="startHead";if(this.destroyArrowHead(s),a){var o=this.attributes;o.body,o.startHead,o.endHead,o.startHeadOffset,o.endHeadOffset;var A=as(o,yY);this.appendArrowHead(this.getArrowHeadType(a),s),this.applyArrowStyle(A,[s?this.startHead:this.endHead])}}else if(n==="body"){var l=this.attributes;l.body,l.startHead,l.endHead,l.startHeadOffset,l.endHeadOffset;var u=as(l,wY);this.body.destroy(),this.body=a,this.appendChild(this.body),this.applyArrowStyle(u,[this.body])}else n==="startHeadOffset"?this.moveArrowHeadAlongTangent(a,!0):n==="endHeadOffset"&&this.moveArrowHeadAlongTangent(a,!1)}},{key:"getArrowHeadType",value:function(n){return typeof n=="boolean"?"default":"custom"}},{key:"appendArrowHead",value:function(n,i){var a;n==="default"?a=this.createDefaultArrowHead():a=i?this.attributes.startHead:this.attributes.endHead,this.transformArrowHead(a,i),a.setAttribute("zIndex",1),i?this.startHead=a:this.endHead=a,this.appendChild(a);var s=i?this.attributes.startHeadOffset:this.attributes.endHeadOffset;s&&this.moveArrowHeadAlongTangent(s,i)}},{key:"transformArrowHead",value:function(n,i){var a=Ut(),s=0,o=0,A=0,l=0,u=0,c=this.body&&this.body.nodeName;if(c===Te.LINE){var d=this.body.attributes,h=d.x1,f=d.x2,p=d.y1,g=d.y2;o=i?f:h,A=i?h:f,l=i?g:p,u=i?p:g}else if(c===Te.POLYLINE){var v=this.body.attributes.points,m=v.length;o=i?v[1][0]:v[m-2][0],l=i?v[1][1]:v[m-2][1],A=i?v[0][0]:v[m-1][0],u=i?v[0][1]:v[m-1][1]}else if(c===Te.PATH){var y=this.getTangent(this.body,i),w=Tt(y,2),B=w[0],x=w[1];o=B[0],l=B[1],A=x[0],u=x[1]}var k=o-A,_=l-u;s=Math.atan2(_,k),a=bn(A,u,0),i?(this.startHeadPosition=a,this.startHeadRad=s):(this.endHeadPosition=a,this.endHeadRad=s),n.setLocalPosition(a),n.setLocalEulerAngles(s*180/Math.PI+n.getLocalEulerAngles())}},{key:"moveArrowHeadAlongTangent",value:function(n,i){var a=i?this.startHead:this.endHead;a&&a.setLocalPosition(hP(Ut(),i?this.startHeadPosition:this.endHeadPosition,bn(Math.cos(i?this.startHeadRad:this.endHeadRad)*n,Math.sin(i?this.startHeadRad:this.endHeadRad)*n,0))),this.body}},{key:"destroyArrowHead",value:function(n){n&&this.startHead&&(this.startHead.destroy(),this.startHead=void 0),!n&&this.endHead&&(this.endHead.destroy(),this.endHead=void 0)}},{key:"getTangent",value:function(n,i){return i?n.getStartTangent():n.getEndTangent()}},{key:"createDefaultArrowHead",value:function(){var n=this.attributes,i=n.stroke,a=n.lineWidth,s=Math.sin,o=Math.cos,A=Math.PI,l=10*o(A/6);return new Ai({style:{d:"M".concat(l/2,",").concat(10*s(A/6)," L-").concat(l/2,",0 L").concat(l/2,",-").concat(10*s(A/6)),stroke:i,lineWidth:a,transformOrigin:"center"}})}},{key:"applyArrowStyle",value:function(n,i){var a=n.opacity,s=n.stroke,o=n.strokeOpacity,A=n.lineWidth,l=n.increasedLineWidthForHitTesting;i.forEach(function(u){u&&(ut(a)||(u.style.opacity=a),ut(s)||(u.style.stroke=s),ut(o)||(u.style.strokeOpacity=o),ut(A)||(u.style.lineWidth=A),ut(l)||(u.style.increasedLineWidthForHitTesting=l))})}}])})(Ec);xR.tag="arrow";xR.PARSED_STYLE_LIST=new Set([].concat(Qt(Ec.PARSED_STYLE_LIST),["body","startHead","endHead","startHeadOffset","endHeadOffset","stroke","lineWidth","opacity","strokeOpacity"]));var lx=Math.PI,bY=lx*2,lu=Math.sin,Vd=Math.cos,BY=Math.acos,Jr=Math.atan2,Gu=Math.sqrt,GB=Math.max,ja=Math.min,rl=1e-4,EY=[{name:"sr",inherits:!1,interpolable:!0,syntax:Ke.LENGTH_PERCENTAGE},{name:"sr0",inherits:!1,interpolable:!0,syntax:Ke.LENGTH_PERCENTAGE},{name:"startAngle",inherits:!1,interpolable:!0,syntax:Ke.ANGLE},{name:"endAngle",inherits:!1,interpolable:!0,syntax:Ke.ANGLE}];EY.forEach(function(r){vK.registerProperty(r)});var ba=function(e,t,n,i){return{x:e+n*Math.cos(i),y:t+n*Math.sin(i)}};function xY(r,e,t,n,i,a,s,o){var A=t-r,l=n-e,u=s-i,c=o-a,d=c*A-u*l;if(!(d*d<rl))return d=(u*(e-a)-c*(r-i))/d,[r+d*A,e+d*l]}function Kd(r,e,t,n,i,a,s){var o=r-t,A=e-n,l=a/Gu(o*o+A*A),u=l*A,c=-l*o,d=r+u,h=e+c,f=t+u,p=n+c,g=(d+f)/2,v=(h+p)/2,m=f-d,y=p-h,w=m*m+y*y,B=i-a,x=d*p-f*h,k=(y<0?-1:1)*Gu(GB(0,B*B*w-x*x)),_=(x*y-m*k)/w,T=(-x*m-y*k)/w,F=(x*y+m*k)/w,I=(-x*m+y*k)/w,O=_-g,P=T-v,G=F-g,ee=I-v;return O*O+P*P>G*G+ee*ee&&(_=F,T=I),{cx:_,cy:T,x0:-u,y0:-c,x1:_*(i/B-1),y1:T*(i/B-1)}}function xs(r,e){return e=e<0&&r>=0?e+bY:e,e-r<=lx?0:1}var CY=(function(r){function e(t){var n;return Ne(this,e),n=Ft(this,e,[t]),n.updatePath(),n}return Mt(e,r),Pe(e,[{key:"setAttribute",value:function(n,i,a){Yh(e,"setAttribute",this)([n,i,a]),["startAngle","endAngle","sr","sr0","radius"].indexOf(n)>-1&&this.updatePath()}},{key:"updatePath",value:function(){var n=this.parsedStyle,i=n.x,a=n.y,s=n.startAngle,o=n.endAngle,A=n.sr,l=n.sr0,u=n.radius,c=this.createPath(i,a,s?An(s):0,o?An(o):Math.PI*2,A||0,l||0,u||[0,0,0,0]);Yh(e,"setAttribute",this)(["d",c])}},{key:"createPath",value:function(n,i,a,s,o,A,l){if(!(o<=0)){var u=ba(n,i,o,a),c=ba(n,i,o,s),d=ba(n,i,A,a),h=ba(n,i,A,s);if(dl(s-a,Math.PI*2)){var f=ba(n,i,o,a+Math.PI),p=ba(n,i,A,a+Math.PI),g=[["M",u.x,u.y],["A",o,o,0,1,1,f.x,f.y],["A",o,o,0,1,1,c.x,c.y],["M",d.x,d.y]];return A&&(g.push(["A",A,A,0,1,0,p.x,p.y]),g.push(["A",A,A,0,1,0,h.x,h.y])),g.push(["M",u.x,u.y]),g.push(["Z"]),g}var v=s-a,m=o*Vd(a),y=o*lu(a),w=A*Vd(s),B=A*lu(s),x=o*Vd(s),k=o*lu(s),_=A*Vd(a),T=A*lu(a),F=Tt(l,4),I=F[0],O=F[1],P=F[2],G=F[3],ee=(o-A)/2,te=ja(ee,I),N=ja(ee,O),K=ja(ee,P),J=ja(ee,G),be=GB(te,N),re=GB(K,J),ne=be,ue=re;if((be>rl||re>rl)&&v<lx){var Y=xY(m,y,_,T,x,k,w,B);if(Y){var U=m-Y[0],W=y-Y[1],ie=x-Y[0],Ee=k-Y[1],de=1/lu(BY((U*ie+W*Ee)/(Gu(U*U+W*W)*Gu(ie*ie+Ee*Ee)))/2),X=Gu(Y[0]*Y[0]+Y[1]*Y[1]);ne=ja(be,(o-X)/(de+1)),ue=ja(re,(A-X)/(de-1))}}var xe=xs(a,s),ce=[];if(ne>rl){var De=ja(I,ne),He=ja(O,ne),Xe=Kd(_,T,m,y,o,De),ct=Kd(x,k,w,B,o,He);if(ce.push(["M",n+Xe.cx+Xe.x0,i+Xe.cy+Xe.y0]),ne<be&&De===He){var dt=Jr(Xe.y0,Xe.x0),Nn=Jr(ct.y0,ct.x0);ce.push(["A",ne,ne,0,xs(dt,Nn),1,n+ct.cx+ct.x0,i+ct.cy+ct.y0])}else{if(De>0){var Dt=Jr(Xe.y0,Xe.x0),ui=Jr(Xe.y1,Xe.x1),Hn=ba(n,i,o,ui);ce.push(["A",De,De,0,xs(Dt,ui),1,Hn.x,Hn.y])}var an=Jr(Xe.cy+Xe.y1,Xe.cx+Xe.x1),Jt=Jr(ct.cy+ct.y1,ct.cx+ct.x1),ye=ba(n,i,o,Jt);if(ce.push(["A",o,o,0,xs(an,Jt),1,ye.x,ye.y]),He>0){var me=Jr(ct.y1,ct.x1),pt=Jr(ct.y0,ct.x0);ce.push(["A",He,He,0,xs(me,pt),1,n+ct.cx+ct.x0,i+ct.cy+ct.y0])}}}else ce.push(["M",u.x,u.y]),ce.push(["A",o,o,0,xe,1,c.x,c.y]);if(A<rl)ce.push(["L",h.x,h.y]);else if(ue>rl){var at=ja(G,ue),tn=ja(P,ue),Nt=Kd(w,B,0,0,A-o,tn),Kt=Kd(0,0,_,T,A-o,at);if(ce.push(["L",n+Nt.cx+Nt.x0,i+Nt.cy+Nt.y0]),ue<re&&at===tn){var ci=Jr(Nt.y0,Nt.x0),Yr=Jr(Kt.y0,Kt.x0),Pn=ba(n,i,A,Yr);ce.push(["A",ne,ne,0,xs(ci,Yr),1,Pn.x,Pn.y])}else{if(tn>0){var Me=Jr(Nt.y0,Nt.x0),pe=Jr(Nt.y1,Nt.x1),vt=ba(n,i,A-o,pe);ce.push(["A",tn,tn,0,xs(Me,pe),1,vt.x,vt.y])}var Pt=Jr(Nt.cy+Nt.y1,Nt.cx+Nt.x1),Ht=Jr(Kt.cy+Kt.y1,Kt.cx+Kt.x1),Gt=ba(n,i,A,Ht);if(ce.push(["A",A,A,0,xs(Ht,Pt),0,Gt.x,Gt.y]),ce.push(["L",Gt.x,Gt.y]),at>0){var di=Jr(Kt.y1,Kt.x1),Ha=Jr(Kt.y0,Kt.x0);ce.push(["A",at,at,0,xs(di,Ha),1,n+Kt.cx+Kt.x0,i+Kt.cy+Kt.y0])}}}else ce.push(["L",h.x,h.y]),ce.push(["A",A,A,0,xe,0,d.x,d.y]);return ce.push(["Z"]),ce}}}])})(Ai);CY.PARSED_STYLE_LIST=new Set([].concat(Qt(Ai.PARSED_STYLE_LIST),["x","y","sr","sr0","radius","startAngle","endAngle"]));const SY={duration:500},_Y={duration:1e3,easing:"cubic-bezier(0.250, 0.460, 0.450, 0.940)",iterations:1,fill:"both"};var In;(function(r){r.NodeAdded="NodeAdded",r.NodeUpdated="NodeUpdated",r.NodeRemoved="NodeRemoved",r.EdgeAdded="EdgeAdded",r.EdgeUpdated="EdgeUpdated",r.EdgeRemoved="EdgeRemoved",r.ComboAdded="ComboAdded",r.ComboUpdated="ComboUpdated",r.ComboRemoved="ComboRemoved"})(In||(In={}));var Si;(function(r){r.DRAW="draw",r.COLLAPSE="collapse",r.EXPAND="expand",r.TRANSFORM="transform"})(Si||(Si={}));var cs;(function(r){r.CLICK="canvas:click",r.DBLCLICK="canvas:dblclick",r.POINTER_OVER="canvas:pointerover",r.POINTER_LEAVE="canvas:pointerleave",r.POINTER_ENTER="canvas:pointerenter",r.POINTER_MOVE="canvas:pointermove",r.POINTER_OUT="canvas:pointerout",r.POINTER_DOWN="canvas:pointerdown",r.POINTER_UP="canvas:pointerup",r.CONTEXT_MENU="canvas:contextmenu",r.DRAG_START="canvas:dragstart",r.DRAG="canvas:drag",r.DRAG_END="canvas:dragend",r.DRAG_ENTER="canvas:dragenter",r.DRAG_OVER="canvas:dragover",r.DRAG_LEAVE="canvas:dragleave",r.DROP="canvas:drop",r.WHEEL="canvas:wheel"})(cs||(cs={}));var iA;(function(r){r.CLICK="combo:click",r.DBLCLICK="combo:dblclick",r.POINTER_OVER="combo:pointerover",r.POINTER_LEAVE="combo:pointerleave",r.POINTER_ENTER="combo:pointerenter",r.POINTER_MOVE="combo:pointermove",r.POINTER_OUT="combo:pointerout",r.POINTER_DOWN="combo:pointerdown",r.POINTER_UP="combo:pointerup",r.CONTEXT_MENU="combo:contextmenu",r.DRAG_START="combo:dragstart",r.DRAG="combo:drag",r.DRAG_END="combo:dragend",r.DRAG_ENTER="combo:dragenter",r.DRAG_OVER="combo:dragover",r.DRAG_LEAVE="combo:dragleave",r.DROP="combo:drop"})(iA||(iA={}));var _e;(function(r){r.CLICK="click",r.DBLCLICK="dblclick",r.POINTER_OVER="pointerover",r.POINTER_LEAVE="pointerleave",r.POINTER_ENTER="pointerenter",r.POINTER_MOVE="pointermove",r.POINTER_OUT="pointerout",r.POINTER_DOWN="pointerdown",r.POINTER_UP="pointerup",r.CONTEXT_MENU="contextmenu",r.DRAG_START="dragstart",r.DRAG="drag",r.DRAG_END="dragend",r.DRAG_ENTER="dragenter",r.DRAG_OVER="dragover",r.DRAG_LEAVE="dragleave",r.DROP="drop",r.KEY_DOWN="keydown",r.KEY_UP="keyup",r.WHEEL="wheel",r.PINCH="pinch"})(_e||(_e={}));var ol;(function(r){r.KEY_DOWN="keydown",r.KEY_UP="keyup"})(ol||(ol={}));var pf;(function(r){r.CLICK="edge:click",r.DBLCLICK="edge:dblclick",r.POINTER_OVER="edge:pointerover",r.POINTER_LEAVE="edge:pointerleave",r.POINTER_ENTER="edge:pointerenter",r.POINTER_MOVE="edge:pointermove",r.POINTER_OUT="edge:pointerout",r.POINTER_DOWN="edge:pointerdown",r.POINTER_UP="edge:pointerup",r.CONTEXT_MENU="edge:contextmenu",r.DRAG_ENTER="edge:dragenter",r.DRAG_OVER="edge:dragover",r.DRAG_LEAVE="edge:dragleave",r.DROP="edge:drop"})(pf||(pf={}));var Ge;(function(r){r.BEFORE_CANVAS_INIT="beforecanvasinit",r.AFTER_CANVAS_INIT="aftercanvasinit",r.BEFORE_SIZE_CHANGE="beforesizechange",r.AFTER_SIZE_CHANGE="aftersizechange",r.BEFORE_ELEMENT_CREATE="beforeelementcreate",r.AFTER_ELEMENT_CREATE="afterelementcreate",r.BEFORE_ELEMENT_UPDATE="beforeelementupdate",r.AFTER_ELEMENT_UPDATE="afterelementupdate",r.BEFORE_ELEMENT_DESTROY="beforeelementdestroy",r.AFTER_ELEMENT_DESTROY="afterelementdestroy",r.BEFORE_ELEMENT_TRANSLATE="beforeelementtranslate",r.AFTER_ELEMENT_TRANSLATE="afterelementtranslate",r.BEFORE_DRAW="beforedraw",r.AFTER_DRAW="afterdraw",r.BEFORE_RENDER="beforerender",r.AFTER_RENDER="afterrender",r.BEFORE_ANIMATE="beforeanimate",r.AFTER_ANIMATE="afteranimate",r.BEFORE_LAYOUT="beforelayout",r.AFTER_LAYOUT="afterlayout",r.BEFORE_STAGE_LAYOUT="beforestagelayout",r.AFTER_STAGE_LAYOUT="afterstagelayout",r.BEFORE_TRANSFORM="beforetransform",r.AFTER_TRANSFORM="aftertransform",r.BATCH_START="batchstart",r.BATCH_END="batchend",r.BEFORE_DESTROY="beforedestroy",r.AFTER_DESTROY="afterdestroy",r.BEFORE_RENDERER_CHANGE="beforerendererchange",r.AFTER_RENDERER_CHANGE="afterrendererchange"})(Ge||(Ge={}));var to;(function(r){r.UNDO="undo",r.REDO="redo",r.CANCEL="cancel",r.ADD="add",r.CLEAR="clear",r.CHANGE="change"})(to||(to={}));var Ki;(function(r){r.CLICK="node:click",r.DBLCLICK="node:dblclick",r.POINTER_OVER="node:pointerover",r.POINTER_LEAVE="node:pointerleave",r.POINTER_ENTER="node:pointerenter",r.POINTER_MOVE="node:pointermove",r.POINTER_OUT="node:pointerout",r.POINTER_DOWN="node:pointerdown",r.POINTER_UP="node:pointerup",r.CONTEXT_MENU="node:contextmenu",r.DRAG_START="node:dragstart",r.DRAG="node:drag",r.DRAG_END="node:dragend",r.DRAG_ENTER="node:dragenter",r.DRAG_OVER="node:dragover",r.DRAG_LEAVE="node:dragleave",r.DROP="node:drop"})(Ki||(Ki={}));const yn="combo",ji="tree";var rc;(function(r){r.NODE="node",r.EDGE="edge",r.COMBO="combo",r.THEME="theme",r.PALETTE="palette",r.LAYOUT="layout",r.BEHAVIOR="behavior",r.PLUGIN="plugin",r.ANIMATION="animation",r.TRANSFORM="transform",r.SHAPE="shape"})(rc||(rc={}));const zB={animation:{},behavior:{},combo:{},edge:{},layout:{},node:{},palette:{},theme:{},plugin:{},transform:{},shape:{}};function Ps(r,e){var t;const n=(t=zB[r])===null||t===void 0?void 0:t[e];if(n)return n}const kY="5.1.1",TY="G6";function Ta(r){return`[${TY} v${kY}] ${r}`}const vs={mute:!1,debug:r=>{console.debug(Ta(r))},info:r=>{console.info(Ta(r))},warn:r=>{console.warn(Ta(r))},error:r=>{console.error(Ta(r))}};function CR(r){const{theme:e}=r;if(!e)return{};const t=Ps(rc.THEME,e);return t||(vs.warn(`The theme of ${e} is not registered.`),{})}function ux(r,e){if(Array.isArray(r)&&r.length===0)return null;const t=Array.isArray(r)?r[0]:r,n=Array.isArray(r)?r.slice(1):e||[];return new Proxy(t,{get(i,a){return typeof i[a]=="function"&&!["onframe","onfinish"].includes(a)?(...s)=>{i[a](...s),n.forEach(o=>{var A;return(A=o[a])===null||A===void 0?void 0:A.call(o,...s)})}:a==="finished"?Promise.all([t.finished,...n.map(s=>s.finished)]):Reflect.get(i,a)},set(i,a,s){return["onframe","onfinish"].includes(a)||n.forEach(o=>{o[a]=s}),Reflect.set(i,a,s)}})}function VB(r){const e=r.reduce((n,i)=>(Object.entries(i).forEach(([a,s])=>{n[a]===void 0?n[a]=[s]:n[a].push(s)}),n),{});Object.entries(e).forEach(([n,i])=>{(i.length!==r.length||i.some(a=>ut(a))||i.every(a=>!["sourceNode","targetNode","childrenNode"].includes(n)&&Qn(a,i[0])))&&delete e[n]});const t=Object.entries(e).reduce((n,[i,a])=>(a.forEach((s,o)=>{n[o]?n[o][i]=s:n[o]={[i]:s}}),n),[]);return r.length!==0&&t.length===0&&t.push({_:0},{_:0}),t}function ic(r){switch(r){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 SR(r,e){const{animation:t}=r;if(t===!1||e===!1)return!1;const n=Object.assign({},SY);return ai(t)&&Object.assign(n,t),ai(e)&&Object.assign(n,e),n}function FY(r){if(typeof r=="string"){const e=Ps(rc.ANIMATION,r);return e||(vs.warn(`The animation of ${r} is not registered.`),[])}return r}function MY(r,e,t,n){var i,a;const{animation:s}=r;if(s===!1||n===!1)return[];const o=(i=r==null?void 0:r[e])===null||i===void 0?void 0:i.animation;if(o===!1)return[];const A=o==null?void 0:o[t];if(A===!1)return[];const l=(a=CR(r)[e])===null||a===void 0?void 0:a.animation,u=(d=[])=>FY(d).map(h=>Object.assign(Object.assign(Object.assign(Object.assign({},_Y),ai(s)&&s),h),ai(n)&&n));if(A)return u(A);if(!l)return[];const c=l[t];return c===!1?[]:u(c)}function _R(r,e,t,n=[]){if(!n&&r===0&&e===0&&t===0)return null;if(Array.isArray(n)){let a=-1;const s=[];for(let o=0;o<n.length;o++){const A=n[o];if(A[0]==="translate"){if(A[1]===r&&A[2]===e)return null;a=o,s.push(["translate",r,e])}else if(A[0]==="translate3d"){if(A[1]===r&&A[2]===e&&A[3]===t)return null;a=o,s.push(["translate3d",r,e,t??0])}else s.push(A)}return a===-1&&s.splice(0,0,Yt(t)?["translate3d",r,e,t??0]:["translate",r,e]),s.length===0?null:s}const i=n?n.replace(/translate(3d)?\([^)]*\)/g,""):"";return t===0?`translate(${r}, ${e})${i}`:`translate3d(${r}, ${e}, ${t})${i}`}var IY=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};const OY=(r,e,t)=>{if(!t.length)return null;const[n,i]=e,a=l=>{var u;if(l){const c=r.getShape(l);if(!c)return null;const d=`get${Wh(l)}Style`,h=((u=r==null?void 0:r[d])===null||u===void 0?void 0:u.bind(r))||(g=>g),f=(h==null?void 0:h(n))||{},p=(h==null?void 0:h(i))||{};return{shape:c,fromStyle:f,toStyle:p}}else return{shape:r,fromStyle:n,toStyle:i}};let s;const o=t.map(l=>{var{fields:u,shape:c,states:d}=l,h=IY(l,["fields","shape","states"]);const f=a(c);if(!f)return null;const{shape:p,fromStyle:g,toStyle:v}=f,m=[{},{}];if(u.forEach(w=>{var B,x;Object.assign(m[0],{[w]:(B=g[w])!==null&&B!==void 0?B:ic(w)}),Object.assign(m[1],{[w]:(x=v[w])!==null&&x!==void 0?x:ic(w)})}),m.some(w=>Object.keys(w).some(B=>["x","y","z"].includes(B)))){const{x:w=0,y:B=0,z:x,transform:k=""}=p.attributes||{};m.forEach(_=>{var T,F,I;_.transform=_R((T=_.x)!==null&&T!==void 0?T:w,(F=_.y)!==null&&F!==void 0?F:B,(I=_.z)!==null&&I!==void 0?I:x,k)})}const y=p.animate(VB(m),h);return c===void 0&&(s=y),y}).filter(Boolean),A=s||(o==null?void 0:o[0]);return A?ux(A,o.filter(l=>l!==l)):null},LY=[{fields:["opacity"]}],NY=[{fields:["x","y"]}],kR=[{fields:["x","y"]}],PY=kR,TR=[{fields:["sourceNode","targetNode"]}],UY=TR,FR=[{fields:["childrenNode","x","y"]}],RY=FR;function QY(r){return"source"in r&&"target"in r}function DY(r){return r.length===2}function A_(r){return r.length===3}function Tl(r){return r instanceof Float32Array?!0:Array.isArray(r)&&(r.length===2||r.length===3)?r.every(e=>typeof e=="number"):!1}function ds(r,e,t){return r>=e&&r<=t}function ga(r=0){if(Array.isArray(r)){const[e=0,t=e,n=e,i=t]=r;return[e,t,n,i]}return[r,r,r,r]}function HY(r=0){const e=ga(r);return e[0]+e[2]}function ms(r){return r.max[0]-r.min[0]}function ys(r){return r.max[1]-r.min[1]}function To(r){return[ms(r),ys(r)]}function uo(r,e){const t=Tl(r)?cx(r):r.getShape("key").getBounds();return e?Fo(t,e):t}function cx(r){const[e,t,n=0]=r,i=new kn;return i.setMinMax([e,t,n],[e,t,n]),i}function Fo(r,e){const[t,n,i,a]=ga(e),[s,o,A]=r.min,[l,u,c]=r.max,d=new kn;return d.setMinMax([s-a,o-t,A],[l+n,u+i,c]),d}function kc(r){if(r.length===0)return new kn;if(r.length===1)return r[0];const e=new kn;e.setMinMax(r[0].min,r[0].max);for(let t=1;t<r.length;t++){const n=r[t];e.setMinMax([Math.min(e.min[0],n.min[0]),Math.min(e.min[1],n.min[1]),Math.min(e.min[2],n.min[2])],[Math.max(e.max[0],n.max[0]),Math.max(e.max[1],n.max[1]),Math.max(e.max[2],n.max[2])])}return e}function $Y(r,e){const[t,n]=r.min,[i,a]=r.max,[s,o]=e.min,[A,l]=e.max;return t>=s&&i<=A&&n>=o&&a<=l}function Ia(r,e){return ds(r[0],e.min[0],e.max[0])&&ds(r[1],e.min[1],e.max[1])}function MR(r,e,t=!1){const{min:[n,i],max:[a,s]}=e,o=(r[1]===i||r[1]===s)&&(t||ds(r[0],n,a)),A=(r[0]===n||r[0]===a)&&(t||ds(r[1],i,s));return o||A}function GY(r,e){return!Ia(r,e)}function vf(r,e){const{center:t}=e;return r[0]===t[0]&&r[1]===t[1]}function zu(r,e){const[t,n]=r,[i,a]=e.min,[s,o]=e.max,A=t-i,l=s-t,u=n-a,c=o-n,d=Math.min(A,l,u,c);return d===A?"left":d===l?"right":d===u?"top":d===c?"bottom":"left"}function dA(r,e){const t=Sl(r);if(Ia(r,e))switch(zu(r,e)){case"left":t[0]=e.min[0];break;case"right":t[0]=e.max[0];break;case"top":t[1]=e.min[1];break;case"bottom":t[1]=e.max[1];break}else{const[n,i]=r,[a,s]=e.min,[o,A]=e.max;t[0]=ds(n,a,o)?n:n<a?a:o,t[1]=ds(i,s,A)?i:i<s?s:A}return t}function zY(r,e){const{center:t}=r,[n,i]=To(r),a=e==="up"||e==="down"?t[0]:e==="right"?t[0]-n/6:t[0]+n/6,s=e==="left"||e==="right"?t[1]:e==="down"?t[1]-i/6:t[1]+i/6;return[a,s]}function VY(r,e){let[t,n]=To(r);return[t,n]=e==="up"||e==="down"?[t,n]:[n,t],(Math.pow(n,2)-Math.pow(Math.sqrt(Math.pow(t/2,2)+Math.pow(n,2))-t/2,2))/(2*n)}function KY(r){const{min:[e,t],max:[n,i]}=r,a=[e,i],s=[n,i],o=[n,t],A=[e,t];return[[a,s],[s,o],[o,A],[A,a]]}var jY=function(e,t){return e===t},l_=(function(){function r(e,t){t===void 0&&(t=null),this.value=e,this.next=t}return r.prototype.toString=function(e){return e?e(this.value):"".concat(this.value)},r})(),WY=(function(){function r(e){e===void 0&&(e=jY),this.head=null,this.tail=null,this.compare=e}return r.prototype.prepend=function(e){var t=new l_(e,this.head);return this.head=t,this.tail||(this.tail=t),this},r.prototype.append=function(e){var t=new l_(e);return this.head?(this.tail.next=t,this.tail=t,this):(this.head=t,this.tail=t,this)},r.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},r.prototype.find=function(e){var t=e.value,n=t===void 0?void 0:t,i=e.callback,a=i===void 0?void 0:i;if(!this.head)return null;for(var s=this.head;s;){if(a&&a(s.value)||n!==void 0&&this.compare(s.value,n))return s;s=s.next}return null},r.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},r.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},r.prototype.fromArray=function(e){var t=this;return e.forEach(function(n){return t.append(n)}),this},r.prototype.toArray=function(){for(var e=[],t=this.head;t;)e.push(t),t=t.next;return e},r.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},r.prototype.toString=function(e){return e===void 0&&(e=void 0),this.toArray().map(function(t){return t.toString(e)}).toString()},r})(),qY=function(e,t,n){t===void 0&&(t=[]);var i=t.filter(function(A){return A.source===e||A.target===e});if(n==="target"){var a=function(l){return l.source===e};return i.filter(a).map(function(A){return A.target})}if(n==="source"){var s=function(l){return l.target===e};return i.filter(s).map(function(A){return A.source})}var o=function(l){return l.source===e?l.target:l.source};return i.map(o)},YY=function(e,t){return t.filter(function(n){return n.source===e})},XY=function(e,t){return t.filter(function(n){return n.source===e||n.target===e})},ZY=function(e){var t={},n=e.nodes,i=n===void 0?[]:n,a=e.edges,s=a===void 0?[]:a;return i.forEach(function(o){t[o.id]={degree:0,inDegree:0,outDegree:0}}),s.forEach(function(o){t[o.source].degree++,t[o.source].outDegree++,t[o.target].degree++,t[o.target].inDegree++}),t},JY={}.toString,dx=function(r,e){return JY.call(r)==="[object "+e+"]"};const IR=(function(r){return dx(r,"Function")}),OR=(function(r){return Array.isArray?Array.isArray(r):dx(r,"Array")}),eX=(function(r){var e=typeof r;return r!==null&&e==="object"||e==="function"});function tX(r,e){if(r){var t;if(OR(r))for(var n=0,i=r.length;n<i&&(t=e(r[n],n),t!==!1);n++);else if(eX(r)){for(var a in r)if(r.hasOwnProperty(a)&&(t=e(r[a],a),t===!1))break}}}const nX=(function(r){return dx(r,"String")});var rX=Object.values?function(r){return Object.values(r)}:function(r){var e=[];return tX(r,function(t,n){IR(r)&&n==="prototype"||e.push(t)}),e};const iX=(function(r,e){if(!IR(r))throw new TypeError("Expected a function");var t=function(){for(var n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];var a=e?e.apply(this,n):n[0],s=t.cache;if(s.has(a))return s.get(a);var o=r.apply(this,n);return s.set(a,o),o};return t.cache=new Map,t});var jd;iX(function(r,e){e===void 0&&(e={});var t=e.fontSize,n=e.fontFamily,i=e.fontWeight,a=e.fontStyle,s=e.fontVariant;return jd||(jd=document.createElement("canvas").getContext("2d")),jd.font=[a,s,i,t+"px",n].join(" "),jd.measureText(nX(r)?r:"").width},function(r,e){return e===void 0&&(e={}),Y8([r],rX(e)).join("")});var aX=function(e,t,n){for(var i=1/0,a,s=0;s<t.length;s++){var o=t[s].id;!n[o]&&e[o]<=i&&(i=e[o],a=t[s])}return a},sX=function(e,t,n,i){var a=e.nodes,s=a===void 0?[]:a,o=e.edges,A=o===void 0?[]:o,l={},u={},c={};s.forEach(function(m,y){var w=m.id;u[w]=1/0,w===t&&(u[w]=0)});for(var d=s.length,h=function(y){var w=aX(u,s,l),B=w.id;if(l[B]=!0,u[B]===1/0)return"continue";var x=[];n?x=YY(B,A):x=XY(B,A),x.forEach(function(k){var _=k.target,T=k.source,F=_===B?T:_,I=i&&k[i]?k[i]:1;u[F]>u[w.id]+I?(u[F]=u[w.id]+I,c[F]=[w.id]):u[F]===u[w.id]+I&&c[F].push(w.id)})},f=0;f<d;f++)h();c[t]=[t];var p={};for(var g in u)u[g]!==1/0&&LR(t,g,c,p);var v={};for(var g in p)v[g]=p[g][0];return{length:u,path:v,allPath:p}};function LR(r,e,t,n){if(r===e)return[r];if(n[e])return n[e];for(var i=[],a=0,s=t[e];a<s.length;a++){var o=s[a],A=LR(r,o,t,n);if(!A)return;for(var l=0,u=A;l<u.length;l++){var c=u[l];OR(c)?i.push(it(it([],c,!0),[e],!1)):i.push([c,e])}}return n[e]=i,n[e]}var NR=function(e,t,n,i,a){var s=sX(e,t,i,a),o=s.length,A=s.path,l=s.allPath;return{length:o[n],path:A[n],allPath:l[n]}},u_;(function(r){r.EuclideanDistance="euclideanDistance"})(u_||(u_={}));var oX=function(e,t,n){typeof t!="number"&&(t=1e-6),typeof n!="number"&&(n=.85);for(var i=1,a=0,s=1e3,o=e.nodes,A=o===void 0?[]:o,l=e.edges,u=l===void 0?[]:l,c=A.length,d,h={},f={},p=0;p<c;++p){var g=A[p],v=g.id;h[v]=1/c,f[v]=1/c}for(var m=ZY(e);s>0&&i>t;){a=0;for(var p=0;p<c;++p){var g=A[p],v=g.id;if(d=0,m[g.id].inDegree===0)h[v]=0;else{for(var y=qY(v,u,"source"),w=0;w<y.length;++w){var B=y[w],x=m[B].outDegree;x>0&&(d+=f[B]/x)}h[v]=n*d,a+=h[v]}}a=(1-a)/c,i=0;for(var p=0;p<c;++p){var g=A[p],v=g.id;d=h[v]+a,i+=Math.abs(d-f[v]),f[v]=d}s-=1}return f};(function(){function r(e){e===void 0&&(e=10),this.linkedList=new WY,this.maxStep=e}return Object.defineProperty(r.prototype,"length",{get:function(){return this.linkedList.toArray().length},enumerable:!1,configurable:!0}),r.prototype.isEmpty=function(){return!this.linkedList.head},r.prototype.isMaxStack=function(){return this.toArray().length>=this.maxStep},r.prototype.peek=function(){return this.isEmpty()?null:this.linkedList.head.value},r.prototype.push=function(e){this.linkedList.prepend(e),this.length>this.maxStep&&this.linkedList.deleteTail()},r.prototype.pop=function(){var e=this.linkedList.deleteHead();return e?e.value:null},r.prototype.toArray=function(){return this.linkedList.toArray().map(function(e){return e.value})},r.prototype.clear=function(){for(;!this.isEmpty();)this.pop()},r})();function ve(r){if(r.id!==void 0)return r.id;if(r.source!==void 0&&r.target!==void 0)return`${r.source}-${r.target}`;throw new Error(Ta("The datum does not have available id."))}function Wd(r){return r.combo}function PR(r,e){const t={nodes:(r.nodes||[]).map(ve),edges:(r.edges||[]).map(ve),combos:(r.combos||[]).map(ve)};return e?Object.values(t).flat():t}const UR=(r,e,t)=>{var n;switch(t.type){case"degree":{const i=new Map;return(n=r.nodes)===null||n===void 0||n.forEach(a=>{const s=e(ve(a),t.direction).length;i.set(ve(a),s)}),i}case"betweenness":return AX(r,t.directed,t.weightPropertyName);case"closeness":return lX(r,t.directed,t.weightPropertyName);case"eigenvector":return cX(r,t.directed);case"pagerank":return uX(r,t.epsilon,t.linkProb);default:return RR(r)}},RR=r=>{var e;const t=new Map;return(e=r.nodes)===null||e===void 0||e.forEach(n=>{t.set(ve(n),0)}),t},AX=(r,e,t)=>{const n=RR(r),{nodes:i=[]}=r;return i.forEach(a=>{i.forEach(s=>{if(a!==s){const{allPath:o}=NR(r,ve(a),ve(s),e,t),A=o.length;o.flat().forEach(l=>{l!==ve(a)&&l!==ve(s)&&n.set(l,n.get(l)+1/A)})}})}),n},lX=(r,e,t)=>{const n=new Map,{nodes:i=[]}=r;return i.forEach(a=>{const s=i.reduce((o,A)=>{if(a!==A){const{length:l}=NR(r,ve(a),ve(A),e,t);o+=l}return o},0);n.set(ve(a),1/s)}),n},uX=(r,e,t)=>{var n;const i=new Map,a=oX(r,e,t);return(n=r.nodes)===null||n===void 0||n.forEach(s=>{i.set(ve(s),a[ve(s)])}),i},cX=(r,e)=>{const{nodes:t=[]}=r,n=dX(r,e),i=hX(n,t.length),a=new Map;return t.forEach((s,o)=>{a.set(ve(s),i[o])}),a},dX=(r,e)=>{const{nodes:t=[],edges:n=[]}=r,i=Array(t.length).fill(null).map(()=>Array(t.length).fill(0));return n.forEach(({source:a,target:s})=>{const o=t.findIndex(l=>ve(l)===a),A=t.findIndex(l=>ve(l)===s);e?i[o][A]=1:(i[o][A]=1,i[A][o]=1)}),i},hX=(r,e,t=100,n=1e-6)=>{let i=Array(e).fill(1),a=1/0;for(let s=0;s<t&&a>n;s++){const o=Array(e).fill(0);for(let l=0;l<e;l++)for(let u=0;u<e;u++)o[l]+=r[l][u]*i[u];const A=Math.sqrt(o.reduce((l,u)=>l+u*u,0));for(let l=0;l<e;l++)o[l]/=A;a=Math.sqrt(o.reduce((l,u,c)=>l+(u-i[c])*u,0)),i=o}return i};function bo(r,e,t,n=Qn){const i=new Map(r.map(d=>[t(d),d])),a=new Map(e.map(d=>[t(d),d])),s=new Set(i.keys()),o=new Set(a.keys()),A=[],l=[],u=[],c=[];return o.forEach(d=>{s.has(d)?n(i.get(d),a.get(d))?c.push(a.get(d)):l.push(a.get(d)):A.push(a.get(d))}),s.forEach(d=>{o.has(d)||u.push(i.get(d))}),{enter:A,exit:u,keep:c,update:l}}function yA(r,e,t){const n=i=>{t&&!t(i)||(i.style.visibility=e)};r.forEach(i=>{n(i)})}function fX(r,e,t){const n={},i=a=>(a in n||(n[a]=0),`${e}-${a}-${n[a]++}`);return t.map(a=>typeof a=="string"?{type:a,key:i(a)}:typeof a=="function"?a.call(r):a.key?a:Object.assign(Object.assign({},a),{key:i(a.type)}))}class hx{constructor(e){this.extensions=[],this.extensionMap={},this.context=e}setExtensions(e){const t=fX(this.context.graph,this.category,e),{enter:n,update:i,exit:a,keep:s}=bo(this.extensions,t,o=>o.key);this.createExtensions(n),this.updateExtensions([...i,...s]),this.destroyExtensions(a),this.extensions=t}createExtension(e){const{category:t}=this,{key:n,type:i}=e,a=Ps(t,i);if(!a)return vs.warn(`The extension ${i} of ${t} is not registered.`);const s=new a(this.context,e);s.initialized=!0,this.extensionMap[n]=s}createExtensions(e){e.forEach(t=>this.createExtension(t))}updateExtension(e){const{key:t}=e,n=this.extensionMap[t];n&&n.update(e)}updateExtensions(e){e.forEach(t=>this.updateExtension(t))}destroyExtension(e){const t=this.extensionMap[e];t&&(t.initialized&&!t.destroyed&&t.destroy(),delete this.extensionMap[e])}destroyExtensions(e){e.forEach(({key:t})=>this.destroyExtension(t))}destroy(){this.destroyExtensions(this.extensions),this.context={},this.extensions=[],this.extensionMap={}}}class fx{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}}class Ji extends fx{}class Ag extends Ji{constructor(e,t){super(e,Object.assign({},Ag.defaultOptions,t)),this.isOverlapping=(n,i)=>i.some(a=>n.intersects(a)),this.occupiedBounds=[],this.detectLabelCollision=n=>{const i=this.context.viewport,a={show:[],hide:[]};return this.occupiedBounds=[],n.forEach(s=>{const o=s.getShape("label").getRenderBounds();i.isInViewport(o,!0)&&!this.isOverlapping(o,this.occupiedBounds)?(a.show.push(s),this.occupiedBounds.push(Fo(o,this.options.padding))):a.hide.push(s)}),a},this.hideLabelIfExceedViewport=(n,i)=>{const{exit:a}=bo(n,i,s=>s.id);a==null||a.forEach(this.hideLabel)},this.nodeCentralities=new Map,this.sortNodesByCentrality=(n,i)=>{const{model:a}=this.context,s=a.getData(),o=a.getRelatedEdgesData.bind(a);return n.map(l=>(this.nodeCentralities.has(l.id)||(this.nodeCentralities=UR(s,o,i)),{node:l,centrality:this.nodeCentralities.get(l.id)})).sort((l,u)=>u.centrality-l.centrality).map(l=>l.node)},this.sortLabelElementsInView=n=>{const{sort:i,sortNode:a,sortCombo:s,sortEdge:o}=this.options,{model:A}=this.context;if(At(i))return n.sort((p,g)=>i(A.getElementDataById(p.id),A.getElementDataById(g.id)));const{node:l=[],edge:u=[],combo:c=[]}=Vf(n,p=>p.type),d=At(s)?c.sort((p,g)=>s(...A.getComboData([p.id,g.id]))):c,h=At(a)?l.sort((p,g)=>a(...A.getNodeData([p.id,g.id]))):this.sortNodesByCentrality(l,a),f=At(o)?u.sort((p,g)=>o(...A.getEdgeData([p.id,g.id]))):u;return[...d,...h,...f]},this.labelElementsInView=[],this.isFirstRender=!0,this.onToggleVisibility=n=>{var i;if(((i=n.data)===null||i===void 0?void 0:i.stage)==="zIndex")return;if(!this.validate(n)){this.hiddenElements.size>0&&(this.hiddenElements.forEach(this.showLabel),this.hiddenElements.clear());return}const a=this.isFirstRender?this.getLabelElements():this.getLabelElementsInView();this.hideLabelIfExceedViewport(this.labelElementsInView,a),this.labelElementsInView=a;const s=this.sortLabelElementsInView(this.labelElementsInView),{show:o,hide:A}=this.detectLabelCollision(s);for(let l=o.length-1;l>=0;l--)this.showLabel(o[l]);A.forEach(this.hideLabel)},this.hiddenElements=new Map,this.hideLabel=n=>{const i=n.getShape("label");i&&yA(i,"hidden"),this.hiddenElements.set(n.id,n)},this.showLabel=n=>{const i=n.getShape("label");i&&yA(i,"visible"),n.toFront(),this.hiddenElements.delete(n.id)},this.onTransform=bP(this.onToggleVisibility,this.options.throttle,{leading:!0}),this.enableToggle=!0,this.toggle=n=>{this.enableToggle&&this.onToggleVisibility(n)},this.onBeforeRender=()=>{this.enableToggle=!1},this.onAfterRender=n=>{this.onToggleVisibility(n),this.enableToggle=!0},this.bindEvents()}update(e){this.unbindEvents(),super.update(e),this.bindEvents(),this.onToggleVisibility({})}getLabelElements(){const{elementMap:e}=this.context.element,t=[];for(const n in e){const i=e[n];i.isVisible()&&i.getShape("label")&&t.push(i)}return t}getLabelElementsInView(){const e=this.context.viewport;return this.getLabelElements().filter(t=>e.isInViewport(t.getShape("key").getRenderBounds()))}bindEvents(){const{graph:e}=this.context;e.on(Ge.BEFORE_RENDER,this.onBeforeRender),e.on(Ge.AFTER_RENDER,this.onAfterRender),e.on(Ge.AFTER_DRAW,this.toggle),e.on(Ge.AFTER_LAYOUT,this.toggle),e.on(Ge.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){const{graph:e}=this.context;e.off(Ge.BEFORE_RENDER,this.onBeforeRender),e.off(Ge.AFTER_RENDER,this.onAfterRender),e.off(Ge.AFTER_DRAW,this.toggle),e.off(Ge.AFTER_LAYOUT,this.toggle),e.off(Ge.AFTER_TRANSFORM,this.onTransform)}validate(e){if(this.destroyed)return!1;const{enable:t}=this.options;return At(t)?t(e):!!t}destroy(){this.unbindEvents(),super.destroy()}}Ag.defaultOptions={enable:!0,throttle:100,padding:0,sortNode:{type:"degree"}};const c_=[0,0,0];function Mo(r,e){if(r.length==e.length)return[r,e];if(A_(r)&&r[2]!==0||A_(e)&&e[2]!==0)throw new Error(Ta("Vectors could not operate due to different dimensions."));return[hs(r),hs(e)]}function xt(r,e){return[r,e]=Mo(r,e),r.map((t,n)=>t+e[n])}function hn(r,e){return[r,e]=Mo(r,e),r.map((t,n)=>t-e[n])}function _a(r,e){return typeof e=="number"?r.map(t=>t*e):([r,e]=Mo(r,e),r.map((t,n)=>t*e[n]))}function Oa(r,e){return typeof e=="number"?r.map(t=>t/e):([r,e]=Mo(r,e),r.map((t,n)=>{if(e[n]==0)throw new Error(Ta("Vector could not be divided by zero"));return t/e[n]}))}function gX(r,e){return[r,e]=Mo(r,e),r.reduce((t,n,i)=>t+n*e[i],0)}function pX(r,e){const t=ac(r),n=ac(e);return[t[1]*n[2]-t[2]*n[1],t[2]*n[0]-t[0]*n[2],t[0]*n[1]-t[1]*n[0]]}function co(r,e){return r.map(t=>t*e)}function Bn(r,e){return[r,e]=Mo(r,e),Math.sqrt(r.reduce((t,n,i)=>t+Math.pow(n-e[i],2),0))}function mf(r,e){return[r,e]=Mo(r,e),r.reduce((t,n,i)=>t+Math.abs(n-e[i]),0)}function As(r){const e=r.reduce((t,n)=>t+Math.pow(n,2),0);return r.map(t=>t/Math.sqrt(e))}function gx(r,e,t=!1){[r,e]=Mo(r,e);const n=r[0]*e[1]-r[1]*e[0];let i=Math.acos(_a(r,e).reduce((a,s)=>a+s,0)/(Bn(r,c_)*Bn(e,c_)));return t&&n<0&&(i=2*Math.PI-i),i}function lg(r,e=!0){return e?[-r[1],r[0]]:[r[1],-r[0]]}function Dv(r,e){return r.map(t=>t%e)}function hs(r){return[r[0],r[1]]}function ac(r){return DY(r)?[r[0],r[1],0]:r}function QR(r){const[e,t]=r;return!e&&!t?0:Math.atan2(t,e)}function DR(r,e){const[t,n]=r;if(e%360===0)return[t,n];const i=e*Math.PI/180,a=Math.cos(i),s=Math.sin(i);return[t*a-n*s,t*s+n*a]}function HR(r,e){const[t,n]=r,[i,a]=e,s=hn(t,n),o=hn(i,a);return pX(s,o).every(A=>A===0)}function px(r,e,t=!1){if(HR(r,e))return;const[n,i]=r,[a,s]=e,o=((n[0]-a[0])*(a[1]-s[1])-(n[1]-a[1])*(a[0]-s[0]))/((n[0]-i[0])*(a[1]-s[1])-(n[1]-i[1])*(a[0]-s[0])),A=s[0]-a[0]?(n[0]-a[0]+o*(i[0]-n[0]))/(s[0]-a[0]):(n[1]-a[1]+o*(i[1]-n[1]))/(s[1]-a[1]);if(!(!t&&(!ds(o,0,1)||!ds(A,0,1))))return[n[0]+o*(i[0]-n[0]),n[1]+o*(i[1]-n[1])]}function $R(r){if(Array.isArray(r))return ds(r[0],0,1)&&ds(r[1],0,1)?r:[.5,.5];const e=r.split("-"),t=e.includes("left")?0:e.includes("right")?1:.5,n=e.includes("top")?0:e.includes("bottom")?1:.5;return[t,n]}function _r(r){const{x:e=0,y:t=0,z:n=0}=r.style||{};return[+e,+t,+n]}function vX(r){const{x:e,y:t,z:n}=r.style||{};return e!==void 0||t!==void 0||n!==void 0}function mX(r,e){const[t,n]=e,{min:i,max:a}=r;return[i[0]+t*(a[0]-i[0]),i[1]+n*(a[1]-i[1])]}function ks(r,e="center"){const t=$R(e);return mX(r,t)}function Vr(r){var e;return[r.x,r.y,(e=r.z)!==null&&e!==void 0?e:0]}function ka(r){var e;return{x:r[0],y:r[1],z:(e=r[2])!==null&&e!==void 0?e:0}}function uu(r,e=0){return r.map(t=>parseFloat(t.toFixed(e)))}function Bo(r,e,t,n=!1){if(Qn(r,e))return r;const i=n?hn(r,e):hn(e,r),a=As(i),s=[a[0]*t,a[1]*t];return xt(hs(r),s)}function GR(r,e){return r[1]===e[1]}function yX(r,e){return r[0]===e[0]}function wX(r,e){return GR(r,e)||yX(r,e)}function zR(r,e,t){return HR([r,e],[e,t])}function VR(r,e){return[2*e[0]-r[0],2*e[1]-r[1]]}function KR(r,e,t,n=!0,i=!1){for(let a=0;a<t.length;a++){let s=t[a],o=t[(a+1)%t.length];n&&(s=xt(e,s),o=xt(e,o));const A=i?VR(r,e):r,l=px([e,A],[s,o]);if(l)return{point:l,line:[s,o]}}return{point:e,line:void 0}}function bX(r,e,t,n){const i=r[0],a=r[1];let s=!1;t===void 0&&(t=0),n===void 0&&(n=e.length);const o=n-t;for(let A=0,l=o-1;A<o;l=A++){const u=e[A+t][0],c=e[A+t][1],d=e[l+t][0],h=e[l+t][1];c>a!=h>a&&i<(d-u)*(a-c)/(h-c)+u&&(s=!s)}return s}function BX(r,e,t=!1){const n=ks(e,"center"),i=[ks(e,"left-top"),ks(e,"right-top"),ks(e,"right-bottom"),ks(e,"left-bottom")];return KR(r,n,i,!1,t).point}function ug(r,e,t=!1){const n=e.center,i=t?VR(r,n):r,a=hn(i,e.center),s=Math.atan2(a[1],a[0]);if(isNaN(s))return n;const o=ms(e)/2,A=ys(e)/2,l=n[0]+o*Math.cos(s),u=n[1]+A*Math.sin(s);return[l,u]}function EX(r,e){let t=1/0,n=[r[0],e[0]];return r.forEach(i=>{e.forEach(a=>{const s=Bn(i,a);s<t&&(t=s,n=[i,a])})}),n}function xX(r,e){let t=1/0,n=[[0,0],[0,0]];return e.forEach(i=>{const a=CX(r,i);a<t&&(t=a,n=i)}),n}function CX(r,e){const t=jR(r,e);return Bn(r,t)}function jR(r,e){const[t,n]=e[0],[i,a]=e[1],[s,o]=r,A=i-t,l=a-n;if(A===0&&l===0)return[t,n];let u=((s-t)*A+(o-n)*l)/(A*A+l*l);u>1?u=1:u<0&&(u=0);const c=t+u*A,d=n+u*l;return[c,d]}function SX(r){const e=r.reduce((t,n)=>xt(t,n),[0,0]);return Oa(e,r.length)}function vx(r,e=!0){const t=SX(r);return r.sort(([n,i],[a,s])=>{const o=Math.atan2(i-t[1],n-t[0]),A=Math.atan2(s-t[1],a-t[0]);return e?A-o:o-A})}function d_(r,e){return[r,[r[0],e[1]],e,[e[0],r[1]]]}class ar{constructor(e,t,n){if(this.phase=t,this.pointerByTouch=[],this.initialDistance=null,this.emitter=e,ar.instance)return ar.callbacks[this.phase].push(n),ar.instance;this.onPointerDown=this.onPointerDown.bind(this),this.onPointerMove=this.onPointerMove.bind(this),this.onPointerUp=this.onPointerUp.bind(this),this.bindEvents(),ar.instance=this,ar.callbacks[this.phase].push(n)}bindEvents(){const{emitter:e}=this;e.on(_e.POINTER_DOWN,this.onPointerDown),e.on(_e.POINTER_MOVE,this.onPointerMove),e.on(_e.POINTER_UP,this.onPointerUp)}updatePointerPosition(e,t,n){const i=this.pointerByTouch.findIndex(a=>a.pointerId===e);i>=0&&(this.pointerByTouch[i]={x:t,y:n,pointerId:e})}onPointerDown(e){const{x:t,y:n}=e.client||{};if(!(t===void 0||n===void 0)&&(this.pointerByTouch.push({x:t,y:n,pointerId:e.pointerId}),e.pointerType==="touch"&&this.pointerByTouch.length===2)){ar.isPinching=!0;const i=this.pointerByTouch[0].x-this.pointerByTouch[1].x,a=this.pointerByTouch[0].y-this.pointerByTouch[1].y;this.initialDistance=Math.sqrt(i*i+a*a),ar.callbacks.pinchstart.forEach(s=>s(e,{scale:0}))}}onPointerMove(e){if(this.pointerByTouch.length!==2||this.initialDistance===null)return;const{x:t,y:n}=e.client||{};if(t===void 0||n===void 0)return;this.updatePointerPosition(e.pointerId,t,n);const 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;ar.callbacks.pinchmove.forEach(A=>A(e,{scale:(o-1)*5}))}onPointerUp(e){var t;ar.callbacks.pinchend.forEach(n=>n(e,{scale:0})),ar.isPinching=!1,this.initialDistance=null,this.pointerByTouch=[],(t=ar.instance)===null||t===void 0||t.tryDestroy()}destroy(){this.emitter.off(_e.POINTER_DOWN,this.onPointerDown),this.emitter.off(_e.POINTER_MOVE,this.onPointerMove),this.emitter.off(_e.POINTER_UP,this.onPointerUp),ar.instance=null}off(e,t){const n=ar.callbacks[e].indexOf(t);n>-1&&ar.callbacks[e].splice(n,1),this.tryDestroy()}tryDestroy(){Object.values(ar.callbacks).every(e=>e.length===0)&&this.destroy()}}ar.isPinching=!1;ar.instance=null;ar.callbacks={pinchstart:[],pinchmove:[],pinchend:[]};const _X=new Set(["Control","Alt","Meta","Shift"]);function h_(r){return _X.has(r)}const f_=r=>r.map(e=>ln(e)?e.toLocaleLowerCase():e);class Io{constructor(e){this.map=new Map,this.boundHandlePinch=()=>{},this.recordKey=new Set,this.onKeyDown=t=>{t!=null&&t.key&&(this.recordKey.add(t.key),this.trigger(t))},this.onKeyUp=t=>{t!=null&&t.key&&this.recordKey.delete(t.key)},this.onKeyDownWindow=t=>{h_(t.key)&&this.recordKey.add(t.key)},this.onKeyUpWindow=t=>{h_(t.key)&&this.recordKey.delete(t.key)},this.onWheel=t=>{this.triggerExtendKey(_e.WHEEL,t)},this.onDrag=t=>{this.triggerExtendKey(_e.DRAG,t)},this.handlePinch=(t,n)=>{this.triggerExtendKey(_e.PINCH,Object.assign(Object.assign({},t),n))},this.onFocus=()=>{this.recordKey.clear()},this.emitter=e,this.bindEvents()}bind(e,t){e.length!==0&&(e.includes(_e.PINCH)&&!this.pinchHandler&&(this.boundHandlePinch=this.handlePinch.bind(this),this.pinchHandler=new ar(this.emitter,"pinchmove",this.boundHandlePinch)),this.map.set(e,t))}unbind(e,t){this.map.forEach((n,i)=>{Qn(i,e)&&(!t||t===n)&&this.map.delete(i)})}unbindAll(){this.map.clear()}match(e){const t=f_(Array.from(this.recordKey)).sort(),n=f_(e).sort();return Qn(t,n)}bindEvents(){var e;const{emitter:t}=this;window.addEventListener(_e.KEY_DOWN,this.onKeyDownWindow),window.addEventListener(_e.KEY_UP,this.onKeyUpWindow),t.on(_e.KEY_DOWN,this.onKeyDown),t.on(_e.KEY_UP,this.onKeyUp),t.on(_e.WHEEL,this.onWheel),t.on(_e.DRAG,this.onDrag),(e=globalThis.addEventListener)===null||e===void 0||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,i)=>{i.includes(e)&&Qn(Array.from(this.recordKey),i.filter(a=>a!==e))&&n(t)})}destroy(){var e,t;this.unbindAll(),this.emitter.off(_e.KEY_DOWN,this.onKeyDown),this.emitter.off(_e.KEY_UP,this.onKeyUp),window.removeEventListener(_e.KEY_DOWN,this.onKeyDownWindow),window.removeEventListener(_e.KEY_UP,this.onKeyUpWindow),this.emitter.off(_e.WHEEL,this.onWheel),this.emitter.off(_e.DRAG,this.onDrag),(e=this.pinchHandler)===null||e===void 0||e.off("pinchmove",this.boundHandlePinch),(t=globalThis.removeEventListener)===null||t===void 0||t.call(globalThis,"focus",this.onFocus)}}class Tc extends Ji{constructor(e,t){super(e,li({},Tc.defaultOptions,t)),this.shortcut=new Io(e.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;const{canvas:t,graph:n}=this.context,i=Object.assign({},this.options.style);this.options.style.lineWidth&&(i.lineWidth=+this.options.style.lineWidth/n.getZoom()),this.rectShape=new jr({id:"g6-brush-select",style:i}),t.appendChild(this.rectShape),this.startPoint=[e.canvas.x,e.canvas.y]}onPointerMove(e){var t;if(!this.startPoint)return;const{immediately:n,mode:i}=this.options;this.endPoint=yf(e,this.context.graph),(t=this.rectShape)===null||t===void 0||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&&i==="default"&&this.updateElementsStates(d_(this.startPoint,this.endPoint))}onPointerUp(e){if(this.startPoint){if(!this.endPoint){this.clearBrush();return}this.endPoint=yf(e,this.context.graph),this.updateElementsStates(d_(this.startPoint,this.endPoint)),this.clearBrush()}}clearStates(){this.endPoint||this.clearElementsStates()}clearElementsStates(){const{graph:e}=this.context,t=Object.values(e.getData()).reduce((n,i)=>Object.assign({},n,i.reduce((a,s)=>{var o;const A=(o=s.states||[])===null||o===void 0?void 0:o.filter(l=>l!==this.options.state);return a[ve(s)]=A,a},{})),{});e.setElementState(t,this.options.animation)}updateElementsStates(e){const{graph:t}=this.context,{enableElements:n,state:i,mode:a,onSelect:s}=this.options,o=this.selector(t,e,n),A={};switch(a){case"union":o.forEach(l=>{A[l]=[...t.getElementState(l),i]});break;case"diff":o.forEach(l=>{const u=t.getElementState(l);A[l]=u.includes(i)?u.filter(c=>c!==i):[...u,i]});break;case"intersect":o.forEach(l=>{const u=t.getElementState(l);A[l]=u.includes(i)?[i]:[]});break;case"default":default:o.forEach(l=>{A[l]=[i]});break}At(s)&&s(A),t.setElementState(A,this.options.animation)}selector(e,t,n){if(!n||n.length===0)return[];const i=[],a=e.getData();if(n.forEach(s=>{a[`${s}s`].forEach(o=>{const A=ve(o);e.getElementVisibility(A)!=="hidden"&&bX(e.getElementPosition(A),t)&&i.push(A)})}),n.includes("edge")){const s=a.edges;s==null||s.forEach(o=>{const{source:A,target:l}=o;i.includes(A)&&i.includes(l)&&i.push(ve(o))})}return i}clearBrush(){var e;(e=this.rectShape)===null||e===void 0||e.remove(),this.rectShape=void 0,this.startPoint=void 0,this.endPoint=void 0}isKeydown(){const{trigger:e}=this.options,t=Array.isArray(e)?e:[e];return this.shortcut.match(t.filter(n=>n!=="drag"))}validate(e){if(this.destroyed)return!1;const{enable:t}=this.options;return At(t)?t(e):!!t}bindEvents(){const{graph:e}=this.context;e.on(_e.POINTER_DOWN,this.onPointerDown),e.on(_e.POINTER_MOVE,this.onPointerMove),e.on(_e.POINTER_UP,this.onPointerUp),e.on(cs.CLICK,this.clearStates)}unbindEvents(){const{graph:e}=this.context;e.off(_e.POINTER_DOWN,this.onPointerDown),e.off(_e.POINTER_MOVE,this.onPointerMove),e.off(_e.POINTER_UP,this.onPointerUp),e.off(cs.CLICK,this.clearStates)}update(e){this.unbindEvents(),this.options=li(this.options,e),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}}Tc.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"}};const yf=(r,e)=>{if((r.targetType==="node"||r.targetType==="combo")&&!(r.nativeEvent.target instanceof HTMLCanvasElement)){const[t,n]=e.getCanvasByClient([r.client.x,r.client.y]);return[t,n]}return[r.canvas.x,r.canvas.y]},Us=.8,wA=["node","edge","combo"];function yl(r,e,t,n,i=0){n==="TB"&&e(r,i);const a=t(r);if(a)for(const s of a)yl(s,e,t,n,i+1);n==="BT"&&e(r,i)}function kX(r,e,t){const n=[[r,0]];for(;n.length;){const[i,a]=n.shift();e(i,a);const s=t(i);if(s)for(const o of s)n.push([o,a+1])}}function WR(r,e,t,n,i="both"){if(e==="combo"||e==="node")return Hv(r,t,n,i);const a=r.getEdgeData(t);if(!a)return[];const s=Hv(r,a.source,n-1,i),o=Hv(r,a.target,n-1,i);return Array.from(new Set([...s,...o,t]))}function Hv(r,e,t,n="both"){const i=new Set,a=new Set,s=new Set;return kX(e,(o,A)=>{A>t||(s.add(o),r.getRelatedEdgesData(o,n).forEach(l=>{const u=ve(l);!a.has(u)&&A<t&&(s.add(u),a.add(u))}))},o=>r.getRelatedEdgesData(o,n).map(A=>A.source===o?A.target:A.source).filter(A=>i.has(A)?!1:(i.add(A),!0))),Array.from(s)}function $v(r){return r.states||[]}var qd=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class cg extends Ji{constructor(e,t){super(e,Object.assign({},cg.defaultOptions,t)),this.onClickSelect=n=>qd(this,void 0,void 0,function*(){var i,a;this.validate(n)&&(yield this.updateState(n),(a=(i=this.options).onClick)===null||a===void 0||a.call(i,n))}),this.onClickCanvas=n=>qd(this,void 0,void 0,function*(){var i,a;this.validate(n)&&(yield this.clearState(),(a=(i=this.options).onClick)===null||a===void 0||a.call(i,n))}),this.shortcut=new Io(e.graph),this.bindEvents()}bindEvents(){const{graph:e}=this.context;this.unbindEvents(),wA.forEach(t=>{e.on(`${t}:${_e.CLICK}`,this.onClickSelect)}),e.on(cs.CLICK,this.onClickCanvas)}get isMultipleSelect(){const{multiple:e,trigger:t}=this.options;return e&&this.shortcut.match(t)}getNeighborIds(e){const{target:t,targetType:n}=e,{graph:i}=this.context,{degree:a}=this.options;return WR(i,n,t.id,typeof a=="function"?a(e):a).filter(s=>s!==t.id)}updateState(e){return qd(this,void 0,void 0,function*(){const{state:t,unselectedState:n,neighborState:i,animation:a}=this.options;if(!t&&!i&&!n)return;const{target:s}=e,{graph:o}=this.context,A=o.getElementData(s.id),l=$v(A).includes(t)?"unselect":"select",u={},c=this.isMultipleSelect,d=[s.id],h=this.getNeighborIds(e);if(c)if(Object.assign(u,this.getDataStates()),l==="select"){const f=(p,g)=>{p.forEach(v=>{const m=new Set(o.getElementState(v));m.add(g),m.delete(n),u[v]=Array.from(m)})};f(d,t),f(h,i),n&&Object.keys(u).forEach(p=>{const g=u[p];!g.includes(t)&&!g.includes(i)&&!g.includes(n)&&u[p].push(n)})}else{const f=u[s.id];u[s.id]=f.filter(p=>p!==t&&p!==i),f.includes(n)||u[s.id].push(n),h.forEach(p=>{u[p]=u[p].filter(g=>g!==i),u[p].includes(t)||u[p].push(n)})}else if(l==="select"){Object.assign(u,this.getClearStates(!!n));const f=(p,g)=>{p.forEach(v=>{u[v]||(u[v]=o.getElementState(v)),u[v].push(g)})};f(d,t),f(h,i),n&&Object.keys(u).forEach(p=>{!d.includes(p)&&!h.includes(p)&&u[p].push(n)})}else Object.assign(u,this.getClearStates());yield o.setElementState(u,a)})}getDataStates(){const{graph:e}=this.context,{nodes:t,edges:n,combos:i}=e.getData(),a={};return[...t,...n,...i].forEach(s=>{a[ve(s)]=$v(s)}),a}getClearStates(e=!1){const{graph:t}=this.context,{state:n,unselectedState:i,neighborState:a}=this.options,s=new Set([n,i,a]),{nodes:o,edges:A,combos:l}=t.getData(),u={};return[...o,...A,...l].forEach(c=>{const d=$v(c),h=d.filter(f=>!s.has(f));(e||h.length!==d.length)&&(u[ve(c)]=h)}),u}clearState(){return qd(this,void 0,void 0,function*(){const{graph:e}=this.context;yield e.setElementState(this.getClearStates(),this.options.animation)})}validate(e){if(this.destroyed)return!1;const{enable:t}=this.options;return At(t)?t(e):!!t}unbindEvents(){const{graph:e}=this.context;wA.forEach(t=>{e.off(`${t}:${_e.CLICK}`,this.onClickSelect)}),e.off(cs.CLICK,this.onClickCanvas)}destroy(){this.unbindEvents(),super.destroy()}}cg.defaultOptions={animation:!0,enable:!0,multiple:!1,trigger:["shift"],state:"selected",neighborState:"selected",unselectedState:void 0,degree:0};function Mi(r){var e;return!!(!((e=r.style)===null||e===void 0)&&e.collapsed)}function wf(r,e){if(!r.startsWith(e))return!1;const t=r[e.length];return t>="A"&&t<="Z"}function TX(r,e){return`${e}${Wh(r)}`}function FX(r,e,t=!0){if(!e||!wf(r,e))return r;const n=r.slice(e.length);return t?L8(n):n}function Kn(r,e){const t=Object.entries(r).reduce((n,[i,a])=>(i==="className"||i==="class"||wf(i,e)&&Object.assign(n,{[FX(i,e)]:a}),n),{});if("opacity"in r){const n=TX("opacity",e),i=r.opacity;if(n in r){const a=r[n];Object.assign(t,{opacity:i*a})}else Object.assign(t,{opacity:i})}return t}function KB(r,e){const t=e.length;return Object.keys(r).reduce((n,i)=>{if(i.startsWith(e)){const a=i.slice(t);n[a]=r[i]}return n},{})}function qR(r,e){const t=typeof e=="string"?[e]:e,n={};return Object.keys(r).forEach(i=>{t.find(a=>i.startsWith(a))||(n[i]=r[i])}),n}function Yi(r=0){if(typeof r=="number")return[r,r,r];const[e,t=e,n=e]=r;return[e,t,n]}var MX=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};function g_(r,e){const{datum:t,graph:n}=e;return typeof r=="function"?r.call(n,t):Object.fromEntries(Object.entries(r).map(([i,a])=>typeof a=="function"?[i,a.call(n,t)]:[i,a]))}function Qr(r,e){const t=(r==null?void 0:r.style)||{},n=(e==null?void 0:e.style)||{};for(const i in t)i in n||(n[i]=t[i]);return Object.assign({},r,e,{style:n})}function IX(r){const{x:e,y:t,z:n,class:i,className:a,transform:s,transformOrigin:o,zIndex:A,visibility:l}=r;return MX(r,["x","y","z","class","className","transform","transformOrigin","zIndex","visibility"])}function OX(r,e){const t=Yi(r);let n={};return e.text&&!e.fontSize&&(n={fontSize:Math.min(...t)*.5}),e.src&&(!e.width||!e.height)&&(n={width:t[0]*.5,height:t[1]*.5}),n}function p_(r){if(r)return typeof r=="string"||typeof r=="function"||Array.isArray(r)?{type:"group",field:e=>e.id,color:r,invert:!1}:r}function LX(r,e){if(!e)return{};const{type:t,color:n,field:i,invert:a}=e,s=A=>{const l=typeof n=="string"?Ps("palette",n):n;if(typeof l=="function"){const u={};return A.forEach(([c,d])=>{u[c]=l(a?1-d:d)}),u}else if(Array.isArray(l)){const u=a?[...l].reverse():l,c={};return A.forEach(([d,h])=>{c[d]=u[h%l.length]}),c}return{}},o=(A,l)=>{var u;return typeof A=="string"?(u=l.data)===null||u===void 0?void 0:u[A]:A==null?void 0:A(l)};if(t==="group"){const A=Vf(r,d=>{if(!i)return"default";const h=o(i,d);return h?String(h):"default"}),l=Object.keys(A),u=s(l.map((d,h)=>[d,h])),c={};return Object.entries(A).forEach(([d,h])=>{h.forEach(f=>{c[ve(f)]=u[d]})}),c}else if(t==="value"){const[A,l]=r.reduce(([c,d],h)=>{const f=o(i,h);if(typeof f!="number")throw new Error(Ta(`Palette field ${i} is not a number`));return[Math.min(c,f),Math.max(d,f)]},[1/0,-1/0]),u=l-A;return s(r.map(c=>[c.id,(o(i,c)-A)/u]))}}function YR(r){const e=typeof r=="string"?Ps("palette",r):r;if(typeof e!="function")return e}function XR(r,e){let t=2*r;return typeof e=="string"?t=r*Number(e.replace("%",""))/100:typeof e=="number"&&(t=e),isNaN(t)&&(t=2*r),t}function ZR(r,e,t=1,n=!1){const i=n?t:1,a=(r.max[0]-r.min[0])*i;return XR(a,e)}function NX(r,e,t=1){const n=Bn(r[0],r[1])*t;return XR(n,e)}class Fc extends Ec{constructor(e){v_(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,i,a){var s,o,A,l,u,c,d,h;const f=this.shapeMap[e];if(n===!1){f&&((s=a==null?void 0:a.beforeDestroy)===null||s===void 0||s.call(a,f),i.removeChild(f),delete this.shapeMap[e],(o=a==null?void 0:a.afterDestroy)===null||o===void 0||o.call(a,f));return}const p=typeof t=="string"?Ps(rc.SHAPE,t):t;if(!p)throw new Error(Ta(`Shape ${t} not found`));if(!f||f.destroyed||!(f instanceof p)){f&&((A=a==null?void 0:a.beforeDestroy)===null||A===void 0||A.call(a,f),f==null||f.destroy(),(l=a==null?void 0:a.afterDestroy)===null||l===void 0||l.call(a,f)),(u=a==null?void 0:a.beforeCreate)===null||u===void 0||u.call(a);const g=new p({className:e,style:n});return i.appendChild(g),this.shapeMap[e]=g,(c=a==null?void 0:a.afterCreate)===null||c===void 0||c.call(a,g),g}return(d=a==null?void 0:a.beforeUpdate)===null||d===void 0||d.call(a,f),JB(f,n),(h=a==null?void 0:a.afterUpdate)===null||h===void 0||h.call(a,f),f}update(e={}){const t=Object.assign({},this.attributes,e);v_(t),xJ(this,t),this.render(t,this),this.setVisibility()}bindEvents(){}getGraphicStyle(e){return IX(e)}get compositeShapes(){return[["badges","badge-"],["ports","port-"]]}animate(e,t){if(e.length===0)return null;const n=[];if(e[0].x!==void 0||e[0].y!==void 0||e[0].z!==void 0){const{x:a=0,y:s=0,z:o=0}=this.attributes;e.forEach(A=>{const{x:l=a,y:u=s,z:c=o}=A;Object.assign(A,{transform:c?[["translate3d",l,u,c]]:[["translate",l,u]]})})}const i=super.animate(e,t);if(i&&(Gv(this,i),n.push(i)),Array.isArray(e)&&e.length>0){const a=["transform","transformOrigin","x","y","z","zIndex"];if(Object.keys(e[0]).some(s=>!a.includes(s))){Object.entries(this.shapeMap).forEach(([o,A])=>{const l=`get${Wh(o)}Style`,u=this[l];if(At(u)){const c=e.map(h=>u.call(this,Object.assign(Object.assign({},this.attributes),h))),d=A.animate(VB(c),t);d&&(Gv(A,d),n.push(d))}});const s=(o,A)=>{if(!Ja(o)){const l=`get${Wh(A)}Style`,u=this[l];if(At(u)){const c=e.map(d=>u.call(this,Object.assign(Object.assign({},this.attributes),d)));Object.entries(c[0]).map(([d])=>{const h=c.map(p=>p[d]),f=o[d];if(f){const p=f.animate(VB(h),t);p&&(Gv(f,p),n.push(p))}})}}};this.compositeShapes.forEach(([o,A])=>{const l=KB(this.shapeMap,A);s(l,o)})}}return ux(n)}getShape(e){return this.shapeMap[e]}setVisibility(){const{visibility:e}=this.attributes;yA(this,e)}destroy(){this.shapeMap={},this.animateMap={},super.destroy()}}function Gv(r,e){e==null||e.finished.then(()=>{const t=r.activeAnimations.findIndex(n=>n===e);t>-1&&r.activeAnimations.splice(t,1)})}function v_(r){if(!r)return{};if("x"in r||"y"in r||"z"in r){const{x:e=0,y:t=0,z:n,transform:i}=r,a=_R(e,t,n,i);a&&(r.transform=a)}return r}var PX=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};class fs extends Fc{constructor(e){super(Qr({style:fs.defaultStyleProps},e))}isTextStyle(e){return wf(e,"label")}isBackgroundStyle(e){return wf(e,"background")}getTextStyle(e){const t=this.getGraphicStyle(e),{padding:n}=t,i=PX(t,["padding"]);return qR(i,"background")}getBackgroundStyle(e){if(e.background===!1)return!1;const t=this.getGraphicStyle(e),{wordWrap:n,wordWrapWidth:i,padding:a}=t,s=Kn(t,"background"),{min:[o,A],center:[l,u],halfExtents:[c,d]}=this.shapeMap.text.getGeometryBounds(),[h,f,p,g]=ga(a),v=c*2+g+f,{width:m,height:y}=s;m&&y?Object.assign(s,{x:l-Number(m)/2,y:u-Number(y)/2}):Object.assign(s,{x:o-g,y:A-h,width:n?Math.min(v,i+g+f):v,height:d*2+h+p});const{radius:w}=s;if(typeof w=="string"&&w.endsWith("%")){const B=Number(w.replace("%",""))/100;s.radius=Math.min(+s.width,+s.height)*B}return s}render(e=this.parsedAttributes,t=this){this.upsert("text",SA,this.getTextStyle(e),t),this.upsert("background",jr,this.getBackgroundStyle(e),t)}getGeometryBounds(){return(this.getShape("background")||this.getShape("text")).getGeometryBounds()}}fs.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};class Ll extends Fc{constructor(e){super(Qr({style:Ll.defaultStyleProps},e))}getBadgeStyle(e){return this.getGraphicStyle(e)}render(e=this.parsedAttributes,t=this){this.upsert("label",fs,this.getBadgeStyle(e),t)}getGeometryBounds(){const e=this.getShape("label");return(e.getShape("background")||e.getShape("text")).getGeometryBounds()}}Ll.defaultStyleProps={padding:[2,4,2,4],fontSize:10,wordWrap:!1,backgroundRadius:"50%",backgroundOpacity:1};function UX(r,e=!0){const t=[];return r.forEach((n,i)=>{t.push([i===0?"M":"L",...n])}),e&&t.push(["Z"]),t}const m_={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 RX(r){const e=r.replace(/[\n\r]/g,"").replace(/-/g," -").replace(/(\d*\.)(\d+)(?=\.)/g,"$1$2 ").trim().split(/\s*,|\s+/),t=[];let n="",i={};for(;e.length>0;){let a=e.shift();a in m_?n=a:e.unshift(a),i={type:n},m_[n].forEach(A=>{a=e.shift(),i[A]=a}),n==="M"?n="L":n==="m"&&(n="l");const[s,...o]=Object.values(i);t.push([s,...o.map(Number)])}return t}function QX(r){const e=[];return(typeof r=="string"?RX(r):r).forEach(n=>{const i=n[0];if(i==="Z"){e.push(e[0]);return}if(i!=="A")for(let a=1;a<n.length;a=a+2)e.push([n[a],n[a+1],0]);else{const a=n.length;e.push([n[a-2],n[a-1],0])}}),e}const JR=r=>{if(r.length<2)return[["M",0,0],["L",0,0]];const e=r[0],t=r[1],n=r[r.length-1],i=r[r.length-2];r.unshift(i,n),r.push(e,t);const a=[["M",n[0],n[1]]];for(let s=1;s<r.length-2;s+=1){const[o,A]=r[s-1],[l,u]=r[s],[c,d]=r[s+1],[h,f]=s!==r.length-2?r[s+2]:[c,d],p=l+(c-o)/6,g=u+(d-A)/6,v=c-(h-l)/6,m=d-(f-u)/6;a.push(["C",p,g,v,m,c,d])}return a};function DX(r,e,t,n,i,a,s){const[o,A]=ks(r,e),l={textAlign:e==="left"?"right":e==="right"?"left":"center",textBaseline:e==="top"?"bottom":e==="bottom"?"top":"middle",transform:[["translate",o+t,A+n]]};if(e==="center"||!i)return l;const u=QX(a);if(!u||u.length<=3)return l;const c=u.map((f,p)=>{const g=f,v=u[(p+1)%u.length];return Qn(g,v)?null:[g,v]}).filter(Boolean),d=xX([o,A],c),h=jR([o,A],d);if(h&&d&&(l.transform=[["translate",h[0]+t,h[1]+n]],s)){const f=Math.atan((d[0][1]-d[1][1])/(d[0][0]-d[1][0]));l.transform.push(["rotate",f/Math.PI*180]),l.textAlign="center",(e==="right"||e==="left")&&(f>0?l.textBaseline=e==="right"?"bottom":"top":l.textBaseline=e==="right"?"top":"bottom")}return l}var HX=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};class Mc extends Fc{constructor(e){super(Qr({style:Mc.defaultStyleProps},e))}getLabelStyle(e){if(!e.label||!e.d||e.d.length===0)return!1;const t=Kn(this.getGraphicStyle(e),"label"),{maxWidth:n,offsetX:i,offsetY:a,autoRotate:s,placement:o,closeToPath:A}=t,l=HX(t,["maxWidth","offsetX","offsetY","autoRotate","placement","closeToPath"]),u=this.shapeMap.key,c=u==null?void 0:u.getRenderBounds();return Object.assign(DX(c,o,i,a,A,e.d,s),{wordWrapWidth:ZR(c,n)},l)}getKeyStyle(e){return this.getGraphicStyle(e)}render(e,t){this.upsert("key",Ai,this.getKeyStyle(e),t),this.upsert("label",fs,this.getLabelStyle(e),t)}}Mc.defaultStyleProps={label:!0,labelPlacement:"bottom",labelCloseToPath:!0,labelAutoRotate:!0,labelOffsetX:0,labelOffsetY:0};function $X(r){const e=[],t=n=>{n!=null&&n.children.length&&n.children.forEach(i=>{e.push(i),t(i)})};return t(r),e}function GX(r){const e=[];let t=r.parentNode;for(;t;)e.push(t),t=t.parentNode;return e}let mx=class extends Cc{constructor(e){super(e),this.onMounted=()=>{this.handleRadius()},this.onAttrModified=()=>{this.handleRadius()},il=this,this.isMutationObserved=!0,this.addEventListener(Vt.MOUNTED,this.onMounted),this.addEventListener(Vt.ATTR_MODIFIED,this.onAttrModified)}handleRadius(){const{radius:e,clipPath:t,width:n=0,height:i=0}=this.attributes;if(e&&n&&i){const[a,s]=this.getBounds().min,o={x:a,y:s,radius:e,width:n,height:i};if(t)Object.assign(this.parsedStyle.clipPath.style,o);else{const A=new jr({style:o});this.style.clipPath=A}}else t&&(this.style.clipPath=null)}};const jB=new WeakMap;let il=null;const yx=r=>{if(il&&GX(il).includes(r)){const e=jB.get(r);e?e.includes(il)||e.push(il):jB.set(r,[il])}},wx=r=>{const e=jB.get(r);e&&e.forEach(t=>t.handleRadius())};class eQ extends Fc{constructor(e){super(e)}isImage(){const{src:e}=this.attributes;return!!e}getIconStyle(e=this.attributes){const{width:t=0,height:n=0}=e,i=this.getGraphicStyle(e);return this.isImage()?Object.assign({x:-t/2,y:-n/2},i):Object.assign({textBaseline:"middle",textAlign:"center"},i)}render(e=this.attributes,t=this){this.upsert("icon",this.isImage()?mx:SA,this.getIconStyle(e),t)}}class tQ extends Fc{get context(){return this.config.context}get parsedAttributes(){return this.attributes}onframe(){}animate(e,t){const n=super.animate(e,t);return n&&(n.onframe=()=>this.onframe(),n.finished.then(()=>this.onframe())),n}}var Yd=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};class Ua extends tQ{constructor(e){super(Qr({style:Ua.defaultStyleProps},e)),this.type="node"}getSize(e=this.attributes){const{size:t}=e;return Yi(t)}getKeyStyle(e){const t=this.getGraphicStyle(e);return Object.assign(qR(t,["label","halo","icon","badge","port"]))}getLabelStyle(e){if(e.label===!1||!e.labelText)return!1;const t=Kn(this.getGraphicStyle(e),"label"),{placement:n,maxWidth:i,offsetX:a,offsetY:s}=t,o=Yd(t,["placement","maxWidth","offsetX","offsetY"]),A=this.getShape("key").getLocalBounds();return Object.assign(L_(A,n,a,s),{wordWrapWidth:ZR(A,i)},o)}getHaloStyle(e){if(e.halo===!1)return!1;const t=this.getKeyStyle(e),{fill:n}=t,i=Yd(t,["fill"]),a=Kn(this.getGraphicStyle(e),"halo");return Object.assign(Object.assign(Object.assign({},i),{stroke:n}),a)}getIconStyle(e){if(e.icon===!1||!e.iconText&&!e.iconSrc)return!1;const t=Kn(this.getGraphicStyle(e),"icon");return Object.assign(OX(e.size,t),t)}getBadgesStyle(e){var t;const n=KB(this.shapeMap,"badge-"),i={};if(Object.keys(n).forEach(c=>{i[c]=!1}),e.badge===!1||!(!((t=e.badges)===null||t===void 0)&&t.length))return i;const{badges:a=[],badgePalette:s,opacity:o=1}=e,A=Yd(e,["badges","badgePalette","opacity"]),l=YR(s),u=Kn(this.getGraphicStyle(A),"badge");return a.forEach((c,d)=>{i[d]=Object.assign(Object.assign({backgroundFill:l?l[d%(l==null?void 0:l.length)]:void 0,opacity:o},u),this.getBadgeStyle(c))}),i}getBadgeStyle(e){const t=this.getShape("key"),{placement:n="top",offsetX:i,offsetY:a}=e,s=Yd(e,["placement","offsetX","offsetY"]),o=L_(t.getLocalBounds(),n,i,a,!0);return Object.assign(Object.assign({},o),s)}getPortsStyle(e){var t;const n=this.getPorts(),i={};if(Object.keys(n).forEach(o=>{i[o]=!1}),e.port===!1||!(!((t=e.ports)===null||t===void 0)&&t.length))return i;const a=Kn(this.getGraphicStyle(e),"port"),{ports:s=[]}=e;return s.forEach((o,A)=>{const l=o.key||A,u=Object.assign(Object.assign({},a),o);if(mQ(u))i[l]=!1;else{const[c,d]=this.getPortXY(e,o);i[l]=Object.assign({transform:[["translate",c,d]]},u)}}),i}getPortXY(e,t){const{placement:n="left"}=t,i=this.getShape("key");return Sx(zX(this.context,i),n)}getPorts(){return KB(this.shapeMap,"port-")}getCenter(){return this.getShape("key").getBounds().center}getIntersectPoint(e,t=!1){const n=this.getShape("key").getBounds();return BX(e,n,t)}drawHaloShape(e,t){const n=this.getHaloStyle(e),i=this.getShape("key");this.upsert("halo",i.constructor,n,t)}drawIconShape(e,t){const n=this.getIconStyle(e);this.upsert("icon",eQ,n,t),yx(this)}drawBadgeShapes(e,t){const n=this.getBadgesStyle(e);Object.keys(n).forEach(i=>{const a=n[i];this.upsert(`badge-${i}`,Ll,a,t)})}drawPortShapes(e,t){const n=this.getPortsStyle(e);Object.keys(n).forEach(i=>{const a=n[i],s=`port-${i}`;this.upsert(s,us,a,t)})}drawLabelShape(e,t){const n=this.getLabelStyle(e);this.upsert("label",fs,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)&&wx(this)}onframe(){this.drawBadgeShapes(this.parsedAttributes,this),this.drawLabelShape(this.parsedAttributes,this)}}Ua.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 zX(r,e){if(!r)return e.getLocalBounds();const t=r.canvas.getLayer(),n=e.cloneNode();yA(n,"hidden"),t.appendChild(n);const i=n.getLocalBounds();return n.destroy(),i}let Ic=class nQ extends Ua{constructor(e){super(Qr({style:nQ.defaultStyleProps},e))}drawKeyShape(e,t){return this.upsert("key",us,this.getKeyStyle(e),t)}getKeyStyle(e){const t=super.getKeyStyle(e);return Object.assign(Object.assign({},t),{r:Math.min(...this.getSize(e))/2})}getIconStyle(e){const t=super.getIconStyle(e),{r:n}=this.getShape("key").attributes,i=n*2*Us;return t?Object.assign({width:i,height:i},t):!1}getIntersectPoint(e,t=!1){const n=this.getShape("key").getBounds();return ug(e,n,t)}};Ic.defaultStyleProps={size:32};class dg extends Ua{constructor(e){super(e)}get parsedAttributes(){return this.attributes}drawKeyShape(e,t){return this.upsert("key",CA,this.getKeyStyle(e),t)}getKeyStyle(e){const t=super.getKeyStyle(e);return Object.assign(Object.assign({},t),{points:this.getPoints(e)})}getIntersectPoint(e,t=!1){var n,i;const{points:a}=this.getShape("key").attributes,s=[+(((n=this.attributes)===null||n===void 0?void 0:n.x)||0),+(((i=this.attributes)===null||i===void 0?void 0:i.y)||0)];return KR(e,s,a,!0,t).point}}class VX extends dg{constructor(e){super(e)}getPoints(e){const[t,n]=this.getSize(e);return EJ(t,n)}}var KX=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};class hg extends Ic{constructor(e){super(Qr({style:hg.defaultStyleProps},e))}parseOuterR(){const{size:e}=this.parsedAttributes;return Math.min(...Yi(e))/2}parseInnerR(){const{innerR:e}=this.parsedAttributes;return ln(e)?parseInt(e)/100*this.parseOuterR():e}drawDonutShape(e,t){const{donuts:n}=e;if(!(n!=null&&n.length))return;const i=n.map(c=>Yt(c)?{value:c}:c),a=Kn(this.getGraphicStyle(e),"donut"),s=YR(e.donutPalette);if(!s)return;const o=i.reduce((c,d)=>{var h;return c+((h=d.value)!==null&&h!==void 0?h:0)},0),A=this.parseOuterR(),l=this.parseInnerR();let u=0;i.forEach((c,d)=>{const{value:h=0,color:f=s[d%s.length]}=c,p=KX(c,["value","color"]),g=(o===0?1/i.length:h/o)*360;this.upsert(`round${d}`,Ai,Object.assign(Object.assign(Object.assign({},a),{d:qX(A,l,u,u+g),fill:f}),p),t),u+=g})}render(e,t=this){super.render(e,t),this.drawDonutShape(e,t)}}hg.defaultStyleProps={innerR:"50%",donuts:[],donutPalette:"tableau"};const Xd=(r,e,t,n)=>[r+Math.sin(n)*t,e-Math.cos(n)*t],jX=(r,e,t,n)=>n<=0||t<=n?[["M",r-t,e],["A",t,t,0,1,1,r+t,e],["A",t,t,0,1,1,r-t,e],["Z"]]:[["M",r-t,e],["A",t,t,0,1,1,r+t,e],["A",t,t,0,1,1,r-t,e],["Z"],["M",r+n,e],["A",n,n,0,1,0,r-n,e],["A",n,n,0,1,0,r+n,e],["Z"]],WX=(r,e,t,n,i,a)=>{const[s,o]=[i/360*2*Math.PI,a/360*2*Math.PI],A=[Xd(r,e,n,s),Xd(r,e,t,s),Xd(r,e,t,o),Xd(r,e,n,o)],l=o-s>Math.PI?1:0;return[["M",A[0][0],A[0][1]],["L",A[1][0],A[1][1]],["A",t,t,0,l,1,A[2][0],A[2][1]],["L",A[3][0],A[3][1]],["A",n,n,0,l,0,A[0][0],A[0][1]],["Z"]]},qX=(r=0,e=0,t,n)=>{const[i,a]=[0,0];return Math.abs(t-n)%360<1e-6?jX(i,a,r,e):WX(i,a,r,e,t,n)};class fg extends Ua{constructor(e){super(Qr({style:fg.defaultStyleProps},e))}drawKeyShape(e,t){return this.upsert("key",xc,this.getKeyStyle(e),t)}getKeyStyle(e){const t=super.getKeyStyle(e),[n,i]=this.getSize(e);return Object.assign(Object.assign({},t),{rx:n/2,ry:i/2})}getIconStyle(e){const t=super.getIconStyle(e),{rx:n,ry:i}=this.getShape("key").attributes,a=Math.min(+n,+i)*2*Us;return t?Object.assign({width:a,height:a},t):!1}getIntersectPoint(e,t=!1){const n=this.getShape("key").getBounds();return ug(e,n,t)}}fg.defaultStyleProps={size:[45,35]};class YX extends dg{constructor(e){super(e)}getOuterR(e){return e.outerR||Math.min(...this.getSize(e))/2}getPoints(e){return CJ(this.getOuterR(e))}getIconStyle(e){const t=super.getIconStyle(e),n=this.getOuterR(e)*Us;return t?Object.assign({width:n,height:n},t):!1}}function Wa(r,e){if(!{}.hasOwnProperty.call(r,e))throw new TypeError("attempted to use private field on non-instance");return r}var XX=0;function ZX(r){return"__private_"+XX+++"_"+r}/*!
164
- * @antv/g-canvas
165
- * @description A renderer implemented by Canvas 2D API
166
- * @version 2.2.0
167
- * @date 12/24/2025, 11:55:53 AM
168
- * @author AntVis
169
- * @docs https://g.antv.antgroup.com/
170
- */var rr=ZX("renderState"),rQ=(function(){function r(e){Ne(this,r),this.renderQueue=[],Object.defineProperty(this,rr,{writable:!0,value:{restoreStack:[],prevObject:null,currentContext:new Map}}),this.clearFullScreenLastFrame=!1,this.clearFullScreen=!1,this.vpMatrix=wn(),this.dprMatrix=wn(),this.tmpMat4=wn(),this.vec3a=Ut(),this.vec3b=Ut(),this.vec3c=Ut(),this.vec3d=Ut(),this.canvasRendererPluginOptions=e}return Pe(r,[{key:"apply",value:function(t,n){var i=this;this.context=t;var a=this.context,s=a.config,o=a.camera,A=a.renderingService,l=a.renderingContext,u=a.pathGeneratorFactory,c=s.renderer.getConfig().enableRenderingOptimization;s.renderer.getConfig().enableDirtyCheck=!1,s.renderer.getConfig().enableDirtyRectangleRendering=!1,this.pathGeneratorFactory=u;var d=t.contextService,h=l.root.ownerDocument.defaultView;A.hooks.init.tap(r.tag,function(){var g=d.getDPR(),v=s.width,m=s.height,y=d.getContext();i.clearRect(y,0,0,v*g,m*g,s.background)}),A.hooks.destroy.tap(r.tag,function(){i.renderQueue=[],Wa(i,rr)[rr]={restoreStack:[],prevObject:null,currentContext:null}});var f=function(){var v,m=d.getContext(),y=d.getDPR(),w=s.width,B=s.height,x=i.canvasRendererPluginOptions,k=x.dirtyObjectNumThreshold,_=x.dirtyObjectRatioThreshold,T=A.getStats(),F=T.total,I=T.rendered,O=I/F;i.clearFullScreen=i.clearFullScreenLastFrame||!((v=h.context.renderingPlugins[1])!==null&&v!==void 0&&v.isFirstTimeRenderingFinished)||A.disableDirtyRectangleRendering()||I>k&&O>_,m&&(typeof m.resetTransform=="function"?m.resetTransform():m.setTransform(1,0,0,1,0,0),i.clearFullScreen&&i.clearRect(m,0,0,w*y,B*y,s.background))},p=function(v,m){for(var y=[v];y.length>0;){var w,B=y.pop();B.isVisible()&&!B.isCulled()&&(c?i.renderDisplayObjectOptimized(B,m,i.context,Wa(i,rr)[rr],n):i.renderDisplayObject(B,m,i.context,Wa(i,rr)[rr],n));for(var x=((w=B.sortable)===null||w===void 0||(w=w.sorted)===null||w===void 0?void 0:w.length)>0?B.sortable.sorted:B.childNodes,k=x.length-1;k>=0;k--)y.push(x[k])}};A.hooks.endFrame.tap(r.tag,function(){if(f(),l.root.childNodes.length===0){i.clearFullScreenLastFrame=!0;return}c=s.renderer.getConfig().enableRenderingOptimization,Wa(i,rr)[rr]={restoreStack:[],prevObject:null,currentContext:Wa(i,rr)[rr].currentContext},Wa(i,rr)[rr].currentContext.clear(),i.clearFullScreenLastFrame=!1;var g=d.getContext(),v=d.getDPR();if(Zo(i.dprMatrix,[v,v,1]),si(i.vpMatrix,i.dprMatrix,o.getOrthoMatrix()),i.clearFullScreen)c?(g.save(),p(l.root,g),g.restore()):p(l.root,g);else{var m=i.safeMergeAABB(i.mergeDirtyAABBs(i.renderQueue));if(kn.isEmpty(m)){i.renderQueue=[];return}var y=i.convertAABB2Rect(m),w=y.x,B=y.y,x=y.width,k=y.height,_=oi(i.vec3a,[w,B,0],i.vpMatrix),T=oi(i.vec3b,[w+x,B,0],i.vpMatrix),F=oi(i.vec3c,[w,B+k,0],i.vpMatrix),I=oi(i.vec3d,[w+x,B+k,0],i.vpMatrix),O=Math.min(_[0],T[0],I[0],F[0]),P=Math.min(_[1],T[1],I[1],F[1]),G=Math.max(_[0],T[0],I[0],F[0]),ee=Math.max(_[1],T[1],I[1],F[1]),te=Math.floor(O),N=Math.floor(P),K=Math.ceil(G-O),J=Math.ceil(ee-P);g.save(),i.clearRect(g,te,N,K,J,s.background),g.beginPath(),g.rect(te,N,K,J),g.clip(),g.setTransform(i.vpMatrix[0],i.vpMatrix[1],i.vpMatrix[4],i.vpMatrix[5],i.vpMatrix[12],i.vpMatrix[13]);var be=s.renderer.getConfig(),re=be.enableDirtyRectangleRenderingDebug;re&&h.dispatchEvent(new gr(Vi.DIRTY_RECTANGLE,{dirtyRect:{x:te,y:N,width:K,height:J}}));var ne=m.getMin(),ue=Tt(ne,2),Y=ue[0],U=ue[1],W=m.getMax(),ie=Tt(W,2),Ee=ie[0],de=ie[1],X=l.root.ownerDocument.elementsFromBBox(Y,U,Ee,de);X.sort(function(xe,ce){return xe.sortable.renderOrder-ce.sortable.renderOrder}).forEach(function(xe){xe&&xe.isVisible()&&!xe.isCulled()&&i.renderDisplayObject(xe,g,i.context,Wa(i,rr)[rr],n)}),g.restore(),i.renderQueue.forEach(function(xe){i.saveDirtyAABB(xe)}),i.renderQueue=[]}Wa(i,rr)[rr].restoreStack.forEach(function(){g.restore()}),Wa(i,rr)[rr].restoreStack=[]}),A.hooks.render.tap(r.tag,function(g){i.clearFullScreen||i.renderQueue.push(g)})}},{key:"clearRect",value:function(t,n,i,a,s,o){t.clearRect(n,i,a,s),o&&(t.fillStyle=o,t.fillRect(n,i,a,s))}},{key:"renderDisplayObjectOptimized",value:function(t,n,i,a,s){var o=t.nodeName,A=!1,l=!1,u=this.context.styleRendererFactory[o],c=this.pathGeneratorFactory[o],d=t.parsedStyle.clipPath;if(d){A=!a.prevObject||!eB(d.getWorldTransform(),a.prevObject.getWorldTransform()),A&&(this.applyWorldTransform(n,d),a.prevObject=null);var h=this.pathGeneratorFactory[d.nodeName];h&&(n.save(),l=!0,n.beginPath(),h(n,d.parsedStyle),n.closePath(),n.clip())}if(u){A=!a.prevObject||!eB(t.getWorldTransform(),a.prevObject.getWorldTransform()),A&&this.applyWorldTransform(n,t);var f=!a.prevObject;if(!f){var p=a.prevObject.nodeName;o===Te.TEXT?f=p!==Te.TEXT:o===Te.IMAGE?f=p!==Te.IMAGE:f=p===Te.TEXT||p===Te.IMAGE}u.applyStyleToContext(n,t,f,a),a.prevObject=t}c&&(n.beginPath(),c(n,t.parsedStyle),o!==Te.LINE&&o!==Te.PATH&&o!==Te.POLYLINE&&n.closePath()),u&&u.drawToContext(n,t,Wa(this,rr)[rr],this,s),l&&n.restore(),t.dirty(!1)}},{key:"renderDisplayObject",value:function(t,n,i,a,s){var o=t.nodeName,A=a.restoreStack[a.restoreStack.length-1];A&&!(t.compareDocumentPosition(A)&Rn.DOCUMENT_POSITION_CONTAINS)&&(n.restore(),a.restoreStack.pop());var l=this.context.styleRendererFactory[o],u=this.pathGeneratorFactory[o],c=t.parsedStyle.clipPath;if(c){this.applyWorldTransform(n,c);var d=this.pathGeneratorFactory[c.nodeName];d&&(n.save(),a.restoreStack.push(t),n.beginPath(),d(n,c.parsedStyle),n.closePath(),n.clip())}l&&(this.applyWorldTransform(n,t),n.save(),this.applyAttributesToContext(n,t)),u&&(n.beginPath(),u(n,t.parsedStyle),o!==Te.LINE&&o!==Te.PATH&&o!==Te.POLYLINE&&n.closePath()),l&&(l.render(n,t.parsedStyle,t,i,this,s),n.restore()),t.dirty(!1)}},{key:"applyAttributesToContext",value:function(t,n){var i=n.parsedStyle,a=i.stroke,s=i.fill,o=i.opacity,A=i.lineDash,l=i.lineDashOffset;A&&t.setLineDash(A),ut(l)||(t.lineDashOffset=l),ut(o)||(t.globalAlpha*=o),!ut(a)&&!Array.isArray(a)&&!a.isNone&&(t.strokeStyle=n.attributes.stroke),!ut(s)&&!Array.isArray(s)&&!s.isNone&&(t.fillStyle=n.attributes.fill)}},{key:"convertAABB2Rect",value:function(t){var n=t.getMin(),i=t.getMax(),a=Math.floor(n[0]),s=Math.floor(n[1]),o=Math.ceil(i[0]),A=Math.ceil(i[1]),l=o-a,u=A-s;return{x:a,y:s,width:l,height:u}}},{key:"mergeDirtyAABBs",value:function(t){var n=new kn;return t.forEach(function(i){var a=i.getRenderBounds();n.add(a);var s=i.renderable.dirtyRenderBounds;s&&n.add(s)}),n}},{key:"saveDirtyAABB",value:function(t){var n=t.renderable;n.dirtyRenderBounds||(n.dirtyRenderBounds=new kn);var i=t.getRenderBounds();i&&n.dirtyRenderBounds.update(i.center,i.halfExtents)}},{key:"applyWorldTransform",value:function(t,n,i){i?(El(this.tmpMat4,n.getLocalTransform()),si(this.tmpMat4,i,this.tmpMat4),si(this.tmpMat4,this.vpMatrix,this.tmpMat4)):(El(this.tmpMat4,n.getWorldTransform()),si(this.tmpMat4,this.vpMatrix,this.tmpMat4)),t.setTransform(this.tmpMat4[0],this.tmpMat4[1],this.tmpMat4[4],this.tmpMat4[5],this.tmpMat4[12],this.tmpMat4[13])}},{key:"safeMergeAABB",value:function(){for(var t=new kn,n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return i.forEach(function(s){t.add(s)}),t}}])})();rQ.tag="CanvasRenderer";function bf(r,e,t,n,i,a,s){var o,A;if(r.image.nodeName==="rect"){var l=r.image.parsedStyle,u=l.width,c=l.height;A=n.contextService.getDPR();var d=n.config.offscreenCanvas;o=a.offscreenCanvasCreator.getOrCreateCanvas(d),o.width=u*A,o.height=c*A;var h=a.offscreenCanvasCreator.getOrCreateContext(d),f={restoreStack:[],prevObject:null,currentContext:new Map};r.image.forEach(function(g){i.renderDisplayObject(g,h,n,f,a)}),f.restoreStack.forEach(function(){h.restore()})}var p=s.getOrCreatePatternSync(e,r,t,o,A,e.getGeometryBounds().min,function(){e.dirty(),n.renderingService.dirty()});return p}function Bf(r,e,t,n){var i;if(r.type===so.LinearGradient||r.type===so.RadialGradient){var a=e.getGeometryBounds(),s=a&&a.halfExtents[0]*2||1,o=a&&a.halfExtents[1]*2||1,A=a&&a.min||[0,0];i=n.getOrCreateGradient(bt(bt({type:r.type},r.value),{},{min:A,width:s,height:o}),t)}return i}var Zd=["shadowBlur","shadowOffsetX","shadowOffsetY"],y_=["lineCap","lineJoin","miterLimit"],cr={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},w_={};function $n(r,e,t,n){var i=n.has(e)?n.get(e):cr[e];return i!==t&&(e==="lineDash"?r.setLineDash(t):r[e]=t,n.set(e,t)),i}var JX=(function(){function r(e){Ne(this,r),this.imagePool=e}return Pe(r,[{key:"applyAttributesToContext",value:function(t,n){}},{key:"render",value:function(t,n,i,a,s,o){}},{key:"applyCommonStyleToContext",value:function(t,n,i,a){var s=i?w_:a.prevObject.parsedStyle,o=n.parsedStyle;(i||o.opacity!==s.opacity)&&$n(t,"globalAlpha",ut(o.opacity)?cr.globalAlpha:o.opacity,a.currentContext),(i||o.blend!==s.blend)&&$n(t,"globalCompositeOperation",ut(o.blend)?cr.globalCompositeOperation:o.blend,a.currentContext)}},{key:"applyStrokeFillStyleToContext",value:function(t,n,i,a){var s=i?w_:a.prevObject.parsedStyle,o=n.parsedStyle,A=o.lineWidth,l=A===void 0?cr.lineWidth:A,u=o.fill&&!o.fill.isNone,c=o.stroke&&!o.stroke.isNone&&l>0;if(c){if(i||n.attributes.stroke!==a.prevObject.attributes.stroke){var d=!ut(o.stroke)&&!Array.isArray(o.stroke)&&!o.stroke.isNone?n.attributes.stroke:cr.strokeStyle;$n(t,"strokeStyle",d,a.currentContext)}(i||o.lineWidth!==s.lineWidth)&&$n(t,"lineWidth",ut(o.lineWidth)?cr.lineWidth:o.lineWidth,a.currentContext),(i||o.lineDash!==s.lineDash)&&$n(t,"lineDash",o.lineDash||cr.lineDash,a.currentContext),(i||o.lineDashOffset!==s.lineDashOffset)&&$n(t,"lineDashOffset",ut(o.lineDashOffset)?cr.lineDashOffset:o.lineDashOffset,a.currentContext);for(var h=0;h<y_.length;h++){var f=y_[h];(i||o[f]!==s[f])&&$n(t,f,ut(o[f])?cr[f]:o[f],a.currentContext)}}if(u&&(i||n.attributes.fill!==a.prevObject.attributes.fill)){var p=!ut(o.fill)&&!Array.isArray(o.fill)&&!o.fill.isNone?n.attributes.fill:cr.fillStyle;$n(t,"fillStyle",p,a.currentContext)}}},{key:"applyStyleToContext",value:function(t,n,i,a){var s=n.nodeName;this.applyCommonStyleToContext(t,n,i,a),s===Te.IMAGE||this.applyStrokeFillStyleToContext(t,n,i,a)}},{key:"applyShadowAndFilterStyleToContext",value:function(t,n,i,a){var s=n.parsedStyle;if(i){$n(t,"shadowColor",s.shadowColor.toString(),a.currentContext);for(var o=0;o<Zd.length;o++){var A=Zd[o];$n(t,A,s[A]||cr[A],a.currentContext)}}s.filter&&s.filter.length&&$n(t,"filter",n.attributes.filter,a.currentContext)}},{key:"clearShadowAndFilterStyleForContext",value:function(t,n,i,a){var s=arguments.length>4&&arguments[4]!==void 0?arguments[4]:!1;if(n){$n(t,"shadowColor",cr.shadowColor,a.currentContext);for(var o=0;o<Zd.length;o++){var A=Zd[o];$n(t,A,cr[A],a.currentContext)}}if(i)if(n&&s){var l=t.filter;!ut(l)&&l.indexOf("drop-shadow")>-1&&$n(t,"filter",l.replace(/drop-shadow\([^)]*\)/,"").trim()||cr.filter,a.currentContext)}else $n(t,"filter",cr.filter,a.currentContext)}},{key:"fillToContext",value:function(t,n,i,a,s){var o=this,A=n.parsedStyle,l=A.fill,u=A.fillRule,c=null;if(Array.isArray(l)&&l.length>0)l.forEach(function(h){var f=$n(t,"fillStyle",Bf(h,n,t,o.imagePool),i.currentContext);c=c??f,u?t.fill(u):t.fill()});else{if(pA(l)){var d=bf(l,n,t,n.ownerDocument.defaultView.context,a,s,this.imagePool);d&&(t.fillStyle=d,c=!0)}u?t.fill(u):t.fill()}c!==null&&$n(t,"fillStyle",c,i.currentContext)}},{key:"strokeToContext",value:function(t,n,i,a,s){var o=this,A=n.parsedStyle.stroke,l=null;if(Array.isArray(A)&&A.length>0)A.forEach(function(d){var h=$n(t,"strokeStyle",Bf(d,n,t,o.imagePool),i.currentContext);l=l??h,t.stroke()});else{if(pA(A)){var u=bf(A,n,t,n.ownerDocument.defaultView.context,a,s,this.imagePool);if(u){var c=$n(t,"strokeStyle",u,i.currentContext);l=l??c}}t.stroke()}l!==null&&$n(t,"strokeStyle",l,i.currentContext)}},{key:"drawToContext",value:function(t,n,i,a,s){var o,A=n.nodeName,l=n.parsedStyle,u=l.opacity,c=u===void 0?cr.globalAlpha:u,d=l.fillOpacity,h=d===void 0?cr.fillOpacity:d,f=l.strokeOpacity,p=f===void 0?cr.strokeOpacity:f,g=l.lineWidth,v=g===void 0?cr.lineWidth:g,m=l.fill&&!l.fill.isNone,y=l.stroke&&!l.stroke.isNone&&v>0;if(!(!m&&!y)){var w=!ut(l.shadowColor)&&l.shadowBlur>0,B=l.shadowType==="inner",x=((o=l.fill)===null||o===void 0?void 0:o.alpha)===0,k=!!(l.filter&&l.filter.length),_=w&&y&&(A===Te.PATH||A===Te.LINE||A===Te.POLYLINE||x||B),T=null;if(m){_||this.applyShadowAndFilterStyleToContext(t,n,w,i);var F=c*h;T=$n(t,"globalAlpha",F,i.currentContext),this.fillToContext(t,n,i,a,s),_||this.clearShadowAndFilterStyleForContext(t,w,k,i)}if(y){var I=!1,O=c*p,P=$n(t,"globalAlpha",O,i.currentContext);if(T=m?T:P,_&&(this.applyShadowAndFilterStyleToContext(t,n,w,i),I=!0,B)){var G=t.globalCompositeOperation;t.globalCompositeOperation="source-atop",this.strokeToContext(t,n,i,a,s),t.globalCompositeOperation=G,this.clearShadowAndFilterStyleForContext(t,w,k,i,!0)}this.strokeToContext(t,n,i,a,s),I&&this.clearShadowAndFilterStyleForContext(t,w,k,i)}T!==null&&$n(t,"globalAlpha",T,i.currentContext)}}}])})(),bx=(function(r){function e(){return Ne(this,e),Ft(this,e,arguments)}return Mt(e,r),Pe(e,[{key:"render",value:function(n,i,a,s,o,A){var l=i.fill,u=i.fillRule,c=i.opacity,d=c===void 0?1:c,h=i.fillOpacity,f=h===void 0?1:h,p=i.stroke,g=i.strokeOpacity,v=g===void 0?1:g,m=i.lineWidth,y=m===void 0?1:m,w=i.lineCap,B=i.lineJoin,x=i.shadowType,k=i.shadowColor,_=i.shadowBlur,T=i.filter,F=i.miterLimit,I=l&&!l.isNone,O=p&&!p.isNone&&y>0,P=(l==null?void 0:l.alpha)===0,G=!!(T&&T.length),ee=!ut(k)&&_>0,te=a.nodeName,N=x==="inner",K=O&&ee&&(te===Te.PATH||te===Te.LINE||te===Te.POLYLINE||P||N);I&&(n.globalAlpha=d*f,K||Ef(a,n,ee),iQ(n,a,l,u,s,o,A,this.imagePool),K||this.clearShadowAndFilter(n,G,ee)),O&&(n.globalAlpha=d*v,n.lineWidth=y,ut(F)||(n.miterLimit=F),ut(w)||(n.lineCap=w),ut(B)||(n.lineJoin=B),K&&(N&&(n.globalCompositeOperation="source-atop"),Ef(a,n,!0),N&&(WB(n,a,p,s,o,A,this.imagePool),n.globalCompositeOperation=cr.globalCompositeOperation,this.clearShadowAndFilter(n,G,!0))),WB(n,a,p,s,o,A,this.imagePool))}},{key:"clearShadowAndFilter",value:function(n,i,a){if(a&&(n.shadowColor="transparent",n.shadowBlur=0),i){var s=n.filter;!ut(s)&&s.indexOf("drop-shadow")>-1&&(n.filter=s.replace(/drop-shadow\([^)]*\)/,"").trim()||"none")}}}])})(JX);function Ef(r,e,t){var n=r.parsedStyle,i=n.filter,a=n.shadowColor,s=n.shadowBlur,o=n.shadowOffsetX,A=n.shadowOffsetY;i&&i.length&&(e.filter=r.style.filter),t&&(e.shadowColor=a.toString(),e.shadowBlur=s||0,e.shadowOffsetX=o||0,e.shadowOffsetY=A||0)}function iQ(r,e,t,n,i,a,s,o){var A=arguments.length>8&&arguments[8]!==void 0?arguments[8]:!1;Array.isArray(t)?t.forEach(function(l){r.fillStyle=Bf(l,e,r,o),A||(n?r.fill(n):r.fill())}):(pA(t)&&(r.fillStyle=bf(t,e,r,i,a,s,o)),A||(n?r.fill(n):r.fill()))}function WB(r,e,t,n,i,a,s){var o=arguments.length>7&&arguments[7]!==void 0?arguments[7]:!1;Array.isArray(t)?t.forEach(function(A){r.strokeStyle=Bf(A,e,r,s),o||r.stroke()}):(pA(t)&&(r.strokeStyle=bf(t,e,r,n,i,a,s)),o||r.stroke())}function eZ(r,e){var t=Tt(r,4),n=t[0],i=t[1],a=t[2],s=t[3],o=Tt(e,4),A=o[0],l=o[1],u=o[2],c=o[3],d=Math.max(n,A),h=Math.max(i,l),f=Math.min(n+a,A+u),p=Math.min(i+s,l+c);return f<=d||p<=h?null:[d,h,f-d,p-h]}function tZ(r,e){var t=oi(Ut(),[r[0],r[1],0],e),n=oi(Ut(),[r[0]+r[2],r[1],0],e),i=oi(Ut(),[r[0],r[1]+r[3],0],e),a=oi(Ut(),[r[0]+r[2],r[1]+r[3],0],e);return[Math.min(t[0],n[0],i[0],a[0]),Math.min(t[1],n[1],i[1],a[1]),Math.max(t[0],n[0],i[0],a[0])-Math.min(t[0],n[0],i[0],a[0]),Math.max(t[1],n[1],i[1],a[1])-Math.min(t[1],n[1],i[1],a[1])]}var nZ=(function(r){function e(){return Ne(this,e),Ft(this,e,arguments)}return Mt(e,r),Pe(e,[{key:"renderDownSampled",value:function(n,i,a,s){var o=s.src,A=s.imageCache;if(!A.downSampled){this.imagePool.createDownSampledImage(o,a).then(function(){a.ownerDocument&&(a.dirty(),a.ownerDocument.defaultView.context.renderingService.dirty())}).catch(function(l){console.error(l)});return}n.drawImage(A.downSampled,Math.floor(s.drawRect[0]),Math.floor(s.drawRect[1]),Math.ceil(s.drawRect[2]),Math.ceil(s.drawRect[3]))}},{key:"renderTile",value:function(n,i,a,s){var o=s.src,A=s.imageCache,l=s.imageRect,u=s.drawRect,c=A.size,d=n.getTransform(),h=d.a,f=d.b,p=d.c,g=d.d,v=d.e,m=d.f;if(n.resetTransform(),!(A!=null&&A.gridSize)){this.imagePool.createImageTiles(o,[],function(){a.ownerDocument&&(a.dirty(),a.ownerDocument.defaultView.context.renderingService.dirty())},a).catch(function(ee){console.error(ee)});return}for(var y=[c[0]/l[2],c[1]/l[3]],w=[A.tileSize[0]/y[0],A.tileSize[1]/y[1]],B=[Math.floor((u[0]-l[0])/w[0]),Math.ceil((u[0]+u[2]-l[0])/w[0])],x=B[0],k=B[1],_=[Math.floor((u[1]-l[1])/w[1]),Math.ceil((u[1]+u[3]-l[1])/w[1])],T=_[0],F=_[1],I=T;I<=F;I++)for(var O=x;O<=k;O++){var P=A.tiles[I][O];if(P){var G=[Math.floor(l[0]+P.tileX*w[0]),Math.floor(l[1]+P.tileY*w[1]),Math.ceil(w[0]),Math.ceil(w[1])];n.drawImage(P.data,G[0],G[1],G[2],G[3])}}n.setTransform(h,f,p,g,v,m)}},{key:"render",value:function(n,i,a){var s=i.x,o=s===void 0?0:s,A=i.y,l=A===void 0?0:A,u=i.width,c=i.height,d=i.src,h=i.shadowColor,f=i.shadowBlur,p=this.imagePool.getImageSync(d,a),g=p==null?void 0:p.img,v=u,m=c;if(g){v||(v=g.width),m||(m=g.height);var y=!ut(h)&&f>0;Ef(a,n,y);try{var w=a.ownerDocument.defaultView.getContextService().getDomElement(),B=w.width,x=w.height,k=n.getTransform(),_=k.a,T=k.b,F=k.c,I=k.d,O=k.e,P=k.f,G=YN(_,F,0,0,T,I,0,0,0,0,1,0,O,P,0,1),ee=tZ([o,l,v,m],G),te=eZ([0,0,B,x],ee);if(!te)return;if(!a.ownerDocument.defaultView.getConfig().enableLargeImageOptimization){e.renderFull(n,i,a,{image:g,drawRect:[o,l,v,m]});return}var N=ee[2]/p.size[0];if(N<(p.downSamplingRate||.5)){this.renderDownSampled(n,i,a,{src:d,imageCache:p,drawRect:[o,l,v,m]});return}if(!ImagePool.isSupportTile){e.renderFull(n,i,a,{image:g,drawRect:[o,l,v,m]});return}this.renderTile(n,i,a,{src:d,imageCache:p,imageRect:ee,drawRect:te})}catch{}}}},{key:"drawToContext",value:function(n,i,a,s,o){this.render(n,i.parsedStyle,i)}}],[{key:"renderFull",value:function(n,i,a,s){n.drawImage(s.image,Math.floor(s.drawRect[0]),Math.floor(s.drawRect[1]),Math.ceil(s.drawRect[2]),Math.ceil(s.drawRect[3]))}}])})(bx),rZ=(function(r){function e(){return Ne(this,e),Ft(this,e,arguments)}return Mt(e,r),Pe(e,[{key:"render",value:function(n,i,a,s,o,A){a.getBounds();var l=i.lineWidth,u=l===void 0?1:l,c=i.textAlign,d=c===void 0?"start":c,h=i.textBaseline,f=h===void 0?"alphabetic":h,p=i.lineJoin,g=p===void 0?"miter":p,v=i.miterLimit,m=v===void 0?10:v,y=i.letterSpacing,w=y===void 0?0:y,B=i.stroke,x=i.fill,k=i.fillRule,_=i.fillOpacity,T=_===void 0?1:_,F=i.strokeOpacity,I=F===void 0?1:F,O=i.opacity,P=O===void 0?1:O,G=i.metrics,ee=i.x,te=ee===void 0?0:ee,N=i.y,K=N===void 0?0:N,J=i.dx,be=i.dy,re=i.shadowColor,ne=i.shadowBlur,ue=i.textDecorationLine,Y=G.font,U=G.lines,W=G.height,ie=G.lineHeight,Ee=G.lineMetrics;n.font=Y,n.lineWidth=u,n.textAlign=d==="middle"?"center":d;var de=f;de==="alphabetic"&&(de="bottom"),n.lineJoin=g,ut(m)||(n.miterLimit=m);var X=K;f==="middle"?X+=-W/2-ie/2:f==="bottom"||f==="alphabetic"||f==="ideographic"?X+=-W:(f==="top"||f==="hanging")&&(X+=-ie);var xe=te+(J||0);X+=be||0,U.length===1&&(de==="bottom"?(de="middle",X-=.5*W):de==="top"&&(de="middle",X+=.5*W)),n.textBaseline=de;var ce=!ut(re)&&ne>0;Ef(a,n,ce);for(var De=0;De<U.length;De++){var He=u/2+xe;X+=ie,!ut(B)&&!B.isNone&&u&&this.drawLetterSpacing(n,a,U[De],Ee[De],d,He,X,w,x,k,T,B,I,P,!0,s,o,A),ut(x)||this.drawLetterSpacing(n,a,U[De],Ee[De],d,He,X,w,x,k,T,B,I,P,!1,s,o,A)}ue&&ue!=="none"&&this.drawTextDecorations(n,i,a,U,ie,xe,K+(be||0),s,o,A)}},{key:"drawLetterSpacing",value:function(n,i,a,s,o,A,l,u,c,d,h,f,p,g,v,m,y,w){if(u===0){v?this.strokeText(n,i,a,A,l,f,p,m,y,w):this.fillText(n,i,a,A,l,c,d,h,g,m,y,w);return}var B=n.textAlign;n.textAlign="left";var x=A;o==="center"||o==="middle"?x=A-s.width/2:(o==="right"||o==="end")&&(x=A-s.width);for(var k=Array.from(a),_=n.measureText(a).width,T=0,F=0;F<k.length;++F){var I=k[F];v?this.strokeText(n,i,I,x,l,f,p,m,y,w):this.fillText(n,i,I,x,l,c,d,h,g,m,y,w),T=n.measureText(a.substring(F+1)).width,x+=_-T+u,_=T}n.textAlign=B}},{key:"fillText",value:function(n,i,a,s,o,A,l,u,c,d,h,f){iQ(n,i,A,l,d,h,f,this.imagePool,!0);var p,g=!ut(u)&&u!==1;g&&(p=n.globalAlpha,n.globalAlpha=u*c),n.fillText(a,s,o),g&&(n.globalAlpha=p)}},{key:"strokeText",value:function(n,i,a,s,o,A,l,u,c,d){WB(n,i,A,u,c,d,this.imagePool,!0);var h,f=!ut(l)&&l!==1;f&&(h=n.globalAlpha,n.globalAlpha=l),n.strokeText(a,s,o),f&&(n.globalAlpha=h)}},{key:"drawTextDecorations",value:function(n,i,a,s,o,A,l,u,c,d){var h=i.textDecorationLine,f=i.textDecorationColor,p=i.textDecorationStyle,g=i.textDecorationThickness,v=g===void 0?1:g,m=i.textAlign,y=m===void 0?"start":m,w=i.lineWidth,B=w===void 0?1:w,x=i.metrics;if(!(!h||h==="none")){var k=x.lineMetrics,_=h.split(" ");switch(n.lineWidth=v,f&&(n.strokeStyle="rgba(".concat(f.r,", ").concat(f.g,", ").concat(f.b,", ").concat(f.alpha,")")),p){case"dashed":n.setLineDash([5,5]);break;case"dotted":n.setLineDash([2,2]);break;case"wavy":n.setLineDash([]);break;default:n.setLineDash([]);break}var T=l,F=i.textBaseline,I=F===void 0?"alphabetic":F;I==="middle"?T+=-x.height/2-o/2:I==="bottom"||I==="alphabetic"||I==="ideographic"?T+=-x.height:(I==="top"||I==="hanging")&&(T+=-o);for(var O=0;O<s.length;O++){T+=o;var P=k[O];if(P){var G=B/2,ee=A,te=A+P.width;y==="center"||y==="middle"?(ee=A-P.width/2,te=A+P.width/2):(y==="right"||y==="end")&&(ee=A-P.width,te=A),ee+=G,te+=G;var N=ro(_),K;try{for(N.s();!(K=N.n()).done;){var J=K.value,be=T;switch(J){case"underline":be+=2;break;case"overline":be-=o-2;break;case"line-through":be-=o/2;break;default:continue}p==="wavy"?this.drawWavyLine(n,ee,te,be):(n.beginPath(),n.moveTo(ee,be),n.lineTo(te,be),n.stroke())}}catch(re){N.e(re)}finally{N.f()}}}n.setLineDash([])}}},{key:"drawWavyLine",value:function(n,i,a,s){var o=2,A=10,l=Math.floor((a-i)/A);n.beginPath(),n.moveTo(i,s);for(var u=0;u<l;u++){var c=i+u*A+A/4,d=s+o,h=i+u*A+A/2,f=s;n.quadraticCurveTo(c,d,h,f);var p=i+u*A+A*3/4,g=s-o,v=i+(u+1)*A,m=s;n.quadraticCurveTo(p,g,v,m)}n.stroke()}},{key:"drawToContext",value:function(n,i,a,s,o){this.render(n,i.parsedStyle,i,i.ownerDocument.defaultView.context,s,o)}}])})(bx),iZ=(function(r){function e(){var t,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Ne(this,e),t=Ft(this,e),t.name="canvas-renderer",t.options=n,t}return Mt(e,r),Pe(e,[{key:"init",value:function(){var n,i=bt({dirtyObjectNumThreshold:500,dirtyObjectRatioThreshold:.8},this.options),a=this.context.imagePool,s=new bx(a),o=(n={},Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(n,Te.CIRCLE,s),Te.ELLIPSE,s),Te.RECT,s),Te.IMAGE,new nZ(a)),Te.TEXT,new rZ(a)),Te.LINE,s),Te.POLYLINE,s),Te.POLYGON,s),Te.PATH,s),Te.GROUP,void 0),Ye(Ye(Ye(n,Te.HTML,void 0),Te.MESH,void 0),Te.FRAGMENT,void 0));this.context.defaultStyleRendererFactory=o,this.context.styleRendererFactory=o,this.addRenderingPlugin(new rQ(i))}},{key:"destroy",value:function(){this.removeAllRenderingPlugins(),delete this.context.defaultStyleRendererFactory,delete this.context.styleRendererFactory}}])})(ko),aZ=Ut(),sZ=Ut(),oZ=Ut(),AZ=wn(),aQ=(function(){function r(){var e=this;Ne(this,r),this.isHit=function(t,n,i,a){var s=e.context.pointInPathPickerFactory[t.nodeName];if(s){var o=ts(AZ,i),A=oi(sZ,ii(oZ,n[0],n[1],0),o);if(s(t,new zr(A[0],A[1]),a,e.isPointInPath,e.context,e.runtime))return!0}return!1},this.isPointInPath=function(t,n){var i=e.runtime.offscreenCanvasCreator.getOrCreateContext(e.context.config.offscreenCanvas),a=e.context.pathGeneratorFactory[t.nodeName];return a&&(i.beginPath(),a(i,t.parsedStyle),i.closePath()),i.isPointInPath(n.x,n.y)}}return Pe(r,[{key:"apply",value:function(t,n){var i,a=this,s=t.renderingService,o=t.renderingContext;this.context=t,this.runtime=n;var A=(i=o.root)===null||i===void 0?void 0:i.ownerDocument;s.hooks.pick.tapPromise(r.tag,(function(){var l=xo(Pr().mark(function u(c){return Pr().wrap(function(d){for(;;)switch(d.prev=d.next){case 0:return d.abrupt("return",a.pick(A,c));case 1:case"end":return d.stop()}},u)}));return function(u){return l.apply(this,arguments)}})()),s.hooks.pickSync.tap(r.tag,function(l){return a.pick(A,l)})}},{key:"pick",value:function(t,n){var i=n.topmost,a=n.position,s=a.x,o=a.y,A=ii(aZ,s,o,0),l=t.elementsFromBBox(A[0],A[1],A[0],A[1]),u=[],c=ro(l),d;try{for(c.s();!(d=c.n()).done;){var h=d.value,f=h.getWorldTransform(),p=this.isHit(h,A,f,!1);if(p){var g=nU(h);if(g){var v=g.parsedStyle.clipPath,m=this.isHit(v,A,v.getWorldTransform(),!0);if(m){if(i)return n.picked=[h],n;u.push(h)}}else{if(i)return n.picked=[h],n;u.push(h)}}}}catch(y){c.e(y)}finally{c.f()}return n.picked=u,n}}])})();aQ.tag="CanvasPicker";function lZ(r,e,t){var n=r.parsedStyle,i=n.cx,a=i===void 0?0:i,s=n.cy,o=s===void 0?0:s,A=n.r,l=n.fill,u=n.stroke,c=n.lineWidth,d=c===void 0?1:c,h=n.increasedLineWidthForHitTesting,f=h===void 0?0:h,p=n.pointerEvents,g=p===void 0?"auto":p,v=(d+f)/2,m=Ls(a,o,e.x,e.y),y=EA(g,l,u),w=Tt(y,2),B=w[0],x=w[1];return B&&x||t?m<=A+v:B?m<=A:x?m>=A-v&&m<=A+v:!1}function Jd(r,e,t,n){return r/(t*t)+e/(n*n)}function uZ(r,e,t){var n=r.parsedStyle,i=n.cx,a=i===void 0?0:i,s=n.cy,o=s===void 0?0:s,A=n.rx,l=n.ry,u=n.fill,c=n.stroke,d=n.lineWidth,h=d===void 0?1:d,f=n.increasedLineWidthForHitTesting,p=f===void 0?0:f,g=n.pointerEvents,v=g===void 0?"auto":g,m=e.x,y=e.y,w=EA(v,u,c),B=Tt(w,2),x=B[0],k=B[1],_=(h+p)/2,T=(m-a)*(m-a),F=(y-o)*(y-o);return x&&k||t?Jd(T,F,A+_,l+_)<=1:x?Jd(T,F,A,l)<=1:k?Jd(T,F,A-_,l-_)>=1&&Jd(T,F,A+_,l+_)<=1:!1}function aA(r,e,t,n,i,a){return i>=r&&i<=r+t&&a>=e&&a<=e+n}function cZ(r,e,t,n,i,a,s){var o=i/2;return aA(r-o,e-o,t,i,a,s)||aA(r+t-o,e-o,i,n,a,s)||aA(r+o,e+n-o,t,i,a,s)||aA(r-o,e+o,i,n,a,s)}function eh(r,e,t,n,i,a,s,o){var A=(Math.atan2(o-e,s-r)+Math.PI*2)%(Math.PI*2),l={x:r+t*Math.cos(A),y:e+t*Math.sin(A)};return Ls(l.x,l.y,s,o)<=a/2}function ho(r,e,t,n,i,a,s){var o=Math.min(r,t),A=Math.max(r,t),l=Math.min(e,n),u=Math.max(e,n),c=i/2;return a>=o-c&&a<=A+c&&s>=l-c&&s<=u+c?L$(r,e,t,n,a,s)<=i/2:!1}function sQ(r,e,t,n,i){var a=r.length;if(a<2)return!1;for(var s=0;s<a-1;s++){var o=r[s][0],A=r[s][1],l=r[s+1][0],u=r[s+1][1];if(ho(o,A,l,u,e,t,n))return!0}if(i){var c=r[0],d=r[a-1];if(ho(c[0],c[1],d[0],d[1],e,t,n))return!0}return!1}var dZ=1e-6;function zv(r){return Math.abs(r)<dZ?0:r<0?-1:1}function hZ(r,e,t){return(t[0]-r[0])*(e[1]-r[1])===(e[0]-r[0])*(t[1]-r[1])&&Math.min(r[0],e[0])<=t[0]&&t[0]<=Math.max(r[0],e[0])&&Math.min(r[1],e[1])<=t[1]&&t[1]<=Math.max(r[1],e[1])}function oQ(r,e,t){var n=!1,i=r.length;if(i<=2)return!1;for(var a=0;a<i;a++){var s=r[a],o=r[(a+1)%i];if(hZ(s,o,[e,t]))return!0;zv(s[1]-t)>0!=zv(o[1]-t)>0&&zv(e-(t-s[1])*(s[0]-o[0])/(s[1]-o[1])-s[0])<0&&(n=!n)}return n}function b_(r,e,t){for(var n=!1,i=0;i<r.length;i++){var a=r[i];if(n=oQ(a,e,t),n)break}return n}function fZ(r,e,t){var n=r.parsedStyle,i=n.x1,a=n.y1,s=n.x2,o=n.y2,A=n.lineWidth,l=A===void 0?1:A,u=n.increasedLineWidthForHitTesting,c=u===void 0?0:u,d=n.pointerEvents,h=d===void 0?"auto":d,f=n.fill,p=n.stroke,g=EA(h,f,p),v=Tt(g,2),m=v[1];return!m&&!t||!l?!1:ho(i,a,s,o,l+c,e.x,e.y)}function gZ(r,e,t,n,i){for(var a=!1,s=e/2,o=0;o<r.length;o++){var A=r[o],l=A.currentPoint,u=A.params,c=A.prePoint,d=A.box;if(!(d&&!aA(d.x-s,d.y-s,d.width+e,d.height+e,t,n)))switch(A.command){case"L":case"Z":if(a=ho(c[0],c[1],l[0],l[1],e,t,n),a)return!0;break;case"Q":var h=H$(c[0],c[1],u[1],u[2],u[3],u[4],t,n);if(a=h<=e/2,a)return!0;break;case"C":var f=b2(c[0],c[1],u[1],u[2],u[3],u[4],u[5],u[6],t,n,i);if(a=f<=e/2,a)return!0;break;case"A":A.cubicParams||(A.cubicParams=HE(c[0],c[1],u[1],u[2],u[3],u[4],u[5],u[6],u[7],void 0));for(var p=A.cubicParams,g=c,v=0;v<p.length;v+=6){var m=b2(g[0],g[1],p[v],p[v+1],p[v+2],p[v+3],p[v+4],p[v+5],t,n,i);if(g=[p[v+4],p[v+5]],a=m<=e/2,a)return!0}break}}return a}function pZ(r,e,t,n,i,a){var s=r.parsedStyle,o=s.lineWidth,A=o===void 0?1:o,l=s.increasedLineWidthForHitTesting,u=l===void 0?0:l,c=s.stroke,d=s.fill,h=s.d,f=s.pointerEvents,p=f===void 0?"auto":f,g=h.segments,v=h.hasArc,m=h.polylines,y=h.polygons,w=EA(p,(y==null?void 0:y.length)&&d,c),B=Tt(w,2),x=B[0],k=B[1],_=mB(r),T=!1;return x||t?(v?T=n(r,e):T=b_(y,e.x,e.y)||b_(m,e.x,e.y),T):((k||t)&&(T=gZ(g,A+u,e.x,e.y,_)),T)}function vZ(r,e,t){var n=r.parsedStyle,i=n.stroke,a=n.fill,s=n.lineWidth,o=s===void 0?1:s,A=n.increasedLineWidthForHitTesting,l=A===void 0?0:A,u=n.points,c=n.pointerEvents,d=c===void 0?"auto":c,h=EA(d,a,i),f=Tt(h,2),p=f[0],g=f[1],v=!1;return(g||t)&&(v=sQ(u.points,o+l,e.x,e.y,!0)),!v&&(p||t)&&(v=oQ(u.points,e.x,e.y)),v}function mZ(r,e,t){var n=r.parsedStyle,i=n.lineWidth,a=i===void 0?1:i,s=n.increasedLineWidthForHitTesting,o=s===void 0?0:s,A=n.points,l=n.pointerEvents,u=l===void 0?"auto":l,c=n.fill,d=n.stroke,h=EA(u,c,d),f=Tt(h,2),p=f[1];return!p&&!t||!a?!1:sQ(A.points,a+o,e.x,e.y,!1)}function yZ(r,e,t,n,i){var a=r.parsedStyle,s=a.radius,o=a.fill,A=a.stroke,l=a.lineWidth,u=l===void 0?1:l,c=a.increasedLineWidthForHitTesting,d=c===void 0?0:c,h=a.x,f=h===void 0?0:h,p=a.y,g=p===void 0?0:p,v=a.width,m=a.height,y=a.pointerEvents,w=y===void 0?"auto":y,B=EA(w,o,A),x=Tt(B,2),k=x[0],_=x[1],T=s&&s.some(function(P){return P!==0}),F=u+d;if(T){var O=!1;return(_||t)&&(O=wZ(f,g,v,m,s.map(function(P){return jn(P,0,Math.min(Math.abs(v)/2,Math.abs(m)/2))}),F,e.x,e.y)),!O&&(k||t)&&(O=n(r,e)),O}else{var I=F/2;if(k&&_||t)return aA(f-I,g-I,v+I,m+I,e.x,e.y);if(k)return aA(f,g,v,m,e.x,e.y);if(_)return cZ(f,g,v,m,F,e.x,e.y)}return!1}function wZ(r,e,t,n,i,a,s,o){var A=Tt(i,4),l=A[0],u=A[1],c=A[2],d=A[3];return ho(r+l,e,r+t-u,e,a,s,o)||ho(r+t,e+u,r+t,e+n-c,a,s,o)||ho(r+t-c,e+n,r+d,e+n,a,s,o)||ho(r,e+n-d,r,e+l,a,s,o)||eh(r+t-u,e+u,u,1.5*Math.PI,2*Math.PI,a,s,o)||eh(r+t-c,e+n-c,c,0,.5*Math.PI,a,s,o)||eh(r+d,e+n-d,d,.5*Math.PI,Math.PI,a,s,o)||eh(r+l,e+l,l,Math.PI,1.5*Math.PI,a,s,o)}function bZ(r,e,t,n,i,a){var s=r.parsedStyle,o=s.pointerEvents,A=o===void 0?"auto":o,l=s.x,u=l===void 0?0:l,c=s.y,d=c===void 0?0:c,h=s.width,f=s.height;if(A==="non-transparent-pixel"){var p=i.config.offscreenCanvas,g=a.offscreenCanvasCreator.getOrCreateCanvas(p),v=a.offscreenCanvasCreator.getOrCreateContext(p,{willReadFrequently:!0});g.width=h,g.height=f,i.defaultStyleRendererFactory[Te.IMAGE].render(v,bt(bt({},r.parsedStyle),{},{x:0,y:0}),r,void 0,void 0,void 0);var m=v.getImageData(e.x-u,e.y-d,1,1).data;return m.every(function(y){return y!==0})}return!0}function BZ(r,e,t,n){var i=r.getGeometryBounds();return e.x>=i.min[0]&&e.y>=i.min[1]&&e.x<=i.max[0]&&e.y<=i.max[1]}var EZ=(function(r){function e(){var t;Ne(this,e);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return t=Ft(this,e,[].concat(i)),t.name="canvas-picker",t}return Mt(e,r),Pe(e,[{key:"init",value:function(){var n,i=(n={},Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(n,Te.CIRCLE,lZ),Te.ELLIPSE,uZ),Te.RECT,yZ),Te.LINE,fZ),Te.POLYLINE,mZ),Te.POLYGON,vZ),Te.PATH,pZ),Te.TEXT,BZ),Te.GROUP,null),Te.IMAGE,bZ),Ye(Ye(n,Te.HTML,null),Te.MESH,null));this.context.pointInPathPickerFactory=i,this.addRenderingPlugin(new aQ)}},{key:"destroy",value:function(){delete this.context.pointInPathPickerFactory,this.removeAllRenderingPlugins()}}])})(ko);function xZ(r,e){var t=e.cx,n=t===void 0?0:t,i=e.cy,a=i===void 0?0:i,s=e.r;r.arc(n,a,s,0,Math.PI*2,!1)}function CZ(r,e){var t=e.cx,n=t===void 0?0:t,i=e.cy,a=i===void 0?0:i,s=e.rx,o=e.ry;if(r.ellipse)r.ellipse(n,a,s,o,0,0,Math.PI*2,!1);else{var A=s>o?s:o,l=s>o?1:s/o,u=s>o?o/s:1;r.save(),r.scale(l,u),r.arc(n,a,A,0,Math.PI*2)}}function SZ(r,e){var t=e.x1,n=e.y1,i=e.x2,a=e.y2,s=e.markerStart,o=e.markerEnd,A=e.markerStartOffset,l=e.markerEndOffset,u=0,c=0,d=0,h=0,f=0,p,g;s&&Zt(s)&&A&&(p=i-t,g=a-n,f=Math.atan2(g,p),u=Math.cos(f)*(A||0),c=Math.sin(f)*(A||0)),o&&Zt(o)&&l&&(p=t-i,g=n-a,f=Math.atan2(g,p),d=Math.cos(f)*(l||0),h=Math.sin(f)*(l||0)),r.moveTo(t+u,n+c),r.lineTo(i+d,a+h)}function _Z(r,e){var t=e.markerStart,n=e.markerEnd,i=e.markerStartOffset,a=e.markerEndOffset,s=e.d,o=s.absolutePath,A=s.segments,l=0,u=0,c=0,d=0,h=0,f,p;if(t&&Zt(t)&&i){var g=t.parentNode.getStartTangent(),v=Tt(g,2),m=v[0],y=v[1];f=m[0]-y[0],p=m[1]-y[1],h=Math.atan2(p,f),l=Math.cos(h)*(i||0),u=Math.sin(h)*(i||0)}if(n&&Zt(n)&&a){var w=n.parentNode.getEndTangent(),B=Tt(w,2),x=B[0],k=B[1];f=x[0]-k[0],p=x[1]-k[1],h=Math.atan2(p,f),c=Math.cos(h)*(a||0),d=Math.sin(h)*(a||0)}for(var _=0;_<o.length;_++){var T=o[_],F=T[0],I=o[_+1],O=_===0&&(l!==0||u!==0),P=(_===o.length-1||I&&(I[0]==="M"||I[0]==="Z"))&&c!==0&&d!==0,G=O?[l,u]:[0,0],ee=Tt(G,2),te=ee[0],N=ee[1],K=P?[c,d]:[0,0],J=Tt(K,2),be=J[0],re=J[1];switch(F){case"M":r.moveTo(T[1]+te,T[2]+N);break;case"L":r.lineTo(T[1]+be,T[2]+re);break;case"Q":r.quadraticCurveTo(T[1],T[2],T[3]+be,T[4]+re);break;case"C":r.bezierCurveTo(T[1],T[2],T[3],T[4],T[5]+be,T[6]+re);break;case"A":{var ne=A[_].arcParams,ue=ne.cx,Y=ne.cy,U=ne.rx,W=ne.ry,ie=ne.startAngle,Ee=ne.endAngle,de=ne.xRotation,X=ne.sweepFlag;if(r.ellipse)r.ellipse(ue,Y,U,W,de,ie,Ee,!!(1-X));else{var xe=U>W?U:W,ce=U>W?1:U/W,De=U>W?W/U:1;r.translate(ue,Y),r.rotate(de),r.scale(ce,De),r.arc(0,0,xe,ie,Ee,!!(1-X)),r.scale(1/ce,1/De),r.rotate(-de),r.translate(-ue,-Y)}P&&r.lineTo(T[6]+c,T[7]+d);break}case"Z":r.closePath();break}}}function kZ(r,e){var t=e.markerStart,n=e.markerEnd,i=e.markerStartOffset,a=e.markerEndOffset,s=e.points.points,o=s.length,A=s[0][0],l=s[0][1],u=s[o-1][0],c=s[o-1][1],d=0,h=0,f=0,p=0,g=0,v,m;t&&Zt(t)&&i&&(v=s[1][0]-s[0][0],m=s[1][1]-s[0][1],g=Math.atan2(m,v),d=Math.cos(g)*(i||0),h=Math.sin(g)*(i||0)),n&&Zt(n)&&a&&(v=s[o-1][0]-s[0][0],m=s[o-1][1]-s[0][1],g=Math.atan2(m,v),f=Math.cos(g)*(a||0),p=Math.sin(g)*(a||0)),r.moveTo(A+(d||f),l+(h||p));for(var y=1;y<o-1;y++){var w=s[y];r.lineTo(w[0],w[1])}r.lineTo(u,c)}function TZ(r,e){var t=e.markerStart,n=e.markerEnd,i=e.markerStartOffset,a=e.markerEndOffset,s=e.points.points,o=s.length,A=s[0][0],l=s[0][1],u=s[o-1][0],c=s[o-1][1],d=0,h=0,f=0,p=0,g=0,v,m;t&&Zt(t)&&i&&(v=s[1][0]-s[0][0],m=s[1][1]-s[0][1],g=Math.atan2(m,v),d=Math.cos(g)*(i||0),h=Math.sin(g)*(i||0)),n&&Zt(n)&&a&&(v=s[o-2][0]-s[o-1][0],m=s[o-2][1]-s[o-1][1],g=Math.atan2(m,v),f=Math.cos(g)*(a||0),p=Math.sin(g)*(a||0)),r.moveTo(A+d,l+h);for(var y=1;y<o-1;y++){var w=s[y];r.lineTo(w[0],w[1])}r.lineTo(u+f,c+p)}function FZ(r,e){var t=e.x,n=t===void 0?0:t,i=e.y,a=i===void 0?0:i,s=e.radius,o=e.width,A=e.height,l=o,u=A,c=s&&s.some(function(B){return B!==0});if(!c)r.rect(n,a,l,u);else{var d=o>0?1:-1,h=A>0?1:-1,f=d+h===0,p=s.map(function(B){return jn(B,0,Math.min(Math.abs(l)/2,Math.abs(u)/2))}),g=Tt(p,4),v=g[0],m=g[1],y=g[2],w=g[3];r.moveTo(d*v+n,a),r.lineTo(l-d*m+n,a),m!==0&&r.arc(l-d*m+n,h*m+a,m,-h*Math.PI/2,d>0?0:Math.PI,f),r.lineTo(l+n,u-h*y+a),y!==0&&r.arc(l-d*y+n,u-h*y+a,y,d>0?0:Math.PI,h>0?Math.PI/2:1.5*Math.PI,f),r.lineTo(d*w+n,u+a),w!==0&&r.arc(d*w+n,u-h*w+a,w,h>0?Math.PI/2:-Math.PI/2,d>0?Math.PI:0,f),r.lineTo(n,h*v+a),v!==0&&r.arc(d*v+n,h*v+a,v,d>0?Math.PI:0,h>0?Math.PI*1.5:Math.PI/2,f)}}var MZ=(function(r){function e(){var t;Ne(this,e);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return t=Ft(this,e,[].concat(i)),t.name="canvas-path-generator",t}return Mt(e,r),Pe(e,[{key:"init",value:function(){var n,i=(n={},Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(Ye(n,Te.CIRCLE,xZ),Te.ELLIPSE,CZ),Te.RECT,FZ),Te.LINE,SZ),Te.POLYLINE,TZ),Te.POLYGON,kZ),Te.PATH,_Z),Te.TEXT,void 0),Te.GROUP,void 0),Te.IMAGE,void 0),Ye(Ye(Ye(n,Te.HTML,void 0),Te.MESH,void 0),Te.FRAGMENT,void 0));this.context.pathGeneratorFactory=i}},{key:"destroy",value:function(){delete this.context.pathGeneratorFactory}}])})(ko),IZ=(function(){function r(e){Ne(this,r),this.renderingContext=e.renderingContext,this.canvasConfig=e.config}return Pe(r,[{key:"init",value:function(){var t=this.canvasConfig,n=t.container,i=t.canvas;if(i)this.$canvas=i,n&&i.parentElement!==n&&n.appendChild(i),this.$container=i.parentElement,this.canvasConfig.container=this.$container;else if(n&&(this.$container=ln(n)?document.getElementById(n):n,this.$container)){var a=document.createElement("canvas");this.$container.appendChild(a),this.$container.style.position||(this.$container.style.position="relative"),this.$canvas=a}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(t,n){var i=this.canvasConfig.devicePixelRatio;this.dpr=i,this.$canvas&&(this.$canvas.width=this.dpr*t,this.$canvas.height=this.dpr*n,Wz(this.$canvas,t,n)),this.renderingContext.renderReasons.add(pl.CAMERA_CHANGED)}},{key:"applyCursorStyle",value:function(t){this.$container&&this.$container.style&&(this.$container.style.cursor=t)}},{key:"toDataURL",value:(function(){var e=xo(Pr().mark(function n(){var i,a,s,o=arguments;return Pr().wrap(function(A){for(;;)switch(A.prev=A.next){case 0:return i=o.length>0&&o[0]!==void 0?o[0]:{},a=i.type,s=i.encoderOptions,A.abrupt("return",this.context.canvas.toDataURL(a,s));case 1:case"end":return A.stop()}},n,this)}));function t(){return e.apply(this,arguments)}return t})()}])})(),OZ=(function(r){function e(){var t;Ne(this,e);for(var n=arguments.length,i=new Array(n),a=0;a<n;a++)i[a]=arguments[a];return t=Ft(this,e,[].concat(i)),t.name="canvas-context-register",t}return Mt(e,r),Pe(e,[{key:"init",value:function(){this.context.ContextService=IZ}},{key:"destroy",value:function(){delete this.context.ContextService}}])})(ko),sc=(function(r){function e(t){var n;return Ne(this,e),n=Ft(this,e,[t]),n.registerPlugin(new OZ),n.registerPlugin(new xK.Plugin),n.registerPlugin(new MZ),n.registerPlugin(new iZ),n.registerPlugin(new TK.Plugin),n.registerPlugin(new EZ),n.registerPlugin(new _K.Plugin),n}return Mt(e,r),Pe(e)})(V$),LZ=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};class gg extends Ua{constructor(e){super(Object.assign(Object.assign({},e),{style:Object.assign({},gg.defaultStyleProps,e.style)})),this.rootPointerEvent=new sf(null),this.forwardEvents=t=>{const n=this.context.canvas,i=n.context.renderingContext.root.ownerDocument.defaultView;this.normalizeToPointerEvent(t,i).forEach(s=>{const o=this.bootstrapEvent(this.rootPointerEvent,s,i,t);Yu(n.context.eventService,"mappingTable.pointerupoutside",[]),n.context.eventService.mapEvent(o)})}}get eventService(){return this.context.canvas.context.eventService}get events(){return[_e.CLICK,_e.POINTER_DOWN,_e.POINTER_MOVE,_e.POINTER_UP,_e.POINTER_OVER,_e.POINTER_LEAVE]}getDomElement(){return this.getShape("key").getDomElement()}render(e=this.parsedAttributes,t=this){this.drawKeyShape(e,t),this.drawPortShapes(e,t)}getKeyStyle(e){const t=yc(e,["dx","dy","innerHTML","pointerEvents","cursor"]),{dx:n=0,dy:i=0}=t,a=LZ(t,["dx","dy"]),[s,o]=this.getSize(e);return Object.assign(Object.assign({x:n,y:i},a),{width:s,height:o})}drawKeyShape(e,t){const n=this.getKeyStyle(e),{x:i,y:a,width:s=0,height:o=0}=n,A=this.upsert("key-container",jr,{x:i,y:a,width:s,height:o,opacity:0},t);return this.upsert("key",xA,n,A)}connectedCallback(){if(!(this.context.canvas.getRenderer("main")instanceof sc))return;const n=this.getDomElement();this.events.forEach(i=>{n.addEventListener(i,this.forwardEvents)})}attributeChangedCallback(e,t,n){e==="zIndex"&&t!==n&&(this.getDomElement().style.zIndex=n)}destroy(){const e=this.getDomElement();this.events.forEach(t=>{e.removeEventListener(t,this.forwardEvents)}),super.destroy()}normalizeToPointerEvent(e,t){const n=[];if(t.isTouchEvent(e))for(let i=0;i<e.changedTouches.length;i++){const a=e.changedTouches[i];Bt(a.button)&&(a.button=0),Bt(a.buttons)&&(a.buttons=1),Bt(a.isPrimary)&&(a.isPrimary=e.touches.length===1&&e.type==="touchstart"),Bt(a.width)&&(a.width=a.radiusX||1),Bt(a.height)&&(a.height=a.radiusY||1),Bt(a.tiltX)&&(a.tiltX=0),Bt(a.tiltY)&&(a.tiltY=0),Bt(a.pointerType)&&(a.pointerType="touch"),Bt(a.pointerId)&&(a.pointerId=a.identifier||0),Bt(a.pressure)&&(a.pressure=a.force||.5),Bt(a.twist)&&(a.twist=0),Bt(a.tangentialPressure)&&(a.tangentialPressure=0),a.isNormalized=!0,a.type=e.type,n.push(a)}else if(t.isMouseEvent(e)){const i=e;Bt(i.isPrimary)&&(i.isPrimary=!0),Bt(i.width)&&(i.width=1),Bt(i.height)&&(i.height=1),Bt(i.tiltX)&&(i.tiltX=0),Bt(i.tiltY)&&(i.tiltY=0),Bt(i.pointerType)&&(i.pointerType="mouse"),Bt(i.pointerId)&&(i.pointerId=1),Bt(i.pressure)&&(i.pressure=.5),Bt(i.twist)&&(i.twist=0),Bt(i.tangentialPressure)&&(i.tangentialPressure=0),i.isNormalized=!0,n.push(i)}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,i){e.view=n,e.originalEvent=null,e.nativeEvent=i,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);const{x:a,y:s}=this.getViewportXY(t);e.viewport.x=a,e.viewport.y=s;const[o,A]=this.context.canvas.getCanvasByViewport([a,s]);return e.canvas.x=o,e.canvas.y=A,e.global.copyFrom(e.canvas),e.offset.copyFrom(e.canvas),e.isTrusted=i.isTrusted,e.type==="pointerleave"&&(e.type="pointerout"),e}getViewportXY(e){let t,n;const{offsetX:i,offsetY:a,clientX:s,clientY:o}=e;if(!ut(i)&&!ut(a))t=i,n=a;else{const A=this.eventService.client2Viewport({x:s,y:o});t=A.x,n=A.y}return{x:t,y:n}}onframe(){super.onframe();const{opacity:e}=this.attributes;this.getDomElement().style.opacity=`${e}`}}gg.defaultStyleProps={size:[160,80],halo:!1,icon:!1,label:!1,pointerEvents:"auto"};var B_=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};let AQ=class lQ extends Ua{constructor(e){super(Qr({style:lQ.defaultStyleProps},e))}getKeyStyle(e){const[t,n]=this.getSize(e),i=super.getKeyStyle(e),{fillOpacity:a,opacity:s=a}=i,o=B_(i,["fillOpacity","opacity"]);return Object.assign(Object.assign({opacity:s},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;const t=this.getShape("key").attributes,{fill:n,stroke:i}=t;B_(t,["fill","stroke"]);const a=Kn(this.getGraphicStyle(e),"halo"),s=Number(a.lineWidth),[o,A]=xt(hs(this.getSize(e)),[s,s]),{lineWidth:l}=a,u={fill:"transparent",lineWidth:l/2,width:o-l/2,height:A-l/2,x:-(o-l/2)/2,y:-(A-l/2)/2};return Object.assign(Object.assign({},a),u)}getIconStyle(e){const t=super.getIconStyle(e),[n,i]=this.getSize(e);return t?Object.assign({width:n*Us,height:i*Us},t):!1}drawKeyShape(e,t){const n=this.upsert("key",mx,this.getKeyStyle(e),t);return yx(this),n}drawHaloShape(e,t){this.upsert("halo",jr,this.getHaloStyle(e),t)}update(e){super.update(e),e&&("x"in e||"y"in e||"z"in e)&&wx(this)}};AQ.defaultStyleProps={size:32};class NZ extends Ua{constructor(e){super(e)}getKeyStyle(e){const[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){const t=super.getIconStyle(e),{width:n,height:i}=this.getShape("key").attributes;return t?Object.assign({width:n*Us,height:i*Us},t):!1}drawKeyShape(e,t){return this.upsert("key",jr,this.getKeyStyle(e),t)}}class PZ extends dg{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 yJ(this.getOuterR(e),this.getInnerR(e))}getIconStyle(e){const t=super.getIconStyle(e),n=this.getInnerR(e)*2*Us;return t?Object.assign({width:n,height:n},t):!1}getPortXY(e,t){const{placement:n="top"}=t,i=this.getShape("key").getLocalBounds(),a=wJ(this.getOuterR(e),this.getInnerR(e));return Sx(i,n,a,!1)}}class pg extends dg{constructor(e){super(Qr({style:pg.defaultStyleProps},e))}getPoints(e){const{direction:t}=e,[n,i]=this.getSize(e);return bJ(n,i,t)}getPortXY(e,t){const{direction:n}=e,{placement:i="top"}=t,a=this.getShape("key").getLocalBounds(),[s,o]=this.getSize(e),A=BJ(s,o,n);return Sx(a,i,A,!1)}getIconStyle(e){const{icon:t,iconText:n,iconSrc:i,direction:a}=e;if(t===!1||Ja(n||i))return!1;const s=Kn(this.getGraphicStyle(e),"icon"),o=this.getShape("key").getLocalBounds(),[A,l]=zY(o,a),u=VY(o,a)*2*Us;return Object.assign({x:A,y:l,width:u,height:u},s)}}pg.defaultStyleProps={size:40,direction:"up"};var E_=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};class Nl extends Ua{constructor(e){super(Qr({style:Nl.defaultStyleProps},e)),this.type="combo",this.updateComboPosition(this.parsedAttributes)}getKeySize(e){const{collapsed:t,childrenNode:n=[]}=e;return n.length===0?this.getEmptyKeySize(e):t?this.getCollapsedKeySize(e):this.getExpandedKeySize(e)}getEmptyKeySize(e){const{padding:t,collapsedSize:n}=e,[i,a,s,o]=ga(t);return xt(Yi(n),[o+a,i+s,0])}getCollapsedKeySize(e){return Yi(e.collapsedSize)}getExpandedKeySize(e){const t=this.getContentBBox(e);return[ms(t),ys(t),0]}getContentBBox(e){const{childrenNode:t=[],padding:n}=e,i=t.map(s=>this.context.element.getElement(s)).filter(Boolean);if(i.length===0){const s=new kn,{x:o=0,y:A=0,size:l}=e,[u,c]=Yi(l);return s.setMinMax([o-u/2,A-c/2,0],[o+u/2,A+c/2,0]),s}const a=kc(i.map(s=>s.getBounds()));return n?Fo(a,n):a}drawCollapsedMarkerShape(e,t){const n=this.getCollapsedMarkerStyle(e);this.upsert("collapsed-marker",eQ,n,t),yx(this)}getCollapsedMarkerStyle(e){if(!e.collapsed||!e.collapsedMarker)return!1;const t=Kn(this.getGraphicStyle(e),"collapsedMarker"),{type:n}=t,i=E_(t,["type"]),a=this.getShape("key"),[s,o]=ks(a.getLocalBounds(),"center"),A=Object.assign(Object.assign({},i),{x:s,y:o});if(n){const l=this.getCollapsedMarkerText(n,e);Object.assign(A,{text:l})}return A}getCollapsedMarkerText(e,t){const{childrenData:n=[]}=t,{model:i}=this.context;return e==="descendant-count"?i.getDescendantsData(this.id).length.toString():e==="child-count"?n.length.toString():e==="node-count"?i.getDescendantsData(this.id).filter(a=>i.getElementType(ve(a))==="node").length.toString():At(e)?e(n):""}getComboPosition(e){const{x:t=0,y:n=0,collapsed:i,childrenData:a=[]}=e;if(a.length===0)return[+t,+n,0];if(i){const{model:s}=this.context,o=s.getDescendantsData(this.id).filter(A=>!s.isCombo(ve(A)));if(o.length>0&&o.some(vX)){const A=o.reduce((l,u)=>xt(l,_r(u)),[0,0,0]);return Oa(A,o.length)}return[+t,+n,0]}return this.getContentBBox(e).center}getComboStyle(e){const[t,n]=this.getComboPosition(e);return{x:t,y:n,transform:[["translate",t,n]]}}updateComboPosition(e){const t=this.getComboStyle(e);Object.assign(this.style,t);const{x:n,y:i}=t;this.context.model.syncNodeLikeDatum({id:this.id,style:{x:n,y:i}}),wx(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){const n=super.animate(this.attributes.collapsed?e:e.map(i=>{var{x:a,y:s,z:o,transform:A}=i,l=E_(i,["x","y","z","transform"]);return l}),t);return n&&new Proxy(n,{set:(i,a,s)=>(a==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(i,a,s))})}}Nl.defaultStyleProps={childrenNode:[],droppable:!0,draggable:!0,collapsed:!1,collapsedSize:32,collapsedMarker:!0,collapsedMarkerZIndex:1,collapsedMarkerFontSize:12,collapsedMarkerTextAlign:"center",collapsedMarkerTextBaseline:"middle",collapsedMarkerType:"child-count"};class UZ extends Nl{constructor(e){super(e)}drawKeyShape(e,t){return this.upsert("key",us,this.getKeyStyle(e),t)}getKeyStyle(e){const{collapsed:t}=e,n=super.getKeyStyle(e),[i]=this.getKeySize(e);return Object.assign(Object.assign(Object.assign({},n),t&&Kn(n,"collapsed")),{r:i/2})}getCollapsedKeySize(e){const[t,n]=Yi(e.collapsedSize),i=Math.max(t,n)/2;return[i*2,i*2,0]}getExpandedKeySize(e){const t=this.getContentBBox(e),[n,i]=To(t),a=Math.sqrt(Math.pow(n,2)+Math.pow(i,2))/2;return[a*2,a*2,0]}getIntersectPoint(e,t=!1){const n=this.getShape("key").getBounds();return ug(e,n,t)}}class RZ extends Nl{constructor(e){super(e)}drawKeyShape(e,t){return this.upsert("key",jr,this.getKeyStyle(e),t)}getKeyStyle(e){const t=super.getKeyStyle(e),[n,i]=this.getKeySize(e);return Object.assign(Object.assign(Object.assign({},t),e.collapsed&&Kn(t,"collapsed")),{width:n,height:i,x:-n/2,y:-i/2})}}const QZ={padding:10};function x_(r,e,t,n,i,a){const{padding:s}=Object.assign(QZ,a),o=uo(t,s),A=uo(n,s),l=[r,...i,e];let u=null;const c=[];for(let d=0,h=l.length;d<h-1;d++){const f=d+1,p=l[d],g=l[f],v=wX(p,g);let m=null;if(d===0)if(f===h-1)if(o.intersects(A))m=Vv(p,g,o,A);else if(!vf(p,o)&&!vf(g,A)){const y=dA(p,o),w=dA(g,A);m=S_(y,w,bi(y,w)),m.points.unshift(y),m.points.push(w)}else v||(m=HZ(p,g,o,A));else Ia(g,o)?m=Vv(p,g,o,uo(g,s),u):v||(m=kh(p,g,o));else f===h-1?Ia(p,A)?m=Vv(p,g,uo(p,s),A,u):v||(m=uQ(p,g,A,u)):v||(m=S_(p,g,u));m?(c.push(...m.points),u=m.direction):u=bi(p,g),f<h-1&&c.push(g)}return c.map(hs)}const DZ={N:"S",S:"N",W:"E",E:"W"},C_={N:-Math.PI/2,S:Math.PI/2,E:0,W:Math.PI};function bi(r,e){const[t,n]=r,[i,a]=e;return t===i?n>a?"N":"S":n===a?t>i?"W":"E":null}function qB(r,e){return e==="N"||e==="S"?ys(r):ms(r)}function S_(r,e,t){const n=[r[0],e[1]],i=[e[0],r[1]],a=bi(r,n),s=bi(r,i),o=t?DZ[t]:null,A=a===t||a!==o&&s!==t?n:i;return{points:[A],direction:bi(A,e)}}function kh(r,e,t){if(vf(r,t)){const n=oc(r,e,t);return{points:[n],direction:bi(n,e)}}else{const n=dA(r,t),a=["left","right"].includes(zu(r,t))?[e[0],n[1]]:[n[0],e[1]];return{points:[a],direction:bi(a,e)}}}function uQ(r,e,t,n){const i=vf(e,t)?e:dA(e,t),a=[[i[0],r[1]],[r[0],i[1]]],s=a.filter(A=>GY(A,t)&&!MR(A,t,!0)),o=s.filter(A=>bi(A,r)!==n);if(o.length>0){const A=o.find(l=>bi(r,l)===n)||o[0];return{points:[A],direction:bi(A,e)}}else{const A=C8(a,s)[0],l=Bo(e,A,qB(t,n)/2);return{points:[oc(l,r,t),l],direction:bi(l,e)}}}function HZ(r,e,t,n){let i=kh(r,e,t);const a=ac(i.points[0]);if(Ia(a,n)){i=kh(e,r,n);const s=ac(i.points[0]);if(Ia(s,t)){const o=Bo(r,a,qB(t,bi(r,a))/2),A=Bo(e,s,qB(n,bi(e,s))/2),l=[(o[0]+A[0])/2,(o[1]+A[1])/2],u=kh(r,l,t),c=uQ(l,e,n,u.direction);i.points=[u.points[0],c.points[0]],i.direction=c.direction}}return i}function Vv(r,e,t,n,i){const s=kc([t,n]),o=Bn(e,s.center)>Bn(r,s.center),[A,l]=o?[e,r]:[r,e],u=ys(s)+ms(s);let c;if(i){const f=[A[0]+u*Math.cos(C_[i]),A[1]+u*Math.sin(C_[i])];c=Bo(dA(f,s),f,.01)}else c=Bo(dA(A,s),A,-.01);let d=oc(c,l,s),h=[uu(c,2),uu(d,2)];if(Qn(uu(c),uu(d))){const f=gx(hn(c,A),[1,0,0])+Math.PI/2;d=[l[0]+u*Math.cos(f),l[1]+u*Math.sin(f),0],d=uu(Bo(dA(d,s),l,-.01),2);const p=oc(c,d,s);h=[c,p,d]}return{points:o?h.reverse():h,direction:bi(o?c:d,e)}}function oc(r,e,t){let n=[r[0],e[1]];return Ia(n,t)&&(n=[e[0],r[1]]),n}const $Z={top:0,bottom:0,left:Math.PI/2,right:Math.PI/2,"top-right":Math.PI/4,"right-top":Math.PI/4,"bottom-left":Math.PI/4,"left-bottom":Math.PI/4,"right-bottom":-Math.PI/4,"bottom-right":-Math.PI/4,"left-top":-Math.PI/4,"top-left":-Math.PI/4};function cQ(r,e,t,n,i,a,s){var o;let c=typeof e=="number"?e:.5;if(e==="start"&&(c=0),e==="end"&&(c=.99),a&&s){c=.5,n=0,i=0;let w=(o=$Z[s])!==null&&o!==void 0?o:0;Math.cos(w)<-1e-6&&(w+=Math.PI);const B=t&&w!==0,[x,k]=Kv(r,c,n,i,B?w:void 0),_=[["translate",x,k]];return B&&_.push(["rotate",w/Math.PI*180]),{textAlign:"center",transform:_}}const d=Vr(r.getPoint(c)),h=Vr(r.getPoint(c+.01));let f=e==="start"?"left":e==="end"?"right":"center";if(GR(d,h)||!t){const[w,B]=Kv(r,c,n,i);return{transform:[["translate",w,B]],textAlign:f}}let p=Math.atan2(h[1]-d[1],h[0]-d[0]);h[0]<d[0]&&(f=f==="center"?f:f==="left"?"right":"left",n*=-1,p+=Math.PI);const[v,m]=Kv(r,c,n,i,p),y=[["translate",v,m],["rotate",p/Math.PI*180]];return{textAlign:f,transform:y}}function GZ(r,e,t,n,i){var a,s;const o=((a=r.badge)===null||a===void 0?void 0:a.getGeometryBounds().halfExtents[0])*2||0,A=((s=r.label)===null||s===void 0?void 0:s.getGeometryBounds().halfExtents[0])*2||0;return cQ(r.key,t,!0,(A?(A/2+o/2)*(e==="suffix"?1:-1):0)+n,i)}function Kv(r,e,t,n,i){const[a,s]=Vr(r.getPoint(e));let o=t,A=n;return i&&(o=t*Math.cos(i)-n*Math.sin(i),A=t*Math.sin(i)+n*Math.cos(i)),[a+o,s+A]}function YB(r,e,t,n){if(Qn(r,e))return r;const i=hn(e,r),a=[r[0]+t*i[0],r[1]+t*i[1]],s=As(lg(i,!1));return a[0]+=n*s[0],a[1]+=n*s[1],a}function zZ(r){return Yt(r)?[r,-r]:r}function VZ(r){return Yt(r)?[r,1-r]:r}function KZ(r,e,t){return[["M",r[0],r[1]],["Q",t[0],t[1],e[0],e[1]]]}function Bx(r,e,t){return[["M",r[0],r[1]],["C",t[0][0],t[0][1],t[1][0],t[1][1],e[0],e[1]]]}function Ex(r,e=0,t=!1){const n=r.length-1,i=r[0],a=r[n],s=r.slice(1,n),o=[["M",i[0],i[1]]];return s.forEach((A,l)=>{const u=s[l-1]||i,c=s[l+1]||a;if(!zR(u,A,c)&&e){const[d,h]=jZ(u,A,c,e);o.push(["L",d[0],d[1]],["Q",A[0],A[1],h[0],h[1]],["L",h[0],h[1]])}else o.push(["L",A[0],A[1]])}),o.push(["L",a[0],a[1]]),t&&o.push(["Z"]),o}function jZ(r,e,t,n){const i=mf(r,e),a=mf(t,e),s=Math.min(n,Math.min(i,a)/2),o=[e[0]-s/i*(e[0]-r[0]),e[1]-s/i*(e[1]-r[1])],A=[e[0]-s/a*(e[0]-t[0]),e[1]-s/a*(e[1]-t[1])];return[o,A]}const WZ=r=>{const e=Math.PI/2,t=ys(r)/2,n=ms(r)/2,i=Math.atan2(t,n)/2,a=Math.atan2(n,t)/2;return{top:[-e-a,-e+a],"top-right":[-e+a,-i],"right-top":[-e+a,-i],right:[-i,i],"bottom-right":[i,e-a],"right-bottom":[i,e-a],bottom:[e-a,e+a],"bottom-left":[e+a,Math.PI-i],"left-bottom":[e+a,Math.PI-i],left:[Math.PI-i,Math.PI+i],"top-left":[Math.PI+i,-e-a],"left-top":[Math.PI+i,-e-a]}};function xx(r,e,t,n,i){const a=uo(r),s=r.getCenter();let o=n&&So(n),A=i&&So(i);if(!o||!A){const l=WZ(a),u=l[e][0],c=l[e][1],[d,h]=To(a),f=Math.max(d,h),p=xt(s,[f*Math.cos(u),f*Math.sin(u),0]),g=xt(s,[f*Math.cos(c),f*Math.sin(c),0]);o=ZB(r,p),A=ZB(r,g),t||([o,A]=[A,o])}return[o,A]}function qZ(r,e,t,n,i,a){const s=r.getPorts()[i||a],o=r.getPorts()[a||i];let[A,l]=xx(r,e,t,s,o);const u=dQ(r,A,l,n);return s&&(A=Ms(s,u[0])),o&&(l=Ms(o,u.at(-1))),Bx(A,l,u)}function YZ(r,e,t,n,i,a){const s=r.getPorts()[i||a],o=r.getPorts()[a||i];let[A,l]=xx(r,e,t,s,o);if(Qn(A,l)){const P=dQ(r,A,l,n);return s&&(A=Ms(s,P[0])),o&&(l=Ms(o,P.at(-1))),Bx(A,l,P)}const u=r.getCenter(),c=[(A[0]+l[0])/2,(A[1]+l[1])/2,0],h=Bn(u,c)>1e-6?As(hn(c,u)):[0,-1,0],f=Bn(A,l),p=Math.max(Math.abs(n),.01),g=(f*f+4*p*p)/(8*p),v=[c[0]+h[0]*p,c[1]+h[1]*p,0],m=[c[0]+h[0]*(p-g),c[1]+h[1]*(p-g),0],y=2*Math.PI,w=Math.atan2(A[1]-m[1],A[0]-m[0]),B=Math.atan2(l[1]-m[1],l[0]-m[0]),x=Math.atan2(v[1]-m[1],v[0]-m[0]),k=((B-w)%y+y)%y,T=((x-w)%y+y)%y<=k+1e-6,F=T?1:0,O=(T?k:y-k)>Math.PI?1:0;if(s){const P=[A[0]-m[0],A[1]-m[1],0],G=F===1?[-P[1],P[0],0]:[P[1],-P[0],0];A=Ms(s,xt(A,G))}if(o){const P=[l[0]-m[0],l[1]-m[1],0],G=F===1?[P[1],-P[0],0]:[-P[1],P[0],0];l=Ms(o,xt(l,G))}return[["M",A[0],A[1]],["A",g,g,0,O,F,l[0],l[1]]]}function dQ(r,e,t,n){const i=r.getCenter();if(Qn(e,t)){const a=hn(e,i),s=[n*Math.sign(a[0])||n/2,n*Math.sign(a[1])||-n/2,0];return[xt(e,s),xt(t,_a(s,[1,-1,1]))]}return[Bo(i,e,Bn(i,e)+n),Bo(i,t,Bn(i,t)+n)]}function XZ(r,e,t,n,i,a,s){const o=_x(r),A=o[a||s],l=o[s||a];let[u,c]=xx(r,t,n,A,l);const d=ZZ(r,u,c,i);return A&&(u=Ms(A,d[0])),l&&(c=Ms(l,d.at(-1))),Ex([u,...d,c],e)}function ZZ(r,e,t,n){const i=[],a=uo(r);if(Qn(e,t))switch(zu(e,a)){case"left":i.push([e[0]-n,e[1]]),i.push([e[0]-n,e[1]+n]),i.push([e[0],e[1]+n]);break;case"right":i.push([e[0]+n,e[1]]),i.push([e[0]+n,e[1]+n]),i.push([e[0],e[1]+n]);break;case"top":i.push([e[0],e[1]-n]),i.push([e[0]+n,e[1]-n]),i.push([e[0]+n,e[1]]);break;case"bottom":i.push([e[0],e[1]+n]),i.push([e[0]+n,e[1]+n]),i.push([e[0]+n,e[1]]);break}else{const s=zu(e,a),o=zu(t,a);if(s===o){const A=s;let l,u;switch(A){case"left":l=Math.min(e[0],t[0])-n,i.push([l,e[1]]),i.push([l,t[1]]);break;case"right":l=Math.max(e[0],t[0])+n,i.push([l,e[1]]),i.push([l,t[1]]);break;case"top":u=Math.min(e[1],t[1])-n,i.push([e[0],u]),i.push([t[0],u]);break;case"bottom":u=Math.max(e[1],t[1])+n,i.push([e[0],u]),i.push([t[0],u]);break}}else{const A=(d,h)=>({left:[h[0]-n,h[1]],right:[h[0]+n,h[1]],top:[h[0],h[1]-n],bottom:[h[0],h[1]+n]})[d],l=A(s,e),u=A(o,t),c=oc(l,u,a);i.push(l,c,u)}}return i}function XB(r,e){const t=new Set,n=new Set,i=new Set;return r.forEach(a=>{e(a).forEach(o=>{t.add(o),r.includes(o.source)&&r.includes(o.target)?n.add(o):i.add(o)})}),{edges:Array.from(t),internal:Array.from(n),external:Array.from(i)}}function __(r,e){const t=[];let n=r;for(;n;){t.push(n);const i=e(ve(n));if(i)n=i;else break}if(t.some(i=>{var a;return(a=i.style)===null||a===void 0?void 0:a.collapsed})){const i=t.reverse().findIndex(Mi);return t[i]||t.at(-1)}return r}function JZ(r,e){return e||(r<4?10:r===4?12:r*2.5)}const eJ=(r,e)=>{const t=Math.max(r,e)/2;return[["M",-r/2,0],["A",t,t,0,1,0,2*t-r/2,0],["A",t,t,0,1,0,-r/2,0],["Z"]]},hQ=(r,e)=>[["M",-r/2,0],["L",r/2,-e/2],["L",r/2,e/2],["Z"]],tJ=(r,e)=>[["M",-r/2,0],["L",0,-e/2],["L",r/2,0],["L",0,e/2],["Z"]],nJ=(r,e)=>[["M",-r/2,0],["L",r/2,-e/2],["L",4*r/5-r/2,0],["L",r/2,e/2],["Z"]],rJ=(r,e)=>[["M",-r/2,-e/2],["L",r/2,-e/2],["L",r/2,e/2],["L",-r/2,e/2],["Z"]],iJ=(r,e)=>{const t=r/2,n=r/7,i=r-n;return[["M",-t,0],["L",0,-e/2],["L",0,e/2],["Z"],["M",i-t,-e/2],["L",i+n-t,-e/2],["L",i+n-t,e/2],["L",i-t,e/2],["Z"]]},aJ=(r,e)=>[["M",r/2,-e/2],["L",-r/2,0],["L",r/2,0],["L",-r/2,0],["L",r/2,e/2]],sJ=Object.freeze(Object.defineProperty({__proto__:null,circle:eJ,diamond:tJ,rect:rJ,simple:aJ,triangle:hQ,triangleRect:iJ,vee:nJ},Symbol.toStringTag,{value:"Module"}));var th=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};class Oo extends tQ{constructor(e){super(Qr({style:Oo.defaultStyleProps},e)),this.type="edge"}get sourceNode(){const{sourceNode:e}=this.parsedAttributes;return this.context.element.getElement(e)}get targetNode(){const{targetNode:e}=this.parsedAttributes;return this.context.element.getElement(e)}getKeyStyle(e){const t=this.getGraphicStyle(e),{loop:n}=t,i=th(t,["loop"]),{sourceNode:a,targetNode:s}=this,A={d:n&&M_(a,s)?this.getLoopPath(e):this.getKeyPath(e)};return Ai.PARSED_STYLE_LIST.forEach(l=>{l in i&&(A[l]=i[l])}),A}getLoopPath(e){const{sourcePort:t,targetPort:n}=e,i=this.sourceNode,a=uo(i),s=Math.max(ms(a),ys(a)),{type:o,placement:A,clockwise:l,dist:u=s}=Kn(this.getGraphicStyle(e),"loop");return o==="arc"?YZ(i,A,l,u,t,n):qZ(i,A,l,u,t,n)}getEndpoints(e,t=!0,n=[]){const{sourcePort:i,targetPort:a}=e,{sourceNode:s,targetNode:o}=this,[A,l]=vJ(s,o,i,a);if(!t){const h=A?So(A):s.getCenter(),f=l?So(l):o.getCenter();return[h,f]}const u=typeof n=="function"?n():n,c=O_(A||s,u[0]||l||o),d=O_(l||o,u[u.length-1]||A||s);return[c,d]}getHaloStyle(e){if(e.halo===!1)return!1;const t=this.getKeyStyle(e),n=Kn(this.getGraphicStyle(e),"halo");return Object.assign(Object.assign({},t),n)}getLabelStyle(e){if(e.label===!1||!e.labelText)return!1;const t=Kn(this.getGraphicStyle(e),"label"),{placement:n,offsetX:i,offsetY:a,autoRotate:s,maxWidth:o}=t,A=th(t,["placement","offsetX","offsetY","autoRotate","maxWidth"]),l=e.loop&&M_(this.sourceNode,this.targetNode),{placement:u}=Kn(this.getGraphicStyle(e),"loop"),c=cQ(this.shapeMap.key,n,s,i,a,l,u),d=this.shapeMap.key.getLocalBounds(),h=NX([d.min,d.max],o);return Object.assign({wordWrapWidth:h},c,A)}getBadgeStyle(e){if(e.badge===!1||!e.badgeText)return!1;const t=Kn(e,"badge"),{offsetX:n,offsetY:i,placement:a}=t,s=th(t,["offsetX","offsetY","placement"]);return Object.assign(s,GZ(this.shapeMap,a,e.labelPlacement,n,i))}drawArrow(e,t){var n;const i=t==="start",s=e[t==="start"?"startArrow":"endArrow"],o=this.shapeMap.key;if(s){const A=this.getArrowStyle(e,i),[l,u,c]=i?["markerStart","markerStartOffset","startArrowOffset"]:["markerEnd","markerEndOffset","endArrowOffset"],d=o.parsedStyle[l];if(d)d.attr(A);else{const h=A.src?Cc:Ai,f=new h({style:A});o.style[l]=f}o.style[u]=e[c]||A.width/2+ +A.lineWidth}else{const A=i?"markerStart":"markerEnd";(n=o.style[A])===null||n===void 0||n.destroy(),o.style[A]=null}}getArrowStyle(e,t){const n=this.getShape("key").attributes,i=t?"startArrow":"endArrow",a=Kn(this.getGraphicStyle(e),i),{size:s,type:o}=a,A=th(a,["size","type"]),[l,u]=Yi(JZ(n.lineWidth,s)),d=(At(o)?o:sJ[o]||hQ)(l,u);return Object.assign(yc(n,["stroke","strokeOpacity","fillOpacity"]),{width:l,height:u},Object.assign({},d&&{d,fill:o==="simple"?"":n.stroke}),A)}drawLabelShape(e,t){const n=this.getLabelStyle(e);this.upsert("label",fs,n,t)}drawHaloShape(e,t){const n=this.getHaloStyle(e);this.upsert("halo",Ai,n,t)}drawBadgeShape(e,t){const n=this.getBadgeStyle(e);this.upsert("badge",Ll,n,t)}drawSourceArrow(e){this.drawArrow(e,"start")}drawTargetArrow(e){this.drawArrow(e,"end")}drawKeyShape(e,t){const n=this.getKeyStyle(e);return this.upsert("key",Ai,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){const n=super.animate(e,t);return n&&new Proxy(n,{set:(i,a,s)=>(a==="currentTime"&&Promise.resolve().then(()=>this.onframe()),Reflect.set(i,a,s))})}}Oo.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};class _A extends Oo{constructor(e){super(Qr({style:_A.defaultStyleProps},e))}getKeyPath(e){const[t,n]=this.getEndpoints(e),{controlPoints:i,curvePosition:a,curveOffset:s}=e,o=this.getControlPoints(t,n,VZ(a),zZ(s),i);return Bx(t,n,o)}getControlPoints(e,t,n,i,a){return(a==null?void 0:a.length)===2?a:[YB(e,t,n[0],i[0]),YB(e,t,n[1],i[1])]}}_A.defaultStyleProps={curvePosition:.5,curveOffset:20};class vg extends _A{constructor(e){super(Qr({style:vg.defaultStyleProps},e))}getControlPoints(e,t,n,i){const a=t[0]-e[0];return[[e[0]+a*n[0]+i[0],e[1]],[t[0]-a*n[1]+i[1],t[1]]]}}vg.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};class mg extends _A{constructor(e){super(Qr({style:mg.defaultStyleProps},e))}get ref(){return this.context.model.getRootsData()[0]}getEndpoints(e){if(this.sourceNode.id===this.ref.id)return super.getEndpoints(e);const t=_r(this.ref),n=this.sourceNode.getIntersectPoint(t,!0),i=this.targetNode.getIntersectPoint(t);return[n,i]}toRadialCoordinate(e){const t=_r(this.ref),n=Bn(e,t),i=QR(hn(e,t));return[n,i]}getControlPoints(e,t,n,i){const[a,s]=this.toRadialCoordinate(e),[o]=this.toRadialCoordinate(t),A=o-a;return[[e[0]+(A*n[0]+i[0])*Math.cos(s),e[1]+(A*n[0]+i[0])*Math.sin(s)],[t[0]-(A*n[1]-i[0])*Math.cos(s),t[1]-(A*n[1]-i[0])*Math.sin(s)]]}}mg.defaultStyleProps={curvePosition:.5,curveOffset:20};class yg extends _A{constructor(e){super(Qr({style:yg.defaultStyleProps},e))}getControlPoints(e,t,n,i){const a=t[1]-e[1];return[[e[0],e[1]+a*n[0]+i[0]],[t[0],t[1]-a*n[1]+i[1]]]}}yg.defaultStyleProps={curvePosition:[.5,.5],curveOffset:[0,0]};let fQ=class gQ extends Oo{constructor(e){super(Qr({style:gQ.defaultStyleProps},e))}getKeyPath(e){const[t,n]=this.getEndpoints(e);return[["M",t[0],t[1]],["L",n[0],n[1]]]}};fQ.defaultStyleProps={};const oJ={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:mf},Ss=r=>`${Math.round(r[0])}|||${Math.round(r[1])}`;function sA(r,e){const t=n=>Math.round(n/e);return Yt(r)?t(r):r.map(t)}function AJ(r,e){const t=Math.abs(r-e);return t>Math.PI?2*Math.PI-t:t}function k_(r,e){const t=e[0]-r[0],n=e[1]-r[1];return!t&&!n?0:Math.atan2(n,t)}function pQ(r,e,t,n){const i=k_(r,e),a=t[Ss(r)],o=k_(a||n,r);return AJ(o,i)}const lJ=(r,e)=>{const{offset:t,gridSize:n}=e,i={};return r.forEach(a=>{if(!a||a.destroyed||!a.isVisible())return;const s=Fo(a.getRenderBounds(),t);for(let o=sA(s.min[0],n);o<=sA(s.max[0],n);o+=1)for(let A=sA(s.min[1],n);A<=sA(s.max[1],n);A+=1)i[`${o}|||${A}`]=!0}),i};function T_(r,e,t){return Math.min(...e.map(n=>t(r,n)))}function uJ(r,e,t){let n=r[0],i=t(r[0],e);for(let a=0;a<r.length;a++){const s=r[a],o=t(s,e);o<i&&(n=s,i=o)}return n}const F_=(r,e,t,n)=>{if(!e)return[r];const{directionMap:i,offset:a}=n,s=Fo(e.getRenderBounds(),a),o=Object.keys(i).reduce((A,l)=>{if(t.includes(l)){const u=i[l],[c,d]=To(s),h=[r[0]+u.stepX*c,r[1]+u.stepY*d],f=KY(s);for(let p=0;p<f.length;p++){const g=px([r,h],f[p]);g&&MR(g,s)&&A.push(g)}}return A},[]);return Ia(r,s)||o.push(r),o.map(A=>sA(A,n.gridSize))},cJ=(r,e,t,n,i,a,s)=>{const o=[];let A=[a[0]===n[0]?n[0]:r[0]*s,a[1]===n[1]?n[1]:r[1]*s];o.unshift(A);let l=r,u=e[Ss(l)];for(;u;){const h=u,f=l;pQ(h,f,e,t)&&(A=[h[0]===f[0]?A[0]:h[0]*s,h[1]===f[1]?A[1]:h[1]*s],o.unshift(A)),u=e[Ss(h)],l=h}const c=i.map(h=>[h[0]*s,h[1]*s]),d=uJ(c,A,mf);return o.unshift(d),o};function dJ(r,e,t,n){const i=hs(r.getCenter()),a=hs(e.getCenter()),s=Object.assign(oJ,n),{gridSize:o}=s,A=s.enableObstacleAvoidance?t:[r,e],l=lJ(A,s),u=sA(i,o),c=sA(a,o),d=F_(i,r,s.startDirections,s),h=F_(a,e,s.endDirections,s);d.forEach(_=>delete l[Ss(_)]),h.forEach(_=>delete l[Ss(_)]);const f={},p={},g={},v={},m={},y=new hJ;for(let _=0;_<d.length;_++){const T=d[_],F=Ss(T);f[F]=T,v[F]=0,m[F]=T_(T,h,s.distFunc),y.add({id:F,value:m[F]})}const w=h.map(_=>Ss(_));let B=s.maximumLoops,x,k=1/0;for(const[_,T]of Object.entries(f))m[_]<=k&&(k=m[_],x=T);for(;Object.keys(f).length>0&&B>0;){const _=y.minId(!1);if(_)x=f[_];else break;const T=Ss(x);if(w.includes(T))return cJ(x,g,u,a,d,c,o);delete f[T],y.remove(T),p[T]=!0;for(const F of Object.values(s.directionMap)){const I=xt(x,[F.stepX,F.stepY]),O=Ss(I);if(p[O])continue;const P=pQ(x,I,g,u);if(P>s.maxAllowedDirectionChange||l[O])continue;f[O]||(f[O]=I);const G=s.penalties[P],ee=s.distFunc(x,I)+(isNaN(G)?o:G),te=v[T]+ee,N=v[O];N&&te>=N||(g[O]=x,v[O]=te,m[O]=te+T_(I,h,s.distFunc),y.add({id:O,value:m[O]}))}B-=1}return[]}class hJ{constructor(){this.arr=[],this.map={},this.arr=[],this.map={}}_innerAdd(e,t){let n=0,i=t-1;for(;i-n>1;){const a=Math.floor((n+i)/2);if(this.arr[a].value>e.value)i=a;else if(this.arr[a].value<e.value)n=a;else{this.arr.splice(a,0,e),this.map[e.id]=!0;return}}this.arr.splice(i,0,e),this.map[e.id]=!0}add(e){delete this.map[e.id];const 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;){const e=this.arr.shift();if(this.map[e.id])return e.id}}minId(e){return e?this._clearAndGetMinId():this._findFirstId()}}class wg extends Oo{constructor(e){super(Qr({style:wg.defaultStyleProps},e))}getControlPoints(e){const{router:t}=e,{sourceNode:n,targetNode:i}=this,[a,s]=this.getEndpoints(e,!1);let o=[];if(!t)o=e.controlPoints;else if(t.type==="shortest-path"){const A=this.context.element.getNodes();o=dJ(n,i,A,t),o.length||(o=x_(a,s,n,i,e.controlPoints,{padding:t.offset}))}else t.type==="orth"&&(o=x_(a,s,n,i,e.controlPoints,t));return o}getPoints(e){const t=this.getControlPoints(e),[n,i]=this.getEndpoints(e,!0,t);return[n,...t,i]}getKeyPath(e){const t=this.getPoints(e);return Ex(t,e.radius)}getLoopPath(e){const{sourcePort:t,targetPort:n,radius:i}=e,a=this.sourceNode,s=uo(a),o=Math.max(ms(s),ys(s))/4,{placement:A,clockwise:l,dist:u=o}=Kn(this.getGraphicStyle(e),"loop");return XZ(a,i,A,l,u,t,n)}}wg.defaultStyleProps={radius:0,controlPoints:[],router:!1};class bg extends Oo{constructor(e){super(Qr({style:bg.defaultStyleProps},e))}getKeyPath(e){const{curvePosition:t,curveOffset:n}=e,[i,a]=this.getEndpoints(e),s=e.controlPoint||YB(i,a,t,n);return KZ(i,a,s)}}bg.defaultStyleProps={curvePosition:.5,curveOffset:30};var fJ=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};function Oc(r){return r instanceof Ua&&r.type==="node"}function vQ(r){return r instanceof Oo}function Cx(r){return r instanceof Nl}function gJ(r){return Oc(r)||vQ(r)||Cx(r)}function M_(r,e){return!r||!e?!1:r===e}const pJ={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 Sx(r,e,t=pJ,n=!0){const i=[.5,.5],a=ln(e)?Gr(t,e.toLocaleLowerCase(),i):e;if(!n&&ln(e))return a;const[s,o]=a||i;return[r.min[0]+ms(r)*s,r.min[1]+ys(r)*o]}function _x(r){if(!r)return{};const e=r.getPorts();return(r.attributes.ports||[]).forEach((n,i)=>{var a;const{key:s,placement:o}=n;mQ(n)&&(e[a=s||i]||(e[a]=ks(r.getShape("key").getBounds(),o)))}),e}function mQ(r){const{r:e}=r;return!e||Number(e)===0}function So(r){return Tl(r)?r:r.getPosition()}function vJ(r,e,t,n){const i=I_(r,e,t,n),a=I_(e,r,n,t);return[i,a]}function I_(r,e,t,n){const i=_x(r);if(t)return i[t];const a=Object.values(i);if(a.length===0)return;const s=a.map(l=>So(l)),o=mJ(e,n),[A]=EX(s,o);return a.find(l=>So(l)===A)}function mJ(r,e){const t=_x(r);if(e)return[So(t[e])];const n=Object.values(t);return n.length>0?n.map(i=>So(i)):[r.getCenter()]}function O_(r,e){return Cx(r)||Oc(r)?ZB(r,e):Ms(r,e)}function Ms(r,e){if(!r||!e)return[0,0,0];if(Tl(r))return r;if(r.attributes.linkToCenter)return r.getPosition();const t=Tl(e)?e:Oc(e)?e.getCenter():e.getPosition();return ug(t,r.getBounds())}function ZB(r,e){if(!r||!e)return[0,0,0];const t=Tl(e)?e:Oc(e)?e.getCenter():e.getPosition();return r.getIntersectPoint(t)||r.getCenter()}function L_(r,e="bottom",t=0,n=0,i=!1){const a=e.split("-"),[s,o]=ks(r,e),[A,l]=i?["bottom","top"]:["top","bottom"],u=a.includes("top")?l:a.includes("bottom")?A:"middle",c=a.includes("left")?"right":a.includes("right")?"left":"center";return{transform:[["translate",s+t,o+n]],textBaseline:u,textAlign:c}}function yJ(r,e){return[[0,-r],[e*Math.cos(3*Math.PI/10),-e*Math.sin(3*Math.PI/10)],[r*Math.cos(Math.PI/10),-r*Math.sin(Math.PI/10)],[e*Math.cos(Math.PI/10),e*Math.sin(Math.PI/10)],[r*Math.cos(3*Math.PI/10),r*Math.sin(3*Math.PI/10)],[0,e],[-r*Math.cos(3*Math.PI/10),r*Math.sin(3*Math.PI/10)],[-e*Math.cos(Math.PI/10),e*Math.sin(Math.PI/10)],[-r*Math.cos(Math.PI/10),-r*Math.sin(Math.PI/10)],[-e*Math.cos(3*Math.PI/10),-e*Math.sin(3*Math.PI/10)]]}function wJ(r,e){const t={};return t.top=[0,-r],t.left=[-r*Math.cos(Math.PI/10),-r*Math.sin(Math.PI/10)],t["left-bottom"]=[-r*Math.cos(3*Math.PI/10),r*Math.sin(3*Math.PI/10)],t.bottom=[0,e],t["right-bottom"]=[r*Math.cos(3*Math.PI/10),r*Math.sin(3*Math.PI/10)],t.right=t.default=[r*Math.cos(Math.PI/10),-r*Math.sin(Math.PI/10)],t}function bJ(r,e,t){const n=e/2,i=r/2,a={up:[[-i,n],[i,n],[0,-n]],left:[[-i,0],[i,n],[i,-n]],right:[[-i,n],[-i,-n],[i,0]],down:[[-i,-n],[i,-n],[0,n]]};return a[t]||a.up}function BJ(r,e,t){const n=e/2,i=r/2,a={};return t==="down"?(a.bottom=a.default=[0,n],a.right=[i,-n],a.left=[-i,-n]):t==="left"?(a.top=[i,-n],a.bottom=[i,n],a.left=a.default=[-i,0]):t==="right"?(a.top=[-i,-n],a.bottom=[-i,n],a.right=a.default=[i,0]):(a.left=[-i,n],a.top=a.default=[0,-n],a.right=[i,n]),a}function EJ(r,e){return[[0,-e/2],[r/2,0],[0,e/2],[-r/2,0]]}function yQ(r){return Gr(r,["style","visibility"])!=="hidden"}function xJ(r,e){const{zIndex:t,transform:n,transformOrigin:i,visibility:a,cursor:s,clipPath:o,component:A}=e,l=fJ(e,["zIndex","transform","transformOrigin","visibility","cursor","clipPath","component"]);Object.assign(r.attributes,l),n&&r.setAttribute("transform",n),Yt(t)&&r.setAttribute("zIndex",t),i&&r.setAttribute("transformOrigin",i),a&&r.setAttribute("visibility",a),s&&r.setAttribute("cursor",s),o&&r.setAttribute("clipPath",o),A&&r.setAttribute("component",A)}function JB(r,e){"update"in r?r.update(e):r.attr(e)}function CJ(r){return[[0,r],[r*Math.sqrt(3)/2,r/2],[r*Math.sqrt(3)/2,-r/2],[0,-r],[-r*Math.sqrt(3)/2,-r/2],[-r*Math.sqrt(3)/2,r/2]]}function SJ(r){Yu(r,"__to_be_destroyed__",!0)}function Lc(r){return Gr(r,"__to_be_destroyed__",!1)}var _J=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class Bg extends Ji{constructor(e,t){super(e,Object.assign({},Bg.defaultOptions,t)),this.onCollapseExpand=n=>_J(this,void 0,void 0,function*(){if(!this.validate(n))return;const{target:i}=n;if(!gJ(i))return;const a=i.id,{model:s,graph:o}=this.context,A=s.getElementDataById(a);if(!A)return!1;const{onCollapse:l,onExpand:u,animation:c,align:d}=this.options;Mi(A)?(yield o.expandElement(a,{animation:c,align:d}),u==null||u(a)):(yield o.collapseElement(a,{animation:c,align:d}),l==null||l(a))}),this.bindEvents()}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}bindEvents(){const{graph:e}=this.context,{trigger:t}=this.options;e.on(`node:${t}`,this.onCollapseExpand),e.on(`combo:${t}`,this.onCollapseExpand)}unbindEvents(){const{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;const{enable:t}=this.options;return At(t)?t(e):!!t}destroy(){this.unbindEvents(),super.destroy()}}Bg.defaultOptions={enable:!0,animation:!0,trigger:_e.DBLCLICK,align:!0};var Ac=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};function Vs(r,e){const{data:t,style:n}=r,i=Ac(r,["data","style"]),{data:a,style:s}=e,o=Ac(e,["data","style"]),A=Object.assign(Object.assign({},i),o);return(t||a)&&Object.assign(A,{data:Object.assign(Object.assign({},t),a)}),(n||s)&&Object.assign(A,{style:Object.assign(Object.assign({},n),s)}),A}function jv(r){const{data:e,style:t}=r,i=Ac(r,["data","style"]);return e&&(i.data=Object.assign({},e)),t&&(i.style=Object.assign({},t)),i}function KA(r={},e={}){const{states:t=[],data:n={},style:i={},children:a=[]}=r,s=Ac(r,["states","data","style","children"]),{states:o=[],data:A={},style:l={},children:u=[]}=e,c=Ac(e,["states","data","style","children"]),d=(f,p)=>f.length!==p.length?!1:f.every((g,v)=>g===p[v]),h=(f,p)=>{const g=Object.keys(f),v=Object.keys(p);return g.length!==v.length?!1:g.every(m=>f[m]===p[m])};return!(!h(s,c)||!d(a,u)||!d(t,o)||!h(n,A)||!h(i,l))}const wQ="__internal_override__";function N_(r){return r[wQ]!==!1}var nh=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};const kJ="g6-create-edge-assist-edge-id",rh="g6-create-edge-assist-node-id";class Eg extends Ji{constructor(e,t){super(e,Object.assign({},Eg.defaultOptions,t)),this.drop=n=>nh(this,void 0,void 0,function*(){const{targetType:i}=n;["combo","node"].includes(i)&&this.source?yield this.handleCreateEdge(n):yield this.cancelEdge()}),this.handleCreateEdge=n=>nh(this,void 0,void 0,function*(){var i,a,s;if(!this.validate(n))return;const{graph:o,canvas:A,batch:l,element:u}=this.context,{style:c}=this.options;if(this.source){this.createEdge(n),yield this.cancelEdge();return}l.startBatch(),A.setCursor("crosshair"),this.source=this.getSelectedNodeIDs([n.target.id])[0];const d=o.getElementData(this.source);o.addNodeData([{id:rh,type:"circle",[wQ]:!1,style:{size:1,visibility:"hidden",ports:[{key:"port-1",placement:[.5,.5]}],x:(i=d.style)===null||i===void 0?void 0:i.x,y:(a=d.style)===null||a===void 0?void 0:a.y}}]),o.addEdgeData([{id:kJ,source:this.source,target:rh,style:Object.assign({pointerEvents:"none"},c)}]),yield(s=u.draw({animation:!1}))===null||s===void 0?void 0:s.finished}),this.updateAssistEdge=n=>nh(this,void 0,void 0,function*(){var i;if(!this.source)return;const{model:a,element:s,graph:o}=this.context,[A,l]=o.getCanvasByClient([n.client.x,n.client.y]);a.translateNodeTo(rh,[A,l]),yield(i=s.draw({animation:!1,silence:!0}))===null||i===void 0?void 0:i.finished}),this.createEdge=n=>{var i,a;const{graph:s}=this.context,{style:o,onFinish:A,onCreate:l}=this.options;if(((i=n.target)===null||i===void 0?void 0:i.id)===void 0||this.source===void 0)return;const c=(a=this.getSelectedNodeIDs([n.target.id]))===null||a===void 0?void 0:a[0],d=`${this.source}-${c}-${q8()}`,h=l({id:d,source:this.source,target:c,style:o});h&&(s.addEdgeData([h]),A(h))},this.cancelEdge=()=>nh(this,void 0,void 0,function*(){var n;if(!this.source)return;const{graph:i,element:a,batch:s}=this.context;i.removeNodeData([rh]),this.source=void 0,yield(n=a.draw({animation:!1}))===null||n===void 0?void 0:n.finished,s.endBatch()}),this.bindEvents()}update(e){super.update(e),this.bindEvents()}bindEvents(){const{graph:e}=this.context,{trigger:t}=this.options;this.unbindEvents(),t==="click"?(e.on(Ki.CLICK,this.handleCreateEdge),e.on(iA.CLICK,this.handleCreateEdge),e.on(cs.CLICK,this.cancelEdge),e.on(pf.CLICK,this.cancelEdge)):(e.on(Ki.DRAG_START,this.handleCreateEdge),e.on(iA.DRAG_START,this.handleCreateEdge),e.on(_e.POINTER_UP,this.drop)),e.on(_e.POINTER_MOVE,this.updateAssistEdge)}getSelectedNodeIDs(e){return Array.from(new Set(this.context.graph.getElementDataByState("node",this.options.state).map(t=>t.id).concat(e)))}validate(e){if(this.destroyed)return!1;const{enable:t}=this.options;return At(t)?t(e):!!t}unbindEvents(){const{graph:e}=this.context;e.off(Ki.CLICK,this.handleCreateEdge),e.off(iA.CLICK,this.handleCreateEdge),e.off(cs.CLICK,this.cancelEdge),e.off(pf.CLICK,this.cancelEdge),e.off(Ki.DRAG_START,this.handleCreateEdge),e.off(iA.DRAG_START,this.handleCreateEdge),e.off(_e.POINTER_UP,this.drop),e.off(_e.POINTER_MOVE,this.updateAssistEdge)}destroy(){this.unbindEvents(),super.destroy()}}Eg.defaultOptions={animation:!0,enable:!0,style:{},trigger:"drag",onCreate:r=>r,onFinish:()=>{}};var P_=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class xg extends Ji{constructor(e,t){super(e,Object.assign({},xg.defaultOptions,t)),this.isDragging=!1,this.onDragStart=n=>{this.validate(n)&&(this.isDragging=!0,this.context.canvas.setCursor("grabbing"))},this.onDrag=n=>{var i,a,s,o;if(!this.isDragging||ar.isPinching)return;const A=(a=(i=n.movement)===null||i===void 0?void 0:i.x)!==null&&a!==void 0?a:n.dx,l=(o=(s=n.movement)===null||s===void 0?void 0:s.y)!==null&&o!==void 0?o:n.dy;(A|l)!==0&&this.translate([A,l],!1)},this.onDragEnd=()=>{var n,i;this.isDragging=!1,this.context.canvas.setCursor(this.defaultCursor),(i=(n=this.options).onFinish)===null||i===void 0||i.call(n)},this.invokeOnFinish=mc(()=>{var n,i;(i=(n=this.options).onFinish)===null||i===void 0||i.call(n)},300),this.shortcut=new Io(e.graph),this.bindEvents(),this.defaultCursor=this.context.canvas.getConfig().cursor||"default"}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}bindEvents(){const{trigger:e}=this.options;if(ai(e)){const{up:t=[],down:n=[],left:i=[],right:a=[]}=e;this.shortcut.bind(t,s=>this.onTranslate([0,1],s)),this.shortcut.bind(n,s=>this.onTranslate([0,-1],s)),this.shortcut.bind(i,s=>this.onTranslate([1,0],s)),this.shortcut.bind(a,s=>this.onTranslate([-1,0],s))}else{const{graph:t}=this.context;t.on(_e.DRAG_START,this.onDragStart),t.on(_e.DRAG,this.onDrag),t.on(_e.DRAG_END,this.onDragEnd)}}onTranslate(e,t){return P_(this,void 0,void 0,function*(){if(!this.validate(t))return;const{sensitivity:n}=this.options,i=n*-1;yield this.translate(_a(e,i),this.options.animation),this.invokeOnFinish()})}translate(e,t){return P_(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]){const n=this.context.graph.getRotation();return DR([e,t],n)}clampByDirection([e,t]){const{direction:n}=this.options;return n==="x"?t=0:n==="y"&&(e=0),[e,t]}clampByRange([e,t]){const{viewport:n,canvas:i}=this.context,[a,s]=i.getSize(),[o,A,l,u]=ga(this.options.range),c=[s*o,a*A,s*l,a*u],d=Fo(cx(n.getCanvasCenter()),c),h=hn(n.getViewportCenter(),[e,t,0]);if(!Ia(h,d)){const{min:[f,p],max:[g,v]}=d;(h[0]<f&&e>0||h[0]>g&&e<0)&&(e=0),(h[1]<p&&t>0||h[1]>v&&t<0)&&(t=0)}return[e,t]}validate(e){if(this.destroyed)return!1;const{enable:t}=this.options;return typeof t=="function"?t(e):!!t}unbindEvents(){this.shortcut.unbindAll();const{graph:e}=this.context;e.off(_e.DRAG_START,this.onDragStart),e.off(_e.DRAG,this.onDrag),e.off(_e.DRAG_END,this.onDragEnd)}destroy(){this.shortcut.destroy(),this.unbindEvents(),this.context.canvas.setCursor(this.defaultCursor),super.destroy()}}xg.defaultOptions={enable:r=>"targetType"in r?r.targetType==="canvas":!0,sensitivity:10,direction:"both",range:1/0};var U_=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class Nc extends Ji{constructor(e,t){super(e,Object.assign({},Nc.defaultOptions,t)),this.enable=!1,this.enableElements=["node","combo"],this.target=[],this.shadowOrigin=[0,0],this.hiddenEdges=[],this.isDragging=!1,this.onDrop=n=>U_(this,void 0,void 0,function*(){var i;if(this.options.dropEffect!=="link")return;const{model:a,element:s}=this.context,o=n.target.id;this.target.forEach(A=>{const l=a.getParentData(A,yn);l&&ve(l)===o&&a.refreshComboData(o),a.setParent(A,o,yn)}),yield(i=s==null?void 0:s.draw({animation:!0}))===null||i===void 0?void 0:i.finished}),this.setCursor=n=>{if(this.isDragging)return;const{type:i}=n,{canvas:a}=this.context,{cursor:s}=this.options;i===_e.POINTER_ENTER?a.setCursor((s==null?void 0:s.grab)||"grab"):a.setCursor((s==null?void 0:s.default)||"default")},this.shortcut=new Io(e.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(){const{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(i=>{e.on(`${i}:${_e.DRAG_START}`,this.onDragStart),e.on(`${i}:${_e.DRAG}`,this.onDrag),e.on(`${i}:${_e.DRAG_END}`,this.onDragEnd),e.on(`${i}:${_e.POINTER_ENTER}`,this.setCursor),e.on(`${i}:${_e.POINTER_LEAVE}`,this.setCursor)}),["link"].includes(this.options.dropEffect)&&(e.on(iA.DROP,this.onDrop),e.on(cs.DROP,this.onDrop))}getSelectedNodeIDs(e){return Array.from(new Set(this.context.graph.getElementDataByState("node",this.options.state).map(t=>t.id).concat(e)))}getDelta(e){const t=this.context.graph.getZoom();return Oa([e.dx,e.dy],t)}onDragStart(e){var t;if(this.enable=this.validate(e),!this.enable)return;const{batch:n,canvas:i,graph:a}=this.context;i.setCursor(((t=this.options.cursor)===null||t===void 0?void 0:t.grabbing)||"grabbing"),this.isDragging=!0,n.startBatch();const s=e.target.id;a.getElementState(s).includes(this.options.state)?this.target=this.getSelectedNodeIDs([s]):this.target=[s],this.hideEdge(),this.context.graph.frontElement(this.target),this.options.shadow&&this.createShadow(this.target)}onDrag(e){if(!this.enable)return;const t=this.getDelta(e);this.options.shadow?this.moveShadow(t):this.moveElement(this.target,t)}onDragEnd(){var e,t,n;if(!this.enable)return;if(this.enable=!1,this.options.shadow){if(!this.shadow)return;this.shadow.style.visibility="hidden";const{x:s=0,y:o=0}=this.shadow.attributes,[A,l]=hn([+s,+o],this.shadowOrigin);this.moveElement(this.target,[A,l])}this.showEdges(),(t=(e=this.options).onFinish)===null||t===void 0||t.call(e,this.target);const{batch:i,canvas:a}=this.context;i.endBatch(),a.setCursor(((n=this.options.cursor)===null||n===void 0?void 0:n.grab)||"grab"),this.isDragging=!1,this.target=[]}isKeydown(){const{trigger:e}=this.options;return e!=null&&e.length?this.shortcut.match(e):!0}validate(e){if(this.destroyed||Lc(e.target)||this.context.graph.isCollapsingExpanding||!this.isKeydown())return!1;const{enable:t}=this.options;return At(t)?t(e):!!t}clampByRotation([e,t]){const n=this.context.graph.getRotation();return DR([e,t],n)}moveElement(e,t){return U_(this,void 0,void 0,function*(){const{graph:n,model:i}=this.context,{dropEffect:a}=this.options;a==="move"&&e.forEach(s=>i.refreshComboData(s)),n.translateElementBy(Object.fromEntries(e.map(s=>[s,this.clampByRotation(t)])),!1)})}moveShadow(e){if(!this.shadow)return;const{x:t=0,y:n=0}=this.shadow.attributes,[i,a]=e;this.shadow.attr({x:+t+i,y:+n+a})}createShadow(e){const t=Kn(this.options,"shadow"),n=kc(e.map(l=>this.context.element.getElement(l).getBounds())),[i,a]=n.min;this.shadowOrigin=[i,a];const[s,o]=To(n),A={width:s,height:o,x:i,y:a};this.shadow?this.shadow.attr(Object.assign(Object.assign(Object.assign({},t),A),{visibility:"visible"})):(this.shadow=new jr({style:Object.assign(Object.assign(Object.assign({$layer:"transient"},t),A),{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(){const{hideEdge:e,shadow:t}=this.options;if(e==="none"||t)return;const{graph:n}=this.context;e==="all"?this.hiddenEdges=n.getEdgeData().map(ve):this.hiddenEdges=Array.from(new Set(this.target.map(i=>n.getRelatedEdgesData(i,e).map(ve)).flat())),n.hideElement(this.hiddenEdges)}unbindEvents(){const{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(i=>{e.off(`${i}:${_e.DRAG_START}`,this.onDragStart),e.off(`${i}:${_e.DRAG}`,this.onDrag),e.off(`${i}:${_e.DRAG_END}`,this.onDragEnd),e.off(`${i}:${_e.POINTER_ENTER}`,this.setCursor),e.off(`${i}:${_e.POINTER_LEAVE}`,this.setCursor)}),e.off(`combo:${_e.DROP}`,this.onDrop),e.off(`canvas:${_e.DROP}`,this.onDrop)}destroy(){var e;this.unbindEvents(),(e=this.shadow)===null||e===void 0||e.destroy(),super.destroy()}}Nc.defaultOptions={animation:!0,enable:r=>["node","combo"].includes(r.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 TJ="*",kx=(function(){function r(){this._events={}}return r.prototype.on=function(e,t,n){return this._events[e]||(this._events[e]=[]),this._events[e].push({callback:t,once:!!n}),this},r.prototype.once=function(e,t){return this.on(e,t,!0)},r.prototype.emit=function(e){for(var t=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];var a=this._events[e]||[],s=this._events[TJ]||[],o=function(A){for(var l=A.length,u=0;u<l;u++)if(A[u]){var c=A[u],d=c.callback,h=c.once;h&&(A.splice(u,1),A.length===0&&delete t._events[e],l--,u--),d.apply(t,n)}};o(a),o(s)},r.prototype.off=function(e,t){if(!e)this._events={};else if(!t)delete this._events[e];else{for(var n=this._events[e]||[],i=n.length,a=0;a<i;a++)n[a].callback===t&&(n.splice(a,1),i--,a--);n.length===0&&delete this._events[e]}return this},r.prototype.getEvents=function(){return this._events},r})();function eE(r,e,t,n){for(;r.length;){const i=r.shift();if(t(i))return!0;e.add(i.id),n(i.id).forEach(s=>{e.has(s.id)||(e.add(s.id),r.push(s))})}return!1}function xf(r,e,t,n){if(t(r))return!0;e.add(r.id);for(const a of n(r.id))if(!e.has(a.id)&&xf(a,e,t,n))return!0;return!1}const R_=()=>!0;class FJ{constructor(e){Fn(this,"graph");Fn(this,"nodeFilter");Fn(this,"edgeFilter");Fn(this,"cacheEnabled");Fn(this,"inEdgesMap",new Map);Fn(this,"outEdgesMap",new Map);Fn(this,"bothEdgesMap",new Map);Fn(this,"allNodesMap",new Map);Fn(this,"allEdgesMap",new Map);Fn(this,"clearCache",()=>{this.inEdgesMap.clear(),this.outEdgesMap.clear(),this.bothEdgesMap.clear(),this.allNodesMap.clear(),this.allEdgesMap.clear()});Fn(this,"refreshCache",()=>{this.clearCache(),this.updateCache(this.graph.getAllNodes().map(e=>e.id))});Fn(this,"updateCache",e=>{const t=new Set;e.forEach(n=>{const i=this.bothEdgesMap.get(n);if(i&&i.forEach(a=>t.add(a.id)),!this.hasNode(n))this.inEdgesMap.delete(n),this.outEdgesMap.delete(n),this.bothEdgesMap.delete(n),this.allNodesMap.delete(n);else{const a=this.graph.getRelatedEdges(n,"in").filter(this.edgeFilter),s=this.graph.getRelatedEdges(n,"out").filter(this.edgeFilter),o=Array.from(new Set([...a,...s]));o.forEach(A=>t.add(A.id)),this.inEdgesMap.set(n,a),this.outEdgesMap.set(n,s),this.bothEdgesMap.set(n,o),this.allNodesMap.set(n,this.graph.getNode(n))}}),t.forEach(n=>{this.hasEdge(n)?this.allEdgesMap.set(n,this.graph.getEdge(n)):this.allEdgesMap.delete(n)})});Fn(this,"handleGraphChanged",e=>{const 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)){const i=e.graph.getEdge(n.id);t.add(i.source),t.add(i.target)}break;case"EdgeRemoved":t.add(n.value.source),t.add(n.value.target);break;case"NodeRemoved":t.add(n.value.id);break}}),this.updateCache(t)});this.graph=e.graph;const t=e.nodeFilter||R_,n=e.edgeFilter||R_;this.nodeFilter=t,this.edgeFilter=i=>{const{source:a,target:s}=this.graph.getEdgeDetail(i.id);return!t(a)||!t(s)?!1:n(i,a,s)},e.cache==="auto"?(this.cacheEnabled=!0,this.startAutoCache()):e.cache==="manual"?this.cacheEnabled=!0:this.cacheEnabled=!1}startAutoCache(){this.refreshCache(),this.graph.on("changed",this.handleGraphChanged)}stopAutoCache(){this.graph.off("changed",this.handleGraphChanged)}checkNodeExistence(e){this.getNode(e)}hasNode(e){if(!this.graph.hasNode(e))return!1;const t=this.graph.getNode(e);return this.nodeFilter(t)}areNeighbors(e,t){return this.checkNodeExistence(e),this.getNeighbors(t).some(n=>n.id===e)}getNode(e){const t=this.graph.getNode(e);if(!this.nodeFilter(t))throw new 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){const n=this.getRelatedEdges(e,"out").map(i=>this.getNode(i.target));return Array.from(new Set(n))}getPredecessors(e){const n=this.getRelatedEdges(e,"in").map(i=>this.getNode(i.source));return Array.from(new Set(n))}getNeighbors(e){const t=this.getPredecessors(e),n=this.getSuccessors(e);return Array.from(new Set([...t,...n]))}hasEdge(e){if(!this.graph.hasEdge(e))return!1;const t=this.graph.getEdge(e);return this.edgeFilter(t)}getEdge(e){const t=this.graph.getEdge(e);if(!this.edgeFilter(t))throw new Error("Edge not found for id: "+e);return t}getEdgeDetail(e){const 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);const 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"){const i={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[n];eE([this.getNode(e)],new Set,t,i)}dfs(e,t,n="out"){const i={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[n];xf(this.getNode(e),new Set,t,i)}}let Tx=class bQ extends kx{constructor(t){super();Fn(this,"nodeMap",new Map);Fn(this,"edgeMap",new Map);Fn(this,"inEdgesMap",new Map);Fn(this,"outEdgesMap",new Map);Fn(this,"bothEdgesMap",new Map);Fn(this,"treeIndices",new Map);Fn(this,"changes",[]);Fn(this,"batchCount",0);Fn(this,"onChanged",()=>{});Fn(this,"batch",t=>{this.batchCount+=1,t(),this.batchCount-=1,this.batchCount||this.commit()});t&&(t.nodes&&this.addNodes(t.nodes),t.edges&&this.addEdges(t.edges),t.tree&&this.addTree(t.tree),t.onChanged&&(this.onChanged=t.onChanged))}commit(){const t=this.changes;this.changes=[];const n={graph:this,changes:t};this.emit("changed",n),this.onChanged(n)}reduceChanges(t){let n=[];return t.forEach(i=>{switch(i.type){case"NodeRemoved":{let a=!1;n=n.filter(s=>{if(s.type==="NodeAdded"){const o=s.value.id===i.value.id;return o&&(a=!0),!o}else{if(s.type==="NodeDataUpdated")return s.id!==i.value.id;if(s.type==="TreeStructureChanged")return s.nodeId!==i.value.id}return!0}),a||n.push(i);break}case"EdgeRemoved":{let a=!1;n=n.filter(s=>{if(s.type==="EdgeAdded"){const o=s.value.id===i.value.id;return o&&(a=!0),!o}else if(s.type==="EdgeDataUpdated"||s.type==="EdgeUpdated")return s.id!==i.value.id;return!0}),a||n.push(i);break}case"NodeDataUpdated":case"EdgeDataUpdated":case"EdgeUpdated":{const a=n.findIndex(o=>o.type===i.type&&o.id===i.id&&(i.propertyName===void 0||o.propertyName===i.propertyName)),s=n[a];s?i.propertyName!==void 0?s.newValue=i.newValue:(n.splice(a,1),n.push(i)):n.push(i);break}case"TreeStructureDetached":{n=n.filter(a=>a.type==="TreeStructureAttached"||a.type==="TreeStructureChanged"?a.treeKey!==i.treeKey:!0),n.push(i);break}case"TreeStructureChanged":{const a=n.find(s=>s.type==="TreeStructureChanged"&&s.treeKey===i.treeKey&&s.nodeId===i.nodeId);a?a.newParentId=i.newParentId:n.push(i);break}default:n.push(i);break}}),n}checkNodeExistence(t){this.getNode(t)}hasNode(t){return this.nodeMap.has(t)}areNeighbors(t,n){return this.getNeighbors(n).some(i=>i.id===t)}getNode(t){const n=this.nodeMap.get(t);if(!n)throw new Error("Node not found for id: "+t);return n}getRelatedEdges(t,n){if(this.checkNodeExistence(t),n==="in"){const i=this.inEdgesMap.get(t);return Array.from(i)}else if(n==="out"){const i=this.outEdgesMap.get(t);return Array.from(i)}else{const i=this.bothEdgesMap.get(t);return Array.from(i)}}getDegree(t,n){return this.getRelatedEdges(t,n).length}getSuccessors(t){const i=this.getRelatedEdges(t,"out").map(a=>this.getNode(a.target));return Array.from(new Set(i))}getPredecessors(t){const i=this.getRelatedEdges(t,"in").map(a=>this.getNode(a.source));return Array.from(new Set(i))}getNeighbors(t){const n=this.getPredecessors(t),i=this.getSuccessors(t);return Array.from(new Set([...n,...i]))}doAddNode(t){if(this.hasNode(t.id))throw new Error("Node already exists: "+t.id);this.nodeMap.set(t.id,t),this.inEdgesMap.set(t.id,new Set),this.outEdgesMap.set(t.id,new Set),this.bothEdgesMap.set(t.id,new Set),this.treeIndices.forEach(n=>{n.childrenMap.set(t.id,new Set)}),this.changes.push({type:"NodeAdded",value:t})}addNodes(t){this.batch(()=>{for(const n of t)this.doAddNode(n)})}addNode(t){this.addNodes([t])}doRemoveNode(t){const n=this.getNode(t),i=this.bothEdgesMap.get(t);i==null||i.forEach(a=>this.doRemoveEdge(a.id)),this.nodeMap.delete(t),this.treeIndices.forEach(a=>{var o,A;(o=a.childrenMap.get(t))==null||o.forEach(l=>{a.parentMap.delete(l.id)});const s=a.parentMap.get(t);s&&((A=a.childrenMap.get(s.id))==null||A.delete(n)),a.parentMap.delete(t),a.childrenMap.delete(t)}),this.bothEdgesMap.delete(t),this.inEdgesMap.delete(t),this.outEdgesMap.delete(t),this.changes.push({type:"NodeRemoved",value:n})}removeNodes(t){this.batch(()=>{t.forEach(n=>this.doRemoveNode(n))})}removeNode(t){this.removeNodes([t])}updateNodeDataProperty(t,n,i){const a=this.getNode(t);this.batch(()=>{const s=a.data[n],o=i;a.data[n]=o,this.changes.push({type:"NodeDataUpdated",id:t,propertyName:n,oldValue:s,newValue:o})})}mergeNodeData(t,n){this.batch(()=>{Object.entries(n).forEach(([i,a])=>{this.updateNodeDataProperty(t,i,a)})})}updateNodeData(...t){const n=t[0],i=this.getNode(n);if(typeof t[1]=="string"){this.updateNodeDataProperty(n,t[1],t[2]);return}let a;if(typeof t[1]=="function"){const s=t[1];a=s(i.data)}else typeof t[1]=="object"&&(a=t[1]);this.batch(()=>{const s=i.data,o=a;i.data=a,this.changes.push({type:"NodeDataUpdated",id:n,oldValue:s,newValue:o})})}checkEdgeExistence(t){if(!this.hasEdge(t))throw new Error("Edge not found for id: "+t)}hasEdge(t){return this.edgeMap.has(t)}getEdge(t){return this.checkEdgeExistence(t),this.edgeMap.get(t)}getEdgeDetail(t){const n=this.getEdge(t);return{edge:n,source:this.getNode(n.source),target:this.getNode(n.target)}}doAddEdge(t){if(this.hasEdge(t.id))throw new Error("Edge already exists: "+t.id);this.checkNodeExistence(t.source),this.checkNodeExistence(t.target),this.edgeMap.set(t.id,t);const n=this.inEdgesMap.get(t.target),i=this.outEdgesMap.get(t.source),a=this.bothEdgesMap.get(t.source),s=this.bothEdgesMap.get(t.target);n.add(t),i.add(t),a.add(t),s.add(t),this.changes.push({type:"EdgeAdded",value:t})}addEdges(t){this.batch(()=>{for(const n of t)this.doAddEdge(n)})}addEdge(t){this.addEdges([t])}doRemoveEdge(t){const n=this.getEdge(t),i=this.outEdgesMap.get(n.source),a=this.inEdgesMap.get(n.target),s=this.bothEdgesMap.get(n.source),o=this.bothEdgesMap.get(n.target);i.delete(n),a.delete(n),s.delete(n),o.delete(n),this.edgeMap.delete(t),this.changes.push({type:"EdgeRemoved",value:n})}removeEdges(t){this.batch(()=>{t.forEach(n=>this.doRemoveEdge(n))})}removeEdge(t){this.removeEdges([t])}updateEdgeSource(t,n){const i=this.getEdge(t);this.checkNodeExistence(n);const a=i.source,s=n;this.outEdgesMap.get(a).delete(i),this.bothEdgesMap.get(a).delete(i),this.outEdgesMap.get(s).add(i),this.bothEdgesMap.get(s).add(i),i.source=n,this.batch(()=>{this.changes.push({type:"EdgeUpdated",id:t,propertyName:"source",oldValue:a,newValue:s})})}updateEdgeTarget(t,n){const i=this.getEdge(t);this.checkNodeExistence(n);const a=i.target,s=n;this.inEdgesMap.get(a).delete(i),this.bothEdgesMap.get(a).delete(i),this.inEdgesMap.get(s).add(i),this.bothEdgesMap.get(s).add(i),i.target=n,this.batch(()=>{this.changes.push({type:"EdgeUpdated",id:t,propertyName:"target",oldValue:a,newValue:s})})}updateEdgeDataProperty(t,n,i){const a=this.getEdge(t);this.batch(()=>{const s=a.data[n],o=i;a.data[n]=o,this.changes.push({type:"EdgeDataUpdated",id:t,propertyName:n,oldValue:s,newValue:o})})}updateEdgeData(...t){const n=t[0],i=this.getEdge(n);if(typeof t[1]=="string"){this.updateEdgeDataProperty(n,t[1],t[2]);return}let a;if(typeof t[1]=="function"){const s=t[1];a=s(i.data)}else typeof t[1]=="object"&&(a=t[1]);this.batch(()=>{const s=i.data,o=a;i.data=a,this.changes.push({type:"EdgeDataUpdated",id:n,oldValue:s,newValue:o})})}mergeEdgeData(t,n){this.batch(()=>{Object.entries(n).forEach(([i,a])=>{this.updateEdgeDataProperty(t,i,a)})})}checkTreeExistence(t){if(!this.hasTreeStructure(t))throw new Error("Tree structure not found for treeKey: "+t)}hasTreeStructure(t){return this.treeIndices.has(t)}attachTreeStructure(t){this.treeIndices.has(t)||(this.treeIndices.set(t,{parentMap:new Map,childrenMap:new Map}),this.batch(()=>{this.changes.push({type:"TreeStructureAttached",treeKey:t})}))}detachTreeStructure(t){this.checkTreeExistence(t),this.treeIndices.delete(t),this.batch(()=>{this.changes.push({type:"TreeStructureDetached",treeKey:t})})}addTree(t,n){this.batch(()=>{this.attachTreeStructure(n);const i=[],a=Array.isArray(t)?t:[t];for(;a.length;){const s=a.shift();i.push(s),s.children&&a.push(...s.children)}this.addNodes(i),i.forEach(s=>{var o;(o=s.children)==null||o.forEach(A=>{this.setParent(A.id,s.id,n)})})})}getRoots(t){return this.checkTreeExistence(t),this.getAllNodes().filter(n=>!this.getParent(n.id,t))}getChildren(t,n){this.checkNodeExistence(t),this.checkTreeExistence(n);const a=this.treeIndices.get(n).childrenMap.get(t);return Array.from(a||[])}getParent(t,n){return this.checkNodeExistence(t),this.checkTreeExistence(n),this.treeIndices.get(n).parentMap.get(t)||null}getAncestors(t,n){const i=[];let a=this.getNode(t),s;for(;s=this.getParent(a.id,n);)i.push(s),a=s;return i}setParent(t,n,i){var u,c;this.checkTreeExistence(i);const a=this.treeIndices.get(i);if(!a)return;const s=this.getNode(t),o=a.parentMap.get(t);if((o==null?void 0:o.id)===n)return;if(n==null){o&&((u=a.childrenMap.get(o.id))==null||u.delete(s)),a.parentMap.delete(t);return}const A=this.getNode(n);a.parentMap.set(t,A),o&&((c=a.childrenMap.get(o.id))==null||c.delete(s));let l=a.childrenMap.get(A.id);l||(l=new Set,a.childrenMap.set(A.id,l)),l.add(s),this.batch(()=>{this.changes.push({type:"TreeStructureChanged",treeKey:i,nodeId:t,oldParentId:o==null?void 0:o.id,newParentId:A.id})})}dfsTree(t,n,i){const a=s=>this.getChildren(s,i);return xf(this.getNode(t),new Set,n,a)}bfsTree(t,n,i){const a=s=>this.getChildren(s,i);return eE([this.getNode(t)],new Set,n,a)}getAllNodes(){return Array.from(this.nodeMap.values())}getAllEdges(){return Array.from(this.edgeMap.values())}bfs(t,n,i="out"){const a={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[i];return eE([this.getNode(t)],new Set,n,a)}dfs(t,n,i="out"){const a={in:this.getPredecessors.bind(this),out:this.getSuccessors.bind(this),both:this.getNeighbors.bind(this)}[i];return xf(this.getNode(t),new Set,n,a)}clone(){const t=this.getAllNodes().map(a=>({...a,data:{...a.data}})),n=this.getAllEdges().map(a=>({...a,data:{...a.data}})),i=new bQ({nodes:t,edges:n});return this.treeIndices.forEach(({parentMap:a,childrenMap:s},o)=>{const A=new Map;a.forEach((u,c)=>{A.set(c,i.getNode(u.id))});const l=new Map;s.forEach((u,c)=>{l.set(c,new Set(Array.from(u).map(d=>i.getNode(d.id))))}),i.treeIndices.set(o,{parentMap:A,childrenMap:l})}),i}toJSON(){return JSON.stringify({nodes:this.getAllNodes(),edges:this.getAllEdges()})}createView(t){return new FJ({graph:this,...t})}},Pc=class{constructor(e,t){this.context=e,this.options=t||{}}};var BQ=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})},MJ=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};function IJ(r){const{type:e}=r;return["compact-box","mindmap","dendrogram","indented"].includes(e)}function OJ(r){return!Array.isArray(r)&&(r==null?void 0:r.preLayout)}function LJ(r,e){class t extends Pc{constructor(i,a){if(super(i,a),this.instance=new r({}),this.id=this.instance.id,"stop"in this.instance&&"tick"in this.instance){const s=this.instance;this.stop=s.stop.bind(s),this.tick=o=>(s.tick(o),this.getLayoutResult(s))}}execute(i,a){return BQ(this,void 0,void 0,function*(){return yield this.instance.execute(this.graphData2LayoutModel(i),this.transformOptions(li({},this.options,a))),this.getLayoutResult(this.instance)})}graphData2LayoutModel(i){const{nodes:a=[],edges:s=[],combos:o=[]}=i;return{nodes:[...a,...o],edges:s}}transformOptions(i){const a=l=>e.model.isCombo(l),s=l=>{var u;const{style:c}=l||{},d="combo"in(l||{})&&(u=l.combo)!==null&&u!==void 0?u:null,h=ve(l);return Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({id:h},Yt(c==null?void 0:c.x)?{x:c.x}:{}),Yt(c==null?void 0:c.y)?{y:c.y}:{}),Yt(c==null?void 0:c.z)?{z:c.z}:{}),{parentId:d}),a(h)?{isCombo:!0}:{})},o=l=>({id:ve(l),source:l.source,target:l.target});if(i.node=s,i.edge=o,!("onTick"in i))return i;const A=i.onTick;return i.onTick=l=>A(this.getLayoutResult(l)),i}getLayoutResult(i){const{model:a}=this.context,s={nodes:[],edges:[],combos:[]};return i.forEachNode(o=>{var A;const l=String(o.id),u=a.isCombo(l)?s.combos:s.nodes,c=Object.assign({x:o.x,y:o.y,z:(A=o.z)!==null&&A!==void 0?A:0},o.size?{size:o.size}:{});u==null||u.push({id:l,style:c})}),i.forEachEdge(o=>{const A={controlPoints:o.points||[]};s.edges.push({id:String(o.id),source:String(o.source),target:String(o.target),style:A})}),s}}return t}function Wv(r){const{nodes:e,edges:t=[]}=r,n={nodes:[],edges:[],combos:[]};return e.forEach(i=>{const a=i.data._isCombo?n.combos:n.nodes,{x:s,y:o,z:A=0}=i.data;a==null||a.push({id:i.id,style:{x:s,y:o,z:A}})}),t.forEach(i=>{const{id:a,source:s,target:o,data:{points:A=[],controlPoints:l=A.slice(1,A.length-1)}}=i;n.edges.push({id:a,source:s,target:o,style:Object.assign({},l!=null&&l.length?{controlPoints:l.map(Vr)}:{})})}),n}function NJ(r){return!("forEachNode"in r.prototype)&&!("forEachEdge"in r.prototype)}function PJ(r,e){class t extends Pc{constructor(i,a){if(super(i,a),this.instance=new r({}),this.id=this.instance.id,"stop"in this.instance&&"tick"in this.instance){const s=this.instance;this.stop=s.stop.bind(s),this.tick=o=>{var A;const l=(A=s.tick)===null||A===void 0?void 0:A.call(s,o);return Wv(l)}}}execute(i,a){return BQ(this,void 0,void 0,function*(){return Wv(yield this.instance.execute(this.graphData2LayoutModel(i),this.transformOptions(li({},this.options,a))))})}transformOptions(i){if(!("onTick"in i))return i;const a=i.onTick;return i.onTick=s=>a(Wv(s)),i}graphData2LayoutModel(i){const{nodes:a=[],edges:s=[],combos:o=[]}=i,A=a.map(h=>{const f=ve(h),{data:p,style:g,combo:v}=h,m=MJ(h,["data","style","combo"]),y={id:f,data:Object.assign(Object.assign(Object.assign(Object.assign(Object.assign({},p),{data:p}),v?{parentId:v}:{}),{style:g}),m)};return g!=null&&g.x&&Object.assign(y.data,{x:g.x}),g!=null&&g.y&&Object.assign(y.data,{y:g.y}),g!=null&&g.z&&Object.assign(y.data,{z:g.z}),y}),l=new Map(A.map(h=>[h.id,h])),u=s.filter(h=>{const{source:f,target:p}=h;return l.has(f)&&l.has(p)}).map(h=>{const{source:f,target:p,data:g,style:v}=h;return{id:ve(h),source:f,target:p,data:Object.assign({},g),style:Object.assign({},v)}}),c=o.map(h=>({id:ve(h),data:Object.assign({_isCombo:!0},h.data),style:Object.assign({},h.style)})),d=new Tx({nodes:[...A,...c],edges:u});return e.model.model.hasTreeStructure(yn)&&(d.attachTreeStructure(yn),A.forEach(h=>{const f=e.model.model.getParent(h.id,yn);f&&d.hasNode(f.id)&&d.setParent(h.id,f.id,yn)})),d}}return t}function qv(r,e,...t){if(e in r)return r[e](...t);if("instance"in r){const n=r.instance;if(e in n)return n[e](...t)}return null}function Q_(r,e){if(e in r)return r[e];if("instance"in r){const t=r.instance;if(e in t)return t[e]}return null}var UJ=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class RJ extends Nc{get forceLayoutInstance(){return this.context.layout.getLayoutInstance().find(e=>["d3-force","d3-force-3d"].includes(e==null?void 0:e.id))}validate(e){return this.context.layout?this.forceLayoutInstance?super.validate(e):(vs.warn("DragElementForce only works with d3-force or d3-force-3d layout"),!1):!1}moveElement(e,t){return UJ(this,void 0,void 0,function*(){const n=this.forceLayoutInstance;this.context.graph.getNodeData(e).forEach((i,a)=>{const{x:s=0,y:o=0}=i.style||{};n&&qv(n,"setFixedPosition",e[a],[...xt([+s,+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);const t=this.forceLayoutInstance;t&&Q_(t,"simulation").alphaTarget(.3).restart(),this.context.graph.getNodeData(this.target).forEach(n=>{const{x:i=0,y:a=0}=n.style||{};t&&qv(t,"setFixedPosition",ve(n),[+i,+a])})}onDrag(e){if(!this.enable)return;const t=this.getDelta(e);this.moveElement(this.target,t)}onDragEnd(){const e=this.forceLayoutInstance;e&&Q_(e,"simulation").alphaTarget(0),!this.options.fixed&&this.context.graph.getNodeData(this.target).forEach(t=>{e&&qv(e,"setFixedPosition",ve(t),[null,null,null])})}}var D_=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class Cg extends Ji{constructor(e,t){super(e,Object.assign({},Cg.defaultOptions,t)),this.isZoomEvent=n=>!!(n.data&&"scale"in n.data),this.relatedEdgeToUpdate=new Set,this.zoom=this.context.graph.getZoom(),this.fixElementSize=n=>D_(this,void 0,void 0,function*(){if(!this.validate(n))return;const{graph:i}=this.context,{state:a,nodeFilter:s,edgeFilter:o,comboFilter:A}=this.options,l=(a?i.getElementDataByState("node",a):i.getNodeData()).filter(s),u=(a?i.getElementDataByState("edge",a):i.getEdgeData()).filter(o),c=(a?i.getElementDataByState("combo",a):i.getComboData()).filter(A),d=this.isZoomEvent(n)?this.zoom=Math.max(.01,Math.min(n.data.scale,10)):this.zoom,h=[...l,...c];h.length>0&&h.forEach(f=>this.fixNodeLike(f,d)),this.updateRelatedEdges(),u.length>0&&u.forEach(f=>this.fixEdge(f,d))}),this.cachedStyles=new Map,this.getOriginalFieldValue=(n,i,a)=>{var s;const o=this.cachedStyles.get(n)||[],A=((s=o.find(l=>l.shape===i))===null||s===void 0?void 0:s.style)||{};return a in A||(A[a]=i.attributes[a],this.cachedStyles.set(n,[...o.filter(l=>l.shape!==i),{shape:i,style:A}])),A[a]},this.scaleEntireElement=(n,i,a)=>{i.setLocalScale(1/a);const s=this.cachedStyles.get(n)||[];s.push({shape:i}),this.cachedStyles.set(n,s)},this.scaleSpecificShapes=(n,i,a)=>{const s=$X(n);(Array.isArray(a)?a:[a]).forEach(A=>{const{shape:l,fields:u}=A,c=typeof l=="function"?l(s):n.getShape(l);if(c){if(!u){this.scaleEntireElement(n.id,c,i);return}u.forEach(d=>{const h=this.getOriginalFieldValue(n.id,c,d);Yt(h)&&(c.style[d]=h/i)})}})},this.skipIfExceedViewport=n=>{const{viewport:i}=this.context;return!(i!=null&&i.isInViewport(n.getRenderBounds(),!1,30))},this.fixNodeLike=(n,i)=>{const a=ve(n),{element:s,model:o}=this.context,A=s.getElement(a);if(!A||this.skipIfExceedViewport(A))return;o.getRelatedEdgesData(a).forEach(c=>this.relatedEdgeToUpdate.add(ve(c)));const u=this.options[A.type];if(!u){this.scaleEntireElement(a,A,i);return}this.scaleSpecificShapes(A,i,u)},this.fixEdge=(n,i)=>{const a=ve(n),s=this.context.element.getElement(a);if(!s||this.skipIfExceedViewport(s))return;const o=this.options.edge;if(!o){s.style.transformOrigin="center",this.scaleEntireElement(a,s,i);return}this.scaleSpecificShapes(s,i,o)},this.updateRelatedEdges=()=>{const{element:n}=this.context;this.relatedEdgeToUpdate.size>0&&this.relatedEdgeToUpdate.forEach(i=>{const a=n.getElement(i);a==null||a.update({})}),this.relatedEdgeToUpdate.clear()},this.resetTransform=n=>D_(this,void 0,void 0,function*(){var i;!((i=n.data)===null||i===void 0)&&i.firstRender||(this.options.reset?this.restoreCachedStyles():this.fixElementSize({data:{scale:this.zoom}}))}),this.bindEvents()}restoreCachedStyles(){if(this.cachedStyles.size>0){this.cachedStyles.forEach(i=>{i.forEach(({shape:a,style:s})=>{if(Ja(s))a.setLocalScale(1);else{if(this.options.state)return;Object.entries(s).forEach(([o,A])=>a.style[o]=A)}})});const{graph:e,element:t}=this.context,n=Object.keys(Object.fromEntries(this.cachedStyles)).filter(i=>i&&e.getElementType(i)==="node");if(n.length>0){const i=new Set;n.forEach(a=>{e.getRelatedEdgesData(a).forEach(s=>i.add(ve(s)))}),i.forEach(a=>{const s=t==null?void 0:t.getElement(a);s==null||s.update({})})}}}bindEvents(){const{graph:e}=this.context;e.on(Ge.AFTER_DRAW,this.resetTransform),e.on(Ge.AFTER_TRANSFORM,this.fixElementSize)}unbindEvents(){const{graph:e}=this.context;e.off(Ge.AFTER_DRAW,this.resetTransform),e.off(Ge.AFTER_TRANSFORM,this.fixElementSize)}validate(e){if(this.destroyed)return!1;const{enable:t}=this.options;return At(t)?t(e):!!t}destroy(){this.unbindEvents(),super.destroy()}}Cg.defaultOptions={enable:r=>r.data.scale<1,nodeFilter:()=>!0,edgeFilter:()=>!0,comboFilter:()=>!0,edge:[{shape:"key",fields:["lineWidth"]},{shape:"halo",fields:["lineWidth"]},{shape:"label"}],reset:!1};var QJ=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class Sg extends Ji{constructor(e,t){super(e,Object.assign({},Sg.defaultOptions,t)),this.focus=n=>QJ(this,void 0,void 0,function*(){if(!this.validate(n))return;const{graph:i}=this.context;yield i.focusElement(n.target.id,this.options.animation)}),this.shortcut=new Io(e.graph),this.bindEvents()}bindEvents(){const{graph:e}=this.context;this.unbindEvents(),wA.forEach(t=>{e.on(`${t}:${_e.CLICK}`,this.focus)})}validate(e){if(this.destroyed||!this.isKeydown())return!1;const{enable:t}=this.options;return At(t)?t(e):!!t}isKeydown(){const{trigger:e}=this.options;return e!=null&&e.length?this.shortcut.match(e):!0}unbindEvents(){const{graph:e}=this.context;wA.forEach(t=>{e.off(`${t}:${_e.CLICK}`,this.focus)})}destroy(){this.unbindEvents(),this.shortcut.destroy(),super.destroy()}}Sg.defaultOptions={animation:{easing:"ease-in",duration:500},enable:!0,trigger:[]};class _g extends Ji{constructor(e,t){super(e,Object.assign({},_g.defaultOptions,t)),this.isFrozen=!1,this.toggleFrozen=n=>{this.isFrozen=n.type==="dragstart"},this.hoverElement=n=>{if(!this.validate(n))return;const i=n.type===_e.POINTER_ENTER;this.updateElementsState(n,i);const{onHover:a,onHoverEnd:s}=this.options;i?a==null||a(n):s==null||s(n)},this.updateElementsState=(n,i)=>{if(!this.options.state&&!this.options.inactiveState)return;const{graph:a}=this.context,{state:s,animation:o,inactiveState:A}=this.options,l=this.getActiveIds(n),u={};if(s&&Object.assign(u,this.getElementsState(l,s,i)),A){const c=PR(a.getData(),!0).filter(d=>!l.includes(d));Object.assign(u,this.getElementsState(c,A,i))}a.setElementState(u,o)},this.getElementsState=(n,i,a)=>{const{graph:s}=this.context,o={};return n.forEach(A=>{const l=s.getElementState(A);a?o[A]=l.includes(i)?l:[...l,i]:o[A]=l.filter(u=>u!==i)}),o},this.bindEvents()}bindEvents(){const{graph:e}=this.context;this.unbindEvents(),wA.forEach(n=>{e.on(`${n}:${_e.POINTER_ENTER}`,this.hoverElement),e.on(`${n}:${_e.POINTER_LEAVE}`,this.hoverElement)});const t=this.context.canvas.document;t.addEventListener(`${_e.DRAG_START}`,this.toggleFrozen),t.addEventListener(`${_e.DRAG_END}`,this.toggleFrozen)}getActiveIds(e){const{graph:t}=this.context,{degree:n,direction:i}=this.options,a=e.target.id;return n?WR(t,e.targetType,a,typeof n=="function"?n(e):n,i):[a]}validate(e){if(this.destroyed||this.isFrozen||Lc(e.target)||this.context.graph.isCollapsingExpanding)return!1;const{enable:t}=this.options;return At(t)?t(e):!!t}unbindEvents(){const{graph:e}=this.context;wA.forEach(n=>{e.off(`${n}:${_e.POINTER_ENTER}`,this.hoverElement),e.off(`${n}:${_e.POINTER_LEAVE}`,this.hoverElement)});const t=this.context.canvas.document;t.removeEventListener(`${_e.DRAG_START}`,this.toggleFrozen),t.removeEventListener(`${_e.DRAG_END}`,this.toggleFrozen)}destroy(){this.unbindEvents(),super.destroy()}}_g.defaultOptions={animation:!1,enable:!0,degree:0,direction:"both",state:"active",inactiveState:void 0};class DJ extends Tc{onPointerDown(e){if(!super.validate(e)||!super.isKeydown()||this.points)return;const{canvas:t,graph:n}=this.context;this.pathShape=new Ai({id:"g6-lasso-select",style:this.options.style}),t.appendChild(this.pathShape),this.points=[yf(e,n)]}onPointerMove(e){var t;if(!this.points)return;const{immediately:n,mode:i}=this.options;this.points.push(yf(e,this.context.graph)),(t=this.pathShape)===null||t===void 0||t.setAttribute("d",UX(this.points)),n&&i==="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===void 0||e.remove(),this.pathShape=void 0,this.points=void 0}}class kg extends Ji{constructor(e,t){super(e,Object.assign({},kg.defaultOptions,t)),this.hiddenShapes=[],this.isVisible=!0,this.setElementsVisibility=(n,i,a)=>{n.filter(Boolean).forEach(s=>{i==="hidden"&&!s.isVisible()?this.hiddenShapes.push(s):i==="visible"&&this.hiddenShapes.includes(s)?this.hiddenShapes.splice(this.hiddenShapes.indexOf(s),1):yA(s,i,a)})},this.filterShapes=(n,i)=>{if(At(i))return s=>!i(n,s);const a=i==null?void 0:i[n];return s=>s.className?!(a!=null&&a.includes(s.className)):!0},this.hideShapes=n=>{if(!this.validate(n)||!this.isVisible)return;const{element:i}=this.context,{shapes:a={}}=this.options;this.setElementsVisibility(i.getNodes(),"hidden",this.filterShapes("node",a)),this.setElementsVisibility(i.getEdges(),"hidden",this.filterShapes("edge",a)),this.setElementsVisibility(i.getCombos(),"hidden",this.filterShapes("combo",a)),this.isVisible=!1},this.showShapes=mc(n=>{if(!this.validate(n)||this.isVisible)return;const{element:i}=this.context;this.setElementsVisibility(i.getNodes(),"visible"),this.setElementsVisibility(i.getEdges(),"visible"),this.setElementsVisibility(i.getCombos(),"visible"),this.isVisible=!0},this.options.debounce),this.bindEvents()}bindEvents(){const{graph:e}=this.context;e.on(Ge.BEFORE_TRANSFORM,this.hideShapes),e.on(Ge.AFTER_TRANSFORM,this.showShapes)}unbindEvents(){const{graph:e}=this.context;e.off(Ge.BEFORE_TRANSFORM,this.hideShapes),e.off(Ge.AFTER_TRANSFORM,this.showShapes)}validate(e){if(this.destroyed)return!1;const{enable:t}=this.options;return At(t)?t(e):!!t}update(e){this.unbindEvents(),super.update(e),this.bindEvents()}destroy(){this.unbindEvents(),super.destroy()}}kg.defaultOptions={enable:!0,debounce:200,shapes:r=>r==="node"};var H_=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class Tg extends Ji{constructor(e,t){super(e,Object.assign({},Tg.defaultOptions,t)),this.onWheel=n=>H_(this,void 0,void 0,function*(){this.options.preventDefault&&n.preventDefault();const i=n.deltaX,a=n.deltaY;yield this.scroll([-i,-a],n)}),this.shortcut=new Io(e.graph),this.bindEvents()}update(e){super.update(e),this.bindEvents()}bindEvents(){var e,t;const{trigger:n}=this.options;if(this.shortcut.unbindAll(),ai(n)){(e=this.graphDom)===null||e===void 0||e.removeEventListener(_e.WHEEL,this.onWheel);const{up:i=[],down:a=[],left:s=[],right:o=[]}=n;this.shortcut.bind(i,A=>this.scroll([0,-10],A)),this.shortcut.bind(a,A=>this.scroll([0,10],A)),this.shortcut.bind(s,A=>this.scroll([-10,0],A)),this.shortcut.bind(o,A=>this.scroll([10,0],A))}else(t=this.graphDom)===null||t===void 0||t.addEventListener(_e.WHEEL,this.onWheel,{passive:!1})}get graphDom(){return this.context.graph.getCanvas().getContextService().getDomElement()}formatDisplacement(e){const{sensitivity:t}=this.options;return e=_a(e,t),e=this.clampByDirection(e),e=this.clampByRange(e),e}clampByDirection([e,t]){const{direction:n}=this.options;return n==="x"?t=0:n==="y"&&(e=0),[e,t]}clampByRange([e,t]){const{viewport:n,canvas:i}=this.context,[a,s]=i.getSize(),[o,A,l,u]=ga(this.options.range),c=[s*o,a*A,s*l,a*u],d=Fo(cx(n.getCanvasCenter()),c),h=hn(n.getViewportCenter(),[e,t,0]);if(!Ia(h,d)){const{min:[f,p],max:[g,v]}=d;(h[0]<f&&e>0||h[0]>g&&e<0)&&(e=0),(h[1]<p&&t>0||h[1]>v&&t<0)&&(t=0)}return[e,t]}scroll(e,t){return H_(this,void 0,void 0,function*(){if(!this.validate(t))return;const{onFinish:n}=this.options,i=this.context.graph,a=this.formatDisplacement(e);yield i.translateBy(a,!1),n==null||n()})}validate(e){if(this.destroyed)return!1;const{enable:t}=this.options;return At(t)?t(e):!!t}destroy(){var e;this.shortcut.destroy(),(e=this.graphDom)===null||e===void 0||e.removeEventListener(_e.WHEEL,this.onWheel),super.destroy()}}Tg.defaultOptions={enable:!0,sensitivity:1,preventDefault:!0,range:1/0};var $_=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class Fg extends Ji{constructor(e,t){super(e,Object.assign({},Fg.defaultOptions,t)),this.zoom=(n,i,a)=>$_(this,void 0,void 0,function*(){if(!this.validate(i))return;const{graph:s}=this.context;let o=this.options.origin;!o&&"viewport"in i&&(o=Vr(i.viewport));const{sensitivity:A,onFinish:l}=this.options,u=1+jn(n,-50,50)*A/100,c=s.getZoom();yield s.zoomTo(c*u,a,o),l==null||l()}),this.onReset=()=>$_(this,void 0,void 0,function*(){yield this.context.graph.zoomTo(1,this.options.animation)}),this.preventDefault=n=>{this.options.preventDefault&&n.preventDefault()},this.shortcut=new Io(e.graph),this.bindEvents()}update(e){super.update(e),this.bindEvents()}bindEvents(){const{trigger:e}=this.options;if(this.shortcut.unbindAll(),Array.isArray(e))if(e.includes(_e.PINCH))this.shortcut.bind([_e.PINCH],t=>{this.zoom(t.scale,t,!1)});else{const t=this.context.canvas.getContainer();t==null||t.addEventListener(_e.WHEEL,this.preventDefault),this.shortcut.bind([...e,_e.WHEEL],n=>{const{deltaX:i,deltaY:a}=n;this.zoom(-(a??i),n,!1)})}if(typeof e=="object"){const{zoomIn:t=[],zoomOut:n=[],reset:i=[]}=e;this.shortcut.bind(t,a=>this.zoom(10,a,this.options.animation)),this.shortcut.bind(n,a=>this.zoom(-10,a,this.options.animation)),this.shortcut.bind(i,this.onReset)}}validate(e){if(this.destroyed)return!1;const{enable:t}=this.options;return At(t)?t(e):!!t}destroy(){var e;this.shortcut.destroy(),(e=this.context.canvas.getContainer())===null||e===void 0||e.removeEventListener(_e.WHEEL,this.preventDefault),super.destroy()}}Fg.defaultOptions={animation:{duration:200},enable:!0,sensitivity:1,trigger:[],preventDefault:!0};function G_(r,e,t,n="height"){const i=r[n],a=e[n];return t==="center"?(i+a)/2:r.height}const kA=Object.assign,HJ={getId:r=>r.id||r.name,getPreH:r=>r.preH||0,getPreV:r=>r.preV||0,getHGap:r=>r.hgap||18,getVGap:r=>r.vgap||18,getChildren:r=>r.children,getHeight:r=>r.height||36,getWidth(r){const e=r.label||" ";return r.width||18*e.split("").length}};let z_=class EQ{constructor(e,t){if(this.x=0,this.y=0,this.depth=0,this.children=[],this.hgap=0,this.vgap=0,e instanceof EQ||"x"in e&&"y"in e&&"children"in e){const a=e;return this.data=a.data,this.id=a.id,this.x=a.x,this.y=a.y,this.width=a.width,this.height=a.height,this.depth=a.depth,this.children=a.children,this.parent=a.parent,this.hgap=a.hgap,this.vgap=a.vgap,this.preH=a.preH,void(this.preV=a.preV)}this.data=e;const n=t.getHGap(e),i=t.getVGap(e);this.preH=t.getPreH(e),this.preV=t.getPreV(e),this.width=t.getWidth(e),this.height=t.getHeight(e),this.width+=this.preH,this.height+=this.preV,this.id=t.getId(e),this.addGap(n,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(){const 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(){const e=this.getBoundingBox();this.eachNode(t=>{t.x=t.x-2*(t.x-e.left)-t.width}),this.translate(e.width,0)}bottom2top(){const e=this.getBoundingBox();this.eachNode(t=>{t.y=t.y-2*(t.y-e.top)-t.height}),this.translate(0,e.height)}};function tE(r,e={},t){e=kA({},HJ,e);const n=new z_(r,e),i=[n];let a;if(!t&&!r.collapsed){for(;a=i.shift();)if(!a.data.collapsed){const s=e.getChildren(a.data),o=s?s.length:0;if(a.children=new Array(o),s&&o)for(let A=0;A<o;A++){const l=new z_(s[A],e);a.children[A]=l,i.push(l),l.parent=a,l.depth=a.depth+1}}}return n}let Mg=class{constructor(e,t={}){this.options=t,this.rootNode=tE(e,t)}execute(){throw new Error("please override this method")}},$J=class Th{constructor(e=0,t=0,n=0,i=[]){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=i||[],this.cs=i.length}static fromNode(e,t){if(!e)return null;const n=[];return e.children.forEach(i=>{const a=Th.fromNode(i,t);a&&n.push(a)}),t?new Th(e.height,e.width,e.x,n):new Th(e.width,e.height,e.y,n)}};function xQ(r,e,t){t?r.y+=e:r.x+=e,r.children.forEach(n=>{xQ(n,e,t)})}function CQ(r,e){let t=e?r.y:r.x;return r.children.forEach(n=>{t=Math.min(CQ(n,e),t)}),t}function GJ(r,e){xQ(r,-CQ(r,e),e)}function SQ(r,e,t){t?e.y=r.x:e.x=r.x,r.c.forEach((n,i)=>{SQ(n,e.children[i],t)})}function _Q(r,e,t=0){e?(r.x=t,t+=r.width):(r.y=t,t+=r.height),r.children.forEach(n=>{_Q(n,e,t)})}function zJ(r,e={}){const t=e.isHorizontal;function n(c){c.cs===0?(c.el=c,c.er=c,c.msel=c.mser=0):(c.el=c.c[0].el,c.msel=c.c[0].msel,c.er=c.c[c.cs-1].er,c.mser=c.c[c.cs-1].mser)}function i(c,d,h){let f=c.c[d-1],p=f.mod,g=c.c[d],v=g.mod;for(;f!==null&&g!==null;){h&&A(f)>h.low&&(h=h.nxt);const m=p+f.prelim+f.w-(v+g.prelim);m>0&&(v+=m,h&&a(c,d,h.index,m));const y=A(f),w=A(g);y<=w&&(f=o(f),f!==null&&(p+=f.mod)),y>=w&&(g=s(g),g!==null&&(v+=g.mod))}!f&&g?(function(m,y,w,B){const x=m.c[0].el;x.tl=w;const k=B-w.mod-m.c[0].msel;x.mod+=k,x.prelim-=k,m.c[0].el=m.c[y].el,m.c[0].msel=m.c[y].msel})(c,d,g,v):f&&!g&&(function(m,y,w,B){const x=m.c[y].er;x.tr=w;const k=B-w.mod-m.c[y].mser;x.mod+=k,x.prelim-=k,m.c[y].er=m.c[y-1].er,m.c[y].mser=m.c[y-1].mser})(c,d,f,p)}function a(c,d,h,f){c.c[d].mod+=f,c.c[d].msel+=f,c.c[d].mser+=f,(function(p,g,v,m){if(v!==g-1){const y=g-v;p.c[v+1].shift+=m/y,p.c[g].shift-=m/y,p.c[g].change-=m-m/y}})(c,d,h,f)}function s(c){return c.cs===0?c.tl:c.c[0]}function o(c){return c.cs===0?c.tr:c.c[c.cs-1]}function A(c){return c.y+c.h}function l(c,d,h){for(;h!==null&&c>=h.low;)h=h.nxt;return{low:c,index:d,nxt:h}}_Q(r,t);const u=$J.fromNode(r,t);return u&&((function c(d){if(d.cs===0)return void n(d);c(d.c[0]);let h=l(A(d.c[0].el),0,null);for(let f=1;f<d.cs;++f){c(d.c[f]);const p=A(d.c[f].er);i(d,f,h),h=l(p,f,h)}(function(f){f.prelim=(f.c[0].prelim+f.c[0].mod+f.c[f.cs-1].mod+f.c[f.cs-1].prelim+f.c[f.cs-1].w)/2-f.w/2})(d),n(d)})(u),(function c(d,h){h+=d.mod,d.x=d.prelim+h,(function(f){let p=0,g=0;for(let v=0;v<f.cs;v++)p+=f.c[v].shift,g+=p+f.c[v].change,f.c[v].mod+=g})(d);for(let f=0;f<d.cs;f++)c(d.c[f],h)})(u,0),SQ(u,r,t),GJ(r,t)),r}function kQ(r,e){const t=tE(r.data,e,!0),n=tE(r.data,e,!0),i=r.children.length,a=Math.round(i/2),s=e.getSide||function(o,A){return A<a?"right":"left"};for(let o=0;o<i;o++){const A=r.children[o];s(A,o)==="right"?n.children.push(A):t.children.push(A)}return t.eachNode(o=>{o.isRoot()||(o.side="left")}),n.eachNode(o=>{o.isRoot()||(o.side="right")}),{left:t,right:n}}const Xs=["LR","RL","TB","BT","H","V"],VJ=["LR","RL","H"],KJ=Xs[0];function Fx(r,e,t){const n=e.direction||KJ;if(e.isHorizontal=(a=>VJ.indexOf(a)>-1)(n),Xs.indexOf(n)===-1)throw new TypeError(`Invalid direction: ${n}`);if(n===Xs[0])t(r,e);else if(n===Xs[1])t(r,e),r.right2left();else if(n===Xs[2])t(r,e);else if(n===Xs[3])t(r,e),r.bottom2top();else if(n===Xs[4]||n===Xs[5]){const{left:a,right:s}=kQ(r,e);t(a,e),t(s,e),e.isHorizontal?a.right2left():a.bottom2top(),s.translate(a.x-s.x,a.y-s.y),r.x=a.x,r.y=s.y;const o=r.getBoundingBox();e.isHorizontal?o.top<0&&r.translate(0,-o.top):o.left<0&&r.translate(-o.left,0)}let i=e.fixedRoot;return i===void 0&&(i=!0),i&&r.translate(-(r.x+r.width/2+r.hgap),-(r.y+r.height/2+r.vgap)),(function(a,s){if(s.radial){const[o,A]=s.isHorizontal?["x","y"]:["y","x"],l={x:1/0,y:1/0},u={x:-1/0,y:-1/0};let c=0;a.DFTraverse(f=>{c++;const{x:p,y:g}=f;l.x=Math.min(l.x,p),l.y=Math.min(l.y,g),u.x=Math.max(u.x,p),u.y=Math.max(u.y,g)});const d=u[A]-l[A];if(d===0)return;const h=2*Math.PI/c;a.DFTraverse(f=>{const p=f[A],g=l[A],v=f[o],m=a[o],y=(p-g)/d*(2*Math.PI-h)+h,w=v-m;f.x=Math.cos(y)*w,f.y=Math.sin(y)*w})}})(r,e),r}let jJ=class extends Mg{execute(){return Fx(this.rootNode,this.options,zJ)}};const WJ={};function qJ(r,e){const t=kA({},WJ,e);return new jJ(r,t).execute()}let YJ=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}};const XJ={isHorizontal:!0,nodeSep:20,nodeSize:20,rankSep:200,subTreeSep:10};function TQ(r,e,t){t?(e.x=r.x,e.y=r.y):(e.x=r.y,e.y=r.x),r.children.forEach((n,i)=>{TQ(n,e.children[i],t)})}function ZJ(r,e={}){const t=kA({},XJ,e);let n=0,i=null;const a=(function s(o){o.width=0,o.depth&&o.depth>n&&(n=o.depth);const A=o.children,l=A.length,u=new YJ(0,[]);return A.forEach((c,d)=>{const h=s(c);u.children.push(h),d===0&&(u.leftChild=h),d===l-1&&(u.rightChild=h)}),u.originNode=o,u.isLeaf=o.isLeaf(),u})(r);return(function s(o){if(o.isLeaf||o.children.length===0)o.drawingDepth=n;else{const A=o.children.map(u=>s(u)),l=Math.min(...A);o.drawingDepth=l-1}return o.drawingDepth})(a),(function s(o){o.x=o.drawingDepth*t.rankSep,o.isLeaf?(o.y=0,i&&(o.y=i.y+i.height+t.nodeSep,o.originNode.parent!==i.originNode.parent&&(o.y+=t.subTreeSep)),i=o):(o.children.forEach(A=>{s(A)}),o.y=(o.leftChild.y+o.rightChild.y)/2)})(a),TQ(a,r,t.isHorizontal),r}class JJ extends Mg{execute(){return this.rootNode.width=0,Fx(this.rootNode,this.options,ZJ)}}const eee={};function tee(r,e){const t=kA({},eee,e);return new JJ(r,t).execute()}function ih(r,e,t,n){let i=null;r.eachNode(a=>{(function(s,o,A,l,u){const c=(typeof A=="function"?A(s):A)*s.depth;if(!l)try{if(s.parent&&s.id===s.parent.children[0].id)return s.x+=c,void(s.y=o?o.y:0)}catch{}if(s.x+=c,o){if(s.y=o.y+G_(o,s,u),o.parent&&s.parent&&s.parent.id!==o.parent.id){const d=o.parent,h=d.y+G_(d,s,u);s.y=h>s.y?h:s.y}}else s.y=0})(a,i,e,t,n),i=a})}const xu=["LR","RL","H"],nee=xu[0];let ree=class extends Mg{execute(){const e=this.options,t=this.rootNode;e.isHorizontal=!0;const{indent:n=20,dropCap:i=!0,direction:a=nee,align:s}=e;if(a&&xu.indexOf(a)===-1)throw new TypeError(`Invalid direction: ${a}`);if(a===xu[0])ih(t,n,i,s);else if(a===xu[1])ih(t,n,i,s),t.right2left();else if(a===xu[2]){const{left:o,right:A}=kQ(t,e);ih(o,n,i,s),o.right2left(),ih(A,n,i,s);const l=o.getBoundingBox();A.translate(l.width,0),t.x=A.x-t.width/2}return t}};const iee={};function aee(r,e){const t=kA({},iee,e);return new ree(r,t).execute()}function FQ(r,e){let t=0;return r.children.length?r.children.forEach(n=>{t+=FQ(n,e)}):t=r.height,r._subTreeSep=e.getSubTreeSep(r.data),r.totalHeight=Math.max(r.height,t)+2*r._subTreeSep,r.totalHeight}function MQ(r){const e=r.children,t=e.length;if(t){e.forEach(o=>{MQ(o)});const n=e[0],i=e[t-1],a=i.y-n.y+i.height;let s=0;if(e.forEach(o=>{s+=o.totalHeight}),a>r.height)r.y=n.y+a/2-r.height/2;else if(e.length!==1||r.height>s){const o=r.y+(r.height-a)/2-n.y;e.forEach(A=>{A.translate(0,o)})}else r.y=(n.y+n.height/2+i.y+i.height/2)/2-r.height/2}}const see={getSubTreeSep:()=>0};function oee(r,e={}){return e=kA({},see,e),r.parent={x:0,width:0,height:0,y:0},r.BFTraverse(t=>{t.x=t.parent.x+t.parent.width}),r.parent=void 0,FQ(r,e),r.startY=0,r.y=r.totalHeight/2-r.height/2,r.eachNode(t=>{const n=t.children,i=n.length;if(i){const a=n[0];if(a.startY=t.startY+t._subTreeSep,i===1)a.y=t.y+t.height/2-a.height/2;else{a.y=a.startY+a.totalHeight/2-a.height/2;for(let s=1;s<i;s++){const o=n[s];o.startY=n[s-1].startY+n[s-1].totalHeight,o.y=o.startY+o.totalHeight/2-o.height/2}}}}),MQ(r),r}class Aee extends Mg{execute(){return Fx(this.rootNode,this.options,oee)}}const lee={};function uee(r,e){const t=kA({},lee,e);return new Aee(r,t).execute()}function cee(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t}function Ir(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,[])).next())})}const dee={abs:Math.abs,ceil:Math.ceil,floor:Math.floor,max:Math.max,min:Math.min,round:Math.round,sqrt:Math.sqrt,pow:Math.pow};class dr extends Error{constructor(e,t,n){super(e),this.position=t,this.token=n,this.name="ExpressionError"}}var kt;(function(r){r[r.STRING=0]="STRING",r[r.NUMBER=1]="NUMBER",r[r.BOOLEAN=2]="BOOLEAN",r[r.NULL=3]="NULL",r[r.IDENTIFIER=4]="IDENTIFIER",r[r.OPERATOR=5]="OPERATOR",r[r.FUNCTION=6]="FUNCTION",r[r.DOT=7]="DOT",r[r.BRACKET_LEFT=8]="BRACKET_LEFT",r[r.BRACKET_RIGHT=9]="BRACKET_RIGHT",r[r.PAREN_LEFT=10]="PAREN_LEFT",r[r.PAREN_RIGHT=11]="PAREN_RIGHT",r[r.COMMA=12]="COMMA",r[r.QUESTION=13]="QUESTION",r[r.COLON=14]="COLON",r[r.DOLLAR=15]="DOLLAR"})(kt||(kt={}));const hee=new Set([32,9,10,13]),fee=new Set([43,45,42,47,37,33,38,124,61,60,62]),gee=new Map([["true",kt.BOOLEAN],["false",kt.BOOLEAN],["null",kt.NULL]]),Yv=new Map([["===",!0],["!==",!0],["<=",!0],[">=",!0],["&&",!0],["||",!0],["+",!0],["-",!0],["*",!0],["/",!0],["%",!0],["!",!0],["<",!0],[">",!0]]),pee=new Map([[46,kt.DOT],[91,kt.BRACKET_LEFT],[93,kt.BRACKET_RIGHT],[40,kt.PAREN_LEFT],[41,kt.PAREN_RIGHT],[44,kt.COMMA],[63,kt.QUESTION],[58,kt.COLON],[36,kt.DOLLAR]]),IQ=new Map;for(const[r,e]of pee.entries())IQ.set(r,{type:e,value:String.fromCharCode(r)});function Cu(r){return r>=48&&r<=57}function nE(r){return r>=97&&r<=122||r>=65&&r<=90||r===95}function V_(r){return nE(r)||Cu(r)}function vee(r){return fee.has(r)}var zn;(function(r){r[r.Program=0]="Program",r[r.Literal=1]="Literal",r[r.Identifier=2]="Identifier",r[r.MemberExpression=3]="MemberExpression",r[r.CallExpression=4]="CallExpression",r[r.BinaryExpression=5]="BinaryExpression",r[r.UnaryExpression=6]="UnaryExpression",r[r.ConditionalExpression=7]="ConditionalExpression"})(zn||(zn={}));const mee=new Map([["||",2],["&&",3],["===",4],["!==",4],[">",5],[">=",5],["<",5],["<=",5],["+",6],["-",6],["*",7],["/",7],["%",7],["!",8]]),yee={type:zn.Literal,value:null},wee={type:zn.Literal,value:!0},bee={type:zn.Literal,value:!1},Bee=r=>{let e=0;const t=r.length,n=()=>e>=t?null:r[e],i=()=>r[e++],a=c=>{const d=n();return d!==null&&d.type===c},s=c=>c.type===kt.OPERATOR?mee.get(c.value)||-1:c.type===kt.DOT||c.type===kt.BRACKET_LEFT?9:c.type===kt.QUESTION?1:-1,o=c=>{let d,h;if(i().type===kt.DOT){if(!a(kt.IDENTIFIER)){const p=n();throw new dr("Expected property name",e,p?p.value:"<end of input>")}const f=i();d={type:zn.Identifier,name:f.value},h=!1}else{if(d=l(0),!a(kt.BRACKET_RIGHT)){const f=n();throw new dr("Expected closing bracket",e,f?f.value:"<end of input>")}i(),h=!0}return{type:zn.MemberExpression,object:c,property:d,computed:h}},A=()=>{const c=n();if(!c)throw new dr("Unexpected end of input",e,"<end of input>");if(c.type===kt.OPERATOR&&(c.value==="!"||c.value==="-")){i();const d=A();return{type:zn.UnaryExpression,operator:c.value,argument:d,prefix:!0}}switch(c.type){case kt.NUMBER:return i(),{type:zn.Literal,value:Number(c.value)};case kt.STRING:return i(),{type:zn.Literal,value:c.value};case kt.BOOLEAN:return i(),c.value==="true"?wee:bee;case kt.NULL:return i(),yee;case kt.IDENTIFIER:return i(),{type:zn.Identifier,name:c.value};case kt.FUNCTION:return(()=>{const d=i(),h=[];if(!a(kt.PAREN_LEFT)){const f=n();throw new dr("Expected opening parenthesis after function name",e,f?f.value:"<end of input>")}for(i();;){if(a(kt.PAREN_RIGHT)){i();break}if(!n()){const p=n();throw new dr("Expected closing parenthesis",e,p?p.value:"<end of input>")}if(h.length>0){if(!a(kt.COMMA)){const p=n();throw new dr("Expected comma between function arguments",e,p?p.value:"<end of input>")}i()}const f=l(0);h.push(f)}return{type:zn.CallExpression,callee:{type:zn.Identifier,name:d.value},arguments:h}})();case kt.PAREN_LEFT:{i();const d=l(0);if(!a(kt.PAREN_RIGHT)){const h=n();throw new dr("Expected closing parenthesis",e,h?h.value:"<end of input>")}return i(),d}default:throw new dr(`Unexpected token: ${c.type}`,e,c.value)}},l=(c=0)=>{let d=A();for(;e<t;){const h=r[e],f=s(h);if(f<=c)break;if(h.type!==kt.QUESTION)if(h.type!==kt.OPERATOR){if(h.type!==kt.DOT&&h.type!==kt.BRACKET_LEFT)break;d=o(d)}else{i();const p=l(f);d={type:zn.BinaryExpression,operator:h.value,left:d,right:p}}else{i();const p=l(0);if(!a(kt.COLON)){const v=n();throw new dr("Expected : in conditional expression",e,v?v.value:"<end of input>")}i();const g=l(0);d={type:zn.ConditionalExpression,test:d,consequent:p,alternate:g}}}return d},u=l();return{type:zn.Program,body:u}},Eee=(r,e,t)=>{let n=e;t&&(n={...e,context:{...e.context,...t}});const i=a=>{switch(a.type){case zn.Literal:return(s=>s.value)(a);case zn.Identifier:return(s=>{if(!(s.name in n.context))throw new dr(`Undefined variable: ${s.name}`);return n.context[s.name]})(a);case zn.MemberExpression:return(s=>{const o=i(s.object);if(o==null)throw new dr("Cannot access property of null or undefined");return o[s.computed?i(s.property):s.property.name]})(a);case zn.CallExpression:return(s=>{const o=n.functions[s.callee.name];if(!o)throw new dr(`Undefined function: ${s.callee.name}`);return o(...s.arguments.map((A=>i(A))))})(a);case zn.BinaryExpression:return(s=>{if(s.operator==="&&"){const l=i(s.left);return l&&i(s.right)}if(s.operator==="||")return i(s.left)||i(s.right);const o=i(s.left),A=i(s.right);switch(s.operator){case"+":return o+A;case"-":return o-A;case"*":return o*A;case"/":return o/A;case"%":return o%A;case"===":return o===A;case"!==":return o!==A;case">":return o>A;case">=":return o>=A;case"<":return o<A;case"<=":return o<=A;default:throw new dr(`Unknown operator: ${s.operator}`)}})(a);case zn.UnaryExpression:return(s=>{const o=i(s.argument);if(s.prefix)switch(s.operator){case"!":return!o;case"-":if(typeof o!="number")throw new dr(`Cannot apply unary - to non-number: ${o}`);return-o;default:throw new dr(`Unknown operator: ${s.operator}`)}throw new dr(`Postfix operators are not supported: ${s.operator}`)})(a);case zn.ConditionalExpression:return(s=>{const o=i(s.test);return i(o?s.consequent:s.alternate)})(a);default:throw new dr(`Evaluation error: Unsupported node type: ${a.type}`)}};return i(r.body)};function OQ(r){const e=(i=>{const a=i,s=a.length,o=new Array(Math.ceil(s/3));let A=0,l=0;function u(g){const v=l+1;l++;let m="",y=!1;for(;l<s;){const w=a.charCodeAt(l);if(w===g)return y||(m=a.substring(v,l)),l++,{type:kt.STRING,value:m};w===92?(y||(m=a.substring(v,l),y=!0),l++,m+=a[l]):y&&(m+=a[l]),l++}throw new dr(`Unterminated string starting with ${String.fromCharCode(g)}`,l,a.substring(Math.max(0,l-10),l))}function c(){const g=l;for(a.charCodeAt(l)===45&&l++;l<s&&Cu(a.charCodeAt(l));)l++;if(l<s&&a.charCodeAt(l)===46)for(l++;l<s&&Cu(a.charCodeAt(l));)l++;const v=a.slice(g,l);return{type:kt.NUMBER,value:v}}function d(){l++;const g=l;if(l<s&&nE(a.charCodeAt(l)))for(l++;l<s&&V_(a.charCodeAt(l));)l++;const v=a.slice(g,l);return{type:kt.FUNCTION,value:v}}function h(){const g=l++;for(;l<s&&V_(a.charCodeAt(l));)l++;const v=a.slice(g,l),m=gee.get(v);return m?{type:m,value:v}:{type:kt.IDENTIFIER,value:v}}function f(){if(l+2<s){const v=a.substring(l,l+3);if(Yv.has(v))return l+=3,{type:kt.OPERATOR,value:v}}if(l+1<s){const v=a.substring(l,l+2);if(Yv.has(v))return l+=2,{type:kt.OPERATOR,value:v}}const g=a[l];if(Yv.has(g))return l++,{type:kt.OPERATOR,value:g};throw new dr(`Unknown operator at position ${l}: ${a.substring(l,l+1)}`,l,a.substring(Math.max(0,l-10),l))}for(;l<s;){const g=a.charCodeAt(l);if(p=g,hee.has(p)){l++;continue}const v=IQ.get(g);if(v)o[A++]=v,l++;else if(g!==34&&g!==39)if(Cu(g)||g===45&&l+1<s&&Cu(a.charCodeAt(l+1)))o[A++]=c();else if(g!==64)if(nE(g))o[A++]=h();else{if(!vee(g))throw new dr(`Unexpected character: ${a[l]}`,l,a.substring(Math.max(0,l-10),l));o[A++]=f()}else o[A++]=d();else o[A++]=u(g)}var p;return A===o.length?o:o.slice(0,A)})(r),t=Bee(e),n=((i={},a={})=>({context:i,functions:a}))({},dee);return(i={})=>Eee(t,n,i)}function xee(r,e={}){return OQ(r)(e)}function Cee(r,e){if(typeof r!="string")return;const t=r.trim();if(t)try{return OQ(t),xee(t,e)}catch{return}}function or(r){return typeof r=="number"}function Cf(r){if(!r)return[0,0,0];if(or(r))return[r,r,r];if(Array.isArray(r)&&r.length===0)return[0,0,0];const[e,t=e,n=e]=r;return[e,t,n]}function See(r){return or(r)?!0:Array.isArray(r)?r.every(e=>or(e)):!1}function kr(r){return r==null}function LQ(r){return typeof r=="string"}function NQ(r){return typeof r=="function"}function Tr(r,e){if(typeof r=="function")return r;if(typeof r=="string"){const t=r;return(...n)=>{const i={};for(let a=0;a<e.length;a++)i[e[a]]=n[a];return Cee(t,i)}}return()=>r}function Wi(r,e,t="node"){if(kr(r))return()=>e;if(LQ(r)){const n=Tr(r,[t]);return i=>{const a=n(i);return or(a)?a:e}}return NQ(r)?r:or(r)?()=>r:()=>e}function Sf(r,e=10,t="node"){if(kr(r))return()=>e;if(LQ(r)){const n=Tr(r,[t]);return i=>{const a=n(i);return See(a)?a:e}}return NQ(r)?r:or(r)?()=>r:Array.isArray(r)?()=>r:()=>e}const Hs=(r,e,t=10,n=0)=>{const i=Sf(e,n),a=Sf(r,t);return s=>{const[o,A,l]=Cf(a(s)),[u,c,d]=Cf(i(s));return[o+u,A+c,l+d]}};function PQ(r){var e;return[r.x,r.y,(e=r.z)!==null&&e!==void 0?e:0]}class _ee{constructor(e,t={}){this.edgeIdCounter=new Map,this.nodeMap=Fee(e.nodes,t.node),this.edgeMap=Mee(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();const t=this.indexNodeCache.get(e);return t?this.nodeMap.get(t):void 0}nodeIndexOf(e){var t;return this.nodeIndexCache||this.buildNodeIndexCache(),(t=this.nodeIndexCache.get(e))!==null&&t!==void 0?t:-1}firstNode(){return this.nodeMap.values().next().value}forEachNode(e){let t=0;this.nodeMap.forEach(n=>e(n,t++))}originalNode(e){const t=this.nodeMap.get(e);return t==null?void 0:t._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){const t=this.edgeMap.get(e);return t==null?void 0:t._original}edgeCount(){return this.edgeMap.size}getEdgeId(e){if(e.id)return e.id;const t=`${e.source}-${e.target}`,n=this.edgeIdCounter.get(t)||0,i=n===0?t:`${t}-${n}`;return this.edgeIdCounter.set(t,n+1),i}degree(e,t="both"){this.degreeCache||this.buildDegreeCache();const 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)||[]);const n=this.inAdjacencyCache.get(e),i=this.outAdjacencyCache.get(e);if(!n&&!i)return[];if(!n)return Array.from(i);if(!i)return Array.from(n);const a=new Set;return n.forEach(s=>a.add(s)),i.forEach(s=>a.add(s)),Array.from(a)}successors(e){return this.neighbors(e,"out")}predecessors(e){return this.neighbors(e,"in")}setNodeOrder(e){const t=new Map;for(const 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(const e of this.edges()){const{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});const i=this.degreeCache.get(e.source);i&&(i.out++,i.both++),this.degreeCache.has(n)||this.degreeCache.set(n,{in:0,out:0,both:0});const a=this.degreeCache.get(e.target);a&&(a.in++,a.both++)}}buildAdjacencyCache(){this.inAdjacencyCache=new Map,this.outAdjacencyCache=new Map;for(const 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()}}const kee=["id","x","y","z","vx","vy","vz","fx","fy","fz","parentId"],Tee=["id","source","target","points"];function Fee(r,e){if(!r)throw new Error("Data.nodes is required");const t=new Map;for(const n of r){const i={_original:n};for(const a of kee){const s=n[a];kr(s)||(i[a]=s)}if(e){const a=e(n);for(const s in a){const o=a[s];kr(o)||(i[s]=o)}}if(kr(i.id))throw new Error("Node is missing id field");t.set(i.id,i)}return t}function Mee(r,e,t){const n=new Map;for(const i of r){const a={_original:i};for(const s of Tee){const o=i[s];kr(o)||(a[s]=o)}if(e){const s=e(i);for(const o in s){const A=s[o];kr(A)||(a[o]=A)}}if(kr(a.source)||kr(a.target))throw new Error("Edge is missing source or target field");kr(a.id)&&(a.id=t==null?void 0:t(i)),n.set(a.id,a)}return n}function Mx(r,e,t,n=2){r.forEachNode(i=>{kr(i.x)&&(i.x=Math.random()*e),kr(i.y)&&(i.y=Math.random()*t),n===3&&kr(i.z)&&(i.z=Math.random()*Math.min(e,t))})}class Iee{constructor(e,t={}){this.graph=new _ee(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()}}/**
171
- * @license
172
- * Copyright 2019 Google LLC
173
- * SPDX-License-Identifier: Apache-2.0
174
- */const UQ=Symbol("Comlink.proxy"),Oee=Symbol("Comlink.endpoint"),Lee=Symbol("Comlink.releaseProxy"),Xv=Symbol("Comlink.finalizer"),Fh=Symbol("Comlink.thrown"),RQ=r=>typeof r=="object"&&r!==null||typeof r=="function",Nee={canHandle:r=>RQ(r)&&r[UQ],serialize(r){const{port1:e,port2:t}=new MessageChannel;return DQ(r,e),[t,[t]]},deserialize(r){return r.start(),$Q(r)}},Pee={canHandle:r=>RQ(r)&&Fh in r,serialize({value:r}){let e;return r instanceof Error?e={isError:!0,value:{message:r.message,name:r.name,stack:r.stack}}:e={isError:!1,value:r},[e,[]]},deserialize(r){throw r.isError?Object.assign(new Error(r.value.message),r.value):r.value}},QQ=new Map([["proxy",Nee],["throw",Pee]]);function Uee(r,e){for(const t of r)if(e===t||t==="*"||t instanceof RegExp&&t.test(e))return!0;return!1}function DQ(r,e=globalThis,t=["*"]){e.addEventListener("message",function n(i){if(!i||!i.data)return;if(!Uee(t,i.origin)){console.warn(`Invalid origin '${i.origin}' for comlink proxy`);return}const{id:a,type:s,path:o}=Object.assign({path:[]},i.data),A=(i.data.argumentList||[]).map(eA);let l;try{const u=o.slice(0,-1).reduce((d,h)=>d[h],r),c=o.reduce((d,h)=>d[h],r);switch(s){case"GET":l=c;break;case"SET":u[o.slice(-1)[0]]=eA(i.data.value),l=!0;break;case"APPLY":l=c.apply(u,A);break;case"CONSTRUCT":{const d=new c(...A);l=Gee(d)}break;case"ENDPOINT":{const{port1:d,port2:h}=new MessageChannel;DQ(r,h),l=$ee(d,[d])}break;case"RELEASE":l=void 0;break;default:return}}catch(u){l={value:u,[Fh]:0}}Promise.resolve(l).catch(u=>({value:u,[Fh]:0})).then(u=>{const[c,d]=Tf(u);e.postMessage(Object.assign(Object.assign({},c),{id:a}),d),s==="RELEASE"&&(e.removeEventListener("message",n),HQ(e),Xv in r&&typeof r[Xv]=="function"&&r[Xv]())}).catch(u=>{const[c,d]=Tf({value:new TypeError("Unserializable return value"),[Fh]:0});e.postMessage(Object.assign(Object.assign({},c),{id:a}),d)})}),e.start&&e.start()}function Ree(r){return r.constructor.name==="MessagePort"}function HQ(r){Ree(r)&&r.close()}function $Q(r,e){const t=new Map;return r.addEventListener("message",function(i){const{data:a}=i;if(!a||!a.id)return;const s=t.get(a.id);if(s)try{s(a)}finally{t.delete(a.id)}}),rE(r,t,[],e)}function ah(r){if(r)throw new Error("Proxy has been released and is not useable")}function GQ(r){return al(r,new Map,{type:"RELEASE"}).then(()=>{HQ(r)})}const _f=new WeakMap,kf="FinalizationRegistry"in globalThis&&new FinalizationRegistry(r=>{const e=(_f.get(r)||0)-1;_f.set(r,e),e===0&&GQ(r)});function Qee(r,e){const t=(_f.get(e)||0)+1;_f.set(e,t),kf&&kf.register(r,e,r)}function Dee(r){kf&&kf.unregister(r)}function rE(r,e,t=[],n=function(){}){let i=!1;const a=new Proxy(n,{get(s,o){if(ah(i),o===Lee)return()=>{Dee(a),GQ(r),e.clear(),i=!0};if(o==="then"){if(t.length===0)return{then:()=>a};const A=al(r,e,{type:"GET",path:t.map(l=>l.toString())}).then(eA);return A.then.bind(A)}return rE(r,e,[...t,o])},set(s,o,A){ah(i);const[l,u]=Tf(A);return al(r,e,{type:"SET",path:[...t,o].map(c=>c.toString()),value:l},u).then(eA)},apply(s,o,A){ah(i);const l=t[t.length-1];if(l===Oee)return al(r,e,{type:"ENDPOINT"}).then(eA);if(l==="bind")return rE(r,e,t.slice(0,-1));const[u,c]=K_(A);return al(r,e,{type:"APPLY",path:t.map(d=>d.toString()),argumentList:u},c).then(eA)},construct(s,o){ah(i);const[A,l]=K_(o);return al(r,e,{type:"CONSTRUCT",path:t.map(u=>u.toString()),argumentList:A},l).then(eA)}});return Qee(a,r),a}function Hee(r){return Array.prototype.concat.apply([],r)}function K_(r){const e=r.map(Tf);return[e.map(t=>t[0]),Hee(e.map(t=>t[1]))]}const zQ=new WeakMap;function $ee(r,e){return zQ.set(r,e),r}function Gee(r){return Object.assign(r,{[UQ]:!0})}function Tf(r){for(const[e,t]of QQ)if(t.canHandle(r)){const[n,i]=t.serialize(r);return[{type:"HANDLER",name:e,value:n},i]}return[{type:"RAW",value:r},zQ.get(r)||[]]}function eA(r){switch(r.type){case"HANDLER":return QQ.get(r.name).deserialize(r.value);case"RAW":return r.value}}function al(r,e,t,n){return new Promise(i=>{const a=zee();e.set(a,i),r.start&&r.start(),r.postMessage(Object.assign({id:a},t),n)})}function zee(){return new Array(4).fill(0).map(()=>Math.floor(Math.random()*Number.MAX_SAFE_INTEGER).toString(16)).join("-")}class Vee{constructor(){this.worker=null,this.workerApi=null}execute(e,t,n){return Ir(this,void 0,void 0,function*(){if(this.worker||(yield this.initWorker()),!this.workerApi)throw new 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 Ir(this,void 0,void 0,function*(){const e=this.resolveWorkerPath(),n=e.includes("/lib/")||e.endsWith(".mjs")?"module":"classic";this.worker=new Worker(e,{type:n}),this.workerApi=$Q(this.worker)})}resolveWorkerPath(){const e=(()=>{if(typeof document>"u")return null;const t=document.currentScript;if(t!=null&&t.src)return t.src;const n=document.getElementsByTagName("script");for(let i=n.length-1;i>=0;i--){const a=n[i].src;if(a&&(a.includes("index.js")||a.includes("index.min.js")))return a}return null})();if(e){if(e.includes("index.js")||e.includes("index.min.js")){const i=e.replace(/index(\.min)?\.(m?js)(\?.*)?$/,"worker.js");if(i!==e)return i}const t=e.replace(/\/runtime\/[^/]+\.(m?js)(\?.*)?$/,"/worker.js");if(t!==e)return t;const n=e.replace(/\/[^/]+\.(m?js)(\?.*)?$/,"/worker.js");if(n!==e)return n}return"./worker.js"}}class ws{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 Ir(this,void 0,void 0,function*(){this.runtimeOptions=this.mergeOptions(this.initialOptions,t);const{node:n,edge:i,enableWorker:a}=this.runtimeOptions;this.context=new Iee(e,{node:n,edge:i}),this.model=this.context.graph,a&&typeof Worker<"u"?yield this.layoutInWorker(e,this.runtimeOptions):yield this.layout(this.runtimeOptions)})}layoutInWorker(e,t){var n;return Ir(this,void 0,void 0,function*(){try{this.supervisor||(this.supervisor=new Vee);const i=yield this.supervisor.execute(this.id,e,t);(n=this.context)===null||n===void 0||n.replace(i)}catch(i){console.error("Layout in worker failed, fallback to main thread layout.",i),yield this.layout(t)}})}forEachNode(e){this.context.forEachNode(e)}forEachEdge(e){this.context.forEachEdge(e)}destroy(){var e;(e=this.context)===null||e===void 0||e.destroy(),this.model=null,this.context=null,this.supervisor&&(this.supervisor.destroy(),this.supervisor=null)}}class Ig extends ws{}function iE(r){return!!r.tick&&!!r.stop}class La{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(t=>{this.parentMap.set(t,new Map),this.childrenMap.set(t,new Map)}):(this.attachTreeStructure("default"),this.addTree(e.tree))),e.nodes&&e.nodes.forEach(t=>this.addNode(t)),e.edges&&e.edges.forEach(t=>this.addEdge(t))}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(t=>this.addNode(t))}getNode(e){return this.nodes.get(e)}hasNode(e){return this.nodes.has(e)}removeNode(e){if(!this.nodes.has(e))return;const t=Array.from(this.inEdges.get(e)||[]),n=Array.from(this.outEdges.get(e)||[]);t.forEach(i=>this.removeEdge(i)),n.forEach(i=>this.removeEdge(i)),this.nodes.delete(e),this.inEdges.delete(e),this.outEdges.delete(e),this.parentMap.forEach(i=>{i.delete(e)}),this.childrenMap.forEach(i=>{i.delete(e)})}getAllNodes(){return Array.from(this.nodes.values())}addEdge(e){if(!this.nodes.has(e.source)||!this.nodes.has(e.target))throw new 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(t=>this.addEdge(t))}getEdge(e){return this.edges.get(e)}hasEdge(e){return this.edges.has(e)}removeEdge(e){var t,n;const i=this.edges.get(e);i&&(this.edges.delete(e),(t=this.outEdges.get(i.source))===null||t===void 0||t.delete(e),(n=this.inEdges.get(i.target))===null||n===void 0||n.delete(e))}getAllEdges(){return Array.from(this.edges.values())}updateEdgeData(e,t){const n=this.edges.get(e);n&&Object.assign(n.data,t)}updateNodeData(e,t){const n=this.nodes.get(e);n&&Object.assign(n.data,t)}getRelatedEdges(e,t="both"){const n=[];if(t==="in"||t==="both"){const i=this.inEdges.get(e);i&&i.forEach(a=>{const s=this.edges.get(a);s&&n.push(s)})}if(t==="out"||t==="both"){const i=this.outEdges.get(e);i&&i.forEach(a=>{const s=this.edges.get(a);s&&n.push(s)})}return n}getSuccessors(e){const t=this.outEdges.get(e);if(!t||t.size===0)return[];const n=[];return t.forEach(i=>{const a=this.edges.get(i);if(a){const s=this.nodes.get(a.target);s&&n.push(s)}}),n.length>0?n:[]}getPredecessors(e){const t=this.inEdges.get(e);if(!t||t.size===0)return[];const n=[];return t.forEach(i=>{const a=this.edges.get(i);if(a){const s=this.nodes.get(a.source);s&&n.push(s)}}),n.length>0?n:[]}getNeighbors(e){const t=this.getSuccessors(e)||[],n=this.getPredecessors(e)||[],i=[...t,...n],a=Array.from(new Map(i.map(s=>[s.id,s])).values());return a.length>0?a:[]}attachTreeStructure(e){this.parentMap.has(e)||(this.parentMap.set(e,new Map),this.childrenMap.set(e,new Map))}addTree(e,t){var n,i;const a=t||((i=(n=this.options.tree)===null||n===void 0?void 0:n[0])!==null&&i!==void 0?i:"default");this.hasTreeStructure(a)||this.attachTreeStructure(a);const s=Array.isArray(e)?e:[e],o=(A,l)=>{this.addNode({id:A.id,data:A.data}),l!==void 0&&this.setParent(A.id,l,a),A.children&&A.children.length>0&&A.children.forEach(u=>{o(u,A.id)})};s.forEach(A=>o(A))}hasTreeStructure(e){return this.parentMap.has(e)}setParent(e,t,n){var i,a,s;const o=n||((a=(i=this.options.tree)===null||i===void 0?void 0:i[0])!==null&&a!==void 0?a:"default");this.parentMap.has(o)||this.attachTreeStructure(o);const A=this.parentMap.get(o),l=this.childrenMap.get(o),u=A.get(e);u!==void 0&&((s=l.get(u))===null||s===void 0||s.delete(e)),A.set(e,t),l.has(t)||l.set(t,new Set),l.get(t).add(e)}getParent(e,t){var n,i;const a=t||((i=(n=this.options.tree)===null||n===void 0?void 0:n[0])!==null&&i!==void 0?i:"default");this.parentMap.has(a)||this.attachTreeStructure(a);const s=this.parentMap.get(a);if(!s)return;const o=s.get(e);return o===void 0?null:this.nodes.get(o)}getChildren(e,t){var n,i;const a=t||((i=(n=this.options.tree)===null||n===void 0?void 0:n[0])!==null&&i!==void 0?i:"default"),s=this.childrenMap.get(a);if(!s)return[];const o=s.get(e);return o?Array.from(o).map(A=>this.nodes.get(A)).filter(A=>A!==void 0):[]}getRoots(e){var t,n;const i=e||((n=(t=this.options.tree)===null||t===void 0?void 0:t[0])!==null&&n!==void 0?n:"default"),a=this.parentMap.get(i),s=[];return this.nodes.forEach(o=>{a&&a.get(o.id)!==void 0||s.push(o)}),s}dfsTree(e,t){const n=[e],i=new Set;for(;n.length>0;){const a=n.pop();if(i.has(a))continue;const s=this.getNode(a);if(s){if(i.add(a),t(s)===!0)continue;const A=this.getChildren(a);for(let l=A.length-1;l>=0;l--)i.has(A[l].id)||n.push(A[l].id)}}}}const Kee=(r,e)=>{if(r!=="next"&&r!=="prev")return e},j_=r=>{r.prev.next=r.next,r.next.prev=r.prev,delete r.next,delete r.prev};let jee=class{constructor(){const e={};e.prev=e,e.next=e.prev,this.shortcut=e}dequeue(){const e=this.shortcut,t=e.prev;if(t&&t!==e)return j_(t),t}enqueue(e){const t=this.shortcut;e.prev&&e.next&&j_(e),e.next=t.next,t.next.prev=e,t.next=e,e.prev=t}toString(){const e=[],t=this.shortcut;let n=t.prev;for(;n!==t;)e.push(JSON.stringify(n,Kee)),n=n==null?void 0:n.prev;return`[${e.join(", ")}]`}};class Wee extends jee{}const qee=()=>1,Yee=(r,e)=>{var t;if(r.getAllNodes().length<=1)return[];const n=Zee(r,e||qee);return(t=Xee(n.graph,n.buckets,n.zeroIdx).map(a=>r.getRelatedEdges(a.v,"out").filter(({target:s})=>s===a.w)))===null||t===void 0?void 0:t.flat()},Xee=(r,e,t)=>{let n=[];const i=e[e.length-1],a=e[0];let s;for(;r.getAllNodes().length;){for(;s=a.dequeue();)Zv(r,e,t,s);for(;s=i.dequeue();)Zv(r,e,t,s);if(r.getAllNodes().length){for(let o=e.length-2;o>0;--o)if(s=e[o].dequeue(),s){n=n.concat(Zv(r,e,t,s,!0));break}}}return n},Zv=(r,e,t,n,i)=>{var a,s;const o=[];return r.hasNode(n.v)&&((a=r.getRelatedEdges(n.v,"in"))===null||a===void 0||a.forEach(A=>{const l=A.data.weight,u=r.getNode(A.source);i&&o.push({v:A.source,w:A.target,in:0,out:0}),u.data.out===void 0&&(u.data.out=0),u.data.out-=l,aE(e,t,Object.assign({v:u.id},u.data))}),(s=r.getRelatedEdges(n.v,"out"))===null||s===void 0||s.forEach(A=>{const l=A.data.weight,u=A.target,c=r.getNode(u);c.data.in===void 0&&(c.data.in=0),c.data.in-=l,aE(e,t,Object.assign({v:c.id},c.data))}),r.removeNode(n.v)),i?o:void 0},Zee=(r,e)=>{const t=new La;let n=0,i=0;r.getAllNodes().forEach(A=>{t.addNode({id:A.id,data:{v:A.id,in:0,out:0}})}),r.getAllEdges().forEach(A=>{const l=t.getRelatedEdges(A.source,"out").find(c=>c.target===A.target),u=(e==null?void 0:e(A))||1;l?t.updateEdgeData(l==null?void 0:l.id,Object.assign(Object.assign({},l.data),{weight:l.data.weight+u})):t.addEdge({id:A.id,source:A.source,target:A.target,data:{weight:u}}),i=Math.max(i,t.getNode(A.source).data.out+=u),n=Math.max(n,t.getNode(A.target).data.in+=u)});const a=[],s=i+n+3;for(let A=0;A<s;A++)a.push(new Wee);const o=n+1;return t.getAllNodes().forEach(A=>{aE(a,o,Object.assign({v:A.id},t.getNode(A.id).data))}),{buckets:a,zeroIdx:o,graph:t}},aE=(r,e,t)=>{t.out?t.in?r[t.out-t.in+e].enqueue(t):r[r.length-1].enqueue(t):r[0].enqueue(t)},Jee=(r,e)=>{const n=Yee(r,(i=>a=>a.data.weight||1)());n==null||n.forEach(i=>{const a=i.data;r.removeEdge(i.id),a.forwardName=i.data.name,a.reversed=!0,r.addEdge({id:i.id,source:i.target,target:i.source,data:Object.assign({},a)})})},ete=r=>{r.getAllEdges().forEach(e=>{const t=e.data;if(t.reversed){r.removeEdge(e.id);const n=t.forwardName;delete t.reversed,delete t.forwardName,r.addEdge({id:e.id,source:e.target,target:e.source,data:Object.assign(Object.assign({},t),{forwardName:n})})}})},tte=(r,e)=>Number(r)-Number(e),Pl=(r,e,t,n)=>{let i;do i=`${n}${Math.random()}`;while(r.hasNode(i));return t.dummy=e,r.addNode({id:i,data:t}),i},nte=r=>{const e=new La;return r.getAllNodes().forEach(t=>{e.addNode(Object.assign({},t))}),r.getAllEdges().forEach(t=>{const n=e.getRelatedEdges(t.source,"out").find(i=>i.target===t.target);n?e.updateEdgeData(n==null?void 0:n.id,Object.assign(Object.assign({},n.data),{weight:n.data.weight+t.data.weight||0,minlen:Math.max(n.data.minlen,t.data.minlen||1)})):e.addEdge({id:t.id,source:t.source,target:t.target,data:{weight:t.data.weight||0,minlen:t.data.minlen||1}})}),e},VQ=r=>{const e=new La;return r.getAllNodes().forEach(t=>{r.getChildren(t.id).length||e.addNode(Object.assign({},t))}),r.getAllEdges().forEach(t=>{e.addEdge(t)}),e},rte=(r,e)=>r==null?void 0:r.reduce((t,n,i)=>(t[n]=e[i],t),{}),W_=(r,e)=>{const t=Number(r.x),n=Number(r.y),i=Number(e.x)-t,a=Number(e.y)-n;let s=Number(r.width)/2,o=Number(r.height)/2;if(!i&&!a)return{x:0,y:0};let A,l;return Math.abs(a)*s>Math.abs(i)*o?(a<0&&(o=-o),A=o*i/a,l=o):(i<0&&(s=-s),A=s,l=s*a/i),{x:t+A,y:n+l}},lc=r=>{const e=[],t=KQ(r)+1;for(let n=0;n<t;n++)e.push([]);r.getAllNodes().forEach(n=>{const i=n.data.rank;i!==void 0&&e[i]&&e[i].push(n.id)});for(let n=0;n<t;n++)e[n]=e[n].sort((i,a)=>tte(r.getNode(i).data.order,r.getNode(a).data.order));return e},ite=r=>{const e=r.getAllNodes().filter(n=>n.data.rank!==void 0).map(n=>n.data.rank),t=Math.min(...e);r.getAllNodes().forEach(n=>{n.data.hasOwnProperty("rank")&&t!==1/0&&(n.data.rank-=t)})},ate=(r,e=0)=>{const t=r.getAllNodes(),n=t.filter(o=>o.data.rank!==void 0).map(o=>o.data.rank),i=Math.min(...n),a=[];t.forEach(o=>{const A=(o.data.rank||0)-i;a[A]||(a[A]=[]),a[A].push(o.id)});let s=0;for(let o=0;o<a.length;o++){const A=a[o];A===void 0?o%e!==0&&(s-=1):s&&(A==null||A.forEach(l=>{const u=r.getNode(l);u&&(u.data.rank=u.data.rank||0,u.data.rank+=s)}))}},q_=(r,e,t,n)=>{const i={width:0,height:0};return or(t)&&or(n)&&(i.rank=t,i.order=n),Pl(r,"border",i,e)},KQ=r=>{let e;return r.getAllNodes().forEach(t=>{const n=t.data.rank;n!==void 0&&(e===void 0||n>e)&&(e=n)}),e||(e=0),e},ste=(r,e)=>{const t={lhs:[],rhs:[]};return r==null||r.forEach(n=>{e(n)?t.lhs.push(n):t.rhs.push(n)}),t},Ix=(r,e)=>r.reduce((t,n)=>{const i=e(t),a=e(n);return i>a?n:t}),jQ=(r,e,t,n,i,a)=>{if(!n.includes(e.id)){n.push(e.id),t||a.push(e.id);const s=i(e.id);s&&s.forEach(o=>jQ(r,o,t,n,i,a)),t&&a.push(e.id)}},WQ=(r,e,t,n)=>{const i=Array.isArray(e)?e:[e],a=A=>r.getNeighbors(A),s=[],o=[];return i.forEach(A=>{if(r.hasNode(A.id))jQ(r,A,t==="post",o,a,s);else throw new Error(`Graph does not have node: ${A}`)}),s},ote=r=>{const e=t=>{const n=r.getChildren(t),i=r.getNode(t);if(n!=null&&n.length&&n.forEach(a=>e(a.id)),i.data.hasOwnProperty("minRank")){i.data.borderLeft=[],i.data.borderRight=[];for(let a=i.data.minRank,s=i.data.maxRank+1;a<s;a+=1)Y_(r,"borderLeft","_bl",t,i,a),Y_(r,"borderRight","_br",t,i,a)}};r.getRoots().forEach(t=>e(t.id))},Y_=(r,e,t,n,i,a)=>{const s={rank:a,borderType:e,width:0,height:0},o=a-i.data.minRank,A=i.data[e][o-1],l=Pl(r,"border",s,t);i.data[e][o]=l,r.setParent(l,n),A&&r.addEdge({id:`e${Math.random()}`,source:A,target:l,data:{weight:1}})},Ate=(r,e)=>{const t=e.toLowerCase();(t==="lr"||t==="rl")&&qQ(r)},lte=(r,e)=>{const t=e.toLowerCase();(t==="bt"||t==="rl")&&ute(r),(t==="lr"||t==="rl")&&(cte(r),qQ(r))},qQ=r=>{r.getAllNodes().forEach(e=>{X_(e)}),r.getAllEdges().forEach(e=>{X_(e)})},X_=r=>{const e=r.data.width;r.data.width=r.data.height,r.data.height=e},ute=r=>{r.getAllNodes().forEach(e=>{Jv(e.data)}),r.getAllEdges().forEach(e=>{var t;(t=e.data.points)===null||t===void 0||t.forEach(n=>Jv(n)),e.data.hasOwnProperty("y")&&Jv(e.data)})},Jv=r=>{r!=null&&r.y&&(r.y=-r.y)},cte=r=>{r.getAllNodes().forEach(e=>{e0(e.data)}),r.getAllEdges().forEach(e=>{var t;(t=e.data.points)===null||t===void 0||t.forEach(n=>e0(n)),e.data.hasOwnProperty("x")&&e0(e.data)})},e0=r=>{const e=r.x;r.x=r.y,r.y=e},dte=r=>{const e=Pl(r,"root",{},"_root"),t=hte(r);let n=Math.max(...Object.values(t));Math.abs(n)===1/0&&(n=1);const i=n-1,a=2*i+1;r.getAllEdges().forEach(o=>{o.data.minlen*=a});const s=fte(r)+1;return r.getRoots().forEach(o=>{YQ(r,e,a,s,i,t,o.id)}),{nestingRoot:e,nodeRankFactor:a}},YQ=(r,e,t,n,i,a,s)=>{const o=r.getChildren(s);if(!(o!=null&&o.length)){s!==e&&r.addEdge({id:`e${Math.random()}`,source:e,target:s,data:{weight:0,minlen:t}});return}const A=q_(r,"_bt"),l=q_(r,"_bb"),u=r.getNode(s);r.setParent(A,s),u.data.borderTop=A,r.setParent(l,s),u.data.borderBottom=l,o==null||o.forEach(c=>{YQ(r,e,t,n,i,a,c.id);const d=c.data.borderTop?c.data.borderTop:c.id,h=c.data.borderBottom?c.data.borderBottom:c.id,f=c.data.borderTop?n:2*n,p=d!==h?1:i-a[s]+1;r.addEdge({id:`e${Math.random()}`,source:A,target:d,data:{minlen:p,weight:f,nestingEdge:!0}}),r.addEdge({id:`e${Math.random()}`,source:h,target:l,data:{minlen:p,weight:f,nestingEdge:!0}})}),r.getParent(s)||r.addEdge({id:`e${Math.random()}`,source:e,target:A,data:{weight:0,minlen:i+a[s]}})},hte=r=>{const e={},t=(n,i)=>{const a=r.getChildren(n);a==null||a.forEach(s=>t(s.id,i+1)),e[n]=i};return r.getRoots().forEach(n=>t(n.id,1)),e},fte=r=>{let e=0;return r.getAllEdges().forEach(t=>{e+=t.data.weight}),e},gte=(r,e)=>{e&&r.removeNode(e),r.getAllEdges().forEach(t=>{t.data.nestingEdge&&r.removeEdge(t.id)})},pte="edge",XQ="edge-label",vte=(r,e)=>{r.getAllEdges().forEach(t=>mte(r,t,e))},mte=(r,e,t)=>{let n=e.source,i=r.getNode(n).data.rank;const a=e.target,s=r.getNode(a).data.rank,o=e.data.labelRank;if(s===i+1)return;r.removeEdge(e.id);let A,l,u;for(u=0,++i;i<s;++u,++i)e.data.points=[],l={originalEdge:e,width:0,height:0,rank:i},A=Pl(r,pte,l,"_d"),i===o&&(l.width=e.data.width,l.height=e.data.height,l.dummy=XQ,l.labelpos=e.data.labelpos),r.addEdge({id:`e${Math.random()}`,source:n,target:A,data:{weight:e.data.weight}}),u===0&&t.push(A),n=A;r.addEdge({id:`e${Math.random()}`,source:n,target:a,data:{weight:e.data.weight}})},yte=(r,e)=>{e.forEach(t=>{let n=r.getNode(t);const{data:i}=n,a=i.originalEdge;let s;a&&r.addEdge(a);let o=t;for(;n.data.dummy;)s=r.getSuccessors(o)[0],r.removeNode(o),a.data.points.push({x:n.data.x,y:n.data.y}),n.data.dummy===XQ&&(a.data.x=n.data.x,a.data.y=n.data.y,a.data.width=n.data.width,a.data.height=n.data.height),o=s.id,n=r.getNode(o)})},wte=(r,e,t)=>{const n={};let i;t==null||t.forEach(a=>{let s=r.getParent(a),o,A;for(;s;){if(o=r.getParent(s.id),o?(A=n[o.id],n[o.id]=s.id):(A=i,i=s.id),A&&A!==s.id){e.hasNode(A)||e.addNode({id:A,data:{}}),e.hasNode(s.id)||e.addNode({id:s.id,data:{}}),e.hasEdge(`e${A}-${s.id}`)||e.addEdge({id:`e${A}-${s.id}`,source:A,target:s.id,data:{}});return}s=o}})},bte=(r,e,t)=>{const n=Bte(r),i=new La;return i.addNode({id:n,data:{}}),r.getAllNodes().forEach(a=>{var s,o;const A=r.getParent(a.id);(a.data.rank===e||a.data.minRank<=e&&e<=a.data.maxRank)&&(i.hasNode(a.id)||i.addNode(Object.assign({},a)),A!=null&&A.id&&!i.hasNode(A==null?void 0:A.id)&&i.addNode(Object.assign({},A)),i.setParent(a.id,(A==null?void 0:A.id)||n),r.getRelatedEdges(a.id,t).forEach(l=>{const u=l.source===a.id?l.target:l.source;i.hasNode(u)||i.addNode(Object.assign({},r.getNode(u)));const c=i.getRelatedEdges(u,"out").find(({target:h})=>h===a.id),d=c!==void 0?c.data.weight:0;c?i.updateEdgeData(c.id,Object.assign(Object.assign({},c.data),{weight:l.data.weight+d})):i.addEdge({id:l.id,source:u,target:a.id,data:{weight:l.data.weight+d}})}),a.data.hasOwnProperty("minRank")&&i.updateNodeData(a.id,Object.assign(Object.assign({},a.data),{borderLeft:[(s=a.data.borderLeft)===null||s===void 0?void 0:s[e-a.data.minRank]],borderRight:[(o=a.data.borderRight)===null||o===void 0?void 0:o[e-a.data.minRank]]})))}),i},Bte=r=>{let e;for(;r.hasNode(e=`_root${Math.random()}`););return e},Ete=(r,e,t)=>{const n=rte(t,t.map((u,c)=>c)),a=e.map(u=>{const c=r.getRelatedEdges(u,"out").map(d=>({pos:n[d.target]||0,weight:d.data.weight}));return c==null?void 0:c.sort((d,h)=>d.pos-h.pos)}).flat().filter(u=>u!==void 0);let s=1;for(;s<t.length;)s<<=1;const o=2*s-1;s-=1;const A=Array(o).fill(0,0,o);let l=0;return a==null||a.forEach(u=>{if(u){let c=u.pos+s;A[c]+=u.weight;let d=0;for(;c>0;)c%2&&(d+=A[c+1]),c=c-1>>1,A[c]+=u.weight;l+=u.weight*d}}),l},Z_=(r,e)=>{let t=0;for(let n=1;n<(e==null?void 0:e.length);n+=1)t+=Ete(r,e[n-1],e[n]);return t},J_=r=>{const e={},t=r.getAllNodes(),n=t.map(l=>{var u;return(u=l.data.rank)!==null&&u!==void 0?u:-1/0}),i=Math.max(...n),a=[];for(let l=0;l<i+1;l++)a.push([]);const s=t.sort((l,u)=>r.getNode(l.id).data.rank-r.getNode(u.id).data.rank),A=s.filter(l=>r.getNode(l.id).data.fixorder!==void 0).sort((l,u)=>r.getNode(l.id).data.fixorder-r.getNode(u.id).data.fixorder);return A==null||A.forEach(l=>{isNaN(r.getNode(l.id).data.rank)||a[r.getNode(l.id).data.rank].push(l.id),e[l.id]=!0}),s==null||s.forEach(l=>r.dfsTree(l.id,u=>{if(e.hasOwnProperty(u.id))return!0;e[u.id]=!0,isNaN(u.data.rank)||a[u.data.rank].push(u.id)})),a},xte=(r,e)=>e.map(t=>{const n=r.getRelatedEdges(t,"in");if(!(n!=null&&n.length))return{v:t};const i={sum:0,weight:0};return n==null||n.forEach(a=>{const s=r.getNode(a.source);i.sum+=a.data.weight*s.data.order,i.weight+=a.data.weight}),{v:t,barycenter:i.sum/i.weight,weight:i.weight}}),Cte=(r,e)=>{var t,n,i;const a={};r==null||r.forEach((o,A)=>{a[o.v]={i:A,indegree:0,in:[],out:[],vs:[o.v]};const l=a[o.v];o.barycenter!==void 0&&(l.barycenter=o.barycenter,l.weight=o.weight)}),(t=e.getAllEdges())===null||t===void 0||t.forEach(o=>{const A=a[o.source],l=a[o.target];A!==void 0&&l!==void 0&&(l.indegree++,A.out.push(a[o.target]))});const s=(i=(n=Object.values(a)).filter)===null||i===void 0?void 0:i.call(n,o=>!o.indegree);return Ste(s)},Ste=r=>{var e,t;const n=[],i=A=>l=>{l.merged||(l.barycenter===void 0||A.barycenter===void 0||l.barycenter>=A.barycenter)&&_te(A,l)},a=A=>l=>{l.in.push(A),--l.indegree===0&&r.push(l)};for(;r!=null&&r.length;){const A=r.pop();n.push(A),(e=A.in.reverse())===null||e===void 0||e.forEach(l=>i(A)(l)),(t=A.out)===null||t===void 0||t.forEach(l=>a(A)(l))}const s=n.filter(A=>!A.merged),o=["vs","i","barycenter","weight"];return s.map(A=>{const l={};return o==null||o.forEach(u=>{A[u]!==void 0&&(l[u]=A[u])}),l})},_te=(r,e)=>{var t;let n=0,i=0;r.weight&&(n+=r.barycenter*r.weight,i+=r.weight),e.weight&&(n+=e.barycenter*e.weight,i+=e.weight),r.vs=(t=e.vs)===null||t===void 0?void 0:t.concat(r.vs),r.barycenter=n/i,r.weight=i,r.i=Math.min(e.i,r.i),e.merged=!0},kte=(r,e,t,n)=>{const i=ste(r,d=>{const h=d.hasOwnProperty("fixorder")&&!isNaN(d.fixorder);return n?!h&&d.hasOwnProperty("barycenter"):h||d.hasOwnProperty("barycenter")}),a=i.lhs,s=i.rhs.sort((d,h)=>-d.i- -h.i),o=[];let A=0,l=0,u=0;a==null||a.sort(Tte(!!e,!!t)),u=ek(o,s,u),a==null||a.forEach(d=>{var h;u+=(h=d.vs)===null||h===void 0?void 0:h.length,o.push(d.vs),A+=d.barycenter*d.weight,l+=d.weight,u=ek(o,s,u)});const c={vs:o.flat()};return l&&(c.barycenter=A/l,c.weight=l),c},ek=(r,e,t)=>{let n=t,i;for(;e.length&&(i=e[e.length-1]).i<=n;)e.pop(),r==null||r.push(i.vs),n++;return n},Tte=(r,e)=>(t,n)=>{if(t.fixorder!==void 0&&n.fixorder!==void 0)return t.fixorder-n.fixorder;if(t.barycenter<n.barycenter)return-1;if(t.barycenter>n.barycenter)return 1;if(e&&t.order!==void 0&&n.order!==void 0){if(t.order<n.order)return-1;if(t.order>n.order)return 1}return r?n.i-t.i:t.i-n.i},ZQ=(r,e,t,n,i,a)=>{var s,o,A,l;let u=r.getChildren(e).map(m=>m.id);const c=r.getNode(e),d=c?c.data.borderLeft:void 0,h=c?c.data.borderRight:void 0,f={};d&&(u=u==null?void 0:u.filter(m=>m!==d&&m!==h));const p=xte(r,u||[]);p==null||p.forEach(m=>{var y;if(!((y=r.getChildren(m.v))===null||y===void 0)&&y.length){const w=ZQ(r,m.v,t,n,a);f[m.v]=w,w.hasOwnProperty("barycenter")&&Mte(m,w)}});const g=Cte(p,t);Fte(g,f),(s=g.filter(m=>m.vs.length>0))===null||s===void 0||s.forEach(m=>{const y=r.getNode(m.vs[0]);y&&(m.fixorder=y.data.fixorder,m.order=y.data.order)});const v=kte(g,n,i,a);if(d&&(v.vs=[d,v.vs,h].flat(),!((o=r.getPredecessors(d))===null||o===void 0)&&o.length)){const m=r.getNode(((A=r.getPredecessors(d))===null||A===void 0?void 0:A[0].id)||""),y=r.getNode(((l=r.getPredecessors(h))===null||l===void 0?void 0:l[0].id)||"");v.hasOwnProperty("barycenter")||(v.barycenter=0,v.weight=0),v.barycenter=(v.barycenter*v.weight+m.data.order+y.data.order)/(v.weight+2),v.weight+=2}return v},Fte=(r,e)=>{r==null||r.forEach(t=>{var n;const i=(n=t.vs)===null||n===void 0?void 0:n.map(a=>e[a]?e[a].vs:a);t.vs=i.flat()})},Mte=(r,e)=>{r.barycenter!==void 0?(r.barycenter=(r.barycenter*r.weight+e.barycenter*e.weight)/(r.weight+e.weight),r.weight+=e.weight):(r.barycenter=e.barycenter,r.weight=e.weight)};function Ox(r){return Array.isArray(r)}var Ff=function(r){if(typeof r!="object"||r===null)return r;var e;if(Ox(r)){e=[];for(var t=0,n=r.length;t<n;t++)typeof r[t]=="object"&&r[t]!=null?e[t]=Ff(r[t]):e[t]=r[t]}else{e={};for(var i in r)typeof r[i]=="object"&&r[i]!=null?e[i]=Ff(r[i]):e[i]=r[i]}return e};const Ite=(r,e)=>{const t=KQ(r),n=[],i=[];for(let u=1;u<t+1;u++)n.push(u);for(let u=t-1;u>-1;u--)i.push(u);const a=tk(r,n,"in"),s=tk(r,i,"out");let o=J_(r);t0(r,o);let A=Number.POSITIVE_INFINITY,l;for(let u=0,c=0;c<4;++u,++c){nk(u%2?a:s,u%4>=2,!1,e),o=lc(r);const d=Z_(r,o);d<A&&(c=0,l=Ff(o),A=d)}o=J_(r),t0(r,o);for(let u=0,c=0;c<4;++u,++c){nk(u%2?a:s,u%4>=2,!0,e),o=lc(r);const d=Z_(r,o);d<A&&(c=0,l=Ff(o),A=d)}t0(r,l)},tk=(r,e,t)=>e.map(n=>bte(r,n,t)),nk=(r,e,t,n)=>{const i=new La;r==null||r.forEach(a=>{var s;const o=a.getRoots()[0].id,A=ZQ(a,o,i,e,t,n);for(let l=0;l<((s=A.vs)===null||s===void 0?void 0:s.length);l++){const u=a.getNode(A.vs[l]);u&&(u.data.order=l)}wte(a,i,A.vs)})},t0=(r,e)=>{e==null||e.forEach(t=>{t==null||t.forEach((n,i)=>{r.getNode(n).data.order=i})})},Ote=(r,e)=>{const n=r.getAllNodes().filter(s=>{var o;return!(!((o=r.getChildren(s.id))===null||o===void 0)&&o.length)}).map(s=>s.data.rank),i=Math.max(...n),a=[];for(let s=0;s<i+1;s++)a[s]=[];e==null||e.forEach(s=>{const o=r.getNode(s);!o||o.data.dummy||isNaN(o.data.rank)||(o.data.fixorder=a[o.data.rank].length,a[o.data.rank].push(s))})},Lte=r=>{const e={};let t=0;const n=i=>{const a=t;r.getChildren(i).forEach(s=>n(s.id)),e[i]={low:a,lim:t++}};return r.getRoots().forEach(i=>n(i.id)),e},Nte=(r,e,t,n)=>{var i,a;const s=[],o=[],A=Math.min(e[t].low,e[n].low),l=Math.max(e[t].lim,e[n].lim);let u,c;u=t;do u=(i=r.getParent(u))===null||i===void 0?void 0:i.id,s.push(u);while(u&&(e[u].low>A||l>e[u].lim));for(c=u,u=n;u&&u!==c;)o.push(u),u=(a=r.getParent(u))===null||a===void 0?void 0:a.id;return{lca:c,path:s.concat(o.reverse())}},Pte=(r,e)=>{const t=Lte(r);e.forEach(n=>{var i,a;let s=n,o=r.getNode(s);const A=o.data.originalEdge;if(!A)return;const l=Nte(r,t,A.source,A.target),u=l.path,c=l.lca;let d=0,h=u[d],f=!0;for(;s!==A.target;){if(o=r.getNode(s),f){for(;h!==c&&((i=r.getNode(h))===null||i===void 0?void 0:i.data.maxRank)<o.data.rank;)d++,h=u[d];h===c&&(f=!1)}if(!f){for(;d<u.length-1&&((a=r.getNode(u[d+1]))===null||a===void 0?void 0:a.data.minRank)<=o.data.rank;)d++;h=u[d]}r.hasNode(h)&&r.setParent(s,h),s=r.getSuccessors(s)[0].id}})},Ute=(r,e)=>{const t={},n=(i,a)=>{let s=0,o=0;const A=i.length,l=a==null?void 0:a[(a==null?void 0:a.length)-1];return a==null||a.forEach((u,c)=>{var d;const h=Qte(r,u),f=h?r.getNode(h.id).data.order:A;(h||u===l)&&((d=a.slice(o,c+1))===null||d===void 0||d.forEach(p=>{var g;(g=r.getPredecessors(p))===null||g===void 0||g.forEach(v=>{var m;const y=r.getNode(v.id),w=y.data.order;(w<s||f<w)&&!(y.data.dummy&&(!((m=r.getNode(p))===null||m===void 0)&&m.data.dummy))&&JQ(t,v.id,p)})}),o=c+1,s=f)}),a};return e!=null&&e.length&&e.reduce(n),t},Rte=(r,e)=>{const t={};function n(o,A,l,u,c){var d,h;let f;for(let p=A;p<l;p++)f=o[p],!((d=r.getNode(f))===null||d===void 0)&&d.data.dummy&&((h=r.getPredecessors(f))===null||h===void 0||h.forEach(g=>{const v=r.getNode(g.id);v.data.dummy&&(v.data.order<u||v.data.order>c)&&JQ(t,g.id,f)}))}function i(o){return JSON.stringify(o.slice(1))}function a(o,A){const l=i(o);A.get(l)||(n(...o),A.set(l,!0))}const s=(o,A)=>{let l=-1,u,c=0;const d=new Map;return A==null||A.forEach((h,f)=>{var p;if(((p=r.getNode(h))===null||p===void 0?void 0:p.data.dummy)==="border"){const g=r.getPredecessors(h)||[];g.length&&(u=r.getNode(g[0].id).data.order,a([A,c,f,l,u],d),c=f,l=u)}a([A,c,A.length,u,o.length],d)}),A};return e!=null&&e.length&&e.reduce(s),t},Qte=(r,e)=>{var t,n;if(!((t=r.getNode(e))===null||t===void 0)&&t.data.dummy)return(n=r.getPredecessors(e))===null||n===void 0?void 0:n.find(i=>r.getNode(i.id).data.dummy)},JQ=(r,e,t)=>{let n=e,i=t;if(n>i){const s=n;n=i,i=s}let a=r[n];a||(r[n]=a={}),a[i]=!0},Dte=(r,e,t)=>{let n=e,i=t;if(n>i){const a=e;n=i,i=a}return!!r[n]},Hte=(r,e,t,n)=>{const i={},a={},s={};return e==null||e.forEach(o=>{o==null||o.forEach((A,l)=>{i[A]=A,a[A]=A,s[A]=l})}),e==null||e.forEach(o=>{let A=-1;o==null||o.forEach(l=>{let u=n(l).map(c=>c.id);if(u.length){u=u.sort((d,h)=>s[d]-s[h]);const c=(u.length-1)/2;for(let d=Math.floor(c),h=Math.ceil(c);d<=h;++d){const f=u[d];a[l]===l&&A<s[f]&&!Dte(t,l,f)&&(a[f]=l,a[l]=i[l]=i[f],A=s[f])}}})}),{root:i,align:a}},$te=(r,e,t,n,i,a,s)=>{var o;const A={},l=Gte(r,e,t,i,a,s),u=s?"borderLeft":"borderRight",c=(f,p)=>{let g=l.getAllNodes(),v=g.pop();const m={};for(;v;)m[v.id]?f(v.id):(m[v.id]=!0,g.push(v),g=g.concat(p(v.id))),v=g.pop()},d=f=>{A[f]=(l.getRelatedEdges(f,"in")||[]).reduce((p,g)=>Math.max(p,(A[g.source]||0)+g.data.weight),0)},h=f=>{const p=(l.getRelatedEdges(f,"out")||[]).reduce((v,m)=>Math.min(v,(A[m.target]||0)-m.data.weight),Number.POSITIVE_INFINITY),g=r.getNode(f);p!==Number.POSITIVE_INFINITY&&g.data.borderType!==u&&(A[f]=Math.max(A[f],p))};return c(d,l.getPredecessors.bind(l)),c(h,l.getSuccessors.bind(l)),(o=Object.values(n))===null||o===void 0||o.forEach(f=>{A[f]=A[t[f]]}),A},Gte=(r,e,t,n,i,a)=>{const s=new La,o=jte(n,i,a);return e==null||e.forEach(A=>{let l;A==null||A.forEach(u=>{const c=t[u];if(s.hasNode(c)||s.addNode({id:c,data:{}}),l){const d=t[l],h=s.getRelatedEdges(d,"out").find(f=>f.target===c);h?s.updateEdgeData(h.id,Object.assign(Object.assign({},h.data),{weight:Math.max(o(r,u,l),h.data.weight||0)})):s.addEdge({id:`e${Math.random()}`,source:d,target:c,data:{weight:Math.max(o(r,u,l),0)}})}l=u})}),s},zte=(r,e)=>Ix(Object.values(e),t=>{var n;let i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY;return(n=Object.keys(t))===null||n===void 0||n.forEach(s=>{const o=t[s],A=Wte(r,s)/2;i=Math.max(o+A,i),a=Math.min(o-A,a)}),i-a});function Vte(r,e){const t=Object.values(e),n=Math.min(...t),i=Math.max(...t);["u","d"].forEach(a=>{["l","r"].forEach(s=>{const o=a+s,A=r[o];let l;if(A===e)return;const u=Object.values(A);l=s==="l"?n-Math.min(...u):i-Math.max(...u),l&&(r[o]={},Object.keys(A).forEach(c=>{r[o][c]=A[c]+l}))})})}const Kte=(r,e)=>{const t={};return Object.keys(r.ul).forEach(n=>{if(e)t[n]=r[e.toLowerCase()][n];else{const i=Object.values(r).map(a=>a[n]);t[n]=(i[0]+i[1])/2}}),t},jte=(r,e,t)=>(n,i,a)=>{const s=n.getNode(i),o=n.getNode(a);let A=0,l=0;if(A+=s.data.width/2,s.data.hasOwnProperty("labelpos"))switch((s.data.labelpos||"").toLowerCase()){case"l":l=-s.data.width/2;break;case"r":l=s.data.width/2;break}if(l&&(A+=t?l:-l),l=0,A+=(s.data.dummy?e:r)/2,A+=(o.data.dummy?e:r)/2,A+=o.data.width/2,o.data.labelpos)switch((o.data.labelpos||"").toLowerCase()){case"l":l=o.data.width/2;break;case"r":l=-o.data.width/2;break}return l&&(A+=t?l:-l),l=0,A},Wte=(r,e)=>r.getNode(e).data.width||0,qte=(r,e)=>{const{ranksep:t=0}=e||{},n=lc(r);let i=0;n==null||n.forEach(a=>{const s=a.map(A=>r.getNode(A).data.height),o=Math.max(...s,0);a==null||a.forEach(A=>{r.getNode(A).data.y=i+o/2}),i+=o+t})},Yte=(r,e)=>{const{align:t,nodesep:n=0,edgesep:i=0}=e||{},a=lc(r),s=Object.assign(Ute(r,a),Rte(r,a)),o={};let A=[];["u","d"].forEach(u=>{A=u==="u"?a:Object.values(a).reverse(),["l","r"].forEach(c=>{c==="r"&&(A=A.map(p=>Object.values(p).reverse()));const d=(u==="u"?r.getPredecessors:r.getSuccessors).bind(r),h=Hte(r,A,s,d),f=$te(r,A,h.root,h.align,n,i,c==="r");c==="r"&&Object.keys(f).forEach(p=>f[p]=-f[p]),o[u+c]=f})});const l=zte(r,o);return l&&Vte(o,l),Kte(o,t)},Xte=(r,e)=>{var t;const n=VQ(r);qte(n,e);const i=Yte(n,e);(t=Object.keys(i))===null||t===void 0||t.forEach(a=>{n.getNode(a).data.x=i[a]})},eD=r=>{const e={},t=n=>{var i;const a=r.getNode(n);if(!a)return 0;if(e[n])return a.data.rank;e[n]=!0;let s;return(i=r.getRelatedEdges(n,"out"))===null||i===void 0||i.forEach(o=>{const A=t(o.target),l=o.data.minlen,u=A-l;u&&(s===void 0||u<s)&&(s=u)}),s||(s=0),a.data.rank=s,s};r.getAllNodes().filter(n=>r.getRelatedEdges(n.id,"in").length===0).forEach(n=>t(n.id))},Zte=r=>{const e={};let t;const n=s=>{var o;const A=r.getNode(s);if(!A)return 0;if(e[s])return A.data.rank;e[s]=!0;let l;return(o=r.getRelatedEdges(s,"out"))===null||o===void 0||o.forEach(u=>{const c=n(u.target),d=u.data.minlen,h=c-d;h&&(l===void 0||h<l)&&(l=h)}),l||(l=0),(t===void 0||l<t)&&(t=l),A.data.rank=l,l};r.getAllNodes().filter(s=>r.getRelatedEdges(s.id,"in").length===0).forEach(s=>{s&&n(s.id)}),t===void 0&&(t=0);const i={},a=(s,o)=>{var A;const l=r.getNode(s),u=isNaN(l.data.layer)?o:l.data.layer;(l.data.rank===void 0||l.data.rank<u)&&(l.data.rank=u),!i[s]&&(i[s]=!0,(A=r.getRelatedEdges(s,"out"))===null||A===void 0||A.forEach(c=>{a(c.target,u+c.data.minlen)}))};r.getAllNodes().forEach(s=>{const o=s.data;o&&(isNaN(o.layer)?o.rank-=t:a(s.id,o.layer))})},_o=(r,e)=>r.getNode(e.target).data.rank-r.getNode(e.source).data.rank-e.data.minlen,Jte=r=>{const e=new La({tree:[]}),t=r.getAllNodes()[0],n=r.getAllNodes().length;e.addNode(t);let i,a;for(;ene(e,r)<n;)i=tD(e,r),a=e.hasNode(i.source)?_o(r,i):-_o(r,i),nD(e,r,a);return e},ene=(r,e)=>{const t=n=>{e.getRelatedEdges(n,"both").forEach(i=>{const a=i.source,s=n===a?i.target:a;!r.hasNode(s)&&!_o(e,i)&&(r.addNode({id:s,data:{}}),r.addEdge({id:i.id,source:n,target:s,data:{}}),t(s))})};return r.getAllNodes().forEach(n=>t(n.id)),r.getAllNodes().length},tne=r=>{const e=new La({tree:[]}),t=r.getAllNodes()[0],n=r.getAllNodes().length;e.addNode(t);let i,a;for(;nne(e,r)<n;)i=tD(e,r),a=e.hasNode(i.source)?_o(r,i):-_o(r,i),nD(e,r,a);return e},nne=(r,e)=>{const t=n=>{var i;(i=e.getRelatedEdges(n,"both"))===null||i===void 0||i.forEach(a=>{const s=a.source,o=n===s?a.target:s;!r.hasNode(o)&&(e.getNode(o).data.layer!==void 0||!_o(e,a))&&(r.addNode({id:o,data:{}}),r.addEdge({id:a.id,source:n,target:o,data:{}}),t(o))})};return r.getAllNodes().forEach(n=>t(n.id)),r.getAllNodes().length},tD=(r,e)=>Ix(e.getAllEdges(),t=>r.hasNode(t.source)!==r.hasNode(t.target)?_o(e,t):1/0),nD=(r,e,t)=>{r.getAllNodes().forEach(n=>{const i=e.getNode(n.id);i.data.rank||(i.data.rank=0),i.data.rank+=t})},rne=r=>{const e=nte(r);eD(e);const t=Jte(e);iD(t),rD(t,e);let n,i;for(;n=sne(t);)i=one(t,e,n),Ane(t,e,n,i)},rD=(r,e)=>{let t=WQ(r,r.getAllNodes(),"post");t=t.slice(0,(t==null?void 0:t.length)-1),t.forEach(n=>{ine(r,e,n)})},ine=(r,e,t)=>{const i=r.getNode(t).data.parent,a=r.getRelatedEdges(t,"both").find(s=>s.target===i||s.source===i);a.data.cutvalue=ane(r,e,t)},ane=(r,e,t)=>{const i=r.getNode(t).data.parent;let a=!0,s=e.getRelatedEdges(t,"out").find(A=>A.target===i),o=0;return s||(a=!1,s=e.getRelatedEdges(i,"out").find(A=>A.target===t)),o=s.data.weight,e.getRelatedEdges(t,"both").forEach(A=>{const l=A.source===t,u=l?A.target:A.source;if(u!==i){const c=l===a,d=A.data.weight;if(o+=c?d:-d,une(r,t,u)){const h=r.getRelatedEdges(t,"both").find(f=>f.source===u||f.target===u).data.cutvalue;o+=c?-h:h}}}),o},iD=(r,e=r.getAllNodes()[0].id)=>{aD(r,{},1,e)},aD=(r,e,t,n,i)=>{var a;const s=t;let o=t;const A=r.getNode(n);return e[n]=!0,(a=r.getNeighbors(n))===null||a===void 0||a.forEach(l=>{e[l.id]||(o=aD(r,e,o,l.id,n))}),A.data.low=s,A.data.lim=o++,i?A.data.parent=i:delete A.data.parent,o},sne=r=>r.getAllEdges().find(e=>e.data.cutvalue<0),one=(r,e,t)=>{let n=t.source,i=t.target;e.getRelatedEdges(n,"out").find(u=>u.target===i)||(n=t.target,i=t.source);const a=r.getNode(n),s=r.getNode(i);let o=a,A=!1;a.data.lim>s.data.lim&&(o=s,A=!0);const l=e.getAllEdges().filter(u=>A===rk(r.getNode(u.source),o)&&A!==rk(r.getNode(u.target),o));return Ix(l,u=>_o(e,u))},Ane=(r,e,t,n)=>{const i=r.getRelatedEdges(t.source,"both").find(a=>a.source===t.target||a.target===t.target);i&&r.removeEdge(i.id),r.addEdge({id:`e${Math.random()}`,source:n.source,target:n.target,data:{}}),iD(r),rD(r,e),lne(r,e)},lne=(r,e)=>{const t=r.getAllNodes().find(i=>!i.data.parent);let n=WQ(r,t,"pre");n=n.slice(1),n.forEach(i=>{const a=r.getNode(i).data.parent;let s=e.getRelatedEdges(i,"out").find(A=>A.target===a),o=!1;!s&&e.hasNode(a)&&(s=e.getRelatedEdges(a,"out").find(A=>A.target===i),o=!0),e.getNode(i).data.rank=(e.hasNode(a)&&e.getNode(a).data.rank||0)+(o?s==null?void 0:s.data.minlen:-(s==null?void 0:s.data.minlen))})},une=(r,e,t)=>r.getRelatedEdges(e,"both").find(n=>n.source===t||n.target===t),rk=(r,e)=>e.data.low<=r.data.lim&&r.data.lim<=e.data.lim,cne=(r,e)=>{switch(e){case"network-simplex":hne(r);break;case"tight-tree":ik(r);break;case"longest-path":dne(r);break;default:ik(r)}},dne=eD,ik=r=>{Zte(r),tne(r)},hne=r=>{rne(r)},fne=(r,e)=>{const{edgeLabelSpace:t,keepNodeOrder:n,prevGraph:i,rankdir:a,ranksep:s}=e;!n&&i&&pne(r,i);const o=Bne(r);t&&(e.ranksep=Ene(o,{rankdir:a,ranksep:s}));let A;try{A=gne(o,e)}catch(l){if(l.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:
175
- `,l);return}throw l}return vne(r,o),A},gne=(r,e)=>{const{ranker:t,rankdir:n="tb",nodeOrder:i,keepNodeOrder:a,align:s,nodesep:o=50,edgesep:A=20,ranksep:l=50}=e;Ine(r),Jee(r);const{nestingRoot:u,nodeRankFactor:c}=dte(r);cne(VQ(r),t),xne(r),ate(r,c),gte(r,u),ite(r),Cne(r),Sne(r);const d=[];vte(r,d),Pte(r,d),ote(r),a&&Ote(r,i),Ite(r,a),One(r),Ate(r,n),Xte(r,{align:s,nodesep:o,edgesep:A,ranksep:l}),Lne(r),Mne(r),yte(r,d),Tne(r),lte(r,n);const{width:h,height:f}=_ne(r);return kne(r),Fne(r),ete(r),{width:h,height:f}},pne=(r,e)=>{r.getAllNodes().forEach(t=>{const n=r.getNode(t.id);if(e.hasNode(t.id)){const i=e.getNode(t.id);n.data.fixorder=i.data._order,delete i.data._order}else delete n.data.fixorder})},vne=(r,e)=>{r.getAllNodes().forEach(t=>{var n;const i=r.getNode(t.id);if(i){const a=e.getNode(t.id);i.data.x=a.data.x,i.data.y=a.data.y,i.data._order=a.data.order,i.data._rank=a.data.rank,!((n=e.getChildren(t.id))===null||n===void 0)&&n.length&&(i.data.width=a.data.width,i.data.height=a.data.height)}}),r.getAllEdges().forEach(t=>{const n=r.getEdge(t.id),i=e.getEdge(t.id);n.data.points=i?i.data.points:[],i&&i.data.hasOwnProperty("x")&&(n.data.x=i.data.x,n.data.y=i.data.y)})},mne=["width","height","layer","fixorder"],yne={width:0,height:0},wne=["minlen","weight","width","height","labeloffset"],bne={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},n0=["labelpos"],Bne=r=>{const e=new La({tree:[]});return r.getAllNodes().forEach(t=>{const n=sk(r.getNode(t.id).data),i=Object.assign(Object.assign({},yne),n),a=ak(i,mne);e.hasNode(t.id)||e.addNode({id:t.id,data:Object.assign({},a)});const s=r.hasTreeStructure("combo")?r.getParent(t.id,"combo"):r.getParent(t.id);kr(s)||(e.hasNode(s.id)||e.addNode(Object.assign({},s)),e.setParent(t.id,s.id))}),r.getAllEdges().forEach(t=>{const n=sk(r.getEdge(t.id).data),i={};n0==null||n0.forEach(a=>{n[a]!==void 0&&(i[a]=n[a])}),e.addEdge({id:t.id,source:t.source,target:t.target,data:Object.assign({},bne,ak(n,wne),i)})}),e},Ene=(r,e)=>{const{ranksep:t=0,rankdir:n}=e;return r.getAllNodes().forEach(i=>{isNaN(i.data.layer)||i.data.layer||(i.data.layer=0)}),r.getAllEdges().forEach(i=>{var a;i.data.minlen*=2,((a=i.data.labelpos)===null||a===void 0?void 0:a.toLowerCase())!=="c"&&(n==="TB"||n==="BT"?i.data.width+=i.data.labeloffset:i.data.height+=i.data.labeloffset)}),t/2},xne=r=>{r.getAllEdges().forEach(e=>{if(e.data.width&&e.data.height){const t=r.getNode(e.source),n=r.getNode(e.target),i={e,rank:(n.data.rank-t.data.rank)/2+t.data.rank};Pl(r,"edge-proxy",i,"_ep")}})},Cne=r=>{let e=0;return r.getAllNodes().forEach(t=>{var n,i;t.data.borderTop&&(t.data.minRank=(n=r.getNode(t.data.borderTop))===null||n===void 0?void 0:n.data.rank,t.data.maxRank=(i=r.getNode(t.data.borderBottom))===null||i===void 0?void 0:i.data.rank,e=Math.max(e,t.data.maxRank||-1/0))}),e},Sne=r=>{r.getAllNodes().forEach(e=>{e.data.dummy==="edge-proxy"&&(r.getEdge(e.data.e.id).data.labelRank=e.data.rank,r.removeNode(e.id))})},_ne=(r,e)=>{let t,n=0,i,a=0;const{marginx:s=0,marginy:o=0}={},A=l=>{if(!l.data)return;const u=l.data.x,c=l.data.y,d=l.data.width,h=l.data.height;!isNaN(u)&&!isNaN(d)&&(t===void 0&&(t=u-d/2),t=Math.min(t,u-d/2),n=Math.max(n,u+d/2)),!isNaN(c)&&!isNaN(h)&&(i===void 0&&(i=c-h/2),i=Math.min(i,c-h/2),a=Math.max(a,c+h/2))};return r.getAllNodes().forEach(l=>{A(l)}),r.getAllEdges().forEach(l=>{l!=null&&l.data.hasOwnProperty("x")&&A(l)}),t-=s,i-=o,r.getAllNodes().forEach(l=>{l.data.x-=t,l.data.y-=i}),r.getAllEdges().forEach(l=>{var u;(u=l.data.points)===null||u===void 0||u.forEach(c=>{c.x-=t,c.y-=i}),l.data.hasOwnProperty("x")&&(l.data.x-=t),l.data.hasOwnProperty("y")&&(l.data.y-=i)}),{width:n-t+s,height:a-i+o}},kne=r=>{r.getAllEdges().forEach(e=>{const t=r.getNode(e.source),n=r.getNode(e.target);let i,a;e.data.points?(i=e.data.points[0],a=e.data.points[e.data.points.length-1]):(e.data.points=[],i={x:n.data.x,y:n.data.y},a={x:t.data.x,y:t.data.y}),e.data.points.unshift(W_(t.data,i)),e.data.points.push(W_(n.data,a))})},Tne=r=>{r.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}})},Fne=r=>{r.getAllEdges().forEach(e=>{var t;e.data.reversed&&((t=e.data.points)===null||t===void 0||t.reverse())})},Mne=r=>{r.getAllNodes().forEach(e=>{var t,n,i;if(!((t=r.getChildren(e.id))===null||t===void 0)&&t.length){const a=r.getNode(e.id),s=r.getNode(a.data.borderTop),o=r.getNode(a.data.borderBottom),A=r.getNode(a.data.borderLeft[((n=a.data.borderLeft)===null||n===void 0?void 0:n.length)-1]),l=r.getNode(a.data.borderRight[((i=a.data.borderRight)===null||i===void 0?void 0:i.length)-1]);a.data.width=Math.abs((l==null?void 0:l.data.x)-(A==null?void 0:A.data.x))||10,a.data.height=Math.abs((o==null?void 0:o.data.y)-(s==null?void 0:s.data.y))||10,a.data.x=((A==null?void 0:A.data.x)||0)+a.data.width/2,a.data.y=((s==null?void 0:s.data.y)||0)+a.data.height/2}}),r.getAllNodes().forEach(e=>{e.data.dummy==="border"&&r.removeNode(e.id)})},Ine=r=>{r.getAllEdges().forEach(e=>{if(e.source===e.target){const t=r.getNode(e.source);t.data.selfEdges||(t.data.selfEdges=[]),t.data.selfEdges.push(e),r.removeEdge(e.id)}})},One=r=>{const e=lc(r);e==null||e.forEach(t=>{let n=0;t==null||t.forEach((i,a)=>{var s;const o=r.getNode(i);o.data.order=a+n,(s=o.data.selfEdges)===null||s===void 0||s.forEach(A=>{Pl(r,"selfedge",{width:A.data.width,height:A.data.height,rank:o.data.rank,order:a+ ++n,e:A},"_se")}),delete o.data.selfEdges})})},Lne=r=>{r.getAllNodes().forEach(e=>{const t=r.getNode(e.id);if(t.data.dummy==="selfedge"){const n=r.getNode(t.data.e.source),i=n.data.x+n.data.width/2,a=n.data.y,s=t.data.x-i,o=n.data.height/2;r.hasEdge(t.data.e.id)?r.updateEdgeData(t.data.e.id,t.data.e.data):r.addEdge({id:t.data.e.id,source:t.data.e.source,target:t.data.e.target,data:t.data.e.data}),r.removeNode(e.id),t.data.e.data.points=[{x:i+2*s/3,y:a-o},{x:i+5*s/6,y:a-o},{y:a,x:i+s},{x:i+5*s/6,y:a+o},{x:i+2*s/3,y:a+o}],t.data.e.data.x=t.data.x,t.data.e.data.y=t.data.y}})},ak=(r,e)=>{const t={};return e==null||e.forEach(n=>{r[n]!==void 0&&(t[n]=+r[n])}),t},sk=(r={})=>{const e={};return Object.keys(r).forEach(t=>{e[t.toLowerCase()]=r[t]}),e},r0={nodeSize:10,nodeSpacing:0,rankdir:"TB",nodesep:50,ranksep:50,edgeLabelSpace:!0,ranker:"tight-tree",controlPoints:!1,radial:!1,focusNode:null};class sD extends ws{constructor(){super(...arguments),this.id="antv-dagre"}getDefaultOptions(){return r0}layout(e){return Ir(this,void 0,void 0,function*(){const{nodeSize:t,nodeSpacing:n,align:i,rankdir:a="TB",ranksep:s,nodesep:o,edgeLabelSpace:A,ranker:l="tight-tree",nodeOrder:u,begin:c,controlPoints:d,radial:h,sortByCombo:f,preset:p,ranksepFunc:g,nodesepFunc:v}=e,m=Wi(g,s??50,"node"),y=Wi(v,o??50,"node");let w=y,B=m;(a==="LR"||a==="RL")&&(w=m,B=y);const x=new La({tree:[]}),k=this.model.nodes(),_=this.model.edges(),T=Hs(t,n,r0.nodeSize,r0.nodeSpacing);k.forEach(P=>{var G;const ee=P._original,te=T(ee),N=B(ee),K=w(ee),J=te[0]+2*K,be=te[1]+2*N,re=(G=P.data)===null||G===void 0?void 0:G.layer;or(re)?x.addNode({id:P.id,data:{width:J,height:be,layer:re,originalWidth:te[0],originalHeight:te[1]}}):x.addNode({id:P.id,data:{width:J,height:be,originalWidth:te[0],originalHeight:te[1]}})}),_.forEach(P=>{x.addEdge({id:P.id,source:P.source,target:P.target,data:{}})}),f&&(x.attachTreeStructure("combo"),k.forEach(P=>{const G=P==null?void 0:P.parentId;G!==void 0&&x.hasNode(G)&&x.setParent(P.id,G,"combo")}));let F=null;p!=null&&p.length&&(F=new La,p.forEach(P=>{F.addNode({id:P.id,data:P.data})})),fne(x,{prevGraph:F,edgeLabelSpace:A,keepNodeOrder:!!u,nodeOrder:u||[],acyclicer:"greedy",ranker:l,rankdir:a,nodesep:o,align:i});const I=[0,0];if(c){let P=1/0,G=1/0;x.getAllNodes().forEach(ee=>{P>ee.data.x&&(P=ee.data.x),G>ee.data.y&&(G=ee.data.y)}),x.getAllEdges().forEach(ee=>{var te;(te=ee.data.points)===null||te===void 0||te.forEach(N=>{P>N.x&&(P=N.x),G>N.y&&(G=N.y)})}),I[0]=c[0]-P,I[1]=c[1]-G}const O=a==="LR"||a==="RL";if(!h){const P=new Set,ee=a==="BT"||a==="RL"?(J,be)=>be-J:(J,be)=>J-be;x.getAllNodes().forEach(J=>{J.data.x=J.data.x+I[0],J.data.y=J.data.y+I[1],P.add(O?J.data.x:J.data.y)});const te=Array.from(P).sort(ee),N=O?(J,be)=>J.x!==be.x:(J,be)=>J.y!==be.y,K=O?(J,be,re)=>{const ne=Math.max(be.y,re.y),ue=Math.min(be.y,re.y);return J.filter(Y=>Y.y<=ne&&Y.y>=ue)}:(J,be,re)=>{const ne=Math.max(be.x,re.x),ue=Math.min(be.x,re.x);return J.filter(Y=>Y.x<=ne&&Y.x>=ue)};x.getAllEdges().forEach((J,be)=>{var re;A&&d&&J.data.type!=="loop"&&(J.data.controlPoints=Nne((re=J.data.points)===null||re===void 0?void 0:re.map(({x:ne,y:ue})=>({x:ne+I[0],y:ue+I[1]})),x.getNode(J.source),x.getNode(J.target),te,O,N,K))})}this.model.forEachNode(P=>{const G=x.getNode(P.id);if(G){const{x:ee,y:te,width:N,height:K,originalWidth:J,originalHeight:be}=G.data,re=f?x.getChildren(P.id,"combo"):x.getChildren(P.id);if(re.length>0){let ue=1/0,Y=-1/0,U=1/0,W=-1/0;re.forEach(X=>{const xe=X.id,ce=x.getNode(xe);if(ce!=null&&ce.data){const De=ce.data.x,He=ce.data.y,Xe=ce.data.originalWidth||ce.data.width||0,ct=ce.data.originalHeight||ce.data.height||0;ue=Math.min(ue,De-Xe/2),Y=Math.max(Y,De+Xe/2),U=Math.min(U,He-ct/2),W=Math.max(W,He+ct/2)}});const ie=20,Ee=(Y-ue||0)+ie*2,de=(W-U||0)+ie*2;P.x=(ue+Y)/2,P.y=(U+W)/2,P.size=[Ee,de]}else P.x=ee,P.y=te,P.size=[J,be]}}),this.model.forEachEdge(P=>{const G=x.getEdge(P.id);G&&G.data.controlPoints&&(P.points=G.data.controlPoints.map(PQ))})})}}const Nne=(r,e,t,n,i,a,s)=>{let o=(r==null?void 0:r.slice(1,r.length-1))||[];if(e&&t){let{x:A,y:l}=e.data,{x:u,y:c}=t.data;if(i&&(A=e.data.y,l=e.data.x,u=t.data.y,c=t.data.x),c!==l&&A!==u){const d=n.indexOf(l),h=n[d+1];if(h){const g=o[0],v=i?{x:(l+h)/2,y:(g==null?void 0:g.y)||u}:{x:(g==null?void 0:g.x)||u,y:(l+h)/2};(!g||a(g,v))&&o.unshift(v)}const f=n.indexOf(c),p=Math.abs(f-d);if(p===1)o=s(o,e.data,t.data),o.length||o.push(i?{x:(l+c)/2,y:A}:{x:A,y:(l+c)/2});else if(p>1){const g=n[f-1];if(g){const v=o[o.length-1],m=i?{x:(c+g)/2,y:(v==null?void 0:v.y)||u}:{x:(v==null?void 0:v.x)||A,y:(c+g)/2};(!v||a(v,m))&&o.push(m)}}}}return o};function TA(r,e,t=2){if(r.nodeCount()===1){const i=r.firstNode();i.x=e[0],i.y=e[1],t===3&&(i.z=e[2]||0)}}function Lx(r,e){const t=r.nodes();return t.sort(e),r.setNodeOrder(t),r}function Nx(r,e="desc"){return Lx(r,(t,n)=>{const i=r.degree(t.id),a=r.degree(n.id);return e==="asc"?i-a:a-i})}function Pne(r){return Lx(r,(e,t)=>{const n=e.id,i=t.id;return typeof n=="number"&&typeof i=="number"?n-i:String(n).localeCompare(String(i))})}function oD(r,e){return Lx(r,(t,n)=>{const i=r.originalNode(t.id),a=r.originalNode(n.id);return e(i,a)})}function ok(r,e=!1){const t=r.nodeCount();if(t===0)return r;const n=r.nodes(),i=[n[0]],a={};a[n[0].id]=!0;let s=0,o=0;return r.forEachNode(A=>{if(o!==0){const l=r.degree(A.id,"both"),u=o<t-1?r.degree(n[o+1].id,"both"):0,c=i[s].id,d=r.neighbors(c,"both").includes(A.id);if((o===t-1||l!==u||d)&&!a[A.id])i.push(A),a[A.id]=!0,s++;else{const h=e?r.successors(c):r.neighbors(c);let f=!1;for(let g=0;g<h.length;g++){const v=h[g],m=r.node(v);if(m&&r.degree(v)===r.degree(A.id)&&!a[v]){i.push(m),a[v]=!0,f=!0;break}}let p=0;for(;!f&&(a[n[p].id]||(i.push(n[p]),a[n[p].id]=!0,f=!0),p++,p!==t););}}o++}),r.setNodeOrder(i),r}const Zi=r=>{const{width:e,height:t,center:n}=r,i=e??(typeof window<"u"?window.innerWidth:0),a=t??(typeof window<"u"?window.innerHeight:0),s=n??[i/2,a/2];return{width:i,height:a,center:s}},i0={radius:null,startRadius:null,endRadius:null,startAngle:0,endAngle:2*Math.PI,clockwise:!0,divisions:1,ordering:null,angleRatio:1,nodeSize:10,nodeSpacing:0};class AD extends ws{constructor(){super(...arguments),this.id="circular"}getDefaultOptions(){return i0}layout(){return Ir(this,void 0,void 0,function*(){const{width:e,height:t,center:n}=Zi(this.options),i=this.model.nodeCount();if(!i||i===1){TA(this.model,n);return}const{ordering:a,nodeSpacing:s,nodeSize:o,endAngle:A=2*Math.PI,startAngle:l=0,divisions:u,angleRatio:c,clockwise:d}=this.options;a==="topology"?ok(this.model,!1):a==="topology-directed"?ok(this.model,!0):a==="degree"&&Nx(this.model,"asc");let{radius:h,startRadius:f,endRadius:p}=this.options;const g=this.model.nodes(),v=Hs(o,s,i0.nodeSize,i0.nodeSpacing);if(s){let x=0;for(const k of g)x+=Math.max(...v(k._original));h=x/(2*Math.PI)}else!h&&!f&&!p?h=Math.min(t,e)/2:!f&&p?f=p:f&&!p&&(p=f);const y=(A-l)/i*c,w=Math.ceil(i/u),B=2*Math.PI/u;for(let x=0;x<i;){const k=g[x];let _=h;!_&&f!==null&&p!==null&&(_=f+x*(p-f)/(i-1)),_||(_=10+x*100/(i-1));const T=Math.floor(x/w),I=x%w*y+B*T;let O=l+I;d||(O=A-I),k.x=n[0]+Math.cos(O)*_,k.y=n[1]+Math.sin(O)*_,x++}})}}const sh={nodeSize:30,nodeSpacing:10,preventOverlap:!1,sweep:void 0,equidistant:!1,startAngle:3/2*Math.PI,clockwise:!0,maxLevelDiff:void 0,sortBy:"degree"};class lD extends ws{constructor(){super(...arguments),this.id="concentric"}getDefaultOptions(){return sh}layout(){return Ir(this,void 0,void 0,function*(){const{width:e,height:t,center:n}=Zi(this.options),i=this.model.nodeCount();if(!i||i===1){TA(this.model,n);return}const{sortBy:a,maxLevelDiff:s,sweep:o,clockwise:A,equidistant:l,preventOverlap:u,startAngle:c=sh.startAngle,nodeSize:d,nodeSpacing:h}=this.options,f=!a||a==="degree"?"degree":Tr(a,["node"]);if(f==="degree")Nx(this.model);else{const k=(_,T)=>{const F=f(_),I=f(T);return F===I?0:F>I?-1:1};oD(this.model,k)}const p=this.model.nodes(),g=new Map;for(const k of p){const _=f==="degree"?this.model.degree(k.id):f(k._original);g.set(k.id,_)}const v=this.model.firstNode(),m=s||g.get(v.id)/4,y=Hs(d,h,sh.nodeSize,sh.nodeSpacing),w=new Map;for(const k of p)w.set(k.id,Math.max(...y(k._original)));const B=[{nodes:[]}];let x=B[0];for(let k=0;k<i;k++){const _=p[k];if(x.nodes.length>0){const T=x.nodes[0],F=Math.abs(g.get(T.id)-g.get(_.id));m&&F>=m&&(x={nodes:[]},B.push(x))}x.nodes.push(_)}for(const k of B){const _=k.nodes.map(T=>w.get(T.id));k.nodeSizes=_,k.maxNodeSize=Math.max(..._)}if(B.forEach(k=>{const _=o===void 0?2*Math.PI-2*Math.PI/k.nodes.length:o;k.dTheta=_/Math.max(1,k.nodes.length-1)}),u){let k=0;for(let _=0;_<B.length;_++){const T=B[_];if(T.nodes.length>1){const F=T.nodeSizes||[];let I=0;for(let te=0;te<F.length-1;te++)I=Math.max(I,(F[te]+F[te+1])/2);const O=Math.cos(T.dTheta)-Math.cos(0),P=Math.sin(T.dTheta)-Math.sin(0),G=Math.sqrt(O*O+P*P),ee=G>0?I/G:0;k=Math.max(ee,k)}if(T.r=k,_<B.length-1){const F=B[_+1],I=((T.maxNodeSize||0)+(F.maxNodeSize||0))/2;k+=Math.max(0,I)}}}else{let k=0;B[0].r=0;for(let F=0;F<B.length-1;F++){const I=B[F],O=B[F+1],P=((I.maxNodeSize||0)+(O.maxNodeSize||0))/2;k+=Math.max(0,P),O.r=k}const _=Math.min(e,t)/2;let T=1;for(const F of B){const I=F.r||0;if(I<=0)continue;const O=_-(F.maxNodeSize||0);if(O<=0){T=0;break}T=Math.min(T,O/I)}if(T=Math.max(0,Math.min(1,T)),T!==1)for(const F of B)F.r=(F.r||0)*T}if(l){let k=0,_=0;for(let T=0;T<B.length;T++){const I=(B[T].r||0)-_;k=Math.max(k,I)}_=0,B.forEach((T,F)=>{F===0&&(_=T.r||0),T.r=_,_+=k})}B.forEach(k=>{const _=k.dTheta||0,T=k.r||0;k.nodes.forEach((F,I)=>{const O=c+(A?1:-1)*_*I;F.x=n[0]+T*Math.cos(O),F.y=n[1]+T*Math.sin(O)})})})}}var Une=(function(r){var e=typeof r;return r!==null&&e==="object"||e==="function"});function Go(r,...e){return e.forEach(t=>{t&&Object.keys(t).forEach(n=>{const i=t[n];i!==void 0&&(r[n]=i)})}),r}const Rne=1664525,Qne=1013904223,Ak=4294967296;function Dne(){let r=1;return()=>(r=(Rne*r+Qne)%Ak)/Ak}var Fl=0,Su=0,cu=0,uD=1e3,Mf,_u,If=0,bA=0,Og=0,uc=typeof performance=="object"&&performance.now?performance:Date,cD=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(r){setTimeout(r,17)};function dD(){return bA||(cD(Hne),bA=uc.now()+Og)}function Hne(){bA=0}function sE(){this._call=this._time=this._next=null}sE.prototype=Px.prototype={constructor:sE,restart:function(r,e,t){if(typeof r!="function")throw new TypeError("callback is not a function");t=(t==null?dD():+t)+(e==null?0:+e),!this._next&&_u!==this&&(_u?_u._next=this:Mf=this,_u=this),this._call=r,this._time=t,oE()},stop:function(){this._call&&(this._call=null,this._time=1/0,oE())}};function Px(r,e,t){var n=new sE;return n.restart(r,e,t),n}function $ne(){dD(),++Fl;for(var r=Mf,e;r;)(e=bA-r._time)>=0&&r._call.call(void 0,e),r=r._next;--Fl}function lk(){bA=(If=uc.now())+Og,Fl=Su=0;try{$ne()}finally{Fl=0,zne(),bA=0}}function Gne(){var r=uc.now(),e=r-If;e>uD&&(Og-=e,If=r)}function zne(){for(var r,e=Mf,t,n=1/0;e;)e._call?(n>e._time&&(n=e._time),r=e,e=e._next):(t=e._next,e._next=null,e=r?r._next=t:Mf=t);_u=r,oE(n)}function oE(r){if(!Fl){Su&&(Su=clearTimeout(Su));var e=r-bA;e>24?(r<1/0&&(Su=setTimeout(lk,r-uc.now()-Og)),cu&&(cu=clearInterval(cu))):(cu||(If=uc.now(),cu=setInterval(Gne,uD)),Fl=1,cD(lk))}}var Vne={value:()=>{}};function Ux(){for(var r=0,e=arguments.length,t={},n;r<e;++r){if(!(n=arguments[r]+"")||n in t||/[\s.]/.test(n))throw new Error("illegal type: "+n);t[n]=[]}return new Mh(t)}function Mh(r){this._=r}function Kne(r,e){return r.trim().split(/^|\s+/).map(function(t){var n="",i=t.indexOf(".");if(i>=0&&(n=t.slice(i+1),t=t.slice(0,i)),t&&!e.hasOwnProperty(t))throw new Error("unknown type: "+t);return{type:t,name:n}})}Mh.prototype=Ux.prototype={constructor:Mh,on:function(r,e){var t=this._,n=Kne(r+"",t),i,a=-1,s=n.length;if(arguments.length<2){for(;++a<s;)if((i=(r=n[a]).type)&&(i=jne(t[i],r.name)))return i;return}if(e!=null&&typeof e!="function")throw new Error("invalid callback: "+e);for(;++a<s;)if(i=(r=n[a]).type)t[i]=uk(t[i],r.name,e);else if(e==null)for(i in t)t[i]=uk(t[i],r.name,null);return this},copy:function(){var r={},e=this._;for(var t in e)r[t]=e[t].slice();return new Mh(r)},call:function(r,e){if((i=arguments.length-2)>0)for(var t=new Array(i),n=0,i,a;n<i;++n)t[n]=arguments[n+2];if(!this._.hasOwnProperty(r))throw new Error("unknown type: "+r);for(a=this._[r],n=0,i=a.length;n<i;++n)a[n].value.apply(e,t)},apply:function(r,e,t){if(!this._.hasOwnProperty(r))throw new Error("unknown type: "+r);for(var n=this._[r],i=0,a=n.length;i<a;++i)n[i].value.apply(e,t)}};function jne(r,e){for(var t=0,n=r.length,i;t<n;++t)if((i=r[t]).name===e)return i.value}function uk(r,e,t){for(var n=0,i=r.length;n<i;++n)if(r[n].name===e){r[n]=Vne,r=r.slice(0,n).concat(r.slice(n+1));break}return t!=null&&r.push({name:e,value:t}),r}function Wne(r){return r.x}function qne(r){return r.y}var Yne=10,Xne=Math.PI*(3-Math.sqrt(5));function hD(r){var e,t=1,n=.001,i=1-Math.pow(n,1/300),a=0,s=.6,o=new Map,A=Px(c),l=Ux("tick","end"),u=Dne();r==null&&(r=[]);function c(){d(),l.call("tick",e),t<n&&(A.stop(),l.call("end",e))}function d(p){var g,v=r.length,m;p===void 0&&(p=1);for(var y=0;y<p;++y)for(t+=(a-t)*i,o.forEach(function(w){w(t)}),g=0;g<v;++g)m=r[g],m.fx==null?m.x+=m.vx*=s:(m.x=m.fx,m.vx=0),m.fy==null?m.y+=m.vy*=s:(m.y=m.fy,m.vy=0);return e}function h(){for(var p=0,g=r.length,v;p<g;++p){if(v=r[p],v.index=p,v.fx!=null&&(v.x=v.fx),v.fy!=null&&(v.y=v.fy),isNaN(v.x)||isNaN(v.y)){var m=Yne*Math.sqrt(.5+p),y=p*Xne;v.x=m*Math.cos(y),v.y=m*Math.sin(y)}(isNaN(v.vx)||isNaN(v.vy))&&(v.vx=v.vy=0)}}function f(p){return p.initialize&&p.initialize(r,u),p}return h(),e={tick:d,restart:function(){return A.restart(c),e},stop:function(){return A.stop(),e},nodes:function(p){return arguments.length?(r=p,h(),o.forEach(f),e):r},alpha:function(p){return arguments.length?(t=+p,e):t},alphaMin:function(p){return arguments.length?(n=+p,e):n},alphaDecay:function(p){return arguments.length?(i=+p,e):+i},alphaTarget:function(p){return arguments.length?(a=+p,e):a},velocityDecay:function(p){return arguments.length?(s=1-p,e):1-s},randomSource:function(p){return arguments.length?(u=p,o.forEach(f),e):u},force:function(p,g){return arguments.length>1?(g==null?o.delete(p):o.set(p,f(g)),e):o.get(p)},find:function(p,g,v){var m=0,y=r.length,w,B,x,k,_;for(v==null?v=1/0:v*=v,m=0;m<y;++m)k=r[m],w=p-k.x,B=g-k.y,x=w*w+B*B,x<v&&(_=k,v=x);return _},on:function(p,g){return arguments.length>1?(l.on(p,g),e):l.on(p)}}}function Fr(r){return function(){return r}}function fD(r){var e=Fr(.1),t,n,i;typeof r!="function"&&(r=Fr(r==null?0:+r));function a(o){for(var A=0,l=t.length,u;A<l;++A)u=t[A],u.vx+=(i[A]-u.x)*n[A]*o}function s(){if(t){var o,A=t.length;for(n=new Array(A),i=new Array(A),o=0;o<A;++o)n[o]=isNaN(i[o]=+r(t[o],o,t))?0:+e(t[o],o,t)}}return a.initialize=function(o){t=o,s()},a.strength=function(o){return arguments.length?(e=typeof o=="function"?o:Fr(+o),s(),a):e},a.x=function(o){return arguments.length?(r=typeof o=="function"?o:Fr(+o),s(),a):r},a}function gD(r){var e=Fr(.1),t,n,i;typeof r!="function"&&(r=Fr(r==null?0:+r));function a(o){for(var A=0,l=t.length,u;A<l;++A)u=t[A],u.vy+=(i[A]-u.y)*n[A]*o}function s(){if(t){var o,A=t.length;for(n=new Array(A),i=new Array(A),o=0;o<A;++o)n[o]=isNaN(i[o]=+r(t[o],o,t))?0:+e(t[o],o,t)}}return a.initialize=function(o){t=o,s()},a.strength=function(o){return arguments.length?(e=typeof o=="function"?o:Fr(+o),s(),a):e},a.y=function(o){return arguments.length?(r=typeof o=="function"?o:Fr(+o),s(),a):r},a}function fo(r){return(r()-.5)*1e-6}function Zne(r){const e=+this._x.call(null,r),t=+this._y.call(null,r);return pD(this.cover(e,t),e,t,r)}function pD(r,e,t,n){if(isNaN(e)||isNaN(t))return r;var i,a=r._root,s={data:n},o=r._x0,A=r._y0,l=r._x1,u=r._y1,c,d,h,f,p,g,v,m;if(!a)return r._root=s,r;for(;a.length;)if((p=e>=(c=(o+l)/2))?o=c:l=c,(g=t>=(d=(A+u)/2))?A=d:u=d,i=a,!(a=a[v=g<<1|p]))return i[v]=s,r;if(h=+r._x.call(null,a.data),f=+r._y.call(null,a.data),e===h&&t===f)return s.next=a,i?i[v]=s:r._root=s,r;do i=i?i[v]=new Array(4):r._root=new Array(4),(p=e>=(c=(o+l)/2))?o=c:l=c,(g=t>=(d=(A+u)/2))?A=d:u=d;while((v=g<<1|p)===(m=(f>=d)<<1|h>=c));return i[m]=a,i[v]=s,r}function Jne(r){var e,t,n=r.length,i,a,s=new Array(n),o=new Array(n),A=1/0,l=1/0,u=-1/0,c=-1/0;for(t=0;t<n;++t)isNaN(i=+this._x.call(null,e=r[t]))||isNaN(a=+this._y.call(null,e))||(s[t]=i,o[t]=a,i<A&&(A=i),i>u&&(u=i),a<l&&(l=a),a>c&&(c=a));if(A>u||l>c)return this;for(this.cover(A,l).cover(u,c),t=0;t<n;++t)pD(this,s[t],o[t],r[t]);return this}function ere(r,e){if(isNaN(r=+r)||isNaN(e=+e))return this;var t=this._x0,n=this._y0,i=this._x1,a=this._y1;if(isNaN(t))i=(t=Math.floor(r))+1,a=(n=Math.floor(e))+1;else{for(var s=i-t||1,o=this._root,A,l;t>r||r>=i||n>e||e>=a;)switch(l=(e<n)<<1|r<t,A=new Array(4),A[l]=o,o=A,s*=2,l){case 0:i=t+s,a=n+s;break;case 1:t=i-s,a=n+s;break;case 2:i=t+s,n=a-s;break;case 3:t=i-s,n=a-s;break}this._root&&this._root.length&&(this._root=o)}return this._x0=t,this._y0=n,this._x1=i,this._y1=a,this}function tre(){var r=[];return this.visit(function(e){if(!e.length)do r.push(e.data);while(e=e.next)}),r}function nre(r){return arguments.length?this.cover(+r[0][0],+r[0][1]).cover(+r[1][0],+r[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function wi(r,e,t,n,i){this.node=r,this.x0=e,this.y0=t,this.x1=n,this.y1=i}function rre(r,e,t){var n,i=this._x0,a=this._y0,s,o,A,l,u=this._x1,c=this._y1,d=[],h=this._root,f,p;for(h&&d.push(new wi(h,i,a,u,c)),t==null?t=1/0:(i=r-t,a=e-t,u=r+t,c=e+t,t*=t);f=d.pop();)if(!(!(h=f.node)||(s=f.x0)>u||(o=f.y0)>c||(A=f.x1)<i||(l=f.y1)<a))if(h.length){var g=(s+A)/2,v=(o+l)/2;d.push(new wi(h[3],g,v,A,l),new wi(h[2],s,v,g,l),new wi(h[1],g,o,A,v),new wi(h[0],s,o,g,v)),(p=(e>=v)<<1|r>=g)&&(f=d[d.length-1],d[d.length-1]=d[d.length-1-p],d[d.length-1-p]=f)}else{var m=r-+this._x.call(null,h.data),y=e-+this._y.call(null,h.data),w=m*m+y*y;if(w<t){var B=Math.sqrt(t=w);i=r-B,a=e-B,u=r+B,c=e+B,n=h.data}}return n}function ire(r){if(isNaN(u=+this._x.call(null,r))||isNaN(c=+this._y.call(null,r)))return this;var e,t=this._root,n,i,a,s=this._x0,o=this._y0,A=this._x1,l=this._y1,u,c,d,h,f,p,g,v;if(!t)return this;if(t.length)for(;;){if((f=u>=(d=(s+A)/2))?s=d:A=d,(p=c>=(h=(o+l)/2))?o=h:l=h,e=t,!(t=t[g=p<<1|f]))return this;if(!t.length)break;(e[g+1&3]||e[g+2&3]||e[g+3&3])&&(n=e,v=g)}for(;t.data!==r;)if(i=t,!(t=t.next))return this;return(a=t.next)&&delete t.next,i?(a?i.next=a:delete i.next,this):e?(a?e[g]=a:delete e[g],(t=e[0]||e[1]||e[2]||e[3])&&t===(e[3]||e[2]||e[1]||e[0])&&!t.length&&(n?n[v]=t:this._root=t),this):(this._root=a,this)}function are(r){for(var e=0,t=r.length;e<t;++e)this.remove(r[e]);return this}function sre(){return this._root}function ore(){var r=0;return this.visit(function(e){if(!e.length)do++r;while(e=e.next)}),r}function Are(r){var e=[],t,n=this._root,i,a,s,o,A;for(n&&e.push(new wi(n,this._x0,this._y0,this._x1,this._y1));t=e.pop();)if(!r(n=t.node,a=t.x0,s=t.y0,o=t.x1,A=t.y1)&&n.length){var l=(a+o)/2,u=(s+A)/2;(i=n[3])&&e.push(new wi(i,l,u,o,A)),(i=n[2])&&e.push(new wi(i,a,u,l,A)),(i=n[1])&&e.push(new wi(i,l,s,o,u)),(i=n[0])&&e.push(new wi(i,a,s,l,u))}return this}function lre(r){var e=[],t=[],n;for(this._root&&e.push(new wi(this._root,this._x0,this._y0,this._x1,this._y1));n=e.pop();){var i=n.node;if(i.length){var a,s=n.x0,o=n.y0,A=n.x1,l=n.y1,u=(s+A)/2,c=(o+l)/2;(a=i[0])&&e.push(new wi(a,s,o,u,c)),(a=i[1])&&e.push(new wi(a,u,o,A,c)),(a=i[2])&&e.push(new wi(a,s,c,u,l)),(a=i[3])&&e.push(new wi(a,u,c,A,l))}t.push(n)}for(;n=t.pop();)r(n.node,n.x0,n.y0,n.x1,n.y1);return this}function ure(r){return r[0]}function cre(r){return arguments.length?(this._x=r,this):this._x}function dre(r){return r[1]}function hre(r){return arguments.length?(this._y=r,this):this._y}function FA(r,e,t){var n=new Rx(e??ure,t??dre,NaN,NaN,NaN,NaN);return r==null?n:n.addAll(r)}function Rx(r,e,t,n,i,a){this._x=r,this._y=e,this._x0=t,this._y0=n,this._x1=i,this._y1=a,this._root=void 0}function ck(r){for(var e={data:r.data},t=e;r=r.next;)t=t.next={data:r.data};return e}var Ei=FA.prototype=Rx.prototype;Ei.copy=function(){var r=new Rx(this._x,this._y,this._x0,this._y0,this._x1,this._y1),e=this._root,t,n;if(!e)return r;if(!e.length)return r._root=ck(e),r;for(t=[{source:e,target:r._root=new Array(4)}];e=t.pop();)for(var i=0;i<4;++i)(n=e.source[i])&&(n.length?t.push({source:n,target:e.target[i]=new Array(4)}):e.target[i]=ck(n));return r};Ei.add=Zne;Ei.addAll=Jne;Ei.cover=ere;Ei.data=tre;Ei.extent=nre;Ei.find=rre;Ei.remove=ire;Ei.removeAll=are;Ei.root=sre;Ei.size=ore;Ei.visit=Are;Ei.visitAfter=lre;Ei.x=cre;Ei.y=hre;function fre(r){return r.x+r.vx}function gre(r){return r.y+r.vy}function vD(r){var e,t,n,i=1,a=1;typeof r!="function"&&(r=Fr(r==null?1:+r));function s(){for(var l,u=e.length,c,d,h,f,p,g,v=0;v<a;++v)for(c=FA(e,fre,gre).visitAfter(o),l=0;l<u;++l)d=e[l],p=t[d.index],g=p*p,h=d.x+d.vx,f=d.y+d.vy,c.visit(m);function m(y,w,B,x,k){var _=y.data,T=y.r,F=p+T;if(_){if(_.index>d.index){var I=h-_.x-_.vx,O=f-_.y-_.vy,P=I*I+O*O;P<F*F&&(I===0&&(I=fo(n),P+=I*I),O===0&&(O=fo(n),P+=O*O),P=(F-(P=Math.sqrt(P)))/P*i,d.vx+=(I*=P)*(F=(T*=T)/(g+T)),d.vy+=(O*=P)*F,_.vx-=I*(F=1-F),_.vy-=O*F)}return}return w>h+F||x<h-F||B>f+F||k<f-F}}function o(l){if(l.data)return l.r=t[l.data.index];for(var u=l.r=0;u<4;++u)l[u]&&l[u].r>l.r&&(l.r=l[u].r)}function A(){if(e){var l,u=e.length,c;for(t=new Array(u),l=0;l<u;++l)c=e[l],t[c.index]=+r(c,l,e)}}return s.initialize=function(l,u){e=l,n=u,A()},s.iterations=function(l){return arguments.length?(a=+l,s):a},s.strength=function(l){return arguments.length?(i=+l,s):i},s.radius=function(l){return arguments.length?(r=typeof l=="function"?l:Fr(+l),A(),s):r},s}function mD(){var r,e,t,n,i=Fr(-30),a,s=1,o=1/0,A=.81;function l(h){var f,p=r.length,g=FA(r,Wne,qne).visitAfter(c);for(n=h,f=0;f<p;++f)e=r[f],g.visit(d)}function u(){if(r){var h,f=r.length,p;for(a=new Array(f),h=0;h<f;++h)p=r[h],a[p.index]=+i(p,h,r)}}function c(h){var f=0,p,g,v=0,m,y,w;if(h.length){for(m=y=w=0;w<4;++w)(p=h[w])&&(g=Math.abs(p.value))&&(f+=p.value,v+=g,m+=g*p.x,y+=g*p.y);h.x=m/v,h.y=y/v}else{p=h,p.x=p.data.x,p.y=p.data.y;do f+=a[p.data.index];while(p=p.next)}h.value=f}function d(h,f,p,g){if(!h.value)return!0;var v=h.x-e.x,m=h.y-e.y,y=g-f,w=v*v+m*m;if(y*y/A<w)return w<o&&(v===0&&(v=fo(t),w+=v*v),m===0&&(m=fo(t),w+=m*m),w<s&&(w=Math.sqrt(s*w)),e.vx+=v*h.value*n/w,e.vy+=m*h.value*n/w),!0;if(h.length||w>=o)return;(h.data!==e||h.next)&&(v===0&&(v=fo(t),w+=v*v),m===0&&(m=fo(t),w+=m*m),w<s&&(w=Math.sqrt(s*w)));do h.data!==e&&(y=a[h.data.index]*n/w,e.vx+=v*y,e.vy+=m*y);while(h=h.next)}return l.initialize=function(h,f){r=h,t=f,u()},l.strength=function(h){return arguments.length?(i=typeof h=="function"?h:Fr(+h),u(),l):i},l.distanceMin=function(h){return arguments.length?(s=h*h,l):Math.sqrt(s)},l.distanceMax=function(h){return arguments.length?(o=h*h,l):Math.sqrt(o)},l.theta=function(h){return arguments.length?(A=h*h,l):Math.sqrt(A)},l}function pre(r){return r.index}function dk(r,e){var t=r.get(e);if(!t)throw new Error("node not found: "+e);return t}function yD(r){var e=pre,t=c,n,i=Fr(30),a,s,o,A,l,u=1;r==null&&(r=[]);function c(g){return 1/Math.min(o[g.source.index],o[g.target.index])}function d(g){for(var v=0,m=r.length;v<u;++v)for(var y=0,w,B,x,k,_,T,F;y<m;++y)w=r[y],B=w.source,x=w.target,k=x.x+x.vx-B.x-B.vx||fo(l),_=x.y+x.vy-B.y-B.vy||fo(l),T=Math.sqrt(k*k+_*_),T=(T-a[y])/T*g*n[y],k*=T,_*=T,x.vx-=k*(F=A[y]),x.vy-=_*F,B.vx+=k*(F=1-F),B.vy+=_*F}function h(){if(s){var g,v=s.length,m=r.length,y=new Map(s.map((B,x)=>[e(B,x,s),B])),w;for(g=0,o=new Array(v);g<m;++g)w=r[g],w.index=g,typeof w.source!="object"&&(w.source=dk(y,w.source)),typeof w.target!="object"&&(w.target=dk(y,w.target)),o[w.source.index]=(o[w.source.index]||0)+1,o[w.target.index]=(o[w.target.index]||0)+1;for(g=0,A=new Array(m);g<m;++g)w=r[g],A[g]=o[w.source.index]/(o[w.source.index]+o[w.target.index]);n=new Array(m),f(),a=new Array(m),p()}}function f(){if(s)for(var g=0,v=r.length;g<v;++g)n[g]=+t(r[g],g,r)}function p(){if(s)for(var g=0,v=r.length;g<v;++g)a[g]=+i(r[g],g,r)}return d.initialize=function(g,v){s=g,l=v,h()},d.links=function(g){return arguments.length?(r=g,h(),d):r},d.id=function(g){return arguments.length?(e=g,d):e},d.iterations=function(g){return arguments.length?(u=+g,d):u},d.strength=function(g){return arguments.length?(t=typeof g=="function"?g:Fr(+g),f(),d):t},d.distance=function(g){return arguments.length?(i=typeof g=="function"?g:Fr(+g),p(),d):i},d}const oh=(r,e)=>r[e];function vre(){function r(Y){return()=>Y}let e=Y=>Y.cluster,t=r(1),n=r(-1),i=r(100),a=r(.1),s=[0,0],o=[],A={},l=[],u=100,c=100,d={none:{x:0,y:0}},h=[],f,p="force",g=!0,v=.1;function m(Y){if(!g)return m;f.tick(),_();for(let U=0,W=o.length,ie,Ee=Y*v;U<W;++U)ie=o[U],ie.vx||(ie.vx=0),ie.vy||(ie.vy=0),ie.vx+=(d[e(ie._original)].x-ie.x)*Ee,ie.vy+=(d[e(ie._original)].y-ie.y)*Ee}function y(){o&&w()}function w(){if(!o||!o.length)return;const Y=o[0];if(e(Y._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()");const U=B();f=hD(U.nodes).force("x",fD(u).strength(.1)).force("y",gD(c).strength(.1)).force("collide",vD(W=>W.r).iterations(4)).force("charge",mD().strength(n)).force("links",yD(U.nodes.length?U.links:[]).distance(i).strength(a)),h=f.nodes(),_()}function B(){const Y=[],U=[],W={};let ie=[],Ee={},de=[];return Ee=x(o),de=k(l),ie=Object.keys(Ee),ie.forEach((X,xe)=>{const ce=Ee[X];Y.push({id:X,size:ce.count,r:Math.sqrt(ce.sumforceNodeSize/Math.PI)}),W[X]=xe}),de.forEach(X=>{const xe=oh(X,"source"),ce=oh(X,"target"),De=W[xe],He=W[ce];De!==void 0&&He!==void 0&&U.push({source:De,target:He,count:X.count})}),{nodes:Y,links:U}}function x(Y){const U={};return Y.forEach(W=>{const ie=e(W._original);U[ie]||(U[ie]={count:0,sumforceNodeSize:0})}),Y.forEach(W=>{const ie=e(W._original),Ee=t(W._original),de=U[ie];de.count=de.count+1,de.sumforceNodeSize=de.sumforceNodeSize+Math.PI*(Ee*Ee)*1.3,U[ie]=de}),U}function k(Y){const U={},W=[];return Y.forEach(Ee=>{const de=T(Ee);let X=0;U[de]!==void 0&&(X=U[de]),X+=1,U[de]=X}),Object.entries(U).forEach(([Ee,de])=>{const X=Ee.split("~")[0],xe=Ee.split("~")[1];X!==void 0&&xe!==void 0&&W.push({source:X,target:xe,count:de})}),W}function _(){return d={none:{x:0,y:0}},h.forEach(Y=>{d[Y.id]={x:Y.x-s[0],y:Y.y-s[1]}}),d}function T(Y){const U=oh(Y,"source"),W=oh(Y,"target"),ie=e(A[U]._original),Ee=e(A[W]._original);return ie<=Ee?`${ie}~${Ee}`:`${Ee}~${ie}`}function F(Y){A={},Y.forEach(U=>{A[U.id]=U})}function I(Y){return arguments.length?(p=Y,y(),m):p}function O(Y){return arguments.length?typeof Y=="string"?(e=U=>U[Y],m):(e=Y,m):e}function P(Y){return arguments.length?(g=Y,m):g}function G(Y){return arguments.length?(v=Y,m):v}function ee(Y){return arguments.length?(u=Y,m):u}function te(Y){return arguments.length?(c=Y,m):c}function N(Y){return arguments.length?(F(Y||[]),o=Y||[],m):o}function K(Y){return arguments.length?(l=Y||[],y(),m):l}function J(Y){return arguments.length?(typeof Y=="function"?t=Y:t=r(+Y),y(),m):t}function be(Y){return arguments.length?(typeof Y=="function"?n=Y:n=r(+Y),y(),m):n}function re(Y){return arguments.length?(typeof Y=="function"?i=Y:i=r(+Y),y(),m):i}function ne(Y){return arguments.length?(typeof Y=="function"?a=Y:a=r(+Y),y(),m):a}function ue(Y){return arguments.length?(s=Y,m):s}return m.initialize=Y=>{o=Y,y()},m.template=I,m.groupBy=O,m.enableGrouping=P,m.strength=G,m.centerX=ee,m.centerY=te,m.nodes=N,m.links=K,m.forceNodeSize=J,m.nodeSize=m.forceNodeSize,m.forceCharge=be,m.forceLinkDistance=re,m.forceLinkStrength=ne,m.offset=ue,m.getFocis=_,m}var mre=function(r){return typeof r=="object"&&r!==null},yre={}.toString,wD=function(r,e){return yre.call(r)==="[object "+e+"]"},AE=function(r){if(!mre(r)||!wD(r,"Object"))return!1;if(Object.getPrototypeOf(r)===null)return!0;for(var e=r;Object.getPrototypeOf(e)!==null;)e=Object.getPrototypeOf(e);return Object.getPrototypeOf(r)===e},wre=5;function bre(r,e){if(Object.hasOwn)return Object.hasOwn(r,e);if(r==null)throw new TypeError("Cannot convert undefined or null to object");return Object.prototype.hasOwnProperty.call(Object(r),e)}function bD(r,e,t,n){t=t||0,n=n||wre;for(var i in e)if(bre(e,i)){var a=e[i];a!==null&&AE(a)?(AE(r[i])||(r[i]={}),t<n?bD(r[i],a,t+1,n):r[i]=e[i]):Ox(a)?(r[i]=[],r[i]=r[i].concat(a)):a!==void 0&&(r[i]=a)}}var Bre=function(r){for(var e=[],t=1;t<arguments.length;t++)e[t-1]=arguments[t];for(var n=0;n<e.length;n+=1)bD(r,e[n]);return r};function Ere(r,e){var t,n=1;r==null&&(r=0),e==null&&(e=0);function i(){var a,s=t.length,o,A=0,l=0;for(a=0;a<s;++a)o=t[a],A+=o.x,l+=o.y;for(A=(A/s-r)*n,l=(l/s-e)*n,a=0;a<s;++a)o=t[a],o.x-=A,o.y-=l}return i.initialize=function(a){t=a},i.x=function(a){return arguments.length?(r=+a,i):r},i.y=function(a){return arguments.length?(e=+a,i):e},i.strength=function(a){return arguments.length?(n=+a,i):n},i}function xre(r,e,t){var n,i=Fr(.1),a,s;typeof r!="function"&&(r=Fr(+r)),e==null&&(e=0),t==null&&(t=0);function o(l){for(var u=0,c=n.length;u<c;++u){var d=n[u],h=d.x-e||1e-6,f=d.y-t||1e-6,p=Math.sqrt(h*h+f*f),g=(s[u]-p)*a[u]*l/p;d.vx+=h*g,d.vy+=f*g}}function A(){if(n){var l,u=n.length;for(a=new Array(u),s=new Array(u),l=0;l<u;++l)s[l]=+r(n[l],l,n),a[l]=isNaN(s[l])?0:+i(n[l],l,n)}}return o.initialize=function(l){n=l,A()},o.strength=function(l){return arguments.length?(i=typeof l=="function"?l:Fr(+l),A(),o):i},o.radius=function(l){return arguments.length?(r=typeof l=="function"?l:Fr(+l),A(),o):r},o.x=function(l){return arguments.length?(e=+l,o):e},o.y=function(l){return arguments.length?(t=+l,o):t},o}const a0={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};class Qx extends Ig{getDefaultOptions(){return a0}mergeOptions(e,t){return Bre({},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 i=0;i<e;i++)this.simulation.tick();this.syncPositionsFromD3(),(n=(t=this.options).onTick)===null||n===void 0||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(){var e,t;return(t=(e=this.simulation)===null||e===void 0?void 0:e.alpha())!==null&&t!==void 0?t:0}setAlpha(e){return this.simulation&&this.simulation.alpha(e),this}getForce(e){var t;return(t=this.simulation)===null||t===void 0?void 0:t.force(e)}force(e,t){return this.simulation&&this.simulation.force(e,t),this}nodes(){var e,t;return(t=(e=this.simulation)===null||e===void 0?void 0:e.nodes())!==null&&t!==void 0?t:[]}find(e,t,n){if(this.simulation)return this.simulation.find(e,t,n)}setFixedPosition(e,t){const n=this.d3Nodes.find(s=>s.id===e),i=this.model.node(e);if(!i||!n)return;const a=["fx","fy","fz"];if(t===null){a.forEach(s=>{delete i[s],delete n[s]});return}t.forEach((s,o)=>{o<a.length&&(typeof s=="number"||s===null)&&(i[a[o]]=s,n[a[o]]=s)})}parseOptions(e){const 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 Ir(this,void 0,void 0,function*(){const t=this.parseOptions(this.options||{});this.createD3Copies();const n=this.setSimulation(t);return n.nodes(this.d3Nodes),(e=n.force("link"))===null||e===void 0||e.links(this.d3Edges),new Promise(i=>{n.on("end",()=>{this.syncPositionsFromD3(),i()})})})}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=>{const 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 hD()}setSimulation(e){const t=this.simulation||this.options.forceSimulation||this.initSimulation();return this.simulation||(this.simulation=t.on("tick",()=>{var n;this.syncPositionsFromD3(),(n=e.onTick)===null||n===void 0||n.call(e,this)})),Xa(t,this.config.simulationAttrs.map(n=>[n,e[n]])),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;const t=Zi({width:e.width,height:e.height});return Go({},e.center||{},{x:t.width/2,y:t.height/2,strength:e.centerStrength})}setupCenterForce(e,t){const n=this.getCenterOptions(t);if(n){let i=e.force("center");i||(i=Ere(n.x,n.y),e.force("center",i));const a=[];n.x!==void 0&&a.push(["x",n.x]),n.y!==void 0&&a.push(["y",n.y]),n.strength!==void 0&&a.push(["strength",n.strength]),Xa(i,a)}else e.force("center",null)}getManyBodyOptions(e){if(e.manyBody!==!1)return Go({},e.manyBody||{},{strength:e.nodeStrength?Tr(e.nodeStrength,["node"]):void 0,distanceMin:e.distanceMin,distanceMax:e.distanceMax,theta:e.theta})}setupManyBodyForce(e,t){const n=this.getManyBodyOptions(t);if(n){let i=e.force("charge");i||(i=mD(),e.force("charge",i));const a=[];n.strength!==void 0&&a.push(["strength",n.strength]),n.distanceMin!==void 0&&a.push(["distanceMin",n.distanceMin]),n.distanceMax!==void 0&&a.push(["distanceMax",n.distanceMax]),n.theta!==void 0&&a.push(["theta",n.theta]),Xa(i,a)}else e.force("charge",null)}getLinkOptions(e){if(e.link!==!1)return Go({},e.link||{},{id:e.edgeId?Tr(e.edgeId,["edge"]):void 0,distance:e.linkDistance?Tr(e.linkDistance,["edge"]):void 0,strength:e.edgeStrength?Tr(e.edgeStrength,["edge"]):void 0,iterations:e.edgeIterations})}setupLinkForce(e,t){const n=this.model.edges(),i=this.getLinkOptions(t);if(n.length>0&&i){let a=e.force("link");a||(a=yD(),e.force("link",a));const s=[];i.id!==void 0&&s.push(["id",i.id]),i.distance!==void 0&&s.push(["distance",i.distance]),i.strength!==void 0&&s.push(["strength",i.strength]),i.iterations!==void 0&&s.push(["iterations",i.iterations]),Xa(a,s)}else e.force("link",null)}getCollisionOptions(e){if(e.preventOverlap===!1&&(e.collide===!1||e.collide===void 0))return;const t=Hs(e.nodeSize,e.nodeSpacing,a0.nodeSize,a0.nodeSpacing),n=i=>Math.max(...t(i._original))/2;return Go({},e.collide||{},{radius:e.collide&&e.collide.radius||n,strength:e.collideStrength,iterations:e.collideIterations})}setupCollisionForce(e,t){const n=this.getCollisionOptions(t);if(n){let i=e.force("collide");i||(i=vD(),e.force("collide",i));const a=[];n.radius!==void 0&&a.push(["radius",n.radius]),n.strength!==void 0&&a.push(["strength",n.strength]),n.iterations!==void 0&&a.push(["iterations",n.iterations]),Xa(i,a)}else e.force("collide",null)}getXForceOptions(e){var t;if(e.x===!1)return;const n=this.getCenterOptions(e);return Go({},e.x||{},{x:(t=e.forceXPosition)!==null&&t!==void 0?t:n&&n.x,strength:e.forceXStrength})}setupXForce(e,t){const n=this.getXForceOptions(t);if(n){let i=e.force("x");i||(i=fD(),e.force("x",i));const a=[];n.x!==void 0&&a.push(["x",n.x]),n.strength!==void 0&&a.push(["strength",n.strength]),Xa(i,a)}else e.force("x",null)}getYForceOptions(e){var t;if(e.y===!1)return;const n=this.getCenterOptions(e);return Go({},e.y||{},{y:(t=e.forceYPosition)!==null&&t!==void 0?t:n&&n.y,strength:e.forceYStrength})}setupYForce(e,t){const n=this.getYForceOptions(t);if(n){let i=e.force("y");i||(i=gD(),e.force("y",i));const a=[];n.y!==void 0&&a.push(["y",n.y]),n.strength!==void 0&&a.push(["strength",n.strength]),Xa(i,a)}else e.force("y",null)}getRadialOptions(e){var t,n,i;if(e.radial!==void 0||e.radialStrength!==void 0||e.radialRadius!==void 0||e.radialX!==void 0||e.radialY!==void 0){const a=this.getCenterOptions(e);return Go({},e.radial||{},{strength:e.radialStrength,radius:(t=e.radialRadius)!==null&&t!==void 0?t:100,x:(n=e.radialX)!==null&&n!==void 0?n:a&&a.x,y:(i=e.radialY)!==null&&i!==void 0?i:a&&a.y})}}setupRadialForce(e,t){const n=this.getRadialOptions(t);if(n){let i=e.force("radial");i||(i=xre(n.radius||100,n.x,n.y),e.force("radial",i));const a=[];n.radius!==void 0&&a.push(["radius",n.radius]),n.strength!==void 0&&a.push(["strength",n.strength]),n.x!==void 0&&a.push(["x",n.x]),n.y!==void 0&&a.push(["y",n.y]),Xa(i,a)}else e.force("radial",null)}setupClusterForce(e,t){const{clustering:n}=t;if(n){const{clusterFociStrength:i,clusterEdgeDistance:a,clusterEdgeStrength:s,clusterNodeStrength:o,clusterNodeSize:A,clusterBy:l}=t,u=this.getCenterOptions(t);let c=e.force("group");c||(c=vre(),e.force("group",c)),Xa(c,[["centerX",u&&u.x],["centerY",u&&u.y],["template","force"],["strength",i],["groupBy",l?Tr(l,["node"]):void 0],["nodes",this.model.nodes()],["links",this.model.edges()],["forceLinkDistance",a],["forceLinkStrength",s],["forceCharge",o],["forceNodeSize",A]])}else e.force("group",null)}}const Xa=(r,e)=>e.reduce((t,[n,i])=>!t[n]||i===void 0?t:t[n].call(r,i),r);function Wn(r){return function(){return r}}function Cre(r){var e=Wn(.1),t,n,i;typeof r!="function"&&(r=Wn(r==null?0:+r));function a(o){for(var A=0,l=t.length,u;A<l;++A)u=t[A],u.vz+=(i[A]-u.z)*n[A]*o}function s(){if(t){var o,A=t.length;for(n=new Array(A),i=new Array(A),o=0;o<A;++o)n[o]=isNaN(i[o]=+r(t[o],o,t))?0:+e(t[o],o,t)}}return a.initialize=function(o){t=o,s()},a.strength=function(o){return arguments.length?(e=typeof o=="function"?o:Wn(+o),s(),a):e},a.z=function(o){return arguments.length?(r=typeof o=="function"?o:Wn(+o),s(),a):r},a}function Sre(r){var e=Wn(.1),t,n,i;typeof r!="function"&&(r=Wn(r==null?0:+r));function a(o){for(var A=0,l=t.length,u;A<l;++A)u=t[A],u.vy+=(i[A]-u.y)*n[A]*o}function s(){if(t){var o,A=t.length;for(n=new Array(A),i=new Array(A),o=0;o<A;++o)n[o]=isNaN(i[o]=+r(t[o],o,t))?0:+e(t[o],o,t)}}return a.initialize=function(o){t=o,s()},a.strength=function(o){return arguments.length?(e=typeof o=="function"?o:Wn(+o),s(),a):e},a.y=function(o){return arguments.length?(r=typeof o=="function"?o:Wn(+o),s(),a):r},a}function _re(r){var e=Wn(.1),t,n,i;typeof r!="function"&&(r=Wn(r==null?0:+r));function a(o){for(var A=0,l=t.length,u;A<l;++A)u=t[A],u.vx+=(i[A]-u.x)*n[A]*o}function s(){if(t){var o,A=t.length;for(n=new Array(A),i=new Array(A),o=0;o<A;++o)n[o]=isNaN(i[o]=+r(t[o],o,t))?0:+e(t[o],o,t)}}return a.initialize=function(o){t=o,s()},a.strength=function(o){return arguments.length?(e=typeof o=="function"?o:Wn(+o),s(),a):e},a.x=function(o){return arguments.length?(r=typeof o=="function"?o:Wn(+o),s(),a):r},a}function kre(r,e,t,n){var i,a,s=Wn(.1),o,A;typeof r!="function"&&(r=Wn(+r)),e==null&&(e=0),t==null&&(t=0),n==null&&(n=0);function l(c){for(var d=0,h=i.length;d<h;++d){var f=i[d],p=f.x-e||1e-6,g=(f.y||0)-t||1e-6,v=(f.z||0)-n||1e-6,m=Math.sqrt(p*p+g*g+v*v),y=(A[d]-m)*o[d]*c/m;f.vx+=p*y,a>1&&(f.vy+=g*y),a>2&&(f.vz+=v*y)}}function u(){if(i){var c,d=i.length;for(o=new Array(d),A=new Array(d),c=0;c<d;++c)A[c]=+r(i[c],c,i),o[c]=isNaN(A[c])?0:+s(i[c],c,i)}}return l.initialize=function(c,...d){i=c,a=d.find(h=>[1,2,3].includes(h))||2,u()},l.strength=function(c){return arguments.length?(s=typeof c=="function"?c:Wn(+c),u(),l):s},l.radius=function(c){return arguments.length?(r=typeof c=="function"?c:Wn(+c),u(),l):r},l.x=function(c){return arguments.length?(e=+c,l):e},l.y=function(c){return arguments.length?(t=+c,l):t},l.z=function(c){return arguments.length?(n=+c,l):n},l}function ca(r){return(r()-.5)*1e-6}function Tre(r){const e=+this._x.call(null,r);return BD(this.cover(e),e,r)}function BD(r,e,t){if(isNaN(e))return r;var n,i=r._root,a={data:t},s=r._x0,o=r._x1,A,l,u,c,d;if(!i)return r._root=a,r;for(;i.length;)if((u=e>=(A=(s+o)/2))?s=A:o=A,n=i,!(i=i[c=+u]))return n[c]=a,r;if(l=+r._x.call(null,i.data),e===l)return a.next=i,n?n[c]=a:r._root=a,r;do n=n?n[c]=new Array(2):r._root=new Array(2),(u=e>=(A=(s+o)/2))?s=A:o=A;while((c=+u)==(d=+(l>=A)));return n[d]=i,n[c]=a,r}function Fre(r){Array.isArray(r)||(r=Array.from(r));const e=r.length,t=new Float64Array(e);let n=1/0,i=-1/0;for(let a=0,s;a<e;++a)isNaN(s=+this._x.call(null,r[a]))||(t[a]=s,s<n&&(n=s),s>i&&(i=s));if(n>i)return this;this.cover(n).cover(i);for(let a=0;a<e;++a)BD(this,t[a],r[a]);return this}function Mre(r){if(isNaN(r=+r))return this;var e=this._x0,t=this._x1;if(isNaN(e))t=(e=Math.floor(r))+1;else{for(var n=t-e||1,i=this._root,a,s;e>r||r>=t;)switch(s=+(r<e),a=new Array(2),a[s]=i,i=a,n*=2,s){case 0:t=e+n;break;case 1:e=t-n;break}this._root&&this._root.length&&(this._root=i)}return this._x0=e,this._x1=t,this}function Ire(){var r=[];return this.visit(function(e){if(!e.length)do r.push(e.data);while(e=e.next)}),r}function Ore(r){return arguments.length?this.cover(+r[0][0]).cover(+r[1][0]):isNaN(this._x0)?void 0:[[this._x0],[this._x1]]}function Ns(r,e,t){this.node=r,this.x0=e,this.x1=t}function Lre(r,e){var t,n=this._x0,i,a,s=this._x1,o=[],A=this._root,l,u;for(A&&o.push(new Ns(A,n,s)),e==null?e=1/0:(n=r-e,s=r+e);l=o.pop();)if(!(!(A=l.node)||(i=l.x0)>s||(a=l.x1)<n))if(A.length){var c=(i+a)/2;o.push(new Ns(A[1],c,a),new Ns(A[0],i,c)),(u=+(r>=c))&&(l=o[o.length-1],o[o.length-1]=o[o.length-1-u],o[o.length-1-u]=l)}else{var d=Math.abs(r-+this._x.call(null,A.data));d<e&&(e=d,n=r-d,s=r+d,t=A.data)}return t}function Nre(r){if(isNaN(A=+this._x.call(null,r)))return this;var e,t=this._root,n,i,a,s=this._x0,o=this._x1,A,l,u,c,d;if(!t)return this;if(t.length)for(;;){if((u=A>=(l=(s+o)/2))?s=l:o=l,e=t,!(t=t[c=+u]))return this;if(!t.length)break;e[c+1&1]&&(n=e,d=c)}for(;t.data!==r;)if(i=t,!(t=t.next))return this;return(a=t.next)&&delete t.next,i?(a?i.next=a:delete i.next,this):e?(a?e[c]=a:delete e[c],(t=e[0]||e[1])&&t===(e[1]||e[0])&&!t.length&&(n?n[d]=t:this._root=t),this):(this._root=a,this)}function Pre(r){for(var e=0,t=r.length;e<t;++e)this.remove(r[e]);return this}function Ure(){return this._root}function Rre(){var r=0;return this.visit(function(e){if(!e.length)do++r;while(e=e.next)}),r}function Qre(r){var e=[],t,n=this._root,i,a,s;for(n&&e.push(new Ns(n,this._x0,this._x1));t=e.pop();)if(!r(n=t.node,a=t.x0,s=t.x1)&&n.length){var o=(a+s)/2;(i=n[1])&&e.push(new Ns(i,o,s)),(i=n[0])&&e.push(new Ns(i,a,o))}return this}function Dre(r){var e=[],t=[],n;for(this._root&&e.push(new Ns(this._root,this._x0,this._x1));n=e.pop();){var i=n.node;if(i.length){var a,s=n.x0,o=n.x1,A=(s+o)/2;(a=i[0])&&e.push(new Ns(a,s,A)),(a=i[1])&&e.push(new Ns(a,A,o))}t.push(n)}for(;n=t.pop();)r(n.node,n.x0,n.x1);return this}function Hre(r){return r[0]}function $re(r){return arguments.length?(this._x=r,this):this._x}function Dx(r,e){var t=new Hx(e??Hre,NaN,NaN);return r==null?t:t.addAll(r)}function Hx(r,e,t){this._x=r,this._x0=e,this._x1=t,this._root=void 0}function hk(r){for(var e={data:r.data},t=e;r=r.next;)t=t.next={data:r.data};return e}var Ri=Dx.prototype=Hx.prototype;Ri.copy=function(){var r=new Hx(this._x,this._x0,this._x1),e=this._root,t,n;if(!e)return r;if(!e.length)return r._root=hk(e),r;for(t=[{source:e,target:r._root=new Array(2)}];e=t.pop();)for(var i=0;i<2;++i)(n=e.source[i])&&(n.length?t.push({source:n,target:e.target[i]=new Array(2)}):e.target[i]=hk(n));return r};Ri.add=Tre;Ri.addAll=Fre;Ri.cover=Mre;Ri.data=Ire;Ri.extent=Ore;Ri.find=Lre;Ri.remove=Nre;Ri.removeAll=Pre;Ri.root=Ure;Ri.size=Rre;Ri.visit=Qre;Ri.visitAfter=Dre;Ri.x=$re;function Gre(r){const e=+this._x.call(null,r),t=+this._y.call(null,r),n=+this._z.call(null,r);return ED(this.cover(e,t,n),e,t,n,r)}function ED(r,e,t,n,i){if(isNaN(e)||isNaN(t)||isNaN(n))return r;var a,s=r._root,o={data:i},A=r._x0,l=r._y0,u=r._z0,c=r._x1,d=r._y1,h=r._z1,f,p,g,v,m,y,w,B,x,k,_;if(!s)return r._root=o,r;for(;s.length;)if((w=e>=(f=(A+c)/2))?A=f:c=f,(B=t>=(p=(l+d)/2))?l=p:d=p,(x=n>=(g=(u+h)/2))?u=g:h=g,a=s,!(s=s[k=x<<2|B<<1|w]))return a[k]=o,r;if(v=+r._x.call(null,s.data),m=+r._y.call(null,s.data),y=+r._z.call(null,s.data),e===v&&t===m&&n===y)return o.next=s,a?a[k]=o:r._root=o,r;do a=a?a[k]=new Array(8):r._root=new Array(8),(w=e>=(f=(A+c)/2))?A=f:c=f,(B=t>=(p=(l+d)/2))?l=p:d=p,(x=n>=(g=(u+h)/2))?u=g:h=g;while((k=x<<2|B<<1|w)===(_=(y>=g)<<2|(m>=p)<<1|v>=f));return a[_]=s,a[k]=o,r}function zre(r){Array.isArray(r)||(r=Array.from(r));const e=r.length,t=new Float64Array(e),n=new Float64Array(e),i=new Float64Array(e);let a=1/0,s=1/0,o=1/0,A=-1/0,l=-1/0,u=-1/0;for(let c=0,d,h,f,p;c<e;++c)isNaN(h=+this._x.call(null,d=r[c]))||isNaN(f=+this._y.call(null,d))||isNaN(p=+this._z.call(null,d))||(t[c]=h,n[c]=f,i[c]=p,h<a&&(a=h),h>A&&(A=h),f<s&&(s=f),f>l&&(l=f),p<o&&(o=p),p>u&&(u=p));if(a>A||s>l||o>u)return this;this.cover(a,s,o).cover(A,l,u);for(let c=0;c<e;++c)ED(this,t[c],n[c],i[c],r[c]);return this}function Vre(r,e,t){if(isNaN(r=+r)||isNaN(e=+e)||isNaN(t=+t))return this;var n=this._x0,i=this._y0,a=this._z0,s=this._x1,o=this._y1,A=this._z1;if(isNaN(n))s=(n=Math.floor(r))+1,o=(i=Math.floor(e))+1,A=(a=Math.floor(t))+1;else{for(var l=s-n||1,u=this._root,c,d;n>r||r>=s||i>e||e>=o||a>t||t>=A;)switch(d=(t<a)<<2|(e<i)<<1|r<n,c=new Array(8),c[d]=u,u=c,l*=2,d){case 0:s=n+l,o=i+l,A=a+l;break;case 1:n=s-l,o=i+l,A=a+l;break;case 2:s=n+l,i=o-l,A=a+l;break;case 3:n=s-l,i=o-l,A=a+l;break;case 4:s=n+l,o=i+l,a=A-l;break;case 5:n=s-l,o=i+l,a=A-l;break;case 6:s=n+l,i=o-l,a=A-l;break;case 7:n=s-l,i=o-l,a=A-l;break}this._root&&this._root.length&&(this._root=u)}return this._x0=n,this._y0=i,this._z0=a,this._x1=s,this._y1=o,this._z1=A,this}function Kre(){var r=[];return this.visit(function(e){if(!e.length)do r.push(e.data);while(e=e.next)}),r}function jre(r){return arguments.length?this.cover(+r[0][0],+r[0][1],+r[0][2]).cover(+r[1][0],+r[1][1],+r[1][2]):isNaN(this._x0)?void 0:[[this._x0,this._y0,this._z0],[this._x1,this._y1,this._z1]]}function xn(r,e,t,n,i,a,s){this.node=r,this.x0=e,this.y0=t,this.z0=n,this.x1=i,this.y1=a,this.z1=s}function Wre(r,e,t,n){var i,a=this._x0,s=this._y0,o=this._z0,A,l,u,c,d,h,f=this._x1,p=this._y1,g=this._z1,v=[],m=this._root,y,w;for(m&&v.push(new xn(m,a,s,o,f,p,g)),n==null?n=1/0:(a=r-n,s=e-n,o=t-n,f=r+n,p=e+n,g=t+n,n*=n);y=v.pop();)if(!(!(m=y.node)||(A=y.x0)>f||(l=y.y0)>p||(u=y.z0)>g||(c=y.x1)<a||(d=y.y1)<s||(h=y.z1)<o))if(m.length){var B=(A+c)/2,x=(l+d)/2,k=(u+h)/2;v.push(new xn(m[7],B,x,k,c,d,h),new xn(m[6],A,x,k,B,d,h),new xn(m[5],B,l,k,c,x,h),new xn(m[4],A,l,k,B,x,h),new xn(m[3],B,x,u,c,d,k),new xn(m[2],A,x,u,B,d,k),new xn(m[1],B,l,u,c,x,k),new xn(m[0],A,l,u,B,x,k)),(w=(t>=k)<<2|(e>=x)<<1|r>=B)&&(y=v[v.length-1],v[v.length-1]=v[v.length-1-w],v[v.length-1-w]=y)}else{var _=r-+this._x.call(null,m.data),T=e-+this._y.call(null,m.data),F=t-+this._z.call(null,m.data),I=_*_+T*T+F*F;if(I<n){var O=Math.sqrt(n=I);a=r-O,s=e-O,o=t-O,f=r+O,p=e+O,g=t+O,i=m.data}}return i}const qre=(r,e,t,n,i,a)=>Math.sqrt((r-n)**2+(e-i)**2+(t-a)**2);function Yre(r,e,t,n){const i=[],a=r-n,s=e-n,o=t-n,A=r+n,l=e+n,u=t+n;return this.visit((c,d,h,f,p,g,v)=>{if(!c.length)do{const m=c.data;qre(r,e,t,this._x(m),this._y(m),this._z(m))<=n&&i.push(m)}while(c=c.next);return d>A||h>l||f>u||p<a||g<s||v<o}),i}function Xre(r){if(isNaN(d=+this._x.call(null,r))||isNaN(h=+this._y.call(null,r))||isNaN(f=+this._z.call(null,r)))return this;var e,t=this._root,n,i,a,s=this._x0,o=this._y0,A=this._z0,l=this._x1,u=this._y1,c=this._z1,d,h,f,p,g,v,m,y,w,B,x;if(!t)return this;if(t.length)for(;;){if((m=d>=(p=(s+l)/2))?s=p:l=p,(y=h>=(g=(o+u)/2))?o=g:u=g,(w=f>=(v=(A+c)/2))?A=v:c=v,e=t,!(t=t[B=w<<2|y<<1|m]))return this;if(!t.length)break;(e[B+1&7]||e[B+2&7]||e[B+3&7]||e[B+4&7]||e[B+5&7]||e[B+6&7]||e[B+7&7])&&(n=e,x=B)}for(;t.data!==r;)if(i=t,!(t=t.next))return this;return(a=t.next)&&delete t.next,i?(a?i.next=a:delete i.next,this):e?(a?e[B]=a:delete e[B],(t=e[0]||e[1]||e[2]||e[3]||e[4]||e[5]||e[6]||e[7])&&t===(e[7]||e[6]||e[5]||e[4]||e[3]||e[2]||e[1]||e[0])&&!t.length&&(n?n[x]=t:this._root=t),this):(this._root=a,this)}function Zre(r){for(var e=0,t=r.length;e<t;++e)this.remove(r[e]);return this}function Jre(){return this._root}function eie(){var r=0;return this.visit(function(e){if(!e.length)do++r;while(e=e.next)}),r}function tie(r){var e=[],t,n=this._root,i,a,s,o,A,l,u;for(n&&e.push(new xn(n,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));t=e.pop();)if(!r(n=t.node,a=t.x0,s=t.y0,o=t.z0,A=t.x1,l=t.y1,u=t.z1)&&n.length){var c=(a+A)/2,d=(s+l)/2,h=(o+u)/2;(i=n[7])&&e.push(new xn(i,c,d,h,A,l,u)),(i=n[6])&&e.push(new xn(i,a,d,h,c,l,u)),(i=n[5])&&e.push(new xn(i,c,s,h,A,d,u)),(i=n[4])&&e.push(new xn(i,a,s,h,c,d,u)),(i=n[3])&&e.push(new xn(i,c,d,o,A,l,h)),(i=n[2])&&e.push(new xn(i,a,d,o,c,l,h)),(i=n[1])&&e.push(new xn(i,c,s,o,A,d,h)),(i=n[0])&&e.push(new xn(i,a,s,o,c,d,h))}return this}function nie(r){var e=[],t=[],n;for(this._root&&e.push(new xn(this._root,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1));n=e.pop();){var i=n.node;if(i.length){var a,s=n.x0,o=n.y0,A=n.z0,l=n.x1,u=n.y1,c=n.z1,d=(s+l)/2,h=(o+u)/2,f=(A+c)/2;(a=i[0])&&e.push(new xn(a,s,o,A,d,h,f)),(a=i[1])&&e.push(new xn(a,d,o,A,l,h,f)),(a=i[2])&&e.push(new xn(a,s,h,A,d,u,f)),(a=i[3])&&e.push(new xn(a,d,h,A,l,u,f)),(a=i[4])&&e.push(new xn(a,s,o,f,d,h,c)),(a=i[5])&&e.push(new xn(a,d,o,f,l,h,c)),(a=i[6])&&e.push(new xn(a,s,h,f,d,u,c)),(a=i[7])&&e.push(new xn(a,d,h,f,l,u,c))}t.push(n)}for(;n=t.pop();)r(n.node,n.x0,n.y0,n.z0,n.x1,n.y1,n.z1);return this}function rie(r){return r[0]}function iie(r){return arguments.length?(this._x=r,this):this._x}function aie(r){return r[1]}function sie(r){return arguments.length?(this._y=r,this):this._y}function oie(r){return r[2]}function Aie(r){return arguments.length?(this._z=r,this):this._z}function Lg(r,e,t,n){var i=new $x(e??rie,t??aie,n??oie,NaN,NaN,NaN,NaN,NaN,NaN);return r==null?i:i.addAll(r)}function $x(r,e,t,n,i,a,s,o,A){this._x=r,this._y=e,this._z=t,this._x0=n,this._y0=i,this._z0=a,this._x1=s,this._y1=o,this._z1=A,this._root=void 0}function fk(r){for(var e={data:r.data},t=e;r=r.next;)t=t.next={data:r.data};return e}var qr=Lg.prototype=$x.prototype;qr.copy=function(){var r=new $x(this._x,this._y,this._z,this._x0,this._y0,this._z0,this._x1,this._y1,this._z1),e=this._root,t,n;if(!e)return r;if(!e.length)return r._root=fk(e),r;for(t=[{source:e,target:r._root=new Array(8)}];e=t.pop();)for(var i=0;i<8;++i)(n=e.source[i])&&(n.length?t.push({source:n,target:e.target[i]=new Array(8)}):e.target[i]=fk(n));return r};qr.add=Gre;qr.addAll=zre;qr.cover=Vre;qr.data=Kre;qr.extent=jre;qr.find=Wre;qr.findAllWithinRadius=Yre;qr.remove=Xre;qr.removeAll=Zre;qr.root=Jre;qr.size=eie;qr.visit=tie;qr.visitAfter=nie;qr.x=iie;qr.y=sie;qr.z=Aie;function s0(r){return r.x+r.vx}function gk(r){return r.y+r.vy}function lie(r){return r.z+r.vz}function uie(r){var e,t,n,i,a=1,s=1;typeof r!="function"&&(r=Wn(r==null?1:+r));function o(){for(var u,c=e.length,d,h,f,p,g,v,m,y=0;y<s;++y)for(d=(t===1?Dx(e,s0):t===2?FA(e,s0,gk):t===3?Lg(e,s0,gk,lie):null).visitAfter(A),u=0;u<c;++u)h=e[u],v=n[h.index],m=v*v,f=h.x+h.vx,t>1&&(p=h.y+h.vy),t>2&&(g=h.z+h.vz),d.visit(w);function w(B,x,k,_,T,F,I){var O=[x,k,_,T,F,I],P=O[0],G=O[1],ee=O[2],te=O[t],N=O[t+1],K=O[t+2],J=B.data,be=B.r,re=v+be;if(J){if(J.index>h.index){var ne=f-J.x-J.vx,ue=t>1?p-J.y-J.vy:0,Y=t>2?g-J.z-J.vz:0,U=ne*ne+ue*ue+Y*Y;U<re*re&&(ne===0&&(ne=ca(i),U+=ne*ne),t>1&&ue===0&&(ue=ca(i),U+=ue*ue),t>2&&Y===0&&(Y=ca(i),U+=Y*Y),U=(re-(U=Math.sqrt(U)))/U*a,h.vx+=(ne*=U)*(re=(be*=be)/(m+be)),t>1&&(h.vy+=(ue*=U)*re),t>2&&(h.vz+=(Y*=U)*re),J.vx-=ne*(re=1-re),t>1&&(J.vy-=ue*re),t>2&&(J.vz-=Y*re))}return}return P>f+re||te<f-re||t>1&&(G>p+re||N<p-re)||t>2&&(ee>g+re||K<g-re)}}function A(u){if(u.data)return u.r=n[u.data.index];for(var c=u.r=0;c<Math.pow(2,t);++c)u[c]&&u[c].r>u.r&&(u.r=u[c].r)}function l(){if(e){var u,c=e.length,d;for(n=new Array(c),u=0;u<c;++u)d=e[u],n[d.index]=+r(d,u,e)}}return o.initialize=function(u,...c){e=u,i=c.find(d=>typeof d=="function")||Math.random,t=c.find(d=>[1,2,3].includes(d))||2,l()},o.iterations=function(u){return arguments.length?(s=+u,o):s},o.strength=function(u){return arguments.length?(a=+u,o):a},o.radius=function(u){return arguments.length?(r=typeof u=="function"?u:Wn(+u),l(),o):r},o}function cie(r,e,t){var n,i=1;r==null&&(r=0),e==null&&(e=0),t==null&&(t=0);function a(){var s,o=n.length,A,l=0,u=0,c=0;for(s=0;s<o;++s)A=n[s],l+=A.x||0,u+=A.y||0,c+=A.z||0;for(l=(l/o-r)*i,u=(u/o-e)*i,c=(c/o-t)*i,s=0;s<o;++s)A=n[s],l&&(A.x-=l),u&&(A.y-=u),c&&(A.z-=c)}return a.initialize=function(s){n=s},a.x=function(s){return arguments.length?(r=+s,a):r},a.y=function(s){return arguments.length?(e=+s,a):e},a.z=function(s){return arguments.length?(t=+s,a):t},a.strength=function(s){return arguments.length?(i=+s,a):i},a}const die=1664525,hie=1013904223,pk=4294967296;function fie(){let r=1;return()=>(r=(die*r+hie)%pk)/pk}var vk=3;function o0(r){return r.x}function mk(r){return r.y}function gie(r){return r.z}var pie=10,vie=Math.PI*(3-Math.sqrt(5)),mie=Math.PI*20/(9+Math.sqrt(221));function yie(r,e){e=e||2;var t=Math.min(vk,Math.max(1,Math.round(e))),n,i=1,a=.001,s=1-Math.pow(a,1/300),o=0,A=.6,l=new Map,u=Px(h),c=Ux("tick","end"),d=fie();r==null&&(r=[]);function h(){f(),c.call("tick",n),i<a&&(u.stop(),c.call("end",n))}function f(v){var m,y=r.length,w;v===void 0&&(v=1);for(var B=0;B<v;++B)for(i+=(o-i)*s,l.forEach(function(x){x(i)}),m=0;m<y;++m)w=r[m],w.fx==null?w.x+=w.vx*=A:(w.x=w.fx,w.vx=0),t>1&&(w.fy==null?w.y+=w.vy*=A:(w.y=w.fy,w.vy=0)),t>2&&(w.fz==null?w.z+=w.vz*=A:(w.z=w.fz,w.vz=0));return n}function p(){for(var v=0,m=r.length,y;v<m;++v){if(y=r[v],y.index=v,y.fx!=null&&(y.x=y.fx),y.fy!=null&&(y.y=y.fy),y.fz!=null&&(y.z=y.fz),isNaN(y.x)||t>1&&isNaN(y.y)||t>2&&isNaN(y.z)){var w=pie*(t>2?Math.cbrt(.5+v):t>1?Math.sqrt(.5+v):v),B=v*vie,x=v*mie;t===1?y.x=w:t===2?(y.x=w*Math.cos(B),y.y=w*Math.sin(B)):(y.x=w*Math.sin(B)*Math.cos(x),y.y=w*Math.cos(B),y.z=w*Math.sin(B)*Math.sin(x))}(isNaN(y.vx)||t>1&&isNaN(y.vy)||t>2&&isNaN(y.vz))&&(y.vx=0,t>1&&(y.vy=0),t>2&&(y.vz=0))}}function g(v){return v.initialize&&v.initialize(r,d,t),v}return p(),n={tick:f,restart:function(){return u.restart(h),n},stop:function(){return u.stop(),n},numDimensions:function(v){return arguments.length?(t=Math.min(vk,Math.max(1,Math.round(v))),l.forEach(g),n):t},nodes:function(v){return arguments.length?(r=v,p(),l.forEach(g),n):r},alpha:function(v){return arguments.length?(i=+v,n):i},alphaMin:function(v){return arguments.length?(a=+v,n):a},alphaDecay:function(v){return arguments.length?(s=+v,n):+s},alphaTarget:function(v){return arguments.length?(o=+v,n):o},velocityDecay:function(v){return arguments.length?(A=1-v,n):1-A},randomSource:function(v){return arguments.length?(d=v,l.forEach(g),n):d},force:function(v,m){return arguments.length>1?(m==null?l.delete(v):l.set(v,g(m)),n):l.get(v)},find:function(){var v=Array.prototype.slice.call(arguments),m=v.shift()||0,y=(t>1?v.shift():null)||0,w=(t>2?v.shift():null)||0,B=v.shift()||1/0,x=0,k=r.length,_,T,F,I,O,P;for(B*=B,x=0;x<k;++x)O=r[x],_=m-O.x,T=y-(O.y||0),F=w-(O.z||0),I=_*_+T*T+F*F,I<B&&(P=O,B=I);return P},on:function(v,m){return arguments.length>1?(c.on(v,m),n):c.on(v)}}}function wie(){var r,e,t,n,i,a=Wn(-30),s,o=1,A=1/0,l=.81;function u(f){var p,g=r.length,v=(e===1?Dx(r,o0):e===2?FA(r,o0,mk):e===3?Lg(r,o0,mk,gie):null).visitAfter(d);for(i=f,p=0;p<g;++p)t=r[p],v.visit(h)}function c(){if(r){var f,p=r.length,g;for(s=new Array(p),f=0;f<p;++f)g=r[f],s[g.index]=+a(g,f,r)}}function d(f){var p=0,g,v,m=0,y,w,B,x,k=f.length;if(k){for(y=w=B=x=0;x<k;++x)(g=f[x])&&(v=Math.abs(g.value))&&(p+=g.value,m+=v,y+=v*(g.x||0),w+=v*(g.y||0),B+=v*(g.z||0));p*=Math.sqrt(4/k),f.x=y/m,e>1&&(f.y=w/m),e>2&&(f.z=B/m)}else{g=f,g.x=g.data.x,e>1&&(g.y=g.data.y),e>2&&(g.z=g.data.z);do p+=s[g.data.index];while(g=g.next)}f.value=p}function h(f,p,g,v,m){if(!f.value)return!0;var y=[g,v,m][e-1],w=f.x-t.x,B=e>1?f.y-t.y:0,x=e>2?f.z-t.z:0,k=y-p,_=w*w+B*B+x*x;if(k*k/l<_)return _<A&&(w===0&&(w=ca(n),_+=w*w),e>1&&B===0&&(B=ca(n),_+=B*B),e>2&&x===0&&(x=ca(n),_+=x*x),_<o&&(_=Math.sqrt(o*_)),t.vx+=w*f.value*i/_,e>1&&(t.vy+=B*f.value*i/_),e>2&&(t.vz+=x*f.value*i/_)),!0;if(f.length||_>=A)return;(f.data!==t||f.next)&&(w===0&&(w=ca(n),_+=w*w),e>1&&B===0&&(B=ca(n),_+=B*B),e>2&&x===0&&(x=ca(n),_+=x*x),_<o&&(_=Math.sqrt(o*_)));do f.data!==t&&(k=s[f.data.index]*i/_,t.vx+=w*k,e>1&&(t.vy+=B*k),e>2&&(t.vz+=x*k));while(f=f.next)}return u.initialize=function(f,...p){r=f,n=p.find(g=>typeof g=="function")||Math.random,e=p.find(g=>[1,2,3].includes(g))||2,c()},u.strength=function(f){return arguments.length?(a=typeof f=="function"?f:Wn(+f),c(),u):a},u.distanceMin=function(f){return arguments.length?(o=f*f,u):Math.sqrt(o)},u.distanceMax=function(f){return arguments.length?(A=f*f,u):Math.sqrt(A)},u.theta=function(f){return arguments.length?(l=f*f,u):Math.sqrt(l)},u}function bie(r){return r.index}function yk(r,e){var t=r.get(e);if(!t)throw new Error("node not found: "+e);return t}function Bie(r){var e=bie,t=d,n,i=Wn(30),a,s,o,A,l,u,c=1;r==null&&(r=[]);function d(v){return 1/Math.min(A[v.source.index],A[v.target.index])}function h(v){for(var m=0,y=r.length;m<c;++m)for(var w=0,B,x,k,_=0,T=0,F=0,I,O;w<y;++w)B=r[w],x=B.source,k=B.target,_=k.x+k.vx-x.x-x.vx||ca(u),o>1&&(T=k.y+k.vy-x.y-x.vy||ca(u)),o>2&&(F=k.z+k.vz-x.z-x.vz||ca(u)),I=Math.sqrt(_*_+T*T+F*F),I=(I-a[w])/I*v*n[w],_*=I,T*=I,F*=I,k.vx-=_*(O=l[w]),o>1&&(k.vy-=T*O),o>2&&(k.vz-=F*O),x.vx+=_*(O=1-O),o>1&&(x.vy+=T*O),o>2&&(x.vz+=F*O)}function f(){if(s){var v,m=s.length,y=r.length,w=new Map(s.map((x,k)=>[e(x,k,s),x])),B;for(v=0,A=new Array(m);v<y;++v)B=r[v],B.index=v,typeof B.source!="object"&&(B.source=yk(w,B.source)),typeof B.target!="object"&&(B.target=yk(w,B.target)),A[B.source.index]=(A[B.source.index]||0)+1,A[B.target.index]=(A[B.target.index]||0)+1;for(v=0,l=new Array(y);v<y;++v)B=r[v],l[v]=A[B.source.index]/(A[B.source.index]+A[B.target.index]);n=new Array(y),p(),a=new Array(y),g()}}function p(){if(s)for(var v=0,m=r.length;v<m;++v)n[v]=+t(r[v],v,r)}function g(){if(s)for(var v=0,m=r.length;v<m;++v)a[v]=+i(r[v],v,r)}return h.initialize=function(v,...m){s=v,u=m.find(y=>typeof y=="function")||Math.random,o=m.find(y=>[1,2,3].includes(y))||2,f()},h.links=function(v){return arguments.length?(r=v,f(),h):r},h.id=function(v){return arguments.length?(e=v,h):e},h.iterations=function(v){return arguments.length?(c=+v,h):c},h.strength=function(v){return arguments.length?(t=typeof v=="function"?v:Wn(+v),p(),h):t},h.distance=function(v){return arguments.length?(i=typeof v=="function"?v:Wn(+v),g(),h):i},h}class Eie extends Qx{constructor(){super(...arguments),this.id="d3-force-3d",this.config={simulationAttrs:["alpha","alphaMin","alphaDecay","alphaTarget","velocityDecay","randomSource","numDimensions"]},this.forceMap={link:Bie,manyBody:wie,center:cie,collide:uie,radial:kre,x:_re,y:Sre,z:Cre}}getDefaultOptions(){return{numDimensions:3,link:{id:e=>e.id},manyBody:{},center:{x:0,y:0,z:0}}}initSimulation(){return yie()}setupForces(e,t){Object.entries(this.forceMap).forEach(([n,i])=>{const a=n;if(t[n]){let s=e.force(a);s||(s=i(),e.force(a,s)),Xa(s,Object.entries(t[a]))}else e.force(a,null)})}}var Ah=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function xD(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}function CD(r){if(Object.prototype.hasOwnProperty.call(r,"__esModule"))return r;var e=r.default;if(typeof e=="function"){var t=function n(){var i=!1;try{i=this instanceof n}catch{}return i?Reflect.construct(e,arguments,this.constructor):e.apply(this,arguments)};t.prototype=e.prototype}else t={};return Object.defineProperty(t,"__esModule",{value:!0}),Object.keys(r).forEach(function(n){var i=Object.getOwnPropertyDescriptor(r,n);Object.defineProperty(t,n,i.get?i:{enumerable:!0,get:function(){return r[n]}})}),t}function Gx(r){throw new Error('Could not dynamically require "'+r+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var A0,wk;function xie(){if(wk)return A0;wk=1;function r(){this.__data__=[],this.size=0}return A0=r,A0}var l0,bk;function Ul(){if(bk)return l0;bk=1;function r(e,t){return e===t||e!==e&&t!==t}return l0=r,l0}var u0,Bk;function Ng(){if(Bk)return u0;Bk=1;var r=Ul();function e(t,n){for(var i=t.length;i--;)if(r(t[i][0],n))return i;return-1}return u0=e,u0}var c0,Ek;function Cie(){if(Ek)return c0;Ek=1;var r=Ng(),e=Array.prototype,t=e.splice;function n(i){var a=this.__data__,s=r(a,i);if(s<0)return!1;var o=a.length-1;return s==o?a.pop():t.call(a,s,1),--this.size,!0}return c0=n,c0}var d0,xk;function Sie(){if(xk)return d0;xk=1;var r=Ng();function e(t){var n=this.__data__,i=r(n,t);return i<0?void 0:n[i][1]}return d0=e,d0}var h0,Ck;function _ie(){if(Ck)return h0;Ck=1;var r=Ng();function e(t){return r(this.__data__,t)>-1}return h0=e,h0}var f0,Sk;function kie(){if(Sk)return f0;Sk=1;var r=Ng();function e(t,n){var i=this.__data__,a=r(i,t);return a<0?(++this.size,i.push([t,n])):i[a][1]=n,this}return f0=e,f0}var g0,_k;function Pg(){if(_k)return g0;_k=1;var r=xie(),e=Cie(),t=Sie(),n=_ie(),i=kie();function a(s){var o=-1,A=s==null?0:s.length;for(this.clear();++o<A;){var l=s[o];this.set(l[0],l[1])}}return a.prototype.clear=r,a.prototype.delete=e,a.prototype.get=t,a.prototype.has=n,a.prototype.set=i,g0=a,g0}var p0,kk;function Tie(){if(kk)return p0;kk=1;var r=Pg();function e(){this.__data__=new r,this.size=0}return p0=e,p0}var v0,Tk;function Fie(){if(Tk)return v0;Tk=1;function r(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}return v0=r,v0}var m0,Fk;function Mie(){if(Fk)return m0;Fk=1;function r(e){return this.__data__.get(e)}return m0=r,m0}var y0,Mk;function Iie(){if(Mk)return y0;Mk=1;function r(e){return this.__data__.has(e)}return y0=r,y0}var w0,Ik;function SD(){if(Ik)return w0;Ik=1;var r=typeof Ah=="object"&&Ah&&Ah.Object===Object&&Ah;return w0=r,w0}var b0,Ok;function Ra(){if(Ok)return b0;Ok=1;var r=SD(),e=typeof self=="object"&&self&&self.Object===Object&&self,t=r||e||Function("return this")();return b0=t,b0}var B0,Lk;function Rl(){if(Lk)return B0;Lk=1;var r=Ra(),e=r.Symbol;return B0=e,B0}var E0,Nk;function Oie(){if(Nk)return E0;Nk=1;var r=Rl(),e=Object.prototype,t=e.hasOwnProperty,n=e.toString,i=r?r.toStringTag:void 0;function a(s){var o=t.call(s,i),A=s[i];try{s[i]=void 0;var l=!0}catch{}var u=n.call(s);return l&&(o?s[i]=A:delete s[i]),u}return E0=a,E0}var x0,Pk;function Lie(){if(Pk)return x0;Pk=1;var r=Object.prototype,e=r.toString;function t(n){return e.call(n)}return x0=t,x0}var C0,Uk;function MA(){if(Uk)return C0;Uk=1;var r=Rl(),e=Oie(),t=Lie(),n="[object Null]",i="[object Undefined]",a=r?r.toStringTag:void 0;function s(o){return o==null?o===void 0?i:n:a&&a in Object(o)?e(o):t(o)}return C0=s,C0}var S0,Rk;function pa(){if(Rk)return S0;Rk=1;function r(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}return S0=r,S0}var _0,Qk;function Uc(){if(Qk)return _0;Qk=1;var r=MA(),e=pa(),t="[object AsyncFunction]",n="[object Function]",i="[object GeneratorFunction]",a="[object Proxy]";function s(o){if(!e(o))return!1;var A=r(o);return A==n||A==i||A==t||A==a}return _0=s,_0}var k0,Dk;function Nie(){if(Dk)return k0;Dk=1;var r=Ra(),e=r["__core-js_shared__"];return k0=e,k0}var T0,Hk;function Pie(){if(Hk)return T0;Hk=1;var r=Nie(),e=(function(){var n=/[^.]+$/.exec(r&&r.keys&&r.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""})();function t(n){return!!e&&e in n}return T0=t,T0}var F0,$k;function _D(){if($k)return F0;$k=1;var r=Function.prototype,e=r.toString;function t(n){if(n!=null){try{return e.call(n)}catch{}try{return n+""}catch{}}return""}return F0=t,F0}var M0,Gk;function Uie(){if(Gk)return M0;Gk=1;var r=Uc(),e=Pie(),t=pa(),n=_D(),i=/[\\^$.*+?()[\]{}|]/g,a=/^\[object .+?Constructor\]$/,s=Function.prototype,o=Object.prototype,A=s.toString,l=o.hasOwnProperty,u=RegExp("^"+A.call(l).replace(i,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function c(d){if(!t(d)||e(d))return!1;var h=r(d)?u:a;return h.test(n(d))}return M0=c,M0}var I0,zk;function Rie(){if(zk)return I0;zk=1;function r(e,t){return e==null?void 0:e[t]}return I0=r,I0}var O0,Vk;function IA(){if(Vk)return O0;Vk=1;var r=Uie(),e=Rie();function t(n,i){var a=e(n,i);return r(a)?a:void 0}return O0=t,O0}var L0,Kk;function zx(){if(Kk)return L0;Kk=1;var r=IA(),e=Ra(),t=r(e,"Map");return L0=t,L0}var N0,jk;function Ug(){if(jk)return N0;jk=1;var r=IA(),e=r(Object,"create");return N0=e,N0}var P0,Wk;function Qie(){if(Wk)return P0;Wk=1;var r=Ug();function e(){this.__data__=r?r(null):{},this.size=0}return P0=e,P0}var U0,qk;function Die(){if(qk)return U0;qk=1;function r(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}return U0=r,U0}var R0,Yk;function Hie(){if(Yk)return R0;Yk=1;var r=Ug(),e="__lodash_hash_undefined__",t=Object.prototype,n=t.hasOwnProperty;function i(a){var s=this.__data__;if(r){var o=s[a];return o===e?void 0:o}return n.call(s,a)?s[a]:void 0}return R0=i,R0}var Q0,Xk;function $ie(){if(Xk)return Q0;Xk=1;var r=Ug(),e=Object.prototype,t=e.hasOwnProperty;function n(i){var a=this.__data__;return r?a[i]!==void 0:t.call(a,i)}return Q0=n,Q0}var D0,Zk;function Gie(){if(Zk)return D0;Zk=1;var r=Ug(),e="__lodash_hash_undefined__";function t(n,i){var a=this.__data__;return this.size+=this.has(n)?0:1,a[n]=r&&i===void 0?e:i,this}return D0=t,D0}var H0,Jk;function zie(){if(Jk)return H0;Jk=1;var r=Qie(),e=Die(),t=Hie(),n=$ie(),i=Gie();function a(s){var o=-1,A=s==null?0:s.length;for(this.clear();++o<A;){var l=s[o];this.set(l[0],l[1])}}return a.prototype.clear=r,a.prototype.delete=e,a.prototype.get=t,a.prototype.has=n,a.prototype.set=i,H0=a,H0}var $0,eT;function Vie(){if(eT)return $0;eT=1;var r=zie(),e=Pg(),t=zx();function n(){this.size=0,this.__data__={hash:new r,map:new(t||e),string:new r}}return $0=n,$0}var G0,tT;function Kie(){if(tT)return G0;tT=1;function r(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}return G0=r,G0}var z0,nT;function Rg(){if(nT)return z0;nT=1;var r=Kie();function e(t,n){var i=t.__data__;return r(n)?i[typeof n=="string"?"string":"hash"]:i.map}return z0=e,z0}var V0,rT;function jie(){if(rT)return V0;rT=1;var r=Rg();function e(t){var n=r(this,t).delete(t);return this.size-=n?1:0,n}return V0=e,V0}var K0,iT;function Wie(){if(iT)return K0;iT=1;var r=Rg();function e(t){return r(this,t).get(t)}return K0=e,K0}var j0,aT;function qie(){if(aT)return j0;aT=1;var r=Rg();function e(t){return r(this,t).has(t)}return j0=e,j0}var W0,sT;function Yie(){if(sT)return W0;sT=1;var r=Rg();function e(t,n){var i=r(this,t),a=i.size;return i.set(t,n),this.size+=i.size==a?0:1,this}return W0=e,W0}var q0,oT;function Vx(){if(oT)return q0;oT=1;var r=Vie(),e=jie(),t=Wie(),n=qie(),i=Yie();function a(s){var o=-1,A=s==null?0:s.length;for(this.clear();++o<A;){var l=s[o];this.set(l[0],l[1])}}return a.prototype.clear=r,a.prototype.delete=e,a.prototype.get=t,a.prototype.has=n,a.prototype.set=i,q0=a,q0}var Y0,AT;function Xie(){if(AT)return Y0;AT=1;var r=Pg(),e=zx(),t=Vx(),n=200;function i(a,s){var o=this.__data__;if(o instanceof r){var A=o.__data__;if(!e||A.length<n-1)return A.push([a,s]),this.size=++o.size,this;o=this.__data__=new t(A)}return o.set(a,s),this.size=o.size,this}return Y0=i,Y0}var X0,lT;function Qg(){if(lT)return X0;lT=1;var r=Pg(),e=Tie(),t=Fie(),n=Mie(),i=Iie(),a=Xie();function s(o){var A=this.__data__=new r(o);this.size=A.size}return s.prototype.clear=e,s.prototype.delete=t,s.prototype.get=n,s.prototype.has=i,s.prototype.set=a,X0=s,X0}var Z0,uT;function Kx(){if(uT)return Z0;uT=1;function r(e,t){for(var n=-1,i=e==null?0:e.length;++n<i&&t(e[n],n,e)!==!1;);return e}return Z0=r,Z0}var J0,cT;function kD(){if(cT)return J0;cT=1;var r=IA(),e=(function(){try{var t=r(Object,"defineProperty");return t({},"",{}),t}catch{}})();return J0=e,J0}var em,dT;function Dg(){if(dT)return em;dT=1;var r=kD();function e(t,n,i){n=="__proto__"&&r?r(t,n,{configurable:!0,enumerable:!0,value:i,writable:!0}):t[n]=i}return em=e,em}var tm,hT;function Hg(){if(hT)return tm;hT=1;var r=Dg(),e=Ul(),t=Object.prototype,n=t.hasOwnProperty;function i(a,s,o){var A=a[s];(!(n.call(a,s)&&e(A,o))||o===void 0&&!(s in a))&&r(a,s,o)}return tm=i,tm}var nm,fT;function Rc(){if(fT)return nm;fT=1;var r=Hg(),e=Dg();function t(n,i,a,s){var o=!a;a||(a={});for(var A=-1,l=i.length;++A<l;){var u=i[A],c=s?s(a[u],n[u],u,a,n):void 0;c===void 0&&(c=n[u]),o?e(a,u,c):r(a,u,c)}return a}return nm=t,nm}var rm,gT;function Zie(){if(gT)return rm;gT=1;function r(e,t){for(var n=-1,i=Array(e);++n<e;)i[n]=t(n);return i}return rm=r,rm}var im,pT;function bs(){if(pT)return im;pT=1;function r(e){return e!=null&&typeof e=="object"}return im=r,im}var am,vT;function Jie(){if(vT)return am;vT=1;var r=MA(),e=bs(),t="[object Arguments]";function n(i){return e(i)&&r(i)==t}return am=n,am}var sm,mT;function Qc(){if(mT)return sm;mT=1;var r=Jie(),e=bs(),t=Object.prototype,n=t.hasOwnProperty,i=t.propertyIsEnumerable,a=r((function(){return arguments})())?r:function(s){return e(s)&&n.call(s,"callee")&&!i.call(s,"callee")};return sm=a,sm}var om,yT;function br(){if(yT)return om;yT=1;var r=Array.isArray;return om=r,om}var ku={exports:{}},Am,wT;function eae(){if(wT)return Am;wT=1;function r(){return!1}return Am=r,Am}ku.exports;var bT;function Ql(){return bT||(bT=1,(function(r,e){var t=Ra(),n=eae(),i=e&&!e.nodeType&&e,a=i&&!0&&r&&!r.nodeType&&r,s=a&&a.exports===i,o=s?t.Buffer:void 0,A=o?o.isBuffer:void 0,l=A||n;r.exports=l})(ku,ku.exports)),ku.exports}var lm,BT;function $g(){if(BT)return lm;BT=1;var r=9007199254740991,e=/^(?:0|[1-9]\d*)$/;function t(n,i){var a=typeof n;return i=i??r,!!i&&(a=="number"||a!="symbol"&&e.test(n))&&n>-1&&n%1==0&&n<i}return lm=t,lm}var um,ET;function jx(){if(ET)return um;ET=1;var r=9007199254740991;function e(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=r}return um=e,um}var cm,xT;function tae(){if(xT)return cm;xT=1;var r=MA(),e=jx(),t=bs(),n="[object Arguments]",i="[object Array]",a="[object Boolean]",s="[object Date]",o="[object Error]",A="[object Function]",l="[object Map]",u="[object Number]",c="[object Object]",d="[object RegExp]",h="[object Set]",f="[object String]",p="[object WeakMap]",g="[object ArrayBuffer]",v="[object DataView]",m="[object Float32Array]",y="[object Float64Array]",w="[object Int8Array]",B="[object Int16Array]",x="[object Int32Array]",k="[object Uint8Array]",_="[object Uint8ClampedArray]",T="[object Uint16Array]",F="[object Uint32Array]",I={};I[m]=I[y]=I[w]=I[B]=I[x]=I[k]=I[_]=I[T]=I[F]=!0,I[n]=I[i]=I[g]=I[a]=I[v]=I[s]=I[o]=I[A]=I[l]=I[u]=I[c]=I[d]=I[h]=I[f]=I[p]=!1;function O(P){return t(P)&&e(P.length)&&!!I[r(P)]}return cm=O,cm}var dm,CT;function Gg(){if(CT)return dm;CT=1;function r(e){return function(t){return e(t)}}return dm=r,dm}var Tu={exports:{}};Tu.exports;var ST;function Wx(){return ST||(ST=1,(function(r,e){var t=SD(),n=e&&!e.nodeType&&e,i=n&&!0&&r&&!r.nodeType&&r,a=i&&i.exports===n,s=a&&t.process,o=(function(){try{var A=i&&i.require&&i.require("util").types;return A||s&&s.binding&&s.binding("util")}catch{}})();r.exports=o})(Tu,Tu.exports)),Tu.exports}var hm,_T;function Dc(){if(_T)return hm;_T=1;var r=tae(),e=Gg(),t=Wx(),n=t&&t.isTypedArray,i=n?e(n):r;return hm=i,hm}var fm,kT;function TD(){if(kT)return fm;kT=1;var r=Zie(),e=Qc(),t=br(),n=Ql(),i=$g(),a=Dc(),s=Object.prototype,o=s.hasOwnProperty;function A(l,u){var c=t(l),d=!c&&e(l),h=!c&&!d&&n(l),f=!c&&!d&&!h&&a(l),p=c||d||h||f,g=p?r(l.length,String):[],v=g.length;for(var m in l)(u||o.call(l,m))&&!(p&&(m=="length"||h&&(m=="offset"||m=="parent")||f&&(m=="buffer"||m=="byteLength"||m=="byteOffset")||i(m,v)))&&g.push(m);return g}return fm=A,fm}var gm,TT;function zg(){if(TT)return gm;TT=1;var r=Object.prototype;function e(t){var n=t&&t.constructor,i=typeof n=="function"&&n.prototype||r;return t===i}return gm=e,gm}var pm,FT;function FD(){if(FT)return pm;FT=1;function r(e,t){return function(n){return e(t(n))}}return pm=r,pm}var vm,MT;function nae(){if(MT)return vm;MT=1;var r=FD(),e=r(Object.keys,Object);return vm=e,vm}var mm,IT;function qx(){if(IT)return mm;IT=1;var r=zg(),e=nae(),t=Object.prototype,n=t.hasOwnProperty;function i(a){if(!r(a))return e(a);var s=[];for(var o in Object(a))n.call(a,o)&&o!="constructor"&&s.push(o);return s}return mm=i,mm}var ym,OT;function $s(){if(OT)return ym;OT=1;var r=Uc(),e=jx();function t(n){return n!=null&&e(n.length)&&!r(n)}return ym=t,ym}var wm,LT;function Lo(){if(LT)return wm;LT=1;var r=TD(),e=qx(),t=$s();function n(i){return t(i)?r(i):e(i)}return wm=n,wm}var bm,NT;function rae(){if(NT)return bm;NT=1;var r=Rc(),e=Lo();function t(n,i){return n&&r(i,e(i),n)}return bm=t,bm}var Bm,PT;function iae(){if(PT)return Bm;PT=1;function r(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}return Bm=r,Bm}var Em,UT;function aae(){if(UT)return Em;UT=1;var r=pa(),e=zg(),t=iae(),n=Object.prototype,i=n.hasOwnProperty;function a(s){if(!r(s))return t(s);var o=e(s),A=[];for(var l in s)l=="constructor"&&(o||!i.call(s,l))||A.push(l);return A}return Em=a,Em}var xm,RT;function OA(){if(RT)return xm;RT=1;var r=TD(),e=aae(),t=$s();function n(i){return t(i)?r(i,!0):e(i)}return xm=n,xm}var Cm,QT;function sae(){if(QT)return Cm;QT=1;var r=Rc(),e=OA();function t(n,i){return n&&r(i,e(i),n)}return Cm=t,Cm}var Fu={exports:{}};Fu.exports;var DT;function MD(){return DT||(DT=1,(function(r,e){var t=Ra(),n=e&&!e.nodeType&&e,i=n&&!0&&r&&!r.nodeType&&r,a=i&&i.exports===n,s=a?t.Buffer:void 0,o=s?s.allocUnsafe:void 0;function A(l,u){if(u)return l.slice();var c=l.length,d=o?o(c):new l.constructor(c);return l.copy(d),d}r.exports=A})(Fu,Fu.exports)),Fu.exports}var Sm,HT;function ID(){if(HT)return Sm;HT=1;function r(e,t){var n=-1,i=e.length;for(t||(t=Array(i));++n<i;)t[n]=e[n];return t}return Sm=r,Sm}var _m,$T;function OD(){if($T)return _m;$T=1;function r(e,t){for(var n=-1,i=e==null?0:e.length,a=0,s=[];++n<i;){var o=e[n];t(o,n,e)&&(s[a++]=o)}return s}return _m=r,_m}var km,GT;function LD(){if(GT)return km;GT=1;function r(){return[]}return km=r,km}var Tm,zT;function Yx(){if(zT)return Tm;zT=1;var r=OD(),e=LD(),t=Object.prototype,n=t.propertyIsEnumerable,i=Object.getOwnPropertySymbols,a=i?function(s){return s==null?[]:(s=Object(s),r(i(s),function(o){return n.call(s,o)}))}:e;return Tm=a,Tm}var Fm,VT;function oae(){if(VT)return Fm;VT=1;var r=Rc(),e=Yx();function t(n,i){return r(n,e(n),i)}return Fm=t,Fm}var Mm,KT;function Xx(){if(KT)return Mm;KT=1;function r(e,t){for(var n=-1,i=t.length,a=e.length;++n<i;)e[a+n]=t[n];return e}return Mm=r,Mm}var Im,jT;function Vg(){if(jT)return Im;jT=1;var r=FD(),e=r(Object.getPrototypeOf,Object);return Im=e,Im}var Om,WT;function ND(){if(WT)return Om;WT=1;var r=Xx(),e=Vg(),t=Yx(),n=LD(),i=Object.getOwnPropertySymbols,a=i?function(s){for(var o=[];s;)r(o,t(s)),s=e(s);return o}:n;return Om=a,Om}var Lm,qT;function Aae(){if(qT)return Lm;qT=1;var r=Rc(),e=ND();function t(n,i){return r(n,e(n),i)}return Lm=t,Lm}var Nm,YT;function PD(){if(YT)return Nm;YT=1;var r=Xx(),e=br();function t(n,i,a){var s=i(n);return e(n)?s:r(s,a(n))}return Nm=t,Nm}var Pm,XT;function UD(){if(XT)return Pm;XT=1;var r=PD(),e=Yx(),t=Lo();function n(i){return r(i,t,e)}return Pm=n,Pm}var Um,ZT;function lae(){if(ZT)return Um;ZT=1;var r=PD(),e=ND(),t=OA();function n(i){return r(i,t,e)}return Um=n,Um}var Rm,JT;function uae(){if(JT)return Rm;JT=1;var r=IA(),e=Ra(),t=r(e,"DataView");return Rm=t,Rm}var Qm,eF;function cae(){if(eF)return Qm;eF=1;var r=IA(),e=Ra(),t=r(e,"Promise");return Qm=t,Qm}var Dm,tF;function RD(){if(tF)return Dm;tF=1;var r=IA(),e=Ra(),t=r(e,"Set");return Dm=t,Dm}var Hm,nF;function dae(){if(nF)return Hm;nF=1;var r=IA(),e=Ra(),t=r(e,"WeakMap");return Hm=t,Hm}var $m,rF;function Dl(){if(rF)return $m;rF=1;var r=uae(),e=zx(),t=cae(),n=RD(),i=dae(),a=MA(),s=_D(),o="[object Map]",A="[object Object]",l="[object Promise]",u="[object Set]",c="[object WeakMap]",d="[object DataView]",h=s(r),f=s(e),p=s(t),g=s(n),v=s(i),m=a;return(r&&m(new r(new ArrayBuffer(1)))!=d||e&&m(new e)!=o||t&&m(t.resolve())!=l||n&&m(new n)!=u||i&&m(new i)!=c)&&(m=function(y){var w=a(y),B=w==A?y.constructor:void 0,x=B?s(B):"";if(x)switch(x){case h:return d;case f:return o;case p:return l;case g:return u;case v:return c}return w}),$m=m,$m}var Gm,iF;function hae(){if(iF)return Gm;iF=1;var r=Object.prototype,e=r.hasOwnProperty;function t(n){var i=n.length,a=new n.constructor(i);return i&&typeof n[0]=="string"&&e.call(n,"index")&&(a.index=n.index,a.input=n.input),a}return Gm=t,Gm}var zm,aF;function QD(){if(aF)return zm;aF=1;var r=Ra(),e=r.Uint8Array;return zm=e,zm}var Vm,sF;function Zx(){if(sF)return Vm;sF=1;var r=QD();function e(t){var n=new t.constructor(t.byteLength);return new r(n).set(new r(t)),n}return Vm=e,Vm}var Km,oF;function fae(){if(oF)return Km;oF=1;var r=Zx();function e(t,n){var i=n?r(t.buffer):t.buffer;return new t.constructor(i,t.byteOffset,t.byteLength)}return Km=e,Km}var jm,AF;function gae(){if(AF)return jm;AF=1;var r=/\w*$/;function e(t){var n=new t.constructor(t.source,r.exec(t));return n.lastIndex=t.lastIndex,n}return jm=e,jm}var Wm,lF;function pae(){if(lF)return Wm;lF=1;var r=Rl(),e=r?r.prototype:void 0,t=e?e.valueOf:void 0;function n(i){return t?Object(t.call(i)):{}}return Wm=n,Wm}var qm,uF;function DD(){if(uF)return qm;uF=1;var r=Zx();function e(t,n){var i=n?r(t.buffer):t.buffer;return new t.constructor(i,t.byteOffset,t.length)}return qm=e,qm}var Ym,cF;function vae(){if(cF)return Ym;cF=1;var r=Zx(),e=fae(),t=gae(),n=pae(),i=DD(),a="[object Boolean]",s="[object Date]",o="[object Map]",A="[object Number]",l="[object RegExp]",u="[object Set]",c="[object String]",d="[object Symbol]",h="[object ArrayBuffer]",f="[object DataView]",p="[object Float32Array]",g="[object Float64Array]",v="[object Int8Array]",m="[object Int16Array]",y="[object Int32Array]",w="[object Uint8Array]",B="[object Uint8ClampedArray]",x="[object Uint16Array]",k="[object Uint32Array]";function _(T,F,I){var O=T.constructor;switch(F){case h:return r(T);case a:case s:return new O(+T);case f:return e(T,I);case p:case g:case v:case m:case y:case w:case B:case x:case k:return i(T,I);case o:return new O;case A:case c:return new O(T);case l:return t(T);case u:return new O;case d:return n(T)}}return Ym=_,Ym}var Xm,dF;function HD(){if(dF)return Xm;dF=1;var r=pa(),e=Object.create,t=(function(){function n(){}return function(i){if(!r(i))return{};if(e)return e(i);n.prototype=i;var a=new n;return n.prototype=void 0,a}})();return Xm=t,Xm}var Zm,hF;function $D(){if(hF)return Zm;hF=1;var r=HD(),e=Vg(),t=zg();function n(i){return typeof i.constructor=="function"&&!t(i)?r(e(i)):{}}return Zm=n,Zm}var Jm,fF;function mae(){if(fF)return Jm;fF=1;var r=Dl(),e=bs(),t="[object Map]";function n(i){return e(i)&&r(i)==t}return Jm=n,Jm}var ey,gF;function yae(){if(gF)return ey;gF=1;var r=mae(),e=Gg(),t=Wx(),n=t&&t.isMap,i=n?e(n):r;return ey=i,ey}var ty,pF;function wae(){if(pF)return ty;pF=1;var r=Dl(),e=bs(),t="[object Set]";function n(i){return e(i)&&r(i)==t}return ty=n,ty}var ny,vF;function bae(){if(vF)return ny;vF=1;var r=wae(),e=Gg(),t=Wx(),n=t&&t.isSet,i=n?e(n):r;return ny=i,ny}var ry,mF;function GD(){if(mF)return ry;mF=1;var r=Qg(),e=Kx(),t=Hg(),n=rae(),i=sae(),a=MD(),s=ID(),o=oae(),A=Aae(),l=UD(),u=lae(),c=Dl(),d=hae(),h=vae(),f=$D(),p=br(),g=Ql(),v=yae(),m=pa(),y=bae(),w=Lo(),B=OA(),x=1,k=2,_=4,T="[object Arguments]",F="[object Array]",I="[object Boolean]",O="[object Date]",P="[object Error]",G="[object Function]",ee="[object GeneratorFunction]",te="[object Map]",N="[object Number]",K="[object Object]",J="[object RegExp]",be="[object Set]",re="[object String]",ne="[object Symbol]",ue="[object WeakMap]",Y="[object ArrayBuffer]",U="[object DataView]",W="[object Float32Array]",ie="[object Float64Array]",Ee="[object Int8Array]",de="[object Int16Array]",X="[object Int32Array]",xe="[object Uint8Array]",ce="[object Uint8ClampedArray]",De="[object Uint16Array]",He="[object Uint32Array]",Xe={};Xe[T]=Xe[F]=Xe[Y]=Xe[U]=Xe[I]=Xe[O]=Xe[W]=Xe[ie]=Xe[Ee]=Xe[de]=Xe[X]=Xe[te]=Xe[N]=Xe[K]=Xe[J]=Xe[be]=Xe[re]=Xe[ne]=Xe[xe]=Xe[ce]=Xe[De]=Xe[He]=!0,Xe[P]=Xe[G]=Xe[ue]=!1;function ct(dt,Nn,Dt,ui,Hn,an){var Jt,ye=Nn&x,me=Nn&k,pt=Nn&_;if(Dt&&(Jt=Hn?Dt(dt,ui,Hn,an):Dt(dt)),Jt!==void 0)return Jt;if(!m(dt))return dt;var at=p(dt);if(at){if(Jt=d(dt),!ye)return s(dt,Jt)}else{var tn=c(dt),Nt=tn==G||tn==ee;if(g(dt))return a(dt,ye);if(tn==K||tn==T||Nt&&!Hn){if(Jt=me||Nt?{}:f(dt),!ye)return me?A(dt,i(Jt,dt)):o(dt,n(Jt,dt))}else{if(!Xe[tn])return Hn?dt:{};Jt=h(dt,tn,ye)}}an||(an=new r);var Kt=an.get(dt);if(Kt)return Kt;an.set(dt,Jt),y(dt)?dt.forEach(function(Pn){Jt.add(ct(Pn,Nn,Dt,Pn,dt,an))}):v(dt)&&dt.forEach(function(Pn,Me){Jt.set(Me,ct(Pn,Nn,Dt,Me,dt,an))});var ci=pt?me?u:l:me?B:w,Yr=at?void 0:ci(dt);return e(Yr||dt,function(Pn,Me){Yr&&(Me=Pn,Pn=dt[Me]),t(Jt,Me,ct(Pn,Nn,Dt,Me,dt,an))}),Jt}return ry=ct,ry}var iy,yF;function Bae(){if(yF)return iy;yF=1;var r=GD(),e=4;function t(n){return r(n,e)}return iy=t,iy}var ay,wF;function Jx(){if(wF)return ay;wF=1;function r(e){return function(){return e}}return ay=r,ay}var sy,bF;function Eae(){if(bF)return sy;bF=1;function r(e){return function(t,n,i){for(var a=-1,s=Object(t),o=i(t),A=o.length;A--;){var l=o[e?A:++a];if(n(s[l],l,s)===!1)break}return t}}return sy=r,sy}var oy,BF;function eC(){if(BF)return oy;BF=1;var r=Eae(),e=r();return oy=e,oy}var Ay,EF;function tC(){if(EF)return Ay;EF=1;var r=eC(),e=Lo();function t(n,i){return n&&r(n,i,e)}return Ay=t,Ay}var ly,xF;function xae(){if(xF)return ly;xF=1;var r=$s();function e(t,n){return function(i,a){if(i==null)return i;if(!r(i))return t(i,a);for(var s=i.length,o=n?s:-1,A=Object(i);(n?o--:++o<s)&&a(A[o],o,A)!==!1;);return i}}return ly=e,ly}var uy,CF;function Kg(){if(CF)return uy;CF=1;var r=tC(),e=xae(),t=e(r);return uy=t,uy}var cy,SF;function LA(){if(SF)return cy;SF=1;function r(e){return e}return cy=r,cy}var dy,_F;function zD(){if(_F)return dy;_F=1;var r=LA();function e(t){return typeof t=="function"?t:r}return dy=e,dy}var hy,kF;function VD(){if(kF)return hy;kF=1;var r=Kx(),e=Kg(),t=zD(),n=br();function i(a,s){var o=n(a)?r:e;return o(a,t(s))}return hy=i,hy}var fy,TF;function KD(){return TF||(TF=1,fy=VD()),fy}var gy,FF;function Cae(){if(FF)return gy;FF=1;var r=Kg();function e(t,n){var i=[];return r(t,function(a,s,o){n(a,s,o)&&i.push(a)}),i}return gy=e,gy}var py,MF;function Sae(){if(MF)return py;MF=1;var r="__lodash_hash_undefined__";function e(t){return this.__data__.set(t,r),this}return py=e,py}var vy,IF;function _ae(){if(IF)return vy;IF=1;function r(e){return this.__data__.has(e)}return vy=r,vy}var my,OF;function jD(){if(OF)return my;OF=1;var r=Vx(),e=Sae(),t=_ae();function n(i){var a=-1,s=i==null?0:i.length;for(this.__data__=new r;++a<s;)this.add(i[a])}return n.prototype.add=n.prototype.push=e,n.prototype.has=t,my=n,my}var yy,LF;function kae(){if(LF)return yy;LF=1;function r(e,t){for(var n=-1,i=e==null?0:e.length;++n<i;)if(t(e[n],n,e))return!0;return!1}return yy=r,yy}var wy,NF;function WD(){if(NF)return wy;NF=1;function r(e,t){return e.has(t)}return wy=r,wy}var by,PF;function qD(){if(PF)return by;PF=1;var r=jD(),e=kae(),t=WD(),n=1,i=2;function a(s,o,A,l,u,c){var d=A&n,h=s.length,f=o.length;if(h!=f&&!(d&&f>h))return!1;var p=c.get(s),g=c.get(o);if(p&&g)return p==o&&g==s;var v=-1,m=!0,y=A&i?new r:void 0;for(c.set(s,o),c.set(o,s);++v<h;){var w=s[v],B=o[v];if(l)var x=d?l(B,w,v,o,s,c):l(w,B,v,s,o,c);if(x!==void 0){if(x)continue;m=!1;break}if(y){if(!e(o,function(k,_){if(!t(y,_)&&(w===k||u(w,k,A,l,c)))return y.push(_)})){m=!1;break}}else if(!(w===B||u(w,B,A,l,c))){m=!1;break}}return c.delete(s),c.delete(o),m}return by=a,by}var By,UF;function Tae(){if(UF)return By;UF=1;function r(e){var t=-1,n=Array(e.size);return e.forEach(function(i,a){n[++t]=[a,i]}),n}return By=r,By}var Ey,RF;function nC(){if(RF)return Ey;RF=1;function r(e){var t=-1,n=Array(e.size);return e.forEach(function(i){n[++t]=i}),n}return Ey=r,Ey}var xy,QF;function Fae(){if(QF)return xy;QF=1;var r=Rl(),e=QD(),t=Ul(),n=qD(),i=Tae(),a=nC(),s=1,o=2,A="[object Boolean]",l="[object Date]",u="[object Error]",c="[object Map]",d="[object Number]",h="[object RegExp]",f="[object Set]",p="[object String]",g="[object Symbol]",v="[object ArrayBuffer]",m="[object DataView]",y=r?r.prototype:void 0,w=y?y.valueOf:void 0;function B(x,k,_,T,F,I,O){switch(_){case m:if(x.byteLength!=k.byteLength||x.byteOffset!=k.byteOffset)return!1;x=x.buffer,k=k.buffer;case v:return!(x.byteLength!=k.byteLength||!I(new e(x),new e(k)));case A:case l:case d:return t(+x,+k);case u:return x.name==k.name&&x.message==k.message;case h:case p:return x==k+"";case c:var P=i;case f:var G=T&s;if(P||(P=a),x.size!=k.size&&!G)return!1;var ee=O.get(x);if(ee)return ee==k;T|=o,O.set(x,k);var te=n(P(x),P(k),T,F,I,O);return O.delete(x),te;case g:if(w)return w.call(x)==w.call(k)}return!1}return xy=B,xy}var Cy,DF;function Mae(){if(DF)return Cy;DF=1;var r=UD(),e=1,t=Object.prototype,n=t.hasOwnProperty;function i(a,s,o,A,l,u){var c=o&e,d=r(a),h=d.length,f=r(s),p=f.length;if(h!=p&&!c)return!1;for(var g=h;g--;){var v=d[g];if(!(c?v in s:n.call(s,v)))return!1}var m=u.get(a),y=u.get(s);if(m&&y)return m==s&&y==a;var w=!0;u.set(a,s),u.set(s,a);for(var B=c;++g<h;){v=d[g];var x=a[v],k=s[v];if(A)var _=c?A(k,x,v,s,a,u):A(x,k,v,a,s,u);if(!(_===void 0?x===k||l(x,k,o,A,u):_)){w=!1;break}B||(B=v=="constructor")}if(w&&!B){var T=a.constructor,F=s.constructor;T!=F&&"constructor"in a&&"constructor"in s&&!(typeof T=="function"&&T instanceof T&&typeof F=="function"&&F instanceof F)&&(w=!1)}return u.delete(a),u.delete(s),w}return Cy=i,Cy}var Sy,HF;function Iae(){if(HF)return Sy;HF=1;var r=Qg(),e=qD(),t=Fae(),n=Mae(),i=Dl(),a=br(),s=Ql(),o=Dc(),A=1,l="[object Arguments]",u="[object Array]",c="[object Object]",d=Object.prototype,h=d.hasOwnProperty;function f(p,g,v,m,y,w){var B=a(p),x=a(g),k=B?u:i(p),_=x?u:i(g);k=k==l?c:k,_=_==l?c:_;var T=k==c,F=_==c,I=k==_;if(I&&s(p)){if(!s(g))return!1;B=!0,T=!1}if(I&&!T)return w||(w=new r),B||o(p)?e(p,g,v,m,y,w):t(p,g,k,v,m,y,w);if(!(v&A)){var O=T&&h.call(p,"__wrapped__"),P=F&&h.call(g,"__wrapped__");if(O||P){var G=O?p.value():p,ee=P?g.value():g;return w||(w=new r),y(G,ee,v,m,w)}}return I?(w||(w=new r),n(p,g,v,m,y,w)):!1}return Sy=f,Sy}var _y,$F;function YD(){if($F)return _y;$F=1;var r=Iae(),e=bs();function t(n,i,a,s,o){return n===i?!0:n==null||i==null||!e(n)&&!e(i)?n!==n&&i!==i:r(n,i,a,s,t,o)}return _y=t,_y}var ky,GF;function Oae(){if(GF)return ky;GF=1;var r=Qg(),e=YD(),t=1,n=2;function i(a,s,o,A){var l=o.length,u=l,c=!A;if(a==null)return!u;for(a=Object(a);l--;){var d=o[l];if(c&&d[2]?d[1]!==a[d[0]]:!(d[0]in a))return!1}for(;++l<u;){d=o[l];var h=d[0],f=a[h],p=d[1];if(c&&d[2]){if(f===void 0&&!(h in a))return!1}else{var g=new r;if(A)var v=A(f,p,h,a,s,g);if(!(v===void 0?e(p,f,t|n,A,g):v))return!1}}return!0}return ky=i,ky}var Ty,zF;function XD(){if(zF)return Ty;zF=1;var r=pa();function e(t){return t===t&&!r(t)}return Ty=e,Ty}var Fy,VF;function Lae(){if(VF)return Fy;VF=1;var r=XD(),e=Lo();function t(n){for(var i=e(n),a=i.length;a--;){var s=i[a],o=n[s];i[a]=[s,o,r(o)]}return i}return Fy=t,Fy}var My,KF;function ZD(){if(KF)return My;KF=1;function r(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}return My=r,My}var Iy,jF;function Nae(){if(jF)return Iy;jF=1;var r=Oae(),e=Lae(),t=ZD();function n(i){var a=e(i);return a.length==1&&a[0][2]?t(a[0][0],a[0][1]):function(s){return s===i||r(s,i,a)}}return Iy=n,Iy}var Oy,WF;function Hl(){if(WF)return Oy;WF=1;var r=MA(),e=bs(),t="[object Symbol]";function n(i){return typeof i=="symbol"||e(i)&&r(i)==t}return Oy=n,Oy}var Ly,qF;function rC(){if(qF)return Ly;qF=1;var r=br(),e=Hl(),t=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,n=/^\w*$/;function i(a,s){if(r(a))return!1;var o=typeof a;return o=="number"||o=="symbol"||o=="boolean"||a==null||e(a)?!0:n.test(a)||!t.test(a)||s!=null&&a in Object(s)}return Ly=i,Ly}var Ny,YF;function Pae(){if(YF)return Ny;YF=1;var r=Vx(),e="Expected a function";function t(n,i){if(typeof n!="function"||i!=null&&typeof i!="function")throw new TypeError(e);var a=function(){var s=arguments,o=i?i.apply(this,s):s[0],A=a.cache;if(A.has(o))return A.get(o);var l=n.apply(this,s);return a.cache=A.set(o,l)||A,l};return a.cache=new(t.Cache||r),a}return t.Cache=r,Ny=t,Ny}var Py,XF;function Uae(){if(XF)return Py;XF=1;var r=Pae(),e=500;function t(n){var i=r(n,function(s){return a.size===e&&a.clear(),s}),a=i.cache;return i}return Py=t,Py}var Uy,ZF;function Rae(){if(ZF)return Uy;ZF=1;var r=Uae(),e=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,t=/\\(\\)?/g,n=r(function(i){var a=[];return i.charCodeAt(0)===46&&a.push(""),i.replace(e,function(s,o,A,l){a.push(A?l.replace(t,"$1"):o||s)}),a});return Uy=n,Uy}var Ry,JF;function jg(){if(JF)return Ry;JF=1;function r(e,t){for(var n=-1,i=e==null?0:e.length,a=Array(i);++n<i;)a[n]=t(e[n],n,e);return a}return Ry=r,Ry}var Qy,eM;function Qae(){if(eM)return Qy;eM=1;var r=Rl(),e=jg(),t=br(),n=Hl(),i=r?r.prototype:void 0,a=i?i.toString:void 0;function s(o){if(typeof o=="string")return o;if(t(o))return e(o,s)+"";if(n(o))return a?a.call(o):"";var A=o+"";return A=="0"&&1/o==-1/0?"-0":A}return Qy=s,Qy}var Dy,tM;function JD(){if(tM)return Dy;tM=1;var r=Qae();function e(t){return t==null?"":r(t)}return Dy=e,Dy}var Hy,nM;function Wg(){if(nM)return Hy;nM=1;var r=br(),e=rC(),t=Rae(),n=JD();function i(a,s){return r(a)?a:e(a,s)?[a]:t(n(a))}return Hy=i,Hy}var $y,rM;function Hc(){if(rM)return $y;rM=1;var r=Hl();function e(t){if(typeof t=="string"||r(t))return t;var n=t+"";return n=="0"&&1/t==-1/0?"-0":n}return $y=e,$y}var Gy,iM;function qg(){if(iM)return Gy;iM=1;var r=Wg(),e=Hc();function t(n,i){i=r(i,n);for(var a=0,s=i.length;n!=null&&a<s;)n=n[e(i[a++])];return a&&a==s?n:void 0}return Gy=t,Gy}var zy,aM;function Dae(){if(aM)return zy;aM=1;var r=qg();function e(t,n,i){var a=t==null?void 0:r(t,n);return a===void 0?i:a}return zy=e,zy}var Vy,sM;function Hae(){if(sM)return Vy;sM=1;function r(e,t){return e!=null&&t in Object(e)}return Vy=r,Vy}var Ky,oM;function e3(){if(oM)return Ky;oM=1;var r=Wg(),e=Qc(),t=br(),n=$g(),i=jx(),a=Hc();function s(o,A,l){A=r(A,o);for(var u=-1,c=A.length,d=!1;++u<c;){var h=a(A[u]);if(!(d=o!=null&&l(o,h)))break;o=o[h]}return d||++u!=c?d:(c=o==null?0:o.length,!!c&&i(c)&&n(h,c)&&(t(o)||e(o)))}return Ky=s,Ky}var jy,AM;function t3(){if(AM)return jy;AM=1;var r=Hae(),e=e3();function t(n,i){return n!=null&&e(n,i,r)}return jy=t,jy}var Wy,lM;function $ae(){if(lM)return Wy;lM=1;var r=YD(),e=Dae(),t=t3(),n=rC(),i=XD(),a=ZD(),s=Hc(),o=1,A=2;function l(u,c){return n(u)&&i(c)?a(s(u),c):function(d){var h=e(d,u);return h===void 0&&h===c?t(d,u):r(c,h,o|A)}}return Wy=l,Wy}var qy,uM;function n3(){if(uM)return qy;uM=1;function r(e){return function(t){return t==null?void 0:t[e]}}return qy=r,qy}var Yy,cM;function Gae(){if(cM)return Yy;cM=1;var r=qg();function e(t){return function(n){return r(n,t)}}return Yy=e,Yy}var Xy,dM;function zae(){if(dM)return Xy;dM=1;var r=n3(),e=Gae(),t=rC(),n=Hc();function i(a){return t(a)?r(n(a)):e(a)}return Xy=i,Xy}var Zy,hM;function Gs(){if(hM)return Zy;hM=1;var r=Nae(),e=$ae(),t=LA(),n=br(),i=zae();function a(s){return typeof s=="function"?s:s==null?t:typeof s=="object"?n(s)?e(s[0],s[1]):r(s):i(s)}return Zy=a,Zy}var Jy,fM;function r3(){if(fM)return Jy;fM=1;var r=OD(),e=Cae(),t=Gs(),n=br();function i(a,s){var o=n(a)?r:e;return o(a,t(s,3))}return Jy=i,Jy}var e1,gM;function Vae(){if(gM)return e1;gM=1;var r=Object.prototype,e=r.hasOwnProperty;function t(n,i){return n!=null&&e.call(n,i)}return e1=t,e1}var t1,pM;function i3(){if(pM)return t1;pM=1;var r=Vae(),e=e3();function t(n,i){return n!=null&&e(n,i,r)}return t1=t,t1}var n1,vM;function Kae(){if(vM)return n1;vM=1;var r=qx(),e=Dl(),t=Qc(),n=br(),i=$s(),a=Ql(),s=zg(),o=Dc(),A="[object Map]",l="[object Set]",u=Object.prototype,c=u.hasOwnProperty;function d(h){if(h==null)return!0;if(i(h)&&(n(h)||typeof h=="string"||typeof h.splice=="function"||a(h)||o(h)||t(h)))return!h.length;var f=e(h);if(f==A||f==l)return!h.size;if(s(h))return!r(h).length;for(var p in h)if(c.call(h,p))return!1;return!0}return n1=d,n1}var r1,mM;function a3(){if(mM)return r1;mM=1;function r(e){return e===void 0}return r1=r,r1}var i1,yM;function s3(){if(yM)return i1;yM=1;var r=Kg(),e=$s();function t(n,i){var a=-1,s=e(n)?Array(n.length):[];return r(n,function(o,A,l){s[++a]=i(o,A,l)}),s}return i1=t,i1}var a1,wM;function o3(){if(wM)return a1;wM=1;var r=jg(),e=Gs(),t=s3(),n=br();function i(a,s){var o=n(a)?r:t;return o(a,e(s,3))}return a1=i,a1}var s1,bM;function jae(){if(bM)return s1;bM=1;function r(e,t,n,i){var a=-1,s=e==null?0:e.length;for(i&&s&&(n=e[++a]);++a<s;)n=t(n,e[a],a,e);return n}return s1=r,s1}var o1,BM;function Wae(){if(BM)return o1;BM=1;function r(e,t,n,i,a){return a(e,function(s,o,A){n=i?(i=!1,s):t(n,s,o,A)}),n}return o1=r,o1}var A1,EM;function A3(){if(EM)return A1;EM=1;var r=jae(),e=Kg(),t=Gs(),n=Wae(),i=br();function a(s,o,A){var l=i(s)?r:n,u=arguments.length<3;return l(s,t(o,4),A,u,e)}return A1=a,A1}var l1,xM;function qae(){if(xM)return l1;xM=1;var r=MA(),e=br(),t=bs(),n="[object String]";function i(a){return typeof a=="string"||!e(a)&&t(a)&&r(a)==n}return l1=i,l1}var u1,CM;function Yae(){if(CM)return u1;CM=1;var r=n3(),e=r("length");return u1=e,u1}var c1,SM;function Xae(){if(SM)return c1;SM=1;var r="\\ud800-\\udfff",e="\\u0300-\\u036f",t="\\ufe20-\\ufe2f",n="\\u20d0-\\u20ff",i=e+t+n,a="\\ufe0e\\ufe0f",s="\\u200d",o=RegExp("["+s+r+i+a+"]");function A(l){return o.test(l)}return c1=A,c1}var d1,_M;function Zae(){if(_M)return d1;_M=1;var r="\\ud800-\\udfff",e="\\u0300-\\u036f",t="\\ufe20-\\ufe2f",n="\\u20d0-\\u20ff",i=e+t+n,a="\\ufe0e\\ufe0f",s="["+r+"]",o="["+i+"]",A="\\ud83c[\\udffb-\\udfff]",l="(?:"+o+"|"+A+")",u="[^"+r+"]",c="(?:\\ud83c[\\udde6-\\uddff]){2}",d="[\\ud800-\\udbff][\\udc00-\\udfff]",h="\\u200d",f=l+"?",p="["+a+"]?",g="(?:"+h+"(?:"+[u,c,d].join("|")+")"+p+f+")*",v=p+f+g,m="(?:"+[u+o+"?",o,c,d,s].join("|")+")",y=RegExp(A+"(?="+A+")|"+m+v,"g");function w(B){for(var x=y.lastIndex=0;y.test(B);)++x;return x}return d1=w,d1}var h1,kM;function Jae(){if(kM)return h1;kM=1;var r=Yae(),e=Xae(),t=Zae();function n(i){return e(i)?t(i):r(i)}return h1=n,h1}var f1,TM;function ese(){if(TM)return f1;TM=1;var r=qx(),e=Dl(),t=$s(),n=qae(),i=Jae(),a="[object Map]",s="[object Set]";function o(A){if(A==null)return 0;if(t(A))return n(A)?i(A):A.length;var l=e(A);return l==a||l==s?A.size:r(A).length}return f1=o,f1}var g1,FM;function tse(){if(FM)return g1;FM=1;var r=Kx(),e=HD(),t=tC(),n=Gs(),i=Vg(),a=br(),s=Ql(),o=Uc(),A=pa(),l=Dc();function u(c,d,h){var f=a(c),p=f||s(c)||l(c);if(d=n(d,4),h==null){var g=c&&c.constructor;p?h=f?new g:[]:A(c)?h=o(g)?e(i(c)):{}:h={}}return(p?r:t)(c,function(v,m,y){return d(h,v,m,y)}),h}return g1=u,g1}var p1,MM;function nse(){if(MM)return p1;MM=1;var r=Rl(),e=Qc(),t=br(),n=r?r.isConcatSpreadable:void 0;function i(a){return t(a)||e(a)||!!(n&&a&&a[n])}return p1=i,p1}var v1,IM;function iC(){if(IM)return v1;IM=1;var r=Xx(),e=nse();function t(n,i,a,s,o){var A=-1,l=n.length;for(a||(a=e),o||(o=[]);++A<l;){var u=n[A];i>0&&a(u)?i>1?t(u,i-1,a,s,o):r(o,u):s||(o[o.length]=u)}return o}return v1=t,v1}var m1,OM;function rse(){if(OM)return m1;OM=1;function r(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 m1=r,m1}var y1,LM;function l3(){if(LM)return y1;LM=1;var r=rse(),e=Math.max;function t(n,i,a){return i=e(i===void 0?n.length-1:i,0),function(){for(var s=arguments,o=-1,A=e(s.length-i,0),l=Array(A);++o<A;)l[o]=s[i+o];o=-1;for(var u=Array(i+1);++o<i;)u[o]=s[o];return u[i]=a(l),r(n,this,u)}}return y1=t,y1}var w1,NM;function ise(){if(NM)return w1;NM=1;var r=Jx(),e=kD(),t=LA(),n=e?function(i,a){return e(i,"toString",{configurable:!0,enumerable:!1,value:r(a),writable:!0})}:t;return w1=n,w1}var b1,PM;function ase(){if(PM)return b1;PM=1;var r=800,e=16,t=Date.now;function n(i){var a=0,s=0;return function(){var o=t(),A=e-(o-s);if(s=o,A>0){if(++a>=r)return arguments[0]}else a=0;return i.apply(void 0,arguments)}}return b1=n,b1}var B1,UM;function u3(){if(UM)return B1;UM=1;var r=ise(),e=ase(),t=e(r);return B1=t,B1}var E1,RM;function Yg(){if(RM)return E1;RM=1;var r=LA(),e=l3(),t=u3();function n(i,a){return t(e(i,a,r),i+"")}return E1=n,E1}var x1,QM;function c3(){if(QM)return x1;QM=1;function r(e,t,n,i){for(var a=e.length,s=n+(i?1:-1);i?s--:++s<a;)if(t(e[s],s,e))return s;return-1}return x1=r,x1}var C1,DM;function sse(){if(DM)return C1;DM=1;function r(e){return e!==e}return C1=r,C1}var S1,HM;function ose(){if(HM)return S1;HM=1;function r(e,t,n){for(var i=n-1,a=e.length;++i<a;)if(e[i]===t)return i;return-1}return S1=r,S1}var _1,$M;function Ase(){if($M)return _1;$M=1;var r=c3(),e=sse(),t=ose();function n(i,a,s){return a===a?t(i,a,s):r(i,e,s)}return _1=n,_1}var k1,GM;function lse(){if(GM)return k1;GM=1;var r=Ase();function e(t,n){var i=t==null?0:t.length;return!!i&&r(t,n,0)>-1}return k1=e,k1}var T1,zM;function use(){if(zM)return T1;zM=1;function r(e,t,n){for(var i=-1,a=e==null?0:e.length;++i<a;)if(n(t,e[i]))return!0;return!1}return T1=r,T1}var F1,VM;function cse(){if(VM)return F1;VM=1;function r(){}return F1=r,F1}var M1,KM;function dse(){if(KM)return M1;KM=1;var r=RD(),e=cse(),t=nC(),n=1/0,i=r&&1/t(new r([,-0]))[1]==n?function(a){return new r(a)}:e;return M1=i,M1}var I1,jM;function hse(){if(jM)return I1;jM=1;var r=jD(),e=lse(),t=use(),n=WD(),i=dse(),a=nC(),s=200;function o(A,l,u){var c=-1,d=e,h=A.length,f=!0,p=[],g=p;if(u)f=!1,d=t;else if(h>=s){var v=l?null:i(A);if(v)return a(v);f=!1,d=n,g=new r}else g=l?[]:p;e:for(;++c<h;){var m=A[c],y=l?l(m):m;if(m=u||m!==0?m:0,f&&y===y){for(var w=g.length;w--;)if(g[w]===y)continue e;l&&g.push(y),p.push(m)}else d(g,y,u)||(g!==p&&g.push(y),p.push(m))}return p}return I1=o,I1}var O1,WM;function d3(){if(WM)return O1;WM=1;var r=$s(),e=bs();function t(n){return e(n)&&r(n)}return O1=t,O1}var L1,qM;function fse(){if(qM)return L1;qM=1;var r=iC(),e=Yg(),t=hse(),n=d3(),i=e(function(a){return t(r(a,1,n,!0))});return L1=i,L1}var N1,YM;function gse(){if(YM)return N1;YM=1;var r=jg();function e(t,n){return r(n,function(i){return t[i]})}return N1=e,N1}var P1,XM;function h3(){if(XM)return P1;XM=1;var r=gse(),e=Lo();function t(n){return n==null?[]:r(n,e(n))}return P1=t,P1}var U1,ZM;function va(){if(ZM)return U1;ZM=1;var r;if(typeof Gx=="function")try{r={clone:Bae(),constant:Jx(),each:KD(),filter:r3(),has:i3(),isArray:br(),isEmpty:Kae(),isFunction:Uc(),isUndefined:a3(),keys:Lo(),map:o3(),reduce:A3(),size:ese(),transform:tse(),union:fse(),values:h3()}}catch{}return r||(r=window._),U1=r,U1}var R1,JM;function aC(){if(JM)return R1;JM=1;var r=va();R1=i;var e="\0",t="\0",n="";function i(u){this._isDirected=r.has(u,"directed")?u.directed:!0,this._isMultigraph=r.has(u,"multigraph")?u.multigraph:!1,this._isCompound=r.has(u,"compound")?u.compound:!1,this._label=void 0,this._defaultNodeLabelFn=r.constant(void 0),this._defaultEdgeLabelFn=r.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[t]={}),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(u){return this._label=u,this},i.prototype.graph=function(){return this._label},i.prototype.setDefaultNodeLabel=function(u){return r.isFunction(u)||(u=r.constant(u)),this._defaultNodeLabelFn=u,this},i.prototype.nodeCount=function(){return this._nodeCount},i.prototype.nodes=function(){return r.keys(this._nodes)},i.prototype.sources=function(){var u=this;return r.filter(this.nodes(),function(c){return r.isEmpty(u._in[c])})},i.prototype.sinks=function(){var u=this;return r.filter(this.nodes(),function(c){return r.isEmpty(u._out[c])})},i.prototype.setNodes=function(u,c){var d=arguments,h=this;return r.each(u,function(f){d.length>1?h.setNode(f,c):h.setNode(f)}),this},i.prototype.setNode=function(u,c){return r.has(this._nodes,u)?(arguments.length>1&&(this._nodes[u]=c),this):(this._nodes[u]=arguments.length>1?c:this._defaultNodeLabelFn(u),this._isCompound&&(this._parent[u]=t,this._children[u]={},this._children[t][u]=!0),this._in[u]={},this._preds[u]={},this._out[u]={},this._sucs[u]={},++this._nodeCount,this)},i.prototype.node=function(u){return this._nodes[u]},i.prototype.hasNode=function(u){return r.has(this._nodes,u)},i.prototype.removeNode=function(u){var c=this;if(r.has(this._nodes,u)){var d=function(h){c.removeEdge(c._edgeObjs[h])};delete this._nodes[u],this._isCompound&&(this._removeFromParentsChildList(u),delete this._parent[u],r.each(this.children(u),function(h){c.setParent(h)}),delete this._children[u]),r.each(r.keys(this._in[u]),d),delete this._in[u],delete this._preds[u],r.each(r.keys(this._out[u]),d),delete this._out[u],delete this._sucs[u],--this._nodeCount}return this},i.prototype.setParent=function(u,c){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(r.isUndefined(c))c=t;else{c+="";for(var d=c;!r.isUndefined(d);d=this.parent(d))if(d===u)throw new Error("Setting "+c+" as parent of "+u+" would create a cycle");this.setNode(c)}return this.setNode(u),this._removeFromParentsChildList(u),this._parent[u]=c,this._children[c][u]=!0,this},i.prototype._removeFromParentsChildList=function(u){delete this._children[this._parent[u]][u]},i.prototype.parent=function(u){if(this._isCompound){var c=this._parent[u];if(c!==t)return c}},i.prototype.children=function(u){if(r.isUndefined(u)&&(u=t),this._isCompound){var c=this._children[u];if(c)return r.keys(c)}else{if(u===t)return this.nodes();if(this.hasNode(u))return[]}},i.prototype.predecessors=function(u){var c=this._preds[u];if(c)return r.keys(c)},i.prototype.successors=function(u){var c=this._sucs[u];if(c)return r.keys(c)},i.prototype.neighbors=function(u){var c=this.predecessors(u);if(c)return r.union(c,this.successors(u))},i.prototype.isLeaf=function(u){var c;return this.isDirected()?c=this.successors(u):c=this.neighbors(u),c.length===0},i.prototype.filterNodes=function(u){var c=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});c.setGraph(this.graph());var d=this;r.each(this._nodes,function(p,g){u(g)&&c.setNode(g,p)}),r.each(this._edgeObjs,function(p){c.hasNode(p.v)&&c.hasNode(p.w)&&c.setEdge(p,d.edge(p))});var h={};function f(p){var g=d.parent(p);return g===void 0||c.hasNode(g)?(h[p]=g,g):g in h?h[g]:f(g)}return this._isCompound&&r.each(c.nodes(),function(p){c.setParent(p,f(p))}),c},i.prototype.setDefaultEdgeLabel=function(u){return r.isFunction(u)||(u=r.constant(u)),this._defaultEdgeLabelFn=u,this},i.prototype.edgeCount=function(){return this._edgeCount},i.prototype.edges=function(){return r.values(this._edgeObjs)},i.prototype.setPath=function(u,c){var d=this,h=arguments;return r.reduce(u,function(f,p){return h.length>1?d.setEdge(f,p,c):d.setEdge(f,p),p}),this},i.prototype.setEdge=function(){var u,c,d,h,f=!1,p=arguments[0];typeof p=="object"&&p!==null&&"v"in p?(u=p.v,c=p.w,d=p.name,arguments.length===2&&(h=arguments[1],f=!0)):(u=p,c=arguments[1],d=arguments[3],arguments.length>2&&(h=arguments[2],f=!0)),u=""+u,c=""+c,r.isUndefined(d)||(d=""+d);var g=o(this._isDirected,u,c,d);if(r.has(this._edgeLabels,g))return f&&(this._edgeLabels[g]=h),this;if(!r.isUndefined(d)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(u),this.setNode(c),this._edgeLabels[g]=f?h:this._defaultEdgeLabelFn(u,c,d);var v=A(this._isDirected,u,c,d);return u=v.v,c=v.w,Object.freeze(v),this._edgeObjs[g]=v,a(this._preds[c],u),a(this._sucs[u],c),this._in[c][g]=v,this._out[u][g]=v,this._edgeCount++,this},i.prototype.edge=function(u,c,d){var h=arguments.length===1?l(this._isDirected,arguments[0]):o(this._isDirected,u,c,d);return this._edgeLabels[h]},i.prototype.hasEdge=function(u,c,d){var h=arguments.length===1?l(this._isDirected,arguments[0]):o(this._isDirected,u,c,d);return r.has(this._edgeLabels,h)},i.prototype.removeEdge=function(u,c,d){var h=arguments.length===1?l(this._isDirected,arguments[0]):o(this._isDirected,u,c,d),f=this._edgeObjs[h];return f&&(u=f.v,c=f.w,delete this._edgeLabels[h],delete this._edgeObjs[h],s(this._preds[c],u),s(this._sucs[u],c),delete this._in[c][h],delete this._out[u][h],this._edgeCount--),this},i.prototype.inEdges=function(u,c){var d=this._in[u];if(d){var h=r.values(d);return c?r.filter(h,function(f){return f.v===c}):h}},i.prototype.outEdges=function(u,c){var d=this._out[u];if(d){var h=r.values(d);return c?r.filter(h,function(f){return f.w===c}):h}},i.prototype.nodeEdges=function(u,c){var d=this.inEdges(u,c);if(d)return d.concat(this.outEdges(u,c))};function a(u,c){u[c]?u[c]++:u[c]=1}function s(u,c){--u[c]||delete u[c]}function o(u,c,d,h){var f=""+c,p=""+d;if(!u&&f>p){var g=f;f=p,p=g}return f+n+p+n+(r.isUndefined(h)?e:h)}function A(u,c,d,h){var f=""+c,p=""+d;if(!u&&f>p){var g=f;f=p,p=g}var v={v:f,w:p};return h&&(v.name=h),v}function l(u,c){return o(u,c.v,c.w,c.name)}return R1}var Q1,eI;function pse(){return eI||(eI=1,Q1="2.1.8"),Q1}var D1,tI;function vse(){return tI||(tI=1,D1={Graph:aC(),version:pse()}),D1}var H1,nI;function mse(){if(nI)return H1;nI=1;var r=va(),e=aC();H1={write:t,read:a};function t(s){var o={options:{directed:s.isDirected(),multigraph:s.isMultigraph(),compound:s.isCompound()},nodes:n(s),edges:i(s)};return r.isUndefined(s.graph())||(o.value=r.clone(s.graph())),o}function n(s){return r.map(s.nodes(),function(o){var A=s.node(o),l=s.parent(o),u={v:o};return r.isUndefined(A)||(u.value=A),r.isUndefined(l)||(u.parent=l),u})}function i(s){return r.map(s.edges(),function(o){var A=s.edge(o),l={v:o.v,w:o.w};return r.isUndefined(o.name)||(l.name=o.name),r.isUndefined(A)||(l.value=A),l})}function a(s){var o=new e(s.options).setGraph(s.value);return r.each(s.nodes,function(A){o.setNode(A.v,A.value),A.parent&&o.setParent(A.v,A.parent)}),r.each(s.edges,function(A){o.setEdge({v:A.v,w:A.w,name:A.name},A.value)}),o}return H1}var $1,rI;function yse(){if(rI)return $1;rI=1;var r=va();$1=e;function e(t){var n={},i=[],a;function s(o){r.has(n,o)||(n[o]=!0,a.push(o),r.each(t.successors(o),s),r.each(t.predecessors(o),s))}return r.each(t.nodes(),function(o){a=[],s(o),a.length&&i.push(a)}),i}return $1}var G1,iI;function f3(){if(iI)return G1;iI=1;var r=va();G1=e;function e(){this._arr=[],this._keyIndices={}}return e.prototype.size=function(){return this._arr.length},e.prototype.keys=function(){return this._arr.map(function(t){return t.key})},e.prototype.has=function(t){return r.has(this._keyIndices,t)},e.prototype.priority=function(t){var n=this._keyIndices[t];if(n!==void 0)return this._arr[n].priority},e.prototype.min=function(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key},e.prototype.add=function(t,n){var i=this._keyIndices;if(t=String(t),!r.has(i,t)){var a=this._arr,s=a.length;return i[t]=s,a.push({key:t,priority:n}),this._decrease(s),!0}return!1},e.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var t=this._arr.pop();return delete this._keyIndices[t.key],this._heapify(0),t.key},e.prototype.decrease=function(t,n){var i=this._keyIndices[t];if(n>this._arr[i].priority)throw new Error("New priority is greater than current priority. Key: "+t+" Old: "+this._arr[i].priority+" New: "+n);this._arr[i].priority=n,this._decrease(i)},e.prototype._heapify=function(t){var n=this._arr,i=2*t,a=i+1,s=t;i<n.length&&(s=n[i].priority<n[s].priority?i:s,a<n.length&&(s=n[a].priority<n[s].priority?a:s),s!==t&&(this._swap(t,s),this._heapify(s)))},e.prototype._decrease=function(t){for(var n=this._arr,i=n[t].priority,a;t!==0&&(a=t>>1,!(n[a].priority<i));)this._swap(t,a),t=a},e.prototype._swap=function(t,n){var i=this._arr,a=this._keyIndices,s=i[t],o=i[n];i[t]=o,i[n]=s,a[o.key]=t,a[s.key]=n},G1}var z1,aI;function g3(){if(aI)return z1;aI=1;var r=va(),e=f3();z1=n;var t=r.constant(1);function n(a,s,o,A){return i(a,String(s),o||t,A||function(l){return a.outEdges(l)})}function i(a,s,o,A){var l={},u=new e,c,d,h=function(f){var p=f.v!==c?f.v:f.w,g=l[p],v=o(f),m=d.distance+v;if(v<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+f+" Weight: "+v);m<g.distance&&(g.distance=m,g.predecessor=c,u.decrease(p,m))};for(a.nodes().forEach(function(f){var p=f===s?0:Number.POSITIVE_INFINITY;l[f]={distance:p},u.add(f,p)});u.size()>0&&(c=u.removeMin(),d=l[c],d.distance!==Number.POSITIVE_INFINITY);)A(c).forEach(h);return l}return z1}var V1,sI;function wse(){if(sI)return V1;sI=1;var r=g3(),e=va();V1=t;function t(n,i,a){return e.transform(n.nodes(),function(s,o){s[o]=r(n,o,i,a)},{})}return V1}var K1,oI;function p3(){if(oI)return K1;oI=1;var r=va();K1=e;function e(t){var n=0,i=[],a={},s=[];function o(A){var l=a[A]={onStack:!0,lowlink:n,index:n++};if(i.push(A),t.successors(A).forEach(function(d){r.has(a,d)?a[d].onStack&&(l.lowlink=Math.min(l.lowlink,a[d].index)):(o(d),l.lowlink=Math.min(l.lowlink,a[d].lowlink))}),l.lowlink===l.index){var u=[],c;do c=i.pop(),a[c].onStack=!1,u.push(c);while(A!==c);s.push(u)}}return t.nodes().forEach(function(A){r.has(a,A)||o(A)}),s}return K1}var j1,AI;function bse(){if(AI)return j1;AI=1;var r=va(),e=p3();j1=t;function t(n){return r.filter(e(n),function(i){return i.length>1||i.length===1&&n.hasEdge(i[0],i[0])})}return j1}var W1,lI;function Bse(){if(lI)return W1;lI=1;var r=va();W1=t;var e=r.constant(1);function t(i,a,s){return n(i,a||e,s||function(o){return i.outEdges(o)})}function n(i,a,s){var o={},A=i.nodes();return A.forEach(function(l){o[l]={},o[l][l]={distance:0},A.forEach(function(u){l!==u&&(o[l][u]={distance:Number.POSITIVE_INFINITY})}),s(l).forEach(function(u){var c=u.v===l?u.w:u.v,d=a(u);o[l][c]={distance:d,predecessor:l}})}),A.forEach(function(l){var u=o[l];A.forEach(function(c){var d=o[c];A.forEach(function(h){var f=d[l],p=u[h],g=d[h],v=f.distance+p.distance;v<g.distance&&(g.distance=v,g.predecessor=p.predecessor)})})}),o}return W1}var q1,uI;function v3(){if(uI)return q1;uI=1;var r=va();q1=e,e.CycleException=t;function e(n){var i={},a={},s=[];function o(A){if(r.has(a,A))throw new t;r.has(i,A)||(a[A]=!0,i[A]=!0,r.each(n.predecessors(A),o),delete a[A],s.push(A))}if(r.each(n.sinks(),o),r.size(i)!==n.nodeCount())throw new t;return s}function t(){}return t.prototype=new Error,q1}var Y1,cI;function Ese(){if(cI)return Y1;cI=1;var r=v3();Y1=e;function e(t){try{r(t)}catch(n){if(n instanceof r.CycleException)return!1;throw n}return!0}return Y1}var X1,dI;function m3(){if(dI)return X1;dI=1;var r=va();X1=e;function e(n,i,a){r.isArray(i)||(i=[i]);var s=(n.isDirected()?n.successors:n.neighbors).bind(n),o=[],A={};return r.each(i,function(l){if(!n.hasNode(l))throw new Error("Graph does not have node: "+l);t(n,l,a==="post",A,s,o)}),o}function t(n,i,a,s,o,A){r.has(s,i)||(s[i]=!0,a||A.push(i),r.each(o(i),function(l){t(n,l,a,s,o,A)}),a&&A.push(i))}return X1}var Z1,hI;function xse(){if(hI)return Z1;hI=1;var r=m3();Z1=e;function e(t,n){return r(t,n,"post")}return Z1}var J1,fI;function Cse(){if(fI)return J1;fI=1;var r=m3();J1=e;function e(t,n){return r(t,n,"pre")}return J1}var ew,gI;function Sse(){if(gI)return ew;gI=1;var r=va(),e=aC(),t=f3();ew=n;function n(i,a){var s=new e,o={},A=new t,l;function u(d){var h=d.v===l?d.w:d.v,f=A.priority(h);if(f!==void 0){var p=a(d);p<f&&(o[h]=l,A.decrease(h,p))}}if(i.nodeCount()===0)return s;r.each(i.nodes(),function(d){A.add(d,Number.POSITIVE_INFINITY),s.setNode(d)}),A.decrease(i.nodes()[0],0);for(var c=!1;A.size()>0;){if(l=A.removeMin(),r.has(o,l))s.setEdge(l,o[l]);else{if(c)throw new Error("Input graph is not connected: "+i);c=!0}i.nodeEdges(l).forEach(u)}return s}return ew}var tw,pI;function _se(){return pI||(pI=1,tw={components:yse(),dijkstra:g3(),dijkstraAll:wse(),findCycles:bse(),floydWarshall:Bse(),isAcyclic:Ese(),postorder:xse(),preorder:Cse(),prim:Sse(),tarjan:p3(),topsort:v3()}),tw}var nw,vI;function kse(){if(vI)return nw;vI=1;var r=vse();return nw={Graph:r.Graph,json:mse(),alg:_se(),version:r.version},nw}var rw,mI;function Na(){if(mI)return rw;mI=1;var r;if(typeof Gx=="function")try{r=kse()}catch{}return r||(r=window.graphlib),rw=r,rw}var iw,yI;function Tse(){if(yI)return iw;yI=1;var r=GD(),e=1,t=4;function n(i){return r(i,e|t)}return iw=n,iw}var aw,wI;function Xg(){if(wI)return aw;wI=1;var r=Ul(),e=$s(),t=$g(),n=pa();function i(a,s,o){if(!n(o))return!1;var A=typeof s;return(A=="number"?e(o)&&t(s,o.length):A=="string"&&s in o)?r(o[s],a):!1}return aw=i,aw}var sw,bI;function Fse(){if(bI)return sw;bI=1;var r=Yg(),e=Ul(),t=Xg(),n=OA(),i=Object.prototype,a=i.hasOwnProperty,s=r(function(o,A){o=Object(o);var l=-1,u=A.length,c=u>2?A[2]:void 0;for(c&&t(A[0],A[1],c)&&(u=1);++l<u;)for(var d=A[l],h=n(d),f=-1,p=h.length;++f<p;){var g=h[f],v=o[g];(v===void 0||e(v,i[g])&&!a.call(o,g))&&(o[g]=d[g])}return o});return sw=s,sw}var ow,BI;function Mse(){if(BI)return ow;BI=1;var r=Gs(),e=$s(),t=Lo();function n(i){return function(a,s,o){var A=Object(a);if(!e(a)){var l=r(s,3);a=t(a),s=function(c){return l(A[c],c,A)}}var u=i(a,s,o);return u>-1?A[l?a[u]:u]:void 0}}return ow=n,ow}var Aw,EI;function Ise(){if(EI)return Aw;EI=1;var r=/\s/;function e(t){for(var n=t.length;n--&&r.test(t.charAt(n)););return n}return Aw=e,Aw}var lw,xI;function Ose(){if(xI)return lw;xI=1;var r=Ise(),e=/^\s+/;function t(n){return n&&n.slice(0,r(n)+1).replace(e,"")}return lw=t,lw}var uw,CI;function Lse(){if(CI)return uw;CI=1;var r=Ose(),e=pa(),t=Hl(),n=NaN,i=/^[-+]0x[0-9a-f]+$/i,a=/^0b[01]+$/i,s=/^0o[0-7]+$/i,o=parseInt;function A(l){if(typeof l=="number")return l;if(t(l))return n;if(e(l)){var u=typeof l.valueOf=="function"?l.valueOf():l;l=e(u)?u+"":u}if(typeof l!="string")return l===0?l:+l;l=r(l);var c=a.test(l);return c||s.test(l)?o(l.slice(2),c?2:8):i.test(l)?n:+l}return uw=A,uw}var cw,SI;function y3(){if(SI)return cw;SI=1;var r=Lse(),e=1/0,t=17976931348623157e292;function n(i){if(!i)return i===0?i:0;if(i=r(i),i===e||i===-e){var a=i<0?-1:1;return a*t}return i===i?i:0}return cw=n,cw}var dw,_I;function Nse(){if(_I)return dw;_I=1;var r=y3();function e(t){var n=r(t),i=n%1;return n===n?i?n-i:n:0}return dw=e,dw}var hw,kI;function Pse(){if(kI)return hw;kI=1;var r=c3(),e=Gs(),t=Nse(),n=Math.max;function i(a,s,o){var A=a==null?0:a.length;if(!A)return-1;var l=o==null?0:t(o);return l<0&&(l=n(A+l,0)),r(a,e(s,3),l)}return hw=i,hw}var fw,TI;function Use(){if(TI)return fw;TI=1;var r=Mse(),e=Pse(),t=r(e);return fw=t,fw}var gw,FI;function w3(){if(FI)return gw;FI=1;var r=iC();function e(t){var n=t==null?0:t.length;return n?r(t,1):[]}return gw=e,gw}var pw,MI;function Rse(){if(MI)return pw;MI=1;var r=eC(),e=zD(),t=OA();function n(i,a){return i==null?i:r(i,e(a),t)}return pw=n,pw}var vw,II;function Qse(){if(II)return vw;II=1;function r(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}return vw=r,vw}var mw,OI;function Dse(){if(OI)return mw;OI=1;var r=Dg(),e=tC(),t=Gs();function n(i,a){var s={};return a=t(a,3),e(i,function(o,A,l){r(s,A,a(o,A,l))}),s}return mw=n,mw}var yw,LI;function sC(){if(LI)return yw;LI=1;var r=Hl();function e(t,n,i){for(var a=-1,s=t.length;++a<s;){var o=t[a],A=n(o);if(A!=null&&(l===void 0?A===A&&!r(A):i(A,l)))var l=A,u=o}return u}return yw=e,yw}var ww,NI;function Hse(){if(NI)return ww;NI=1;function r(e,t){return e>t}return ww=r,ww}var bw,PI;function $se(){if(PI)return bw;PI=1;var r=sC(),e=Hse(),t=LA();function n(i){return i&&i.length?r(i,t,e):void 0}return bw=n,bw}var Bw,UI;function b3(){if(UI)return Bw;UI=1;var r=Dg(),e=Ul();function t(n,i,a){(a!==void 0&&!e(n[i],a)||a===void 0&&!(i in n))&&r(n,i,a)}return Bw=t,Bw}var Ew,RI;function Gse(){if(RI)return Ew;RI=1;var r=MA(),e=Vg(),t=bs(),n="[object Object]",i=Function.prototype,a=Object.prototype,s=i.toString,o=a.hasOwnProperty,A=s.call(Object);function l(u){if(!t(u)||r(u)!=n)return!1;var c=e(u);if(c===null)return!0;var d=o.call(c,"constructor")&&c.constructor;return typeof d=="function"&&d instanceof d&&s.call(d)==A}return Ew=l,Ew}var xw,QI;function B3(){if(QI)return xw;QI=1;function r(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}return xw=r,xw}var Cw,DI;function zse(){if(DI)return Cw;DI=1;var r=Rc(),e=OA();function t(n){return r(n,e(n))}return Cw=t,Cw}var Sw,HI;function Vse(){if(HI)return Sw;HI=1;var r=b3(),e=MD(),t=DD(),n=ID(),i=$D(),a=Qc(),s=br(),o=d3(),A=Ql(),l=Uc(),u=pa(),c=Gse(),d=Dc(),h=B3(),f=zse();function p(g,v,m,y,w,B,x){var k=h(g,m),_=h(v,m),T=x.get(_);if(T){r(g,m,T);return}var F=B?B(k,_,m+"",g,v,x):void 0,I=F===void 0;if(I){var O=s(_),P=!O&&A(_),G=!O&&!P&&d(_);F=_,O||P||G?s(k)?F=k:o(k)?F=n(k):P?(I=!1,F=e(_,!0)):G?(I=!1,F=t(_,!0)):F=[]:c(_)||a(_)?(F=k,a(k)?F=f(k):(!u(k)||l(k))&&(F=i(_))):I=!1}I&&(x.set(_,F),w(F,_,y,B,x),x.delete(_)),r(g,m,F)}return Sw=p,Sw}var _w,$I;function Kse(){if($I)return _w;$I=1;var r=Qg(),e=b3(),t=eC(),n=Vse(),i=pa(),a=OA(),s=B3();function o(A,l,u,c,d){A!==l&&t(l,function(h,f){if(d||(d=new r),i(h))n(A,l,f,u,o,c,d);else{var p=c?c(s(A,f),h,f+"",A,l,d):void 0;p===void 0&&(p=h),e(A,f,p)}},a)}return _w=o,_w}var kw,GI;function jse(){if(GI)return kw;GI=1;var r=Yg(),e=Xg();function t(n){return r(function(i,a){var s=-1,o=a.length,A=o>1?a[o-1]:void 0,l=o>2?a[2]:void 0;for(A=n.length>3&&typeof A=="function"?(o--,A):void 0,l&&e(a[0],a[1],l)&&(A=o<3?void 0:A,o=1),i=Object(i);++s<o;){var u=a[s];u&&n(i,u,s,A)}return i})}return kw=t,kw}var Tw,zI;function Wse(){if(zI)return Tw;zI=1;var r=Kse(),e=jse(),t=e(function(n,i,a){r(n,i,a)});return Tw=t,Tw}var Fw,VI;function E3(){if(VI)return Fw;VI=1;function r(e,t){return e<t}return Fw=r,Fw}var Mw,KI;function qse(){if(KI)return Mw;KI=1;var r=sC(),e=E3(),t=LA();function n(i){return i&&i.length?r(i,t,e):void 0}return Mw=n,Mw}var Iw,jI;function Yse(){if(jI)return Iw;jI=1;var r=sC(),e=Gs(),t=E3();function n(i,a){return i&&i.length?r(i,e(a,2),t):void 0}return Iw=n,Iw}var Ow,WI;function Xse(){if(WI)return Ow;WI=1;var r=Ra(),e=function(){return r.Date.now()};return Ow=e,Ow}var Lw,qI;function Zse(){if(qI)return Lw;qI=1;var r=Hg(),e=Wg(),t=$g(),n=pa(),i=Hc();function a(s,o,A,l){if(!n(s))return s;o=e(o,s);for(var u=-1,c=o.length,d=c-1,h=s;h!=null&&++u<c;){var f=i(o[u]),p=A;if(f==="__proto__"||f==="constructor"||f==="prototype")return s;if(u!=d){var g=h[f];p=l?l(g,f,h):void 0,p===void 0&&(p=n(g)?g:t(o[u+1])?[]:{})}r(h,f,p),h=h[f]}return s}return Lw=a,Lw}var Nw,YI;function Jse(){if(YI)return Nw;YI=1;var r=qg(),e=Zse(),t=Wg();function n(i,a,s){for(var o=-1,A=a.length,l={};++o<A;){var u=a[o],c=r(i,u);s(c,u)&&e(l,t(u,i),c)}return l}return Nw=n,Nw}var Pw,XI;function eoe(){if(XI)return Pw;XI=1;var r=Jse(),e=t3();function t(n,i){return r(n,i,function(a,s){return e(n,s)})}return Pw=t,Pw}var Uw,ZI;function toe(){if(ZI)return Uw;ZI=1;var r=w3(),e=l3(),t=u3();function n(i){return t(e(i,void 0,r),i+"")}return Uw=n,Uw}var Rw,JI;function noe(){if(JI)return Rw;JI=1;var r=eoe(),e=toe(),t=e(function(n,i){return n==null?{}:r(n,i)});return Rw=t,Rw}var Qw,eO;function roe(){if(eO)return Qw;eO=1;var r=Math.ceil,e=Math.max;function t(n,i,a,s){for(var o=-1,A=e(r((i-n)/(a||1)),0),l=Array(A);A--;)l[s?A:++o]=n,n+=a;return l}return Qw=t,Qw}var Dw,tO;function ioe(){if(tO)return Dw;tO=1;var r=roe(),e=Xg(),t=y3();function n(i){return function(a,s,o){return o&&typeof o!="number"&&e(a,s,o)&&(s=o=void 0),a=t(a),s===void 0?(s=a,a=0):s=t(s),o=o===void 0?a<s?1:-1:t(o),r(a,s,o,i)}}return Dw=n,Dw}var Hw,nO;function aoe(){if(nO)return Hw;nO=1;var r=ioe(),e=r();return Hw=e,Hw}var $w,rO;function soe(){if(rO)return $w;rO=1;function r(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}return $w=r,$w}var Gw,iO;function ooe(){if(iO)return Gw;iO=1;var r=Hl();function e(t,n){if(t!==n){var i=t!==void 0,a=t===null,s=t===t,o=r(t),A=n!==void 0,l=n===null,u=n===n,c=r(n);if(!l&&!c&&!o&&t>n||o&&A&&u&&!l&&!c||a&&A&&u||!i&&u||!s)return 1;if(!a&&!o&&!c&&t<n||c&&i&&s&&!a&&!o||l&&i&&s||!A&&s||!u)return-1}return 0}return Gw=e,Gw}var zw,aO;function Aoe(){if(aO)return zw;aO=1;var r=ooe();function e(t,n,i){for(var a=-1,s=t.criteria,o=n.criteria,A=s.length,l=i.length;++a<A;){var u=r(s[a],o[a]);if(u){if(a>=l)return u;var c=i[a];return u*(c=="desc"?-1:1)}}return t.index-n.index}return zw=e,zw}var Vw,sO;function loe(){if(sO)return Vw;sO=1;var r=jg(),e=qg(),t=Gs(),n=s3(),i=soe(),a=Gg(),s=Aoe(),o=LA(),A=br();function l(u,c,d){c.length?c=r(c,function(p){return A(p)?function(g){return e(g,p.length===1?p[0]:p)}:p}):c=[o];var h=-1;c=r(c,a(t));var f=n(u,function(p,g,v){var m=r(c,function(y){return y(p)});return{criteria:m,index:++h,value:p}});return i(f,function(p,g){return s(p,g,d)})}return Vw=l,Vw}var Kw,oO;function uoe(){if(oO)return Kw;oO=1;var r=iC(),e=loe(),t=Yg(),n=Xg(),i=t(function(a,s){if(a==null)return[];var o=s.length;return o>1&&n(a,s[0],s[1])?s=[]:o>2&&n(s[0],s[1],s[2])&&(s=[s[0]]),e(a,r(s,1),[])});return Kw=i,Kw}var jw,AO;function coe(){if(AO)return jw;AO=1;var r=JD(),e=0;function t(n){var i=++e;return r(n)+i}return jw=t,jw}var Ww,lO;function doe(){if(lO)return Ww;lO=1;function r(e,t,n){for(var i=-1,a=e.length,s=t.length,o={};++i<a;){var A=i<s?t[i]:void 0;n(o,e[i],A)}return o}return Ww=r,Ww}var qw,uO;function hoe(){if(uO)return qw;uO=1;var r=Hg(),e=doe();function t(n,i){return e(n||[],i||[],r)}return qw=t,qw}var Yw,cO;function Dn(){if(cO)return Yw;cO=1;var r;if(typeof Gx=="function")try{r={cloneDeep:Tse(),constant:Jx(),defaults:Fse(),each:KD(),filter:r3(),find:Use(),flatten:w3(),forEach:VD(),forIn:Rse(),has:i3(),isUndefined:a3(),last:Qse(),map:o3(),mapValues:Dse(),max:$se(),merge:Wse(),min:qse(),minBy:Yse(),now:Xse(),pick:noe(),range:aoe(),reduce:A3(),sortBy:uoe(),uniqueId:coe(),values:h3(),zipObject:hoe()}}catch{}return r||(r=window._),Yw=r,Yw}var Xw,dO;function foe(){if(dO)return Xw;dO=1,Xw=r;function r(){var n={};n._next=n._prev=n,this._sentinel=n}r.prototype.dequeue=function(){var n=this._sentinel,i=n._prev;if(i!==n)return e(i),i},r.prototype.enqueue=function(n){var i=this._sentinel;n._prev&&n._next&&e(n),n._next=i._next,i._next._prev=n,i._next=n,n._prev=i},r.prototype.toString=function(){for(var n=[],i=this._sentinel,a=i._prev;a!==i;)n.push(JSON.stringify(a,t)),a=a._prev;return"["+n.join(", ")+"]"};function e(n){n._prev._next=n._next,n._next._prev=n._prev,delete n._next,delete n._prev}function t(n,i){if(n!=="_next"&&n!=="_prev")return i}return Xw}var Zw,hO;function goe(){if(hO)return Zw;hO=1;var r=Dn(),e=Na().Graph,t=foe();Zw=i;var n=r.constant(1);function i(l,u){if(l.nodeCount()<=1)return[];var c=o(l,u||n),d=a(c.graph,c.buckets,c.zeroIdx);return r.flatten(r.map(d,function(h){return l.outEdges(h.v,h.w)}),!0)}function a(l,u,c){for(var d=[],h=u[u.length-1],f=u[0],p;l.nodeCount();){for(;p=f.dequeue();)s(l,u,c,p);for(;p=h.dequeue();)s(l,u,c,p);if(l.nodeCount()){for(var g=u.length-2;g>0;--g)if(p=u[g].dequeue(),p){d=d.concat(s(l,u,c,p,!0));break}}}return d}function s(l,u,c,d,h){var f=h?[]:void 0;return r.forEach(l.inEdges(d.v),function(p){var g=l.edge(p),v=l.node(p.v);h&&f.push({v:p.v,w:p.w}),v.out-=g,A(u,c,v)}),r.forEach(l.outEdges(d.v),function(p){var g=l.edge(p),v=p.w,m=l.node(v);m.in-=g,A(u,c,m)}),l.removeNode(d.v),f}function o(l,u){var c=new e,d=0,h=0;r.forEach(l.nodes(),function(g){c.setNode(g,{v:g,in:0,out:0})}),r.forEach(l.edges(),function(g){var v=c.edge(g.v,g.w)||0,m=u(g),y=v+m;c.setEdge(g.v,g.w,y),h=Math.max(h,c.node(g.v).out+=m),d=Math.max(d,c.node(g.w).in+=m)});var f=r.range(h+d+3).map(function(){return new t}),p=d+1;return r.forEach(c.nodes(),function(g){A(f,p,c.node(g))}),{graph:c,buckets:f,zeroIdx:p}}function A(l,u,c){c.out?c.in?l[c.out-c.in+u].enqueue(c):l[l.length-1].enqueue(c):l[0].enqueue(c)}return Zw}var Jw,fO;function poe(){if(fO)return Jw;fO=1;var r=Dn(),e=goe();Jw={run:t,undo:i};function t(a){var s=a.graph().acyclicer==="greedy"?e(a,o(a)):n(a);r.forEach(s,function(A){var l=a.edge(A);a.removeEdge(A),l.forwardName=A.name,l.reversed=!0,a.setEdge(A.w,A.v,l,r.uniqueId("rev"))});function o(A){return function(l){return A.edge(l).weight}}}function n(a){var s=[],o={},A={};function l(u){r.has(A,u)||(A[u]=!0,o[u]=!0,r.forEach(a.outEdges(u),function(c){r.has(o,c.w)?s.push(c):l(c.w)}),delete o[u])}return r.forEach(a.nodes(),l),s}function i(a){r.forEach(a.edges(),function(s){var o=a.edge(s);if(o.reversed){a.removeEdge(s);var A=o.forwardName;delete o.reversed,delete o.forwardName,a.setEdge(s.w,s.v,o,A)}})}return Jw}var eb,gO;function Li(){if(gO)return eb;gO=1;var r=Dn(),e=Na().Graph;eb={addDummyNode:t,simplify:n,asNonCompoundGraph:i,successorWeights:a,predecessorWeights:s,intersectRect:o,buildLayerMatrix:A,normalizeRanks:l,removeEmptyRanks:u,addBorderNode:c,maxRank:d,partition:h,time:f,notime:p};function t(g,v,m,y){var w;do w=r.uniqueId(y);while(g.hasNode(w));return m.dummy=v,g.setNode(w,m),w}function n(g){var v=new e().setGraph(g.graph());return r.forEach(g.nodes(),function(m){v.setNode(m,g.node(m))}),r.forEach(g.edges(),function(m){var y=v.edge(m.v,m.w)||{weight:0,minlen:1},w=g.edge(m);v.setEdge(m.v,m.w,{weight:y.weight+w.weight,minlen:Math.max(y.minlen,w.minlen)})}),v}function i(g){var v=new e({multigraph:g.isMultigraph()}).setGraph(g.graph());return r.forEach(g.nodes(),function(m){g.children(m).length||v.setNode(m,g.node(m))}),r.forEach(g.edges(),function(m){v.setEdge(m,g.edge(m))}),v}function a(g){var v=r.map(g.nodes(),function(m){var y={};return r.forEach(g.outEdges(m),function(w){y[w.w]=(y[w.w]||0)+g.edge(w).weight}),y});return r.zipObject(g.nodes(),v)}function s(g){var v=r.map(g.nodes(),function(m){var y={};return r.forEach(g.inEdges(m),function(w){y[w.v]=(y[w.v]||0)+g.edge(w).weight}),y});return r.zipObject(g.nodes(),v)}function o(g,v){var m=g.x,y=g.y,w=v.x-m,B=v.y-y,x=g.width/2,k=g.height/2;if(!w&&!B)throw new Error("Not possible to find intersection inside of the rectangle");var _,T;return Math.abs(B)*x>Math.abs(w)*k?(B<0&&(k=-k),_=k*w/B,T=k):(w<0&&(x=-x),_=x,T=x*B/w),{x:m+_,y:y+T}}function A(g){var v=r.map(r.range(d(g)+1),function(){return[]});return r.forEach(g.nodes(),function(m){var y=g.node(m),w=y.rank;r.isUndefined(w)||(v[w][y.order]=m)}),v}function l(g){var v=r.min(r.map(g.nodes(),function(m){return g.node(m).rank}));r.forEach(g.nodes(),function(m){var y=g.node(m);r.has(y,"rank")&&(y.rank-=v)})}function u(g){var v=r.min(r.map(g.nodes(),function(B){return g.node(B).rank})),m=[];r.forEach(g.nodes(),function(B){var x=g.node(B).rank-v;m[x]||(m[x]=[]),m[x].push(B)});var y=0,w=g.graph().nodeRankFactor;r.forEach(m,function(B,x){r.isUndefined(B)&&x%w!==0?--y:y&&r.forEach(B,function(k){g.node(k).rank+=y})})}function c(g,v,m,y){var w={width:0,height:0};return arguments.length>=4&&(w.rank=m,w.order=y),t(g,"border",w,v)}function d(g){return r.max(r.map(g.nodes(),function(v){var m=g.node(v).rank;if(!r.isUndefined(m))return m}))}function h(g,v){var m={lhs:[],rhs:[]};return r.forEach(g,function(y){v(y)?m.lhs.push(y):m.rhs.push(y)}),m}function f(g,v){var m=r.now();try{return v()}finally{console.log(g+" time: "+(r.now()-m)+"ms")}}function p(g,v){return v()}return eb}var tb,pO;function voe(){if(pO)return tb;pO=1;var r=Dn(),e=Li();tb={run:t,undo:i};function t(a){a.graph().dummyChains=[],r.forEach(a.edges(),function(s){n(a,s)})}function n(a,s){var o=s.v,A=a.node(o).rank,l=s.w,u=a.node(l).rank,c=s.name,d=a.edge(s),h=d.labelRank;if(u!==A+1){a.removeEdge(s);var f,p,g;for(g=0,++A;A<u;++g,++A)d.points=[],p={width:0,height:0,edgeLabel:d,edgeObj:s,rank:A},f=e.addDummyNode(a,"edge",p,"_d"),A===h&&(p.width=d.width,p.height=d.height,p.dummy="edge-label",p.labelpos=d.labelpos),a.setEdge(o,f,{weight:d.weight},c),g===0&&a.graph().dummyChains.push(f),o=f;a.setEdge(o,l,{weight:d.weight},c)}}function i(a){r.forEach(a.graph().dummyChains,function(s){var o=a.node(s),A=o.edgeLabel,l;for(a.setEdge(o.edgeObj,A);o.dummy;)l=a.successors(s)[0],a.removeNode(s),A.points.push({x:o.x,y:o.y}),o.dummy==="edge-label"&&(A.x=o.x,A.y=o.y,A.width=o.width,A.height=o.height),s=l,o=a.node(s)})}return tb}var nb,vO;function Of(){if(vO)return nb;vO=1;var r=Dn();nb={longestPath:e,slack:t};function e(n){var i={};function a(s){var o=n.node(s);if(r.has(i,s))return o.rank;i[s]=!0;var A=r.min(r.map(n.outEdges(s),function(l){return a(l.w)-n.edge(l).minlen}));return(A===Number.POSITIVE_INFINITY||A===void 0||A===null)&&(A=0),o.rank=A}r.forEach(n.sources(),a)}function t(n,i){return n.node(i.w).rank-n.node(i.v).rank-n.edge(i).minlen}return nb}var rb,mO;function x3(){if(mO)return rb;mO=1;var r=Dn(),e=Na().Graph,t=Of().slack;rb=n;function n(o){var A=new e({directed:!1}),l=o.nodes()[0],u=o.nodeCount();A.setNode(l,{});for(var c,d;i(A,o)<u;)c=a(A,o),d=A.hasNode(c.v)?t(o,c):-t(o,c),s(A,o,d);return A}function i(o,A){function l(u){r.forEach(A.nodeEdges(u),function(c){var d=c.v,h=u===d?c.w:d;!o.hasNode(h)&&!t(A,c)&&(o.setNode(h,{}),o.setEdge(u,h,{}),l(h))})}return r.forEach(o.nodes(),l),o.nodeCount()}function a(o,A){return r.minBy(A.edges(),function(l){if(o.hasNode(l.v)!==o.hasNode(l.w))return t(A,l)})}function s(o,A,l){r.forEach(o.nodes(),function(u){A.node(u).rank+=l})}return rb}var ib,yO;function moe(){if(yO)return ib;yO=1;var r=Dn(),e=x3(),t=Of().slack,n=Of().longestPath,i=Na().alg.preorder,a=Na().alg.postorder,s=Li().simplify;ib=o,o.initLowLimValues=c,o.initCutValues=A,o.calcCutValue=u,o.leaveEdge=h,o.enterEdge=f,o.exchangeEdges=p;function o(y){y=s(y),n(y);var w=e(y);c(w),A(w,y);for(var B,x;B=h(w);)x=f(w,y,B),p(w,y,B,x)}function A(y,w){var B=a(y,y.nodes());B=B.slice(0,B.length-1),r.forEach(B,function(x){l(y,w,x)})}function l(y,w,B){var x=y.node(B),k=x.parent;y.edge(B,k).cutvalue=u(y,w,B)}function u(y,w,B){var x=y.node(B),k=x.parent,_=!0,T=w.edge(B,k),F=0;return T||(_=!1,T=w.edge(k,B)),F=T.weight,r.forEach(w.nodeEdges(B),function(I){var O=I.v===B,P=O?I.w:I.v;if(P!==k){var G=O===_,ee=w.edge(I).weight;if(F+=G?ee:-ee,v(y,B,P)){var te=y.edge(B,P).cutvalue;F+=G?-te:te}}}),F}function c(y,w){arguments.length<2&&(w=y.nodes()[0]),d(y,{},1,w)}function d(y,w,B,x,k){var _=B,T=y.node(x);return w[x]=!0,r.forEach(y.neighbors(x),function(F){r.has(w,F)||(B=d(y,w,B,F,x))}),T.low=_,T.lim=B++,k?T.parent=k:delete T.parent,B}function h(y){return r.find(y.edges(),function(w){return y.edge(w).cutvalue<0})}function f(y,w,B){var x=B.v,k=B.w;w.hasEdge(x,k)||(x=B.w,k=B.v);var _=y.node(x),T=y.node(k),F=_,I=!1;_.lim>T.lim&&(F=T,I=!0);var O=r.filter(w.edges(),function(P){return I===m(y,y.node(P.v),F)&&I!==m(y,y.node(P.w),F)});return r.minBy(O,function(P){return t(w,P)})}function p(y,w,B,x){var k=B.v,_=B.w;y.removeEdge(k,_),y.setEdge(x.v,x.w,{}),c(y),A(y,w),g(y,w)}function g(y,w){var B=r.find(y.nodes(),function(k){return!w.node(k).parent}),x=i(y,B);x=x.slice(1),r.forEach(x,function(k){var _=y.node(k).parent,T=w.edge(k,_),F=!1;T||(T=w.edge(_,k),F=!0),w.node(k).rank=w.node(_).rank+(F?T.minlen:-T.minlen)})}function v(y,w,B){return y.hasEdge(w,B)}function m(y,w,B){return B.low<=w.lim&&w.lim<=B.lim}return ib}var ab,wO;function yoe(){if(wO)return ab;wO=1;var r=Of(),e=r.longestPath,t=x3(),n=moe();ab=i;function i(A){switch(A.graph().ranker){case"network-simplex":o(A);break;case"tight-tree":s(A);break;case"longest-path":a(A);break;default:o(A)}}var a=e;function s(A){e(A),t(A)}function o(A){n(A)}return ab}var sb,bO;function woe(){if(bO)return sb;bO=1;var r=Dn();sb=e;function e(i){var a=n(i);r.forEach(i.graph().dummyChains,function(s){for(var o=i.node(s),A=o.edgeObj,l=t(i,a,A.v,A.w),u=l.path,c=l.lca,d=0,h=u[d],f=!0;s!==A.w;){if(o=i.node(s),f){for(;(h=u[d])!==c&&i.node(h).maxRank<o.rank;)d++;h===c&&(f=!1)}if(!f){for(;d<u.length-1&&i.node(h=u[d+1]).minRank<=o.rank;)d++;h=u[d]}i.setParent(s,h),s=i.successors(s)[0]}})}function t(i,a,s,o){var A=[],l=[],u=Math.min(a[s].low,a[o].low),c=Math.max(a[s].lim,a[o].lim),d,h;d=s;do d=i.parent(d),A.push(d);while(d&&(a[d].low>u||c>a[d].lim));for(h=d,d=o;(d=i.parent(d))!==h;)l.push(d);return{path:A.concat(l.reverse()),lca:h}}function n(i){var a={},s=0;function o(A){var l=s;r.forEach(i.children(A),o),a[A]={low:l,lim:s++}}return r.forEach(i.children(),o),a}return sb}var ob,BO;function boe(){if(BO)return ob;BO=1;var r=Dn(),e=Li();ob={run:t,cleanup:s};function t(o){var A=e.addDummyNode(o,"root",{},"_root"),l=i(o),u=r.max(r.values(l))-1,c=2*u+1;o.graph().nestingRoot=A,r.forEach(o.edges(),function(h){o.edge(h).minlen*=c});var d=a(o)+1;r.forEach(o.children(),function(h){n(o,A,c,d,u,l,h)}),o.graph().nodeRankFactor=c}function n(o,A,l,u,c,d,h){var f=o.children(h);if(!f.length){h!==A&&o.setEdge(A,h,{weight:0,minlen:l});return}var p=e.addBorderNode(o,"_bt"),g=e.addBorderNode(o,"_bb"),v=o.node(h);o.setParent(p,h),v.borderTop=p,o.setParent(g,h),v.borderBottom=g,r.forEach(f,function(m){n(o,A,l,u,c,d,m);var y=o.node(m),w=y.borderTop?y.borderTop:m,B=y.borderBottom?y.borderBottom:m,x=y.borderTop?u:2*u,k=w!==B?1:c-d[h]+1;o.setEdge(p,w,{weight:x,minlen:k,nestingEdge:!0}),o.setEdge(B,g,{weight:x,minlen:k,nestingEdge:!0})}),o.parent(h)||o.setEdge(A,p,{weight:0,minlen:c+d[h]})}function i(o){var A={};function l(u,c){var d=o.children(u);d&&d.length&&r.forEach(d,function(h){l(h,c+1)}),A[u]=c}return r.forEach(o.children(),function(u){l(u,1)}),A}function a(o){return r.reduce(o.edges(),function(A,l){return A+o.edge(l).weight},0)}function s(o){var A=o.graph();o.removeNode(A.nestingRoot),delete A.nestingRoot,r.forEach(o.edges(),function(l){var u=o.edge(l);u.nestingEdge&&o.removeEdge(l)})}return ob}var Ab,EO;function Boe(){if(EO)return Ab;EO=1;var r=Dn(),e=Li();Ab=t;function t(i){function a(s){var o=i.children(s),A=i.node(s);if(o.length&&r.forEach(o,a),r.has(A,"minRank")){A.borderLeft=[],A.borderRight=[];for(var l=A.minRank,u=A.maxRank+1;l<u;++l)n(i,"borderLeft","_bl",s,A,l),n(i,"borderRight","_br",s,A,l)}}r.forEach(i.children(),a)}function n(i,a,s,o,A,l){var u={width:0,height:0,rank:l,borderType:a},c=A[a][l-1],d=e.addDummyNode(i,"border",u,s);A[a][l]=d,i.setParent(d,o),c&&i.setEdge(c,d,{weight:1})}return Ab}var lb,xO;function Eoe(){if(xO)return lb;xO=1;var r=Dn();lb={adjust:e,undo:t};function e(l){var u=l.graph().rankdir.toLowerCase();(u==="lr"||u==="rl")&&n(l)}function t(l){var u=l.graph().rankdir.toLowerCase();(u==="bt"||u==="rl")&&a(l),(u==="lr"||u==="rl")&&(o(l),n(l))}function n(l){r.forEach(l.nodes(),function(u){i(l.node(u))}),r.forEach(l.edges(),function(u){i(l.edge(u))})}function i(l){var u=l.width;l.width=l.height,l.height=u}function a(l){r.forEach(l.nodes(),function(u){s(l.node(u))}),r.forEach(l.edges(),function(u){var c=l.edge(u);r.forEach(c.points,s),r.has(c,"y")&&s(c)})}function s(l){l.y=-l.y}function o(l){r.forEach(l.nodes(),function(u){A(l.node(u))}),r.forEach(l.edges(),function(u){var c=l.edge(u);r.forEach(c.points,A),r.has(c,"x")&&A(c)})}function A(l){var u=l.x;l.x=l.y,l.y=u}return lb}var ub,CO;function xoe(){if(CO)return ub;CO=1;var r=Dn();ub=e;function e(t){var n={},i=r.filter(t.nodes(),function(l){return!t.children(l).length}),a=r.max(r.map(i,function(l){return t.node(l).rank})),s=r.map(r.range(a+1),function(){return[]});function o(l){if(!r.has(n,l)){n[l]=!0;var u=t.node(l);s[u.rank].push(l),r.forEach(t.successors(l),o)}}var A=r.sortBy(i,function(l){return t.node(l).rank});return r.forEach(A,o),s}return ub}var cb,SO;function Coe(){if(SO)return cb;SO=1;var r=Dn();cb=e;function e(n,i){for(var a=0,s=1;s<i.length;++s)a+=t(n,i[s-1],i[s]);return a}function t(n,i,a){for(var s=r.zipObject(a,r.map(a,function(d,h){return h})),o=r.flatten(r.map(i,function(d){return r.sortBy(r.map(n.outEdges(d),function(h){return{pos:s[h.w],weight:n.edge(h).weight}}),"pos")}),!0),A=1;A<a.length;)A<<=1;var l=2*A-1;A-=1;var u=r.map(new Array(l),function(){return 0}),c=0;return r.forEach(o.forEach(function(d){var h=d.pos+A;u[h]+=d.weight;for(var f=0;h>0;)h%2&&(f+=u[h+1]),h=h-1>>1,u[h]+=d.weight;c+=d.weight*f})),c}return cb}var db,_O;function Soe(){if(_O)return db;_O=1;var r=Dn();db=e;function e(t,n){return r.map(n,function(i){var a=t.inEdges(i);if(a.length){var s=r.reduce(a,function(o,A){var l=t.edge(A),u=t.node(A.v);return{sum:o.sum+l.weight*u.order,weight:o.weight+l.weight}},{sum:0,weight:0});return{v:i,barycenter:s.sum/s.weight,weight:s.weight}}else return{v:i}})}return db}var hb,kO;function _oe(){if(kO)return hb;kO=1;var r=Dn();hb=e;function e(i,a){var s={};r.forEach(i,function(A,l){var u=s[A.v]={indegree:0,in:[],out:[],vs:[A.v],i:l};r.isUndefined(A.barycenter)||(u.barycenter=A.barycenter,u.weight=A.weight)}),r.forEach(a.edges(),function(A){var l=s[A.v],u=s[A.w];!r.isUndefined(l)&&!r.isUndefined(u)&&(u.indegree++,l.out.push(s[A.w]))});var o=r.filter(s,function(A){return!A.indegree});return t(o)}function t(i){var a=[];function s(l){return function(u){u.merged||(r.isUndefined(u.barycenter)||r.isUndefined(l.barycenter)||u.barycenter>=l.barycenter)&&n(l,u)}}function o(l){return function(u){u.in.push(l),--u.indegree===0&&i.push(u)}}for(;i.length;){var A=i.pop();a.push(A),r.forEach(A.in.reverse(),s(A)),r.forEach(A.out,o(A))}return r.map(r.filter(a,function(l){return!l.merged}),function(l){return r.pick(l,["vs","i","barycenter","weight"])})}function n(i,a){var s=0,o=0;i.weight&&(s+=i.barycenter*i.weight,o+=i.weight),a.weight&&(s+=a.barycenter*a.weight,o+=a.weight),i.vs=a.vs.concat(i.vs),i.barycenter=s/o,i.weight=o,i.i=Math.min(a.i,i.i),a.merged=!0}return hb}var fb,TO;function koe(){if(TO)return fb;TO=1;var r=Dn(),e=Li();fb=t;function t(a,s){var o=e.partition(a,function(p){return r.has(p,"barycenter")}),A=o.lhs,l=r.sortBy(o.rhs,function(p){return-p.i}),u=[],c=0,d=0,h=0;A.sort(i(!!s)),h=n(u,l,h),r.forEach(A,function(p){h+=p.vs.length,u.push(p.vs),c+=p.barycenter*p.weight,d+=p.weight,h=n(u,l,h)});var f={vs:r.flatten(u,!0)};return d&&(f.barycenter=c/d,f.weight=d),f}function n(a,s,o){for(var A;s.length&&(A=r.last(s)).i<=o;)s.pop(),a.push(A.vs),o++;return o}function i(a){return function(s,o){return s.barycenter<o.barycenter?-1:s.barycenter>o.barycenter?1:a?o.i-s.i:s.i-o.i}}return fb}var gb,FO;function Toe(){if(FO)return gb;FO=1;var r=Dn(),e=Soe(),t=_oe(),n=koe();gb=i;function i(o,A,l,u){var c=o.children(A),d=o.node(A),h=d?d.borderLeft:void 0,f=d?d.borderRight:void 0,p={};h&&(c=r.filter(c,function(B){return B!==h&&B!==f}));var g=e(o,c);r.forEach(g,function(B){if(o.children(B.v).length){var x=i(o,B.v,l,u);p[B.v]=x,r.has(x,"barycenter")&&s(B,x)}});var v=t(g,l);a(v,p);var m=n(v,u);if(h&&(m.vs=r.flatten([h,m.vs,f],!0),o.predecessors(h).length)){var y=o.node(o.predecessors(h)[0]),w=o.node(o.predecessors(f)[0]);r.has(m,"barycenter")||(m.barycenter=0,m.weight=0),m.barycenter=(m.barycenter*m.weight+y.order+w.order)/(m.weight+2),m.weight+=2}return m}function a(o,A){r.forEach(o,function(l){l.vs=r.flatten(l.vs.map(function(u){return A[u]?A[u].vs:u}),!0)})}function s(o,A){r.isUndefined(o.barycenter)?(o.barycenter=A.barycenter,o.weight=A.weight):(o.barycenter=(o.barycenter*o.weight+A.barycenter*A.weight)/(o.weight+A.weight),o.weight+=A.weight)}return gb}var pb,MO;function Foe(){if(MO)return pb;MO=1;var r=Dn(),e=Na().Graph;pb=t;function t(i,a,s){var o=n(i),A=new e({compound:!0}).setGraph({root:o}).setDefaultNodeLabel(function(l){return i.node(l)});return r.forEach(i.nodes(),function(l){var u=i.node(l),c=i.parent(l);(u.rank===a||u.minRank<=a&&a<=u.maxRank)&&(A.setNode(l),A.setParent(l,c||o),r.forEach(i[s](l),function(d){var h=d.v===l?d.w:d.v,f=A.edge(h,l),p=r.isUndefined(f)?0:f.weight;A.setEdge(h,l,{weight:i.edge(d).weight+p})}),r.has(u,"minRank")&&A.setNode(l,{borderLeft:u.borderLeft[a],borderRight:u.borderRight[a]}))}),A}function n(i){for(var a;i.hasNode(a=r.uniqueId("_root")););return a}return pb}var vb,IO;function Moe(){if(IO)return vb;IO=1;var r=Dn();vb=e;function e(t,n,i){var a={},s;r.forEach(i,function(o){for(var A=t.parent(o),l,u;A;){if(l=t.parent(A),l?(u=a[l],a[l]=A):(u=s,s=A),u&&u!==A){n.setEdge(u,A);return}A=l}})}return vb}var mb,OO;function Ioe(){if(OO)return mb;OO=1;var r=Dn(),e=xoe(),t=Coe(),n=Toe(),i=Foe(),a=Moe(),s=Na().Graph,o=Li();mb=A;function A(d){var h=o.maxRank(d),f=l(d,r.range(1,h+1),"inEdges"),p=l(d,r.range(h-1,-1,-1),"outEdges"),g=e(d);c(d,g);for(var v=Number.POSITIVE_INFINITY,m,y=0,w=0;w<4;++y,++w){u(y%2?f:p,y%4>=2),g=o.buildLayerMatrix(d);var B=t(d,g);B<v&&(w=0,m=r.cloneDeep(g),v=B)}c(d,m)}function l(d,h,f){return r.map(h,function(p){return i(d,p,f)})}function u(d,h){var f=new s;r.forEach(d,function(p){var g=p.graph().root,v=n(p,g,f,h);r.forEach(v.vs,function(m,y){p.node(m).order=y}),a(p,f,v.vs)})}function c(d,h){r.forEach(h,function(f){r.forEach(f,function(p,g){d.node(p).order=g})})}return mb}var yb,LO;function Ooe(){if(LO)return yb;LO=1;var r=Dn(),e=Na().Graph,t=Li();yb={positionX:f,findType1Conflicts:n,findType2Conflicts:i,addConflict:s,hasConflict:o,verticalAlignment:A,horizontalCompaction:l,alignCoordinates:d,findSmallestWidthAlignment:c,balance:h};function n(v,m){var y={};function w(B,x){var k=0,_=0,T=B.length,F=r.last(x);return r.forEach(x,function(I,O){var P=a(v,I),G=P?v.node(P).order:T;(P||I===F)&&(r.forEach(x.slice(_,O+1),function(ee){r.forEach(v.predecessors(ee),function(te){var N=v.node(te),K=N.order;(K<k||G<K)&&!(N.dummy&&v.node(ee).dummy)&&s(y,te,ee)})}),_=O+1,k=G)}),x}return r.reduce(m,w),y}function i(v,m){var y={};function w(x,k,_,T,F){var I;r.forEach(r.range(k,_),function(O){I=x[O],v.node(I).dummy&&r.forEach(v.predecessors(I),function(P){var G=v.node(P);G.dummy&&(G.order<T||G.order>F)&&s(y,P,I)})})}function B(x,k){var _=-1,T,F=0;return r.forEach(k,function(I,O){if(v.node(I).dummy==="border"){var P=v.predecessors(I);P.length&&(T=v.node(P[0]).order,w(k,F,O,_,T),F=O,_=T)}w(k,F,k.length,T,x.length)}),k}return r.reduce(m,B),y}function a(v,m){if(v.node(m).dummy)return r.find(v.predecessors(m),function(y){return v.node(y).dummy})}function s(v,m,y){if(m>y){var w=m;m=y,y=w}var B=v[m];B||(v[m]=B={}),B[y]=!0}function o(v,m,y){if(m>y){var w=m;m=y,y=w}return r.has(v[m],y)}function A(v,m,y,w){var B={},x={},k={};return r.forEach(m,function(_){r.forEach(_,function(T,F){B[T]=T,x[T]=T,k[T]=F})}),r.forEach(m,function(_){var T=-1;r.forEach(_,function(F){var I=w(F);if(I.length){I=r.sortBy(I,function(te){return k[te]});for(var O=(I.length-1)/2,P=Math.floor(O),G=Math.ceil(O);P<=G;++P){var ee=I[P];x[F]===F&&T<k[ee]&&!o(y,F,ee)&&(x[ee]=F,x[F]=B[F]=B[ee],T=k[ee])}}})}),{root:B,align:x}}function l(v,m,y,w,B){var x={},k=u(v,m,y,B),_=B?"borderLeft":"borderRight";function T(O,P){for(var G=k.nodes(),ee=G.pop(),te={};ee;)te[ee]?O(ee):(te[ee]=!0,G.push(ee),G=G.concat(P(ee))),ee=G.pop()}function F(O){x[O]=k.inEdges(O).reduce(function(P,G){return Math.max(P,x[G.v]+k.edge(G))},0)}function I(O){var P=k.outEdges(O).reduce(function(ee,te){return Math.min(ee,x[te.w]-k.edge(te))},Number.POSITIVE_INFINITY),G=v.node(O);P!==Number.POSITIVE_INFINITY&&G.borderType!==_&&(x[O]=Math.max(x[O],P))}return T(F,k.predecessors.bind(k)),T(I,k.successors.bind(k)),r.forEach(w,function(O){x[O]=x[y[O]]}),x}function u(v,m,y,w){var B=new e,x=v.graph(),k=p(x.nodesep,x.edgesep,w);return r.forEach(m,function(_){var T;r.forEach(_,function(F){var I=y[F];if(B.setNode(I),T){var O=y[T],P=B.edge(O,I);B.setEdge(O,I,Math.max(k(v,F,T),P||0))}T=F})}),B}function c(v,m){return r.minBy(r.values(m),function(y){var w=Number.NEGATIVE_INFINITY,B=Number.POSITIVE_INFINITY;return r.forIn(y,function(x,k){var _=g(v,k)/2;w=Math.max(x+_,w),B=Math.min(x-_,B)}),w-B})}function d(v,m){var y=r.values(m),w=r.min(y),B=r.max(y);r.forEach(["u","d"],function(x){r.forEach(["l","r"],function(k){var _=x+k,T=v[_],F;if(T!==m){var I=r.values(T);F=k==="l"?w-r.min(I):B-r.max(I),F&&(v[_]=r.mapValues(T,function(O){return O+F}))}})})}function h(v,m){return r.mapValues(v.ul,function(y,w){if(m)return v[m.toLowerCase()][w];var B=r.sortBy(r.map(v,w));return(B[1]+B[2])/2})}function f(v){var m=t.buildLayerMatrix(v),y=r.merge(n(v,m),i(v,m)),w={},B;r.forEach(["u","d"],function(k){B=k==="u"?m:r.values(m).reverse(),r.forEach(["l","r"],function(_){_==="r"&&(B=r.map(B,function(O){return r.values(O).reverse()}));var T=(k==="u"?v.predecessors:v.successors).bind(v),F=A(v,B,y,T),I=l(v,B,F.root,F.align,_==="r");_==="r"&&(I=r.mapValues(I,function(O){return-O})),w[k+_]=I})});var x=c(v,w);return d(w,x),h(w,v.graph().align)}function p(v,m,y){return function(w,B,x){var k=w.node(B),_=w.node(x),T=0,F;if(T+=k.width/2,r.has(k,"labelpos"))switch(k.labelpos.toLowerCase()){case"l":F=-k.width/2;break;case"r":F=k.width/2;break}if(F&&(T+=y?F:-F),F=0,T+=(k.dummy?m:v)/2,T+=(_.dummy?m:v)/2,T+=_.width/2,r.has(_,"labelpos"))switch(_.labelpos.toLowerCase()){case"l":F=_.width/2;break;case"r":F=-_.width/2;break}return F&&(T+=y?F:-F),F=0,T}}function g(v,m){return v.node(m).width}return yb}var wb,NO;function Loe(){if(NO)return wb;NO=1;var r=Dn(),e=Li(),t=Ooe().positionX;wb=n;function n(a){a=e.asNonCompoundGraph(a),i(a),r.forEach(t(a),function(s,o){a.node(o).x=s})}function i(a){var s=e.buildLayerMatrix(a),o=a.graph().ranksep,A=0;r.forEach(s,function(l){var u=r.max(r.map(l,function(c){return a.node(c).height}));r.forEach(l,function(c){a.node(c).y=A+u/2}),A+=u+o})}return wb}var bb,PO;function Noe(){if(PO)return bb;PO=1;var r=Dn(),e=poe(),t=voe(),n=yoe(),i=Li().normalizeRanks,a=woe(),s=Li().removeEmptyRanks,o=boe(),A=Boe(),l=Eoe(),u=Ioe(),c=Loe(),d=Li(),h=Na().Graph;bb=f;function f(Y,U){var W=U&&U.debugTiming?d.time:d.notime;W("layout",function(){var ie=W(" buildLayoutGraph",function(){return T(Y)});W(" runLayout",function(){p(ie,W)}),W(" updateInputGraph",function(){g(Y,ie)})})}function p(Y,U){U(" makeSpaceForEdgeLabels",function(){F(Y)}),U(" removeSelfEdges",function(){J(Y)}),U(" acyclic",function(){e.run(Y)}),U(" nestingGraph.run",function(){o.run(Y)}),U(" rank",function(){n(d.asNonCompoundGraph(Y))}),U(" injectEdgeLabelProxies",function(){I(Y)}),U(" removeEmptyRanks",function(){s(Y)}),U(" nestingGraph.cleanup",function(){o.cleanup(Y)}),U(" normalizeRanks",function(){i(Y)}),U(" assignRankMinMax",function(){O(Y)}),U(" removeEdgeLabelProxies",function(){P(Y)}),U(" normalize.run",function(){t.run(Y)}),U(" parentDummyChains",function(){a(Y)}),U(" addBorderSegments",function(){A(Y)}),U(" order",function(){u(Y)}),U(" insertSelfEdges",function(){be(Y)}),U(" adjustCoordinateSystem",function(){l.adjust(Y)}),U(" position",function(){c(Y)}),U(" positionSelfEdges",function(){re(Y)}),U(" removeBorderNodes",function(){K(Y)}),U(" normalize.undo",function(){t.undo(Y)}),U(" fixupEdgeLabelCoords",function(){te(Y)}),U(" undoCoordinateSystem",function(){l.undo(Y)}),U(" translateGraph",function(){G(Y)}),U(" assignNodeIntersects",function(){ee(Y)}),U(" reversePoints",function(){N(Y)}),U(" acyclic.undo",function(){e.undo(Y)})}function g(Y,U){r.forEach(Y.nodes(),function(W){var ie=Y.node(W),Ee=U.node(W);ie&&(ie.x=Ee.x,ie.y=Ee.y,U.children(W).length&&(ie.width=Ee.width,ie.height=Ee.height))}),r.forEach(Y.edges(),function(W){var ie=Y.edge(W),Ee=U.edge(W);ie.points=Ee.points,r.has(Ee,"x")&&(ie.x=Ee.x,ie.y=Ee.y)}),Y.graph().width=U.graph().width,Y.graph().height=U.graph().height}var v=["nodesep","edgesep","ranksep","marginx","marginy"],m={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},y=["acyclicer","ranker","rankdir","align"],w=["width","height"],B={width:0,height:0},x=["minlen","weight","width","height","labeloffset"],k={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},_=["labelpos"];function T(Y){var U=new h({multigraph:!0,compound:!0}),W=ue(Y.graph());return U.setGraph(r.merge({},m,ne(W,v),r.pick(W,y))),r.forEach(Y.nodes(),function(ie){var Ee=ue(Y.node(ie));U.setNode(ie,r.defaults(ne(Ee,w),B)),U.setParent(ie,Y.parent(ie))}),r.forEach(Y.edges(),function(ie){var Ee=ue(Y.edge(ie));U.setEdge(ie,r.merge({},k,ne(Ee,x),r.pick(Ee,_)))}),U}function F(Y){var U=Y.graph();U.ranksep/=2,r.forEach(Y.edges(),function(W){var ie=Y.edge(W);ie.minlen*=2,ie.labelpos.toLowerCase()!=="c"&&(U.rankdir==="TB"||U.rankdir==="BT"?ie.width+=ie.labeloffset:ie.height+=ie.labeloffset)})}function I(Y){r.forEach(Y.edges(),function(U){var W=Y.edge(U);if(W.width&&W.height){var ie=Y.node(U.v),Ee=Y.node(U.w),de={rank:(Ee.rank-ie.rank)/2+ie.rank,e:U};d.addDummyNode(Y,"edge-proxy",de,"_ep")}})}function O(Y){var U=0;r.forEach(Y.nodes(),function(W){var ie=Y.node(W);ie.borderTop&&(ie.minRank=Y.node(ie.borderTop).rank,ie.maxRank=Y.node(ie.borderBottom).rank,U=r.max(U,ie.maxRank))}),Y.graph().maxRank=U}function P(Y){r.forEach(Y.nodes(),function(U){var W=Y.node(U);W.dummy==="edge-proxy"&&(Y.edge(W.e).labelRank=W.rank,Y.removeNode(U))})}function G(Y){var U=Number.POSITIVE_INFINITY,W=0,ie=Number.POSITIVE_INFINITY,Ee=0,de=Y.graph(),X=de.marginx||0,xe=de.marginy||0;function ce(De){var He=De.x,Xe=De.y,ct=De.width,dt=De.height;U=Math.min(U,He-ct/2),W=Math.max(W,He+ct/2),ie=Math.min(ie,Xe-dt/2),Ee=Math.max(Ee,Xe+dt/2)}r.forEach(Y.nodes(),function(De){ce(Y.node(De))}),r.forEach(Y.edges(),function(De){var He=Y.edge(De);r.has(He,"x")&&ce(He)}),U-=X,ie-=xe,r.forEach(Y.nodes(),function(De){var He=Y.node(De);He.x-=U,He.y-=ie}),r.forEach(Y.edges(),function(De){var He=Y.edge(De);r.forEach(He.points,function(Xe){Xe.x-=U,Xe.y-=ie}),r.has(He,"x")&&(He.x-=U),r.has(He,"y")&&(He.y-=ie)}),de.width=W-U+X,de.height=Ee-ie+xe}function ee(Y){r.forEach(Y.edges(),function(U){var W=Y.edge(U),ie=Y.node(U.v),Ee=Y.node(U.w),de,X;W.points?(de=W.points[0],X=W.points[W.points.length-1]):(W.points=[],de=Ee,X=ie),W.points.unshift(d.intersectRect(ie,de)),W.points.push(d.intersectRect(Ee,X))})}function te(Y){r.forEach(Y.edges(),function(U){var W=Y.edge(U);if(r.has(W,"x"))switch((W.labelpos==="l"||W.labelpos==="r")&&(W.width-=W.labeloffset),W.labelpos){case"l":W.x-=W.width/2+W.labeloffset;break;case"r":W.x+=W.width/2+W.labeloffset;break}})}function N(Y){r.forEach(Y.edges(),function(U){var W=Y.edge(U);W.reversed&&W.points.reverse()})}function K(Y){r.forEach(Y.nodes(),function(U){if(Y.children(U).length){var W=Y.node(U),ie=Y.node(W.borderTop),Ee=Y.node(W.borderBottom),de=Y.node(r.last(W.borderLeft)),X=Y.node(r.last(W.borderRight));W.width=Math.abs(X.x-de.x),W.height=Math.abs(Ee.y-ie.y),W.x=de.x+W.width/2,W.y=ie.y+W.height/2}}),r.forEach(Y.nodes(),function(U){Y.node(U).dummy==="border"&&Y.removeNode(U)})}function J(Y){r.forEach(Y.edges(),function(U){if(U.v===U.w){var W=Y.node(U.v);W.selfEdges||(W.selfEdges=[]),W.selfEdges.push({e:U,label:Y.edge(U)}),Y.removeEdge(U)}})}function be(Y){var U=d.buildLayerMatrix(Y);r.forEach(U,function(W){var ie=0;r.forEach(W,function(Ee,de){var X=Y.node(Ee);X.order=de+ie,r.forEach(X.selfEdges,function(xe){d.addDummyNode(Y,"selfedge",{width:xe.label.width,height:xe.label.height,rank:X.rank,order:de+ ++ie,e:xe.e,label:xe.label},"_se")}),delete X.selfEdges})})}function re(Y){r.forEach(Y.nodes(),function(U){var W=Y.node(U);if(W.dummy==="selfedge"){var ie=Y.node(W.e.v),Ee=ie.x+ie.width/2,de=ie.y,X=W.x-Ee,xe=ie.height/2;Y.setEdge(W.e,W.label),Y.removeNode(U),W.label.points=[{x:Ee+2*X/3,y:de-xe},{x:Ee+5*X/6,y:de-xe},{x:Ee+X,y:de},{x:Ee+5*X/6,y:de+xe},{x:Ee+2*X/3,y:de+xe}],W.label.x=W.x,W.label.y=W.y}})}function ne(Y,U){return r.mapValues(r.pick(Y,U),Number)}function ue(Y){var U={};return r.forEach(Y,function(W,ie){U[ie.toLowerCase()]=W}),U}return bb}var Bb,UO;function Poe(){if(UO)return Bb;UO=1;var r=Dn(),e=Li(),t=Na().Graph;Bb={debugOrdering:n};function n(i){var a=e.buildLayerMatrix(i),s=new t({compound:!0,multigraph:!0}).setGraph({});return r.forEach(i.nodes(),function(o){s.setNode(o,{label:o}),s.setParent(o,"layer"+i.node(o).rank)}),r.forEach(i.edges(),function(o){s.setEdge(o.v,o.w,{},o.name)}),r.forEach(a,function(o,A){var l="layer"+A;s.setNode(l,{rank:"same"}),r.reduce(o,function(u,c){return s.setEdge(u,c,{style:"invis"}),c})}),s}return Bb}var Eb,RO;function Uoe(){return RO||(RO=1,Eb="0.8.5"),Eb}var xb,QO;function Roe(){return QO||(QO=1,xb={graphlib:Na(),layout:Noe(),debug:Poe(),util:{time:Li().time,notime:Li().notime},version:Uoe()}),xb}var C3=Roe(),Qoe=xD(C3),Doe=function(r){return wD(r,"Boolean")};function Hoe(r,e){if(r){var t;if(Ox(r))for(var n=0,i=r.length;n<i&&(t=e(r[n],n),t!==!1);n++);else if(Une(r)){for(var a in r)if(r.hasOwnProperty(a)&&(t=e(r[a],a),t===!1))break}}}var $oe=Object.prototype.hasOwnProperty,Goe=(function(r,e){if(r===null||!AE(r))return{};var t={};return Hoe(e,function(n){$oe.call(r,n)&&(t[n]=r[n])}),t});class S3 extends ws{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 Ir(this,void 0,void 0,function*(){const e=new C3.graphlib.Graph({directed:!!this.options.directed,multigraph:!!this.options.multigraph,compound:this.isCompound()});e.setGraph(Goe(this.options,this.config.graphAttributes)),e.setDefaultEdgeLabel(()=>({}));const t=Sf(this.options.nodeSize,0);this.model.forEachNode(h=>{const f=h._original,[p,g]=Cf(t(f)),v={width:p,height:g};if(e.setNode(String(h.id),v),this.isCompound()){if(kr(h.parentId))return;e.setParent(String(h.id),String(h.parentId))}});const{edgeLabelSize:n,edgeLabelOffset:i,edgeLabelPos:a,edgeMinLen:s,edgeWeight:o}=this.options,A=Sf(n,0,"edge"),l=Wi(i,10,"edge"),u=typeof a=="string"?()=>a:Tr(a,["edge"]),c=Wi(s,1,"edge"),d=Wi(o,1,"edge");this.model.forEachEdge(h=>{const f=h._original,[p,g]=Cf(A(f)),v={width:p,height:g,labelpos:u(f),labeloffset:l(f),minlen:c(f),weight:d(f)};e.setEdge(String(h.source),String(h.target),v,String(h.id))}),Qoe.layout(e),this.model.forEachNode(h=>{const f=e.node(String(h.id));f&&(h.x=f.x,h.y=f.y,h.size=[f.width,f.height])}),this.model.forEachEdge(h=>{const f=e.edge(String(h.source),String(h.target),String(h.id));if(!f)return;const{width:p,height:g,weight:v,minlen:m,labelpos:y,labeloffset:w,points:B}=f;h.labelSize=[p,g],h.weight=v,h.minLen=m,h.labelPos=y,h.labelOffset=w,h.points=B.map(PQ)})})}isCompound(){return this.isCompoundGraph!==null?this.isCompoundGraph:Doe(this.options.compound)?this.isCompoundGraph=this.options.compound:(this.isCompoundGraph=this.model.nodes().some(e=>!kr(e.parentId)),this.isCompoundGraph)}}function zoe(r=2){let e=!1;function t(n,i){n.forEachEdge(a=>{var s,o;const{source:A,target:l}=a,u=n.node(A),c=n.node(l);if(!u||!c)return;let d=c.x-u.x,h=c.y-u.y,f=r===3?((s=c.z)!==null&&s!==void 0?s:0)-((o=u.z)!==null&&o!==void 0?o:0):0;!d&&!h&&(d=.01,h=.01,r===3&&!f&&(f=.01));const p=Math.sqrt(d*d+h*h+f*f);if(p<Number(u.size)+Number(c.size))return;const g=d/p,v=h/p,m=f/p,{linkDistance:y=200,edgeStrength:w=200}=a,x=(y-p)*w,k=u.mass||1,_=c.mass||1,T=1/k,F=1/_,I=g*x,O=v*x,P=m*x;i[A].x-=I*T,i[A].y-=O*T,i[A].z-=P*T,i[l].x+=I*F,i[l].y+=O*F,i[l].z+=P*F})}return t.dimensions=function(n){return arguments.length?(r=n,t):r},t.preventOverlap=function(n){return arguments.length?(e=n,t):e},t}function Voe(r){let e,t=800,n=600;function i(a,s){if(!e)return;const{leaf:o,single:A,others:l,center:u}=e,c=a.nodes(),d=a.edges(),h=c.map(p=>Object.assign(Object.assign({},p),{data:p.data||{}})),f=d.map(p=>Object.assign(Object.assign({},p),{data:p.data||{}}));a.forEachNode(p=>{const{id:g,mass:v,x:m,y,z:w=0,data:B}=p,x=a.degree(g,"in"),k=a.degree(g,"out"),_=a.degree(g,"both"),T=Object.assign(Object.assign({},p),{data:B||{}}),{x:F,y:I,z:O,centerStrength:P}=(u==null?void 0:u(T,h,f,t,n))||{x:0,y:0,z:0,centerStrength:0};if(!or(F)||!or(I))return;const G=(m-F)/v,ee=(y-I)/v,te=(w-(O||0))/v;if(P&&(s[g].x-=P*G,s[g].y-=P*ee,s[g].z-=P*te),_===0){const K=A(T);if(!K)return;s[g].x-=K*G,s[g].y-=K*ee,s[g].z-=K*te;return}if(x===0||k===0){const K=o(T,h,f);if(!K)return;s[g].x-=K*G,s[g].y-=K*ee,s[g].z-=K*te;return}const N=l(T);N&&(s[g].x-=N*G,s[g].y-=N*ee,s[g].z-=N*te)})}return i.options=function(a){return arguments.length?(e=a,i):e},i.width=function(a){return arguments.length?(t=a,i):t},i.height=function(a){return arguments.length?(n=a,i):n},i}const jA=1e-6,DO=500;function Koe(r=2){let e=1;function t(o,A){const l=o.nodes();if(l.length<2||e<=0)return;if(r===2){const c=l.map((h,f)=>({id:h.id,index:f,x:h.x,y:h.y,r:Number(h.size)/2,mass:h.mass||1,fx:h.fx,fy:h.fy})),d=FA(c,h=>h.x,h=>h.y).visitAfter(joe);for(const h of c)d.visit((f,p,g,v,m)=>{const y=f.r||0,w=h.r+y;if(p>h.x+w||v<h.x-w||g>h.y+w||m<h.y-w)return!0;if(!f.data)return!1;let B=f;do{const x=B.data;x&&x.index>h.index&&a(h,x,A),B=B.next}while(B);return!1});return}const u=l.map((c,d)=>{var h;return{id:c.id,index:d,x:c.x,y:c.y,z:(h=c.z)!==null&&h!==void 0?h:0,r:Number(c.size)/2,mass:c.mass||1,fx:c.fx,fy:c.fy,fz:c.fz}});for(let c=0;c<u.length;c++)for(let d=c+1;d<u.length;d++)s(u[c],u[d],A)}function n(o){return or(o.fx)&&or(o.fy)?0:1/(o.mass||1)}function i(o){return or(o.fx)&&or(o.fy)&&or(o.fz)?0:1/(o.mass||1)}function a(o,A,l){let u=o.x-A.x,c=o.y-A.y,d=Math.hypot(u,c);const h=o.r+A.r;if(d>=h)return;d<jA&&(u=o.index<A.index?jA:-jA,c=0,d=Math.abs(u));const f=h-d,p=u/d,g=c/d,v=f*e*DO,m=n(o),y=n(A);m&&(l[o.id].x+=p*v*m,l[o.id].y+=g*v*m),y&&(l[A.id].x-=p*v*y,l[A.id].y-=g*v*y)}function s(o,A,l){let u=o.x-A.x,c=o.y-A.y,d=o.z-A.z,h=Math.sqrt(u*u+c*c+d*d);const f=o.r+A.r;if(h>=f)return;h<jA&&(u=o.index<A.index?jA:-jA,c=0,d=0,h=Math.abs(u));const p=f-h,g=u/h,v=c/h,m=d/h,y=p*e*DO,w=i(o),B=i(A);w&&(l[o.id].x+=g*y*w,l[o.id].y+=v*y*w,l[o.id].z+=m*y*w),B&&(l[A.id].x-=g*y*B,l[A.id].y-=v*y*B,l[A.id].z-=m*y*B)}return t.dimensions=function(o){return arguments.length?(r=o,t):r},t.strength=function(o){return arguments.length?(e=o,t):e},t}function joe(r){var e;let t=0;if(r.length)for(let n=0;n<r.length;n++){const i=r[n];i&&i.r>t&&(t=i.r)}else if(r.data){t=r.data.r||0;let n=r.next;for(;n;)t=Math.max(t,((e=n.data)===null||e===void 0?void 0:e.r)||0),n=n.next}r.r=t}function Woe(r=[0,0,0],e=10){let t;function n(i,a){i.nodes()&&i.forEachNode(o=>{const{id:A,mass:l,x:u,y:c,z:d=0}=o;let h=0,f=0,p=0,g=e;const v=i.degree(A),m=t==null?void 0:t(o,v);if(m){const[y,w,B]=m;h=u-y,f=c-w,g=B}else h=u-r[0],f=c-r[1],p=d-(r[2]||0);g&&(a[A].x-=g*h/l,a[A].y-=g*f/l,a[A].z-=g*p/l)})}return n.center=function(i){return arguments.length?(r=i,n):r},n.gravity=function(i){return arguments.length?(e=i,n):e},n.getCenter=function(i){return arguments.length?(t=i,n):t},n}function qoe(r=1,e=.005,t=2){function n(i,a){const s=e*e;Xoe(i,r,s,a,t)}return n.factor=function(i){return arguments.length?(r=i,n):r},n.coulombDisScale=function(i){return arguments.length?(e=i,n):e},n.dimensions=function(i){return arguments.length?(t=i,n):t},n}const Yoe=.81,Cb=.1;function Xoe(r,e,t,n,i=2){const a=e/t,o=r.nodes().map((u,c)=>{const{nodeStrength:d,x:h,y:f,z:p,size:g,mass:v}=u;return{x:h,y:f,z:p,size:g,index:c,id:u.id,vx:0,vy:0,vz:0,weight:a*d,mass:v||1}}),A=(i===2?FA(o,u=>u.x,u=>u.y):Lg(o,u=>u.x,u=>u.y,u=>u.z)).visitAfter(Zoe),l=new Map;return o.forEach(u=>{l.set(u.id,u),eAe(u,A,i)}),o.map(u=>{const c=u.id;n[c]={x:u.vx/u.mass,y:u.vy/u.mass,z:u.vz/u.mass}}),n}function Zoe(r){let e=0,t=0,n=0,i=0,a=0;const s=r.length;if(s){for(let o=0;o<s;o++){const A=r[o];A&&A.weight&&(e+=A.weight,t+=A.x*A.weight,n+=A.y*A.weight,i+=A.z*A.weight,a+=A.size*A.weight)}r.x=t/e,r.y=n/e,r.z=i/e,r.size=a/e,r.weight=e}else{const o=r;r.x=o.data.x,r.y=o.data.y,r.z=o.data.z,r.size=o.data.size,r.weight=o.data.weight}}const Joe=(r,e,t,n,i,a,s,o,A)=>{var l;if(((l=r.data)===null||l===void 0?void 0:l.id)===o.id)return;const u=A===2?n:A===3?a:t,c=o.x-r.x||Cb,d=o.y-r.y||Cb,h=o.z-r.z||Cb,f=[c,d,h],p=u-e;let g=0;for(let y=0;y<A;y++)g+=f[y]*f[y];const m=Math.sqrt(g)*g;if(p*p*Yoe<g){const y=r.weight/m;return o.vx+=c*y,o.vy+=d*y,o.vz+=h*y,!0}if(r.length)return!1;if(r.data!==o){const y=r.data.weight/m;o.vx+=c*y,o.vy+=d*y,o.vz+=h*y}};function eAe(r,e,t){e.visit((n,i,a,s,o,A,l)=>Joe(n,i,a,s,o,A,l,r,t))}var tAe="*",nAe=(function(){function r(){this._events={}}return r.prototype.on=function(e,t,n){return this._events[e]||(this._events[e]=[]),this._events[e].push({callback:t,once:!!n}),this},r.prototype.once=function(e,t){return this.on(e,t,!0)},r.prototype.emit=function(e){for(var t=this,n=[],i=1;i<arguments.length;i++)n[i-1]=arguments[i];var a=this._events[e]||[],s=this._events[tAe]||[],o=function(A){for(var l=A.length,u=0;u<l;u++)if(A[u]){var c=A[u],d=c.callback,h=c.once;h&&(A.splice(u,1),A.length===0&&delete t._events[e],l--,u--),d.apply(t,n)}};o(a),o(s)},r.prototype.off=function(e,t){if(!e)this._events={};else if(!t)delete this._events[e];else{for(var n=this._events[e]||[],i=n.length,a=0;a<i;a++)n[a].callback===t&&(n.splice(a,1),i--,a--);n.length===0&&delete this._events[e]}return this},r.prototype.getEvents=function(){return this._events},r})();class oC extends nAe{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++){const i=this.runOneStep();this.judgingDistance=i,this.iteration++,(t=this.tickCallback)===null||t===void 0||t.call(this)}return this}restart(){if(this.running)return this;const{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 i;(i=this.endCallback)===null||i===void 0||i.call(this)}),this}return this.running=!0,this.timer=window.setInterval(()=>{var i;this.tick(1),(this.iteration>=e||this.judgingDistance<t)&&(this.stop(),(i=this.endCallback)===null||i===void 0||i.call(this))},0),this}stop(){return this.running=!1,this.timer&&(clearInterval(this.timer),this.timer=0),this}}class rAe extends oC{constructor(){super(...arguments),this.forces=new Map,this.velMap={}}data(e){return this.model=e,e.forEachNode(t=>{this.velMap[t.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(){const e={},t=this.model.nodes();if(!t.length)return 0;t.forEach(i=>{e[i.id]={x:0,y:0,z:0}}),this.forces.forEach(i=>{i(this.model,e)}),this.updateVelocity(e);const n=this.updatePosition();return this.monitor(e,t),n}setFixedPosition(e,t){const n=this.model.node(e);if(!n)return;const i=["fx","fy","fz"];if(t===null){i.forEach(s=>delete n[s]);return}t.forEach((s,o)=>{o<i.length&&(typeof s=="number"||s===null)&&(n[i[o]]=s)});const a=this.velMap[e];a&&(a.x=0,a.y=0,a.z=0)}updateVelocity(e){const{damping:t=.9,maxSpeed:n=100,interval:i=.02,dimensions:a=2}=this.options;this.model.nodes().forEach(s=>{const o=s.id;let A=(this.velMap[o].x+e[o].x*i)*t,l=(this.velMap[o].y+e[o].y*i)*t,u=a===3?(this.velMap[o].z+e[o].z*i)*t:0;const c=Math.sqrt(A*A+l*l+u*u);if(c>n){const d=n/c;A*=d,l*=d,u*=d}this.velMap[o]={x:A,y:l,z:u}})}updatePosition(){const{distanceThresholdMode:e="mean",interval:t=.02,dimensions:n=2}=this.options,i=this.model.nodes();let a=0,s=e==="max"?-1/0:e==="min"?1/0:0;return i.forEach(o=>{const A=o.id;if(or(o.fx)&&or(o.fy)){o.x=o.fx,o.y=o.fy,n===3&&or(o.fz)&&(o.z=o.fz);return}const l=this.velMap[A].x*t,u=this.velMap[A].y*t,c=n===3?this.velMap[A].z*t:0;o.x+=l,o.y+=u,n===3&&(o.z=(o.z||0)+c);const d=Math.sqrt(l*l+u*u+c*c);e==="max"?s=Math.max(s,d):e==="min"?s=Math.min(s,d):a+=d}),e==="mean"?a/i.length:s}monitor(e,t){const{monitor:n,dimensions:i=2}=this.options;if(!n)return;let a=0;t.forEach(s=>{const o=e[s.id],A=o.x*o.x+o.y*o.y+(i===3?o.z*o.z:0);a+=(s.mass||1)*A*.5}),n({energy:a,nodes:t,edges:this.model.edges(),iterations:this.iteration})}}var iAe=function(r){return r!==null&&typeof r!="function"&&isFinite(r.length)},aAe={}.toString,sAe=function(r){return aAe.call(r).replace(/^\[object /,"").replace(/]$/,"")},oAe=Object.prototype,AAe=function(r){var e=r&&r.constructor,t=typeof e=="function"&&e.prototype||oAe;return r===t},lAe=Object.prototype.hasOwnProperty;function uAe(r){if(kr(r))return!0;if(iAe(r))return!r.length;var e=sAe(r);if(e==="Map"||e==="Set")return!r.size;if(AAe(r))return!Object.keys(r).length;for(var t in r)if(lAe.call(r,t))return!1;return!0}const cAe={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"};class _3 extends Ig{constructor(){super(...arguments),this.id="force",this.simulation=null}getDefaultOptions(){return cAe}layout(){var e;return Ir(this,void 0,void 0,function*(){const t=this.parseOptions(this.options),{width:n,height:i,dimensions:a}=t;if(this.initializePhysicsData(this.model,t),Mx(this.model,n,i,a),!(!((e=this.model.nodes())===null||e===void 0)&&e.length))return;const s=this.setSimulation(t);return s.data(this.model),s.initialize(t),s.restart(),new Promise(o=>{s.on("end",()=>o())})})}initializePhysicsData(e,t){const{nodeSize:n,getMass:i,nodeStrength:a,edgeStrength:s,linkDistance:o}=t;e.forEachNode(A=>{const l=A._original;A.size=n(l),A.mass=i(l),A.nodeStrength=a(l)}),e.forEachEdge(A=>{const l=A._original;A.edgeStrength=s(l),A.linkDistance=o(l,e.originalNode(A.source),e.originalNode(A.target))})}setSimulation(e){const t=this.simulation||new rAe;return this.simulation||(this.simulation=t.on("tick",()=>{var n;(n=e.onTick)===null||n===void 0||n.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){const{factor:n,coulombDisScale:i,dimensions:a}=t;let s=e.force("repulsive");s||(s=qoe(n,i,a),e.force("repulsive",s)),s.factor&&s.factor(n),s.coulombDisScale&&s.coulombDisScale(i),s.dimensions&&s.dimensions(a)}setupAttractiveForce(e,t){const{dimensions:n,preventOverlap:i}=t;if((this.model.edges()||[]).length>0){let s=e.force("attractive");s||(s=zoe(n),e.force("attractive",s)),s.dimensions&&s.dimensions(n),s.preventOverlap&&s.preventOverlap(i)}else e.force("attractive",null)}setupGravityForce(e,t){const{center:n,gravity:i,getCenter:a}=t;if(i){let s=e.force("gravity");s||(s=Woe(n,i),e.force("gravity",s)),s.center&&s.center(n),s.gravity&&s.gravity(i),s.getCenter&&s.getCenter(a)}else e.force("gravity",null)}setupCollideForce(e,t){const{preventOverlap:n,collideStrength:i=1,dimensions:a}=t;if(n&&i){let s=e.force("collide");s||(s=Koe(a),e.force("collide",s)),s.strength&&s.strength(i),s.dimensions&&s.dimensions(a)}else e.force("collide",null)}setupCentripetalForce(e,t){const{centripetalOptions:n,width:i,height:a}=t;if(n){let s=e.force("centripetal");s||(s=Voe(),e.force("centripetal",s)),s.options&&s.options(n),s.width&&s.width(i),s.height&&s.height(a)}else e.force("centripetal",null)}parseOptions(e){const t=Object.assign(Object.assign({},e),Zi(e));if(t.nodeClusterBy&&(t.nodeClusterBy=Tr(t.nodeClusterBy,["node"])),e.getMass?t.getMass=Wi(e.getMass,1):t.getMass=i=>{if(!i)return 1;const a=1,s=this.model.degree(i.id,"both");return!s||s<5?a:s*5*a},e.getCenter){const i=["node","degree"];t.getCenter=Tr(e.getCenter,i)}const n=Hs(e.nodeSize,e.nodeSpacing);return t.nodeSize=i=>{if(!i)return 0;const[a,s,o]=n(i);return Math.max(a,s,o)},t.linkDistance=e.linkDistance?Tr(e.linkDistance,["edge","source","target"]):(i,a,s)=>1+i.nodeSize(a)+i.nodeSize(s),t.nodeStrength=Wi(e.nodeStrength,1),t.edgeStrength=Wi(e.edgeStrength,1,"edge"),t.clusterNodeStrength=Wi(e.clusterNodeStrength,1),this.formatCentripetal(t),t}formatCentripetal(e){var t,n;const{dimensions:i,centripetalOptions:a,center:s,leafCluster:o,clustering:A,nodeClusterBy:l}=e,u=["node","nodes","edges"],c=Tr(a==null?void 0:a.leaf,u),d=Wi(a==null?void 0:a.single,2),h=Wi(a==null?void 0:a.others,1),f=(t=a==null?void 0:a.center)!==null&&t!==void 0?t:(y=>({x:s[0],y:s[1],z:i===3?s[2]:void 0})),p=Tr(f,["node","nodes","edges","width","height"]),g=Object.assign(Object.assign({},a),{leaf:c,single:d,others:h,center:p});a&&(e.centripetalOptions=g);let v,m;if(o&&l&&(v=this.getSameTypeLeafMap(l),m=Array.from(new Set((n=this.model.nodes())===null||n===void 0?void 0:n.map(y=>l(y._original))))||[],e.centripetalOptions=Object.assign({},g,{single:()=>100,leaf:y=>{const{siblingLeaves:w,sameTypeLeaves:B}=v[y.id]||{};return(B==null?void 0:B.length)===(w==null?void 0:w.length)||(m==null?void 0:m.length)===1?1:e.clusterNodeStrength(y)},others:()=>1,center:y=>{const w=this.model.degree(y.id,"both");if(!w)return{x:100,y:100,z:0};let B;if(w===1){const{sameTypeLeaves:x=[]}=v[y.id]||{};x.length===1?B=void 0:x.length>1&&(B=this.getAvgNodePosition(x))}else B=void 0;return{x:B==null?void 0:B.x,y:B==null?void 0:B.y,z:B==null?void 0:B.z}}})),A&&l){v||(v=this.getSameTypeLeafMap(l));let y=[];uAe(y)&&this.model.forEachNode(B=>{const x=l(B._original);x&&!y.includes(x)&&y.push(x)});const w={};y.forEach(B=>{const x=this.model.nodes().filter(k=>l(k._original)===B);w[B]=this.getAvgNodePosition(x)}),e.centripetalOptions=Object.assign(g,{single:B=>e.clusterNodeStrength(B),leaf:B=>e.clusterNodeStrength(B),others:B=>e.clusterNodeStrength(B),center:B=>{const x=w[l(B._original)];return{x:x==null?void 0:x.x,y:x==null?void 0:x.y,z:x==null?void 0:x.z}}})}}getSameTypeLeafMap(e){const t={};return this.model.forEachNode(n=>{this.model.degree(n.id,"both")===1&&(t[n.id]=this.getCoreNodeAndSiblingLeaves(n,e))}),t}getCoreNodeAndSiblingLeaves(e,t){const n=this.model.degree(e.id,"in"),i=this.model.degree(e.id,"out");let a=e,s=[];if(n===0){const l=this.model.successors(e.id);a=this.model.node(l[0]),s=this.model.neighbors(a.id).map(u=>this.model.node(u))}else if(i===0){const l=this.model.predecessors(e.id);a=this.model.node(l[0]),s=this.model.neighbors(a.id).map(u=>this.model.node(u))}s=s.filter(l=>this.model.degree(l.id,"in")===0||this.model.degree(l.id,"out")===0);const o=t(e._original)||"",A=s.filter(l=>t(l._original)===o&&(this.model.degree(l.id,"in")===0||this.model.degree(l.id,"out")===0));return{coreNode:a,siblingLeaves:s,sameTypeLeaves:A}}getAvgNodePosition(e){const t={x:0,y:0};e.forEach(i=>{t.x+=i.x||0,t.y+=i.y||0});const 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}}class AC{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){const 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){const t=e.rx-this.rx,n=e.ry-this.ry;let i=Math.hypot(t,n);i=i<1e-4?1e-4:i;const a=this.g*(this.degree+1)*(e.degree+1)/i;this.fx+=a*t/i,this.fy+=a*n/i}in(e){return e.contains(this.rx,this.ry)}add(e){const t=this.mass+e.mass,n=(this.rx*this.mass+e.rx*e.mass)/t,i=(this.ry*this.mass+e.ry*e.mass)/t,a=this.degree+e.degree,s={rx:n,ry:i,mass:t,degree:a};return new AC(s)}}class Al{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){const n=this.length/2;return e<=this.xmid+n&&e>=this.xmid-n&&t<=this.ymid+n&&t>=this.ymid-n}NW(){const e=this.xmid-this.length/4,t=this.ymid+this.length/4,n=this.length/2,i={xmid:e,ymid:t,length:n};return new Al(i)}NE(){const e=this.xmid+this.length/4,t=this.ymid+this.length/4,n=this.length/2,i={xmid:e,ymid:t,length:n};return new Al(i)}SW(){const e=this.xmid-this.length/4,t=this.ymid-this.length/4,n=this.length/2,i={xmid:e,ymid:t,length:n};return new Al(i)}SE(){const e=this.xmid+this.length/4,t=this.ymid-this.length/4,n=this.length/2,i={xmid:e,ymid:t,length:n};return new Al(i)}}class ll{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(e){if(this.body==null){this.body=e;return}this._isExternal()?(this.quad&&(this.NW=new ll(this.quad.NW()),this.NE=new ll(this.quad.NE()),this.SW=new ll(this.quad.SW()),this.SE=new ll(this.quad.SE())),this._putBody(this.body),this._putBody(e),this.body=this.body.add(e)):(this.body=this.body.add(e),this._putBody(e))}_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){if(!(this.body==null||e===this.body))if(this._isExternal())e.addForce(this.body);else{const t=this.quad?this.quad.getLength():0,n=this.body.distanceTo(e);t/n<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))}}}let dAe=class extends oC{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(){const{model:e,options:t}=this,{kr:n,barnesHut:i}=t,a=e.nodes();this.forces={},this.preForces={},this.bodies={};for(let s=0;s<a.length;s+=1){const o=a[s];if(this.forces[o.id]=[0,0],this.preForces[o.id]=[0,0],i){const A={id:s,rx:o.x,ry:o.y,mass:1,g:n,degree:e.degree(o.id)};this.bodies[o.id]=new AC(A)}}}setFixedPosition(e,t){const n=this.model.node(e);if(!n)return;const i=["fx","fy","fz"];if(t===null){i.forEach(a=>{delete n[a]});return}t.forEach((a,s)=>{s<i.length&&(typeof a=="number"||a===null)&&(n[i[s]]=a)})}isNodeFixed(e){return or(e.fx)&&or(e.fy)}syncFixedPositions(){this.model.forEachNode(e=>{this.isNodeFixed(e)&&(e.x=e.fx,e.y=e.fy)})}runOneStep(){const{model:e,options:t}=this,{preventOverlap:n,barnesHut:i}=t,a=this.maxIteration-this.iteration,s=100,o=e.nodes();for(let A=0;A<o.length;A+=1){const{id:l}=o[A];this.preForces[l]=[...this.forces[l]||[0,0]],this.forces[l]=[0,0]}return this.syncFixedPositions(),this.calculateAttractive(a),i&&!n?this.calculateOptRepulsiveGravity():this.calculateRepulsiveGravity(a,s),this.updatePositions()}calculateAttractive(e){const{model:t,options:n}=this,{preventOverlap:i,dissuadeHubs:a,mode:s,prune:o}=n,A=t.edges();for(let l=0;l<A.length;l+=1){const{source:u,target:c}=A[l],d=t.node(u),h=t.node(c),f=t.degree(u),p=t.degree(c);if(o&&(f<=1||p<=1))continue;const g=h.x-d.x,v=h.y-d.y;let m=Math.hypot(g,v);m=m<1e-4?1e-4:m;const y=g/m,w=v/m;let B=m;i&&(B=Math.max(0,m-this.sizes[u]-this.sizes[c]));let x=B,k=B;s==="linlog"&&(x=Math.log(1+B),k=x),a&&(x=B/f,k=B/p),this.forces[u][0]+=x*y,this.forces[u][1]+=x*w,this.forces[c][0]-=k*y,this.forces[c][1]-=k*w}}calculateOptRepulsiveGravity(){const{model:e,options:t}=this,{kg:n,center:i,prune:a,kr:s}=t,o=e.nodes(),A=o.length;let l=Number.POSITIVE_INFINITY,u=Number.NEGATIVE_INFINITY,c=Number.POSITIVE_INFINITY,d=Number.NEGATIVE_INFINITY;for(let v=0;v<A;v+=1){const m=o[v],{id:y,x:w,y:B}=m;if(a&&e.degree(y)<=1)continue;const x=this.bodies[y];x&&(x.setPos(w,B),w<l&&(l=w),w>u&&(u=w),B<c&&(c=B),B>d&&(d=B))}let h=Math.max(u-l,d-c);(!isFinite(h)||h<=0)&&(h=1);const f={xmid:(u+l)/2,ymid:(d+c)/2,length:h,massCenter:i,mass:A},p=new Al(f),g=new ll(p);for(let v=0;v<A;v+=1){const{id:m}=o[v];if(a&&e.degree(m)<=1)continue;const y=this.bodies[m];y&&y.in(p)&&g.insert(y)}for(let v=0;v<A;v+=1){const m=o[v],{id:y,x:w,y:B}=m,x=e.degree(y);if(a&&x<=1)continue;const k=this.bodies[y];if(!k)continue;k.resetForce(),g.updateForce(k),this.forces[y][0]-=k.fx,this.forces[y][1]-=k.fy;const _=w-i[0],T=B-i[1];let F=Math.hypot(_,T);F=F<1e-4?1e-4:F;const I=_/F,O=T/F,P=n*(x+1);this.forces[y][0]-=P*I,this.forces[y][1]-=P*O}}calculateRepulsiveGravity(e,t){const{model:n,options:i}=this,{preventOverlap:a,kr:s,kg:o,center:A,prune:l}=i,u=n.nodes(),c=u.length;for(let d=0;d<c;d+=1){const h=u[d],f=n.degree(h.id);for(let B=d+1;B<c;B+=1){const x=u[B],k=n.degree(x.id);if(l&&(f<=1||k<=1))continue;const _=x.x-h.x,T=x.y-h.y;let F=Math.hypot(_,T);F=F<1e-4?1e-4:F;const I=_/F,O=T/F;let P=F,G;if(a){const ee=F-this.sizes[h.id]-this.sizes[x.id];ee<0?G=t*(f+1)*(k+1):ee===0?G=0:(P=ee,G=s*(f+1)*(k+1)/P)}else G=s*(f+1)*(k+1)/P;this.forces[h.id][0]-=G*I,this.forces[h.id][1]-=G*O,this.forces[x.id][0]+=G*I,this.forces[x.id][1]+=G*O}const p=h.x-A[0],g=h.y-A[1];let v=Math.hypot(p,g);v=v<1e-4?1e-4:v;const m=p/v,y=g/v,w=o*(f+1);this.forces[h.id][0]-=w*m,this.forces[h.id][1]-=w*y}}updatePositions(){const{model:e,options:t}=this,{ks:n,tao:i,prune:a,ksmax:s,distanceThresholdMode:o="max"}=t,A=e.nodes(),l=A.length,u={},c={};let d=0,h=0;for(let w=0;w<l;w+=1){const{id:B}=A[w],x=e.degree(B);if(a&&x<=1)continue;const k=this.preForces[B]||[0,0],_=this.forces[B]||[0,0],T=_[0]-k[0],F=_[1]-k[1],I=Math.hypot(T,F),O=_[0]+k[0],P=_[1]+k[1],G=Math.hypot(O,P);u[B]=I,c[B]=G/2,d+=(x+1)*u[B],h+=(x+1)*c[B]}let f=this.sg;const p=this.sg;d<=0?f=p>0?p:1:(f=i*h/d,p!==0&&(f=f>1.5*p?1.5*p:f)),this.sg=f;let g=0,v=1/0,m=0,y=0;for(let w=0;w<l;w+=1){const B=A[w],x=B.id,k=e.degree(x);if(a&&k<=1||this.isNodeFixed(B))continue;const _=u[x]||0;let T=n*f/(1+f*Math.sqrt(_)),F=Math.hypot(this.forces[x][0],this.forces[x][1]);F=F<1e-4?1e-4:F;const I=s/F;T>I&&(T=I);const O=T*this.forces[x][0],P=T*this.forces[x][1];B.x+=O,B.y+=P;const G=Math.hypot(O,P);G>0&&(y++,m+=G,G>g&&(g=G),G<v&&(v=G))}switch(o){case"min":return v;case"mean":return y>0?m/y:0;case"max":default:return g}}destroy(){this.stop(),this.forces={},this.preForces={},this.bodies={},this.sizes={},this.off()}};const Sb={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};class k3 extends Ig{constructor(){super(...arguments),this.id="force-atlas2",this.simulation=null}getDefaultOptions(){return Sb}layout(e){return Ir(this,void 0,void 0,function*(){const t=this.parseOptions(e),{width:n,height:i,prune:a,center:s}=t,o=this.model.nodeCount();if(!o||o===1)return TA(this.model,s);Mx(this.model,n,i);const A=this.getSizes(t.nodeSize,t.nodeSpacing),l=this.setSimulation();l.data(this.model,A),l.initialize(t),l.restart();const u=()=>new Promise(c=>{l.on("end",c)});if(!a)return u();if(yield u(),a){const c=this.model.edges();for(let d=0;d<c.length;d+=1){const{source:h,target:f}=c[d],p=this.model.degree(h),g=this.model.degree(f),v=this.model.node(h),m=this.model.node(f);p<=1?(v.x=m.x,v.y=m.y):g<=1&&(m.x=v.x,m.y=v.y)}l.initialize(Object.assign(Object.assign({},t),{prune:!1,barnesHut:!1})),l.tick(100)}})}getSizes(e,t){const n={},i=Hs(e,t,Sb.nodeSize,Sb.nodeSpacing);return this.model.forEachNode(a=>{n[a.id]=Math.max(...i(a._original))}),n}setSimulation(){const e=this.simulation||new dAe;return this.simulation||(this.simulation=e.on("tick",()=>{var t,n;return(n=(t=this.options).onTick)===null||n===void 0?void 0:n.call(t,this)})),this.simulation}parseOptions(e={}){const{barnesHut:t,prune:n,maxIteration:i,kr:a,kg:s}=e,o={},A=this.model.nodeCount();return t===void 0&&A>250&&(o.barnesHut=!0),n===void 0&&A>100&&(o.prune=!0),i===0&&!n?(o.maxIteration=250,A<=200&&A>100?o.maxIteration=1e3:A>200&&(o.maxIteration=1200)):i===0&&n&&(o.maxIteration=100,A<=200&&A>100?o.maxIteration=500:A>200&&(o.maxIteration=950)),a||(o.kr=50,A>100&&A<=500?o.kr=20:A>500&&(o.kr=1)),s||(o.kg=20,A>100&&A<=500?o.kg=10:A>500&&(o.kg=1)),Object.assign(Object.assign(Object.assign({},e),o),Zi(e))}stop(){var e;(e=this.simulation)===null||e===void 0||e.stop()}tick(e=1){var t;(t=this.simulation)===null||t===void 0||t.tick(e)}restart(){var e;(e=this.simulation)===null||e===void 0||e.restart()}setFixedPosition(e,t){var n;(n=this.simulation)===null||n===void 0||n.setFixedPosition(e,t)}destroy(){var e;super.destroy(),this.stop(),(e=this.simulation)===null||e===void 0||e.destroy(),this.simulation=null}}const hAe=800;class fAe extends oC{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(){const{model:e,options:t}=this,{width:n,height:i}=Zi(t),a=n*i;this.k2=a/(e.nodeCount()+1),this.k=Math.sqrt(this.k2),this.maxDisplace=Math.sqrt(a)/10}runOneStep(){return this.syncFixedPositions(),this.initDisplacements(),this.calculateRepulsive(),this.calculateAttractive(),this.applyClusterGravity(),this.applyGlobalGravity(),this.updatePositions()}setFixedPosition(e,t){const n=this.model.node(e);if(!n)return;const i=["fx","fy","fz"];if(t===null){i.forEach(a=>{delete n[a]});return}t.forEach((a,s)=>{s<i.length&&(typeof a=="number"||a===null)&&(n[i[s]]=a)})}isNodeFixed(e){return!kr(e.fx)&&!kr(e.fy)}syncFixedPositions(){const{model:e,options:t}=this,n=t.dimensions===3;e.forEachNode(i=>{this.isNodeFixed(i)&&(i.x=i.fx,i.y=i.fy,n&&i.fz!==void 0&&(i.z=i.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(){const{model:e,options:t}=this,n=t.dimensions===3,i=e.nodes();for(let a=0;a<i.length;a++){const s=i[a],o=this.displacements.get(s.id),A=this.isNodeFixed(s);for(let l=a+1;l<i.length;l++){const u=i[l],c=this.displacements.get(u.id),d=this.isNodeFixed(u);let h=s.x-u.x,f=s.y-u.y,p=n?s.z-u.z:0,g=h*h+f*f+p*p;g===0&&(g=1,h=.01,f=.01,p=.01);const v=this.k2/g,m=h*v,y=f*v,w=p*v;!A&&!d?(o.x+=m,o.y+=y,c.x-=m,c.y-=y,n&&(o.z+=w,c.z-=w)):A&&!d?(c.x-=m*2,c.y-=y*2,n&&(c.z-=w*2)):!A&&d&&(o.x+=m*2,o.y+=y*2,n&&(o.z+=w*2))}}}calculateAttractive(){const{model:e,options:t}=this,n=t.dimensions===3;e.forEachEdge(i=>{const{source:a,target:s}=i;if(!a||!s||a===s)return;const o=e.node(a),A=e.node(s),l=this.displacements.get(a),u=this.displacements.get(s),c=this.isNodeFixed(o),d=this.isNodeFixed(A),h=A.x-o.x,f=A.y-o.y,p=n?A.z-o.z:0,g=Math.sqrt(h*h+f*f+p*p);if(g===0)return;const v=g/this.k,m=h*v,y=f*v,w=p*v;!c&&!d?(l.x+=m,l.y+=y,u.x-=m,u.y-=y,n&&(l.z+=w,u.z-=w)):c&&!d?(u.x-=m*2,u.y-=y*2,n&&(u.z-=w*2)):!c&&d&&(l.x+=m*2,l.y+=y*2,n&&(l.z+=w*2))})}applyClusterGravity(){const{model:e,options:t}=this,{nodeClusterBy:n,clusterGravity:i,dimensions:a,clustering:s}=t;if(!s||(this.clusterMap||(this.clusterMap=new Map,e.forEachNode(A=>{const l=n(e.originalNode(A.id));this.clusterMap.has(l)||this.clusterMap.set(l,{name:l,cx:0,cy:0,cz:0,count:0})})),this.clusterMap.size===0))return;const o=a===3;this.clusterMap.forEach(A=>{A.cx=0,A.cy=0,A.cz=0,A.count=0}),e.forEachNode(A=>{const l=n(e.originalNode(A.id)),u=this.clusterMap.get(l);u&&(u.cx+=A.x,u.cy+=A.y,o&&(u.cz+=A.z),u.count++)}),this.clusterMap.forEach(A=>{A.count>0&&(A.cx/=A.count,A.cy/=A.count,A.cz/=A.count)}),e.forEachNode(A=>{const{id:l}=A;if(this.isNodeFixed(A))return;const u=n(e.originalNode(l)),c=this.clusterMap.get(u);if(!c)return;const d=this.displacements.get(l),h=A.x-c.cx,f=A.y-c.cy,p=o?A.z-c.cz:0,g=Math.sqrt(h*h+f*f+p*p);if(g===0)return;const v=this.k*i;d.x-=v*h/g,d.y-=v*f/g,o&&(d.z-=v*p/g)})}applyGlobalGravity(){const{model:e,options:t}=this,{gravity:n,center:i,dimensions:a}=t,s=a===3,o=.01*this.k*n;e.forEachNode(A=>{const{id:l}=A;if(this.isNodeFixed(A))return;const u=this.displacements.get(l);u.x-=o*(A.x-i[0]),u.y-=o*(A.y-i[1]),s&&(u.z-=o*(A.z-(i[2]||0)))})}updatePositions(){const{model:e,options:t}=this,{speed:n,dimensions:i,distanceThresholdMode:a="max"}=t,s=i===3;let o=0,A=1/0,l=0,u=0;if(e.forEachNode(c=>{const{id:d}=c;if(this.isNodeFixed(c))return;const h=this.displacements.get(d),f=Math.sqrt(h.x*h.x+h.y*h.y+(s?h.z*h.z:0));if(f===0)return;const p=Math.min(this.maxDisplace*(n/hAe),f),g=p/f;c.x+=h.x*g,c.y+=h.y*g,s&&(c.z=c.z+h.z*g),o=Math.max(o,p),A=Math.min(A,p),l+=p,u++}),u===0)return 0;switch(a){case"min":return A===1/0?0:A;case"mean":return l/u;case"max":default:return o}}destroy(){var e,t;this.stop(),(e=this.displacements)===null||e===void 0||e.clear(),(t=this.clusterMap)===null||t===void 0||t.clear()}}const gAe={maxIteration:1e3,gravity:10,speed:5,clustering:!1,clusterGravity:10,width:300,height:300,nodeClusterBy:"node.cluster",dimensions:2};class T3 extends Ig{constructor(){super(...arguments),this.id="fruchterman",this.simulation=null}getDefaultOptions(){return gAe}parseOptions(e={}){const{clustering:t,nodeClusterBy:n}=this.options,i=t&&!!n;return Object.assign(e,Zi(e),{clustering:i,nodeClusterBy:Tr(n,["node"])}),e}layout(){return Ir(this,void 0,void 0,function*(){const e=this.parseOptions(this.options),{dimensions:t,center:n,width:i,height:a}=e,s=this.model.nodeCount();if(!s||s===1){TA(this.model,n,t);return}Mx(this.model,i,a,t);const o=this.setSimulation();return o.data(this.model),o.initialize(e),o.restart(),new Promise(A=>{o.on("end",()=>A())})})}setSimulation(){const e=this.simulation||new fAe;return this.simulation||(this.simulation=e.on("tick",()=>{var t,n;return(n=(t=this.options).onTick)===null||n===void 0?void 0:n.call(t,this)})),this.simulation}restart(){var e;(e=this.simulation)===null||e===void 0||e.restart()}stop(){var e;(e=this.simulation)===null||e===void 0||e.stop()}tick(e=1){var t;(t=this.simulation)===null||t===void 0||t.tick(e)}setFixedPosition(e,t){var n;(n=this.simulation)===null||n===void 0||n.setFixedPosition(e,t)}destroy(){var e;super.destroy(),this.stop(),(e=this.simulation)===null||e===void 0||e.destroy(),this.simulation=null}}const lh={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};class F3 extends ws{constructor(){super(...arguments),this.id="grid"}getDefaultOptions(){return lh}parseOptions(e={},t){const{rows:n,cols:i,position:a,sortBy:s}=e,{width:o,height:A,center:l}=Zi(e);let u=e.rows,c=e.cols;const d=t.nodeCount();if(n!=null&&i!=null)u=n,c=i;else if(n!=null&&i==null)u=n,c=Math.ceil(d/u);else if(n==null&&i!=null)c=i,u=Math.ceil(d/c);else{const p=Math.sqrt(d*A/o);u=Math.round(p),c=Math.round(o/A*p)}u=Math.max(u,1),c=Math.max(c,1);const h={rows:u,cols:c};if(h.cols*h.rows>d){const p=uh(h),g=ch(h);(p-1)*g>=d?uh(h,p-1):(g-1)*p>=d&&ch(h,g-1)}else for(;h.cols*h.rows<d;){const p=uh(h),g=ch(h);(g+1)*p>=d?ch(h,g+1):uh(h,p+1)}const f=s?s==="degree"||s==="id"?s:Tr(s,["nodeA","nodeB"]):lh.sortBy;return Object.assign(Object.assign({},e),{sortBy:f,rcs:h,center:l,width:o,height:A,position:Tr(a,["node"])})}layout(){return Ir(this,void 0,void 0,function*(){const{begin:e,rcs:t,sortBy:n,width:i,height:a,condense:s,preventOverlap:o,nodeSpacing:A,nodeSize:l,position:u}=this.parseOptions(this.options,this.model),c=this.model.nodeCount();if(!c||c===1){TA(this.model,e);return}n==="degree"?Nx(this.model):n==="id"?Pne(this.model):oD(this.model,n);let d=s?0:i/t.cols,h=s?0:a/t.rows;if(o){const v=Hs(l,A,lh.nodeSize,lh.nodeSpacing);this.model.forEachNode(m=>{const[y,w]=v(m._original);d=Math.max(d,y),h=Math.max(h,w)})}const f={},p={row:0,col:0},g={};this.model.forEachNode(v=>{const m=v._original;let y;if(u&&(y=u(m)),y&&(y.row!==void 0||y.col!==void 0)){const w={row:y.row,col:y.col};if(w.col===void 0)for(w.col=0;lE(f,w);)w.col++;else if(w.row===void 0)for(w.row=0;lE(f,w);)w.row++;g[v.id]=w,M3(f,w)}pAe(v,e,d,h,g,t,p,f)})})}}const uh=(r,e)=>{let t;const n=r.rows||5,i=r.cols||5;return e==null?t=Math.min(n,i):Math.min(n,i)===r.rows?r.rows=e:r.cols=e,t},ch=(r,e)=>{let t;const n=r.rows||5,i=r.cols||5;return e==null?t=Math.max(n,i):Math.max(n,i)===r.rows?r.rows=e:r.cols=e,t},lE=(r,e)=>r[`c-${e.row}-${e.col}`]||!1,M3=(r,e)=>r[`c-${e.row}-${e.col}`]=!0,HO=(r,e)=>{const t=r.cols||5;e.col++,e.col>=t&&(e.col=0,e.row++)},pAe=(r,e,t,n,i,a,s,o)=>{let A,l;const u=i[r.id];if(u)A=u.col*t+t/2+e[0],l=u.row*n+n/2+e[1];else{for(;lE(o,s);)HO(a,s);A=s.col*t+t/2+e[0],l=s.row*n+n/2+e[1],M3(o,s),HO(a,s)}r.x=A,r.y=l};var $t={};const vAe=Object.prototype.toString;function cc(r){const e=vAe.call(r);return e.endsWith("Array]")&&!e.includes("Big")}const mAe=Object.freeze(Object.defineProperty({__proto__:null,isAnyArray:cc},Symbol.toStringTag,{value:"Module"}));var yAe=CD(mAe);function wAe(r){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!cc(r))throw new TypeError("input must be an array");if(r.length===0)throw new TypeError("input must not be empty");var t=e.fromIndex,n=t===void 0?0:t,i=e.toIndex,a=i===void 0?r.length:i;if(n<0||n>=r.length||!Number.isInteger(n))throw new Error("fromIndex must be a positive integer smaller than length");if(a<=n||a>r.length||!Number.isInteger(a))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var s=r[n],o=n+1;o<a;o++)r[o]>s&&(s=r[o]);return s}function bAe(r){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(!cc(r))throw new TypeError("input must be an array");if(r.length===0)throw new TypeError("input must not be empty");var t=e.fromIndex,n=t===void 0?0:t,i=e.toIndex,a=i===void 0?r.length:i;if(n<0||n>=r.length||!Number.isInteger(n))throw new Error("fromIndex must be a positive integer smaller than length");if(a<=n||a>r.length||!Number.isInteger(a))throw new Error("toIndex must be an integer greater than fromIndex and at most equal to length");for(var s=r[n],o=n+1;o<a;o++)r[o]<s&&(s=r[o]);return s}function BAe(r){var e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(cc(r)){if(r.length===0)throw new TypeError("input must not be empty")}else throw new TypeError("input must be an array");var t;if(e.output!==void 0){if(!cc(e.output))throw new TypeError("output option must be an array if specified");t=e.output}else t=new Array(r.length);var n=bAe(r),i=wAe(r);if(n===i)throw new RangeError("minimum and maximum input values are equal. Cannot rescale a constant array");var a=e.min,s=a===void 0?e.autoMinMax?n:0:a,o=e.max,A=o===void 0?e.autoMinMax?i:1:o;if(s>=A)throw new RangeError("min option must be smaller than max option");for(var l=(A-s)/(i-n),u=0;u<r.length;u++)t[u]=(r[u]-n)*l+s;return t}const EAe=Object.freeze(Object.defineProperty({__proto__:null,default:BAe},Symbol.toStringTag,{value:"Module"}));var xAe=CD(EAe),$O;function CAe(){var Xr,uE,nn;if($O)return $t;$O=1,Object.defineProperty($t,"__esModule",{value:!0});var r=yAe,e=xAe;const t=" ".repeat(2),n=" ".repeat(4);function i(){return a(this)}function a(L,S={}){const{maxRows:E=15,maxColumns:b=10,maxNumSize:C=8,padMinus:M="auto"}=S;return`${L.constructor.name} {
176
- ${t}[
177
- ${n}${s(L,E,b,C,M)}
178
- ${t}]
179
- ${t}rows: ${L.rows}
180
- ${t}columns: ${L.columns}
181
- }`}function s(L,S,E,b,C){const{rows:M,columns:Q}=L,$=Math.min(M,S),j=Math.min(Q,E),q=[];if(C==="auto"){C=!1;e:for(let ge=0;ge<$;ge++)for(let se=0;se<j;se++)if(L.get(ge,se)<0){C=!0;break e}}for(let ge=0;ge<$;ge++){let se=[];for(let Ce=0;Ce<j;Ce++)se.push(o(L.get(ge,Ce),b,C));q.push(`${se.join(" ")}`)}return j!==Q&&(q[q.length-1]+=` ... ${Q-E} more columns`),$!==M&&q.push(`... ${M-S} more rows`),q.join(`
182
- ${n}`)}function o(L,S,E){return(L>=0&&E?` ${A(L,S-1)}`:A(L,S)).padEnd(S)}function A(L,S){let E=L.toString();if(E.length<=S)return E;let b=L.toFixed(S);if(b.length>S&&(b=L.toFixed(Math.max(0,S-(b.length-S)))),b.length<=S&&!b.startsWith("0.000")&&!b.startsWith("-0.000"))return b;let C=L.toExponential(S);return C.length>S&&(C=L.toExponential(Math.max(0,S-(C.length-S)))),C.slice(0)}function l(L,S){L.prototype.add=function(b){return typeof b=="number"?this.addS(b):this.addM(b)},L.prototype.addS=function(b){for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)+b);return this},L.prototype.addM=function(b){if(b=S.checkMatrix(b),this.rows!==b.rows||this.columns!==b.columns)throw new RangeError("Matrices dimensions must be equal");for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)+b.get(C,M));return this},L.add=function(b,C){return new S(b).add(C)},L.prototype.sub=function(b){return typeof b=="number"?this.subS(b):this.subM(b)},L.prototype.subS=function(b){for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)-b);return this},L.prototype.subM=function(b){if(b=S.checkMatrix(b),this.rows!==b.rows||this.columns!==b.columns)throw new RangeError("Matrices dimensions must be equal");for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)-b.get(C,M));return this},L.sub=function(b,C){return new S(b).sub(C)},L.prototype.subtract=L.prototype.sub,L.prototype.subtractS=L.prototype.subS,L.prototype.subtractM=L.prototype.subM,L.subtract=L.sub,L.prototype.mul=function(b){return typeof b=="number"?this.mulS(b):this.mulM(b)},L.prototype.mulS=function(b){for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)*b);return this},L.prototype.mulM=function(b){if(b=S.checkMatrix(b),this.rows!==b.rows||this.columns!==b.columns)throw new RangeError("Matrices dimensions must be equal");for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)*b.get(C,M));return this},L.mul=function(b,C){return new S(b).mul(C)},L.prototype.multiply=L.prototype.mul,L.prototype.multiplyS=L.prototype.mulS,L.prototype.multiplyM=L.prototype.mulM,L.multiply=L.mul,L.prototype.div=function(b){return typeof b=="number"?this.divS(b):this.divM(b)},L.prototype.divS=function(b){for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)/b);return this},L.prototype.divM=function(b){if(b=S.checkMatrix(b),this.rows!==b.rows||this.columns!==b.columns)throw new RangeError("Matrices dimensions must be equal");for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)/b.get(C,M));return this},L.div=function(b,C){return new S(b).div(C)},L.prototype.divide=L.prototype.div,L.prototype.divideS=L.prototype.divS,L.prototype.divideM=L.prototype.divM,L.divide=L.div,L.prototype.mod=function(b){return typeof b=="number"?this.modS(b):this.modM(b)},L.prototype.modS=function(b){for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)%b);return this},L.prototype.modM=function(b){if(b=S.checkMatrix(b),this.rows!==b.rows||this.columns!==b.columns)throw new RangeError("Matrices dimensions must be equal");for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)%b.get(C,M));return this},L.mod=function(b,C){return new S(b).mod(C)},L.prototype.modulus=L.prototype.mod,L.prototype.modulusS=L.prototype.modS,L.prototype.modulusM=L.prototype.modM,L.modulus=L.mod,L.prototype.and=function(b){return typeof b=="number"?this.andS(b):this.andM(b)},L.prototype.andS=function(b){for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)&b);return this},L.prototype.andM=function(b){if(b=S.checkMatrix(b),this.rows!==b.rows||this.columns!==b.columns)throw new RangeError("Matrices dimensions must be equal");for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)&b.get(C,M));return this},L.and=function(b,C){return new S(b).and(C)},L.prototype.or=function(b){return typeof b=="number"?this.orS(b):this.orM(b)},L.prototype.orS=function(b){for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)|b);return this},L.prototype.orM=function(b){if(b=S.checkMatrix(b),this.rows!==b.rows||this.columns!==b.columns)throw new RangeError("Matrices dimensions must be equal");for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)|b.get(C,M));return this},L.or=function(b,C){return new S(b).or(C)},L.prototype.xor=function(b){return typeof b=="number"?this.xorS(b):this.xorM(b)},L.prototype.xorS=function(b){for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)^b);return this},L.prototype.xorM=function(b){if(b=S.checkMatrix(b),this.rows!==b.rows||this.columns!==b.columns)throw new RangeError("Matrices dimensions must be equal");for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)^b.get(C,M));return this},L.xor=function(b,C){return new S(b).xor(C)},L.prototype.leftShift=function(b){return typeof b=="number"?this.leftShiftS(b):this.leftShiftM(b)},L.prototype.leftShiftS=function(b){for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)<<b);return this},L.prototype.leftShiftM=function(b){if(b=S.checkMatrix(b),this.rows!==b.rows||this.columns!==b.columns)throw new RangeError("Matrices dimensions must be equal");for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)<<b.get(C,M));return this},L.leftShift=function(b,C){return new S(b).leftShift(C)},L.prototype.signPropagatingRightShift=function(b){return typeof b=="number"?this.signPropagatingRightShiftS(b):this.signPropagatingRightShiftM(b)},L.prototype.signPropagatingRightShiftS=function(b){for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)>>b);return this},L.prototype.signPropagatingRightShiftM=function(b){if(b=S.checkMatrix(b),this.rows!==b.rows||this.columns!==b.columns)throw new RangeError("Matrices dimensions must be equal");for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)>>b.get(C,M));return this},L.signPropagatingRightShift=function(b,C){return new S(b).signPropagatingRightShift(C)},L.prototype.rightShift=function(b){return typeof b=="number"?this.rightShiftS(b):this.rightShiftM(b)},L.prototype.rightShiftS=function(b){for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)>>>b);return this},L.prototype.rightShiftM=function(b){if(b=S.checkMatrix(b),this.rows!==b.rows||this.columns!==b.columns)throw new RangeError("Matrices dimensions must be equal");for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)>>>b.get(C,M));return this},L.rightShift=function(b,C){return new S(b).rightShift(C)},L.prototype.zeroFillRightShift=L.prototype.rightShift,L.prototype.zeroFillRightShiftS=L.prototype.rightShiftS,L.prototype.zeroFillRightShiftM=L.prototype.rightShiftM,L.zeroFillRightShift=L.rightShift,L.prototype.not=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,~this.get(b,C));return this},L.not=function(b){return new S(b).not()},L.prototype.abs=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.abs(this.get(b,C)));return this},L.abs=function(b){return new S(b).abs()},L.prototype.acos=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.acos(this.get(b,C)));return this},L.acos=function(b){return new S(b).acos()},L.prototype.acosh=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.acosh(this.get(b,C)));return this},L.acosh=function(b){return new S(b).acosh()},L.prototype.asin=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.asin(this.get(b,C)));return this},L.asin=function(b){return new S(b).asin()},L.prototype.asinh=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.asinh(this.get(b,C)));return this},L.asinh=function(b){return new S(b).asinh()},L.prototype.atan=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.atan(this.get(b,C)));return this},L.atan=function(b){return new S(b).atan()},L.prototype.atanh=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.atanh(this.get(b,C)));return this},L.atanh=function(b){return new S(b).atanh()},L.prototype.cbrt=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.cbrt(this.get(b,C)));return this},L.cbrt=function(b){return new S(b).cbrt()},L.prototype.ceil=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.ceil(this.get(b,C)));return this},L.ceil=function(b){return new S(b).ceil()},L.prototype.clz32=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.clz32(this.get(b,C)));return this},L.clz32=function(b){return new S(b).clz32()},L.prototype.cos=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.cos(this.get(b,C)));return this},L.cos=function(b){return new S(b).cos()},L.prototype.cosh=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.cosh(this.get(b,C)));return this},L.cosh=function(b){return new S(b).cosh()},L.prototype.exp=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.exp(this.get(b,C)));return this},L.exp=function(b){return new S(b).exp()},L.prototype.expm1=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.expm1(this.get(b,C)));return this},L.expm1=function(b){return new S(b).expm1()},L.prototype.floor=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.floor(this.get(b,C)));return this},L.floor=function(b){return new S(b).floor()},L.prototype.fround=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.fround(this.get(b,C)));return this},L.fround=function(b){return new S(b).fround()},L.prototype.log=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.log(this.get(b,C)));return this},L.log=function(b){return new S(b).log()},L.prototype.log1p=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.log1p(this.get(b,C)));return this},L.log1p=function(b){return new S(b).log1p()},L.prototype.log10=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.log10(this.get(b,C)));return this},L.log10=function(b){return new S(b).log10()},L.prototype.log2=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.log2(this.get(b,C)));return this},L.log2=function(b){return new S(b).log2()},L.prototype.round=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.round(this.get(b,C)));return this},L.round=function(b){return new S(b).round()},L.prototype.sign=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.sign(this.get(b,C)));return this},L.sign=function(b){return new S(b).sign()},L.prototype.sin=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.sin(this.get(b,C)));return this},L.sin=function(b){return new S(b).sin()},L.prototype.sinh=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.sinh(this.get(b,C)));return this},L.sinh=function(b){return new S(b).sinh()},L.prototype.sqrt=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.sqrt(this.get(b,C)));return this},L.sqrt=function(b){return new S(b).sqrt()},L.prototype.tan=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.tan(this.get(b,C)));return this},L.tan=function(b){return new S(b).tan()},L.prototype.tanh=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.tanh(this.get(b,C)));return this},L.tanh=function(b){return new S(b).tanh()},L.prototype.trunc=function(){for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.set(b,C,Math.trunc(this.get(b,C)));return this},L.trunc=function(b){return new S(b).trunc()},L.pow=function(b,C){return new S(b).pow(C)},L.prototype.pow=function(b){return typeof b=="number"?this.powS(b):this.powM(b)},L.prototype.powS=function(b){for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)**b);return this},L.prototype.powM=function(b){if(b=S.checkMatrix(b),this.rows!==b.rows||this.columns!==b.columns)throw new RangeError("Matrices dimensions must be equal");for(let C=0;C<this.rows;C++)for(let M=0;M<this.columns;M++)this.set(C,M,this.get(C,M)**b.get(C,M));return this}}function u(L,S,E){let b=E?L.rows:L.rows-1;if(S<0||S>b)throw new RangeError("Row index out of range")}function c(L,S,E){let b=E?L.columns:L.columns-1;if(S<0||S>b)throw new RangeError("Column index out of range")}function d(L,S){if(S.to1DArray&&(S=S.to1DArray()),S.length!==L.columns)throw new RangeError("vector size must be the same as the number of columns");return S}function h(L,S){if(S.to1DArray&&(S=S.to1DArray()),S.length!==L.rows)throw new RangeError("vector size must be the same as the number of rows");return S}function f(L,S){if(!r.isAnyArray(S))throw new TypeError("row indices must be an array");for(let E=0;E<S.length;E++)if(S[E]<0||S[E]>=L.rows)throw new RangeError("row indices are out of range")}function p(L,S){if(!r.isAnyArray(S))throw new TypeError("column indices must be an array");for(let E=0;E<S.length;E++)if(S[E]<0||S[E]>=L.columns)throw new RangeError("column indices are out of range")}function g(L,S,E,b,C){if(arguments.length!==5)throw new RangeError("expected 4 arguments");if(m("startRow",S),m("endRow",E),m("startColumn",b),m("endColumn",C),S>E||b>C||S<0||S>=L.rows||E<0||E>=L.rows||b<0||b>=L.columns||C<0||C>=L.columns)throw new RangeError("Submatrix indices are out of range")}function v(L,S=0){let E=[];for(let b=0;b<L;b++)E.push(S);return E}function m(L,S){if(typeof S!="number")throw new TypeError(`${L} must be a number`)}function y(L){if(L.isEmpty())throw new Error("Empty matrix has no elements to index")}function w(L){let S=v(L.rows);for(let E=0;E<L.rows;++E)for(let b=0;b<L.columns;++b)S[E]+=L.get(E,b);return S}function B(L){let S=v(L.columns);for(let E=0;E<L.rows;++E)for(let b=0;b<L.columns;++b)S[b]+=L.get(E,b);return S}function x(L){let S=0;for(let E=0;E<L.rows;E++)for(let b=0;b<L.columns;b++)S+=L.get(E,b);return S}function k(L){let S=v(L.rows,1);for(let E=0;E<L.rows;++E)for(let b=0;b<L.columns;++b)S[E]*=L.get(E,b);return S}function _(L){let S=v(L.columns,1);for(let E=0;E<L.rows;++E)for(let b=0;b<L.columns;++b)S[b]*=L.get(E,b);return S}function T(L){let S=1;for(let E=0;E<L.rows;E++)for(let b=0;b<L.columns;b++)S*=L.get(E,b);return S}function F(L,S,E){const b=L.rows,C=L.columns,M=[];for(let Q=0;Q<b;Q++){let $=0,j=0,q=0;for(let ge=0;ge<C;ge++)q=L.get(Q,ge)-E[Q],$+=q,j+=q*q;S?M.push((j-$*$/C)/(C-1)):M.push((j-$*$/C)/C)}return M}function I(L,S,E){const b=L.rows,C=L.columns,M=[];for(let Q=0;Q<C;Q++){let $=0,j=0,q=0;for(let ge=0;ge<b;ge++)q=L.get(ge,Q)-E[Q],$+=q,j+=q*q;S?M.push((j-$*$/b)/(b-1)):M.push((j-$*$/b)/b)}return M}function O(L,S,E){const b=L.rows,C=L.columns,M=b*C;let Q=0,$=0,j=0;for(let q=0;q<b;q++)for(let ge=0;ge<C;ge++)j=L.get(q,ge)-E,Q+=j,$+=j*j;return S?($-Q*Q/M)/(M-1):($-Q*Q/M)/M}function P(L,S){for(let E=0;E<L.rows;E++)for(let b=0;b<L.columns;b++)L.set(E,b,L.get(E,b)-S[E])}function G(L,S){for(let E=0;E<L.rows;E++)for(let b=0;b<L.columns;b++)L.set(E,b,L.get(E,b)-S[b])}function ee(L,S){for(let E=0;E<L.rows;E++)for(let b=0;b<L.columns;b++)L.set(E,b,L.get(E,b)-S)}function te(L){const S=[];for(let E=0;E<L.rows;E++){let b=0;for(let C=0;C<L.columns;C++)b+=L.get(E,C)**2/(L.columns-1);S.push(Math.sqrt(b))}return S}function N(L,S){for(let E=0;E<L.rows;E++)for(let b=0;b<L.columns;b++)L.set(E,b,L.get(E,b)/S[E])}function K(L){const S=[];for(let E=0;E<L.columns;E++){let b=0;for(let C=0;C<L.rows;C++)b+=L.get(C,E)**2/(L.rows-1);S.push(Math.sqrt(b))}return S}function J(L,S){for(let E=0;E<L.rows;E++)for(let b=0;b<L.columns;b++)L.set(E,b,L.get(E,b)/S[b])}function be(L){const S=L.size-1;let E=0;for(let b=0;b<L.columns;b++)for(let C=0;C<L.rows;C++)E+=L.get(C,b)**2/S;return Math.sqrt(E)}function re(L,S){for(let E=0;E<L.rows;E++)for(let b=0;b<L.columns;b++)L.set(E,b,L.get(E,b)/S)}class ne{static from1DArray(S,E,b){if(S*E!==b.length)throw new RangeError("data length does not match given dimensions");let M=new U(S,E);for(let Q=0;Q<S;Q++)for(let $=0;$<E;$++)M.set(Q,$,b[Q*E+$]);return M}static rowVector(S){let E=new U(1,S.length);for(let b=0;b<S.length;b++)E.set(0,b,S[b]);return E}static columnVector(S){let E=new U(S.length,1);for(let b=0;b<S.length;b++)E.set(b,0,S[b]);return E}static zeros(S,E){return new U(S,E)}static ones(S,E){return new U(S,E).fill(1)}static rand(S,E,b={}){if(typeof b!="object")throw new TypeError("options must be an object");const{random:C=Math.random}=b;let M=new U(S,E);for(let Q=0;Q<S;Q++)for(let $=0;$<E;$++)M.set(Q,$,C());return M}static randInt(S,E,b={}){if(typeof b!="object")throw new TypeError("options must be an object");const{min:C=0,max:M=1e3,random:Q=Math.random}=b;if(!Number.isInteger(C))throw new TypeError("min must be an integer");if(!Number.isInteger(M))throw new TypeError("max must be an integer");if(C>=M)throw new RangeError("min must be smaller than max");let $=M-C,j=new U(S,E);for(let q=0;q<S;q++)for(let ge=0;ge<E;ge++){let se=C+Math.round(Q()*$);j.set(q,ge,se)}return j}static eye(S,E,b){E===void 0&&(E=S),b===void 0&&(b=1);let C=Math.min(S,E),M=this.zeros(S,E);for(let Q=0;Q<C;Q++)M.set(Q,Q,b);return M}static diag(S,E,b){let C=S.length;E===void 0&&(E=C),b===void 0&&(b=E);let M=Math.min(C,E,b),Q=this.zeros(E,b);for(let $=0;$<M;$++)Q.set($,$,S[$]);return Q}static min(S,E){S=this.checkMatrix(S),E=this.checkMatrix(E);let b=S.rows,C=S.columns,M=new U(b,C);for(let Q=0;Q<b;Q++)for(let $=0;$<C;$++)M.set(Q,$,Math.min(S.get(Q,$),E.get(Q,$)));return M}static max(S,E){S=this.checkMatrix(S),E=this.checkMatrix(E);let b=S.rows,C=S.columns,M=new this(b,C);for(let Q=0;Q<b;Q++)for(let $=0;$<C;$++)M.set(Q,$,Math.max(S.get(Q,$),E.get(Q,$)));return M}static checkMatrix(S){return ne.isMatrix(S)?S:new U(S)}static isMatrix(S){return S!=null&&S.klass==="Matrix"}get size(){return this.rows*this.columns}apply(S){if(typeof S!="function")throw new TypeError("callback must be a function");for(let E=0;E<this.rows;E++)for(let b=0;b<this.columns;b++)S.call(this,E,b);return this}to1DArray(){let S=[];for(let E=0;E<this.rows;E++)for(let b=0;b<this.columns;b++)S.push(this.get(E,b));return S}to2DArray(){let S=[];for(let E=0;E<this.rows;E++){S.push([]);for(let b=0;b<this.columns;b++)S[E].push(this.get(E,b))}return S}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 S=0;S<this.rows;S++)for(let E=0;E<=S;E++)if(this.get(S,E)!==this.get(E,S))return!1;return!0}return!1}isDistance(){if(!this.isSymmetric())return!1;for(let S=0;S<this.rows;S++)if(this.get(S,S)!==0)return!1;return!0}isEchelonForm(){let S=0,E=0,b=-1,C=!0,M=!1;for(;S<this.rows&&C;){for(E=0,M=!1;E<this.columns&&M===!1;)this.get(S,E)===0?E++:this.get(S,E)===1&&E>b?(M=!0,b=E):(C=!1,M=!0);S++}return C}isReducedEchelonForm(){let S=0,E=0,b=-1,C=!0,M=!1;for(;S<this.rows&&C;){for(E=0,M=!1;E<this.columns&&M===!1;)this.get(S,E)===0?E++:this.get(S,E)===1&&E>b?(M=!0,b=E):(C=!1,M=!0);for(let Q=E+1;Q<this.rows;Q++)this.get(S,Q)!==0&&(C=!1);S++}return C}echelonForm(){let S=this.clone(),E=0,b=0;for(;E<S.rows&&b<S.columns;){let C=E;for(let M=E;M<S.rows;M++)S.get(M,b)>S.get(C,b)&&(C=M);if(S.get(C,b)===0)b++;else{S.swapRows(E,C);let M=S.get(E,b);for(let Q=b;Q<S.columns;Q++)S.set(E,Q,S.get(E,Q)/M);for(let Q=E+1;Q<S.rows;Q++){let $=S.get(Q,b)/S.get(E,b);S.set(Q,b,0);for(let j=b+1;j<S.columns;j++)S.set(Q,j,S.get(Q,j)-S.get(E,j)*$)}E++,b++}}return S}reducedEchelonForm(){let S=this.echelonForm(),E=S.columns,b=S.rows,C=b-1;for(;C>=0;)if(S.maxRow(C)===0)C--;else{let M=0,Q=!1;for(;M<b&&Q===!1;)S.get(C,M)===1?Q=!0:M++;for(let $=0;$<C;$++){let j=S.get($,M);for(let q=M;q<E;q++){let ge=S.get($,q)-j*S.get(C,q);S.set($,q,ge)}}C--}return S}set(){throw new Error("set method is unimplemented")}get(){throw new Error("get method is unimplemented")}repeat(S={}){if(typeof S!="object")throw new TypeError("options must be an object");const{rows:E=1,columns:b=1}=S;if(!Number.isInteger(E)||E<=0)throw new TypeError("rows must be a positive integer");if(!Number.isInteger(b)||b<=0)throw new TypeError("columns must be a positive integer");let C=new U(this.rows*E,this.columns*b);for(let M=0;M<E;M++)for(let Q=0;Q<b;Q++)C.setSubMatrix(this,this.rows*M,this.columns*Q);return C}fill(S){for(let E=0;E<this.rows;E++)for(let b=0;b<this.columns;b++)this.set(E,b,S);return this}neg(){return this.mulS(-1)}getRow(S){u(this,S);let E=[];for(let b=0;b<this.columns;b++)E.push(this.get(S,b));return E}getRowVector(S){return U.rowVector(this.getRow(S))}setRow(S,E){u(this,S),E=d(this,E);for(let b=0;b<this.columns;b++)this.set(S,b,E[b]);return this}swapRows(S,E){u(this,S),u(this,E);for(let b=0;b<this.columns;b++){let C=this.get(S,b);this.set(S,b,this.get(E,b)),this.set(E,b,C)}return this}getColumn(S){c(this,S);let E=[];for(let b=0;b<this.rows;b++)E.push(this.get(b,S));return E}getColumnVector(S){return U.columnVector(this.getColumn(S))}setColumn(S,E){c(this,S),E=h(this,E);for(let b=0;b<this.rows;b++)this.set(b,S,E[b]);return this}swapColumns(S,E){c(this,S),c(this,E);for(let b=0;b<this.rows;b++){let C=this.get(b,S);this.set(b,S,this.get(b,E)),this.set(b,E,C)}return this}addRowVector(S){S=d(this,S);for(let E=0;E<this.rows;E++)for(let b=0;b<this.columns;b++)this.set(E,b,this.get(E,b)+S[b]);return this}subRowVector(S){S=d(this,S);for(let E=0;E<this.rows;E++)for(let b=0;b<this.columns;b++)this.set(E,b,this.get(E,b)-S[b]);return this}mulRowVector(S){S=d(this,S);for(let E=0;E<this.rows;E++)for(let b=0;b<this.columns;b++)this.set(E,b,this.get(E,b)*S[b]);return this}divRowVector(S){S=d(this,S);for(let E=0;E<this.rows;E++)for(let b=0;b<this.columns;b++)this.set(E,b,this.get(E,b)/S[b]);return this}addColumnVector(S){S=h(this,S);for(let E=0;E<this.rows;E++)for(let b=0;b<this.columns;b++)this.set(E,b,this.get(E,b)+S[E]);return this}subColumnVector(S){S=h(this,S);for(let E=0;E<this.rows;E++)for(let b=0;b<this.columns;b++)this.set(E,b,this.get(E,b)-S[E]);return this}mulColumnVector(S){S=h(this,S);for(let E=0;E<this.rows;E++)for(let b=0;b<this.columns;b++)this.set(E,b,this.get(E,b)*S[E]);return this}divColumnVector(S){S=h(this,S);for(let E=0;E<this.rows;E++)for(let b=0;b<this.columns;b++)this.set(E,b,this.get(E,b)/S[E]);return this}mulRow(S,E){u(this,S);for(let b=0;b<this.columns;b++)this.set(S,b,this.get(S,b)*E);return this}mulColumn(S,E){c(this,S);for(let b=0;b<this.rows;b++)this.set(b,S,this.get(b,S)*E);return this}max(S){if(this.isEmpty())return NaN;switch(S){case"row":{const E=new Array(this.rows).fill(Number.NEGATIVE_INFINITY);for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.get(b,C)>E[b]&&(E[b]=this.get(b,C));return E}case"column":{const E=new Array(this.columns).fill(Number.NEGATIVE_INFINITY);for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.get(b,C)>E[C]&&(E[C]=this.get(b,C));return E}case void 0:{let E=this.get(0,0);for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.get(b,C)>E&&(E=this.get(b,C));return E}default:throw new Error(`invalid option: ${S}`)}}maxIndex(){y(this);let S=this.get(0,0),E=[0,0];for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.get(b,C)>S&&(S=this.get(b,C),E[0]=b,E[1]=C);return E}min(S){if(this.isEmpty())return NaN;switch(S){case"row":{const E=new Array(this.rows).fill(Number.POSITIVE_INFINITY);for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.get(b,C)<E[b]&&(E[b]=this.get(b,C));return E}case"column":{const E=new Array(this.columns).fill(Number.POSITIVE_INFINITY);for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.get(b,C)<E[C]&&(E[C]=this.get(b,C));return E}case void 0:{let E=this.get(0,0);for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.get(b,C)<E&&(E=this.get(b,C));return E}default:throw new Error(`invalid option: ${S}`)}}minIndex(){y(this);let S=this.get(0,0),E=[0,0];for(let b=0;b<this.rows;b++)for(let C=0;C<this.columns;C++)this.get(b,C)<S&&(S=this.get(b,C),E[0]=b,E[1]=C);return E}maxRow(S){if(u(this,S),this.isEmpty())return NaN;let E=this.get(S,0);for(let b=1;b<this.columns;b++)this.get(S,b)>E&&(E=this.get(S,b));return E}maxRowIndex(S){u(this,S),y(this);let E=this.get(S,0),b=[S,0];for(let C=1;C<this.columns;C++)this.get(S,C)>E&&(E=this.get(S,C),b[1]=C);return b}minRow(S){if(u(this,S),this.isEmpty())return NaN;let E=this.get(S,0);for(let b=1;b<this.columns;b++)this.get(S,b)<E&&(E=this.get(S,b));return E}minRowIndex(S){u(this,S),y(this);let E=this.get(S,0),b=[S,0];for(let C=1;C<this.columns;C++)this.get(S,C)<E&&(E=this.get(S,C),b[1]=C);return b}maxColumn(S){if(c(this,S),this.isEmpty())return NaN;let E=this.get(0,S);for(let b=1;b<this.rows;b++)this.get(b,S)>E&&(E=this.get(b,S));return E}maxColumnIndex(S){c(this,S),y(this);let E=this.get(0,S),b=[0,S];for(let C=1;C<this.rows;C++)this.get(C,S)>E&&(E=this.get(C,S),b[0]=C);return b}minColumn(S){if(c(this,S),this.isEmpty())return NaN;let E=this.get(0,S);for(let b=1;b<this.rows;b++)this.get(b,S)<E&&(E=this.get(b,S));return E}minColumnIndex(S){c(this,S),y(this);let E=this.get(0,S),b=[0,S];for(let C=1;C<this.rows;C++)this.get(C,S)<E&&(E=this.get(C,S),b[0]=C);return b}diag(){let S=Math.min(this.rows,this.columns),E=[];for(let b=0;b<S;b++)E.push(this.get(b,b));return E}norm(S="frobenius"){switch(S){case"max":return this.max();case"frobenius":return Math.sqrt(this.dot(this));default:throw new RangeError(`unknown norm type: ${S}`)}}cumulativeSum(){let S=0;for(let E=0;E<this.rows;E++)for(let b=0;b<this.columns;b++)S+=this.get(E,b),this.set(E,b,S);return this}dot(S){ne.isMatrix(S)&&(S=S.to1DArray());let E=this.to1DArray();if(E.length!==S.length)throw new RangeError("vectors do not have the same size");let b=0;for(let C=0;C<E.length;C++)b+=E[C]*S[C];return b}mmul(S){S=U.checkMatrix(S);let E=this.rows,b=this.columns,C=S.columns,M=new U(E,C),Q=new Float64Array(b);for(let $=0;$<C;$++){for(let j=0;j<b;j++)Q[j]=S.get(j,$);for(let j=0;j<E;j++){let q=0;for(let ge=0;ge<b;ge++)q+=this.get(j,ge)*Q[ge];M.set(j,$,q)}}return M}mpow(S){if(!this.isSquare())throw new RangeError("Matrix must be square");if(!Number.isInteger(S)||S<0)throw new RangeError("Exponent must be a non-negative integer");let E=U.eye(this.rows),b=this;for(let C=S;C>=1;C/=2)(C&1)!==0&&(E=E.mmul(b)),b=b.mmul(b);return E}strassen2x2(S){S=U.checkMatrix(S);let E=new U(2,2);const b=this.get(0,0),C=S.get(0,0),M=this.get(0,1),Q=S.get(0,1),$=this.get(1,0),j=S.get(1,0),q=this.get(1,1),ge=S.get(1,1),se=(b+q)*(C+ge),Ce=($+q)*C,je=b*(Q-ge),Be=q*(j-C),Le=(b+M)*ge,Ze=($-b)*(C+Q),le=(M-q)*(j+ge),Ve=se+Be-Le+le,tt=je+Le,yt=Ce+Be,Ct=se-Ce+je+Ze;return E.set(0,0,Ve),E.set(0,1,tt),E.set(1,0,yt),E.set(1,1,Ct),E}strassen3x3(S){S=U.checkMatrix(S);let E=new U(3,3);const b=this.get(0,0),C=this.get(0,1),M=this.get(0,2),Q=this.get(1,0),$=this.get(1,1),j=this.get(1,2),q=this.get(2,0),ge=this.get(2,1),se=this.get(2,2),Ce=S.get(0,0),je=S.get(0,1),Be=S.get(0,2),Le=S.get(1,0),Ze=S.get(1,1),le=S.get(1,2),Ve=S.get(2,0),tt=S.get(2,1),yt=S.get(2,2),Ct=(b+C+M-Q-$-ge-se)*Ze,Sn=(b-Q)*(-je+Ze),ht=$*(-Ce+je+Le-Ze-le-Ve+yt),ft=(-b+Q+$)*(Ce-je+Ze),fn=(Q+$)*(-Ce+je),fe=b*Ce,$e=(-b+q+ge)*(Ce-Be+le),Je=(-b+q)*(Be-le),ze=(q+ge)*(-Ce+Be),_n=(b+C+M-$-j-q-ge)*le,sn=ge*(-Ce+Be+Le-Ze-le-Ve+tt),mn=(-M+ge+se)*(Ze+Ve-tt),rn=(M-se)*(Ze-tt),Br=M*Ve,Hr=(ge+se)*(-Ve+tt),Xn=(-M+$+j)*(le+Ve-yt),Qi=(M-j)*(le-yt),ea=($+j)*(-Ve+yt),zt=C*Le,Er=j*tt,hi=Q*Be,Zr=q*je,tr=se*yt,Op=fe+Br+zt,Lp=Ct+ft+fn+fe+mn+Br+Hr,Np=fe+$e+ze+_n+Br+Xn+ea,Pp=Sn+ht+ft+fe+Br+Xn+Qi,Up=Sn+ft+fn+fe+Er,Rp=Br+Xn+Qi+ea+hi,Gc=fe+$e+Je+sn+mn+rn+Br,zc=mn+rn+Br+Hr+Zr,he=fe+$e+Je+ze+tr;return E.set(0,0,Op),E.set(0,1,Lp),E.set(0,2,Np),E.set(1,0,Pp),E.set(1,1,Up),E.set(1,2,Rp),E.set(2,0,Gc),E.set(2,1,zc),E.set(2,2,he),E}mmulStrassen(S){S=U.checkMatrix(S);let E=this.clone(),b=E.rows,C=E.columns,M=S.rows,Q=S.columns;C!==M&&console.warn(`Multiplying ${b} x ${C} and ${M} x ${Q} matrix: dimensions do not match.`);function $(se,Ce,je){let Be=se.rows,Le=se.columns;if(Be===Ce&&Le===je)return se;{let Ze=ne.zeros(Ce,je);return Ze=Ze.setSubMatrix(se,0,0),Ze}}let j=Math.max(b,M),q=Math.max(C,Q);E=$(E,j,q),S=$(S,j,q);function ge(se,Ce,je,Be){if(je<=512||Be<=512)return se.mmul(Ce);je%2===1&&Be%2===1?(se=$(se,je+1,Be+1),Ce=$(Ce,je+1,Be+1)):je%2===1?(se=$(se,je+1,Be),Ce=$(Ce,je+1,Be)):Be%2===1&&(se=$(se,je,Be+1),Ce=$(Ce,je,Be+1));let Le=parseInt(se.rows/2,10),Ze=parseInt(se.columns/2,10),le=se.subMatrix(0,Le-1,0,Ze-1),Ve=Ce.subMatrix(0,Le-1,0,Ze-1),tt=se.subMatrix(0,Le-1,Ze,se.columns-1),yt=Ce.subMatrix(0,Le-1,Ze,Ce.columns-1),Ct=se.subMatrix(Le,se.rows-1,0,Ze-1),Sn=Ce.subMatrix(Le,Ce.rows-1,0,Ze-1),ht=se.subMatrix(Le,se.rows-1,Ze,se.columns-1),ft=Ce.subMatrix(Le,Ce.rows-1,Ze,Ce.columns-1),fn=ge(ne.add(le,ht),ne.add(Ve,ft),Le,Ze),fe=ge(ne.add(Ct,ht),Ve,Le,Ze),$e=ge(le,ne.sub(yt,ft),Le,Ze),Je=ge(ht,ne.sub(Sn,Ve),Le,Ze),ze=ge(ne.add(le,tt),ft,Le,Ze),_n=ge(ne.sub(Ct,le),ne.add(Ve,yt),Le,Ze),sn=ge(ne.sub(tt,ht),ne.add(Sn,ft),Le,Ze),mn=ne.add(fn,Je);mn.sub(ze),mn.add(sn);let rn=ne.add($e,ze),Br=ne.add(fe,Je),Hr=ne.sub(fn,fe);Hr.add($e),Hr.add(_n);let Xn=ne.zeros(2*mn.rows,2*mn.columns);return Xn=Xn.setSubMatrix(mn,0,0),Xn=Xn.setSubMatrix(rn,mn.rows,0),Xn=Xn.setSubMatrix(Br,0,mn.columns),Xn=Xn.setSubMatrix(Hr,mn.rows,mn.columns),Xn.subMatrix(0,je-1,0,Be-1)}return ge(E,S,j,q)}scaleRows(S={}){if(typeof S!="object")throw new TypeError("options must be an object");const{min:E=0,max:b=1}=S;if(!Number.isFinite(E))throw new TypeError("min must be a number");if(!Number.isFinite(b))throw new TypeError("max must be a number");if(E>=b)throw new RangeError("min must be smaller than max");let C=new U(this.rows,this.columns);for(let M=0;M<this.rows;M++){const Q=this.getRow(M);Q.length>0&&e(Q,{min:E,max:b,output:Q}),C.setRow(M,Q)}return C}scaleColumns(S={}){if(typeof S!="object")throw new TypeError("options must be an object");const{min:E=0,max:b=1}=S;if(!Number.isFinite(E))throw new TypeError("min must be a number");if(!Number.isFinite(b))throw new TypeError("max must be a number");if(E>=b)throw new RangeError("min must be smaller than max");let C=new U(this.rows,this.columns);for(let M=0;M<this.columns;M++){const Q=this.getColumn(M);Q.length&&e(Q,{min:E,max:b,output:Q}),C.setColumn(M,Q)}return C}flipRows(){const S=Math.ceil(this.columns/2);for(let E=0;E<this.rows;E++)for(let b=0;b<S;b++){let C=this.get(E,b),M=this.get(E,this.columns-1-b);this.set(E,b,M),this.set(E,this.columns-1-b,C)}return this}flipColumns(){const S=Math.ceil(this.rows/2);for(let E=0;E<this.columns;E++)for(let b=0;b<S;b++){let C=this.get(b,E),M=this.get(this.rows-1-b,E);this.set(b,E,M),this.set(this.rows-1-b,E,C)}return this}kroneckerProduct(S){S=U.checkMatrix(S);let E=this.rows,b=this.columns,C=S.rows,M=S.columns,Q=new U(E*C,b*M);for(let $=0;$<E;$++)for(let j=0;j<b;j++)for(let q=0;q<C;q++)for(let ge=0;ge<M;ge++)Q.set(C*$+q,M*j+ge,this.get($,j)*S.get(q,ge));return Q}kroneckerSum(S){if(S=U.checkMatrix(S),!this.isSquare()||!S.isSquare())throw new Error("Kronecker Sum needs two Square Matrices");let E=this.rows,b=S.rows,C=this.kroneckerProduct(U.eye(b,b)),M=U.eye(E,E).kroneckerProduct(S);return C.add(M)}transpose(){let S=new U(this.columns,this.rows);for(let E=0;E<this.rows;E++)for(let b=0;b<this.columns;b++)S.set(b,E,this.get(E,b));return S}sortRows(S=ue){for(let E=0;E<this.rows;E++)this.setRow(E,this.getRow(E).sort(S));return this}sortColumns(S=ue){for(let E=0;E<this.columns;E++)this.setColumn(E,this.getColumn(E).sort(S));return this}subMatrix(S,E,b,C){g(this,S,E,b,C);let M=new U(E-S+1,C-b+1);for(let Q=S;Q<=E;Q++)for(let $=b;$<=C;$++)M.set(Q-S,$-b,this.get(Q,$));return M}subMatrixRow(S,E,b){if(E===void 0&&(E=0),b===void 0&&(b=this.columns-1),E>b||E<0||E>=this.columns||b<0||b>=this.columns)throw new RangeError("Argument out of range");let C=new U(S.length,b-E+1);for(let M=0;M<S.length;M++)for(let Q=E;Q<=b;Q++){if(S[M]<0||S[M]>=this.rows)throw new RangeError(`Row index out of range: ${S[M]}`);C.set(M,Q-E,this.get(S[M],Q))}return C}subMatrixColumn(S,E,b){if(E===void 0&&(E=0),b===void 0&&(b=this.rows-1),E>b||E<0||E>=this.rows||b<0||b>=this.rows)throw new RangeError("Argument out of range");let C=new U(b-E+1,S.length);for(let M=0;M<S.length;M++)for(let Q=E;Q<=b;Q++){if(S[M]<0||S[M]>=this.columns)throw new RangeError(`Column index out of range: ${S[M]}`);C.set(Q-E,M,this.get(Q,S[M]))}return C}setSubMatrix(S,E,b){if(S=U.checkMatrix(S),S.isEmpty())return this;let C=E+S.rows-1,M=b+S.columns-1;g(this,E,C,b,M);for(let Q=0;Q<S.rows;Q++)for(let $=0;$<S.columns;$++)this.set(E+Q,b+$,S.get(Q,$));return this}selection(S,E){f(this,S),p(this,E);let b=new U(S.length,E.length);for(let C=0;C<S.length;C++){let M=S[C];for(let Q=0;Q<E.length;Q++){let $=E[Q];b.set(C,Q,this.get(M,$))}}return b}trace(){let S=Math.min(this.rows,this.columns),E=0;for(let b=0;b<S;b++)E+=this.get(b,b);return E}clone(){return this.constructor.copy(this,new U(this.rows,this.columns))}static copy(S,E){for(const[b,C,M]of S.entries())E.set(b,C,M);return E}sum(S){switch(S){case"row":return w(this);case"column":return B(this);case void 0:return x(this);default:throw new Error(`invalid option: ${S}`)}}product(S){switch(S){case"row":return k(this);case"column":return _(this);case void 0:return T(this);default:throw new Error(`invalid option: ${S}`)}}mean(S){const E=this.sum(S);switch(S){case"row":{for(let b=0;b<this.rows;b++)E[b]/=this.columns;return E}case"column":{for(let b=0;b<this.columns;b++)E[b]/=this.rows;return E}case void 0:return E/this.size;default:throw new Error(`invalid option: ${S}`)}}variance(S,E={}){if(typeof S=="object"&&(E=S,S=void 0),typeof E!="object")throw new TypeError("options must be an object");const{unbiased:b=!0,mean:C=this.mean(S)}=E;if(typeof b!="boolean")throw new TypeError("unbiased must be a boolean");switch(S){case"row":{if(!r.isAnyArray(C))throw new TypeError("mean must be an array");return F(this,b,C)}case"column":{if(!r.isAnyArray(C))throw new TypeError("mean must be an array");return I(this,b,C)}case void 0:{if(typeof C!="number")throw new TypeError("mean must be a number");return O(this,b,C)}default:throw new Error(`invalid option: ${S}`)}}standardDeviation(S,E){typeof S=="object"&&(E=S,S=void 0);const b=this.variance(S,E);if(S===void 0)return Math.sqrt(b);for(let C=0;C<b.length;C++)b[C]=Math.sqrt(b[C]);return b}center(S,E={}){if(typeof S=="object"&&(E=S,S=void 0),typeof E!="object")throw new TypeError("options must be an object");const{center:b=this.mean(S)}=E;switch(S){case"row":{if(!r.isAnyArray(b))throw new TypeError("center must be an array");return P(this,b),this}case"column":{if(!r.isAnyArray(b))throw new TypeError("center must be an array");return G(this,b),this}case void 0:{if(typeof b!="number")throw new TypeError("center must be a number");return ee(this,b),this}default:throw new Error(`invalid option: ${S}`)}}scale(S,E={}){if(typeof S=="object"&&(E=S,S=void 0),typeof E!="object")throw new TypeError("options must be an object");let b=E.scale;switch(S){case"row":{if(b===void 0)b=te(this);else if(!r.isAnyArray(b))throw new TypeError("scale must be an array");return N(this,b),this}case"column":{if(b===void 0)b=K(this);else if(!r.isAnyArray(b))throw new TypeError("scale must be an array");return J(this,b),this}case void 0:{if(b===void 0)b=be(this);else if(typeof b!="number")throw new TypeError("scale must be a number");return re(this,b),this}default:throw new Error(`invalid option: ${S}`)}}toString(S){return a(this,S)}[Symbol.iterator](){return this.entries()}*entries(){for(let S=0;S<this.rows;S++)for(let E=0;E<this.columns;E++)yield[S,E,this.get(S,E)]}*values(){for(let S=0;S<this.rows;S++)for(let E=0;E<this.columns;E++)yield this.get(S,E)}}ne.prototype.klass="Matrix",typeof Symbol<"u"&&(ne.prototype[Symbol.for("nodejs.util.inspect.custom")]=i);function ue(L,S){return L-S}function Y(L){return L.every(S=>typeof S=="number")}ne.random=ne.rand,ne.randomInt=ne.randInt,ne.diagonal=ne.diag,ne.prototype.diagonal=ne.prototype.diag,ne.identity=ne.eye,ne.prototype.negate=ne.prototype.neg,ne.prototype.tensorProduct=ne.prototype.kroneckerProduct;const St=class St extends ne{constructor(E,b){super();Hp(this,Xr);Fn(this,"data");if(St.isMatrix(E))$p(this,Xr,uE).call(this,E.rows,E.columns),St.copy(E,this);else if(Number.isInteger(E)&&E>=0)$p(this,Xr,uE).call(this,E,b);else if(r.isAnyArray(E)){const C=E;if(E=C.length,b=E?C[0].length:0,typeof b!="number")throw new TypeError("Data must be a 2D array with at least one element");this.data=[];for(let M=0;M<E;M++){if(C[M].length!==b)throw new RangeError("Inconsistent array dimensions");if(!Y(C[M]))throw new TypeError("Input data contains non-numeric values");this.data.push(Float64Array.from(C[M]))}this.rows=E,this.columns=b}else throw new TypeError("First argument must be a positive number or an array")}set(E,b,C){return this.data[E][b]=C,this}get(E,b){return this.data[E][b]}removeRow(E){return u(this,E),this.data.splice(E,1),this.rows-=1,this}addRow(E,b){return b===void 0&&(b=E,E=this.rows),u(this,E,!0),b=Float64Array.from(d(this,b)),this.data.splice(E,0,b),this.rows+=1,this}removeColumn(E){c(this,E);for(let b=0;b<this.rows;b++){const C=new Float64Array(this.columns-1);for(let M=0;M<E;M++)C[M]=this.data[b][M];for(let M=E+1;M<this.columns;M++)C[M-1]=this.data[b][M];this.data[b]=C}return this.columns-=1,this}addColumn(E,b){typeof b>"u"&&(b=E,E=this.columns),c(this,E,!0),b=h(this,b);for(let C=0;C<this.rows;C++){const M=new Float64Array(this.columns+1);let Q=0;for(;Q<E;Q++)M[Q]=this.data[C][Q];for(M[Q++]=b[C];Q<this.columns+1;Q++)M[Q]=this.data[C][Q-1];this.data[C]=M}return this.columns+=1,this}};Xr=new WeakSet,uE=function(E,b){if(this.data=[],Number.isInteger(b)&&b>=0)for(let C=0;C<E;C++)this.data.push(new Float64Array(b));else throw new TypeError("nColumns must be a positive integer");this.rows=E,this.columns=b};let U=St;l(ne,U);const Wt=class Wt extends ne{constructor(E){super();Hp(this,nn);if(U.isMatrix(E)){if(!E.isSymmetric())throw new TypeError("not symmetric data");jc(this,nn,U.copy(E,new U(E.rows,E.rows)))}else if(Number.isInteger(E)&&E>=0)jc(this,nn,new U(E,E));else if(jc(this,nn,new U(E)),!this.isSymmetric())throw new TypeError("not symmetric data")}get size(){return ya(this,nn).size}get rows(){return ya(this,nn).rows}get columns(){return ya(this,nn).columns}get diagonalSize(){return this.rows}static isSymmetricMatrix(E){return U.isMatrix(E)&&E.klassType==="SymmetricMatrix"}static zeros(E){return new this(E)}static ones(E){return new this(E).fill(1)}clone(){const E=new Wt(this.diagonalSize);for(const[b,C,M]of this.upperRightEntries())E.set(b,C,M);return E}toMatrix(){return new U(this)}get(E,b){return ya(this,nn).get(E,b)}set(E,b,C){return ya(this,nn).set(E,b,C),ya(this,nn).set(b,E,C),this}removeCross(E){return ya(this,nn).removeRow(E),ya(this,nn).removeColumn(E),this}addCross(E,b){b===void 0&&(b=E,E=this.diagonalSize);const C=b.slice();return C.splice(E,1),ya(this,nn).addRow(E,C),ya(this,nn).addColumn(E,b),this}applyMask(E){if(E.length!==this.diagonalSize)throw new RangeError("Mask size do not match with matrix size");const b=[];for(const[C,M]of E.entries())M||b.push(C);b.reverse();for(const C of b)this.removeCross(C);return this}toCompact(){const{diagonalSize:E}=this,b=new Array(E*(E+1)/2);for(let C=0,M=0,Q=0;Q<b.length;Q++)b[Q]=this.get(M,C),++C>=E&&(C=++M);return b}static fromCompact(E){const b=E.length,C=(Math.sqrt(8*b+1)-1)/2;if(!Number.isInteger(C))throw new TypeError(`This array is not a compact representation of a Symmetric Matrix, ${JSON.stringify(E)}`);const M=new Wt(C);for(let Q=0,$=0,j=0;j<b;j++)M.set(Q,$,E[j]),++Q>=C&&(Q=++$);return M}*upperRightEntries(){for(let E=0,b=0;E<this.diagonalSize;void 0){const C=this.get(E,b);yield[E,b,C],++b>=this.diagonalSize&&(b=++E)}}*upperRightValues(){for(let E=0,b=0;E<this.diagonalSize;void 0)yield this.get(E,b),++b>=this.diagonalSize&&(b=++E)}};nn=new WeakMap;let W=Wt;W.prototype.klassType="SymmetricMatrix";class ie extends W{static isDistanceMatrix(S){return W.isSymmetricMatrix(S)&&S.klassSubType==="DistanceMatrix"}constructor(S){if(super(S),!this.isDistance())throw new TypeError("Provided arguments do no produce a distance matrix")}set(S,E,b){return S===E&&(b=0),super.set(S,E,b)}addCross(S,E){return E===void 0&&(E=S,S=this.diagonalSize),E=E.slice(),E[S]=0,super.addCross(S,E)}toSymmetricMatrix(){return new W(this)}clone(){const S=new ie(this.diagonalSize);for(const[E,b,C]of this.upperRightEntries())E!==b&&S.set(E,b,C);return S}toCompact(){const{diagonalSize:S}=this,E=(S-1)*S/2,b=new Array(E);for(let C=1,M=0,Q=0;Q<b.length;Q++)b[Q]=this.get(M,C),++C>=S&&(C=++M+1);return b}static fromCompact(S){const E=S.length;if(E===0)return new this(0);const b=(Math.sqrt(8*E+1)+1)/2;if(!Number.isInteger(b))throw new TypeError(`This array is not a compact representation of a DistanceMatrix, ${JSON.stringify(S)}`);const C=new this(b);for(let M=1,Q=0,$=0;$<E;$++)C.set(M,Q,S[$]),++M>=b&&(M=++Q+1);return C}}ie.prototype.klassSubType="DistanceMatrix";class Ee extends ne{constructor(S,E,b){super(),this.matrix=S,this.rows=E,this.columns=b}}class de extends Ee{constructor(S,E){c(S,E),super(S,S.rows,1),this.column=E}set(S,E,b){return this.matrix.set(S,this.column,b),this}get(S){return this.matrix.get(S,this.column)}}class X extends Ee{constructor(S,E){p(S,E),super(S,S.rows,E.length),this.columnIndices=E}set(S,E,b){return this.matrix.set(S,this.columnIndices[E],b),this}get(S,E){return this.matrix.get(S,this.columnIndices[E])}}class xe extends Ee{constructor(S){super(S,S.rows,S.columns)}set(S,E,b){return this.matrix.set(S,this.columns-E-1,b),this}get(S,E){return this.matrix.get(S,this.columns-E-1)}}class ce extends Ee{constructor(S){super(S,S.rows,S.columns)}set(S,E,b){return this.matrix.set(this.rows-S-1,E,b),this}get(S,E){return this.matrix.get(this.rows-S-1,E)}}class De extends Ee{constructor(S,E){u(S,E),super(S,1,S.columns),this.row=E}set(S,E,b){return this.matrix.set(this.row,E,b),this}get(S,E){return this.matrix.get(this.row,E)}}class He extends Ee{constructor(S,E){f(S,E),super(S,E.length,S.columns),this.rowIndices=E}set(S,E,b){return this.matrix.set(this.rowIndices[S],E,b),this}get(S,E){return this.matrix.get(this.rowIndices[S],E)}}class Xe extends Ee{constructor(S,E,b){f(S,E),p(S,b),super(S,E.length,b.length),this.rowIndices=E,this.columnIndices=b}set(S,E,b){return this.matrix.set(this.rowIndices[S],this.columnIndices[E],b),this}get(S,E){return this.matrix.get(this.rowIndices[S],this.columnIndices[E])}}class ct extends Ee{constructor(S,E,b,C,M){g(S,E,b,C,M),super(S,b-E+1,M-C+1),this.startRow=E,this.startColumn=C}set(S,E,b){return this.matrix.set(this.startRow+S,this.startColumn+E,b),this}get(S,E){return this.matrix.get(this.startRow+S,this.startColumn+E)}}class dt extends Ee{constructor(S){super(S,S.columns,S.rows)}set(S,E,b){return this.matrix.set(E,S,b),this}get(S,E){return this.matrix.get(E,S)}}class Nn extends ne{constructor(S,E={}){const{rows:b=1}=E;if(S.length%b!==0)throw new Error("the data length is not divisible by the number of rows");super(),this.rows=b,this.columns=S.length/b,this.data=S}set(S,E,b){let C=this._calculateIndex(S,E);return this.data[C]=b,this}get(S,E){let b=this._calculateIndex(S,E);return this.data[b]}_calculateIndex(S,E){return S*this.columns+E}}class Dt extends ne{constructor(S){super(),this.data=S,this.rows=S.length,this.columns=S[0].length}set(S,E,b){return this.data[S][E]=b,this}get(S,E){return this.data[S][E]}}function ui(L,S){if(r.isAnyArray(L))return L[0]&&r.isAnyArray(L[0])?new Dt(L):new Nn(L,S);throw new Error("the argument is not an array")}class Hn{constructor(S){S=Dt.checkMatrix(S);let E=S.clone(),b=E.rows,C=E.columns,M=new Float64Array(b),Q=1,$,j,q,ge,se,Ce,je,Be,Le;for($=0;$<b;$++)M[$]=$;for(Be=new Float64Array(b),j=0;j<C;j++){for($=0;$<b;$++)Be[$]=E.get($,j);for($=0;$<b;$++){for(Le=Math.min($,j),se=0,q=0;q<Le;q++)se+=E.get($,q)*Be[q];Be[$]-=se,E.set($,j,Be[$])}for(ge=j,$=j+1;$<b;$++)Math.abs(Be[$])>Math.abs(Be[ge])&&(ge=$);if(ge!==j){for(q=0;q<C;q++)Ce=E.get(ge,q),E.set(ge,q,E.get(j,q)),E.set(j,q,Ce);je=M[ge],M[ge]=M[j],M[j]=je,Q=-Q}if(j<b&&E.get(j,j)!==0)for($=j+1;$<b;$++)E.set($,j,E.get($,j)/E.get(j,j))}this.LU=E,this.pivotVector=M,this.pivotSign=Q}isSingular(){let S=this.LU,E=S.columns;for(let b=0;b<E;b++)if(S.get(b,b)===0)return!0;return!1}solve(S){S=U.checkMatrix(S);let E=this.LU;if(E.rows!==S.rows)throw new Error("Invalid matrix dimensions");if(this.isSingular())throw new Error("LU matrix is singular");let C=S.columns,M=S.subMatrixRow(this.pivotVector,0,C-1),Q=E.columns,$,j,q;for(q=0;q<Q;q++)for($=q+1;$<Q;$++)for(j=0;j<C;j++)M.set($,j,M.get($,j)-M.get(q,j)*E.get($,q));for(q=Q-1;q>=0;q--){for(j=0;j<C;j++)M.set(q,j,M.get(q,j)/E.get(q,q));for($=0;$<q;$++)for(j=0;j<C;j++)M.set($,j,M.get($,j)-M.get(q,j)*E.get($,q))}return M}get determinant(){let S=this.LU;if(!S.isSquare())throw new Error("Matrix must be square");let E=this.pivotSign,b=S.columns;for(let C=0;C<b;C++)E*=S.get(C,C);return E}get lowerTriangularMatrix(){let S=this.LU,E=S.rows,b=S.columns,C=new U(E,b);for(let M=0;M<E;M++)for(let Q=0;Q<b;Q++)M>Q?C.set(M,Q,S.get(M,Q)):M===Q?C.set(M,Q,1):C.set(M,Q,0);return C}get upperTriangularMatrix(){let S=this.LU,E=S.rows,b=S.columns,C=new U(E,b);for(let M=0;M<E;M++)for(let Q=0;Q<b;Q++)M<=Q?C.set(M,Q,S.get(M,Q)):C.set(M,Q,0);return C}get pivotPermutationVector(){return Array.from(this.pivotVector)}}function an(L,S){let E=0;return Math.abs(L)>Math.abs(S)?(E=S/L,Math.abs(L)*Math.sqrt(1+E*E)):S!==0?(E=L/S,Math.abs(S)*Math.sqrt(1+E*E)):0}class Jt{constructor(S){S=Dt.checkMatrix(S);let E=S.clone(),b=S.rows,C=S.columns,M=new Float64Array(C),Q,$,j,q;for(j=0;j<C;j++){let ge=0;for(Q=j;Q<b;Q++)ge=an(ge,E.get(Q,j));if(ge!==0){for(E.get(j,j)<0&&(ge=-ge),Q=j;Q<b;Q++)E.set(Q,j,E.get(Q,j)/ge);for(E.set(j,j,E.get(j,j)+1),$=j+1;$<C;$++){for(q=0,Q=j;Q<b;Q++)q+=E.get(Q,j)*E.get(Q,$);for(q=-q/E.get(j,j),Q=j;Q<b;Q++)E.set(Q,$,E.get(Q,$)+q*E.get(Q,j))}}M[j]=-ge}this.QR=E,this.Rdiag=M}solve(S){S=U.checkMatrix(S);let E=this.QR,b=E.rows;if(S.rows!==b)throw new Error("Matrix row dimensions must agree");if(!this.isFullRank())throw new Error("Matrix is rank deficient");let C=S.columns,M=S.clone(),Q=E.columns,$,j,q,ge;for(q=0;q<Q;q++)for(j=0;j<C;j++){for(ge=0,$=q;$<b;$++)ge+=E.get($,q)*M.get($,j);for(ge=-ge/E.get(q,q),$=q;$<b;$++)M.set($,j,M.get($,j)+ge*E.get($,q))}for(q=Q-1;q>=0;q--){for(j=0;j<C;j++)M.set(q,j,M.get(q,j)/this.Rdiag[q]);for($=0;$<q;$++)for(j=0;j<C;j++)M.set($,j,M.get($,j)-M.get(q,j)*E.get($,q))}return M.subMatrix(0,Q-1,0,C-1)}isFullRank(){let S=this.QR.columns;for(let E=0;E<S;E++)if(this.Rdiag[E]===0)return!1;return!0}get upperTriangularMatrix(){let S=this.QR,E=S.columns,b=new U(E,E),C,M;for(C=0;C<E;C++)for(M=0;M<E;M++)C<M?b.set(C,M,S.get(C,M)):C===M?b.set(C,M,this.Rdiag[C]):b.set(C,M,0);return b}get orthogonalMatrix(){let S=this.QR,E=S.rows,b=S.columns,C=new U(E,b),M,Q,$,j;for($=b-1;$>=0;$--){for(M=0;M<E;M++)C.set(M,$,0);for(C.set($,$,1),Q=$;Q<b;Q++)if(S.get($,$)!==0){for(j=0,M=$;M<E;M++)j+=S.get(M,$)*C.get(M,Q);for(j=-j/S.get($,$),M=$;M<E;M++)C.set(M,Q,C.get(M,Q)+j*S.get(M,$))}}return C}}class ye{constructor(S,E={}){if(S=Dt.checkMatrix(S),S.isEmpty())throw new Error("Matrix must be non-empty");let b=S.rows,C=S.columns;const{computeLeftSingularVectors:M=!0,computeRightSingularVectors:Q=!0,autoTranspose:$=!1}=E;let j=!!M,q=!!Q,ge=!1,se;if(b<C)if(!$)se=S.clone(),console.warn("Computing SVD on a matrix with more columns than rows. Consider enabling autoTranspose");else{se=S.transpose(),b=se.rows,C=se.columns,ge=!0;let fe=j;j=q,q=fe}else se=S.clone();let Ce=Math.min(b,C),je=Math.min(b+1,C),Be=new Float64Array(je),Le=new U(b,Ce),Ze=new U(C,C),le=new Float64Array(C),Ve=new Float64Array(b),tt=new Float64Array(je);for(let fe=0;fe<je;fe++)tt[fe]=fe;let yt=Math.min(b-1,C),Ct=Math.max(0,Math.min(C-2,b)),Sn=Math.max(yt,Ct);for(let fe=0;fe<Sn;fe++){if(fe<yt){Be[fe]=0;for(let $e=fe;$e<b;$e++)Be[fe]=an(Be[fe],se.get($e,fe));if(Be[fe]!==0){se.get(fe,fe)<0&&(Be[fe]=-Be[fe]);for(let $e=fe;$e<b;$e++)se.set($e,fe,se.get($e,fe)/Be[fe]);se.set(fe,fe,se.get(fe,fe)+1)}Be[fe]=-Be[fe]}for(let $e=fe+1;$e<C;$e++){if(fe<yt&&Be[fe]!==0){let Je=0;for(let ze=fe;ze<b;ze++)Je+=se.get(ze,fe)*se.get(ze,$e);Je=-Je/se.get(fe,fe);for(let ze=fe;ze<b;ze++)se.set(ze,$e,se.get(ze,$e)+Je*se.get(ze,fe))}le[$e]=se.get(fe,$e)}if(j&&fe<yt)for(let $e=fe;$e<b;$e++)Le.set($e,fe,se.get($e,fe));if(fe<Ct){le[fe]=0;for(let $e=fe+1;$e<C;$e++)le[fe]=an(le[fe],le[$e]);if(le[fe]!==0){le[fe+1]<0&&(le[fe]=0-le[fe]);for(let $e=fe+1;$e<C;$e++)le[$e]/=le[fe];le[fe+1]+=1}if(le[fe]=-le[fe],fe+1<b&&le[fe]!==0){for(let $e=fe+1;$e<b;$e++)Ve[$e]=0;for(let $e=fe+1;$e<b;$e++)for(let Je=fe+1;Je<C;Je++)Ve[$e]+=le[Je]*se.get($e,Je);for(let $e=fe+1;$e<C;$e++){let Je=-le[$e]/le[fe+1];for(let ze=fe+1;ze<b;ze++)se.set(ze,$e,se.get(ze,$e)+Je*Ve[ze])}}if(q)for(let $e=fe+1;$e<C;$e++)Ze.set($e,fe,le[$e])}}let ht=Math.min(C,b+1);if(yt<C&&(Be[yt]=se.get(yt,yt)),b<ht&&(Be[ht-1]=0),Ct+1<ht&&(le[Ct]=se.get(Ct,ht-1)),le[ht-1]=0,j){for(let fe=yt;fe<Ce;fe++){for(let $e=0;$e<b;$e++)Le.set($e,fe,0);Le.set(fe,fe,1)}for(let fe=yt-1;fe>=0;fe--)if(Be[fe]!==0){for(let $e=fe+1;$e<Ce;$e++){let Je=0;for(let ze=fe;ze<b;ze++)Je+=Le.get(ze,fe)*Le.get(ze,$e);Je=-Je/Le.get(fe,fe);for(let ze=fe;ze<b;ze++)Le.set(ze,$e,Le.get(ze,$e)+Je*Le.get(ze,fe))}for(let $e=fe;$e<b;$e++)Le.set($e,fe,-Le.get($e,fe));Le.set(fe,fe,1+Le.get(fe,fe));for(let $e=0;$e<fe-1;$e++)Le.set($e,fe,0)}else{for(let $e=0;$e<b;$e++)Le.set($e,fe,0);Le.set(fe,fe,1)}}if(q)for(let fe=C-1;fe>=0;fe--){if(fe<Ct&&le[fe]!==0)for(let $e=fe+1;$e<C;$e++){let Je=0;for(let ze=fe+1;ze<C;ze++)Je+=Ze.get(ze,fe)*Ze.get(ze,$e);Je=-Je/Ze.get(fe+1,fe);for(let ze=fe+1;ze<C;ze++)Ze.set(ze,$e,Ze.get(ze,$e)+Je*Ze.get(ze,fe))}for(let $e=0;$e<C;$e++)Ze.set($e,fe,0);Ze.set(fe,fe,1)}let ft=ht-1,fn=Number.EPSILON;for(;ht>0;){let fe,$e;for(fe=ht-2;fe>=-1&&fe!==-1;fe--){const Je=Number.MIN_VALUE+fn*Math.abs(Be[fe]+Math.abs(Be[fe+1]));if(Math.abs(le[fe])<=Je||Number.isNaN(le[fe])){le[fe]=0;break}}if(fe===ht-2)$e=4;else{let Je;for(Je=ht-1;Je>=fe&&Je!==fe;Je--){let ze=(Je!==ht?Math.abs(le[Je]):0)+(Je!==fe+1?Math.abs(le[Je-1]):0);if(Math.abs(Be[Je])<=fn*ze){Be[Je]=0;break}}Je===fe?$e=3:Je===ht-1?$e=1:($e=2,fe=Je)}switch(fe++,$e){case 1:{let Je=le[ht-2];le[ht-2]=0;for(let ze=ht-2;ze>=fe;ze--){let _n=an(Be[ze],Je),sn=Be[ze]/_n,mn=Je/_n;if(Be[ze]=_n,ze!==fe&&(Je=-mn*le[ze-1],le[ze-1]=sn*le[ze-1]),q)for(let rn=0;rn<C;rn++)_n=sn*Ze.get(rn,ze)+mn*Ze.get(rn,ht-1),Ze.set(rn,ht-1,-mn*Ze.get(rn,ze)+sn*Ze.get(rn,ht-1)),Ze.set(rn,ze,_n)}break}case 2:{let Je=le[fe-1];le[fe-1]=0;for(let ze=fe;ze<ht;ze++){let _n=an(Be[ze],Je),sn=Be[ze]/_n,mn=Je/_n;if(Be[ze]=_n,Je=-mn*le[ze],le[ze]=sn*le[ze],j)for(let rn=0;rn<b;rn++)_n=sn*Le.get(rn,ze)+mn*Le.get(rn,fe-1),Le.set(rn,fe-1,-mn*Le.get(rn,ze)+sn*Le.get(rn,fe-1)),Le.set(rn,ze,_n)}break}case 3:{const Je=Math.max(Math.abs(Be[ht-1]),Math.abs(Be[ht-2]),Math.abs(le[ht-2]),Math.abs(Be[fe]),Math.abs(le[fe])),ze=Be[ht-1]/Je,_n=Be[ht-2]/Je,sn=le[ht-2]/Je,mn=Be[fe]/Je,rn=le[fe]/Je,Br=((_n+ze)*(_n-ze)+sn*sn)/2,Hr=ze*sn*(ze*sn);let Xn=0;(Br!==0||Hr!==0)&&(Br<0?Xn=0-Math.sqrt(Br*Br+Hr):Xn=Math.sqrt(Br*Br+Hr),Xn=Hr/(Br+Xn));let Qi=(mn+ze)*(mn-ze)+Xn,ea=mn*rn;for(let zt=fe;zt<ht-1;zt++){let Er=an(Qi,ea);Er===0&&(Er=Number.MIN_VALUE);let hi=Qi/Er,Zr=ea/Er;if(zt!==fe&&(le[zt-1]=Er),Qi=hi*Be[zt]+Zr*le[zt],le[zt]=hi*le[zt]-Zr*Be[zt],ea=Zr*Be[zt+1],Be[zt+1]=hi*Be[zt+1],q)for(let tr=0;tr<C;tr++)Er=hi*Ze.get(tr,zt)+Zr*Ze.get(tr,zt+1),Ze.set(tr,zt+1,-Zr*Ze.get(tr,zt)+hi*Ze.get(tr,zt+1)),Ze.set(tr,zt,Er);if(Er=an(Qi,ea),Er===0&&(Er=Number.MIN_VALUE),hi=Qi/Er,Zr=ea/Er,Be[zt]=Er,Qi=hi*le[zt]+Zr*Be[zt+1],Be[zt+1]=-Zr*le[zt]+hi*Be[zt+1],ea=Zr*le[zt+1],le[zt+1]=hi*le[zt+1],j&&zt<b-1)for(let tr=0;tr<b;tr++)Er=hi*Le.get(tr,zt)+Zr*Le.get(tr,zt+1),Le.set(tr,zt+1,-Zr*Le.get(tr,zt)+hi*Le.get(tr,zt+1)),Le.set(tr,zt,Er)}le[ht-2]=Qi;break}case 4:{if(Be[fe]<=0&&(Be[fe]=Be[fe]<0?-Be[fe]:0,q))for(let Je=0;Je<=ft;Je++)Ze.set(Je,fe,-Ze.get(Je,fe));for(;fe<ft&&!(Be[fe]>=Be[fe+1]);){let Je=Be[fe];if(Be[fe]=Be[fe+1],Be[fe+1]=Je,q&&fe<C-1)for(let ze=0;ze<C;ze++)Je=Ze.get(ze,fe+1),Ze.set(ze,fe+1,Ze.get(ze,fe)),Ze.set(ze,fe,Je);if(j&&fe<b-1)for(let ze=0;ze<b;ze++)Je=Le.get(ze,fe+1),Le.set(ze,fe+1,Le.get(ze,fe)),Le.set(ze,fe,Je);fe++}ht--;break}}}if(ge){let fe=Ze;Ze=Le,Le=fe}this.m=b,this.n=C,this.s=Be,this.U=Le,this.V=Ze}solve(S){let E=S,b=this.threshold,C=this.s.length,M=U.zeros(C,C);for(let Ce=0;Ce<C;Ce++)Math.abs(this.s[Ce])<=b?M.set(Ce,Ce,0):M.set(Ce,Ce,1/this.s[Ce]);let Q=this.U,$=this.rightSingularVectors,j=$.mmul(M),q=$.rows,ge=Q.rows,se=U.zeros(q,ge);for(let Ce=0;Ce<q;Ce++)for(let je=0;je<ge;je++){let Be=0;for(let Le=0;Le<C;Le++)Be+=j.get(Ce,Le)*Q.get(je,Le);se.set(Ce,je,Be)}return se.mmul(E)}solveForDiagonal(S){return this.solve(U.diag(S))}inverse(){let S=this.V,E=this.threshold,b=S.rows,C=S.columns,M=new U(b,this.s.length);for(let ge=0;ge<b;ge++)for(let se=0;se<C;se++)Math.abs(this.s[se])>E&&M.set(ge,se,S.get(ge,se)/this.s[se]);let Q=this.U,$=Q.rows,j=Q.columns,q=new U(b,$);for(let ge=0;ge<b;ge++)for(let se=0;se<$;se++){let Ce=0;for(let je=0;je<j;je++)Ce+=M.get(ge,je)*Q.get(se,je);q.set(ge,se,Ce)}return q}get condition(){return this.s[0]/this.s[Math.min(this.m,this.n)-1]}get norm2(){return this.s[0]}get rank(){let S=Math.max(this.m,this.n)*this.s[0]*Number.EPSILON,E=0,b=this.s;for(let C=0,M=b.length;C<M;C++)b[C]>S&&E++;return E}get diagonal(){return Array.from(this.s)}get threshold(){return Number.EPSILON/2*Math.max(this.m,this.n)*this.s[0]}get leftSingularVectors(){return this.U}get rightSingularVectors(){return this.V}get diagonalMatrix(){return U.diag(this.s)}}function me(L,S=!1){return L=Dt.checkMatrix(L),S?new ye(L).inverse():pt(L,U.eye(L.rows))}function pt(L,S,E=!1){return L=Dt.checkMatrix(L),S=Dt.checkMatrix(S),E?new ye(L).solve(S):L.isSquare()?new Hn(L).solve(S):new Jt(L).solve(S)}function at(L){if(L=U.checkMatrix(L),L.isSquare()){if(L.columns===0)return 1;let S,E,b,C;if(L.columns===2)return S=L.get(0,0),E=L.get(0,1),b=L.get(1,0),C=L.get(1,1),S*C-E*b;if(L.columns===3){let M,Q,$;return M=new Xe(L,[1,2],[1,2]),Q=new Xe(L,[1,2],[0,2]),$=new Xe(L,[1,2],[0,1]),S=L.get(0,0),E=L.get(0,1),b=L.get(0,2),S*at(M)-E*at(Q)+b*at($)}else return new Hn(L).determinant}else throw Error("determinant can only be calculated for a square matrix")}function tn(L,S){let E=[];for(let b=0;b<L;b++)b!==S&&E.push(b);return E}function Nt(L,S,E,b=1e-9,C=1e-9){if(L>C)return new Array(S.rows+1).fill(0);{let M=S.addRow(E,[0]);for(let Q=0;Q<M.rows;Q++)Math.abs(M.get(Q,0))<b&&M.set(Q,0,0);return M.to1DArray()}}function Kt(L,S={}){const{thresholdValue:E=1e-9,thresholdError:b=1e-9}=S;L=U.checkMatrix(L);let C=L.rows,M=new U(C,C);for(let Q=0;Q<C;Q++){let $=U.columnVector(L.getRow(Q)),j=L.subMatrixRow(tn(C,Q)).transpose(),ge=new ye(j).solve($),se=U.sub($,j.mmul(ge)).abs().max();M.setRow(Q,Nt(se,ge,Q,E,b))}return M}function ci(L,S=Number.EPSILON){if(L=U.checkMatrix(L),L.isEmpty())return L.transpose();let E=new ye(L,{autoTranspose:!0}),b=E.leftSingularVectors,C=E.rightSingularVectors,M=E.diagonal;for(let Q=0;Q<M.length;Q++)Math.abs(M[Q])>S?M[Q]=1/M[Q]:M[Q]=0;return C.mmul(U.diag(M).mmul(b.transpose()))}function Yr(L,S=L,E={}){L=new U(L);let b=!1;if(typeof S=="object"&&!U.isMatrix(S)&&!r.isAnyArray(S)?(E=S,S=L,b=!0):S=new U(S),L.rows!==S.rows)throw new TypeError("Both matrices must have the same number of rows");const{center:C=!0}=E;C&&(L=L.center("column"),b||(S=S.center("column")));const M=L.transpose().mmul(S);for(let Q=0;Q<M.rows;Q++)for(let $=0;$<M.columns;$++)M.set(Q,$,M.get(Q,$)*(1/(L.rows-1)));return M}function Pn(L,S=L,E={}){L=new U(L);let b=!1;if(typeof S=="object"&&!U.isMatrix(S)&&!r.isAnyArray(S)?(E=S,S=L,b=!0):S=new U(S),L.rows!==S.rows)throw new TypeError("Both matrices must have the same number of rows");const{center:C=!0,scale:M=!0}=E;C&&(L.center("column"),b||S.center("column")),M&&(L.scale("column"),b||S.scale("column"));const Q=L.standardDeviation("column",{unbiased:!0}),$=b?Q:S.standardDeviation("column",{unbiased:!0}),j=L.transpose().mmul(S);for(let q=0;q<j.rows;q++)for(let ge=0;ge<j.columns;ge++)j.set(q,ge,j.get(q,ge)*(1/(Q[q]*$[ge]))*(1/(L.rows-1)));return j}class Me{constructor(S,E={}){const{assumeSymmetric:b=!1}=E;if(S=Dt.checkMatrix(S),!S.isSquare())throw new Error("Matrix is not a square matrix");if(S.isEmpty())throw new Error("Matrix must be non-empty");let C=S.columns,M=new U(C,C),Q=new Float64Array(C),$=new Float64Array(C),j=S,q,ge,se=!1;if(b?se=!0:se=S.isSymmetric(),se){for(q=0;q<C;q++)for(ge=0;ge<C;ge++)M.set(q,ge,j.get(q,ge));pe(C,$,Q,M),vt(C,$,Q,M)}else{let Ce=new U(C,C),je=new Float64Array(C);for(ge=0;ge<C;ge++)for(q=0;q<C;q++)Ce.set(q,ge,j.get(q,ge));Pt(C,Ce,je,M),Ht(C,$,Q,M,Ce)}this.n=C,this.e=$,this.d=Q,this.V=M}get realEigenvalues(){return Array.from(this.d)}get imaginaryEigenvalues(){return Array.from(this.e)}get eigenvectorMatrix(){return this.V}get diagonalMatrix(){let S=this.n,E=this.e,b=this.d,C=new U(S,S),M,Q;for(M=0;M<S;M++){for(Q=0;Q<S;Q++)C.set(M,Q,0);C.set(M,M,b[M]),E[M]>0?C.set(M,M+1,E[M]):E[M]<0&&C.set(M,M-1,E[M])}return C}}function pe(L,S,E,b){let C,M,Q,$,j,q,ge,se;for(j=0;j<L;j++)E[j]=b.get(L-1,j);for($=L-1;$>0;$--){for(se=0,Q=0,q=0;q<$;q++)se=se+Math.abs(E[q]);if(se===0)for(S[$]=E[$-1],j=0;j<$;j++)E[j]=b.get($-1,j),b.set($,j,0),b.set(j,$,0);else{for(q=0;q<$;q++)E[q]/=se,Q+=E[q]*E[q];for(C=E[$-1],M=Math.sqrt(Q),C>0&&(M=-M),S[$]=se*M,Q=Q-C*M,E[$-1]=C-M,j=0;j<$;j++)S[j]=0;for(j=0;j<$;j++){for(C=E[j],b.set(j,$,C),M=S[j]+b.get(j,j)*C,q=j+1;q<=$-1;q++)M+=b.get(q,j)*E[q],S[q]+=b.get(q,j)*C;S[j]=M}for(C=0,j=0;j<$;j++)S[j]/=Q,C+=S[j]*E[j];for(ge=C/(Q+Q),j=0;j<$;j++)S[j]-=ge*E[j];for(j=0;j<$;j++){for(C=E[j],M=S[j],q=j;q<=$-1;q++)b.set(q,j,b.get(q,j)-(C*S[q]+M*E[q]));E[j]=b.get($-1,j),b.set($,j,0)}}E[$]=Q}for($=0;$<L-1;$++){if(b.set(L-1,$,b.get($,$)),b.set($,$,1),Q=E[$+1],Q!==0){for(q=0;q<=$;q++)E[q]=b.get(q,$+1)/Q;for(j=0;j<=$;j++){for(M=0,q=0;q<=$;q++)M+=b.get(q,$+1)*b.get(q,j);for(q=0;q<=$;q++)b.set(q,j,b.get(q,j)-M*E[q])}}for(q=0;q<=$;q++)b.set(q,$+1,0)}for(j=0;j<L;j++)E[j]=b.get(L-1,j),b.set(L-1,j,0);b.set(L-1,L-1,1),S[0]=0}function vt(L,S,E,b){let C,M,Q,$,j,q,ge,se,Ce,je,Be,Le,Ze,le,Ve,tt;for(Q=1;Q<L;Q++)S[Q-1]=S[Q];S[L-1]=0;let yt=0,Ct=0,Sn=Number.EPSILON;for(q=0;q<L;q++){for(Ct=Math.max(Ct,Math.abs(E[q])+Math.abs(S[q])),ge=q;ge<L&&!(Math.abs(S[ge])<=Sn*Ct);)ge++;if(ge>q)do{for(C=E[q],se=(E[q+1]-C)/(2*S[q]),Ce=an(se,1),se<0&&(Ce=-Ce),E[q]=S[q]/(se+Ce),E[q+1]=S[q]*(se+Ce),je=E[q+1],M=C-E[q],Q=q+2;Q<L;Q++)E[Q]-=M;for(yt=yt+M,se=E[ge],Be=1,Le=Be,Ze=Be,le=S[q+1],Ve=0,tt=0,Q=ge-1;Q>=q;Q--)for(Ze=Le,Le=Be,tt=Ve,C=Be*S[Q],M=Be*se,Ce=an(se,S[Q]),S[Q+1]=Ve*Ce,Ve=S[Q]/Ce,Be=se/Ce,se=Be*E[Q]-Ve*C,E[Q+1]=M+Ve*(Be*C+Ve*E[Q]),j=0;j<L;j++)M=b.get(j,Q+1),b.set(j,Q+1,Ve*b.get(j,Q)+Be*M),b.set(j,Q,Be*b.get(j,Q)-Ve*M);se=-Ve*tt*Ze*le*S[q]/je,S[q]=Ve*se,E[q]=Be*se}while(Math.abs(S[q])>Sn*Ct);E[q]=E[q]+yt,S[q]=0}for(Q=0;Q<L-1;Q++){for(j=Q,se=E[Q],$=Q+1;$<L;$++)E[$]<se&&(j=$,se=E[$]);if(j!==Q)for(E[j]=E[Q],E[Q]=se,$=0;$<L;$++)se=b.get($,Q),b.set($,Q,b.get($,j)),b.set($,j,se)}}function Pt(L,S,E,b){let C=0,M=L-1,Q,$,j,q,ge,se,Ce;for(se=C+1;se<=M-1;se++){for(Ce=0,q=se;q<=M;q++)Ce=Ce+Math.abs(S.get(q,se-1));if(Ce!==0){for(j=0,q=M;q>=se;q--)E[q]=S.get(q,se-1)/Ce,j+=E[q]*E[q];for($=Math.sqrt(j),E[se]>0&&($=-$),j=j-E[se]*$,E[se]=E[se]-$,ge=se;ge<L;ge++){for(Q=0,q=M;q>=se;q--)Q+=E[q]*S.get(q,ge);for(Q=Q/j,q=se;q<=M;q++)S.set(q,ge,S.get(q,ge)-Q*E[q])}for(q=0;q<=M;q++){for(Q=0,ge=M;ge>=se;ge--)Q+=E[ge]*S.get(q,ge);for(Q=Q/j,ge=se;ge<=M;ge++)S.set(q,ge,S.get(q,ge)-Q*E[ge])}E[se]=Ce*E[se],S.set(se,se-1,Ce*$)}}for(q=0;q<L;q++)for(ge=0;ge<L;ge++)b.set(q,ge,q===ge?1:0);for(se=M-1;se>=C+1;se--)if(S.get(se,se-1)!==0){for(q=se+1;q<=M;q++)E[q]=S.get(q,se-1);for(ge=se;ge<=M;ge++){for($=0,q=se;q<=M;q++)$+=E[q]*b.get(q,ge);for($=$/E[se]/S.get(se,se-1),q=se;q<=M;q++)b.set(q,ge,b.get(q,ge)+$*E[q])}}}function Ht(L,S,E,b,C){let M=L-1,Q=0,$=L-1,j=Number.EPSILON,q=0,ge=0,se=0,Ce=0,je=0,Be=0,Le=0,Ze=0,le,Ve,tt,yt,Ct,Sn,ht,ft,fn,fe,$e,Je,ze,_n,sn;for(le=0;le<L;le++)for((le<Q||le>$)&&(E[le]=C.get(le,le),S[le]=0),Ve=Math.max(le-1,0);Ve<L;Ve++)ge=ge+Math.abs(C.get(le,Ve));for(;M>=Q;){for(yt=M;yt>Q&&(Be=Math.abs(C.get(yt-1,yt-1))+Math.abs(C.get(yt,yt)),Be===0&&(Be=ge),!(Math.abs(C.get(yt,yt-1))<j*Be));)yt--;if(yt===M)C.set(M,M,C.get(M,M)+q),E[M]=C.get(M,M),S[M]=0,M--,Ze=0;else if(yt===M-1){if(ht=C.get(M,M-1)*C.get(M-1,M),se=(C.get(M-1,M-1)-C.get(M,M))/2,Ce=se*se+ht,Le=Math.sqrt(Math.abs(Ce)),C.set(M,M,C.get(M,M)+q),C.set(M-1,M-1,C.get(M-1,M-1)+q),ft=C.get(M,M),Ce>=0){for(Le=se>=0?se+Le:se-Le,E[M-1]=ft+Le,E[M]=E[M-1],Le!==0&&(E[M]=ft-ht/Le),S[M-1]=0,S[M]=0,ft=C.get(M,M-1),Be=Math.abs(ft)+Math.abs(Le),se=ft/Be,Ce=Le/Be,je=Math.sqrt(se*se+Ce*Ce),se=se/je,Ce=Ce/je,Ve=M-1;Ve<L;Ve++)Le=C.get(M-1,Ve),C.set(M-1,Ve,Ce*Le+se*C.get(M,Ve)),C.set(M,Ve,Ce*C.get(M,Ve)-se*Le);for(le=0;le<=M;le++)Le=C.get(le,M-1),C.set(le,M-1,Ce*Le+se*C.get(le,M)),C.set(le,M,Ce*C.get(le,M)-se*Le);for(le=Q;le<=$;le++)Le=b.get(le,M-1),b.set(le,M-1,Ce*Le+se*b.get(le,M)),b.set(le,M,Ce*b.get(le,M)-se*Le)}else E[M-1]=ft+se,E[M]=ft+se,S[M-1]=Le,S[M]=-Le;M=M-2,Ze=0}else{if(ft=C.get(M,M),fn=0,ht=0,yt<M&&(fn=C.get(M-1,M-1),ht=C.get(M,M-1)*C.get(M-1,M)),Ze===10){for(q+=ft,le=Q;le<=M;le++)C.set(le,le,C.get(le,le)-ft);Be=Math.abs(C.get(M,M-1))+Math.abs(C.get(M-1,M-2)),ft=fn=.75*Be,ht=-.4375*Be*Be}if(Ze===30&&(Be=(fn-ft)/2,Be=Be*Be+ht,Be>0)){for(Be=Math.sqrt(Be),fn<ft&&(Be=-Be),Be=ft-ht/((fn-ft)/2+Be),le=Q;le<=M;le++)C.set(le,le,C.get(le,le)-Be);q+=Be,ft=fn=ht=.964}for(Ze=Ze+1,Ct=M-2;Ct>=yt&&(Le=C.get(Ct,Ct),je=ft-Le,Be=fn-Le,se=(je*Be-ht)/C.get(Ct+1,Ct)+C.get(Ct,Ct+1),Ce=C.get(Ct+1,Ct+1)-Le-je-Be,je=C.get(Ct+2,Ct+1),Be=Math.abs(se)+Math.abs(Ce)+Math.abs(je),se=se/Be,Ce=Ce/Be,je=je/Be,!(Ct===yt||Math.abs(C.get(Ct,Ct-1))*(Math.abs(Ce)+Math.abs(je))<j*(Math.abs(se)*(Math.abs(C.get(Ct-1,Ct-1))+Math.abs(Le)+Math.abs(C.get(Ct+1,Ct+1))))));)Ct--;for(le=Ct+2;le<=M;le++)C.set(le,le-2,0),le>Ct+2&&C.set(le,le-3,0);for(tt=Ct;tt<=M-1&&(_n=tt!==M-1,tt!==Ct&&(se=C.get(tt,tt-1),Ce=C.get(tt+1,tt-1),je=_n?C.get(tt+2,tt-1):0,ft=Math.abs(se)+Math.abs(Ce)+Math.abs(je),ft!==0&&(se=se/ft,Ce=Ce/ft,je=je/ft)),ft!==0);tt++)if(Be=Math.sqrt(se*se+Ce*Ce+je*je),se<0&&(Be=-Be),Be!==0){for(tt!==Ct?C.set(tt,tt-1,-Be*ft):yt!==Ct&&C.set(tt,tt-1,-C.get(tt,tt-1)),se=se+Be,ft=se/Be,fn=Ce/Be,Le=je/Be,Ce=Ce/se,je=je/se,Ve=tt;Ve<L;Ve++)se=C.get(tt,Ve)+Ce*C.get(tt+1,Ve),_n&&(se=se+je*C.get(tt+2,Ve),C.set(tt+2,Ve,C.get(tt+2,Ve)-se*Le)),C.set(tt,Ve,C.get(tt,Ve)-se*ft),C.set(tt+1,Ve,C.get(tt+1,Ve)-se*fn);for(le=0;le<=Math.min(M,tt+3);le++)se=ft*C.get(le,tt)+fn*C.get(le,tt+1),_n&&(se=se+Le*C.get(le,tt+2),C.set(le,tt+2,C.get(le,tt+2)-se*je)),C.set(le,tt,C.get(le,tt)-se),C.set(le,tt+1,C.get(le,tt+1)-se*Ce);for(le=Q;le<=$;le++)se=ft*b.get(le,tt)+fn*b.get(le,tt+1),_n&&(se=se+Le*b.get(le,tt+2),b.set(le,tt+2,b.get(le,tt+2)-se*je)),b.set(le,tt,b.get(le,tt)-se),b.set(le,tt+1,b.get(le,tt+1)-se*Ce)}}}if(ge!==0){for(M=L-1;M>=0;M--)if(se=E[M],Ce=S[M],Ce===0)for(yt=M,C.set(M,M,1),le=M-1;le>=0;le--){for(ht=C.get(le,le)-se,je=0,Ve=yt;Ve<=M;Ve++)je=je+C.get(le,Ve)*C.get(Ve,M);if(S[le]<0)Le=ht,Be=je;else if(yt=le,S[le]===0?C.set(le,M,ht!==0?-je/ht:-je/(j*ge)):(ft=C.get(le,le+1),fn=C.get(le+1,le),Ce=(E[le]-se)*(E[le]-se)+S[le]*S[le],Sn=(ft*Be-Le*je)/Ce,C.set(le,M,Sn),C.set(le+1,M,Math.abs(ft)>Math.abs(Le)?(-je-ht*Sn)/ft:(-Be-fn*Sn)/Le)),Sn=Math.abs(C.get(le,M)),j*Sn*Sn>1)for(Ve=le;Ve<=M;Ve++)C.set(Ve,M,C.get(Ve,M)/Sn)}else if(Ce<0)for(yt=M-1,Math.abs(C.get(M,M-1))>Math.abs(C.get(M-1,M))?(C.set(M-1,M-1,Ce/C.get(M,M-1)),C.set(M-1,M,-(C.get(M,M)-se)/C.get(M,M-1))):(sn=Gt(0,-C.get(M-1,M),C.get(M-1,M-1)-se,Ce),C.set(M-1,M-1,sn[0]),C.set(M-1,M,sn[1])),C.set(M,M-1,0),C.set(M,M,1),le=M-2;le>=0;le--){for(fe=0,$e=0,Ve=yt;Ve<=M;Ve++)fe=fe+C.get(le,Ve)*C.get(Ve,M-1),$e=$e+C.get(le,Ve)*C.get(Ve,M);if(ht=C.get(le,le)-se,S[le]<0)Le=ht,je=fe,Be=$e;else if(yt=le,S[le]===0?(sn=Gt(-fe,-$e,ht,Ce),C.set(le,M-1,sn[0]),C.set(le,M,sn[1])):(ft=C.get(le,le+1),fn=C.get(le+1,le),Je=(E[le]-se)*(E[le]-se)+S[le]*S[le]-Ce*Ce,ze=(E[le]-se)*2*Ce,Je===0&&ze===0&&(Je=j*ge*(Math.abs(ht)+Math.abs(Ce)+Math.abs(ft)+Math.abs(fn)+Math.abs(Le))),sn=Gt(ft*je-Le*fe+Ce*$e,ft*Be-Le*$e-Ce*fe,Je,ze),C.set(le,M-1,sn[0]),C.set(le,M,sn[1]),Math.abs(ft)>Math.abs(Le)+Math.abs(Ce)?(C.set(le+1,M-1,(-fe-ht*C.get(le,M-1)+Ce*C.get(le,M))/ft),C.set(le+1,M,(-$e-ht*C.get(le,M)-Ce*C.get(le,M-1))/ft)):(sn=Gt(-je-fn*C.get(le,M-1),-Be-fn*C.get(le,M),Le,Ce),C.set(le+1,M-1,sn[0]),C.set(le+1,M,sn[1]))),Sn=Math.max(Math.abs(C.get(le,M-1)),Math.abs(C.get(le,M))),j*Sn*Sn>1)for(Ve=le;Ve<=M;Ve++)C.set(Ve,M-1,C.get(Ve,M-1)/Sn),C.set(Ve,M,C.get(Ve,M)/Sn)}for(le=0;le<L;le++)if(le<Q||le>$)for(Ve=le;Ve<L;Ve++)b.set(le,Ve,C.get(le,Ve));for(Ve=L-1;Ve>=Q;Ve--)for(le=Q;le<=$;le++){for(Le=0,tt=Q;tt<=Math.min(Ve,$);tt++)Le=Le+b.get(le,tt)*C.get(tt,Ve);b.set(le,Ve,Le)}}}function Gt(L,S,E,b){let C,M;return Math.abs(E)>Math.abs(b)?(C=b/E,M=E+C*b,[(L+C*S)/M,(S-C*L)/M]):(C=E/b,M=b+C*E,[(C*L+S)/M,(C*S-L)/M])}class di{constructor(S){if(S=Dt.checkMatrix(S),!S.isSymmetric())throw new Error("Matrix is not symmetric");let E=S,b=E.rows,C=new U(b,b),M=!0,Q,$,j;for($=0;$<b;$++){let q=0;for(j=0;j<$;j++){let ge=0;for(Q=0;Q<j;Q++)ge+=C.get(j,Q)*C.get($,Q);ge=(E.get($,j)-ge)/C.get(j,j),C.set($,j,ge),q=q+ge*ge}for(q=E.get($,$)-q,M&&(M=q>0),C.set($,$,Math.sqrt(Math.max(q,0))),j=$+1;j<b;j++)C.set($,j,0)}this.L=C,this.positiveDefinite=M}isPositiveDefinite(){return this.positiveDefinite}solve(S){S=Dt.checkMatrix(S);let E=this.L,b=E.rows;if(S.rows!==b)throw new Error("Matrix dimensions do not match");if(this.isPositiveDefinite()===!1)throw new Error("Matrix is not positive definite");let C=S.columns,M=S.clone(),Q,$,j;for(j=0;j<b;j++)for($=0;$<C;$++){for(Q=0;Q<j;Q++)M.set(j,$,M.get(j,$)-M.get(Q,$)*E.get(j,Q));M.set(j,$,M.get(j,$)/E.get(j,j))}for(j=b-1;j>=0;j--)for($=0;$<C;$++){for(Q=j+1;Q<b;Q++)M.set(j,$,M.get(j,$)-M.get(Q,$)*E.get(Q,j));M.set(j,$,M.get(j,$)/E.get(j,j))}return M}get lowerTriangularMatrix(){return this.L}}class Ha{constructor(S,E={}){S=Dt.checkMatrix(S);let{Y:b}=E;const{scaleScores:C=!1,maxIterations:M=1e3,terminationCriteria:Q=1e-10}=E;let $;if(b){if(r.isAnyArray(b)&&typeof b[0]=="number"?b=U.columnVector(b):b=Dt.checkMatrix(b),b.rows!==S.rows)throw new Error("Y should have the same number of rows as X");$=b.getColumnVector(0)}else $=S.getColumnVector(0);let j=1,q,ge,se,Ce;for(let je=0;je<M&&j>Q;je++)se=S.transpose().mmul($).div($.transpose().mmul($).get(0,0)),se=se.div(se.norm()),q=S.mmul(se).div(se.transpose().mmul(se).get(0,0)),je>0&&(j=q.clone().sub(Ce).pow(2).sum()),Ce=q.clone(),b?(ge=b.transpose().mmul(q).div(q.transpose().mmul(q).get(0,0)),ge=ge.div(ge.norm()),$=b.mmul(ge).div(ge.transpose().mmul(ge).get(0,0))):$=q;if(b){let je=S.transpose().mmul(q).div(q.transpose().mmul(q).get(0,0));je=je.div(je.norm());let Be=S.clone().sub(q.clone().mmul(je.transpose())),Le=$.transpose().mmul(q).div(q.transpose().mmul(q).get(0,0)),Ze=b.clone().sub(q.clone().mulS(Le.get(0,0)).mmul(ge.transpose()));this.t=q,this.p=je.transpose(),this.w=se.transpose(),this.q=ge,this.u=$,this.s=q.transpose().mmul(q),this.xResidual=Be,this.yResidual=Ze,this.betas=Le}else this.w=se.transpose(),this.s=q.transpose().mmul(q).sqrt(),C?this.t=q.clone().div(this.s.get(0,0)):this.t=q,this.xResidual=S.sub(q.mmul(se.transpose()))}}return $t.AbstractMatrix=ne,$t.CHO=di,$t.CholeskyDecomposition=di,$t.DistanceMatrix=ie,$t.EVD=Me,$t.EigenvalueDecomposition=Me,$t.LU=Hn,$t.LuDecomposition=Hn,$t.Matrix=U,$t.MatrixColumnSelectionView=X,$t.MatrixColumnView=de,$t.MatrixFlipColumnView=xe,$t.MatrixFlipRowView=ce,$t.MatrixRowSelectionView=He,$t.MatrixRowView=De,$t.MatrixSelectionView=Xe,$t.MatrixSubView=ct,$t.MatrixTransposeView=dt,$t.NIPALS=Ha,$t.Nipals=Ha,$t.QR=Jt,$t.QrDecomposition=Jt,$t.SVD=ye,$t.SingularValueDecomposition=ye,$t.SymmetricMatrix=W,$t.WrapperMatrix1D=Nn,$t.WrapperMatrix2D=Dt,$t.correlation=Pn,$t.covariance=Yr,$t.default=U,$t.determinant=at,$t.inverse=me,$t.linearDependencies=Kt,$t.pseudoInverse=ci,$t.solve=pt,$t.wrap=ui,$t}var Zg=CAe(),GO=xD(Zg);const zO=Zg.Matrix,SAe=Zg.SingularValueDecomposition;GO.Matrix?GO.Matrix:Zg.Matrix;const I3=(r,e)=>{const t=r.nodeCount(),n=Array.from({length:t},()=>[]),i={};let a=0;return r.forEachNode(s=>{i[s.id]=a++}),r.forEachEdge(s=>{const o=i[s.source],A=i[s.target];o==null||A==null||(n[o].push(A),n[A].push(o))}),n},_Ae=(r,e)=>{const t=r.length,n=new Array(t);for(let i=0;i<t;i++){const a=r[i],s=a.length,o=new Array(s);for(let A=0;A<s;A++)o[A]=a[A]*e;n[i]=o}return n};function O3(r){const e=r.length;new Array(e).fill(0);const t=Array.from({length:e},()=>new Array(e).fill(1/0));for(let n=0;n<e;n++)t[n]=kAe(r,n);return t}function kAe(r,e){const t=r.length,n=new Array(t).fill(1/0);n[e]=0;const i=new TAe;for(i.push([0,e]);!i.empty();){const[a,s]=i.pop();if(a!==n[s])continue;const o=r[s];for(let A=0;A<o.length;A++){const l=o[A],u=a+1;u<n[l]&&(n[l]=u,i.push([u,l]))}}return n}class TAe{constructor(){this.data=[]}push(e){this.data.push(e),this.bubbleUp(this.data.length-1)}pop(){const 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){const t=this.data;for(;e>0;){const n=e-1>>1;if(t[n][0]<=t[e][0])break;[t[n],t[e]]=[t[e],t[n]],e=n}}bubbleDown(e){const t=this.data,n=t.length;for(;;){const i=e*2+1,a=e*2+2;let s=e;if(i<n&&t[i][0]<t[s][0]&&(s=i),a<n&&t[a][0]<t[s][0]&&(s=a),s===e)break;[t[e],t[s]]=[t[s],t[e]],e=s}}}const cE={center:[0,0],linkDistance:50};class L3 extends ws{constructor(){super(...arguments),this.id="mds"}getDefaultOptions(){return cE}layout(){return Ir(this,void 0,void 0,function*(){const{linkDistance:e=cE.linkDistance}=this.options,{center:t}=Zi(this.options),n=this.model.nodeCount();if(n===0||n===1){TA(this.model,t);return}const i=I3(this.model),a=O3(i);FAe(a);const s=_Ae(a,e),o=N3(s);let A=0;this.model.forEachNode(l=>{const u=o[A++];l.x=u[0]+t[0],l.y=u[1]+t[1]})})}}const FAe=r=>{let e=Number.NEGATIVE_INFINITY;const t=[],n=r.length;for(let i=0;i<n;i++){const a=r[i],s=a.length;for(let o=0;o<s;o++){const A=a[o];A===1/0?t.push([i,o]):e<A&&(e=A)}}for(let i=0;i<t.length;i++){const[a,s]=t[i];r[a][s]=e}},N3=(r,e=2,t=cE.linkDistance)=>{try{const n=r.length,i=new zO(n,n);for(let h=0;h<n;h++)for(let f=0;f<n;f++){const p=r[h][f];i.set(h,f,-.5*p*p)}const a=i.mean("row"),s=i.mean("column"),o=i.mean();i.add(o).subRowVector(a).subColumnVector(s);const A=new SAe(i),l=zO.sqrt(A.diagonalMatrix).diagonal(),u=A.leftSingularVectors,c=l,d=[];for(let h=0;h<u.rows;h++){const f=[];for(let p=0;p<e;p++)f.push(u.get(h,p)*c[p]);d.push(f)}return d}catch{const i=[];for(let a=0;a<r.length;a++){const s=Math.random()*t,o=Math.random()*t;i.push([s,o])}return i}},MAe=800,VO={maxIteration:10,width:10,speed:100,gravity:10,k:5},IAe=(r,e)=>{const t=Object.assign(Object.assign({},VO),e),{maxIteration:n,width:i,k:a,speed:s=VO.speed,strictRadial:o,focusNode:A,radiiMap:l,nodeSizeFunc:u}=t,c=a*.002,d=new Map,h=i/10;for(let f=0;f<n&&(r.forEachNode(g=>{d.set(g.id,{x:0,y:0})}),OAe(r,d,a,l,u),!(LAe(r,d,s,o,A,h,l)<c));f++);},OAe=(r,e,t,n,i)=>{let a=0;r.forEachNode(s=>{let o=0;r.forEachNode(A=>{if(o<=a){o++;return}if(s.id===A.id||n.get(s.id)!==n.get(A.id))return;let l=s.x-A.x,u=s.y-A.y,c=Math.sqrt(l*l+u*u);if(c===0){c=1;const f=a>o?1:-1;l=.01*f,u=.01*f}const d=Math.max(...i(s._original)),h=Math.max(...i(A._original));if(c<h/2+d/2){const f=t*t/c,p=e.get(s.id),g=e.get(A.id),v=l/c*f,m=u/c*f;e.set(s.id,{x:p.x+v,y:p.y+m}),e.set(A.id,{x:g.x-v,y:g.y-m})}o++}),a++})},LAe=(r,e,t,n,i,a,s)=>{n&&r.forEachNode(l=>{const u=l.x-i.x,c=l.y-i.y,d=Math.sqrt(u*u+c*c);let h=c/d,f=-u/d;const p=e.get(l.id),g=Math.sqrt(p.x*p.x+p.y*p.y);let v=Math.acos((h*p.x+f*p.y)/g);v>Math.PI/2&&(v-=Math.PI/2,h*=-1,f*=-1);const m=Math.cos(v)*g;e.set(l.id,{x:h*m,y:f*m})});let o=0,A=0;return r.forEachNode(l=>{if(l.id===i.id)return;const u=e.get(l.id),c=Math.sqrt(u.x*u.x+u.y*u.y);if(c>0){const d=Math.min(a*(t/MAe),c);if(l.x+=u.x/c*d,l.y+=u.y/c*d,n){let h=l.x-i.x,f=l.y-i.y;const p=Math.sqrt(h*h+f*f);h=h/p*s.get(l.id),f=f/p*s.get(l.id),l.x=i.x+h,l.y=i.y+f}o+=d,A++}}),A>0?o/A:0},zo={focusNode:null,linkDistance:50,maxIteration:1e3,maxPreventOverlapIteration:200,preventOverlap:!1,sortStrength:10,strictRadial:!0,unitRadius:null,nodeSize:10,nodeSpacing:0};class P3 extends ws{constructor(){super(...arguments),this.id="radial"}getDefaultOptions(){return zo}layout(){return Ir(this,void 0,void 0,function*(){const{width:e,height:t,center:n}=Zi(this.options),i=this.model.nodeCount();if(!i||i===1)return TA(this.model,n);const{focusNode:a,linkDistance:s=zo.linkDistance,maxIteration:o=zo.maxIteration,maxPreventOverlapIteration:A=zo.maxPreventOverlapIteration,nodeSize:l,nodeSpacing:u,preventOverlap:c,sortBy:d,sortStrength:h=zo.sortStrength,strictRadial:f,unitRadius:p}=this.options,g=a&&this.model.node(a)||this.model.firstNode(),v=this.model.nodeIndexOf(g.id),m=I3(this.model),y=O3(m),w=RAe(y,v);UAe(y,v,w+1);const B=y[v],x=(e-n[0]>n[0]?n[0]:e-n[0])||e/2,k=(t-n[1]>n[1]?n[1]:t-n[1])||t/2,_=Math.min(x,k),T=Math.max(...B),F=[],I=new Map,O=p??_/T;B.forEach((N,K)=>{const J=N*O;F.push(J),I.set(this.model.nodeAt(K).id,J)});const P=NAe(this.model,y,s,F,O,d,h),G=N3(P,2,s),ee=G[v];let te=0;if(this.model.forEachNode(N=>{const K=G[te];N.x=K[0]-ee[0],N.y=K[1]-ee[1],te++}),this.run(o,P,F,v),this.model.forEachNode(N=>{N.x+=n[0],N.y+=n[1]}),c){const K={nodeSizeFunc:Hs(l,u,zo.nodeSize,zo.nodeSpacing),radiiMap:I,width:e,strictRadial:!!f,focusNode:g,maxIteration:A,k:i/4.5};IAe(this.model,K)}})}run(e,t,n,i){const a=PAe(t),s=this.model.nodeCount(),o=this.model.nodes(),A=new Float64Array(s),l=new Float64Array(s);for(let u=0;u<s;u++)A[u]=o[u].x,l[u]=o[u].y;for(let u=0;u<=e;u++){const c=u/e,d=1-c;for(let h=0;h<s;h++){if(h===i)continue;const f=A[h],p=l[h],g=Math.sqrt(f*f+p*p),v=g===0?0:1/g;let m=0,y=0,w=0;for(let x=0;x<s;x++){if(h===x)continue;const k=A[x],_=l[x],T=Math.sqrt((f-k)*(f-k)+(p-_)*(p-_)),F=T===0?0:1/T,I=t[x][h];w+=a[h][x],m+=a[h][x]*(k+I*(f-k)*F),y+=a[h][x]*(_+I*(p-_)*F)}const B=n[h]===0?0:1/n[h];w*=d,w+=c*B*B,m*=d,m+=c*B*f*v,y*=d,y+=c*B*p*v,A[h]=m/w,l[h]=y/w,o[h].x=A[h],o[h].y=l[h]}}}}const NAe=(r,e,t,n,i,a,s)=>{const o=e.length,A=new Array(o),l=new Array(o);for(let f=0;f<o;f++)l[f]=n[f]/i;const u=(t+i)/2,c=new Map,d=!a||a==="data"?null:Tr(a,["node"]),h=a==="data";for(let f=0;f<o;f++){const p=e[f],g=new Array(o);A[f]=g;const v=l[f]||1;for(let m=0;m<o;m++){if(f===m){g[m]=0;continue}const y=p[m];if(n[f]===n[m])if(h)g[m]=y*Math.abs(f-m)*s/v;else if(d){const w=r.nodeAt(f),B=r.nodeAt(m);let x=c.get(w.id);if(x===void 0){const _=d(w._original)||0;x=typeof _=="string"?_.charCodeAt(0):Number(_||0),c.set(w.id,x)}let k=c.get(B.id);if(k===void 0){const _=d(B._original)||0;k=typeof _=="string"?_.charCodeAt(0):Number(_||0),c.set(B.id,k)}g[m]=y*Math.abs(x-k)*s/v}else g[m]=y*t/v;else g[m]=y*u}}return A},PAe=r=>{const e=r.length,t=r[0].length,n=[];for(let i=0;i<e;i++){const a=[];for(let s=0;s<t;s++)r[i][s]!==0?a.push(1/(r[i][s]*r[i][s])):a.push(0);n.push(a)}return n},UAe=(r,e,t)=>{const n=r.length;for(let i=0;i<n;i++)if(r[e][i]===1/0){r[e][i]=t,r[i][e]=t;for(let a=0;a<n;a++)r[i][a]!==1/0&&r[e][a]===1/0&&(r[e][a]=t+r[i][a],r[a][e]=t+r[i][a])}for(let i=0;i<n;i++)if(i!==e){for(let a=0;a<n;a++)if(r[i][a]===1/0){let s=Math.abs(r[e][i]-r[e][a]);s=s===0?1:s,r[i][a]=s}}},RAe=(r,e)=>{const t=r[e];let n=0;for(let i=0;i<t.length;i++)t[i]!==1/0&&(n=Math.max(n,t[i]));return n};class U3 extends ws{constructor(){super(...arguments),this.id="random"}getDefaultOptions(){return{center:[0,0],width:300,height:300}}layout(){return Ir(this,void 0,void 0,function*(){const{width:e,height:t,center:n}=Zi(this.options);this.model.forEachNode(i=>{i.x=KO(e)+n[0],i.y=KO(t)+n[1]})})}}const QAe=.9,KO=r=>(Math.random()-.5)*QAe*r,jO={"antv-dagre":sD,"d3-force-3d":Eie,"d3-force":Qx,"force-atlas2":k3,circular:AD,concentric:lD,dagre:S3,force:_3,fruchterman:T3,grid:F3,mds:L3,radial:P3,random:U3},DAe={layout:r=>r?{type:"concentric",preventOverlap:!0}:{type:"force",preventOverlap:!0},nodeSize:20,nodeSpacing:0,comboPadding:10,comboSpacing:0},Vo="root";class HAe extends ws{constructor(){super(...arguments),this.id="combo-combined",this.relativePositions=new Map,this.getParentId=e=>e.parentId||Vo}getDefaultOptions(){return DAe}layout(){return Ir(this,void 0,void 0,function*(){const{center:e}=Zi(this.options);this.resetLayoutState();const 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 Ir(this,void 0,void 0,function*(){for(const h of e.children||[])this.isCombo(h)&&(yield this.layoutHierarchy(h));const t=e.children||[];if(t.length===0){e.size=[0,0,0],e.parentId=e.id===Vo?null:e.parentId;return}const n=this.getLayoutConfig(e),{type:i}=n,a=cee(n,["type"]),s=this.getLayoutClass(i),o=new s(a),A=this.createTemporaryGraphData(t);yield $Ae(o,A,{});const l=o.model.nodes();this.recordRelativePositions(l,e);const{center:u,width:c,height:d}=this.calculateComboBounds(e);e.size=[c,d,0],(e.children||[]).forEach(h=>{const f=this.relativePositions.get(h.id);if(!f)return;const p=Object.assign(Object.assign({},f),{x:f.x-u[0],y:f.y-u[1]});this.relativePositions.set(h.id,p)})})}recordRelativePositions(e,t){const n=this.calculateComboCenter(e);e.forEach(i=>{this.relativePositions.set(i.id,{x:i.x-n[0],y:i.y-n[1],relativeTo:String(t.id)})})}buildHierarchyTree(){const e={id:Vo,isCombo:!0,children:[],parentId:null},t=new Map;return t.set(Vo,e),this.model.forEachNode(n=>{if(this.isCombo(n)){const i=Object.assign(Object.assign({},n),{children:[],parentId:this.getParentId(n)});t.set(String(n.id),i)}}),this.model.forEachNode(n=>{const i=t.get(this.getParentId(n));if(this.isCombo(n)){const a=t.get(String(n.id));i&&a&&(i.children.push(a),a.parentId=i.id)}else i&&i.children.push(Object.assign(Object.assign({},n),{children:[],parentId:this.getParentId(n)}))}),e}convertToGlobalPositions(e,t){var n,i;const a=e.id===Vo?null:this.relativePositions.get(e.id),s=t[0]+((n=a==null?void 0:a.x)!==null&&n!==void 0?n:0),o=t[1]+((i=a==null?void 0:a.y)!==null&&i!==void 0?i:0);e.x=s,e.y=o,(e.children||[]).forEach(A=>{var l,u;const c=this.relativePositions.get(A.id);A.x=s+((l=c==null?void 0:c.x)!==null&&l!==void 0?l:0),A.y=o+((u=c==null?void 0:c.y)!==null&&u!==void 0?u:0),A.size=this.getNodeLikeSize(A,!1),this.isCombo(A)&&this.convertToGlobalPositions(A,[s,o])})}getLayoutConfig(e){const t=typeof this.options.layout=="object"?this.options.layout:Tr(this.options.layout,["comboId"]);if(typeof t=="function"){const n=e.id===Vo?null:e.id;return this.normalizeLayoutConfig(t(n))}return this.normalizeLayoutConfig(t)}normalizeLayoutConfig(e){const t=Object.assign(Object.assign({type:"concentric"},Zi(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 jO[e]||jO.concentric}createTemporaryGraphData(e){const t=e.map(s=>Object.assign(Object.assign({},s),{size:this.getNodeLikeSize(s)})),n=new Set(e.map(s=>String(s.id))),i=[],a=s=>{let o=String(s);const A=new Set;for(;o&&!A.has(o);){if(n.has(o))return o;A.add(o);const l=this.model.node(o),u=l==null?void 0:l.parentId;o=u==null?null:String(u)}return null};return this.model.forEachEdge(s=>{const o=a(String(s.source)),A=a(String(s.target));!o||!A||o!==A&&i.push({source:o,target:A})}),{nodes:t,edges:i}}calculateComboCenter(e){if(e.length===0)return[0,0];const t=new Map;e.forEach(o=>{const A=this.getNodeLikeSize(o);t.set(o.id,A)});let n=1/0,i=1/0,a=-1/0,s=-1/0;return e.forEach(o=>{const[A=0,l=0]=t.get(o.id);n=Math.min(n,o.x-A/2),i=Math.min(i,o.y-l/2),a=Math.max(a,o.x+A/2),s=Math.max(s,o.y+l/2)}),!Number.isFinite(n)||!Number.isFinite(i)?[0,0]:[(n+a)/2,(i+s)/2]}calculateComboBounds(e){const t=e.children||[];if(t.length===0)return{center:[0,0],width:0,height:0};let n=1/0,i=1/0,a=-1/0,s=-1/0;if(t.forEach(l=>{var u,c;const d=this.relativePositions.get(l.id),h=(u=d==null?void 0:d.x)!==null&&u!==void 0?u:0,f=(c=d==null?void 0:d.y)!==null&&c!==void 0?c:0,[p,g]=this.getNodeLikeSize(l);n=Math.min(n,h-p/2),i=Math.min(i,f-g/2),a=Math.max(a,h+p/2),s=Math.max(s,f+g/2)}),!Number.isFinite(n)||!Number.isFinite(i))return{center:[0,0],width:0,height:0};const A=Wi(this.options.comboPadding,20,"combo")(e._original);return{center:[(n+a)/2,(i+s)/2],width:a-n+A*2,height:s-i+A*2}}getNodeLikeSize(e,t=!0){return this.isCombo(e)?this.getComboSize(e,t):this.getNodeSize(e,t)}getNodeSize(e,t=!0){const{nodeSize:n,nodeSpacing:i}=this.options;return Hs(n,t?i:0)(e._original)}getComboSize(e,t=!0){const n=Wi(this.options.comboSpacing,0,"combo"),i=t?n(e._original):0,[a,s]=e.size;return[a+i/2,s+i/2,0]}applyPositionsToModel(e){const t=i=>{const a=this.model.node(i.id);a&&(a.x=i.x,a.y=i.y,i.size&&(a.size=i.size))},n=i=>{i.id!==Vo&&t(i),(i.children||[]).forEach(a=>{this.isCombo(a)?n(a):t(a)})};n(e)}}function $Ae(r,e,t={}){var n;return Ir(this,void 0,void 0,function*(){return iE(r)?(r.execute(e,t),r.stop(),r.tick((n=t.iterations)!==null&&n!==void 0?n:300)):yield r.execute(e,t)})}var GAe=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class Jg extends Pc{constructor(){super(...arguments),this.id="fishbone"}getRoot(){const e=this.context.model.getRootsData();if(!(Ja(e)||e.length>2))return e[0]}formatSize(e){const t=typeof e=="function"?e:()=>e;return n=>Yi(t(n))}doLayout(e,t){const{hGap:n,getRibSep:i,vGap:a,nodeSize:s,height:o}=t,{model:A}=this.context,l=this.formatSize(s);let u=l(e)[0]+i(e);const c=(y,w=0)=>{var B;return w+=n*((y.children||[]).length+1),(B=y.children)===null||B===void 0||B.forEach(x=>{var k;(k=A.getNodeLikeDatum(x).children)===null||k===void 0||k.forEach(T=>{const F=A.getNodeLikeDatum(T);w=c(F,w)})}),w},d=y=>{if(y.depth===1)return u;const w=A.getParentData(y.id,"tree");if(WA(y)){const B=A.getParentData(w.id,"tree"),x=p(y)-p(B);return d(w)+x*n/a}else{const B=(w.children||[]).indexOf(y.id),x=A.getNodeData((w.children||[]).slice(B));return h(w)-x.reduce((k,_)=>k+c(_),0)-l(w)[0]/2}},h=iB(y=>{if(_b(y))return l(y)[0]/2;const w=A.getParentData(y.id,"tree");if(WA(y))return d(y)+c(y)+l(y)[0]/2;{const B=p(y)-p(w),x=n/a;return d(y)+B*x}},y=>y.id),f=y=>p(A.getParentData(y,"tree")),p=iB(y=>{if(_b(y))return o/2;if(WA(y)){const w=A.getParentData(y.id,"tree"),B=w.children.indexOf(y.id);if(B===0)return f(w.id)+a;const x=A.getNodeLikeDatum(w.children[B-1]);if(Ja(x.children))return p(x)+a;const k=A.getDescendantsData(x.id);return Math.max(...k.map(_=>WA(_)?f(_.id):p(_)))+a}else{if(Ja(y.children))return f(y.id)+a;const w=A.getNodeLikeDatum(y.children.slice(-1)[0]);if(Ja(w.children))return p(w)+a;const B=A.getDescendantsData(y.id).slice(-1)[0];return(WA(B)?f(B.id):p(B))+a}},y=>y.id);let g=0;const v={nodes:[],edges:[]},m=y=>{var w;(w=y.children)===null||w===void 0||w.forEach(T=>m(A.getNodeLikeDatum(T)));const B=p(y),x=h(y);if(v.nodes.push({id:y.id,x,y:B}),_b(y))return;const k=A.getRelatedEdgesData(y.id,"in")[0],_=[d(y),WA(y)?B:f(y.id)];v.edges.push({id:ve(k),controlPoints:[_],relatedNodeId:y.id}),g=Math.max(g,x+i(y)),y.depth===1&&(u=g)};return m(e),v}placeAlterative(e,t){const n=(t.children||[]).filter((o,A)=>A%2!==0);if(n.length===0)return e;const{model:i}=this.context,a=e.nodes.find(o=>o.id===t.id).y,s=o=>{const A=i.getAncestorsData(o,"tree");if(Ja(A))return!1;const l=A.length===1?o:A[A.length-2].id;return n.includes(l)};e.nodes.forEach(o=>{s(o.id)&&(o.y=2*a-o.y)}),e.edges.forEach(o=>{s(o.relatedNodeId)&&(o.controlPoints=o.controlPoints.map(A=>[A[0],2*a-A[1]]))})}rightToLeft(e,t){return e.nodes.forEach(n=>n.x=t.width-n.x),e.edges.forEach(n=>{n.controlPoints=n.controlPoints.map(i=>[t.width-i[0],i[1]])}),e}execute(e,t){return GAe(this,void 0,void 0,function*(){const n=Object.assign(Object.assign(Object.assign({},Jg.defaultOptions),this.options),t),{direction:i,nodeSize:a}=n,s=this.getRoot();if(!s)return e;const o=this.formatSize(a);n.vGap||(n.vGap=Math.max(...(e.nodes||[]).map(d=>o(d)[1]))),n.hGap||(n.hGap=Math.max(...(e.nodes||[]).map(d=>o(d)[0])));let A=this.doLayout(s,n);this.placeAlterative(A,s),i==="RL"&&(A=this.rightToLeft(A,n));const{model:l}=this.context,u=[],c=[];return A.nodes.forEach(d=>{const{id:h,x:f,y:p}=d,g=l.getNodeLikeDatum(h);u.push(WO(g,{x:f,y:p}))}),A.edges.forEach(d=>{const{id:h,controlPoints:f}=d,p=l.getEdgeDatum(h);c.push(WO(p,{controlPoints:f}))}),{nodes:u,edges:c}})}}Jg.defaultOptions={direction:"RL",getRibSep:()=>60};const WO=(r,e)=>Object.assign(Object.assign({},r),{style:Object.assign(Object.assign({},r.style||{}),e)}),_b=r=>r.depth===0,WA=r=>(r.depth||(r.depth=0))%2===0;var zAe=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class ep extends Pc{constructor(){super(...arguments),this.id="snake"}formatSize(e,t){const n=typeof t=="function"?t:(()=>t);return e.reduce((i,a)=>{const[s,o]=Yi(n(a))||[0,0];return[Math.max(i[0],s),Math.max(i[1],o)]},[0,0])}validate(e){const{nodes:t=[],edges:n=[]}=e,i={},a={},s={};t.forEach(d=>{i[d.id]=0,a[d.id]=0,s[d.id]=[]}),n.forEach(d=>{i[d.target]++,a[d.source]++,s[d.source].push(d.target)});const o=new Set,A=d=>{o.has(d)||(o.add(d),s[d].forEach(A))};if(A(t[0].id),o.size!==t.length)return!1;const l=t.filter(d=>i[d.id]===0),u=t.filter(d=>a[d.id]===0);return!(l.length!==1||u.length!==1||t.filter(d=>i[d.id]===1&&a[d.id]===1).length!==t.length-2)}execute(e,t){return zAe(this,void 0,void 0,function*(){var n;if(!this.validate(e))return e;const{nodeSize:i,padding:a,sortBy:s,cols:o,colGap:A,rowGap:l,clockwise:u,width:c,height:d}=Object.assign({},ep.defaultOptions,this.options,t),[h,f,p,g]=ga(a),v=this.formatSize(e.nodes||[],i),m=Math.ceil((e.nodes||[]).length/o);let y=A||(c-g-f-o*v[0])/(o-1),w=l||(d-h-p-m*v[1])/(m-1);return(w===1/0||w<0)&&(w=0),(y===1/0||y<0)&&(y=0),{nodes:((s?(n=e.nodes)===null||n===void 0?void 0:n.sort(s):VAe(e))||[]).map((k,_)=>{const T=Math.floor(_/o),F=_%o,I=u?T%2===0?F:o-1-F:T%2===0?o-1-F:F,O=g+I*(v[0]+y)+v[0]/2,P=h+T*(v[1]+w)+v[1]/2;return{id:k.id,style:{x:O,y:P}}})}})}}ep.defaultOptions={padding:0,cols:5,clockwise:!0};function VAe(r){const{nodes:e=[],edges:t=[]}=r,n={},i={};e.forEach(o=>{n[o.id]=0,i[o.id]=[]}),t.forEach(o=>{n[o.target]++,i[o.source].push(o.target)});const a=[],s=[];for(e.forEach(o=>{n[o.id]===0&&a.push(o.id)});a.length>0;){const o=a.shift(),A=e.find(l=>l.id===o);s.push(A),i[o].forEach(l=>{n[l]--,n[l]===0&&a.push(l)})}return s}const KAe=["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)"],jAe=["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)"],WAe=["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)"],qAe=["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)"],YAe=["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)"];class Dr extends fx{}function $l(r,e=!0,t){const n=document.createElement("div");return n.setAttribute("class",`g6-${r}`),Object.assign(n.style,{position:"absolute",display:"block"}),e&&Object.assign(n.style,{position:"unset",gridArea:"1 / 1 / 2 / 2",inset:"0px",height:"100%",width:"100%",overflow:"hidden",pointerEvents:"none"}),t&&Object.assign(n.style,t),n}function dE(r,e="div",t={},n="",i=document.body){const a=document.getElementById(r);a&&a.remove();const s=document.createElement(e);return s.innerHTML=n,s.id=r,Object.assign(s.style,t),i.appendChild(s),s}var XAe=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class tp extends Dr{constructor(e,t){super(e,Object.assign({},tp.defaultOptions,t)),this.$element=$l("background"),this.context.canvas.getContainer().prepend(this.$element),this.update(t)}update(e){const t=Object.create(null,{update:{get:()=>super.update}});return XAe(this,void 0,void 0,function*(){t.update.call(this,e),Object.assign(this.$element.style,DE(this.options,["key","type"]))})}destroy(){super.destroy(),this.$element.remove()}}tp.defaultOptions={transition:"background 0.5s",backgroundSize:"cover",zIndex:"-1"};function lC(r,e,t,n,i,a){const s=r,o=e,A=t-s,l=n-o;let u=i-s,c=a-o,d=u*A+c*l,h=0;d<=0?h=0:(u=A-u,c=l-c,d=u*A+c*l,d<=0?h=0:h=d*d/(A*A+l*l));const f=u*u+c*c-h;return f<0?0:f}function go(r,e,t,n){return(r-t)*(r-t)+(e-n)*(e-n)}function qO(r,e,t,n,i){return go(r,e,t,n)<i*i}function ZAe(r){if(!Number.isFinite(r))return t=>t;if(r===0)return Math.round;const e=Math.pow(10,r);return t=>Math.round(t*e)/e}function R3(r){const e=Math.min(r.x1,r.x2),t=Math.max(r.x1,r.x2),n=Math.min(r.y1,r.y2),i=Math.max(r.y1,r.y2);return{x:e,y:n,x2:t,y2:i,width:t-e,height:i-n}}class Ur{constructor(e,t,n,i){this.x1=e,this.y1=t,this.x2=n,this.y2=i}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(e){return new Ur(e.x1,e.y1,e.x2,e.y2)}cuts(e,t){if(this.y1===this.y2||t<this.y1&&t<=this.y2||t>this.y1&&t>=this.y2||e>this.x1&&e>=this.x2)return!1;if(e<this.x1&&e<=this.x2)return!0;const n=this.x1+(t-this.y1)*(this.x2-this.x1)/(this.y2-this.y1);return e<=n}distSquare(e,t){return lC(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}}var Zn;(function(r){r[r.POINT=1]="POINT",r[r.PARALLEL=2]="PARALLEL",r[r.COINCIDENT=3]="COINCIDENT",r[r.NONE=4]="NONE"})(Zn||(Zn={}));class kb{constructor(e,t=0,n=0){this.state=e,this.x=t,this.y=n}}function dh(r,e){const t=(e.x2-e.x1)*(r.y1-e.y1)-(e.y2-e.y1)*(r.x1-e.x1),n=(r.x2-r.x1)*(r.y1-e.y1)-(r.y2-r.y1)*(r.x1-e.x1),i=(e.y2-e.y1)*(r.x2-r.x1)-(e.x2-e.x1)*(r.y2-r.y1);if(i){const a=t/i,s=n/i;return 0<=a&&a<=1&&0<=s&&s<=1?new kb(Zn.POINT,r.x1+a*(r.x2-r.x1),r.y1+a*(r.y2-r.y1)):new kb(Zn.NONE)}return new kb(t===0||n===0?Zn.COINCIDENT:Zn.PARALLEL)}function Q3(r,e){const t=(e.x2-e.x1)*(r.y1-e.y1)-(e.y2-e.y1)*(r.x1-e.x1),n=(r.x2-r.x1)*(r.y1-e.y1)-(r.y2-r.y1)*(r.x1-e.x1),i=(e.y2-e.y1)*(r.x2-r.x1)-(e.x2-e.x1)*(r.y2-r.y1);if(i){const a=t/i,s=n/i;if(0<=a&&a<=1&&0<=s&&s<=1)return a}return Number.POSITIVE_INFINITY}function JAe(r,e){function t(i,a,s,o){let A=Q3(e,new Ur(i,a,s,o));return A=Math.abs(A-.5),A>=0&&A<=1?1:0}let n=t(r.x,r.y,r.x2,r.y);return n+=t(r.x,r.y,r.x,r.y2),n>1||(n+=t(r.x,r.y2,r.x2,r.y2),n>1)?!0:(n+=t(r.x2,r.y,r.x2,r.y2),n>0)}var Jn;(function(r){r[r.LEFT=0]="LEFT",r[r.TOP=1]="TOP",r[r.RIGHT=2]="RIGHT",r[r.BOTTOM=3]="BOTTOM"})(Jn||(Jn={}));function Ih(r,e,t){const n=new Set;return r.width<=0?(n.add(Jn.LEFT),n.add(Jn.RIGHT)):e<r.x?n.add(Jn.LEFT):e>r.x+r.width&&n.add(Jn.RIGHT),r.height<=0?(n.add(Jn.TOP),n.add(Jn.BOTTOM)):t<r.y?n.add(Jn.TOP):t>r.y+r.height&&n.add(Jn.BOTTOM),n}function D3(r,e){let t=e.x1,n=e.y1;const i=e.x2,a=e.y2,s=Array.from(Ih(r,i,a));if(s.length===0)return!0;let o=Ih(r,t,n);for(;o.size!==0;){for(const A of s)if(o.has(A))return!1;if(o.has(Jn.RIGHT)||o.has(Jn.LEFT)){let A=r.x;o.has(Jn.RIGHT)&&(A+=r.width),n=n+(A-t)*(a-n)/(i-t),t=A}else{let A=r.y;o.has(Jn.BOTTOM)&&(A+=r.height),t=t+(A-n)*(i-t)/(a-n),n=A}o=Ih(r,t,n)}return!0}function ele(r,e){let t=Number.POSITIVE_INFINITY,n=0;function i(a,s,o,A){let l=Q3(e,new Ur(a,s,o,A));l=Math.abs(l-.5),l>=0&&l<=1&&(n++,l<t&&(t=l))}return i(r.x,r.y,r.x2,r.y),i(r.x,r.y,r.x,r.y2),n>1||(i(r.x,r.y2,r.x2,r.y2),n>1)?t:(i(r.x2,r.y,r.x2,r.y2),n===0?-1:t)}function tle(r,e){let t=0;const n=dh(r,new Ur(e.x,e.y,e.x2,e.y));t+=n.state===Zn.POINT?1:0;const i=dh(r,new Ur(e.x,e.y,e.x,e.y2));t+=i.state===Zn.POINT?1:0;const a=dh(r,new Ur(e.x,e.y2,e.x2,e.y2));t+=a.state===Zn.POINT?1:0;const s=dh(r,new Ur(e.x2,e.y,e.x2,e.y2));return t+=s.state===Zn.POINT?1:0,{top:n,left:i,bottom:a,right:s,count:t}}class ri{constructor(e,t,n,i){this.x=e,this.y=t,this.width=n,this.height=i}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(e){return new ri(e.x,e.y,e.width,e.height)}equals(e){return this.x===e.x&&this.y===e.y&&this.width===e.width&&this.height===e.height}clone(){return new ri(this.x,this.y,this.width,this.height)}add(e){const t=Math.min(this.x,e.x),n=Math.min(this.y,e.y),i=Math.max(this.x2,e.x+e.width),a=Math.max(this.y2,e.y+e.height);this.x=t,this.y=n,this.width=i-t,this.height=a-n}addPoint(e){const t=Math.min(this.x,e.x),n=Math.min(this.y,e.y),i=Math.max(this.x2,e.x),a=Math.max(this.y2,e.y);this.x=t,this.y=n,this.width=i-t,this.height=a-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;const n=Ih(this,e,t);return n.has(Jn.TOP)?n.has(Jn.LEFT)?go(e,t,this.x,this.y):n.has(Jn.RIGHT)?go(e,t,this.x2,this.y):(this.y-t)*(this.y-t):n.has(Jn.BOTTOM)?n.has(Jn.LEFT)?go(e,t,this.x,this.y2):n.has(Jn.RIGHT)?go(e,t,this.x2,this.y2):(t-this.y2)*(t-this.y2):n.has(Jn.LEFT)?(this.x-e)*(this.x-e):n.has(Jn.RIGHT)?(e-this.x2)*(e-this.x2):0}}function nle(r){if(r.length===0)return null;const e=r[0],t=new ri(e.x,e.y,0,0);for(const n of r)t.addPoint(n);return t}class Lf{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(e){return new Lf(e.cx,e.cy,e.radius)}containsPt(e,t){return go(this.cx,this.cy,e,t)<this.radius*this.radius}distSquare(e,t){const n=go(this.cx,this.cy,e,t);if(n<this.radius*this.radius)return 0;const i=Math.sqrt(n)-this.radius;return i*i}draw(e){e.ellipse(this.cx,this.cy,this.radius,this.radius,0,0,Math.PI*2)}}class hA{constructor(e,t=0,n=0,i=0,a=0,s=10,o=10,A=new Float32Array(Math.max(0,s*o)).fill(0)){this.pixelGroup=e,this.i=t,this.j=n,this.pixelX=i,this.pixelY=a,this.width=s,this.height=o,this.area=A}createSub(e,t){return new hA(this.pixelGroup,e.x,e.y,t.x,t.y,e.width,e.height)}static fromPixelRegion(e,t){return new hA(t,0,0,e.x,e.y,Math.ceil(e.width/t),Math.ceil(e.height/t))}copy(e,t){return new hA(this.pixelGroup,this.scaleX(t.x),this.scaleY(t.y),t.x,t.y,e.width,e.height,e.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){const t=this.scaleX(e.x),n=this.scaleY(e.y),i=this.boundX(Math.ceil((e.x+e.width-this.pixelX)/this.pixelGroup)),a=this.boundY(Math.ceil((e.y+e.height-this.pixelY)/this.pixelGroup)),s=i-t,o=a-n;return new ri(t,n,s,o)}invertScaleX(e){return Math.round(e*this.pixelGroup+this.pixelX)}invertScaleY(e){return Math.round(e*this.pixelGroup+this.pixelY)}addPadding(e,t){const n=Math.ceil(t/this.pixelGroup),i=this.boundX(e.x-n),a=this.boundY(e.y-n),s=this.boundX(e.x2+n),o=this.boundY(e.y2+n),A=s-i,l=o-a;return new ri(i,a,A,l)}get(e,t){return e<0||t<0||e>=this.width||t>=this.height?Number.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;const n=this.width,i=e.width,a=Math.max(0,e.i),s=Math.max(0,e.j),o=Math.min(e.i+e.width,n),A=Math.min(e.j+e.height,this.height);if(!(A<=0||o<=0||a>=n||A>=this.height))for(let l=s;l<A;l++){const u=(l-e.j)*i,c=l*n;for(let d=a;d<o;d++){const h=e.area[d-e.i+u];h!==0&&(this.area[d+c]+=t*h)}}}fill(e){this.area.fill(e)}fillArea(e,t){const n=e.x+e.y*this.width;for(let i=0;i<e.height;i++){const a=n+i*this.width;this.area.fill(t,a,a+e.width)}}fillHorizontalLine(e,t,n,i){const a=e+t*this.width;this.area.fill(i,a,a+n)}fillVerticalLine(e,t,n,i){const a=e+t*this.width;for(let s=0;s<n;s++)this.area[a+s*this.width]=i}clear(){this.area.fill(0)}toString(){let e="";for(let t=0;t<this.height;t++){const n=t*this.width;for(let i=0;i<this.width;i++){const a=this.area[n+i];e+=a.toFixed(1).padStart(6),e+=" "}e+=`
183
- `}return e}draw(e,t=!0){if(this.width<=0||this.height<=0)return;e.save(),t&&e.translate(this.pixelX,this.pixelY);const n=this.area.reduce((s,o)=>Math.min(s,o),Number.POSITIVE_INFINITY),i=this.area.reduce((s,o)=>Math.max(s,o),Number.NEGATIVE_INFINITY),a=s=>(s-n)/(i-n);e.scale(this.pixelGroup,this.pixelGroup);for(let s=0;s<this.width;s++)for(let o=0;o<this.height;o++){const A=this.area[s+o*this.width];e.fillStyle=`rgba(0, 0, 0, ${a(A)})`,e.fillRect(s,o,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 i=0;i<this.width;i++)for(let a=0;a<this.height;a++){const s=this.area[i+a*this.width];e.fillStyle=s>t?"black":"white",e.fillRect(i,a,1,1)}e.restore()}}}function H3(r,e){const t=n=>({x:n.x-e,y:n.y-e,width:n.width+2*e,height:n.height+2*e});return Array.isArray(r)?r.map(t):t(r)}function YO(r,e,t){return $3(Object.assign(R3(r),{distSquare:(n,i)=>lC(r.x1,r.y1,r.x2,r.y2,n,i)}),e,t)}function $3(r,e,t){const n=H3(r,t),i=e.scale(n),a=e.createSub(i,n);return rle(a,e,t,(s,o)=>r.distSquare(s,o)),a}function rle(r,e,t,n){const i=t*t;for(let a=0;a<r.height;a++)for(let s=0;s<r.width;s++){const o=e.invertScaleX(r.i+s),A=e.invertScaleY(r.j+a),l=n(o,A);if(l===0){r.set(s,a,i);continue}if(l<i){const u=t-Math.sqrt(l);r.set(s,a,u*u)}}return r}function ile(r,e,t){const n=e.scale(r),i=e.addPadding(n,t),a=e.createSub(i,{x:r.x-t,y:r.y-t}),s=n.x-i.x,o=n.y-i.y,A=i.x2-n.x2,l=i.y2-n.y2,u=i.width-s-A,c=i.height-o-l,d=t*t;a.fillArea({x:s,y:o,width:u+1,height:c+1},d);const h=[0],f=Math.max(o,s,A,l);{const m=e.invertScaleX(n.x+n.width/2);for(let y=1;y<f;y++){const w=e.invertScaleY(n.y-y),B=r.distSquare(m,w);if(B<d){const x=t-Math.sqrt(B);h.push(x*x)}else break}}const p=[],g=Math.max(s,A),v=Math.max(o,A);for(let m=1;m<g;m++){const y=e.invertScaleX(n.x-m),w=[];for(let B=1;B<v;B++){const x=e.invertScaleY(n.y-B),k=r.distSquare(y,x);if(k<d){const _=t-Math.sqrt(k);w.push(_*_)}else w.push(0)}p.push(w)}for(let m=1;m<Math.min(o,h.length);m++){const y=h[m];a.fillHorizontalLine(s,o-m,u+1,y)}for(let m=1;m<Math.min(l,h.length);m++){const y=h[m];a.fillHorizontalLine(s,o+c+m,u+1,y)}for(let m=1;m<Math.min(s,h.length);m++){const y=h[m];a.fillVerticalLine(s-m,o,c+1,y)}for(let m=1;m<Math.min(l,h.length);m++){const y=h[m];a.fillVerticalLine(s+u+m,o,c+1,y)}for(let m=1;m<s;m++){const y=p[m-1],w=s-m;for(let B=1;B<o;B++)a.set(w,o-B,y[B-1]);for(let B=1;B<l;B++)a.set(w,o+c+B,y[B-1])}for(let m=1;m<A;m++){const y=p[m-1],w=s+u+m;for(let B=1;B<o;B++)a.set(w,o-B,y[B-1]);for(let B=1;B<l;B++)a.set(w,o+c+B,y[B-1])}return a}function Mn(r,e){return{x:r,y:e}}function ale(r,e,t,n){if(r.length===0)return[];const i=ule(r);return i.map((a,s)=>{const o=i.slice(0,s);return sle(e,a,o,t,n)}).flat()}function sle(r,e,t,n,i){const a=Mn(e.cx,e.cy),s=lle(a,t,r);if(s==null)return[];const o=new Ur(a.x,a.y,s.cx,s.cy),A=ole(o,r,n,i);return Ale(A,r)}function ole(r,e,t,n){const i=[],a=[];a.push(r);let s=!0;for(let o=0;o<t&&s;o++)for(s=!1;!s&&a.length>0;){const A=a.pop(),l=G3(e,A),u=l?tle(A,l):null;if(!l||!u||u.count!==2){s||i.push(A);continue}let c=n,d=fh(l,c,u,!0),h=Ks(d,a)||Ks(d,i),f=hh(d,e);for(;!h&&f&&c>=1;)c/=1.5,d=fh(l,c,u,!0),h=Ks(d,a)||Ks(d,i),f=hh(d,e);if(d&&!h&&!f&&(a.push(new Ur(A.x1,A.y1,d.x,d.y)),a.push(new Ur(d.x,d.y,A.x2,A.y2)),s=!0),s)continue;c=n,d=fh(l,c,u,!1);let p=Ks(d,a)||Ks(d,i);for(f=hh(d,e);!p&&f&&c>=1;)c/=1.5,d=fh(l,c,u,!1),p=Ks(d,a)||Ks(d,i),f=hh(d,e);d&&!p&&(a.push(new Ur(A.x1,A.y1,d.x,d.y)),a.push(new Ur(d.x,d.y,A.x2,A.y2)),s=!0),s||i.push(A)}for(;a.length>0;)i.push(a.pop());return i}function Ale(r,e){const t=[];for(;r.length>0;){const n=r.pop();if(r.length===0){t.push(n);break}const i=r.pop(),a=new Ur(n.x1,n.y1,i.x2,i.y2);G3(e,a)?(t.push(n),r.push(i)):r.push(a)}return t}function lle(r,e,t){let n=Number.POSITIVE_INFINITY;return e.reduce((i,a)=>{const s=go(r.x,r.y,a.cx,a.cy);if(s>n)return i;const o=new Ur(r.x,r.y,a.cx,a.cy),A=cle(t,o);return s*(A+1)*(A+1)<n&&(i=a,n=s*(A+1)*(A+1)),i},null)}function ule(r){if(r.length<2)return r;let e=0,t=0;return r.forEach(n=>{e+=n.cx,t+=n.cy}),e/=r.length,t/=r.length,r.map(n=>{const i=e-n.cx,a=t-n.cy,s=i*i+a*a;return[n,s]}).sort((n,i)=>n[1]-i[1]).map(n=>n[0])}function hh(r,e){return e.some(t=>t.containsPt(r.x,r.y))}function Ks(r,e){return e.some(t=>!!(qO(t.x1,t.y1,r.x,r.y,.001)||qO(t.x2,t.y2,r.x,r.y,.001)))}function G3(r,e){let t=Number.POSITIVE_INFINITY,n=null;for(const i of r){if(!D3(i,e))continue;const a=ele(i,e);a>=0&&a<t&&(n=i,t=a)}return n}function cle(r,e){return r.reduce((t,n)=>D3(n,e)&&JAe(n,e)?t+1:t,0)}function fh(r,e,t,n){const i=t.top,a=t.left,s=t.bottom,o=t.right;if(n){if(a.state===Zn.POINT){if(i.state===Zn.POINT)return Mn(r.x-e,r.y-e);if(s.state===Zn.POINT)return Mn(r.x-e,r.y2+e);const d=r.width*r.height;return r.width*((a.y-r.y+(o.y-r.y))*.5)<d*.5?a.y>o.y?Mn(r.x-e,r.y-e):Mn(r.x2+e,r.y-e):a.y<o.y?Mn(r.x-e,r.y2+e):Mn(r.x2+e,r.y2+e)}if(o.state===Zn.POINT){if(i.state===Zn.POINT)return Mn(r.x2+e,r.y-e);if(s.state===Zn.POINT)return Mn(r.x2+e,r.y2+e)}const u=r.height*r.width;return r.height*((i.x-r.x+(o.x-r.x))*.5)<u*.5?i.x>s.x?Mn(r.x-e,r.y-e):Mn(r.x-e,r.y2+e):i.x<s.x?Mn(r.x2+e,r.y-e):Mn(r.x2+e,r.y2+e)}if(a.state===Zn.POINT){if(i.state===Zn.POINT)return Mn(r.x2+e,r.y2+e);if(s.state===Zn.POINT)return Mn(r.x2+e,r.y-e);const u=r.height*r.width;return r.width*((a.y-r.y+(o.y-r.y))*.5)<u*.5?a.y>o.y?Mn(r.x2+e,r.y2+e):Mn(r.x-e,r.y2+e):a.y<o.y?Mn(r.x2+e,r.y-e):Mn(r.x-e,r.y-e)}if(o.state===Zn.POINT){if(i.state===Zn.POINT)return Mn(r.x-e,r.y2+e);if(s.state===Zn.POINT)return Mn(r.x-e,r.y-e)}const A=r.height*r.width;return r.height*((i.x-r.x+(o.x-r.x))*.5)<A*.5?i.x>s.x?Mn(r.x2+e,r.y2+e):Mn(r.x2+e,r.y-e):i.x<s.x?Mn(r.x-e,r.y2+e):Mn(r.x-e,r.y-e)}function dle(r,e,t,n){if(!(r.closed?t<r.length:t<r.length-1))return!1;const a=r.get(e),s=r.get(t+1);for(let o=e+1;o<=t;o++){const A=r.get(o);if(lC(a.x,a.y,s.x,s.y,A.x,A.y)>n)return!1}return!0}function hle(r=0){return e=>{if(r<0||e.length<3)return e;const t=[];let n=0;const i=r*r;for(;n<e.length;){let a=n+1;for(;dle(e,n,a,i);)a++;t.push(e.get(n)),n=a}return new Gl(t)}}function fle(r,e){switch(r){case-2:return(((-e+3)*e-3)*e+1)/6;case-1:return((3*e-6)*e*e+4)/6;case 0:return(((-3*e+3)*e+3)*e+1)/6;case 1:return e*e*e/6;default:throw new Error("unknown error")}}function gle(r=6){function a(s,o,A){let l=0,u=0;for(let c=-2;c<=1;c++){const d=s.get(o+c),h=fle(c,A);l+=h*d.x,u+=h*d.y}return{x:l,y:u}}return s=>{if(s.length<3)return s;const o=[],A=s.closed,l=s.length+3-1+(A?0:2);o.push(a(s,2-(A?0:2),0));for(let u=2-(A?0:2);u<l;u++)for(let c=1;c<=r;c++)o.push(a(s,u,c/r));return new Gl(o)}}function ple(r=8){return e=>{let t=r,n=e.length;if(t>1)for(n=Math.floor(e.length/t);n<3&&t>1;)t-=1,n=Math.floor(e.length/t);const i=[];for(let a=0,s=0;s<n;s++,a+=t)i.push(e.get(a));return new Gl(i)}}class Gl{constructor(e=[],t=!0){this.points=e,this.closed=t}get(e){const 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){const t=this.points;if(t.length===0)return"";const n=typeof e=="function"?e:ZAe(e);let i="M";for(const a of t)i+=`${n(a.x)},${n(a.y)} L`;return i=i.slice(0,-1),this.closed&&(i+=" Z"),i}draw(e){const t=this.points;if(t.length!==0){e.beginPath(),e.moveTo(t[0].x,t[0].y);for(const n of t)e.lineTo(n.x,n.y);this.closed&&e.closePath()}}sample(e){return ple(e)(this)}simplify(e){return hle(e)(this)}bSplines(e){return gle(e)(this)}apply(e){return e(this)}containsElements(e){const t=nle(this.points);return t?e.every(n=>t.containsPt(n.cx,n.cy)&&this.withinArea(n.cx,n.cy)):!1}withinArea(e,t){if(this.length===0)return!1;let n=0;const i=this.points[0],a=new Ur(i.x,i.y,i.x,i.y);for(let s=1;s<this.points.length;s++){const o=this.points[s];a.x1=a.x2,a.y1=a.y2,a.x2=o.x,a.y2=o.y,a.cuts(e,t)&&n++}return a.x1=a.x2,a.y1=a.y2,a.x2=i.x,a.y2=i.y,a.cuts(e,t)&&n++,n%2===1}}class vle{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;const t=this.arr[0];return t!=null&&t.x===e.x&&t.y===e.y}path(){return new Gl(this.arr.slice(0,this.count))}clear(){this.set.clear(),this.count=0}get(e){return this.arr[e]}get length(){return this.count}}const du=0,gh=1,ph=2,Tb=3;function mle(r,e){const t=(Math.floor(r.width)+Math.floor(r.height))*2,n=new vle(t);function i(A,l,u,c){const d=r.get(A,l);return Number.isNaN(d)?Number.NaN:d>e?u+c:u}function a(A,l){let u=du;return u=i(A,l,u,1),u=i(A+1,l,u,2),u=i(A,l+1,u,4),u=i(A+1,l+1,u,8),Number.isNaN(u)?-1:u}let s=gh;function o(A,l){let u=A,c=l,d=r.invertScaleX(u),h=r.invertScaleY(c);for(let f=0;f<r.width*r.height;f++){const p={x:d,y:h};if(n.contains(p)){if(n.isFirst(p))return!0}else n.add(p);const g=a(u,c);switch(g){case-1:return!0;case 0:case 3:case 2:case 7:s=ph;break;case 12:case 14:case 4:s=Tb;break;case 6:s=s===du?Tb:ph;break;case 1:case 13:case 5:s=du;break;case 9:s=s===ph?du:gh;break;case 10:case 8:case 11:s=gh;break;default:return console.warn("Marching squares invalid state: "+g),!0}switch(s){case du:c--,h-=r.pixelGroup;break;case gh:c++,h+=r.pixelGroup;break;case Tb:u--,d-=r.pixelGroup;break;case ph:u++,d+=r.pixelGroup;break;default:return console.warn("Marching squares invalid state: "+g),!0}}return!0}for(let A=0;A<r.width;A++)for(let l=0;l<r.height;l++){if(r.get(A,l)<=e)continue;const u=a(A,l);if(!(u<0||u===15)&&o(A,l))return n.path()}return null}const np={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 Vu(r){return r!=null&&typeof r.radius=="number"}function XO(r,e){if(Vu(r)!==Vu(e))return!1;if(Vu(r)){const n=e;return r.cx===n.cx&&r.cy===n.cy&&r.radius===n.radius}const t=e;return r.x===t.x&&r.y===t.y&&r.width===t.width&&r.height===t.height}var xa;(function(r){r[r.MEMBERS=0]="MEMBERS",r[r.NON_MEMBERS=1]="NON_MEMBERS",r[r.EDGES=2]="EDGES"})(xa||(xa={}));let ZO=class{constructor(e={}){this.dirty=new Set,this.members=[],this.nonMembers=[],this.virtualEdges=[],this.edges=[],this.activeRegion=new ri(0,0,0,0),this.potentialArea=new hA(1,0,0,0,0,0,0),this.o=Object.assign({},np,e)}pushMember(...e){if(e.length!==0){this.dirty.add(xa.MEMBERS);for(const t of e)this.members.push({raw:t,obj:Vu(t)?Lf.from(t):ri.from(t),area:null})}}removeMember(e){const t=this.members.findIndex(n=>XO(n.raw,e));return t<0?!1:(this.members.splice(t,1),this.dirty.add(xa.MEMBERS),!0)}removeNonMember(e){const t=this.nonMembers.findIndex(n=>XO(n.raw,e));return t<0?!1:(this.nonMembers.splice(t,1),this.dirty.add(xa.NON_MEMBERS),!0)}removeEdge(e){const t=this.edges.findIndex(n=>n.obj.equals(e));return t<0?!1:(this.edges.splice(t,1),this.dirty.add(xa.NON_MEMBERS),!0)}pushNonMember(...e){if(e.length!==0){this.dirty.add(xa.NON_MEMBERS);for(const t of e)this.nonMembers.push({raw:t,obj:Vu(t)?Lf.from(t):ri.from(t),area:null})}}pushEdge(...e){if(e.length!==0){this.dirty.add(xa.EDGES);for(const t of e)this.edges.push({raw:t,obj:Ur.from(t),area:null})}}update(){const e=this.dirty.has(xa.MEMBERS),t=this.dirty.has(xa.NON_MEMBERS);let n=this.dirty.has(xa.EDGES);this.dirty.clear();const i=this.members.map(l=>l.obj);if(this.o.virtualEdges&&(e||t)){const l=this.nonMembers.map(d=>d.obj),u=ale(i,l,this.o.maxRoutingIterations,this.o.morphBuffer),c=new Map(this.virtualEdges.map(d=>[d.obj.toString(),d.area]));this.virtualEdges=u.map(d=>{var h;return{raw:d,obj:d,area:(h=c.get(d.toString()))!==null&&h!==void 0?h:null}}),n=!0}let a=!1;if(e||n){const l=this.virtualEdges.concat(this.edges).map(h=>h.obj),u=wle(i,l),c=Math.max(this.o.edgeR1,this.o.nodeR1)+this.o.morphBuffer,d=ri.from(H3(u,c));d.equals(this.activeRegion)||(a=!0,this.activeRegion=d)}if(a){const l=Math.ceil(this.activeRegion.width/this.o.pixelGroup),u=Math.ceil(this.activeRegion.height/this.o.pixelGroup);this.activeRegion.x!==this.potentialArea.pixelX||this.activeRegion.y!==this.potentialArea.pixelY?(this.potentialArea=hA.fromPixelRegion(this.activeRegion,this.o.pixelGroup),this.members.forEach(c=>c.area=null),this.nonMembers.forEach(c=>c.area=null),this.edges.forEach(c=>c.area=null),this.virtualEdges.forEach(c=>c.area=null)):(l!==this.potentialArea.width||u!==this.potentialArea.height)&&(this.potentialArea=hA.fromPixelRegion(this.activeRegion,this.o.pixelGroup))}const s=new Map,o=l=>{if(l.area){const u=`${l.obj.width}x${l.obj.height}x${l.obj instanceof ri?"R":"C"}`;s.set(u,l.area)}},A=l=>{if(l.area)return;const u=`${l.obj.width}x${l.obj.height}x${l.obj instanceof ri?"R":"C"}`;if(s.has(u)){const d=s.get(u);l.area=this.potentialArea.copy(d,{x:l.obj.x-this.o.nodeR1,y:l.obj.y-this.o.nodeR1});return}const c=l.obj instanceof ri?ile(l.obj,this.potentialArea,this.o.nodeR1):$3(l.obj,this.potentialArea,this.o.nodeR1);l.area=c,s.set(u,c)};this.members.forEach(o),this.nonMembers.forEach(o),this.members.forEach(A),this.nonMembers.forEach(l=>{this.activeRegion.intersects(l.obj)?A(l):l.area=null}),this.edges.forEach(l=>{l.area||(l.area=YO(l.obj,this.potentialArea,this.o.edgeR1))}),this.virtualEdges.forEach(l=>{l.area||(l.area=YO(l.obj,this.potentialArea,this.o.edgeR1))})}drawMembers(e){for(const t of this.members)t.obj.draw(e)}drawNonMembers(e){for(const t of this.nonMembers)t.obj.draw(e)}drawEdges(e){for(const 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 Gl([]);this.dirty.size>0&&this.update();const{o:e,potentialArea:t}=this,n=this.members.map(o=>o.area),i=this.virtualEdges.concat(this.edges).map(o=>o.area),a=this.nonMembers.filter(o=>o.area!=null).map(o=>o.area),s=this.members.map(o=>o.obj);return yle(t,n,i,a,o=>o.containsElements(s),e)}};function yle(r,e,t,n,i,a={}){const s=Object.assign({},np,a);let o=s.threshold,A=s.memberInfluenceFactor,l=s.edgeInfluenceFactor,u=s.nonMemberInfluenceFactor;const c=(s.nodeR0-s.nodeR1)*(s.nodeR0-s.nodeR1),d=(s.edgeR0-s.edgeR1)*(s.edgeR0-s.edgeR1);for(let h=0;h<s.maxMarchingIterations;h++){if(r.clear(),A!==0){const p=A/c;for(const g of e)r.incArea(g,p)}if(l!==0){const p=l/d;for(const g of t)r.incArea(g,p)}if(u!==0){const p=u/c;for(const g of n)r.incArea(g,p)}const f=mle(r,o);if(f&&i(f))return f;if(o*=.95,h<=s.maxMarchingIterations*.5)A*=1.2,l*=1.2;else if(u!==0&&n.length>0)u*=.8;else break}return new Gl([])}function wle(r,e){if(r.length===0)return new ri(0,0,0,0);const t=ri.from(r[0]);for(const n of r)t.add(n);for(const n of e)t.add(R3(n));return t}var ble=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};class rp extends Dr{constructor(e,t){super(e,li({},rp.defaultOptions,t)),this.path=null,this.members=new Map,this.avoidMembers=new Map,this.bubbleSetOptions={},this.drawBubbleSets=()=>{const{style:n,bubbleSetOptions:i}=this.parseOptions();Qn(this.bubbleSetOptions,i)||this.init(),this.bubbleSetOptions=Object.assign({},i);const a=Object.assign(Object.assign({},n),{d:this.getPath()});this.shape?this.shape.update(a):(this.shape=new Mc({style:a}),this.context.canvas.appendChild(this.shape))},this.updateBubbleSetsPath=n=>{if(!this.shape)return;const i=ve(n.data);[...this.options.members,...this.options.avoidMembers].includes(i)&&this.shape.update(Object.assign(Object.assign({},this.parseOptions().style),{d:this.getPath(i)}))},this.getPath=n=>{const{graph:i}=this.context,a=this.options.members,s=[...this.members.keys()],o=this.options.avoidMembers,A=[...this.avoidMembers.keys()];if(a.length===0&&o.length===0)return this.members.clear(),this.avoidMembers.clear(),this.path=[],this.path;if(!n&&this.path&&Qn(a,s)&&Qn(o,A))return this.path;const{enter:l=[],exit:u=[]}=bo(s,a,g=>g),{enter:c=[],exit:d=[]}=bo(A,o,g=>g);if(n){const g=a.includes(n),v=o.includes(n);g&&(u.push(n),l.push(n)),v&&(d.push(n),c.push(n))}const h=(g,v,m)=>{g.forEach(y=>{const w=m?this.members:this.avoidMembers,B=m?"pushMember":"pushNonMember",x=m?"removeMember":"removeNonMember";if(v){let k;i.getElementType(y)==="edge"?([k]=Ele(i,y),this.bubbleSets.pushEdge(k)):([k]=Ble(i,y),this.bubbleSets[B](k)),w.set(y,k)}else{const k=w.get(y);k&&(i.getElementType(y)==="edge"?this.bubbleSets.removeEdge(k):this.bubbleSets[x](k),w.delete(y))}})};h(u,!1,!0),h(l,!0,!0),h(d,!1,!1),h(c,!0,!1);const p=this.bubbleSets.compute().sample(8).simplify(0).bSplines().simplify(0);return this.path=JR(p.points.map(Vr)),this.path},this.bindEvents(),this.bubbleSets=new ZO(this.options)}bindEvents(){this.context.graph.on(Ge.AFTER_RENDER,this.drawBubbleSets),this.context.graph.on(Ge.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath)}init(){this.bubbleSets=new ZO(this.options),this.members.clear(),this.avoidMembers.clear(),this.path=null}parseOptions(){const e=this.options,{type:t,key:n,members:i,avoidMembers:a}=e,s=ble(e,["type","key","members","avoidMembers"]),o=Object.keys(s).reduce((A,l)=>(l in np?A.bubbleSetOptions[l]=s[l]:A.style[l]=s[l],A),{style:{},bubbleSetOptions:{}});return Object.assign({type:t,key:n,members:i,avoidMembers:a},o)}addMember(e){const t=Array.isArray(e)?e:[e];t.some(n=>this.options.avoidMembers.includes(n))&&(this.options.avoidMembers=this.options.avoidMembers.filter(n=>!t.includes(n))),this.options.members=[...new Set([...this.options.members,...t])],this.drawBubbleSets()}removeMember(e){const t=Array.isArray(e)?e:[e];this.options.members=this.options.members.filter(n=>!t.includes(n)),this.drawBubbleSets()}updateMember(e){this.options.members=At(e)?e(this.options.members):e,this.drawBubbleSets()}getMember(){return this.options.members}addAvoidMember(e){const t=Array.isArray(e)?e:[e];t.some(n=>this.options.members.includes(n))&&(this.options.members=this.options.members.filter(n=>!t.includes(n))),this.options.avoidMembers=[...new Set([...this.options.avoidMembers,...t])],this.drawBubbleSets()}removeAvoidMember(e){const t=Array.isArray(e)?e:[e];this.options.avoidMembers.some(n=>t.includes(n))&&(this.options.avoidMembers=this.options.avoidMembers.filter(n=>!t.includes(n)),this.drawBubbleSets())}updateAvoidMember(e){this.options.avoidMembers=Array.isArray(e)?e:[e],this.drawBubbleSets()}getAvoidMember(){return this.options.avoidMembers}destroy(){this.context.graph.off(Ge.AFTER_RENDER,this.drawBubbleSets),this.context.graph.off(Ge.AFTER_ELEMENT_UPDATE,this.updateBubbleSetsPath),this.shape&&(this.shape.destroy(),this.shape=void 0),super.destroy()}}rp.defaultOptions=Object.assign({members:[],avoidMembers:[],fill:"lightblue",fillOpacity:.2,stroke:"blue",strokeOpacity:.2},np);const Ble=(r,e)=>(Array.isArray(e)?e:[e]).map(n=>{const i=r.getElementRenderBounds(n);return new ri(i.min[0],i.min[1],ms(i),ys(i))}),Ele=(r,e)=>(Array.isArray(e)?e:[e]).map(n=>{const i=r.getEdgeData(n),a=r.getElementPosition(i.source),s=r.getElementPosition(i.target);return Ur.from({x1:a[0],y1:a[1],x2:s[0],y2:s[1]})});function xle(r){return`
184
- <ul class="g6-contextmenu-ul">
185
- ${r.map(e=>`<li class="g6-contextmenu-li" value="${e.value}">${e.name}</li>`).join("")}
186
- </ul>
187
- `}const Cle=`
188
- .g6-contextmenu {
189
- font-size: 12px;
190
- background-color: rgba(255, 255, 255, 0.96);
191
- border-radius: 4px;
192
- overflow-x: hidden;
193
- overflow-y: auto;
194
- max-height: calc(100% - 8px);
195
- box-shadow: rgba(0, 0, 0, 0.12) 0px 6px 12px 0px;
196
- 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;
197
- }
198
-
199
- .g6-contextmenu::-webkit-scrollbar {
200
- width: 6px;
201
- }
202
-
203
- .g6-contextmenu::-webkit-scrollbar-thumb {
204
- background-color: rgba(0, 0, 0, 0.2);
205
- border-radius: 3px;
206
- }
207
-
208
- .g6-contextmenu::-webkit-scrollbar-thumb:hover {
209
- background-color: rgba(0, 0, 0, 0.3);
210
- }
211
-
212
- .g6-contextmenu-ul {
213
- max-width: 256px;
214
- min-width: 96px;
215
- list-style: none;
216
- padding: 0;
217
- margin: 0;
218
- }
219
-
220
- .g6-contextmenu-li {
221
- padding: 8px 12px;
222
- cursor: pointer;
223
- user-select: none;
224
- }
225
-
226
- .g6-contextmenu-li:hover {
227
- background-color: #f5f5f5;
228
- cursor: pointer;
229
- }
230
- `;var JO=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class ip extends Dr{constructor(e,t){super(e,Object.assign({},ip.defaultOptions,t)),this.targetElement=null,this.wheelHandler=n=>{n.stopPropagation()},this.onTriggerEvent=n=>{var i;(i=n.preventDefault)===null||i===void 0||i.call(n),this.show(n)},this.onMenuItemClick=n=>{const{onClick:i,trigger:a}=this.options;if(n.target instanceof HTMLElement&&n.target.className.includes("g6-contextmenu-li")){const s=n.target.getAttribute("value");i==null||i(s,n.target,this.targetElement),this.hide()}a!=="click"&&this.hide()},this.initElement(),this.update(t)}initElement(){this.$element=$l("contextmenu",!1,{zIndex:"99"});const{className:e}=this.options;e&&this.$element.classList.add(e),this.$element.addEventListener("wheel",this.wheelHandler),this.context.canvas.getContainer().appendChild(this.$element),dE("g6-contextmenu-css","style",{},Cle,document.head)}show(e){return JO(this,void 0,void 0,function*(){const{enable:t,offset:n}=this.options;if(typeof t=="function"&&!t(e)||!t){this.hide();return}const i=yield this.getDOMContent(e);i instanceof HTMLElement?(this.$element.innerHTML="",this.$element.appendChild(i)):this.$element.innerHTML=i;const s=this.context.graph.getCanvas().getContainer().getBoundingClientRect();let o=e.client.x-s.left+n[0],A=e.client.y-s.top+n[1];this.$element.style.display="block";const l=this.$element.offsetWidth,u=this.$element.offsetHeight,c=s.width,d=s.height,h=4;o=Math.max(h,Math.min(o,c-l-h)),A=Math.max(h,Math.min(A,d-u-h)),this.$element.style.left=`${o}px`,this.$element.style.top=`${A}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 JO(this,void 0,void 0,function*(){const{getContent:t,getItems:n}=this.options;return n?xle(yield n(e)):yield t(e)})}bindEvents(){const{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(){const{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)}}ip.defaultOptions={trigger:"contextmenu",offset:[4,4],loadingContent:'<div class="g6-contextmenu-loading">Loading...</div>',getContent:()=>"It is a empty context menu.",enable:()=>!0};class ap extends Dr{constructor(e,t){super(e,Object.assign({},ap.defaultOptions,t)),this.edgeBundles={},this.edgePoints={},this.onBundle=()=>{const{model:n,element:i}=this.context,a=n.getEdgeData();this.divideEdges(this.options.divisions);const{cycles:s,iterRate:o,divRate:A}=this.options;let{lambda:l,divisions:u,iterations:c}=this.options;for(let d=0;d<s;d++){for(let h=0;h<c;h++){const f={};a.forEach(p=>{var g;if(p.source===p.target)return;const v=ve(p);f[v]=this.getEdgeForces(p,u,l);for(let m=0;m<u+1;m++)(g=this.edgePoints)[v]||(g[v]=[]),this.edgePoints[v][m]=xt(this.edgePoints[v][m],f[v][m])})}l/=2,u*=A,c*=o,this.divideEdges(u)}a.forEach(d=>{const h=ve(d),f=i.getElement(h);f==null||f.update({d:Ex(this.edgePoints[h])})})},this.bindEvents()}get nodeMap(){const e=this.context.model.getNodeData();return Object.fromEntries(e.map(t=>[ve(t),hs(_r(t))]))}divideEdges(e){this.context.model.getEdgeData().forEach(n=>{var i;const a=ve(n);(i=this.edgePoints)[a]||(i[a]=[]);const s=this.nodeMap[n.source],o=this.nodeMap[n.target];if(e===1)this.edgePoints[a].push(s),this.edgePoints[a].push(Oa(xt(s,o),2)),this.edgePoints[a].push(o);else{const l=(this.edgePoints[a].length===0?Bn(s,o):Fle(this.edgePoints[a]))/(e+1);let u=l;const c=[s];for(let d=1;d<this.edgePoints[a].length;d++){const h=this.edgePoints[a][d-1],f=this.edgePoints[a][d];let p=Bn(f,h);for(;p>u;){const g=u/p,v=xt(h,_a(hn(f,h),g));c.push(v),p-=u,u=l}u-=p}c.push(o),this.edgePoints[a]=c}})}getVectorPosition(e){const t=this.nodeMap[e.source],n=this.nodeMap[e.target],[i,a]=hn(n,t),s=Bn(t,n);return{source:t,target:n,vx:i,vy:a,length:s}}measureEdgeCompatibility(e,t){const n=this.getVectorPosition(e),i=this.getVectorPosition(t),a=Sle(n,i),s=_le(n,i),o=kle(n,i),A=Tle(n,i);return a*s*o*A}getEdgeBundles(){const e={},t=this.options.bundleThreshold,n=this.context.model.getEdgeData();return n.forEach((i,a)=>{n.forEach((s,o)=>{var A,l;if(o<=a)return;this.measureEdgeCompatibility(i,s)>=t&&(e[A=ve(i)]||(e[A]=[]),e[ve(i)].push(s),e[l=ve(s)]||(e[l]=[]),e[ve(s)].push(i))})}),e}getSpringForce(e,t){const{pre:n,cur:i,next:a}=e;return _a(hn(xt(n,a),_a(i,2)),t)}getElectrostaticForce(e,t){Ja(this.edgeBundles)&&(this.edgeBundles=this.getEdgeBundles());const n=this.edgeBundles[ve(t)];let i=[0,0];return n==null||n.forEach(a=>{const s=this.edgePoints[ve(a)][e],o=this.edgePoints[ve(t)][e],A=hn(s,o),l=Bn(s,o);i=xt(i,_a(A,1/l))}),i}getEdgeForces(e,t,n){const i=this.nodeMap[e.source],a=this.nodeMap[e.target],s=this.options.K/(Bn(i,a)*(t+1)),o=[[0,0]],A=ve(e);for(let l=1;l<t;l++){const u=this.getSpringForce({pre:this.edgePoints[A][l-1],cur:this.edgePoints[A][l],next:this.edgePoints[A][l+1]||[0,0]},s),c=this.getElectrostaticForce(l,e);o.push(_a(xt(u,c),n))}return o.push([0,0]),o}bindEvents(){const{graph:e}=this.context;e.on(Ge.AFTER_RENDER,this.onBundle)}unbindEvents(){const{graph:e}=this.context;e.off(Ge.AFTER_RENDER,this.onBundle)}destroy(){this.unbindEvents(),super.destroy()}}ap.defaultOptions={K:.1,lambda:.1,divisions:1,divRate:2,cycles:6,iterations:90,iterRate:2/3,bundleThreshold:.6};const Sle=(r,e)=>Math.abs(gX([r.vx,r.vy],[e.vx,e.vy])/(r.length*e.length)),_le=(r,e)=>{const t=(r.length+e.length)/2;return 2/(t/Math.min(r.length,e.length)+Math.max(r.length,e.length)/t)},kle=(r,e)=>{const t=(r.length+e.length)/2,n=Oa(xt(r.source,r.target),2),i=Oa(xt(e.source,e.target),2);return t/(t+Bn(n,i))},eL=(r,e)=>{if(e.source[0]===e.target[0])return[e.source[0],r[1]];if(e.source[1]===e.target[1])return[r[0],e.source[1]];const t=(e.source[1]-e.target[1])/(e.source[0]-e.target[0]),n=(t*t*e.source[0]+t*(r[1]-e.source[1])+r[0])/(t*t+1),i=t*(n-e.source[0])+e.source[1];return[n,i]},tL=(r,e)=>{const t=eL(e.source,r),n=eL(e.target,r),i=Oa(xt(t,n),2),a=Oa(xt(r.source,r.target),2);return Bn(t,n)===0?0:Math.max(0,1-2*Bn(a,i)/Bn(t,n))},Tle=(r,e)=>Math.min(tL(r,e),tL(e,r)),Fle=r=>{let e=0;for(let t=1;t<r.length;t++)e+=Bn(r[t],r[t-1]);return e},Mle={fill:"#fff",fillOpacity:1,lineWidth:1,stroke:"#000",strokeOpacity:.8,zIndex:-1/0},nL=.05;class sp extends Dr{constructor(e,t){super(e,Object.assign({},sp.defaultOptions,t)),this.shapes=new Map,this.r=this.options.r,this.onEdgeFilter=n=>{if(this.options.trigger==="drag"&&this.isLensOn)return;const i=Vr(n.canvas);this.renderLens(i),this.renderFocusElements()},this.renderLens=n=>{const i=Object.assign({},Mle,this.options.style);this.isLensOn||(this.lens=new Ic({style:i}),this.canvas.appendChild(this.lens)),Object.assign(i,ka(n),{size:this.r*2}),this.lens.update(i)},this.getFilterData=()=>{const{filter:n}=this.options,{model:i}=this.context,a=i.getData();if(!n)return a;const{nodes:s,edges:o,combos:A}=a;return{nodes:s.filter(l=>n(ve(l),"node")),edges:o.filter(l=>n(ve(l),"edge")),combos:A.filter(l=>n(ve(l),"combo"))}},this.getFocusElements=n=>{const{nodes:i,edges:a}=this.getFilterData(),s=i.filter(l=>Bn(_r(l),n)<this.r),o=s.map(l=>ve(l)),A=a.filter(l=>{const{source:u,target:c}=l,d=o.includes(u),h=o.includes(c);switch(this.options.nodeType){case"both":return d&&h;case"either":return d!==h;case"source":return d&&!h;case"target":return!d&&h;default:return!1}});return{nodes:s,edges:A}},this.renderFocusElements=()=>{const{element:n,graph:i}=this.context;if(!this.isLensOn)return;const a=this.lens.getCenter(),{nodes:s,edges:o}=this.getFocusElements(a),A=new Set,l=u=>{const c=ve(u);A.add(c);const d=n.getElement(c);if(!d)return;const h=this.shapes.get(c)||d.cloneNode();h.setPosition(d.getPosition()),h.id=d.id,this.shapes.has(c)?Object.entries(d.attributes).forEach(([g,v])=>{h.style[g]!==v&&(h.style[g]=v)}):(this.canvas.appendChild(h),this.shapes.set(c,h));const f=i.getElementType(c),p=this.getElementStyle(f,u);h.update(p)};s.forEach(l),o.forEach(l),this.shapes.forEach((u,c)=>{A.has(c)||(u.destroy(),this.shapes.delete(c))})},this.scaleRByWheel=n=>{var i;this.options.preventDefault&&n.preventDefault();const{clientX:a,clientY:s,deltaX:o,deltaY:A}=n,{graph:l,canvas:u}=this.context,c=l.getCanvasByClient([a,s]),d=(i=this.lens)===null||i===void 0?void 0:i.getCenter();if(!this.isLensOn||Bn(c,d)>this.r)return;const{maxR:h,minR:f}=this.options,p=o+A>0?1/(1-nL):1-nL,g=Math.min(...u.getSize())/2;this.r=Math.max(f||0,Math.min(h||g,this.r*p)),this.renderLens(d),this.renderFocusElements()},this.isLensDragging=!1,this.onDragStart=n=>{var i;const a=Vr(n.canvas),s=(i=this.lens)===null||i===void 0?void 0:i.getCenter();!this.isLensOn||Bn(a,s)>this.r||(this.isLensDragging=!0)},this.onDrag=n=>{if(!this.isLensDragging)return;const i=Vr(n.canvas);this.renderLens(i),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){const 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;const{graph:t}=this.context,{trigger:n,scaleRBy:i}=this.options,a=t.getCanvas().getLayer();["click","drag"].includes(n)&&a.addEventListener(_e.CLICK,this.onEdgeFilter),n==="pointermove"?a.addEventListener(_e.POINTER_MOVE,this.onEdgeFilter):n==="drag"&&(a.addEventListener(_e.DRAG_START,this.onDragStart),a.addEventListener(_e.DRAG,this.onDrag),a.addEventListener(_e.DRAG_END,this.onDragEnd)),i==="wheel"&&((e=this.graphDom)===null||e===void 0||e.addEventListener(_e.WHEEL,this.scaleRByWheel,{passive:!1}))}unbindEvents(){var e;const{graph:t}=this.context,{trigger:n,scaleRBy:i}=this.options,a=t.getCanvas().getLayer();["click","drag"].includes(n)&&a.removeEventListener(_e.CLICK,this.onEdgeFilter),n==="pointermove"?a.removeEventListener(_e.POINTER_MOVE,this.onEdgeFilter):n==="drag"&&(a.removeEventListener(_e.DRAG_START,this.onDragStart),a.removeEventListener(_e.DRAG,this.onDrag),a.removeEventListener(_e.DRAG_END,this.onDragEnd)),i==="wheel"&&((e=this.graphDom)===null||e===void 0||e.removeEventListener(_e.WHEEL,this.scaleRByWheel))}update(e){var t;this.unbindEvents(),super.update(e),this.r=(t=e.r)!==null&&t!==void 0?t: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()}}sp.defaultOptions={trigger:"pointermove",r:60,nodeType:"both",filter:()=>!0,style:{lineWidth:2},nodeStyle:{label:!1},edgeStyle:{label:!0},scaleRBy:"wheel",preventDefault:!0};const Ile={fill:"#ccc",fillOpacity:.1,lineWidth:2,stroke:"#000",strokeOpacity:.8,labelFontSize:12},rL=.05,iL=.1;class op extends Dr{constructor(e,t){super(e,Object.assign({},op.defaultOptions,t)),this.r=this.options.r,this.d=this.options.d,this.onCreateFisheye=n=>{if(this.options.trigger==="drag"&&this.isLensOn)return;const i=Vr(n.canvas);this.onMagnify(i)},this.onMagnify=n=>{n.some(isNaN)||(this.renderLens(n),this.renderFocusElements())},this.renderLens=n=>{const i=Object.assign({},Ile,this.options.style);this.isLensOn||(this.lens=new Ic({style:i}),this.canvas.appendChild(this.lens)),Object.assign(i,ka(n),{size:this.r*2,label:this.options.showDPercent,labelText:this.getDPercent()}),this.lens.update(i)},this.getDPercent=()=>{const{minD:n,maxD:i}=this.options;return`${Math.round((this.d-n)/(i-n)*100)}%`},this.prevMagnifiedStyleMap=new Map,this.prevOriginStyleMap=new Map,this.renderFocusElements=()=>{if(!this.isLensOn)return;const{graph:n}=this.context,i=this.lens.getCenter(),a=(this.d+1)*this.r,s=new Map,o=new Map;n.getNodeData().forEach(l=>{const u=_r(l),c=Bn(u,i);if(c>this.r)return;const d=a*c/(this.d*c+this.r),[h,f]=u,[p,g]=i,v=(h-p)/c,m=(f-g)/c,y=[p+d*v,g+d*m],w=ve(l),B=this.getNodeStyle(l),x=yc(n.getElementRenderStyle(w),Object.keys(B));s.set(w,Object.assign(Object.assign({},ka(y)),B)),o.set(w,Object.assign(Object.assign({},ka(u)),x))}),this.updateStyle(s,o)},this.getNodeStyle=n=>{const{nodeStyle:i}=this.options;return typeof i=="function"?i(n):i},this.updateStyle=(n,i)=>{const{graph:a,element:s}=this.context,{enter:o,exit:A,keep:l}=bo(Array.from(this.prevMagnifiedStyleMap.keys()),Array.from(n.keys()),d=>d),u=new Set,c=(d,h)=>{const f=s.getElement(d);f==null||f.update(h),a.getRelatedEdgesData(d).forEach(p=>{u.add(ve(p))})};[...o,...l].forEach(d=>{c(d,n.get(d))}),A.forEach(d=>{c(d,this.prevOriginStyleMap.get(d)),this.prevOriginStyleMap.delete(d)}),u.forEach(d=>{const h=s.getElement(d);h==null||h.update({})}),this.prevMagnifiedStyleMap=n,i.forEach((d,h)=>{this.prevOriginStyleMap.has(h)||this.prevOriginStyleMap.set(h,d)})},this.isWheelValid=n=>{if(this.options.preventDefault&&n.preventDefault(),!this.isLensOn)return!1;const{clientX:i,clientY:a}=n,s=this.context.graph.getCanvasByClient([i,a]),o=this.lens.getCenter();return!(Bn(s,o)>this.r)},this.scaleR=n=>{const{maxR:i,minR:a}=this.options,s=n?1/(1-rL):1-rL,o=Math.min(...this.context.canvas.getSize())/2;this.r=Math.max(a||0,Math.min(i||o,this.r*s))},this.scaleD=n=>{const{maxD:i,minD:a}=this.options,s=n?this.d+iL:this.d-iL;this.d=Math.max(a,Math.min(i,s))},this.scaleRByWheel=n=>{if(!this.isWheelValid(n))return;const{deltaX:i,deltaY:a}=n;this.scaleR(i+a>0);const s=this.lens.getCenter();this.onMagnify(s)},this.scaleDByWheel=n=>{if(!this.isWheelValid(n))return;const{deltaX:i,deltaY:a}=n;this.scaleD(i+a>0);const s=this.lens.getCenter();this.onMagnify(s)},this.isDragValid=n=>{if(this.options.preventDefault&&n.preventDefault(),!this.isLensOn)return!1;const i=Vr(n.canvas),a=this.lens.getCenter();return!(Bn(i,a)>this.r)},this.isLensDragging=!1,this.onDragStart=n=>{this.isDragValid(n)&&(this.isLensDragging=!0)},this.onDrag=n=>{if(!this.isLensDragging)return;const i=Vr(n.canvas);this.onMagnify(i)},this.onDragEnd=()=>{this.isLensDragging=!1},this.scaleRByDrag=n=>{if(!this.isLensDragging)return;const{dx:i,dy:a}=n;this.scaleR(i-a>0);const s=this.lens.getCenter();this.onMagnify(s)},this.scaleDByDrag=n=>{if(!this.isLensDragging)return;const{dx:i,dy:a}=n;this.scaleD(i-a>0);const s=this.lens.getCenter();this.onMagnify(s)},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;const{graph:t}=this.context,{trigger:n,scaleRBy:i,scaleDBy:a}=this.options,s=t.getCanvas().getLayer();if(["click","drag"].includes(n)&&s.addEventListener(_e.CLICK,this.onCreateFisheye),n==="pointermove"&&s.addEventListener(_e.POINTER_MOVE,this.onCreateFisheye),n==="drag"||i==="drag"||a==="drag"){s.addEventListener(_e.DRAG_START,this.onDragStart),s.addEventListener(_e.DRAG_END,this.onDragEnd);const o=n==="drag"?this.onDrag:i==="drag"?this.scaleRByDrag:this.scaleDByDrag;s.addEventListener(_e.DRAG,o)}if(i==="wheel"||a==="wheel"){const o=i==="wheel"?this.scaleRByWheel:this.scaleDByWheel;(e=this.graphDom)===null||e===void 0||e.addEventListener(_e.WHEEL,o,{passive:!1})}}unbindEvents(){var e;const{graph:t}=this.context,{trigger:n,scaleRBy:i,scaleDBy:a}=this.options,s=t.getCanvas().getLayer();if(["click","drag"].includes(n)&&s.removeEventListener(_e.CLICK,this.onCreateFisheye),n==="pointermove"&&s.removeEventListener(_e.POINTER_MOVE,this.onCreateFisheye),n==="drag"||i==="drag"||a==="drag"){s.removeEventListener(_e.DRAG_START,this.onDragStart),s.removeEventListener(_e.DRAG_END,this.onDragEnd);const o=n==="drag"?this.onDrag:i==="drag"?this.scaleRByDrag:this.scaleDByDrag;s.removeEventListener(_e.DRAG,o)}if(i==="wheel"||a==="wheel"){const o=i==="wheel"?this.scaleRByWheel:this.scaleDByWheel;(e=this.graphDom)===null||e===void 0||e.removeEventListener(_e.WHEEL,o)}}update(e){var t,n;this.unbindEvents(),super.update(e),this.r=(t=e.r)!==null&&t!==void 0?t:this.r,this.d=(n=e.d)!==null&&n!==void 0?n:this.d,this.bindEvents()}destroy(){var e;this.unbindEvents(),this.isLensOn&&((e=this.lens)===null||e===void 0||e.destroy()),this.prevMagnifiedStyleMap.clear(),this.prevOriginStyleMap.clear(),super.destroy()}}op.defaultOptions={trigger:"pointermove",r:120,d:1.5,maxD:5,minD:0,showDPercent:!0,style:{},nodeStyle:{label:!0},preventDefault:!0};class Ap extends Dr{constructor(e,t){super(e,Object.assign({},Ap.defaultOptions,t)),this.$el=this.context.canvas.getContainer(),this.graphSize=[0,0],this.onFullscreenChange=()=>{var n,i,a,s;const o=!!document.fullscreenElement;this.options.autoFit&&this.setGraphSize(o),o?(i=(n=this.options).onEnter)===null||i===void 0||i.call(n):(s=(a=this.options).onExit)===null||s===void 0||s.call(a)},this.shortcut=new Io(e.graph),this.bindEvents(),this.style=document.createElement("style"),document.head.appendChild(this.style),this.style.innerHTML=`
231
- :not(:root):fullscreen::backdrop {
232
- background: transparent;
233
- }
234
- `}bindEvents(){this.unbindEvents(),this.shortcut.unbindAll();const{request:e=[],exit:t=[]}=this.options.trigger;this.shortcut.bind(e,this.request),this.shortcut.bind(t,this.exit),["webkitfullscreenchange","mozfullscreenchange","fullscreenchange","MSFullscreenChange"].forEach(i=>{document.addEventListener(i,this.onFullscreenChange,!1)})}unbindEvents(){this.shortcut.unbindAll(),["webkitfullscreenchange","mozfullscreenchange","fullscreenchange","MSFullscreenChange"].forEach(t=>{document.removeEventListener(t,this.onFullscreenChange,!1)})}setGraphSize(e=!0){var t,n;let i,a;e?(i=((t=globalThis.screen)===null||t===void 0?void 0:t.width)||0,a=((n=globalThis.screen)===null||n===void 0?void 0:n.height)||0,this.graphSize=this.context.graph.getSize()):[i,a]=this.graphSize,this.context.graph.setSize(i,a),this.context.graph.render()}request(){document.fullscreenElement||!Ole()||this.$el.requestFullscreen().catch(e=>{vs.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()}}Ap.defaultOptions={trigger:{},autoFit:!0};function Ole(){return document.fullscreenEnabled||Reflect.get(document,"webkitFullscreenEnabled")||Reflect.get(document,"mozFullscreenEnabled")||Reflect.get(document,"msFullscreenEnabled")}class lp extends Dr{constructor(e,t){super(e,Object.assign({},lp.defaultOptions,t)),this.$element=$l("grid-line",!0),this.offset=[0,0],this.currentScale=1,this.followZoom=i=>{const{data:{scale:a,origin:s}}=i;if(!a||s===void 0&&this.context.viewport===void 0)return;const o=this.currentScale;this.currentScale=a;const A=a/o,l=_a(s||this.context.graph.getCanvasCenter(),1-A),u=this.baseSize*a,c=_a(this.offset,A),d=Dv(c,u),h=xt(d,l);this.$element.style.backgroundSize=`${u}px ${u}px`,this.$element.style.backgroundPosition=`${h[0]}px ${h[1]}px`,this.offset=Dv(h,u)},this.followTranslate=i=>{if(!this.options.follow)return;const{data:{translate:a}}=i;a&&this.updateOffset(a)},this.onTransform=i=>{const a=this.parseFollow(this.options.follow);a.zoom&&this.followZoom(i),a.translate&&this.followTranslate(i)},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(){const{graph:e}=this.context;e.on(Ge.AFTER_TRANSFORM,this.onTransform)}updateStyle(){const{stroke:e,lineWidth:t,border:n,borderLineWidth:i,borderStroke:a,borderStyle:s}=this.options,o=this.baseSize*this.currentScale;Object.assign(this.$element.style,{border:n?`${i}px ${s} ${a}`:"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){const t=this.baseSize*this.currentScale;this.offset=Dv(xt(this.offset,e),t),this.$element.style.backgroundPosition=`${this.offset[0]}px ${this.offset[1]}px`}parseFollow(e){var t,n;return qu(e)?{translate:e,zoom:e}:{translate:(t=e==null?void 0:e.translate)!==null&&t!==void 0?t:!1,zoom:(n=e==null?void 0:e.zoom)!==null&&n!==void 0?n:!1}}destroy(){this.context.graph.off(Ge.AFTER_TRANSFORM,this.onTransform),this.$element.remove(),super.destroy()}}lp.defaultOptions={border:!0,borderLineWidth:1,borderStroke:"#eee",borderStyle:"solid",lineWidth:1,size:20,stroke:"#eee"};function uC(r){const e={Added:new Map,Updated:new Map,Removed:new Map};return r.forEach(t=>{const{type:n,value:i}=t,a=ve(i);if(n==="NodeAdded"||n==="EdgeAdded"||n==="ComboAdded")e.Added.set(a,t);else if(n==="NodeUpdated"||n==="EdgeUpdated"||n==="ComboUpdated")if(e.Added.has(a))e.Added.set(a,{type:n.replace("Updated","Added"),value:i});else if(e.Updated.has(a)){const{original:s}=e.Updated.get(a);e.Updated.set(a,{type:n,value:i,original:s})}else e.Removed.has(a)||e.Updated.set(a,t);else(n==="NodeRemoved"||n==="EdgeRemoved"||n==="ComboRemoved")&&(e.Added.has(a)?e.Added.delete(a):(e.Updated.has(a)&&e.Updated.delete(a),e.Removed.set(a,t)))}),[...Array.from(e.Added.values()),...Array.from(e.Updated.values()),...Array.from(e.Removed.values())]}function z3(r){const{NodeAdded:e=[],NodeUpdated:t=[],NodeRemoved:n=[],EdgeAdded:i=[],EdgeUpdated:a=[],EdgeRemoved:s=[],ComboAdded:o=[],ComboUpdated:A=[],ComboRemoved:l=[]}=Vf(r,u=>u.type);return{add:{nodes:e,edges:i,combos:o},update:{nodes:t,edges:a,combos:A},remove:{nodes:n,edges:s,combos:l}}}function V3(r,e){for(const t in r)ai(r[t])&&!Array.isArray(r[t])&&r[t]!==null?(e[t]||(e[t]={}),V3(r[t],e[t])):e[t]===void 0&&(e[t]=ic(t))}function Lle(r,e=!1,t){const n={animation:e,current:{add:{},update:{},remove:{}},original:{add:{},update:{},remove:{}}},{add:i,update:a,remove:s}=z3(uC(r));return["nodes","edges","combos"].forEach(o=>{a[o]&&a[o].forEach(A=>{var l,u;const c=Object.assign({},A.value);let d=Object.assign({},A.original);if(t){const h=t.graph.getElementType(ve(A.original)),f=h==="edge"?"stroke":"fill",p=t.element.getElementComputedStyle(h,A.original);d=Object.assign(Object.assign({},A.original),{style:Object.assign({[f]:p[f]},A.original.style)})}V3(c,d),(l=n.current.update)[o]||(l[o]=[]),n.current.update[o].push(c),(u=n.original.update)[o]||(u[o]=[]),n.original.update[o].push(d)}),i[o]&&i[o].forEach(A=>{var l,u;const c=Object.assign({},A.value);(l=n.current.add)[o]||(l[o]=[]),n.current.add[o].push(c),(u=n.original.remove)[o]||(u[o]=[]),n.original.remove[o].push(c)}),s[o]&&s[o].forEach(A=>{var l,u;const c=Object.assign({},A.value);(l=n.current.remove)[o]||(l[o]=[]),n.current.remove[o].push(c),(u=n.original.add)[o]||(u[o]=[]),n.original.add[o].push(c)})}),n}class up extends Dr{constructor(e,t){super(e,Object.assign({},up.defaultOptions,t)),this.batchChanges=null,this.batchAnimation=!1,this.undoStack=[],this.redoStack=[],this.freezed=!1,this.executeCommand=(i,a=!0)=>{var s,o,A;this.freezed=!0,(o=(s=this.options).executeCommand)===null||o===void 0||o.call(s,i);const l=a?i.original:i.current;this.context.graph.addData(l.add),this.context.graph.updateData(l.update),this.context.graph.removeData(PR(l.remove,!1)),(A=this.context.element)===null||A===void 0||A.draw({silence:!0,animation:i.animation}),this.freezed=!1},this.addCommand=i=>{var a;if(!this.freezed){if(i.type===Ge.AFTER_DRAW){const{dataChanges:s=[],animation:o=!0}=i.data;if(!((a=this.context.batch)===null||a===void 0)&&a.isBatching){if(!this.batchChanges)return;this.batchChanges.push(s),this.batchAnimation&&(this.batchAnimation=o);return}this.batchChanges=[s],this.batchAnimation=o}this.undoStackPush(Lle(this.batchChanges.flat(),this.batchAnimation,this.context)),this.notify(to.ADD,this.undoStack[this.undoStack.length-1])}},this.initBatchCommand=i=>{const{initiate:a}=i.data;this.batchAnimation=!1,a?this.batchChanges=[]:this.undoStack.pop()||(this.batchChanges=null)},this.emitter=new kx;const{graph:n}=this.context;n.on(Ge.AFTER_DRAW,this.addCommand),n.on(Ge.BATCH_START,this.initBatchCommand),n.on(Ge.BATCH_END,this.addCommand)}canUndo(){return this.undoStack.length>0}canRedo(){return this.redoStack.length>0}undo(){var e,t,n,i;const a=this.undoStack.pop();if(a){if(this.executeCommand(a),((t=(e=this.options).beforeAddCommand)===null||t===void 0?void 0:t.call(e,a,!1))===!1)return;this.redoStack.push(a),(i=(n=this.options).afterAddCommand)===null||i===void 0||i.call(n,a,!1),this.notify(to.UNDO,a)}return this}redo(){const e=this.redoStack.pop();return e&&(this.executeCommand(e,!1),this.undoStackPush(e),this.notify(to.REDO,e)),this}undoAndCancel(){const e=this.undoStack.pop();return e&&(this.executeCommand(e,!1),this.redoStack=[],this.notify(to.CANCEL,e)),this}undoStackPush(e){var t,n,i,a;const{stackSize:s}=this.options;s!==0&&this.undoStack.length>=s&&this.undoStack.shift(),((n=(t=this.options).beforeAddCommand)===null||n===void 0?void 0:n.call(t,e,!0))!==!1&&(this.undoStack.push(e),(a=(i=this.options).afterAddCommand)===null||a===void 0||a.call(i,e,!0))}clear(){this.undoStack=[],this.redoStack=[],this.batchChanges=null,this.batchAnimation=!1,this.notify(to.CLEAR,null)}notify(e,t){this.emitter.emit(e,{cmd:t}),this.emitter.emit(to.CHANGE,{cmd:t})}on(e,t){this.emitter.on(e,t)}destroy(){const{graph:e}=this.context;e.off(Ge.AFTER_DRAW,this.addCommand),e.off(Ge.BATCH_START,this.initBatchCommand),e.off(Ge.BATCH_END,this.addCommand),this.emitter.off(),super.destroy(),this.undoStack=[],this.redoStack=[]}}up.defaultOptions={stackSize:0};const Fb={toXy(r,e){if(!e)return[...r];const t=e[0].slice(1),n=e[1].slice(1);return r.map(i=>[i[t],i[n]])},fromXy(r,e){if(!e)return[...r];const t=e[0].slice(1),n=e[1].slice(1);return r.map(([i,a])=>({[t]:i,[n]:a}))}};let Nle=class{constructor(e,t){this._cells=[],this._cellSize=t,this._reverseCellSize=1/t;for(const n of e){const i=this.coordToCellNum(n[0]),a=this.coordToCellNum(n[1]);this._cells[i]||(this._cells[i]=[]),this._cells[i][a]||(this._cells[i][a]=[]),this._cells[i][a].push(n)}}cellPoints(e,t){var n;return((n=this._cells[e])===null||n===void 0?void 0:n[t])||[]}rangePoints(e){const t=this.coordToCellNum(e[0]),n=this.coordToCellNum(e[1]),i=this.coordToCellNum(e[2]),a=this.coordToCellNum(e[3]),s=[];for(let o=t;o<=i;o++)for(let A=n;A<=a;A++){const l=this.cellPoints(o,A);for(const u of l)s.push(u)}return s}removePoint(e){const t=this.coordToCellNum(e[0]),n=this.coordToCellNum(e[1]),i=this._cells[t][n],a=i.findIndex(([s,o])=>s===e[0]&&o===e[1]);return a>-1&&i.splice(a,1),i}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 Ple(r,e){return new Nle(r,e)}const aL=+(Math.pow(2,27)+1);function Oh(r,e,t){const n=r*e,i=aL*r,a=i-r,s=i-a,o=r-s,A=aL*e,l=A-e,u=A-l,c=e-u,f=n-s*u-o*u-s*c,p=o*c-f;return t?(t[0]=p,t[1]=n,t):[p,n]}function Ule(r,e,t){const n=r+e,i=n-r,a=n-i,s=e-i,o=r-a;return t?(t[0]=o+s,t[1]=n,t):[o+s,n]}function Rle(r,e){const t=r.length;if(t===1){const o=Oh(r[0],e);return o[0]?o:[o[1]]}const n=new Array(2*t),i=[.1,.1],a=[.1,.1];let s=0;Oh(r[0],e,i),i[0]&&(n[s++]=i[0]);for(let o=1;o<t;++o){Oh(r[o],e,a);const A=i[1];Ule(A,a[0],i),i[0]&&(n[s++]=i[0]);const l=a[1],u=i[1],c=l+u,d=c-l,h=u-d;i[1]=c,h&&(n[s++]=h)}return i[1]&&(n[s++]=i[1]),s===0&&(n[s++]=0),n.length=s,n}function Qle(r,e){const t=r+e,n=t-r,i=t-n,a=e-n,o=r-i+a;return o?[o,t]:[t]}function Dle(r,e){const t=r.length|0,n=e.length|0;if(t===1&&n===1)return Qle(r[0],-e[0]);const i=t+n,a=new Array(i);let s=0,o=0,A=0;const l=Math.abs;let u=r[o],c=l(u),d=-e[A],h=l(d),f,p;c<h?(p=u,o+=1,o<t&&(u=r[o],c=l(u))):(p=d,A+=1,A<n&&(d=-e[A],h=l(d))),o<t&&c<h||A>=n?(f=u,o+=1,o<t&&(u=r[o],c=l(u))):(f=d,A+=1,A<n&&(d=-e[A],h=l(d)));let g=f+p,v=g-f,m=p-v,y=m,w=g,B,x,k,_,T;for(;o<t&&A<n;)c<h?(f=u,o+=1,o<t&&(u=r[o],c=l(u))):(f=d,A+=1,A<n&&(d=-e[A],h=l(d))),p=y,g=f+p,v=g-f,m=p-v,m&&(a[s++]=m),B=w+g,x=B-w,k=B-x,_=g-x,T=w-k,y=T+_,w=B;for(;o<t;)f=u,p=y,g=f+p,v=g-f,m=p-v,m&&(a[s++]=m),B=w+g,x=B-w,k=B-x,_=g-x,T=w-k,y=T+_,w=B,o+=1,o<t&&(u=r[o]);for(;A<n;)f=d,p=y,g=f+p,v=g-f,m=p-v,m&&(a[s++]=m),B=w+g,x=B-w,k=B-x,_=g-x,T=w-k,y=T+_,w=B,A+=1,A<n&&(d=-e[A]);return y&&(a[s++]=y),w&&(a[s++]=w),s||(a[s++]=0),a.length=s,a}function Hle(r,e){const t=r+e,n=t-r,i=t-n,a=e-n,o=r-i+a;return o?[o,t]:[t]}function $le(r,e){const t=r.length|0,n=e.length|0;if(t===1&&n===1)return Hle(r[0],e[0]);const i=t+n,a=new Array(i);let s=0,o=0,A=0;const l=Math.abs;let u=r[o],c=l(u),d=e[A],h=l(d),f,p;c<h?(p=u,o+=1,o<t&&(u=r[o],c=l(u))):(p=d,A+=1,A<n&&(d=e[A],h=l(d))),o<t&&c<h||A>=n?(f=u,o+=1,o<t&&(u=r[o],c=l(u))):(f=d,A+=1,A<n&&(d=e[A],h=l(d)));let g=f+p,v=g-f,m=p-v,y=m,w=g,B,x,k,_,T;for(;o<t&&A<n;)c<h?(f=u,o+=1,o<t&&(u=r[o],c=l(u))):(f=d,A+=1,A<n&&(d=e[A],h=l(d))),p=y,g=f+p,v=g-f,m=p-v,m&&(a[s++]=m),B=w+g,x=B-w,k=B-x,_=g-x,T=w-k,y=T+_,w=B;for(;o<t;)f=u,p=y,g=f+p,v=g-f,m=p-v,m&&(a[s++]=m),B=w+g,x=B-w,k=B-x,_=g-x,T=w-k,y=T+_,w=B,o+=1,o<t&&(u=r[o]);for(;A<n;)f=d,p=y,g=f+p,v=g-f,m=p-v,m&&(a[s++]=m),B=w+g,x=B-w,k=B-x,_=g-x,T=w-k,y=T+_,w=B,A+=1,A<n&&(d=e[A]);return y&&(a[s++]=y),w&&(a[s++]=w),s||(a[s++]=0),a.length=s,a}const sL=5,Nf=11102230246251565e-32,Gle=(3+16*Nf)*Nf,zle=(7+56*Nf)*Nf;function Vle(r,e,t,n){return function(a,s,o){const A=r(r(e(s[1],o[0]),e(-o[1],s[0])),r(e(a[1],s[0]),e(-s[1],a[0]))),l=r(e(a[1],o[0]),e(-o[1],a[0])),u=n(A,l);return u[u.length-1]}}function Kle(r,e,t,n){return function(a,s,o,A){const l=r(r(t(r(e(o[1],A[0]),e(-A[1],o[0])),s[2]),r(t(r(e(s[1],A[0]),e(-A[1],s[0])),-o[2]),t(r(e(s[1],o[0]),e(-o[1],s[0])),A[2]))),r(t(r(e(s[1],A[0]),e(-A[1],s[0])),a[2]),r(t(r(e(a[1],A[0]),e(-A[1],a[0])),-s[2]),t(r(e(a[1],s[0]),e(-s[1],a[0])),A[2])))),u=r(r(t(r(e(o[1],A[0]),e(-A[1],o[0])),a[2]),r(t(r(e(a[1],A[0]),e(-A[1],a[0])),-o[2]),t(r(e(a[1],o[0]),e(-o[1],a[0])),A[2]))),r(t(r(e(s[1],o[0]),e(-o[1],s[0])),a[2]),r(t(r(e(a[1],o[0]),e(-o[1],a[0])),-s[2]),t(r(e(a[1],s[0]),e(-s[1],a[0])),o[2])))),c=n(l,u);return c[c.length-1]}}function jle(r,e,t,n){return function(a,s,o,A,l){const u=r(r(r(t(r(t(r(e(A[1],l[0]),e(-l[1],A[0])),o[2]),r(t(r(e(o[1],l[0]),e(-l[1],o[0])),-A[2]),t(r(e(o[1],A[0]),e(-A[1],o[0])),l[2]))),s[3]),r(t(r(t(r(e(A[1],l[0]),e(-l[1],A[0])),s[2]),r(t(r(e(s[1],l[0]),e(-l[1],s[0])),-A[2]),t(r(e(s[1],A[0]),e(-A[1],s[0])),l[2]))),-o[3]),t(r(t(r(e(o[1],l[0]),e(-l[1],o[0])),s[2]),r(t(r(e(s[1],l[0]),e(-l[1],s[0])),-o[2]),t(r(e(s[1],o[0]),e(-o[1],s[0])),l[2]))),A[3]))),r(t(r(t(r(e(o[1],A[0]),e(-A[1],o[0])),s[2]),r(t(r(e(s[1],A[0]),e(-A[1],s[0])),-o[2]),t(r(e(s[1],o[0]),e(-o[1],s[0])),A[2]))),-l[3]),r(t(r(t(r(e(A[1],l[0]),e(-l[1],A[0])),s[2]),r(t(r(e(s[1],l[0]),e(-l[1],s[0])),-A[2]),t(r(e(s[1],A[0]),e(-A[1],s[0])),l[2]))),a[3]),t(r(t(r(e(A[1],l[0]),e(-l[1],A[0])),a[2]),r(t(r(e(a[1],l[0]),e(-l[1],a[0])),-A[2]),t(r(e(a[1],A[0]),e(-A[1],a[0])),l[2]))),-s[3])))),r(r(t(r(t(r(e(s[1],l[0]),e(-l[1],s[0])),a[2]),r(t(r(e(a[1],l[0]),e(-l[1],a[0])),-s[2]),t(r(e(a[1],s[0]),e(-s[1],a[0])),l[2]))),A[3]),r(t(r(t(r(e(s[1],A[0]),e(-A[1],s[0])),a[2]),r(t(r(e(a[1],A[0]),e(-A[1],a[0])),-s[2]),t(r(e(a[1],s[0]),e(-s[1],a[0])),A[2]))),-l[3]),t(r(t(r(e(o[1],A[0]),e(-A[1],o[0])),s[2]),r(t(r(e(s[1],A[0]),e(-A[1],s[0])),-o[2]),t(r(e(s[1],o[0]),e(-o[1],s[0])),A[2]))),a[3]))),r(t(r(t(r(e(o[1],A[0]),e(-A[1],o[0])),a[2]),r(t(r(e(a[1],A[0]),e(-A[1],a[0])),-o[2]),t(r(e(a[1],o[0]),e(-o[1],a[0])),A[2]))),-s[3]),r(t(r(t(r(e(s[1],A[0]),e(-A[1],s[0])),a[2]),r(t(r(e(a[1],A[0]),e(-A[1],a[0])),-s[2]),t(r(e(a[1],s[0]),e(-s[1],a[0])),A[2]))),o[3]),t(r(t(r(e(s[1],o[0]),e(-o[1],s[0])),a[2]),r(t(r(e(a[1],o[0]),e(-o[1],a[0])),-s[2]),t(r(e(a[1],s[0]),e(-s[1],a[0])),o[2]))),-A[3]))))),c=r(r(r(t(r(t(r(e(A[1],l[0]),e(-l[1],A[0])),o[2]),r(t(r(e(o[1],l[0]),e(-l[1],o[0])),-A[2]),t(r(e(o[1],A[0]),e(-A[1],o[0])),l[2]))),a[3]),t(r(t(r(e(A[1],l[0]),e(-l[1],A[0])),a[2]),r(t(r(e(a[1],l[0]),e(-l[1],a[0])),-A[2]),t(r(e(a[1],A[0]),e(-A[1],a[0])),l[2]))),-o[3])),r(t(r(t(r(e(o[1],l[0]),e(-l[1],o[0])),a[2]),r(t(r(e(a[1],l[0]),e(-l[1],a[0])),-o[2]),t(r(e(a[1],o[0]),e(-o[1],a[0])),l[2]))),A[3]),t(r(t(r(e(o[1],A[0]),e(-A[1],o[0])),a[2]),r(t(r(e(a[1],A[0]),e(-A[1],a[0])),-o[2]),t(r(e(a[1],o[0]),e(-o[1],a[0])),A[2]))),-l[3]))),r(r(t(r(t(r(e(o[1],l[0]),e(-l[1],o[0])),s[2]),r(t(r(e(s[1],l[0]),e(-l[1],s[0])),-o[2]),t(r(e(s[1],o[0]),e(-o[1],s[0])),l[2]))),a[3]),t(r(t(r(e(o[1],l[0]),e(-l[1],o[0])),a[2]),r(t(r(e(a[1],l[0]),e(-l[1],a[0])),-o[2]),t(r(e(a[1],o[0]),e(-o[1],a[0])),l[2]))),-s[3])),r(t(r(t(r(e(s[1],l[0]),e(-l[1],s[0])),a[2]),r(t(r(e(a[1],l[0]),e(-l[1],a[0])),-s[2]),t(r(e(a[1],s[0]),e(-s[1],a[0])),l[2]))),o[3]),t(r(t(r(e(s[1],o[0]),e(-o[1],s[0])),a[2]),r(t(r(e(a[1],o[0]),e(-o[1],a[0])),-s[2]),t(r(e(a[1],s[0]),e(-s[1],a[0])),o[2]))),-l[3])))),d=n(u,c);return d[d.length-1]}}function cp(r){return(r===3?Vle:r===4?Kle:jle)($le,Oh,Rle,Dle)}const Wle=cp(3),qle=cp(4),tA=[function(){return 0},function(){return 0},function(e,t){return t[0]-e[0]},function(e,t,n){const i=(e[1]-n[1])*(t[0]-n[0]),a=(e[0]-n[0])*(t[1]-n[1]),s=i-a;let o;if(i>0){if(a<=0)return s;o=i+a}else if(i<0){if(a>=0)return s;o=-(i+a)}else return s;const A=Gle*o;return s>=A||s<=-A?s:Wle(e,t,n)},function(e,t,n,i){const a=e[0]-i[0],s=t[0]-i[0],o=n[0]-i[0],A=e[1]-i[1],l=t[1]-i[1],u=n[1]-i[1],c=e[2]-i[2],d=t[2]-i[2],h=n[2]-i[2],f=s*u,p=o*l,g=o*A,v=a*u,m=a*l,y=s*A,w=c*(f-p)+d*(g-v)+h*(m-y),B=(Math.abs(f)+Math.abs(p))*Math.abs(c)+(Math.abs(g)+Math.abs(v))*Math.abs(d)+(Math.abs(m)+Math.abs(y))*Math.abs(h),x=zle*B;return w>x||-w>x?w:qle(e,t,n,i)}];function Yle(r){let e=tA[r.length];return e||(e=tA[r.length]=cp(r.length)),e.apply(void 0,...r)}function Xle(r,e,t,n,i,a,s){return function(...A){switch(A.length){case 0:case 1:return 0;case 2:return n(A[0],A[1]);case 3:return i(A[0],A[1],A[2]);case 4:return a(A[0],A[1],A[2],A[3]);case 5:return s(A[0],A[1],A[2],A[3],A[4])}return r(A)}}function Zle(){for(;tA.length<=sL;)tA.push(cp(tA.length));const r=Xle(void 0,Yle,...tA);for(let e=0;e<=sL;++e)r[e]=tA[e];return r}const Mu=Zle(),oL=Mu[3];function Jle(r){const e=r.length;if(e<3){const o=new Array(e);for(let A=0;A<e;++A)o[A]=A;return e===2&&r[0][0]===r[1][0]&&r[0][1]===r[1][1]?[0]:o}const t=new Array(e);for(let o=0;o<e;++o)t[o]=o;t.sort((o,A)=>{const l=r[o][0]-r[A][0];return l||r[o][1]-r[A][1]});const n=[t[0],t[1]],i=[t[0],t[1]];for(let o=2;o<e;++o){const A=t[o],l=r[A];let u=n.length;for(;u>1&&oL(r[n[u-2]],r[n[u-1]],l)<=0;)u-=1,n.pop();for(n.push(A),u=i.length;u>1&&oL(r[i[u-2]],r[i[u-1]],l)>=0;)u-=1,i.pop();i.push(A)}const a=new Array(i.length+n.length-2);let s=0;for(let o=0,A=n.length;o<A;++o)a[s++]=n[o];for(let o=i.length-2;o>0;--o)a[s++]=i[o];return a}function eue(r,e,t,n){for(let i=0;i<2;++i){const a=r[i],s=e[i],[o,A]=[Math.min(a,s),Math.max(a,s)],l=t[i],u=n[i],[c,d]=[Math.min(l,u),Math.max(l,u)];if(d<o||A<c)return!1}return!0}function tue(r,e,t,n){const i=Mu(r,t,n),a=Mu(e,t,n);if(i>0&&a>0||i<0&&a<0)return!1;const s=Mu(t,r,e),o=Mu(n,r,e);return s>0&&o>0||s<0&&o<0?!1:i===0&&a===0&&s===0&&o===0?eue(r,e,t,n):!0}function nue(r){const e=[r[0]];let t=r[0];for(let n=1;n<r.length;n++){const i=r[n];(t[0]!==i[0]||t[1]!==i[1])&&e.push(i),t=i}return e}function rue(r){return r.sort(function(e,t){return e[0]-t[0]||e[1]-t[1]})}function hE(r,e){return Math.pow(e[0]-r[0],2)+Math.pow(e[1]-r[1],2)}function AL(r,e,t){const n=[e[0]-r[0],e[1]-r[1]],i=[t[0]-r[0],t[1]-r[1]],a=hE(r,e),s=hE(r,t);return(n[0]*i[0]+n[1]*i[1])/Math.sqrt(a*s)}function lL(r,e){for(let t=0;t<e.length-1;t++){const n=[e[t],e[t+1]];if(!(r[0][0]===n[0][0]&&r[0][1]===n[0][1]||r[0][0]===n[1][0]&&r[0][1]===n[1][1])&&tue(r[0],r[1],n[0],n[1]))return!0}return!1}function iue(r){let e=1/0,t=1/0,n=-1/0,i=-1/0;for(let a=r.length-1;a>=0;a--)r[a][0]<e&&(e=r[a][0]),r[a][1]<t&&(t=r[a][1]),r[a][0]>n&&(n=r[a][0]),r[a][1]>i&&(i=r[a][1]);return[n-e,i-t]}function aue(r){return[Math.min(r[0][0],r[1][0]),Math.min(r[0][1],r[1][1]),Math.max(r[0][0],r[1][0]),Math.max(r[0][1],r[1][1])]}function sue(r,e,t){let n=null,i=uL,a=uL,s,o;for(let A=0;A<e.length;A++)s=AL(r[0],r[1],e[A]),o=AL(r[1],r[0],e[A]),s>i&&o>a&&!lL([r[0],e[A]],t)&&!lL([r[1],e[A]],t)&&(i=s,a=o,n=e[A]);return n}function K3(r,e,t,n,i){let a=!1;for(let s=0;s<r.length-1;s++){const o=[r[s],r[s+1]],A=o[0][0]+","+o[0][1]+","+o[1][0]+","+o[1][1];if(hE(o[0],o[1])<e||i.has(A))continue;let l=0,u=aue(o),c,d,h;do u=n.extendBbox(u,l),c=u[2]-u[0],d=u[3]-u[1],h=sue(o,n.rangePoints(u),r),l++;while(h===null&&(t[0]>c||t[1]>d));c>=t[0]&&d>=t[1]&&i.add(A),h!==null&&(r.splice(s+1,0,h),n.removePoint(h),a=!0)}return a?K3(r,e,t,n,i):r}function oue(r,e,t){const n=e||20,i=nue(rue(Fb.toXy(r,t)));if(i.length<4){const c=i.concat([i[0]]);return t?Fb.fromXy(c,t):c}const a=iue(i),s=[a[0]*cL,a[1]*cL],o=Jle(i).reverse().map(c=>i[c]);o.push(o[0]);const A=i.filter(function(c){return o.indexOf(c)<0}),l=Math.ceil(1/(i.length/(a[0]*a[1]))),u=K3(o,Math.pow(n,2),s,Ple(A,l),new Set);return t?Fb.fromXy(u,t):u}const uL=Math.cos(90/(180/Math.PI)),cL=.6;function Aue(r,e,t){if(r.length===1)return lue(r[0],e,t);if(r.length===2)return dL(r,e,t);if(r.length===3){const[n,i,a]=vx(r);if(zR(n,i,a))return dL([n,a],e,t)}switch(t){case"smooth":return cue(r,e);case"sharp":return due(r,e);case"rounded":default:return uue(r,e)}}const lue=(r,e,t)=>{if(t==="sharp")return[["M",r[0]-e,r[1]-e],["L",r[0]+e,r[1]-e],["L",r[0]+e,r[1]+e],["L",r[0]-e,r[1]+e],["Z"]];const n=[e,e,0,0,0];return[["M",r[0],r[1]-e],["A",...n,r[0],r[1]+e],["A",...n,r[0],r[1]-e]]},dL=(r,e,t)=>{const n=[e,e,0,0,0],i=t==="sharp"?xt(r[0],co(As(hn(r[0],r[1])),e)):r[0],a=t==="sharp"?xt(r[1],co(As(hn(r[1],r[0])),e)):r[1],s=co(As(lg(hn(i,a),!1)),e),o=co(s,-1),A=xt(i,s),l=xt(a,s),u=xt(a,o),c=xt(i,o);return t==="sharp"?[["M",A[0],A[1]],["L",l[0],l[1]],["L",u[0],u[1]],["L",c[0],c[1]],["Z"]]:[["M",A[0],A[1]],["L",l[0],l[1]],["A",...n,u[0],u[1]],["L",c[0],c[1]],["A",...n,A[0],A[1]]]},uue=(r,e)=>{const t=vx(r).map((o,A)=>{const l=(A-2+r.length)%r.length,u=(A-1+r.length)%r.length,c=(A+1)%r.length,d=r[l],h=r[u],f=r[c],p=hn(d,h),g=hn(h,o),v=hn(o,f),m=(k,_)=>gx(k,_,!0)<Math.PI,y=m(p,g),w=m(g,v),B=k=>co(As(lg(k,!1)),e),x=B(g);return[{p:hs(y?xt(h,B(p)):xt(h,x)),concave:y&&h},{p:hs(w?xt(o,B(v)):xt(o,x)),concave:w&&o}]}),n=[e,e,0,0,0],i=t.findIndex((o,A)=>!t[(A-1+t.length)%t.length][0].concave&&!t[(A-1+t.length)%t.length][1].concave&&!o[0].concave&&!o[0].concave&&!o[1].concave),a=t.slice(i).concat(t.slice(0,i));let s=[];return a.flatMap((o,A)=>{const l=[],u=a[t.length-1];return A===0&&l.push(["M",...u[1].p]),o[0].concave?s.push(o[0].p,o[1].p):l.push(["A",...n,...o[0].p]),o[1].concave?s.unshift(o[1].p):l.push(["L",...o[1].p]),s.length===3&&(l.pop(),l.push(["C",...s.flat()]),s=[]),l})},cue=(r,e)=>{const t=vx(r).map((n,i)=>{const a=r[(i+1)%r.length];return{p:n,v:As(hn(a,n))}});return t.forEach((n,i)=>{const a=i>0?i-1:r.length-1,s=t[a].v,o=As(xt(s,co(n.v,gx(s,n.v,!0)<Math.PI?1:-1)));n.p=xt(n.p,co(o,e))}),JR(t.map(n=>n.p))},due=(r,e)=>{const n=r.map((a,s)=>{const o=r[s===0?r.length-1:s-1],A=ac(co(As(lg(hn(o,a),!1)),e));return[xt(o,A),xt(a,A)]}).flat();return n.map((a,s)=>{if(s%2===0)return null;const o=[n[(s-1)%n.length],n[s%n.length]],A=[n[(s+1)%n.length],n[(s+2)%n.length]];return px(o,A,!0)}).filter(Boolean).map((a,s)=>[s===0?"M":"L",a[0],a[1]]).concat([["Z"]])};var hue=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};class dp extends Dr{constructor(e,t){super(e,Object.assign({},dp.defaultOptions,t)),this.hullMemberIds=[],this.drawHull=()=>{if(!this.shape)this.shape=new Mc({style:this.getHullStyle()}),this.context.canvas.appendChild(this.shape);else{const n=!Qn(this.optionsCache,this.options);this.shape.update(this.getHullStyle(n))}this.optionsCache=Object.assign({},this.options)},this.updateHullPath=n=>{this.shape&&this.options.members.includes(ve(n.data))&&this.shape.update({d:this.getHullPath(!0)})},this.getHullPath=(n=!1)=>{const{graph:i}=this.context,a=this.getMember();if(a.length===0)return"";const s=a.map(l=>i.getNodeData(l)),o=oue(s.map(_r),this.options.concavity).slice(1).reverse(),A=o.flatMap(l=>s.filter(u=>Qn(_r(u),l)).map(ve));return Qn(A,this.hullMemberIds)&&!n?this.path:(this.hullMemberIds=A,this.path=Aue(o,this.getPadding(),this.options.corner),this.path)},this.bindEvents()}bindEvents(){this.context.graph.on(Ge.AFTER_RENDER,this.drawHull),this.context.graph.on(Ge.AFTER_ELEMENT_UPDATE,this.updateHullPath)}unbindEvents(){this.context.graph.off(Ge.AFTER_RENDER,this.drawHull),this.context.graph.off(Ge.AFTER_ELEMENT_UPDATE,this.updateHullPath)}getHullStyle(e){const t=this.options,{members:n,padding:i,corner:a}=t,s=hue(t,["members","padding","corner"]);return Object.assign(Object.assign({},s),{d:this.getHullPath(e)})}getPadding(){const{graph:e}=this.context;return this.hullMemberIds.reduce((n,i)=>{const{halfExtents:a}=e.getElementRenderBounds(i),s=Math.max(a[0],a[1]);return Math.max(n,s)},0)+this.options.padding}addMember(e){const t=Array.isArray(e)?e:[e];this.options.members=[...new Set([...this.options.members,...t])],this.shape.update({d:this.getHullPath()})}removeMember(e){const t=Array.isArray(e)?e:[e];this.options.members=this.options.members.filter(n=>!t.includes(n)),t.some(n=>this.hullMemberIds.includes(n))&&this.shape.update({d:this.getHullPath()})}updateMember(e){this.options.members=At(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()}}dp.defaultOptions={members:[],padding:10,corner:"rounded",concavity:1/0,fill:"lightblue",fillOpacity:.2,labelOpacity:1,stroke:"blue",strokeOpacity:.2};function j3(r,e){e(r),r.children&&r.children.forEach(function(t){t&&j3(t,e)})}function $c(r){hp(r,!0)}function Fa(r){hp(r,!1)}function hp(r,e){var t=e?"visible":"hidden";j3(r,function(n){n.attr("visibility",t)})}var fue=(function(r){Lt(e,r);function e(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];var i=r.apply(this,it([],Z(t),!1))||this;return i.isMutationObserved=!0,i.addEventListener(Vt.INSERTED,function(){Fa(i)}),i}return e})(Mr);function W3(r){var e=r.appendChild(new fue({class:"offscreen"}));return Fa(e),e}function gue(r){for(var e=r;e;){if(e.className==="offscreen")return!0;e=e.parent}return!1}var cC=(function(r){Lt(e,r);function e(t){t===void 0&&(t={});var n=t.style,i=qn(t,["style"]);return r.call(this,Ie({style:Ie({text:"",fill:"black",fontFamily:"sans-serif",fontSize:16,fontStyle:"normal",fontVariant:"normal",fontWeight:"normal",lineWidth:1,textAlign:"start",textBaseline:"middle"},n)},i))||this}return Object.defineProperty(e.prototype,"offscreenGroup",{get:function(){return this._offscreen||(this._offscreen=W3(this)),this._offscreen},enumerable:!1,configurable:!0}),e.prototype.disconnectedCallback=function(){var t;(t=this._offscreen)===null||t===void 0||t.destroy()},e})(SA);function Ml(r){return r*Math.PI/180}function q3(r){return Number((r*180/Math.PI).toPrecision(5))}var Bi=(function(){function r(e,t,n,i){e===void 0&&(e=0),t===void 0&&(t=0),n===void 0&&(n=0),i===void 0&&(i=0),this.x=0,this.y=0,this.width=0,this.height=0,this.x=e,this.y=t,this.width=n,this.height=i}return Object.defineProperty(r.prototype,"bottom",{get:function(){return this.y+this.height},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"left",{get:function(){return this.x},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"right",{get:function(){return this.x+this.width},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"top",{get:function(){return this.y},enumerable:!1,configurable:!0}),r.fromRect=function(e){return new r(e.x,e.y,e.width,e.height)},r.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}},r.prototype.isPointIn=function(e,t){return e>=this.left&&e<=this.right&&t>=this.top&&t<=this.bottom},r})();function Pi(r,e){return At(r)?r.apply(void 0,it([],Z(e),!1)):r}var Qa=function(r,e){var t=function(i){return"".concat(e,"-").concat(i)},n=Object.fromEntries(Object.entries(r).map(function(i){var a=Z(i,2),s=a[0],o=a[1],A=t(o);return[s,{name:A,class:".".concat(A),id:"#".concat(A),toString:function(){return A}}]}));return Object.assign(n,{prefix:t}),n},pue=5,Y3=function(r,e,t,n){t===void 0&&(t=0),n===void 0&&(n=pue),Object.entries(e).forEach(function(i){var a=Z(i,2),s=a[0],o=a[1],A=r;Object.prototype.hasOwnProperty.call(e,s)&&(o?Cl(o)?(Cl(r[s])||(A[s]={}),t<n?Y3(r[s],o,t+1,n):A[s]=e[s]):Ui(o)?(A[s]=[],A[s]=A[s].concat(o)):A[s]=o:A[s]=o)})},yr=function(r){for(var e=[],t=1;t<arguments.length;t++)e[t-1]=arguments[t];for(var n=0;n<e.length;n+=1)Y3(r,e[n]);return r},vue=function(r){return r!==void 0&&r!=null&&!Number.isNaN(r)},vh,mue=iB(function(r,e){var t=e.fontSize,n=e.fontFamily,i=e.fontWeight,a=e.fontStyle,s=e.fontVariant;return vh||(vh=Qe.offscreenCanvasCreator.getOrCreateContext(void 0)),vh.font=[a,s,i,"".concat(t,"px"),n].join(" "),vh.measureText(r).width},function(r,e){return[r,Object.values(e||X3(r)).join()].join("")},4096),X3=function(r){var e=r.style.fontFamily||"sans-serif",t=r.style.fontWeight||"normal",n=r.style.fontStyle||"normal",i=r.style.fontVariant,a=r.style.fontSize;return a=typeof a=="object"?a.value:a,{fontSize:a,fontFamily:e,fontWeight:t,fontStyle:n,fontVariant:i}};function Z3(r){return r.nodeName==="text"?r:r.nodeName==="g"&&r.children.length===1&&r.children[0].nodeName==="text"?r.children[0]:null}function J3(r,e){var t=Z3(r);t&&t.attr(e)}function fE(r,e,t){t===void 0&&(t="..."),J3(r,{wordWrap:!0,wordWrapWidth:e,maxLines:1,textOverflow:t})}function yue(r,e,t,n){t===void 0&&(t=2),n===void 0&&(n="top"),J3(r,{wordWrap:!0,wordWrapWidth:e,maxLines:t,textBaseline:n})}function hL(r){var e=r.nativeEvent,t=r.touches,n=r.clientX,i=r.clientY;if(e)return[e.clientX,e.clientY];if(t){var a=t[0],s=a.clientX,o=a.clientY;return[s,o]}return typeof n=="number"&&typeof i=="number"?[n,i]:[0,0]}function Rs(r){return typeof r=="function"?r():ln(r)||Yt(r)?new cC({style:{text:String(r)}}):r}function wue(r,e){return typeof r=="function"?r():ln(r)||Yt(r)?new xA({style:Ie(Ie({pointerEvents:"auto"},e),{innerHTML:r})}):r}function bue(r,e){return r.reduce(function(t,n){return(t[n[e]]=t[n[e]]||[]).push(n),t},{})}function Ni(r,e,t,n,i){return n===void 0&&(n=!0),i===void 0&&(i=function(a){a.node().removeChildren()}),r?t(e):(n&&i(e),null)}function $r(r,e,t,n,i){return n===void 0&&(n=!0),i===void 0&&(i=!1),n&&r===e||i&&r===t?!0:r>e&&r<t}var Bue=function(r,e){return function(t){return r*(1-t)+e*t}};function Eue(r,e){var t=e?e.length:0,n=r?Math.min(t,r.length):0;return function(i){var a=new Array(n),s=new Array(t),o=0;for(o=0;o<n;++o)a[o]=dC(r[o],e[o]);for(;o<t;++o)s[o]=e[o];for(o=0;o<n;++o)s[o]=a[o](i);return s}}function xue(r,e){r===void 0&&(r={}),e===void 0&&(e={});var t={},n={};return Object.entries(e).forEach(function(i){var a=Z(i,2),s=a[0],o=a[1];s in r?t[s]=dC(r[s],o):n[s]=o}),function(i){return Object.entries(t).forEach(function(a){var s=Z(a,2),o=s[0],A=s[1];return n[o]=A(i)}),n}}function dC(r,e){return typeof r=="number"&&typeof e=="number"?Bue(r,e):Array.isArray(r)&&Array.isArray(e)?Eue(r,e):typeof r=="object"&&typeof e=="object"?xue(r,e):(function(t){return r})}function Cue(r,e,t,n){if(!n)return r.attr("__keyframe_data__",t),null;var i=n.duration,a=i===void 0?0:i,s=dC(e,t),o=Math.ceil(+a/16),A=new Array(o).fill(0).map(function(l,u,c){return{__keyframe_data__:s(u/(c.length-1))}});return r.animate(A,Ie({fill:"both"},n))}function Ts(r,e){return[r[0]*e,r[1]*e]}function Iu(r,e){return[r[0]+e[0],r[1]+e[1]]}function Mb(r,e){return[r[0]-e[0],r[1]-e[1]]}function Ko(r,e){return[Math.min(r[0],e[0]),Math.min(r[1],e[1])]}function jo(r,e){return[Math.max(r[0],e[0]),Math.max(r[1],e[1])]}function dc(r,e){return Math.sqrt(Math.pow(r[0]-e[0],2)+Math.pow(r[1]-e[1],2))}function e4(r){if(r[0]===0&&r[1]===0)return[0,0];var e=Math.sqrt(Math.pow(r[0],2)+Math.pow(r[1],2));return[r[0]/e,r[1]/e]}function Sue(r,e){return e?[r[1],-r[0]]:[-r[1],r[0]]}function fL(r,e){return+r.toPrecision(e)}function gE(r,e){var t={},n=Array.isArray(e)?e:[e];for(var i in r)n.includes(i)||(t[i]=r[i]);return t}function _ue(r,e,t,n){var i,a=[],s=!!n,o,A,l=[1/0,1/0],u=[-1/0,-1/0],c,d,h;if(s){i=Z(n,2),l=i[0],u=i[1];for(var f=0,p=r.length;f<p;f+=1){var g=r[f];l=Ko(l,g),u=jo(u,g)}}for(var f=0,v=r.length;f<v;f+=1){var g=r[f];if(f===0)h=g;else if(f===v-1)d=g,a.push(h),a.push(d);else{var m=[f?f-1:v-1,f-1][1];o=r[m],A=r[f+1];var y=[0,0];y=Mb(A,o),y=Ts(y,e);var w=dc(g,o),B=dc(g,A),x=w+B;x!==0&&(w/=x,B/=x);var k=Ts(y,-w),_=Ts(y,B);d=Iu(g,k),c=Iu(g,_),c=Ko(c,jo(A,g)),c=jo(c,Ko(A,g)),k=Mb(c,g),k=Ts(k,-w/B),d=Iu(g,k),d=Ko(d,jo(o,g)),d=jo(d,Ko(o,g)),_=Mb(g,d),_=Ts(_,B/w),c=Iu(g,_),s&&(d=jo(d,l),d=Ko(d,u),c=jo(c,l),c=Ko(c,u)),a.push(h),a.push(d),h=c}}return a}function kue(r,e,t){t===void 0&&(t=[[0,0],[1,1]]);for(var n=!1,i=[],a=0,s=r.length;a<s;a+=2)i.push([r[a],r[a+1]]);for(var o=_ue(i,.4,n,t),A=i.length,l=[],u,c,d,a=0;a<A-1;a+=1)u=o[a*2],c=o[a*2+1],d=i[a+1],l.push(["C",u[0],u[1],c[0],c[1],d[0],d[1]]);return l}var Tue=["$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"];function Fue(r){return Tue.includes(r)}function gL(r){var e={};for(var t in r)Fue(t)&&(e[t]=r[t]);return e}function Mue(r,e){if(r.length<=e)return r;for(var t=Math.floor(r.length/e),n=[],i=0;i<r.length;i+=t)n.push(r[i]);return n}function hC(r,e,t){var n=r.getBBox(),i=n.width,a=n.height,s=e/Math.max(i,a);return r.style.transform="scale(".concat(s,")"),s}function Iue(r,e){var t=new Map;return r.forEach(function(n){var i=e(n);t.has(i)||t.set(i,[]),t.get(i).push(n)}),t}function Oue(r){throw new Error(r)}var Lue=(function(){function r(i,a,s,o,A,l,u){i===void 0&&(i=null),a===void 0&&(a=null),s===void 0&&(s=null),o===void 0&&(o=null),A===void 0&&(A=[null,null,null,null,null]),l===void 0&&(l=[]),u===void 0&&(u=[]),e.add(this),this._elements=Array.from(i),this._data=a,this._parent=s,this._document=o,this._enter=A[0],this._update=A[1],this._exit=A[2],this._merge=A[3],this._split=A[4],this._transitions=l,this._facetElements=u}r.prototype.selectAll=function(i){var a=typeof i=="string"?this._parent.querySelectorAll(i):i;return new t(a,null,this._elements[0],this._document)},r.prototype.selectFacetAll=function(i){var a=typeof i=="string"?this._parent.querySelectorAll(i):i;return new t(this._elements,null,this._parent,this._document,void 0,void 0,a)},r.prototype.select=function(i){var a=typeof i=="string"?this._parent.querySelectorAll(i)[0]||null:i;return new t([a],null,a,this._document)},r.prototype.append=function(i){var a=this,s=typeof i=="function"?i:function(){return a.createElement(i)},o=[];if(this._data!==null){for(var A=0;A<this._data.length;A++){var l=this._data[A],u=Z(Array.isArray(l)?l:[l,null],2),c=u[0],d=u[1],h=s(c,A);h.__data__=c,d!==null&&(h.__fromElements__=d),this._parent.appendChild(h),o.push(h)}return new t(o,null,this._parent,this._document)}for(var A=0;A<this._elements.length;A++){var f=this._elements[A],c=f.__data__,h=s(c,A);f.appendChild(h),o.push(h)}return new t(o,null,o[0],this._document)},r.prototype.maybeAppend=function(i,a){var s=nv(this,e,"m",n).call(this,i[0]==="#"?i:"#".concat(i),a);return s.attr("id",i),s},r.prototype.maybeAppendByClassName=function(i,a){var s=i.toString(),o=nv(this,e,"m",n).call(this,s[0]==="."?s:".".concat(s),a);return o.attr("className",s),o},r.prototype.maybeAppendByName=function(i,a){var s=nv(this,e,"m",n).call(this,'[name="'.concat(i,'"]'),a);return s.attr("name",i),s},r.prototype.data=function(i,a,s){var o,A;a===void 0&&(a=function(F){return F}),s===void 0&&(s=function(){return null});for(var l=[],u=[],c=new Set(this._elements),d=[],h=new Set,f=new Map(this._elements.map(function(F,I){return[a(F.__data__,I),F]})),p=new Map(this._facetElements.map(function(F,I){return[a(F.__data__,I),F]})),g=Iue(this._elements,function(F){return s(F.__data__)}),v=0;v<i.length;v++){var m=i[v],y=a(m,v),w=s(m,v);if(f.has(y)){var B=f.get(y);B.__data__=m,B.__facet__=!1,u.push(B),c.delete(B),f.delete(y)}else if(p.has(y)){var B=p.get(y);B.__data__=m,B.__facet__=!0,u.push(B),p.delete(y)}else if(g.has(y)){var x=g.get(y);d.push([m,x]);try{for(var k=(o=void 0,wc(x)),_=k.next();!_.done;_=k.next()){var B=_.value;c.delete(B)}}catch(F){o={error:F}}finally{try{_&&!_.done&&(A=k.return)&&A.call(k)}finally{if(o)throw o.error}}g.delete(y)}else if(f.has(w)){var B=f.get(w);B.__toData__?B.__toData__.push(m):B.__toData__=[m],h.add(B),c.delete(B)}else l.push(m)}var T=[new t([],l,this._parent,this._document),new t(u,null,this._parent,this._document),new t(c,null,this._parent,this._document),new t([],d,this._parent,this._document),new t(h,null,this._parent,this._document)];return new t(this._elements,null,this._parent,this._document,T)},r.prototype.merge=function(i){var a=it(it([],Z(this._elements),!1),Z(i._elements),!1),s=it(it([],Z(this._transitions),!1),Z(i._transitions),!1);return new t(a,null,this._parent,this._document,void 0,s)},r.prototype.createElement=function(i){if(this._document)return this._document.createElement(i,{});var a=t.registry[i];return a?new a:Oue("Unknown node type: ".concat(i))},r.prototype.join=function(i,a,s,o,A){i===void 0&&(i=function(f){return f}),a===void 0&&(a=function(f){return f}),s===void 0&&(s=function(f){return f.remove()}),o===void 0&&(o=function(f){return f}),A===void 0&&(A=function(f){return f.remove()});var l=i(this._enter),u=a(this._update),c=s(this._exit),d=o(this._merge),h=A(this._split);return u.merge(l).merge(c).merge(d).merge(h)},r.prototype.remove=function(){for(var i=function(o){var A=a._elements[o],l=a._transitions[o];l?l.then(function(){return A.remove()}):A.remove()},a=this,s=0;s<this._elements.length;s++)i(s);return new t([],null,this._parent,this._document,void 0,this._transitions)},r.prototype.each=function(i){for(var a=0;a<this._elements.length;a++){var s=this._elements[a],o=s.__data__;i.call(s,o,a)}return this},r.prototype.attr=function(i,a){var s=typeof a!="function"?function(){return a}:a;return this.each(function(o,A){a!==void 0&&(this[i]=s.call(this,o,A))})},r.prototype.style=function(i,a,s){s===void 0&&(s=!0);var o=typeof a!="function"||!s?function(){return a}:a;return this.each(function(A,l){a!==void 0&&(this.style[i]=o.call(this,A,l))})},r.prototype.styles=function(i,a){return i===void 0&&(i={}),a===void 0&&(a=!0),this.each(function(s,o){var A=this;Object.entries(i).forEach(function(l){var u=Z(l,2),c=u[0],d=u[1],h=typeof d!="function"||!a?function(){return d}:d;d!==void 0&&A.attr(c,h.call(A,s,o))})})},r.prototype.update=function(i,a){a===void 0&&(a=!0);var s=typeof i!="function"||!a?function(){return i}:i;return this.each(function(o,A){i&&this.update&&this.update(s.call(this,o,A))})},r.prototype.maybeUpdate=function(i,a){a===void 0&&(a=!0);var s=typeof i!="function"||!a?function(){return i}:i;return this.each(function(o,A){i&&this.update&&this.update(s.call(this,o,A))})},r.prototype.transition=function(i){this._transitions;var a=new Array(this._elements.length);return this.each(function(s,o){a[o]=i.call(this,s,o)}),this._transitions=_8(a),this},r.prototype.on=function(i,a){return this.each(function(){this.addEventListener(i,a)}),this},r.prototype.call=function(i){for(var a=[],s=1;s<arguments.length;s++)a[s-1]=arguments[s];return i.call.apply(i,it([this._parent,this],Z(a),!1)),this},r.prototype.node=function(){return this._elements[0]},r.prototype.nodes=function(){return this._elements},r.prototype.transitions=function(){return this._transitions.filter(function(i){return!!i})},r.prototype.parent=function(){return this._parent};var e,t,n;return t=r,e=new WeakSet,n=function(a,s){var o=this._elements[0],A=o.querySelector(a);if(A)return new t([A],null,this._parent,this._document);var l=typeof s=="string"?this.createElement(s):s();return o.appendChild(l),new t([l],null,this._parent,this._document)},r.registry={g:Mr,rect:jr,circle:us,path:Ai,text:cC,ellipse:xc,image:Cc,line:vA,polygon:CA,polyline:qf,html:xA},r})();function nt(r){return new Lue([r],null,r,r.ownerDocument)}function Nue(r,e,t){return r.querySelector(e)?nt(r).select(e):nt(r).append(t)}function Wr(r){if(Yt(r))return[r,r,r,r];if(Ui(r)){var e=r.length;if(e===1)return[r[0],r[0],r[0],r[0]];if(e===2)return[r[0],r[1],r[0],r[1]];if(e===3)return[r[0],r[1],r[2],r[1]];if(e===4)return r}return[0,0,0,0]}function pL(r){var e=r.getLocalBounds(),t=e.min,n=e.max,i=Z([t,n],2),a=Z(i[0],2),s=a[0],o=a[1],A=Z(i[1],2),l=A[0],u=A[1];return{x:s,y:o,width:l-s,height:u-o,left:s,bottom:u,top:o,right:l}}function Pue(r,e){var t=Z(r,2),n=t[0],i=t[1],a=Z(e,2),s=a[0],o=a[1];return n!==s&&i===o}function Uue(r,e){var t,n,i=e.attributes;try{for(var a=wc(Object.entries(i)),s=a.next();!s.done;s=a.next()){var o=Z(s.value,2),A=o[0],l=o[1];A!=="id"&&A!=="className"&&r.attr(A,l)}}catch(u){t={error:u}}finally{try{s&&!s.done&&(n=a.return)&&n.call(a)}finally{if(t)throw t.error}}}function fC(r){return r.toString().charAt(0).toUpperCase()+r.toString().slice(1)}function Rue(r){return r.toString().charAt(0).toLowerCase()+r.toString().slice(1)}function Que(r,e){return"".concat(e).concat(fC(r))}function vL(r,e,t){var n;t===void 0&&(t=!0);var i=e||((n=r.match(/^([a-z][a-z0-9]+)/))===null||n===void 0?void 0:n[0])||"",a=r.replace(new RegExp("^(".concat(i,")")),"");return t?Rue(a):a}function Due(r,e){Object.entries(e).forEach(function(t){var n=Z(t,2),i=n[0],a=n[1];it([r],Z(r.querySelectorAll(i)),!1).filter(function(s){return s.matches(i)}).forEach(function(s){if(s){var o=s;o.style.cssText+=Object.entries(a).reduce(function(A,l){return"".concat(A).concat(l.join(":"),";")},"")}})})}var mh=function(r,e){if(!(r!=null&&r.startsWith(e)))return!1;var t=r[e.length];return t>="A"&&t<="Z"};function _t(r,e,t){t===void 0&&(t=!1);var n={};return Object.entries(r).forEach(function(i){var a=Z(i,2),s=a[0],o=a[1];if(!(s==="className"||s==="class")){if(mh(s,"show")&&mh(vL(s,"show"),e)!==t)s===Que(e,"show")?n[s]=o:n[s.replace(new RegExp(fC(e)),"")]=o;else if(!mh(s,"show")&&mh(s,e)!==t){var A=vL(s,e);A==="filter"&&typeof o=="function"||(n[A]=o)}}}),n}function sl(r,e){return Object.entries(r).reduce(function(t,n){var i=Z(n,2),a=i[0],s=i[1];return a.startsWith("show")?t["show".concat(e).concat(a.slice(4))]=s:t["".concat(e).concat(fC(a))]=s,t},{})}function Qs(r,e){e===void 0&&(e=["x","y","class","className"]);var t=["transform","transformOrigin","anchor","visibility","pointerEvents","zIndex","cursor","clipPath","clipPathTargets","offsetPath","offsetPathTargets","offsetDistance","draggable","droppable"],n={},i={};return Object.entries(r).forEach(function(a){var s=Z(a,2),o=s[0],A=s[1];e.includes(o)||(t.indexOf(o)!==-1?i[o]=A:n[o]=A)}),[n,i]}function Ci(r,e){var t={YYYY:r.getFullYear(),MM:r.getMonth()+1,DD:r.getDate(),HH:r.getHours(),mm:r.getMinutes(),ss:r.getSeconds()},n=e;return Object.keys(t).forEach(function(i){var a=t[i];n=n.replace(i,i==="YYYY"?"".concat(a):"".concat(a).padStart(2,"0"))}),n}function Hue(r,e,t){var n=r.getBBox(),i=n.width,a=n.height,s=Z([e,t].map(function(l,u){var c;return l.includes("%")?parseFloat(((c=l.match(/[+-]?([0-9]*[.])?[0-9]+/))===null||c===void 0?void 0:c[0])||"0")/100*(u===0?i:a):l}),2),o=s[0],A=s[1];return[o,A]}function t4(r,e){if(e)try{var t=/translate\(([+-]*[\d]+[%]*),[ ]*([+-]*[\d]+[%]*)\)/g,n=e.replace(t,function(i,a,s){return"translate(".concat(Hue(r,a,s),")")});r.attr("transform",n)}catch{}}function $ue(r){var e;return((e=r[0])===null||e===void 0?void 0:e.map(function(t,n){return r.map(function(i){return i[n]})}))||[]}var mL=function(r,e){if(e==null){r.innerHTML="";return}r.replaceChildren?Array.isArray(e)?r.replaceChildren.apply(r,it([],Z(e),!1)):r.replaceChildren(e):(r.innerHTML="",Array.isArray(e)?e.forEach(function(t){return r.appendChild(t)}):r.appendChild(e))};function fp(r){return/\S+-\S+/g.test(r)?r.split("-").map(function(e){return e[0]}):r.length>2?[r[0]]:r.split("")}var Gue=function(r){var e=new DOMParser,t=e.parseFromString(r,"text/html"),n=t.body.firstElementChild;if(console.log(n==null?void 0:n.getClientRects(),11),!n)return 0;var i=n.getAttribute("style")||"",a=Object.fromEntries(i.split(";").map(function(g){return g.trim()}).filter(function(g){return g.includes(":")}).map(function(g){var v=Z(g.split(":").map(function(w){return w.trim()}),2),m=v[0],y=v[1];return[m.toLowerCase(),y]})),s=function(g){if(!g)return 0;var v=g.match(/([\d.]+)px/);return v?parseFloat(v[1]):0};if(a.height)return s(a.height);var o=s(a["font-size"])||16,A=a["line-height"],l;!A||A==="normal"?l=1.2*o:A.endsWith("px")?l=s(A):/^[\d.]+$/.test(A)?l=parseFloat(A)*o:l=o;var u=s(a["padding-top"]),c=s(a["padding-bottom"]);if(a.padding){var d=a.padding.split(/\s+/).map(s);d.length===1||d.length===2?(u=d[0],c=d[0]):(d.length===3||d.length===4)&&(u=d[0],c=d[2])}var h=s(a["border-top-width"]),f=s(a["border-bottom-width"]);if(a.border){var p=a.border.match(/([\d.]+)px/);p&&(h=parseFloat(p[1]),f=parseFloat(p[1]))}if(a["border-width"]){var d=a["border-width"].split(/\s+/).map(s);d.length===1||d.length===2?(h=d[0],f=d[0]):(d.length===3||d.length===4)&&(h=d[0],f=d[2])}return l+u+c+h+f};function zue(){hp(this,this.attributes.visibility!=="hidden")}var Yn=(function(r){Lt(e,r);function e(t,n){n===void 0&&(n={});var i=r.call(this,yr({},{style:n},t))||this;return i.initialized=!1,i._defaultOptions=n,i}return Object.defineProperty(e.prototype,"offscreenGroup",{get:function(){return this._offscreen||(this._offscreen=W3(this)),this._offscreen},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"defaultOptions",{get:function(){return this._defaultOptions},enumerable:!1,configurable:!0}),e.prototype.connectedCallback=function(){this.render(this.attributes,this),this.bindEvents(this.attributes,this),this.initialized=!0},e.prototype.disconnectedCallback=function(){var t;(t=this._offscreen)===null||t===void 0||t.destroy()},e.prototype.attributeChangedCallback=function(t){t==="visibility"&&zue.call(this)},e.prototype.update=function(t,n){var i;return this.attr(yr({},this.attributes,t||{})),(i=this.render)===null||i===void 0?void 0:i.call(this,this.attributes,this,n)},e.prototype.clear=function(){this.removeChildren()},e.prototype.bindEvents=function(t,n){},e.prototype.getSubShapeStyle=function(t){t.x,t.y,t.transform,t.transformOrigin,t.class,t.className,t.zIndex;var n=qn(t,["x","y","transform","transformOrigin","class","className","zIndex"]);return n},e})(Ec),n4=function(r,e,t){return[["M",r-t,e],["A",t,t,0,1,0,r+t,e],["A",t,t,0,1,0,r-t,e],["Z"]]},Vue=n4,Kue=function(r,e,t){return[["M",r-t,e-t],["L",r+t,e-t],["L",r+t,e+t],["L",r-t,e+t],["Z"]]},jue=function(r,e,t){return[["M",r-t,e],["L",r,e-t],["L",r+t,e],["L",r,e+t],["Z"]]},Wue=function(r,e,t){var n=t*Math.sin(.3333333333333333*Math.PI);return[["M",r-t,e+n],["L",r,e-n],["L",r+t,e+n],["Z"]]},que=function(r,e,t){var n=t*Math.sin(.3333333333333333*Math.PI);return[["M",r-t,e-n],["L",r+t,e-n],["L",r,e+n],["Z"]]},Yue=function(r,e,t){var n=t/2*Math.sqrt(3);return[["M",r,e-t],["L",r+n,e-t/2],["L",r+n,e+t/2],["L",r,e+t],["L",r-n,e+t/2],["L",r-n,e-t/2],["Z"]]},Xue=function(r,e,t){var n=t-1.5;return[["M",r-t,e-n],["L",r+t,e+n],["L",r+t,e-n],["L",r-t,e+n],["Z"]]},r4=function(r,e,t){return[["M",r,e+t],["L",r,e-t]]},Zue=function(r,e,t){return[["M",r-t,e-t],["L",r+t,e+t],["M",r+t,e-t],["L",r-t,e+t]]},Jue=function(r,e,t){return[["M",r-t/2,e-t],["L",r+t/2,e-t],["M",r,e-t],["L",r,e+t],["M",r-t/2,e+t],["L",r+t/2,e+t]]},ece=function(r,e,t){return[["M",r-t,e],["L",r+t,e],["M",r,e-t],["L",r,e+t]]},tce=function(r,e,t){return[["M",r-t,e],["L",r+t,e]]},i4=function(r,e,t){return[["M",r-t,e],["L",r+t,e]]},nce=i4,rce=function(r,e,t){return[["M",r-t,e],["A",t/2,t/2,0,1,1,r,e],["A",t/2,t/2,0,1,0,r+t,e]]},ice=function(r,e,t){return[["M",r-t-1,e-2.5],["L",r,e-2.5],["L",r,e+2.5],["L",r+t+1,e+2.5]]},ace=function(r,e,t){return[["M",r-t-1,e+2.5],["L",r,e+2.5],["L",r,e-2.5],["L",r+t+1,e-2.5]]},sce=function(r,e,t){return[["M",r-(t+1),e+2.5],["L",r-t/2,e+2.5],["L",r-t/2,e-2.5],["L",r+t/2,e-2.5],["L",r+t/2,e+2.5],["L",r+t+1,e+2.5]]};function oce(r,e){return[["M",r-5,e+2.5],["L",r-5,e],["L",r,e],["L",r,e-3],["L",r,e+3],["L",r+6.5,e+3]]}var Ace=function(r,e,t){return[["M",r-t,e-t],["L",r+t,e],["L",r-t,e+t],["Z"]]},lce=function(r,e,t){var n=t,i=t*.2,a=t*.7;return[["M",r-n,e],["A",n,n,0,1,0,r+n,e],["A",n,n,0,1,0,r-n,e],["Z"],["M",r-a,e],["L",r-i,e],["M",r+i,e],["L",r+a,e],["M",r,e-a],["L",r,e-i],["M",r,e+i],["L",r,e+a]]};function uce(r){var e="default";if(ai(r)&&r instanceof Image)e="image";else if(At(r))e="symbol";else if(ln(r)){var t=new RegExp("data:(image|text)");r.match(t)?e="base64":/^(https?:\/\/(([a-zA-Z0-9]+-?)+[a-zA-Z0-9]+\.)+[a-zA-Z]+)(:\d+)?(\/.*)?(\?.*)?(#.*)?$/.test(r)?e="url":e="symbol"}return e}function cce(r){var e=uce(r);return["base64","url","image"].includes(e)?"image":r&&e==="symbol"?"path":null}var un=(function(r){Lt(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.render=function(t,n){var i=t.x,a=i===void 0?0:i,s=t.y,o=s===void 0?0:s,A=this.getSubShapeStyle(t),l=A.symbol,u=A.size,c=u===void 0?16:u,d=qn(A,["symbol","size"]),h=cce(l);Ni(!!h,nt(n),function(f){f.maybeAppendByClassName("marker",h).attr("className","marker ".concat(h,"-marker")).call(function(p){if(h==="image"){var g=c*2;p.styles({img:l,width:g,height:g,x:a-c,y:o-c})}else{var g=c/2,v=At(l)?l:e.getSymbol(l);p.styles(Ie({d:v==null?void 0:v(a,o,g)},d))}})})},e.MARKER_SYMBOL_MAP=new Map,e.registerSymbol=function(t,n){e.MARKER_SYMBOL_MAP.set(t,n)},e.getSymbol=function(t){return e.MARKER_SYMBOL_MAP.get(t)},e.getSymbols=function(){return Array.from(e.MARKER_SYMBOL_MAP.keys())},e})(Yn);un.registerSymbol("cross",Zue);un.registerSymbol("hyphen",tce);un.registerSymbol("line",r4);un.registerSymbol("plus",ece);un.registerSymbol("tick",Jue);un.registerSymbol("circle",n4);un.registerSymbol("point",Vue);un.registerSymbol("bowtie",Xue);un.registerSymbol("hexagon",Yue);un.registerSymbol("square",Kue);un.registerSymbol("diamond",jue);un.registerSymbol("triangle",Wue);un.registerSymbol("triangle-down",que);un.registerSymbol("line",r4);un.registerSymbol("dot",i4);un.registerSymbol("dash",nce);un.registerSymbol("smooth",rce);un.registerSymbol("hv",ice);un.registerSymbol("vh",ace);un.registerSymbol("hvh",sce);un.registerSymbol("vhv",oce);un.registerSymbol("focus",lce);function Pf(r,...e){return e.reduce((t,n)=>i=>t(n(i)),r)}function pE(r,e){return e-r?t=>(t-r)/(e-r):t=>.5}function dce(r,e){const t=e<r?e:r,n=r>e?r:e;return i=>Math.min(Math.max(t,i),n)}function hce(r,e,t,n,i){let a=t,s=n||r.length;const o=(A=>A);for(;a<s;){const A=Math.floor((a+s)/2);o(r[A])>e?s=A:a=A+1}return a}const yL=Math.sqrt(50),wL=Math.sqrt(10),bL=Math.sqrt(2);function Lh(r,e,t){const n=(e-r)/Math.max(0,t),i=Math.floor(Math.log(n)/Math.LN10),a=n/10**i;return i>=0?(a>=yL?10:a>=wL?5:a>=bL?2:1)*10**i:-(10**-i)/(a>=yL?10:a>=wL?5:a>=bL?2:1)}const fce=(r,e,t=5)=>{const n=[r,e];let i=0,a=n.length-1,s=n[i],o=n[a],A;return o<s&&([s,o]=[o,s],[i,a]=[a,i]),A=Lh(s,o,t),A>0?(s=Math.floor(s/A)*A,o=Math.ceil(o/A)*A,A=Lh(s,o,t)):A<0&&(s=Math.ceil(s*A)/A,o=Math.floor(o*A)/A,A=Lh(s,o,t)),A>0?(n[i]=Math.floor(s/A)*A,n[a]=Math.ceil(o/A)*A):A<0&&(n[i]=Math.ceil(s*A)/A,n[a]=Math.floor(o*A)/A),n};function BL(r){return!Bt(r)&&!Q8(r)&&!Number.isNaN(r)}var Ib={exports:{}},Ob,EL;function gce(){return EL||(EL=1,Ob={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]}),Ob}var Lb={exports:{}},Nb,xL;function pce(){return xL||(xL=1,Nb=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")}),Nb}var CL;function vce(){if(CL)return Lb.exports;CL=1;var r=pce(),e=Array.prototype.concat,t=Array.prototype.slice,n=Lb.exports=function(a){for(var s=[],o=0,A=a.length;o<A;o++){var l=a[o];r(l)?s=e.call(s,t.call(l)):s.push(l)}return s};return n.wrap=function(i){return function(){return i(n(arguments))}},Lb.exports}var SL;function mce(){if(SL)return Ib.exports;SL=1;var r=gce(),e=vce(),t=Object.hasOwnProperty,n=Object.create(null);for(var i in r)t.call(r,i)&&(n[r[i]]=i);var a=Ib.exports={to:{},get:{}};a.get=function(A){var l=A.substring(0,3).toLowerCase(),u,c;switch(l){case"hsl":u=a.get.hsl(A),c="hsl";break;case"hwb":u=a.get.hwb(A),c="hwb";break;default:u=a.get.rgb(A),c="rgb";break}return u?{model:c,value:u}:null},a.get.rgb=function(A){if(!A)return null;var l=/^#([a-f0-9]{3,4})$/i,u=/^#([a-f0-9]{6})([a-f0-9]{2})?$/i,c=/^rgba?\(\s*([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)(?=[\s,])\s*(?:,\s*)?([+-]?\d+)\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,d=/^rgba?\(\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*,?\s*([+-]?[\d\.]+)\%\s*(?:[,|\/]\s*([+-]?[\d\.]+)(%?)\s*)?\)$/,h=/^(\w+)$/,f=[0,0,0,1],p,g,v;if(p=A.match(u)){for(v=p[2],p=p[1],g=0;g<3;g++){var m=g*2;f[g]=parseInt(p.slice(m,m+2),16)}v&&(f[3]=parseInt(v,16)/255)}else if(p=A.match(l)){for(p=p[1],v=p[3],g=0;g<3;g++)f[g]=parseInt(p[g]+p[g],16);v&&(f[3]=parseInt(v+v,16)/255)}else if(p=A.match(c)){for(g=0;g<3;g++)f[g]=parseInt(p[g+1],0);p[4]&&(p[5]?f[3]=parseFloat(p[4])*.01:f[3]=parseFloat(p[4]))}else if(p=A.match(d)){for(g=0;g<3;g++)f[g]=Math.round(parseFloat(p[g+1])*2.55);p[4]&&(p[5]?f[3]=parseFloat(p[4])*.01:f[3]=parseFloat(p[4]))}else return(p=A.match(h))?p[1]==="transparent"?[0,0,0,0]:t.call(r,p[1])?(f=r[p[1]],f[3]=1,f):null:null;for(g=0;g<3;g++)f[g]=s(f[g],0,255);return f[3]=s(f[3],0,1),f},a.get.hsl=function(A){if(!A)return null;var l=/^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*)?\)$/,u=A.match(l);if(u){var c=parseFloat(u[4]),d=(parseFloat(u[1])%360+360)%360,h=s(parseFloat(u[2]),0,100),f=s(parseFloat(u[3]),0,100),p=s(isNaN(c)?1:c,0,1);return[d,h,f,p]}return null},a.get.hwb=function(A){if(!A)return null;var l=/^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*)?\)$/,u=A.match(l);if(u){var c=parseFloat(u[4]),d=(parseFloat(u[1])%360+360)%360,h=s(parseFloat(u[2]),0,100),f=s(parseFloat(u[3]),0,100),p=s(isNaN(c)?1:c,0,1);return[d,h,f,p]}return null},a.to.hex=function(){var A=e(arguments);return"#"+o(A[0])+o(A[1])+o(A[2])+(A[3]<1?o(Math.round(A[3]*255)):"")},a.to.rgb=function(){var A=e(arguments);return A.length<4||A[3]===1?"rgb("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+")":"rgba("+Math.round(A[0])+", "+Math.round(A[1])+", "+Math.round(A[2])+", "+A[3]+")"},a.to.rgb.percent=function(){var A=e(arguments),l=Math.round(A[0]/255*100),u=Math.round(A[1]/255*100),c=Math.round(A[2]/255*100);return A.length<4||A[3]===1?"rgb("+l+"%, "+u+"%, "+c+"%)":"rgba("+l+"%, "+u+"%, "+c+"%, "+A[3]+")"},a.to.hsl=function(){var A=e(arguments);return A.length<4||A[3]===1?"hsl("+A[0]+", "+A[1]+"%, "+A[2]+"%)":"hsla("+A[0]+", "+A[1]+"%, "+A[2]+"%, "+A[3]+")"},a.to.hwb=function(){var A=e(arguments),l="";return A.length>=4&&A[3]!==1&&(l=", "+A[3]),"hwb("+A[0]+", "+A[1]+"%, "+A[2]+"%"+l+")"},a.to.keyword=function(A){return n[A.slice(0,3)]};function s(A,l,u){return Math.min(Math.max(l,A),u)}function o(A){var l=Math.round(A).toString(16).toUpperCase();return l.length<2?"0"+l:l}return Ib.exports}var yce=mce();const wce=xN(yce);function Pb(r,e,t){let n=t;return n<0&&(n+=1),n>1&&(n-=1),n<1/6?r+(e-r)*6*n:n<1/2?e:n<2/3?r+(e-r)*(2/3-n)*6:r}function bce(r){const e=r[0]/360,t=r[1]/100,n=r[2]/100,i=r[3];if(t===0)return[n*255,n*255,n*255,i];const a=n<.5?n*(1+t):n+t-n*t,s=2*n-a,o=Pb(s,a,e+1/3),A=Pb(s,a,e),l=Pb(s,a,e-1/3);return[o*255,A*255,l*255,i]}function _L(r){const e=wce.get(r);if(!e)return null;const{model:t,value:n}=e;return t==="rgb"?n:t==="hsl"?bce(n):null}const Uf=(r,e)=>t=>r*(1-t)+e*t,Bce=(r,e)=>{const t=_L(r),n=_L(e);return t===null||n===null?t?()=>r:()=>e:i=>{const a=new Array(4);for(let u=0;u<4;u+=1){const c=t[u],d=n[u];a[u]=c*(1-i)+d*i}const[s,o,A,l]=a;return`rgba(${Math.round(s)}, ${Math.round(o)}, ${Math.round(A)}, ${l})`}},Ece=(r,e)=>typeof r=="number"&&typeof e=="number"?Uf(r,e):typeof r=="string"&&typeof e=="string"?Bce(r,e):()=>r,xce=(r,e)=>{const t=Uf(r,e);return n=>Math.round(t(n))};function kL({map:r,initKey:e},t){const n=e(t);return r.has(n)?r.get(n):t}function Cce({map:r,initKey:e},t){const n=e(t);return r.has(n)?r.get(n):(r.set(n,t),t)}function Sce({map:r,initKey:e},t){const n=e(t);return r.has(n)&&(t=r.get(n),r.delete(n)),t}function _ce(r){return typeof r=="object"?r.valueOf():r}class TL extends Map{constructor(e){if(super(),this.map=new Map,this.initKey=_ce,e!==null)for(const[t,n]of e)this.set(t,n)}get(e){return super.get(kL({map:this.map,initKey:this.initKey},e))}has(e){return super.has(kL({map:this.map,initKey:this.initKey},e))}set(e,t){return super.set(Cce({map:this.map,initKey:this.initKey},e),t)}delete(e){return super.delete(Sce({map:this.map,initKey:this.initKey},e))}}class a4{constructor(e){this.options=li({},this.getDefaultOptions()),this.update(e)}getOptions(){return this.options}update(e={}){this.options=li({},this.options,e),this.rescale(e)}rescale(e){}}const gC=Symbol("defaultUnknown");function FL(r,e,t){for(let n=0;n<e.length;n+=1)r.has(e[n])||r.set(t(e[n]),n)}function ML(r){const{value:e,from:t,to:n,mapper:i,notFoundReturn:a}=r;let s=i.get(e);if(s===void 0){if(a!==gC)return a;s=t.push(e)-1,i.set(e,s)}return n[s%n.length]}function IL(r){return r instanceof Date?e=>`${e}`:typeof r=="object"?e=>JSON.stringify(e):e=>e}class pC extends a4{getDefaultOptions(){return{domain:[],range:[],unknown:gC}}constructor(e){super(e)}map(e){return this.domainIndexMap.size===0&&FL(this.domainIndexMap,this.getDomain(),this.domainKey),ML({value:this.domainKey(e),mapper:this.domainIndexMap,from:this.getDomain(),to:this.getRange(),notFoundReturn:this.options.unknown})}invert(e){return this.rangeIndexMap.size===0&&FL(this.rangeIndexMap,this.getRange(),this.rangeKey),ML({value:this.rangeKey(e),mapper:this.rangeIndexMap,from:this.getRange(),to:this.getDomain(),notFoundReturn:this.options.unknown})}rescale(e){const[t]=this.options.domain,[n]=this.options.range;if(this.domainKey=IL(t),this.rangeKey=IL(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 pC(this.options)}getRange(){return this.options.range}getDomain(){if(this.sortedDomain)return this.sortedDomain;const{domain:e,compare:t}=this.options;return this.sortedDomain=t?[...e].sort(t):e,this.sortedDomain}}function kce(r){const e=Math.min(...r);return r.map(t=>t/e)}function Tce(r,e){const t=r.length,n=e-t;return n>0?[...r,...new Array(n).fill(1)]:n<0?r.slice(0,e):r}function Fce(r){return Math.round(r*1e12)/1e12}function Mce(r){const{domain:e,range:t,paddingOuter:n,paddingInner:i,flex:a,round:s,align:o}=r,A=e.length,l=Tce(a,A),[u,c]=t,d=c-u,h=2/A*n+1-1/A*i,f=d/h,p=f*i/A,g=f-A*p,v=kce(l),m=v.reduce((O,P)=>O+P),y=g/m,w=new TL(e.map((O,P)=>{const G=v[P]*y;return[O,s?Math.floor(G):G]})),B=new TL(e.map((O,P)=>{const ee=v[P]*y+p;return[O,s?Math.floor(ee):ee]})),x=Array.from(B.values()).reduce((O,P)=>O+P),_=(d-(x-x/A*i))*o,T=u+_;let F=s?Math.round(T):T;const I=new Array(A);for(let O=0;O<A;O+=1){I[O]=Fce(F);const P=e[O];F+=B.get(P)}return{valueBandWidth:w,valueStep:B,adjustedRange:I}}function Ice(r){var e;const{domain:t}=r,n=t.length;if(n===0)return{valueBandWidth:void 0,valueStep:void 0,adjustedRange:[]};if(!!(!((e=r.flex)===null||e===void 0)&&e.length))return Mce(r);const{range:a,paddingOuter:s,paddingInner:o,round:A,align:l}=r;let u,c,d=a[0];const f=a[1]-d,p=s*2,g=n-o;u=f/Math.max(1,p+g),A&&(u=Math.floor(u)),d+=(f-u*(n-o))*l,c=u*(1-o),A&&(d=Math.round(d),c=Math.round(c));const v=new Array(n).fill(0).map((m,y)=>d+y*u);return{valueStep:u,valueBandWidth:c,adjustedRange:v}}class vC extends pC{getDefaultOptions(){return{domain:[],range:[0,1],align:.5,round:!1,paddingInner:0,paddingOuter:0,padding:0,unknown:gC,flex:[]}}constructor(e){super(e)}clone(){return new vC(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(){const{padding:e,paddingInner:t}=this.options;return e>0?e:t}getPaddingOuter(){const{padding:e,paddingOuter:t}=this.options;return e>0?e:t}rescale(){super.rescale();const{align:e,domain:t,range:n,round:i,flex:a}=this.options,{adjustedRange:s,valueBandWidth:o,valueStep:A}=Ice({align:e,range:n,round:i,flex:a,paddingInner:this.getPaddingInner(),paddingOuter:this.getPaddingOuter(),domain:t});this.valueStep=A,this.valueBandWidth=o,this.adjustedRange=s}}const Oce=(r,e,t)=>{let n,i,a=r,s=e;if(a===s&&t>0)return[a];let o=Lh(a,s,t);if(o===0||!Number.isFinite(o))return[];if(o>0){a=Math.ceil(a/o),s=Math.floor(s/o),i=new Array(n=Math.ceil(s-a+1));for(let A=0;A<n;A+=1)i[A]=(a+A)*o}else{o=-o,a=Math.ceil(a*o),s=Math.floor(s*o),i=new Array(n=Math.ceil(s-a+1));for(let A=0;A<n;A+=1)i[A]=(a+A)/o}return i},Lce=(r,e,t)=>{const[n,i]=r,[a,s]=e;let o,A;return n<i?(o=pE(n,i),A=t(a,s)):(o=pE(i,n),A=t(s,a)),Pf(A,o)},Nce=(r,e,t)=>{const n=Math.min(r.length,e.length)-1,i=new Array(n),a=new Array(n),s=r[0]>r[n],o=s?[...r].reverse():r,A=s?[...e].reverse():e;for(let l=0;l<n;l+=1)i[l]=pE(o[l],o[l+1]),a[l]=t(A[l],A[l+1]);return l=>{const u=hce(r,l,1,n)-1,c=i[u],d=a[u];return Pf(d,c)(l)}},OL=(r,e,t,n)=>(Math.min(r.length,e.length)>2?Nce:Lce)(r,e,n?xce:t);class Pce extends a4{getDefaultOptions(){return{domain:[0,1],range:[0,1],nice:!1,clamp:!1,round:!1,interpolate:Uf,tickCount:5}}map(e){return BL(e)?this.output(e):this.options.unknown}invert(e){return BL(e)?this.input(e):this.options.unknown}nice(){if(!this.options.nice)return;const[e,t,n,...i]=this.getTickMethodOptions();this.options.domain=this.chooseNice()(e,t,n,...i)}getTicks(){const{tickMethod:e}=this.options,[t,n,i,...a]=this.getTickMethodOptions();return e(t,n,i,...a)}getTickMethodOptions(){const{domain:e,tickCount:t}=this.options,n=e[0],i=e[e.length-1];return[n,i,t]}chooseNice(){return fce}rescale(){this.nice();const[e,t]=this.chooseTransforms();this.composeOutput(e,this.chooseClamp(e)),this.composeInput(e,t,this.chooseClamp(t))}chooseClamp(e){const{clamp:t,range:n}=this.options,i=this.options.domain.map(e),a=Math.min(i.length,n.length);return t?dce(i[0],i[a-1]):aB}composeOutput(e,t){const{domain:n,range:i,round:a,interpolate:s}=this.options,o=OL(n.map(e),i,s,a);this.output=Pf(o,t,e)}composeInput(e,t,n){const{domain:i,range:a}=this.options,s=OL(a,i.map(e),Uf);this.input=Pf(t,n,s)}}class Ku extends Pce{getDefaultOptions(){return{domain:[0,1],range:[0,1],unknown:void 0,nice:!1,clamp:!1,round:!1,interpolate:Ece,tickMethod:Oce,tickCount:5}}chooseTransforms(){return[aB,aB]}clone(){return new Ku(this.options)}}var Uce=(function(r){Lt(e,r);function e(t){var n=this,i=t.style,a=qn(t,["style"]);return n=r.call(this,li({},{type:"column"},Ie({style:i},a)))||this,n.columnsGroup=new Mr({name:"columns"}),n.appendChild(n.columnsGroup),n.render(),n}return e.prototype.render=function(){var t=this.attributes,n=t.columns,i=t.x,a=t.y;this.columnsGroup.style.transform="translate(".concat(i,", ").concat(a,")"),nt(this.columnsGroup).selectAll(".column").data(n.flat()).join(function(s){return s.append("rect").attr("className","column").each(function(o){this.attr(o)})},function(s){return s.each(function(o){this.attr(o)})},function(s){return s.remove()})},e.prototype.update=function(t){this.attr(yr({},this.attributes,t)),this.render()},e.prototype.clear=function(){this.removeChildren()},e})(Cn),Rce=(function(r){Lt(e,r);function e(t){var n=this,i=t.style,a=qn(t,["style"]);return n=r.call(this,li({},{type:"lines"},Ie({style:i},a)))||this,n.linesGroup=n.appendChild(new Mr),n.areasGroup=n.appendChild(new Mr),n.render(),n}return e.prototype.render=function(){var t=this.attributes,n=t.lines,i=t.areas,a=t.x,s=t.y;this.style.transform="translate(".concat(a,", ").concat(s,")"),n&&this.renderLines(n),i&&this.renderAreas(i)},e.prototype.clear=function(){this.linesGroup.removeChildren(),this.areasGroup.removeChildren()},e.prototype.update=function(t){this.attr(yr({},this.attributes,t)),this.render()},e.prototype.renderLines=function(t){nt(this.linesGroup).selectAll(".line").data(t).join(function(n){return n.append("path").attr("className","line").each(function(i){this.attr(i)})},function(n){return n.each(function(i){this.attr(i)})},function(n){return n.remove()})},e.prototype.renderAreas=function(t){nt(this.linesGroup).selectAll(".area").data(t).join(function(n){return n.append("path").attr("className","area").each(function(i){this.attr(i)})},function(n){return n.each(function(i){this.style(i)})},function(n){return n.remove()})},e})(Cn);function Qce(r,e){var t,n=e.x,i=e.y,a=Z(i.getOptions().range||[0,0],2),s=a[0],o=a[1];return o>s&&(t=Z([s,o],2),o=t[0],s=t[1]),r.map(function(A){var l=A.map(function(u,c){return[n.map(c),jn(i.map(u),o,s)]});return l})}function hc(r,e){e===void 0&&(e=!1);var t=e?r.length-1:0,n=r.map(function(i,a){return it([a===t?"M":"L"],Z(i),!1)});return e?n.reverse():n}function Rf(r,e){if(e===void 0&&(e=!1),r.length<=2)return hc(r);for(var t=[],n=r.length,i=0;i<n;i+=1){var a=e?r[n-i-1]:r[i];Qn(a,t.slice(-2))||t.push.apply(t,it([],Z(a),!1))}var s=kue(t);return e?s.unshift(it(["M"],Z(r[n-1]),!1)):s.unshift(it(["M"],Z(r[0]),!1)),s}function mC(r,e,t){var n=Sl(r);return n.push(["L",e,t],["L",0,t],["Z"]),n}function Dce(r,e,t,n){return r.map(function(i){return mC(e?Rf(i):hc(i),t,n)})}function Hce(r,e,t){for(var n=[],i=r.length-1;i>=0;i-=1){var a=r[i],s=hc(a),o=void 0;if(i===0)o=mC(s,e,t);else{var A=r[i-1],l=hc(A,!0);l[0][0]="L",o=it(it(it([],Z(s),!1),Z(l),!1),[["Z"]],!1)}n.push(o)}return n}function $ce(r,e,t){for(var n=[],i=r.length-1;i>=0;i-=1){var a=r[i],s=Rf(a),o=void 0;if(i===0)o=mC(s,e,t);else{var A=r[i-1],l=Rf(A,!0),u=a[0];l[0][0]="L",o=it(it(it([],Z(s),!1),Z(l),!1),[it(["M"],Z(u),!1),["Z"]],!1)}n.push(o)}return n}function LL(r){return r.length===0?[0,0]:[jh(O8(r,function(e){return jh(e)||0})),Kh(I8(r,function(e){return Kh(e)||0}))]}function NL(r){for(var e=Sl(r),t=e[0].length,n=Z([Array(t).fill(0),Array(t).fill(0)],2),i=n[0],a=n[1],s=0;s<e.length;s+=1)for(var o=e[s],A=0;A<t;A+=1)o[A]>=0?(o[A]+=i[A],i[A]=o[A]):(o[A]+=a[A],a[A]=o[A]);return e}var Gce=(function(r){Lt(e,r);function e(t){return r.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(e.prototype,"rawData",{get:function(){var t=this.attributes.data;if(!t||(t==null?void 0:t.length)===0)return[[]];var n=Sl(t);return Yt(n[0])?[n]:n},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"data",{get:function(){return this.attributes.isStack?NL(this.rawData):this.rawData},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"scales",{get:function(){return this.createScales(this.data)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"baseline",{get:function(){var t=this.scales.y,n=Z(t.getOptions().domain||[0,0],2),i=n[0],a=n[1];return a<0?t.map(a):t.map(i<0?0:i)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"containerShape",{get:function(){var t=this.attributes,n=t.width,i=t.height;return{width:n,height:i}},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"linesStyle",{get:function(){var t=this,n=this.attributes,i=n.type,a=n.isStack,s=n.smooth;if(i!=="line")throw new Error("linesStyle can only be used in line type");var o=_t(this.attributes,"area"),A=_t(this.attributes,"line"),l=this.containerShape.width,u=this.data;if(u[0].length===0)return{lines:[],areas:[]};var c=this.scales,d=c.x,h=c.y,f=Qce(u,{x:d,y:h}),p=[];if(o){var g=this.baseline;a?p=s?$ce(f,l,g):Hce(f,l,g):p=Dce(f,s,l,g)}return{lines:f.map(function(v,m){return Ie({stroke:t.getColor(m),d:s?Rf(v):hc(v)},A)}),areas:p.map(function(v,m){return Ie({d:v,fill:t.getColor(m)},o)})}},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"columnsStyle",{get:function(){var t=this,n=_t(this.attributes,"column"),i=this.attributes,a=i.isStack,s=i.type,o=i.scale;if(s!=="column")throw new Error("columnsStyle can only be used in column type");var A=this.containerShape.height,l=this.rawData;if(!l)return{columns:[]};a&&(l=NL(l));var u=this.createScales(l),c=u.x,d=u.y,h=Z(LL(l),2),f=h[0],p=h[1],g=new Ku({domain:[0,p-(f>0?0:f)],range:[0,A*o]}),v=c.getBandWidth(),m=this.rawData;return{columns:l.map(function(y,w){return y.map(function(B,x){var k=v/l.length,_=function(){return{x:c.map(x)+k*w,y:B>=0?d.map(B):d.map(0),width:k,height:g.map(Math.abs(B))}},T=function(){return{x:c.map(x),y:d.map(B),width:v,height:g.map(m[w][x])}};return Ie(Ie({fill:t.getColor(w)},n),a?T():_())})})}},enumerable:!1,configurable:!0}),e.prototype.render=function(t,n){Nue(n,".container","rect").attr("className","container").node();var i=t.type,a=t.x,s=t.y,o="spark".concat(i),A=Ie({x:a,y:s},i==="line"?this.linesStyle:this.columnsStyle);nt(n).selectAll(".spark").data([i]).join(function(l){return l.append(function(u){return u==="line"?new Rce({className:o,style:A}):new Uce({className:o,style:A})}).attr("className","spark ".concat(o))},function(l){return l.update(A)},function(l){return l.remove()})},e.prototype.getColor=function(t){var n=this.attributes.color;return Ui(n)?n[t%n.length]:At(n)?n.call(null,t):n},e.prototype.createScales=function(t){var n,i,a=this.attributes,s=a.type,o=a.scale,A=a.range,l=A===void 0?[]:A,u=a.spacing,c=this.containerShape,d=c.width,h=c.height,f=Z(LL(t),2),p=f[0],g=f[1],v=new Ku({domain:[(n=l[0])!==null&&n!==void 0?n:p,(i=l[1])!==null&&i!==void 0?i:g],range:[h,h*(1-o)]});return s==="line"?{type:s,x:new Ku({domain:[0,t[0].length-1],range:[0,d]}),y:v}:{type:s,x:new vC({domain:t[0].map(function(m,y){return y}),range:[0,d],paddingInner:u,paddingOuter:u/2,align:.5}),y:v}},e.tag="sparkline",e})(Yn);function zce(r){return typeof r=="boolean"?!1:"enter"in r&&"update"in r&&"exit"in r}function PL(r){if(!r)return{enter:!1,update:!1,exit:!1};var e=["enter","update","exit"],t=Object.fromEntries(Object.entries(r).filter(function(n){var i=Z(n,1),a=i[0];return!e.includes(a)}));return Object.fromEntries(e.map(function(n){return zce(r)?r[n]===!1?[n,!1]:[n,Ie(Ie({},r[n]),t)]:[n,t]}))}function zl(r,e){r?r.finished.then(e):e()}function Vce(r,e){r.length===0?e():Promise.all(r.map(function(t){return t==null?void 0:t.finished})).then(e)}function s4(r,e){"update"in r?r.update(e):r.attr(e)}function o4(r,e,t){if(e.length===0)return null;if(!t){var n=e.slice(-1)[0];return s4(r,{style:n}),null}return r.animate(e,t)}function Kce(r,e){return!(r.nodeName!=="text"||e.nodeName!=="text"||r.attributes.text!==e.attributes.text)}function jce(r,e,t,n){if(n===void 0&&(n="destroy"),Kce(r,e))return r.remove(),[null];var i=function(){n==="destroy"?r.destroy():n==="hide"&&Fa(r),e.isVisible()&&$c(e)};if(!t)return i(),[null];var a=t.duration,s=a===void 0?0:a,o=t.delay,A=o===void 0?0:o,l=Math.ceil(+s/2),u=+s/4,c=Z(r.getGeometryBounds().center,2),d=c[0],h=c[1],f=Z(e.getGeometryBounds().center,2),p=f[0],g=f[1],v=Z([(d+p)/2-d,(h+g)/2-h],2),m=v[0],y=v[1],w=r.style.opacity,B=w===void 0?1:w,x=e.style.opacity,k=x===void 0?1:x,_=r.style.transform||"",T=e.style.transform||"",F=r.animate([{opacity:B,transform:"translate(0, 0) ".concat(_)},{opacity:0,transform:"translate(".concat(m,", ").concat(y,") ").concat(_)}],Ie(Ie({fill:"both"},t),{duration:A+l+u})),I=e.animate([{opacity:0,transform:"translate(".concat(-m,", ").concat(-y,") ").concat(T),offset:.01},{opacity:k,transform:"translate(0, 0) ".concat(T)}],Ie(Ie({fill:"both"},t),{duration:l+u,delay:A+l-u}));return zl(I,i),[F,I]}function Ma(r,e,t){var n={},i={};return Object.entries(e).forEach(function(a){var s=Z(a,2),o=s[0],A=s[1];if(!ut(A)){var l=r.style[o]||r.parsedStyle[o]||0;l!==A&&(n[o]=l,i[o]=A)}}),t?o4(r,[n,i],Ie({fill:"both"},t)):(s4(r,i),null)}function gp(r,e){return r.style.opacity||(r.style.opacity=1),Ma(r,{opacity:0},e)}var A4={fill:"#fff",lineWidth:1,radius:2,size:10,stroke:"#bfbfbf",strokeOpacity:1,zIndex:0},l4={fill:"#000",fillOpacity:.45,fontSize:12,textAlign:"center",textBaseline:"middle",zIndex:1},u4={x:0,y:0,orientation:"horizontal",showLabel:!0,type:"start"},qa=Qa({foreground:"foreground",handle:"handle",selection:"selection",sparkline:"sparkline",sparklineGroup:"sparkline-group",track:"track",brushArea:"brush-area"},"slider"),la=Qa({labelGroup:"label-group",label:"label",iconGroup:"icon-group",icon:"icon",iconRect:"icon-rect",iconLine:"icon-line"},"handle"),Wce=(function(r){Lt(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.render=function(t,n){var i=t.x,a=t.y,s=t.size,o=s===void 0?10:s,A=t.radius,l=A===void 0?o/4:A,u=t.orientation,c=t.classNamePrefix,d=qn(t,["x","y","size","radius","orientation","classNamePrefix"]),h=o,f=h*2.4,p=c?"".concat(la.iconRect.name," ").concat(c,"handle-icon-rect"):la.iconRect.name,g=function(x){return c?"".concat(la.iconLine,"-").concat(x," ").concat(c,"handle-icon-line"):"".concat(la.iconLine,"-").concat(x)},v=nt(n).maybeAppendByClassName(la.iconRect,"rect").attr("className",p).styles(Ie(Ie({},d),{width:h,height:f,radius:l,x:i-h/2,y:a-f/2,transformOrigin:"center"})),m=i+1/3*h-h/2,y=i+2/3*h-h/2,w=a+1/4*f-f/2,B=a+3/4*f-f/2;v.maybeAppendByClassName("".concat(la.iconLine,"-1"),"line").attr("className",g(1)).styles(Ie({x1:m,x2:m,y1:w,y2:B},d)),v.maybeAppendByClassName("".concat(la.iconLine,"-2"),"line").attr("className",g(2)).styles(Ie({x1:y,x2:y,y1:w,y2:B},d)),u==="vertical"&&(v.node().style.transform="rotate(90)")},e})(Yn),qce=(function(r){Lt(e,r);function e(t){return r.call(this,t,u4)||this}return e.prototype.renderLabel=function(t){var n=this,i=this.attributes,a=i.x,s=i.y,o=i.showLabel,A=_t(this.attributes,"label"),l=A.x,u=l===void 0?0:l,c=A.y,d=c===void 0?0:c,h=A.transform,f=A.transformOrigin,p=qn(A,["x","y","transform","transformOrigin"]),g=Z(Qs(p,[]),2),v=g[0],m=g[1],y=nt(t).maybeAppendByClassName(la.labelGroup,"g").styles(m),w=Ie(Ie({},l4),v),B=w.text,x=qn(w,["text"]);Ni(!!o,y,function(k){n.label=k.maybeAppendByClassName(la.label,"text").styles(Ie(Ie({},x),{x:a+u,y:s+d,transform:h,transformOrigin:f,text:"".concat(B)})),n.label.on("mousedown",function(_){_.stopPropagation()}),n.label.on("touchstart",function(_){_.stopPropagation()})})},e.prototype.renderIcon=function(t){var n=this.attributes,i=n.x,a=n.y,s=n.orientation,o=n.type,A=n.classNamePrefix,l=Ie(Ie({x:i,y:a,orientation:s,classNamePrefix:A},A4),_t(this.attributes,"icon")),u=this.attributes.iconShape,c=u===void 0?function(){return new Wce({style:l})}:u,d=nt(t).maybeAppendByClassName(la.iconGroup,"g");d.selectAll(la.icon.class).data([c]).join(function(h){return h.append(typeof c=="string"?c:function(){return c(o)}).attr("className",la.icon.name)},function(h){return h.update(l)},function(h){return h.remove()})},e.prototype.render=function(t,n){this.renderIcon(n),this.renderLabel(n)},e})(Yn),Yce=(function(r){Lt(e,r);function e(t){var n=r.call(this,t,Ie(Ie(Ie({x:0,y:0,animate:{duration:100,fill:"both"},brushable:!0,formatter:function(i){return i.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},sl(u4,"handle")),sl(A4,"handleIcon")),sl(l4,"handleLabel")))||this;return n.range=[0,1],n.onDragStart=function(i){return function(a){a.stopPropagation(),n.target=i,n.prevPos=n.getOrientVal(hL(a));var s=n.availableSpace,o=s.x,A=s.y,l=n.getBBox(),u=l.x,c=l.y;n.selectionStartPos=n.getRatio(n.prevPos-n.getOrientVal([o,A])-n.getOrientVal([+u,+c])),n.selectionWidth=0,document.addEventListener("pointermove",n.onDragging),document.addEventListener("pointerup",n.onDragEnd)}},n.onDragging=function(i){var a=n.attributes,s=a.slidable,o=a.brushable,A=a.type;i.stopPropagation();var l=n.getOrientVal(hL(i)),u=l-n.prevPos;if(u){var c=n.getRatio(u);switch(n.target){case"start":s&&n.setValuesOffset(c);break;case"end":s&&n.setValuesOffset(0,c);break;case"selection":s&&n.setValuesOffset(c,c);break;case"track":if(!o)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}n.prevPos=l}},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(i){var a=n.attributes,s=a.onChange,o=a.type,A=o==="range"?i:i[1],l=o==="range"?n.getValues():n.getValues()[1],u=new gr("valuechange",{detail:{oldValue:A,value:l}});n.dispatchEvent(u),s==null||s(l)},n.selectionStartPos=0,n.selectionWidth=0,n.prevPos=0,n.target="",n}return Object.defineProperty(e.prototype,"values",{get:function(){return this.attributes.values},set:function(t){this.attributes.values=this.clampValues(t)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"sparklineStyle",{get:function(){var t=this.attributes.orientation;if(t!=="horizontal")return null;var n=_t(this.attributes,"sparkline");return Ie(Ie({zIndex:0},this.availableSpace),n)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"shape",{get:function(){var t=this.attributes,n=t.trackLength,i=t.trackSize,a=Z(this.getOrientVal([[n,i],[i,n]]),2),s=a[0],o=a[1];return{width:s,height:o}},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"availableSpace",{get:function(){var t=this.attributes;t.x,t.y;var n=t.padding,i=Z(Wr(n),4),a=i[0],s=i[1],o=i[2],A=i[3],l=this.shape,u=l.width,c=l.height;return{x:A,y:a,width:u-(A+s),height:c-(a+o)}},enumerable:!1,configurable:!0}),e.prototype.getValues=function(){return this.values},e.prototype.setValues=function(t,n){t===void 0&&(t=[0,0]),n===void 0&&(n=!1),this.attributes.values=t;var i=n===!1?!1:this.attributes.animate;this.updateSelectionArea(i),this.updateHandlesPosition(i)},e.prototype.updateSelectionArea=function(t){var n=this.calcSelectionArea();this.foregroundGroup.selectAll(qa.selection.class).each(function(i,a){Ma(this,n[a],t)})},e.prototype.updateHandlesPosition=function(t){this.attributes.showHandle&&(this.startHandle&&Ma(this.startHandle,this.getHandleStyle("start"),t),this.endHandle&&Ma(this.endHandle,this.getHandleStyle("end"),t))},e.prototype.innerSetValues=function(t,n){t===void 0&&(t=[0,0]),n===void 0&&(n=!1);var i=this.values,a=this.clampValues(t);this.attributes.values=a,this.setValues(a),n&&this.onValueChange(i)},e.prototype.renderTrack=function(t){var n=this.attributes,i=n.x,a=n.y,s=_t(this.attributes,"track");this.trackShape=nt(t).maybeAppendByClassName(qa.track,"rect").styles(Ie(Ie({x:i,y:a},this.shape),s))},e.prototype.renderBrushArea=function(t){var n=this.attributes,i=n.x,a=n.y,s=n.brushable;this.brushArea=nt(t).maybeAppendByClassName(qa.brushArea,"rect").styles(Ie({x:i,y:a,fill:"transparent",cursor:s?"crosshair":"default"},this.shape))},e.prototype.renderSparkline=function(t){var n=this,i=this.attributes,a=i.x,s=i.y,o=i.orientation,A=nt(t).maybeAppendByClassName(qa.sparklineGroup,"g");Ni(o==="horizontal",A,function(l){var u=Ie(Ie({},n.sparklineStyle),{x:a,y:s});l.maybeAppendByClassName(qa.sparkline,function(){return new Gce({style:u})}).update(u)})},e.prototype.renderHandles=function(){var t=this,n,i=this.attributes,a=i.showHandle,s=i.type,o=s==="range"?["start","end"]:["end"],A=a?o:[],l=this;(n=this.foregroundGroup)===null||n===void 0||n.selectAll(qa.handle.class).data(A.map(function(u){return{type:u}}),function(u){return u.type}).join(function(u){return u.append(function(c){var d=c.type;return new qce({style:t.getHandleStyle(d)})}).each(function(c){var d=c.type;this.attr("class","".concat(qa.handle.name," ").concat(d,"-handle"));var h="".concat(d,"Handle");l[h]=this,this.addEventListener("pointerdown",l.onDragStart(d))})},function(u){return u.each(function(c){var d=c.type;this.update(l.getHandleStyle(d))})},function(u){return u.each(function(c){var d=c.type,h="".concat(d,"Handle");l[h]=void 0}).remove()})},e.prototype.renderSelection=function(t){var n=this.attributes,i=n.x,a=n.y,s=n.type,o=n.selectionType;this.foregroundGroup=nt(t).maybeAppendByClassName(qa.foreground,"g");var A=_t(this.attributes,"selection"),l=function(c){return c.style("visibility",function(d){return d.show?"visible":"hidden"}).style("cursor",function(d){return o==="select"?"grab":o==="invert"?"crosshair":"default"}).styles(Ie(Ie({},A),{transform:"translate(".concat(i,", ").concat(a,")")}))},u=this;this.foregroundGroup.selectAll(qa.selection.class).data(s==="value"?[]:this.calcSelectionArea().map(function(c,d){return{style:Ie({},c),index:d,show:o==="select"?d===1:d!==1}}),function(c){return c.index}).join(function(c){return c.append("rect").attr("className",qa.selection.name).call(l).each(function(d,h){var f=this;h===1?(u.selectionShape=nt(this),this.on("pointerdown",function(p){f.attr("cursor","grabbing"),u.onDragStart("selection")(p)}),u.dispatchCustomEvent(this,"pointerenter","selectionMouseenter"),u.dispatchCustomEvent(this,"pointerleave","selectionMouseleave"),u.dispatchCustomEvent(this,"click","selectionClick"),this.addEventListener("pointerdown",function(){f.attr("cursor","grabbing")}),this.addEventListener("pointerup",function(){f.attr("cursor","pointer")}),this.addEventListener("pointerover",function(){f.attr("cursor","pointer")})):this.on("pointerdown",u.onDragStart("track"))})},function(c){return c.call(l)},function(c){return c.remove()}),this.updateSelectionArea(!1),this.renderHandles()},e.prototype.render=function(t,n){this.renderTrack(n),this.renderSparkline(n),this.renderBrushArea(n),this.renderSelection(n)},e.prototype.clampValues=function(t,n){var i;n===void 0&&(n=4);var a=Z(this.range,2),s=a[0],o=a[1],A=Z(this.getValues().map(function(g){return fL(g,n)}),2),l=A[0],u=A[1],c=Array.isArray(t)?t:[l,t??u],d=Z((c||[l,u]).map(function(g){return fL(g,n)}),2),h=d[0],f=d[1];if(this.attributes.type==="value")return[0,jn(f,s,o)];h>f&&(i=Z([f,h],2),h=i[0],f=i[1]);var p=f-h;return p>o-s?[s,o]:h<s?l===s&&u===f?[s,f]:[s,p+s]:f>o?u===o&&l===h?[h,o]:[o-p,o]:[h,f]},e.prototype.calcSelectionArea=function(t){var n=Z(this.clampValues(t),2),i=n[0],a=n[1],s=this.availableSpace,o=s.x,A=s.y,l=s.width,u=s.height;return this.getOrientVal([[{y:A,height:u,x:o,width:i*l},{y:A,height:u,x:i*l+o,width:(a-i)*l},{y:A,height:u,x:a*l,width:(1-a)*l}],[{x:o,width:l,y:A,height:i*u},{x:o,width:l,y:i*u+A,height:(a-i)*u},{x:o,width:l,y:a*u,height:(1-a)*u}]])},e.prototype.calcHandlePosition=function(t){var n=this.attributes.handleIconOffset,i=this.availableSpace,a=i.x,s=i.y,o=i.width,A=i.height,l=Z(this.clampValues(),2),u=l[0],c=l[1],d=t==="start"?-n:n,h=(t==="start"?u:c)*this.getOrientVal([o,A])+d;return{x:a+this.getOrientVal([h,o/2]),y:s+this.getOrientVal([A/2,h])}},e.prototype.inferTextStyle=function(t){var n=this.attributes.orientation;return n==="horizontal"?{}:t==="start"?{transformOrigin:"left center",transform:"rotate(90)",textAlign:"start"}:t==="end"?{transformOrigin:"right center",transform:"rotate(90)",textAlign:"end"}:{}},e.prototype.calcHandleText=function(t){var n,i=this.attributes,a=i.type,s=i.orientation,o=i.formatter,A=i.autoFitLabel,l=_t(this.attributes,"handle"),u=_t(l,"label"),c=l.spacing,d=this.getHandleSize(),h=this.clampValues(),f=t==="start"?h[0]:h[1],p=o(f),g=new cC({style:Ie(Ie(Ie({},u),this.inferTextStyle(t)),{text:p})}),v=g.getBBox(),m=v.width,y=v.height;if(g.destroy(),!A){if(a==="value")return{text:p,x:0,y:-y-c};var w=c+d+(s==="horizontal"?m/2:0);return n={text:p},n[s==="horizontal"?"x":"y"]=t==="start"?-w:w,n}var B=0,x=0,k=this.availableSpace,_=k.width,T=k.height,F=this.calcSelectionArea()[1],I=F.x,O=F.y,P=F.width,G=F.height,ee=c+d;if(s==="horizontal"){var te=ee+m/2;if(t==="start"){var N=I-ee-m;B=N>0?-te:te}else{var K=_-I-P-ee>m;B=K?te:-te}}else{var J=ee,be=y+ee;t==="start"?x=O-d>y?-be:J:x=T-(O+G)-d>y?be:-J}return{x:B,y:x,text:p}},e.prototype.getHandleLabelStyle=function(t){var n=_t(this.attributes,"handleLabel");return Ie(Ie(Ie({},n),this.calcHandleText(t)),this.inferTextStyle(t))},e.prototype.getHandleIconStyle=function(){var t=this.attributes.handleIconShape,n=_t(this.attributes,"handleIcon"),i=this.getOrientVal(["ew-resize","ns-resize"]),a=this.getHandleSize();return Ie({cursor:i,shape:t,size:a},n)},e.prototype.getHandleStyle=function(t){var n=this.attributes,i=n.x,a=n.y,s=n.showLabel,o=n.showLabelOnInteraction,A=n.orientation,l=this.calcHandlePosition(t),u=l.x,c=l.y,d=this.calcHandleText(t),h=s;return!s&&o&&(this.target?h=!0:h=!1),Ie(Ie(Ie({},sl(this.getHandleIconStyle(),"icon")),sl(Ie(Ie({},this.getHandleLabelStyle(t)),d),"label")),{transform:"translate(".concat(u+i,", ").concat(c+a,")"),orientation:A,showLabel:h,type:t,zIndex:3})},e.prototype.getHandleSize=function(){var t=this.attributes,n=t.handleIconSize,i=t.width,a=t.height;return n||Math.floor((this.getOrientVal([+a,+i])+4)/2.4)},e.prototype.getOrientVal=function(t){var n=Z(t,2),i=n[0],a=n[1],s=this.attributes.orientation;return s==="horizontal"?i:a},e.prototype.setValuesOffset=function(t,n){n===void 0&&(n=0);var i=this.attributes.type,a=Z(this.getValues(),2),s=a[0],o=a[1],A=i==="range"?t:0,l=[s+A,o+n].sort();this.innerSetValues(l,!0)},e.prototype.getRatio=function(t){var n=this.availableSpace,i=n.width,a=n.height;return t/this.getOrientVal([i,a])},e.prototype.dispatchCustomEvent=function(t,n,i){var a=this;t.on(n,function(s){s.stopPropagation(),a.dispatchEvent(new gr(i,{detail:s}))})},e.prototype.bindEvents=function(){this.addEventListener("wheel",this.onScroll);var t=this.brushArea;this.dispatchCustomEvent(t,"click","trackClick"),this.dispatchCustomEvent(t,"pointerenter","trackMouseenter"),this.dispatchCustomEvent(t,"pointerleave","trackMouseleave"),t.on("pointerdown",this.onDragStart("track"))},e.prototype.onScroll=function(t){var n=this.attributes.scrollable;if(n){var i=t.deltaX,a=t.deltaY,s=a||i,o=this.getRatio(s);this.setValuesOffset(o,o)}},e.tag="slider",e})(Yn),on={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"},yC={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 Ai({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:[]};li({},yC,{style:{type:"arc"}});li({},yC,{style:{}});var Et=Qa({mainGroup:on.mainGroup,gridGroup:on.gridGroup,grid:on.grid,lineGroup:on.lineGroup,line:on.line,tickGroup:on.tickGroup,tick:on.tick,tickItem:on.tickItem,labelGroup:on.labelGroup,label:on.label,labelItem:on.labelItem,titleGroup:on.titleGroup,title:on.title,lineFirst:on.lineFirst,lineSecond:on.lineSecond},"axis"),Il=Qa({lineGroup:"line-group",line:"line",regionGroup:"region-group",region:"region"},"grid");function c4(r){return r.reduce(function(e,t,n){return e.push(it([n===0?"M":"L"],Z(t),!1)),e},[])}function Xce(r,e,t){var n=e.connect,i=n===void 0?"line":n,a=e.center;if(i==="line")return c4(r);if(!a)return[];var s=dc(r[0],a),o=t?0:1;return r.reduce(function(A,l,u){return u===0?A.push(it(["M"],Z(l),!1)):A.push(it(["A",s,s,0,0,o],Z(l),!1)),A},[])}function vE(r,e,t){return e.type==="surround"?Xce(r,e,t):c4(r)}function Zce(r,e,t){var n=t.type,i=t.connect,a=t.center,s=t.closed,o=s?[["Z"]]:[],A=Z([vE(r,t),vE(e.slice().reverse(),t,!0)],2),l=A[0],u=A[1],c=Z([r[0],e.slice(-1)[0]],2),d=c[0],h=c[1],f=function(m,y){return[l,m,u,y,o].flat()};if(i==="line"||n==="surround")return f([it(["L"],Z(h),!1)],[it(["L"],Z(d),!1)]);if(!a)throw new Error("Arc grid need to specified center");var p=Z([dc(h,a),dc(d,a)],2),g=p[0],v=p[1];return f([it(["A",g,g,0,0,1],Z(h),!1),it(["L"],Z(h),!1)],[it(["A",v,v,0,0,0],Z(d),!1),it(["L"],Z(d),!1)])}function Jce(r,e,t,n){var i=t.animate,a=t.isBillboard,s=e.map(function(o,A){return{id:o.id||"grid-line-".concat(A),d:vE(o.points,t)}});return r.selectAll(Il.line.class).data(s,function(o){return o.id}).join(function(o){return o.append("path").each(function(A,l){var u=Pi(gL(Ie({d:A.d},n)),[A,l,s]);this.attr(Ie({class:Il.line.name,stroke:"#D9D9D9",lineWidth:1,lineDash:[4,4],isBillboard:a},u))})},function(o){return o.transition(function(A,l){var u=Pi(gL(Ie({d:A.d},n)),[A,l,s]);return Ma(this,u,i.update)})},function(o){return o.transition(function(){var A=this,l=gp(this,i.exit);return zl(l,function(){return A.remove()}),l})}).transitions()}function ede(r,e,t){var n=t.animate,i=t.connect,a=t.areaFill;if(e.length<2||!a||!i)return[];for(var s=Array.isArray(a)?a:[a,"transparent"],o=function(f){return s[f%s.length]},A=[],l=0;l<e.length-1;l++){var u=Z([e[l].points,e[l+1].points],2),c=u[0],d=u[1],h=Zce(c,d,t);A.push({d:h,fill:o(l)})}return r.selectAll(Il.region.class).data(A,function(f,p){return p}).join(function(f){return f.append("path").each(function(p,g){var v=Pi(p,[p,g,A]);this.attr(v)}).attr("className",Il.region.name)},function(f){return f.transition(function(p,g){var v=Pi(p,[p,g,A]);return Ma(this,v,n.update)})},function(f){return f.transition(function(){var p=this,g=gp(this,n.exit);return zl(g,function(){return p.remove()}),g})}).transitions()}function tde(r){var e=r.data,t=e===void 0?[]:e,n=r.closed;return n?t.map(function(i){var a=i.points,s=Z(a,1),o=s[0];return Ie(Ie({},i),{points:it(it([],Z(a),!1),[o],!1)})}):t}var nde=(function(r){Lt(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.render=function(t,n){t.type,t.center,t.areaFill,t.closed;var i=qn(t,["type","center","areaFill","closed"]),a=tde(t),s=nt(n).maybeAppendByClassName(Il.lineGroup,"g"),o=nt(n).maybeAppendByClassName(Il.regionGroup,"g"),A=Jce(s,a,t,i),l=ede(o,a,t);return it(it([],Z(A),!1),Z(l),!1)},e})(Yn);function d4(r,e){return Object.fromEntries(Object.entries(r).map(function(t){var n=Z(t,2),i=n[0],a=n[1];return[i,Pi(a,e)]}))}function wC(r,e){return e&&At(e)?r.filter(e):r}function h4(r,e){var t=e.startAngle,n=e.endAngle;return(n-t)*r+t}function pp(r,e){if(e.type==="linear"){var t=Z(e.startPos,2),n=t[0],i=t[1],a=Z(e.endPos,2),s=a[0],o=a[1],A=Z([s-n,o-i],2),l=A[0],u=A[1];return e4([l,u])}var c=Ml(h4(r,e));return[-Math.sin(c),Math.cos(c)]}function bC(r,e,t){var n=pp(r,t);return Sue(n,e!=="positive")}function Vl(r,e){return bC(r,e.labelDirection,e)}function Nh(r,e,t){return t?"".concat(r," ").concat(t,"axis-").concat(e):r}function Xi(r,e,t,n){return n&&r.attr("className",Nh(e.name,t,n)),r}function rde(r,e){var t=Z(e.startPos,2),n=t[0],i=t[1],a=Z(e.endPos,2),s=a[0],o=a[1],A=Z([s-n,o-i],2),l=A[0],u=A[1];return[n+l*r,i+u*r]}function ide(r,e){var t=e.radius,n=Z(e.center,2),i=n[0],a=n[1],s=Ml(h4(r,e));return[i+t*Math.cos(s),a+t*Math.sin(s)]}function vp(r,e){return e.type==="linear"?rde(r,e):ide(r,e)}function BC(r){return pp(0,r)[1]===0}function f4(r){return pp(0,r)[0]===0}function g4(r,e){return e-r===360}function UL(r,e,t,n,i){var a=e-r,s=Z([i,i],2),o=s[0],A=s[1],l=Z([Ml(r),Ml(e)],2),u=l[0],c=l[1],d=function(T){return[t+i*Math.cos(T),n+i*Math.sin(T)]},h=Z(d(u),2),f=h[0],p=h[1],g=Z(d(c),2),v=g[0],m=g[1];if(g4(r,e)){var y=(c+u)/2,w=Z(d(y),2),B=w[0],x=w[1];return[["M",f,p],["A",o,A,0,1,0,B,x],["A",o,A,0,1,0,v,m]]}var k=a>180?1:0,_=r>e?0:1;return"M".concat(f,",").concat(p,",A").concat(o,",").concat(A,",0,").concat(k,",").concat(_,",").concat(v,",").concat(m)}function ade(r){var e=r.attributes,t=e.startAngle,n=e.endAngle,i=e.center,a=e.radius;return it(it([t,n],Z(i),!1),[a],!1)}function sde(r,e,t,n){var i=e.startAngle,a=e.endAngle,s=e.center,o=e.radius,A=e.classNamePrefix;return r.selectAll(Et.line.class).data([{d:UL.apply(void 0,it(it([i,a],Z(s),!1),[o],!1))}],function(l,u){return u}).join(function(l){var u=l.append("path").attr("className",Et.line.name).styles(e).styles({d:function(c){return c.d}});return Xi(u,Et.line,on.line,A),u},function(l){return l.transition(function(){var u=this,c=Cue(this,ade(this),it(it([i,a],Z(s),!1),[o],!1),n.update);if(c){var d=function(){var h=Gr(u.attributes,"__keyframe_data__");u.style.d=UL.apply(void 0,it([],Z(h),!1))};c.onframe=d,c.onfinish=d}return c}).styles(e)},function(l){return l.remove()}).styles(t).transitions()}function ode(r,e){e.truncRange,e.truncShape,e.lineExtension}function Ade(r,e,t){t===void 0&&(t=[0,0]);var n=Z([r,e,t],3),i=Z(n[0],2),a=i[0],s=i[1],o=Z(n[1],2),A=o[0],l=o[1],u=Z(n[2],2),c=u[0],d=u[1],h=Z([A-a,l-s],2),f=h[0],p=h[1],g=Math.sqrt(Math.pow(f,2)+Math.pow(p,2)),v=Z([-c/g,d/g],2),m=v[0],y=v[1];return[m*f,m*p,y*f,y*p]}function RL(r){var e=Z(r,2),t=Z(e[0],2),n=t[0],i=t[1],a=Z(e[1],2),s=a[0],o=a[1];return{x1:n,y1:i,x2:s,y2:o}}function lde(r,e,t,n){var i=e.showTrunc,a=e.startPos,s=e.endPos,o=e.truncRange,A=e.lineExtension,l=e.classNamePrefix,u=Z([a,s],2),c=Z(u[0],2),d=c[0],h=c[1],f=Z(u[1],2),p=f[0],g=f[1],v=Z(A?Ade(a,s,A):new Array(4).fill(0),4),m=v[0],y=v[1],w=v[2],B=v[3],x=function(J){return r.selectAll(Et.line.class).data(J,function(be,re){return re}).join(function(be){var re=be.append("line").styles(t).transition(function(ne){return Ma(this,RL(ne.line),!1)});return re.attr("className",function(ne){if(!l)return"".concat(Et.line.name," ").concat(ne.className);var ue=Nh(Et.line.name,on.line,l);if(ne.className===Et.lineFirst.name){var Y=Nh(Et.lineFirst.name,on.lineFirst,l);return"".concat(ue," ").concat(Y)}if(ne.className===Et.lineSecond.name){var Y=Nh(Et.lineSecond.name,on.lineSecond,l);return"".concat(ue," ").concat(Y)}return ue}),re},function(be){return be.styles(t).transition(function(re){var ne=re.line;return Ma(this,RL(ne),n.update)})},function(be){return be.remove()}).transitions()};if(!i||!o)return x([{line:[[d+m,h+y],[p+w,g+B]],className:Et.line.name}]);var k=Z(o,2),_=k[0],T=k[1],F=p-d,I=g-h,O=Z([d+F*_,h+I*_],2),P=O[0],G=O[1],ee=Z([d+F*T,h+I*T],2),te=ee[0],N=ee[1],K=x([{line:[[d+m,h+y],[P,G]],className:Et.lineFirst.name},{line:[[te,N],[p+w,g+B]],className:Et.lineSecond.name}]);return ode(r,e),K}function ude(r,e,t,n){var i=t.showArrow,a=t.showTrunc,s=t.lineArrow,o=t.lineArrowOffset,A=t.lineArrowSize,l;if(e==="arc"?l=r.select(Et.line.class):a?l=r.select(Et.lineSecond.class):l=r.select(Et.line.class),!i||!s||t.type==="arc"&&g4(t.startAngle,t.endAngle)){var u=l.node();u&&(u.style.markerEnd=void 0);return}var c=Rs(s);c.attr(n),hC(c,A),l.style("markerEnd",c).style("markerEndOffset",-o)}function cde(r,e,t){var n=e.type,i,a=_t(e,"line");return n==="linear"?i=lde(r,e,gE(a,"arrow"),t):i=sde(r,e,gE(a,"arrow"),t),ude(r,n,e,a),i}function dde(r,e){return bC(r,e.gridDirection,e)}function p4(r){var e=r.type,t=r.gridCenter;return e==="linear"?t:t||r.center}function hde(r,e){var t=e.gridLength;return r.map(function(n,i){var a=n.value,s=Z(vp(a,e),2),o=s[0],A=s[1],l=Z(Ts(dde(a,e),t),2),u=l[0],c=l[1];return{id:i,points:[[o,A],[o+u,A+c]]}})}function fde(r,e){var t=e.gridControlAngles,n=p4(e);if(!n)throw new Error("grid center is not provide");if(r.length<2)throw new Error("Invalid grid data");if(!t||t.length===0)throw new Error("Invalid gridControlAngles");var i=Z(n,2),a=i[0],s=i[1];return r.map(function(o,A){var l=o.value,u=Z(vp(l,e),2),c=u[0],d=u[1],h=Z([c-a,d-s],2),f=h[0],p=h[1],g=[];return t.forEach(function(v){var m=Ml(v),y=Z([Math.cos(m),Math.sin(m)],2),w=y[0],B=y[1],x=f*w-p*B+a,k=f*B+p*w+s;g.push([x,k])}),{points:g,id:A}})}function gde(r,e,t,n){var i=t.classNamePrefix,a=_t(t,"grid"),s=a.type,o=a.areaFill,A=p4(t),l=wC(e,t.gridFilter),u=s==="segment"?hde(l,t):fde(l,t),c=Ie(Ie({},a),{center:A,areaFill:At(o)?l.map(function(d,h){return Pi(o,[d,h,l])}):o,animate:n,data:u});return r.selectAll(Et.grid.class).data([1]).join(function(d){var h=d.append(function(){return new nde({style:c})}).attr("className",Et.grid.name);return Xi(h,Et.grid,on.grid,i),h},function(d){return d.transition(function(){return this.update(c)})},function(d){return d.remove()}).transitions()}var mE=(function(){function r(e,t,n,i){this.set(e,t,n,i)}return Object.defineProperty(r.prototype,"left",{get:function(){return this.x1},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"top",{get:function(){return this.y1},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"right",{get:function(){return this.x2},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"bottom",{get:function(){return this.y2},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"width",{get:function(){return this.defined("x2")&&this.defined("x1")?this.x2-this.x1:void 0},enumerable:!1,configurable:!0}),Object.defineProperty(r.prototype,"height",{get:function(){return this.defined("y2")&&this.defined("y1")?this.y2-this.y1:void 0},enumerable:!1,configurable:!0}),r.prototype.rotatedPoints=function(e,t,n){var i=this,a=i.x1,s=i.y1,o=i.x2,A=i.y2,l=Math.cos(e),u=Math.sin(e),c=t-t*l+n*u,d=n-t*u-n*l,h=[[l*a-u*A+c,u*a+l*A+d],[l*o-u*A+c,u*o+l*A+d],[l*a-u*s+c,u*a+l*s+d],[l*o-u*s+c,u*o+l*s+d]];return h},r.prototype.set=function(e,t,n,i){return n<e?(this.x2=e,this.x1=n):(this.x1=e,this.x2=n),i<t?(this.y2=t,this.y1=i):(this.y1=t,this.y2=i),this},r.prototype.defined=function(e){return this[e]!==Number.MAX_VALUE&&this[e]!==-Number.MAX_VALUE},r})();function yE(r,e){var t=r.getEulerAngles()||0;r.setEulerAngles(0);var n=r.getBounds(),i=Z(n.min,2),a=i[0],s=i[1],o=Z(n.max,2),A=o[0],l=o[1],u=r.getBBox(),c=u.width,d=u.height,h=d,f=0,p=0,g=a,v=s,m=Z3(r);if(m){h-=1.5;var y=m.style.textAlign,w=m.style.textBaseline;y==="center"?g=(a+A)/2:(y==="right"||y==="end")&&(g=A),w==="middle"?v=(s+l)/2:w==="bottom"&&(v=l)}var B=Z(Wr(e),4),x=B[0],k=x===void 0?0:x,_=B[1],T=_===void 0?0:_,F=B[2],I=F===void 0?k:F,O=B[3],P=O===void 0?T:O,G=new mE((f+=a)-P,(p+=s)-k,f+c+T,p+h+I);return r.setEulerAngles(t),G.rotatedPoints(Ml(t),g,v)}function Ou(r,e){return e[0]<=Math.max(r[0][0],r[1][0])&&e[0]<=Math.min(r[0][0],r[1][0])&&e[1]<=Math.max(r[0][1],r[1][1])&&e[1]<=Math.min(r[0][1],r[1][1])}function Lu(r,e,t){var n=(e[1]-r[1])*(t[0]-e[0])-(e[0]-r[0])*(t[1]-e[1]);return n===0?0:n<0?2:1}function pde(r,e){var t=Lu(r[0],r[1],e[0]),n=Lu(r[0],r[1],e[1]),i=Lu(e[0],e[1],r[0]),a=Lu(e[0],e[1],r[1]);return!!(t!==n&&i!==a||t===0&&Ou(r,e[0])||n===0&&Ou(r,e[1])||i===0&&Ou(e,r[0])||a===0&&Ou(e,r[1]))}function vde(r,e){var t=r.length;if(t<3)return!1;var n=[e,[9999,e[1]]],i=0,a=0;do{var s=[r[a],r[(a+1)%t]];if(pde(s,n)){if(Lu(s[0],e,s[1])===0)return Ou(s,e);i++}a=(a+1)%t}while(a!==0);return!!(i&1)}function mde(r,e){return e.every(function(t){return vde(r,t)})}function yde(r,e,t){var n=r.x1,i=r.x2,a=r.y1,s=r.y2,o=[[n,a],[i,a],[i,s],[n,s]],A=yE(e,t);return mde(o,A)}function wde(r,e){var t=Z(r,4),n=t[0],i=t[1],a=t[2],s=t[3],o=Z(e,4),A=o[0],l=o[1],u=o[2],c=o[3],d=a-n,h=s-i,f=u-A,p=c-l,g=d*p-f*h;if(g===0)return!1;var v=g>0,m=n-A,y=i-l,w=d*y-h*m;if(w<0===v)return!1;var B=f*y-p*m;return!(B<0===v||w>g===v||B>g===v)}function bde(r,e){var t=[[r[0],r[1],r[2],r[3]],[r[2],r[3],r[4],r[5]],[r[4],r[5],r[6],r[7]],[r[6],r[7],r[0],r[1]]];return t.some(function(n){return wde(e,n)})}function Bde(r,e,t){var n,i,a=yE(r,t).flat(1),s=yE(e,t).flat(1),o=[[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 A=wc(o),l=A.next();!l.done;l=A.next()){var u=l.value;if(bde(s,u))return!0}}catch(c){n={error:c}}finally{try{l&&!l.done&&(i=A.return)&&i.call(A)}finally{if(n)throw n.error}}return!1}function Ede(r,e){var t=r.type,n=r.labelDirection,i=r.crossSize;if(!i)return!1;if(t==="arc"){var a=r.center,s=r.radius,o=Z(a,2),A=o[0],l=o[1],u=n==="negative"?0:i,c=-s-u,d=s+u,h=Z(Wr(e),4),f=h[0],p=h[1],g=h[2],v=h[3];return new mE(A+c-v,l+c-f,A+d+p,l+d+g)}var m=Z(r.startPos,2),y=m[0],w=m[1],B=Z(r.endPos,2),x=B[0],k=B[1],_=Z(f4(r)?[-e,0,e,0]:[0,e,0,-e],4),T=_[0],F=_[1],I=_[2],O=_[3],P=Vl(0,r),G=Ts(P,i),ee=new mE(y,w,x,k);return ee.x1+=O,ee.y1+=T,ee.x2+=F+G[0],ee.y2+=I+G[1],ee}function mp(r,e,t){var n,i,a=e.crossPadding,s=new Set,o=null,A=Ede(e,a),l=function(f){return A?yde(A,f):!0},u=function(f,p){return!f||!f.firstChild?!0:!Bde(f.firstChild,p.firstChild,Wr(t))};try{for(var c=wc(r),d=c.next();!d.done;d=c.next()){var h=d.value;l(h)?!o||u(o,h)?o=h:(s.add(o),s.add(h)):s.add(h)}}catch(f){n={error:f}}finally{try{d&&!d.done&&(i=c.return)&&i.call(c)}finally{if(n)throw n.error}}return Array.from(s)}function Ub(r,e){return e===void 0&&(e={}),ut(r)?0:typeof r=="number"?r:Math.floor(mue(r,e))}function xde(r,e,t,n){if(!(r.length<=0)){var i=e.suffix,a=i===void 0?"...":i,s=e.minLength,o=e.maxLength,A=o===void 0?1/0:o,l=e.step,u=l===void 0?" ":l,c=e.margin,d=c===void 0?[0,0,0,0]:c,h=X3(n.getTextShape(r[0])),f=Ub(u,h),p=s?Ub(s,h):f,g=Ub(A,h);(ut(g)||g===1/0)&&(g=Math.max.apply(null,r.map(function(x){return x.getBBox().width})));var v=r.slice(),m=Z(d,4);m[0],m[1],m[2],m[3];for(var y=function(x){if(v.forEach(function(k){n.ellipsis(n.getTextShape(k),x,a)}),v=mp(r,t,d),v.length<1)return{value:void 0}},w=g;w>p+f;w-=f){var B=y(w);if(typeof B=="object")return B.value}}}var Cde={parity:function(r,e){var t=e.seq,n=t===void 0?2:t;return r.filter(function(i,a){return a%n?(Fa(i),!1):!0})}},Sde=function(r){return r.filter(vue)};function _de(r,e,t,n){var i=r.length,a=e.keepHeader,s=e.keepTail;if(!(i<=1||i===2&&a&&s)){var o=Cde.parity,A=function(y){return y.forEach(n.show),y},l=2,u=r.slice(),c=r.slice(),d=Math.min.apply(Math,it([1],Z(r.map(function(y){return y.getBBox().width})),!1));if(t.type==="linear"&&(BC(t)||f4(t))){var h=pL(r[0]).left,f=pL(r[i-1]).right,p=Math.abs(f-h)||1;l=Math.max(Math.floor(i*d/p),l)}var g,v;for(a&&(g=u.splice(0,1)[0]),s&&(v=u.splice(-1,1)[0],u.reverse()),A(u);l<r.length&&mp(Sde(v?it(it([v],Z(c),!1),[g],!1):it([g],Z(c),!1)),t,e==null?void 0:e.margin).length;){if(v&&!g&&l%2===0){var m=u.splice(0,1);m.forEach(n.hide)}else if(v&&g){var m=u.splice(0,1);m.forEach(n.hide)}c=o(A(u),{seq:l}),l++}}}function kde(r,e,t,n){var i,a,s=e.optionalAngles,o=s===void 0?[0,45,90]:s,A=e.margin,l=e.recoverWhenFailed,u=l===void 0?!0:l,c=r.map(function(v){return v.getLocalEulerAngles()}),d=function(){return mp(r,t,A).length<1},h=function(v){return r.forEach(function(m,y){var w=Array.isArray(v)?v[y]:v;n.rotate(m,+w)})};try{for(var f=wc(o),p=f.next();!p.done;p=f.next()){var g=p.value;if(h(g),d())return}}catch(v){i={error:v}}finally{try{p&&!p.done&&(a=f.return)&&a.call(f)}finally{if(i)throw i.error}}u&&h(c)}function Tde(r){var e=r.type,t=r.labelDirection;return e==="linear"&&BC(r)?t==="negative"?"bottom":"top":"middle"}function Fde(r,e,t,n,i){var a,s=e.maxLines,o=s===void 0?3:s,A=e.recoverWhenFailed,l=A===void 0?!0:A,u=e.margin,c=u===void 0?[0,0,0,0]:u,d=Pi((a=e.wordWrapWidth)!==null&&a!==void 0?a:50,[i]),h=r.map(function(y){return y.attr("maxLines")||1}),f=Math.min.apply(Math,it([],Z(h),!1)),p=function(){return mp(r,t,c).length<1},g=Tde(t),v=function(y){return r.forEach(function(w,B){var x=Array.isArray(y)?y[B]:y;n.wrap(w,d,x,g)})};if(!(f>o)){if(t.type==="linear"&&BC(t)){if(v(o),p())return}else for(var m=f;m<=o;m++)if(v(m),p())return;l&&v(h)}}var Mde=new Map([["hide",_de],["rotate",kde],["ellipsis",xde],["wrap",Fde]]);function Ide(r,e,t){return e.labelOverlap.length<1?!1:t==="hide"?!gue(r[0]):t==="rotate"?!r.some(function(n){var i;return!!(!((i=n.attr("transform"))===null||i===void 0)&&i.includes("rotate"))}):t==="ellipsis"||t==="wrap"?r.filter(function(n){return n.querySelector("text")}).length>=1:!0}function Ode(r,e,t,n){var i=e.labelOverlap,a=i===void 0?[]:i;a.length&&a.forEach(function(s){var o=s.type,A=Mde.get(o);Ide(r,e,o)&&(A==null||A(r,s,e,n,t))})}function Lde(){for(var r=[],e=0;e<arguments.length;e++)r[e]=arguments[e];var t=function(n){return n==="positive"?-1:1};return r.reduce(function(n,i){return n*t(i)},1)}function QL(r){for(var e=r;e<0;)e+=360;return Math.round(e%360)}function wE(r,e){var t=Z(r,2),n=t[0],i=t[1],a=Z(e,2),s=a[0],o=a[1],A=Z([n*s+i*o,n*o-i*s],2),l=A[0],u=A[1];return Math.atan2(u,l)}function Nde(r){var e=(r+360)%180;return $r(e,-90,90)||(e+=180),e}function Pde(r,e,t){var n,i=t.labelAlign,a=(n=e.style.transform)===null||n===void 0?void 0:n.includes("rotate");if(a)return e.getLocalEulerAngles();var s=0,o=Vl(r.value,t),A=pp(r.value,t);return i==="horizontal"?0:(i==="perpendicular"?s=wE([1,0],o):s=wE([A[0]<0?-1:1,0],A),Nde(q3(s)))}function v4(r,e,t){var n=t.type,i=t.labelAlign,a=Vl(r,t),s=QL(e),o=QL(q3(wE([1,0],a))),A="center",l="middle";return n==="linear"?[90,270].includes(o)&&s===0?(A="center",l=a[1]===1?"top":"bottom"):!(o%180)&&[90,270].includes(s)?A="center":o===0?($r(s,0,90,!1,!0)||$r(s,0,90)||$r(s,270,360))&&(A="start"):o===90?$r(s,0,90,!1,!0)?A="start":($r(s,90,180)||$r(s,270,360))&&(A="end"):o===270?$r(s,0,90,!1,!0)?A="end":($r(s,90,180)||$r(s,270,360))&&(A="start"):o===180&&(s===90?A="start":($r(s,0,90)||$r(s,270,360))&&(A="end")):i==="parallel"?$r(o,0,180,!0)?l="top":l="bottom":i==="horizontal"?$r(o,90,270,!1)?A="end":($r(o,270,360,!1)||$r(o,0,90))&&(A="start"):i==="perpendicular"&&($r(o,90,270)?A="end":A="start"),{textAlign:A,textBaseline:l}}function Ude(r,e,t){e.setLocalEulerAngles(r);var n=e.__data__.value,i=v4(n,r,t),a=e.querySelector(Et.labelItem.class);a&&m4(a,i)}function DL(r,e,t){var n=t.showTick,i=t.tickLength,a=t.tickDirection,s=t.labelDirection,o=t.labelSpacing,A=e.indexOf(r),l=Pi(o,[r,A,e]),u=Z([Vl(r.value,t),Lde(s,a)],2),c=u[0],d=u[1],h=d===1?Pi(n?i:0,[r,A,e]):0,f=Z(Iu(Ts(c,l+h),vp(r.value,t)),2),p=f[0],g=f[1];return{x:p,y:g}}function Rde(r,e,t,n){var i=n.labelFormatter,a=At(i)?function(){return Rs(Pi(i,[r,e,t,Vl(r.value,n)]))}:function(){return Rs(r.label||"")};return a}function Qde(r,e,t,n){var i=n.labelRender,a=(Gr(n,"endPos.0",400)-Gr(n,"startPos.0",0))/t.length,s=At(i)?Pi(i,[r,e,t,Vl(r.value,n)]):r.label||"",o=Gue(s)||30;return function(){return wue(s,{width:a,height:o})}}var Dde={html:["fill"],text:[]};function m4(r,e){["text","html"].includes(r.nodeName)&&r.attr(gE(e,Dde[r.nodeName]))}function Hde(r,e){Ode(this.node().childNodes,r,e,{hide:Fa,show:$c,rotate:function(t,n){Ude(+n,t,r)},ellipsis:function(t,n,i){t&&fE(t,n||1/0,i)},wrap:function(t,n,i){t&&yue(t,n,i)},getTextShape:function(t){return t.querySelector(Et.labelItem.class)}})}function HL(r,e,t,n,i){var a=t.indexOf(e),s=i.labelRender,o=i.classNamePrefix,A=nt(r).append(s?Qde(e,a,t,i):Rde(e,a,t,i)).attr("className",Et.labelItem.name).node();Xi(nt(A),Et.labelItem,on.labelItem,o);var l=Z(Qs(d4(n,[e,a,t])),2),u=l[0],c=l[1],d=c.transform,h=qn(c,["transform"]);t4(A,d);var f=Pde(e,A,i);if(A.getLocalEulerAngles()||A.setLocalEulerAngles(f),m4(A,Ie(Ie({},v4(e.value,f,i)),u)),A.nodeName==="html"){var p=A.getBBox(),g=A.style.x||0;A.attr("x",g-p.width/2)}return r.attr(h),A}function $de(r,e,t,n,i){var a=t.classNamePrefix,s=wC(e,t.labelFilter),o=_t(t,"label"),A,l=r.selectAll(Et.label.class).data(s,function(u,c){return c}).join(function(u){var c=u.append("g").attr("className",Et.label.name).transition(function(d){HL(this,d,e,o,t);var h=DL(d,e,t),f=h.x,p=h.y;return this.style.transform="translate(".concat(f,", ").concat(p,")"),null});return Xi(c,Et.label,on.label,a),c},function(u){return u.transition(function(c){var d=this.querySelector(Et.labelItem.class),h=HL(this,c,e,o,t),f=jce(d,h,n.update),p=DL(c,e,t),g=p.x,v=p.y,m=Ma(this,{transform:"translate(".concat(g,", ").concat(v,")")},n.update);return it(it([],Z(f),!1),[m],!1)})},function(u){return A=u,u.transition(function(){var c=this,d=gp(this.childNodes[0],n.exit);return zl(d,function(){return nt(c).remove()}),d}),A}).transitions();return Vce(l,function(){Hde.call(r,t,i)}),l}function y4(r,e){return bC(r,e.tickDirection,e)}function Gde(r,e){var t=Z(r,2),n=t[0],i=t[1];return[[0,0],[n*e,i*e]]}function zde(r,e,t,n,i){var a=i.tickLength,s=Z(Gde(n,Pi(a,[r,e,t])),2),o=Z(s[0],2),A=o[0],l=o[1],u=Z(s[1],2),c=u[0],d=u[1];return{x1:A,x2:c,y1:l,y2:d}}function Vde(r,e,t,n,i){var a=i.tickFormatter,s=i.classNamePrefix,o=y4(e.value,i),A="line";At(a)&&(A=function(){return Pi(a,[e,t,n,o])});var l=r.append(A).attr("className",Et.tickItem.name);return Xi(l,Et.tickItem,on.tickItem,s),l}function Kde(r,e,t,n,i,a,s){var o=y4(r.value,a),A=zde(r,e,t,o,a),l=A.x1,u=A.x2,c=A.y1,d=A.y2,h=Z(Qs(d4(s,[r,e,t,o])),2),f=h[0],p=h[1];n.node().nodeName==="line"&&n.styles(Ie({x1:l,x2:u,y1:c,y2:d},f)),i.attr(p),n.styles(f)}function $L(r,e,t,n,i,a){var s=Vde(nt(this),r,e,t,n);Kde(r,e,t,s,this,n,i);var o=Z(vp(r.value,n),2),A=o[0],l=o[1];return Ma(this,{transform:"translate(".concat(A,", ").concat(l,")")},a)}function jde(r,e,t,n){var i=t.classNamePrefix,a=wC(e,t.tickFilter),s=_t(t,"tick");return r.selectAll(Et.tick.class).data(a,function(o){return o.id||o.label}).join(function(o){var A=o.append("g").attr("className",Et.tick.name).transition(function(l,u){return $L.call(this,l,u,a,t,s,!1)});return Xi(A,Et.tick,on.tick,i),A},function(o){return o.transition(function(A,l){return this.removeChildren(),$L.call(this,A,l,a,t,s,n.update)})},function(o){return o.transition(function(){var A=this,l=gp(this.childNodes[0],n.exit);return zl(l,function(){return A.remove()}),l})}).transitions()}function Wde(r,e,t){var n=t.titlePosition,i=n===void 0?"lb":n,a=t.titleSpacing,s=fp(i),o=r.node().getLocalBounds(),A=Z(o.min,2),l=A[0],u=A[1],c=Z(o.halfExtents,2),d=c[0],h=c[1],f=Z(e.node().getLocalBounds().halfExtents,2),p=f[0],g=f[1],v=Z([l+d,u+h],2),m=v[0],y=v[1],w=Z(Wr(a),4),B=w[0],x=w[1],k=w[2],_=w[3];if(["start","end"].includes(i)&&t.type==="linear"){var T=t.startPos,F=t.endPos,I=Z(i==="start"?[T,F]:[F,T],2),O=I[0],P=I[1],G=e4([-P[0]+O[0],-P[1]+O[1]]),ee=Z(Ts(G,B),2),te=ee[0],N=ee[1];return{x:O[0]+te,y:O[1]+N}}return s.includes("t")&&(y-=h+g+B),s.includes("r")&&(m+=d+p+x),s.includes("l")&&(m-=d+p+_),s.includes("b")&&(y+=h+g+k),{x:m,y}}function qde(r,e,t){var n=r.getGeometryBounds().halfExtents,i=n[1]*2;if(e==="vertical"){if(t==="left")return"rotate(-90) translate(0, ".concat(i/2,")");if(t==="right")return"rotate(-90) translate(0, -".concat(i/2,")")}return""}function GL(r,e,t,n,i){var a=_t(n,"title"),s=Z(Qs(a),2),o=s[0],A=s[1],l=A.transform,u=A.transformOrigin,c=qn(A,["transform","transformOrigin"]);e.styles(c);var d=l||qde(r.node(),o.direction,o.position);r.styles(Ie(Ie({},o),{transformOrigin:u})),t4(r.node(),d);var h=Wde(nt(t._offscreen||t.querySelector(Et.mainGroup.class)),e,n),f=h.x,p=h.y,g=Ma(e.node(),{transform:"translate(".concat(f,", ").concat(p,")")},i);return g}function Yde(r,e,t,n){var i=t.titleText,a=t.classNamePrefix;return r.selectAll(Et.title.class).data([{title:i}].filter(function(s){return!!s.title}),function(s,o){return s.title}).join(function(s){var o=s.append(function(){return Rs(i)}).attr("className",Et.title.name).transition(function(){return GL(nt(this),r,e,t,n.enter)});return Xi(o,Et.title,on.title,a),o},function(s){return s.transition(function(){return GL(nt(this),r,e,t,n.update)})},function(s){return s.remove()}).transitions()}function zL(r,e,t,n){var i=r.showLine,a=r.showTick,s=r.showLabel,o=r.classNamePrefix,A=e.maybeAppendByClassName(Et.lineGroup,"g");Xi(A,Et.lineGroup,on.lineGroup,o);var l=Ni(i,A,function(f){return cde(f,r,n)})||[],u=e.maybeAppendByClassName(Et.tickGroup,"g");Xi(u,Et.tickGroup,on.tickGroup,o);var c=Ni(a,u,function(f){return jde(f,t,r,n)})||[],d=e.maybeAppendByClassName(Et.labelGroup,"g");Xi(d,Et.labelGroup,on.labelGroup,o);var h=Ni(s,d,function(f){return $de(f,t,r,n,e.node())})||[];return it(it(it([],Z(l),!1),Z(c),!1),Z(h),!1).filter(function(f){return!!f})}var Xde=(function(r){Lt(e,r);function e(t){return r.call(this,t,yC)||this}return e.prototype.render=function(t,n,i){var a=this,s=t.titleText,o=t.data,A=t.animate,l=t.showTitle,u=t.showGrid,c=t.dataThreshold,d=t.truncRange,h=t.classNamePrefix,f=n.className||"axis";h?n.attr("className","".concat(f," ").concat(h,"axis")):n.className||n.attr("className","axis");var p=Mue(o,c).filter(function(k){var _=k.value;return!(d&&_>d[0]&&_<d[1])}),g=PL(i===void 0?A:i),v=nt(n).maybeAppendByClassName(Et.gridGroup,"g");Xi(v,Et.gridGroup,on.gridGroup,h);var m=Ni(u,v,function(k){return gde(k,p,t,g)})||[],y=nt(n).maybeAppendByClassName(Et.mainGroup,"g");Xi(y,Et.mainGroup,on.mainGroup,h),s&&(!this.initialized&&g.enter||this.initialized&&g.update)&&zL(t,nt(this.offscreenGroup),p,PL(!1));var w=zL(t,nt(y.node()),p,g),B=nt(n).maybeAppendByClassName(Et.titleGroup,"g");Xi(B,Et.titleGroup,on.titleGroup,h);var x=Ni(l,B,function(k){return Yde(k,a,t,g)})||[];return it(it(it([],Z(m),!1),Z(w),!1),Z(x),!1).flat().filter(function(k){return!!k})},e})(Yn);function mi(r,e,t){return t?"".concat(r," ").concat(t,"legend-").concat(e):r}function Zde(r,e,t){var n=1.4,i=n*t;return[["M",r-t,e-i],["L",r+t,e-i],["L",r+t,e+i],["L",r-t,e+i],["Z"]]}var w4=1.4,b4=.4;function Jde(r,e,t){var n=t,i=n*w4,a=n/2,s=n/6,o=r+i*b4;return[["M",r,e],["L",o,e+a],["L",r+i,e+a],["L",r+i,e-a],["L",o,e-a],["Z"],["M",o,e+s],["L",r+i-2,e+s],["M",o,e-s],["L",r+i-2,e-s]]}function ehe(r,e,t){var n=t,i=n*w4,a=n/2,s=n/6,o=e+i*b4;return[["M",r,e],["L",r-a,o],["L",r-a,e+i],["L",r+a,e+i],["L",r+a,o],["Z"],["M",r-s,o],["L",r-s,e+i-2],["M",r+s,o],["L",r+s,e+i-2]]}un.registerSymbol("hiddenHandle",Zde);un.registerSymbol("verticalHandle",Jde);un.registerSymbol("horizontalHandle",ehe);function bE(r,e,t){return r===void 0&&(r="horizontal"),r==="horizontal"?e:t}var yi={title:"title",item:"item",marker:"marker",label:"label",value:"value",focusIcon:"focus-icon",background:"background",handleMarker:"handle-marker",handleLabel:"handle-label",prevBtn:"prev-btn",nextBtn:"next-btn",pageInfo:"page-info"},Wo=Qa({markerGroup:"marker-group",marker:"marker",labelGroup:"label-group",label:"label"},"handle"),B4={showLabel:!0,formatter:function(r){return r.toString()},markerSize:25,markerStroke:"#c5c5c5",markerFill:"#fff",markerLineWidth:1,labelFontSize:12,labelFill:"#c5c5c5",labelText:"",orientation:"vertical",spacing:0};(function(r){Lt(e,r);function e(t){return r.call(this,t,B4)||this}return e.prototype.render=function(t,n){var i=nt(n).maybeAppendByClassName(Wo.markerGroup,"g");this.renderMarker(i);var a=nt(n).maybeAppendByClassName(Wo.labelGroup,"g");this.renderLabel(a)},e.prototype.renderMarker=function(t){var n=this,i=this.attributes,a=i.orientation,s=i.classNamePrefix,o=i.markerSymbol,A=o===void 0?bE(a,"horizontalHandle","verticalHandle"):o;Ni(!!A,t,function(l){var u=_t(n.attributes,"marker"),c=Ie({symbol:A},u),d=mi(Wo.marker.name,yi.handleMarker,s);if(n.marker=l.maybeAppendByClassName(Wo.marker,function(){return new un({style:c,className:d})}).update(c),s){var h=n.marker.node().querySelector(".marker");if(h){var f=h.getAttribute("class")||"",p=f.split(" ")[0],g=mi(p,yi.handleMarker,s);h.setAttribute("class",g)}}})},e.prototype.renderLabel=function(t){var n=this,i=this.attributes,a=i.showLabel,s=i.orientation,o=i.spacing,A=o===void 0?0:o,l=i.formatter,u=i.classNamePrefix;Ni(a,t,function(c){var d,h=_t(n.attributes,"label"),f=h.text,p=qn(h,["text"]),g=((d=c.select(Wo.marker.class))===null||d===void 0?void 0:d.node().getBBox())||{},v=g.width,m=v===void 0?0:v,y=g.height,w=y===void 0?0:y,B=Z(bE(s,[0,w+A,"center","top"],[m+A,0,"start","middle"]),4),x=B[0],k=B[1],_=B[2],T=B[3],F=mi(Wo.label.name,yi.handleLabel,u);c.maybeAppendByClassName(Wo.label,"text").attr("className",F).styles(Ie(Ie({},p),{x,y:k,text:l(f).toString(),textAlign:_,textBaseline:T}))})},e})(Yn);var E4={showTitle:!0,padding:0,orientation:"horizontal",backgroundFill:"transparent",titleText:"",titleSpacing:4,titlePosition:"top-left",titleFill:"#2C3542",titleFontWeight:"bold",titleFontFamily:"sans-serif",titleFontSize:12},the=yr({},E4,{});yr({},E4,sl(B4,"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 qo=Qa({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"),Rb=Qa({text:"text"},"title");function nhe(r,e){var t=r.attributes,n=t.position,i=t.spacing,a=t.inset,s=t.text,o=r.getBBox(),A=e.getBBox(),l=fp(n),u=Z(Wr(s?i:0),4),c=u[0],d=u[1],h=u[2],f=u[3],p=Z(Wr(a),4),g=p[0],v=p[1],m=p[2],y=p[3],w=Z([f+d,c+h],2),B=w[0],x=w[1],k=Z([y+v,g+m],2),_=k[0],T=k[1];if(l[0]==="l")return new Bi(o.x,o.y,A.width+o.width+B+_,Math.max(A.height+T,o.height));if(l[0]==="t")return new Bi(o.x,o.y,Math.max(A.width+_,o.width),A.height+o.height+x+T);var F=Z([e.attributes.width||A.width,e.attributes.height||A.height],2),I=F[0],O=F[1];return new Bi(A.x,A.y,I+o.width+B+_,O+o.height+x+T)}function rhe(r,e){var t=Object.entries(e).reduce(function(n,i){var a=Z(i,2),s=a[0],o=a[1],A=r.node().attr(s);return A||(n[s]=o),n},{});r.styles(t)}function ihe(r){var e,t,n,i,a=r,s=a.width,o=a.height,A=a.position,l=Z([+s/2,+o/2],2),u=l[0],c=l[1],d=Z([+u,+c,"center","middle"],4),h=d[0],f=d[1],p=d[2],g=d[3],v=fp(A);return v.includes("l")&&(e=Z([0,"start"],2),h=e[0],p=e[1]),v.includes("r")&&(t=Z([+s,"end"],2),h=t[0],p=t[1]),v.includes("t")&&(n=Z([0,"top"],2),f=n[0],g=n[1]),v.includes("b")&&(i=Z([+o,"bottom"],2),f=i[0],g=i[1]),{x:h,y:f,textAlign:p,textBaseline:g}}var ahe=(function(r){Lt(e,r);function e(t){return r.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 e.prototype.getAvailableSpace=function(){var t=this,n=this.attributes,i=n.width,a=n.height,s=n.position,o=n.spacing,A=n.inset,l=t.querySelector(Rb.text.class);if(!l)return new Bi(0,0,+i,+a);var u=l.getBBox(),c=u.width,d=u.height,h=Z(Wr(o),4),f=h[0],p=h[1],g=h[2],v=h[3],m=Z([0,0,+i,+a],4),y=m[0],w=m[1],B=m[2],x=m[3],k=fp(s);if(k.includes("i"))return new Bi(y,w,B,x);k.forEach(function(te,N){var K,J,be,re;te==="t"&&(K=Z(N===0?[d+g,+a-d-g]:[0,+a],2),w=K[0],x=K[1]),te==="r"&&(J=Z([+i-c-v],1),B=J[0]),te==="b"&&(be=Z([+a-d-f],1),x=be[0]),te==="l"&&(re=Z(N===0?[c+p,+i-c-p]:[0,+i],2),y=re[0],B=re[1])});var _=Z(Wr(A),4),T=_[0],F=_[1],I=_[2],O=_[3],P=Z([O+F,T+I],2),G=P[0],ee=P[1];return new Bi(y+O,w+T,B-G,x-ee)},e.prototype.getBBox=function(){return this.title?this.title.getBBox():new Bi(0,0,0,0)},e.prototype.render=function(t,n){var i=this;t.width,t.height,t.position,t.spacing;var a=t.classNamePrefix,s=qn(t,["width","height","position","spacing","classNamePrefix"]),o=Z(Qs(s),1),A=o[0],l=ihe(t),u=l.x,c=l.y,d=l.textAlign,h=l.textBaseline;Ni(!!s.text,nt(n),function(f){var p=mi(Rb.text.name,yi.title,a);i.title=f.maybeAppendByClassName(Rb.text,"text").attr("className",p).styles(A).call(rhe,{x:u,y:c,textAlign:d,textBaseline:h}).node()})},e})(Yn),gi=Qa({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"),she=(function(r){Lt(e,r);function e(t){var n=r.call(this,t,{x:0,y:0,animate:{easing:"linear",duration:200,fill:"both"},buttonCursor:"pointer",buttonFill:"black",buttonD:Ace(0,0,6),buttonSize:12,controllerPadding:5,controllerSpacing:5,formatter:function(i,a){return"".concat(i,"/").concat(a)},defaultPage:0,loop:!1,orientation:"horizontal",pageNumFill:"black",pageNumFontSize:12,pageNumTextAlign:"start",pageNumTextBaseline:"middle"})||this;return n.playState="idle",n.contentGroup=n.appendChild(new Mr({class:gi.contentGroup.name})),n.playWindow=n.contentGroup.appendChild(new Mr({class:gi.playWindow.name})),n.innerCurrPage=n.defaultPage,n}return Object.defineProperty(e.prototype,"defaultPage",{get:function(){var t=this.attributes.defaultPage;return jn(t,0,Math.max(this.pageViews.length-1,0))},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pageViews",{get:function(){return this.playWindow.children},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"controllerShape",{get:function(){return this.totalPages>1?{width:55,height:0}:{width:0,height:0}},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"pageShape",{get:function(){var t=this.pageViews,n=Z($ue(t.map(function(c){var d=c.getBBox(),h=d.width,f=d.height;return[h,f]})).map(function(c){return Math.max.apply(Math,it([],Z(c),!1))}),2),i=n[0],a=n[1],s=this.attributes,o=s.pageWidth,A=o===void 0?i:o,l=s.pageHeight,u=l===void 0?a:l;return{pageWidth:A,pageHeight:u}},enumerable:!1,configurable:!0}),e.prototype.getContainer=function(){return this.playWindow},Object.defineProperty(e.prototype,"totalPages",{get:function(){return this.pageViews.length},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"currPage",{get:function(){return this.innerCurrPage},enumerable:!1,configurable:!0}),e.prototype.getBBox=function(){var t=r.prototype.getBBox.call(this),n=t.x,i=t.y,a=this.controllerShape,s=this.pageShape,o=s.pageWidth,A=s.pageHeight;return new Bi(n,i,o+a.width,A)},e.prototype.goTo=function(t){var n=this,i=this.attributes.animate,a=this,s=a.currPage,o=a.playState,A=a.playWindow,l=a.pageViews;if(o!=="idle"||t<0||l.length<=0||t>=l.length)return null;l[s].setLocalPosition(0,0),this.prepareFollowingPage(t);var u=Z(this.getFollowingPageDiff(t),2),c=u[0],d=u[1];this.playState="running";var h=o4(A,[{transform:"translate(0, 0)"},{transform:"translate(".concat(-c,", ").concat(-d,")")}],i);return zl(h,function(){n.innerCurrPage=t,n.playState="idle",n.setVisiblePages([t]),n.updatePageInfo()}),h},e.prototype.prev=function(){var t=this.attributes.loop,n=this.pageViews.length,i=this.currPage;if(!t&&i<=0)return null;var a=t?(i-1+n)%n:jn(i-1,0,n);return this.goTo(a)},e.prototype.next=function(){var t=this.attributes.loop,n=this.pageViews.length,i=this.currPage;if(!t&&i>=n-1)return null;var a=t?(i+1)%n:jn(i+1,0,n);return this.goTo(a)},e.prototype.renderClipPath=function(t){var n=this.pageShape,i=n.pageWidth,a=n.pageHeight;if(!i||!a){this.contentGroup.style.clipPath=void 0;return}this.clipPath=t.maybeAppendByClassName(gi.clipPath,"rect").styles({width:i,height:a}),this.contentGroup.attr("clipPath",this.clipPath.node())},e.prototype.setVisiblePages=function(t){this.playWindow.children.forEach(function(n,i){t.includes(i)?$c(n):Fa(n)})},e.prototype.adjustControllerLayout=function(){var t=this,n=t.prevBtnGroup,i=t.nextBtnGroup,a=t.pageInfoGroup,s=this.attributes,o=s.orientation,A=s.controllerPadding,l=a.getBBox(),u=l.width;l.height;var c=Z(o==="horizontal"?[-180,0]:[-90,90],2),d=c[0],h=c[1];n.setLocalEulerAngles(d),i.setLocalEulerAngles(h);var f=n.getBBox(),p=f.width,g=f.height,v=i.getBBox(),m=v.width,y=v.height,w=Math.max(p,u,m),B=o==="horizontal"?{offset:[[0,0],[p/2+A,0],[p+u+A*2,0]],textAlign:"start"}:{offset:[[w/2,-g-A],[w/2,0],[w/2,y+A]],textAlign:"center"},x=Z(B.offset,3),k=Z(x[0],2),_=k[0],T=k[1],F=Z(x[1],2),I=F[0],O=F[1],P=Z(x[2],2),G=P[0],ee=P[1],te=B.textAlign,N=a.querySelector("text");N&&(N.style.textAlign=te),n.setLocalPosition(_,T),a.setLocalPosition(I,O),i.setLocalPosition(G,ee)},e.prototype.updatePageInfo=function(){var t,n=this,i=n.currPage,a=n.pageViews,s=n.attributes.formatter;a.length<2||((t=this.pageInfoGroup.querySelector(gi.pageInfo.class))===null||t===void 0||t.attr("text",s(i+1,a.length)),this.adjustControllerLayout())},e.prototype.getFollowingPageDiff=function(t){var n=this.currPage;if(n===t)return[0,0];var i=this.attributes.orientation,a=this.pageShape,s=a.pageWidth,o=a.pageHeight,A=t<n?-1:1;return i==="horizontal"?[A*s,0]:[0,A*o]},e.prototype.prepareFollowingPage=function(t){var n=this,i=n.currPage,a=n.pageViews;if(this.setVisiblePages([t,i]),t!==i){var s=Z(this.getFollowingPageDiff(t),2),o=s[0],A=s[1];a[t].setLocalPosition(o,A)}},e.prototype.renderController=function(t){var n=this,i=this.attributes,a=i.controllerSpacing,s=i.classNamePrefix,o=s===void 0?"":s,A=this.pageShape,l=A.pageWidth,u=A.pageHeight,c=this.pageViews.length>=2,d=t.maybeAppendByClassName(gi.controller,"g");if(hp(d.node(),c),!!c){var h=_t(this.attributes,"button"),f=_t(this.attributes,"pageNum"),p=Z(Qs(h),2),g=p[0],v=p[1],m=g.size,y=qn(g,["size"]),w=!d.select(gi.prevBtnGroup.class).node(),B=d.maybeAppendByClassName(gi.prevBtnGroup,"g").styles(v);this.prevBtnGroup=B.node();var x=B.maybeAppendByClassName(gi.prevBtn,"path");if(o){var k=mi(gi.prevBtn.name,yi.prevBtn,o);x.node().setAttribute("class",k)}var _=d.maybeAppendByClassName(gi.nextBtnGroup,"g").styles(v);this.nextBtnGroup=_.node();var T=_.maybeAppendByClassName(gi.nextBtn,"path");if(o){var F=mi(gi.nextBtn.name,yi.nextBtn,o);T.node().setAttribute("class",F)}[x,T].forEach(function(G){G.styles(Ie(Ie({},y),{transformOrigin:"center"})),hC(G.node(),m)});var I=d.maybeAppendByClassName(gi.pageInfoGroup,"g");this.pageInfoGroup=I.node();var O=I.maybeAppendByClassName(gi.pageInfo,"text");if(O.styles(f),o){var P=mi(gi.pageInfo.name,yi.pageInfo,o);O.node().setAttribute("class",P)}this.updatePageInfo(),d.node().setLocalPosition(l+a,u/2),w&&(this.prevBtnGroup.addEventListener("click",function(){n.prev()}),this.nextBtnGroup.addEventListener("click",function(){n.next()}))}},e.prototype.render=function(t,n){var i=t.x,a=i===void 0?0:i,s=t.y,o=s===void 0?0:s;this.attr("transform","translate(".concat(a,", ").concat(o,")"));var A=nt(n);this.renderClipPath(A),this.renderController(A),this.setVisiblePages([this.defaultPage]),this.goTo(this.defaultPage)},e.prototype.bindEvents=function(){var t=this,n=mc(function(){return t.render(t.attributes,t)},50);this.playWindow.addEventListener(Vt.INSERTED,n),this.playWindow.addEventListener(Vt.REMOVED,n)},e})(Yn),Rt,ohe="component-poptip",It={CONTAINER:"component-poptip",ARROW:"component-poptip-arrow",TEXT:"component-poptip-text"},VL=(Rt={},Rt[".".concat(It.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"},Rt[".".concat(It.TEXT)]={"text-align":"center"},Rt[".".concat(It.CONTAINER,"[data-position='top']")]={transform:"translate(-50%, -100%)"},Rt[".".concat(It.CONTAINER,"[data-position='left']")]={transform:"translate(-100%, -50%)"},Rt[".".concat(It.CONTAINER,"[data-position='right']")]={transform:"translate(0, -50%)"},Rt[".".concat(It.CONTAINER,"[data-position='bottom']")]={transform:"translate(-50%, 0)"},Rt[".".concat(It.CONTAINER,"[data-position='top-left']")]={transform:"translate(0,-100%)"},Rt[".".concat(It.CONTAINER,"[data-position='top-right']")]={transform:"translate(-100%,-100%)"},Rt[".".concat(It.CONTAINER,"[data-position='left-top']")]={transform:"translate(-100%, 0)"},Rt[".".concat(It.CONTAINER,"[data-position='left-bottom']")]={transform:"translate(-100%, -100%)"},Rt[".".concat(It.CONTAINER,"[data-position='right-top']")]={transform:"translate(0, 0)"},Rt[".".concat(It.CONTAINER,"[data-position='right-bottom']")]={transform:"translate(0, -100%)"},Rt[".".concat(It.CONTAINER,"[data-position='bottom-left']")]={transform:"translate(0, 0)"},Rt[".".concat(It.CONTAINER,"[data-position='bottom-right']")]={transform:"translate(-100%, 0)"},Rt[".".concat(It.ARROW)]={width:"4px",height:"4px",transform:"rotate(45deg)","background-color":"rgba(0, 0, 0)",position:"absolute","z-index":-1},Rt[".".concat(It.CONTAINER,"[data-position='top']")]={transform:"translate(-50%, calc(-100% - 5px))"},Rt["[data-position='top'] .".concat(It.ARROW)]={bottom:"-2px"},Rt[".".concat(It.CONTAINER,"[data-position='left']")]={transform:"translate(calc(-100% - 5px), -50%)"},Rt["[data-position='left'] .".concat(It.ARROW)]={right:"-2px"},Rt[".".concat(It.CONTAINER,"[data-position='right']")]={transform:"translate(5px, -50%)"},Rt["[data-position='right'] .".concat(It.ARROW)]={left:"-2px"},Rt[".".concat(It.CONTAINER,"[data-position='bottom']")]={transform:"translate(-50%, 5px)"},Rt["[data-position='bottom'] .".concat(It.ARROW)]={top:"-2px"},Rt[".".concat(It.CONTAINER,"[data-position='top-left']")]={transform:"translate(0, calc(-100% - 5px))"},Rt["[data-position='top-left'] .".concat(It.ARROW)]={left:"10px",bottom:"-2px"},Rt[".".concat(It.CONTAINER,"[data-position='top-right']")]={transform:"translate(-100%, calc(-100% - 5px))"},Rt["[data-position='top-right'] .".concat(It.ARROW)]={right:"10px",bottom:"-2px"},Rt[".".concat(It.CONTAINER,"[data-position='left-top']")]={transform:"translate(calc(-100% - 5px), 0)"},Rt["[data-position='left-top'] .".concat(It.ARROW)]={right:"-2px",top:"8px"},Rt[".".concat(It.CONTAINER,"[data-position='left-bottom']")]={transform:"translate(calc(-100% - 5px), -100%)"},Rt["[data-position='left-bottom'] .".concat(It.ARROW)]={right:"-2px",bottom:"8px"},Rt[".".concat(It.CONTAINER,"[data-position='right-top']")]={transform:"translate(5px, 0)"},Rt["[data-position='right-top'] .".concat(It.ARROW)]={left:"-2px",top:"8px"},Rt[".".concat(It.CONTAINER,"[data-position='right-bottom']")]={transform:"translate(5px, -100%)"},Rt["[data-position='right-bottom'] .".concat(It.ARROW)]={left:"-2px",bottom:"8px"},Rt[".".concat(It.CONTAINER,"[data-position='bottom-left']")]={transform:"translate(0, 5px)"},Rt["[data-position='bottom-left'] .".concat(It.ARROW)]={top:"-2px",left:"8px"},Rt[".".concat(It.CONTAINER,"[data-position='bottom-right']")]={transform:"translate(-100%, 5px)"},Rt["[data-position='bottom-right'] .".concat(It.ARROW)]={top:"-2px",right:"8px"},Rt),Ahe=void 0;function lhe(r,e,t,n,i,a){if(i===void 0&&(i=!1),a===void 0&&(a=!1),a)return[r,e];var s=t.getBoundingClientRect(),o=s.x,A=s.y,l=s.width,u=s.height;switch(n){case"top":return i?[o+l/2,A]:[r,A];case"left":return i?[o,A+u/2]:[o,e];case"bottom":return i?[o+l/2,A+u]:[r,A+u];case"right":return i?[o+l,A+u/2]:[o+l,e];case"top-right":case"right-top":return[o+l,A];case"left-bottom":case"bottom-left":return[o,A+u];case"right-bottom":case"bottom-right":return[o+l,A+u];case"top-left":case"left-top":default:return[o,A]}}var uhe=function(r){var e;return function(){for(var t=[],n=0;n<arguments.length;n++)t[n]=arguments[n];return e||(e=r.apply(Ahe,t)),e}};function che(r){var e=r&&document.getElementById(r);return e||(e=document.createElement("div"),e.setAttribute("id",r),document.body.appendChild(e)),e}function dhe(r){var e=uhe(che)(r);return e}var hhe=(function(r){Lt(e,r);function e(t){var n=r.call(this,li({style:{id:ohe}},e.defaultOptions,t))||this;return n.visibility="visible",n.map=new Map,n.domStyles="",n.initShape(),n.render(n.attributes,n),n}return Object.defineProperty(e.prototype,"visible",{get:function(){return this.visibility==="visible"},enumerable:!1,configurable:!0}),e.prototype.render=function(t,n){this.visibility=this.style.visibility,this.updatePoptipElement()},e.prototype.update=function(t){this.attr(li({},this.style,t)),this.render(this.attributes,this)},e.prototype.bind=function(t,n){var i=this;if(t){var a=this.style.text,s=function(A){var l=t,u=i.style,c=a;if(n){var d=typeof n=="function"?n.call(null,A):n,h=d.html,f=d.target,p=qn(d,["html","target"]);u=G8({},i.style,p),(f||f===!1)&&(l=f),typeof h=="string"&&(c=h)}var g=u.position,v=u.arrowPointAtCenter,m=u.follow,y=u.offset;if(l){var w=A,B=w.clientX,x=w.clientY,k=Z(lhe(B,x,l,g,v,m),2),_=k[0],T=k[1];i.showTip(_,T,{text:c,position:g,offset:y})}else i.hideTip()},o=function(){i.hideTip()};t.addEventListener("mousemove",s),t.addEventListener("mouseleave",o),this.map.set(t,[s,o])}},e.prototype.unbind=function(t){if(this.map.has(t)){var n=Z(this.map.get(t)||[],2),i=n[0],a=n[1];i&&t.removeEventListener("mousemove",i),a&&t.removeEventListener("mouseleave",a),this.map.delete(t)}},e.prototype.clear=function(){this.container.innerHTML=""},e.prototype.destroy=function(){var t=this,n;it([],Z(this.map.keys()),!1).forEach(function(i){return t.unbind(i)}),(n=this.container)===null||n===void 0||n.remove(),r.prototype.destroy.call(this)},e.prototype.showTip=function(t,n,i){var a=Gr(i,"text");if(!(a&&typeof a!="string")&&(this.applyStyles(),t&&n&&i)){var s=i.offset,o=i.position;if(o&&this.container.setAttribute("data-position",o),this.setOffsetPosition(t,n,s),typeof a=="string"){var A=this.container.querySelector(".".concat(It.TEXT));A&&(A.innerHTML=a)}this.visibility="visible",this.container.style.visibility="visible"}},e.prototype.hideTip=function(){this.visibility="hidden",this.container.style.visibility="hidden"},e.prototype.getContainer=function(){return this.container},e.prototype.getClassName=function(){var t=this.style.containerClassName;return"".concat(It.CONTAINER).concat(t?" ".concat(t):"")},e.prototype.initShape=function(){var t=this,n=this.style.id;this.container=dhe(n),this.container.className=this.getClassName(),this.container.addEventListener("mousemove",function(){return t.showTip()}),this.container.addEventListener("mouseleave",function(){return t.hideTip()})},e.prototype.updatePoptipElement=function(){var t=this.container;this.clear();var n=this.style,i=n.id,a=n.template,s=n.text;this.container.setAttribute("id",i),this.container.className=this.getClassName();var o='<span class="'.concat(It.ARROW,'"></span>');t.innerHTML=o,ln(a)?t.innerHTML+=a:a&&$8(a)&&t.appendChild(a),s&&(t.getElementsByClassName(It.TEXT)[0].textContent=s),this.applyStyles(),this.container.style.visibility=this.visibility},e.prototype.applyStyles=function(){var t=yr({},VL,this.style.domStyles),n=Object.entries(t).reduce(function(a,s){var o=Z(s,2),A=o[0],l=o[1],u=Object.entries(l).reduce(function(c,d){var h=Z(d,2),f=h[0],p=h[1];return"".concat(c).concat(f,": ").concat(p,";")},"");return"".concat(a).concat(A,"{").concat(u,"}")},"");if(this.domStyles!==n){this.domStyles=n;var i=this.container.querySelector("style");i&&this.container.removeChild(i),i=document.createElement("style"),i.innerHTML=n,this.container.appendChild(i)}},e.prototype.setOffsetPosition=function(t,n,i){i===void 0&&(i=this.style.offset);var a=Z(i,2),s=a[0],o=s===void 0?0:s,A=a[1],l=A===void 0?0:A;this.container.style.left="".concat(t+o,"px"),this.container.style.top="".concat(n+l,"px")},e.tag="poptip",e.defaultOptions={style:{x:0,y:0,width:0,height:0,target:null,visibility:"hidden",text:"",position:"top",follow:!1,offset:[0,0],domStyles:VL,template:'<div class="'.concat(It.TEXT,'"></div>')}},e})(Yn),ur=Qa({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"),fhe={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 ghe(r){var e=r.querySelector(ur.marker.class);return e?e.style:{}}var phe=(function(r){Lt(e,r);function e(t,n){var i=r.call(this,t,{span:[1,1],marker:function(){return new us({style:{r:6}})},markerSize:10,labelFill:"#646464",valueFill:"#646464",labelFontSize:12,valueFontSize:12,labelTextBaseline:"middle",valueTextBaseline:"middle"})||this;return i.keyFields={},i.keyFields=n||{},i}return Object.defineProperty(e.prototype,"showValue",{get:function(){var t=this.attributes.valueText;return t?typeof t=="string"||typeof t=="number"?t!=="":typeof t=="function"?!0:t.attr("text")!=="":!1},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"actualSpace",{get:function(){var t=this.labelGroup,n=this.valueGroup,i=this.attributes,a=i.markerSize,s=i.focus,o=i.focusMarkerSize,A=t.node().getBBox(),l=A.width,u=A.height,c=n.node().getBBox(),d=c.width,h=c.height,f=s?o??12:0;return{markerWidth:a,labelWidth:l,valueWidth:d,focusWidth:f,height:Math.max(a,u,h)}},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"span",{get:function(){var t=this.attributes.span;if(!t)return[1,1];var n=Z(Wr(t),2),i=n[0],a=n[1],s=this.showValue?a:0,o=i+s;return[i/o,s/o]},enumerable:!1,configurable:!0}),e.prototype.setAttribute=function(t,n){r.prototype.setAttribute.call(this,t,n)},Object.defineProperty(e.prototype,"shape",{get:function(){var t,n=this.attributes,i=n.markerSize,a=n.width,s=this.actualSpace,o=s.markerWidth,A=s.focusWidth,l=s.height,u=this.actualSpace,c=u.labelWidth,d=u.valueWidth,h=Z(this.spacing,3),f=h[0],p=h[1],g=h[2];if(a){var v=a-i-f-p-A-g,m=Z(this.span,2),y=m[0],w=m[1];t=Z([y*v,w*v],2),c=t[0],d=t[1]}var B=o+c+d+f+p+A+g;return{width:B,height:l,markerWidth:o,labelWidth:c,valueWidth:d,focusWidth:A}},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"spacing",{get:function(){var t=this.attributes,n=t.spacing,i=t.focus;if(!n)return[0,0,0];var a=Z(Wr(n),3),s=a[0],o=a[1],A=a[2];return[s,this.showValue?o:0,i?A:0]},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"layout",{get:function(){var t=this.shape,n=t.markerWidth,i=t.labelWidth,a=t.valueWidth,s=t.focusWidth,o=t.width,A=t.height,l=Z(this.spacing,3),u=l[0],c=l[1],d=l[2];return{height:A,width:o,markerWidth:n,labelWidth:i,valueWidth:a,focusWidth:s,position:[n/2,n+u,n+i+u+c,n+i+a+u+c+d+s/2]}},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"scaleSize",{get:function(){var t=ghe(this.markerGroup.node()),n=this.attributes,i=n.markerSize,a=n.markerStrokeWidth,s=a===void 0?t.strokeWidth:a,o=n.markerLineWidth,A=o===void 0?t.lineWidth:o,l=n.markerStroke,u=l===void 0?t.stroke:l,c=+(s||A||(u?1:0))*Math.sqrt(2),d=this.markerGroup.node().getBBox(),h=d.width,f=d.height;return(1-c/Math.max(h,f))*i},enumerable:!1,configurable:!0}),e.prototype.renderMarker=function(t){var n=this,i=this.attributes,a=i.marker,s=i.classNamePrefix,o=_t(this.attributes,"marker");this.markerGroup=t.maybeAppendByClassName(ur.markerGroup,"g").style("zIndex",0),Ni(!!a,this.markerGroup,function(){var A,l=n.markerGroup.node(),u=(A=l.childNodes)===null||A===void 0?void 0:A[0],c=mi(ur.marker.name,yi.marker,s),d=typeof a=="string"?new un({style:{symbol:a},className:c}):a();if(u)if(d.nodeName===u.nodeName)u instanceof un?u.update(Ie(Ie({},o),{symbol:a})):(Uue(u,d),nt(u).styles(o));else{if(u.remove(),!(d instanceof un)){var f=mi(ur.marker.name,yi.marker,s);d.className=f}nt(d).styles(o),l.appendChild(d)}else{if(!(d instanceof un)){var h=mi(ur.marker.name,yi.marker,s);d.className=h,nt(d).styles(o)}l.appendChild(d)}n.markerGroup.node().scale(1/n.markerGroup.node().getScale()[0]);var p=hC(n.markerGroup.node(),n.scaleSize);n.markerGroup.node().style._transform="scale(".concat(p,")")})},e.prototype.renderLabel=function(t){var n=_t(this.attributes,"label"),i=n.text,a=qn(n,["text"]),s=this.attributes.classNamePrefix;this.labelGroup=t.maybeAppendByClassName(ur.labelGroup,"g").style("zIndex",0);var o=mi(ur.label.name,yi.label,s),A=this.labelGroup.maybeAppendByClassName(ur.label,function(){return Rs(i)});A.node().setAttribute("class",o),A.styles(a)},e.prototype.renderValue=function(t){var n=this,i=_t(this.attributes,"value"),a=i.text,s=qn(i,["text"]),o=this.attributes.classNamePrefix;this.valueGroup=t.maybeAppendByClassName(ur.valueGroup,"g").style("zIndex",0),Ni(this.showValue,this.valueGroup,function(){var A=mi(ur.value.name,yi.value,o),l=n.valueGroup.maybeAppendByClassName(ur.value,function(){return Rs(a)});l.node().setAttribute("class",A),l.styles(s)})},e.prototype.createPoptip=function(){var t=this.attributes.poptip,n=t||{};n.render;var i=qn(n,["render"]),a=new hhe({style:yr(fhe,i)});return this.poptipGroup=a,a},e.prototype.bindPoptip=function(t){var n=this,i=this.attributes.poptip;if(i){var a=this.poptipGroup||this.createPoptip();a.bind(t,function(){var s=n.attributes,o=s.labelText,A=s.valueText,l=s.markerFill,u=typeof o=="string"?o:o==null?void 0:o.attr("text"),c=typeof A=="string"?A:A==null?void 0:A.attr("text");if(typeof i.render=="function")return{html:i.render(Ie(Ie({},n.keyFields),{label:u,value:c,color:l}))};var d="";return(typeof u=="string"||typeof u=="number")&&(d+='<div class="component-poptip-label">'.concat(u,"</div>")),(typeof c=="string"||typeof c=="number")&&(d+='<div class="component-poptip-value">'.concat(c,"</div>")),{html:d}})}},e.prototype.renderFocus=function(t){var n=this,i=this.attributes,a=i.focus,s=i.focusMarkerSize,o=i.classNamePrefix,A={x:0,y:0,size:s,opacity:.6,symbol:"focus",stroke:"#aaaaaa",lineWidth:1};Bt(a)||(this.focusGroup=t.maybeAppendByClassName(ur.focusGroup,"g").style("zIndex",0),Ni(a,this.focusGroup,function(){var l=mi(ur.focus.name,yi.focusIcon,o),u=new un({style:Ie(Ie({},A),{symbol:"focus"}),className:l}),c=new us({style:{r:A.size/2,fill:"transparent"}}),d=n.focusGroup.node();d.appendChild(c),d.appendChild(u),u.update({opacity:0}),t.node().addEventListener("pointerenter",function(){u.update({opacity:1})}),t.node().addEventListener("pointerleave",function(){u.update({opacity:0})})}))},e.prototype.renderPoptip=function(t){var n=this,i=this.attributes.poptip;if(i){var a=t.maybeAppendByClassName(ur.value,"g").node(),s=t.maybeAppendByClassName(ur.label,"g").node();[a,s].forEach(function(o){o&&n.bindPoptip(o)})}},e.prototype.renderBackground=function(t){var n=this.shape,i=n.width,a=n.height,s=_t(this.attributes,"background");this.background=t.maybeAppendByClassName(ur.backgroundGroup,"g").style("zIndex",-1);var o=this.background.maybeAppendByClassName(ur.background,"rect");o.styles(Ie({width:i,height:a},s));var A=this.attributes.classNamePrefix,l=A===void 0?"":A;if(l){var u=mi(ur.background.name,yi.background,l);o.node().setAttribute("class",u)}},e.prototype.adjustLayout=function(){var t=this.layout,n=t.labelWidth,i=t.valueWidth,a=t.height,s=Z(t.position,4),o=s[0],A=s[1],l=s[2],u=s[3],c=a/2;this.markerGroup.styles({transform:"translate(".concat(o,", ").concat(c,")").concat(this.markerGroup.node().style._transform)}),this.labelGroup.styles({transform:"translate(".concat(A,", ").concat(c,")")}),this.focusGroup&&this.focusGroup.styles({transform:"translate(".concat(u,", ").concat(c,")")}),fE(this.labelGroup.select(ur.label.class).node(),Math.ceil(n)),this.showValue&&(this.valueGroup.styles({transform:"translate(".concat(l,", ").concat(c,")")}),fE(this.valueGroup.select(ur.value.class).node(),Math.ceil(i)))},e.prototype.render=function(t,n){var i=nt(n),a=t.x,s=a===void 0?0:a,o=t.y,A=o===void 0?0:o;i.styles({transform:"translate(".concat(s,", ").concat(A,")")}),this.renderMarker(i),this.renderLabel(i),this.renderValue(i),this.renderBackground(i),this.renderPoptip(i),this.renderFocus(i),this.adjustLayout()},e})(Yn),Yo=Qa({page:"item-page",navigator:"navigator",item:"item"},"items"),KL=function(r,e,t){return t===void 0&&(t=!0),r?e(r):t},vhe=(function(r){Lt(e,r);function e(t){var n=r.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:tv,mouseenter:tv,mouseleave:tv})||this;return n.navigatorShape=[0,0],n}return Object.defineProperty(e.prototype,"pageViews",{get:function(){return this.navigator.getContainer()},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"grid",{get:function(){var t=this.attributes,n=t.gridRow,i=t.gridCol,a=t.data;if(!n&&!i)throw new Error("gridRow and gridCol can not be set null at the same time");return n&&i?[n,i]:n?[n,a.length]:[a.length,i]},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"renderData",{get:function(){var t=this.attributes,n=t.data,i=t.layout,a=t.poptip,s=t.focus,o=t.focusMarkerSize,A=t.classNamePrefix,l=_t(this.attributes,"item"),u=n.map(function(c,d){var h=c.id,f=h===void 0?d:h,p=c.label,g=c.value;return{id:"".concat(f),index:d,style:Ie({layout:i,labelText:p,valueText:g,poptip:a,focus:s,focusMarkerSize:o,classNamePrefix:A},Object.fromEntries(Object.entries(l).map(function(v){var m=Z(v,2),y=m[0],w=m[1];return[y,Pi(w,[c,d,n])]})))}});return u},enumerable:!1,configurable:!0}),e.prototype.getGridLayout=function(){var t=this,n=this.attributes,i=n.orientation,a=n.width,s=n.rowPadding,o=n.colPadding,A=Z(this.navigatorShape,1),l=A[0],u=Z(this.grid,2),c=u[0],d=u[1],h=d*c,f=0;return this.pageViews.children.map(function(p,g){var v,m,y=Math.floor(g/h),w=g%h,B=t.ifHorizontal(d,c),x=[Math.floor(w/B),w%B];i==="vertical"&&x.reverse();var k=Z(x,2),_=k[0],T=k[1],F=(a-l-(d-1)*o)/d,I=p.getBBox().height,O=Z([0,0],2),P=O[0],G=O[1];return i==="horizontal"?(v=Z([f,_*(I+s)],2),P=v[0],G=v[1],f=T===d-1?0:f+F+o):(m=Z([T*(F+o),f],2),P=m[0],G=m[1],f=_===c-1?0:f+I+s),{page:y,index:g,row:_,col:T,pageIndex:w,width:F,height:I,x:P,y:G}})},e.prototype.getFlexLayout=function(){var t=this.attributes,n=t.width,i=t.height,a=t.rowPadding,s=t.colPadding,o=Z(this.navigatorShape,1),A=o[0],l=Z(this.grid,2),u=l[0],c=l[1],d=Z([n-A,i],2),h=d[0],f=d[1],p=Z([0,0,0,0,0,0,0,0],8),g=p[0],v=p[1],m=p[2],y=p[3],w=p[4],B=p[5],x=p[6],k=p[7];return this.pageViews.children.map(function(_,T){var F,I,O,P,G=_.getBBox(),ee=G.width,te=G.height,N=x===0?0:s,K=x+N+ee;if(K<=h&&KL(w,function(be){return be<c}))return F=Z([x+N,k,K],3),g=F[0],v=F[1],x=F[2],{width:ee,height:te,x:g,y:v,page:m,index:T,pageIndex:y++,row:B,col:w++};I=Z([B+1,0,0,k+te+a],4),B=I[0],w=I[1],x=I[2],k=I[3];var J=k+te;return J<=f&&KL(B,function(be){return be<u})?(O=Z([x,k,ee],3),g=O[0],v=O[1],x=O[2],{width:ee,height:te,x:g,y:v,page:m,index:T,pageIndex:y++,row:B,col:w++}):(P=Z([0,0,ee,0,m+1,0,0,0],8),g=P[0],v=P[1],x=P[2],k=P[3],m=P[4],y=P[5],B=P[6],w=P[7],{width:ee,height:te,x:g,y:v,page:m,index:T,pageIndex:y++,row:B,col:w++})})},Object.defineProperty(e.prototype,"itemsLayout",{get:function(){this.navigatorShape=[0,0];var t=this.attributes.layout==="grid"?this.getGridLayout:this.getFlexLayout,n=t.call(this);return n.slice(-1)[0].page>0?(this.navigatorShape=[55,0],t.call(this)):n},enumerable:!1,configurable:!0}),e.prototype.ifHorizontal=function(t,n){var i=this.attributes.orientation;return bE(i,t,n)},e.prototype.flattenPage=function(t){t.querySelectorAll(Yo.item.class).forEach(function(n){t.appendChild(n)}),t.querySelectorAll(Yo.page.class).forEach(function(n){var i=t.removeChild(n);i.destroy()})},e.prototype.renderItems=function(t){var n=this.attributes,i=n.click,a=n.mouseenter,s=n.mouseleave,o=n.classNamePrefix;this.flattenPage(t);var A=this.dispatchCustomEvent.bind(this),l=mi(Yo.item.name,yi.item,o);nt(t).selectAll(Yo.item.class).data(this.renderData,function(u){return u.id}).join(function(u){return u.append(function(c){var d=c.style,h=qn(c,["style"]);return new phe({style:d},h)}).attr("className",l).on("click",function(){i==null||i(this),A("itemClick",{item:this})}).on("pointerenter",function(){a==null||a(this),A("itemMouseenter",{item:this})}).on("pointerleave",function(){s==null||s(this),A("itemMouseleave",{item:this})})},function(u){return u.each(function(c){var d=c.style;this.update(d)})},function(u){return u.remove()})},e.prototype.relayoutNavigator=function(){var t,n=this.attributes,i=n.layout,a=n.width,s=((t=this.pageViews.children[0])===null||t===void 0?void 0:t.getBBox().height)||0,o=Z(this.navigatorShape,2),A=o[0],l=o[1];this.navigator.update(i==="grid"?{pageWidth:a-A,pageHeight:s-l}:{})},e.prototype.adjustLayout=function(){var t=this,n=Object.entries(bue(this.itemsLayout,"page")).map(function(a){var s=Z(a,2),o=s[0],A=s[1];return{page:o,layouts:A}}),i=it([],Z(this.navigator.getContainer().children),!1);n.forEach(function(a){var s=a.layouts,o=t.pageViews.appendChild(new Mr({className:Yo.page.name}));s.forEach(function(A){var l=A.x,u=A.y,c=A.index,d=A.width,h=A.height,f=i[c];o.appendChild(f),Yu(f,"__layout__",A),f.update({x:l,y:u,width:d,height:h})})}),this.relayoutNavigator()},e.prototype.renderNavigator=function(t){var n=this.attributes,i=n.orientation,a=n.classNamePrefix,s=_t(this.attributes,"nav"),o=yr({orientation:i,classNamePrefix:a},s),A=this;return t.selectAll(Yo.navigator.class).data(["nav"]).join(function(l){return l.append(function(){return new she({style:o})}).attr("className",Yo.navigator.name).each(function(){A.navigator=this})},function(l){return l.each(function(){this.update(o)})},function(l){return l.remove()}),this.navigator},e.prototype.getBBox=function(){return this.navigator.getBBox()},e.prototype.render=function(t,n){var i=this.attributes.data;if(!(!i||i.length===0)){var a=this.renderNavigator(nt(n));this.renderItems(a.getContainer()),this.adjustLayout()}},e.prototype.dispatchCustomEvent=function(t,n){var i=new gr(t,{detail:n});this.dispatchEvent(i)},e})(Yn),mhe=(function(r){Lt(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.update=function(t){this.attr(t)},e})(xA),yhe=(function(r){Lt(e,r);function e(t){return r.call(this,t,the)||this}return e.prototype.renderTitle=function(t,n,i){var a=this.attributes,s=a.showTitle,o=a.titleText,A=a.classNamePrefix,l=_t(this.attributes,"title"),u=Z(Qs(l),2),c=u[0],d=u[1];this.titleGroup=t.maybeAppendByClassName(qo.titleGroup,"g").styles(d);var h=Ie(Ie({width:n,height:i},c),{text:s?o:"",classNamePrefix:A});this.title=this.titleGroup.maybeAppendByClassName(qo.title,function(){return new ahe({style:h})}).update(h)},e.prototype.renderCustom=function(t){var n=this.attributes.data,i={innerHTML:this.attributes.render(n),pointerEvents:"auto"};t.maybeAppendByClassName(qo.html,function(){return new mhe({className:qo.html.name,style:i})}).update(i)},e.prototype.renderItems=function(t,n){var i=n.x,a=n.y,s=n.width,o=n.height,A=_t(this.attributes,"title",!0),l=Z(Qs(A),2),u=l[0],c=l[1],d=Ie(Ie({},u),{width:s,height:o,x:0,y:0});this.itemsGroup=t.maybeAppendByClassName(qo.itemsGroup,"g").styles(Ie(Ie({},c),{transform:"translate(".concat(i,", ").concat(a,")")}));var h=this;this.itemsGroup.selectAll(qo.items.class).data(["items"]).join(function(f){return f.append(function(){return new vhe({style:d})}).attr("className",qo.items.name).each(function(){h.items=nt(this)})},function(f){return f.update(d)},function(f){return f.remove()})},e.prototype.adjustLayout=function(){var t=this.attributes.showTitle;if(t){var n=this.title.node().getAvailableSpace(),i=n.x,a=n.y;this.itemsGroup.node().style.transform="translate(".concat(i,", ").concat(a,")")}},Object.defineProperty(e.prototype,"availableSpace",{get:function(){var t=this.attributes,n=t.showTitle,i=t.width,a=t.height;return n?this.title.node().getAvailableSpace():new Bi(0,0,i,a)},enumerable:!1,configurable:!0}),e.prototype.getBBox=function(){var t,n,i=(t=this.title)===null||t===void 0?void 0:t.node(),a=(n=this.items)===null||n===void 0?void 0:n.node();return!i||!a?r.prototype.getBBox.call(this):nhe(i,a)},e.prototype.render=function(t,n){var i=this.attributes,a=i.width,s=i.height,o=i.x,A=o===void 0?0:o,l=i.y,u=l===void 0?0:l,c=i.classNamePrefix,d=i.render,h=nt(n),f=n.className||"legend-category";c?n.attr("className","".concat(f," ").concat(c,"legend")):n.className||n.attr("className","legend-category"),n.style.transform="translate(".concat(A,", ").concat(u,")"),d?this.renderCustom(h):(this.renderTitle(h,a,s),this.renderItems(h,this.availableSpace),this.adjustLayout())},e})(Yn),whe={backgroundFill:"#262626",backgroundLineCap:"round",backgroundLineWidth:1,backgroundStroke:"#333",backgroundZIndex:-1,formatter:function(r){return r.toString()},labelFill:"#fff",labelFontSize:12,labelTextBaseline:"middle",padding:[2,4],position:"right",radius:0,zIndex:999},Qb=Qa({background:"background",labelGroup:"label-group",label:"label"},"indicator"),bhe=(function(r){Lt(e,r);function e(t){var n=r.call(this,t,whe)||this;return n.point=[0,0],n.group=n.appendChild(new Mr({})),n.isMutationObserved=!0,n}return e.prototype.renderBackground=function(){if(this.label){var t=this.attributes,n=t.position,i=t.padding,a=Z(Wr(i),4),s=a[0],o=a[1],A=a[2],l=a[3],u=this.label.node().getLocalBounds(),c=u.min,d=u.max,h=new Bi(c[0]-l,c[1]-s,d[0]+o-c[0]+l,d[1]+A-c[1]+s),f=this.getPath(n,h),p=_t(this.attributes,"background");this.background=nt(this.group).maybeAppendByClassName(Qb.background,"path").styles(Ie(Ie({},p),{d:f})),this.group.appendChild(this.label.node())}},e.prototype.renderLabel=function(){var t=this.attributes,n=t.formatter,i=t.labelText,a=_t(this.attributes,"label"),s=Z(Qs(a),2),o=s[0],A=s[1];o.text;var l=qn(o,["text"]);if(this.label=nt(this.group).maybeAppendByClassName(Qb.labelGroup,"g").styles(A),!!i){var u=this.label.maybeAppendByClassName(Qb.label,function(){return Rs(n(i))}).style("text",n(i).toString());u.selectAll("text").styles(l)}},e.prototype.adjustLayout=function(){var t=Z(this.point,2),n=t[0],i=t[1],a=this.attributes,s=a.x,o=a.y;this.group.attr("transform","translate(".concat(s-n,", ").concat(o-i,")"))},e.prototype.getPath=function(t,n){var i=this.attributes.radius,a=n.x,s=n.y,o=n.width,A=n.height,l=[["M",a+i,s],["L",a+o-i,s],["A",i,i,0,0,1,a+o,s+i],["L",a+o,s+A-i],["A",i,i,0,0,1,a+o-i,s+A],["L",a+i,s+A],["A",i,i,0,0,1,a,s+A-i],["L",a,s+i],["A",i,i,0,0,1,a+i,s],["Z"]],u={top:4,right:6,bottom:0,left:2},c=u[t],d=this.createCorner([l[c].slice(-2),l[c+1].slice(-2)]);return l.splice.apply(l,it([c+1,1],Z(d),!1)),l[0][0]="M",l},e.prototype.createCorner=function(t,n){n===void 0&&(n=10);var i=.8,a=Pue.apply(void 0,it([],Z(t),!1)),s=Z(t,2),o=Z(s[0],2),A=o[0],l=o[1],u=Z(s[1],2),c=u[0],d=u[1],h=Z(a?[c-A,[A,c]]:[d-l,[l,d]],2),f=h[0],p=Z(h[1],2),g=p[0],v=p[1],m=f/2,y=f/Math.abs(f),w=n*y,B=w/2,x=w*Math.sqrt(3)/2*i,k=Z([g,g+m-B,g+m,g+m+B,v],5),_=k[0],T=k[1],F=k[2],I=k[3],O=k[4];return a?(this.point=[F,l-x],[["L",_,l],["L",T,l],["L",F,l-x],["L",I,l],["L",O,l]]):(this.point=[A+x,F],[["L",A,_],["L",A,T],["L",A+x,F],["L",A,I],["L",A,O]])},e.prototype.applyVisibility=function(){var t=this.attributes.visibility;t==="hidden"?Fa(this):$c(this)},e.prototype.bindEvents=function(){this.label.on(Vt.BOUNDS_CHANGED,this.renderBackground)},e.prototype.render=function(){this.renderLabel(),this.renderBackground(),this.adjustLayout(),this.applyVisibility()},e})(Yn);function BE(r){return r===void 0&&(r=""),{CONTAINER:"".concat(r,"tooltip"),TITLE:"".concat(r,"tooltip-title"),LIST:"".concat(r,"tooltip-list"),LIST_ITEM:"".concat(r,"tooltip-list-item"),NAME:"".concat(r,"tooltip-list-item-name"),MARKER:"".concat(r,"tooltip-list-item-marker"),NAME_LABEL:"".concat(r,"tooltip-list-item-name-label"),VALUE:"".concat(r,"tooltip-list-item-value"),CROSSHAIR_X:"".concat(r,"tooltip-crosshair-x"),CROSSHAIR_Y:"".concat(r,"tooltip-crosshair-y")}}var jL={overflow:"hidden","white-space":"nowrap","text-overflow":"ellipsis"};function Bhe(r){var e;r===void 0&&(r="");var t=BE(r);return e={},e[".".concat(t.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"},e[".".concat(t.TITLE)]={color:"rgba(0, 0, 0, 0.45)"},e[".".concat(t.LIST)]={margin:"0px","list-style-type":"none",padding:"0px"},e[".".concat(t.LIST_ITEM)]={"list-style-type":"none",display:"flex","line-height":"2em","align-items":"center","justify-content":"space-between","white-space":"nowrap"},e[".".concat(t.MARKER)]={width:"8px",height:"8px","border-radius":"50%",display:"inline-block","margin-right":"4px"},e[".".concat(t.NAME)]={display:"flex","align-items":"center","max-width":"216px"},e[".".concat(t.NAME_LABEL)]=Ie({flex:1},jL),e[".".concat(t.VALUE)]=Ie({display:"inline-block",float:"right",flex:1,"text-align":"right","min-width":"28px","margin-left":"30px",color:"rgba(0, 0, 0, 0.85)"},jL),e[".".concat(t.CROSSHAIR_X)]={position:"absolute",width:"1px","background-color":"rgba(0, 0, 0, 0.25)"},e[".".concat(t.CROSSHAIR_Y)]={position:"absolute",height:"1px","background-color":"rgba(0, 0, 0, 0.25)"},e}var Ehe=(function(r){Lt(e,r);function e(t){var n=this,i,a,s=(a=(i=t.style)===null||i===void 0?void 0:i.template)===null||a===void 0?void 0:a.prefixCls,o=BE(s);return n=r.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="'.concat(o.CONTAINER,'"></div>'),title:'<div class="'.concat(o.TITLE,'"></div>'),item:'<li class="'.concat(o.LIST_ITEM,`" data-index={index}>
235
- <span class="`).concat(o.NAME,`">
236
- <span class="`).concat(o.MARKER,`" style="background:{color}"></span>
237
- <span class="`).concat(o.NAME_LABEL,`" title="{name}">{name}</span>
238
- </span>
239
- <span class="`).concat(o.VALUE,`" title="{value}">{value}</span>
240
- </li>`)},style:Bhe(s)})||this,n.timestamp=-1,n.prevCustomContentKey=n.attributes.contentKey,n.initShape(),n.render(n.attributes,n),n}return Object.defineProperty(e.prototype,"HTMLTooltipElement",{get:function(){return this.element},enumerable:!1,configurable:!0}),e.prototype.getContainer=function(){return this.element},Object.defineProperty(e.prototype,"elementSize",{get:function(){var t=this.element.offsetWidth,n=this.element.offsetHeight;return{width:t,height:n}},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"HTMLTooltipItemsElements",{get:function(){var t=this.attributes,n=t.data,i=t.template;return n.map(function(a,s){var o=a.name,A=o===void 0?"":o,l=a.color,u=l===void 0?"black":l,c=a.index,d=qn(a,["name","color","index"]),h=Ie({name:A,color:u,index:c??s},d);return lB(N8(i.item,h))})},enumerable:!1,configurable:!0}),e.prototype.render=function(t,n){this.renderHTMLTooltipElement(),this.updatePosition()},e.prototype.destroy=function(){var t;(t=this.element)===null||t===void 0||t.remove(),r.prototype.destroy.call(this)},e.prototype.show=function(t,n){var i=this;if(t!==void 0&&n!==void 0){var a=this.element.style.visibility==="hidden",s=function(){i.attributes.x=t??i.attributes.x,i.attributes.y=n??i.attributes.y,i.updatePosition()};a?this.closeTransition(s):s()}this.element.style.visibility="visible"},e.prototype.hide=function(t,n){t===void 0&&(t=0),n===void 0&&(n=0);var i=this.attributes.enterable;i&&this.isCursorEntered(t,n)||(this.element.style.visibility="hidden")},e.prototype.initShape=function(){var t=this.attributes.template;this.element=lB(t.container),this.id&&this.element.setAttribute("id",this.id)},e.prototype.renderCustomContent=function(){if(!(this.prevCustomContentKey!==void 0&&this.prevCustomContentKey===this.attributes.contentKey)){this.prevCustomContentKey=this.attributes.contentKey;var t=this.attributes.content;t&&(typeof t=="string"?this.element.innerHTML=t:mL(this.element,t))}},e.prototype.renderHTMLTooltipElement=function(){var t,n,i=this.attributes,a=i.template,s=i.title,o=i.enterable,A=i.style,l=i.content,u=BE(a.prefixCls),c=this.element;if(this.element.style.pointerEvents=o?"auto":"none",l)this.renderCustomContent();else{s?(c.innerHTML=a.title,c.getElementsByClassName(u.TITLE)[0].innerHTML=s):(n=(t=c.getElementsByClassName(u.TITLE))===null||t===void 0?void 0:t[0])===null||n===void 0||n.remove();var d=this.HTMLTooltipItemsElements,h=document.createElement("ul");h.className=u.LIST,mL(h,d);var f=this.element.querySelector(".".concat(u.LIST));f?f.replaceWith(h):c.appendChild(h)}Due(c,A)},e.prototype.getRelativeOffsetFromCursor=function(t){var n=this.attributes,i=n.position,a=n.offset,s=t||i,o=s.split("-"),A={left:[-1,0],right:[1,0],top:[0,-1],bottom:[0,1]},l=this.elementSize,u=l.width,c=l.height,d=[-u/2,-c/2];return o.forEach(function(h){var f=Z(d,2),p=f[0],g=f[1],v=Z(A[h],2),m=v[0],y=v[1];d=[p+(u/2+a[0])*m,g+(c/2+a[1])*y]}),d},e.prototype.setOffsetPosition=function(t){var n=Z(t,2),i=n[0],a=n[1],s=this.attributes,o=s.x,A=o===void 0?0:o,l=s.y,u=l===void 0?0:l,c=s.container,d=c.x,h=c.y;this.element.style.left="".concat(+A+d+i,"px"),this.element.style.top="".concat(+u+h+a,"px")},e.prototype.updatePosition=function(){var t=this.attributes.showDelay,n=t===void 0?60:t,i=Date.now();this.timestamp>0&&i-this.timestamp<n||(this.timestamp=i,this.setOffsetPosition(this.autoPosition(this.getRelativeOffsetFromCursor())))},e.prototype.autoPosition=function(t){var n=Z(t,2),i=n[0],a=n[1],s=this.attributes,o=s.x,A=s.y,l=s.bounding,u=s.position;if(!l)return[i,a];var c=this.element,d=c.offsetWidth,h=c.offsetHeight,f=Z([+o+i,+A+a],2),p=f[0],g=f[1],v={left:"right",right:"left",top:"bottom",bottom:"top"},m=l.x,y=l.y,w=l.width,B=l.height,x={left:p<m,right:p+d>m+w,top:g<y,bottom:g+h>y+B},k=[];u.split("-").forEach(function(T){x[T]?k.push(v[T]):k.push(T)});var _=k.join("-");return this.getRelativeOffsetFromCursor(_)},e.prototype.isCursorEntered=function(t,n){if(this.element){var i=this.element.getBoundingClientRect(),a=i.x,s=i.y,o=i.width,A=i.height;return new Bi(a,s,o,A).isPointIn(t,n)}return!1},e.prototype.closeTransition=function(t){var n=this,i=this.element.style.transition;this.element.style.transition="none",t(),setTimeout(function(){n.element.style.transition=i},10)},e.tag="tooltip",e})(Yn),xhe=(function(r){Lt(e,r);function e(t){var n=r.call(this,yr({},e.defaultOptions,t))||this;return n.hoverColor="#f5f5f5",n.selectedColor="#e6f7ff",n.background=n.appendChild(new jr({})),n.label=n.background.appendChild(new Mr({})),n}return Object.defineProperty(e.prototype,"padding",{get:function(){return Wr(this.style.padding)},enumerable:!1,configurable:!0}),e.prototype.renderLabel=function(){var t=this.style,n=t.label,i=t.value,a=_t(this.attributes,"label");nt(this.label).maybeAppend(".label",function(){return Rs(n)}).attr("className","label").styles(a),this.label.attr("__data__",i)},e.prototype.renderBackground=function(){var t=this.label.getBBox(),n=Z(this.padding,4),i=n[0],a=n[1],s=n[2],o=n[3],A=t.width,l=t.height,u=A+o+a,c=l+i+s,d=_t(this.attributes,"background"),h=this.style,f=h.width,p=f===void 0?0:f,g=h.height,v=g===void 0?0:g,m=h.selected;this.background.attr(Ie(Ie({},d),{width:Math.max(u,p),height:Math.max(c,v),fill:m?this.selectedColor:"#fff"})),this.label.attr({transform:"translate(".concat(o,", ").concat((c-l)/2,")")})},e.prototype.render=function(){this.renderLabel(),this.renderBackground()},e.prototype.bindEvents=function(){var t=this;this.addEventListener("pointerenter",function(){t.style.selected||t.background.attr("fill",t.hoverColor)}),this.addEventListener("pointerleave",function(){t.style.selected||t.background.attr("fill",t.style.backgroundFill)});var n=this;this.addEventListener("click",function(){var i=t.style,a=i.label,s=i.value,o=i.onClick;o==null||o(s,{label:a,value:s},n)})},e.defaultOptions={style:{value:"",label:"",cursor:"pointer"}},e})(Yn),Che=(function(r){Lt(e,r);function e(t){var n,i,a=r.call(this,yr({},e.defaultOptions,t))||this;a.currentValue=(n=e.defaultOptions.style)===null||n===void 0?void 0:n.defaultValue,a.isPointerInSelect=!1,a.select=a.appendChild(new jr({className:"select",style:{cursor:"pointer",width:0,height:0}})),a.dropdown=a.appendChild(new jr({className:"dropdown"}));var s=a.style.defaultValue;return s&&(!((i=a.style.options)===null||i===void 0)&&i.some(function(o){return o.value===s}))&&(a.currentValue=s),a}return e.prototype.setValue=function(t){this.currentValue=t,this.render()},e.prototype.getValue=function(){return this.currentValue},Object.defineProperty(e.prototype,"dropdownPadding",{get:function(){return Wr(this.style.dropdownPadding)},enumerable:!1,configurable:!0}),e.prototype.renderSelect=function(){var t=this,n,i=this.style,a=i.x,s=i.y,o=i.width,A=i.height,l=i.bordered,u=i.showDropdownIcon,c=_t(this.attributes,"select"),d=_t(this.attributes,"placeholder");this.select.attr(Ie(Ie({x:a,y:s,width:o,height:A},c),{fill:"#fff",strokeWidth:l?1:0}));var h=this.dropdownPadding,f=10;u&&nt(this.select).maybeAppend(".dropdown-icon","path").style("d","M-5,-3.5 L0,3.5 L5,-3.5").style("transform","translate(".concat(a+o-f-h[1]-h[3],", ").concat(s+A/2,")")).style("lineWidth",1).style("stroke",this.select.style.stroke);var p=(n=this.style.options)===null||n===void 0?void 0:n.find(function(y){return y.value===t.currentValue}),g=Ie({x:a+h[3]},d);nt(this.select).selectAll(".placeholder").data(p?[]:[1]).join(function(y){return y.append("text").attr("className","placeholder").styles(g).style("y",function(){var w=this.getBBox();return s+(A-w.height)/2})},function(y){return y.styles(g)},function(y){return y.remove()});var v=_t(this.attributes,"optionLabel"),m=Ie({x:a+h[3]},v);nt(this.select).selectAll(".value").data(p?[p]:[]).join(function(y){return y.append(function(w){return Rs(w.label)}).attr("className","value").styles(m).style("y",function(){var w=this.getBBox();return s+(A-w.height)/2})},function(y){return y.styles(m)},function(y){return y.remove()})},e.prototype.renderDropdown=function(){var t=this,n,i,a=this.style,s=a.x,o=a.y,A=a.width,l=a.height,u=a.options,c=a.onSelect,d=a.open,h=_t(this.attributes,"dropdown"),f=_t(this.attributes,"option"),p=this.dropdownPadding;nt(this.dropdown).maybeAppend(".dropdown-container","g").attr("className","dropdown-container").selectAll(".dropdown-item").data(u,function(m){return m.value}).join(function(m){return m.append(function(y){return new xhe({className:"dropdown-item",style:Ie(Ie(Ie({},y),f),{width:A-p[1]-p[3],selected:y.value===t.currentValue,onClick:function(w,B,x){t.setValue(w),c==null||c(w,B,x),t.dispatchEvent(new gr("change",{detail:{value:w,option:B,item:x}})),Fa(t.dropdown)}})})}).each(function(y,w){var B,x=(B=this.parentNode)===null||B===void 0?void 0:B.children,k=x.reduce(function(_,T,F){return F<w&&(_+=T.getBBox().height),_},0);this.attr("transform","translate(".concat(p[3],", ").concat(p[0]+k,")"))})},function(m){return m.update(function(y){return{selected:y.value===t.currentValue}})},function(m){return m.remove()});var g=(i=(n=this.dropdown.getElementsByClassName("dropdown-container"))===null||n===void 0?void 0:n[0])===null||i===void 0?void 0:i.getBBox(),v=h.spacing;this.dropdown.attr(Ie({transform:"translate(".concat(s,", ").concat(o+l+v,")"),width:g.width+p[1]+p[3],height:g.height+p[0]+p[2]},h)),!d&&Fa(this.dropdown)},e.prototype.render=function(){this.renderSelect(),this.renderDropdown()},e.prototype.bindEvents=function(){var t=this;this.addEventListener("click",function(n){n.stopPropagation()}),this.select.addEventListener("click",function(){t.dropdown.style.visibility==="visible"?Fa(t.dropdown):$c(t.dropdown)}),this.addEventListener("pointerenter",function(){t.isPointerInSelect=!0}),this.addEventListener("pointerleave",function(){t.isPointerInSelect=!1}),document==null||document.addEventListener("click",function(){t.isPointerInSelect||Fa(t.dropdown)})},e.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"}},e})(Yn),Da=(function(r){Lt(e,r);function e(t){var n=r.call(this,yr({},{style:{backgroundOpacity:e.backgroundOpacities.default}},e.defaultOptions,t))||this;return n.showBackground=!0,n.background=n.appendChild(new jr({})),n.icon=n.appendChild(new Mr({})),n}return Object.defineProperty(e.prototype,"label",{get:function(){return"BaseIcon"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"lineWidth",{get:function(){return Math.log10(this.attributes.size)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"padding",{get:function(){return Wr(this.attributes.size/5)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"iconSize",{get:function(){var t=this.attributes.size,n=Z(this.padding,4),i=n[0],a=n[1],s=n[2],o=n[3];return Math.max(t-Math.max(o+a,i+s),this.lineWidth*2+1)},enumerable:!1,configurable:!0}),e.prototype.renderBackground=function(){var t=this.attributes,n=t.x,i=t.y,a=t.size,s=a/2,o=_t(this.attributes,"background");this.background.attr(Ie({x:n-s,y:i-s,width:a,height:a},o))},e.prototype.showIndicator=function(){if(this.label){var t=this.attributes.size,n=this.background.getBBox(),i=n.x,a=n.y;this.indicator.update({x:i+t/2,y:a-5,labelText:this.label,visibility:"visible"})}},e.prototype.hideIndicator=function(){this.indicator.update({visibility:"hidden"})},e.prototype.connectedCallback=function(){var t;r.prototype.connectedCallback.call(this);var n=this.attributes.size,i=this.background.getBBox(),a=i.x,s=i.y,o=(t=this.ownerDocument)===null||t===void 0?void 0:t.defaultView;o&&(this.indicator=o.appendChild(new bhe({style:{x:a+n/2,y:s-n/2,visibility:"hidden",position:"top",radius:3,zIndex:100}})))},e.prototype.disconnectedCallback=function(){this.indicator.destroy()},e.prototype.render=function(){this.renderIcon(),this.showBackground&&this.renderBackground()},e.prototype.bindEvents=function(){var t=this,n=this.attributes.onClick;if(this.addEventListener("click",function(){n==null||n(t)}),this.showBackground){var i=function(){return t.background.attr({opacity:e.backgroundOpacities.default})},a=function(){return t.background.attr({opacity:e.backgroundOpacities.hover})},s=function(){return t.background.attr({opacity:e.backgroundOpacities.active})};this.addEventListener("pointerenter",function(){a(),t.showIndicator()}),this.addEventListener("pointerleave",function(){i(),t.hideIndicator()}),this.addEventListener("pointerdown",function(){s()}),this.addEventListener("pointerup",function(){i()})}},e.tag="IconBase",e.defaultOptions={style:{x:0,y:0,size:10,color:"#565758",backgroundRadius:4,backgroundFill:"#e2e2e2"}},e.backgroundOpacities={default:0,hover:.8,active:1},e})(Yn),fc=function(r,e){return e===void 0&&(e="#565758"),new Ai({style:{fill:e,d:"M ".concat(r,",").concat(r," L -").concat(r,",0 L ").concat(r,",-").concat(r," Z"),transformOrigin:"center"}})},She=(function(r){Lt(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return e.prototype.arcPath=function(t,n,i){var a=Z([i,i],2),s=a[0],o=a[1],A=function(p){return[t+i*Math.cos(p),n+i*Math.sin(p)]},l=Z(A(-5/4*Math.PI),2),u=l[0],c=l[1],d=Z(A(1/4*Math.PI),2),h=d[0],f=d[1];return"M".concat(u,",").concat(c,",A").concat(s,",").concat(o,",0,1,1,").concat(h,",").concat(f)},Object.defineProperty(e.prototype,"label",{get:function(){return"重置"},enumerable:!1,configurable:!0}),e.prototype.renderIcon=function(){var t=this.attributes,n=t.x,i=t.y,a=t.color,s=this.iconSize,o=this.lineWidth,A=o+.5;nt(this.icon).maybeAppend(".reset","path").styles({stroke:a,lineWidth:o,d:this.arcPath(n,i,s/2-o),markerStart:fc(A,a)})},e})(Da),_he=(function(r){Lt(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(e.prototype,"label",{get:function(){return"快退"},enumerable:!1,configurable:!0}),e.prototype.renderIcon=function(){var t=this.attributes,n=t.x,i=t.y,a=t.color,s=this.iconSize,o=s/2,A=s/2/Math.pow(3,.5),l=[[n,i],[n,i-A],[n-o,i],[n,i+A],[n,i],[n+o,i-A],[n+o,i+A],[n,i]];nt(this.icon).maybeAppend(".backward","polygon").styles({points:l,fill:a})},e})(Da),khe=(function(r){Lt(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(e.prototype,"label",{get:function(){return"快进"},enumerable:!1,configurable:!0}),e.prototype.renderIcon=function(){var t=this.attributes,n=t.x,i=t.y,a=t.color,s=this.iconSize,o=s/2,A=s/2/Math.pow(3,.5),l=[[n,i],[n,i-A],[n+o,i],[n,i+A],[n,i],[n-o,i-A],[n-o,i+A],[n,i]];nt(this.icon).maybeAppend(".forward","polygon").styles({points:l,fill:a})},e})(Da),The=(function(r){Lt(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(e.prototype,"label",{get:function(){return"播放"},enumerable:!1,configurable:!0}),e.prototype.renderIcon=function(){var t=this.attributes,n=t.x,i=t.y,a=t.color,s=this.iconSize,o=s/3*Math.pow(3,.5)*.8,A=[[n+o,i],[n-o/2,i-s/2*.8],[n-o/2,i+s/2*.8],[n+o,i]];nt(this.icon).maybeAppend(".play","polygon").styles({points:A,fill:a})},e})(Da),Fhe=(function(r){Lt(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(e.prototype,"label",{get:function(){return"暂停"},enumerable:!1,configurable:!0}),e.prototype.renderIcon=function(){var t=this.attributes,n=t.x,i=t.y,a=t.color,s=this.iconSize,o=s/3,A=[[n-o,i-s/2],[n-o,i+s/2],[n-o/2,i+s/2],[n-o/2,i-s/2],[n-o,i-s/2],[n+o/2,i-s/2],[n+o/2,i+s/2],[n+o,i+s/2],[n+o,i-s/2]];nt(this.icon).maybeAppend(".pause","polygon").styles({points:A,fill:a})},e})(Da),Mhe=(function(r){Lt(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(e.prototype,"label",{get:function(){return"范围时间"},enumerable:!1,configurable:!0}),e.prototype.renderIcon=function(){var t=this.attributes,n=t.x,i=t.y,a=t.color,s=this,o=s.iconSize,A=s.lineWidth,l=A;nt(this.icon).maybeAppend(".left-line","line").styles({x1:n-o/2,y1:i-o/2,x2:n-o/2,y2:i+o/2,stroke:a,lineWidth:A}),nt(this.icon).maybeAppend(".right-line","line").styles({x1:n+o/2,y1:i-o/2,x2:n+o/2,y2:i+o/2,stroke:a,lineWidth:A}),nt(this.icon).maybeAppend(".left-arrow","line").styles({x1:n,y1:i,x2:n-o/2+l*2,y2:i,stroke:a,lineWidth:A,markerEnd:fc(A*2,a)}),nt(this.icon).maybeAppend(".right-arrow","line").styles({x1:n,y1:i,x2:n+o/2-l*2,y2:i,stroke:a,lineWidth:A,markerEnd:fc(A*2,a)})},e})(Da),Ihe=(function(r){Lt(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(e.prototype,"label",{get:function(){return"单一时间"},enumerable:!1,configurable:!0}),e.prototype.renderIcon=function(){var t=this.attributes,n=t.x,i=t.y,a=t.color,s=this,o=s.iconSize,A=s.lineWidth;nt(this.icon).maybeAppend(".line","line").styles({x1:n,y1:i-o/2,x2:n,y2:i+o/2,stroke:a,lineWidth:A});var l=A;nt(this.icon).maybeAppend(".left-arrow","line").styles({x1:n-o/2-l*2,y1:i,x2:n-l*2,y2:i,stroke:a,lineWidth:A,markerEnd:fc(A*2,a)}),nt(this.icon).maybeAppend(".right-arrow","line").styles({x1:n+o/2+l*2,y1:i,x2:n+l*2,y2:i,stroke:a,lineWidth:A,markerEnd:fc(A*2,a)})},e})(Da),x4=function(r){return[[-r/2,-r/2],[-r/2,r/2],[r/2,r/2]]},Ohe=(function(r){Lt(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(e.prototype,"label",{get:function(){return"折线图"},enumerable:!1,configurable:!0}),e.prototype.renderIcon=function(){var t=this.attributes,n=t.x,i=t.y,a=t.color,s=this,o=s.iconSize,A=s.lineWidth,l=A,u=(o-l*2-A)/4,c=(o-l*2-A)/2,d=Z([n-o/2+l,i+o/2-l*2],2),h=d[0],f=d[1];nt(this.icon).maybeAppend(".coordinate","polyline").styles({points:x4(o).map(function(p){var g=Z(p,2),v=g[0],m=g[1];return[v+n,m+i]}),stroke:a,lineWidth:A}),nt(this.icon).maybeAppend(".line","polyline").styles({points:[[h,f],[h+u,f-c],[h+u*2,f],[h+u*4,f-c*2]],stroke:a,lineWidth:A})},e})(Da),Lhe=(function(r){Lt(e,r);function e(){return r!==null&&r.apply(this,arguments)||this}return Object.defineProperty(e.prototype,"label",{get:function(){return"条形图"},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"data",{get:function(){return[1,4,2,4,3]},enumerable:!1,configurable:!0}),e.prototype.renderIcon=function(){var t=this.data,n=this.attributes,i=n.x,a=n.y,s=n.color,o=this,A=o.iconSize,l=o.lineWidth,u=l,c=(A-u)/t.length,d=(A-u*2)/4,h=Z([i-A/2+u*2,a+A/2-u],2),f=h[0],p=h[1];nt(this.icon).maybeAppend(".coordinate","polyline").styles({points:x4(A).map(function(g){var v=Z(g,2),m=v[0],y=v[1];return[m+i,y+a]}),stroke:s,lineWidth:l}),nt(this.icon).maybeAppend(".bars","g").selectAll(".column").data(this.data.map(function(g,v){return{value:g,index:v}})).join(function(g){return g.append("line").attr("className","column").style("x1",function(v){var m=v.index;return f+c*m}).style("y1",p).style("x2",function(v){var m=v.index;return f+c*m}).style("y2",function(v){var m=v.value;return p-d*m}).styles({y1:p,stroke:s,lineWidth:l})})},e})(Da),Nhe=(function(r){Lt(e,r);function e(t){var n=r.call(this,yr({},{style:{color:"#d8d9d9"}},t))||this;return n.showBackground=!1,n}return e.prototype.renderIcon=function(){var t=this.attributes,n=t.x,i=t.y,a=t.color,s=this,o=s.iconSize,A=s.lineWidth;nt(this.icon).maybeAppend(".split","line").styles({x1:n,y1:i-o/2,x2:n,y2:i+o/2,stroke:a,lineWidth:A})},e})(Da),EE=(function(r){Lt(e,r);function e(){var t=r.apply(this,it([],Z(arguments),!1))||this;return t.showBackground=!1,t}return Object.defineProperty(e.prototype,"padding",{get:function(){return Wr(0)},enumerable:!1,configurable:!0}),e.prototype.renderIcon=function(){var t=this.iconSize,n=this.attributes,i=n.x,a=n.y,s=n.speed,o=s===void 0?1:s,A=DE(this.attributes,["x","y","transform","transformOrigin","width","height","size","color","speed"]),l=jn(t,20,1/0),u=20,c=Ie(Ie({},A),{x:i-l/2,y:a-u/2,width:l,height:u,defaultValue:o,bordered:!1,showDropdownIcon:!1,selectRadius:2,dropdownPadding:this.padding,dropdownRadius:2,dropdownSpacing:t/5,placeholderFontSize:t/2,optionPadding:0,optionLabelFontSize:t/2,optionBackgroundRadius:1,options:[{label:"1x",value:1},{label:"1.5x",value:1.5},{label:"2x",value:2}]});nt(this.icon).maybeAppend(".speed",function(){return new Che({style:c})}).attr("className","speed").each(function(){this.update(c)})},e.tag="SpeedSelect",e})(Da),EC=(function(r){Lt(e,r);function e(t){var n=r.call(this,t)||this;return n.icon=n.appendChild(new Mr({})),n.currentType=n.attributes.type,n}return e.prototype.getType=function(){return this.currentType},e.prototype.render=function(){var t=this,n=this.attributes;n.onChange;var i=qn(n,["onChange"]);nt(this.icon).selectAll(".icon").data([this.currentType]).join(function(a){return a.append(function(s){var o,A=(o=t.toggles.find(function(l){var u=Z(l,1),c=u[0];return c===s}))===null||o===void 0?void 0:o[1];if(!A)throw new Error("Invalid type: ".concat(s));return new A({})}).attr("className","icon").styles(i,!1).update({})},function(a){return a.styles({restStyles:i}).update({})},function(a){return a.remove()})},e.prototype.bindEvents=function(){var t=this,n=this.attributes.onChange;this.addEventListener("click",function(i){i.preventDefault(),i.stopPropagation();var a=(t.toggles.findIndex(function(o){var A=Z(o,1),l=A[0];return l===t.currentType})+1)%t.toggles.length,s=t.toggles[a][0];n==null||n(t.currentType),t.currentType=s,t.render()})},e.tag="ToggleIcon",e})(Yn),xE=(function(r){Lt(e,r);function e(t){var n=r.call(this,yr({},{style:{type:"play"}},t))||this;return n.toggles=[["play",The],["pause",Fhe]],n}return e})(EC),CE=(function(r){Lt(e,r);function e(t){var n=r.call(this,yr({},{style:{type:"range"}},t))||this;return n.toggles=[["range",Mhe],["value",Ihe]],n}return e})(EC),SE=(function(r){Lt(e,r);function e(t){var n=r.call(this,yr({},{style:{type:"column"}},t))||this;return n.toggles=[["line",Ohe],["column",Lhe]],n}return e})(EC),Phe={reset:She,speed:EE,backward:_he,playPause:xE,forward:khe,selectionType:CE,chartType:SE,split:Nhe},Uhe=(function(r){Lt(e,r);function e(t){var n=r.call(this,yr({},e.defaultOptions,t))||this;return n.background=n.appendChild(new jr({})),n.functions=n.appendChild(new Mr({})),n}return Object.defineProperty(e.prototype,"padding",{get:function(){return Wr(this.attributes.padding)},enumerable:!1,configurable:!0}),e.prototype.renderBackground=function(){var t=this.style,n=t.x,i=t.y,a=t.width,s=t.height,o=_t(this.attributes,"background");this.background.attr(Ie({x:n,y:i,width:a,height:s},o))},e.prototype.renderFunctions=function(){var t=this,n,i=this.attributes,a=i.functions,s=i.iconSize,o=i.iconSpacing,A=i.x,l=i.y,u=i.width,c=i.height,d=i.align,h=Z(this.padding,4),f=h[1],p=h[3],g=a.reduce(function(y,w){return y.length&&w.length?y.concat.apply(y,it(["split"],Z(w),!1)):y.concat.apply(y,it([],Z(w),!1))},[]),v=g.length*(s+o)-o,m={left:p+s/2,center:(u-v)/2+s/2,right:u-v-p-f+s/2}[d]||0;(n=this.speedSelect)===null||n===void 0||n.destroy(),this.functions.removeChildren(),g.forEach(function(y,w){var B,x=Phe[y],k={x:A+w*(s+o)+m,y:l+c/2,size:s};if(x===EE?(k.speed=t.attributes.speed,k.onSelect=function(T){return t.handleFunctionChange(y,{value:T})}):[xE,CE,SE].includes(x)?(k.onChange=function(T){return t.handleFunctionChange(y,{value:T})},x===xE&&(k.type=t.attributes.state==="play"?"pause":"play"),x===CE&&(k.type=t.attributes.selectionType==="range"?"value":"range"),x===SE&&(k.type=t.attributes.chartType==="line"?"column":"line")):k.onClick=function(){return t.handleFunctionChange(y,{value:y})},x===EE){var _=(B=t.ownerDocument)===null||B===void 0?void 0:B.defaultView;_&&(t.speedSelect=new x({style:Ie(Ie({},k),{zIndex:100})}),_.appendChild(t.speedSelect))}else t.functions.appendChild(new x({style:k}))})},e.prototype.disconnectedCallback=function(){var t;r.prototype.disconnectedCallback.call(this),(t=this.speedSelect)===null||t===void 0||t.destroy()},e.prototype.render=function(){this.renderBackground(),this.renderFunctions()},e.prototype.handleFunctionChange=function(t,n){var i=this.attributes.onChange;i==null||i(t,n)},e.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"]]}},e})(Yn),Rhe=(function(r){Lt(e,r);function e(t){var n=r.call(this,yr({},e.defaultOptions,t))||this;return n.bindEvents(),n}return e.prototype.bindEvents=function(){var t=this;this.addEventListener("mouseenter",function(){t.attr("lineWidth",Math.ceil(+(t.style.r||0)/2))}),this.addEventListener("mouseleave",function(){t.attr("lineWidth",0)})},e.defaultOptions={style:{r:5,fill:"#3f7cf7",lineWidth:0,stroke:"#3f7cf7",strokeOpacity:.5,cursor:"pointer"}},e})(us),Qhe=(function(r){Lt(e,r);function e(t){return r.call(this,yr({},e.defaultOptions,t))||this}return e.prototype.renderBackground=function(){var t=this.attributes,n=t.x,i=t.y,a=t.width,s=t.height,o=_t(this.attributes,"background");nt(this).maybeAppend("background","rect").attr("className","background").styles(Ie({x:n-a/2,y:i-s/2,width:a,height:s},o))},e.prototype.renderIcon=function(){var t=this.attributes,n=t.x,i=t.y,a=t.iconSize,s=_t(this.attributes,"icon"),o=1,A=a/2;nt(this).maybeAppend("icon-left-line","line").attr("className","icon-left-line").styles(Ie({x1:n-o,y1:i-A,x2:n-o,y2:i+A},s)),nt(this).maybeAppend("icon-right-line","line").attr("className","icon-right-line").styles(Ie({x1:n+o,y1:i-A,x2:n+o,y2:i+A},s))},e.prototype.renderBorder=function(){var t=this.attributes,n=t.x,i=t.y,a=t.width,s=t.height,o=t.type,A=_t(this.attributes,"border"),l=o==="start"?+a/2:-a/2;nt(this).maybeAppend("border","line").attr("className","border").styles(Ie({x1:l+n,y1:i-s/2,x2:l+n,y2:i+s/2},A))},e.prototype.render=function(){this.renderBackground(),this.renderIcon(),this.renderBorder()},e.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}},e})(Yn);function Dhe(r,e){return typeof r=="number"?C4(r):Hhe(r,e)}function Hhe(r,e){var t=new Date(r);switch(e){case"half-hour":case"hour":case"four-hour":return[0,6,12,18].includes(t.getHours())&&t.getMinutes()===0?Ci(t,`HH:mm
241
- YYYY-MM-DD`):Ci(t,"HH:mm");case"half-day":return t.getHours()<12?`AM
242
- `.concat(Ci(t,"YYYY-MM-DD")):"PM";case"day":return[1,10,20].includes(t.getDate())?Ci(t,`DD
243
- YYYY-MM`):Ci(t,"DD");case"week":return t.getDate()<=7?Ci(t,`DD
244
- YYYY-MM`):Ci(t,"DD");case"month":return[0,6].includes(t.getMonth())?Ci(t,`MM月
245
- YYYY`):Ci(t,"MM月");case"season":return[0].includes(t.getMonth())?Ci(t,`MM月
246
- YYYY`):Ci(t,"MM月");case"year":return Ci(t,"YYYY");default:return Ci(t,"YYYY-MM-DD HH:mm")}}function C4(r){var e=String(Math.floor(r/3600)).padStart(2,"0"),t=String(Math.floor(r%3600/60)).padStart(2,"0"),n=String(Math.floor(r%60)).padStart(2,"0");return r<3600?"".concat(t,":").concat(n):"".concat(e,":").concat(t,":").concat(n)}var $he=(function(r){Lt(e,r);function e(t){var n=r.call(this,yr({},e.defaultOptions,t))||this;n.axis=n.appendChild(new Xde({style:{type:"linear",startPos:[0,0],endPos:[0,0],data:[],showArrow:!1,animate:!1}})),n.timeline=n.appendChild(new Yce({style:{onChange:function(c){n.handleSliderChange(c)}}})),n.controller=n.appendChild(new Uhe({})),n.states={},n.handleSliderChange=function(c){var d=(function(){var h=n.states.values;return Array.isArray(h)?it([],Z(h),!1):h})();n.setBySliderValues(c),n.dispatchOnChange(d)};var i=n.attributes,a=i.selectionType,s=i.chartType,o=i.speed,A=i.state,l=i.playMode,u=i.values;return n.states={chartType:s,playMode:l,selectionType:a,speed:o,state:A},n.setByTimebarValues(u),n}return Object.defineProperty(e.prototype,"data",{get:function(){var t=this.attributes.data,n=function(i,a){return i.time<a.time?-1:i.time>a.time?1:0};return t.sort(n)},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"space",{get:function(){var t=this.attributes,n=t.x,i=t.y,a=t.width,s=t.height,o=t.type,A=t.controllerHeight,l=jn(+s-A,0,+s),u=new Bi(n,i+ +s-A,+a,A),c,d=0;o==="chart"?(d=35,c=new Bi(n,i+l-d,+a,d)):c=new Bi;var h=o==="time"?10:l,f=new Bi(n,i+(o==="time"?l:l-h),+a,h-d);return{axisBBox:c,controllerBBox:u,timelineBBox:f}},enumerable:!1,configurable:!0}),e.prototype.setBySliderValues=function(t){var n,i,a=this.data,s=Z(Array.isArray(t)?t:[0,t],2),o=s[0],A=s[1],l=a.length,u=a[Math.floor(o*l)],c=a[Math.ceil(A*l)-(Array.isArray(t)?0:1)];this.states.values=[(n=u==null?void 0:u.time)!==null&&n!==void 0?n:a[0].time,(i=c==null?void 0:c.time)!==null&&i!==void 0?i:1/0]},e.prototype.setByTimebarValues=function(t){var n,i,a,s=this.data,o=Z(Array.isArray(t)?t:[void 0,t],2),A=o[0],l=o[1],u=s.find(function(d){var h=d.time;return h===A}),c=s.find(function(d){var h=d.time;return h===l});this.states.values=[(n=u==null?void 0:u.time)!==null&&n!==void 0?n:(i=s[0])===null||i===void 0?void 0:i.time,(a=c==null?void 0:c.time)!==null&&a!==void 0?a:1/0]},e.prototype.setByIndex=function(t){var n,i,a,s,o=this.data,A=Z(t,2),l=A[0],u=A[1];this.states.values=[(i=(n=o[l])===null||n===void 0?void 0:n.time)!==null&&i!==void 0?i:o[0].time,(s=(a=this.data[u])===null||a===void 0?void 0:a.time)!==null&&s!==void 0?s:1/0]},Object.defineProperty(e.prototype,"sliderValues",{get:function(){var t=this.states,n=t.values,i=t.selectionType,a=Z(Array.isArray(n)?n:[void 0,n],2),s=a[0],o=a[1],A=this.data,l=A.length,u=i==="value",c=function(){var h=A.findIndex(function(f){var p=f.time;return p===s});return u?0:h>-1?h/l:0},d=function(){if(o===1/0)return 1;var h=A.findIndex(function(f){var p=f.time;return p===o});return h>-1?h/l:u?.5:1};return[c(),d()]},enumerable:!1,configurable:!0}),Object.defineProperty(e.prototype,"values",{get:function(){var t=this.states,n=t.values,i=t.selectionType,a=Z(Array.isArray(n)?n:[this.data[0].time,n],2),s=a[0],o=a[1];return i==="value"?o:[s,o]},enumerable:!1,configurable:!0}),e.prototype.getDatumByRatio=function(t){var n=this.data,i=n.length,a=Math.floor(t*(i-1));return n[a]},Object.defineProperty(e.prototype,"chartHandleIconShape",{get:function(){var t=this.states.selectionType,n=this.space.timelineBBox.height;return t==="range"?function(i){return new Qhe({style:{type:i,height:n,iconSize:n/6}})}:function(){return new vA({style:{x1:0,y1:-n/2,x2:0,y2:n/2,lineWidth:2,stroke:"#c8c8c8"}})}},enumerable:!1,configurable:!0}),e.prototype.getChartStyle=function(t){var n=this,i=t.x,a=t.y,s=t.width,o=t.height,A=this.states,l=A.selectionType,u=A.chartType,c=this.data,d=this.attributes,h=d.type,f=d.labelFormatter,p=_t(this.attributes,"chart");p.type;var g=qn(p,["type"]),v=l==="range";if(h==="time")return Ie({handleIconShape:function(){return new Rhe({})},selectionFill:"#2e7ff8",selectionFillOpacity:1,showLabelOnInteraction:!0,handleLabelDy:v?-15:0,autoFitLabel:v,handleSpacing:v?-15:0,trackFill:"#edeeef",trackLength:s,trackOpacity:.5,trackRadius:o/2,trackSize:o/2,type:l,values:this.sliderValues,formatter:function(w){if(f)return f(w);var B=n.getDatumByRatio(w).time;return typeof B=="number"?C4(B):Ci(B,"YYYY-MM-DD HH:mm:ss")},transform:"translate(".concat(i,", ").concat(a,")"),zIndex:1},g);var m=l==="range"?5:0,y=c.map(function(w){var B=w.value;return B});return Ie({handleIconOffset:m,handleIconShape:this.chartHandleIconShape,selectionFill:"#fff",selectionFillOpacity:.5,selectionType:"invert",sparklineSpacing:.1,sparklineColumnLineWidth:0,sparklineColor:"#d4e5fd",sparklineAreaOpacity:1,sparklineAreaLineWidth:0,sparklineData:y,sparklineType:u,sparklineScale:.8,trackLength:s,trackSize:o,type:l,values:this.sliderValues,transform:"translate(".concat(i,", ").concat(a,")"),zIndex:1},g)},e.prototype.renderChart=function(t){t===void 0&&(t=this.space.timelineBBox),this.timeline.update(this.getChartStyle(t))},e.prototype.updateSelection=function(){this.timeline.setValues(this.sliderValues,!0),this.handleSliderChange(this.sliderValues)},e.prototype.getAxisStyle=function(t){var n=this.data,i=this.attributes,a=i.interval,s=i.labelFormatter,o=_t(this.attributes,"axis"),A=t.x,l=t.y,u=t.width,c=it(it([],Z(n),!1),[{time:0}],!1).map(function(h,f,p){var g=h.time;return{label:"".concat(g),value:f/(p.length-1),time:g}}),d=Ie({startPos:[A,l],endPos:[A+u,l],data:c,labelFilter:function(h,f){return f<c.length-1},labelFormatter:function(h){var f=h.time;return s?s(f):Dhe(f,a)}},o);return d},e.prototype.renderAxis=function(t){t===void 0&&(t=this.space.axisBBox);var n=this.attributes.type;n==="chart"&&this.axis.update(this.getAxisStyle(t))},e.prototype.renderController=function(t){t===void 0&&(t=this.space.controllerBBox);var n=this.attributes.type,i=this.states,a=i.state,s=i.speed,o=i.selectionType,A=i.chartType,l=_t(this.attributes,"controller"),u=this,c=Ie(Ie(Ie({},t),{iconSize:20,speed:s,state:a,selectionType:o,chartType:A,onChange:function(d,h){var f=h.value;switch(d){case"reset":u.internalReset();break;case"speed":u.handleSpeedChange(f);break;case"backward":u.internalBackward();break;case"playPause":f==="play"?u.internalPlay():u.internalPause();break;case"forward":u.internalForward();break;case"selectionType":u.handleSelectionTypeChange(f);break;case"chartType":u.handleChartTypeChange(f);break}}}),l);n==="time"&&(c.functions=[["reset","speed"],["backward","playPause","forward"],["selectionType"]]),this.controller.update(c)},e.prototype.dispatchOnChange=function(t){var n=this.data,i=this.attributes.onChange,a=this.states,s=a.values,o=a.selectionType,A=Z(s,2),l=A[0],u=A[1],c=u===1/0?n.at(-1).time:u,d=o==="range"?[l,c]:c,h=function(f,p){return Array.isArray(f)?Array.isArray(p)?f[0]===p[0]&&(f[1]===p[1]||f[1]===1/0||p[1]===1/0):!1:Array.isArray(p)?!1:f===p};(!t||!h(t,d))&&(i==null||i(o==="range"?[l,c]:c))},e.prototype.internalReset=function(t){var n,i,a=this.states.selectionType;this.internalPause(),this.setBySliderValues(a==="range"?[0,1]:[0,0]),this.renderController(),this.updateSelection(),t||((i=(n=this.attributes)===null||n===void 0?void 0:n.onReset)===null||i===void 0||i.call(n),this.dispatchOnChange())},e.prototype.reset=function(){this.internalReset()},e.prototype.moveSelection=function(t,n){var i=this.data,a=i.length,s=this.states,o=s.values,A=s.selectionType,l=s.playMode,u=Z(o,2),c=u[0],d=u[1],h=i.findIndex(function(y){var w=y.time;return w===c}),f=i.findIndex(function(y){var w=y.time;return w===d});f===-1&&(f=a);var p=t==="backward"?-1:1,g;A==="range"?l==="acc"?(g=[h,f+p],p===-1&&h===f&&(g=[h,a])):g=[h+p,f+p]:g=[h,f+p];var v=function(y){var w=Z(y.sort(function(_,T){return _-T}),2),B=w[0],x=w[1],k=function(_){return jn(_,0,a)};return x>a?A==="value"?[0,0]:l==="acc"?[k(B),k(B)]:[0,k(x-B)]:B<0?l==="acc"?[0,k(x)]:[k(B+a-x),a]:[k(B),k(x)]},m=v(g);return this.setByIndex(m),this.updateSelection(),m},e.prototype.internalBackward=function(t){var n,i,a=this.moveSelection("backward",t);return t||((i=(n=this.attributes)===null||n===void 0?void 0:n.onBackward)===null||i===void 0||i.call(n),this.dispatchOnChange()),a},e.prototype.backward=function(){this.internalBackward()},e.prototype.internalPlay=function(t){var n=this,i,a,s=this.data,o=this.attributes.loop,A=this.states.speed,l=A===void 0?1:A;this.playInterval=window.setInterval(function(){var u=n.internalForward();u[1]===s.length&&!o&&(n.internalPause(),n.renderController())},1e3/l),this.states.state="play",!t&&((a=(i=this.attributes)===null||i===void 0?void 0:i.onPlay)===null||a===void 0||a.call(i))},e.prototype.play=function(){this.internalPlay()},e.prototype.internalPause=function(t){var n,i;clearInterval(this.playInterval),this.states.state="pause",!t&&((i=(n=this.attributes)===null||n===void 0?void 0:n.onPause)===null||i===void 0||i.call(n))},e.prototype.pause=function(){this.internalPause()},e.prototype.internalForward=function(t){var n,i,a=this.moveSelection("forward",t);return t||((i=(n=this.attributes)===null||n===void 0?void 0:n.onForward)===null||i===void 0||i.call(n),this.dispatchOnChange()),a},e.prototype.forward=function(){this.internalForward()},e.prototype.handleSpeedChange=function(t){var n,i;this.states.speed=t;var a=this.states.state;a==="play"&&(this.internalPause(!0),this.internalPlay(!0)),(i=(n=this.attributes)===null||n===void 0?void 0:n.onSpeedChange)===null||i===void 0||i.call(n,t)},e.prototype.handleSelectionTypeChange=function(t){var n,i;this.states.selectionType=t,this.renderChart(),(i=(n=this.attributes)===null||n===void 0?void 0:n.onSelectionTypeChange)===null||i===void 0||i.call(n,t)},e.prototype.handleChartTypeChange=function(t){var n,i;this.states.chartType=t,this.renderChart(),(i=(n=this.attributes)===null||n===void 0?void 0:n.onChartTypeChange)===null||i===void 0||i.call(n,t)},e.prototype.render=function(){var t=this.space,n=t.axisBBox,i=t.controllerBBox,a=t.timelineBBox;this.renderController(i),this.renderAxis(n),this.renderChart(a),this.states.state==="play"&&this.internalPlay()},e.prototype.destroy=function(){r.prototype.destroy.call(this),this.internalPause(!0)},e.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"}},e})(Yn);function yp(r){const{width:e,height:t,renderer:n}=r,i=Ghe(r),a=new CB({width:e,height:t,container:i,renderer:n||new sc});return[i,a]}function Ghe(r){var e;const{container:t,className:n,graphCanvas:i}=r;if(t)return typeof t=="string"?document.getElementById(t):t;const a=$l(n,!1),{width:s,height:o,containerStyle:A}=r,[l,u]=zhe(r);return Object.assign(a.style,Object.assign({position:"absolute",left:l+"px",top:u+"px",width:s+"px",height:o+"px"},A)),(e=i.getContainer())===null||e===void 0||e.appendChild(a),a}function zhe(r){const{width:e,height:t,placement:n,graphCanvas:i}=r,[a,s]=i.getSize(),[o,A]=$R(n);return[o*(a-e),A*(s-t)]}var Vhe=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};class wp extends Dr{constructor(e,t){super(e,Object.assign({},wp.defaultOptions,t)),this.typePrefix="__data__",this.draw=!1,this.fieldMap={node:new Map,edge:new Map,combo:new Map},this.selectedItems=[],this.bindEvents=()=>{const{graph:n}=this.context;n.on(Ge.AFTER_DRAW,this.createElement)},this.changeState=(n,i)=>{const{graph:a}=this.context,{typePrefix:s}=this,o=Gr(n,[s,"id"]),A=Gr(n,[s,"style","labelText"]),[l]=o.split("__"),u=this.fieldMap[l].get(A)||[];a.setElementState(Object.fromEntries(u==null?void 0:u.map(c=>[c,i])))},this.click=n=>{if(this.options.trigger==="hover")return;const i=Gr(n,[this.typePrefix,"id"]);this.selectedItems.includes(i)?(this.selectedItems=this.selectedItems.filter(a=>a!==i),this.changeState(n,[])):(this.selectedItems.push(i),this.changeState(n,"selected"))},this.mouseleave=n=>{this.options.trigger!=="click"&&(this.selectedItems=[],this.changeState(n,[]))},this.mouseenter=n=>{if(this.options.trigger==="click")return;const i=Gr(n,[this.typePrefix,"id"]);this.selectedItems.includes(i)?this.selectedItems=this.selectedItems.filter(a=>a!==i):(this.selectedItems.push(i),this.changeState(n,"active"))},this.setFieldMap=(n,i,a)=>{if(!n)return;const s=this.fieldMap[a];if(s)if(!s.has(n))s.set(n,[i]);else{const o=s.get(n);o&&(o.push(i),s.set(n,o))}},this.getEvents=()=>({mouseenter:this.mouseenter,mouseleave:this.mouseleave,click:this.click}),this.getMarkerData=(n,i)=>{if(!n)return[];const{model:a,element:s}=this.context,{nodes:o,edges:A,combos:l}=a.getData(),u={},c=g=>At(n)?n(g):n,d={node:"circle",edge:"line",combo:"rect"},h={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"},f=(g,v)=>s==null?void 0:s.getElementComputedStyle(g,v),p=(g,v)=>{g.forEach(m=>{const{id:y}=m,w=Gr(m,["data",c(m)]),B=(s==null?void 0:s.getElementType(v,m))||"circle",x=f(v,m),k=(v==="edge"?x==null?void 0:x.stroke:x==null?void 0:x.fill)||"#1783ff";y&&w&&w.replace(/\s+/g,"")&&(this.setFieldMap(w,y,v),u[w]||(u[w]={id:`${v}__${y}`,label:w,marker:h[B]||d[v],elementType:v,lineWidth:1,stroke:k,fill:k}))})};switch(i){case"node":p(o,"node");break;case"edge":p(A,"edge");break;case"combo":p(l,"combo");break;default:return[]}return Object.values(u)},this.createElement=()=>{if(this.draw){this.updateElement();return}const n=this.options,{width:i,height:a,nodeField:s,edgeField:o,comboField:A,trigger:l,position:u,container:c,containerStyle:d,className:h}=n,f=Vhe(n,["width","height","nodeField","edgeField","comboField","trigger","position","container","containerStyle","className"]),p=this.getMarkerData(s,"node"),g=this.getMarkerData(o,"edge"),v=this.getMarkerData(A,"combo"),m=[...p,...v,...g],y=Object.assign({width:i,height:a,data:m,itemMarkerLineWidth:({lineWidth:x})=>x,itemMarker:({marker:x})=>x,itemMarkerStroke:({stroke:x})=>x,itemMarkerFill:({fill:x})=>x,gridCol:p.length},f,this.getEvents()),w=new yhe({className:"legend",style:y});this.category=w,this.upsertCanvas().appendChild(w),this.draw=!0},this.bindEvents()}update(e){super.update(e),this.clear(),this.createElement()}clear(){var e,t;(e=this.canvas)===null||e===void 0||e.destroy(),(t=this.container)===null||t===void 0||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;const e=this.context.canvas,[t,n]=e.getSize(),{width:i=t,height:a=n,position:s,container:o,containerStyle:A,className:l}=this.options,[u,c]=yp({width:i,height:a,graphCanvas:e,container:o,containerStyle:A,placement:s,className:"legend"});return this.container=u,l&&u.classList.add(l),this.canvas=c,this.canvas}destroy(){this.clear(),this.context.graph.off(Ge.AFTER_DRAW,this.createElement),super.destroy()}}wp.defaultOptions={position:"bottom",trigger:"hover",orientation:"horizontal",layout:"flex",itemSpacing:4,rowPadding:10,colPadding:10,itemMarkerSize:16,itemLabelFontSize:16,width:240,height:160};class bp extends Dr{constructor(e,t){super(e,Object.assign({},bp.defaultOptions,t)),this.onDraw=n=>{var i;!((i=n==null?void 0:n.data)===null||i===void 0)&&i.render||this.onRender()},this.landmarkMap=new Map,this.mask=null,this.isMaskDragging=!1,this.onMaskDragStart=n=>{this.mask&&(this.isMaskDragging=!0,this.mask.setPointerCapture(n.pointerId),this.mask.addEventListener("pointermove",this.onMaskDrag),this.mask.addEventListener("pointerup",this.onMaskDragEnd),this.mask.addEventListener("pointercancel",this.onMaskDragEnd))},this.onMaskDrag=n=>{if(!this.mask||!this.isMaskDragging)return;const{size:[i,a]}=this.options,{movementX:s,movementY:o}=n,{left:A,top:l,width:u,height:c}=this.mask.style,[,,d,h]=this.maskBBox;let f=parseInt(A)+s,p=parseInt(l)+o,g=parseInt(u),v=parseInt(c);f<0&&(f=0),p<0&&(p=0),f+g>i&&(f=Ws(i-g,0)),p+v>a&&(p=Ws(a-v,0)),g<d&&(s>0?(f=Ws(f-s,0),g=js(g+s,i)):s<0&&(g=js(g-s,i))),v<h&&(o>0?(p=Ws(p-o,0),v=js(v+o,a)):o<0&&(v=js(v-o,a))),Object.assign(this.mask.style,{left:f+"px",top:p+"px",width:g+"px",height:v+"px"});const m=parseInt(A)-f,y=parseInt(l)-p;if(m===0&&y===0)return;const w=this.context.canvas.getCamera().getZoom(),B=this.canvas.getCamera().getZoom(),x=w/B;this.context.graph.translateBy([m*x,y*x],!1)},this.onMaskDragEnd=n=>{this.mask&&(this.isMaskDragging=!1,this.mask.releasePointerCapture(n.pointerId),this.mask.removeEventListener("pointermove",this.onMaskDrag),this.mask.removeEventListener("pointerup",this.onMaskDragEnd),this.mask.removeEventListener("pointercancel",this.onMaskDragEnd))},this.onTransform=bP(()=>{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=mc(()=>{this.renderMinimap(),this.renderMask()},this.options.delay)}bindEvents(){const{graph:e}=this.context;e.on(Ge.AFTER_DRAW,this.onDraw),e.on(Ge.AFTER_RENDER,this.onRender),e.on(Ge.AFTER_ANIMATE,this.onRender),e.on(Ge.AFTER_TRANSFORM,this.onTransform)}unbindEvents(){const{graph:e}=this.context;e.off(Ge.AFTER_DRAW,this.onDraw),e.off(Ge.AFTER_RENDER,this.onRender),e.off(Ge.AFTER_ANIMATE,this.onRender),e.off(Ge.AFTER_TRANSFORM,this.onTransform)}renderMinimap(){const e=this.getElements(),t=this.initCanvas();this.setShapes(t,e)}getElements(){const{filter:e}=this.options,{model:t,element:n}=this.context,i=t.getData(),a={nodes:i.nodes.filter(l=>n==null?void 0:n.getElement(ve(l))),edges:i.edges.filter(l=>{const u=n==null?void 0:n.getElement(ve(l));return u&&yQ(u)}),combos:i.combos.filter(l=>n==null?void 0:n.getElement(ve(l)))};if(!e)return a;const{nodes:s,edges:o,combos:A}=a;return{nodes:s.filter(l=>e(ve(l),"node")),edges:o.filter(l=>e(ve(l),"edge")),combos:A.filter(l=>e(ve(l),"combo"))}}setShapes(e,t){const{nodes:n,edges:i,combos:a}=t,{shape:s}=this.options,{element:o}=this.context,A=(l,u)=>{const c=ve(l),d=o==null?void 0:o.getElement(c);if(!d)return;const h=d.getShape("key");let f;if(typeof s=="string"){const p=s;f=d.getShape(p).cloneNode()}else{const p=s(c,u,d);p===d?f=p.cloneNode(!0):f=p}f.setPosition(h.getPosition()),d.style.zIndex&&(f.style.zIndex=d.style.zIndex),f.id=d.id,e.appendChild(f)};e.removeChildren(),i.forEach(l=>A(l,"edge")),a.forEach(l=>A(l,"combo")),n.forEach(l=>A(l,"node"))}initCanvas(){const{renderer:e,size:[t,n]}=this.options;if(this.canvas){const{width:i,height:a}=this.canvas.getConfig();(t!==i||n!==a)&&this.canvas.resize(t,n),e&&this.canvas.setRenderer(e)}else{const{className:i,position:a,container:s,containerStyle:o}=this.options,[A,l]=yp({renderer:e,width:t,height:n,placement:a,className:"minimap",container:s,containerStyle:o,graphCanvas:this.context.canvas});i&&A.classList.add(i),this.container=A,this.canvas=l}return this.setCamera(),this.canvas}createLandmark(e,t,n){const i=`${e.join(",")}-${t.join(",")}-${n}`;if(this.landmarkMap.has(i))return this.landmarkMap.get(i);const s=this.canvas.getCamera().createLandmark(i,{position:e,focalPoint:t,zoom:n});return this.landmarkMap.set(i,s),s}setCamera(){var e;const{canvas:t}=this.context,n=(e=this.canvas)===null||e===void 0?void 0:e.getCamera();if(!n)return;const{size:[i,a],padding:s}=this.options,[o,A,l,u]=ga(s),{min:c,max:d,center:h}=t.getBounds("elements"),f=d[0]-c[0],p=d[1]-c[1],g=i-u-A,v=a-o-l,m=g/f,y=v/p,w=Math.min(m,y),B=this.createLandmark(h,h,w);n.gotoLandmark(B,0)}get maskBBox(){const{canvas:e}=this.context,t=e.getSize(),n=e.getCanvasByViewport([0,0]),i=e.getCanvasByViewport(t),a=this.canvas.canvas2Viewport(ka(n)),s=this.canvas.canvas2Viewport(ka(i)),o=s.x-a.x,A=s.y-a.y;return[a.x,a.y,o,A]}calculateMaskBBox(){const{size:[e,t]}=this.options;let[n,i,a,s]=this.maskBBox;return n<0&&(a=js(a+n,e),n=0),i<0&&(s=js(s+i,t),i=0),n+a>e&&(a=Ws(e-n,0)),i+s>t&&(s=Ws(t-i,0)),[js(n,e),js(i,t),Ws(a,0),Ws(s,0)]}renderMask(){const{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",t=>t.preventDefault&&t.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;const[e,t,n,i]=this.calculateMaskBBox();Object.assign(this.mask.style,{top:t+"px",left:e+"px",width:n+"px",height:i+"px"})}destroy(){var e,t,n;this.unbindEvents(),(e=this.canvas)===null||e===void 0||e.destroy(),(t=this.mask)===null||t===void 0||t.remove(),(n=this.container)===null||n===void 0||n.remove(),super.destroy()}}bp.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};const js=(r,e)=>Math.min(r,e),Ws=(r,e)=>Math.max(r,e);var Db=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};const Hb={x1:0,y1:0,x2:0,y2:0,visibility:"hidden"};class Bp extends Dr{constructor(e,t){super(e,Object.assign({},Bp.defaultOptions,t)),this.initSnapline=()=>{const n=this.context.canvas.getLayer("transient");this.horizontalLine||(this.horizontalLine=n.appendChild(new vA({style:Object.assign(Object.assign({},Hb),this.options.horizontalLineStyle)}))),this.verticalLine||(this.verticalLine=n.appendChild(new vA({style:Object.assign(Object.assign({},Hb),this.options.verticalLineStyle)})))},this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!0,this.autoSnapToLine=(n,i,a)=>Db(this,void 0,void 0,function*(){const{verticalX:s,horizontalY:o}=a,{tolerance:A}=this.options,{min:[l,u],max:[c,d],center:[h,f]}=i;let p=0,g=0;s!==null&&(ei(c,s)<A&&(p=s-c),ei(l,s)<A&&(p=s-l),ei(h,s)<A&&(p=s-h),p!==0&&(this.isVerticalSticking=!0)),o!==null&&(ei(d,o)<A&&(g=o-d),ei(u,o)<A&&(g=o-u),ei(f,o)<A&&(g=o-f),g!==0&&(this.isHorizontalSticking=!0)),(p!==0||g!==0)&&(yield this.context.graph.translateElementBy({[n]:[p,g]},!1))}),this.enableSnap=n=>{const{target:i}=n,a=.5;if(this.isHorizontalSticking||this.isVerticalSticking){const[s,o]=this.getDelta(n);if(this.isHorizontalSticking&&this.isVerticalSticking&&Math.abs(s)<=a&&Math.abs(o)<=a)return this.context.graph.translateElementBy({[i.id]:[-s,-o]},!1),!1;if(this.isHorizontalSticking&&Math.abs(o)<=a)return this.context.graph.translateElementBy({[i.id]:[0,-o]},!1),!1;if(this.isVerticalSticking&&Math.abs(s)<=a)return this.context.graph.translateElementBy({[i.id]:[-s,0]},!1),!1;this.isHorizontalSticking=!1,this.isVerticalSticking=!1,this.enableStick=!1,setTimeout(()=>{this.enableStick=!0},200)}return this.enableStick},this.calcSnaplineMetadata=(n,i)=>{const{tolerance:a,shape:s}=this.options,{min:[o,A],max:[l,u],center:[c,d]}=i;let h=null,f=null,p=null,g=null,v=null,m=null;return this.getNodes().some(y=>{if(Qn(n.id,y.id))return!1;const w=WL(y,s).getRenderBounds(),{min:[B,x],max:[k,_],center:[T,F]}=w;return h===null&&(ei(T,c)<a?h=T:ei(B,o)<a||ei(B,l)<a?h=B:(ei(k,l)<a||ei(k,o)<a)&&(h=k),h!==null&&(f=Math.min(x,A),p=Math.max(_,u))),g===null&&(ei(F,d)<a?g=F:ei(x,A)<a||ei(x,u)<a?g=x:(ei(_,u)<a||ei(_,A)<a)&&(g=_),g!==null&&(v=Math.min(B,o),m=Math.max(k,l))),h!==null&&g!==null}),{verticalX:h,verticalMinY:f,verticalMaxY:p,horizontalY:g,horizontalMinX:v,horizontalMaxX:m}},this.onDragStart=()=>{this.initSnapline()},this.onDrag=n=>Db(this,void 0,void 0,function*(){const{target:i}=n;if(this.options.autoSnap&&!this.enableSnap(n))return;const a=WL(i,this.options.shape).getRenderBounds(),s=this.calcSnaplineMetadata(i,a);this.hideSnapline(),(s.verticalX!==null||s.horizontalY!==null)&&this.updateSnapline(s),this.options.autoSnap&&(yield this.autoSnapToLine(i.id,a,s))}),this.onDragEnd=()=>{this.hideSnapline()},this.bindEvents()}getNodes(){var e;const{filter:t}=this.options,i=(((e=this.context.element)===null||e===void 0?void 0:e.getNodes())||[]).filter(a=>{var s;return yQ(a)&&((s=this.context.viewport)===null||s===void 0?void 0:s.isInViewport(a.getRenderBounds()))});return t?i.filter(a=>t(a)):i}hideSnapline(){this.horizontalLine.style.visibility="hidden",this.verticalLine.style.visibility="hidden"}getLineWidth(e){const{lineWidth:t}=this.options[`${e}LineStyle`];return+(t||Hb.lineWidth||1)/this.context.graph.getZoom()}updateSnapline(e){const{verticalX:t,verticalMinY:n,verticalMaxY:i,horizontalY:a,horizontalMinX:s,horizontalMaxX:o}=e,[A,l]=this.context.canvas.getSize(),{offset:u}=this.options;a!==null?Object.assign(this.horizontalLine.style,{x1:u===1/0?0:s-u,y1:a,x2:u===1/0?A:o+u,y2:a,visibility:"visible",lineWidth:this.getLineWidth("horizontal")}):this.horizontalLine.style.visibility="hidden",t!==null?Object.assign(this.verticalLine.style,{x1:t,y1:u===1/0?0:n-u,x2:t,y2:u===1/0?l:i+u,visibility:"visible",lineWidth:this.getLineWidth("vertical")}):this.verticalLine.style.visibility="hidden"}getDelta(e){const t=this.context.graph.getZoom();return Oa([e.dx,e.dy],t)}bindEvents(){return Db(this,void 0,void 0,function*(){const{graph:e}=this.context;e.on(Ki.DRAG_START,this.onDragStart),e.on(Ki.DRAG,this.onDrag),e.on(Ki.DRAG_END,this.onDragEnd)})}unbindEvents(){const{graph:e}=this.context;e.off(Ki.DRAG_START,this.onDragStart),e.off(Ki.DRAG,this.onDrag),e.off(Ki.DRAG_END,this.onDragEnd)}destroyElements(){var e,t;(e=this.horizontalLine)===null||e===void 0||e.destroy(),(t=this.verticalLine)===null||t===void 0||t.destroy()}destroy(){this.destroyElements(),this.unbindEvents(),super.destroy()}}Bp.defaultOptions={tolerance:5,offset:20,autoSnap:!0,shape:"key",verticalLineStyle:{stroke:"#1783FF"},horizontalLineStyle:{stroke:"#1783FF"},filter:()=>!0};const ei=(r,e)=>Math.abs(r-e),WL=(r,e)=>typeof e=="function"?e(r):r.getShape(e);var Khe=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})},jhe=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};const Whe=["timestamp","time","date","datetime"];class Ep extends Dr{get padding(){return ga(this.options.padding)}constructor(e,t){super(e,Object.assign({},Ep.defaultOptions,t)),this.backup(),this.upsertTimebar()}play(){var e;(e=this.timebar)===null||e===void 0||e.play()}pause(){var e;(e=this.timebar)===null||e===void 0||e.pause()}forward(){var e;(e=this.timebar)===null||e===void 0||e.forward()}backward(){var e;(e=this.timebar)===null||e===void 0||e.backward()}reset(){var e;(e=this.timebar)===null||e===void 0||e.reset()}update(e){super.update(e),this.backup(),this.upsertTimebar()}backup(){this.originalData=qL(this.context.graph.getData())}upsertTimebar(){const{canvas:e}=this.context,t=this.options,{onChange:n,timebarType:i,data:a,x:s,y:o,width:A,height:l,mode:u}=t,c=jhe(t,["onChange","timebarType","data","x","y","width","height","mode"]),d=e.getSize(),[h]=this.padding;this.upsertCanvas().ready.then(()=>{var f;const p=Object.assign(Object.assign({x:d[0]/2-A/2,y:h,onChange:g=>{const v=(Ui(g)?g:[g,g]).map(m=>R8(m)?m.getTime():m);this.options.mode==="modify"?this.filterElements(v):this.hiddenElements(v),n==null||n(v)}},c),{data:a.map(g=>Yt(g)?{time:g,value:0}:g),width:A,height:l,type:i});this.timebar?this.timebar.update(p):(this.timebar=new $he({style:p}),(f=this.canvas)===null||f===void 0||f.appendChild(this.timebar))})}upsertCanvas(){if(this.canvas)return this.canvas;const{className:e,height:t,position:n}=this.options,i=this.context.canvas,[a]=i.getSize(),[s,,o]=this.padding,[A,l]=yp({width:a,height:t+s+o,graphCanvas:i,className:"timebar",placement:n});return this.container=A,e&&A.classList.add(e),this.canvas=l,this.canvas}filterElements(e){return Khe(this,void 0,void 0,function*(){var t;if(!this.originalData)return;const{elementTypes:n,getTime:i}=this.options,{graph:a,element:s}=this.context,o=qL(this.originalData);n.forEach(l=>{const u=`${l}s`;o[u]=(this.originalData[u]||[]).filter(c=>{const d=i(c);return!!YL(d,e)})});const A=[...o.nodes,...o.combos].map(l=>ve(l));o.edges=o.edges.filter(l=>{const u=l.source,c=l.target;return A.includes(u)&&A.includes(c)}),a.setData(o),yield(t=s.draw({animation:!1,silence:!0}))===null||t===void 0?void 0:t.finished})}hiddenElements(e){const{graph:t}=this.context,{elementTypes:n,getTime:i}=this.options,a=[],s=[];n.forEach(o=>{var A;const l=`${o}s`;(((A=this.originalData)===null||A===void 0?void 0:A[l])||[]).forEach(c=>{const d=ve(c),h=i(c);YL(h,e)?s.push(d):a.push(d)})}),t.hideElement(a,!1),t.showElement(s,!1)}destroy(){var e,t,n;const{graph:i}=this.context;this.originalData&&i.setData(Object.assign({},this.originalData)),(e=this.timebar)===null||e===void 0||e.destroy(),(t=this.canvas)===null||t===void 0||t.destroy(),(n=this.container)===null||n===void 0||n.remove(),this.originalData=void 0,this.container=void 0,this.timebar=void 0,this.canvas=void 0,super.destroy()}}Ep.defaultOptions={position:"bottom",enable:!0,timebarType:"time",className:"g6-timebar",width:450,height:60,zIndex:3,elementTypes:["node"],padding:10,mode:"modify",getTime:r=>qhe(r,Whe,void 0),loop:!1};const qL=r=>{const{nodes:e=[],edges:t=[],combos:n=[]}=r;return{nodes:[...e],edges:[...t],combos:[...n]}},YL=(r,e)=>{if(Yt(e))return r===e;const[t,n]=e;return r>=t&&r<=n},qhe=(r,e,t)=>{var n;for(let i=0;i<e.length;i++){const a=e[i],s=(n=r.data)===null||n===void 0?void 0:n[a];if(s)return s}return t};var Yhe=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};const S4={fill:"#1D2129",wordWrap:!0,maxLines:1,textOverflow:"ellipsis",textBaseline:"top",textAlign:"start",x:0},Xhe=Object.assign(Object.assign({},S4),{fillOpacity:.9,fontSize:16,fontWeight:"bold"}),Zhe=Object.assign(Object.assign({},S4),{fillOpacity:.65,fontSize:12,fontWeight:"normal"}),Jhe={align:"left",spacing:8,size:44,padding:[16,24,0,24]},$b="title",XL="subtitle";class efe extends Dr{get padding(){return ga(this.options.padding)}constructor(e,t){const n=Object.assign({},Jhe,t);super(e,n),this.onRender=()=>{const i=this.updateCanvas();this.renderTitle(i)},this.bindEvents()}bindEvents(){const{graph:e}=this.context;e.on(Ge.AFTER_RENDER,this.onRender),e.on(Ge.AFTER_ANIMATE,this.onRender)}unbindEvents(){const{graph:e}=this.context;e.off(Ge.AFTER_RENDER,this.onRender),e.off(Ge.AFTER_ANIMATE,this.onRender)}destroy(){var e,t;this.unbindEvents(),(e=this.canvas)===null||e===void 0||e.destroy(),(t=this.container)===null||t===void 0||t.remove(),super.destroy()}updateCanvas(){const{size:e,className:t,align:n}=this.options,[i]=this.context.canvas.getSize(),[a=0,,s=0]=this.padding,o=e+a+s;if(this.canvas){const{width:A,height:l}=this.canvas.getConfig();(i!==A||o!==l)&&this.canvas.resize(i,o)}else{const A={left:"left-top",center:"top",right:"right-top"},[l,u]=yp({width:i,height:o,placement:A[n]||A.left,className:"title-canvas",graphCanvas:this.context.canvas});t&&l.classList.add(t),this.container=l,this.canvas=u}return this.canvas}renderTitle(e){const t=new tfe({options:this.options,ctx:this.context});e.removeChildren(),t.getTitle().forEach(n=>{n&&e.appendChild(n)})}}class tfe{get padding(){return ga(this.options.padding)}constructor(e){const{options:t,ctx:n}=e;this.options=t,this.context=n}getTitle(){const e=this.options,t=$b,n=e[t],i=XL,a=e[i],{spacing:s=44,padding:o,align:A}=e,l=Yhe(e,[t+"",i+"","spacing","padding","align"]),u=n,c=a,d=Kn(l,$b),h=Kn(l,XL),[f]=this.context.graph.getSize(),[p=0,g=0,,v=0]=this.padding,m=f,y=m-v-g;let w=null,B=v,x="left";switch(A){case"left":B=v,x="left";break;case"center":B=m/2,x="center";break;case"right":B=m-g,x="right";break;default:B=v,x="left"}const k=new fs({className:$b,style:Object.assign(Object.assign(Object.assign(Object.assign({},Xhe),{wordWrapWidth:y-5,x:B,y:p,textAlign:x}),d),{text:u})}),_=k.getBBox();return c&&(w=new fs({className:"subTitle",style:Object.assign(Object.assign(Object.assign(Object.assign({},Zhe),{wordWrapWidth:y-5,x:B,y:_.height+s+p,textAlign:x}),h),{text:c})})),[k,w]}}function nfe(r){const e={top:"unset",right:"unset",bottom:"unset",left:"unset"};return r.split("-").forEach(n=>{e[n]="8px"}),e.flexDirection=r.startsWith("top")||r.startsWith("bottom")?"row":"column",e}const rfe=`
247
- .g6-toolbar {
248
- position: absolute;
249
- z-index: 100;
250
- display: flex;
251
- flex-direction: row;
252
- align-items: center;
253
- justify-content: center;
254
- border-radius: 4px;
255
- box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.1);
256
- opacity: 0.65;
257
- }
258
- .g6-toolbar .g6-toolbar-item {
259
- display: inline-block;
260
- width: 16px;
261
- height: 16px;
262
- padding: 4px;
263
- cursor: pointer;
264
- box-sizing: content-box;
265
- }
266
-
267
- .g6-toolbar .g6-toolbar-item:hover {
268
- background-color: #f0f0f0;
269
- }
270
-
271
- .g6-toolbar .g6-toolbar-item svg {
272
- display: inline-block;
273
- width: 100%;
274
- height: 100%;
275
- pointer-events: none;
276
- }
277
- `,ife=`
278
- <svg>
279
- <symbol id="zoom-in" viewBox="64 64 896 896">
280
- <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>
281
- </symbol>
282
- <symbol id="zoom-out" viewBox="64 64 896 896">
283
- <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>
284
- </symbol>
285
- <symbol id="edit" viewBox="64 64 896 896">
286
- <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>
287
- </symbol>
288
- <symbol id="delete" viewBox="64 64 896 896">
289
- <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>
290
- </symbol>
291
- <symbol id="redo" viewBox="64 64 896 896">
292
- <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>
293
- </symbol>
294
- <symbol id="undo" viewBox="64 64 896 896">
295
- <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>
296
- </symbol>
297
- <symbol id="export" viewBox="64 64 896 896">
298
- <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>
299
- </symbol>
300
- <symbol id="auto-fit" viewBox="64 64 896 896">
301
- <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>
302
- <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>
303
- </symbol>
304
- <symbol id="reset" viewBox="64 64 896 896">
305
- <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>
306
- </symbol>
307
- <symbol id="exit-fullscreen" viewBox="0 0 1024 1024">
308
- <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>
309
- <symbol id="request-fullscreen" viewBox="0 0 1024 1024">
310
- <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>
311
- </svg>
312
- `;var ZL=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class xp extends Dr{constructor(e,t){super(e,Object.assign({},xp.defaultOptions,t)),this.$element=$l("toolbar",!1),this.onToolbarItemClick=i=>{const{onClick:a}=this.options;if(i.target instanceof Element&&i.target.className.includes("g6-toolbar-item")){const s=i.target.getAttribute("value");a==null||a(s,i.target)}};const n=this.context.canvas.getContainer();this.$element.style.display="flex",n.appendChild(this.$element),dE("g6-toolbar-css","style",{},rfe,document.head),dE("g6-toolbar-svgicon","div",{display:"none"},ife),this.$element.addEventListener("click",this.onToolbarItemClick),this.update(t)}update(e){const t=Object.create(null,{update:{get:()=>super.update}});return ZL(this,void 0,void 0,function*(){t.update.call(this,e);const{className:n,position:i,style:a}=this.options;this.$element.className=`g6-toolbar ${n||""}`,Object.assign(this.$element.style,a,nfe(i)),this.$element.innerHTML=yield this.getDOMContent()})}destroy(){this.$element.removeEventListener("click",this.onToolbarItemClick),this.$element.remove(),super.destroy()}getDOMContent(){return ZL(this,void 0,void 0,function*(){return(yield this.options.getItems()).map(t=>{var n;return`
313
- <div class="g6-toolbar-item" value="${t.value}" title="${(n=t.title)!==null&&n!==void 0?n:""}">
314
- <svg aria-hidden="true" focusable="false">
315
- <use xlink:href="#${t.id}"></use>
316
- </svg>
317
- </div>`}).join("")})}}xp.defaultOptions={position:"top-left"};var JL=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class Cp extends Dr{constructor(e,t){super(e,Object.assign({},Cp.defaultOptions,t)),this.currentTarget=null,this.tooltipElement=null,this.container=null,this.isEnable=(n,i)=>{const{enable:a}=this.options;return typeof a=="function"?a(n,i):a},this.onClick=n=>{const{target:{id:i}}=n;this.currentTarget===i?this.hide(n):this.show(n)},this.onPointerMove=n=>{const{target:i}=n;!this.currentTarget||i.id===this.currentTarget||this.show(n)},this.onPointerLeave=n=>{this.hide(n)},this.onCanvasMove=n=>{this.hide(n)},this.onPointerOver=n=>{this.show(n)},this.showById=n=>JL(this,void 0,void 0,function*(){const i={target:{id:n}};yield this.show(i)}),this.getElementData=(n,i)=>{const{model:a}=this.context;switch(i){case"node":return a.getNodeData([n]);case"edge":return a.getEdgeData([n]);case"combo":return a.getComboData([n]);default:return[]}},this.show=n=>JL(this,void 0,void 0,function*(){var i,a;const{client:s,target:{id:o}}=n;if(Lc(n.target))return;const A=this.context.graph.getElementType(o),{getContent:l,title:u}=this.options,c=this.getElementData(o,A);if(!this.tooltipElement)return;if(!this.isEnable(n,c)){this.hide(n);return}let d={};if(l){if(d.content=yield l(n,c),!d.content)return}else{const p=this.context.graph.getElementRenderStyle(o),g=A==="node"?p.fill:p.stroke;d={title:u||A,data:c.map(v=>({name:"ID",value:v.id||`${v.source} -> ${v.target}`,color:g}))}}this.currentTarget=o;let h,f;if(s)h=s.x,f=s.y;else{const p=Gr(c,"0.style",{x:0,y:0});h=p.x,f=p.y}(a=(i=this.options).onOpenChange)===null||a===void 0||a.call(i,!0),this.tooltipElement.update(Object.assign(Object.assign(Object.assign({},this.tooltipStyleProps),{x:h,y:f,style:{".tooltip":{visibility:"visible"}}}),d))}),this.hide=n=>{var i,a,s,o,A;if(!n){(a=(i=this.options).onOpenChange)===null||a===void 0||a.call(i,!1),(s=this.tooltipElement)===null||s===void 0||s.hide(),this.currentTarget=null;return}if(!this.tooltipElement||!this.currentTarget)return;const{client:{x:l,y:u}}=n;(A=(o=this.options).onOpenChange)===null||A===void 0||A.call(o,!1),this.tooltipElement.hide(l,u),this.currentTarget=null},this.initTooltip=()=>{var n;const i=new Ehe({className:"tooltip",style:this.tooltipStyleProps});return(n=this.container)===null||n===void 0||n.appendChild(i.HTMLTooltipElement),i},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===void 0||t.removeChild(this.tooltipElement.HTMLTooltipElement)),this.tooltipElement=this.initTooltip(),this.bindEvents()}render(){const{canvas:e}=this.context,t=e.getContainer();t&&(this.container=t,this.tooltipElement=this.initTooltip())}unbindEvents(){const{graph:e}=this.context,t=this.getEvents();Object.keys(t).forEach(n=>{e.off(n,t[n])})}bindEvents(){const{graph:e}=this.context,t=this.getEvents();Object.keys(t).forEach(n=>{e.on(n,t[n])})}get tooltipStyleProps(){const{canvas:e}=this.context,{center:t}=e.getBounds(),n=e.getContainer(),{top:i,left:a}=n.getBoundingClientRect(),{style:s,position:o,enterable:A,container:l={x:-a,y:-i},title:u,offset:c}=this.options,[d,h]=t,[f,p]=e.getSize();return{x:d,y:h,container:l,title:u,bounding:{x:0,y:0,width:f,height:p},position:o,enterable:A,offset:c,style:s}}destroy(){var e;this.unbindEvents(),this.tooltipElement&&((e=this.container)===null||e===void 0||e.removeChild(this.tooltipElement.HTMLTooltipElement)),super.destroy()}}Cp.defaultOptions={trigger:"hover",position:"top-right",enterable:!1,enable:!0,offset:[10,10],style:{".tooltip":{visibility:"hidden"}}};var _4=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};let qA;function k4(r,e){return qA||(qA=document.createElement("canvas")),qA.width=r,qA.height=e,qA.getContext("2d").clearRect(0,0,r,e),qA}function afe(r,e,t,n){return _4(this,void 0,void 0,function*(){const i=k4(r,e),a=i.getContext("2d"),{rotate:s,opacity:o,textFill:A,textFontSize:l,textFontFamily:u,textFontVariant:c,textFontWeight:d,textAlign:h,textBaseline:f}=n;return a.textAlign=h,a.textBaseline=f,a.translate(r/2,e/2),a.font=`${l}px ${u} ${c} ${d}`,s&&a.rotate(s),o&&(a.globalAlpha=o),A&&(a.fillStyle=A,a.fillText(`${t}`,0,0)),i.toDataURL()})}function sfe(r,e,t,n){return _4(this,void 0,void 0,function*(){const i=k4(r,e),a=i.getContext("2d"),{rotate:s,opacity:o}=n;s&&a.rotate(s),o&&(a.globalAlpha=o);const A=new Image;return A.crossOrigin="anonymous",A.src=t,new Promise(l=>{A.onload=function(){const u=r>A.width?(r-A.width)/2:0,c=e>A.height?(e-A.height)/2:0;a.drawImage(A,0,0,A.width,A.height,u,c,r-u*2,e-c*2),l(i.toDataURL())}})})}var ofe=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})},Afe=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};class Sp extends Dr{constructor(e,t){super(e,Object.assign({},Sp.defaultOptions,t)),this.$element=$l("watermark"),this.context.canvas.getContainer().appendChild(this.$element),this.update(t)}update(e){const t=Object.create(null,{update:{get:()=>super.update}});return ofe(this,void 0,void 0,function*(){t.update.call(this,e);const n=this.options,{width:i,height:a,text:s,imageURL:o}=n,A=Afe(n,["width","height","text","imageURL"]);Object.keys(A).forEach(u=>{u.startsWith("background")&&(this.$element.style[u]=e[u])});const l=o?yield sfe(i,a,o,A):yield afe(i,a,s,A);this.$element.style.backgroundImage=`url(${l})`})}destroy(){super.destroy(),this.$element.remove()}}Sp.defaultOptions={width:200,height:100,opacity:.2,rotate:Math.PI/12,text:"",textFill:"#000",textFontSize:16,textAlign:"center",textBaseline:"middle",backgroundRepeat:"repeat"};const lfe=["#7E92B5","#F4664A","#FFBE3A"],ufe={type:"group",color:["#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]},cfe={type:"group",color:["#99ADD1","#1783FF","#00C9C9","#F08F56","#D580FF","#7863FF","#DB9D0D","#60C42D","#FF80CA","#2491B3","#17C76F"]};function T4(r){const{bgColor:e,textColor:t,nodeColor:n,nodeColorDisabled:i,nodeStroke:a,nodeHaloStrokeOpacityActive:s=.15,nodeHaloStrokeOpacitySelected:o=.25,nodeOpacityDisabled:A=.06,nodeIconOpacityInactive:l=.85,nodeOpacityInactive:u=.25,nodeBadgePalette:c=lfe,nodePaletteOptions:d=ufe,edgeColor:h,edgeColorDisabled:f,edgePaletteOptions:p=cfe,comboColor:g,comboColorDisabled:v,comboStroke:m,comboStrokeDisabled:y,edgeColorInactive:w}=r;return{background:e,node:{palette:d,style:{donutOpacity:1,badgeBackgroundOpacity:1,badgeFill:"#fff",badgeFontSize:8,badgePadding:[0,4],badgePalette:c,fill:n,fillOpacity:1,halo:!1,iconFill:"#fff",iconOpacity:1,labelBackground:!1,labelBackgroundFill:e,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelFill:t,labelFillOpacity:.85,labelLineHeight:16,labelPadding:[0,2],labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelOffsetY:2,lineWidth:0,portFill:n,portLineWidth:1,portStroke:a,portStrokeOpacity:.65,size:32,stroke:a,strokeOpacity:1,zIndex:2},state:{selected:{halo:!0,haloLineWidth:24,haloStrokeOpacity:o,labelFontSize:12,labelFontWeight:"bold",lineWidth:4,stroke:a},active:{halo:!0,haloLineWidth:12,haloStrokeOpacity:s},highlight:{labelFontWeight:"bold",lineWidth:4,stroke:a,strokeOpacity:.85},inactive:{badgeBackgroundOpacity:u,donutOpacity:u,fillOpacity:u,iconOpacity:l,labelFill:t,labelFillOpacity:u,strokeOpacity:u},disabled:{badgeBackgroundOpacity:.25,donutOpacity:A,fill:i,fillOpacity:A,iconFill:i,iconOpacity:.25,labelFill:t,labelFillOpacity:.25,strokeOpacity:A}},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:p,style:{badgeBackgroundFill:h,badgeFill:"#fff",badgeFontSize:8,badgeOffsetX:10,badgeBackgroundOpacity:1,fillOpacity:1,halo:!1,haloLineWidth:12,haloStrokeOpacity:1,increasedLineWidthForHitTesting:2,labelBackground:!1,labelBackgroundFill:e,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[4,4,4,4],labelFill:t,labelFontSize:12,labelFontWeight:400,labelOpacity:1,labelPlacement:"center",labelTextBaseline:"middle",lineWidth:1,stroke:h,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:w,fillOpacity:.08,labelOpacity:.25,strokeOpacity:.08,badgeBackgroundOpacity:.25},disabled:{stroke:f,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:e,collapsedMarkerFontSize:12,collapsedMarkerFillOpacity:1,collapsedSize:32,collapsedFillOpacity:1,fill:g,halo:!1,haloLineWidth:12,haloStroke:m,haloStrokeOpacity:.25,labelBackground:!1,labelBackgroundFill:e,labelBackgroundLineWidth:0,labelBackgroundOpacity:.75,labelBackgroundPadding:[2,4,2,4],labelFill:t,labelFontSize:12,labelFontWeight:400,labelOpacity:1,lineDash:0,lineWidth:1,fillOpacity:.04,strokeOpacity:1,padding:10,stroke:m},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:v,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"]}]}}}}const dfe={type:"group",color:["#637088","#0F55A6","#008383","#9C5D38","#8B53A6","#4E40A6","#8F6608","#3E801D","#A65383","#175E75","#0F8248"]},hfe={bgColor:"#000000",comboColor:"#fdfdfd",comboColorDisabled:"#d0e4ff",comboStroke:"#99add1",comboStrokeDisabled:"#969696",edgeColor:"#637088",edgeColorDisabled:"#637088",edgeColorInactive:"#D0E4FF",edgePaletteOptions:dfe,nodeColor:"#1783ff",nodeColorDisabled:"#D0E4FF",nodeHaloStrokeOpacityActive:.25,nodeHaloStrokeOpacitySelected:.45,nodeIconOpacityInactive:.45,nodeOpacityDisabled:.25,nodeOpacityInactive:.45,nodeStroke:"#d0e4ff",textColor:"#ffffff"},ffe=T4(hfe),gfe={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"},pfe=T4(gfe);class No extends fx{beforeDraw(e,t){return e}afterLayout(e,t){}}class vfe extends No{beforeDraw(e){const{model:t}=this.context,n=e.add.combos,i=a=>{const s=[];return a.forEach((o,A)=>{const u=t.getAncestorsData(A,"combo").map(c=>ve(c)).reverse();s.push([A,o,u.length])}),new Map(s.sort(([,,o],[,,A])=>A-o).map(([o,A])=>[o,A]))};return e.add.combos=i(n),e.update.combos=i(e.update.combos),e}}function qi(r,e,t,n,i){const a=ve(n),s=`${t}s`,o=i?n:r.add[s].get(a)||r.update[s].get(a)||r.remove[s].get(a)||n;Object.entries(r).forEach(([A,l])=>{e===A?l[s].set(a,o):l[s].delete(a)})}function Ph(r,e){return Object.keys(r).every(t=>r[t]===e[t])}class mfe extends No{beforeDraw(e,t){if(t.stage==="visibility"||!this.context.model.model.hasTreeStructure(yn))return e;const{model:n}=this.context,{add:i,update:a}=e,s=[...e.update.combos.entries(),...e.add.combos.entries()];for(;s.length;){const[o,A]=s.pop();if(Mi(A)){const l=n.getDescendantsData(o),u=l.map(ve),{internal:c,external:d}=XB(u,h=>n.getRelatedEdgesData(h));l.forEach(h=>{const f=ve(h),p=s.findIndex(([v])=>v===f);p!==-1&&s.splice(p,1);const g=n.getElementType(f);qi(e,"remove",g,h)}),c.forEach(h=>qi(e,"remove","edge",h)),d.forEach(h=>{var f;const p=ve(h);((f=this.context.element)===null||f===void 0?void 0:f.getElement(p))?a.edges.set(p,h):i.edges.set(p,h)})}else{const l=n.getChildrenData(o),u=l.map(ve),{edges:c}=XB(u,d=>n.getRelatedEdgesData(d));[...l,...c].forEach(d=>{var h;const f=ve(d),p=n.getElementType(f);((h=this.context.element)===null||h===void 0?void 0:h.getElement(f))?qi(e,"update",p,d):qi(e,"add",p,d),p==="combo"&&s.push([f,d])})}}return e}}const eN=(r,e,t,n)=>{const i=`${t}s`,a=ve(n);!r.add[i].has(a)&&!r.update[i].has(a)&&r[e][i].set(ve(n),n)};class yfe extends No{getElement(e){return this.context.element.getElement(e)}handleExpand(e,t){if(eN(t,"add","node",e),Mi(e))return;const n=ve(e);eN(t,"add","node",e),this.context.model.getRelatedEdgesData(n).forEach(s=>{qi(t,"add","edge",s)}),this.context.model.getChildrenData(n).forEach(s=>{this.handleExpand(s,t)})}beforeDraw(e){const{graph:t,model:n}=this.context;if(!n.model.hasTreeStructure(ji))return e;const{add:{nodes:i,edges:a},update:{nodes:s}}=e,o=new Map,A=new Map;i.forEach((u,c)=>{Mi(u)&&o.set(c,u)}),a.forEach(u=>{if(t.getElementType(u.source)!=="node")return;const c=t.getNodeData(u.source);Mi(c)&&o.set(u.source,c)}),s.forEach((u,c)=>{const d=this.getElement(c);if(!d)return;const h=d.attributes.collapsed;Mi(u)?h||o.set(c,u):h&&A.set(c,u)});const l=new Set;return o.forEach((u,c)=>{n.getDescendantsData(c).forEach(h=>{const f=ve(h);if(l.has(f))return;qi(e,"remove","node",h),n.getRelatedEdgesData(f).forEach(g=>{qi(e,"remove","edge",g)}),l.add(f)})}),A.forEach((u,c)=>{if(n.getAncestorsData(c,ji).some(Mi)){qi(e,"remove","node",u);return}this.handleExpand(u,e)}),e}}function wfe(r,e,t){zB[r][e]&&vs.warn(`The extension ${e} of ${r} has been registered before, and will be overridden.`),Object.assign(zB[r],{[e]:t})}/*!
318
- * @antv/g-plugin-dragndrop
319
- * @description A G plugin for Drag n Drop implemented with PointerEvents
320
- * @version 2.1.1
321
- * @date 12/24/2025, 11:56:44 AM
322
- * @author AntVis
323
- * @docs https://g.antv.antgroup.com/
324
- */var F4=(function(){function r(e){Ne(this,r),this.dragndropPluginOptions=e}return Pe(r,[{key:"apply",value:function(t){var n=this,i=t.renderingService,a=t.renderingContext,s=a.root.ownerDocument,o=s.defaultView,A=function(u){var c=u.target,d=c===s,h=d&&n.dragndropPluginOptions.isDocumentDraggable?s:c.closest&&c.closest("[draggable=true]");if(h){var f=!1,p=u.timeStamp,g=[u.clientX,u.clientY],v=null,m=[u.clientX,u.clientY],y=(function(){var B=xo(Pr().mark(function x(k){var _,T,F,I,O,P;return Pr().wrap(function(G){for(;;)switch(G.prev=G.next){case 0:if(f){G.next=2;break}if(_=k.timeStamp-p,T=_i([k.clientX,k.clientY],g),!(_<=n.dragndropPluginOptions.dragstartTimeThreshold||T<=n.dragndropPluginOptions.dragstartDistanceThreshold)){G.next=1;break}return G.abrupt("return");case 1:k.type="dragstart",h.dispatchEvent(k),f=!0;case 2:if(k.type="drag",k.dx=k.clientX-m[0],k.dy=k.clientY-m[1],h.dispatchEvent(k),m=[k.clientX,k.clientY],d){G.next=4;break}return F=n.dragndropPluginOptions.overlap==="pointer"?[k.canvasX,k.canvasY]:c.getBounds().center,G.next=3,s.elementsFromPoint(F[0],F[1]);case 3:I=G.sent,O=I[I.indexOf(c)+1],P=(O==null?void 0:O.closest("[droppable=true]"))||(n.dragndropPluginOptions.isDocumentDroppable?s:null),v!==P&&(v&&(k.type="dragleave",k.target=v,v.dispatchEvent(k)),P&&(k.type="dragenter",k.target=P,P.dispatchEvent(k)),v=P,v&&(k.type="dragover",k.target=v,v.dispatchEvent(k)));case 4:case"end":return G.stop()}},x)}));return function(k){return B.apply(this,arguments)}})();o.addEventListener("pointermove",y);var w=function(x){if(f){x.detail={preventClick:!0};var k=x.clone();v&&(k.type="drop",k.target=v,v.dispatchEvent(k)),k.type="dragend",h.dispatchEvent(k),f=!1}o.removeEventListener("pointermove",y)};c.addEventListener("pointerup",w,{once:!0}),c.addEventListener("pointerupoutside",w,{once:!0})}};i.hooks.init.tap(r.tag,function(){o.addEventListener("pointerdown",A)}),i.hooks.destroy.tap(r.tag,function(){o.removeEventListener("pointerdown",A)})}}])})();F4.tag="Dragndrop";var bfe=(function(r){function e(){var t,n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return Ne(this,e),t=Ft(this,e),t.name="dragndrop",t.options=n,t}return Mt(e,r),Pe(e,[{key:"init",value:function(){this.addRenderingPlugin(new F4(bt({overlap:"pointer",isDocumentDraggable:!1,isDocumentDroppable:!1,dragstartDistanceThreshold:0,dragstartTimeThreshold:0},this.options)))}},{key:"destroy",value:function(){this.removeAllRenderingPlugins()}},{key:"setOptions",value:function(n){Object.assign(this.plugins[0].dragndropPluginOptions,n)}}])})(ko),tN=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})},nN=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};const rN=["main"],iN=["background","main","label","transient"];function Bfe(r){return r.main}class aN{getConfig(){return this.config}getLayer(e="main"){return this.extends.layers[e]||Bfe(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);const t=this.config,{renderer:n,background:i,cursor:a,enableMultiLayer:s}=t,o=nN(t,["renderer","background","cursor","enableMultiLayer"]),A=s?iN:rN,l=sN(n,A),u=Object.fromEntries(A.map(c=>{const d=new CB(Object.assign(Object.assign({},o),{supportsMutipleCanvasesInOneContainer:s,renderer:l[c],background:s?c==="background"?i:void 0:i}));return[c,d]}));oN(u),this.extends={config:this.config,renderer:n,renderers:l,layers:u}}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=>{const i=n.getCamera(),a=i.getPosition(),s=i.getFocalPoint();n.resize(e,t),i.setPosition(a),i.setFocalPoint(s)})}getBounds(e){return kc(Object.values(this.getLayers()).map(t=>e?t.getRoot().childNodes.find(i=>i.classList.includes(e)):t.getRoot()).filter(t=>(t==null?void 0:t.childNodes.length)>0).map(t=>t.getBounds()))}getContainer(){const 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){var n;const i=((n=e.style)===null||n===void 0?void 0:n.$layer)||"main";return this.getLayer(i).appendChild(e,t)}setRenderer(e){if(e===this.extends.renderer)return;const t=sN(e,this.config.enableMultiLayer?iN:rN);this.extends.renderers=t,Object.entries(t).forEach(([n,i])=>this.getLayer(n).setRenderer(i)),oN(this.getLayers())}getCanvasByViewport(e){return Vr(this.getLayer().viewport2Canvas(ka(e)))}getViewportByCanvas(e){return Vr(this.getLayer().canvas2Viewport(ka(e)))}getViewportByClient(e){return Vr(this.getLayer().client2Viewport(ka(e)))}getClientByViewport(e){return Vr(this.getLayer().viewport2Client(ka(e)))}getClientByCanvas(e){return this.getClientByViewport(this.getViewportByCanvas(e))}getCanvasByClient(e){const t=this.getLayer(),n=t.client2Viewport(ka(e));return Vr(t.viewport2Canvas(n))}toDataURL(){return tN(this,arguments,void 0,function*(e={}){const t=globalThis.devicePixelRatio||1,{mode:n="viewport"}=e,i=nN(e,["mode"]);let[a,s,o,A]=[0,0,0,0];if(n==="viewport")[o,A]=this.getSize();else if(n==="overall"){const v=this.getBounds(),m=To(v);[a,s]=v.min,[o,A]=m}const l=lB('<div id="virtual-image"></div>'),u=new CB({width:o,height:A,renderer:new sc,devicePixelRatio:t,container:l,background:this.extends.config.background});yield u.ready,u.appendChild(this.getLayer("background").getRoot().cloneNode(!0)),u.appendChild(this.getRoot().cloneNode(!0));const c=this.getLayer("label").getRoot().cloneNode(!0),d=u.viewport2Canvas({x:0,y:0}),h=this.getCanvasByViewport([0,0]);c.translate([h[0]-d.x,h[1]-d.y]),c.scale(1/this.getCamera().getZoom()),u.appendChild(c),u.appendChild(this.getLayer("transient").getRoot().cloneNode(!0));const f=this.getCamera(),p=u.getCamera();if(n==="viewport")p.setZoom(f.getZoom()),p.setPosition(f.getPosition()),p.setFocalPoint(f.getFocalPoint());else if(n==="overall"){const[v,m,y]=p.getPosition(),[w,B,x]=p.getFocalPoint();p.setPosition([v+a,m+s,y]),p.setFocalPoint([w+a,B+s,x])}const g=u.getContextService();return new Promise(v=>{u.addEventListener(Vi.RERENDER,()=>tN(this,void 0,void 0,function*(){yield new Promise(y=>setTimeout(y,300));const m=yield g.toDataURL(i);v(m)}))})})}destroy(){Object.values(this.getLayers()).forEach(e=>{e.getCamera().cancelLandmarkAnimation(),e.destroy()})}}function sN(r,e){return Object.fromEntries(e.map(t=>{const n=(r==null?void 0:r(t))||new sc;return n instanceof sc&&n.setConfig({enableDirtyRectangleRendering:!1}),t==="main"?n.registerPlugin(new bfe({isDocumentDraggable:!0,isDocumentDroppable:!0,dragstartDistanceThreshold:10,dragstartTimeThreshold:100})):n.unregisterPlugin(n.getPlugin("dom-interaction")),[t,n]}))}function oN(r){Object.entries(r).forEach(([e,t])=>{const n=t.getContextService().getDomElement();n!=null&&n.style&&(n.style.gridArea="1 / 1 / 2 / 2",n.style.outline="none",n.tabIndex=1,e!=="main"&&(n.style.pointerEvents="none")),n!=null&&n.parentElement&&(n.parentElement.style.display="grid",n.parentElement.style.isolation="isolate")})}const YA=r=>r?parseInt(r):0;function Efe(r){const e=getComputedStyle(r),t=r.clientWidth||YA(e.width),n=r.clientHeight||YA(e.height),i=YA(e.paddingLeft)+YA(e.paddingRight),a=YA(e.paddingTop)+YA(e.paddingBottom);return[t-i,n-a]}function AN(r){if(!r)return[0,0];let e=640,t=480;const[n,i]=Efe(r);e=n||e,t=i||t;const a=1,s=1;return[Math.max(Yt(e)?e:a,a),Math.max(Yt(t)?t:s,s)]}class _p{constructor(e){this.type=e}}class vr extends _p{constructor(e,t){super(e),this.data=t}}class oa extends _p{constructor(e,t,n,i){super(e),this.animationType=t,this.animation=n,this.data=i}}class XA extends _p{constructor(e,t,n){super(e),this.elementType=t,this.data=n}}class yh extends _p{constructor(e,t){super(e),this.data=t}}function Sr(r,e){r.emit(e.type,e)}function xfe(r){if(!r)return null;if(r instanceof cU)return{type:"canvas",element:r};let e=r;for(;e;){if(Oc(e))return{type:"node",element:e};if(vQ(e))return{type:"edge",element:e};if(Cx(e))return{type:"combo",element:e};e=e.parentElement}return null}function lN(r){var e;return((e=r==null?void 0:r.style)===null||e===void 0?void 0:e.zIndex)||0}const ju="cachedStyle",xC=r=>`__${r}__`;function Cfe(r,e){const t=Array.isArray(e)?e:[e];Gr(r,ju)||Yu(r,ju,{}),t.forEach(n=>{Yu(Gr(r,ju),xC(n),r.attributes[n])})}function uN(r,e){return Gr(r,[ju,xC(e)])}function Sfe(r,e){return xC(e)in(Gr(r,ju)||{})}class _fe{constructor(e){this.tasks=[],this.animations=new Set,this.context=e}getTasks(){const e=[...this.tasks];return this.tasks=[],e}add(e,t){this.tasks.push([e,t])}animate(e,t,n){var i,a,s;(i=t==null?void 0:t.before)===null||i===void 0||i.call(t);const o=this.getTasks().map(([l,u])=>{var c,d,h;const{element:f,elementType:p,stage:g}=l,v=MY(this.context.options,p,g,e);(c=u==null?void 0:u.before)===null||c===void 0||c.call(u);const m=v.length?OY(f,this.inferStyle(l,n),v):null;return m?((d=u==null?void 0:u.beforeAnimate)===null||d===void 0||d.call(u,m),m.finished.then(()=>{var y,w;(y=u==null?void 0:u.afterAnimate)===null||y===void 0||y.call(u,m),(w=u==null?void 0:u.after)===null||w===void 0||w.call(u),this.animations.delete(m)})):(h=u==null?void 0:u.after)===null||h===void 0||h.call(u),m}).filter(Boolean);o.forEach(l=>this.animations.add(l));const A=ux(o);return A?((a=t==null?void 0:t.beforeAnimate)===null||a===void 0||a.call(t,A),A.finished.then(()=>{var l,u;(l=t==null?void 0:t.afterAnimate)===null||l===void 0||l.call(t,A),(u=t==null?void 0:t.after)===null||u===void 0||u.call(t),this.release()})):(s=t==null?void 0:t.after)===null||s===void 0||s.call(t),A}inferStyle(e,t){var n,i;const{element:a,elementType:s,stage:o,originalStyle:A,updatedStyle:l={}}=e;e.modifiedStyle||(e.modifiedStyle=Object.assign(Object.assign({},A),l));const{modifiedStyle:u}=e,c={},d={};if(o==="enter")Object.assign(c,{opacity:0});else if(o==="exit")Object.assign(d,{opacity:0});else if(o==="show")Object.assign(c,{opacity:0}),Object.assign(d,{opacity:(n=uN(a,"opacity"))!==null&&n!==void 0?n:ic("opacity")});else if(o==="hide")Object.assign(c,{opacity:(i=uN(a,"opacity"))!==null&&i!==void 0?i:ic("opacity")}),Object.assign(d,{opacity:0});else if(o==="collapse"){const{collapse:h}=t||{},{target:f,descendants:p,position:g}=h;if(s==="node"){if(p.includes(a.id)){const[v,m,y]=g;Object.assign(d,{x:v,y:m,z:y})}}else if(s==="combo"){if(a.id===f||p.includes(a.id)){const[v,m]=g;Object.assign(d,{x:v,y:m,childrenNode:A.childrenNode})}}else s==="edge"&&Object.assign(d,{sourceNode:u.sourceNode,targetNode:u.targetNode})}else if(o==="expand"){const{expand:h}=t||{},{target:f,descendants:p,position:g}=h;if(s==="node"){if(a.id===f||p.includes(a.id)){const[v,m,y]=g;Object.assign(c,{x:v,y:m,z:y})}}else if(s==="combo"){if(a.id===f||p.includes(a.id)){const[v,m,y]=g;Object.assign(c,{x:v,y:m,z:y,childrenNode:u.childrenNode})}}else s==="edge"&&Object.assign(c,{sourceNode:u.sourceNode,targetNode:u.targetNode})}return[Object.keys(c).length>0?Object.assign({},A,c):A,Object.keys(d).length>0?Object.assign({},u,d):u]}stop(){this.animations.forEach(e=>e.cancel())}clear(){this.tasks=[]}release(){var e,t;const{canvas:n}=this.context,i=(t=(e=n.document)===null||e===void 0?void 0:e.timeline)===null||t===void 0?void 0:t.animationsWithPromises;i&&(n.document.timeline.animationsWithPromises=i.filter(a=>a.playState!=="finished"))}destroy(){this.stop(),this.animations.clear(),this.tasks=[]}}class kfe{constructor(e){this.batchCount=0,this.context=e}emit(e){const{graph:t}=this.context;t.emit(e.type,e)}startBatch(e=!0){this.batchCount++,this.batchCount===1&&this.emit(new vr(Ge.BATCH_START,{initiate:e}))}endBatch(){this.batchCount--,this.batchCount===0&&this.emit(new vr(Ge.BATCH_END))}get isBatching(){return this.batchCount>0}destroy(){this.context=null}}class Tfe extends hx{constructor(e){super(e),this.currentTarget=null,this.currentTargetType=null,this.category="behavior",this.forwardCanvasEvents=t=>{const{target:n}=t,i=xfe(n);if(!i)return;const{graph:a,canvas:s}=this.context,{type:o,element:A}=i;if("destroyed"in A&&(Lc(A)||A.destroyed))return;const{type:l,detail:u,button:c}=t,d=Object.assign(Object.assign({},t),{target:A,targetType:o,originalTarget:n});l===_e.POINTER_MOVE&&(this.currentTarget!==A&&(this.currentTarget&&a.emit(`${this.currentTargetType}:${_e.POINTER_LEAVE}`,Object.assign(Object.assign({},d),{type:_e.POINTER_LEAVE,target:this.currentTarget,targetType:this.currentTargetType})),A&&(Object.assign(d,{type:_e.POINTER_ENTER}),a.emit(`${o}:${_e.POINTER_ENTER}`,d))),this.currentTarget=A,this.currentTargetType=o),l===_e.CLICK&&c===2||(a.emit(`${o}:${l}`,d),a.emit(l,d)),l===_e.CLICK&&u===2&&(Object.assign(d,{type:_e.DBLCLICK}),a.emit(`${o}:${_e.DBLCLICK}`,d),a.emit(_e.DBLCLICK,d)),l===_e.POINTER_DOWN&&c===2&&(Object.assign(d,{type:_e.CONTEXT_MENU,preventDefault:()=>{var h;(h=s.getContainer())===null||h===void 0||h.addEventListener(_e.CONTEXT_MENU,f=>f.preventDefault(),{once:!0})}}),a.emit(`${o}:${_e.CONTEXT_MENU}`,d),a.emit(_e.CONTEXT_MENU,d))},this.forwardContainerEvents=t=>{this.context.graph.emit(t.type,t)},this.forwardEvents(),this.setBehaviors(this.context.options.behaviors||[])}setBehaviors(e){this.setExtensions(e)}forwardEvents(){const e=this.context.canvas.getContainer();e&&[ol.KEY_DOWN,ol.KEY_UP].forEach(n=>{e.addEventListener(n,this.forwardContainerEvents)});const t=this.context.canvas.document;t&&[_e.CLICK,_e.DBLCLICK,_e.POINTER_OVER,_e.POINTER_LEAVE,_e.POINTER_ENTER,_e.POINTER_MOVE,_e.POINTER_OUT,_e.POINTER_DOWN,_e.POINTER_UP,_e.CONTEXT_MENU,_e.DRAG_START,_e.DRAG,_e.DRAG_END,_e.DRAG_ENTER,_e.DRAG_OVER,_e.DRAG_LEAVE,_e.DROP,_e.WHEEL].forEach(n=>{t.addEventListener(n,this.forwardCanvasEvents)})}destroy(){const e=this.context.canvas.getContainer();e&&[ol.KEY_DOWN,ol.KEY_UP].forEach(t=>{e.removeEventListener(t,this.forwardContainerEvents)}),this.context.canvas.document.removeAllEventListeners(),super.destroy()}}var Ffe=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};function Gb(r){const{id:e=ve(r),style:t,data:n}=r,i=Ffe(r,["id","style","data"]),a=Object.assign(Object.assign({},r),{style:Object.assign({},t),data:Object.assign({},n)});return QY(r)?Object.assign({id:e,data:a},i):{id:e,data:a}}function Lr(r){return r.data}function Mfe(r){if(r.hasTreeStructure(ji))return;r.attachTreeStructure(ji);const e=r.getAllEdges();for(const t of e){const{source:n,target:i}=t;r.setParent(i,n,ji)}}class Ife{constructor(){this.latestRemovedComboIds=new Set,this.comboIds=new Set,this.changes=[],this.batchCount=0,this.isTraceless=!1,this.enableUpdateNodeLikeHierarchy=!0,this.model=new Tx}pushChange(e){if(this.isTraceless)return;const{type:t}=e;if(t===In.NodeUpdated||t===In.EdgeUpdated||t===In.ComboUpdated){const{value:n,original:i}=e;this.changes.push({value:jv(n),original:jv(i),type:t})}else this.changes.push({value:jv(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)=>{const i=Lr(n);return this.isCombo(ve(i))||(e===void 0||e.includes(ve(i)))&&t.push(i),t},[])}getEdgeDatum(e){return Lr(this.model.getEdge(e))}getEdgeData(e){return this.model.getAllEdges().reduce((t,n)=>{const i=Lr(n);return(e===void 0||e.includes(ve(i)))&&t.push(i),t},[])}getComboData(e){return this.model.getAllNodes().reduce((t,n)=>{const i=Lr(n);return this.isCombo(ve(i))&&(e===void 0||e.includes(ve(i)))&&t.push(i),t},[])}getRootsData(e=ji){return this.model.getRoots(e).map(Lr)}getAncestorsData(e,t){const{model:n}=this;return!n.hasNode(e)||!n.hasTreeStructure(t)?[]:n.getAncestors(e,t).map(Lr)}getDescendantsData(e){const t=this.getElementDataById(e),n=[];return yl(t,i=>{i!==t&&n.push(i)},i=>this.getChildrenData(ve(i)),"TB"),n}getParentData(e,t){const{model:n}=this;if(!t){vs.warn("The hierarchy structure key is not specified");return}if(!n.hasNode(e)||!n.hasTreeStructure(t))return;const i=n.getParent(e,t);return i?Lr(i):void 0}getChildrenData(e){const t=this.getElementType(e)==="node"?ji:yn,{model:n}=this;return!n.hasNode(e)||!n.hasTreeStructure(t)?[]:n.getChildren(e,t).map(Lr)}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){const t=this.model.getNode(e);return Lr(t)}getNodeLikeData(e){return this.model.getAllNodes().reduce((t,n)=>{const i=Lr(n);return e?e.includes(ve(i))&&t.push(i):t.push(i),t},[])}getElementDataByState(e,t){return this.getElementsDataByType(e).filter(i=>{var a;return(a=i.states)===null||a===void 0?void 0:a.includes(t)})}getElementState(e){var t;return((t=this.getElementDataById(e))===null||t===void 0?void 0:t.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(Lr)}getNeighborNodesData(e){return this.model.getNeighbors(e).map(Lr)}setData(e){const{nodes:t=[],edges:n=[],combos:i=[]}=e,{nodes:a,edges:s,combos:o}=this.getData(),A=bo(a,t,c=>ve(c),KA),l=bo(s,n,c=>ve(c),KA),u=bo(o,i,c=>ve(c),KA);this.batch(()=>{const c={nodes:A.enter,edges:l.enter,combos:u.enter};this.addData(c),this.computeZIndex(c,"add",!0);const d={nodes:A.update,edges:l.update,combos:u.update};this.updateData(d),this.computeZIndex(d,"update",!0);const h={nodes:A.exit.map(ve),edges:l.exit.map(ve),combos:u.exit.map(ve)};this.removeData(h)})}addData(e){const{nodes:t,edges:n,combos:i}=e;this.batch(()=>{this.addComboData(i),this.addNodeData(t),this.addEdgeData(n)}),this.computeZIndex(e,"add")}addNodeData(e=[]){e.length&&(this.model.addNodes(e.map(t=>(this.pushChange({value:t,type:In.NodeAdded}),Gb(t)))),this.updateNodeLikeHierarchy(e),this.computeZIndex({nodes:e},"add"))}addEdgeData(e=[]){e.length&&(this.model.addEdges(e.map(t=>(this.pushChange({value:t,type:In.EdgeAdded}),Gb(t)))),this.computeZIndex({edges:e},"add"))}addComboData(e=[]){if(!e.length)return;const{model:t}=this;t.hasTreeStructure(yn)||t.attachTreeStructure(yn),t.addNodes(e.map(n=>(this.comboIds.add(ve(n)),this.pushChange({value:n,type:In.ComboAdded}),Gb(n)))),this.updateNodeLikeHierarchy(e),this.computeZIndex({combos:e},"add")}addChildrenData(e,t){const n=this.getNodeLikeDatum(e),i=t.map(ve);this.addNodeData(t),this.updateNodeData([{id:e,children:[...n.children||[],...i]}]),this.addEdgeData(i.map(a=>({source:e,target:a})))}computeZIndex(e,t,n=!1){!n&&this.isBatching()||this.batch(()=>{const{nodes:i=[],edges:a=[],combos:s=[]}=e;s.forEach(o=>{var A,l,u;const c=ve(o);if(t==="add"&&Yt((A=o.style)===null||A===void 0?void 0:A.zIndex)||t==="update"&&!("combo"in o))return;const d=this.getParentData(c,yn),h=d?((u=(l=d.style)===null||l===void 0?void 0:l.zIndex)!==null&&u!==void 0?u:0)+1:0;this.preventUpdateNodeLikeHierarchy(()=>{this.updateComboData([{id:c,style:{zIndex:h}}])})}),i.forEach(o=>{var A,l,u;const c=ve(o);if(t==="add"&&Yt((A=o.style)===null||A===void 0?void 0:A.zIndex)||t==="update"&&!("combo"in o)&&!("children"in o))return;let d=0;const h=this.getParentData(c,yn);if(h)d=(((l=h.style)===null||l===void 0?void 0:l.zIndex)||0)+1;else{const f=this.getParentData(c,ji);f&&(d=((u=f==null?void 0:f.style)===null||u===void 0?void 0:u.zIndex)||0)}this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:c,style:{zIndex:d}}])})}),a.forEach(o=>{var A,l,u,c,d;if(Yt((A=o.style)===null||A===void 0?void 0:A.zIndex))return;let{id:h,source:f,target:p}=o;if(!h)h=ve(o);else{const m=this.getEdgeDatum(h);f=m.source,p=m.target}if(!f||!p)return;const g=((u=(l=this.getNodeLikeDatum(f))===null||l===void 0?void 0:l.style)===null||u===void 0?void 0:u.zIndex)||0,v=((d=(c=this.getNodeLikeDatum(p))===null||c===void 0?void 0:c.style)===null||d===void 0?void 0:d.zIndex)||0;this.updateEdgeData([{id:ve(o),style:{zIndex:Math.max(g,v)-1}}])})})}getFrontZIndex(e){var t;const n=this.getElementType(e),i=this.getElementDataById(e),a=this.getData();if(Object.assign(a,{[`${n}s`]:a[`${n}s`].filter(s=>ve(s)!==e)}),n==="combo"&&!Mi(i)){const s=new Set(this.getAncestorsData(e,yn).map(ve));a.nodes=a.nodes.filter(o=>!s.has(ve(o))),a.combos=a.combos.filter(o=>!s.has(ve(o))),a.edges=a.edges.filter(({source:o,target:A})=>!s.has(o)&&!s.has(A))}return Math.max(((t=i.style)===null||t===void 0?void 0:t.zIndex)||0,0,...Object.values(a).flat().map(s=>{var o;return(((o=s==null?void 0:s.style)===null||o===void 0?void 0:o.zIndex)||0)+1}))}updateNodeLikeHierarchy(e){if(!this.enableUpdateNodeLikeHierarchy)return;const{model:t}=this;e.forEach(n=>{const i=ve(n),a=Wd(n);a!==void 0&&(t.hasTreeStructure(yn)||t.attachTreeStructure(yn),a===null&&this.refreshComboData(i),this.setParent(i,Wd(n),yn));const s=n.children||[];if(s.length){t.hasTreeStructure(ji)||t.attachTreeStructure(ji);const o=s.filter(A=>t.hasNode(A));o.forEach(A=>this.setParent(A,i,ji)),o.length!==s.length&&this.updateNodeData([{id:i,children:o}])}})}preventUpdateNodeLikeHierarchy(e){this.enableUpdateNodeLikeHierarchy=!1,e(),this.enableUpdateNodeLikeHierarchy=!0}updateData(e){const{nodes:t,edges:n,combos:i}=e;this.batch(()=>{this.updateNodeData(t),this.updateComboData(i),this.updateEdgeData(n)}),this.computeZIndex(e,"update")}updateNodeData(e=[]){if(!e.length)return;const{model:t}=this;this.batch(()=>{const n=[];e.forEach(i=>{const a=ve(i),s=Lr(t.getNode(a));if(KA(s,i))return;const o=Vs(s,i);this.pushChange({value:o,original:s,type:In.NodeUpdated}),t.mergeNodeData(a,o),n.push(o)}),this.updateNodeLikeHierarchy(n)}),this.computeZIndex({nodes:e},"update")}refreshData(){const{nodes:e,edges:t,combos:n}=this.getData();e.forEach(i=>{this.pushChange({value:i,original:i,type:In.NodeUpdated})}),t.forEach(i=>{this.pushChange({value:i,original:i,type:In.EdgeUpdated})}),n.forEach(i=>{this.pushChange({value:i,original:i,type:In.ComboUpdated})})}syncNodeLikeDatum(e){const{model:t}=this,n=ve(e);if(!t.hasNode(n))return;const i=Lr(t.getNode(n)),a=Vs(i,e);t.mergeNodeData(n,a)}syncEdgeDatum(e){const{model:t}=this,n=ve(e);if(!t.hasEdge(n))return;const i=Lr(t.getEdge(n)),a=Vs(i,e);t.mergeEdgeData(n,a)}updateEdgeData(e=[]){if(!e.length)return;const{model:t}=this;this.batch(()=>{e.forEach(n=>{const i=ve(n),a=Lr(t.getEdge(i));if(KA(a,n))return;n.source&&a.source!==n.source&&t.updateEdgeSource(i,n.source),n.target&&a.target!==n.target&&t.updateEdgeTarget(i,n.target);const s=Vs(a,n);this.pushChange({value:s,original:a,type:In.EdgeUpdated}),t.mergeEdgeData(i,s)})}),this.computeZIndex({edges:e},"update")}updateComboData(e=[]){if(!e.length)return;const{model:t}=this;t.batch(()=>{const n=[];e.forEach(i=>{const a=ve(i),s=Lr(t.getNode(a));if(KA(s,i))return;const o=Vs(s,i);this.pushChange({value:o,original:s,type:In.ComboUpdated}),t.mergeNodeData(a,o),n.push(o)}),this.updateNodeLikeHierarchy(n)}),this.computeZIndex({combos:e},"update")}setParent(e,t,n,i=!0){if(e===t)return;const a=this.getNodeLikeDatum(e),s=Wd(a);if(s!==t&&n===yn){const o={id:e,combo:t};this.isCombo(e)?this.syncNodeLikeDatum(o):this.syncNodeLikeDatum(o)}this.model.setParent(e,t,n),i&&n===yn&&T8([s,t]).forEach(o=>{o!==void 0&&this.refreshComboData(o)})}refreshComboData(e){const t=this.getComboData([e])[0],n=this.getAncestorsData(e,yn);t&&this.pushChange({value:t,original:t,type:In.ComboUpdated}),n.forEach(i=>{this.pushChange({value:i,original:i,type:In.ComboUpdated})})}getElementPosition(e){const t=this.getElementDataById(e);return _r(t)}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){const n=this.getElementPosition(e),i=xt(n,[...t,0].slice(0,3));this.translateNodeTo(e,i)}translateNodeTo(e,t){const[n=0,i=0,a=0]=t;this.preventUpdateNodeLikeHierarchy(()=>{this.updateNodeData([{id:e,style:{x:n,y:i,z:a}}])})}translateComboBy(e,t){const[n=0,i=0,a=0]=t;if([n,i,a].some(isNaN)||[n,i,a].every(A=>A===0))return;const s=this.getComboData([e])[0];if(!s)return;const o=new Set;yl(s,A=>{const l=ve(A);if(o.has(l))return;o.add(l);const[u,c,d]=_r(A),h=Vs(A,{style:{x:u+n,y:c+i,z:d+a}});this.pushChange({value:h,original:A,type:this.isCombo(l)?In.ComboUpdated:In.NodeUpdated}),this.model.mergeNodeData(l,h)},A=>this.getChildrenData(ve(A)),"BT")}translateComboTo(e,t){var n;if(t.some(isNaN))return;const[i=0,a=0,s=0]=t,o=(n=this.getComboData([e]))===null||n===void 0?void 0:n[0];if(!o)return;const[A,l,u]=_r(o),c=i-A,d=a-l,h=s-u;yl(o,f=>{const p=ve(f),[g,v,m]=_r(f),y=Vs(f,{style:{x:g+c,y:v+d,z:m+h}});this.pushChange({value:y,original:f,type:this.isCombo(p)?In.ComboUpdated:In.NodeUpdated}),this.model.mergeNodeData(p,y)},f=>this.getChildrenData(ve(f)),"BT")}removeData(e){const{nodes:t,edges:n,combos:i}=e;this.batch(()=>{this.removeEdgeData(n),this.removeNodeData(t),this.removeComboData(i),this.latestRemovedComboIds=new Set(i)})}removeNodeData(e=[]){e.length&&this.batch(()=>{e.forEach(t=>{this.removeEdgeData(this.getRelatedEdgesData(t).map(ve)),this.pushChange({value:this.getNodeData([t])[0],type:In.NodeRemoved}),this.removeNodeLikeHierarchy(t)}),this.model.removeNodes(e)})}removeEdgeData(e=[]){e.length&&(e.forEach(t=>this.pushChange({value:this.getEdgeData([t])[0],type:In.EdgeRemoved})),this.model.removeEdges(e))}removeComboData(e=[]){e.length&&this.batch(()=>{e.forEach(t=>{this.pushChange({value:this.getComboData([t])[0],type:In.ComboRemoved}),this.removeNodeLikeHierarchy(t),this.comboIds.delete(t)}),this.model.removeNodes(e)})}removeNodeLikeHierarchy(e){if(this.model.hasTreeStructure(yn)){const t=Wd(this.getNodeLikeDatum(e));this.setParent(e,void 0,yn,!1),this.model.getChildren(e,yn).forEach(n=>{const i=Lr(n),a=ve(i);this.setParent(ve(i),t,yn,!1);const s=Vs(i,{id:ve(i),combo:t});this.pushChange({value:s,original:i,type:this.isCombo(a)?In.ComboUpdated:In.NodeUpdated}),this.model.mergeNodeData(ve(i),s)}),ut(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 new Error(Ta(`Unknown element type of id: ${e}`))}destroy(){const{model:e}=this,t=e.getAllNodes(),n=e.getAllEdges();e.removeEdges(n.map(i=>i.id)),e.removeNodes(t.map(i=>i.id)),this.context={}}}var ZA=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class Ofe{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){const{canvas:e}=this.context;this.container=e.appendChild(new Mr({className:"elements"}))}}emit(e,t){t.silence||Sr(this.context.graph,e)}forEachElementData(e){wA.forEach(t=>{const n=this.context.model.getElementsDataByType(t);e(t,n)})}getElementType(e,t){var n;const{options:i,graph:a}=this.context,s=N_(t)&&((n=i[e])===null||n===void 0?void 0:n.type)||t.type;return s?typeof s=="string"?s:s.call(a,t):e==="edge"?"line":"circle"}getTheme(e){return CR(this.context.options)[e]||{}}getThemeStyle(e){return this.getTheme(e).style||{}}getThemeStateStyle(e,t){const{state:n={}}=this.getTheme(e);return Object.assign({},...t.map(i=>n[i]||{}))}computePaletteStyle(){const{options:e}=this.context;this.paletteStyle={},this.forEachElementData((t,n)=>{var i,a;const s=Object.assign({},p_((i=this.getTheme(t))===null||i===void 0?void 0:i.palette),p_((a=e[t])===null||a===void 0?void 0:a.palette));s!=null&&s.field&&Object.assign(this.paletteStyle,LX(n,s))})}getPaletteStyle(e,t){const n=this.paletteStyle[t];return n?e==="edge"?{stroke:n}:{fill:n}:{}}computeElementDefaultStyle(e,t){var n;const{options:i}=this.context,a=((n=i[e])===null||n===void 0?void 0:n.style)||{};"transform"in a&&Array.isArray(a.transform)&&(a.transform=[...a.transform]),this.defaultStyle[ve(t.datum)]=g_(a,t)}computeElementsDefaultStyle(e){const{graph:t}=this.context;this.forEachElementData((n,i)=>{const a=i.length;for(let s=0;s<a;s++){const o=i[s];(e===void 0||e.includes(ve(o)))&&this.computeElementDefaultStyle(n,{datum:o,graph:t})}})}getDefaultStyle(e){return this.defaultStyle[e]||{}}getElementState(e){try{const{model:t}=this.context;return t.getElementState(e)}catch{return[]}}getElementStateStyle(e,t,n){var i,a;const{options:s}=this.context,o=((a=(i=s[e])===null||i===void 0?void 0:i.state)===null||a===void 0?void 0:a[t])||{};return g_(o,n)}computeElementStatesStyle(e,t,n){this.stateStyle[ve(n.datum)]=Object.assign({},...t.map(i=>this.getElementStateStyle(e,i,n)))}computeElementsStatesStyle(e){const{graph:t}=this.context;this.forEachElementData((n,i)=>{const a=i.length;for(let s=0;s<a;s++){const o=i[s];if(e===void 0||e.includes(ve(o))){const A=this.getElementState(ve(o));this.computeElementStatesStyle(n,A,{datum:o,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[ve(e)])}getCombos(){return this.context.model.getComboData().map(({id:e})=>this.elementMap[e])}getElementComputedStyle(e,t){const n=ve(t),i=this.getThemeStyle(e),a=this.getPaletteStyle(e,n),s=t.style||{},o=this.getDefaultStyle(n),A=this.getThemeStateStyle(e,this.getElementState(n)),l=this.getStateStyle(n),u=N_(t)?Object.assign({},i,a,s,o,A,l):Object.assign({},s);if(e==="combo"){const c=this.context.model.getChildrenData(n),h=!!u.collapsed?[]:c.map(ve).filter(f=>this.getElement(f));Object.assign(u,{childrenNode:h,childrenData:c})}return u}getDrawData(e){this.init();const t=this.computeChangesAndDrawData(e);if(!t)return null;const{type:n="draw",stage:i=n}=e;return this.markDestroyElement(t.drawData),this.computeStyle(i),{type:n,stage:i,data:t}}draw(e={animation:!0}){const t=this.getDrawData(e);if(!t)return;const{data:{drawData:{add:n,update:i,remove:a}}}=t;return this.destroyElements(a,e),this.createElements(n,e),this.updateElements(i,e),this.setAnimationTask(e,t)}preLayoutDraw(){return ZA(this,arguments,void 0,function*(e={animation:!0}){var t,n;const i=this.getDrawData(e);if(!i)return;const{data:{drawData:a}}=i;yield(n=(t=this.context.layout)===null||t===void 0?void 0:t.preLayout)===null||n===void 0?void 0:n.call(t,a);const{add:s,update:o,remove:A}=a;return this.destroyElements(A,e),this.createElements(s,e),this.updateElements(o,e),this.setAnimationTask(e,i)})}setAnimationTask(e,t){const{animation:n,silence:i}=e,{data:{dataChanges:a,drawData:s},stage:o,type:A}=t;return this.context.animation.animate(n,i?{}:{before:()=>this.emit(new vr(Ge.BEFORE_DRAW,{dataChanges:a,animation:n,stage:o,render:A==="render"}),e),beforeAnimate:l=>this.emit(new oa(Ge.BEFORE_ANIMATE,Si.DRAW,l,s),e),afterAnimate:l=>this.emit(new oa(Ge.AFTER_ANIMATE,Si.DRAW,l,s),e),after:()=>this.emit(new vr(Ge.AFTER_DRAW,{dataChanges:a,animation:n,stage:o,render:A==="render",firstRender:this.context.graph.rendered===!1}),e)})}computeChangesAndDrawData(e){const{model:t}=this.context,n=t.getChanges(),i=uC(n);if(i.length===0)return null;const{NodeAdded:a=[],NodeUpdated:s=[],NodeRemoved:o=[],EdgeAdded:A=[],EdgeUpdated:l=[],EdgeRemoved:u=[],ComboAdded:c=[],ComboUpdated:d=[],ComboRemoved:h=[]}=Vf(i,B=>B.type),f=(B,x)=>{const k=[];return B.forEach(_=>{const T=ve(_.value);this.getElement(T)?k.push(_):x.push(_)}),k},p=f(s,a),g=f(l,A),v=f(d,c),m=B=>new Map(B.map(x=>{const k=x.value;return[ve(k),k]})),y={add:{nodes:m(a),edges:m(A),combos:m(c)},update:{nodes:m(p),edges:m(g),combos:m(v)},remove:{nodes:m(o),edges:m(u),combos:m(h)}},w=this.transformData(y,e);return t.clearChanges(),{dataChanges:n,drawData:w}}transformData(e,t){const n=this.context.transform.getTransformInstance();return Object.values(n).reduce((i,a)=>a.beforeDraw(i,t),e)}createElement(e,t,n){var i;const a=ve(t);if(this.getElement(a))return;const o=this.getElementType(e,t),A=this.getElementComputedStyle(e,t),l=Ps(e,o);if(!l)return vs.warn(`The element ${o} of ${e} is not registered.`);this.emit(new XA(Ge.BEFORE_ELEMENT_CREATE,e,t),n);const u=this.container.appendChild(new l({id:a,context:this.context,style:A}));this.shapeTypeMap[a]=o,this.elementMap[a]=u;const{stage:c="enter"}=n;(i=this.context.animation)===null||i===void 0||i.add({element:u,elementType:e,stage:c,originalStyle:Object.assign({},u.attributes),updatedStyle:A},{after:()=>{var d;this.emit(new XA(Ge.AFTER_ELEMENT_CREATE,e,t),n),(d=u.onCreate)===null||d===void 0||d.call(u)}})}createElements(e,t){const{nodes:n,edges:i,combos:a}=e;[["node",n],["combo",a],["edge",i]].forEach(([o,A])=>{A.forEach(l=>this.createElement(o,l,t))})}getUpdateStageStyle(e,t,n){const{stage:i="update"}=n;if(i==="translate")if(e==="node"||e==="combo"){const{style:{x:a=0,y:s=0,z:o=0}={}}=t;return{x:a,y:s,z:o}}else return{};return this.getElementComputedStyle(e,t)}updateElement(e,t,n){var i;const a=ve(t),{stage:s="update"}=n,o=this.getElement(a);if(!o)return()=>null;this.emit(new XA(Ge.BEFORE_ELEMENT_UPDATE,e,t),n);const A=this.getElementType(e,t),l=this.getUpdateStageStyle(e,t,n);this.shapeTypeMap[a]!==A&&(o.destroy(),delete this.shapeTypeMap[a],delete this.elementMap[a],this.createElement(e,t,{animation:!1,silence:!0}));const u=s!=="visibility"?s:l.visibility==="hidden"?"hide":"show";u==="hide"&&delete l.visibility,(i=this.context.animation)===null||i===void 0||i.add({element:o,elementType:e,stage:u,originalStyle:Object.assign({},o.attributes),updatedStyle:l},{before:()=>{const c=this.elementMap[a];s!=="collapse"&&JB(c,l),s==="visibility"&&(Sfe(c,"opacity")||Cfe(c,"opacity"),this.visibilityCache.set(c,u==="show"?"visible":"hidden"),u==="show"&&yA(c,"visible"))},after:()=>{var c;const d=this.elementMap[a];s==="collapse"&&JB(d,l),u==="hide"&&yA(d,this.visibilityCache.get(d)),this.emit(new XA(Ge.AFTER_ELEMENT_UPDATE,e,t),n),(c=d.onUpdate)===null||c===void 0||c.call(d)}})}updateElements(e,t){const{nodes:n,edges:i,combos:a}=e;[["node",n],["combo",a],["edge",i]].forEach(([o,A])=>{A.forEach(l=>this.updateElement(o,l,t))})}markDestroyElement(e){Object.values(e.remove).forEach(t=>{t.forEach(n=>{const i=ve(n),a=this.getElement(i);a&&SJ(a)})})}destroyElement(e,t,n){var i;const{stage:a="exit"}=n,s=ve(t),o=this.elementMap[s];if(!o)return()=>null;this.emit(new XA(Ge.BEFORE_ELEMENT_DESTROY,e,t),n),(i=this.context.animation)===null||i===void 0||i.add({element:o,elementType:e,stage:a,originalStyle:Object.assign({},o.attributes),updatedStyle:{}},{after:()=>{var A;this.clearElement(s),o.destroy(),(A=o.onDestroy)===null||A===void 0||A.call(o),this.emit(new XA(Ge.AFTER_ELEMENT_DESTROY,e,t),n)}})}destroyElements(e,t){const{nodes:n,edges:i,combos:a}=e;[["combo",a],["edge",i],["node",n]].forEach(([o,A])=>{A.forEach(l=>this.destroyElement(o,l,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,i;const a=(n=e.nodes)===null||n===void 0?void 0:n.find(s=>ve(s)===t);if(a){const s=_r(this.context.model.getNodeLikeDatum(t)),o=_r(a),A=hn(s,o);(i=e.nodes)===null||i===void 0||i.forEach(l=>{var u,c,d;!((u=l.style)===null||u===void 0)&&u.x&&(l.style.x+=A[0]),!((c=l.style)===null||c===void 0)&&c.y&&(l.style.y+=A[1]),!((d=l.style)===null||d===void 0)&&d.z&&(l.style.z+=A[2]||0)})}}syncLayoutResult(e,t){return ZA(this,void 0,void 0,function*(){const{layout:n,model:i}=this.context;if(!n)return;const a=this.context.options.layout,s=A=>Array.isArray(A)?A.map(l=>Object.assign(Object.assign({},l),{preLayout:!0})):Object.assign(Object.assign({},A),{preLayout:!0}),o=yield n.simulate(a?s(a):void 0);t&&this.alignLayoutResultToElement(o,e),i.updateData(o)})}collapseNode(e,t){return ZA(this,void 0,void 0,function*(){var n;const{animation:i,align:a}=t;yield this.syncLayoutResult(e,a);const s=this.computeChangesAndDrawData({stage:"collapse",animation:i});if(this.context.animation.clear(),this.computeStyle("collapse"),!s)return;const{drawData:o}=s,{add:A,remove:l,update:u}=o;this.markDestroyElement(o);const c={animation:i,stage:"collapse",data:o};this.destroyElements(l,c),this.createElements(A,c),this.updateElements(u,c),yield(n=this.context.animation.animate(i,{beforeAnimate:d=>this.emit(new oa(Ge.BEFORE_ANIMATE,Si.COLLAPSE,d,o),c),afterAnimate:d=>this.emit(new oa(Ge.AFTER_ANIMATE,Si.COLLAPSE,d,o),c)},{collapse:{target:e,descendants:Array.from(l.nodes).map(([,d])=>ve(d)),position:_r(u.nodes.get(e))}}))===null||n===void 0?void 0:n.finished})}expandNode(e,t){return ZA(this,void 0,void 0,function*(){var n;const{model:i}=this.context,{animation:a,align:s}=t,o=_r(i.getNodeData([e])[0]);yield this.syncLayoutResult(e,s);const A=this.computeChangesAndDrawData({stage:"expand",animation:a});if(this.createElements(A.drawData.add,{animation:!1,stage:"expand",target:e}),this.context.animation.clear(),this.computeStyle("expand"),!A)return;const{drawData:l}=A,{update:u,add:c}=l,d={animation:a,stage:"expand",data:l};c.edges.forEach(h=>u.edges.set(ve(h),h)),c.nodes.forEach(h=>u.nodes.set(ve(h),h)),this.updateElements(u,d),yield(n=this.context.animation.animate(a,{beforeAnimate:h=>this.emit(new oa(Ge.BEFORE_ANIMATE,Si.EXPAND,h,l),d),afterAnimate:h=>this.emit(new oa(Ge.AFTER_ANIMATE,Si.EXPAND,h,l),d)},{expand:{target:e,descendants:Array.from(c.nodes).map(([,h])=>ve(h)),position:o}}))===null||n===void 0?void 0:n.finished})}collapseCombo(e,t){return ZA(this,void 0,void 0,function*(){var n;const{model:i,element:a}=this.context;if(i.getAncestorsData(e,yn).some(p=>Mi(p)))return;const s=a.getElement(e),o=s.getComboPosition(Object.assign(Object.assign({},s.attributes),{collapsed:!0})),A=this.computeChangesAndDrawData({stage:"collapse",animation:t});if(!A)return;const{dataChanges:l,drawData:u}=A;this.markDestroyElement(u);const{update:c,remove:d}=u,h={animation:t,stage:"collapse",data:u};this.destroyElements(d,h),this.updateElements(c,h);const f=p=>Array.from(p).map(([,g])=>ve(g));yield(n=this.context.animation.animate(t,{before:()=>this.emit(new vr(Ge.BEFORE_DRAW,{dataChanges:l,animation:t}),h),beforeAnimate:p=>this.emit(new oa(Ge.BEFORE_ANIMATE,Si.COLLAPSE,p,u),h),afterAnimate:p=>this.emit(new oa(Ge.AFTER_ANIMATE,Si.COLLAPSE,p,u),h),after:()=>this.emit(new vr(Ge.AFTER_DRAW,{dataChanges:l,animation:t}),h)},{collapse:{target:e,descendants:[...f(d.nodes),...f(d.combos)],position:o}}))===null||n===void 0?void 0:n.finished})}expandCombo(e,t){return ZA(this,void 0,void 0,function*(){var n;const{model:i}=this.context,a=_r(i.getComboData([e])[0]);this.computeStyle("expand");const s=this.computeChangesAndDrawData({stage:"expand",animation:t});if(!s)return;const{dataChanges:o,drawData:A}=s,{add:l,update:u}=A,c={animation:t,stage:"expand",data:A,target:e};this.createElements(l,c),this.updateElements(u,c);const d=h=>Array.from(h).map(([,f])=>ve(f));yield(n=this.context.animation.animate(t,{before:()=>this.emit(new vr(Ge.BEFORE_DRAW,{dataChanges:o,animation:t}),c),beforeAnimate:h=>this.emit(new oa(Ge.BEFORE_ANIMATE,Si.EXPAND,h,A),c),afterAnimate:h=>this.emit(new oa(Ge.AFTER_ANIMATE,Si.EXPAND,h,A),c),after:()=>this.emit(new vr(Ge.AFTER_DRAW,{dataChanges:o,animation:t}),c)},{expand:{target:e,descendants:[...d(l.nodes),...d(l.combos)],position:a}}))===null||n===void 0?void 0:n.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={}}}var JA=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})},Lfe=function(r,e){var t={};for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&e.indexOf(n)<0&&(t[n]=r[n]);if(r!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,n=Object.getOwnPropertySymbols(r);i<n.length;i++)e.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(r,n[i])&&(t[n[i]]=r[n[i]]);return t};class Nfe{get presetOptions(){return{animation:!!SR(this.context.options,!0)}}get options(){const{options:e}=this.context;return e.layout}constructor(e){this.instances=[],this.context=e}getLayoutInstance(){return this.instances}preLayout(e){return JA(this,void 0,void 0,function*(){var t,n,i,a;const{graph:s,model:o}=this.context,{add:A}=e;Sr(s,new vr(Ge.BEFORE_LAYOUT,{type:"pre"}));const l=yield(t=this.context.layout)===null||t===void 0?void 0:t.simulate();(n=l==null?void 0:l.nodes)===null||n===void 0||n.forEach(u=>{const c=ve(u),d=A.nodes.get(c);o.syncNodeLikeDatum(u),d&&Object.assign(d.style,u.style)}),(i=l==null?void 0:l.edges)===null||i===void 0||i.forEach(u=>{const c=ve(u),d=A.edges.get(c);o.syncEdgeDatum(u),d&&Object.assign(d.style,u.style)}),(a=l==null?void 0:l.combos)===null||a===void 0||a.forEach(u=>{const c=ve(u),d=A.combos.get(c);o.syncNodeLikeDatum(u),d&&Object.assign(d.style,u.style)}),Sr(s,new vr(Ge.AFTER_LAYOUT,{type:"pre"})),this.transformDataAfterLayout("pre",e)})}postLayout(){return JA(this,arguments,void 0,function*(e=this.options){if(!e)return;const t=Array.isArray(e)?e:[e],{graph:n}=this.context;Sr(n,new vr(Ge.BEFORE_LAYOUT,{type:"post"}));for(let i=0;i<t.length;i++){const a=t[i],s=this.getLayoutData(a),o=Object.assign(Object.assign({},this.presetOptions),a);Sr(n,new vr(Ge.BEFORE_STAGE_LAYOUT,{options:o,index:i}));const A=yield this.stepLayout(s,o,i);Sr(n,new vr(Ge.AFTER_STAGE_LAYOUT,{options:o,index:i})),a.animation||this.updateElementPosition(A,!1)}Sr(n,new vr(Ge.AFTER_LAYOUT,{type:"post"})),this.transformDataAfterLayout("post")})}transformDataAfterLayout(e,t){const n=this.context.transform.getTransformInstance();Object.values(n).forEach(i=>i.afterLayout(e,t))}simulate(){return JA(this,arguments,void 0,function*(e=this.options){if(!e)return{};const t=Array.isArray(e)?e:[e];let n={};for(let i=0;i<t.length;i++){const a=t[i],s=this.getLayoutData(a);n=yield this.stepLayout(s,Object.assign(Object.assign(Object.assign({},this.presetOptions),a),{animation:!1}),i)}return n})}stepLayout(e,t,n){return JA(this,void 0,void 0,function*(){return IJ(t)?yield this.treeLayout(e,t,n):yield this.graphLayout(e,t,n)})}graphLayout(e,t,n){return JA(this,void 0,void 0,function*(){const{animation:i,iterations:a=300}=t,s=this.initGraphLayout(t);if(!s)return{};if(this.instances[n]=s,this.instance=s,iE(s))return i?yield s.execute(e,{animate:!0,maxIteration:a,onTick:A=>this.updateElementPosition(A,!1)}):(s.execute(e),s.stop(),s.tick(a));const o=yield s.execute(e);if(i){const A=this.updateElementPosition(o,i);yield A==null?void 0:A.finished}return o})}treeLayout(e,t,n){return JA(this,void 0,void 0,function*(){const{type:i,animation:a}=t,s=Ps("layout",i);if(!s)return{};const{nodes:o=[],edges:A=[]}=e,l=new Tx({nodes:o.map(f=>({id:ve(f),data:f.data||{}})),edges:A.map(f=>({id:ve(f),source:f.source,target:f.target,data:f.data||{}}))});Mfe(l);const u={nodes:[],edges:[]},c={nodes:[],edges:[]};l.getRoots(ji).forEach(f=>{yl(f,y=>{y.children=l.getSuccessors(y.id)},y=>l.getSuccessors(y.id),"TB");const p=s(f,t),{x:g,y:v,z:m=0}=p;yl(p,y=>{const{id:w,x:B,y:x,z:k=0}=y;u.nodes.push({id:w,style:{x:g,y:v,z:m}}),c.nodes.push({id:w,style:{x:B,y:x,z:k}})},y=>y.children,"TB")});const h=this.inferTreeLayoutOffset(c);if(cN(c,h),a){cN(u,h),this.updateElementPosition(u,!1);const f=this.updateElementPosition(c,a);yield f==null?void 0:f.finished}return c})}inferTreeLayoutOffset(e){var t;let[n,i]=[1/0,-1/0],[a,s]=[1/0,-1/0];(t=e.nodes)===null||t===void 0||t.forEach(p=>{const{x:g=0,y:v=0}=p.style||{};n=Math.min(n,g),i=Math.max(i,g),a=Math.min(a,v),s=Math.max(s,v)});const{canvas:o}=this.context,A=o.getSize(),[l,u]=o.getCanvasByViewport([0,0]),[c,d]=o.getCanvasByViewport(A);if(n>=l&&i<=c&&a>=u&&s<=d)return[0,0];const h=(l+c)/2,f=(u+d)/2;return[h-(n+i)/2,f-(a+s)/2]}stopLayout(){this.instance&&iE(this.instance)&&(this.instance.stop(),this.instance=void 0),this.animationResult&&(this.animationResult.finish(),this.animationResult=void 0)}getLayoutData(e){const{nodeFilter:t=()=>!0,comboFilter:n=()=>!0,preLayout:i=!1,isLayoutInvisibleNodes:a=!1}=e,{nodes:s,edges:o,combos:A}=this.context.model.getData(),{element:l,model:u}=this.context,c=v=>l.getElement(v),d=i?v=>{var m;return!a&&(((m=v.style)===null||m===void 0?void 0:m.visibility)==="hidden"||u.getAncestorsData(v.id,ji).some(Mi)||u.getAncestorsData(v.id,yn).some(Mi))?!1:t(v)}:v=>{const m=ve(v),y=c(m);return!y||Lc(y)?!1:t(v)},h=s.filter(d),f=A.filter(n),p=new Map(h.map(v=>[ve(v),v]));f.forEach(v=>p.set(ve(v),v));const g=o.filter(({source:v,target:m})=>p.has(v)&&p.has(m));return{nodes:h,edges:g,combos:f}}initGraphLayout(e){var t;const{element:n,viewport:i}=this.context,{type:a,animation:s,iterations:o}=e,A=Lfe(e,["type","animation","iterations"]),[l,u]=i.getCanvasSize(),c=[l/2,u/2],d=(t=e==null?void 0:e.nodeSize)!==null&&t!==void 0?t:(v=>{const m=n==null?void 0:n.getElement(v.id);return m?m.attributes.size:n==null?void 0:n.getElementComputedStyle("node",v).size}),h=Ps("layout",a);if(!h)return vs.warn(`The layout of ${a} is not registered.`);const f=Object.getPrototypeOf(h.prototype)===Pc.prototype?h:NJ(h)?PJ(h,this.context):LJ(h,this.context),p=new f(this.context),g={nodeSize:d,width:l,height:u,center:c};switch(p.id){case"d3-force":case"d3-force-3d":Object.assign(g,{center:{x:l/2,y:u/2,z:0}});break}return li(p.options,g,A),p}updateElementPosition(e,t){const{model:n,element:i}=this.context;return i?(n.updateData(e),i.draw({animation:t,silence:!0})):null}destroy(){this.stopLayout(),this.context={},this.instance=void 0,this.instances=[],this.animationResult=void 0}}const cN=(r,e)=>{var t;const[n,i]=e;(t=r.nodes)===null||t===void 0||t.forEach(a=>{if(a.style){const{x:s=0,y:o=0}=a.style;a.style.x=s+n,a.style.y=o+i}else a.style={x:n,y:i}})};function Pfe(r){return[Ufe].reduce((t,n)=>n(t),r)}function Ufe(r){return!r.layout||Array.isArray(r.layout)||"preLayout"in r.layout||["antv-dagre","combo-combined","compact-box","circular","concentric","dagre","fishbone","grid","indented","mds","radial","random","snake","dendrogram","mindmap"].includes(r.layout.type)&&(r.layout.preLayout=!0),r}class Rfe extends hx{constructor(e){super(e),this.category="plugin",this.setPlugins(this.context.options.plugins||[])}setPlugins(e){this.setExtensions(e)}getPluginInstance(e){const t=this.extensionMap[e];if(t)return t;vs.warn(`Cannot find the plugin ${e}, will try to find it by type.`);const n=this.extensions.find(i=>i.type===e);if(n)return this.extensionMap[n.key]}}const wh=["update-related-edges","collapse-expand-node","collapse-expand-combo","get-edge-actual-ends","arrange-draw-order"];class Qfe extends hx{constructor(e){super(e),this.category="transform",this.setTransforms(this.context.options.transforms||[])}getTransforms(){}setTransforms(e){this.setExtensions([...wh.slice(0,wh.length-1),...e,wh[wh.length-1]])}getTransformInstance(e){return e?this.extensionMap[e]:this.extensionMap}}var hu=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class Dfe{get padding(){return ga(this.context.options.padding)}get paddingOffset(){const[e,t,n,i]=this.padding,[a,s,o]=[(i-t)/2,(e-n)/2,0];return[a,s,o]}constructor(e){this.landmarkCounter=0,this.context=e;const[t,n]=this.paddingOffset,{zoom:i,rotation:a,x:s=t,y:o=n}=e.options;this.transform({mode:"absolute",scale:i,translate:[s,o],rotate:a},!1)}get camera(){const{canvas:e}=this.context;return new Proxy(e.getCamera(),{get:(t,n)=>{const a=Object.entries(e.getLayers()).filter(([o])=>!["main"].includes(o)).map(([,o])=>o.getCamera()),s=t[n];if(typeof s=="function")return(...o)=>{const A=s.apply(t,o);return a.forEach(l=>{l[n].apply(l,o)}),A}}})}createLandmark(e){return this.camera.createLandmark(`landmark-${this.landmarkCounter++}`,e)}getAnimation(e){const t=SR(this.context.options,e);return t?yc(Object.assign({},t),["easing","duration"]):!1}getCanvasSize(){const{canvas:e}=this.context,{width:t=0,height:n=0}=e.getConfig();return[t,n]}getCanvasCenter(){const{canvas:e}=this.context,{width:t=0,height:n=0}=e.getConfig();return[t/2,n/2,0]}getViewportCenter(){const[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){const{camera:t}=this,{mode:n,translate:i=[]}=e,a=this.getZoom(),s=t.getPosition(),o=t.getFocalPoint(),[A,l]=this.getCanvasCenter(),[u=0,c=0,d=0]=i,h=Oa([-u,-c,-d],a);return n==="relative"?{position:xt(s,h),focalPoint:xt(o,h)}:{position:xt([A,l,s[2]],h),focalPoint:xt([A,l,o[2]],h)}}getRotateOptions(e){const{mode:t,rotate:n=0}=e;return{roll:t==="relative"?this.camera.getRoll()+n:n}}getZoomOptions(e){const{zoomRange:t}=this.context.options,n=this.camera.getZoom(),{mode:i,scale:a=1}=e;return jn(i==="relative"?n*a:a,...t)}transform(e,t){return hu(this,void 0,void 0,function*(){const{graph:n}=this.context,{translate:i,rotate:a,scale:s,origin:o}=e;this.cancelAnimation();const A=this.getAnimation(t);if(Sr(n,new yh(Ge.BEFORE_TRANSFORM,e)),!a&&s&&!i&&o&&!A){this.camera.setZoomByViewportPoint(this.getZoomOptions(e),o),Sr(n,new yh(Ge.AFTER_TRANSFORM,e));return}const l={};if(i&&Object.assign(l,this.getTranslateOptions(e)),Yt(a)&&Object.assign(l,this.getRotateOptions(e)),Yt(s)&&Object.assign(l,{zoom:this.getZoomOptions(e)}),A)return Sr(n,new oa(Ge.BEFORE_ANIMATE,Si.TRANSFORM,null,e)),new Promise(u=>{this.transformResolver=u,this.camera.gotoLandmark(this.createLandmark(l),Object.assign(Object.assign({},A),{onfinish:()=>{Sr(n,new oa(Ge.AFTER_ANIMATE,Si.TRANSFORM,null,e)),Sr(n,new yh(Ge.AFTER_TRANSFORM,e)),this.transformResolver=void 0,u()}}))});this.camera.gotoLandmark(this.createLandmark(l),{duration:0}),Sr(n,new yh(Ge.AFTER_TRANSFORM,e))})}fitView(e,t){return hu(this,void 0,void 0,function*(){const[n,i,a,s]=this.padding,{when:o="always",direction:A="both"}=e||{},[l,u]=this.context.canvas.getSize(),c=l-s-i,d=u-n-a,h=this.context.canvas.getBounds(),f=this.getBBoxInViewport(h),[p,g]=To(f),v=A==="x"&&p>=c||A==="y"&&g>=d||A==="both"&&p>=c&&g>=d;if(o==="overflow"&&!v)return yield this.fitCenter({animation:t});const m=c/p,y=d/g,w=A==="x"?m:A==="y"?y:Math.min(m,y),B=this.getAnimation(t);Number.isFinite(w)&&(yield this.transform({mode:"relative",scale:w,translate:xt(hn(this.getCanvasCenter(),this.getBBoxInViewport(h).center),Oa(this.paddingOffset,w))},B))})}fitCenter(e){return hu(this,void 0,void 0,function*(){const t=this.context.canvas.getBounds();yield this.focus(t,e)})}focusElements(e){return hu(this,arguments,void 0,function*(t,n={}){const{element:i}=this.context;if(!i)return;const a=o=>n.shapes?o.getShape(n.shapes).getRenderBounds():o.getRenderBounds(),s=kc(t.map(o=>a(i.getElement(o))));yield this.focus(s,n)})}focus(e,t){return hu(this,void 0,void 0,function*(){const n=this.context.graph.getViewportByCanvas(e.center),i=t.position||this.getCanvasCenter(),a=hn(i,n);yield this.transform({mode:"relative",translate:xt(a,this.paddingOffset)},t.animation)})}getBBoxInViewport(e){const{min:t,max:n}=e,{graph:i}=this.context,[a,s]=i.getViewportByCanvas(t),[o,A]=i.getViewportByCanvas(n),l=new kn;return l.setMinMax([a,s,0],[o,A,0]),l}isInViewport(e,t=!1,n=0){const{graph:i}=this.context,a=this.getCanvasSize(),[s,o]=i.getCanvasByViewport([0,0]),[A,l]=i.getCanvasByViewport(a);let u=new kn;return u.setMinMax([s,o,0],[A,l,0]),n&&(u=Fo(u,n)),Tl(e)?Ia(e,u):t?$Y(e,u):u.intersects(e)}cancelAnimation(){var e,t;!((e=this.camera.landmarks)===null||e===void 0)&&e.length&&this.camera.cancelLandmarkAnimation(),(t=this.transformResolver)===null||t===void 0||t.call(this)}}var En=function(r,e,t,n){function i(a){return a instanceof t?a:new t(function(s){s(a)})}return new(t||(t=Promise))(function(a,s){function o(u){try{l(n.next(u))}catch(c){s(c)}}function A(u){try{l(n.throw(u))}catch(c){s(c)}}function l(u){u.done?a(u.value):i(u.value).then(o,A)}l((n=n.apply(r,e||[])).next())})};class kp extends kx{constructor(e){var t;super(),this.options={},this.rendered=!1,this.destroyed=!1,this.context={model:new Ife},this.isCollapsingExpanding=!1,this.onResize=mc(()=>{this.resize()},300),this._setOptions(Object.assign({},kp.defaultOptions,e),!0),this.context.graph=this,this.options.autoResize&&((t=globalThis.addEventListener)===null||t===void 0||t.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,Pfe(e)),t){const{data:d}=e;d&&this.addData(d);return}const{behaviors:n,combo:i,data:a,edge:s,layout:o,node:A,plugins:l,theme:u,transforms:c}=e;n&&this.setBehaviors(n),a&&this.setData(a),A&&this.setNode(A),s&&this.setEdge(s),i&&this.setCombo(i),o&&this.setLayout(o),u&&this.setTheme(u),l&&this.setPlugins(l),c&&this.setTransforms(c)}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=At(e)?e(this.getTheme()):e}setLayout(e){this.options.layout=At(e)?e(this.getLayout()):e}getLayout(){return this.options.layout}setBehaviors(e){var t;this.options.behaviors=At(e)?e(this.getBehaviors()):e,(t=this.context.behavior)===null||t===void 0||t.setBehaviors(this.options.behaviors)}updateBehavior(e){this.setBehaviors(t=>t.map(n=>typeof n=="object"&&n.key===e.key?Object.assign(Object.assign({},n),e):n))}getBehaviors(){return this.options.behaviors||[]}setPlugins(e){var t;this.options.plugins=At(e)?e(this.getPlugins()):e,(t=this.context.plugin)===null||t===void 0||t.setPlugins(this.options.plugins)}updatePlugin(e){this.setPlugins(t=>t.map(n=>typeof n=="object"&&n.key===e.key?Object.assign(Object.assign({},n),e):n))}getPlugins(){return this.options.plugins||[]}getPluginInstance(e){return this.context.plugin.getPluginInstance(e)}setTransforms(e){var t;this.options.transforms=At(e)?e(this.getTransforms()):e,(t=this.context.transform)===null||t===void 0||t.setTransforms(this.options.transforms)}updateTransform(e){this.setTransforms(t=>t.map(n=>typeof n=="object"&&n.key===e.key?Object.assign(Object.assign({},n),e):n)),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(t=>this.context.model.getElementDataById(t)):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(At(e)?e(this.getData()):e)}addData(e){this.context.model.addData(At(e)?e(this.getData()):e)}addNodeData(e){this.context.model.addNodeData(At(e)?e(this.getNodeData()):e)}addEdgeData(e){this.context.model.addEdgeData(At(e)?e(this.getEdgeData()):e)}addComboData(e){this.context.model.addComboData(At(e)?e(this.getComboData()):e)}addChildrenData(e,t){this.context.model.addChildrenData(e,t)}updateData(e){this.context.model.updateData(At(e)?e(this.getData()):e)}updateNodeData(e){this.context.model.updateNodeData(At(e)?e(this.getNodeData()):e)}updateEdgeData(e){this.context.model.updateEdgeData(At(e)?e(this.getEdgeData()):e)}updateComboData(e){this.context.model.updateComboData(At(e)?e(this.getComboData()):e)}removeData(e){this.context.model.removeData(At(e)?e(this.getData()):e)}removeNodeData(e){this.context.model.removeNodeData(At(e)?e(this.getNodeData()):e)}removeEdgeData(e){this.context.model.removeEdgeData(At(e)?e(this.getEdgeData()):e)}removeComboData(e){this.context.model.removeComboData(At(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 En(this,void 0,void 0,function*(){var e;if(this.context.canvas)return yield this.context.canvas.ready;const{container:t="container",width:n,height:i,renderer:a,cursor:s,background:o,canvas:A,devicePixelRatio:l=(e=globalThis.devicePixelRatio)!==null&&e!==void 0?e:1}=this.options;if(t instanceof aN)this.context.canvas=t,s&&t.setCursor(s),a&&t.setRenderer(a),yield t.ready;else{const u=ln(t)?document.getElementById(t):t,c=AN(u);this.emit(Ge.BEFORE_CANVAS_INIT,{container:u,width:n,height:i});const d=Object.assign(Object.assign({},A),{container:u,width:n||c[0],height:i||c[1],background:o,renderer:a,cursor:s,devicePixelRatio:l}),h=new aN(d);this.context.canvas=h,yield h.ready,this.emit(Ge.AFTER_CANVAS_INIT,{canvas:h})}})}updateCanvas(e){var t,n;const{renderer:i,cursor:a,height:s,width:o}=e,A=this.context.canvas;A&&(i&&(this.emit(Ge.BEFORE_RENDERER_CHANGE,{renderer:this.options.renderer}),A.setRenderer(i),this.emit(Ge.AFTER_RENDERER_CHANGE,{renderer:i})),a&&A.setCursor(a),(Yt(o)||Yt(s))&&this.setSize((t=o??this.options.width)!==null&&t!==void 0?t:0,(n=s??this.options.height)!==null&&n!==void 0?n:0))}initRuntime(){this.context.options=this.options,this.context.batch||(this.context.batch=new kfe(this.context)),this.context.plugin||(this.context.plugin=new Rfe(this.context)),this.context.viewport||(this.context.viewport=new Dfe(this.context)),this.context.transform||(this.context.transform=new Qfe(this.context)),this.context.element||(this.context.element=new Ofe(this.context)),this.context.animation||(this.context.animation=new _fe(this.context)),this.context.layout||(this.context.layout=new Nfe(this.context)),this.context.behavior||(this.context.behavior=new Tfe(this.context))}prepare(){return En(this,void 0,void 0,function*(){if(yield Promise.resolve(),this.destroyed){console.error(Ta("The graph instance has been destroyed"));return}yield this.initCanvas(),this.initRuntime()})}render(){return En(this,void 0,void 0,function*(){if(yield this.prepare(),Sr(this,new vr(Ge.BEFORE_RENDER)),this.options.layout)if(!this.rendered&&OJ(this.options.layout)){const e=yield this.context.element.preLayoutDraw({type:"render"});yield Promise.all([e==null?void 0:e.finished,this.autoFit()])}else{const e=this.context.element.draw({type:"render"});yield Promise.all([e==null?void 0:e.finished,this.context.layout.postLayout()]),yield this.autoFit()}else{const e=this.context.element.draw({type:"render"});yield Promise.all([e==null?void 0:e.finished,this.autoFit()])}this.rendered=!0,Sr(this,new vr(Ge.AFTER_RENDER))})}draw(){return En(this,void 0,void 0,function*(){var e;yield this.prepare(),yield(e=this.context.element.draw())===null||e===void 0?void 0:e.finished})}layout(e){return En(this,void 0,void 0,function*(){yield this.context.layout.postLayout(e)})}stopLayout(){this.context.layout.stopLayout()}clear(){return En(this,void 0,void 0,function*(){const{model:e,element:t}=this.context;e.setData({}),e.clearChanges(),t==null||t.clear()})}destroy(){var e;Sr(this,new vr(Ge.BEFORE_DESTROY));const{layout:t,animation:n,element:i,model:a,canvas:s,behavior:o,plugin:A}=this.context;A==null||A.destroy(),o==null||o.destroy(),t==null||t.destroy(),n==null||n.destroy(),i==null||i.destroy(),a.destroy(),s==null||s.destroy(),this.options={},this.context={},this.off(),(e=globalThis.removeEventListener)===null||e===void 0||e.call(globalThis,"resize",this.onResize),this.destroyed=!0,Sr(this,new vr(Ge.AFTER_DESTROY))}getCanvas(){return this.context.canvas}resize(e,t){var n;const i=AN((n=this.context.canvas)===null||n===void 0?void 0:n.getContainer()),a=[e||i[0],t||i[1]];if(!this.context.canvas)return;const s=this.context.canvas.getSize();Qn(a,s)||(Sr(this,new vr(Ge.BEFORE_SIZE_CHANGE,{size:a})),this.context.canvas.resize(...a),Sr(this,new vr(Ge.AFTER_SIZE_CHANGE,{size:a})))}fitView(e,t){return En(this,void 0,void 0,function*(){var n;yield(n=this.context.viewport)===null||n===void 0?void 0:n.fitView(e,t)})}fitCenter(e){return En(this,void 0,void 0,function*(){var t;yield(t=this.context.viewport)===null||t===void 0?void 0:t.fitCenter({animation:e})})}autoFit(){return En(this,void 0,void 0,function*(){const{autoFit:e}=this.context.options;if(e)if(ln(e))e==="view"?yield this.fitView():e==="center"&&(yield this.fitCenter());else{const{type:t,animation:n}=e;t==="view"?yield this.fitView(e.options,n):t==="center"&&(yield this.fitCenter(n))}})}focusElement(e,t){return En(this,void 0,void 0,function*(){var n;yield(n=this.context.viewport)===null||n===void 0?void 0:n.focusElements(Array.isArray(e)?e:[e],{animation:t})})}zoomBy(e,t,n){return En(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",scale:e,origin:n},t)})}zoomTo(e,t,n){return En(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 En(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",rotate:e,origin:n},t)})}rotateTo(e,t,n){return En(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 En(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"relative",translate:e},t)})}translateTo(e,t){return En(this,void 0,void 0,function*(){yield this.context.viewport.transform({mode:"absolute",translate:e},t)})}getPosition(){return hn([0,0],this.getCanvasByViewport([0,0]))}translateElementBy(e,t){return En(this,arguments,void 0,function*(n,i,a=!0){var s,o;const[A,l]=ai(n)?[n,(s=i)!==null&&s!==void 0?s:!0]:[{[n]:i},a];Object.entries(A).forEach(([u,c])=>this.context.model.translateNodeLikeBy(u,c)),yield(o=this.context.element.draw({animation:l,stage:"translate"}))===null||o===void 0?void 0:o.finished})}translateElementTo(e,t){return En(this,arguments,void 0,function*(n,i,a=!0){var s,o;const[A,l]=ai(n)?[n,(s=i)!==null&&s!==void 0?s:!0]:[{[n]:i},a];Object.entries(A).forEach(([u,c])=>this.context.model.translateNodeLikeTo(u,c)),yield(o=this.context.element.draw({animation:l,stage:"translate"}))===null||o===void 0?void 0:o.finished})}getElementPosition(e){return this.context.model.getElementPosition(e)}getElementRenderStyle(e){return DE(this.context.element.getElement(e).attributes,["context"])}setElementVisibility(e,t){return En(this,arguments,void 0,function*(n,i,a=!0){var s,o;const[A,l]=ai(n)?[n,(s=i)!==null&&s!==void 0?s:!0]:[{[n]:i},a],u={nodes:[],edges:[],combos:[]};Object.entries(A).forEach(([h,f])=>{const p=this.getElementType(h);u[`${p}s`].push({id:h,style:{visibility:f}})});const{model:c,element:d}=this.context;c.preventUpdateNodeLikeHierarchy(()=>{c.updateData(u)}),yield(o=d.draw({animation:l,stage:"visibility"}))===null||o===void 0?void 0:o.finished})}showElement(e,t){return En(this,void 0,void 0,function*(){const n=Array.isArray(e)?e:[e];yield this.setElementVisibility(Object.fromEntries(n.map(i=>[i,"visible"])),t)})}hideElement(e,t){return En(this,void 0,void 0,function*(){const n=Array.isArray(e)?e:[e];yield this.setElementVisibility(Object.fromEntries(n.map(i=>[i,"hidden"])),t)})}getElementVisibility(e){var t,n;const i=this.context.element.getElement(e);return(n=(t=i==null?void 0:i.style)===null||t===void 0?void 0:t.visibility)!==null&&n!==void 0?n:"visible"}setElementZIndex(e,t){return En(this,void 0,void 0,function*(){var n;const i={nodes:[],edges:[],combos:[]},a=ai(e)?e:{[e]:t};Object.entries(a).forEach(([A,l])=>{const u=this.getElementType(A);i[`${u}s`].push({id:A,style:{zIndex:l}})});const{model:s,element:o}=this.context;s.preventUpdateNodeLikeHierarchy(()=>s.updateData(i)),yield(n=o.draw({animation:!1,stage:"zIndex"}))===null||n===void 0?void 0:n.finished})}frontElement(e){return En(this,void 0,void 0,function*(){const t=Array.isArray(e)?e:[e],{model:n}=this.context,i={};t.map(a=>{const s=n.getFrontZIndex(a);if(n.getElementType(a)==="combo"){const A=n.getAncestorsData(a,yn).at(-1)||this.getComboData(a),l=[A,...n.getDescendantsData(ve(A))],u=s-lN(A);l.forEach(d=>{i[ve(d)]=this.getElementZIndex(ve(d))+u});const{internal:c}=XB(l.map(ve),d=>n.getRelatedEdgesData(d));c.forEach(d=>{const h=ve(d);i[h]=this.getElementZIndex(h)+u})}else i[a]=s}),yield this.setElementZIndex(i)})}getElementZIndex(e){return lN(this.context.model.getElementDataById(e))}setElementState(e,t){return En(this,arguments,void 0,function*(n,i,a=!0){var s,o;const[A,l]=ai(n)?[n,(s=i)!==null&&s!==void 0?s:!0]:[{[n]:i},a],u=d=>d?Array.isArray(d)?d:[d]:[],c={nodes:[],edges:[],combos:[]};Object.entries(A).forEach(([d,h])=>{const f=this.getElementType(d);c[`${f}s`].push({id:d,states:u(h)})}),this.updateData(c),yield(o=this.context.element.draw({animation:l,stage:"state"}))===null||o===void 0?void 0:o.finished})}getElementState(e){return this.context.model.getElementState(e)}getElementRenderBounds(e){return this.context.element.getElement(e).getRenderBounds()}collapseElement(e){return En(this,arguments,void 0,function*(t,n=!0){const{model:i,element:a}=this.context;if(Mi(i.getNodeLikeData([t])[0])||this.isCollapsingExpanding)return;typeof n=="boolean"&&(n={animation:n,align:!1});const s=i.getElementType(t);yield this.frontElement(t),this.isCollapsingExpanding=!0,i.updateData(s==="node"?{nodes:[{id:t,style:{collapsed:!0}}]}:{combos:[{id:t,style:{collapsed:!0}}]}),s==="node"?yield a.collapseNode(t,n):s==="combo"&&(yield a.collapseCombo(t,!!n.animation)),this.isCollapsingExpanding=!1})}expandElement(e){return En(this,arguments,void 0,function*(t,n=!0){const{model:i,element:a}=this.context;if(!Mi(i.getNodeLikeData([t])[0])||this.isCollapsingExpanding)return;typeof n=="boolean"&&(n={animation:n,align:!1});const s=i.getElementType(t);this.isCollapsingExpanding=!0,i.updateData(s==="node"?{nodes:[{id:t,style:{collapsed:!1}}]}:{combos:[{id:t,style:{collapsed:!1}}]}),s==="node"?yield a.expandNode(t,n):s==="combo"&&(yield a.expandCombo(t,!!n.animation)),this.isCollapsingExpanding=!1})}setElementCollapsibility(e,t){const n=this.getElementType(e);n==="node"?this.updateNodeData([{id:e,style:{collapsed:t}}]):n==="combo"&&this.updateComboData([{id:e,style:{collapsed:t}}])}toDataURL(){return En(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)}}kp.defaultOptions={autoResize:!1,theme:"light",rotation:0,zoom:1,zoomRange:[.01,10]};class Hfe extends No{beforeDraw(e){const{add:t,update:n}=e,{model:i}=this.context;return[...t.edges.entries(),...n.edges.entries()].forEach(([,a])=>{M4(i,a)}),e}}const M4=(r,e)=>{const{source:t,target:n}=e,i=r.getElementDataById(t),a=r.getElementDataById(n),s=__(i,c=>r.getParentData(c,yn)),o=__(a,c=>r.getParentData(c,yn)),A=ve(s),l=ve(o),u={sourceNode:A,targetNode:l};return e.style?Object.assign(e.style,u):e.style=u,e},$fe=(r,e,t)=>{const[n,i]=e,[a,s]=t;if(i===n)return a;const o=(r-n)/(i-n);return a+o*(s-a)},Gfe=(r,e,t)=>{const[n,i]=e,[a,s]=t,o=Math.log(r-n+1)/Math.log(i-n+1);return a+o*(s-a)},zfe=(r,e,t,n=2)=>{const[i,a]=e,[s,o]=t,A=Math.pow((r-i)/(a-i),n);return s+A*(o-s)},Vfe=(r,e,t)=>{const[n,i]=e,[a,s]=t,o=Math.sqrt((r-n)/(i-n));return a+o*(s-a)};class Tp extends No{constructor(e,t){super(e,li({},Tp.defaultOptions,t)),this.assignSizeByCentrality=(n,i,a,s,o,A)=>{const l=[i,a],u=[s[0],o[0]],c=[s[1],o[1]],d=[s[2],o[2]],h=(f,p)=>{if(typeof A=="function")return A(f,l,p);switch(A){case"linear":return $fe(f,l,p);case"log":return Gfe(f,l,p);case"pow":return zfe(f,l,p,2);case"sqrt":return Vfe(f,l,p);default:return p[0]}};return[h(n,u),h(n,c),h(n,d)]}}beforeDraw(e){const{model:t}=this.context,n=t.getNodeData(),i=Yi(this.options.maxSize),a=Yi(this.options.minSize),s=this.getCentralities(this.options.centrality),o=s.size>0?Math.max(...s.values()):0,A=s.size>0?Math.min(...s.values()):0;return n.forEach(l=>{var u;const c=this.assignSizeByCentrality(s.get(ve(l))||0,A,o,a,i,this.options.scale),d=(u=this.context.element)===null||u===void 0?void 0:u.getElement(ve(l)),h={size:c};this.assignLabelStyle(h,c,l,d),(!d||!Ph(h,d.attributes))&&qi(e,d?"update":"add","node",li(l,{style:h}),!0)}),e}assignLabelStyle(e,t,n,i){var a;const s=i?i.config.style:(a=this.context.element)===null||a===void 0?void 0:a.getElementComputedStyle("node",n);if(Object.assign(e,yc(s,["labelFontSize","labelLineHeight"])),this.options.mapLabelSize){const o=this.getLabelSizeByNodeSize(t,1/0,Number(e.labelFontSize));Object.assign(e,{labelFontSize:o,labelLineHeight:o+HY(e.labelPadding)})}return e}getLabelSizeByNodeSize(e,t,n){const i=Math.min(...e)/2,[a,s]=Array.isArray(this.options.mapLabelSize)?this.options.mapLabelSize:[n,t];return Math.min(s,Math.max(i,a))}getCentralities(e){const{model:t}=this.context,n=t.getData();if(typeof e=="function")return e(n);const i=t.getRelatedEdgesData.bind(t);return UR(n,i,e)}}Tp.defaultOptions={centrality:{type:"degree"},maxSize:80,minSize:20,scale:"linear",mapLabelSize:!1};class Fp extends No{constructor(e,t){super(e,Object.assign({},Fp.defaultOptions,t))}get ref(){return this.context.model.getRootsData()[0]}afterLayout(){var e;const t=_r(this.ref),{graph:n,model:i}=this.context;(e=i.getData().nodes)===null||e===void 0||e.forEach(s=>{var o;if(ve(s)===ve(this.ref))return;const A=QR(hn(_r(s),t)),l=Math.abs(A)>Math.PI/2,u=!s.children||s.children.length===0,c=ve(s),d=(o=this.context.element)===null||o===void 0?void 0:o.getElement(c);if(!d||!d.isVisible())return;const h=Yi(n.getElementRenderStyle(c).size)[0]/2,f=(u?1:-1)*(h+this.options.offset),p=[["translate",f*Math.cos(A),f*Math.sin(A)],["rotate",l?ki(A)+180:ki(A)]];i.updateNodeData([{id:ve(s),style:{labelTextAlign:l===u?"right":"left",labelTextBaseline:"middle",labelTransform:p}}])}),n.draw()}}Fp.defaultOptions={offset:5};const Kfe="quadratic",jfe=35,Wfe=50,dN=["top","top-right","right","right-bottom","bottom","bottom-left","left","left-top"];class Mp extends No{constructor(e,t){super(e,Object.assign({},Mp.defaultOptions,t)),this.cacheMergeStyle=new Map,this.getAffectedParallelEdges=n=>{const{add:{edges:i},update:{nodes:a,edges:s,combos:o},remove:{edges:A}}=n,{model:l}=this.context,u=new Map,c=(f,p)=>{l.getRelatedEdgesData(p).forEach(v=>!u.has(ve(v))&&u.set(ve(v),v))};a.forEach(c),o.forEach(c);const d=f=>{const p=new Set(n.remove.edges.keys()),g=l.getEdgeData().filter(v=>!p.has(ve(v))).map(v=>M4(l,v));qfe(f,g).forEach(v=>{const m=ve(v);u.has(m)||u.set(m,v)})};if(A.size&&A.forEach(d),i.size&&i.forEach(d),s.size){const f=z3(uC(l.getChanges())).update.edges;s.forEach(p=>{var g;d(p);const v=(g=f.find(m=>ve(m.value)===ve(p)))===null||g===void 0?void 0:g.original;v&&!CC(p,v)&&d(v)})}Ja(this.options.edges)||u.forEach((f,p)=>!this.options.edges.includes(p)&&u.delete(p));const h=l.getEdgeData().map(ve);return new Map([...u].sort((f,p)=>h.indexOf(f[0])-h.indexOf(p[0])))},this.applyBundlingStyle=(n,i,a)=>{var s,o;const{edgeMap:A,reverses:l}=hN(i),u=(s=this.options.loopMode)!==null&&s!==void 0?s:"spread",c=(o=this.options.loopDistance)!==null&&o!==void 0?o:a,d=new Map;A.forEach(h=>{h.forEach((f,p,g)=>{var v,m;const y=g.length,w=f.style||{};if(f.source===f.target)if(u==="nested"){const k=w.loopPlacement||"top",_=`${f.source}-${k}`;if(w.loopPlacement=k,w.loopDist===void 0){const T=(v=d.get(_))!==null&&v!==void 0?v:0;w.loopDist=jfe+T*c,d.set(_,T+1)}}else{const k=dN.length;w.loopPlacement=dN[p%k],w.loopDist=Math.floor(p/k)*a+Wfe}else if(y===1)w.curveOffset=0;else{const k=(p%2===0?1:-1)*(l[`${f.source}|${f.target}|${p}`]?-1:1);w.curveOffset=y%2===1?k*Math.ceil(p/2)*a*2:k*(Math.floor(p/2)*a*2+a)}const B=Object.assign(f,{type:Kfe,style:w}),x=(m=this.context.element)===null||m===void 0?void 0:m.getElement(ve(f));(!x||!Ph(B.style,x.attributes))&&qi(n,x?"update":"add","edge",B,!0)})})},this.resetEdgeStyle=n=>{const i=n.style||{},a=this.cacheMergeStyle.get(ve(n))||{};return Object.keys(a).forEach(s=>{Qn(i[s],a[s])&&(n[s]?i[s]=n[s]:delete i[s])}),Object.assign(n,{style:i})},this.applyMergingStyle=(n,i)=>{const{edgeMap:a,reverses:s}=hN(i);a.forEach(o=>{var A;if(o.length===1){const u=o[0],c=(A=this.context.element)===null||A===void 0?void 0:A.getElement(ve(u)),d=this.resetEdgeStyle(u);(!c||!Ph(d,c.attributes))&&qi(n,c?"update":"add","edge",d);return}const l=o.map(({source:u,target:c,style:d={}},h)=>{const{startArrow:f,endArrow:p}=d,g={},[v,m]=s[`${u}|${c}|${h}`]?["endArrow","startArrow"]:["startArrow","endArrow"];return qu(f)&&(g[v]=f),qu(p)&&(g[m]=p),g}).reduce((u,c)=>Object.assign(Object.assign({},u),c),{});o.forEach((u,c,d)=>{var h;if(c!==0){qi(n,"remove","edge",u);return}const f=Object.assign({},At(this.options.style)?this.options.style(d):this.options.style,{childrenData:d});this.cacheMergeStyle.set(ve(u),f);const p=Object.assign(Object.assign({},u),{type:"line",style:Object.assign(Object.assign(Object.assign({},u.style),l),f)}),g=(h=this.context.element)===null||h===void 0?void 0:h.getElement(ve(u));(!g||!Ph(p.style,g.attributes))&&qi(n,g?"update":"add","edge",p,!0)})})}}beforeDraw(e){const t=this.getAffectedParallelEdges(e);return t.size===0||(this.options.mode==="bundle"?this.applyBundlingStyle(e,t,this.options.distance):this.applyMergingStyle(e,t)),e}}Mp.defaultOptions={mode:"bundle",distance:15,loopMode:"spread",loopDistance:15};const hN=r=>{const e=new Map,t=new Set,n={},i=new Map;for(const[a,s]of r){if(t.has(a))continue;const{source:o,target:A}=s,l=`${o}-${A}`;e.has(l)||(e.set(l,[]),i.set(l,new Set));const u=e.get(l),c=i.get(l);u&&c&&!c.has(a)&&(u.push(s),c.add(a),t.add(a));for(const[d,h]of r)if(!(t.has(d)||d===a)&&CC(s,h)){const f=e.get(l),p=i.get(l);f&&p&&!p.has(d)&&(f.push(h),p.add(d),o===h.target&&A===h.source&&(n[`${h.source}|${h.target}|${f.length-1}`]=!0),t.add(d))}}return{edgeMap:e,reverses:n}},qfe=(r,e,t)=>e.filter(n=>CC(n,r)),CC=(r,e)=>{const{sourceNode:t,targetNode:n}=r.style||{},{sourceNode:i,targetNode:a}=e.style||{};return t===i&&n===a||t===a&&n===i};class Yfe extends No{beforeDraw(e,t){const{stage:n}=t;if(n==="visibility")return e;const{model:i}=this.context,{update:{nodes:a,edges:s,combos:o}}=e,A=(l,u)=>{i.getRelatedEdgesData(u).forEach(d=>!s.has(ve(d))&&s.set(ve(d),d))};return a.forEach(A),o.forEach(A),e}}const Xfe={animation:{"combo-collapse":FR,"combo-expand":RY,"node-collapse":kR,"node-expand":PY,"path-in":TR,"path-out":UY,fade:LY,translate:NY},behavior:{"brush-select":Tc,"click-select":cg,"collapse-expand":Bg,"create-edge":Eg,"drag-canvas":xg,"drag-element-force":RJ,"drag-element":Nc,"fix-element-size":Cg,"focus-element":Sg,"hover-activate":_g,"lasso-select":DJ,"auto-adapt-label":Ag,"optimize-viewport-transform":kg,"scroll-canvas":Tg,"zoom-canvas":Fg},combo:{circle:UZ,rect:RZ},edge:{cubic:_A,line:fQ,polyline:wg,quadratic:bg,"cubic-horizontal":vg,"cubic-radial":mg,"cubic-vertical":yg},layout:{"antv-dagre":sD,"combo-combined":HAe,"compact-box":qJ,"d3-force":Qx,"force-atlas2":k3,circular:AD,concentric:lD,dagre:S3,dendrogram:tee,fishbone:Jg,force:_3,fruchterman:T3,grid:F3,indented:aee,mds:L3,mindmap:uee,radial:P3,random:U3,snake:ep},node:{circle:Ic,diamond:VX,ellipse:fg,hexagon:YX,html:gg,image:AQ,rect:NZ,star:PZ,donut:hg,triangle:pg},palette:{spectral:KAe,tableau:jAe,oranges:WAe,greens:qAe,blues:YAe},theme:{dark:ffe,light:pfe},plugin:{"bubble-sets":rp,"edge-bundling":ap,"edge-filter-lens":sp,"grid-line":lp,background:tp,contextmenu:ip,fisheye:op,fullscreen:Ap,history:up,hull:dp,legend:wp,minimap:bp,snapline:Bp,timebar:Ep,title:efe,toolbar:xp,tooltip:Cp,watermark:Sp},transform:{"arrange-draw-order":vfe,"collapse-expand-combo":mfe,"collapse-expand-node":yfe,"get-edge-actual-ends":Hfe,"map-node-size":Tp,"place-radial-labels":Fp,"process-parallel-edges":Mp,"update-related-edges":Yfe},shape:{circle:us,ellipse:xc,group:Mr,html:xA,image:mx,line:vA,path:Ai,polygon:CA,polyline:qf,rect:jr,text:SA,label:fs,badge:Ll}};function Zfe(){Object.entries(Xfe).forEach(([r,e])=>{Object.entries(e).forEach(([t,n])=>{wfe(r,t,n)})})}Zfe();function Jfe(r,e){const t=new Map,n=new Map;for(const u of e.edges){const c=t.get(u.target)??[];c.push(u.source),t.set(u.target,c),n.set(`${u.source}\0${u.target}`,u.id)}const i=new Set([r]),a=new Set,s=[r];for(;s.length>0;){const u=s.shift();for(const c of t.get(u)??[]){const d=n.get(`${c}\0${u}`);d&&a.add(d),i.has(c)||(i.add(c),s.push(c))}}const o=[r];let A=r;const l=new Set([r]);for(;;){const c=(t.get(A)??[])[0];if(!c||l.has(c))break;l.add(c),o.push(c),A=c}return{nodeIds:i,edgeIds:a,chain:o}}function _E(){return typeof document<"u"&&document.documentElement.classList.contains("dark")}function io(r,e){return typeof document>"u"?e:getComputedStyle(document.documentElement).getPropertyValue(r).trim()||e}const ege=["#c678dd","#56b6c2","#e5c07b","#98c379","#e06c75","#61afef"],tge=["#8250df","#0f7490","#9a6700","#3a7d34","#c0392b","#1f6feb"];function gc(){return{local:io("--el-color-warning","#f0a35e"),remote:io("--el-color-primary","#4c9aff"),base:io("--el-color-info","#9d8cff"),lineage:io("--el-color-success","#56d364"),fallback:io("--el-text-color-secondary","#5a5a5a"),others:_E()?ege:tge}}function I4(r){return r.slice(0,7)}function zb(r){return`tip:${r}`}function nge(r){return r.startsWith("tip:")?r.slice(4):null}function fN(r,e){const t=r.trim();if(!t.includes("/"))return null;const n=[...e].map(a=>a.trim()).filter(Boolean).sort((a,s)=>s.length-a.length);for(const a of n){const s=`${a}/`;if(t.startsWith(s)&&t.length>s.length)return{remoteName:a,shortName:t.slice(s.length)}}const i=t.indexOf("/");return i<=0||i===t.length-1?null:{remoteName:t.slice(0,i),shortName:t.slice(i+1)}}function rge(r){let e=0;for(let t=0;t<r.length;t++)e=e*31+r.charCodeAt(t)>>>0;return e}function O4(r){const e=gc();if(!r.remote)return e.local;const t=r.remoteName||"";return!t||t===r.defaultRemote?e.remote:e.others[rge(t)%e.others.length]}function ige(r){const e=gc();switch(r){case"base":return e.base;case"local-tip":return e.local;case"remote-tip":return e.remote;case"tip":return e.lineage;default:return e.fallback}}function age(r){const e=new Map;for(const t of r)e.set(t.sha,t.parents);return e}function sge(r,e,t){const n=new Set([r]);let i=[...t.get(r)??[]].filter(a=>!n.has(a));for(;i.length>0;){const a=[],s=[];for(const o of i)if(!n.has(o)){if(n.add(o),e.has(o)){a.push(o);continue}for(const A of t.get(o)??[])n.has(A)||s.push(A)}if(a.length>0)return[...new Set(a)];i=s}return[]}function L4(r){const e=new Set;for(const t of r){if(!t.remote)continue;const n=t.name.indexOf("/");n>0&&e.add(t.name.slice(0,n))}return[...e]}function oge(r,e){var f,p;const t=r.tips;if(t.length===0)return{nodes:[],edges:[]};const n=(f=e==null?void 0:e.remotes)!=null&&f.length?e.remotes:L4(t),i=((p=e==null?void 0:e.defaultRemote)==null?void 0:p.trim())||(n.includes("origin")?"origin":n[0]||"origin"),a=new Set;for(const g of t){if(g.remote)continue;t.find(m=>{if(!m.remote||m.sha!==g.sha)return!1;const y=fN(m.name,n);return(y==null?void 0:y.remoteName)===i&&y.shortName===g.name})&&a.add(g.name)}const s=t.filter(g=>g.remote||!a.has(g.name)),o=age(r.nodes),A=new Set(s.map(g=>g.sha)),l=new Map;for(const g of s){const v=l.get(g.sha)??[];v.push(g),l.set(g.sha,v)}const u=s.map(g=>{const v=g.remote?fN(g.name,n):null,m=g.remote?(v==null?void 0:v.shortName)??g.name:g.name,y=g.remote?v==null?void 0:v.remoteName:void 0,w=O4({remote:g.remote,remoteName:y,defaultRemote:i});return{id:zb(g.name),data:{label:m,sub:I4(g.sha),kind:g.remote?"remote-tip":"local-tip",sha:g.sha,tipName:m,tipFullName:g.name,remote:g.remote,remoteName:y,color:w}}}),c=[],d=new Set;let h=0;for(const g of s){const v=sge(g.sha,A,o);for(const m of v){const y=l.get(m)??[];for(const w of y){if(w.name===g.name)continue;const B=`${w.name}\0${g.name}`;d.has(B)||(d.add(B),c.push({id:`e-${h++}`,source:zb(w.name),target:zb(g.name)}))}}}return{nodes:u,edges:c}}function Age(r,e){const t=r.lineage;if(t!=null&&t.mergeBase){const n=gc();return{nodes:[{id:"base",data:{label:`分叉点 ${I4(t.mergeBase)}`,sub:"merge-base",kind:"base",sha:t.mergeBase,color:n.base}},{id:"into",data:{label:t.into,sub:`+${t.intoOnlyCount} commits`,kind:"remote-tip",sha:t.intoSha,tipName:t.into,tipFullName:t.into,color:n.remote}},{id:"from",data:{label:t.from,sub:`+${t.fromOnlyCount} commits`,kind:"local-tip",sha:t.fromSha,tipName:t.from,tipFullName:t.from,color:n.local}}],edges:[{id:"e-base-into",source:"base",target:"into"},{id:"e-base-from",source:"base",target:"from"}]}}return oge(r,e)}function lge(r,e){var a,s,o;if((a=r.lineage)!=null&&a.mergeBase){const A=gc();return[{key:"base",label:"分叉点",color:A.base},{key:"into",label:"合入目标",color:A.remote},{key:"from",label:"我的分支",color:A.local}]}const t=(s=e==null?void 0:e.remotes)!=null&&s.length?e.remotes:L4(r.tips),n=((o=e==null?void 0:e.defaultRemote)==null?void 0:o.trim())||(t.includes("origin")?"origin":t[0]||"origin"),i=[{key:"local",label:"本地",color:gc().local}];for(const A of t)i.push({key:`remote:${A}`,label:A,color:O4({remote:!0,remoteName:A,defaultRemote:n})});return i}const uge={class:"commit-graph"},cge={key:0,class:"graph-msg"},dge={key:1,class:"graph-msg"},hge={key:2,class:"graph-msg"},fge=["value","onKeydown"],gge={class:"graph-search-meta"},pge={class:"graph-color-legend",title:"节点颜色:本地 / 各远程"},vge={class:"path-hint"},gN=22,mge=40,yge=Or({__name:"CommitGraph",props:{data:{},loading:{type:Boolean},error:{},defaultRemote:{},remotes:{}},setup(r){const e=r;function t(N){if(N.length<=gN)return N;const K=gN-1,J=Math.ceil(K*.45),be=K-J;return`${N.slice(0,J)}…${N.slice(-be)}`}const n=Fe(null),i=Fe(null),a=j4(null);let s=null,o=null,A=null,l=0;const u=Fe(!1),c=Fe(""),d=Fe(0),h=Fe(""),f=Ue(()=>({defaultRemote:e.defaultRemote,remotes:e.remotes})),p=Ue(()=>e.data?(_E(),lge(e.data,f.value)):[]),g=Ue(()=>{const N=c.value.trim().toLowerCase();return!N||!A?[]:A.nodes.filter(K=>{const J=(K.data.tipName||K.data.label||"").toLowerCase(),be=(K.data.sha||"").toLowerCase();return J.includes(N)||be.includes(N)}).map(K=>K.id)});function v(N){const K=A==null?void 0:A.nodes.find(J=>J.id===N);return K?K.data.label||K.data.tipName||N.slice(0,7):nge(N)??N.slice(0,7)}function m(){var re;const N=n.value,K=Math.max(120,(N==null?void 0:N.clientWidth)||((re=i.value)==null?void 0:re.clientWidth)||640),J=(N==null?void 0:N.clientHeight)||0,be=Math.max(160,(J>0?J:360)-mge);return{width:K,height:be}}function y(){const N=i.value;N&&(N.style.width="",N.style.height="",N.style.minHeight="",N.style.maxHeight="")}function w(){return new Promise(N=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>N())})})}async function B(N){if(!A)return;const K={};for(const J of A.nodes)K[J.id]=[];for(const J of A.edges)K[J.id]=[];await N.setElementState(K),h.value=""}async function x(N,K){if(!A)return;const{nodeIds:J,edgeIds:be,chain:re}=Jfe(K,A),ne={};for(const ue of A.nodes)ue.id===K?ne[ue.id]=["selected"]:J.has(ue.id)?ne[ue.id]=["highlight"]:ne[ue.id]=["inactive"];for(const ue of A.edges)ne[ue.id]=be.has(ue.id)?["highlight"]:["inactive"];await N.setElementState(ne),h.value=re.map(v).join(" ← ")}async function k(N){const K=a.value;if(!(!K||!A)){await x(K,N);try{await K.focusElement(N,{duration:300})}catch{}}}function _(){u.value=!0,d.value=0,Rh(()=>{var K;const N=(K=n.value)==null?void 0:K.querySelector(".graph-search-input");N==null||N.focus(),N==null||N.select()})}function T(){u.value=!1,c.value="",d.value=0}async function F(N){const K=g.value;if(!K.length)return;const J=(d.value+N+K.length*50)%K.length;d.value=J,await k(K[J])}async function I(){if(g.value.length){if(g.value.length===1){d.value=0,await k(g.value[0]);return}await F(1)}}function O(N){if((N.ctrlKey||N.metaKey)&&N.key.toLowerCase()==="f"){N.preventDefault(),N.stopPropagation(),_();return}N.key==="Escape"&&u.value&&(N.preventDefault(),T())}async function P(){const N=a.value;if(a.value=null,A=null,N)try{N.destroy()}catch{}y()}async function G(N){const{width:K,height:J}=m();K<=0||J<=0||(N.setSize(K,J),await N.fitView())}async function ee(){const N=++l;await Rh();const K=i.value;if(!K||!e.data||(await P(),N!==l)||(h.value="",await w(),N!==l))return;y();const J=Age(e.data,f.value);if(A=J,J.nodes.length===0)return;const{width:be,height:re}=m(),ne=_E(),ue={onSolid:"#0b0f16",accent:io("--el-color-primary","#6f6bff"),fg:io("--el-text-color-primary","#e6ecf5"),dim:io("--el-text-color-secondary","#61728a"),nodeEdge:ne?"rgba(255,255,255,0.25)":"rgba(16,24,40,0.22)"},Y=new kp({container:K,width:be,height:re,data:J,autoFit:"view",padding:32,theme:ne?"dark":"light",layout:{type:"dagre",rankdir:"LR",nodesep:36,ranksep:72,controlPoints:!0},node:{type:"rect",style:{size:[176,46],radius:4,labelText:U=>{var de,X;const W=(de=U.data)==null?void 0:de.sub,ie=((X=U.data)==null?void 0:X.label)??"",Ee=t(ie);return W?`${Ee}
325
- ${W}`:Ee},labelFill:ue.onSolid,labelFontSize:11,labelFontWeight:600,labelFontFamily:"ui-monospace, SFMono-Regular, Menlo, Consolas, monospace",labelPlacement:"center",fill:U=>{const W=U.data;return W!=null&&W.color?W.color:ige((W==null?void 0:W.kind)??"local-tip")},stroke:ue.nodeEdge,lineWidth:1,opacity:1},state:{selected:{stroke:ue.accent,lineWidth:3,shadowColor:ue.accent,shadowBlur:12,opacity:1},highlight:{stroke:ue.fg,lineWidth:2.5,opacity:1},inactive:{opacity:.18}}},edge:{type:"cubic-horizontal",style:{stroke:ue.dim,lineWidth:2,endArrow:!0,opacity:1},state:{highlight:{stroke:ue.accent,lineWidth:3,opacity:1,endArrow:!0},inactive:{opacity:.2}}},behaviors:["drag-canvas","zoom-canvas","drag-element"]});Y.on(Ki.CLICK,U=>{var Ee;const W=U,ie=String(W.targetId??((Ee=W.target)==null?void 0:Ee.id)??"");ie&&x(Y,ie)}),Y.on(cs.CLICK,U=>{var Ee;const W=U,ie=String(W.targetId??((Ee=W.target)==null?void 0:Ee.id)??"");ie&&ie!=="canvas"&&!ie.startsWith("canvas")||B(Y)}),a.value=Y,await Y.render(),N===l&&(await w(),!(N!==l||a.value!==Y)&&(y(),await G(Y)))}function te(){s==null||s.disconnect();const N=n.value;if(!N)return;let K=null;s=new ResizeObserver(()=>{K&&clearTimeout(K),K=setTimeout(()=>{const J=a.value,{width:be,height:re}=m();!J||be<80||re<80||G(J)},50)}),s.observe(N)}return Ds(()=>{var N;ee().then(te),(N=n.value)==null||N.addEventListener("keydown",O),o=new MutationObserver(()=>void ee()),o.observe(document.documentElement,{attributes:!0,attributeFilter:["class"]})}),K4(()=>{var N;l+=1,(N=n.value)==null||N.removeEventListener("keydown",O),o==null||o.disconnect(),o=null,s==null||s.disconnect(),s=null,P()}),en(()=>[e.data,e.defaultRemote??"",(e.remotes??[]).join("\0")],()=>{T(),ee()}),en(c,()=>{d.value=0}),(N,K)=>{var be,re,ne;const J=Oe("el-button");return H(),Ae("div",uge,[r.error?(H(),Ae("div",cge,ae(r.error),1)):r.loading&&!r.data?(H(),Ae("div",dge,"加载分支图…")):(be=r.data)!=null&&be.tips.length?(H(),Ae("div",{key:3,ref_key:"stageRef",ref:n,class:"graph-stage",tabindex:"0",title:"Ctrl+F 搜索分支节点"},[z("div",{ref_key:"containerRef",ref:i,class:"graph-g6"},null,512),u.value?ke("",!0):(H(),Ae("button",{key:0,type:"button",class:"graph-search-toggle",title:"Ctrl+F",onClick:_}," 搜索节点 ")),u.value?(H(),Ae("div",{key:1,class:"graph-search",onMousedown:K[3]||(K[3]=Vn(()=>{},["stop"])),onClick:K[4]||(K[4]=Vn(()=>{},["stop"]))},[z("input",{class:"graph-search-input",type:"search",value:c.value,placeholder:"搜索分支名 / sha…",onInput:K[0]||(K[0]=ue=>c.value=ue.target.value),onKeydown:[wl(Vn(I,["prevent"]),["enter"]),wl(Vn(T,["prevent"]),["esc"])]},null,40,fge),z("span",gge,ae(g.value.length?`${Math.min(d.value+1,g.value.length)}/${g.value.length}`:"0"),1),V(J,{size:"small",text:"",disabled:!g.value.length,onClick:K[1]||(K[1]=ue=>F(-1))},{default:R(()=>[...K[5]||(K[5]=[oe("上一个",-1)])]),_:1},8,["disabled"]),V(J,{size:"small",text:"",disabled:!g.value.length,onClick:K[2]||(K[2]=ue=>F(1))},{default:R(()=>[...K[6]||(K[6]=[oe("下一个",-1)])]),_:1},8,["disabled"]),V(J,{size:"small",text:"",onClick:T},{default:R(()=>[...K[7]||(K[7]=[oe("关闭",-1)])]),_:1})],32)):ke("",!0),z("div",pge,[(H(!0),Ae(rt,null,Ot(p.value,ue=>(H(),Ae("div",{key:ue.key,class:"graph-color-legend-row"},[z("span",{class:"legend-swatch",style:bN({background:ue.color})},null,4),z("span",null,ae(ue.label),1)]))),128))]),z("div",vge,ae(h.value||((ne=(re=r.data)==null?void 0:re.lineage)!=null&&ne.mergeBase?"三节点:分叉点 / 合入目标 / 我的分支":"点击分支高亮到根源的链路 · 点击空白恢复 · 连线:较近 tip 祖先 → 子分支 · Ctrl+F 搜索")),1)],512)):(H(),Ae("div",hge,"没有分支 tip"))])}}}),wge=Rr(yge,[["__scopeId","data-v-96d1c194"]]),bge={class:"branch-option"},Bge=Or({__name:"BranchTreeSelect",props:{modelValue:{},placeholder:{default:"选择分支"},scope:{default:"all"},remoteFirst:{type:Boolean,default:!1},multiple:{type:Boolean,default:!1},excludeMergeTemp:{type:Boolean,default:!1}},emits:["update:modelValue"],setup(r,{emit:e}){const t=r,n=e,i=vc(),a=Ue(()=>UH(IN(i.list,t.scope,{excludeMergeTemp:t.excludeMergeTemp}),t.remoteFirst)),s=Ue(()=>Array.isArray(t.modelValue)?t.modelValue.filter(Boolean).join(", "):t.modelValue);function o(l,u){if(!l)return!0;const c=l.toLowerCase();return(u.label??"").toLowerCase().includes(c)||(u.value??"").toLowerCase().includes(c)||(u.fullName??"").toLowerCase().includes(c)}function A(l){if(t.multiple){n("update:modelValue",Array.isArray(l)?l:[]);return}n("update:modelValue",typeof l=="string"?l:"")}return(l,u)=>{const c=Oe("el-tooltip"),d=Oe("el-tree-select");return H(),Re(d,{"model-value":r.modelValue,data:a.value,filterable:"","filter-node-method":o,"check-strictly":"",multiple:r.multiple,"collapse-tags":r.multiple,"collapse-tags-tooltip":r.multiple,"show-checkbox":r.multiple,"default-expand-all":"","render-after-expand":!1,placeholder:r.placeholder,title:s.value||r.placeholder,class:"branch-tree-select","onUpdate:modelValue":A},{default:R(({data:h})=>[V(c,{content:h.fullName||h.label,placement:"top","show-after":400,enterable:!1},{default:R(()=>[z("span",bge,ae(h.label),1)]),_:2},1032,["content"])]),_:1},8,["model-value","data","multiple","collapse-tags","collapse-tags-tooltip","show-checkbox","placeholder","title"])}}}),Is=Rr(Bge,[["__scopeId","data-v-48e2e58e"]]),Ege={class:"pane"},xge={class:"filter-bar"},Cge={class:"table-wrap"},Sge={class:"mono hash"},_ge=["title"],kge=["title"],Tge={key:0,class:"commit-title"},Fge=["title"],Mge=["title"],Ige={class:"commit-meta"},Oge=["title"],Lge={class:"commit-meta-item"},Nge=["title"],Pge={class:"commit-meta-item"},Uge={class:"add"},Rge={class:"del"},Qge={key:0,class:"warn"},Dge={key:1,class:"commit-body"},Hge={class:"diff-wrap"},$ge=Or({__name:"CommitLogPanel",setup(r,{expose:e}){const t=Ii(),n=vc(),i=()=>t.currentId,a=Fe([]),s=Fe(!1),o=Fe(""),A=Fe("head"),l=Fe(""),u=Fe(""),c=Fe(50),d=Fe(!1),h=Fe(null),f=Fe(null),p=Fe(!1),g=Ue(()=>{var w;return((w=n.current)==null?void 0:w.name)??""});async function v(){const w=i();if(w!==null){s.value=!0,o.value="";try{const B={maxCount:c.value};A.value==="all"?B.all=!0:A.value==="branch"&&l.value&&(B.from=l.value),u.value.trim()&&(B.path=u.value.trim()),a.value=await AH(w,B)}catch(B){o.value=B instanceof Error?B.message:String(B),a.value=[]}finally{s.value=!1}}}async function m(w){const B=i();if(B!==null){s.value=!0;try{const{diff:x}=await uH(B,w.hash);h.value=w,f.value=x,p.value=!1,d.value=!0}catch(x){x instanceof Kb&&x.code==="COMMIT_NOT_FOUND"?qe.warning(`提交不存在(${w.shortHash}),可能已被清理,请刷新列表`):qe.error(x instanceof Error?x.message:String(x))}finally{s.value=!1}}}function y(w){const B=new Date(w);return Number.isNaN(B.getTime())?w:B.toLocaleString()}return en(i,()=>{l.value="",v()}),en([A,l,c],()=>void v()),Ds(()=>void v()),e({refresh:v,loading:s}),(w,B)=>{const x=Oe("el-alert"),k=Oe("el-radio-button"),_=Oe("el-radio-group"),T=Oe("el-input"),F=Oe("el-option"),I=Oe("el-select"),O=Oe("el-button"),P=Oe("el-card"),G=Oe("el-table-column"),ee=Oe("el-empty"),te=Oe("el-table"),N=Oe("el-drawer"),K=pc("loading");return H(),Ae("div",Ege,[o.value?(H(),Re(x,{key:0,title:o.value,type:"error",closable:!1,"show-icon":"",class:"mb"},null,8,["title"])):ke("",!0),V(P,{shadow:"never",class:"filter-card"},{default:R(()=>[z("div",xge,[V(_,{modelValue:A.value,"onUpdate:modelValue":B[0]||(B[0]=J=>A.value=J)},{default:R(()=>[V(k,{value:"head"},{default:R(()=>[oe("当前分支("+ae(g.value)+")",1)]),_:1}),V(k,{value:"all"},{default:R(()=>[...B[6]||(B[6]=[oe("全部分支",-1)])]),_:1}),V(k,{value:"branch"},{default:R(()=>[...B[7]||(B[7]=[oe("指定分支",-1)])]),_:1})]),_:1},8,["modelValue"]),A.value==="branch"?(H(),Re(Is,{key:0,modelValue:l.value,"onUpdate:modelValue":B[1]||(B[1]=J=>l.value=J),placeholder:"选择分支"},null,8,["modelValue"])):ke("",!0),V(T,{modelValue:u.value,"onUpdate:modelValue":B[2]||(B[2]=J=>u.value=J),clearable:"",placeholder:"按路径过滤(可选)",class:"path-input",onKeyup:wl(v,["enter"])},null,8,["modelValue"]),V(I,{modelValue:c.value,"onUpdate:modelValue":B[3]||(B[3]=J=>c.value=J),class:"count-select"},{default:R(()=>[V(F,{label:"20 条",value:20}),V(F,{label:"50 条",value:50}),V(F,{label:"100 条",value:100})]),_:1},8,["modelValue"]),V(O,{loading:s.value,onClick:v},{default:R(()=>[...B[8]||(B[8]=[oe("刷新",-1)])]),_:1},8,["loading"])])]),_:1}),V(P,{shadow:"never",class:"list-card gc-card-fill"},{default:R(()=>[z("div",Cge,[bl((H(),Re(te,{data:a.value,height:"100%",size:"default","highlight-current-row":"",onRowClick:m},{empty:R(()=>[V(ee,{description:"暂无提交记录","image-size":48})]),default:R(()=>[V(G,{label:"提交",width:"100"},{default:R(({row:J})=>[z("span",Sge,ae(J.shortHash),1)]),_:1}),V(G,{label:"信息","min-width":"300","show-overflow-tooltip":""},{default:R(({row:J})=>[z("span",{class:"subject",title:J.refs?`${J.subject} · ${J.refs}`:J.subject},ae(J.subject),9,_ge)]),_:1}),V(G,{label:"作者",width:"170","show-overflow-tooltip":""},{default:R(({row:J})=>[z("span",{title:`${J.authorName} <${J.authorEmail}>`},ae(J.authorName),9,kge)]),_:1}),V(G,{label:"时间",width:"180"},{default:R(({row:J})=>[oe(ae(y(J.authorDate)),1)]),_:1})]),_:1},8,["data"])),[[K,s.value]])])]),_:1}),V(N,{modelValue:d.value,"onUpdate:modelValue":B[5]||(B[5]=J=>d.value=J),size:"60%","destroy-on-close":""},{header:R(()=>[h.value?(H(),Ae("div",Tge,[z("span",{class:"commit-subject",title:h.value.subject},ae(h.value.subject),9,Fge),z("span",{class:"commit-hash mono",title:h.value.hash},ae(h.value.shortHash),9,Mge)])):ke("",!0)]),default:R(()=>[h.value?(H(),Ae(rt,{key:0},[z("div",Ige,[z("span",{class:"commit-meta-item",title:`${h.value.authorName} <${h.value.authorEmail}>`},ae(h.value.authorName),9,Oge),B[11]||(B[11]=z("span",{class:"sep"},"·",-1)),z("span",Lge,ae(y(h.value.authorDate)),1),h.value.refs?(H(),Ae(rt,{key:0},[B[9]||(B[9]=z("span",{class:"sep"},"·",-1)),z("span",{class:"commit-meta-item refs",title:h.value.refs},ae(h.value.refs),9,Nge)],64)):ke("",!0),f.value?(H(),Ae(rt,{key:1},[B[10]||(B[10]=z("span",{class:"sep"},"·",-1)),z("span",Pge,ae(f.value.files.length)+" 个文件",1),z("span",Uge,"+"+ae(f.value.insertions),1),z("span",Rge,"-"+ae(f.value.deletions),1),f.value.truncated?(H(),Ae("span",Qge,"已截断")):ke("",!0)],64)):ke("",!0)]),h.value.body?(H(),Ae("button",{key:0,type:"button",class:"commit-body-toggle",onClick:B[4]||(B[4]=J=>p.value=!p.value)},ae(p.value?"收起说明":"展开说明"),1)):ke("",!0),p.value&&h.value.body?(H(),Ae("pre",Dge,ae(h.value.body),1)):ke("",!0),z("div",Hge,[f.value?(H(),Re(Yb,{key:0,patch:f.value.rawPatch},null,8,["patch"])):(H(),Re(ee,{key:1,description:"无差异","image-size":60}))])],64)):ke("",!0)]),_:1},8,["modelValue"])])}}}),Gge=Rr($ge,[["__scopeId","data-v-b258a1a2"]]);class zge{diff(e,t,n={}){let i;typeof n=="function"?(i=n,n={}):"callback"in n&&(i=n.callback);const a=this.castInput(e,n),s=this.castInput(t,n),o=this.removeEmpty(this.tokenize(a,n)),A=this.removeEmpty(this.tokenize(s,n));return this.diffWithOptionsObj(o,A,n,i)}diffWithOptionsObj(e,t,n,i){var a;const s=m=>{if(m=this.postProcess(m,n),i){setTimeout(function(){i(m)},0);return}else return m},o=t.length,A=e.length;let l=1,u=o+A;n.maxEditLength!=null&&(u=Math.min(u,n.maxEditLength));const c=(a=n.timeout)!==null&&a!==void 0?a:1/0,d=Date.now()+c,h=[{oldPos:-1,lastComponent:void 0}];let f=this.extractCommon(h[0],t,e,0,n);if(h[0].oldPos+1>=A&&f+1>=o)return s(this.buildValues(h[0].lastComponent,t,e));let p=-1/0,g=1/0;const v=()=>{for(let m=Math.max(p,-l);m<=Math.min(g,l);m+=2){let y;const w=h[m-1],B=h[m+1];w&&(h[m-1]=void 0);let x=!1;if(B){const _=B.oldPos-m;x=B&&0<=_&&_<o}const k=w&&w.oldPos+1<A;if(!x&&!k){h[m]=void 0;continue}if(!k||x&&w.oldPos<B.oldPos?y=this.addToPath(B,!0,!1,0,n):y=this.addToPath(w,!1,!0,1,n),f=this.extractCommon(y,t,e,m,n),y.oldPos+1>=A&&f+1>=o)return s(this.buildValues(y.lastComponent,t,e))||!0;h[m]=y,y.oldPos+1>=A&&(g=Math.min(g,m-1)),f+1>=o&&(p=Math.max(p,m+1))}l++};if(i)(function m(){setTimeout(function(){if(l>u||Date.now()>d)return i(void 0);v()||m()},0)})();else for(;l<=u&&Date.now()<=d;){const m=v();if(m)return m}}addToPath(e,t,n,i,a){const s=e.lastComponent;return s&&!a.oneChangePerToken&&s.added===t&&s.removed===n?{oldPos:e.oldPos+i,lastComponent:{count:s.count+1,added:t,removed:n,previousComponent:s.previousComponent}}:{oldPos:e.oldPos+i,lastComponent:{count:1,added:t,removed:n,previousComponent:s}}}extractCommon(e,t,n,i,a){const s=t.length,o=n.length;let A=e.oldPos,l=A-i,u=0;for(;l+1<s&&A+1<o&&this.equals(n[A+1],t[l+1],a);)l++,A++,u++,a.oneChangePerToken&&(e.lastComponent={count:1,previousComponent:e.lastComponent,added:!1,removed:!1});return u&&!a.oneChangePerToken&&(e.lastComponent={count:u,previousComponent:e.lastComponent,added:!1,removed:!1}),e.oldPos=A,l}equals(e,t,n){return n.comparator?n.comparator(e,t):e===t||!!n.ignoreCase&&e.toLowerCase()===t.toLowerCase()}removeEmpty(e){const t=[];for(let n=0;n<e.length;n++)e[n]&&t.push(e[n]);return t}castInput(e,t){return e}tokenize(e,t){return Array.from(e)}join(e){return e.join("")}postProcess(e,t){return e}get useLongestToken(){return!1}buildValues(e,t,n){const i=[];let a;for(;e;)i.push(e),a=e.previousComponent,delete e.previousComponent,e=a;i.reverse();const s=i.length;let o=0,A=0,l=0;for(;o<s;o++){const u=i[o];if(u.removed)u.value=this.join(n.slice(l,l+u.count)),l+=u.count;else{if(!u.added&&this.useLongestToken){let c=t.slice(A,A+u.count);c=c.map(function(d,h){const f=n[l+h];return f.length>d.length?f:d}),u.value=this.join(c)}else u.value=this.join(t.slice(A,A+u.count));A+=u.count,u.added||(l+=u.count)}}return i}}class Vge extends zge{tokenize(e){return e.slice()}join(e){return e}removeEmpty(e){return e}}const Kge=new Vge;function N4(r,e,t){return Kge.diff(r,e,t)}const jge=/^<<<<<<<(?:\s+(.*))?$/,pN=/^\|\|\|\|\|\|\|(?:\s+(.*))?$/,Vb=/^=======/,vN=/^>>>>>>>(?:\s+(.*))?$/;function P4(r,e){if(r&&r.includes("超出展示上限"))return[{id:"c-0",type:"conflict",ours:(e==null?void 0:e.ours)??"",base:(e==null?void 0:e.base)??"",theirs:(e==null?void 0:e.theirs)??"",choice:null}];if(r){const a=Wge(r);if(a.some(s=>s.type==="conflict"))return a}const t=(e==null?void 0:e.ours)??"",n=(e==null?void 0:e.theirs)??"",i=(e==null?void 0:e.base)??"";return t===n&&(r==null||r==="")?t?[{id:"t-0",type:"text",content:t}]:[]:t!==n||t===""&&n===""&&i!==""?[{id:"c-0",type:"conflict",ours:t,base:i,theirs:n,choice:null}]:t?[{id:"t-0",type:"text",content:t}]:[]}function Wge(r){const e=r.replace(/\r\n/g,`
326
- `).split(`
327
- `),t=[];let n=0,i=[],a=0;const s=()=>{if(i.length===0)return;const o=i.join(`
328
- `);i=[],o.length!==0&&t.push({id:`t-${t.length}`,type:"text",content:o})};for(;n<e.length;){const o=e[n]??"";if(jge.test(o)){s(),n+=1;const A=[];for(;n<e.length&&!pN.test(e[n]??"")&&!Vb.test(e[n]??"");)A.push(e[n]??""),n+=1;const l=[];if(n<e.length&&pN.test(e[n]??""))for(n+=1;n<e.length&&!Vb.test(e[n]??"");)l.push(e[n]??""),n+=1;n<e.length&&Vb.test(e[n]??"")&&(n+=1);const u=[];for(;n<e.length&&!vN.test(e[n]??"");)u.push(e[n]??""),n+=1;n<e.length&&vN.test(e[n]??"")&&(n+=1),t.push({id:`c-${a++}`,type:"conflict",ours:A.join(`
329
- `),base:l.join(`
330
- `),theirs:u.join(`
331
- `),choice:null});continue}i.push(o),n+=1}return s(),t}function Os(r){return r==null||r===""?[]:r.replace(/\r\n/g,`
332
- `).split(`
333
- `)}function po(r){return r.join(`
334
- `)}function mN(r,e){const t=N4(r,e),n=[];let i=0,a=0;for(;a<t.length;){const s=t[a];if(!s.added&&!s.removed){i+=s.value.length,a+=1;continue}const o=[],A=[],l=i;for(;a<t.length&&(t[a].added||t[a].removed);){const u=t[a];u.removed?(o.push(...u.value),i+=u.value.length):u.added&&A.push(...u.value),a+=1}n.push({start:l,end:l+o.length,lines:A})}return n}function yN(r,e){return r.filter(t=>t.start===t.end&&t.start===e)}function el(r,e,t){const n=po(r),i=po(e);return n===i?{kind:t.length===0?"add-left":"modify-left",leftLines:r,rightLines:e,baseLines:t,action:"auto"}:r.length===0&&e.length>0?{kind:"add-right",leftLines:r,rightLines:e,baseLines:t,action:"auto"}:e.length===0&&r.length>0?{kind:"add-left",leftLines:r,rightLines:e,baseLines:t,action:"auto"}:{kind:"conflict",leftLines:r,rightLines:e,baseLines:t,action:"pending"}}function qge(r,e,t){const n=Os(r??""),i=Os(e??""),a=Os(t??"");if(n.length===0)return po(i)===po(a)?[{id:"h-0",kind:"equal",leftLines:i,rightLines:a,baseLines:[],action:"auto"}]:Yge(i,a);const s=mN(n,i),o=mN(n,a),A=new Set([0,n.length]);for(const g of s)A.add(g.start),A.add(g.end);for(const g of o)A.add(g.start),A.add(g.end);const l=[...A].sort((g,v)=>g-v),u=[];let c=0;const d=g=>{u.push({...g,id:`h-${c++}`})},h=new Set,f=new Set,p=g=>{const v=yN(s,g).filter(w=>!h.has(w)),m=yN(o,g).filter(w=>!f.has(w)),y=Math.max(v.length,m.length);for(let w=0;w<y;w++){const B=v[w],x=m[w];B&&h.add(B),x&&f.add(x),B&&x?po(B.lines)===po(x.lines)?d({kind:"add-left",leftLines:B.lines,rightLines:x.lines,baseLines:[],action:"auto"}):d({kind:"conflict",leftLines:B.lines,rightLines:x.lines,baseLines:[],action:"pending"}):B?d({kind:"add-left",leftLines:B.lines,rightLines:[],baseLines:[],action:"auto"}):x&&d({kind:"add-right",leftLines:[],rightLines:x.lines,baseLines:[],action:"auto"})}};for(let g=0;g<l.length;g++){const v=l[g];if(p(v),g>=l.length-1)break;const m=v,y=l[g+1];if(m>=y)continue;const w=n.slice(m,y),B=s.find(I=>I.start!==I.end&&I.start===m&&I.end>=y&&!h.has(I)),x=o.find(I=>I.start!==I.end&&I.start===m&&I.end>=y&&!f.has(I)),k=s.find(I=>I.start!==I.end&&I.start<m&&I.end>=y),_=o.find(I=>I.start!==I.end&&I.start<m&&I.end>=y);if((k||_)&&!B&&!x)continue;const T=s.find(I=>I.start!==I.end&&I.start===m&&!h.has(I)),F=o.find(I=>I.start!==I.end&&I.start===m&&!f.has(I));if(T&&F){h.add(T),f.add(F);const I=n.slice(Math.min(T.start,F.start),Math.max(T.end,F.end));d(el(T.lines,F.lines,I));const O=Math.max(T.end,F.end);for(;g+1<l.length-1&&l[g+1]<O;)g+=1;continue}if(T&&!F){h.add(T);const I=n.slice(T.start,T.end);for(d(el(T.lines,I,I));g+1<l.length-1&&l[g+1]<T.end;)g+=1;continue}if(F&&!T){f.add(F);const I=n.slice(F.start,F.end);for(d(el(I,F.lines,I));g+1<l.length-1&&l[g+1]<F.end;)g+=1;continue}d({kind:"equal",leftLines:w,rightLines:[...w],baseLines:w,action:"auto"})}p(n.length);for(const g of s){if(h.has(g)||g.start===g.end)continue;const v=o.find(m=>!f.has(m)&&m.start===g.start&&m.end===g.end);if(v)f.add(v),h.add(g),d(el(g.lines,v.lines,n.slice(g.start,g.end)));else{h.add(g);const m=n.slice(g.start,g.end);d(el(g.lines,m,m))}}for(const g of o){if(f.has(g)||g.start===g.end)continue;f.add(g);const v=n.slice(g.start,g.end);d(el(v,g.lines,v))}return u.length===0?[{id:"h-0",kind:"equal",leftLines:i,rightLines:a,baseLines:n,action:"auto"}]:u}function Yge(r,e){const t=N4(r,e),n=[];let i=0,a=0;for(;a<t.length;){const s=t[a];if(!s.added&&!s.removed){n.push({id:`h-${i++}`,kind:"equal",leftLines:[...s.value],rightLines:[...s.value],baseLines:[...s.value],action:"auto"}),a+=1;continue}const o=[],A=[];for(;a<t.length&&(t[a].added||t[a].removed);){const l=t[a];l.removed?o.push(...l.value):l.added&&A.push(...l.value),a+=1}o.length&&A.length?n.push({id:`h-${i++}`,kind:"conflict",leftLines:o,rightLines:A,baseLines:[],action:"pending"}):o.length?n.push({id:`h-${i++}`,kind:"add-left",leftLines:o,rightLines:[],baseLines:[],action:"auto"}):n.push({id:`h-${i++}`,kind:"add-right",leftLines:[],rightLines:A,baseLines:[],action:"auto"})}return n}function Xge(r,e,t,n){let i=P4(r);i.length===0&&(e!=null||t!=null)&&(i=[{id:"c-0",type:"conflict",ours:e??"",base:n??"",theirs:t??"",choice:null}]);const a=[];let s=0;for(const o of i)if(o.type==="text"){const A=Os(o.content);a.push({id:`h-${s++}`,kind:"equal",leftLines:A,rightLines:[...A],baseLines:[...A],action:"auto"})}else{const A=o;a.push({id:`h-${s++}`,kind:"conflict",leftLines:Os(A.ours),rightLines:Os(A.theirs),baseLines:Os(A.base),action:"pending"})}return a}function Zge(r,e){const t=P4(e).filter(n=>n.type==="conflict");return t.length===0?r:r.map(n=>{if(n.kind==="equal"||n.kind==="conflict")return n;const i=po(n.leftLines).trim(),a=po(n.rightLines).trim();for(const s of t){const o=s.ours.trim(),A=s.theirs.trim();if(o===A)continue;const l=!!o&&(i===o||i.includes(o)||o.includes(i))||!o&&n.kind.endsWith("right")&&!!A&&(a===A||a.includes(A)),u=!!A&&(a===A||a.includes(A)||A.includes(a));if(!(!l&&!u))return{...n,kind:"conflict",leftLines:n.leftLines.length?n.leftLines:Os(s.ours),rightLines:n.rightLines.length?n.rightLines:Os(s.theirs),action:"pending"}}return n})}function wN(r){if(r.oursContent!=null||r.theirsContent!=null||r.baseContent!=null){const t=qge(r.baseContent,r.oursContent,r.theirsContent);return Zge(t,r.conflictContent)}return Xge(r.conflictContent,r.oursContent,r.theirsContent,r.baseContent)}function U4(r){switch(r.action){case"auto":return r.kind==="equal"?r.leftLines.length?r.leftLines:r.rightLines:r.kind==="add-left"||r.kind==="modify-left"?r.leftLines:r.kind==="add-right"||r.kind==="modify-right"?r.rightLines:null;case"accept-left":case"ignore-right":return r.leftLines;case"accept-right":case"ignore-left":return r.rightLines;case"custom":return r.customLines??[];case"pending":return null;default:return null}}function Jge(r){const e=[];for(const t of r){const n=U4(t);n==null?e.push(["<<<<<<< 未解决",...t.leftLines,"=======",...t.rightLines,">>>>>>>"].join(`
335
- `)):n.length>0&&e.push(n.join(`
336
- `))}return e.join(`
337
- `)}function Xo(r){let e=0,t=0,n=0,i=0;for(const a of r)a.kind!=="equal"&&(e+=1,a.kind==="conflict"&&(t+=1,a.action==="pending"?i+=1:n+=1));return{changes:e,conflicts:t,resolved:n,pending:i}}function epe(r){switch(r){case"add-left":return"hunk-add hunk-add-left";case"add-right":return"hunk-add hunk-add-right";case"modify-left":return"hunk-modify hunk-modify-left";case"modify-right":return"hunk-modify hunk-modify-right";case"conflict":return"hunk-conflict";default:return"hunk-equal"}}const tpe={class:"resolve"},npe={class:"resolve-head"},rpe={class:"muted"},ipe={class:"resolve-body"},ape={class:"file-list"},spe={class:"file-list-head"},ope={class:"file-nav"},Ape={class:"nav-pos"},lpe=["onClick"],upe={class:"file-main"},cpe=["title"],dpe={class:"stat"},hpe={key:0,class:"file-sides"},fpe=["onClick"],gpe={class:"file-main"},ppe=["title"],vpe={class:"stat"},mpe={class:"merge-wrap"},ype={class:"merge-bar"},wpe=["title"],bpe={class:"muted"},Bpe={class:"merge-bar-actions"},Epe={class:"nav-pos"},xpe={class:"merge-heads"},Cpe={key:0,class:"blame-bar"},Spe={key:0,class:"muted"},_pe={key:1,class:"blame-err"},kpe={class:"blame-side"},Tpe={class:"blame-side"},Fpe={key:1,class:"empty"},Mpe=["data-hunk-id","onClick"],Ipe={class:"pane pane-ours"},Ope={class:"code"},Lpe={class:"gutter"},Npe={class:"pane pane-result"},Ppe={class:"code"},Upe={class:"gutter"},Rpe={class:"pane pane-theirs"},Qpe={class:"code"},Dpe=Or({__name:"ConflictResolvePanel",props:{files:{},repoId:{},into:{},from:{},leftLabel:{},rightLabel:{},enableBlame:{type:Boolean}},emits:["progress"],setup(r,{expose:e,emit:t}){const n=r,i=Ue(()=>n.leftLabel||"线上"),a=Ue(()=>n.rightLabel||"我的"),s=Fe(""),o=Fe(null),A=Fe(!1),l=Fe({}),u=Fe(null),c=Fe(null),d=Fe(!1),h=Fe("");function f(de){var De,He,Xe,ct;const X={};for(const dt of de)X[dt.path]=wN(dt);l.value=X;const xe=((De=de.find(dt=>Xo(X[dt.path]??[]).conflicts>0))==null?void 0:De.path)??((He=de[0])==null?void 0:He.path)??"";s.value=xe;const ce=X[xe]??[];o.value=((Xe=ce.find(dt=>dt.kind==="conflict"))==null?void 0:Xe.id)??((ct=ce[0])==null?void 0:ct.id)??null,A.value=!1}en(()=>n.files,de=>f(de),{immediate:!0,deep:!0});const p=Ue(()=>l.value[s.value]??[]),g=Ue(()=>p.value.filter(de=>de.kind==="conflict")),v=Ue(()=>p.value.find(de=>de.id===o.value)??null),m=Ue(()=>n.files.filter(de=>Xo(l.value[de.path]??[]).conflicts>0)),y=Ue(()=>n.files.filter(de=>Xo(l.value[de.path]??[]).conflicts===0)),w=Ue(()=>Xo(p.value)),B=Ue(()=>m.value.findIndex(de=>de.path===s.value)),x=Ue(()=>{let de=0,X=0,xe=0;for(const ce of Object.values(l.value)){const De=Xo(ce);de+=De.conflicts,X+=De.resolved,xe+=De.pending}return{total:de,resolved:X,pending:xe}}),k=Ue(()=>g.value.findIndex(de=>de.id===o.value)),_=Ue(()=>{var de;return((de=v.value)==null?void 0:de.kind)==="conflict"});function T(de){const X=Xo(l.value[de]??[]);return X.conflicts===0?X.changes?`${X.changes}Δ`:"—":`${X.resolved}/${X.conflicts}`}function F(de){s.value=de;const X=l.value[de]??[],xe=X.find(ce=>ce.kind==="conflict"&&ce.action==="pending")??X.find(ce=>ce.kind==="conflict")??X[0];o.value=(xe==null?void 0:xe.id)??null}function I(de){const X=m.value;if(X.length<2)return;let xe=B.value;xe<0&&(xe=de>0?-1:0);let ce=xe+de;ce<0?ce=X.length-1:ce>=X.length&&(ce=0);const De=X[ce];De&&F(De.path)}function O(de,X){const xe=s.value,ce=l.value[xe];ce&&(l.value={...l.value,[xe]:ce.map(De=>De.id===de?{...De,action:X}:De)},o.value=de)}function P(de){O(de.id,"accept-left")}function G(de){O(de.id,"accept-right")}function ee(de,X){const xe=l.value[X];if(!xe)return;X!==s.value&&(s.value=X);const ce=de==="left"?"accept-left":"accept-right";l.value={...l.value,[X]:xe.map(De=>De.kind==="conflict"?{...De,action:ce}:De)}}function te(de){const X=v.value;!X||X.kind!=="conflict"||(de==="left"?P(X):G(X))}function N(){var ce,De;const de=s.value,X=n.files.find(He=>He.path===de);if(!X)return;const xe=wN(X);l.value={...l.value,[de]:xe},o.value=((ce=xe.find(He=>He.kind==="conflict"))==null?void 0:ce.id)??((De=xe[0])==null?void 0:De.id)??null}function K(de){const X=U4(de);return X==null?["(未选边)"]:X.length?X:[""]}function J(de){return de.action==="accept-left"}function be(de){return de.action==="accept-right"}function re(de){return de.kind==="conflict"&&de.action!=="pending"}function ne(de){const X=g.value;if(!X.length)return;const xe=X.filter(ct=>ct.action==="pending"),ce=xe.length?xe:X;let De=ce.findIndex(ct=>ct.id===o.value);De<0&&(De=de>0?-1:0);let He=De+de;He<0?He=ce.length-1:He>=ce.length&&(He=0);const Xe=ce[He];o.value=Xe.id,Rh(()=>{var ct,dt;(dt=(ct=u.value)==null?void 0:ct.querySelector(`[data-hunk-id="${Xe.id}"]`))==null||dt.scrollIntoView({block:"center",behavior:"smooth"})})}function ue(){return n.files.map(de=>({path:de.path,resolvedContent:Jge(l.value[de.path]??[])}))}const Y=t;en(x,de=>Y("progress",de),{immediate:!0});function U(de){if(!de.length)return"(无溯源)";const X=new Set,xe=[];for(const ce of de){const De=`${ce.author}\0${ce.summary}`;if(!X.has(De)&&(X.add(De),xe.push(`${ce.author} · ${ce.summary}`),xe.length>=3))break}return xe.join(";")}const W=Ue(()=>{var de;return U(((de=c.value)==null?void 0:de.hunks.flatMap(X=>X.ours))??[])}),ie=Ue(()=>{var de;return U(((de=c.value)==null?void 0:de.hunks.flatMap(X=>X.theirs))??[])});async function Ee(de){const X=n.repoId;if(X==null||!de||!n.into||!n.from||n.enableBlame===!1){c.value=null,h.value="";return}d.value=!0,h.value="";try{c.value=await pH(X,{into:n.into,from:n.from,path:de,fetch:!1})}catch(xe){c.value=null,h.value=xe instanceof Error?xe.message:String(xe)}finally{d.value=!1}}return en(()=>[s.value,n.into,n.from,n.repoId],([de])=>{Ee(de)},{immediate:!0}),e({buildFiles:ue}),(de,X)=>{const xe=Oe("el-button");return H(),Ae("div",tpe,[z("div",npe,[z("span",null,[oe(" 冲突 "+ae(x.value.resolved)+" / "+ae(x.value.total)+" ",1),z("span",rpe," · 绿=新增 蓝=修改(自动进结果) · 红块选 "+ae(i.value)+" 或 "+ae(a.value),1)])]),z("div",ipe,[z("div",ape,[z("div",spe,[z("span",null,"冲突文件 "+ae(m.value.length),1),z("span",ope,[V(xe,{size:"small",disabled:m.value.length<2,onClick:X[0]||(X[0]=ce=>I(-1))},{default:R(()=>[...X[7]||(X[7]=[oe("‹",-1)])]),_:1},8,["disabled"]),z("span",Ape,ae(B.value>=0?B.value+1:0)+"/"+ae(m.value.length),1),V(xe,{size:"small",disabled:m.value.length<2,onClick:X[1]||(X[1]=ce=>I(1))},{default:R(()=>[...X[8]||(X[8]=[oe("›",-1)])]),_:1},8,["disabled"])])]),(H(!0),Ae(rt,null,Ot(m.value,ce=>(H(),Ae(rt,{key:ce.path},[z("button",{type:"button",class:dn(["file-item",{active:ce.path===s.value,done:we(Xo)(l.value[ce.path]??[]).pending===0}]),onClick:De=>F(ce.path)},[z("span",upe,[z("span",{class:"mono path",title:ce.path},ae(ce.path.split("/").pop()),9,cpe),z("span",dpe,ae(T(ce.path)),1)])],10,lpe),ce.path===s.value?(H(),Ae("div",hpe,[V(xe,{size:"small",onClick:De=>ee("left",ce.path)},{default:R(()=>[oe(ae(i.value),1)]),_:1},8,["onClick"]),V(xe,{size:"small",onClick:De=>ee("right",ce.path)},{default:R(()=>[oe(ae(a.value),1)]),_:1},8,["onClick"])])):ke("",!0)],64))),128)),y.value.length?(H(),Ae("button",{key:0,type:"button",class:"file-item auto-toggle",onClick:X[2]||(X[2]=ce=>A.value=!A.value)},ae(A.value?"▾":"▸")+" 仅自动合并("+ae(y.value.length)+") ",1)):ke("",!0),A.value?(H(!0),Ae(rt,{key:1},Ot(y.value,ce=>(H(),Ae("button",{key:ce.path,type:"button",class:dn(["file-item auto",{active:ce.path===s.value}]),onClick:De=>F(ce.path)},[z("span",gpe,[z("span",{class:"mono path",title:ce.path},ae(ce.path.split("/").pop()),9,ppe),z("span",vpe,ae(T(ce.path)),1)])],10,fpe))),128)):ke("",!0)]),z("div",mpe,[z("div",ype,[z("span",{class:"mono merge-path",title:s.value},ae(s.value),9,wpe),z("span",bpe,ae(w.value.resolved)+"/"+ae(w.value.conflicts),1),z("span",Bpe,[V(xe,{size:"small",disabled:!g.value.length,onClick:X[3]||(X[3]=ce=>ne(-1))},{default:R(()=>[...X[9]||(X[9]=[oe("上一处",-1)])]),_:1},8,["disabled"]),z("span",Epe,ae(k.value>=0?k.value+1:0)+"/"+ae(g.value.length),1),V(xe,{size:"small",disabled:!g.value.length,onClick:X[4]||(X[4]=ce=>ne(1))},{default:R(()=>[...X[10]||(X[10]=[oe("下一处",-1)])]),_:1},8,["disabled"]),V(xe,{size:"small",disabled:!_.value,onClick:X[5]||(X[5]=ce=>te("left"))},{default:R(()=>[oe("采用"+ae(i.value),1)]),_:1},8,["disabled"]),V(xe,{size:"small",disabled:!_.value,onClick:X[6]||(X[6]=ce=>te("right"))},{default:R(()=>[oe("采用"+ae(a.value),1)]),_:1},8,["disabled"]),V(xe,{size:"small",disabled:!s.value,onClick:N},{default:R(()=>[...X[11]||(X[11]=[oe("重置本文件",-1)])]),_:1},8,["disabled"])])]),z("div",{ref_key:"scrollRootRef",ref:u,class:"merge"},[z("header",xpe,[z("div",null,ae(i.value),1),X[12]||(X[12]=z("div",null,null,-1)),X[13]||(X[13]=z("div",null,"结果",-1)),X[14]||(X[14]=z("div",null,null,-1)),z("div",null,ae(a.value),1)]),d.value||h.value||c.value?(H(),Ae("div",Cpe,[d.value?(H(),Ae("span",Spe,"正在溯源作者…")):h.value?(H(),Ae("span",_pe,ae(h.value),1)):(H(),Ae(rt,{key:2},[z("span",kpe,ae(i.value)+":"+ae(W.value),1),z("span",Tpe,ae(a.value)+":"+ae(ie.value),1)],64))])):ke("",!0),p.value.length===0?(H(),Ae("div",Fpe,"没有可展示的变更")):ke("",!0),(H(!0),Ae(rt,null,Ot(p.value,ce=>(H(),Ae("div",{key:ce.id,class:dn(["merge-row",[we(epe)(ce.kind),{active:ce.id===o.value,resolved:re(ce),"chose-left":J(ce),"chose-right":be(ce)}]]),"data-hunk-id":ce.id,onClick:De=>o.value=ce.id},[z("div",Ipe,[z("pre",Ope,[(H(!0),Ae(rt,null,Ot(ce.leftLines.length?ce.leftLines:[""],(De,He)=>(H(),Ae("span",{key:"L"+He,class:"code-line"},ae(De||" "),1))),128))])]),z("div",Lpe,[ce.kind==="conflict"&&ce.leftLines.length?(H(),Re(xe,{key:0,size:"small",text:"",type:"primary",title:J(ce)?`已采用${i.value}`:`采用${i.value}`,onClick:Vn(De=>P(ce),["stop"])},{default:R(()=>[oe(ae(J(ce)?"✓":"≫"),1)]),_:2},1032,["title","onClick"])):ke("",!0)]),z("div",Npe,[z("pre",Ppe,[(H(!0),Ae(rt,null,Ot(K(ce),(De,He)=>(H(),Ae("span",{key:"R"+He,class:dn(["code-line",{pending:ce.kind==="conflict"&&ce.action==="pending"}])},ae(De||" "),3))),128))])]),z("div",Upe,[ce.kind==="conflict"&&ce.rightLines.length?(H(),Re(xe,{key:0,size:"small",text:"",type:"primary",title:be(ce)?`已采用${a.value}`:`采用${a.value}`,onClick:Vn(De=>G(ce),["stop"])},{default:R(()=>[oe(ae(be(ce)?"✓":"≪"),1)]),_:2},1032,["title","onClick"])):ke("",!0)]),z("div",Rpe,[z("pre",Qpe,[(H(!0),Ae(rt,null,Ot(ce.rightLines.length?ce.rightLines:[""],(De,He)=>(H(),Ae("span",{key:"T"+He,class:"code-line"},ae(De||" "),1))),128))])])],10,Mpe))),128))],512)])])])}}}),R4=Rr(Dpe,[["__scopeId","data-v-835e43b1"]]);function bh(r){const e=[];for(const n of r){const i=n.path.split(/[/\\]/).filter(o=>o.length>0);if(i.length===0)continue;let a=e,s="";for(let o=0;o<i.length;o++){const A=i[o];if(s=s?`${s}/${A}`:A,o===i.length-1){a.push({key:`file:${n.path}`,label:A,fullPath:n.path,fileCount:1,file:n});continue}let u=a.find(c=>!c.file&&c.label===A);u||(u={key:`dir:${s}`,label:A,fullPath:s,fileCount:0,children:[]},a.push(u)),u.children??(u.children=[]),a=u.children}}const t=n=>{n.sort((i,a)=>{const s=i.file?1:0,o=a.file?1:0;return s!==o?s-o:i.label.localeCompare(a.label)});for(const i of n)i.children&&(t(i.children),i.fileCount=i.children.reduce((a,s)=>a+s.fileCount,0))};return t(e),e}function Uh(r){return r.file?[r.file.path]:(r.children??[]).flatMap(Uh)}const Hpe={class:"page status-page"},$pe={class:"page-head"},Gpe={class:"head-branch"},zpe={key:0,class:"tracking mono"},Vpe={key:1,class:"sync ahead"},Kpe={key:2,class:"sync behind"},jpe={class:"repo-path mono"},Wpe={class:"head-actions"},qpe={key:1,class:"empty-tip"},Ype={key:2,class:"status-layout"},Xpe={class:"panel-head"},Zpe={class:"panel-actions"},Jpe={class:"tree-scroll"},eve={class:"group-label"},tve=["title"],nve=["title","onDblclick","onContextmenu"],rve={class:"node-name"},ive={key:1,class:"pane-empty"},ave={class:"status-content"},sve={key:0,class:"graph-pane"},ove={class:"lineage-bar"},Ave={key:0,class:"lineage-meta"},lve={key:1,class:"log-pane"},uve={class:"toolbar"},cve={class:"toolbar-group gc-gap-btns"},dve={class:"ws-conflict-actions"},hve={class:"card-head"},fve={class:"card-actions gc-gap-btns"},gve={class:"tab-label"},pve={class:"tab-hint"},vve={key:0,class:"file-empty"},mve={key:0,class:"change-file gc-gap-btns"},yve=["title"],wve={key:1,class:"change-dir"},bve=["title"],Bve={class:"dir-count"},Eve={class:"card-head"},xve={class:"card-actions gc-gap-btns"},Cve={key:0,class:"file-empty"},Sve={key:1,class:"stash-list mono"},_ve={class:"stash-main"},kve={class:"stash-ref"},Tve=["title"],Fve={key:0,class:"stash-date"},Mve={class:"stash-actions"},Ive={key:0,class:"file-empty"},Ove={key:1,class:"stash-list mono"},Lve={class:"stash-main"},Nve={class:"stash-ref"},Pve={class:"stash-actions"},Uve={class:"stash-main"},Rve={class:"stash-ref"},Qve={class:"stash-actions"},Dve={key:0,class:"file-empty"},Hve={key:1,class:"stash-list mono"},$ve={class:"stash-main"},Gve={class:"stash-ref"},zve=["title"],Vve={key:0,class:"stash-date"},Kve={class:"stash-actions"},jve={key:0,class:"file-empty"},Wve={key:1,class:"stash-list mono"},qve={class:"stash-main"},Yve={class:"stash-ref"},Xve=["title"],Zve={key:0,class:"stash-date"},Jve={class:"stash-actions"},e0e={class:"diff-wrap"},t0e={class:"diff-summary"},n0e={class:"add"},r0e={class:"del"},i0e={key:0,class:"warn"},a0e={key:0,class:"file-empty"},s0e={key:0,class:"stash-files"},o0e={class:"stash-files-head"},A0e={class:"stash-files-title"},l0e={class:"card-actions gc-gap-btns"},u0e={class:"file-list compact"},c0e={class:"file-path mono"},d0e=Or({__name:"StatusView",setup(r){const e=Ii(),t=vc(),n=Hf(),i=BA(),{revision:a}=$f(),s=()=>e.currentId,o=Fe(null),A=Fe([]),l=Fe([]),u=Fe(!1),c=Fe(""),d=Fe("workspace"),h=Fe(null),f=Fe(!1),p=Fe(""),g=Fe(null),v=Fe(""),m=Fe(""),y=Fe(null),w=Fe(null),B=Fe({branches:[],stashes:[]}),x=Fe([]),k=Fe("stash"),_=Nu({visible:!1,x:0,y:0,node:null}),T=Nu({visible:!1,title:"",diff:null,patch:"",loading:!1}),F=Fe(!1),I=Fe(""),O=Fe(!1),P=Fe(""),G=Fe(""),ee=Fe(!1),te=Fe(""),N=Fe(!1),K=Fe(!1),J=Fe(""),be=Fe(""),re=Fe(""),ne=Fe(!1),ue=Fe(""),Y=Fe(!1),U=Fe(""),W=Fe(!1),ie=Fe(""),Ee=Fe(""),de=Fe(!1),X=Fe(""),xe=Nu(new Set),ce=Ue(()=>xe.size),De=Fe("unstaged"),{confirmVisible:He,pending:Xe,canRun:ct,previewAndConfirm:dt,executeConfirmed:Nn,cancel:Dt}=NN(s),ui=Ue(()=>{var he;return((he=e.current)==null?void 0:he.path)??""}),Hn=Ue(()=>{var he,D;return((he=o.value)==null?void 0:he.currentShort)??((D=o.value)==null?void 0:D.current)??""}),an=Ue(()=>{var he;return((he=o.value)==null?void 0:he.ahead)??0}),Jt=Ue(()=>{var he;return((he=o.value)==null?void 0:he.behind)??0}),ye=Ue(()=>t.panes),me=Ue(()=>t.remotes.map(he=>he.name)),pt=Ue(()=>me.value.includes("origin")?"origin":me.value[0]??"origin"),at=Ue(()=>{const he=o.value;if(!he)return{unstaged:[],staged:[],untracked:[],all:[]};const D=he.untracked.map(st=>({path:st,status:"??",indexStatus:"?",workTreeStatus:"?",staged:!1,untracked:!0,conflicted:!1})),lt=[...he.staged,...he.unstaged,...D],jt=new Set,xr=lt.filter(st=>jt.has(st.path)?!1:(jt.add(st.path),st.path!==""));return{unstaged:he.unstaged,staged:he.staged,untracked:D,all:xr}}),tn=Ue(()=>[{key:"unstaged",label:"未暂存",hint:"已修改,未 git add",count:at.value.unstaged.length},{key:"staged",label:"已暂存",hint:"已 git add,未提交",count:at.value.staged.length},{key:"untracked",label:"未跟踪",hint:"工作区新文件",count:at.value.untracked.length},{key:"all",label:"全部",hint:"全部更改",count:at.value.all.length}]),Nt=Ue(()=>at.value[De.value]??[]),Kt=Ue(()=>at.value.all.length),ci=Ue(()=>({unstaged:bh(at.value.unstaged),staged:bh(at.value.staged),untracked:bh(at.value.untracked),all:bh(at.value.all)}));function Yr(he){if(!he||he.remote||!he.upstream)return"";const D=[];return(he.ahead??0)>0&&D.push(`↑${he.ahead}`),(he.behind??0)>0&&D.push(`↓${he.behind}`),D.join(" ")}async function Pn(){const he=s();if(he!==null){u.value=!0,c.value="";try{o.value=await oH(he),await Pt()}catch(D){c.value=D instanceof Error?D.message:String(D),o.value=null}finally{u.value=!1}}}async function Me(){await t.load()}async function pe(){const he=s();if(he!==null)try{A.value=await dH(he)}catch{}}async function vt(){const he=s();if(he!==null)try{const{worktrees:D}=await hH(he);l.value=D}catch{l.value=[]}}async function Pt(){var lt;const he=s(),D=(lt=o.value)==null?void 0:lt.operation;if(he===null||!D||D==="none"){y.value=null;return}try{y.value=await fH(he)}catch{y.value=null}}async function Ht(){var D,lt;const he=s();if(he!==null){f.value=!0,p.value="";try{const jt=v.value.trim(),xr=m.value.trim();h.value=await zp(he,{maxNodes:200,into:(D=h.value)!=null&&D.lineage&&jt&&xr?jt:void 0,from:(lt=h.value)!=null&&lt.lineage&&jt&&xr?xr:void 0})}catch(jt){p.value=jt instanceof Error?jt.message:String(jt),h.value=null}finally{f.value=!1}}}async function Gt(){const he=s(),D=v.value.trim(),lt=m.value.trim();if(he===null||!D||!lt){qe.warning("请选择合入目标与我的分支");return}f.value=!0,p.value="";try{h.value=await zp(he,{maxNodes:200,into:D,from:lt}),h.value.lineage&&!h.value.lineage.mergeBase&&qe.warning("两条分支没有共同祖先,无法画分叉图")}catch(jt){p.value=jt instanceof Error?jt.message:String(jt),h.value=null}finally{f.value=!1}}async function di(){v.value="",m.value="";const he=s();if(he!==null){f.value=!0;try{h.value=await zp(he,{maxNodes:200})}catch(D){p.value=D instanceof Error?D.message:String(D)}finally{f.value=!1}}}function Ha(){var D;const he=(D=h.value)==null?void 0:D.lineage;he&&(n.pairInto=he.into,n.pairFrom=he.from,n.mode="pair",i.push("/merge"))}async function Xr(){const he=s();if(he!==null)try{const[D,lt]=await Promise.all([wH(he),yH(he,40)]);B.value=D,x.value=lt}catch{}}async function mt(){var he;if(d.value==="graph"){await Promise.all([Pn(),Me(),Ht()]);return}if(d.value==="log"){await Promise.all([Pn(),Me(),((he=g.value)==null?void 0:he.refresh())??Promise.resolve()]);return}await Promise.all([Pn(),Me(),pe(),vt(),Xr()])}async function St(he,D={}){await dt(he,D)&&qe.info("请在确认对话框中查看 dry-run 预览")}async function nn(){const he=await Nn();he!=null&&he.success&&await mt()}function Wt(he){St("git_add",{paths:[he.path]})}function L(he){St("git_unstage",{paths:[he.path]})}function S(he){he.staged?L(he):Wt(he)}function E(){St("git_add",{})}function b(){var D;const he=((D=o.value)==null?void 0:D.staged.map(lt=>lt.path))??[];if(he.length===0){qe.info("没有已暂存的文件");return}St("git_unstage",{paths:he})}async function C(he){const D=s();if(D!==null){T.title=`${he.path}(${he.staged?"已 git add":"工作区修改"})`,T.diff=null,T.patch="",T.visible=!0,T.loading=!0;try{T.diff=await lH(D,{path:he.path,staged:he.staged})}catch(lt){qe.error(lt instanceof Error?lt.message:String(lt)),T.visible=!1}finally{T.loading=!1}}}async function M(he){var lt;const D=s();if(D!==null){T.title=`${he.ref} · ${he.message||"(无说明)"}`,T.diff=null,T.patch="",T.visible=!0,T.loading=!0;try{const jt=await jb(D,"git_stash_show",{index:he.index});if(jt.success){const xr=jt.result??{};T.patch=xr.patch??""}else qe.error(((lt=jt.error)==null?void 0:lt.message)??"查看差异失败"),T.visible=!1}catch(jt){qe.error(jt instanceof Error?jt.message:String(jt)),T.visible=!1}finally{T.loading=!1}}}function Q(he){xe.has(he)?xe.delete(he):xe.add(he)}function $(he){return xe.has(he)}function j(){xe.clear()}function q(){for(const he of Nt.value)xe.add(he.path)}function ge(he){const D=Uh(he);return D.length>0&&D.every(lt=>xe.has(lt))}function se(he){const D=Uh(he),lt=D.filter(jt=>xe.has(jt)).length;return lt>0&&lt<D.length}function Ce(he){const D=Uh(he);if(D.every(lt=>xe.has(lt)))for(const lt of D)xe.delete(lt);else for(const lt of D)xe.add(lt)}function je(){for(const he of Be.value)xe.add(he)}const Be=Ue(()=>{const he=o.value;if(!he)return[];const D=new Set;return[...he.unstaged.map(lt=>lt.path),...he.untracked].filter(lt=>D.has(lt)?!1:(D.add(lt),lt!==""))});function Le(){ee.value=!0}function Ze(){const he=Be.value,D=[...xe].filter(xr=>he.includes(xr)),lt=D.some(xr=>{var st;return((st=o.value)==null?void 0:st.untracked.includes(xr))??!1}),jt={};te.value.trim()&&(jt.message=te.value.trim()),D.length&&(jt.paths=D),(N.value||lt)&&(jt.includeUntracked=!0),ee.value=!1,xe.clear(),St("git_stash",jt)}function le(){St("git_stash",{})}function Ve(he){St("git_stash_apply",{index:he.index})}function tt(he){St("git_stash_pop",{index:he.index})}function yt(he){vo.confirm(`确定删除 ${he.ref} 吗?删除后不可直接恢复。`,"删除 stash",{type:"warning",confirmButtonText:"继续",cancelButtonText:"取消"}).then(()=>void St("git_stash_drop",{index:he.index})).catch(()=>{})}function Ct(){J.value="",be.value="",re.value="",K.value=!0}function Sn(){const he=J.value.trim();if(!he){qe.warning("请填写 worktree 绝对路径");return}const D={path:he};be.value.trim()&&(D.branch=be.value.trim()),re.value.trim()&&(D.startPoint=re.value.trim()),K.value=!1,St("git_worktree_add",D)}function ht(he){if(he.isMain){qe.warning("不能移除主工作区");return}vo.confirm(`确定移除 worktree ${he.path}?不会删除主仓库。不要在 linked worktree 里当第二套工作区做 merge。`,"移除 worktree",{type:"warning",confirmButtonText:"继续",cancelButtonText:"取消"}).then(()=>void St("git_worktree_remove",{path:he.path})).catch(()=>{})}function ft(he){he.branch&&St("git_checkout",{branch:he.branch.name})}function fn(){St("git_pull")}function fe(){St("git_fetch")}function $e(){St("git_push")}function Je(){var jt,xr;const he=(jt=o.value)==null?void 0:jt.operation;if(he!=="merge"&&he!=="rebase")return;const D=((xr=w.value)==null?void 0:xr.buildFiles())??[];St(he==="merge"?"git_merge_continue":"git_rebase_continue",D.length?{files:D}:{})}function ze(){var D;const he=(D=o.value)==null?void 0:D.operation;he!=="merge"&&he!=="rebase"||St(he==="merge"?"git_merge_abort":"git_rebase_abort")}function _n(he,D){const lt=String(he);lt==="pull"?fn():lt==="push"?$e():lt==="checkout"?ft(D):lt==="delete"?ea(D,!1):lt==="delete-force"&&ea(D,!0)}const sn=Ue(()=>{var he;return!!((he=_.node)!=null&&he.branch&&!_.node.branch.current&&!_.node.remote)});let mn=0;function rn(){_.visible=!1,_.node=null}function Br(he,D){var Kl;he.preventDefault(),he.stopPropagation();const lt=100,xr=((Kl=D.branch)!=null&&Kl.current?2:D.remote?1:3)*32+8;let st=he.clientX,ta=he.clientY;st+lt>window.innerWidth&&(st=Math.max(4,window.innerWidth-lt-4)),ta+xr>window.innerHeight&&(ta=Math.max(4,window.innerHeight-xr-4)),_.node=D,_.x=st,_.y=ta,_.visible=!0,mn=Date.now()}function Hr(he){const D=_.node;rn(),D&&_n(he,D)}function Xn(he){if(!_.visible||he.button!==0||Date.now()-mn<80)return;const D=he.target;D instanceof Element&&D.closest(".gc-branch-menu")||rn()}function Qi(he){if(!_.visible)return;const D=he.target;D instanceof Element&&D.closest(".branch-node")||rn()}function ea(he,D){if(!he.branch||he.branch.current||he.remote)return;const lt=he.branch.name;if(D){vo.confirm(`强制删除本地分支 ${lt}?(不检查是否已合并;高风险,执行前会备份)`,"强制删除分支",{type:"warning",confirmButtonText:"继续",cancelButtonText:"取消"}).then(()=>void St("git_branch_delete_force",{name:lt})).catch(()=>{});return}St("git_branch_delete",{name:lt})}function zt(he){St("git_checkout",{branch:he})}function Er(he){const D=/stash@\{(\d+)\}/.exec(he);D&&St("git_stash_apply",{index:Number(D[1])})}function hi(he){St("git_checkout",{branch:he})}function Zr(){const he=I.value.trim();if(!he){qe.warning("请输入提交信息");return}F.value=!1,St("git_commit",{message:he})}function tr(){const he=P.value.trim();if(!he){qe.warning("请输入分支名");return}O.value=!1,St("git_branch_create",G.value.trim()?{name:he,startPoint:G.value.trim()}:{name:he})}function Op(){const he=ue.value.trim()||"HEAD";ne.value=!1,ue.value="",St("git_reset_hard",{target:he})}function Lp(){const he=U.value.trim();if(!he){qe.warning("请选择要合入当前分支的来源");return}Y.value=!1,St("git_merge",{branch:he})}function Np(){const he=ie.value.trim();if(!he){qe.warning("请输入标签名");return}W.value=!1;const D=Ee.value.trim();St("git_tag_create",D?{name:he,message:D}:{name:he}),ie.value="",Ee.value=""}function Pp(){const he=X.value.trim();if(!he){qe.warning("请选择变基目标");return}de.value=!1,St("git_rebase",{branch:he})}function Up(he){return he.untracked?"?":he.staged?he.indexStatus||"M":he.workTreeStatus||"M"}function Rp(he){return he.untracked?"new":he.conflicted?"conflict":he.staged?"add":"mod"}function Gc(he){if(!he)return"";const D=new Date(he);return Number.isNaN(D.getTime())?he:D.toLocaleString()}function zc(he){return he.split(`
338
- `)[0]??""}return en(s,()=>{T.diff=null,T.patch="",T.visible=!1,xe.clear(),rn(),mt()}),en(a,()=>{mt()}),en(d,he=>{rn(),he==="graph"&&Ht()}),Ds(()=>{mt(),window.addEventListener("click",Xn,!0),window.addEventListener("contextmenu",Qi,!0),window.addEventListener("scroll",rn,!0)}),Qf(()=>{window.removeEventListener("click",Xn,!0),window.removeEventListener("contextmenu",Qi,!0),window.removeEventListener("scroll",rn,!0)}),(he,D)=>{var TC,FC,MC,IC,OC,LC,NC,PC,UC,RC,QC,DC;const lt=Oe("el-tag"),jt=Oe("el-radio-button"),xr=Oe("el-radio-group"),st=Oe("el-button"),ta=Oe("el-alert"),Kl=Oe("el-tree"),SC=Oe("el-empty"),Vc=Oe("el-card"),_C=Oe("el-badge"),jl=Oe("el-tooltip"),Kc=Oe("el-checkbox"),Wl=Oe("el-tab-pane"),kC=Oe("el-tabs"),H4=Oe("el-drawer"),$a=Oe("el-input"),zs=Oe("el-dialog"),ma=Oe("el-form-item"),NA=Oe("el-form"),$4=pc("loading");return H(),Ae("div",Hpe,[z("div",$pe,[D[63]||(D[63]=z("h2",{class:"page-title"},"仓库状态",-1)),z("div",Gpe,[V(lt,{type:"primary",effect:"dark",class:"branch-tag"},{default:R(()=>[oe(ae(Hn.value||"—"),1)]),_:1}),(TC=o.value)!=null&&TC.tracking?(H(),Ae("span",zpe,ae(o.value.tracking),1)):ke("",!0),an.value?(H(),Ae("span",Vpe,"↑"+ae(an.value),1)):ke("",!0),Jt.value?(H(),Ae("span",Kpe,"↓"+ae(Jt.value),1)):ke("",!0),(FC=o.value)!=null&&FC.isClean?(H(),Re(lt,{key:3,type:"success",effect:"plain",size:"small"},{default:R(()=>[...D[58]||(D[58]=[oe("工作区干净",-1)])]),_:1})):o.value?(H(),Re(lt,{key:4,type:"warning",effect:"plain",size:"small"},{default:R(()=>[oe(ae(Kt.value)+" 处更改",1)]),_:1})):ke("",!0),z("span",jpe,ae(ui.value),1)]),z("div",Wpe,[V(xr,{modelValue:d.value,"onUpdate:modelValue":D[0]||(D[0]=Se=>d.value=Se),size:"small"},{default:R(()=>[V(jt,{value:"workspace"},{default:R(()=>[...D[59]||(D[59]=[oe("工作区",-1)])]),_:1}),V(jt,{value:"graph"},{default:R(()=>[...D[60]||(D[60]=[oe("分支图",-1)])]),_:1}),V(jt,{value:"log"},{default:R(()=>[...D[61]||(D[61]=[oe("提交",-1)])]),_:1})]),_:1},8,["modelValue"]),V(st,{loading:u.value||f.value||((MC=g.value)==null?void 0:MC.loading),onClick:mt},{default:R(()=>[...D[62]||(D[62]=[oe("刷新",-1)])]),_:1},8,["loading"])])]),c.value?(H(),Re(ta,{key:0,title:c.value,type:"error",closable:!1,"show-icon":"",class:"mb"},null,8,["title"])):ke("",!0),we(ct)?(H(),Ae("div",Ype,[d.value==="workspace"?(H(),Re(Vc,{key:0,shadow:"never",class:"branch-panel gc-card-fill gc-card-fill--tight"},{header:R(()=>[z("div",Xpe,[D[66]||(D[66]=z("span",{class:"panel-title"},"分支 Branch",-1)),z("div",Zpe,[V(st,{size:"small",text:"",onClick:Me},{default:R(()=>[...D[64]||(D[64]=[oe("刷新",-1)])]),_:1}),V(st,{size:"small",text:"",type:"primary",onClick:D[1]||(D[1]=Se=>O.value=!0)},{default:R(()=>[...D[65]||(D[65]=[oe("+ 新建",-1)])]),_:1})])])]),default:R(()=>[z("div",Jpe,[(H(!0),Ae(rt,null,Ot(ye.value,Se=>(H(),Ae(rt,{key:Se.key},[z("div",eve,ae(Se.title),1),Se.tree.length?(H(),Re(Kl,{key:0,data:Se.tree,props:{label:"label",children:"children"},"node-key":"key","default-expand-all":"",indent:14,class:"branch-tree gc-tree gc-tree-compact"},{default:R(({data:gt})=>{var Ga,Qp;return[gt.branch?(H(),Ae("div",{key:1,class:dn(["branch-node",{current:(Ga=gt.branch)==null?void 0:Ga.current,remote:gt.remote}]),title:`${gt.fullName}(右键操作)`,onDblclick:HC=>{var $C;return(($C=gt.branch)==null?void 0:$C.current)||ft(gt)},onContextmenu:HC=>Br(HC,gt)},[z("span",rve,ae(gt.label),1),gt.remote?ke("",!0):(H(),Ae("span",{key:0,class:dn(["node-sync",{clean:!Yr(gt.branch)&&((Qp=gt.branch)==null?void 0:Qp.upstream)}])},ae(Yr(gt.branch)),3))],42,nve)):(H(),Ae("span",{key:0,class:"tree-dir",title:gt.fullName||gt.label},ae(gt.label),9,tve))]}),_:1},8,["data"])):(H(),Ae("div",ive,"暂无分支"))],64))),128)),ye.value.length===0?(H(),Re(SC,{key:0,description:"暂无分支","image-size":60})):ke("",!0)])]),_:1})):ke("",!0),z("div",ave,[d.value==="graph"?(H(),Ae("div",sve,[z("div",ove,[D[70]||(D[70]=z("span",{class:"field-label"},"合入目标",-1)),V(Is,{modelValue:v.value,"onUpdate:modelValue":D[2]||(D[2]=Se=>v.value=Se),"remote-first":"",placeholder:"选择线上目标"},null,8,["modelValue"]),D[71]||(D[71]=z("span",{class:"field-label"},"我的分支",-1)),V(Is,{modelValue:m.value,"onUpdate:modelValue":D[3]||(D[3]=Se=>m.value=Se),placeholder:"选择我的分支"},null,8,["modelValue"]),V(st,{type:"primary",disabled:!v.value||!m.value,loading:f.value,onClick:Gt},{default:R(()=>[...D[67]||(D[67]=[oe("对比",-1)])]),_:1},8,["disabled","loading"]),V(st,{disabled:!((IC=h.value)!=null&&IC.lineage),onClick:di},{default:R(()=>[...D[68]||(D[68]=[oe("清除",-1)])]),_:1},8,["disabled"]),(LC=(OC=h.value)==null?void 0:OC.lineage)!=null&&LC.mergeBase?(H(),Re(st,{key:0,text:"",type:"primary",onClick:Ha},{default:R(()=>[...D[69]||(D[69]=[oe("去合并预演",-1)])]),_:1})):ke("",!0)]),(NC=h.value)!=null&&NC.lineage?(H(),Ae("p",Ave,[h.value.lineage.mergeBase?(H(),Ae(rt,{key:0},[oe(" merge-base "+ae(h.value.lineage.mergeBase.slice(0,7))+" · "+ae(h.value.lineage.into)+" 独有 "+ae(h.value.lineage.intoOnlyCount)+" · "+ae(h.value.lineage.from)+" 独有 "+ae(h.value.lineage.fromOnlyCount),1)],64)):(H(),Ae(rt,{key:1},[oe("两条分支没有共同祖先")],64))])):ke("",!0),V(wge,{data:h.value,loading:f.value,error:p.value,"default-remote":pt.value,remotes:me.value},null,8,["data","loading","error","default-remote","remotes"])])):d.value==="log"?(H(),Ae("div",lve,[V(Gge,{ref_key:"logPanel",ref:g},null,512)])):(H(),Ae(rt,{key:2},[V(Vc,{shadow:"never",class:"toolbar-card"},{default:R(()=>{var Se;return[z("div",uve,[z("div",cve,[V(st,{type:"primary",onClick:D[4]||(D[4]=gt=>F.value=!0)},{default:R(()=>[...D[72]||(D[72]=[oe("提交 Commit",-1)])]),_:1}),V(st,{plain:"",onClick:E},{default:R(()=>[...D[73]||(D[73]=[oe("暂存全部",-1)])]),_:1}),V(st,{plain:"",disabled:(((Se=o.value)==null?void 0:Se.staged.length)??0)===0,onClick:b},{default:R(()=>[...D[74]||(D[74]=[oe("取消暂存全部",-1)])]),_:1},8,["disabled"]),V(_C,{value:ce.value,hidden:ce.value===0,offset:[2,4]},{default:R(()=>[V(st,{type:"success",plain:"",onClick:Le},{default:R(()=>[...D[75]||(D[75]=[oe("暂存改动 Stash",-1)])]),_:1})]),_:1},8,["value","hidden"]),V(jl,{content:"Shelve Silently:使用默认说明,一键暂存全部更改",placement:"top"},{default:R(()=>[V(st,{plain:"",onClick:le},{default:R(()=>[...D[76]||(D[76]=[oe("静默 Stash",-1)])]),_:1})]),_:1}),V(jl,{content:"把选中分支合并进当前检出分支(会改工作区)。预演请走左侧「合并」页。",placement:"top"},{default:R(()=>[V(st,{plain:"",onClick:D[5]||(D[5]=gt=>Y.value=!0)},{default:R(()=>[...D[77]||(D[77]=[oe("工作区合并",-1)])]),_:1})]),_:1}),V(jl,{content:"git fetch --prune,更新远程跟踪分支,不改工作区",placement:"top"},{default:R(()=>[V(st,{plain:"",onClick:fe},{default:R(()=>[...D[78]||(D[78]=[oe("Fetch",-1)])]),_:1})]),_:1}),V(st,{plain:"",onClick:D[6]||(D[6]=gt=>W.value=!0)},{default:R(()=>[...D[79]||(D[79]=[oe("打标签",-1)])]),_:1}),V(st,{type:"danger",plain:"",onClick:D[7]||(D[7]=gt=>ne.value=!0)},{default:R(()=>[...D[80]||(D[80]=[oe("硬重置",-1)])]),_:1}),V(st,{type:"danger",plain:"",onClick:D[8]||(D[8]=gt=>St("git_clean"))},{default:R(()=>[...D[81]||(D[81]=[oe("清理未跟踪",-1)])]),_:1}),V(jl,{content:"把当前分支变基到所选目标(高风险,改历史)",placement:"top"},{default:R(()=>[V(st,{type:"danger",plain:"",onClick:D[9]||(D[9]=gt=>de.value=!0)},{default:R(()=>[...D[82]||(D[82]=[oe("变基",-1)])]),_:1})]),_:1}),V(jl,{content:"--force-with-lease 推送当前分支(高风险)",placement:"top"},{default:R(()=>[V(st,{type:"danger",plain:"",onClick:D[10]||(D[10]=gt=>St("git_push_force"))},{default:R(()=>[...D[83]||(D[83]=[oe("强制推送",-1)])]),_:1})]),_:1})])])]}),_:1}),(PC=o.value)!=null&&PC.operation&&o.value.operation!=="none"?(H(),Re(ta,{key:0,title:o.value.operation==="merge"?"工作区 merge 进行中":"工作区 rebase 进行中",description:(o.value.conflicted.length?`还有 ${o.value.conflicted.length} 个冲突文件。`:"冲突已处理,可以继续。")+" 选边写回当前工作区后点继续;或中止这次操作。不是左侧「合并」页的 merge-tree 预演。",type:"error",closable:!1,"show-icon":"",class:"mb"},{default:R(()=>[z("div",dve,[V(st,{type:"primary",size:"small",onClick:Je},{default:R(()=>[...D[84]||(D[84]=[oe("完成选边并继续",-1)])]),_:1}),V(st,{type:"danger",plain:"",size:"small",onClick:ze},{default:R(()=>[...D[85]||(D[85]=[oe("中止",-1)])]),_:1})])]),_:1},8,["title","description"])):(UC=o.value)!=null&&UC.conflicted.length?(H(),Re(ta,{key:1,title:"存在合并冲突,请先解决冲突(修改文件后重新 git add 并提交)",type:"error",closable:!1,"show-icon":"",class:"mb"})):ke("",!0),y.value&&y.value.operation!=="none"&&y.value.files.length?(H(),Re(R4,{key:2,ref_key:"workspacePanel",ref:w,files:y.value.files,"repo-id":s(),into:y.value.into,from:y.value.from,"left-label":y.value.oursLabel,"right-label":y.value.theirsLabel,class:"mb"},null,8,["files","repo-id","into","from","left-label","right-label"])):ke("",!0),V(Vc,{shadow:"never",class:"changes-card gc-card-fill gc-card-fill--flush"},{header:R(()=>[z("div",hve,[D[88]||(D[88]=z("span",{class:"card-title"},"更改 Changes",-1)),z("div",fve,[ce.value?(H(),Re(lt,{key:0,size:"small",type:"primary",effect:"plain"},{default:R(()=>[oe("已选 "+ae(ce.value),1)]),_:1})):ke("",!0),V(st,{size:"small",text:"",onClick:q},{default:R(()=>[...D[86]||(D[86]=[oe("全选本组",-1)])]),_:1}),ce.value?(H(),Re(st,{key:1,size:"small",text:"",type:"danger",onClick:j},{default:R(()=>[...D[87]||(D[87]=[oe("清除选择",-1)])]),_:1})):ke("",!0)])])]),default:R(()=>[V(kC,{modelValue:De.value,"onUpdate:modelValue":D[13]||(D[13]=Se=>De.value=Se),class:"changes-tabs gc-tabs-fill"},{default:R(()=>[(H(!0),Ae(rt,null,Ot(tn.value,Se=>(H(),Re(Wl,{key:Se.key,name:Se.key},{label:R(()=>[z("span",gve,[oe(ae(Se.label)+" ",1),V(_C,{value:Se.count,hidden:Se.count===0,type:"primary",class:"tab-badge"},null,8,["value","hidden"])])]),default:R(()=>[z("div",pve,"「"+ae(Se.hint)+"」",1),Se.count===0?(H(),Ae("div",vve,"没有"+ae(Se.label)+"的文件",1)):(H(),Re(Kl,{key:1,data:ci.value[Se.key],props:{label:"label",children:"children"},"node-key":"key","default-expand-all":"",indent:12,class:"change-tree gc-tree gc-tree-files"},{default:R(({data:gt})=>[gt.file?(H(),Ae("div",mve,[V(Kc,{"model-value":$(gt.file.path),onClick:D[11]||(D[11]=Vn(()=>{},["stop"])),onChange:Ga=>Q(gt.file.path)},null,8,["model-value","onChange"]),z("span",{class:dn(["file-status",Rp(gt.file)])},ae(Up(gt.file)),3),z("span",{class:"file-path mono",title:gt.file.path},ae(gt.label),9,yve),V(st,{size:"small",text:"",type:"primary",onClick:Vn(Ga=>C(gt.file),["stop"])},{default:R(()=>[...D[89]||(D[89]=[oe("查看差异",-1)])]),_:1},8,["onClick"]),gt.file.conflicted?(H(),Re(st,{key:0,size:"small",text:"",type:"warning",onClick:Vn(Ga=>Wt(gt.file),["stop"])},{default:R(()=>[...D[90]||(D[90]=[oe("标记已解决(git add)",-1)])]),_:1},8,["onClick"])):(H(),Re(st,{key:1,size:"small",text:"",type:gt.file.staged?"warning":"success",onClick:Vn(Ga=>S(gt.file),["stop"])},{default:R(()=>[oe(ae(gt.file.staged?"取消暂存":"暂存"),1)]),_:2},1032,["type","onClick"]))])):(H(),Ae("div",wve,[V(Kc,{"model-value":ge(gt),indeterminate:se(gt),onClick:D[12]||(D[12]=Vn(()=>{},["stop"])),onChange:Ga=>Ce(gt)},null,8,["model-value","indeterminate","onChange"]),z("span",{class:"dir-name",title:gt.fullPath},ae(gt.label),9,bve),z("span",Bve,ae(gt.fileCount),1)]))]),_:1},8,["data"]))]),_:2},1032,["name"]))),128))]),_:1},8,["modelValue"])]),_:1}),V(Vc,{shadow:"never",class:"history-card gc-card-fill gc-card-fill--flush"},{header:R(()=>[z("div",Eve,[D[93]||(D[93]=z("span",{class:"card-title"},"记录 Records",-1)),z("div",xve,[V(st,{size:"small",text:"",onClick:Ct},{default:R(()=>[...D[91]||(D[91]=[oe("添加 worktree",-1)])]),_:1}),V(st,{size:"small",text:"",onClick:D[14]||(D[14]=Se=>{pe(),vt(),Xr()})},{default:R(()=>[...D[92]||(D[92]=[oe("刷新",-1)])]),_:1})])])]),default:R(()=>[V(kC,{modelValue:k.value,"onUpdate:modelValue":D[15]||(D[15]=Se=>k.value=Se),class:"history-tabs gc-tabs-fill"},{default:R(()=>[V(Wl,{name:"stash"},{label:R(()=>[oe("Stash("+ae(A.value.length)+")",1)]),default:R(()=>[A.value.length===0?(H(),Ae("div",Cve,"没有暂存的更改")):(H(),Ae("div",Sve,[(H(!0),Ae(rt,null,Ot(A.value,Se=>(H(),Ae("div",{key:Se.ref,class:"stash-row"},[z("div",_ve,[z("span",kve,ae(Se.ref),1),z("span",{class:"stash-msg",title:Se.message},ae(zc(Se.message)||"(无说明)"),9,Tve),Se.date?(H(),Ae("span",Fve,ae(Gc(Se.date)),1)):ke("",!0)]),z("div",Mve,[V(st,{size:"small",text:"",type:"primary",onClick:gt=>M(Se)},{default:R(()=>[...D[94]||(D[94]=[oe("差异",-1)])]),_:1},8,["onClick"]),V(st,{size:"small",text:"",type:"success",onClick:gt=>Ve(Se)},{default:R(()=>[...D[95]||(D[95]=[oe("应用",-1)])]),_:1},8,["onClick"]),V(st,{size:"small",text:"",type:"warning",onClick:gt=>tt(Se)},{default:R(()=>[...D[96]||(D[96]=[oe("恢复",-1)])]),_:1},8,["onClick"]),V(st,{size:"small",text:"",type:"danger",onClick:gt=>yt(Se)},{default:R(()=>[...D[97]||(D[97]=[oe("删除",-1)])]),_:1},8,["onClick"])])]))),128))]))]),_:1}),V(Wl,{name:"backup"},{label:R(()=>[oe("备份("+ae(B.value.branches.length+B.value.stashes.length)+")",1)]),default:R(()=>[!B.value.branches.length&&!B.value.stashes.length?(H(),Ae("div",Ive," 高危操作前会自动建 backup/pre-op-* 分支;工作区不干净时还会 stash ")):(H(),Ae("div",Ove,[(H(!0),Ae(rt,null,Ot(B.value.branches,Se=>(H(),Ae("div",{key:"b-"+Se,class:"stash-row"},[z("div",Lve,[z("span",Nve,ae(Se),1),D[98]||(D[98]=z("span",{class:"stash-msg"},"备份分支",-1))]),z("div",Pve,[V(st,{size:"small",text:"",type:"primary",onClick:gt=>zt(Se)},{default:R(()=>[...D[99]||(D[99]=[oe("检出",-1)])]),_:1},8,["onClick"])])]))),128)),(H(!0),Ae(rt,null,Ot(B.value.stashes,Se=>(H(),Ae("div",{key:"s-"+Se,class:"stash-row"},[z("div",Uve,[z("span",Rve,ae(Se),1),D[100]||(D[100]=z("span",{class:"stash-msg"},"备份 stash",-1))]),z("div",Qve,[V(st,{size:"small",text:"",type:"success",onClick:gt=>Er(Se)},{default:R(()=>[...D[101]||(D[101]=[oe("应用",-1)])]),_:1},8,["onClick"])])]))),128))]))]),_:1}),V(Wl,{name:"worktree"},{label:R(()=>[oe("Worktree("+ae(l.value.length)+")",1)]),default:R(()=>[l.value.length===0?(H(),Ae("div",Dve,"没有 worktree。可点记录卡片上的「添加 worktree」。")):(H(),Ae("div",Hve,[(H(!0),Ae(rt,null,Ot(l.value,Se=>(H(),Ae("div",{key:Se.path,class:"stash-row"},[z("div",$ve,[z("span",Gve,ae(Se.isMain?"主区":Se.detached?"detached":Se.branch||"worktree"),1),z("span",{class:"stash-msg",title:Se.path},ae(Se.path),9,zve),Se.head?(H(),Ae("span",Vve,ae(Se.head.slice(0,7)),1)):ke("",!0)]),z("div",Kve,[Se.isMain?ke("",!0):(H(),Re(st,{key:0,size:"small",text:"",type:"danger",onClick:gt=>ht(Se)},{default:R(()=>[...D[102]||(D[102]=[oe(" 移除 ",-1)])]),_:1},8,["onClick"]))])]))),128))]))]),_:1}),V(Wl,{name:"reflog"},{label:R(()=>[oe("Reflog("+ae(x.value.length)+")",1)]),default:R(()=>[x.value.length===0?(H(),Ae("div",jve,"没有 reflog 记录")):(H(),Ae("div",Wve,[(H(!0),Ae(rt,null,Ot(x.value,Se=>(H(),Ae("div",{key:Se.selector+Se.hash,class:"stash-row"},[z("div",qve,[z("span",Yve,ae(Se.hash.slice(0,7)),1),z("span",{class:"stash-msg",title:Se.message},ae(Se.selector)+" · "+ae(zc(Se.message)),9,Xve),Se.date?(H(),Ae("span",Zve,ae(Gc(Se.date)),1)):ke("",!0)]),z("div",Jve,[V(st,{size:"small",text:"",type:"primary",onClick:gt=>hi(Se.hash)},{default:R(()=>[...D[103]||(D[103]=[oe("检出",-1)])]),_:1},8,["onClick"])])]))),128))]))]),_:1})]),_:1},8,["modelValue"])]),_:1})],64))])])):(H(),Ae("div",qpe,"请先在「仓库管理」中打开一个仓库")),(H(),Re(W4,{to:"body"},[_.visible&&_.node?(H(),Ae("ul",{key:0,class:"el-dropdown-menu gc-branch-menu",style:bN({left:_.x+"px",top:_.y+"px"}),onClick:D[21]||(D[21]=Vn(()=>{},["stop"]))},[(RC=_.node.branch)!=null&&RC.current?(H(),Ae(rt,{key:0},[z("li",{class:"el-dropdown-menu__item",onClick:D[16]||(D[16]=Se=>Hr("pull"))},"拉取"),z("li",{class:"el-dropdown-menu__item",onClick:D[17]||(D[17]=Se=>Hr("push"))},"推送")],64)):(H(),Ae("li",{key:1,class:"el-dropdown-menu__item",onClick:D[18]||(D[18]=Se=>Hr("checkout"))},"切换")),sn.value?(H(),Ae(rt,{key:2},[z("li",{class:"el-dropdown-menu__item el-dropdown-menu__item--divided",onClick:D[19]||(D[19]=Se=>Hr("delete"))},"删除"),z("li",{class:"el-dropdown-menu__item gc-danger",onClick:D[20]||(D[20]=Se=>Hr("delete-force"))},"强制删除")],64)):ke("",!0)],4)):ke("",!0)])),V(PN,{visible:we(He),"onUpdate:visible":D[22]||(D[22]=Se=>Za(He)?He.value=Se:null),tool:((QC=we(Xe))==null?void 0:QC.tool)??"",preview:((DC=we(Xe))==null?void 0:DC.preview)??null,onConfirm:nn,onCancel:we(Dt)},null,8,["visible","tool","preview","onCancel"]),V(H4,{modelValue:T.visible,"onUpdate:modelValue":D[23]||(D[23]=Se=>T.visible=Se),title:T.title,size:"56%","destroy-on-close":""},{default:R(()=>[bl((H(),Ae("div",e0e,[T.diff?(H(),Ae(rt,{key:0},[z("div",t0e,[z("span",null,ae(T.diff.files.length)+" 个文件",1),z("span",n0e,"+"+ae(T.diff.insertions),1),z("span",r0e,"-"+ae(T.diff.deletions),1),T.diff.truncated?(H(),Ae("span",i0e,"(已截断)")):ke("",!0)]),V(Yb,{patch:T.diff.rawPatch},null,8,["patch"])],64)):T.patch?(H(),Ae(rt,{key:1},[T.patch?(H(),Re(Yb,{key:1,patch:T.patch},null,8,["patch"])):(H(),Ae("div",a0e,"无差异"))],64)):T.loading?ke("",!0):(H(),Re(SC,{key:2,description:"无差异","image-size":60}))])),[[$4,T.loading]])]),_:1},8,["modelValue","title"]),V(zs,{modelValue:F.value,"onUpdate:modelValue":D[26]||(D[26]=Se=>F.value=Se),title:"提交 Commit",width:"520px",onClosed:D[27]||(D[27]=Se=>I.value="")},{footer:R(()=>[V(st,{onClick:D[25]||(D[25]=Se=>F.value=!1)},{default:R(()=>[...D[104]||(D[104]=[oe("取消",-1)])]),_:1}),V(st,{type:"primary",onClick:Zr},{default:R(()=>[...D[105]||(D[105]=[oe("下一步(dry-run 预览)",-1)])]),_:1})]),default:R(()=>[V($a,{modelValue:I.value,"onUpdate:modelValue":D[24]||(D[24]=Se=>I.value=Se),type:"textarea",rows:5,placeholder:"输入提交信息(message)",onKeydown:wl(Vn(Zr,["ctrl"]),["enter"])},null,8,["modelValue","onKeydown"])]),_:1},8,["modelValue"]),V(zs,{modelValue:O.value,"onUpdate:modelValue":D[31]||(D[31]=Se=>O.value=Se),title:"新建分支",width:"480px",onClosed:D[32]||(D[32]=Se=>{P.value="",G.value=""})},{footer:R(()=>[V(st,{onClick:D[30]||(D[30]=Se=>O.value=!1)},{default:R(()=>[...D[106]||(D[106]=[oe("取消",-1)])]),_:1}),V(st,{type:"primary",onClick:tr},{default:R(()=>[...D[107]||(D[107]=[oe("下一步(dry-run 预览)",-1)])]),_:1})]),default:R(()=>[V(NA,{"label-width":"100px"},{default:R(()=>[V(ma,{label:"分支名"},{default:R(()=>[V($a,{modelValue:P.value,"onUpdate:modelValue":D[28]||(D[28]=Se=>P.value=Se),placeholder:"feature/xxx"},null,8,["modelValue"])]),_:1}),V(ma,{label:"起点(可选)"},{default:R(()=>[V($a,{modelValue:G.value,"onUpdate:modelValue":D[29]||(D[29]=Se=>G.value=Se),placeholder:"默认当前 HEAD,如 main 或 commit hash"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),V(zs,{modelValue:K.value,"onUpdate:modelValue":D[37]||(D[37]=Se=>K.value=Se),title:"添加 worktree",width:"560px"},{footer:R(()=>[V(st,{onClick:D[36]||(D[36]=Se=>K.value=!1)},{default:R(()=>[...D[108]||(D[108]=[oe("取消",-1)])]),_:1}),V(st,{type:"primary",onClick:Sn},{default:R(()=>[...D[109]||(D[109]=[oe("下一步(dry-run 预览)",-1)])]),_:1})]),default:R(()=>[V(ta,{class:"stash-tip",title:"在独立目录检出,不切换主工作区。不要把 linked worktree 当成第二套工作区做 merge。",type:"info",closable:!1,"show-icon":""}),V(NA,{"label-width":"100px"},{default:R(()=>[V(ma,{label:"绝对路径"},{default:R(()=>[V($a,{modelValue:J.value,"onUpdate:modelValue":D[33]||(D[33]=Se=>J.value=Se),placeholder:"例如 D:\\work\\repo-feat 或 /tmp/repo-feat"},null,8,["modelValue"])]),_:1}),V(ma,{label:"新分支"},{default:R(()=>[V($a,{modelValue:be.value,"onUpdate:modelValue":D[34]||(D[34]=Se=>be.value=Se),placeholder:"可选,对应 git worktree add -b"},null,8,["modelValue"])]),_:1}),V(ma,{label:"起点"},{default:R(()=>[V($a,{modelValue:re.value,"onUpdate:modelValue":D[35]||(D[35]=Se=>re.value=Se),placeholder:"可选,分支或提交,缺省 HEAD"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),V(zs,{modelValue:ee.value,"onUpdate:modelValue":D[41]||(D[41]=Se=>ee.value=Se),title:"暂存改动 Stash",width:"660px"},{footer:R(()=>[V(st,{onClick:D[40]||(D[40]=Se=>ee.value=!1)},{default:R(()=>[...D[113]||(D[113]=[oe("取消",-1)])]),_:1}),V(st,{type:"primary",onClick:Ze},{default:R(()=>[...D[114]||(D[114]=[oe("下一步(dry-run 预览)",-1)])]),_:1})]),default:R(()=>[V(ta,{class:"stash-tip",title:"可勾选左侧更改列表的文件随本次 stash 一起保存;不勾选则保存全部更改。",type:"info",closable:!1,"show-icon":""}),V(NA,{"label-width":"100px"},{default:R(()=>[V(ma,{label:"说明(可选)"},{default:R(()=>[V($a,{modelValue:te.value,"onUpdate:modelValue":D[38]||(D[38]=Se=>te.value=Se),placeholder:"留空则使用默认说明(WIP on 分支: 提交)"},null,8,["modelValue"])]),_:1}),V(ma,{label:"包含未跟踪"},{default:R(()=>[V(Kc,{modelValue:N.value,"onUpdate:modelValue":D[39]||(D[39]=Se=>N.value=Se)},{default:R(()=>[...D[110]||(D[110]=[oe("包含未跟踪文件(-u)。勾选文件后会自动包含其中的未跟踪文件",-1)])]),_:1},8,["modelValue"])]),_:1})]),_:1}),Be.value.length?(H(),Ae("div",s0e,[z("div",o0e,[z("span",A0e,"选择文件(已选 "+ae(ce.value)+")",1),z("div",l0e,[V(st,{size:"small",text:"",onClick:je},{default:R(()=>[...D[111]||(D[111]=[oe("全选",-1)])]),_:1}),V(st,{size:"small",text:"",onClick:j},{default:R(()=>[...D[112]||(D[112]=[oe("清除选择",-1)])]),_:1})])]),z("div",u0e,[(H(!0),Ae(rt,null,Ot(Be.value,Se=>{var gt,Ga;return H(),Ae("div",{key:Se,class:"file-row gc-gap-btns"},[V(Kc,{"model-value":$(Se),onChange:Qp=>Q(Se)},null,8,["model-value","onChange"]),z("span",{class:dn(["file-status",(gt=o.value)!=null&&gt.untracked.includes(Se)?"new":"mod"])},ae((Ga=o.value)!=null&&Ga.untracked.includes(Se)?"?":"M"),3),z("span",c0e,ae(Se),1)])}),128))])])):ke("",!0)]),_:1},8,["modelValue"]),V(zs,{modelValue:ne.value,"onUpdate:modelValue":D[44]||(D[44]=Se=>ne.value=Se),title:"硬重置(高风险)",width:"480px",onClosed:D[45]||(D[45]=Se=>ue.value="")},{footer:R(()=>[V(st,{onClick:D[43]||(D[43]=Se=>ne.value=!1)},{default:R(()=>[...D[115]||(D[115]=[oe("取消",-1)])]),_:1}),V(st,{type:"danger",onClick:Op},{default:R(()=>[...D[116]||(D[116]=[oe("下一步(dry-run 预览)",-1)])]),_:1})]),default:R(()=>[V(ta,{title:"将丢弃索引与工作区所有更改(不可逆),执行前会自动创建备份",type:"error",closable:!1,"show-icon":"",class:"mb"}),V($a,{modelValue:ue.value,"onUpdate:modelValue":D[42]||(D[42]=Se=>ue.value=Se),placeholder:"重置目标,默认 HEAD,如 HEAD~1 / commit hash / main"},null,8,["modelValue"])]),_:1},8,["modelValue"]),V(zs,{modelValue:Y.value,"onUpdate:modelValue":D[48]||(D[48]=Se=>Y.value=Se),title:"工作区合并",width:"480px",onClosed:D[49]||(D[49]=Se=>U.value="")},{footer:R(()=>[V(st,{onClick:D[47]||(D[47]=Se=>Y.value=!1)},{default:R(()=>[...D[117]||(D[117]=[oe("取消",-1)])]),_:1}),V(st,{type:"primary",onClick:Lp},{default:R(()=>[...D[118]||(D[118]=[oe("下一步(dry-run 预览)",-1)])]),_:1})]),default:R(()=>[V(ta,{class:"mb",title:"会把所选分支合并进当前检出分支,可能产生冲突。只想预演、不改工作区请用左侧「合并」页。",type:"warning",closable:!1,"show-icon":""}),V(NA,{"label-width":"100px"},{default:R(()=>[V(ma,{label:"来源分支"},{default:R(()=>[V(Is,{modelValue:U.value,"onUpdate:modelValue":D[46]||(D[46]=Se=>U.value=Se),placeholder:"选择要合进来的分支"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),V(zs,{modelValue:W.value,"onUpdate:modelValue":D[53]||(D[53]=Se=>W.value=Se),title:"打标签",width:"480px"},{footer:R(()=>[V(st,{onClick:D[52]||(D[52]=Se=>W.value=!1)},{default:R(()=>[...D[119]||(D[119]=[oe("取消",-1)])]),_:1}),V(st,{type:"primary",onClick:Np},{default:R(()=>[...D[120]||(D[120]=[oe("下一步(dry-run 预览)",-1)])]),_:1})]),default:R(()=>[V(NA,{"label-width":"100px"},{default:R(()=>[V(ma,{label:"标签名"},{default:R(()=>[V($a,{modelValue:ie.value,"onUpdate:modelValue":D[50]||(D[50]=Se=>ie.value=Se),placeholder:"v1.0.0"},null,8,["modelValue"])]),_:1}),V(ma,{label:"说明(可选)"},{default:R(()=>[V($a,{modelValue:Ee.value,"onUpdate:modelValue":D[51]||(D[51]=Se=>Ee.value=Se),placeholder:"填写则创建附注标签"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"]),V(zs,{modelValue:de.value,"onUpdate:modelValue":D[56]||(D[56]=Se=>de.value=Se),title:"变基(高风险)",width:"480px",onClosed:D[57]||(D[57]=Se=>X.value="")},{footer:R(()=>[V(st,{onClick:D[55]||(D[55]=Se=>de.value=!1)},{default:R(()=>[...D[121]||(D[121]=[oe("取消",-1)])]),_:1}),V(st,{type:"danger",onClick:Pp},{default:R(()=>[...D[122]||(D[122]=[oe("下一步(dry-run 预览)",-1)])]),_:1})]),default:R(()=>[V(ta,{title:"将把当前分支变基到所选目标,可能改写历史;执行前会自动备份",type:"error",closable:!1,"show-icon":"",class:"mb"}),V(NA,{"label-width":"100px"},{default:R(()=>[V(ma,{label:"变基到"},{default:R(()=>[V(Is,{modelValue:X.value,"onUpdate:modelValue":D[54]||(D[54]=Se=>X.value=Se),placeholder:"选择目标分支"},null,8,["modelValue"])]),_:1})]),_:1})]),_:1},8,["modelValue"])])}}}),h0e=Rr(d0e,[["__scopeId","data-v-98d50ce4"]]);async function Q4(r){try{return await navigator.clipboard.writeText(r),!0}catch{return!1}}const f0e={class:"pair"},g0e={class:"split"},p0e={class:"pane form"},v0e={key:0,class:"md-block"},m0e={class:"gc-field-label"},y0e={key:0,class:"req"},w0e={class:"pane preview"},b0e={class:"preview-actions"},B0e={key:0,class:"muted"},E0e={key:0,class:"missing"},x0e=Or({__name:"MrCreateDialog",props:{modelValue:{type:Boolean},repoId:{},into:{},from:{},sourceBranch:{}},emits:["update:modelValue","submit"],setup(r,{emit:e}){const t=r,n=e,i=Fe(!1),a=Fe(!1),s=Fe(""),o=Fe(null),A=Fe(""),l=Fe(""),u=Fe([]),c=Nu({}),d=Fe("");let h;const f=Ue({get:()=>t.modelValue,set:te=>n("update:modelValue",te)}),p=Ue(()=>{var te;return((te=o.value)==null?void 0:te.template)??null}),g=Ue(()=>{var te;return((te=p.value)==null?void 0:te.fields)??[]}),v=Ue(()=>g.value.filter(te=>te.type!=="markdown")),m=Ue(()=>{var te;return!!((te=p.value)!=null&&te.enabled&&v.value.length)}),y=Ue(()=>m.value?v.value.filter(te=>{var N;if(!te.required&&te.type!=="checkboxes")return!1;if(te.type==="checkboxes"){const K=T(te.id);return((N=te.items)==null?void 0:N.some(J=>J.required&&!K.includes(J.id)))??!1}return _(te.id).trim()===""}):[]),w=Ue(()=>!!(o.value&&A.value.trim()&&y.value.length===0)),B=Ue(()=>{var te;return((te=o.value)==null?void 0:te.method)==="browser"}),x=Ue(()=>!!(m.value&&B.value));async function k(){const te=d.value.trim();if(!te){qe.warning("没有可复制的正文");return}const N=await Q4(te);qe[N?"success":"error"](N?"已复制正文":"复制失败,请手动选择预览区")}function _(te){const N=c[te];return typeof N=="string"?N:""}function T(te){return Array.isArray(c[te])?c[te]:[]}function F(te){var N;return te.type==="checkboxes"&&((N=te.items)!=null&&N.some(K=>K.required))?te.help?`${te.help}(带 * 的项必须勾选)`:"带 * 的项必须勾选":te.help||""}function I(te){for(const N of Object.keys(c))delete c[N];for(const N of te)N.type!=="markdown"&&(c[N.id]=N.type==="checkboxes"?[]:"")}function O(){h&&clearTimeout(h),h=setTimeout(()=>void P(),400)}async function P(){if(!m.value||!p.value){d.value=l.value;return}a.value=!0;try{const te=await TN({enabled:!0,agentFill:p.value.agentFill,filename:"",sourceMd:"",fields:p.value.fields},{...c});d.value=te.preview}catch(te){d.value=te instanceof Error?te.message:String(te)}finally{a.value=!1}}async function G(){var te;if(t.repoId==null){s.value="请先选择仓库";return}i.value=!0,s.value="",o.value=null,d.value="";try{const N=await _N(t.repoId,{into:t.into,from:t.from,sourceBranch:t.sourceBranch||void 0});o.value=N,A.value=N.title,l.value="",u.value=[],I(((te=N.template)==null?void 0:te.fields)??[]),await P()}catch(N){s.value=N instanceof Error?N.message:String(N)}finally{i.value=!1}}function ee(){if(!w.value)return;const te={into:t.into,from:t.from,title:A.value.trim()};t.sourceBranch&&(te.sourceBranch=t.sourceBranch),u.value.length&&(te.reviewers=u.value),m.value?te.fields={...c}:l.value.trim()&&(te.body=l.value),n("submit",te),f.value=!1}return en(()=>[t.modelValue,t.repoId,t.into,t.from,t.sourceBranch],([te])=>{te&&G()}),en(c,()=>O(),{deep:!0}),en(l,()=>O()),Qf(()=>{h&&clearTimeout(h)}),(te,N)=>{const K=Oe("el-alert"),J=Oe("el-skeleton"),be=Oe("el-input"),re=Oe("el-form-item"),ne=Oe("el-tooltip"),ue=Oe("el-option"),Y=Oe("el-select"),U=Oe("el-checkbox"),W=Oe("el-checkbox-group"),ie=Oe("el-form"),Ee=Oe("el-button"),de=Oe("el-dialog");return H(),Re(de,{modelValue:f.value,"onUpdate:modelValue":N[4]||(N[4]=X=>f.value=X),title:"创建 PR / MR",width:"920px",class:"mr-create-dialog","destroy-on-close":"","append-to-body":""},{footer:R(()=>[y.value.length?(H(),Ae("span",E0e,"还缺:"+ae(y.value.map(X=>X.label).join("、")),1)):ke("",!0),V(Ee,{onClick:N[3]||(N[3]=X=>f.value=!1)},{default:R(()=>[...N[8]||(N[8]=[oe("取消",-1)])]),_:1}),V(Ee,{type:"primary",disabled:!w.value,onClick:ee},{default:R(()=>[oe(ae(B.value?"打开创建页":"创建"),1)]),_:1},8,["disabled"])]),default:R(()=>[s.value?(H(),Re(K,{key:0,type:"error",closable:!1,title:s.value,class:"mb"},null,8,["title"])):ke("",!0),i.value?(H(),Re(J,{key:1,rows:6,animated:""})):o.value?(H(),Ae(rt,{key:2},[z("p",f0e,ae(r.into)+" ← "+ae(r.from),1),o.value.cliError?(H(),Re(K,{key:0,type:"warning",closable:!1,title:o.value.cliError,class:"mb"},null,8,["title"])):ke("",!0),o.value.cliInstallUrl&&!o.value.cli?(H(),Re(K,{key:1,type:"info",closable:!1,class:"mb",title:`未检测到本机 CLI,可安装 ${o.value.cliInstallUrl}`},null,8,["title"])):ke("",!0),x.value?(H(),Re(K,{key:2,type:"warning",closable:!1,class:"mb",title:"当前仓开单方式是浏览器页。平台创建页不会写入这段正文,请复制预览后粘贴;或到设置 → MR 配置改用 Token / 本机 CLI。"})):ke("",!0),z("div",g0e,[z("div",p0e,[V(ie,{"label-position":"top"},{default:R(()=>[V(re,{label:"标题",required:""},{default:R(()=>[V(be,{modelValue:A.value,"onUpdate:modelValue":N[0]||(N[0]=X=>A.value=X)},null,8,["modelValue"])]),_:1}),m.value?(H(!0),Ae(rt,{key:0},Ot(g.value,X=>{var xe;return H(),Ae(rt,{key:X.id},[X.type==="markdown"?(H(),Ae("div",v0e,[z("pre",null,ae(X.content||"(空说明)"),1)])):(H(),Re(re,{key:1,required:X.required||X.type==="checkboxes"&&((xe=X.items)==null?void 0:xe.some(ce=>ce.required))},{label:R(()=>[z("span",m0e,[oe(ae(X.label)+" ",1),F(X)?(H(),Re(ne,{key:0,content:F(X),placement:"top","show-after":300,"popper-class":"gc-help-tip"},{default:R(()=>[...N[5]||(N[5]=[z("span",{class:"gc-field-help",tabindex:"0"},"?",-1)])]),_:1},8,["content"])):ke("",!0)])]),default:R(()=>[X.type==="textarea"?(H(),Re(be,{key:0,"model-value":_(X.id),type:"textarea",rows:4,placeholder:X.placeholder,"onUpdate:modelValue":ce=>c[X.id]=ce},null,8,["model-value","placeholder","onUpdate:modelValue"])):X.type==="select"?(H(),Re(Y,{key:1,"model-value":_(X.id)||void 0,clearable:"",placeholder:X.placeholder||"选择一项","onUpdate:modelValue":ce=>c[X.id]=ce??""},{default:R(()=>[(H(!0),Ae(rt,null,Ot(X.options??[],ce=>(H(),Re(ue,{key:ce,label:ce,value:ce},null,8,["label","value"]))),128))]),_:2},1032,["model-value","placeholder","onUpdate:modelValue"])):X.type==="checkboxes"?(H(),Re(W,{key:2,class:"gc-check-col","model-value":T(X.id),"onUpdate:modelValue":ce=>c[X.id]=ce},{default:R(()=>[(H(!0),Ae(rt,null,Ot(X.items??[],ce=>(H(),Re(U,{key:ce.id,value:ce.id},{default:R(()=>[oe(ae(ce.label),1),ce.required?(H(),Ae("span",y0e," *")):ke("",!0)]),_:2},1032,["value"]))),128))]),_:2},1032,["model-value","onUpdate:modelValue"])):ke("",!0)]),_:2},1032,["required"]))],64)}),128)):(H(),Re(re,{key:1,label:"正文(可选)"},{default:R(()=>[V(be,{modelValue:l.value,"onUpdate:modelValue":N[1]||(N[1]=X=>l.value=X),type:"textarea",rows:8,placeholder:"未启用正文规范时,可直接写正文"},null,8,["modelValue"])]),_:1})),V(re,{label:"审核人"},{default:R(()=>[V(Y,{modelValue:u.value,"onUpdate:modelValue":N[2]||(N[2]=X=>u.value=X),multiple:"",filterable:"","allow-create":"","default-first-option":"",placeholder:"可选,回车添加用户名"},{default:R(()=>[(H(!0),Ae(rt,null,Ot(o.value.candidates,X=>(H(),Re(ue,{key:X.username,label:X.name?`${X.name} (${X.username})`:X.username,value:X.username},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),_:1})]),_:1})]),z("div",w0e,[z("header",null,[N[7]||(N[7]=z("strong",null,"预览",-1)),z("span",b0e,[a.value?(H(),Ae("span",B0e,"刷新中…")):ke("",!0),V(Ee,{size:"small",disabled:!d.value.trim(),onClick:k},{default:R(()=>[...N[6]||(N[6]=[oe("复制正文",-1)])]),_:1},8,["disabled"])])]),z("pre",null,ae(d.value||"(空)"),1)])])],64)):ke("",!0)]),_:1},8,["modelValue"])}}}),C0e=Rr(x0e,[["__scopeId","data-v-25f7e5fe"]]),S0e={class:"matrix-panel"},_0e={class:"filter-bar"},k0e={class:"field"},T0e={class:"field"},F0e={class:"field field-switch"},M0e={class:"field field-actions"},I0e={class:"chips"},O0e={key:0,class:"hint"},L0e={class:"chips"},N0e={key:0,class:"hint"},P0e={key:0,class:"matrix-body"},U0e={class:"matrix-table-wrap"},R0e={class:"summary"},Q0e={class:"ok"},D0e={class:"bad"},H0e={key:0},$0e={class:"grid"},G0e={key:0},z0e=["colspan"],V0e={key:1},K0e={class:"mono row-head"},j0e={key:0,class:"ord"},W0e=["title","onClick"],q0e={key:0,class:"detail"},Y0e={class:"mono"},X0e={key:0,class:"tip"},Z0e={key:1,class:"paths"},J0e={key:2,class:"hint"},eme=Or({__name:"MatrixView",emits:["createMr","pushTemp"],setup(r,{emit:e}){const t=Ii(),n=Hf(),{intos:i,froms:a,fetchRemote:s,loading:o,survey:A,order:l,active:u,orderView:c,surveyStale:d}=BN(n),h=e,f=Ue(()=>t.currentId!==null),p={clean:"干净",conflicts:"冲突",unrelated:"无共祖",same:"同名",error:"失败"},g={open:"",ready:"",local:"已解决·本地",resolved:"已处理",page:"已开创建页",mr:"已提 MR"};function v(U,W){return`${U}\0${W}`}const m=Ue(()=>{var U;return[...new Set((((U=A.value)==null?void 0:U.cells)??[]).map(W=>W.into))]}),y=Ue(()=>{var Ee;const U=((Ee=A.value)==null?void 0:Ee.cells)??[],W=new Map(U.map(de=>[v(de.into,de.from),de]));return[...new Set(U.map(de=>de.from))].map(de=>({from:de,cells:m.value.map(X=>({into:X,cell:W.get(v(X,de))??null}))}))});function w(U){return U.replace(/^refs\/(heads|remotes)\//,"").replace(/^origin\//,"")}function B(U,W){return w(U)===w(W)}const x=Ue(()=>{const U=l.value;if(!U||m.value.length!==1)return!1;const W=m.value[0];if(!W||!B(U.best.into,W))return!1;const ie=y.value.map(de=>de.from),Ee=new Set(U.best.order);return ie.length===Ee.size&&ie.every(de=>[...Ee].some(X=>B(X,de)))}),k=Ue(()=>{const U=y.value,W=()=>U.map(X=>({kind:"row",ord:0,...X})),ie=l.value;if(!ie||c.value!=="best"||!x.value)return W();const Ee=new Map(U.map(X=>[w(X.from),X])),de=[];return ie.best.order.forEach((X,xe)=>{const ce=Ee.get(w(X));if(!ce)return;de.push({kind:"row",ord:xe+1,...ce});const De=ie.best.cleanPrefix;xe+1===De&&De<ie.best.order.length&&de.push({kind:"divider",reason:ie.best.blockedReason??(ie.best.blockedAt?`从 ${ie.best.blockedAt} 起需要人工处理`:"")})}),de.filter(X=>X.kind==="row").length===U.length?de:W()}),_=Ue(()=>k.value.flatMap(U=>U.kind==="divider"?[]:U.cells.map(W=>W.cell).filter(W=>!!W))),T=Ue(()=>_.value.filter(U=>U.outcome==="conflicts").map(U=>({into:U.into,from:U.from}))),F=Ue(()=>T.value.filter(U=>!n.isPairDone(U))),I=Ue(()=>_.value.filter(U=>n.stageOf(U)==="local")),O=Ue(()=>_.value.filter(U=>{const W=n.stageOf(U);return W==="ready"||W==="resolved"})),P=Ue(()=>{var W;const U=((W=A.value)==null?void 0:W.cells)??[];return{total:U.length,clean:U.filter(ie=>ie.outcome==="clean").length,conflicts:U.filter(ie=>ie.outcome==="conflicts").length}}),G=Ue(()=>{const U=l.value;return!U||!x.value?null:{cleanPrefix:U.best.cleanPrefix,total:U.best.order.length,baseline:U.baseline.cleanPrefix,improved:U.best.cleanPrefix>U.baseline.cleanPrefix}}),ee=Ue(()=>F.value.length>0?n.doneKeys.length>0||T.value.length!==F.value.length?`处理下一条冲突(剩 ${F.value.length})`:"开始逐条处理":I.value.length>0?`推送临时分支(剩 ${I.value.length})`:O.value.length>0?O.value.length>1?`申请 MR(剩 ${O.value.length})`:"申请 MR":"");async function te(){if(t.currentId===null){qe.warning("请先选择仓库");return}n.canSurvey&&await n.runSurvey()}async function N(){n.canOrder&&await n.runOrder()}function K(U){n.openPair({into:U.into,from:U.from},T.value)}function J(){const U=F.value[0];if(U){n.openPair(U,T.value);return}const W=I.value[0];if(W){be(W);return}const ie=O.value[0];ie&&ue(ie)}function be(U){var ie;const W=(ie=U.tempBranch)==null?void 0:ie.name;if(!W){qe.warning("没有本地临时分支");return}h("pushTemp",{into:U.into,from:U.from,branch:W})}function re(U){const W=U.conflictPaths.length,ie=W>0?` ${W}`:"",Ee=n.stageOf(U),de=g[Ee];return de?`${de}${ie}`:`${p[U.outcome]}${ie}`}function ne(U){const W=n.stageOf(U),ie=`${U.from} → ${U.into}`;return W==="local"?`${ie} · 选边已记在本地临时分支,未推送;可在矩阵推送后申请 MR`:W==="resolved"?`${ie} · 临时分支已推送,可申请 MR`:W==="page"?`${ie} · 已打开创建页`:W==="mr"?`${ie} · 已创建 PR/MR`:U.error||ie}function ue(U){const W=n.sourceBranchFor(U);if(!W){qe.warning("没有可用来开 MR 的源分支");return}if(!n.canCreateMr(U)){qe.warning("临时分支还在本地,请先在单对落盘并推送");return}h("createMr",{into:U.into,from:U.from,sourceBranch:W})}function Y(U){var W,ie;return((W=u.value)==null?void 0:W.into)===U.into&&((ie=u.value)==null?void 0:ie.from)===U.from}return(U,W)=>{const ie=Oe("el-switch"),Ee=Oe("el-button"),de=Oe("el-tag"),X=Oe("el-card"),xe=Oe("el-alert"),ce=Oe("el-radio-button"),De=Oe("el-radio-group");return H(),Ae("div",S0e,[V(X,{shadow:"never",class:"filter-card"},{default:R(()=>[z("div",_0e,[z("div",k0e,[W[7]||(W[7]=z("span",{class:"field-label"},"合入目标 into(可多选)",-1)),V(Is,{modelValue:we(i),"onUpdate:modelValue":W[0]||(W[0]=He=>Za(i)?i.value=He:null),multiple:"","remote-first":"","exclude-merge-temp":"",placeholder:"选择线上目标"},null,8,["modelValue"])]),z("div",T0e,[W[8]||(W[8]=z("span",{class:"field-label"},"我的分支 from(可多选)",-1)),V(Is,{modelValue:we(a),"onUpdate:modelValue":W[1]||(W[1]=He=>Za(a)?a.value=He:null),multiple:"","exclude-merge-temp":"",placeholder:"选择待合入分支"},null,8,["modelValue"])]),z("div",F0e,[W[9]||(W[9]=z("span",{class:"field-label"},"先 fetch",-1)),V(ie,{modelValue:we(s),"onUpdate:modelValue":W[2]||(W[2]=He=>Za(s)?s.value=He:null)},null,8,["modelValue"])]),z("div",M0e,[V(Ee,{loading:we(o),disabled:!we(n).canSurvey,type:"primary",onClick:te},{default:R(()=>[...W[10]||(W[10]=[oe("跑矩阵",-1)])]),_:1},8,["loading","disabled"]),V(Ee,{loading:we(o),disabled:!we(n).canOrder,onClick:N},{default:R(()=>[...W[11]||(W[11]=[oe("建议顺序",-1)])]),_:1},8,["loading","disabled"])])]),z("div",I0e,[W[12]||(W[12]=z("span",{class:"chip-label"},"INTO",-1)),we(i).length===0?(H(),Ae("span",O0e,"未选")):ke("",!0),(H(!0),Ae(rt,null,Ot(we(i),He=>(H(),Re(de,{key:`i-${He}`,size:"small",closable:"",onClose:Xe=>we(n).dropChip("into",He)},{default:R(()=>[oe(ae(He),1)]),_:2},1032,["onClose"]))),128))]),z("div",L0e,[W[13]||(W[13]=z("span",{class:"chip-label"},"FROM",-1)),we(a).length===0?(H(),Ae("span",N0e,"未选")):ke("",!0),(H(!0),Ae(rt,null,Ot(we(a),He=>(H(),Re(de,{key:`f-${He}`,size:"small",closable:"",type:"info",onClose:Xe=>we(n).dropChip("from",He)},{default:R(()=>[oe(ae(He),1)]),_:2},1032,["onClose"]))),128))]),W[14]||(W[14]=z("p",{class:"tip"}," 每对只跑 merge-tree,不改工作区。点「去预演」选边后只记到本地临时分支(不推送),回矩阵显示「已解决·本地」。 矩阵上再统一:先清剩余冲突,再推送临时分支、申请 MR。不切换当前工作区。 ",-1))]),_:1}),we(A)?(H(),Ae("div",P0e,[z("div",U0e,[we(d)?(H(),Re(xe,{key:0,title:"仓库刚有过写操作,矩阵可能过期",type:"warning","show-icon":"",closable:!1,class:"stale-alert"},{default:R(()=>[V(Ee,{type:"primary",loading:we(o),disabled:!we(n).canSurvey,onClick:te},{default:R(()=>[...W[15]||(W[15]=[oe("重新跑矩阵",-1)])]),_:1},8,["loading","disabled"])]),_:1})):ke("",!0),z("div",R0e,[z("span",null,ae(P.value.total)+" 组",1),z("span",Q0e,"干净 "+ae(P.value.clean),1),z("span",D0e,"冲突 "+ae(P.value.conflicts),1),G.value?(H(),Ae(rt,{key:0},[z("span",null,"建议可连续干净 "+ae(G.value.cleanPrefix)+"/"+ae(G.value.total),1),G.value.improved?(H(),Ae("span",H0e,"原顺序 "+ae(G.value.baseline),1)):ke("",!0),x.value?(H(),Re(De,{key:1,modelValue:we(c),"onUpdate:modelValue":W[3]||(W[3]=He=>Za(c)?c.value=He:null),size:"small"},{default:R(()=>[V(ce,{value:"best"},{default:R(()=>[...W[16]||(W[16]=[oe("建议顺序",-1)])]),_:1}),V(ce,{value:"original"},{default:R(()=>[...W[17]||(W[17]=[oe("原顺序",-1)])]),_:1})]),_:1},8,["modelValue"])):ke("",!0)],64)):ke("",!0),W[18]||(W[18]=z("span",{class:"summary-spacer"},null,-1)),ee.value?(H(),Re(Ee,{key:1,type:"primary",disabled:!f.value||we(o),onClick:J},{default:R(()=>[oe(ae(ee.value),1)]),_:1},8,["disabled"])):ke("",!0)]),z("table",$0e,[z("thead",null,[z("tr",null,[W[19]||(W[19]=z("th",{class:"corner"},"from \\ into",-1)),(H(!0),Ae(rt,null,Ot(m.value,He=>(H(),Ae("th",{key:He,class:"mono"},ae(He),1))),128))])]),z("tbody",null,[(H(!0),Ae(rt,null,Ot(k.value,(He,Xe)=>(H(),Ae(rt,{key:He.kind==="divider"?`d-${Xe}`:He.from},[He.kind==="divider"?(H(),Ae("tr",G0e,[z("td",{colspan:m.value.length+1,class:"divider"},ae(He.reason),9,z0e)])):(H(),Ae("tr",V0e,[z("th",K0e,[He.ord?(H(),Ae("span",j0e,ae(He.ord),1)):ke("",!0),oe(" "+ae(He.from),1)]),(H(!0),Ae(rt,null,Ot(He.cells,ct=>(H(),Ae("td",{key:ct.into},[ct.cell?(H(),Ae("button",{key:0,type:"button",class:dn(["cell",[`is-${ct.cell.outcome}`,`is-stage-${we(n).stageOf(ct.cell)}`,{active:Y(ct.cell)}]]),title:ne(ct.cell),onClick:dt=>we(n).active=ct.cell},ae(re(ct.cell)),11,W0e)):ke("",!0)]))),128))]))],64))),128))])])]),we(u)?(H(),Ae("aside",q0e,[z("h3",Y0e,ae(we(u).from)+" → "+ae(we(u).into),1),z("p",null,ae(p[we(u).outcome])+ae(we(u).error?` · ${we(u).error}`:""),1),we(u).tempBranch?(H(),Ae("p",X0e," 临时分支 "+ae(we(u).tempBranch.name)+" ("+ae(we(u).tempBranch.local?"本地":"")+ae(we(u).tempBranch.local&&we(u).tempBranch.remote?" / ":"")+ae(we(u).tempBranch.remote?"远程":"")+") ",1)):ke("",!0),we(u).conflictPaths.length?(H(),Ae("ul",Z0e,[(H(!0),Ae(rt,null,Ot(we(u).conflictPaths,He=>(H(),Ae("li",{key:He,class:"mono"},ae(He),1))),128))])):we(u).outcome==="clean"?(H(),Ae("p",J0e,"没有冲突文件")):ke("",!0),we(u).outcome==="conflicts"||we(u).outcome==="clean"?(H(),Re(Ee,{key:3,type:"primary",onClick:W[4]||(W[4]=He=>K(we(u)))},{default:R(()=>[...W[20]||(W[20]=[oe("去预演",-1)])]),_:1})):ke("",!0),we(n).stageOf(we(u))==="local"?(H(),Re(Ee,{key:4,disabled:we(o),onClick:W[5]||(W[5]=He=>be(we(u)))},{default:R(()=>[...W[21]||(W[21]=[oe("推送临时分支",-1)])]),_:1},8,["disabled"])):ke("",!0),we(n).canCreateMr(we(u))?(H(),Re(Ee,{key:5,disabled:we(o),onClick:W[6]||(W[6]=He=>ue(we(u)))},{default:R(()=>[...W[22]||(W[22]=[oe("申请 MR",-1)])]),_:1},8,["disabled"])):ke("",!0)])):ke("",!0)])):ke("",!0)])}}}),tme=Rr(eme,[["__scopeId","data-v-6286e8ad"]]),nme={class:"page merge-page"},rme={class:"page-head"},ime={class:"head-actions"},ame={key:0,class:"trail"},sme={class:"trail-pos mono"},ome={class:"trail-pair mono"},Ame={class:"mine"},lme={class:"online"},ume={key:3,class:"empty-tip"},cme={class:"filter-bar"},dme={class:"field"},hme={class:"field"},fme={class:"field field-switch"},gme={class:"tip"},pme={class:"tip"},vme={class:"mono"},mme={class:"tip"},yme={class:"result-head"},wme={class:"mono sha"},bme={key:0,class:"tip tip-inline"},Bme={key:1,class:"tip tip-inline"},Eme={class:"mono"},xme={key:2,class:"tip tip-inline"},Cme={class:"mono"},Sme={key:3,class:"tip tip-inline"},_me={key:4,class:"tip tip-inline"},kme={key:5,class:"tip tip-inline"},Tme={key:6,class:"tip tip-inline"},Fme={class:"result-head"},Mme={class:"mono sha"},Ime={class:"apply-meta"},Ome={class:"mono"},Lme={class:"mono"},Nme={key:0,class:"apply-link"},Pme=["href"],Ume={key:2,class:"apply-link"},Rme=["href"],Qme={class:"apply-actions gc-gap-btns"},Dme={class:"result-head"},Hme={class:"mono sha"},$me={key:0,class:"apply-link"},Gme=["href"],zme={key:1,class:"apply-link"},Vme=["href"],Kme={key:2,class:"pr-body"},jme=Or({__name:"MergeView",setup(r){const e=Ii(),t=vc(),n=Hf(),{mode:i,pairInto:a,pairFrom:s,fetchRemote:o,trail:A,trailCurrent:l,trailRemaining:u,fromMatrix:c,loading:d}=BN(n),h=Df(),f=BA(),p=()=>e.currentId,{confirmVisible:g,pending:v,canRun:m,previewAndConfirm:y,executeConfirmed:w,cancel:B}=NN(p),x=Fe(!1),k=Fe(""),_=Fe(null),T=Fe(null),F=Fe(null),I=Fe(null),O=Fe(null),P=Fe(null),G=Fe(!1),ee=Fe(""),te=Fe(""),N=Fe(""),K=Fe(null),J=Fe(0),be=Fe(!1),re=Ue(()=>n.isPairDone({into:a.value,from:s.value})),ne=Ue(()=>{var Me;return((Me=n.survey)==null?void 0:Me.cells.find(pe=>pe.into===a.value&&pe.from===s.value))??null}),ue=Ue(()=>c.value&&re.value&&!be.value&&!_.value),Y=Ue(()=>t.hasRemote),U=Ue(()=>{var Me;return(((Me=_.value)==null?void 0:Me.conflictFiles)??[]).some(pe=>(pe.conflictContent??"").includes("超出展示上限"))}),W=Ue(()=>{var Me,pe;return((Me=_.value)==null?void 0:Me.situation)??((pe=_.value)==null?void 0:pe.outcome)??""}),ie=Ue(()=>{const Me=W.value;return Me==="conflicts"?"danger":Me==="unrelated"?"warning":Me==="temp_local"||Me==="looking_at_temp"||Me==="already_merged"?"info":Me==="clean"||Me==="temp_remote"?"success":"info"}),Ee=Ue(()=>{const Me=W.value;return Me==="looking_at_temp"?"这是落盘临时分支":Me==="temp_remote"?"临时分支已在远程":Me==="temp_local"?"临时分支在本地":Me==="already_merged"?"没有新提交":Me==="clean"?"可干净合并":Me==="unrelated"?"无关历史":Me==="conflicts"?"存在冲突":""}),de=Ue(()=>{if(!m.value||!_.value||U.value)return!1;const Me=W.value;return Me==="looking_at_temp"||Me==="temp_remote"||Me==="temp_local"||Me==="already_merged"||_.value.outcome==="unrelated"&&_.value.conflictFiles.length===0?!1:_.value.clean?!0:_.value.outcome==="conflicts"&&J.value===0}),X=Ue(()=>{var pe,vt;const Me=_.value;return!Me||!Y.value?!1:W.value==="temp_local"?!!((pe=Me.pairTempBranch)!=null&&pe.name):W.value==="looking_at_temp"?!!((vt=Me.pairTempBranch)!=null&&vt.local&&!Me.pairTempBranch.remote):!1}),xe=Ue(()=>{var pe,vt,Pt;const Me=_.value;return Me?W.value==="temp_remote"?!!((pe=Me.pairTempBranch)!=null&&pe.name):W.value==="looking_at_temp"?!!((vt=Me.pairTempBranch)!=null&&vt.remote&&((Pt=Me.recoveredPair)!=null&&Pt.into)):!1:!1}),ce=Ue(()=>x.value||d.value);function De(Me){const pe=h.query[Me];return typeof pe=="string"?pe:""}function He(Me){return Me.filter(pe=>!isMergeTempBranchName(pe.name))}function Xe(Me){var Ht;const pe=He(Me).filter(Gt=>Gt.remote),vt=["origin/main","origin/master","origin/develop"];for(const Gt of vt)if(pe.some(di=>di.name===Gt))return Gt;if(pe[0])return pe[0].name;const Pt=He(Me).find(Gt=>Gt.current);return(Pt==null?void 0:Pt.name)??((Ht=He(Me)[0])==null?void 0:Ht.name)??""}function ct(Me,pe){const vt=He(Me),Pt=vt.find(Gt=>Gt.current&&!Gt.remote);if(Pt&&Pt.name!==pe)return Pt.name;const Ht=vt.find(Gt=>!Gt.remote&&Gt.name!==pe);return(Ht==null?void 0:Ht.name)??""}function dt(Me){const pe=He(Me),vt=De("into"),Pt=De("from");vt&&pe.some(Ht=>Ht.name===vt)&&!isMergeTempBranchName(vt)?a.value=vt:(!a.value||!pe.some(Ht=>Ht.name===a.value)||isMergeTempBranchName(a.value))&&(a.value=Xe(Me)),Pt&&pe.some(Ht=>Ht.name===Pt)&&!isMergeTempBranchName(Pt)?s.value=Pt:(!s.value||!pe.some(Ht=>Ht.name===s.value)||isMergeTempBranchName(s.value))&&(s.value=ct(Me,a.value))}function Nn(){const Me=h.query.mode,pe=i.value==="matrix"?"matrix":void 0;if(pe===(Me==="matrix"?"matrix":void 0))return;const Pt={...h.query};pe?Pt.mode=pe:delete Pt.mode,f.replace({path:"/merge",query:Pt})}async function Dt(){const Me=p();if(Me===null){qe.warning("请先选择仓库");return}if(!a.value||!s.value){qe.warning("请选择合入目标与我的分支");return}x.value=!0,k.value="",_.value=null,T.value=null,F.value=null;try{_.value=await gH(Me,{into:a.value,from:s.value,fetch:o.value,maxFiles:80}),J.value=_.value.outcome==="conflicts"?_.value.conflictFiles.length:0}catch(pe){k.value=pe instanceof Error?pe.message:String(pe)}finally{x.value=!1}}async function ui(){var Pt;if(!de.value||!_.value)return;const Me=_.value.outcome==="conflicts"?((Pt=K.value)==null?void 0:Pt.buildFiles())??[]:[];if(_.value.outcome==="conflicts"&&Me.length===0){qe.warning("请先完成选边");return}const pe={into:a.value,from:s.value,files:Me,push:c.value?!1:Y.value,keepLocal:c.value?!0:void 0};O.value="git_apply_resolve",await y("git_apply_resolve",pe)||(O.value=null)}function Hn(Me){if(p()==null){qe.warning("请先选择仓库");return}ee.value=Me.into,te.value=Me.from,N.value=Me.sourceBranch??"",G.value=!0}function an(){var vt;if(T.value){Hn({into:a.value,from:s.value,sourceBranch:T.value.tempBranch});return}const Me=_.value;if(!Me||!xe.value)return;const pe=Me.recoveredPair;Hn({into:(pe==null?void 0:pe.into)??a.value,from:(pe==null?void 0:pe.from)??s.value,sourceBranch:(vt=Me.pairTempBranch)==null?void 0:vt.name})}function Jt(){var pe,vt;const Me=(vt=(pe=_.value)==null?void 0:pe.pairTempBranch)==null?void 0:vt.name;Me&&at({into:a.value,from:s.value,branch:Me})}function ye(){var pe;const Me=(pe=_.value)==null?void 0:pe.recoveredPair;Me&&(a.value=Me.into,s.value=Me.from,Dt())}function me(Me){Hn(Me)}async function pt(Me){P.value={into:String(Me.into??""),from:String(Me.from??"")},O.value="git_mr_create",await y("git_mr_create",Me)||(O.value=null,P.value=null)}async function at(Me){var Pt;if(!Y.value){qe.warning("没有远程,无法推送临时分支");return}const pe=((Pt=t.remotes[0])==null?void 0:Pt.name)??"origin";O.value="git_push",await y("git_push",{remote:pe,branch:Me.branch})||(O.value=null)}async function tn(){var pe;const Me=await w();if(Me!=null&&Me.success){if(O.value==="git_push"){qe.success("已推送临时分支,可在矩阵申请 MR"),n.refreshSurvey(),t.load();return}if(!(!Me.result||typeof Me.result!="object")){if(O.value==="git_apply_resolve"){if(T.value=Me.result,F.value=null,I.value=null,n.markPairDone({into:a.value,from:s.value}),qe.success(c.value||!T.value.pushed?"已记到本地临时分支,回矩阵统一处理":"已落盘并推送临时分支"),c.value){be.value=!1,_.value=null,Yr();return}const vt=p();if(vt!=null)try{I.value=await _N(vt,{into:a.value,from:s.value,sourceBranch:T.value.tempBranch})}catch{I.value=null}n.refreshSurvey()}else if(O.value==="git_mr_create"){F.value=Me.result;const vt=F.value.via,Pt=P.value??{into:a.value,from:s.value};P.value=null,n.markPairMr(Pt,{url:F.value.url,via:vt}),qe.success(vt==="token"||vt==="gh"||vt==="glab"?"已创建 PR/MR":(pe=F.value.body)!=null&&pe.trim()?"已返回浏览器创建页,请复制正文后粘贴":"已返回浏览器创建页")}}}}async function Nt(){var vt,Pt;const Me=((Pt=(vt=F.value)==null?void 0:vt.body)==null?void 0:Pt.trim())??"";if(!Me){qe.warning("没有可复制的正文");return}const pe=await Q4(Me);qe[pe?"success":"error"](pe?"已复制正文":"复制失败,请手动选择正文")}function Kt(Me){n.trailGo(Me)}function ci(){n.trailNextPending(),Nn()}function Yr(){n.backToMatrix(),Nn()}function Pn(){be.value=!0,Dt()}return en(()=>e.currentId,Me=>{n.resetIfRepoChanged(Me),_.value=null,T.value=null,F.value=null,k.value=""},{immediate:!0}),en(()=>[t.repoId,t.list],([Me,pe])=>{Me===e.currentId&&dt(pe)},{deep:!0,immediate:!0}),en(()=>h.query.mode,Me=>{(Me==="matrix"||Me==="pair")&&n.setMode(Me)},{immediate:!0}),en(i,()=>Nn()),Ds(()=>{Nn(),h.query.preview!=="1"&&n.trail&&a.value&&s.value&&i.value==="pair"&&Dt()}),en(()=>[h.query.into,h.query.from,h.query.preview],()=>{dt(t.list),h.query.preview==="1"&&De("into")&&De("from")&&p()!==null&&(n.setMode("pair"),Dt())},{immediate:!0}),en(()=>n.previewSeq,Me=>{Me<=0||(_.value=null,T.value=null,F.value=null,be.value=!1,Nn(),!(c.value&&n.isPairDone({into:a.value,from:s.value}))&&Dt())}),en([a,s],()=>{n.syncTrailWithPair()}),(Me,pe)=>{var St,nn;const vt=Oe("el-radio-button"),Pt=Oe("el-radio-group"),Ht=Oe("el-button"),Gt=Oe("el-tag"),di=Oe("el-alert"),Ha=Oe("el-switch"),Xr=Oe("el-card"),mt=Oe("el-empty");return H(),Ae("div",nme,[z("div",rme,[pe[12]||(pe[12]=z("h2",{class:"page-title"},"合并",-1)),z("div",ime,[V(Pt,{modelValue:we(i),"onUpdate:modelValue":pe[0]||(pe[0]=Wt=>Za(i)?i.value=Wt:null),size:"small"},{default:R(()=>[V(vt,{value:"pair"},{default:R(()=>[...pe[9]||(pe[9]=[oe("单对预演",-1)])]),_:1}),V(vt,{value:"matrix"},{default:R(()=>[...pe[10]||(pe[10]=[oe("矩阵",-1)])]),_:1})]),_:1},8,["modelValue"]),we(i)==="pair"?(H(),Re(Ht,{key:0,loading:x.value,disabled:!we(m),type:"primary",onClick:Dt},{default:R(()=>[...pe[11]||(pe[11]=[oe("预演",-1)])]),_:1},8,["loading","disabled"])):ke("",!0)])]),we(i)==="pair"&&we(A)&&we(l)?(H(),Ae("div",ame,[V(Ht,{size:"small",onClick:Yr},{default:R(()=>[...pe[13]||(pe[13]=[oe("← 返回矩阵",-1)])]),_:1}),z("span",sme,ae(we(A).index+1)+" / "+ae(we(A).pairs.length),1),z("span",ome,[z("span",Ame,ae(we(l).from),1),pe[14]||(pe[14]=z("span",{class:"trail-arrow"},"→",-1)),z("span",lme,ae(we(l).into),1)]),we(u)>0?(H(),Re(Gt,{key:0,type:"warning",effect:"plain",size:"small"},{default:R(()=>[oe("剩 "+ae(we(u))+" 条待处理",1)]),_:1})):(H(),Re(Gt,{key:1,type:"success",effect:"plain",size:"small"},{default:R(()=>[...pe[15]||(pe[15]=[oe("这批冲突都走完了",-1)])]),_:1})),pe[18]||(pe[18]=z("span",{class:"trail-spacer"},null,-1)),V(Ht,{size:"small",disabled:ce.value||we(A).index===0,onClick:pe[1]||(pe[1]=Wt=>Kt(-1))},{default:R(()=>[...pe[16]||(pe[16]=[oe("上一条",-1)])]),_:1},8,["disabled"]),V(Ht,{size:"small",disabled:ce.value||we(A).index>=we(A).pairs.length-1,onClick:pe[2]||(pe[2]=Wt=>Kt(1))},{default:R(()=>[...pe[17]||(pe[17]=[oe("下一条",-1)])]),_:1},8,["disabled"]),V(Ht,{size:"small",type:"primary",disabled:ce.value,onClick:ci},{default:R(()=>[oe(ae(we(u)>0?"处理下一条":"回矩阵"),1)]),_:1},8,["disabled"])])):ke("",!0),k.value&&we(i)==="pair"?(H(),Re(di,{key:1,title:k.value,type:"error",closable:!1,"show-icon":""},null,8,["title"])):we(n).loadError&&we(i)==="matrix"?(H(),Re(di,{key:2,title:we(n).loadError,type:"error",closable:!1,"show-icon":""},null,8,["title"])):ke("",!0),we(m)?we(i)==="matrix"?(H(),Re(tme,{key:4,onCreateMr:me,onPushTemp:at})):(H(),Ae(rt,{key:5},[V(Xr,{shadow:"never",class:"filter-card"},{default:R(()=>[z("div",cme,[z("div",dme,[pe[19]||(pe[19]=z("span",{class:"field-label"},"合入目标 into(线上 / ours)",-1)),V(Is,{modelValue:we(a),"onUpdate:modelValue":pe[3]||(pe[3]=Wt=>Za(a)?a.value=Wt:null),"remote-first":"","exclude-merge-temp":"",placeholder:"选择合入目标"},null,8,["modelValue"])]),z("div",hme,[pe[20]||(pe[20]=z("span",{class:"field-label"},"我的分支 from(theirs)",-1)),V(Is,{modelValue:we(s),"onUpdate:modelValue":pe[4]||(pe[4]=Wt=>Za(s)?s.value=Wt:null),"exclude-merge-temp":"",placeholder:"选择我的分支"},null,8,["modelValue"])]),z("div",fme,[pe[21]||(pe[21]=z("span",{class:"field-label"},"先 fetch",-1)),V(Ha,{modelValue:we(o),"onUpdate:modelValue":pe[5]||(pe[5]=Wt=>Za(o)?o.value=Wt:null)},null,8,["modelValue"])])]),z("p",gme,[we(c)?(H(),Ae(rt,{key:0},[oe(" 从矩阵进来:选边后点「完成冲突处理」,只记到本地临时分支(不推送、不改工作区当前分支),然后回矩阵统一看。 ")],64)):(H(),Ae(rt,{key:1},[pe[22]||(pe[22]=oe(" 预演使用 ",-1)),pe[23]||(pe[23]=z("span",{class:"mono"},"git merge-tree",-1)),pe[24]||(pe[24]=oe(",不会改工作区。方向:把「我的分支」合入「合入目标」。 ",-1))],64))])]),_:1}),ue.value?(H(),Re(Xr,{key:0,shadow:"never",class:"apply-card"},{header:R(()=>[...pe[25]||(pe[25]=[oe("已记入本地",-1)])]),default:R(()=>{var Wt,L;return[z("p",pme,[pe[26]||(pe[26]=oe(" 选边已写到临时分支 ",-1)),z("span",vme,ae(((L=(Wt=ne.value)==null?void 0:Wt.tempBranch)==null?void 0:L.name)??"merge/…"),1),pe[27]||(pe[27]=oe(" (未推送)。原始 from / into 仍然冲突,这是正常的。回矩阵看「已解决·本地」,再统一处理。 ",-1))]),z("p",mme,[V(Ht,{type:"primary",size:"small",onClick:Yr},{default:R(()=>[...pe[28]||(pe[28]=[oe("返回矩阵",-1)])]),_:1}),V(Ht,{size:"small",onClick:Pn},{default:R(()=>[...pe[29]||(pe[29]=[oe("重新预演",-1)])]),_:1})])]}),_:1})):ke("",!0),_.value&&!T.value?(H(),Re(Xr,{key:1,shadow:"never",class:"preview-card gc-card-fill"},{header:R(()=>[z("div",yme,[V(Gt,{type:ie.value,effect:"dark"},{default:R(()=>[oe(ae(Ee.value),1)]),_:1},8,["type"]),z("span",wme,ae(_.value.into)+" ("+ae(_.value.intoSha.slice(0,7))+") ← "+ae(_.value.from)+" ("+ae(_.value.fromSha.slice(0,7))+")",1),_.value.fetchAttempted&&!_.value.fetched?(H(),Re(Gt,{key:0,type:"warning",effect:"plain",size:"small"},{default:R(()=>[...pe[30]||(pe[30]=[oe("远程未更新",-1)])]),_:1})):ke("",!0),de.value?(H(),Re(Ht,{key:1,type:"primary",onClick:ui},{default:R(()=>[oe(ae(we(c)?"完成冲突处理":"落盘并推送"),1)]),_:1})):ke("",!0),X.value?(H(),Re(Ht,{key:2,type:"primary",onClick:Jt},{default:R(()=>[...pe[31]||(pe[31]=[oe("推送临时分支",-1)])]),_:1})):ke("",!0),xe.value?(H(),Re(Ht,{key:3,type:"primary",onClick:an},{default:R(()=>[...pe[32]||(pe[32]=[oe("申请 MR",-1)])]),_:1})):ke("",!0),_.value.recoveredPair&&W.value==="looking_at_temp"?(H(),Re(Ht,{key:4,onClick:ye},{default:R(()=>[...pe[33]||(pe[33]=[oe(" 切回原 pair ",-1)])]),_:1})):ke("",!0)])]),default:R(()=>{var Wt,L;return[W.value==="looking_at_temp"?(H(),Ae("p",bme,[pe[34]||(pe[34]=oe(" 合入目标是上次 worktree 落盘留下的临时分支,不是线上目标。 ",-1)),_.value.recoveredPair?(H(),Ae(rt,{key:0},[oe(" 原方向:"+ae(_.value.recoveredPair.from)+" → "+ae(_.value.recoveredPair.into)+"。 ",1)],64)):ke("",!0),pe[35]||(pe[35]=oe(" 已推送则可申请 MR;不要再落盘。 ",-1))])):W.value==="temp_remote"?(H(),Ae("p",Bme,[pe[36]||(pe[36]=oe(" 这对分支已有远程临时枝 ",-1)),z("span",Eme,ae((Wt=_.value.pairTempBranch)==null?void 0:Wt.name),1),pe[37]||(pe[37]=oe(" ,无需再落盘,直接申请 MR。 ",-1))])):W.value==="temp_local"?(H(),Ae("p",xme,[pe[38]||(pe[38]=oe(" 选边已记在本地临时枝 ",-1)),z("span",Cme,ae((L=_.value.pairTempBranch)==null?void 0:L.name),1),pe[39]||(pe[39]=oe(" 。推送后即可申请 MR,无需再落盘。 ",-1))])):W.value==="already_merged"?(H(),Ae("p",Sme," 「我的分支」已经包含在合入目标里,没有可合并的新提交,无需操作。 ")):_.value.outcome==="conflicts"?(H(),Ae("p",_me,ae(U.value?"冲突文件超过展示上限,无法在网页选边。请缩小范围或提高 maxFiles。":we(c)?"红块选边后点「完成冲突处理」:写入本地临时分支,不推送,随后回矩阵。":"红块用 ≫ / ≪ 选线上或我的;绿=新增、蓝=修改,已自动进入结果。"),1)):_.value.outcome==="unrelated"?(H(),Ae("p",kme," 两条历史没有共同祖先,不能当作干净合并落盘。 ")):_.value.clean?(H(),Ae("p",Tme,ae(we(c)?"可干净合并。点「完成冲突处理」会记到本地临时分支(不推送),再回矩阵。":"可干净合并。落盘会在独立 worktree 提交到临时分支,主工作区保持不变。"),1)):ke("",!0),W.value==="conflicts"&&_.value.conflictFiles.length?(H(),Re(R4,{key:7,ref_key:"resolvePanel",ref:K,files:_.value.conflictFiles,"repo-id":p(),into:we(a),from:we(s),onProgress:pe[6]||(pe[6]=S=>J.value=S.pending)},null,8,["files","repo-id","into","from"])):W.value==="already_merged"?(H(),Re(mt,{key:8,description:"没有可合并的新提交,无需操作"})):_.value.clean&&de.value?(H(),Re(mt,{key:9,description:"没有冲突文件"})):ke("",!0)]}),_:1})):ke("",!0),T.value?(H(),Re(Xr,{key:2,shadow:"never",class:"apply-card gc-card-fill"},{header:R(()=>[z("div",Fme,[V(Gt,{type:"success",effect:"dark"},{default:R(()=>[...pe[40]||(pe[40]=[oe("已落盘",-1)])]),_:1}),z("span",Mme,ae(T.value.tempBranch),1),T.value.pushed?(H(),Re(Gt,{key:0,type:"success",effect:"plain",size:"small"},{default:R(()=>[...pe[41]||(pe[41]=[oe("已推送",-1)])]),_:1})):(H(),Re(Gt,{key:1,type:"info",effect:"plain",size:"small"},{default:R(()=>[...pe[42]||(pe[42]=[oe("仅本地",-1)])]),_:1}))])]),default:R(()=>{var Wt,L;return[z("dl",Ime,[z("div",null,[pe[43]||(pe[43]=z("dt",null,"临时分支",-1)),z("dd",Ome,ae(T.value.tempBranch),1)]),z("div",null,[pe[44]||(pe[44]=z("dt",null,"提交",-1)),z("dd",Lme,ae(T.value.commitSha.slice(0,7)),1)])]),T.value.createMrUrl?(H(),Ae("p",Nme,[z("a",{href:T.value.createMrUrl,target:"_blank",rel:"noreferrer"},"打开创建 MR/PR 页面",8,Pme)])):ke("",!0),(Wt=I.value)!=null&&Wt.cliError&&!I.value.cli?(H(),Re(di,{key:1,type:"warning",closable:!1,title:I.value.cliError},null,8,["title"])):ke("",!0),(L=I.value)!=null&&L.cliInstallUrl&&!I.value.cli?(H(),Ae("p",Ume,[pe[45]||(pe[45]=oe(" 官方下载: ",-1)),z("a",{href:I.value.cliInstallUrl,target:"_blank",rel:"noreferrer"},ae(I.value.cliInstallUrl),9,Rme)])):ke("",!0),z("div",Qme,[V(Ht,{type:"primary",onClick:an},{default:R(()=>[...pe[46]||(pe[46]=[oe("创建 PR/MR",-1)])]),_:1}),V(Ht,{onClick:Dt},{default:R(()=>[...pe[47]||(pe[47]=[oe("重新预演",-1)])]),_:1})])]}),_:1})):ke("",!0),F.value?(H(),Re(Xr,{key:3,shadow:"never",class:"apply-card"},{header:R(()=>[z("div",Dme,[V(Gt,{type:F.value.via==="browser"?"info":"success",effect:"dark"},{default:R(()=>[oe(ae(F.value.via==="browser"?"浏览器创建页":"已开单"),1)]),_:1},8,["type"]),z("span",Hme,ae(F.value.sourceBranch)+" → "+ae(F.value.targetBranch),1)])]),default:R(()=>{var Wt;return[(H(!0),Ae(rt,null,Ot(F.value.messages,(L,S)=>(H(),Re(di,{key:S,class:"mb",type:L.includes("建议")?"warning":"info",closable:!1,title:L},null,8,["type","title"]))),128)),F.value.url?(H(),Ae("p",$me,[z("a",{href:F.value.url,target:"_blank",rel:"noreferrer"},ae(F.value.via==="browser"?"打开创建页":`已创建${F.value.number!=null?" #"+F.value.number:""}`),9,Gme)])):ke("",!0),F.value.cliInstallUrl?(H(),Ae("p",zme,[pe[48]||(pe[48]=oe(" 未检测到本机 CLI,请自行安装: ",-1)),z("a",{href:F.value.cliInstallUrl,target:"_blank",rel:"noreferrer"},ae(F.value.cliInstallUrl),9,Vme)])):ke("",!0),F.value.via==="browser"&&((Wt=F.value.body)!=null&&Wt.trim())?(H(),Ae("div",Kme,[z("header",null,[pe[50]||(pe[50]=z("strong",null,"待粘贴正文",-1)),V(Ht,{size:"small",onClick:Nt},{default:R(()=>[...pe[49]||(pe[49]=[oe("复制正文",-1)])]),_:1})]),z("pre",null,ae(F.value.body),1)])):ke("",!0)]}),_:1})):ke("",!0)],64)):(H(),Ae("div",ume,"请先在「仓库管理」中打开一个仓库")),V(C0e,{modelValue:G.value,"onUpdate:modelValue":pe[7]||(pe[7]=Wt=>G.value=Wt),"repo-id":p(),into:ee.value,from:te.value,"source-branch":N.value||void 0,onSubmit:pt},null,8,["modelValue","repo-id","into","from","source-branch"]),V(PN,{visible:we(g),"onUpdate:visible":pe[8]||(pe[8]=Wt=>Za(g)?g.value=Wt:null),tool:((St=we(v))==null?void 0:St.tool)??"",preview:((nn=we(v))==null?void 0:nn.preview)??null,onConfirm:tn,onCancel:we(B)},null,8,["visible","tool","preview","onCancel"])])}}}),Wme=Rr(jme,[["__scopeId","data-v-e82952a5"]]),qme={class:"page"},Yme={class:"split"},Xme={class:"pane list-pane"},Zme={class:"pane-head"},Jme={class:"chips"},eye={key:2,class:"job-list"},tye=["onClick"],nye={class:"row-top"},rye={class:"kind"},iye={class:"time"},aye=["title"],sye={class:"pane log-pane"},oye={class:"log-head"},Aye={class:"log-title"},lye={class:"time"},uye={class:"log-actions"},cye={class:"job-meta mono"},dye=Or({__name:"JobsView",setup(r){const e=FE(),t=Df(),n=BA(),i=Fe(null),a=Fe("all"),s=Fe(!1),o=Fe(null),A=Fe(!1),l=Fe(!1),u=Fe(""),c=Fe(""),d=Fe(!1),h=Fe(null),f=Ue(()=>({all:e.jobs.length,running:e.jobs.filter(F=>F.status==="running").length,error:e.jobs.filter(F=>F.status==="error").length,ok:e.jobs.filter(F=>F.status==="ok").length})),p=Ue(()=>(a.value==="all"?e.jobs.slice():e.jobs.filter(I=>I.status===a.value)).sort((I,O)=>I.status==="running"&&O.status!=="running"?-1:I.status!=="running"&&O.status==="running"||I.startedAt<O.startedAt?1:-1)),g=Ue(()=>e.jobs.find(F=>F.id===i.value)??null),v=Ue(()=>{var F;return(((F=g.value)==null?void 0:F.logs)??[]).join(`
339
- `).replace(/\r\n/g,`
340
- `).replace(/\r/g,`
341
- `)});function m(F){return F.error?F.error:F.tail?F.tail.split(`
342
- `).filter(Boolean).at(-1)??"":""}function y(F){const I=new Date(F);if(Number.isNaN(I.getTime()))return F;const O=Date.now()-I.getTime();return O<6e4?"刚刚":O<36e5?`${Math.floor(O/6e4)} 分钟前`:O<24*36e5?I.toLocaleTimeString(void 0,{hour:"2-digit",minute:"2-digit"}):I.toLocaleString(void 0,{month:"numeric",day:"numeric",hour:"2-digit",minute:"2-digit"})}async function w(F){const I=e.jobs.find(O=>O.id===F);I&&a.value!=="all"&&I.status!==a.value&&(a.value="all"),i.value=F,t.query.id!==F&&await n.replace({path:"/jobs",query:{id:F}}),s.value=!0;try{await e.loadDetail(F)}catch(O){qe.error(O instanceof Error?O.message:String(O))}finally{s.value=!1}}function B(F){if(a.value=F,g.value&&(F==="all"||g.value.status===F))return;const I=p.value[0];I?w(I.id):(i.value=null,t.query.id&&n.replace({path:"/jobs"}))}async function x(F){o.value=F;try{await e.cancel(F),qe.success("已请求取消")}catch(I){qe.error(I instanceof Error?I.message:String(I))}finally{o.value=null}}function k(F){l.value=!0,u.value=(F.url??"").trim(),c.value=(F.destDir??"").trim(),A.value=!0}async function _(){const F=u.value.trim(),I=c.value.trim();if(!F||!I){qe.warning("请填写项目地址和保存路径");return}d.value=!0;try{const{job:O}=await kN(F,I);A.value=!1,u.value="",c.value="",await e.load(),qb({id:O.id,kind:"clone",title:`${F} → ${I}`,router:n}),await w(O.id)}catch(O){qe.error(O instanceof Error?O.message:String(O))}finally{d.value=!1}}async function T(){await Rh(),h.value&&(h.value.scrollTop=h.value.scrollHeight)}return en(v,()=>void T()),en(()=>t.query.id,F=>{typeof F=="string"&&F&&F!==i.value&&w(F)}),Ds(async()=>{await e.load();const F=t.query.id;if(typeof F=="string"&&F){await w(F);return}const I=p.value[0];I&&await w(I.id)}),(F,I)=>{const O=Oe("el-button"),P=Oe("el-empty"),G=Oe("el-tag"),ee=Oe("el-alert"),te=pc("loading");return H(),Ae("div",qme,[I[15]||(I[15]=z("h2",{class:"page-title"},"任务",-1)),bl((H(),Ae("div",Yme,[z("section",Xme,[z("div",Zme,[z("div",Jme,[z("button",{type:"button",class:dn(["chip",{on:a.value==="all"}]),onClick:I[0]||(I[0]=N=>B("all"))}," 全部 "+ae(f.value.all),3),z("button",{type:"button",class:dn(["chip running",{on:a.value==="running"}]),onClick:I[1]||(I[1]=N=>B("running"))}," 进行中 "+ae(f.value.running),3),z("button",{type:"button",class:dn(["chip error",{on:a.value==="error"}]),onClick:I[2]||(I[2]=N=>B("error"))}," 失败 "+ae(f.value.error),3),z("button",{type:"button",class:dn(["chip ok",{on:a.value==="ok"}]),onClick:I[3]||(I[3]=N=>B("ok"))}," 成功 "+ae(f.value.ok),3)]),V(O,{text:"",type:"primary",loading:we(e).loading,onClick:I[4]||(I[4]=N=>we(e).load())},{default:R(()=>[...I[10]||(I[10]=[oe("刷新",-1)])]),_:1},8,["loading"])]),!we(e).loading&&!we(e).jobs.length?(H(),Re(P,{key:0,description:"还没有后台任务。可在工作台克隆仓库。","image-size":48})):p.value.length?(H(),Ae("div",eye,[(H(!0),Ae(rt,null,Ot(p.value,N=>(H(),Ae("button",{key:N.id,type:"button",class:dn(["job-row",[N.status,{current:N.id===i.value}]]),onClick:K=>w(N.id)},[z("div",nye,[V(G,{type:we(ZC)(N.status),size:"small",effect:"plain"},{default:R(()=>[oe(ae(we(XC)(N.status)),1)]),_:2},1032,["type"]),z("span",rye,ae(we(Qh)(N.kind)),1),z("span",iye,ae(y(N.startedAt)),1),N.status==="running"?(H(),Re(O,{key:0,size:"small",text:"",type:"danger",loading:o.value===N.id,onClick:Vn(K=>x(N.id),["stop"])},{default:R(()=>[...I[11]||(I[11]=[oe("取消",-1)])]),_:1},8,["loading","onClick"])):ke("",!0),N.status==="error"&&N.kind==="clone"?(H(),Re(O,{key:1,size:"small",text:"",type:"primary",onClick:Vn(K=>k(N),["stop"])},{default:R(()=>[...I[12]||(I[12]=[oe("重试",-1)])]),_:1},8,["onClick"])):ke("",!0)]),z("div",{class:"row-title mono",title:we(Pu)(N)},ae(we(Pu)(N)),9,aye),z("div",{class:dn(["row-tail",{err:!!N.error}])},ae(m(N)),3)],10,tye))),128))])):(H(),Re(P,{key:1,description:"没有这类任务","image-size":48}))]),bl((H(),Ae("section",sye,[g.value?(H(),Ae(rt,{key:0},[z("div",oye,[z("div",Aye,[V(G,{type:we(ZC)(g.value.status),size:"small",effect:"plain"},{default:R(()=>[oe(ae(we(XC)(g.value.status)),1)]),_:1},8,["type"]),z("span",null,ae(we(Qh)(g.value.kind)),1),z("span",lye,ae(y(g.value.startedAt)),1)]),z("div",uye,[g.value.status==="running"?(H(),Re(O,{key:0,type:"danger",plain:"",loading:o.value===g.value.id,onClick:I[5]||(I[5]=N=>x(g.value.id))},{default:R(()=>[...I[13]||(I[13]=[oe("取消",-1)])]),_:1},8,["loading"])):ke("",!0),g.value.status==="error"&&g.value.kind==="clone"?(H(),Re(O,{key:1,type:"primary",plain:"",onClick:I[6]||(I[6]=N=>k(g.value))},{default:R(()=>[...I[14]||(I[14]=[oe("修改并重试",-1)])]),_:1})):ke("",!0)])]),z("div",cye,ae(we(Pu)(g.value)),1),g.value.error?(H(),Re(ee,{key:0,title:g.value.error,type:"error",closable:!1,"show-icon":"",class:"mb"},null,8,["title"])):ke("",!0),z("pre",{ref_key:"logEl",ref:h,class:"job-log"},ae(v.value||"(等待输出)"),513)],64)):(H(),Re(P,{key:1,description:"点左侧任务看日志","image-size":48}))])),[[te,s.value]])])),[[te,we(e).loading&&!we(e).jobs.length]]),V(LN,{visible:A.value,"onUpdate:visible":I[7]||(I[7]=N=>A.value=N),url:u.value,"onUpdate:url":I[8]||(I[8]=N=>u.value=N),dest:c.value,"onUpdate:dest":I[9]||(I[9]=N=>c.value=N),retrying:l.value,loading:d.value,onSubmit:_},null,8,["visible","url","dest","retrying","loading"])])}}}),hye=Rr(dye,[["__scopeId","data-v-150d4b50"]]),fye=Ol("logs",{state:()=>({logs:[],loading:!1,error:null,limit:50,toolFilter:""}),actions:{async load(){this.loading=!0,this.error=null;try{const{logs:r}=await CH({limit:this.limit,tool:this.toolFilter||void 0});this.logs=r}catch(r){this.error=r instanceof Error?r.message:String(r)}finally{this.loading=!1}}}}),gye={class:"page"},pye={class:"filter-bar"},vye={class:"tool-cell"},mye={class:"mono repo-path"},yye={class:"mono params"},wye={key:0,class:"result-line"},bye={key:1,class:"result-line"},Bye=Or({__name:"LogsView",setup(r){const e=fye(),{revision:t}=$f(),n=Ue(()=>{const l=new Set;for(const u of e.logs)l.add(u.tool);return[...l].sort()}),i=l=>l.includes("reset")||l.includes("clean")||l.includes("force")||l.includes("rebase")?"dangerous":"write";function a(l){return i(l)==="dangerous"?"danger":l.startsWith("git_")?"primary":"success"}function s(l){const u=new Date(l);return Number.isNaN(u.getTime())?l:u.toLocaleString()}function o(l){return l==="mcp"?"primary":l==="web"?"success":"warning"}function A(l){if(l==null)return"";if(typeof l=="string")return l;try{const u=JSON.stringify(l);return u===void 0?"":u}catch{return String(l)}}return en(t,()=>{e.load()}),Ds(()=>{e.load()}),(l,u)=>{const c=Oe("el-option"),d=Oe("el-select"),h=Oe("el-button"),f=Oe("el-card"),p=Oe("el-table-column"),g=Oe("el-tag"),v=Oe("el-table"),m=Oe("el-empty"),y=pc("loading");return H(),Ae("div",gye,[u[7]||(u[7]=z("h2",{class:"page-title"},"操作日志",-1)),V(f,{shadow:"never",class:"mb"},{default:R(()=>[z("div",pye,[V(d,{modelValue:we(e).toolFilter,"onUpdate:modelValue":u[0]||(u[0]=w=>we(e).toolFilter=w),clearable:"",placeholder:"按工具过滤",class:"tool-select",onChange:we(e).load},{default:R(()=>[(H(!0),Ae(rt,null,Ot(n.value,w=>(H(),Re(c,{key:w,label:w,value:w},null,8,["label","value"]))),128))]),_:1},8,["modelValue","onChange"]),V(d,{modelValue:we(e).limit,"onUpdate:modelValue":u[1]||(u[1]=w=>we(e).limit=w),class:"limit-select",onChange:we(e).load},{default:R(()=>[V(c,{label:"最近 20 条",value:20}),V(c,{label:"最近 50 条",value:50}),V(c,{label:"最近 100 条",value:100})]),_:1},8,["modelValue","onChange"]),V(h,{loading:we(e).loading,onClick:we(e).load},{default:R(()=>[...u[2]||(u[2]=[oe("刷新",-1)])]),_:1},8,["loading","onClick"]),u[3]||(u[3]=z("span",{class:"tip"},"记录来源:Web / MCP / CLI 全部写入操作(只读操作不记录)",-1))])]),_:1}),V(f,{shadow:"never"},{default:R(()=>[bl((H(),Re(v,{data:we(e).logs,size:"default"},{default:R(()=>[V(p,{label:"时间",width:"150"},{default:R(({row:w})=>[oe(ae(s(w.timestamp)),1)]),_:1}),V(p,{label:"来源",width:"90"},{default:R(({row:w})=>[V(g,{type:o(w.source),size:"small",effect:"plain"},{default:R(()=>[oe(ae(w.source.toUpperCase()),1)]),_:2},1032,["type"])]),_:1}),V(p,{label:"工具",width:"260","show-overflow-tooltip":""},{default:R(({row:w})=>[z("span",vye,[V(g,{type:a(w.tool),size:"small",effect:"dark"},{default:R(()=>[oe(ae(w.tool),1)]),_:2},1032,["type"]),w.dryRun?(H(),Re(g,{key:0,size:"small",type:"info",effect:"plain"},{default:R(()=>[...u[4]||(u[4]=[oe("dry-run",-1)])]),_:1})):ke("",!0)])]),_:1}),V(p,{label:"仓库","min-width":"200","show-overflow-tooltip":""},{default:R(({row:w})=>[z("span",mye,ae(w.repoPath??"—"),1)]),_:1}),V(p,{label:"参数(脱敏)","min-width":"180","show-overflow-tooltip":""},{default:R(({row:w})=>[z("span",yye,ae(A(w.params)||"—"),1)]),_:1}),V(p,{label:"结果","min-width":"150","show-overflow-tooltip":""},{default:R(({row:w})=>[w.error?(H(),Ae("span",wye,[V(g,{type:"danger",size:"small",effect:"plain"},{default:R(()=>[...u[5]||(u[5]=[oe("失败",-1)])]),_:1}),oe(" "+ae(w.error),1)])):(H(),Ae("span",bye,[V(g,{type:"success",size:"small",effect:"plain"},{default:R(()=>[...u[6]||(u[6]=[oe("成功",-1)])]),_:1}),oe(" "+ae(w.result),1)]))]),_:1}),V(p,{label:"耗时",width:"90"},{default:R(({row:w})=>[oe(ae(w.durationMs)+" ms",1)]),_:1})]),_:1},8,["data"])),[[y,we(e).loading]]),!we(e).loading&&we(e).logs.length===0?(H(),Re(m,{key:0,description:"暂无操作日志"})):ke("",!0)]),_:1})])}}}),Eye=Rr(Bye,[["__scopeId","data-v-b51dbdde"]]),xye={class:"tmpl"},Cye={class:"tmpl-head"},Sye={class:"tmpl-head-row"},_ye={key:3,class:"mono muted tmpl-file"},kye={class:"tmpl-head-row"},Tye={key:0,class:"tmpl-paste-bar"},Fye={class:"tmpl-split"},Mye={class:"pane"},Iye={class:"pane-head"},Oye={class:"pane-body"},Lye={key:0,class:"muted"},Nye={class:"tmpl-field-head"},Pye={class:"mono muted tmpl-id"},Uye={key:2,class:"tmpl-list"},Rye={key:3,class:"tmpl-list"},Qye={class:"pane"},Dye={class:"pane-head"},Hye={key:0,class:"pane-body preview-body"},$ye={key:1,class:"pane-body muted"},Gye=Or({__name:"MrTemplateSettings",setup(r){const e=TE(),t=Fe(null),n=Fe(!1),i=Fe(""),a=Fe(!1),s=Fe(!1),o=Fe(""),A=Fe(p());let l=null;const u=[{value:"textarea",label:"多行文本"},{value:"select",label:"单选"},{value:"checkboxes",label:"勾选"},{value:"markdown",label:"说明(不填)"}],c=Ue(()=>{var N;return((N=e.mr)==null?void 0:N.template)??null}),d=Ue(()=>A.value.fields.some(N=>N.type!=="markdown")),h=Ue(()=>JSON.stringify(g(A.value))!==JSON.stringify(g(c.value))),f=Ue(()=>JSON.stringify(g(A.value)));function p(){return{enabled:!1,agentFill:"allow",filename:"",sourceMd:"",fields:[]}}function g(N){return N?JSON.parse(JSON.stringify(q4(N))):p()}function v(N){return g(N)}function m(){A.value=v(c.value)}en(c,()=>{const N=A.value.fields.length===0&&!A.value.sourceMd&&!A.value.filename;(!h.value||N)&&m()},{immediate:!0}),en(f,()=>{l&&clearTimeout(l),l=setTimeout(()=>void y(),400)}),Qf(()=>{l&&clearTimeout(l)});async function y(){if(A.value.fields.length===0){o.value="";return}s.value=!0;try{const N=await TN(g(A.value));o.value=N.preview}catch(N){qe.error(N instanceof Error?N.message:String(N))}finally{s.value=!1}}async function w(N,K){A.value={...N,enabled:N.fields.some(J=>J.type!=="markdown"),agentFill:A.value.agentFill||N.agentFill},o.value=K}async function B(N){var re;const K=N.target,J=(re=K.files)==null?void 0:re[0];if(K.value="",!J)return;const be=await J.text();await k(be,J.name)}async function x(){if(!i.value.trim()){qe.warning("请粘贴 Markdown");return}await k(i.value,"pasted.md")}async function k(N,K){a.value=!0;try{const J=await kH(N,K);await w(J.template,J.preview),n.value=!1,qe.success(`已识别 ${J.template.fields.length} 个模块,请校对后保存`)}catch(J){qe.error(J instanceof Error?J.message:String(J))}finally{a.value=!1}}function _(N,K){N.type=K,N.required=K!=="markdown"&&(K==="textarea"||K==="select"),K==="select"&&(!N.options||N.options.length<2)&&(N.options=["低","中","高"]),K==="checkboxes"&&(!N.items||N.items.length===0)&&(N.items=[{id:`${N.id}_1`,label:"(请填写)",required:!1}]),K==="markdown"&&N.content==null&&(N.content="")}function T(N){N.options=[...N.options??[],""]}function F(N,K){N.options=(N.options??[]).filter((J,be)=>be!==K)}function I(N){const K=N.items??[];N.items=[...K,{id:`${N.id}_${K.length+1}`,label:"",required:!1}]}function O(N,K){N.items=(N.items??[]).filter((J,be)=>be!==K)}function P(N){A.value.fields.splice(N,1),d.value||(A.value.enabled=!1)}function G(){const N=A.value.fields.length+1;A.value.fields.push({id:`custom_${N}`,type:"textarea",label:"",required:!0,placeholder:"(请填写)"})}async function ee(){if(A.value.enabled&&!d.value){qe.warning("没有可填写字段时不能启用规范");return}try{await e.save({mr:{template:g(A.value)}}),m(),qe.success("MR 正文规范已保存"),await y()}catch(N){qe.error(N instanceof Error?N.message:String(N))}}async function te(){try{await vo.confirm("清除已保存的正文规范?未启用时开单行为与现在相同。","清除模板",{confirmButtonText:"清除",cancelButtonText:"取消",type:"warning"})}catch{return}try{await e.save({mr:{template:p()}}),m(),qe.success("已清除")}catch(N){qe.error(N instanceof Error?N.message:String(N))}}return(N,K)=>{var Ee,de;const J=Oe("el-tag"),be=Oe("el-switch"),re=Oe("el-radio"),ne=Oe("el-radio-group"),ue=Oe("el-button"),Y=Oe("el-input"),U=Oe("el-option"),W=Oe("el-select"),ie=Oe("el-checkbox");return H(),Ae("div",xye,[z("header",Cye,[z("div",Sye,[(Ee=c.value)!=null&&Ee.enabled?(H(),Re(J,{key:0,size:"small",type:"success",effect:"plain"},{default:R(()=>[...K[5]||(K[5]=[oe("已启用",-1)])]),_:1})):(de=c.value)!=null&&de.fields.length?(H(),Re(J,{key:1,size:"small",effect:"plain"},{default:R(()=>[...K[6]||(K[6]=[oe("已导入未启用",-1)])]),_:1})):(H(),Re(J,{key:2,size:"small",effect:"plain"},{default:R(()=>[...K[7]||(K[7]=[oe("未导入",-1)])]),_:1})),V(be,{modelValue:A.value.enabled,"onUpdate:modelValue":K[0]||(K[0]=X=>A.value.enabled=X),disabled:!d.value},null,8,["modelValue","disabled"]),K[10]||(K[10]=z("span",{class:"tmpl-label"},"启用规范",-1)),V(ne,{modelValue:A.value.agentFill,"onUpdate:modelValue":K[1]||(K[1]=X=>A.value.agentFill=X),disabled:!d.value,class:"tmpl-fill"},{default:R(()=>[V(re,{value:"allow"},{default:R(()=>[...K[8]||(K[8]=[oe("允许 AI 填写",-1)])]),_:1}),V(re,{value:"forbid"},{default:R(()=>[...K[9]||(K[9]=[oe("须人工填写",-1)])]),_:1})]),_:1},8,["modelValue","disabled"]),A.value.filename?(H(),Ae("span",_ye,ae(A.value.filename),1)):ke("",!0)]),z("div",kye,[V(ue,{loading:a.value,onClick:K[2]||(K[2]=X=>{var xe;return(xe=t.value)==null?void 0:xe.click()})},{default:R(()=>[...K[11]||(K[11]=[oe("导入 Markdown",-1)])]),_:1},8,["loading"]),V(ue,{onClick:K[3]||(K[3]=X=>n.value=!n.value)},{default:R(()=>[...K[12]||(K[12]=[oe("粘贴导入",-1)])]),_:1}),V(ue,{type:"primary",loading:we(e).saving,disabled:!h.value,onClick:ee},{default:R(()=>[...K[13]||(K[13]=[oe("保存规范",-1)])]),_:1},8,["loading","disabled"]),V(ue,{disabled:!h.value,onClick:m},{default:R(()=>[...K[14]||(K[14]=[oe("放弃修改",-1)])]),_:1},8,["disabled"]),V(ue,{disabled:!c.value,onClick:te},{default:R(()=>[...K[15]||(K[15]=[oe("清除",-1)])]),_:1},8,["disabled"]),z("input",{ref_key:"fileInput",ref:t,type:"file",accept:".md,.markdown,text/markdown,text/plain",class:"file-hidden",onChange:B},null,544)])]),n.value?(H(),Ae("div",Tye,[V(Y,{class:"gc-grow-input",modelValue:i.value,"onUpdate:modelValue":K[4]||(K[4]=X=>i.value=X),type:"textarea",rows:4,placeholder:"粘贴 MR 模板 Markdown"},null,8,["modelValue"]),V(ue,{type:"primary",loading:a.value,onClick:x},{default:R(()=>[...K[16]||(K[16]=[oe("识别",-1)])]),_:1},8,["loading"])])):ke("",!0),z("div",Fye,[z("section",Mye,[z("div",Iye,[K[18]||(K[18]=z("span",null,"结构",-1)),V(ue,{link:"",type:"primary",onClick:G},{default:R(()=>[...K[17]||(K[17]=[oe("添加",-1)])]),_:1})]),z("div",Oye,[A.value.fields.length===0?(H(),Ae("p",Lye,"还没有章节。导入一份 .md,或点右上角添加。")):ke("",!0),(H(!0),Ae(rt,null,Ot(A.value.fields,(X,xe)=>(H(),Ae("article",{key:X.id+xe,class:"tmpl-field"},[z("div",Nye,[V(W,{"model-value":X.type,class:"tmpl-type",onChange:ce=>_(X,ce)},{default:R(()=>[(H(),Ae(rt,null,Ot(u,ce=>V(U,{key:ce.value,label:ce.label,value:ce.value},null,8,["label","value"])),64))]),_:1},8,["model-value","onChange"]),V(Y,{modelValue:X.label,"onUpdate:modelValue":ce=>X.label=ce,class:"tmpl-title",placeholder:"标题"},null,8,["modelValue","onUpdate:modelValue"]),X.type!=="markdown"?(H(),Re(ie,{key:0,modelValue:X.required,"onUpdate:modelValue":ce=>X.required=ce},{default:R(()=>[...K[19]||(K[19]=[oe("必填",-1)])]),_:1},8,["modelValue","onUpdate:modelValue"])):ke("",!0),z("span",Pye,ae(X.id),1),V(ue,{link:"",type:"danger",onClick:ce=>P(xe)},{default:R(()=>[...K[20]||(K[20]=[oe("删除",-1)])]),_:1},8,["onClick"])]),X.type!=="markdown"?(H(),Re(Y,{key:0,modelValue:X.help,"onUpdate:modelValue":ce=>X.help=ce,type:"textarea",rows:2,placeholder:"说明(开单时给填写人看)"},null,8,["modelValue","onUpdate:modelValue"])):ke("",!0),X.type==="textarea"?(H(),Re(Y,{key:1,modelValue:X.placeholder,"onUpdate:modelValue":ce=>X.placeholder=ce,placeholder:"占位"},null,8,["modelValue","onUpdate:modelValue"])):ke("",!0),X.type==="select"?(H(),Ae("div",Uye,[(H(!0),Ae(rt,null,Ot(X.options,(ce,De)=>(H(),Ae("div",{key:De,class:"tmpl-list-row"},[V(Y,{modelValue:X.options[De],"onUpdate:modelValue":He=>X.options[De]=He,placeholder:"选项"},null,8,["modelValue","onUpdate:modelValue"]),V(ue,{link:"",onClick:He=>F(X,De)},{default:R(()=>[...K[21]||(K[21]=[oe("删",-1)])]),_:1},8,["onClick"])]))),128)),V(ue,{link:"",type:"primary",onClick:ce=>T(X)},{default:R(()=>[...K[22]||(K[22]=[oe("添加选项",-1)])]),_:1},8,["onClick"])])):ke("",!0),X.type==="checkboxes"?(H(),Ae("div",Rye,[(H(!0),Ae(rt,null,Ot(X.items,(ce,De)=>(H(),Ae("div",{key:ce.id,class:"tmpl-list-row"},[V(Y,{modelValue:ce.label,"onUpdate:modelValue":He=>ce.label=He,placeholder:"条目"},null,8,["modelValue","onUpdate:modelValue"]),V(ie,{modelValue:ce.required,"onUpdate:modelValue":He=>ce.required=He},{default:R(()=>[...K[23]||(K[23]=[oe("必勾",-1)])]),_:1},8,["modelValue","onUpdate:modelValue"]),V(ue,{link:"",onClick:He=>O(X,De)},{default:R(()=>[...K[24]||(K[24]=[oe("删",-1)])]),_:1},8,["onClick"])]))),128)),V(ue,{link:"",type:"primary",onClick:ce=>I(X)},{default:R(()=>[...K[25]||(K[25]=[oe("添加条目",-1)])]),_:1},8,["onClick"])])):ke("",!0),X.type==="markdown"?(H(),Re(Y,{key:4,modelValue:X.content,"onUpdate:modelValue":ce=>X.content=ce,type:"textarea",rows:6,placeholder:"说明正文"},null,8,["modelValue","onUpdate:modelValue"])):ke("",!0)]))),128))])]),z("section",Qye,[z("div",Dye,[K[27]||(K[27]=z("span",null,"预览",-1)),V(ue,{link:"",type:"primary",disabled:A.value.fields.length===0,loading:s.value,onClick:y},{default:R(()=>[...K[26]||(K[26]=[oe(" 刷新 ",-1)])]),_:1},8,["disabled","loading"])]),o.value?(H(),Ae("pre",Hye,ae(o.value),1)):(H(),Ae("p",$ye,"导入或修改字段后,这里显示渲染出的 MR 正文。"))])])])}}}),zye=Rr(Gye,[["__scopeId","data-v-3bd02b25"]]),Vye={class:"page"},Kye={key:0,class:"page-version"},jye={class:"remote-bar"},Wye=["title"],qye={key:1,class:"mr-hint"},Yye={key:0,class:"mr-platform-row"},Xye=["onClick","onKeydown"],Zye={class:"mr-option-head"},Jye={key:0,class:"mr-stack"},e1e={key:0,class:"mr-kv"},t1e={key:1,class:"mr-kv"},n1e={key:1,class:"mr-stack"},r1e={key:0,class:"mr-hint"},i1e={class:"mr-field"},a1e={key:1,class:"mr-hint"},s1e={class:"mr-hint"},o1e={class:"mr-inline"},A1e={key:2,class:"mr-hint"},l1e={class:"host-list"},u1e={class:"host-row"},c1e={class:"mono"},d1e={class:"template-pane gc-pane-fill"},h1e={class:"card-head"},f1e={class:"mono"},g1e={class:"desc"},p1e={key:0,class:"action-bar"},v1e="https://cli.github.com/",m1e="https://gitlab.com/gitlab-org/cli/-/releases",y1e="https://github.com/settings/tokens/new?scopes=repo&description=Git%20Cockpit",w1e=Or({__name:"SettingsView",setup(r){const e=TE(),t=Ii(),n=Df(),i=BA(),a=Ue({get:()=>{const ye=n.query.tab;return ye==="git"||ye==="template"?ye:"mr"},set:ye=>{const me=ye==="mr"?{}:{tab:ye};i.replace({path:"/settings",query:me})}}),s=Nu({disabledTools:[],requireApprovalFor:[],dryRunDefault:!1,allowedReposText:""}),o=Fe(!1),A=Fe("browser"),l=Fe("origin"),u=Fe(""),c=Fe(""),d=Fe(!1),h=Fe(!1),f=Ue(()=>{var ye;return((ye=e.mr)==null?void 0:ye.cli.gh.installUrl)||v1e}),p=Ue(()=>{var ye;return((ye=e.mr)==null?void 0:ye.cli.glab.installUrl)||m1e}),g=Ue(()=>{const ye=e.permissions;return ye?JSON.stringify([...s.disabledTools].sort())!==JSON.stringify([...ye.disabledTools].sort())||JSON.stringify([...s.requireApprovalFor].sort())!==JSON.stringify([...ye.requireApprovalFor].sort())||s.dryRunDefault!==ye.dryRunDefault||Ee(s.allowedReposText).join(`
343
- `)!==e.allowedRepos.join(`
344
- `):!1}),v=Ue(()=>{var ye;return((ye=e.mr)==null?void 0:ye.current)??null}),m=Ue(()=>{var ye;return((ye=e.mr)==null?void 0:ye.remotes)??[]}),y=Ue(()=>m.value.length>0),w=Ue(()=>{var ye;return((ye=v.value)==null?void 0:ye.platform)??"unknown"}),B=Ue(()=>{const ye=l.value;return m.value.find(me=>me.name===ye)??m.value[0]??null}),x=Ue(()=>{var me;const ye=B.value;return((ye==null?void 0:ye.pushUrl)||(ye==null?void 0:ye.fetchUrl)||((me=v.value)==null?void 0:me.remoteUrl)||"").trim()}),k=Ue(()=>{var me,pt;const ye=(me=v.value)==null?void 0:me.host;return!ye||w.value==="unknown"?null:((pt=e.mr)==null?void 0:pt.hosts.find(at=>at.host===ye))??null}),_=Ue(()=>!!k.value),T=Ue(()=>{var me,pt;if(!((me=v.value)!=null&&me.host))return u.value.trim().length>0;const ye=((pt=k.value)==null?void 0:pt.apiBaseUrl)??v.value.apiBaseUrl??"";return u.value.trim().length>0||c.value!==ye}),F=Ue(()=>w.value!=="gitlab"),I=Ue(()=>w.value!=="github"),O=Ue(()=>{var me;const ye=(me=e.mr)==null?void 0:me.cli;return ye?w.value==="github"?ye.gh.loggedIn:w.value==="gitlab"?ye.glab.loggedIn:ye.gh.loggedIn||ye.glab.loggedIn:!1}),P=Ue(()=>{var me;if(!((me=v.value)!=null&&me.tokenSet))return!1;const ye=v.value.tokenStatus;return ye?ye.ok:!0}),G=Ue(()=>{var ye,me;return h.value?"校验中…":((me=(ye=v.value)==null?void 0:ye.tokenStatus)==null?void 0:me.titleStatus)||""}),ee=Ue(()=>{var ye;return h.value||!((ye=v.value)!=null&&ye.tokenStatus)?"muted":v.value.tokenStatus.ok?"ok":"bad"}),te=Ue(()=>{var me;return`${(((me=v.value)==null?void 0:me.origin)||"").replace(/\/+$/,"")||"https://gitlab.com"}/-/user_settings/personal_access_tokens`}),N=Ue(()=>e.tools.filter(ye=>ye.riskLevel==="dangerous")),K=Ue(()=>N.value.map(ye=>ye.name)),J=Ue(()=>[{id:"cli",title:Y(),ready:O.value},{id:"token",title:U(),ready:P.value},{id:"browser",title:"C. 仅打开浏览器创建页",ready:!0}]),be=Ue(()=>w.value==="github"?"需 repo 权限。Token 不进工具参数。":w.value==="gitlab"?"审核人用户名会解析成数字 id。Token 不进工具参数。":"Token 不进工具参数。"),re=Ue(()=>{var me,pt,at;const ye=(pt=(me=v.value)==null?void 0:me.tokenPreview)==null?void 0:pt.trim();return(at=v.value)!=null&&at.tokenSet&&ye?`已保存 ${ye},输入新 Token 覆盖`:w.value==="github"?"ghp_… 或 github_pat_…":w.value==="gitlab"?"glpat-…":"输入 Token"});function ne(){return t.currentId}function ue(ye){return ye==="github"?"GitHub":ye==="gitlab"?"GitLab":"未识别"}function Y(){return w.value==="github"?"A. 本机已安装的 gh":w.value==="gitlab"?"A. 本机已安装的 glab":"A. 本机已安装的 gh / glab"}function U(){var me;const ye=(me=v.value)==null?void 0:me.host;return ye?w.value==="github"?`B. GitHub Token(${ye})`:w.value==="gitlab"?`B. GitLab Token(${ye})`:`B. Token(${ye})`:"B. Token(API)"}function W(ye){return ye!=null&&ye.found?ye.loggedIn?"已登录":"未登录":"未下载"}function ie(ye){return ye!=null&&ye.tokenStatus?ye.tokenStatus.ok?"ok":"bad":"muted"}function Ee(ye){return ye.split(/\r?\n/).map(me=>me.trim()).filter(Boolean)}function de(){const ye=e.permissions;ye&&(s.disabledTools=[...ye.disabledTools],s.requireApprovalFor=[...ye.requireApprovalFor],s.dryRunDefault=ye.dryRunDefault,s.allowedReposText=e.allowedRepos.join(`
345
- `),o.value=!0)}function X(ye){return ye==="cli"||ye==="token"||ye==="browser"?ye:"browser"}function xe(){var ye,me,pt,at,tn,Nt;A.value=X((ye=e.mr)==null?void 0:ye.method),l.value=((me=v.value)==null?void 0:me.remote)||((pt=e.mr)==null?void 0:pt.defaultRemote)||((at=m.value[0])==null?void 0:at.name)||"origin",c.value=((tn=k.value)==null?void 0:tn.apiBaseUrl)??((Nt=v.value)==null?void 0:Nt.apiBaseUrl)??"",u.value=""}async function ce(ye){var me,pt;await e.load(ne(),{validateToken:(ye==null?void 0:ye.validateToken)??a.value==="mr"}),g.value||de(),T.value?(A.value=X(((me=e.mr)==null?void 0:me.method)??A.value),l.value=((pt=v.value)==null?void 0:pt.remote)||l.value):xe()}en(()=>[e.permissions],()=>{e.permissions&&!g.value&&de()}),en(()=>e.mr,()=>{var ye;T.value?A.value=X(((ye=e.mr)==null?void 0:ye.method)??A.value):xe()}),en(()=>t.currentId,()=>{ce()}),en(a,(ye,me)=>{ye==="mr"&&me!=="mr"&&ce({validateToken:!0})});async function De(ye,me){me?s.disabledTools=s.disabledTools.filter(pt=>pt!==ye.name):(s.disabledTools.includes(ye.name)||s.disabledTools.push(ye.name),s.requireApprovalFor=s.requireApprovalFor.filter(pt=>pt!==ye.name))}function He(ye){return ye==="readonly"?"success":ye==="write"?"primary":"danger"}function Xe(ye){return ye==="readonly"?"只读":ye==="write"?"写操作":"高风险"}async function ct(){try{await e.save({permissions:{disabledTools:[...s.disabledTools],requireApprovalFor:[...s.requireApprovalFor],dryRunDefault:s.dryRunDefault},git:{allowedRepos:Ee(s.allowedReposText)}},ne()),qe.success("Git 操作设置已保存")}catch(ye){qe.error(ye instanceof Error?ye.message:String(ye))}}async function dt(ye){var pt;if(!ne()){qe.warning("请先在左侧选择仓库");return}const me=A.value;if(A.value=ye,!(me===ye&&((pt=e.mr)==null?void 0:pt.method)===ye))try{await e.save({mr:{method:ye}},ne())}catch(at){A.value=me,qe.error(at instanceof Error?at.message:String(at))}}async function Nn(ye){var at,tn;const me=String(ye),pt=((at=v.value)==null?void 0:at.remote)||((tn=e.mr)==null?void 0:tn.defaultRemote)||"origin";l.value=me;try{await e.save({mr:{defaultRemote:me}},ne()),xe()}catch(Nt){l.value=pt,qe.error(Nt instanceof Error?Nt.message:String(Nt))}}async function Dt(ye){var pt;const me=(pt=v.value)==null?void 0:pt.host;if(me)try{await e.save({mr:{upsertHost:{host:me,platform:ye}}},ne())}catch(at){qe.error(at instanceof Error?at.message:String(at))}}async function ui(){var at,tn;const ye=(at=v.value)==null?void 0:at.host;if(!ye){qe.warning(t.currentId?"当前仓库没有可识别的远程地址":"请先在左侧选择仓库");return}if(w.value==="unknown"){qe.warning("请先选择 GitHub 或 GitLab");return}const me=u.value.trim(),pt=((tn=k.value)==null?void 0:tn.apiBaseUrl)??v.value.apiBaseUrl??"";if(!me&&c.value===pt){qe.warning("请填写 Token");return}h.value=!0;try{await e.save({mr:{upsertHost:{host:ye,platform:w.value,...me?{token:me}:{},apiBaseUrl:c.value}}},ne()),u.value="",qe.success(me?`已校验并保存 ${ye} 的 Token`:`已保存 ${ye} 的 API 地址`)}catch(Nt){qe.error(Nt instanceof Error?Nt.message:String(Nt))}finally{h.value=!1}}async function Hn(){var ye,me,pt;if((ye=v.value)!=null&&ye.tokenSet){h.value=!0;try{await e.load(ne(),{validateToken:!0}),T.value||xe();const at=(pt=(me=e.mr)==null?void 0:me.current)==null?void 0:pt.tokenStatus;at!=null&&at.ok?qe.success(at.titleStatus):qe.warning((at==null?void 0:at.titleStatus)||"校验未通过")}catch(at){qe.error(at instanceof Error?at.message:String(at))}finally{h.value=!1}}}async function an(ye){try{await vo.confirm(`清除 ${ye} 上保存的 Token 与覆盖项?`,"删除域名配置",{confirmButtonText:"清除",cancelButtonText:"取消",type:"warning"})}catch{return}try{await e.save({mr:{deleteHost:ye}},ne()),T.value||xe(),qe.success("已清除")}catch(me){qe.error(me instanceof Error?me.message:String(me))}}async function Jt(){if(await ce(),e.error){qe.error(e.error);return}qe.success("已重新检测本机 gh / glab")}return Ds(async()=>{await ce(),de(),xe()}),(ye,me)=>{const pt=Oe("el-alert"),at=Oe("el-option"),tn=Oe("el-select"),Nt=Oe("el-tag"),Kt=Oe("el-button"),ci=Oe("el-card"),Yr=Oe("el-radio"),Pn=Oe("el-link"),Me=Oe("el-input"),pe=Oe("el-form-item"),vt=Oe("el-form"),Pt=Oe("el-tab-pane"),Ht=Oe("el-switch"),Gt=Oe("el-table-column"),di=Oe("el-table"),Ha=Oe("el-tabs"),Xr=pc("loading");return H(),Ae("div",Vye,[me[42]||(me[42]=z("h2",{class:"page-title"},"设置",-1)),we(t).serverVersion?(H(),Ae("p",Kye,"服务 "+ae(we(t).serverVersion),1)):ke("",!0),we(e).error?(H(),Re(pt,{key:1,title:we(e).error,type:"error",closable:!1,"show-icon":"",class:"mb"},null,8,["title"])):ke("",!0),V(Ha,{modelValue:a.value,"onUpdate:modelValue":me[13]||(me[13]=mt=>a.value=mt),class:"settings-tabs gc-tabs-fill gc-tabs-scroll"},{default:R(()=>[V(Pt,{label:"MR 配置",name:"mr"},{default:R(()=>[V(ci,{shadow:"never",class:"mb"},{default:R(()=>{var mt,St;return[z("div",jye,[me[14]||(me[14]=z("span",{class:"remote-label"},"默认远程",-1)),y.value?(H(),Ae(rt,{key:0},[V(tn,{modelValue:l.value,"onUpdate:modelValue":me[0]||(me[0]=nn=>l.value=nn),class:"remote-select",disabled:we(e).saving,onChange:Nn},{default:R(()=>[(H(!0),Ae(rt,null,Ot(m.value,nn=>(H(),Re(at,{key:nn.name,label:nn.name,value:nn.name},null,8,["label","value"]))),128))]),_:1},8,["modelValue","disabled"]),z("span",{class:"mono muted remote-url",title:x.value},ae(x.value||"—"),9,Wye),V(Nt,{size:"small",effect:"plain"},{default:R(()=>[oe(ae(ue(w.value)),1)]),_:1})],64)):(H(),Ae("span",qye,ae(we(t).currentId?"当前仓库没有 remote":"未选择仓库,请先在左侧打开仓库"),1))]),me[18]||(me[18]=z("p",{class:"mr-hint"},"用于 fetch、MR 短名剥前缀、CLI 未传远程时的默认值。切换后立即保存。",-1)),y.value&&w.value==="unknown"?(H(),Ae("div",Yye,[me[17]||(me[17]=z("span",{class:"mr-hint"},"未能自动识别远程平台,请手动选择。",-1)),V(Kt,{disabled:!((mt=v.value)!=null&&mt.host)||we(e).saving,onClick:me[1]||(me[1]=nn=>Dt("github"))},{default:R(()=>[...me[15]||(me[15]=[oe("GitHub",-1)])]),_:1},8,["disabled"]),V(Kt,{disabled:!((St=v.value)!=null&&St.host)||we(e).saving,onClick:me[2]||(me[2]=nn=>Dt("gitlab"))},{default:R(()=>[...me[16]||(me[16]=[oe("GitLab",-1)])]),_:1},8,["disabled"])])):ke("",!0)]}),_:1}),(H(!0),Ae(rt,null,Ot(J.value,mt=>{var St,nn,Wt,L,S,E,b,C,M,Q,$,j,q,ge,se;return H(),Ae("div",{key:mt.id,class:dn(["mr-option mb",{active:A.value===mt.id,disabled:we(e).saving}]),role:"button",tabindex:"0",onClick:Ce=>dt(mt.id),onKeydown:wl(Vn(Ce=>dt(mt.id),["prevent"]),["enter"])},[z("div",Zye,[V(Yr,{class:"gc-radio-flush","model-value":A.value,value:mt.id,disabled:we(e).saving,onChange:Ce=>dt(mt.id),onClick:me[3]||(me[3]=Vn(()=>{},["stop"]))},{default:R(()=>[oe(ae(mt.title),1)]),_:2},1032,["model-value","value","disabled","onChange"]),V(Nt,{size:"small",type:mt.ready?"success":"warning",effect:"plain"},{default:R(()=>[oe(ae(mt.ready?"可用":"未就绪"),1)]),_:2},1032,["type"])]),A.value===mt.id?(H(),Ae("div",{key:0,class:"mr-panel",onClick:me[8]||(me[8]=Vn(()=>{},["stop"]))},[mt.id==="cli"?(H(),Ae("div",Jye,[F.value?(H(),Ae("div",e1e,[me[20]||(me[20]=z("span",{class:"mono"},"gh",-1)),z("span",null,ae(W((St=we(e).mr)==null?void 0:St.cli.gh)),1),(nn=we(e).mr)!=null&&nn.cli.gh.found?(Wt=we(e).mr)!=null&&Wt.cli.gh.loggedIn&&((L=we(e).mr)!=null&&L.cli.gh.tokenStatus)?(H(),Ae("span",{key:1,class:dn(["token-title-status",ie((S=we(e).mr)==null?void 0:S.cli.gh)])},ae((E=we(e).mr)==null?void 0:E.cli.gh.tokenStatus.titleStatus),3)):ke("",!0):(H(),Re(Pn,{key:0,type:"primary",href:f.value,target:"_blank"},{default:R(()=>[...me[19]||(me[19]=[oe("去下载",-1)])]),_:1},8,["href"]))])):ke("",!0),I.value?(H(),Ae("div",t1e,[me[22]||(me[22]=z("span",{class:"mono"},"glab",-1)),z("span",null,ae(W((b=we(e).mr)==null?void 0:b.cli.glab)),1),(C=we(e).mr)!=null&&C.cli.glab.found?(M=we(e).mr)!=null&&M.cli.glab.loggedIn&&((Q=we(e).mr)!=null&&Q.cli.glab.tokenStatus)?(H(),Ae("span",{key:1,class:dn(["token-title-status",ie(($=we(e).mr)==null?void 0:$.cli.glab)])},ae((j=we(e).mr)==null?void 0:j.cli.glab.tokenStatus.titleStatus),3)):ke("",!0):(H(),Re(Pn,{key:0,type:"primary",href:p.value,target:"_blank"},{default:R(()=>[...me[21]||(me[21]=[oe("去下载",-1)])]),_:1},8,["href"]))])):ke("",!0),V(Kt,{onClick:Jt},{default:R(()=>[...me[23]||(me[23]=[oe("重新检测",-1)])]),_:1})])):ke("",!0),mt.id==="token"?(H(),Ae("div",n1e,[(q=v.value)!=null&&q.host?(H(),Re(vt,{key:1,class:"mr-form gc-form-narrow","label-width":"100px","label-position":"left",onSubmit:me[7]||(me[7]=Vn(()=>{},["prevent"]))},{default:R(()=>[V(pe,{label:"Token"},{default:R(()=>[z("div",i1e,[G.value?(H(),Ae("p",{key:0,class:dn(["token-title-status",ee.value])},ae(G.value),3)):ke("",!0),V(Me,{modelValue:u.value,"onUpdate:modelValue":me[4]||(me[4]=Ce=>u.value=Ce),type:"password","show-password":"",autocomplete:"new-password",placeholder:re.value,disabled:w.value==="unknown"||h.value},null,8,["modelValue","placeholder","disabled"]),v.value.tokenSet&&v.value.tokenPreview?(H(),Ae("p",a1e," 已保存 "+ae(v.value.tokenPreview)+"(明文不回填,输入新 Token 可覆盖) ",1)):ke("",!0),z("p",s1e,ae(be.value),1)])]),_:1}),V(pe,null,{default:R(()=>[z("div",o1e,[w.value!=="gitlab"?(H(),Re(Pn,{key:0,type:"primary",href:y1e,target:"_blank"},{default:R(()=>[...me[24]||(me[24]=[oe(" 打开 GitHub 创建 Token 页面 ",-1)])]),_:1})):ke("",!0),w.value!=="github"?(H(),Re(Pn,{key:1,type:"primary",href:te.value,target:"_blank"},{default:R(()=>[...me[25]||(me[25]=[oe(" 打开 GitLab 创建 Token 页面 ",-1)])]),_:1},8,["href"])):ke("",!0),V(Kt,{link:"",type:"primary",onClick:me[5]||(me[5]=Ce=>d.value=!d.value)},{default:R(()=>[oe(ae(d.value?"收起自建选项":"自建 / API Base URL"),1)]),_:1})])]),_:1}),d.value?(H(),Re(pe,{key:0,label:"API Base URL"},{default:R(()=>[V(Me,{modelValue:c.value,"onUpdate:modelValue":me[6]||(me[6]=Ce=>c.value=Ce),placeholder:"空则按域名惯例推断,如 https://git.a.com/api/v4"},null,8,["modelValue"])]),_:1})):ke("",!0),V(pe,null,{default:R(()=>[V(Kt,{type:"primary",loading:we(e).saving||h.value,disabled:!T.value||h.value,onClick:ui},{default:R(()=>[...me[26]||(me[26]=[oe(" 保存此远程配置 ",-1)])]),_:1},8,["loading","disabled"]),V(Kt,{disabled:!v.value.tokenSet||T.value||h.value,loading:h.value&&!T.value,onClick:Hn},{default:R(()=>[...me[27]||(me[27]=[oe(" 重新校验 ",-1)])]),_:1},8,["disabled","loading"]),V(Kt,{disabled:!T.value,onClick:xe},{default:R(()=>[...me[28]||(me[28]=[oe("放弃修改",-1)])]),_:1},8,["disabled"])]),_:1})]),_:1})):(H(),Ae("p",r1e,ae(we(t).currentId?"当前仓库没有可识别的远程地址,无法绑定 Token。":"请先在左侧选择仓库。Token 始终绑定当前远程的域名。"),1))])):ke("",!0),mt.id==="browser"?(H(),Ae("p",A1e,[me[29]||(me[29]=oe(" 确认后只返回浏览器创建页,不调用 Token 或本机 CLI。 ",-1)),(se=(ge=we(e).mr)==null?void 0:ge.template)!=null&&se.enabled?(H(),Ae(rt,{key:0},[oe(" 已启用正文规范时,平台创建页不会写入正文,请复制后粘贴,或改用 Token / 本机 CLI。 ")],64)):ke("",!0)])):ke("",!0)])):ke("",!0)],42,Xye)}),128)),_.value&&k.value?(H(),Re(ci,{key:0,shadow:"never",class:"mb"},{header:R(()=>[...me[30]||(me[30]=[oe("当前远程凭证",-1)])]),default:R(()=>[me[32]||(me[32]=z("p",{class:"mr-hint"},"只显示当前选中远程的域名。其它实例上的 Token 不在这里列出。",-1)),z("ul",l1e,[z("li",u1e,[z("span",c1e,ae(k.value.host),1),V(Nt,{size:"small",effect:"plain"},{default:R(()=>[oe(ae(k.value.platform==="github"?"GitHub":"GitLab"),1)]),_:1}),V(Nt,{size:"small",type:k.value.tokenSet?"success":"info",effect:"plain"},{default:R(()=>[oe(ae(k.value.tokenSet?k.value.tokenPreview||"已配置 Token":"无 Token"),1)]),_:1},8,["type"]),V(Kt,{link:"",type:"danger",onClick:me[9]||(me[9]=mt=>an(k.value.host))},{default:R(()=>[...me[31]||(me[31]=[oe("清除",-1)])]),_:1})])])]),_:1})):ke("",!0)]),_:1}),V(Pt,{label:"正文规范",name:"template"},{default:R(()=>[z("div",d1e,[V(zye)])]),_:1}),V(Pt,{label:"Git 操作",name:"git"},{default:R(()=>[V(ci,{shadow:"never",class:"mb"},{header:R(()=>[...me[33]||(me[33]=[oe("默认行为",-1)])]),default:R(()=>[V(vt,{"label-width":"180px","label-position":"left"},{default:R(()=>[V(pe,{label:"写操作默认 dry-run 预览"},{default:R(()=>[V(Ht,{modelValue:s.dryRunDefault,"onUpdate:modelValue":me[10]||(me[10]=mt=>s.dryRunDefault=mt)},null,8,["modelValue"]),me[34]||(me[34]=z("span",{class:"form-tip"},"开启后所有写操作(MCP/CLI)默认只生成预览,不真正执行",-1))]),_:1}),V(pe,{label:"允许打开的仓库"},{default:R(()=>[V(Me,{modelValue:s.allowedReposText,"onUpdate:modelValue":me[11]||(me[11]=mt=>s.allowedReposText=mt),type:"textarea",rows:4,placeholder:"一行一个本地路径。留空 = 不限制"},null,8,["modelValue"]),me[35]||(me[35]=z("span",{class:"form-tip"},"非空时,打开的仓库根路径必须等于其中一条,或位于其目录下。MCP 带 repoPath 同样校验。",-1))]),_:1})]),_:1})]),_:1}),V(ci,{shadow:"never",class:"mb"},{header:R(()=>[z("div",h1e,[me[37]||(me[37]=z("span",null,"工具开关与风险等级",-1)),V(Nt,{size:"small",type:"warning",effect:"plain"},{default:R(()=>[...me[36]||(me[36]=[oe("高危工具默认禁用,需在下方开启",-1)])]),_:1})])]),default:R(()=>[bl((H(),Re(di,{data:we(e).tools,size:"default"},{default:R(()=>[V(Gt,{label:"工具",width:"230"},{default:R(({row:mt})=>[z("span",f1e,ae(mt.name),1)]),_:1}),V(Gt,{label:"风险",width:"90"},{default:R(({row:mt})=>[V(Nt,{type:He(mt.riskLevel),size:"small",effect:"dark"},{default:R(()=>[oe(ae(Xe(mt.riskLevel)),1)]),_:2},1032,["type"])]),_:1}),V(Gt,{label:"描述","min-width":"240"},{default:R(({row:mt})=>[z("span",g1e,ae(mt.description),1)]),_:1}),V(Gt,{label:"启用",width:"100",align:"center"},{default:R(({row:mt})=>[V(Ht,{"model-value":!s.disabledTools.includes(mt.name),onChange:St=>De(mt,St===!0)},null,8,["model-value","onChange"])]),_:1})]),_:1},8,["data"])),[[Xr,we(e).loading]])]),_:1}),V(ci,{shadow:"never",class:"mb"},{header:R(()=>[...me[38]||(me[38]=[oe("审批规则",-1)])]),default:R(()=>[V(vt,{"label-position":"top"},{default:R(()=>[V(pe,{label:"执行前需要审批的工具(勾选后,执行时需在确认框中手工确认)"},{default:R(()=>[V(tn,{modelValue:s.requireApprovalFor,"onUpdate:modelValue":me[12]||(me[12]=mt=>s.requireApprovalFor=mt),multiple:"",filterable:"","collapse-tags":"",placeholder:"选择需要审批的工具",style:{width:"100%"}},{default:R(()=>[(H(!0),Ae(rt,null,Ot(K.value,mt=>(H(),Re(at,{key:mt,label:mt,value:mt,disabled:s.disabledTools.includes(mt)},null,8,["label","value","disabled"]))),128))]),_:1},8,["modelValue"]),me[39]||(me[39]=z("span",{class:"form-tip"},"审批仅对已启用的高危工具生效;禁用后自动移除",-1))]),_:1})]),_:1})]),_:1}),o.value?(H(),Ae("div",p1e,[V(Kt,{type:"primary",loading:we(e).saving,disabled:!g.value,onClick:ct},{default:R(()=>[...me[40]||(me[40]=[oe("保存 Git 设置",-1)])]),_:1},8,["loading","disabled"]),V(Kt,{disabled:!g.value,onClick:de},{default:R(()=>[...me[41]||(me[41]=[oe("放弃修改",-1)])]),_:1},8,["disabled"])])):ke("",!0)]),_:1})]),_:1},8,["modelValue"])])}}}),b1e=Rr(w1e,[["__scopeId","data-v-eb92a8b8"]]),D4=Y4({history:X4(),routes:[{path:"/",redirect:"/dashboard"},{path:"/dashboard",name:"dashboard",component:E6,meta:{title:"工作台"}},{path:"/jobs",name:"jobs",component:hye,meta:{title:"任务"}},{path:"/repos",redirect:"/dashboard"},{path:"/status",name:"status",component:h0e,meta:{title:"状态"}},{path:"/merge",name:"merge",component:Wme,meta:{title:"合并"}},{path:"/matrix",redirect:{path:"/merge",query:{mode:"matrix"}}},{path:"/logs",name:"logs",component:Eye,meta:{title:"操作日志"}},{path:"/settings",name:"settings",component:b1e,meta:{title:"设置"}}]});D4.afterEach(r=>{const e=r.meta.title;document.title=e?`${e} · Git Cockpit`:"Git Cockpit"});document.documentElement.classList.add("dark");const Ip=Z4(YH);Ip.use(J4());Ip.use(D4);Ip.use(eH,{size:"default"});Ip.mount("#app");