agents-deck 1.20.1 → 1.20.2
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.
|
@@ -56,7 +56,7 @@ Error generating stack: `+y.message+`
|
|
|
56
56
|
*/var M0;function HT(){if(M0)return fc;M0=1;var e=oo(),n=UT();function i(p,h){return p===h&&(p!==0||1/p===1/h)||p!==p&&h!==h}var s=typeof Object.is=="function"?Object.is:i,o=n.useSyncExternalStore,u=e.useRef,l=e.useEffect,c=e.useMemo,d=e.useDebugValue;return fc.useSyncExternalStoreWithSelector=function(p,h,m,v,w){var b=u(null);if(b.current===null){var x={hasValue:!1,value:null};b.current=x}else x=b.current;b=c(function(){function S(M){if(!E){if(E=!0,T=M,M=v(M),w!==void 0&&x.hasValue){var A=x.value;if(w(A,M))return C=A}return C=M}if(A=C,s(T,M))return A;var D=v(M);return w!==void 0&&w(A,D)?(T=M,A):(T=M,C=D)}var E=!1,T,C,j=m===void 0?null:m;return[function(){return S(h())},j===null?void 0:function(){return S(j())}]},[h,m,v,w]);var k=o(p,b[0],b[1]);return l(function(){x.hasValue=!0,x.value=k},[k]),d(k),k},fc}var P0;function VT(){return P0||(P0=1,cc.exports=HT()),cc.exports}var WT=VT();const GT=dg(WT),KT={},q0=e=>{let n;const i=new Set,s=(h,m)=>{const v=typeof h=="function"?h(n):h;if(!Object.is(v,n)){const w=n;n=m??(typeof v!="object"||v===null)?v:Object.assign({},n,v),i.forEach(b=>b(n,w))}},o=()=>n,d={setState:s,getState:o,getInitialState:()=>p,subscribe:h=>(i.add(h),()=>i.delete(h)),destroy:()=>{(KT?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),i.clear()}},p=n=e(s,o,d);return d},YT=e=>e?q0(e):q0,{useDebugValue:XT}=ie,{useSyncExternalStoreWithSelector:QT}=GT,ZT=e=>e;function cE(e,n=ZT,i){const s=QT(e.subscribe,e.getState,e.getServerState||e.getInitialState,n,i);return XT(s),s}const O0=(e,n)=>{const i=YT(e),s=(o,u=n)=>cE(i,o,u);return Object.assign(s,i),s},JT=(e,n)=>e?O0(e,n):O0;function kt(e,n){if(Object.is(e,n))return!0;if(typeof e!="object"||e===null||typeof n!="object"||n===null)return!1;if(e instanceof Map&&n instanceof Map){if(e.size!==n.size)return!1;for(const[s,o]of e)if(!Object.is(o,n.get(s)))return!1;return!0}if(e instanceof Set&&n instanceof Set){if(e.size!==n.size)return!1;for(const s of e)if(!n.has(s))return!1;return!0}const i=Object.keys(e);if(i.length!==Object.keys(n).length)return!1;for(const s of i)if(!Object.prototype.hasOwnProperty.call(n,s)||!Object.is(e[s],n[s]))return!1;return!0}var eR={value:()=>{}};function eu(){for(var e=0,n=arguments.length,i={},s;e<n;++e){if(!(s=arguments[e]+"")||s in i||/[\s.]/.test(s))throw new Error("illegal type: "+s);i[s]=[]}return new $a(i)}function $a(e){this._=e}function tR(e,n){return e.trim().split(/^|\s+/).map(function(i){var s="",o=i.indexOf(".");if(o>=0&&(s=i.slice(o+1),i=i.slice(0,o)),i&&!n.hasOwnProperty(i))throw new Error("unknown type: "+i);return{type:i,name:s}})}$a.prototype=eu.prototype={constructor:$a,on:function(e,n){var i=this._,s=tR(e+"",i),o,u=-1,l=s.length;if(arguments.length<2){for(;++u<l;)if((o=(e=s[u]).type)&&(o=nR(i[o],e.name)))return o;return}if(n!=null&&typeof n!="function")throw new Error("invalid callback: "+n);for(;++u<l;)if(o=(e=s[u]).type)i[o]=L0(i[o],e.name,n);else if(n==null)for(o in i)i[o]=L0(i[o],e.name,null);return this},copy:function(){var e={},n=this._;for(var i in n)e[i]=n[i].slice();return new $a(e)},call:function(e,n){if((o=arguments.length-2)>0)for(var i=new Array(o),s=0,o,u;s<o;++s)i[s]=arguments[s+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(u=this._[e],s=0,o=u.length;s<o;++s)u[s].value.apply(n,i)},apply:function(e,n,i){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var s=this._[e],o=0,u=s.length;o<u;++o)s[o].value.apply(n,i)}};function nR(e,n){for(var i=0,s=e.length,o;i<s;++i)if((o=e[i]).name===n)return o.value}function L0(e,n,i){for(var s=0,o=e.length;s<o;++s)if(e[s].name===n){e[s]=eR,e=e.slice(0,s).concat(e.slice(s+1));break}return i!=null&&e.push({name:n,value:i}),e}var Hm="http://www.w3.org/1999/xhtml";const $0={svg:"http://www.w3.org/2000/svg",xhtml:Hm,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function tu(e){var n=e+="",i=n.indexOf(":");return i>=0&&(n=e.slice(0,i))!=="xmlns"&&(e=e.slice(i+1)),$0.hasOwnProperty(n)?{space:$0[n],local:e}:e}function rR(e){return function(){var n=this.ownerDocument,i=this.namespaceURI;return i===Hm&&n.documentElement.namespaceURI===Hm?n.createElement(e):n.createElementNS(i,e)}}function iR(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function fE(e){var n=tu(e);return(n.local?iR:rR)(n)}function sR(){}function hg(e){return e==null?sR:function(){return this.querySelector(e)}}function oR(e){typeof e!="function"&&(e=hg(e));for(var n=this._groups,i=n.length,s=new Array(i),o=0;o<i;++o)for(var u=n[o],l=u.length,c=s[o]=new Array(l),d,p,h=0;h<l;++h)(d=u[h])&&(p=e.call(d,d.__data__,h,u))&&("__data__"in d&&(p.__data__=d.__data__),c[h]=p);return new on(s,this._parents)}function aR(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function uR(){return[]}function dE(e){return e==null?uR:function(){return this.querySelectorAll(e)}}function lR(e){return function(){return aR(e.apply(this,arguments))}}function cR(e){typeof e=="function"?e=lR(e):e=dE(e);for(var n=this._groups,i=n.length,s=[],o=[],u=0;u<i;++u)for(var l=n[u],c=l.length,d,p=0;p<c;++p)(d=l[p])&&(s.push(e.call(d,d.__data__,p,l)),o.push(d));return new on(s,o)}function hE(e){return function(){return this.matches(e)}}function pE(e){return function(n){return n.matches(e)}}var fR=Array.prototype.find;function dR(e){return function(){return fR.call(this.children,e)}}function hR(){return this.firstElementChild}function pR(e){return this.select(e==null?hR:dR(typeof e=="function"?e:pE(e)))}var mR=Array.prototype.filter;function gR(){return Array.from(this.children)}function vR(e){return function(){return mR.call(this.children,e)}}function yR(e){return this.selectAll(e==null?gR:vR(typeof e=="function"?e:pE(e)))}function wR(e){typeof e!="function"&&(e=hE(e));for(var n=this._groups,i=n.length,s=new Array(i),o=0;o<i;++o)for(var u=n[o],l=u.length,c=s[o]=[],d,p=0;p<l;++p)(d=u[p])&&e.call(d,d.__data__,p,u)&&c.push(d);return new on(s,this._parents)}function mE(e){return new Array(e.length)}function _R(){return new on(this._enter||this._groups.map(mE),this._parents)}function Ba(e,n){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=n}Ba.prototype={constructor:Ba,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,n){return this._parent.insertBefore(e,n)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function xR(e){return function(){return e}}function SR(e,n,i,s,o,u){for(var l=0,c,d=n.length,p=u.length;l<p;++l)(c=n[l])?(c.__data__=u[l],s[l]=c):i[l]=new Ba(e,u[l]);for(;l<d;++l)(c=n[l])&&(o[l]=c)}function kR(e,n,i,s,o,u,l){var c,d,p=new Map,h=n.length,m=u.length,v=new Array(h),w;for(c=0;c<h;++c)(d=n[c])&&(v[c]=w=l.call(d,d.__data__,c,n)+"",p.has(w)?o[c]=d:p.set(w,d));for(c=0;c<m;++c)w=l.call(e,u[c],c,u)+"",(d=p.get(w))?(s[c]=d,d.__data__=u[c],p.delete(w)):i[c]=new Ba(e,u[c]);for(c=0;c<h;++c)(d=n[c])&&p.get(v[c])===d&&(o[c]=d)}function ER(e){return e.__data__}function bR(e,n){if(!arguments.length)return Array.from(this,ER);var i=n?kR:SR,s=this._parents,o=this._groups;typeof e!="function"&&(e=xR(e));for(var u=o.length,l=new Array(u),c=new Array(u),d=new Array(u),p=0;p<u;++p){var h=s[p],m=o[p],v=m.length,w=NR(e.call(h,h&&h.__data__,p,s)),b=w.length,x=c[p]=new Array(b),k=l[p]=new Array(b),S=d[p]=new Array(v);i(h,m,x,k,S,w,n);for(var E=0,T=0,C,j;E<b;++E)if(C=x[E]){for(E>=T&&(T=E+1);!(j=k[T])&&++T<b;);C._next=j||null}}return l=new on(l,s),l._enter=c,l._exit=d,l}function NR(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function CR(){return new on(this._exit||this._groups.map(mE),this._parents)}function TR(e,n,i){var s=this.enter(),o=this,u=this.exit();return typeof e=="function"?(s=e(s),s&&(s=s.selection())):s=s.append(e+""),n!=null&&(o=n(o),o&&(o=o.selection())),i==null?u.remove():i(u),s&&o?s.merge(o).order():o}function RR(e){for(var n=e.selection?e.selection():e,i=this._groups,s=n._groups,o=i.length,u=s.length,l=Math.min(o,u),c=new Array(o),d=0;d<l;++d)for(var p=i[d],h=s[d],m=p.length,v=c[d]=new Array(m),w,b=0;b<m;++b)(w=p[b]||h[b])&&(v[b]=w);for(;d<o;++d)c[d]=i[d];return new on(c,this._parents)}function AR(){for(var e=this._groups,n=-1,i=e.length;++n<i;)for(var s=e[n],o=s.length-1,u=s[o],l;--o>=0;)(l=s[o])&&(u&&l.compareDocumentPosition(u)^4&&u.parentNode.insertBefore(l,u),u=l);return this}function jR(e){e||(e=IR);function n(m,v){return m&&v?e(m.__data__,v.__data__):!m-!v}for(var i=this._groups,s=i.length,o=new Array(s),u=0;u<s;++u){for(var l=i[u],c=l.length,d=o[u]=new Array(c),p,h=0;h<c;++h)(p=l[h])&&(d[h]=p);d.sort(n)}return new on(o,this._parents).order()}function IR(e,n){return e<n?-1:e>n?1:e>=n?0:NaN}function MR(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function PR(){return Array.from(this)}function qR(){for(var e=this._groups,n=0,i=e.length;n<i;++n)for(var s=e[n],o=0,u=s.length;o<u;++o){var l=s[o];if(l)return l}return null}function OR(){let e=0;for(const n of this)++e;return e}function LR(){return!this.node()}function $R(e){for(var n=this._groups,i=0,s=n.length;i<s;++i)for(var o=n[i],u=0,l=o.length,c;u<l;++u)(c=o[u])&&e.call(c,c.__data__,u,o);return this}function DR(e){return function(){this.removeAttribute(e)}}function FR(e){return function(){this.removeAttributeNS(e.space,e.local)}}function zR(e,n){return function(){this.setAttribute(e,n)}}function BR(e,n){return function(){this.setAttributeNS(e.space,e.local,n)}}function UR(e,n){return function(){var i=n.apply(this,arguments);i==null?this.removeAttribute(e):this.setAttribute(e,i)}}function HR(e,n){return function(){var i=n.apply(this,arguments);i==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,i)}}function VR(e,n){var i=tu(e);if(arguments.length<2){var s=this.node();return i.local?s.getAttributeNS(i.space,i.local):s.getAttribute(i)}return this.each((n==null?i.local?FR:DR:typeof n=="function"?i.local?HR:UR:i.local?BR:zR)(i,n))}function gE(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function WR(e){return function(){this.style.removeProperty(e)}}function GR(e,n,i){return function(){this.style.setProperty(e,n,i)}}function KR(e,n,i){return function(){var s=n.apply(this,arguments);s==null?this.style.removeProperty(e):this.style.setProperty(e,s,i)}}function YR(e,n,i){return arguments.length>1?this.each((n==null?WR:typeof n=="function"?KR:GR)(e,n,i??"")):Yi(this.node(),e)}function Yi(e,n){return e.style.getPropertyValue(n)||gE(e).getComputedStyle(e,null).getPropertyValue(n)}function XR(e){return function(){delete this[e]}}function QR(e,n){return function(){this[e]=n}}function ZR(e,n){return function(){var i=n.apply(this,arguments);i==null?delete this[e]:this[e]=i}}function JR(e,n){return arguments.length>1?this.each((n==null?XR:typeof n=="function"?ZR:QR)(e,n)):this.node()[e]}function vE(e){return e.trim().split(/^|\s+/)}function pg(e){return e.classList||new yE(e)}function yE(e){this._node=e,this._names=vE(e.getAttribute("class")||"")}yE.prototype={add:function(e){var n=this._names.indexOf(e);n<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var n=this._names.indexOf(e);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function wE(e,n){for(var i=pg(e),s=-1,o=n.length;++s<o;)i.add(n[s])}function _E(e,n){for(var i=pg(e),s=-1,o=n.length;++s<o;)i.remove(n[s])}function e2(e){return function(){wE(this,e)}}function t2(e){return function(){_E(this,e)}}function n2(e,n){return function(){(n.apply(this,arguments)?wE:_E)(this,e)}}function r2(e,n){var i=vE(e+"");if(arguments.length<2){for(var s=pg(this.node()),o=-1,u=i.length;++o<u;)if(!s.contains(i[o]))return!1;return!0}return this.each((typeof n=="function"?n2:n?e2:t2)(i,n))}function i2(){this.textContent=""}function s2(e){return function(){this.textContent=e}}function o2(e){return function(){var n=e.apply(this,arguments);this.textContent=n??""}}function a2(e){return arguments.length?this.each(e==null?i2:(typeof e=="function"?o2:s2)(e)):this.node().textContent}function u2(){this.innerHTML=""}function l2(e){return function(){this.innerHTML=e}}function c2(e){return function(){var n=e.apply(this,arguments);this.innerHTML=n??""}}function f2(e){return arguments.length?this.each(e==null?u2:(typeof e=="function"?c2:l2)(e)):this.node().innerHTML}function d2(){this.nextSibling&&this.parentNode.appendChild(this)}function h2(){return this.each(d2)}function p2(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function m2(){return this.each(p2)}function g2(e){var n=typeof e=="function"?e:fE(e);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function v2(){return null}function y2(e,n){var i=typeof e=="function"?e:fE(e),s=n==null?v2:typeof n=="function"?n:hg(n);return this.select(function(){return this.insertBefore(i.apply(this,arguments),s.apply(this,arguments)||null)})}function w2(){var e=this.parentNode;e&&e.removeChild(this)}function _2(){return this.each(w2)}function x2(){var e=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function S2(){var e=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(e,this.nextSibling):e}function k2(e){return this.select(e?S2:x2)}function E2(e){return arguments.length?this.property("__data__",e):this.node().__data__}function b2(e){return function(n){e.call(this,n,this.__data__)}}function N2(e){return e.trim().split(/^|\s+/).map(function(n){var i="",s=n.indexOf(".");return s>=0&&(i=n.slice(s+1),n=n.slice(0,s)),{type:n,name:i}})}function C2(e){return function(){var n=this.__on;if(n){for(var i=0,s=-1,o=n.length,u;i<o;++i)u=n[i],(!e.type||u.type===e.type)&&u.name===e.name?this.removeEventListener(u.type,u.listener,u.options):n[++s]=u;++s?n.length=s:delete this.__on}}}function T2(e,n,i){return function(){var s=this.__on,o,u=b2(n);if(s){for(var l=0,c=s.length;l<c;++l)if((o=s[l]).type===e.type&&o.name===e.name){this.removeEventListener(o.type,o.listener,o.options),this.addEventListener(o.type,o.listener=u,o.options=i),o.value=n;return}}this.addEventListener(e.type,u,i),o={type:e.type,name:e.name,value:n,listener:u,options:i},s?s.push(o):this.__on=[o]}}function R2(e,n,i){var s=N2(e+""),o,u=s.length,l;if(arguments.length<2){var c=this.node().__on;if(c){for(var d=0,p=c.length,h;d<p;++d)for(o=0,h=c[d];o<u;++o)if((l=s[o]).type===h.type&&l.name===h.name)return h.value}return}for(c=n?T2:C2,o=0;o<u;++o)this.each(c(s[o],n,i));return this}function xE(e,n,i){var s=gE(e),o=s.CustomEvent;typeof o=="function"?o=new o(n,i):(o=s.document.createEvent("Event"),i?(o.initEvent(n,i.bubbles,i.cancelable),o.detail=i.detail):o.initEvent(n,!1,!1)),e.dispatchEvent(o)}function A2(e,n){return function(){return xE(this,e,n)}}function j2(e,n){return function(){return xE(this,e,n.apply(this,arguments))}}function I2(e,n){return this.each((typeof n=="function"?j2:A2)(e,n))}function*M2(){for(var e=this._groups,n=0,i=e.length;n<i;++n)for(var s=e[n],o=0,u=s.length,l;o<u;++o)(l=s[o])&&(yield l)}var SE=[null];function on(e,n){this._groups=e,this._parents=n}function ao(){return new on([[document.documentElement]],SE)}function P2(){return this}on.prototype=ao.prototype={constructor:on,select:oR,selectAll:cR,selectChild:pR,selectChildren:yR,filter:wR,data:bR,enter:_R,exit:CR,join:TR,merge:RR,selection:P2,order:AR,sort:jR,call:MR,nodes:PR,node:qR,size:OR,empty:LR,each:$R,attr:VR,style:YR,property:JR,classed:r2,text:a2,html:f2,raise:h2,lower:m2,append:g2,insert:y2,remove:_2,clone:k2,datum:E2,on:R2,dispatch:I2,[Symbol.iterator]:M2};function yn(e){return typeof e=="string"?new on([[document.querySelector(e)]],[document.documentElement]):new on([[e]],SE)}function q2(e){let n;for(;n=e.sourceEvent;)e=n;return e}function jn(e,n){if(e=q2(e),n===void 0&&(n=e.currentTarget),n){var i=n.ownerSVGElement||n;if(i.createSVGPoint){var s=i.createSVGPoint();return s.x=e.clientX,s.y=e.clientY,s=s.matrixTransform(n.getScreenCTM().inverse()),[s.x,s.y]}if(n.getBoundingClientRect){var o=n.getBoundingClientRect();return[e.clientX-o.left-n.clientLeft,e.clientY-o.top-n.clientTop]}}return[e.pageX,e.pageY]}const O2={passive:!1},Zs={capture:!0,passive:!1};function pc(e){e.stopImmediatePropagation()}function Wi(e){e.preventDefault(),e.stopImmediatePropagation()}function kE(e){var n=e.document.documentElement,i=yn(e).on("dragstart.drag",Wi,Zs);"onselectstart"in n?i.on("selectstart.drag",Wi,Zs):(n.__noselect=n.style.MozUserSelect,n.style.MozUserSelect="none")}function EE(e,n){var i=e.document.documentElement,s=yn(e).on("dragstart.drag",null);n&&(s.on("click.drag",Wi,Zs),setTimeout(function(){s.on("click.drag",null)},0)),"onselectstart"in i?s.on("selectstart.drag",null):(i.style.MozUserSelect=i.__noselect,delete i.__noselect)}const Ca=e=>()=>e;function Vm(e,{sourceEvent:n,subject:i,target:s,identifier:o,active:u,x:l,y:c,dx:d,dy:p,dispatch:h}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},subject:{value:i,enumerable:!0,configurable:!0},target:{value:s,enumerable:!0,configurable:!0},identifier:{value:o,enumerable:!0,configurable:!0},active:{value:u,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:c,enumerable:!0,configurable:!0},dx:{value:d,enumerable:!0,configurable:!0},dy:{value:p,enumerable:!0,configurable:!0},_:{value:h}})}Vm.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function L2(e){return!e.ctrlKey&&!e.button}function $2(){return this.parentNode}function D2(e,n){return n??{x:e.x,y:e.y}}function F2(){return navigator.maxTouchPoints||"ontouchstart"in this}function z2(){var e=L2,n=$2,i=D2,s=F2,o={},u=eu("start","drag","end"),l=0,c,d,p,h,m=0;function v(C){C.on("mousedown.drag",w).filter(s).on("touchstart.drag",k).on("touchmove.drag",S,O2).on("touchend.drag touchcancel.drag",E).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function w(C,j){if(!(h||!e.call(this,C,j))){var M=T(this,n.call(this,C,j),C,j,"mouse");M&&(yn(C.view).on("mousemove.drag",b,Zs).on("mouseup.drag",x,Zs),kE(C.view),pc(C),p=!1,c=C.clientX,d=C.clientY,M("start",C))}}function b(C){if(Wi(C),!p){var j=C.clientX-c,M=C.clientY-d;p=j*j+M*M>m}o.mouse("drag",C)}function x(C){yn(C.view).on("mousemove.drag mouseup.drag",null),EE(C.view,p),Wi(C),o.mouse("end",C)}function k(C,j){if(e.call(this,C,j)){var M=C.changedTouches,A=n.call(this,C,j),D=M.length,L,U;for(L=0;L<D;++L)(U=T(this,A,C,j,M[L].identifier,M[L]))&&(pc(C),U("start",C,M[L]))}}function S(C){var j=C.changedTouches,M=j.length,A,D;for(A=0;A<M;++A)(D=o[j[A].identifier])&&(Wi(C),D("drag",C,j[A]))}function E(C){var j=C.changedTouches,M=j.length,A,D;for(h&&clearTimeout(h),h=setTimeout(function(){h=null},500),A=0;A<M;++A)(D=o[j[A].identifier])&&(pc(C),D("end",C,j[A]))}function T(C,j,M,A,D,L){var U=u.copy(),H=jn(L||M,j),Q,ee,R;if((R=i.call(C,new Vm("beforestart",{sourceEvent:M,target:v,identifier:D,active:l,x:H[0],y:H[1],dx:0,dy:0,dispatch:U}),A))!=null)return Q=R.x-H[0]||0,ee=R.y-H[1]||0,function G(B,X,Y){var q=H,V;switch(B){case"start":o[D]=G,V=l++;break;case"end":delete o[D],--l;case"drag":H=jn(Y||X,j),V=l;break}U.call(B,C,new Vm(B,{sourceEvent:X,subject:R,target:v,identifier:D,active:V,x:H[0]+Q,y:H[1]+ee,dx:H[0]-q[0],dy:H[1]-q[1],dispatch:U}),A)}}return v.filter=function(C){return arguments.length?(e=typeof C=="function"?C:Ca(!!C),v):e},v.container=function(C){return arguments.length?(n=typeof C=="function"?C:Ca(C),v):n},v.subject=function(C){return arguments.length?(i=typeof C=="function"?C:Ca(C),v):i},v.touchable=function(C){return arguments.length?(s=typeof C=="function"?C:Ca(!!C),v):s},v.on=function(){var C=u.on.apply(u,arguments);return C===u?v:C},v.clickDistance=function(C){return arguments.length?(m=(C=+C)*C,v):Math.sqrt(m)},v}function mg(e,n,i){e.prototype=n.prototype=i,i.constructor=e}function bE(e,n){var i=Object.create(e.prototype);for(var s in n)i[s]=n[s];return i}function uo(){}var Js=.7,Ua=1/Js,Gi="\\s*([+-]?\\d+)\\s*",eo="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",zn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",B2=/^#([0-9a-f]{3,8})$/,U2=new RegExp(`^rgb\\(${Gi},${Gi},${Gi}\\)$`),H2=new RegExp(`^rgb\\(${zn},${zn},${zn}\\)$`),V2=new RegExp(`^rgba\\(${Gi},${Gi},${Gi},${eo}\\)$`),W2=new RegExp(`^rgba\\(${zn},${zn},${zn},${eo}\\)$`),G2=new RegExp(`^hsl\\(${eo},${zn},${zn}\\)$`),K2=new RegExp(`^hsla\\(${eo},${zn},${zn},${eo}\\)$`),D0={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};mg(uo,to,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:F0,formatHex:F0,formatHex8:Y2,formatHsl:X2,formatRgb:z0,toString:z0});function F0(){return this.rgb().formatHex()}function Y2(){return this.rgb().formatHex8()}function X2(){return NE(this).formatHsl()}function z0(){return this.rgb().formatRgb()}function to(e){var n,i;return e=(e+"").trim().toLowerCase(),(n=B2.exec(e))?(i=n[1].length,n=parseInt(n[1],16),i===6?B0(n):i===3?new Zt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):i===8?Ta(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):i===4?Ta(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=U2.exec(e))?new Zt(n[1],n[2],n[3],1):(n=H2.exec(e))?new Zt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=V2.exec(e))?Ta(n[1],n[2],n[3],n[4]):(n=W2.exec(e))?Ta(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=G2.exec(e))?V0(n[1],n[2]/100,n[3]/100,1):(n=K2.exec(e))?V0(n[1],n[2]/100,n[3]/100,n[4]):D0.hasOwnProperty(e)?B0(D0[e]):e==="transparent"?new Zt(NaN,NaN,NaN,0):null}function B0(e){return new Zt(e>>16&255,e>>8&255,e&255,1)}function Ta(e,n,i,s){return s<=0&&(e=n=i=NaN),new Zt(e,n,i,s)}function Q2(e){return e instanceof uo||(e=to(e)),e?(e=e.rgb(),new Zt(e.r,e.g,e.b,e.opacity)):new Zt}function Wm(e,n,i,s){return arguments.length===1?Q2(e):new Zt(e,n,i,s??1)}function Zt(e,n,i,s){this.r=+e,this.g=+n,this.b=+i,this.opacity=+s}mg(Zt,Wm,bE(uo,{brighter(e){return e=e==null?Ua:Math.pow(Ua,e),new Zt(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Js:Math.pow(Js,e),new Zt(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new Zt(ni(this.r),ni(this.g),ni(this.b),Ha(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:U0,formatHex:U0,formatHex8:Z2,formatRgb:H0,toString:H0}));function U0(){return`#${ei(this.r)}${ei(this.g)}${ei(this.b)}`}function Z2(){return`#${ei(this.r)}${ei(this.g)}${ei(this.b)}${ei((isNaN(this.opacity)?1:this.opacity)*255)}`}function H0(){const e=Ha(this.opacity);return`${e===1?"rgb(":"rgba("}${ni(this.r)}, ${ni(this.g)}, ${ni(this.b)}${e===1?")":`, ${e})`}`}function Ha(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function ni(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function ei(e){return e=ni(e),(e<16?"0":"")+e.toString(16)}function V0(e,n,i,s){return s<=0?e=n=i=NaN:i<=0||i>=1?e=n=NaN:n<=0&&(e=NaN),new In(e,n,i,s)}function NE(e){if(e instanceof In)return new In(e.h,e.s,e.l,e.opacity);if(e instanceof uo||(e=to(e)),!e)return new In;if(e instanceof In)return e;e=e.rgb();var n=e.r/255,i=e.g/255,s=e.b/255,o=Math.min(n,i,s),u=Math.max(n,i,s),l=NaN,c=u-o,d=(u+o)/2;return c?(n===u?l=(i-s)/c+(i<s)*6:i===u?l=(s-n)/c+2:l=(n-i)/c+4,c/=d<.5?u+o:2-u-o,l*=60):c=d>0&&d<1?0:l,new In(l,c,d,e.opacity)}function J2(e,n,i,s){return arguments.length===1?NE(e):new In(e,n,i,s??1)}function In(e,n,i,s){this.h=+e,this.s=+n,this.l=+i,this.opacity=+s}mg(In,J2,bE(uo,{brighter(e){return e=e==null?Ua:Math.pow(Ua,e),new In(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Js:Math.pow(Js,e),new In(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,n=isNaN(e)||isNaN(this.s)?0:this.s,i=this.l,s=i+(i<.5?i:1-i)*n,o=2*i-s;return new Zt(mc(e>=240?e-240:e+120,o,s),mc(e,o,s),mc(e<120?e+240:e-120,o,s),this.opacity)},clamp(){return new In(W0(this.h),Ra(this.s),Ra(this.l),Ha(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 e=Ha(this.opacity);return`${e===1?"hsl(":"hsla("}${W0(this.h)}, ${Ra(this.s)*100}%, ${Ra(this.l)*100}%${e===1?")":`, ${e})`}`}}));function W0(e){return e=(e||0)%360,e<0?e+360:e}function Ra(e){return Math.max(0,Math.min(1,e||0))}function mc(e,n,i){return(e<60?n+(i-n)*e/60:e<180?i:e<240?n+(i-n)*(240-e)/60:n)*255}const CE=e=>()=>e;function eA(e,n){return function(i){return e+i*n}}function tA(e,n,i){return e=Math.pow(e,i),n=Math.pow(n,i)-e,i=1/i,function(s){return Math.pow(e+s*n,i)}}function nA(e){return(e=+e)==1?TE:function(n,i){return i-n?tA(n,i,e):CE(isNaN(n)?i:n)}}function TE(e,n){var i=n-e;return i?eA(e,i):CE(isNaN(e)?n:e)}const G0=(function e(n){var i=nA(n);function s(o,u){var l=i((o=Wm(o)).r,(u=Wm(u)).r),c=i(o.g,u.g),d=i(o.b,u.b),p=TE(o.opacity,u.opacity);return function(h){return o.r=l(h),o.g=c(h),o.b=d(h),o.opacity=p(h),o+""}}return s.gamma=e,s})(1);function Ir(e,n){return e=+e,n=+n,function(i){return e*(1-i)+n*i}}var Gm=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,gc=new RegExp(Gm.source,"g");function rA(e){return function(){return e}}function iA(e){return function(n){return e(n)+""}}function sA(e,n){var i=Gm.lastIndex=gc.lastIndex=0,s,o,u,l=-1,c=[],d=[];for(e=e+"",n=n+"";(s=Gm.exec(e))&&(o=gc.exec(n));)(u=o.index)>i&&(u=n.slice(i,u),c[l]?c[l]+=u:c[++l]=u),(s=s[0])===(o=o[0])?c[l]?c[l]+=o:c[++l]=o:(c[++l]=null,d.push({i:l,x:Ir(s,o)})),i=gc.lastIndex;return i<n.length&&(u=n.slice(i),c[l]?c[l]+=u:c[++l]=u),c.length<2?d[0]?iA(d[0].x):rA(n):(n=d.length,function(p){for(var h=0,m;h<n;++h)c[(m=d[h]).i]=m.x(p);return c.join("")})}var K0=180/Math.PI,Km={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function RE(e,n,i,s,o,u){var l,c,d;return(l=Math.sqrt(e*e+n*n))&&(e/=l,n/=l),(d=e*i+n*s)&&(i-=e*d,s-=n*d),(c=Math.sqrt(i*i+s*s))&&(i/=c,s/=c,d/=c),e*s<n*i&&(e=-e,n=-n,d=-d,l=-l),{translateX:o,translateY:u,rotate:Math.atan2(n,e)*K0,skewX:Math.atan(d)*K0,scaleX:l,scaleY:c}}var Aa;function oA(e){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return n.isIdentity?Km:RE(n.a,n.b,n.c,n.d,n.e,n.f)}function aA(e){return e==null||(Aa||(Aa=document.createElementNS("http://www.w3.org/2000/svg","g")),Aa.setAttribute("transform",e),!(e=Aa.transform.baseVal.consolidate()))?Km:(e=e.matrix,RE(e.a,e.b,e.c,e.d,e.e,e.f))}function AE(e,n,i,s){function o(p){return p.length?p.pop()+" ":""}function u(p,h,m,v,w,b){if(p!==m||h!==v){var x=w.push("translate(",null,n,null,i);b.push({i:x-4,x:Ir(p,m)},{i:x-2,x:Ir(h,v)})}else(m||v)&&w.push("translate("+m+n+v+i)}function l(p,h,m,v){p!==h?(p-h>180?h+=360:h-p>180&&(p+=360),v.push({i:m.push(o(m)+"rotate(",null,s)-2,x:Ir(p,h)})):h&&m.push(o(m)+"rotate("+h+s)}function c(p,h,m,v){p!==h?v.push({i:m.push(o(m)+"skewX(",null,s)-2,x:Ir(p,h)}):h&&m.push(o(m)+"skewX("+h+s)}function d(p,h,m,v,w,b){if(p!==m||h!==v){var x=w.push(o(w)+"scale(",null,",",null,")");b.push({i:x-4,x:Ir(p,m)},{i:x-2,x:Ir(h,v)})}else(m!==1||v!==1)&&w.push(o(w)+"scale("+m+","+v+")")}return function(p,h){var m=[],v=[];return p=e(p),h=e(h),u(p.translateX,p.translateY,h.translateX,h.translateY,m,v),l(p.rotate,h.rotate,m,v),c(p.skewX,h.skewX,m,v),d(p.scaleX,p.scaleY,h.scaleX,h.scaleY,m,v),p=h=null,function(w){for(var b=-1,x=v.length,k;++b<x;)m[(k=v[b]).i]=k.x(w);return m.join("")}}}var uA=AE(oA,"px, ","px)","deg)"),lA=AE(aA,", ",")",")"),cA=1e-12;function Y0(e){return((e=Math.exp(e))+1/e)/2}function fA(e){return((e=Math.exp(e))-1/e)/2}function dA(e){return((e=Math.exp(2*e))-1)/(e+1)}const hA=(function e(n,i,s){function o(u,l){var c=u[0],d=u[1],p=u[2],h=l[0],m=l[1],v=l[2],w=h-c,b=m-d,x=w*w+b*b,k,S;if(x<cA)S=Math.log(v/p)/n,k=function(A){return[c+A*w,d+A*b,p*Math.exp(n*A*S)]};else{var E=Math.sqrt(x),T=(v*v-p*p+s*x)/(2*p*i*E),C=(v*v-p*p-s*x)/(2*v*i*E),j=Math.log(Math.sqrt(T*T+1)-T),M=Math.log(Math.sqrt(C*C+1)-C);S=(M-j)/n,k=function(A){var D=A*S,L=Y0(j),U=p/(i*E)*(L*dA(n*D+j)-fA(j));return[c+U*w,d+U*b,p*L/Y0(n*D+j)]}}return k.duration=S*1e3*n/Math.SQRT2,k}return o.rho=function(u){var l=Math.max(.001,+u),c=l*l,d=c*c;return e(l,c,d)},o})(Math.SQRT2,2,4);var Xi=0,Vs=0,Fs=0,jE=1e3,Va,Ws,Wa=0,ii=0,nu=0,no=typeof performance=="object"&&performance.now?performance:Date,IE=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function gg(){return ii||(IE(pA),ii=no.now()+nu)}function pA(){ii=0}function Ga(){this._call=this._time=this._next=null}Ga.prototype=ME.prototype={constructor:Ga,restart:function(e,n,i){if(typeof e!="function")throw new TypeError("callback is not a function");i=(i==null?gg():+i)+(n==null?0:+n),!this._next&&Ws!==this&&(Ws?Ws._next=this:Va=this,Ws=this),this._call=e,this._time=i,Ym()},stop:function(){this._call&&(this._call=null,this._time=1/0,Ym())}};function ME(e,n,i){var s=new Ga;return s.restart(e,n,i),s}function mA(){gg(),++Xi;for(var e=Va,n;e;)(n=ii-e._time)>=0&&e._call.call(void 0,n),e=e._next;--Xi}function X0(){ii=(Wa=no.now())+nu,Xi=Vs=0;try{mA()}finally{Xi=0,vA(),ii=0}}function gA(){var e=no.now(),n=e-Wa;n>jE&&(nu-=n,Wa=e)}function vA(){for(var e,n=Va,i,s=1/0;n;)n._call?(s>n._time&&(s=n._time),e=n,n=n._next):(i=n._next,n._next=null,n=e?e._next=i:Va=i);Ws=e,Ym(s)}function Ym(e){if(!Xi){Vs&&(Vs=clearTimeout(Vs));var n=e-ii;n>24?(e<1/0&&(Vs=setTimeout(X0,e-no.now()-nu)),Fs&&(Fs=clearInterval(Fs))):(Fs||(Wa=no.now(),Fs=setInterval(gA,jE)),Xi=1,IE(X0))}}function Q0(e,n,i){var s=new Ga;return n=n==null?0:+n,s.restart(o=>{s.stop(),e(o+n)},n,i),s}var yA=eu("start","end","cancel","interrupt"),wA=[],PE=0,Z0=1,Xm=2,Da=3,J0=4,Qm=5,Fa=6;function ru(e,n,i,s,o,u){var l=e.__transition;if(!l)e.__transition={};else if(i in l)return;_A(e,i,{name:n,index:s,group:o,on:yA,tween:wA,time:u.time,delay:u.delay,duration:u.duration,ease:u.ease,timer:null,state:PE})}function vg(e,n){var i=qn(e,n);if(i.state>PE)throw new Error("too late; already scheduled");return i}function Bn(e,n){var i=qn(e,n);if(i.state>Da)throw new Error("too late; already running");return i}function qn(e,n){var i=e.__transition;if(!i||!(i=i[n]))throw new Error("transition not found");return i}function _A(e,n,i){var s=e.__transition,o;s[n]=i,i.timer=ME(u,0,i.time);function u(p){i.state=Z0,i.timer.restart(l,i.delay,i.time),i.delay<=p&&l(p-i.delay)}function l(p){var h,m,v,w;if(i.state!==Z0)return d();for(h in s)if(w=s[h],w.name===i.name){if(w.state===Da)return Q0(l);w.state===J0?(w.state=Fa,w.timer.stop(),w.on.call("interrupt",e,e.__data__,w.index,w.group),delete s[h]):+h<n&&(w.state=Fa,w.timer.stop(),w.on.call("cancel",e,e.__data__,w.index,w.group),delete s[h])}if(Q0(function(){i.state===Da&&(i.state=J0,i.timer.restart(c,i.delay,i.time),c(p))}),i.state=Xm,i.on.call("start",e,e.__data__,i.index,i.group),i.state===Xm){for(i.state=Da,o=new Array(v=i.tween.length),h=0,m=-1;h<v;++h)(w=i.tween[h].value.call(e,e.__data__,i.index,i.group))&&(o[++m]=w);o.length=m+1}}function c(p){for(var h=p<i.duration?i.ease.call(null,p/i.duration):(i.timer.restart(d),i.state=Qm,1),m=-1,v=o.length;++m<v;)o[m].call(e,h);i.state===Qm&&(i.on.call("end",e,e.__data__,i.index,i.group),d())}function d(){i.state=Fa,i.timer.stop(),delete s[n];for(var p in s)return;delete e.__transition}}function za(e,n){var i=e.__transition,s,o,u=!0,l;if(i){n=n==null?null:n+"";for(l in i){if((s=i[l]).name!==n){u=!1;continue}o=s.state>Xm&&s.state<Qm,s.state=Fa,s.timer.stop(),s.on.call(o?"interrupt":"cancel",e,e.__data__,s.index,s.group),delete i[l]}u&&delete e.__transition}}function xA(e){return this.each(function(){za(this,e)})}function SA(e,n){var i,s;return function(){var o=Bn(this,e),u=o.tween;if(u!==i){s=i=u;for(var l=0,c=s.length;l<c;++l)if(s[l].name===n){s=s.slice(),s.splice(l,1);break}}o.tween=s}}function kA(e,n,i){var s,o;if(typeof i!="function")throw new Error;return function(){var u=Bn(this,e),l=u.tween;if(l!==s){o=(s=l).slice();for(var c={name:n,value:i},d=0,p=o.length;d<p;++d)if(o[d].name===n){o[d]=c;break}d===p&&o.push(c)}u.tween=o}}function EA(e,n){var i=this._id;if(e+="",arguments.length<2){for(var s=qn(this.node(),i).tween,o=0,u=s.length,l;o<u;++o)if((l=s[o]).name===e)return l.value;return null}return this.each((n==null?SA:kA)(i,e,n))}function yg(e,n,i){var s=e._id;return e.each(function(){var o=Bn(this,s);(o.value||(o.value={}))[n]=i.apply(this,arguments)}),function(o){return qn(o,s).value[n]}}function qE(e,n){var i;return(typeof n=="number"?Ir:n instanceof to?G0:(i=to(n))?(n=i,G0):sA)(e,n)}function bA(e){return function(){this.removeAttribute(e)}}function NA(e){return function(){this.removeAttributeNS(e.space,e.local)}}function CA(e,n,i){var s,o=i+"",u;return function(){var l=this.getAttribute(e);return l===o?null:l===s?u:u=n(s=l,i)}}function TA(e,n,i){var s,o=i+"",u;return function(){var l=this.getAttributeNS(e.space,e.local);return l===o?null:l===s?u:u=n(s=l,i)}}function RA(e,n,i){var s,o,u;return function(){var l,c=i(this),d;return c==null?void this.removeAttribute(e):(l=this.getAttribute(e),d=c+"",l===d?null:l===s&&d===o?u:(o=d,u=n(s=l,c)))}}function AA(e,n,i){var s,o,u;return function(){var l,c=i(this),d;return c==null?void this.removeAttributeNS(e.space,e.local):(l=this.getAttributeNS(e.space,e.local),d=c+"",l===d?null:l===s&&d===o?u:(o=d,u=n(s=l,c)))}}function jA(e,n){var i=tu(e),s=i==="transform"?lA:qE;return this.attrTween(e,typeof n=="function"?(i.local?AA:RA)(i,s,yg(this,"attr."+e,n)):n==null?(i.local?NA:bA)(i):(i.local?TA:CA)(i,s,n))}function IA(e,n){return function(i){this.setAttribute(e,n.call(this,i))}}function MA(e,n){return function(i){this.setAttributeNS(e.space,e.local,n.call(this,i))}}function PA(e,n){var i,s;function o(){var u=n.apply(this,arguments);return u!==s&&(i=(s=u)&&MA(e,u)),i}return o._value=n,o}function qA(e,n){var i,s;function o(){var u=n.apply(this,arguments);return u!==s&&(i=(s=u)&&IA(e,u)),i}return o._value=n,o}function OA(e,n){var i="attr."+e;if(arguments.length<2)return(i=this.tween(i))&&i._value;if(n==null)return this.tween(i,null);if(typeof n!="function")throw new Error;var s=tu(e);return this.tween(i,(s.local?PA:qA)(s,n))}function LA(e,n){return function(){vg(this,e).delay=+n.apply(this,arguments)}}function $A(e,n){return n=+n,function(){vg(this,e).delay=n}}function DA(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?LA:$A)(n,e)):qn(this.node(),n).delay}function FA(e,n){return function(){Bn(this,e).duration=+n.apply(this,arguments)}}function zA(e,n){return n=+n,function(){Bn(this,e).duration=n}}function BA(e){var n=this._id;return arguments.length?this.each((typeof e=="function"?FA:zA)(n,e)):qn(this.node(),n).duration}function UA(e,n){if(typeof n!="function")throw new Error;return function(){Bn(this,e).ease=n}}function HA(e){var n=this._id;return arguments.length?this.each(UA(n,e)):qn(this.node(),n).ease}function VA(e,n){return function(){var i=n.apply(this,arguments);if(typeof i!="function")throw new Error;Bn(this,e).ease=i}}function WA(e){if(typeof e!="function")throw new Error;return this.each(VA(this._id,e))}function GA(e){typeof e!="function"&&(e=hE(e));for(var n=this._groups,i=n.length,s=new Array(i),o=0;o<i;++o)for(var u=n[o],l=u.length,c=s[o]=[],d,p=0;p<l;++p)(d=u[p])&&e.call(d,d.__data__,p,u)&&c.push(d);return new ir(s,this._parents,this._name,this._id)}function KA(e){if(e._id!==this._id)throw new Error;for(var n=this._groups,i=e._groups,s=n.length,o=i.length,u=Math.min(s,o),l=new Array(s),c=0;c<u;++c)for(var d=n[c],p=i[c],h=d.length,m=l[c]=new Array(h),v,w=0;w<h;++w)(v=d[w]||p[w])&&(m[w]=v);for(;c<s;++c)l[c]=n[c];return new ir(l,this._parents,this._name,this._id)}function YA(e){return(e+"").trim().split(/^|\s+/).every(function(n){var i=n.indexOf(".");return i>=0&&(n=n.slice(0,i)),!n||n==="start"})}function XA(e,n,i){var s,o,u=YA(n)?vg:Bn;return function(){var l=u(this,e),c=l.on;c!==s&&(o=(s=c).copy()).on(n,i),l.on=o}}function QA(e,n){var i=this._id;return arguments.length<2?qn(this.node(),i).on.on(e):this.each(XA(i,e,n))}function ZA(e){return function(){var n=this.parentNode;for(var i in this.__transition)if(+i!==e)return;n&&n.removeChild(this)}}function JA(){return this.on("end.remove",ZA(this._id))}function ej(e){var n=this._name,i=this._id;typeof e!="function"&&(e=hg(e));for(var s=this._groups,o=s.length,u=new Array(o),l=0;l<o;++l)for(var c=s[l],d=c.length,p=u[l]=new Array(d),h,m,v=0;v<d;++v)(h=c[v])&&(m=e.call(h,h.__data__,v,c))&&("__data__"in h&&(m.__data__=h.__data__),p[v]=m,ru(p[v],n,i,v,p,qn(h,i)));return new ir(u,this._parents,n,i)}function tj(e){var n=this._name,i=this._id;typeof e!="function"&&(e=dE(e));for(var s=this._groups,o=s.length,u=[],l=[],c=0;c<o;++c)for(var d=s[c],p=d.length,h,m=0;m<p;++m)if(h=d[m]){for(var v=e.call(h,h.__data__,m,d),w,b=qn(h,i),x=0,k=v.length;x<k;++x)(w=v[x])&&ru(w,n,i,x,v,b);u.push(v),l.push(h)}return new ir(u,l,n,i)}var nj=ao.prototype.constructor;function rj(){return new nj(this._groups,this._parents)}function ij(e,n){var i,s,o;return function(){var u=Yi(this,e),l=(this.style.removeProperty(e),Yi(this,e));return u===l?null:u===i&&l===s?o:o=n(i=u,s=l)}}function OE(e){return function(){this.style.removeProperty(e)}}function sj(e,n,i){var s,o=i+"",u;return function(){var l=Yi(this,e);return l===o?null:l===s?u:u=n(s=l,i)}}function oj(e,n,i){var s,o,u;return function(){var l=Yi(this,e),c=i(this),d=c+"";return c==null&&(d=c=(this.style.removeProperty(e),Yi(this,e))),l===d?null:l===s&&d===o?u:(o=d,u=n(s=l,c))}}function aj(e,n){var i,s,o,u="style."+n,l="end."+u,c;return function(){var d=Bn(this,e),p=d.on,h=d.value[u]==null?c||(c=OE(n)):void 0;(p!==i||o!==h)&&(s=(i=p).copy()).on(l,o=h),d.on=s}}function uj(e,n,i){var s=(e+="")=="transform"?uA:qE;return n==null?this.styleTween(e,ij(e,s)).on("end.style."+e,OE(e)):typeof n=="function"?this.styleTween(e,oj(e,s,yg(this,"style."+e,n))).each(aj(this._id,e)):this.styleTween(e,sj(e,s,n),i).on("end.style."+e,null)}function lj(e,n,i){return function(s){this.style.setProperty(e,n.call(this,s),i)}}function cj(e,n,i){var s,o;function u(){var l=n.apply(this,arguments);return l!==o&&(s=(o=l)&&lj(e,l,i)),s}return u._value=n,u}function fj(e,n,i){var s="style."+(e+="");if(arguments.length<2)return(s=this.tween(s))&&s._value;if(n==null)return this.tween(s,null);if(typeof n!="function")throw new Error;return this.tween(s,cj(e,n,i??""))}function dj(e){return function(){this.textContent=e}}function hj(e){return function(){var n=e(this);this.textContent=n??""}}function pj(e){return this.tween("text",typeof e=="function"?hj(yg(this,"text",e)):dj(e==null?"":e+""))}function mj(e){return function(n){this.textContent=e.call(this,n)}}function gj(e){var n,i;function s(){var o=e.apply(this,arguments);return o!==i&&(n=(i=o)&&mj(o)),n}return s._value=e,s}function vj(e){var n="text";if(arguments.length<1)return(n=this.tween(n))&&n._value;if(e==null)return this.tween(n,null);if(typeof e!="function")throw new Error;return this.tween(n,gj(e))}function yj(){for(var e=this._name,n=this._id,i=LE(),s=this._groups,o=s.length,u=0;u<o;++u)for(var l=s[u],c=l.length,d,p=0;p<c;++p)if(d=l[p]){var h=qn(d,n);ru(d,e,i,p,l,{time:h.time+h.delay+h.duration,delay:0,duration:h.duration,ease:h.ease})}return new ir(s,this._parents,e,i)}function wj(){var e,n,i=this,s=i._id,o=i.size();return new Promise(function(u,l){var c={value:l},d={value:function(){--o===0&&u()}};i.each(function(){var p=Bn(this,s),h=p.on;h!==e&&(n=(e=h).copy(),n._.cancel.push(c),n._.interrupt.push(c),n._.end.push(d)),p.on=n}),o===0&&u()})}var _j=0;function ir(e,n,i,s){this._groups=e,this._parents=n,this._name=i,this._id=s}function LE(){return++_j}var er=ao.prototype;ir.prototype={constructor:ir,select:ej,selectAll:tj,selectChild:er.selectChild,selectChildren:er.selectChildren,filter:GA,merge:KA,selection:rj,transition:yj,call:er.call,nodes:er.nodes,node:er.node,size:er.size,empty:er.empty,each:er.each,on:QA,attr:jA,attrTween:OA,style:uj,styleTween:fj,text:pj,textTween:vj,remove:JA,tween:EA,delay:DA,duration:BA,ease:HA,easeVarying:WA,end:wj,[Symbol.iterator]:er[Symbol.iterator]};function xj(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var Sj={time:null,delay:0,duration:250,ease:xj};function kj(e,n){for(var i;!(i=e.__transition)||!(i=i[n]);)if(!(e=e.parentNode))throw new Error(`transition ${n} not found`);return i}function Ej(e){var n,i;e instanceof ir?(n=e._id,e=e._name):(n=LE(),(i=Sj).time=gg(),e=e==null?null:e+"");for(var s=this._groups,o=s.length,u=0;u<o;++u)for(var l=s[u],c=l.length,d,p=0;p<c;++p)(d=l[p])&&ru(d,e,n,p,l,i||kj(d,n));return new ir(s,this._parents,e,n)}ao.prototype.interrupt=xA;ao.prototype.transition=Ej;const ja=e=>()=>e;function bj(e,{sourceEvent:n,target:i,transform:s,dispatch:o}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:n,enumerable:!0,configurable:!0},target:{value:i,enumerable:!0,configurable:!0},transform:{value:s,enumerable:!0,configurable:!0},_:{value:o}})}function nr(e,n,i){this.k=e,this.x=n,this.y=i}nr.prototype={constructor:nr,scale:function(e){return e===1?this:new nr(this.k*e,this.x,this.y)},translate:function(e,n){return e===0&n===0?this:new nr(this.k,this.x+this.k*e,this.y+this.k*n)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var rr=new nr(1,0,0);nr.prototype;function vc(e){e.stopImmediatePropagation()}function zs(e){e.preventDefault(),e.stopImmediatePropagation()}function Nj(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function Cj(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function ew(){return this.__zoom||rr}function Tj(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function Rj(){return navigator.maxTouchPoints||"ontouchstart"in this}function Aj(e,n,i){var s=e.invertX(n[0][0])-i[0][0],o=e.invertX(n[1][0])-i[1][0],u=e.invertY(n[0][1])-i[0][1],l=e.invertY(n[1][1])-i[1][1];return e.translate(o>s?(s+o)/2:Math.min(0,s)||Math.max(0,o),l>u?(u+l)/2:Math.min(0,u)||Math.max(0,l))}function $E(){var e=Nj,n=Cj,i=Aj,s=Tj,o=Rj,u=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],c=250,d=hA,p=eu("start","zoom","end"),h,m,v,w=500,b=150,x=0,k=10;function S(R){R.property("__zoom",ew).on("wheel.zoom",D,{passive:!1}).on("mousedown.zoom",L).on("dblclick.zoom",U).filter(o).on("touchstart.zoom",H).on("touchmove.zoom",Q).on("touchend.zoom touchcancel.zoom",ee).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}S.transform=function(R,G,B,X){var Y=R.selection?R.selection():R;Y.property("__zoom",ew),R!==Y?j(R,G,B,X):Y.interrupt().each(function(){M(this,arguments).event(X).start().zoom(null,typeof G=="function"?G.apply(this,arguments):G).end()})},S.scaleBy=function(R,G,B,X){S.scaleTo(R,function(){var Y=this.__zoom.k,q=typeof G=="function"?G.apply(this,arguments):G;return Y*q},B,X)},S.scaleTo=function(R,G,B,X){S.transform(R,function(){var Y=n.apply(this,arguments),q=this.__zoom,V=B==null?C(Y):typeof B=="function"?B.apply(this,arguments):B,I=q.invert(V),z=typeof G=="function"?G.apply(this,arguments):G;return i(T(E(q,z),V,I),Y,l)},B,X)},S.translateBy=function(R,G,B,X){S.transform(R,function(){return i(this.__zoom.translate(typeof G=="function"?G.apply(this,arguments):G,typeof B=="function"?B.apply(this,arguments):B),n.apply(this,arguments),l)},null,X)},S.translateTo=function(R,G,B,X,Y){S.transform(R,function(){var q=n.apply(this,arguments),V=this.__zoom,I=X==null?C(q):typeof X=="function"?X.apply(this,arguments):X;return i(rr.translate(I[0],I[1]).scale(V.k).translate(typeof G=="function"?-G.apply(this,arguments):-G,typeof B=="function"?-B.apply(this,arguments):-B),q,l)},X,Y)};function E(R,G){return G=Math.max(u[0],Math.min(u[1],G)),G===R.k?R:new nr(G,R.x,R.y)}function T(R,G,B){var X=G[0]-B[0]*R.k,Y=G[1]-B[1]*R.k;return X===R.x&&Y===R.y?R:new nr(R.k,X,Y)}function C(R){return[(+R[0][0]+ +R[1][0])/2,(+R[0][1]+ +R[1][1])/2]}function j(R,G,B,X){R.on("start.zoom",function(){M(this,arguments).event(X).start()}).on("interrupt.zoom end.zoom",function(){M(this,arguments).event(X).end()}).tween("zoom",function(){var Y=this,q=arguments,V=M(Y,q).event(X),I=n.apply(Y,q),z=B==null?C(I):typeof B=="function"?B.apply(Y,q):B,ae=Math.max(I[1][0]-I[0][0],I[1][1]-I[0][1]),$=Y.__zoom,K=typeof G=="function"?G.apply(Y,q):G,Z=d($.invert(z).concat(ae/$.k),K.invert(z).concat(ae/K.k));return function(oe){if(oe===1)oe=K;else{var ce=Z(oe),pe=ae/ce[2];oe=new nr(pe,z[0]-ce[0]*pe,z[1]-ce[1]*pe)}V.zoom(null,oe)}})}function M(R,G,B){return!B&&R.__zooming||new A(R,G)}function A(R,G){this.that=R,this.args=G,this.active=0,this.sourceEvent=null,this.extent=n.apply(R,G),this.taps=0}A.prototype={event:function(R){return R&&(this.sourceEvent=R),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(R,G){return this.mouse&&R!=="mouse"&&(this.mouse[1]=G.invert(this.mouse[0])),this.touch0&&R!=="touch"&&(this.touch0[1]=G.invert(this.touch0[0])),this.touch1&&R!=="touch"&&(this.touch1[1]=G.invert(this.touch1[0])),this.that.__zoom=G,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(R){var G=yn(this.that).datum();p.call(R,this.that,new bj(R,{sourceEvent:this.sourceEvent,target:S,transform:this.that.__zoom,dispatch:p}),G)}};function D(R,...G){if(!e.apply(this,arguments))return;var B=M(this,G).event(R),X=this.__zoom,Y=Math.max(u[0],Math.min(u[1],X.k*Math.pow(2,s.apply(this,arguments)))),q=jn(R);if(B.wheel)(B.mouse[0][0]!==q[0]||B.mouse[0][1]!==q[1])&&(B.mouse[1]=X.invert(B.mouse[0]=q)),clearTimeout(B.wheel);else{if(X.k===Y)return;B.mouse=[q,X.invert(q)],za(this),B.start()}zs(R),B.wheel=setTimeout(V,b),B.zoom("mouse",i(T(E(X,Y),B.mouse[0],B.mouse[1]),B.extent,l));function V(){B.wheel=null,B.end()}}function L(R,...G){if(v||!e.apply(this,arguments))return;var B=R.currentTarget,X=M(this,G,!0).event(R),Y=yn(R.view).on("mousemove.zoom",z,!0).on("mouseup.zoom",ae,!0),q=jn(R,B),V=R.clientX,I=R.clientY;kE(R.view),vc(R),X.mouse=[q,this.__zoom.invert(q)],za(this),X.start();function z($){if(zs($),!X.moved){var K=$.clientX-V,Z=$.clientY-I;X.moved=K*K+Z*Z>x}X.event($).zoom("mouse",i(T(X.that.__zoom,X.mouse[0]=jn($,B),X.mouse[1]),X.extent,l))}function ae($){Y.on("mousemove.zoom mouseup.zoom",null),EE($.view,X.moved),zs($),X.event($).end()}}function U(R,...G){if(e.apply(this,arguments)){var B=this.__zoom,X=jn(R.changedTouches?R.changedTouches[0]:R,this),Y=B.invert(X),q=B.k*(R.shiftKey?.5:2),V=i(T(E(B,q),X,Y),n.apply(this,G),l);zs(R),c>0?yn(this).transition().duration(c).call(j,V,X,R):yn(this).call(S.transform,V,X,R)}}function H(R,...G){if(e.apply(this,arguments)){var B=R.touches,X=B.length,Y=M(this,G,R.changedTouches.length===X).event(R),q,V,I,z;for(vc(R),V=0;V<X;++V)I=B[V],z=jn(I,this),z=[z,this.__zoom.invert(z),I.identifier],Y.touch0?!Y.touch1&&Y.touch0[2]!==z[2]&&(Y.touch1=z,Y.taps=0):(Y.touch0=z,q=!0,Y.taps=1+!!h);h&&(h=clearTimeout(h)),q&&(Y.taps<2&&(m=z[0],h=setTimeout(function(){h=null},w)),za(this),Y.start())}}function Q(R,...G){if(this.__zooming){var B=M(this,G).event(R),X=R.changedTouches,Y=X.length,q,V,I,z;for(zs(R),q=0;q<Y;++q)V=X[q],I=jn(V,this),B.touch0&&B.touch0[2]===V.identifier?B.touch0[0]=I:B.touch1&&B.touch1[2]===V.identifier&&(B.touch1[0]=I);if(V=B.that.__zoom,B.touch1){var ae=B.touch0[0],$=B.touch0[1],K=B.touch1[0],Z=B.touch1[1],oe=(oe=K[0]-ae[0])*oe+(oe=K[1]-ae[1])*oe,ce=(ce=Z[0]-$[0])*ce+(ce=Z[1]-$[1])*ce;V=E(V,Math.sqrt(oe/ce)),I=[(ae[0]+K[0])/2,(ae[1]+K[1])/2],z=[($[0]+Z[0])/2,($[1]+Z[1])/2]}else if(B.touch0)I=B.touch0[0],z=B.touch0[1];else return;B.zoom("touch",i(T(V,I,z),B.extent,l))}}function ee(R,...G){if(this.__zooming){var B=M(this,G).event(R),X=R.changedTouches,Y=X.length,q,V;for(vc(R),v&&clearTimeout(v),v=setTimeout(function(){v=null},w),q=0;q<Y;++q)V=X[q],B.touch0&&B.touch0[2]===V.identifier?delete B.touch0:B.touch1&&B.touch1[2]===V.identifier&&delete B.touch1;if(B.touch1&&!B.touch0&&(B.touch0=B.touch1,delete B.touch1),B.touch0)B.touch0[1]=this.__zoom.invert(B.touch0[0]);else if(B.end(),B.taps===2&&(V=jn(V,this),Math.hypot(m[0]-V[0],m[1]-V[1])<k)){var I=yn(this).on("dblclick.zoom");I&&I.apply(this,arguments)}}}return S.wheelDelta=function(R){return arguments.length?(s=typeof R=="function"?R:ja(+R),S):s},S.filter=function(R){return arguments.length?(e=typeof R=="function"?R:ja(!!R),S):e},S.touchable=function(R){return arguments.length?(o=typeof R=="function"?R:ja(!!R),S):o},S.extent=function(R){return arguments.length?(n=typeof R=="function"?R:ja([[+R[0][0],+R[0][1]],[+R[1][0],+R[1][1]]]),S):n},S.scaleExtent=function(R){return arguments.length?(u[0]=+R[0],u[1]=+R[1],S):[u[0],u[1]]},S.translateExtent=function(R){return arguments.length?(l[0][0]=+R[0][0],l[1][0]=+R[1][0],l[0][1]=+R[0][1],l[1][1]=+R[1][1],S):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},S.constrain=function(R){return arguments.length?(i=R,S):i},S.duration=function(R){return arguments.length?(c=+R,S):c},S.interpolate=function(R){return arguments.length?(d=R,S):d},S.on=function(){var R=p.on.apply(p,arguments);return R===p?S:R},S.clickDistance=function(R){return arguments.length?(x=(R=+R)*R,S):Math.sqrt(x)},S.tapDistance=function(R){return arguments.length?(k=+R,S):k},S}lE();const iu=O.createContext(null),jj=iu.Provider,sr={error001:()=>"[React Flow]: Seems like you have not used zustand provider as an ancestor. Help: https://reactflow.dev/error#001",error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The React Flow parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,n)=>`Couldn't create edge for ${e?"target":"source"} handle id: "${e?n.targetHandle:n.sourceHandle}", edge id: ${n.id}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`},DE=sr.error001();function He(e,n){const i=O.useContext(iu);if(i===null)throw new Error(DE);return cE(i,e,n)}const Et=()=>{const e=O.useContext(iu);if(e===null)throw new Error(DE);return O.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe,destroy:e.destroy}),[e])},Ij=e=>e.userSelectionActive?"none":"all";function wg({position:e,children:n,className:i,style:s,...o}){const u=He(Ij),l=`${e}`.split("-");return ie.createElement("div",{className:Mt(["react-flow__panel",i,...l]),style:{...s,pointerEvents:u},...o},n)}function Mj({proOptions:e,position:n="bottom-right"}){return e!=null&&e.hideAttribution?null:ie.createElement(wg,{position:n,className:"react-flow__attribution","data-message":"Please only hide this attribution when you are subscribed to React Flow Pro: https://reactflow.dev/pro"},ie.createElement("a",{href:"https://reactflow.dev",target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution"},"React Flow"))}const Pj=({x:e,y:n,label:i,labelStyle:s={},labelShowBg:o=!0,labelBgStyle:u={},labelBgPadding:l=[2,4],labelBgBorderRadius:c=2,children:d,className:p,...h})=>{const m=O.useRef(null),[v,w]=O.useState({x:0,y:0,width:0,height:0}),b=Mt(["react-flow__edge-textwrapper",p]);return O.useEffect(()=>{if(m.current){const x=m.current.getBBox();w({x:x.x,y:x.y,width:x.width,height:x.height})}},[i]),typeof i>"u"||!i?null:ie.createElement("g",{transform:`translate(${e-v.width/2} ${n-v.height/2})`,className:b,visibility:v.width?"visible":"hidden",...h},o&&ie.createElement("rect",{width:v.width+2*l[0],x:-l[0],y:-l[1],height:v.height+2*l[1],className:"react-flow__edge-textbg",style:u,rx:c,ry:c}),ie.createElement("text",{className:"react-flow__edge-text",y:v.height/2,dy:"0.3em",ref:m,style:s},i),d)};var qj=O.memo(Pj);const _g=e=>({width:e.offsetWidth,height:e.offsetHeight}),Qi=(e,n=0,i=1)=>Math.min(Math.max(e,n),i),xg=(e={x:0,y:0},n)=>({x:Qi(e.x,n[0][0],n[1][0]),y:Qi(e.y,n[0][1],n[1][1])}),tw=(e,n,i)=>e<n?Qi(Math.abs(e-n),1,50)/50:e>i?-Qi(Math.abs(e-i),1,50)/50:0,FE=(e,n)=>{const i=tw(e.x,35,n.width-35)*20,s=tw(e.y,35,n.height-35)*20;return[i,s]},zE=e=>{var n;return((n=e.getRootNode)==null?void 0:n.call(e))||(window==null?void 0:window.document)},BE=(e,n)=>({x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x2,n.x2),y2:Math.max(e.y2,n.y2)}),ro=({x:e,y:n,width:i,height:s})=>({x:e,y:n,x2:e+i,y2:n+s}),UE=({x:e,y:n,x2:i,y2:s})=>({x:e,y:n,width:i-e,height:s-n}),nw=e=>({...e.positionAbsolute||{x:0,y:0},width:e.width||0,height:e.height||0}),Oj=(e,n)=>UE(BE(ro(e),ro(n))),Zm=(e,n)=>{const i=Math.max(0,Math.min(e.x+e.width,n.x+n.width)-Math.max(e.x,n.x)),s=Math.max(0,Math.min(e.y+e.height,n.y+n.height)-Math.max(e.y,n.y));return Math.ceil(i*s)},Lj=e=>wn(e.width)&&wn(e.height)&&wn(e.x)&&wn(e.y),wn=e=>!isNaN(e)&&isFinite(e),ut=Symbol.for("internals"),HE=["Enter"," ","Escape"],$j=(e,n)=>{},Dj=e=>"nativeEvent"in e;function Jm(e){var o,u;const n=Dj(e)?e.nativeEvent:e,i=((u=(o=n.composedPath)==null?void 0:o.call(n))==null?void 0:u[0])||e.target;return["INPUT","SELECT","TEXTAREA"].includes(i==null?void 0:i.nodeName)||(i==null?void 0:i.hasAttribute("contenteditable"))||!!(i!=null&&i.closest(".nokey"))}const VE=e=>"clientX"in e,qr=(e,n)=>{var u,l;const i=VE(e),s=i?e.clientX:(u=e.touches)==null?void 0:u[0].clientX,o=i?e.clientY:(l=e.touches)==null?void 0:l[0].clientY;return{x:s-((n==null?void 0:n.left)??0),y:o-((n==null?void 0:n.top)??0)}},Ka=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0},lo=({id:e,path:n,labelX:i,labelY:s,label:o,labelStyle:u,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:p,style:h,markerEnd:m,markerStart:v,interactionWidth:w=20})=>ie.createElement(ie.Fragment,null,ie.createElement("path",{id:e,style:h,d:n,fill:"none",className:"react-flow__edge-path",markerEnd:m,markerStart:v}),w&&ie.createElement("path",{d:n,fill:"none",strokeOpacity:0,strokeWidth:w,className:"react-flow__edge-interaction"}),o&&wn(i)&&wn(s)?ie.createElement(qj,{x:i,y:s,label:o,labelStyle:u,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:p}):null);lo.displayName="BaseEdge";function Bs(e,n,i){return i===void 0?i:s=>{const o=n().edges.find(u=>u.id===e);o&&i(s,{...o})}}function WE({sourceX:e,sourceY:n,targetX:i,targetY:s}){const o=Math.abs(i-e)/2,u=i<e?i+o:i-o,l=Math.abs(s-n)/2,c=s<n?s+l:s-l;return[u,c,o,l]}function GE({sourceX:e,sourceY:n,targetX:i,targetY:s,sourceControlX:o,sourceControlY:u,targetControlX:l,targetControlY:c}){const d=e*.125+o*.375+l*.375+i*.125,p=n*.125+u*.375+c*.375+s*.125,h=Math.abs(d-e),m=Math.abs(p-n);return[d,p,h,m]}var si;(function(e){e.Strict="strict",e.Loose="loose"})(si||(si={}));var ti;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(ti||(ti={}));var io;(function(e){e.Partial="partial",e.Full="full"})(io||(io={}));var Pr;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(Pr||(Pr={}));var Ya;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(Ya||(Ya={}));var Ce;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})(Ce||(Ce={}));function rw({pos:e,x1:n,y1:i,x2:s,y2:o}){return e===Ce.Left||e===Ce.Right?[.5*(n+s),i]:[n,.5*(i+o)]}function KE({sourceX:e,sourceY:n,sourcePosition:i=Ce.Bottom,targetX:s,targetY:o,targetPosition:u=Ce.Top}){const[l,c]=rw({pos:i,x1:e,y1:n,x2:s,y2:o}),[d,p]=rw({pos:u,x1:s,y1:o,x2:e,y2:n}),[h,m,v,w]=GE({sourceX:e,sourceY:n,targetX:s,targetY:o,sourceControlX:l,sourceControlY:c,targetControlX:d,targetControlY:p});return[`M${e},${n} C${l},${c} ${d},${p} ${s},${o}`,h,m,v,w]}const Sg=O.memo(({sourceX:e,sourceY:n,targetX:i,targetY:s,sourcePosition:o=Ce.Bottom,targetPosition:u=Ce.Top,label:l,labelStyle:c,labelShowBg:d,labelBgStyle:p,labelBgPadding:h,labelBgBorderRadius:m,style:v,markerEnd:w,markerStart:b,interactionWidth:x})=>{const[k,S,E]=KE({sourceX:e,sourceY:n,sourcePosition:o,targetX:i,targetY:s,targetPosition:u});return ie.createElement(lo,{path:k,labelX:S,labelY:E,label:l,labelStyle:c,labelShowBg:d,labelBgStyle:p,labelBgPadding:h,labelBgBorderRadius:m,style:v,markerEnd:w,markerStart:b,interactionWidth:x})});Sg.displayName="SimpleBezierEdge";const iw={[Ce.Left]:{x:-1,y:0},[Ce.Right]:{x:1,y:0},[Ce.Top]:{x:0,y:-1},[Ce.Bottom]:{x:0,y:1}},Fj=({source:e,sourcePosition:n=Ce.Bottom,target:i})=>n===Ce.Left||n===Ce.Right?e.x<i.x?{x:1,y:0}:{x:-1,y:0}:e.y<i.y?{x:0,y:1}:{x:0,y:-1},sw=(e,n)=>Math.sqrt(Math.pow(n.x-e.x,2)+Math.pow(n.y-e.y,2));function zj({source:e,sourcePosition:n=Ce.Bottom,target:i,targetPosition:s=Ce.Top,center:o,offset:u}){const l=iw[n],c=iw[s],d={x:e.x+l.x*u,y:e.y+l.y*u},p={x:i.x+c.x*u,y:i.y+c.y*u},h=Fj({source:d,sourcePosition:n,target:p}),m=h.x!==0?"x":"y",v=h[m];let w=[],b,x;const k={x:0,y:0},S={x:0,y:0},[E,T,C,j]=WE({sourceX:e.x,sourceY:e.y,targetX:i.x,targetY:i.y});if(l[m]*c[m]===-1){b=o.x??E,x=o.y??T;const A=[{x:b,y:d.y},{x:b,y:p.y}],D=[{x:d.x,y:x},{x:p.x,y:x}];l[m]===v?w=m==="x"?A:D:w=m==="x"?D:A}else{const A=[{x:d.x,y:p.y}],D=[{x:p.x,y:d.y}];if(m==="x"?w=l.x===v?D:A:w=l.y===v?A:D,n===s){const ee=Math.abs(e[m]-i[m]);if(ee<=u){const R=Math.min(u-1,u-ee);l[m]===v?k[m]=(d[m]>e[m]?-1:1)*R:S[m]=(p[m]>i[m]?-1:1)*R}}if(n!==s){const ee=m==="x"?"y":"x",R=l[m]===c[ee],G=d[ee]>p[ee],B=d[ee]<p[ee];(l[m]===1&&(!R&&G||R&&B)||l[m]!==1&&(!R&&B||R&&G))&&(w=m==="x"?A:D)}const L={x:d.x+k.x,y:d.y+k.y},U={x:p.x+S.x,y:p.y+S.y},H=Math.max(Math.abs(L.x-w[0].x),Math.abs(U.x-w[0].x)),Q=Math.max(Math.abs(L.y-w[0].y),Math.abs(U.y-w[0].y));H>=Q?(b=(L.x+U.x)/2,x=w[0].y):(b=w[0].x,x=(L.y+U.y)/2)}return[[e,{x:d.x+k.x,y:d.y+k.y},...w,{x:p.x+S.x,y:p.y+S.y},i],b,x,C,j]}function Bj(e,n,i,s){const o=Math.min(sw(e,n)/2,sw(n,i)/2,s),{x:u,y:l}=n;if(e.x===u&&u===i.x||e.y===l&&l===i.y)return`L${u} ${l}`;if(e.y===l){const p=e.x<i.x?-1:1,h=e.y<i.y?1:-1;return`L ${u+o*p},${l}Q ${u},${l} ${u},${l+o*h}`}const c=e.x<i.x?1:-1,d=e.y<i.y?-1:1;return`L ${u},${l+o*d}Q ${u},${l} ${u+o*c},${l}`}function eg({sourceX:e,sourceY:n,sourcePosition:i=Ce.Bottom,targetX:s,targetY:o,targetPosition:u=Ce.Top,borderRadius:l=5,centerX:c,centerY:d,offset:p=20}){const[h,m,v,w,b]=zj({source:{x:e,y:n},sourcePosition:i,target:{x:s,y:o},targetPosition:u,center:{x:c,y:d},offset:p});return[h.reduce((k,S,E)=>{let T="";return E>0&&E<h.length-1?T=Bj(h[E-1],S,h[E+1],l):T=`${E===0?"M":"L"}${S.x} ${S.y}`,k+=T,k},""),m,v,w,b]}const su=O.memo(({sourceX:e,sourceY:n,targetX:i,targetY:s,label:o,labelStyle:u,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:p,style:h,sourcePosition:m=Ce.Bottom,targetPosition:v=Ce.Top,markerEnd:w,markerStart:b,pathOptions:x,interactionWidth:k})=>{const[S,E,T]=eg({sourceX:e,sourceY:n,sourcePosition:m,targetX:i,targetY:s,targetPosition:v,borderRadius:x==null?void 0:x.borderRadius,offset:x==null?void 0:x.offset});return ie.createElement(lo,{path:S,labelX:E,labelY:T,label:o,labelStyle:u,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:p,style:h,markerEnd:w,markerStart:b,interactionWidth:k})});su.displayName="SmoothStepEdge";const kg=O.memo(e=>{var n;return ie.createElement(su,{...e,pathOptions:O.useMemo(()=>{var i;return{borderRadius:0,offset:(i=e.pathOptions)==null?void 0:i.offset}},[(n=e.pathOptions)==null?void 0:n.offset])})});kg.displayName="StepEdge";function Uj({sourceX:e,sourceY:n,targetX:i,targetY:s}){const[o,u,l,c]=WE({sourceX:e,sourceY:n,targetX:i,targetY:s});return[`M ${e},${n}L ${i},${s}`,o,u,l,c]}const Eg=O.memo(({sourceX:e,sourceY:n,targetX:i,targetY:s,label:o,labelStyle:u,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:p,style:h,markerEnd:m,markerStart:v,interactionWidth:w})=>{const[b,x,k]=Uj({sourceX:e,sourceY:n,targetX:i,targetY:s});return ie.createElement(lo,{path:b,labelX:x,labelY:k,label:o,labelStyle:u,labelShowBg:l,labelBgStyle:c,labelBgPadding:d,labelBgBorderRadius:p,style:h,markerEnd:m,markerStart:v,interactionWidth:w})});Eg.displayName="StraightEdge";function Ia(e,n){return e>=0?.5*e:n*25*Math.sqrt(-e)}function ow({pos:e,x1:n,y1:i,x2:s,y2:o,c:u}){switch(e){case Ce.Left:return[n-Ia(n-s,u),i];case Ce.Right:return[n+Ia(s-n,u),i];case Ce.Top:return[n,i-Ia(i-o,u)];case Ce.Bottom:return[n,i+Ia(o-i,u)]}}function YE({sourceX:e,sourceY:n,sourcePosition:i=Ce.Bottom,targetX:s,targetY:o,targetPosition:u=Ce.Top,curvature:l=.25}){const[c,d]=ow({pos:i,x1:e,y1:n,x2:s,y2:o,c:l}),[p,h]=ow({pos:u,x1:s,y1:o,x2:e,y2:n,c:l}),[m,v,w,b]=GE({sourceX:e,sourceY:n,targetX:s,targetY:o,sourceControlX:c,sourceControlY:d,targetControlX:p,targetControlY:h});return[`M${e},${n} C${c},${d} ${p},${h} ${s},${o}`,m,v,w,b]}const Xa=O.memo(({sourceX:e,sourceY:n,targetX:i,targetY:s,sourcePosition:o=Ce.Bottom,targetPosition:u=Ce.Top,label:l,labelStyle:c,labelShowBg:d,labelBgStyle:p,labelBgPadding:h,labelBgBorderRadius:m,style:v,markerEnd:w,markerStart:b,pathOptions:x,interactionWidth:k})=>{const[S,E,T]=YE({sourceX:e,sourceY:n,sourcePosition:o,targetX:i,targetY:s,targetPosition:u,curvature:x==null?void 0:x.curvature});return ie.createElement(lo,{path:S,labelX:E,labelY:T,label:l,labelStyle:c,labelShowBg:d,labelBgStyle:p,labelBgPadding:h,labelBgBorderRadius:m,style:v,markerEnd:w,markerStart:b,interactionWidth:k})});Xa.displayName="BezierEdge";const bg=O.createContext(null),Hj=bg.Provider;bg.Consumer;const Vj=()=>O.useContext(bg),Wj=e=>"id"in e&&"source"in e&&"target"in e,Gj=({source:e,sourceHandle:n,target:i,targetHandle:s})=>`reactflow__edge-${e}${n||""}-${i}${s||""}`,tg=(e,n)=>typeof e>"u"?"":typeof e=="string"?e:`${n?`${n}__`:""}${Object.keys(e).sort().map(s=>`${s}=${e[s]}`).join("&")}`,Kj=(e,n)=>n.some(i=>i.source===e.source&&i.target===e.target&&(i.sourceHandle===e.sourceHandle||!i.sourceHandle&&!e.sourceHandle)&&(i.targetHandle===e.targetHandle||!i.targetHandle&&!e.targetHandle)),Yj=(e,n)=>{if(!e.source||!e.target)return n;let i;return Wj(e)?i={...e}:i={...e,id:Gj(e)},Kj(i,n)?n:n.concat(i)},ng=({x:e,y:n},[i,s,o],u,[l,c])=>{const d={x:(e-i)/o,y:(n-s)/o};return u?{x:l*Math.round(d.x/l),y:c*Math.round(d.y/c)}:d},XE=({x:e,y:n},[i,s,o])=>({x:e*o+i,y:n*o+s}),ri=(e,n=[0,0])=>{if(!e)return{x:0,y:0,positionAbsolute:{x:0,y:0}};const i=(e.width??0)*n[0],s=(e.height??0)*n[1],o={x:e.position.x-i,y:e.position.y-s};return{...o,positionAbsolute:e.positionAbsolute?{x:e.positionAbsolute.x-i,y:e.positionAbsolute.y-s}:o}},ou=(e,n=[0,0])=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const i=e.reduce((s,o)=>{const{x:u,y:l}=ri(o,n).positionAbsolute;return BE(s,ro({x:u,y:l,width:o.width||0,height:o.height||0}))},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return UE(i)},QE=(e,n,[i,s,o]=[0,0,1],u=!1,l=!1,c=[0,0])=>{const d={x:(n.x-i)/o,y:(n.y-s)/o,width:n.width/o,height:n.height/o},p=[];return e.forEach(h=>{const{width:m,height:v,selectable:w=!0,hidden:b=!1}=h;if(l&&!w||b)return!1;const{positionAbsolute:x}=ri(h,c),k={x:x.x,y:x.y,width:m||0,height:v||0},S=Zm(d,k),E=typeof m>"u"||typeof v>"u"||m===null||v===null,T=u&&S>0,C=(m||0)*(v||0);(E||T||S>=C||h.dragging)&&p.push(h)}),p},ZE=(e,n)=>{const i=e.map(s=>s.id);return n.filter(s=>i.includes(s.source)||i.includes(s.target))},JE=(e,n,i,s,o,u=.1)=>{const l=n/(e.width*(1+u)),c=i/(e.height*(1+u)),d=Math.min(l,c),p=Qi(d,s,o),h=e.x+e.width/2,m=e.y+e.height/2,v=n/2-h*p,w=i/2-m*p;return{x:v,y:w,zoom:p}},Jr=(e,n=0)=>e.transition().duration(n);function aw(e,n,i,s){return(n[i]||[]).reduce((o,u)=>{var l,c;return`${e.id}-${u.id}-${i}`!==s&&o.push({id:u.id||null,type:i,nodeId:e.id,x:(((l=e.positionAbsolute)==null?void 0:l.x)??0)+u.x+u.width/2,y:(((c=e.positionAbsolute)==null?void 0:c.y)??0)+u.y+u.height/2}),o},[])}function Xj(e,n,i,s,o,u){const{x:l,y:c}=qr(e),p=n.elementsFromPoint(l,c).find(b=>b.classList.contains("react-flow__handle"));if(p){const b=p.getAttribute("data-nodeid");if(b){const x=Ng(void 0,p),k=p.getAttribute("data-handleid"),S=u({nodeId:b,id:k,type:x});if(S){const E=o.find(T=>T.nodeId===b&&T.type===x&&T.id===k);return{handle:{id:k,type:x,nodeId:b,x:(E==null?void 0:E.x)||i.x,y:(E==null?void 0:E.y)||i.y},validHandleResult:S}}}}let h=[],m=1/0;if(o.forEach(b=>{const x=Math.sqrt((b.x-i.x)**2+(b.y-i.y)**2);if(x<=s){const k=u(b);x<=m&&(x<m?h=[{handle:b,validHandleResult:k}]:x===m&&h.push({handle:b,validHandleResult:k}),m=x)}}),!h.length)return{handle:null,validHandleResult:eb()};if(h.length===1)return h[0];const v=h.some(({validHandleResult:b})=>b.isValid),w=h.some(({handle:b})=>b.type==="target");return h.find(({handle:b,validHandleResult:x})=>w?b.type==="target":v?x.isValid:!0)||h[0]}const Qj={source:null,target:null,sourceHandle:null,targetHandle:null},eb=()=>({handleDomNode:null,isValid:!1,connection:Qj,endHandle:null});function tb(e,n,i,s,o,u,l){const c=o==="target",d=l.querySelector(`.react-flow__handle[data-id="${e==null?void 0:e.nodeId}-${e==null?void 0:e.id}-${e==null?void 0:e.type}"]`),p={...eb(),handleDomNode:d};if(d){const h=Ng(void 0,d),m=d.getAttribute("data-nodeid"),v=d.getAttribute("data-handleid"),w=d.classList.contains("connectable"),b=d.classList.contains("connectableend"),x={source:c?m:i,sourceHandle:c?v:s,target:c?i:m,targetHandle:c?s:v};p.connection=x,w&&b&&(n===si.Strict?c&&h==="source"||!c&&h==="target":m!==i||v!==s)&&(p.endHandle={nodeId:m,handleId:v,type:h},p.isValid=u(x))}return p}function Zj({nodes:e,nodeId:n,handleId:i,handleType:s}){return e.reduce((o,u)=>{if(u[ut]){const{handleBounds:l}=u[ut];let c=[],d=[];l&&(c=aw(u,l,"source",`${n}-${i}-${s}`),d=aw(u,l,"target",`${n}-${i}-${s}`)),o.push(...c,...d)}return o},[])}function Ng(e,n){return e||(n!=null&&n.classList.contains("target")?"target":n!=null&&n.classList.contains("source")?"source":null)}function yc(e){e==null||e.classList.remove("valid","connecting","react-flow__handle-valid","react-flow__handle-connecting")}function Jj(e,n){let i=null;return n?i="valid":e&&!n&&(i="invalid"),i}function nb({event:e,handleId:n,nodeId:i,onConnect:s,isTarget:o,getState:u,setState:l,isValidConnection:c,edgeUpdaterType:d,onReconnectEnd:p}){const h=zE(e.target),{connectionMode:m,domNode:v,autoPanOnConnect:w,connectionRadius:b,onConnectStart:x,panBy:k,getNodes:S,cancelConnection:E}=u();let T=0,C;const{x:j,y:M}=qr(e),A=h==null?void 0:h.elementFromPoint(j,M),D=Ng(d,A),L=v==null?void 0:v.getBoundingClientRect();if(!L||!D)return;let U,H=qr(e,L),Q=!1,ee=null,R=!1,G=null;const B=Zj({nodes:S(),nodeId:i,handleId:n,handleType:D}),X=()=>{if(!w)return;const[V,I]=FE(H,L);k({x:V,y:I}),T=requestAnimationFrame(X)};l({connectionPosition:H,connectionStatus:null,connectionNodeId:i,connectionHandleId:n,connectionHandleType:D,connectionStartHandle:{nodeId:i,handleId:n,type:D},connectionEndHandle:null}),x==null||x(e,{nodeId:i,handleId:n,handleType:D});function Y(V){const{transform:I}=u();H=qr(V,L);const{handle:z,validHandleResult:ae}=Xj(V,h,ng(H,I,!1,[1,1]),b,B,$=>tb($,m,i,n,o?"target":"source",c,h));if(C=z,Q||(X(),Q=!0),G=ae.handleDomNode,ee=ae.connection,R=ae.isValid,l({connectionPosition:C&&R?XE({x:C.x,y:C.y},I):H,connectionStatus:Jj(!!C,R),connectionEndHandle:ae.endHandle}),!C&&!R&&!G)return yc(U);ee.source!==ee.target&&G&&(yc(U),U=G,G.classList.add("connecting","react-flow__handle-connecting"),G.classList.toggle("valid",R),G.classList.toggle("react-flow__handle-valid",R))}function q(V){var I,z;(C||G)&&ee&&R&&(s==null||s(ee)),(z=(I=u()).onConnectEnd)==null||z.call(I,V),d&&(p==null||p(V)),yc(U),E(),cancelAnimationFrame(T),Q=!1,R=!1,ee=null,G=null,h.removeEventListener("mousemove",Y),h.removeEventListener("mouseup",q),h.removeEventListener("touchmove",Y),h.removeEventListener("touchend",q)}h.addEventListener("mousemove",Y),h.addEventListener("mouseup",q),h.addEventListener("touchmove",Y),h.addEventListener("touchend",q)}const uw=()=>!0,eI=e=>({connectionStartHandle:e.connectionStartHandle,connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName}),tI=(e,n,i)=>s=>{const{connectionStartHandle:o,connectionEndHandle:u,connectionClickStartHandle:l}=s;return{connecting:(o==null?void 0:o.nodeId)===e&&(o==null?void 0:o.handleId)===n&&(o==null?void 0:o.type)===i||(u==null?void 0:u.nodeId)===e&&(u==null?void 0:u.handleId)===n&&(u==null?void 0:u.type)===i,clickConnecting:(l==null?void 0:l.nodeId)===e&&(l==null?void 0:l.handleId)===n&&(l==null?void 0:l.type)===i}},rb=O.forwardRef(({type:e="source",position:n=Ce.Top,isValidConnection:i,isConnectable:s=!0,isConnectableStart:o=!0,isConnectableEnd:u=!0,id:l,onConnect:c,children:d,className:p,onMouseDown:h,onTouchStart:m,...v},w)=>{var L,U;const b=l||null,x=e==="target",k=Et(),S=Vj(),{connectOnClick:E,noPanClassName:T}=He(eI,kt),{connecting:C,clickConnecting:j}=He(tI(S,b,e),kt);S||(U=(L=k.getState()).onError)==null||U.call(L,"010",sr.error010());const M=H=>{const{defaultEdgeOptions:Q,onConnect:ee,hasDefaultEdges:R}=k.getState(),G={...Q,...H};if(R){const{edges:B,setEdges:X}=k.getState();X(Yj(G,B))}ee==null||ee(G),c==null||c(G)},A=H=>{if(!S)return;const Q=VE(H);o&&(Q&&H.button===0||!Q)&&nb({event:H,handleId:b,nodeId:S,onConnect:M,isTarget:x,getState:k.getState,setState:k.setState,isValidConnection:i||k.getState().isValidConnection||uw}),Q?h==null||h(H):m==null||m(H)},D=H=>{const{onClickConnectStart:Q,onClickConnectEnd:ee,connectionClickStartHandle:R,connectionMode:G,isValidConnection:B}=k.getState();if(!S||!R&&!o)return;if(!R){Q==null||Q(H,{nodeId:S,handleId:b,handleType:e}),k.setState({connectionClickStartHandle:{nodeId:S,type:e,handleId:b}});return}const X=zE(H.target),Y=i||B||uw,{connection:q,isValid:V}=tb({nodeId:S,id:b,type:e},G,R.nodeId,R.handleId||null,R.type,Y,X);V&&M(q),ee==null||ee(H),k.setState({connectionClickStartHandle:null})};return ie.createElement("div",{"data-handleid":b,"data-nodeid":S,"data-handlepos":n,"data-id":`${S}-${b}-${e}`,className:Mt(["react-flow__handle",`react-flow__handle-${n}`,"nodrag",T,p,{source:!x,target:x,connectable:s,connectablestart:o,connectableend:u,connecting:j,connectionindicator:s&&(o&&!C||u&&C)}]),onMouseDown:A,onTouchStart:A,onClick:E?D:void 0,ref:w,...v},d)});rb.displayName="Handle";var Zi=O.memo(rb);const ib=({data:e,isConnectable:n,targetPosition:i=Ce.Top,sourcePosition:s=Ce.Bottom})=>ie.createElement(ie.Fragment,null,ie.createElement(Zi,{type:"target",position:i,isConnectable:n}),e==null?void 0:e.label,ie.createElement(Zi,{type:"source",position:s,isConnectable:n}));ib.displayName="DefaultNode";var rg=O.memo(ib);const sb=({data:e,isConnectable:n,sourcePosition:i=Ce.Bottom})=>ie.createElement(ie.Fragment,null,e==null?void 0:e.label,ie.createElement(Zi,{type:"source",position:i,isConnectable:n}));sb.displayName="InputNode";var ob=O.memo(sb);const ab=({data:e,isConnectable:n,targetPosition:i=Ce.Top})=>ie.createElement(ie.Fragment,null,ie.createElement(Zi,{type:"target",position:i,isConnectable:n}),e==null?void 0:e.label);ab.displayName="OutputNode";var ub=O.memo(ab);const Cg=()=>null;Cg.displayName="GroupNode";const nI=e=>({selectedNodes:e.getNodes().filter(n=>n.selected),selectedEdges:e.edges.filter(n=>n.selected).map(n=>({...n}))}),Ma=e=>e.id;function rI(e,n){return kt(e.selectedNodes.map(Ma),n.selectedNodes.map(Ma))&&kt(e.selectedEdges.map(Ma),n.selectedEdges.map(Ma))}const lb=O.memo(({onSelectionChange:e})=>{const n=Et(),{selectedNodes:i,selectedEdges:s}=He(nI,rI);return O.useEffect(()=>{const o={nodes:i,edges:s};e==null||e(o),n.getState().onSelectionChange.forEach(u=>u(o))},[i,s,e]),null});lb.displayName="SelectionListener";const iI=e=>!!e.onSelectionChange;function sI({onSelectionChange:e}){const n=He(iI);return e||n?ie.createElement(lb,{onSelectionChange:e}):null}const oI=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset});function $i(e,n){O.useEffect(()=>{typeof e<"u"&&n(e)},[e])}function Oe(e,n,i){O.useEffect(()=>{typeof n<"u"&&i({[e]:n})},[n])}const aI=({nodes:e,edges:n,defaultNodes:i,defaultEdges:s,onConnect:o,onConnectStart:u,onConnectEnd:l,onClickConnectStart:c,onClickConnectEnd:d,nodesDraggable:p,nodesConnectable:h,nodesFocusable:m,edgesFocusable:v,edgesUpdatable:w,elevateNodesOnSelect:b,minZoom:x,maxZoom:k,nodeExtent:S,onNodesChange:E,onEdgesChange:T,elementsSelectable:C,connectionMode:j,snapGrid:M,snapToGrid:A,translateExtent:D,connectOnClick:L,defaultEdgeOptions:U,fitView:H,fitViewOptions:Q,onNodesDelete:ee,onEdgesDelete:R,onNodeDrag:G,onNodeDragStart:B,onNodeDragStop:X,onSelectionDrag:Y,onSelectionDragStart:q,onSelectionDragStop:V,noPanClassName:I,nodeOrigin:z,rfId:ae,autoPanOnConnect:$,autoPanOnNodeDrag:K,onError:Z,connectionRadius:oe,isValidConnection:ce,nodeDragThreshold:pe})=>{const{setNodes:ge,setEdges:Me,setDefaultNodesAndEdges:Ie,setMinZoom:Pe,setMaxZoom:je,setTranslateExtent:be,setNodeExtent:Ve,reset:ye}=He(oI,kt),we=Et();return O.useEffect(()=>{const Be=s==null?void 0:s.map(st=>({...st,...U}));return Ie(i,Be),()=>{ye()}},[]),Oe("defaultEdgeOptions",U,we.setState),Oe("connectionMode",j,we.setState),Oe("onConnect",o,we.setState),Oe("onConnectStart",u,we.setState),Oe("onConnectEnd",l,we.setState),Oe("onClickConnectStart",c,we.setState),Oe("onClickConnectEnd",d,we.setState),Oe("nodesDraggable",p,we.setState),Oe("nodesConnectable",h,we.setState),Oe("nodesFocusable",m,we.setState),Oe("edgesFocusable",v,we.setState),Oe("edgesUpdatable",w,we.setState),Oe("elementsSelectable",C,we.setState),Oe("elevateNodesOnSelect",b,we.setState),Oe("snapToGrid",A,we.setState),Oe("snapGrid",M,we.setState),Oe("onNodesChange",E,we.setState),Oe("onEdgesChange",T,we.setState),Oe("connectOnClick",L,we.setState),Oe("fitViewOnInit",H,we.setState),Oe("fitViewOnInitOptions",Q,we.setState),Oe("onNodesDelete",ee,we.setState),Oe("onEdgesDelete",R,we.setState),Oe("onNodeDrag",G,we.setState),Oe("onNodeDragStart",B,we.setState),Oe("onNodeDragStop",X,we.setState),Oe("onSelectionDrag",Y,we.setState),Oe("onSelectionDragStart",q,we.setState),Oe("onSelectionDragStop",V,we.setState),Oe("noPanClassName",I,we.setState),Oe("nodeOrigin",z,we.setState),Oe("rfId",ae,we.setState),Oe("autoPanOnConnect",$,we.setState),Oe("autoPanOnNodeDrag",K,we.setState),Oe("onError",Z,we.setState),Oe("connectionRadius",oe,we.setState),Oe("isValidConnection",ce,we.setState),Oe("nodeDragThreshold",pe,we.setState),$i(e,ge),$i(n,Me),$i(x,Pe),$i(k,je),$i(D,be),$i(S,Ve),null},lw={display:"none"},uI={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},cb="react-flow__node-desc",fb="react-flow__edge-desc",lI="react-flow__aria-live",cI=e=>e.ariaLiveMessage;function fI({rfId:e}){const n=He(cI);return ie.createElement("div",{id:`${lI}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:uI},n)}function dI({rfId:e,disableKeyboardA11y:n}){return ie.createElement(ie.Fragment,null,ie.createElement("div",{id:`${cb}-${e}`,style:lw},"Press enter or space to select a node.",!n&&"You can then use the arrow keys to move the node around."," Press delete to remove it and escape to cancel."," "),ie.createElement("div",{id:`${fb}-${e}`,style:lw},"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel."),!n&&ie.createElement(fI,{rfId:e}))}var so=(e=null,n={actInsideInputWithModifier:!0})=>{const[i,s]=O.useState(!1),o=O.useRef(!1),u=O.useRef(new Set([])),[l,c]=O.useMemo(()=>{if(e!==null){const p=(Array.isArray(e)?e:[e]).filter(m=>typeof m=="string").map(m=>m.split("+")),h=p.reduce((m,v)=>m.concat(...v),[]);return[p,h]}return[[],[]]},[e]);return O.useEffect(()=>{const d=typeof document<"u"?document:null,p=(n==null?void 0:n.target)||d;if(e!==null){const h=w=>{if(o.current=w.ctrlKey||w.metaKey||w.shiftKey,(!o.current||o.current&&!n.actInsideInputWithModifier)&&Jm(w))return!1;const x=fw(w.code,c);u.current.add(w[x]),cw(l,u.current,!1)&&(w.preventDefault(),s(!0))},m=w=>{if((!o.current||o.current&&!n.actInsideInputWithModifier)&&Jm(w))return!1;const x=fw(w.code,c);cw(l,u.current,!0)?(s(!1),u.current.clear()):u.current.delete(w[x]),w.key==="Meta"&&u.current.clear(),o.current=!1},v=()=>{u.current.clear(),s(!1)};return p==null||p.addEventListener("keydown",h),p==null||p.addEventListener("keyup",m),window.addEventListener("blur",v),()=>{p==null||p.removeEventListener("keydown",h),p==null||p.removeEventListener("keyup",m),window.removeEventListener("blur",v)}}},[e,s]),i};function cw(e,n,i){return e.filter(s=>i||s.length===n.size).some(s=>s.every(o=>n.has(o)))}function fw(e,n){return n.includes(e)?"code":"key"}function db(e,n,i,s){var c,d;const o=e.parentNode||e.parentId;if(!o)return i;const u=n.get(o),l=ri(u,s);return db(u,n,{x:(i.x??0)+l.x,y:(i.y??0)+l.y,z:(((c=u[ut])==null?void 0:c.z)??0)>(i.z??0)?((d=u[ut])==null?void 0:d.z)??0:i.z??0},s)}function hb(e,n,i){e.forEach(s=>{var u;const o=s.parentNode||s.parentId;if(o&&!e.has(o))throw new Error(`Parent node ${o} not found`);if(o||i!=null&&i[s.id]){const{x:l,y:c,z:d}=db(s,e,{...s.position,z:((u=s[ut])==null?void 0:u.z)??0},n);s.positionAbsolute={x:l,y:c},s[ut].z=d,i!=null&&i[s.id]&&(s[ut].isParent=!0)}})}function wc(e,n,i,s){const o=new Map,u={},l=s?1e3:0;return e.forEach(c=>{var w;const d=(wn(c.zIndex)?c.zIndex:0)+(c.selected?l:0),p=n.get(c.id),h={...c,positionAbsolute:{x:c.position.x,y:c.position.y}},m=c.parentNode||c.parentId;m&&(u[m]=!0);const v=(p==null?void 0:p.type)&&(p==null?void 0:p.type)!==c.type;Object.defineProperty(h,ut,{enumerable:!1,value:{handleBounds:v||(w=p==null?void 0:p[ut])==null?void 0:w.handleBounds,z:d}}),o.set(c.id,h)}),hb(o,i,u),o}function pb(e,n={}){const{getNodes:i,width:s,height:o,minZoom:u,maxZoom:l,d3Zoom:c,d3Selection:d,fitViewOnInitDone:p,fitViewOnInit:h,nodeOrigin:m}=e(),v=n.initial&&!p&&h;if(c&&d&&(v||!n.initial)){const b=i().filter(k=>{var E;const S=n.includeHiddenNodes?k.width&&k.height:!k.hidden;return(E=n.nodes)!=null&&E.length?S&&n.nodes.some(T=>T.id===k.id):S}),x=b.every(k=>k.width&&k.height);if(b.length>0&&x){const k=ou(b,m),{x:S,y:E,zoom:T}=JE(k,s,o,n.minZoom??u,n.maxZoom??l,n.padding??.1),C=rr.translate(S,E).scale(T);return typeof n.duration=="number"&&n.duration>0?c.transform(Jr(d,n.duration),C):c.transform(d,C),!0}}return!1}function hI(e,n){return e.forEach(i=>{const s=n.get(i.id);s&&n.set(s.id,{...s,[ut]:s[ut],selected:i.selected})}),new Map(n)}function pI(e,n){return n.map(i=>{const s=e.find(o=>o.id===i.id);return s&&(i.selected=s.selected),i})}function Pa({changedNodes:e,changedEdges:n,get:i,set:s}){const{nodeInternals:o,edges:u,onNodesChange:l,onEdgesChange:c,hasDefaultNodes:d,hasDefaultEdges:p}=i();e!=null&&e.length&&(d&&s({nodeInternals:hI(e,o)}),l==null||l(e)),n!=null&&n.length&&(p&&s({edges:pI(n,u)}),c==null||c(n))}const Di=()=>{},mI={zoomIn:Di,zoomOut:Di,zoomTo:Di,getZoom:()=>1,setViewport:Di,getViewport:()=>({x:0,y:0,zoom:1}),fitView:()=>!1,setCenter:Di,fitBounds:Di,project:e=>e,screenToFlowPosition:e=>e,flowToScreenPosition:e=>e,viewportInitialized:!1},gI=e=>({d3Zoom:e.d3Zoom,d3Selection:e.d3Selection}),vI=()=>{const e=Et(),{d3Zoom:n,d3Selection:i}=He(gI,kt);return O.useMemo(()=>i&&n?{zoomIn:o=>n.scaleBy(Jr(i,o==null?void 0:o.duration),1.2),zoomOut:o=>n.scaleBy(Jr(i,o==null?void 0:o.duration),1/1.2),zoomTo:(o,u)=>n.scaleTo(Jr(i,u==null?void 0:u.duration),o),getZoom:()=>e.getState().transform[2],setViewport:(o,u)=>{const[l,c,d]=e.getState().transform,p=rr.translate(o.x??l,o.y??c).scale(o.zoom??d);n.transform(Jr(i,u==null?void 0:u.duration),p)},getViewport:()=>{const[o,u,l]=e.getState().transform;return{x:o,y:u,zoom:l}},fitView:o=>pb(e.getState,o),setCenter:(o,u,l)=>{const{width:c,height:d,maxZoom:p}=e.getState(),h=typeof(l==null?void 0:l.zoom)<"u"?l.zoom:p,m=c/2-o*h,v=d/2-u*h,w=rr.translate(m,v).scale(h);n.transform(Jr(i,l==null?void 0:l.duration),w)},fitBounds:(o,u)=>{const{width:l,height:c,minZoom:d,maxZoom:p}=e.getState(),{x:h,y:m,zoom:v}=JE(o,l,c,d,p,(u==null?void 0:u.padding)??.1),w=rr.translate(h,m).scale(v);n.transform(Jr(i,u==null?void 0:u.duration),w)},project:o=>{const{transform:u,snapToGrid:l,snapGrid:c}=e.getState();return console.warn("[DEPRECATED] `project` is deprecated. Instead use `screenToFlowPosition`. There is no need to subtract the react flow bounds anymore! https://reactflow.dev/api-reference/types/react-flow-instance#screen-to-flow-position"),ng(o,u,l,c)},screenToFlowPosition:o=>{const{transform:u,snapToGrid:l,snapGrid:c,domNode:d}=e.getState();if(!d)return o;const{x:p,y:h}=d.getBoundingClientRect(),m={x:o.x-p,y:o.y-h};return ng(m,u,l,c)},flowToScreenPosition:o=>{const{transform:u,domNode:l}=e.getState();if(!l)return o;const{x:c,y:d}=l.getBoundingClientRect(),p=XE(o,u);return{x:p.x+c,y:p.y+d}},viewportInitialized:!0}:mI,[n,i])};function co(){const e=vI(),n=Et(),i=O.useCallback(()=>n.getState().getNodes().map(x=>({...x})),[]),s=O.useCallback(x=>n.getState().nodeInternals.get(x),[]),o=O.useCallback(()=>{const{edges:x=[]}=n.getState();return x.map(k=>({...k}))},[]),u=O.useCallback(x=>{const{edges:k=[]}=n.getState();return k.find(S=>S.id===x)},[]),l=O.useCallback(x=>{const{getNodes:k,setNodes:S,hasDefaultNodes:E,onNodesChange:T}=n.getState(),C=k(),j=typeof x=="function"?x(C):x;if(E)S(j);else if(T){const M=j.length===0?C.map(A=>({type:"remove",id:A.id})):j.map(A=>({item:A,type:"reset"}));T(M)}},[]),c=O.useCallback(x=>{const{edges:k=[],setEdges:S,hasDefaultEdges:E,onEdgesChange:T}=n.getState(),C=typeof x=="function"?x(k):x;if(E)S(C);else if(T){const j=C.length===0?k.map(M=>({type:"remove",id:M.id})):C.map(M=>({item:M,type:"reset"}));T(j)}},[]),d=O.useCallback(x=>{const k=Array.isArray(x)?x:[x],{getNodes:S,setNodes:E,hasDefaultNodes:T,onNodesChange:C}=n.getState();if(T){const M=[...S(),...k];E(M)}else if(C){const j=k.map(M=>({item:M,type:"add"}));C(j)}},[]),p=O.useCallback(x=>{const k=Array.isArray(x)?x:[x],{edges:S=[],setEdges:E,hasDefaultEdges:T,onEdgesChange:C}=n.getState();if(T)E([...S,...k]);else if(C){const j=k.map(M=>({item:M,type:"add"}));C(j)}},[]),h=O.useCallback(()=>{const{getNodes:x,edges:k=[],transform:S}=n.getState(),[E,T,C]=S;return{nodes:x().map(j=>({...j})),edges:k.map(j=>({...j})),viewport:{x:E,y:T,zoom:C}}},[]),m=O.useCallback(({nodes:x,edges:k})=>{const{nodeInternals:S,getNodes:E,edges:T,hasDefaultNodes:C,hasDefaultEdges:j,onNodesDelete:M,onEdgesDelete:A,onNodesChange:D,onEdgesChange:L}=n.getState(),U=(x||[]).map(G=>G.id),H=(k||[]).map(G=>G.id),Q=E().reduce((G,B)=>{const X=B.parentNode||B.parentId,Y=!U.includes(B.id)&&X&&G.find(V=>V.id===X);return(typeof B.deletable=="boolean"?B.deletable:!0)&&(U.includes(B.id)||Y)&&G.push(B),G},[]),ee=T.filter(G=>typeof G.deletable=="boolean"?G.deletable:!0),R=ee.filter(G=>H.includes(G.id));if(Q||R){const G=ZE(Q,ee),B=[...R,...G],X=B.reduce((Y,q)=>(Y.includes(q.id)||Y.push(q.id),Y),[]);if((j||C)&&(j&&n.setState({edges:T.filter(Y=>!X.includes(Y.id))}),C&&(Q.forEach(Y=>{S.delete(Y.id)}),n.setState({nodeInternals:new Map(S)}))),X.length>0&&(A==null||A(B),L&&L(X.map(Y=>({id:Y,type:"remove"})))),Q.length>0&&(M==null||M(Q),D)){const Y=Q.map(q=>({id:q.id,type:"remove"}));D(Y)}}},[]),v=O.useCallback(x=>{const k=Lj(x),S=k?null:n.getState().nodeInternals.get(x.id);return!k&&!S?[null,null,k]:[k?x:nw(S),S,k]},[]),w=O.useCallback((x,k=!0,S)=>{const[E,T,C]=v(x);return E?(S||n.getState().getNodes()).filter(j=>{if(!C&&(j.id===T.id||!j.positionAbsolute))return!1;const M=nw(j),A=Zm(M,E);return k&&A>0||A>=E.width*E.height}):[]},[]),b=O.useCallback((x,k,S=!0)=>{const[E]=v(x);if(!E)return!1;const T=Zm(E,k);return S&&T>0||T>=E.width*E.height},[]);return O.useMemo(()=>({...e,getNodes:i,getNode:s,getEdges:o,getEdge:u,setNodes:l,setEdges:c,addNodes:d,addEdges:p,toObject:h,deleteElements:m,getIntersectingNodes:w,isNodeIntersecting:b}),[e,i,s,o,u,l,c,d,p,h,m,w,b])}const yI={actInsideInputWithModifier:!1};var wI=({deleteKeyCode:e,multiSelectionKeyCode:n})=>{const i=Et(),{deleteElements:s}=co(),o=so(e,yI),u=so(n);O.useEffect(()=>{if(o){const{edges:l,getNodes:c}=i.getState(),d=c().filter(h=>h.selected),p=l.filter(h=>h.selected);s({nodes:d,edges:p}),i.setState({nodesSelectionActive:!1})}},[o]),O.useEffect(()=>{i.setState({multiSelectionActive:u})},[u])};function _I(e){const n=Et();O.useEffect(()=>{let i;const s=()=>{var u,l;if(!e.current)return;const o=_g(e.current);(o.height===0||o.width===0)&&((l=(u=n.getState()).onError)==null||l.call(u,"004",sr.error004())),n.setState({width:o.width||500,height:o.height||500})};return s(),window.addEventListener("resize",s),e.current&&(i=new ResizeObserver(()=>s()),i.observe(e.current)),()=>{window.removeEventListener("resize",s),i&&e.current&&i.unobserve(e.current)}},[])}const Tg={position:"absolute",width:"100%",height:"100%",top:0,left:0},xI=(e,n)=>e.x!==n.x||e.y!==n.y||e.zoom!==n.k,qa=e=>({x:e.x,y:e.y,zoom:e.k}),Fi=(e,n)=>e.target.closest(`.${n}`),dw=(e,n)=>n===2&&Array.isArray(e)&&e.includes(2),hw=e=>{const n=e.ctrlKey&&Ka()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*n},SI=e=>({d3Zoom:e.d3Zoom,d3Selection:e.d3Selection,d3ZoomHandler:e.d3ZoomHandler,userSelectionActive:e.userSelectionActive}),kI=({onMove:e,onMoveStart:n,onMoveEnd:i,onPaneContextMenu:s,zoomOnScroll:o=!0,zoomOnPinch:u=!0,panOnScroll:l=!1,panOnScrollSpeed:c=.5,panOnScrollMode:d=ti.Free,zoomOnDoubleClick:p=!0,elementsSelectable:h,panOnDrag:m=!0,defaultViewport:v,translateExtent:w,minZoom:b,maxZoom:x,zoomActivationKeyCode:k,preventScrolling:S=!0,children:E,noWheelClassName:T,noPanClassName:C})=>{const j=O.useRef(),M=Et(),A=O.useRef(!1),D=O.useRef(!1),L=O.useRef(null),U=O.useRef({x:0,y:0,zoom:0}),{d3Zoom:H,d3Selection:Q,d3ZoomHandler:ee,userSelectionActive:R}=He(SI,kt),G=so(k),B=O.useRef(0),X=O.useRef(!1),Y=O.useRef();return _I(L),O.useEffect(()=>{if(L.current){const q=L.current.getBoundingClientRect(),V=$E().scaleExtent([b,x]).translateExtent(w),I=yn(L.current).call(V),z=rr.translate(v.x,v.y).scale(Qi(v.zoom,b,x)),ae=[[0,0],[q.width,q.height]],$=V.constrain()(z,ae,w);V.transform(I,$),V.wheelDelta(hw),M.setState({d3Zoom:V,d3Selection:I,d3ZoomHandler:I.on("wheel.zoom"),transform:[$.x,$.y,$.k],domNode:L.current.closest(".react-flow")})}},[]),O.useEffect(()=>{Q&&H&&(l&&!G&&!R?Q.on("wheel.zoom",q=>{if(Fi(q,T))return!1;q.preventDefault(),q.stopImmediatePropagation();const V=Q.property("__zoom").k||1;if(q.ctrlKey&&u){const ce=jn(q),pe=hw(q),ge=V*Math.pow(2,pe);H.scaleTo(Q,ge,ce,q);return}const I=q.deltaMode===1?20:1;let z=d===ti.Vertical?0:q.deltaX*I,ae=d===ti.Horizontal?0:q.deltaY*I;!Ka()&&q.shiftKey&&d!==ti.Vertical&&(z=q.deltaY*I,ae=0),H.translateBy(Q,-(z/V)*c,-(ae/V)*c,{internal:!0});const $=qa(Q.property("__zoom")),{onViewportChangeStart:K,onViewportChange:Z,onViewportChangeEnd:oe}=M.getState();clearTimeout(Y.current),X.current||(X.current=!0,n==null||n(q,$),K==null||K($)),X.current&&(e==null||e(q,$),Z==null||Z($),Y.current=setTimeout(()=>{i==null||i(q,$),oe==null||oe($),X.current=!1},150))},{passive:!1}):typeof ee<"u"&&Q.on("wheel.zoom",function(q,V){if(!S&&q.type==="wheel"&&!q.ctrlKey||Fi(q,T))return null;q.preventDefault(),ee.call(this,q,V)},{passive:!1}))},[R,l,d,Q,H,ee,G,u,S,T,n,e,i]),O.useEffect(()=>{H&&H.on("start",q=>{var z,ae;if(!q.sourceEvent||q.sourceEvent.internal)return null;B.current=(z=q.sourceEvent)==null?void 0:z.button;const{onViewportChangeStart:V}=M.getState(),I=qa(q.transform);A.current=!0,U.current=I,((ae=q.sourceEvent)==null?void 0:ae.type)==="mousedown"&&M.setState({paneDragging:!0}),V==null||V(I),n==null||n(q.sourceEvent,I)})},[H,n]),O.useEffect(()=>{H&&(R&&!A.current?H.on("zoom",null):R||H.on("zoom",q=>{var I;const{onViewportChange:V}=M.getState();if(M.setState({transform:[q.transform.x,q.transform.y,q.transform.k]}),D.current=!!(s&&dw(m,B.current??0)),(e||V)&&!((I=q.sourceEvent)!=null&&I.internal)){const z=qa(q.transform);V==null||V(z),e==null||e(q.sourceEvent,z)}}))},[R,H,e,m,s]),O.useEffect(()=>{H&&H.on("end",q=>{if(!q.sourceEvent||q.sourceEvent.internal)return null;const{onViewportChangeEnd:V}=M.getState();if(A.current=!1,M.setState({paneDragging:!1}),s&&dw(m,B.current??0)&&!D.current&&s(q.sourceEvent),D.current=!1,(i||V)&&xI(U.current,q.transform)){const I=qa(q.transform);U.current=I,clearTimeout(j.current),j.current=setTimeout(()=>{V==null||V(I),i==null||i(q.sourceEvent,I)},l?150:0)}})},[H,l,m,i,s]),O.useEffect(()=>{H&&H.filter(q=>{const V=G||o,I=u&&q.ctrlKey;if((m===!0||Array.isArray(m)&&m.includes(1))&&q.button===1&&q.type==="mousedown"&&(Fi(q,"react-flow__node")||Fi(q,"react-flow__edge")))return!0;if(!m&&!V&&!l&&!p&&!u||R||!p&&q.type==="dblclick"||Fi(q,T)&&q.type==="wheel"||Fi(q,C)&&(q.type!=="wheel"||l&&q.type==="wheel"&&!G)||!u&&q.ctrlKey&&q.type==="wheel"||!V&&!l&&!I&&q.type==="wheel"||!m&&(q.type==="mousedown"||q.type==="touchstart")||Array.isArray(m)&&!m.includes(q.button)&&q.type==="mousedown")return!1;const z=Array.isArray(m)&&m.includes(q.button)||!q.button||q.button<=1;return(!q.ctrlKey||q.type==="wheel")&&z})},[R,H,o,u,l,p,m,h,G]),ie.createElement("div",{className:"react-flow__renderer",ref:L,style:Tg},E)},EI=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function bI(){const{userSelectionActive:e,userSelectionRect:n}=He(EI,kt);return e&&n?ie.createElement("div",{className:"react-flow__selection react-flow__container",style:{width:n.width,height:n.height,transform:`translate(${n.x}px, ${n.y}px)`}}):null}function pw(e,n){const i=n.parentNode||n.parentId,s=e.find(o=>o.id===i);if(s){const o=n.position.x+n.width-s.width,u=n.position.y+n.height-s.height;if(o>0||u>0||n.position.x<0||n.position.y<0){if(s.style={...s.style},s.style.width=s.style.width??s.width,s.style.height=s.style.height??s.height,o>0&&(s.style.width+=o),u>0&&(s.style.height+=u),n.position.x<0){const l=Math.abs(n.position.x);s.position.x=s.position.x-l,s.style.width+=l,n.position.x=0}if(n.position.y<0){const l=Math.abs(n.position.y);s.position.y=s.position.y-l,s.style.height+=l,n.position.y=0}s.width=s.style.width,s.height=s.style.height}}}function NI(e,n){if(e.some(s=>s.type==="reset"))return e.filter(s=>s.type==="reset").map(s=>s.item);const i=e.filter(s=>s.type==="add").map(s=>s.item);return n.reduce((s,o)=>{const u=e.filter(c=>c.id===o.id);if(u.length===0)return s.push(o),s;const l={...o};for(const c of u)if(c)switch(c.type){case"select":{l.selected=c.selected;break}case"position":{typeof c.position<"u"&&(l.position=c.position),typeof c.positionAbsolute<"u"&&(l.positionAbsolute=c.positionAbsolute),typeof c.dragging<"u"&&(l.dragging=c.dragging),l.expandParent&&pw(s,l);break}case"dimensions":{typeof c.dimensions<"u"&&(l.width=c.dimensions.width,l.height=c.dimensions.height),typeof c.updateStyle<"u"&&(l.style={...l.style||{},...c.dimensions}),typeof c.resizing=="boolean"&&(l.resizing=c.resizing),l.expandParent&&pw(s,l);break}case"remove":return s}return s.push(l),s},i)}function CI(e,n){return NI(e,n)}const Mr=(e,n)=>({id:e,type:"select",selected:n});function Hi(e,n){return e.reduce((i,s)=>{const o=n.includes(s.id);return!s.selected&&o?(s.selected=!0,i.push(Mr(s.id,!0))):s.selected&&!o&&(s.selected=!1,i.push(Mr(s.id,!1))),i},[])}const _c=(e,n)=>i=>{i.target===n.current&&(e==null||e(i))},TI=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,dragging:e.paneDragging}),mb=O.memo(({isSelecting:e,selectionMode:n=io.Full,panOnDrag:i,onSelectionStart:s,onSelectionEnd:o,onPaneClick:u,onPaneContextMenu:l,onPaneScroll:c,onPaneMouseEnter:d,onPaneMouseMove:p,onPaneMouseLeave:h,children:m})=>{const v=O.useRef(null),w=Et(),b=O.useRef(0),x=O.useRef(0),k=O.useRef(),{userSelectionActive:S,elementsSelectable:E,dragging:T}=He(TI,kt),C=()=>{w.setState({userSelectionActive:!1,userSelectionRect:null}),b.current=0,x.current=0},j=ee=>{u==null||u(ee),w.getState().resetSelectedElements(),w.setState({nodesSelectionActive:!1})},M=ee=>{if(Array.isArray(i)&&(i!=null&&i.includes(2))){ee.preventDefault();return}l==null||l(ee)},A=c?ee=>c(ee):void 0,D=ee=>{const{resetSelectedElements:R,domNode:G}=w.getState();if(k.current=G==null?void 0:G.getBoundingClientRect(),!E||!e||ee.button!==0||ee.target!==v.current||!k.current)return;const{x:B,y:X}=qr(ee,k.current);R(),w.setState({userSelectionRect:{width:0,height:0,startX:B,startY:X,x:B,y:X}}),s==null||s(ee)},L=ee=>{const{userSelectionRect:R,nodeInternals:G,edges:B,transform:X,onNodesChange:Y,onEdgesChange:q,nodeOrigin:V,getNodes:I}=w.getState();if(!e||!k.current||!R)return;w.setState({userSelectionActive:!0,nodesSelectionActive:!1});const z=qr(ee,k.current),ae=R.startX??0,$=R.startY??0,K={...R,x:z.x<ae?z.x:ae,y:z.y<$?z.y:$,width:Math.abs(z.x-ae),height:Math.abs(z.y-$)},Z=I(),oe=QE(G,K,X,n===io.Partial,!0,V),ce=ZE(oe,B).map(ge=>ge.id),pe=oe.map(ge=>ge.id);if(b.current!==pe.length){b.current=pe.length;const ge=Hi(Z,pe);ge.length&&(Y==null||Y(ge))}if(x.current!==ce.length){x.current=ce.length;const ge=Hi(B,ce);ge.length&&(q==null||q(ge))}w.setState({userSelectionRect:K})},U=ee=>{if(ee.button!==0)return;const{userSelectionRect:R}=w.getState();!S&&R&&ee.target===v.current&&(j==null||j(ee)),w.setState({nodesSelectionActive:b.current>0}),C(),o==null||o(ee)},H=ee=>{S&&(w.setState({nodesSelectionActive:b.current>0}),o==null||o(ee)),C()},Q=E&&(e||S);return ie.createElement("div",{className:Mt(["react-flow__pane",{dragging:T,selection:e}]),onClick:Q?void 0:_c(j,v),onContextMenu:_c(M,v),onWheel:_c(A,v),onMouseEnter:Q?void 0:d,onMouseDown:Q?D:void 0,onMouseMove:Q?L:p,onMouseUp:Q?U:void 0,onMouseLeave:Q?H:h,ref:v,style:Tg},m,ie.createElement(bI,null))});mb.displayName="Pane";function gb(e,n){const i=e.parentNode||e.parentId;if(!i)return!1;const s=n.get(i);return s?s.selected?!0:gb(s,n):!1}function mw(e,n,i){let s=e;do{if(s!=null&&s.matches(n))return!0;if(s===i.current)return!1;s=s.parentElement}while(s);return!1}function RI(e,n,i,s){return Array.from(e.values()).filter(o=>(o.selected||o.id===s)&&(!o.parentNode||o.parentId||!gb(o,e))&&(o.draggable||n&&typeof o.draggable>"u")).map(o=>{var u,l;return{id:o.id,position:o.position||{x:0,y:0},positionAbsolute:o.positionAbsolute||{x:0,y:0},distance:{x:i.x-(((u=o.positionAbsolute)==null?void 0:u.x)??0),y:i.y-(((l=o.positionAbsolute)==null?void 0:l.y)??0)},delta:{x:0,y:0},extent:o.extent,parentNode:o.parentNode||o.parentId,parentId:o.parentNode||o.parentId,width:o.width,height:o.height,expandParent:o.expandParent}})}function AI(e,n){return!n||n==="parent"?n:[n[0],[n[1][0]-(e.width||0),n[1][1]-(e.height||0)]]}function vb(e,n,i,s,o=[0,0],u){const l=AI(e,e.extent||s);let c=l;const d=e.parentNode||e.parentId;if(e.extent==="parent"&&!e.expandParent)if(d&&e.width&&e.height){const m=i.get(d),{x:v,y:w}=ri(m,o).positionAbsolute;c=m&&wn(v)&&wn(w)&&wn(m.width)&&wn(m.height)?[[v+e.width*o[0],w+e.height*o[1]],[v+m.width-e.width+e.width*o[0],w+m.height-e.height+e.height*o[1]]]:c}else u==null||u("005",sr.error005()),c=l;else if(e.extent&&d&&e.extent!=="parent"){const m=i.get(d),{x:v,y:w}=ri(m,o).positionAbsolute;c=[[e.extent[0][0]+v,e.extent[0][1]+w],[e.extent[1][0]+v,e.extent[1][1]+w]]}let p={x:0,y:0};if(d){const m=i.get(d);p=ri(m,o).positionAbsolute}const h=c&&c!=="parent"?xg(n,c):n;return{position:{x:h.x-p.x,y:h.y-p.y},positionAbsolute:h}}function xc({nodeId:e,dragItems:n,nodeInternals:i}){const s=n.map(o=>({...i.get(o.id),position:o.position,positionAbsolute:o.positionAbsolute}));return[e?s.find(o=>o.id===e):s[0],s]}const gw=(e,n,i,s)=>{const o=n.querySelectorAll(e);if(!o||!o.length)return null;const u=Array.from(o),l=n.getBoundingClientRect(),c={x:l.width*s[0],y:l.height*s[1]};return u.map(d=>{const p=d.getBoundingClientRect();return{id:d.getAttribute("data-handleid"),position:d.getAttribute("data-handlepos"),x:(p.left-l.left-c.x)/i,y:(p.top-l.top-c.y)/i,..._g(d)}})};function Us(e,n,i){return i===void 0?i:s=>{const o=n().nodeInternals.get(e);o&&i(s,{...o})}}function ig({id:e,store:n,unselect:i=!1,nodeRef:s}){const{addSelectedNodes:o,unselectNodesAndEdges:u,multiSelectionActive:l,nodeInternals:c,onError:d}=n.getState(),p=c.get(e);if(!p){d==null||d("012",sr.error012(e));return}n.setState({nodesSelectionActive:!1}),p.selected?(i||p.selected&&l)&&(u({nodes:[p],edges:[]}),requestAnimationFrame(()=>{var h;return(h=s==null?void 0:s.current)==null?void 0:h.blur()})):o([e])}function jI(){const e=Et();return O.useCallback(({sourceEvent:i})=>{const{transform:s,snapGrid:o,snapToGrid:u}=e.getState(),l=i.touches?i.touches[0].clientX:i.clientX,c=i.touches?i.touches[0].clientY:i.clientY,d={x:(l-s[0])/s[2],y:(c-s[1])/s[2]};return{xSnapped:u?o[0]*Math.round(d.x/o[0]):d.x,ySnapped:u?o[1]*Math.round(d.y/o[1]):d.y,...d}},[])}function Sc(e){return(n,i,s)=>e==null?void 0:e(n,s)}function yb({nodeRef:e,disabled:n=!1,noDragClassName:i,handleSelector:s,nodeId:o,isSelectable:u,selectNodesOnDrag:l}){const c=Et(),[d,p]=O.useState(!1),h=O.useRef([]),m=O.useRef({x:null,y:null}),v=O.useRef(0),w=O.useRef(null),b=O.useRef({x:0,y:0}),x=O.useRef(null),k=O.useRef(!1),S=O.useRef(!1),E=O.useRef(!1),T=jI();return O.useEffect(()=>{if(e!=null&&e.current){const C=yn(e.current),j=({x:D,y:L})=>{const{nodeInternals:U,onNodeDrag:H,onSelectionDrag:Q,updateNodePositions:ee,nodeExtent:R,snapGrid:G,snapToGrid:B,nodeOrigin:X,onError:Y}=c.getState();m.current={x:D,y:L};let q=!1,V={x:0,y:0,x2:0,y2:0};if(h.current.length>1&&R){const z=ou(h.current,X);V=ro(z)}if(h.current=h.current.map(z=>{const ae={x:D-z.distance.x,y:L-z.distance.y};B&&(ae.x=G[0]*Math.round(ae.x/G[0]),ae.y=G[1]*Math.round(ae.y/G[1]));const $=[[R[0][0],R[0][1]],[R[1][0],R[1][1]]];h.current.length>1&&R&&!z.extent&&($[0][0]=z.positionAbsolute.x-V.x+R[0][0],$[1][0]=z.positionAbsolute.x+(z.width??0)-V.x2+R[1][0],$[0][1]=z.positionAbsolute.y-V.y+R[0][1],$[1][1]=z.positionAbsolute.y+(z.height??0)-V.y2+R[1][1]);const K=vb(z,ae,U,$,X,Y);return q=q||z.position.x!==K.position.x||z.position.y!==K.position.y,z.position=K.position,z.positionAbsolute=K.positionAbsolute,z}),!q)return;ee(h.current,!0,!0),p(!0);const I=o?H:Sc(Q);if(I&&x.current){const[z,ae]=xc({nodeId:o,dragItems:h.current,nodeInternals:U});I(x.current,z,ae)}},M=()=>{if(!w.current)return;const[D,L]=FE(b.current,w.current);if(D!==0||L!==0){const{transform:U,panBy:H}=c.getState();m.current.x=(m.current.x??0)-D/U[2],m.current.y=(m.current.y??0)-L/U[2],H({x:D,y:L})&&j(m.current)}v.current=requestAnimationFrame(M)},A=D=>{var X;const{nodeInternals:L,multiSelectionActive:U,nodesDraggable:H,unselectNodesAndEdges:Q,onNodeDragStart:ee,onSelectionDragStart:R}=c.getState();S.current=!0;const G=o?ee:Sc(R);(!l||!u)&&!U&&o&&((X=L.get(o))!=null&&X.selected||Q()),o&&u&&l&&ig({id:o,store:c,nodeRef:e});const B=T(D);if(m.current=B,h.current=RI(L,H,B,o),G&&h.current){const[Y,q]=xc({nodeId:o,dragItems:h.current,nodeInternals:L});G(D.sourceEvent,Y,q)}};if(n)C.on(".drag",null);else{const D=z2().on("start",L=>{const{domNode:U,nodeDragThreshold:H}=c.getState();H===0&&A(L),E.current=!1;const Q=T(L);m.current=Q,w.current=(U==null?void 0:U.getBoundingClientRect())||null,b.current=qr(L.sourceEvent,w.current)}).on("drag",L=>{var ee,R;const U=T(L),{autoPanOnNodeDrag:H,nodeDragThreshold:Q}=c.getState();if(L.sourceEvent.type==="touchmove"&&L.sourceEvent.touches.length>1&&(E.current=!0),!E.current){if(!k.current&&S.current&&H&&(k.current=!0,M()),!S.current){const G=U.xSnapped-(((ee=m==null?void 0:m.current)==null?void 0:ee.x)??0),B=U.ySnapped-(((R=m==null?void 0:m.current)==null?void 0:R.y)??0);Math.sqrt(G*G+B*B)>Q&&A(L)}(m.current.x!==U.xSnapped||m.current.y!==U.ySnapped)&&h.current&&S.current&&(x.current=L.sourceEvent,b.current=qr(L.sourceEvent,w.current),j(U))}}).on("end",L=>{if(!(!S.current||E.current)&&(p(!1),k.current=!1,S.current=!1,cancelAnimationFrame(v.current),h.current)){const{updateNodePositions:U,nodeInternals:H,onNodeDragStop:Q,onSelectionDragStop:ee}=c.getState(),R=o?Q:Sc(ee);if(U(h.current,!1,!1),R){const[G,B]=xc({nodeId:o,dragItems:h.current,nodeInternals:H});R(L.sourceEvent,G,B)}}}).filter(L=>{const U=L.target;return!L.button&&(!i||!mw(U,`.${i}`,e))&&(!s||mw(U,s,e))});return C.call(D),()=>{C.on(".drag",null)}}}},[e,n,i,s,u,c,o,l,T]),d}function wb(){const e=Et();return O.useCallback(i=>{const{nodeInternals:s,nodeExtent:o,updateNodePositions:u,getNodes:l,snapToGrid:c,snapGrid:d,onError:p,nodesDraggable:h}=e.getState(),m=l().filter(E=>E.selected&&(E.draggable||h&&typeof E.draggable>"u")),v=c?d[0]:5,w=c?d[1]:5,b=i.isShiftPressed?4:1,x=i.x*v*b,k=i.y*w*b,S=m.map(E=>{if(E.positionAbsolute){const T={x:E.positionAbsolute.x+x,y:E.positionAbsolute.y+k};c&&(T.x=d[0]*Math.round(T.x/d[0]),T.y=d[1]*Math.round(T.y/d[1]));const{positionAbsolute:C,position:j}=vb(E,T,s,o,void 0,p);E.position=j,E.positionAbsolute=C}return E});u(S,!0,!1)},[])}const Ki={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}};var Hs=e=>{const n=({id:i,type:s,data:o,xPos:u,yPos:l,xPosOrigin:c,yPosOrigin:d,selected:p,onClick:h,onMouseEnter:m,onMouseMove:v,onMouseLeave:w,onContextMenu:b,onDoubleClick:x,style:k,className:S,isDraggable:E,isSelectable:T,isConnectable:C,isFocusable:j,selectNodesOnDrag:M,sourcePosition:A,targetPosition:D,hidden:L,resizeObserver:U,dragHandle:H,zIndex:Q,isParent:ee,noDragClassName:R,noPanClassName:G,initialized:B,disableKeyboardA11y:X,ariaLabel:Y,rfId:q,hasHandleBounds:V})=>{const I=Et(),z=O.useRef(null),ae=O.useRef(null),$=O.useRef(A),K=O.useRef(D),Z=O.useRef(s),oe=T||E||h||m||v||w,ce=wb(),pe=Us(i,I.getState,m),ge=Us(i,I.getState,v),Me=Us(i,I.getState,w),Ie=Us(i,I.getState,b),Pe=Us(i,I.getState,x),je=ye=>{const{nodeDragThreshold:we}=I.getState();if(T&&(!M||!E||we>0)&&ig({id:i,store:I,nodeRef:z}),h){const Be=I.getState().nodeInternals.get(i);Be&&h(ye,{...Be})}},be=ye=>{if(!Jm(ye)&&!X)if(HE.includes(ye.key)&&T){const we=ye.key==="Escape";ig({id:i,store:I,unselect:we,nodeRef:z})}else E&&p&&Object.prototype.hasOwnProperty.call(Ki,ye.key)&&(I.setState({ariaLiveMessage:`Moved selected node ${ye.key.replace("Arrow","").toLowerCase()}. New position, x: ${~~u}, y: ${~~l}`}),ce({x:Ki[ye.key].x,y:Ki[ye.key].y,isShiftPressed:ye.shiftKey}))};O.useEffect(()=>()=>{ae.current&&(U==null||U.unobserve(ae.current),ae.current=null)},[]),O.useEffect(()=>{if(z.current&&!L){const ye=z.current;(!B||!V||ae.current!==ye)&&(ae.current&&(U==null||U.unobserve(ae.current)),U==null||U.observe(ye),ae.current=ye)}},[L,B,V]),O.useEffect(()=>{const ye=Z.current!==s,we=$.current!==A,Be=K.current!==D;z.current&&(ye||we||Be)&&(ye&&(Z.current=s),we&&($.current=A),Be&&(K.current=D),I.getState().updateNodeDimensions([{id:i,nodeElement:z.current,forceUpdate:!0}]))},[i,s,A,D]);const Ve=yb({nodeRef:z,disabled:L||!E,noDragClassName:R,handleSelector:H,nodeId:i,isSelectable:T,selectNodesOnDrag:M});return L?null:ie.createElement("div",{className:Mt(["react-flow__node",`react-flow__node-${s}`,{[G]:E},S,{selected:p,selectable:T,parent:ee,dragging:Ve}]),ref:z,style:{zIndex:Q,transform:`translate(${c}px,${d}px)`,pointerEvents:oe?"all":"none",visibility:B?"visible":"hidden",...k},"data-id":i,"data-testid":`rf__node-${i}`,onMouseEnter:pe,onMouseMove:ge,onMouseLeave:Me,onContextMenu:Ie,onClick:je,onDoubleClick:Pe,onKeyDown:j?be:void 0,tabIndex:j?0:void 0,role:j?"button":void 0,"aria-describedby":X?void 0:`${cb}-${q}`,"aria-label":Y},ie.createElement(Hj,{value:i},ie.createElement(e,{id:i,data:o,type:s,xPos:u,yPos:l,selected:p,isConnectable:C,sourcePosition:A,targetPosition:D,dragging:Ve,dragHandle:H,zIndex:Q})))};return n.displayName="NodeWrapper",O.memo(n)};const II=e=>{const n=e.getNodes().filter(i=>i.selected);return{...ou(n,e.nodeOrigin),transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`,userSelectionActive:e.userSelectionActive}};function MI({onSelectionContextMenu:e,noPanClassName:n,disableKeyboardA11y:i}){const s=Et(),{width:o,height:u,x:l,y:c,transformString:d,userSelectionActive:p}=He(II,kt),h=wb(),m=O.useRef(null);if(O.useEffect(()=>{var b;i||(b=m.current)==null||b.focus({preventScroll:!0})},[i]),yb({nodeRef:m}),p||!o||!u)return null;const v=e?b=>{const x=s.getState().getNodes().filter(k=>k.selected);e(b,x)}:void 0,w=b=>{Object.prototype.hasOwnProperty.call(Ki,b.key)&&h({x:Ki[b.key].x,y:Ki[b.key].y,isShiftPressed:b.shiftKey})};return ie.createElement("div",{className:Mt(["react-flow__nodesselection","react-flow__container",n]),style:{transform:d}},ie.createElement("div",{ref:m,className:"react-flow__nodesselection-rect",onContextMenu:v,tabIndex:i?void 0:-1,onKeyDown:i?void 0:w,style:{width:o,height:u,top:c,left:l}}))}var PI=O.memo(MI);const qI=e=>e.nodesSelectionActive,_b=({children:e,onPaneClick:n,onPaneMouseEnter:i,onPaneMouseMove:s,onPaneMouseLeave:o,onPaneContextMenu:u,onPaneScroll:l,deleteKeyCode:c,onMove:d,onMoveStart:p,onMoveEnd:h,selectionKeyCode:m,selectionOnDrag:v,selectionMode:w,onSelectionStart:b,onSelectionEnd:x,multiSelectionKeyCode:k,panActivationKeyCode:S,zoomActivationKeyCode:E,elementsSelectable:T,zoomOnScroll:C,zoomOnPinch:j,panOnScroll:M,panOnScrollSpeed:A,panOnScrollMode:D,zoomOnDoubleClick:L,panOnDrag:U,defaultViewport:H,translateExtent:Q,minZoom:ee,maxZoom:R,preventScrolling:G,onSelectionContextMenu:B,noWheelClassName:X,noPanClassName:Y,disableKeyboardA11y:q})=>{const V=He(qI),I=so(m),z=so(S),ae=z||U,$=z||M,K=I||v&&ae!==!0;return wI({deleteKeyCode:c,multiSelectionKeyCode:k}),ie.createElement(kI,{onMove:d,onMoveStart:p,onMoveEnd:h,onPaneContextMenu:u,elementsSelectable:T,zoomOnScroll:C,zoomOnPinch:j,panOnScroll:$,panOnScrollSpeed:A,panOnScrollMode:D,zoomOnDoubleClick:L,panOnDrag:!I&&ae,defaultViewport:H,translateExtent:Q,minZoom:ee,maxZoom:R,zoomActivationKeyCode:E,preventScrolling:G,noWheelClassName:X,noPanClassName:Y},ie.createElement(mb,{onSelectionStart:b,onSelectionEnd:x,onPaneClick:n,onPaneMouseEnter:i,onPaneMouseMove:s,onPaneMouseLeave:o,onPaneContextMenu:u,onPaneScroll:l,panOnDrag:ae,isSelecting:!!K,selectionMode:w},e,V&&ie.createElement(PI,{onSelectionContextMenu:B,noPanClassName:Y,disableKeyboardA11y:q})))};_b.displayName="FlowRenderer";var OI=O.memo(_b);function LI(e){return He(O.useCallback(i=>e?QE(i.nodeInternals,{x:0,y:0,width:i.width,height:i.height},i.transform,!0):i.getNodes(),[e]))}function $I(e){const n={input:Hs(e.input||ob),default:Hs(e.default||rg),output:Hs(e.output||ub),group:Hs(e.group||Cg)},i={},s=Object.keys(e).filter(o=>!["input","default","output","group"].includes(o)).reduce((o,u)=>(o[u]=Hs(e[u]||rg),o),i);return{...n,...s}}const DI=({x:e,y:n,width:i,height:s,origin:o})=>!i||!s?{x:e,y:n}:o[0]<0||o[1]<0||o[0]>1||o[1]>1?{x:e,y:n}:{x:e-i*o[0],y:n-s*o[1]},FI=e=>({nodesDraggable:e.nodesDraggable,nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,updateNodeDimensions:e.updateNodeDimensions,onError:e.onError}),xb=e=>{const{nodesDraggable:n,nodesConnectable:i,nodesFocusable:s,elementsSelectable:o,updateNodeDimensions:u,onError:l}=He(FI,kt),c=LI(e.onlyRenderVisibleElements),d=O.useRef(),p=O.useMemo(()=>{if(typeof ResizeObserver>"u")return null;const h=new ResizeObserver(m=>{const v=m.map(w=>({id:w.target.getAttribute("data-id"),nodeElement:w.target,forceUpdate:!0}));u(v)});return d.current=h,h},[]);return O.useEffect(()=>()=>{var h;(h=d==null?void 0:d.current)==null||h.disconnect()},[]),ie.createElement("div",{className:"react-flow__nodes",style:Tg},c.map(h=>{var j,M,A;let m=h.type||"default";e.nodeTypes[m]||(l==null||l("003",sr.error003(m)),m="default");const v=e.nodeTypes[m]||e.nodeTypes.default,w=!!(h.draggable||n&&typeof h.draggable>"u"),b=!!(h.selectable||o&&typeof h.selectable>"u"),x=!!(h.connectable||i&&typeof h.connectable>"u"),k=!!(h.focusable||s&&typeof h.focusable>"u"),S=e.nodeExtent?xg(h.positionAbsolute,e.nodeExtent):h.positionAbsolute,E=(S==null?void 0:S.x)??0,T=(S==null?void 0:S.y)??0,C=DI({x:E,y:T,width:h.width??0,height:h.height??0,origin:e.nodeOrigin});return ie.createElement(v,{key:h.id,id:h.id,className:h.className,style:h.style,type:m,data:h.data,sourcePosition:h.sourcePosition||Ce.Bottom,targetPosition:h.targetPosition||Ce.Top,hidden:h.hidden,xPos:E,yPos:T,xPosOrigin:C.x,yPosOrigin:C.y,selectNodesOnDrag:e.selectNodesOnDrag,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,selected:!!h.selected,isDraggable:w,isSelectable:b,isConnectable:x,isFocusable:k,resizeObserver:p,dragHandle:h.dragHandle,zIndex:((j=h[ut])==null?void 0:j.z)??0,isParent:!!((M=h[ut])!=null&&M.isParent),noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,initialized:!!h.width&&!!h.height,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,ariaLabel:h.ariaLabel,hasHandleBounds:!!((A=h[ut])!=null&&A.handleBounds)})}))};xb.displayName="NodeRenderer";var zI=O.memo(xb);const BI=(e,n,i)=>i===Ce.Left?e-n:i===Ce.Right?e+n:e,UI=(e,n,i)=>i===Ce.Top?e-n:i===Ce.Bottom?e+n:e,vw="react-flow__edgeupdater",yw=({position:e,centerX:n,centerY:i,radius:s=10,onMouseDown:o,onMouseEnter:u,onMouseOut:l,type:c})=>ie.createElement("circle",{onMouseDown:o,onMouseEnter:u,onMouseOut:l,className:Mt([vw,`${vw}-${c}`]),cx:BI(n,s,e),cy:UI(i,s,e),r:s,stroke:"transparent",fill:"transparent"}),HI=()=>!0;var zi=e=>{const n=({id:i,className:s,type:o,data:u,onClick:l,onEdgeDoubleClick:c,selected:d,animated:p,label:h,labelStyle:m,labelShowBg:v,labelBgStyle:w,labelBgPadding:b,labelBgBorderRadius:x,style:k,source:S,target:E,sourceX:T,sourceY:C,targetX:j,targetY:M,sourcePosition:A,targetPosition:D,elementsSelectable:L,hidden:U,sourceHandleId:H,targetHandleId:Q,onContextMenu:ee,onMouseEnter:R,onMouseMove:G,onMouseLeave:B,reconnectRadius:X,onReconnect:Y,onReconnectStart:q,onReconnectEnd:V,markerEnd:I,markerStart:z,rfId:ae,ariaLabel:$,isFocusable:K,isReconnectable:Z,pathOptions:oe,interactionWidth:ce,disableKeyboardA11y:pe})=>{const ge=O.useRef(null),[Me,Ie]=O.useState(!1),[Pe,je]=O.useState(!1),be=Et(),Ve=O.useMemo(()=>`url('#${tg(z,ae)}')`,[z,ae]),ye=O.useMemo(()=>`url('#${tg(I,ae)}')`,[I,ae]);if(U)return null;const we=Le=>{var Pt;const{edges:mt,addSelectedEdges:Ye,unselectNodesAndEdges:ot,multiSelectionActive:Vt}=be.getState(),Ze=mt.find(an=>an.id===i);Ze&&(L&&(be.setState({nodesSelectionActive:!1}),Ze.selected&&Vt?(ot({nodes:[],edges:[Ze]}),(Pt=ge.current)==null||Pt.blur()):Ye([i])),l&&l(Le,Ze))},Be=Bs(i,be.getState,c),st=Bs(i,be.getState,ee),lt=Bs(i,be.getState,R),We=Bs(i,be.getState,G),Ge=Bs(i,be.getState,B),ht=(Le,mt)=>{if(Le.button!==0)return;const{edges:Ye,isValidConnection:ot}=be.getState(),Vt=mt?E:S,Ze=(mt?Q:H)||null,Pt=mt?"target":"source",an=ot||HI,Hn=mt,Sn=Ye.find(un=>un.id===i);je(!0),q==null||q(Le,Sn,Pt);const en=un=>{je(!1),V==null||V(un,Sn,Pt)};nb({event:Le,handleId:Ze,nodeId:Vt,onConnect:un=>Y==null?void 0:Y(Sn,un),isTarget:Hn,getState:be.getState,setState:be.setState,isValidConnection:an,edgeUpdaterType:Pt,onReconnectEnd:en})},Rt=Le=>ht(Le,!0),Ut=Le=>ht(Le,!1),pt=()=>Ie(!0),ct=()=>Ie(!1),Ht=!L&&!l,At=Le=>{var mt;if(!pe&&HE.includes(Le.key)&&L){const{unselectNodesAndEdges:Ye,addSelectedEdges:ot,edges:Vt}=be.getState();Le.key==="Escape"?((mt=ge.current)==null||mt.blur(),Ye({edges:[Vt.find(Pt=>Pt.id===i)]})):ot([i])}};return ie.createElement("g",{className:Mt(["react-flow__edge",`react-flow__edge-${o}`,s,{selected:d,animated:p,inactive:Ht,updating:Me}]),onClick:we,onDoubleClick:Be,onContextMenu:st,onMouseEnter:lt,onMouseMove:We,onMouseLeave:Ge,onKeyDown:K?At:void 0,tabIndex:K?0:void 0,role:K?"button":"img","data-testid":`rf__edge-${i}`,"aria-label":$===null?void 0:$||`Edge from ${S} to ${E}`,"aria-describedby":K?`${fb}-${ae}`:void 0,ref:ge},!Pe&&ie.createElement(e,{id:i,source:S,target:E,selected:d,animated:p,label:h,labelStyle:m,labelShowBg:v,labelBgStyle:w,labelBgPadding:b,labelBgBorderRadius:x,data:u,style:k,sourceX:T,sourceY:C,targetX:j,targetY:M,sourcePosition:A,targetPosition:D,sourceHandleId:H,targetHandleId:Q,markerStart:Ve,markerEnd:ye,pathOptions:oe,interactionWidth:ce}),Z&&ie.createElement(ie.Fragment,null,(Z==="source"||Z===!0)&&ie.createElement(yw,{position:A,centerX:T,centerY:C,radius:X,onMouseDown:Rt,onMouseEnter:pt,onMouseOut:ct,type:"source"}),(Z==="target"||Z===!0)&&ie.createElement(yw,{position:D,centerX:j,centerY:M,radius:X,onMouseDown:Ut,onMouseEnter:pt,onMouseOut:ct,type:"target"})))};return n.displayName="EdgeWrapper",O.memo(n)};function VI(e){const n={default:zi(e.default||Xa),straight:zi(e.bezier||Eg),step:zi(e.step||kg),smoothstep:zi(e.step||su),simplebezier:zi(e.simplebezier||Sg)},i={},s=Object.keys(e).filter(o=>!["default","bezier"].includes(o)).reduce((o,u)=>(o[u]=zi(e[u]||Xa),o),i);return{...n,...s}}function ww(e,n,i=null){const s=((i==null?void 0:i.x)||0)+n.x,o=((i==null?void 0:i.y)||0)+n.y,u=(i==null?void 0:i.width)||n.width,l=(i==null?void 0:i.height)||n.height;switch(e){case Ce.Top:return{x:s+u/2,y:o};case Ce.Right:return{x:s+u,y:o+l/2};case Ce.Bottom:return{x:s+u/2,y:o+l};case Ce.Left:return{x:s,y:o+l/2}}}function _w(e,n){return e?e.length===1||!n?e[0]:n&&e.find(i=>i.id===n)||null:null}const WI=(e,n,i,s,o,u)=>{const l=ww(i,e,n),c=ww(u,s,o);return{sourceX:l.x,sourceY:l.y,targetX:c.x,targetY:c.y}};function GI({sourcePos:e,targetPos:n,sourceWidth:i,sourceHeight:s,targetWidth:o,targetHeight:u,width:l,height:c,transform:d}){const p={x:Math.min(e.x,n.x),y:Math.min(e.y,n.y),x2:Math.max(e.x+i,n.x+o),y2:Math.max(e.y+s,n.y+u)};p.x===p.x2&&(p.x2+=1),p.y===p.y2&&(p.y2+=1);const h=ro({x:(0-d[0])/d[2],y:(0-d[1])/d[2],width:l/d[2],height:c/d[2]}),m=Math.max(0,Math.min(h.x2,p.x2)-Math.max(h.x,p.x)),v=Math.max(0,Math.min(h.y2,p.y2)-Math.max(h.y,p.y));return Math.ceil(m*v)>0}function xw(e){var s,o,u,l,c;const n=((s=e==null?void 0:e[ut])==null?void 0:s.handleBounds)||null,i=n&&(e==null?void 0:e.width)&&(e==null?void 0:e.height)&&typeof((o=e==null?void 0:e.positionAbsolute)==null?void 0:o.x)<"u"&&typeof((u=e==null?void 0:e.positionAbsolute)==null?void 0:u.y)<"u";return[{x:((l=e==null?void 0:e.positionAbsolute)==null?void 0:l.x)||0,y:((c=e==null?void 0:e.positionAbsolute)==null?void 0:c.y)||0,width:(e==null?void 0:e.width)||0,height:(e==null?void 0:e.height)||0},n,!!i]}const KI=[{level:0,isMaxLevel:!0,edges:[]}];function YI(e,n,i=!1){let s=-1;const o=e.reduce((l,c)=>{var h,m;const d=wn(c.zIndex);let p=d?c.zIndex:0;if(i){const v=n.get(c.target),w=n.get(c.source),b=c.selected||(v==null?void 0:v.selected)||(w==null?void 0:w.selected),x=Math.max(((h=w==null?void 0:w[ut])==null?void 0:h.z)||0,((m=v==null?void 0:v[ut])==null?void 0:m.z)||0,1e3);p=(d?c.zIndex:0)+(b?x:0)}return l[p]?l[p].push(c):l[p]=[c],s=p>s?p:s,l},{}),u=Object.entries(o).map(([l,c])=>{const d=+l;return{edges:c,level:d,isMaxLevel:d===s}});return u.length===0?KI:u}function XI(e,n,i){const s=He(O.useCallback(o=>e?o.edges.filter(u=>{const l=n.get(u.source),c=n.get(u.target);return(l==null?void 0:l.width)&&(l==null?void 0:l.height)&&(c==null?void 0:c.width)&&(c==null?void 0:c.height)&&GI({sourcePos:l.positionAbsolute||{x:0,y:0},targetPos:c.positionAbsolute||{x:0,y:0},sourceWidth:l.width,sourceHeight:l.height,targetWidth:c.width,targetHeight:c.height,width:o.width,height:o.height,transform:o.transform})}):o.edges,[e,n]));return YI(s,n,i)}const QI=({color:e="none",strokeWidth:n=1})=>ie.createElement("polyline",{style:{stroke:e,strokeWidth:n},strokeLinecap:"round",strokeLinejoin:"round",fill:"none",points:"-5,-4 0,0 -5,4"}),ZI=({color:e="none",strokeWidth:n=1})=>ie.createElement("polyline",{style:{stroke:e,fill:e,strokeWidth:n},strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"}),Sw={[Ya.Arrow]:QI,[Ya.ArrowClosed]:ZI};function JI(e){const n=Et();return O.useMemo(()=>{var o,u;return Object.prototype.hasOwnProperty.call(Sw,e)?Sw[e]:((u=(o=n.getState()).onError)==null||u.call(o,"009",sr.error009(e)),null)},[e])}const eM=({id:e,type:n,color:i,width:s=12.5,height:o=12.5,markerUnits:u="strokeWidth",strokeWidth:l,orient:c="auto-start-reverse"})=>{const d=JI(n);return d?ie.createElement("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${s}`,markerHeight:`${o}`,viewBox:"-10 -10 20 20",markerUnits:u,orient:c,refX:"0",refY:"0"},ie.createElement(d,{color:i,strokeWidth:l})):null},tM=({defaultColor:e,rfId:n})=>i=>{const s=[];return i.edges.reduce((o,u)=>([u.markerStart,u.markerEnd].forEach(l=>{if(l&&typeof l=="object"){const c=tg(l,n);s.includes(c)||(o.push({id:c,color:l.color||e,...l}),s.push(c))}}),o),[]).sort((o,u)=>o.id.localeCompare(u.id))},Sb=({defaultColor:e,rfId:n})=>{const i=He(O.useCallback(tM({defaultColor:e,rfId:n}),[e,n]),(s,o)=>!(s.length!==o.length||s.some((u,l)=>u.id!==o[l].id)));return ie.createElement("defs",null,i.map(s=>ie.createElement(eM,{id:s.id,key:s.id,type:s.type,color:s.color,width:s.width,height:s.height,markerUnits:s.markerUnits,strokeWidth:s.strokeWidth,orient:s.orient})))};Sb.displayName="MarkerDefinitions";var nM=O.memo(Sb);const rM=e=>({nodesConnectable:e.nodesConnectable,edgesFocusable:e.edgesFocusable,edgesUpdatable:e.edgesUpdatable,elementsSelectable:e.elementsSelectable,width:e.width,height:e.height,connectionMode:e.connectionMode,nodeInternals:e.nodeInternals,onError:e.onError}),kb=({defaultMarkerColor:e,onlyRenderVisibleElements:n,elevateEdgesOnSelect:i,rfId:s,edgeTypes:o,noPanClassName:u,onEdgeContextMenu:l,onEdgeMouseEnter:c,onEdgeMouseMove:d,onEdgeMouseLeave:p,onEdgeClick:h,onEdgeDoubleClick:m,onReconnect:v,onReconnectStart:w,onReconnectEnd:b,reconnectRadius:x,children:k,disableKeyboardA11y:S})=>{const{edgesFocusable:E,edgesUpdatable:T,elementsSelectable:C,width:j,height:M,connectionMode:A,nodeInternals:D,onError:L}=He(rM,kt),U=XI(n,D,i);return j?ie.createElement(ie.Fragment,null,U.map(({level:H,edges:Q,isMaxLevel:ee})=>ie.createElement("svg",{key:H,style:{zIndex:H},width:j,height:M,className:"react-flow__edges react-flow__container"},ee&&ie.createElement(nM,{defaultColor:e,rfId:s}),ie.createElement("g",null,Q.map(R=>{const[G,B,X]=xw(D.get(R.source)),[Y,q,V]=xw(D.get(R.target));if(!X||!V)return null;let I=R.type||"default";o[I]||(L==null||L("011",sr.error011(I)),I="default");const z=o[I]||o.default,ae=A===si.Strict?q.target:(q.target??[]).concat(q.source??[]),$=_w(B.source,R.sourceHandle),K=_w(ae,R.targetHandle),Z=($==null?void 0:$.position)||Ce.Bottom,oe=(K==null?void 0:K.position)||Ce.Top,ce=!!(R.focusable||E&&typeof R.focusable>"u"),pe=R.reconnectable||R.updatable,ge=typeof v<"u"&&(pe||T&&typeof pe>"u");if(!$||!K)return L==null||L("008",sr.error008($,R)),null;const{sourceX:Me,sourceY:Ie,targetX:Pe,targetY:je}=WI(G,$,Z,Y,K,oe);return ie.createElement(z,{key:R.id,id:R.id,className:Mt([R.className,u]),type:I,data:R.data,selected:!!R.selected,animated:!!R.animated,hidden:!!R.hidden,label:R.label,labelStyle:R.labelStyle,labelShowBg:R.labelShowBg,labelBgStyle:R.labelBgStyle,labelBgPadding:R.labelBgPadding,labelBgBorderRadius:R.labelBgBorderRadius,style:R.style,source:R.source,target:R.target,sourceHandleId:R.sourceHandle,targetHandleId:R.targetHandle,markerEnd:R.markerEnd,markerStart:R.markerStart,sourceX:Me,sourceY:Ie,targetX:Pe,targetY:je,sourcePosition:Z,targetPosition:oe,elementsSelectable:C,onContextMenu:l,onMouseEnter:c,onMouseMove:d,onMouseLeave:p,onClick:h,onEdgeDoubleClick:m,onReconnect:v,onReconnectStart:w,onReconnectEnd:b,reconnectRadius:x,rfId:s,ariaLabel:R.ariaLabel,isFocusable:ce,isReconnectable:ge,pathOptions:"pathOptions"in R?R.pathOptions:void 0,interactionWidth:R.interactionWidth,disableKeyboardA11y:S})})))),k):null};kb.displayName="EdgeRenderer";var iM=O.memo(kb);const sM=e=>`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]})`;function oM({children:e}){const n=He(sM);return ie.createElement("div",{className:"react-flow__viewport react-flow__container",style:{transform:n}},e)}function aM(e){const n=co(),i=O.useRef(!1);O.useEffect(()=>{!i.current&&n.viewportInitialized&&e&&(setTimeout(()=>e(n),1),i.current=!0)},[e,n.viewportInitialized])}const uM={[Ce.Left]:Ce.Right,[Ce.Right]:Ce.Left,[Ce.Top]:Ce.Bottom,[Ce.Bottom]:Ce.Top},Eb=({nodeId:e,handleType:n,style:i,type:s=Pr.Bezier,CustomComponent:o,connectionStatus:u})=>{var M,A,D;const{fromNode:l,handleId:c,toX:d,toY:p,connectionMode:h}=He(O.useCallback(L=>({fromNode:L.nodeInternals.get(e),handleId:L.connectionHandleId,toX:(L.connectionPosition.x-L.transform[0])/L.transform[2],toY:(L.connectionPosition.y-L.transform[1])/L.transform[2],connectionMode:L.connectionMode}),[e]),kt),m=(M=l==null?void 0:l[ut])==null?void 0:M.handleBounds;let v=m==null?void 0:m[n];if(h===si.Loose&&(v=v||(m==null?void 0:m[n==="source"?"target":"source"])),!l||!v)return null;const w=c?v.find(L=>L.id===c):v[0],b=w?w.x+w.width/2:(l.width??0)/2,x=w?w.y+w.height/2:l.height??0,k=(((A=l.positionAbsolute)==null?void 0:A.x)??0)+b,S=(((D=l.positionAbsolute)==null?void 0:D.y)??0)+x,E=w==null?void 0:w.position,T=E?uM[E]:null;if(!E||!T)return null;if(o)return ie.createElement(o,{connectionLineType:s,connectionLineStyle:i,fromNode:l,fromHandle:w,fromX:k,fromY:S,toX:d,toY:p,fromPosition:E,toPosition:T,connectionStatus:u});let C="";const j={sourceX:k,sourceY:S,sourcePosition:E,targetX:d,targetY:p,targetPosition:T};return s===Pr.Bezier?[C]=YE(j):s===Pr.Step?[C]=eg({...j,borderRadius:0}):s===Pr.SmoothStep?[C]=eg(j):s===Pr.SimpleBezier?[C]=KE(j):C=`M${k},${S} ${d},${p}`,ie.createElement("path",{d:C,fill:"none",className:"react-flow__connection-path",style:i})};Eb.displayName="ConnectionLine";const lM=e=>({nodeId:e.connectionNodeId,handleType:e.connectionHandleType,nodesConnectable:e.nodesConnectable,connectionStatus:e.connectionStatus,width:e.width,height:e.height});function cM({containerStyle:e,style:n,type:i,component:s}){const{nodeId:o,handleType:u,nodesConnectable:l,width:c,height:d,connectionStatus:p}=He(lM,kt);return!(o&&u&&c&&l)?null:ie.createElement("svg",{style:e,width:c,height:d,className:"react-flow__edges react-flow__connectionline react-flow__container"},ie.createElement("g",{className:Mt(["react-flow__connection",p])},ie.createElement(Eb,{nodeId:o,handleType:u,style:n,type:i,CustomComponent:s,connectionStatus:p})))}function kw(e,n){return O.useRef(null),Et(),O.useMemo(()=>n(e),[e])}const bb=({nodeTypes:e,edgeTypes:n,onMove:i,onMoveStart:s,onMoveEnd:o,onInit:u,onNodeClick:l,onEdgeClick:c,onNodeDoubleClick:d,onEdgeDoubleClick:p,onNodeMouseEnter:h,onNodeMouseMove:m,onNodeMouseLeave:v,onNodeContextMenu:w,onSelectionContextMenu:b,onSelectionStart:x,onSelectionEnd:k,connectionLineType:S,connectionLineStyle:E,connectionLineComponent:T,connectionLineContainerStyle:C,selectionKeyCode:j,selectionOnDrag:M,selectionMode:A,multiSelectionKeyCode:D,panActivationKeyCode:L,zoomActivationKeyCode:U,deleteKeyCode:H,onlyRenderVisibleElements:Q,elementsSelectable:ee,selectNodesOnDrag:R,defaultViewport:G,translateExtent:B,minZoom:X,maxZoom:Y,preventScrolling:q,defaultMarkerColor:V,zoomOnScroll:I,zoomOnPinch:z,panOnScroll:ae,panOnScrollSpeed:$,panOnScrollMode:K,zoomOnDoubleClick:Z,panOnDrag:oe,onPaneClick:ce,onPaneMouseEnter:pe,onPaneMouseMove:ge,onPaneMouseLeave:Me,onPaneScroll:Ie,onPaneContextMenu:Pe,onEdgeContextMenu:je,onEdgeMouseEnter:be,onEdgeMouseMove:Ve,onEdgeMouseLeave:ye,onReconnect:we,onReconnectStart:Be,onReconnectEnd:st,reconnectRadius:lt,noDragClassName:We,noWheelClassName:Ge,noPanClassName:ht,elevateEdgesOnSelect:Rt,disableKeyboardA11y:Ut,nodeOrigin:pt,nodeExtent:ct,rfId:Ht})=>{const At=kw(e,$I),Le=kw(n,VI);return aM(u),ie.createElement(OI,{onPaneClick:ce,onPaneMouseEnter:pe,onPaneMouseMove:ge,onPaneMouseLeave:Me,onPaneContextMenu:Pe,onPaneScroll:Ie,deleteKeyCode:H,selectionKeyCode:j,selectionOnDrag:M,selectionMode:A,onSelectionStart:x,onSelectionEnd:k,multiSelectionKeyCode:D,panActivationKeyCode:L,zoomActivationKeyCode:U,elementsSelectable:ee,onMove:i,onMoveStart:s,onMoveEnd:o,zoomOnScroll:I,zoomOnPinch:z,zoomOnDoubleClick:Z,panOnScroll:ae,panOnScrollSpeed:$,panOnScrollMode:K,panOnDrag:oe,defaultViewport:G,translateExtent:B,minZoom:X,maxZoom:Y,onSelectionContextMenu:b,preventScrolling:q,noDragClassName:We,noWheelClassName:Ge,noPanClassName:ht,disableKeyboardA11y:Ut},ie.createElement(oM,null,ie.createElement(iM,{edgeTypes:Le,onEdgeClick:c,onEdgeDoubleClick:p,onlyRenderVisibleElements:Q,onEdgeContextMenu:je,onEdgeMouseEnter:be,onEdgeMouseMove:Ve,onEdgeMouseLeave:ye,onReconnect:we,onReconnectStart:Be,onReconnectEnd:st,reconnectRadius:lt,defaultMarkerColor:V,noPanClassName:ht,elevateEdgesOnSelect:!!Rt,disableKeyboardA11y:Ut,rfId:Ht},ie.createElement(cM,{style:E,type:S,component:T,containerStyle:C})),ie.createElement("div",{className:"react-flow__edgelabel-renderer"}),ie.createElement(zI,{nodeTypes:At,onNodeClick:l,onNodeDoubleClick:d,onNodeMouseEnter:h,onNodeMouseMove:m,onNodeMouseLeave:v,onNodeContextMenu:w,selectNodesOnDrag:R,onlyRenderVisibleElements:Q,noPanClassName:ht,noDragClassName:We,disableKeyboardA11y:Ut,nodeOrigin:pt,nodeExtent:ct,rfId:Ht})))};bb.displayName="GraphView";var fM=O.memo(bb);const sg=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],jr={rfId:"1",width:0,height:0,transform:[0,0,1],nodeInternals:new Map,edges:[],onNodesChange:null,onEdgesChange:null,hasDefaultNodes:!1,hasDefaultEdges:!1,d3Zoom:null,d3Selection:null,d3ZoomHandler:void 0,minZoom:.5,maxZoom:2,translateExtent:sg,nodeExtent:sg,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionNodeId:null,connectionHandleId:null,connectionHandleType:"source",connectionPosition:{x:0,y:0},connectionStatus:null,connectionMode:si.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:[0,0],nodeDragThreshold:0,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesUpdatable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,fitViewOnInit:!1,fitViewOnInitDone:!1,fitViewOnInitOptions:void 0,onSelectionChange:[],multiSelectionActive:!1,connectionStartHandle:null,connectionEndHandle:null,connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,connectionRadius:20,onError:$j,isValidConnection:void 0},dM=()=>JT((e,n)=>({...jr,setNodes:i=>{const{nodeInternals:s,nodeOrigin:o,elevateNodesOnSelect:u}=n();e({nodeInternals:wc(i,s,o,u)})},getNodes:()=>Array.from(n().nodeInternals.values()),setEdges:i=>{const{defaultEdgeOptions:s={}}=n();e({edges:i.map(o=>({...s,...o}))})},setDefaultNodesAndEdges:(i,s)=>{const o=typeof i<"u",u=typeof s<"u",l=o?wc(i,new Map,n().nodeOrigin,n().elevateNodesOnSelect):new Map;e({nodeInternals:l,edges:u?s:[],hasDefaultNodes:o,hasDefaultEdges:u})},updateNodeDimensions:i=>{const{onNodesChange:s,nodeInternals:o,fitViewOnInit:u,fitViewOnInitDone:l,fitViewOnInitOptions:c,domNode:d,nodeOrigin:p}=n(),h=d==null?void 0:d.querySelector(".react-flow__viewport");if(!h)return;const m=window.getComputedStyle(h),{m22:v}=new window.DOMMatrixReadOnly(m.transform),w=i.reduce((x,k)=>{const S=o.get(k.id);if(S!=null&&S.hidden)o.set(S.id,{...S,[ut]:{...S[ut],handleBounds:void 0}});else if(S){const E=_g(k.nodeElement);!!(E.width&&E.height&&(S.width!==E.width||S.height!==E.height||k.forceUpdate))&&(o.set(S.id,{...S,[ut]:{...S[ut],handleBounds:{source:gw(".source",k.nodeElement,v,p),target:gw(".target",k.nodeElement,v,p)}},...E}),x.push({id:S.id,type:"dimensions",dimensions:E}))}return x},[]);hb(o,p);const b=l||u&&!l&&pb(n,{initial:!0,...c});e({nodeInternals:new Map(o),fitViewOnInitDone:b}),(w==null?void 0:w.length)>0&&(s==null||s(w))},updateNodePositions:(i,s=!0,o=!1)=>{const{triggerNodeChanges:u}=n(),l=i.map(c=>{const d={id:c.id,type:"position",dragging:o};return s&&(d.positionAbsolute=c.positionAbsolute,d.position=c.position),d});u(l)},triggerNodeChanges:i=>{const{onNodesChange:s,nodeInternals:o,hasDefaultNodes:u,nodeOrigin:l,getNodes:c,elevateNodesOnSelect:d}=n();if(i!=null&&i.length){if(u){const p=CI(i,c()),h=wc(p,o,l,d);e({nodeInternals:h})}s==null||s(i)}},addSelectedNodes:i=>{const{multiSelectionActive:s,edges:o,getNodes:u}=n();let l,c=null;s?l=i.map(d=>Mr(d,!0)):(l=Hi(u(),i),c=Hi(o,[])),Pa({changedNodes:l,changedEdges:c,get:n,set:e})},addSelectedEdges:i=>{const{multiSelectionActive:s,edges:o,getNodes:u}=n();let l,c=null;s?l=i.map(d=>Mr(d,!0)):(l=Hi(o,i),c=Hi(u(),[])),Pa({changedNodes:c,changedEdges:l,get:n,set:e})},unselectNodesAndEdges:({nodes:i,edges:s}={})=>{const{edges:o,getNodes:u}=n(),l=i||u(),c=s||o,d=l.map(h=>(h.selected=!1,Mr(h.id,!1))),p=c.map(h=>Mr(h.id,!1));Pa({changedNodes:d,changedEdges:p,get:n,set:e})},setMinZoom:i=>{const{d3Zoom:s,maxZoom:o}=n();s==null||s.scaleExtent([i,o]),e({minZoom:i})},setMaxZoom:i=>{const{d3Zoom:s,minZoom:o}=n();s==null||s.scaleExtent([o,i]),e({maxZoom:i})},setTranslateExtent:i=>{var s;(s=n().d3Zoom)==null||s.translateExtent(i),e({translateExtent:i})},resetSelectedElements:()=>{const{edges:i,getNodes:s}=n(),u=s().filter(c=>c.selected).map(c=>Mr(c.id,!1)),l=i.filter(c=>c.selected).map(c=>Mr(c.id,!1));Pa({changedNodes:u,changedEdges:l,get:n,set:e})},setNodeExtent:i=>{const{nodeInternals:s}=n();s.forEach(o=>{o.positionAbsolute=xg(o.position,i)}),e({nodeExtent:i,nodeInternals:new Map(s)})},panBy:i=>{const{transform:s,width:o,height:u,d3Zoom:l,d3Selection:c,translateExtent:d}=n();if(!l||!c||!i.x&&!i.y)return!1;const p=rr.translate(s[0]+i.x,s[1]+i.y).scale(s[2]),h=[[0,0],[o,u]],m=l==null?void 0:l.constrain()(p,h,d);return l.transform(c,m),s[0]!==m.x||s[1]!==m.y||s[2]!==m.k},cancelConnection:()=>e({connectionNodeId:jr.connectionNodeId,connectionHandleId:jr.connectionHandleId,connectionHandleType:jr.connectionHandleType,connectionStatus:jr.connectionStatus,connectionStartHandle:jr.connectionStartHandle,connectionEndHandle:jr.connectionEndHandle}),reset:()=>e({...jr})}),Object.is),Rg=({children:e})=>{const n=O.useRef(null);return n.current||(n.current=dM()),ie.createElement(jj,{value:n.current},e)};Rg.displayName="ReactFlowProvider";const Nb=({children:e})=>O.useContext(iu)?ie.createElement(ie.Fragment,null,e):ie.createElement(Rg,null,e);Nb.displayName="ReactFlowWrapper";const hM={input:ob,default:rg,output:ub,group:Cg},pM={default:Xa,straight:Eg,step:kg,smoothstep:su,simplebezier:Sg},mM=[0,0],gM=[15,15],vM={x:0,y:0,zoom:1},yM={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0},Cb=O.forwardRef(({nodes:e,edges:n,defaultNodes:i,defaultEdges:s,className:o,nodeTypes:u=hM,edgeTypes:l=pM,onNodeClick:c,onEdgeClick:d,onInit:p,onMove:h,onMoveStart:m,onMoveEnd:v,onConnect:w,onConnectStart:b,onConnectEnd:x,onClickConnectStart:k,onClickConnectEnd:S,onNodeMouseEnter:E,onNodeMouseMove:T,onNodeMouseLeave:C,onNodeContextMenu:j,onNodeDoubleClick:M,onNodeDragStart:A,onNodeDrag:D,onNodeDragStop:L,onNodesDelete:U,onEdgesDelete:H,onSelectionChange:Q,onSelectionDragStart:ee,onSelectionDrag:R,onSelectionDragStop:G,onSelectionContextMenu:B,onSelectionStart:X,onSelectionEnd:Y,connectionMode:q=si.Strict,connectionLineType:V=Pr.Bezier,connectionLineStyle:I,connectionLineComponent:z,connectionLineContainerStyle:ae,deleteKeyCode:$="Backspace",selectionKeyCode:K="Shift",selectionOnDrag:Z=!1,selectionMode:oe=io.Full,panActivationKeyCode:ce="Space",multiSelectionKeyCode:pe=Ka()?"Meta":"Control",zoomActivationKeyCode:ge=Ka()?"Meta":"Control",snapToGrid:Me=!1,snapGrid:Ie=gM,onlyRenderVisibleElements:Pe=!1,selectNodesOnDrag:je=!0,nodesDraggable:be,nodesConnectable:Ve,nodesFocusable:ye,nodeOrigin:we=mM,edgesFocusable:Be,edgesUpdatable:st,elementsSelectable:lt,defaultViewport:We=vM,minZoom:Ge=.5,maxZoom:ht=2,translateExtent:Rt=sg,preventScrolling:Ut=!0,nodeExtent:pt,defaultMarkerColor:ct="#b1b1b7",zoomOnScroll:Ht=!0,zoomOnPinch:At=!0,panOnScroll:Le=!1,panOnScrollSpeed:mt=.5,panOnScrollMode:Ye=ti.Free,zoomOnDoubleClick:ot=!0,panOnDrag:Vt=!0,onPaneClick:Ze,onPaneMouseEnter:Pt,onPaneMouseMove:an,onPaneMouseLeave:Hn,onPaneScroll:Sn,onPaneContextMenu:en,children:Dt,onEdgeContextMenu:un,onEdgeDoubleClick:_t,onEdgeMouseEnter:$r,onEdgeMouseMove:ur,onEdgeMouseLeave:lr,onEdgeUpdate:cr,onEdgeUpdateStart:fr,onEdgeUpdateEnd:ln,onReconnect:Dr,onReconnectStart:gt,onReconnectEnd:se,reconnectRadius:re=10,edgeUpdaterRadius:he=10,onNodesChange:me,onEdgesChange:_e,noDragClassName:ke="nodrag",noWheelClassName:De="nowheel",noPanClassName:vt="nopan",fitView:bt=!1,fitViewOptions:ft,connectOnClick:Je=!0,attributionPosition:Vn,proOptions:ci,defaultEdgeOptions:fi,elevateNodesOnSelect:di=!0,elevateEdgesOnSelect:hi=!1,disableKeyboardA11y:yo=!1,autoPanOnConnect:Eu=!0,autoPanOnNodeDrag:nt=!0,connectionRadius:bu=20,isValidConnection:is,onError:wo,style:pi,id:_o,nodeDragThreshold:xo,...mi},cn)=>{const ss=_o||"1";return ie.createElement("div",{...mi,style:{...pi,...yM},ref:cn,className:Mt(["react-flow",o]),"data-testid":"rf__wrapper",id:_o},ie.createElement(Nb,null,ie.createElement(fM,{onInit:p,onMove:h,onMoveStart:m,onMoveEnd:v,onNodeClick:c,onEdgeClick:d,onNodeMouseEnter:E,onNodeMouseMove:T,onNodeMouseLeave:C,onNodeContextMenu:j,onNodeDoubleClick:M,nodeTypes:u,edgeTypes:l,connectionLineType:V,connectionLineStyle:I,connectionLineComponent:z,connectionLineContainerStyle:ae,selectionKeyCode:K,selectionOnDrag:Z,selectionMode:oe,deleteKeyCode:$,multiSelectionKeyCode:pe,panActivationKeyCode:ce,zoomActivationKeyCode:ge,onlyRenderVisibleElements:Pe,selectNodesOnDrag:je,defaultViewport:We,translateExtent:Rt,minZoom:Ge,maxZoom:ht,preventScrolling:Ut,zoomOnScroll:Ht,zoomOnPinch:At,zoomOnDoubleClick:ot,panOnScroll:Le,panOnScrollSpeed:mt,panOnScrollMode:Ye,panOnDrag:Vt,onPaneClick:Ze,onPaneMouseEnter:Pt,onPaneMouseMove:an,onPaneMouseLeave:Hn,onPaneScroll:Sn,onPaneContextMenu:en,onSelectionContextMenu:B,onSelectionStart:X,onSelectionEnd:Y,onEdgeContextMenu:un,onEdgeDoubleClick:_t,onEdgeMouseEnter:$r,onEdgeMouseMove:ur,onEdgeMouseLeave:lr,onReconnect:Dr??cr,onReconnectStart:gt??fr,onReconnectEnd:se??ln,reconnectRadius:re??he,defaultMarkerColor:ct,noDragClassName:ke,noWheelClassName:De,noPanClassName:vt,elevateEdgesOnSelect:hi,rfId:ss,disableKeyboardA11y:yo,nodeOrigin:we,nodeExtent:pt}),ie.createElement(aI,{nodes:e,edges:n,defaultNodes:i,defaultEdges:s,onConnect:w,onConnectStart:b,onConnectEnd:x,onClickConnectStart:k,onClickConnectEnd:S,nodesDraggable:be,nodesConnectable:Ve,nodesFocusable:ye,edgesFocusable:Be,edgesUpdatable:st,elementsSelectable:lt,elevateNodesOnSelect:di,minZoom:Ge,maxZoom:ht,nodeExtent:pt,onNodesChange:me,onEdgesChange:_e,snapToGrid:Me,snapGrid:Ie,connectionMode:q,translateExtent:Rt,connectOnClick:Je,defaultEdgeOptions:fi,fitView:bt,fitViewOptions:ft,onNodesDelete:U,onEdgesDelete:H,onNodeDragStart:A,onNodeDrag:D,onNodeDragStop:L,onSelectionDrag:R,onSelectionDragStart:ee,onSelectionDragStop:G,noPanClassName:vt,nodeOrigin:we,rfId:ss,autoPanOnConnect:Eu,autoPanOnNodeDrag:nt,onError:wo,connectionRadius:bu,isValidConnection:is,nodeDragThreshold:xo}),ie.createElement(sI,{onSelectionChange:Q}),Dt,ie.createElement(Mj,{proOptions:ci,position:Vn}),ie.createElement(dI,{rfId:ss,disableKeyboardA11y:yo})))});Cb.displayName="ReactFlow";const wM=e=>({x:e.transform[0],y:e.transform[1],zoom:e.transform[2]});function Tb(){return He(wM,kt)}const Rb=({id:e,x:n,y:i,width:s,height:o,style:u,color:l,strokeColor:c,strokeWidth:d,className:p,borderRadius:h,shapeRendering:m,onClick:v,selected:w})=>{const{background:b,backgroundColor:x}=u||{},k=l||b||x;return ie.createElement("rect",{className:Mt(["react-flow__minimap-node",{selected:w},p]),x:n,y:i,rx:h,ry:h,width:s,height:o,fill:k,stroke:c,strokeWidth:d,shapeRendering:m,onClick:v?S=>v(S,e):void 0})};Rb.displayName="MiniMapNode";var _M=O.memo(Rb);const xM=e=>e.nodeOrigin,SM=e=>e.getNodes().filter(n=>!n.hidden&&n.width&&n.height),kc=e=>e instanceof Function?e:()=>e;function kM({nodeStrokeColor:e="transparent",nodeColor:n="#e2e2e2",nodeClassName:i="",nodeBorderRadius:s=5,nodeStrokeWidth:o=2,nodeComponent:u=_M,onClick:l}){const c=He(SM,kt),d=He(xM),p=kc(n),h=kc(e),m=kc(i),v=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return ie.createElement(ie.Fragment,null,c.map(w=>{const{x:b,y:x}=ri(w,d).positionAbsolute;return ie.createElement(u,{key:w.id,x:b,y:x,width:w.width,height:w.height,style:w.style,selected:w.selected,className:m(w),color:p(w),borderRadius:s,strokeColor:h(w),strokeWidth:o,shapeRendering:v,onClick:l,id:w.id})}))}var EM=O.memo(kM);const bM=200,NM=150,CM=e=>{const n=e.getNodes(),i={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:i,boundingRect:n.length>0?Oj(ou(n,e.nodeOrigin),i):i,rfId:e.rfId}},TM="react-flow__minimap-desc";function Ab({style:e,className:n,nodeStrokeColor:i="transparent",nodeColor:s="#e2e2e2",nodeClassName:o="",nodeBorderRadius:u=5,nodeStrokeWidth:l=2,nodeComponent:c,maskColor:d="rgb(240, 240, 240, 0.6)",maskStrokeColor:p="none",maskStrokeWidth:h=1,position:m="bottom-right",onClick:v,onNodeClick:w,pannable:b=!1,zoomable:x=!1,ariaLabel:k="React Flow mini map",inversePan:S=!1,zoomStep:E=10,offsetScale:T=5}){const C=Et(),j=O.useRef(null),{boundingRect:M,viewBB:A,rfId:D}=He(CM,kt),L=(e==null?void 0:e.width)??bM,U=(e==null?void 0:e.height)??NM,H=M.width/L,Q=M.height/U,ee=Math.max(H,Q),R=ee*L,G=ee*U,B=T*ee,X=M.x-(R-M.width)/2-B,Y=M.y-(G-M.height)/2-B,q=R+B*2,V=G+B*2,I=`${TM}-${D}`,z=O.useRef(0);z.current=ee,O.useEffect(()=>{if(j.current){const K=yn(j.current),Z=pe=>{const{transform:ge,d3Selection:Me,d3Zoom:Ie}=C.getState();if(pe.sourceEvent.type!=="wheel"||!Me||!Ie)return;const Pe=-pe.sourceEvent.deltaY*(pe.sourceEvent.deltaMode===1?.05:pe.sourceEvent.deltaMode?1:.002)*E,je=ge[2]*Math.pow(2,Pe);Ie.scaleTo(Me,je)},oe=pe=>{const{transform:ge,d3Selection:Me,d3Zoom:Ie,translateExtent:Pe,width:je,height:be}=C.getState();if(pe.sourceEvent.type!=="mousemove"||!Me||!Ie)return;const Ve=z.current*Math.max(1,ge[2])*(S?-1:1),ye={x:ge[0]-pe.sourceEvent.movementX*Ve,y:ge[1]-pe.sourceEvent.movementY*Ve},we=[[0,0],[je,be]],Be=rr.translate(ye.x,ye.y).scale(ge[2]),st=Ie.constrain()(Be,we,Pe);Ie.transform(Me,st)},ce=$E().on("zoom",b?oe:null).on("zoom.wheel",x?Z:null);return K.call(ce),()=>{K.on("zoom",null)}}},[b,x,S,E]);const ae=v?K=>{const Z=jn(K);v(K,{x:Z[0],y:Z[1]})}:void 0,$=w?(K,Z)=>{const oe=C.getState().nodeInternals.get(Z);w(K,oe)}:void 0;return ie.createElement(wg,{position:m,style:e,className:Mt(["react-flow__minimap",n]),"data-testid":"rf__minimap"},ie.createElement("svg",{width:L,height:U,viewBox:`${X} ${Y} ${q} ${V}`,role:"img","aria-labelledby":I,ref:j,onClick:ae},k&&ie.createElement("title",{id:I},k),ie.createElement(EM,{onClick:$,nodeColor:s,nodeStrokeColor:i,nodeBorderRadius:u,nodeClassName:o,nodeStrokeWidth:l,nodeComponent:c}),ie.createElement("path",{className:"react-flow__minimap-mask",d:`M${X-B},${Y-B}h${q+B*2}v${V+B*2}h${-q-B*2}z
|
|
57
57
|
M${A.x},${A.y}h${A.width}v${A.height}h${-A.width}z`,fill:d,fillRule:"evenodd",stroke:p,strokeWidth:h,pointerEvents:"none"})))}Ab.displayName="MiniMap";var RM=O.memo(Ab);function AM(){return ie.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32"},ie.createElement("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"}))}function jM(){return ie.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5"},ie.createElement("path",{d:"M0 0h32v4.2H0z"}))}function IM(){return ie.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30"},ie.createElement("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"}))}function MM(){return ie.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},ie.createElement("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"}))}function PM(){return ie.createElement("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32"},ie.createElement("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"}))}const Vi=({children:e,className:n,...i})=>ie.createElement("button",{type:"button",className:Mt(["react-flow__controls-button",n]),...i},e);Vi.displayName="ControlButton";const qM=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom}),jb=({style:e,showZoom:n=!0,showFitView:i=!0,showInteractive:s=!0,fitViewOptions:o,onZoomIn:u,onZoomOut:l,onFitView:c,onInteractiveChange:d,className:p,children:h,position:m="bottom-left"})=>{const v=Et(),[w,b]=O.useState(!1),{isInteractive:x,minZoomReached:k,maxZoomReached:S}=He(qM,kt),{zoomIn:E,zoomOut:T,fitView:C}=co();if(O.useEffect(()=>{b(!0)},[]),!w)return null;const j=()=>{E(),u==null||u()},M=()=>{T(),l==null||l()},A=()=>{C(o),c==null||c()},D=()=>{v.setState({nodesDraggable:!x,nodesConnectable:!x,elementsSelectable:!x}),d==null||d(!x)};return ie.createElement(wg,{className:Mt(["react-flow__controls",p]),position:m,style:e,"data-testid":"rf__controls"},n&&ie.createElement(ie.Fragment,null,ie.createElement(Vi,{onClick:j,className:"react-flow__controls-zoomin",title:"zoom in","aria-label":"zoom in",disabled:S},ie.createElement(AM,null)),ie.createElement(Vi,{onClick:M,className:"react-flow__controls-zoomout",title:"zoom out","aria-label":"zoom out",disabled:k},ie.createElement(jM,null))),i&&ie.createElement(Vi,{className:"react-flow__controls-fitview",onClick:A,title:"fit view","aria-label":"fit view"},ie.createElement(IM,null)),s&&ie.createElement(Vi,{className:"react-flow__controls-interactive",onClick:D,title:"toggle interactivity","aria-label":"toggle interactivity"},x?ie.createElement(PM,null):ie.createElement(MM,null)),h)};jb.displayName="Controls";var OM=O.memo(jb),Mn;(function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"})(Mn||(Mn={}));function LM({color:e,dimensions:n,lineWidth:i}){return ie.createElement("path",{stroke:e,strokeWidth:i,d:`M${n[0]/2} 0 V${n[1]} M0 ${n[1]/2} H${n[0]}`})}function $M({color:e,radius:n}){return ie.createElement("circle",{cx:n,cy:n,r:n,fill:e})}const DM={[Mn.Dots]:"#91919a",[Mn.Lines]:"#eee",[Mn.Cross]:"#e2e2e2"},FM={[Mn.Dots]:1,[Mn.Lines]:1,[Mn.Cross]:6},zM=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function Ib({id:e,variant:n=Mn.Dots,gap:i=20,size:s,lineWidth:o=1,offset:u=2,color:l,style:c,className:d}){const p=O.useRef(null),{transform:h,patternId:m}=He(zM,kt),v=l||DM[n],w=s||FM[n],b=n===Mn.Dots,x=n===Mn.Cross,k=Array.isArray(i)?i:[i,i],S=[k[0]*h[2]||1,k[1]*h[2]||1],E=w*h[2],T=x?[E,E]:S,C=b?[E/u,E/u]:[T[0]/u,T[1]/u];return ie.createElement("svg",{className:Mt(["react-flow__background",d]),style:{...c,position:"absolute",width:"100%",height:"100%",top:0,left:0},ref:p,"data-testid":"rf__background"},ie.createElement("pattern",{id:m+e,x:h[0]%S[0],y:h[1]%S[1],width:S[0],height:S[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${C[0]},-${C[1]})`},b?ie.createElement($M,{color:v,radius:E/u}):ie.createElement(LM,{dimensions:T,color:v,lineWidth:o})),ie.createElement("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${m+e})`}))}Ib.displayName="Background";var BM=O.memo(Ib);function Mb(){return{inputTokens:0,outputTokens:0,cacheReadTokens:0,cacheCreateTokens:0}}function Pb(e,n=0){if(!e||typeof e!="object"||n>6)return null;const i=e;if(typeof i.input_tokens=="number"||typeof i.output_tokens=="number"||typeof i.cache_read_input_tokens=="number"||typeof i.cache_creation_input_tokens=="number")return{inputTokens:Number(i.input_tokens??0),outputTokens:Number(i.output_tokens??0),cacheReadTokens:Number(i.cache_read_input_tokens??0),cacheCreateTokens:Number(i.cache_creation_input_tokens??0)};for(const s of Object.values(i)){const o=Pb(s,n+1);if(o)return o}return null}function UM(e,n){e.inputTokens+=n.inputTokens,e.outputTokens+=n.outputTokens,e.cacheReadTokens+=n.cacheReadTokens,e.cacheCreateTokens+=n.cacheCreateTokens}const HM=/^(?:claude[-_]|gpt[-_]|o\d|codex[-_])/i;function qb(e,n=0){if(!e||typeof e!="object"||n>6)return null;const i=e;if(typeof i.model=="string"&&HM.test(i.model))return i.model;for(const s of Object.values(i)){const o=qb(s,n+1);if(o)return o}return null}function og(){return{agents:new Map,toolIndex:new Map,toolOwner:new Map,activeSubagentStack:new Map,lastSeq:0,totalEvents:0}}function Or(e){if(!e)return;const n=e.replace(/\\/g,"/").split("/").filter(Boolean);return n[n.length-1]}function Ag(e,n){return`${e}::${n}`}function Qa(e){return e.agent_type??e.subagent_type??"subagent"}function ag(e){return e.agent_id?e.agent_id:e.parent_tool_use_id?e.parent_tool_use_id:null}function Qs(e,n,i,s){const o=n;let u=e.agents.get(o);return u||(u={id:o,sessionId:n,label:"session",kind:"root",state:"active",startedAt:i,tools:[],prompts:[],toolCount:0,childCount:0,synthetic:s,inFlightTool:null,usage:Mb()},e.agents.set(o,u),u)}function Ob(e,n,i,s){const o=Ag(n,i),u=e.agents.get(o);if(!u)return null;!u.cwd&&s.cwd&&(u.cwd=s.cwd,u.cwdBasename=Or(s.cwd));const l=Qa(s);return l&&(u.label==="subagent"||!u.label)&&(u.label=l),u}function Ew(e,n,i){const s=n.session_id??"unknown",o=ag(n);if(o){const d=Ob(e,s,o,n);if(d)return d}const u=e.activeSubagentStack.get(s),l=u&&u.length>0?u[u.length-1]:null;if(l){const d=e.agents.get(Ag(s,l));if(d)return!d.cwd&&n.cwd&&(d.cwd=n.cwd,d.cwdBasename=Or(n.cwd)),d}const c=Qs(e,s,i,!1);return c.synthetic&&(c.synthetic=!1,c.startedAt=i),!c.cwd&&n.cwd&&(c.cwd=n.cwd,c.cwdBasename=Or(n.cwd)),c.label==="session"&&n.cwd&&(c.label=Or(n.cwd)??"session"),c}function VM(e,n,i,s,o){const u=Ag(n,i),l=Qs(e,n,o,!0);let c=e.agents.get(u);if(c){!c.cwd&&s.cwd&&(c.cwd=s.cwd,c.cwdBasename=Or(s.cwd));const d=Qa(s);return d&&(c.label==="subagent"||!c.label)&&(c.label=d),c}return c={id:u,sessionId:n,label:Qa(s),kind:"subagent",parentId:l.id,state:"active",startedAt:o,tools:[],prompts:[],cwd:s.cwd,cwdBasename:Or(s.cwd),toolCount:0,childCount:0,inFlightTool:null,usage:Mb()},e.agents.set(u,c),l.childCount+=1,c}function WM(e,n,i){const s=e.activeSubagentStack.get(n)??[];s.push(i),e.activeSubagentStack.set(n,s)}function GM(e,n,i){const s=e.activeSubagentStack.get(n);if(s){for(let o=s.length-1;o>=0;o--)if(s[o]===i){s.splice(o,1);break}s.length===0&&e.activeSubagentStack.delete(n)}}function Ec(e,n=80){if(e==null)return"";if(typeof e=="string")return e.length>n?e.slice(0,n-1)+"…":e;try{const i=JSON.stringify(e);return i.length>n?i.slice(0,n-1)+"…":i}catch{return String(e)}}function Gs(e){let n=null;for(let i=e.tools.length-1;i>=0;i--){const s=e.tools[i];if(s.endedAt==null){n=s;break}}e.inFlightTool=n}function KM(e,n,i,s){if(e.agents.size<=i)return!1;const o=[];for(const[l,c]of e.agents)c.state==="done"&&c.endedAt!=null&&n-c.endedAt>s&&o.push({id:l,endedAt:c.endedAt});if(o.length===0)return!1;o.sort((l,c)=>l.endedAt-c.endedAt);let u=0;for(const l of o){if(e.agents.size<=i)break;e.agents.delete(l.id),u++}return u>0}function YM(e,n,i){let s=!1;for(const o of e.agents.values()){let u=!1;for(const l of o.tools)l.endedAt==null&&n-l.startedAt>i&&(l.endedAt=l.startedAt+i,l.ok=!1,l.errorPreview="stale (no PostToolUse received)",e.toolIndex.delete(l.id),e.toolOwner.delete(l.id),u=!0,s=!0);u&&Gs(o)}return s}function bw(e,n){if(n.seq<=e.lastSeq)return e;const i=n.payload??{},s=n.receivedAt,o=i.hook_event_name??"Unknown";if(o==="__clear")return{...og(),lastSeq:n.seq};e.totalEvents+=1,e.lastSeq=n.seq;const u=i.session_id??"unknown";if(o==="ModelObserved"){const d=typeof i.model=="string"?i.model:null;if(d){const h=e.agents.get(u);h&&(h.model=d)}const p=i.subagentModels;if(p&&typeof p=="object")for(const[h,m]of Object.entries(p)){if(typeof m!="string")continue;const v=`${u}::${h}`,w=e.agents.get(v);w&&(w.model=m)}return e}if(o==="ContextObserved"){const d=i.context??null;if(d){const p=e.agents.get(u);p&&(p.context={msgsUser:Number(d.msgsUser??0),msgsAssistant:Number(d.msgsAssistant??0),toolUses:Number(d.toolUses??0),toolResults:Number(d.toolResults??0),systemReminders:Number(d.systemReminders??0),currentContextTokens:Number(d.currentContextTokens??0),claudeMdFiles:Array.isArray(d.claudeMdFiles)?d.claudeMdFiles:[]})}return e}if(o==="UsageObserved"){const d=i.usage??null;if(d){const p=e.agents.get(u);p&&(p.usage.inputTokens=Number(d.input_tokens??0),p.usage.outputTokens=Number(d.output_tokens??0),p.usage.cacheReadTokens=Number(d.cache_read_input_tokens??d.cached_input_tokens??0),p.usage.cacheCreateTokens=Number(d.cache_creation_input_tokens??0),typeof d.reasoning_output_tokens=="number"&&(p.usage.reasoningOutputTokens=Number(d.reasoning_output_tokens)))}return e}const l=Ew(e,i,s);l.provider||(l.provider=i.provider==="codex"?"codex":"claude"),typeof i.model_context_window=="number"&&i.model_context_window>0&&(l.contextWindow=i.model_context_window);const c=qb(i);switch(c&&(l.model=c),o){case"SessionStart":{const d=Qs(e,u,s,!1);d.synthetic=!1,d.state="active",d.startedAt=d.startedAt||s,!d.cwd&&i.cwd&&(d.cwd=i.cwd,d.cwdBasename=Or(i.cwd)),d.label==="session"&&i.cwd&&(d.label=Or(i.cwd)??"session");break}case"UserPromptSubmit":{for(const m of e.agents.values())m.sessionId===u&&m.kind==="subagent"&&m.state==="done"&&m.exitAt==null&&m.endedAt!=null&&m.endedAt<s&&(m.exitAt=s);const d=Qs(e,u,s,!1);d.state="active",d.endedAt=void 0,d.exitAt=void 0;const p=Ew(e,i,s);p.state="active",p.exitAt=void 0,p.endedAt=void 0;const h=(typeof i.prompt=="string"?i.prompt:typeof i.message=="string"?i.message:"")??"";h&&(p.prompts.push({at:s,text:h}),p.firstPrompt||(p.firstPrompt=Ec(h,120)));break}case"PreToolUse":{const d=i.tool_use_id??`${l.id}:${l.toolCount}`,p={id:d,name:i.tool_name??"?",input:i.tool_input,inputPreview:Ec(i.tool_input),agentId:l.id,startedAt:s};l.tools.push(p),l.toolCount+=1,l.state="active",e.toolIndex.set(d,p),e.toolOwner.set(d,l.id),Gs(l);break}case"PostToolUse":case"PostToolUseFailure":{const d=i.tool_use_id;if(!d)break;let p=e.toolIndex.get(d),h=!1;if(!p)for(const w of e.agents.values()){const b=w.tools.find(x=>x.id===d);if(b){p=b,h=!0;break}}if(!p)break;p.endedAt=s,p.ok=o==="PostToolUse",p.response=i.tool_response,o==="PostToolUseFailure"?p.errorPreview=Ec(i.tool_response):h&&(p.errorPreview=void 0);const m=Pb(i.tool_response);m&&(p.usage=m),e.toolIndex.delete(d);const v=e.toolOwner.get(d)??p.agentId;if(e.toolOwner.delete(d),v){const w=e.agents.get(v);w&&(m&&UM(w.usage,m),Gs(w))}break}case"SubagentStart":{const d=ag(i);if(!d)break;const p=VM(e,u,d,i,s);p.state="active",p.startedAt=p.startedAt||s,p.exitAt=void 0,p.endedAt=void 0;const h=Qa(i);h&&(p.label=h),WM(e,u,d);break}case"SubagentStop":{const d=ag(i);if(!d)break;const p=Ob(e,u,d,i);if(!p)break;p.state="done",p.endedAt=s,Gs(p),GM(e,u,d);break}case"Stop":case"SessionEnd":{const d=Qs(e,u,s,!1);d.state="done",d.endedAt=s,Gs(d);break}}return e}function jg(e){let n=5381;for(let i=0;i<e.length;i++)n=(n<<5)+n^e.charCodeAt(i);return Math.abs(n)%360}const XM=[{match:/^claude[-_](fable|mythos)[-_]5\b/i,rates:{input:10,output:50,cacheRead:1,cacheWrite:12.5}},{match:/^claude[-_]opus[-_]4[-_.](?:5|6|7|8)\b/i,rates:{input:5,output:25,cacheRead:.5,cacheWrite:6.25}},{match:/^claude[-_]opus[-_]4(?:[-_.]1)?\b/i,rates:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75}},{match:/^claude[-_]sonnet[-_]4[-_.](?:5|6)\b/i,rates:{input:3,output:15,cacheRead:.3,cacheWrite:3.75}},{match:/^claude[-_]sonnet[-_]4\b/i,rates:{input:3,output:15,cacheRead:.3,cacheWrite:3.75}},{match:/^claude[-_]haiku[-_]4[-_.]5\b/i,rates:{input:1,output:5,cacheRead:.1,cacheWrite:1.25}},{match:/^claude[-_]haiku[-_]3[-_.]5\b/i,rates:{input:.8,output:4,cacheRead:.08,cacheWrite:1}},{match:/^gpt[-_]5[-_.]3[-_.]codex/i,rates:{input:1.75,output:14,cacheRead:.175,cacheWrite:0}},{match:/^codex[-_]mini/i,rates:{input:1.5,output:6,cacheRead:.375,cacheWrite:0}},{match:/^gpt[-_]5[-_.]5\b/i,rates:{input:5,output:30,cacheRead:.5,cacheWrite:0}},{match:/^gpt[-_]5[-_.]4[-_.]mini/i,rates:{input:.75,output:4.5,cacheRead:.075,cacheWrite:0}},{match:/^gpt[-_]5[-_.]4[-_.]nano/i,rates:{input:.2,output:1.25,cacheRead:.02,cacheWrite:0}},{match:/^gpt[-_]5[-_.]4\b/i,rates:{input:2.5,output:15,cacheRead:.25,cacheWrite:0}},{match:/^o4[-_]mini/i,rates:{input:1.1,output:4.4,cacheRead:.275,cacheWrite:0}},{match:/^o3\b/i,rates:{input:2,output:8,cacheRead:.5,cacheWrite:0}}];function QM(e){return e?/^(?:gpt[-_]|codex[-_]|o\d)/i.test(e):!1}function Ig(e){if(!e)return null;for(const n of XM)if(n.match.test(e))return n.rates;return null}function Bt(e,n){const i=Ig(n);if(!i)return{input:0,output:0,cacheRead:0,cacheWrite:0,total:0};const u=(QM(n)?Math.max(0,e.inputTokens-e.cacheReadTokens):e.inputTokens)*i.input/1e6,l=e.outputTokens*i.output/1e6,c=e.cacheReadTokens*i.cacheRead/1e6,d=e.cacheCreateTokens*i.cacheWrite/1e6;return{input:u,output:l,cacheRead:c,cacheWrite:d,total:u+l+c+d}}const Nw=2e5,ZM=1e6,JM=[/\[1m\]/i,/^claude[-_]opus[-_]4[-_.](?:5|6|7|8)\b/i,/^claude[-_]sonnet[-_]4[-_.]6\b/i,/^claude[-_](fable|mythos)[-_]5\b/i],eP=[{match:/^gpt[-_]5[-_.]3[-_.]codex/i,window:256e3},{match:/^gpt[-_]5[-_.]2[-_.]codex/i,window:256e3},{match:/^gpt[-_]5[-_.]\d+[-_.]codex/i,window:256e3},{match:/^gpt[-_]5/i,window:2e5},{match:/^o\d/i,window:2e5}];function Lb(e){if(!e)return Nw;for(const n of JM)if(n.test(e))return ZM;for(const n of eP)if(n.match.test(e))return n.window;return Nw}function ze(e){return e<=0?"—":e<.005?"<1¢":e<1?`${(e*100).toFixed(e<.1?1:0)}¢`:e<100?`$${e.toFixed(2)}`:e<1e4?`$${e.toFixed(0)}`:`$${(e/1e3).toFixed(1)}k`}function Za(e,n){if(e<=0||n<10)return null;const i=e/n,s=i*60;return s>=.01?`${ze(s)}/min`:`${ze(i*3600)}/hr`}function vn(e){return e.toLocaleString()}function tP(e){return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(1)} KB`:`${(e/1024/1024).toFixed(2)} MB`}function nP({agent:e,onClose:n}){var p;const i=e.context,s=e.usage,o=(i==null?void 0:i.currentContextTokens)??0,u=Lb(e.model),l=Math.min(100,o/u*100),c=Bt(s,e.model),d=s.inputTokens+s.cacheReadTokens+s.cacheCreateTokens;return _.jsx("div",{className:"ctx-modal-backdrop",onClick:n,role:"presentation",children:_.jsxs("div",{className:"ctx-modal",onClick:h=>h.stopPropagation(),role:"dialog","aria-label":"Context breakdown",children:[_.jsxs("header",{className:"ctx-modal-head",children:[_.jsxs("div",{children:[_.jsxs("div",{className:"ctx-modal-title",children:["Context · ",e.label]}),_.jsx("div",{className:"ctx-modal-sub",children:"approximation — CC's /context isn't hook-exposed"})]}),_.jsx("button",{className:"ctx-modal-close",onClick:n,"aria-label":"Close",children:"×"})]}),_.jsxs("section",{className:"ctx-window-row",children:[_.jsx("div",{className:"ctx-window-bar",role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":Math.round(l),children:_.jsx("div",{className:"ctx-window-fill",style:{width:`${l}%`}})}),_.jsxs("div",{className:"ctx-window-meta",children:[_.jsxs("span",{className:"ctx-window-pct",children:[l.toFixed(1),"%"]}),_.jsxs("span",{className:"ctx-window-num",children:[vn(o)," / ",vn(u)," tok (current turn)"]})]})]}),_.jsx("h3",{className:"ctx-section-title",children:"Cumulative usage · whole session"}),_.jsxs("div",{className:"ctx-grid",children:[_.jsx(An,{label:"input tokens",val:vn(s.inputTokens)}),_.jsx(An,{label:"output tokens",val:vn(s.outputTokens)}),_.jsx(An,{label:"cache reads",val:vn(s.cacheReadTokens)}),_.jsx(An,{label:"cache writes",val:vn(s.cacheCreateTokens)}),_.jsx(An,{label:"cumulative total",val:vn(d)}),_.jsx(An,{label:"estimated cost",val:ze(c.total),accent:!0})]}),_.jsx("h3",{className:"ctx-section-title",children:"Transcript composition"}),_.jsxs("div",{className:"ctx-grid",children:[_.jsx(An,{label:"user messages",val:vn((i==null?void 0:i.msgsUser)??0)}),_.jsx(An,{label:"assistant messages",val:vn((i==null?void 0:i.msgsAssistant)??0)}),_.jsx(An,{label:"tool uses",val:vn((i==null?void 0:i.toolUses)??0)}),_.jsx(An,{label:"tool results",val:vn((i==null?void 0:i.toolResults)??0)}),_.jsx(An,{label:"system-reminders",val:vn((i==null?void 0:i.systemReminders)??0)})]}),_.jsx("h3",{className:"ctx-section-title",children:"CLAUDE.md files in scope"}),(((p=i==null?void 0:i.claudeMdFiles)==null?void 0:p.length)??0)===0?_.jsx("div",{className:"ctx-empty",children:"No CLAUDE.md files found on the path from cwd to ~/.claude."}):_.jsx("ul",{className:"ctx-md-list",children:i.claudeMdFiles.map(h=>_.jsxs("li",{children:[_.jsx("span",{className:"ctx-md-path",title:h.path,children:h.path}),_.jsx("span",{className:"ctx-md-size",children:tP(h.bytes)})]},h.path))})]})})}function An({label:e,val:n,accent:i}){return _.jsxs("div",{className:`ctx-row${i?" accent":""}`,children:[_.jsx("span",{className:"ctx-row-label",children:e}),_.jsx("span",{className:"ctx-row-val",children:n})]})}function rP({currentContextTokens:e,modelId:n,size:i=26,onClick:s,title:o}){const u=Lb(n),l=Math.min(1,e/u),c=i/2-3,d=i/2,p=2*Math.PI*c,h=p*l,m=l>.9?"var(--err)":l>.7?"var(--inflight)":"var(--accent)";return _.jsx("button",{type:"button",className:"ctx-donut",onClick:s,title:o??`context: ${e.toLocaleString()} / ${u.toLocaleString()} (${(l*100).toFixed(1)}%)`,"aria-label":"Show context breakdown",children:_.jsxs("svg",{width:i,height:i,viewBox:`0 0 ${i} ${i}`,children:[_.jsx("circle",{cx:d,cy:d,r:c,stroke:"var(--line)",strokeWidth:"2.5",fill:"none"}),_.jsx("circle",{cx:d,cy:d,r:c,stroke:m,strokeWidth:"2.5",fill:"none",strokeDasharray:`${h} ${p-h}`,strokeDashoffset:p/4,strokeLinecap:"round",style:{transition:"stroke-dasharray 400ms ease"}}),_.jsx("text",{x:d,y:d+3,textAnchor:"middle",fontSize:"8",fill:"var(--text)",fontWeight:"600",children:Math.round(l*100)})]})})}function iP(e,n){const i=Ig(n);if(!i)return"no rates for this model";const s=l=>l.toLocaleString(),o=l=>`$${l}/MTok`,u=Bt(e,n);return[`model: ${n}`,`input ${s(e.inputTokens).padStart(14)} × ${o(i.input).padEnd(11)} = ${ze(u.input)}`,`output ${s(e.outputTokens).padStart(14)} × ${o(i.output).padEnd(11)} = ${ze(u.output)}`,`cache r ${s(e.cacheReadTokens).padStart(14)} × ${o(i.cacheRead).padEnd(11)} = ${ze(u.cacheRead)}`,`cache w ${s(e.cacheCreateTokens).padStart(14)} × ${o(i.cacheWrite).padEnd(11)} = ${ze(u.cacheWrite)}`,"─────────────────────────────────────────",`total = ${ze(u.total)}`].join(`
|
|
58
58
|
`)}function sP(e,n,i){const s=(n??i)-e;if(s<1e3)return`${Math.max(0,s)}ms`;const o=Math.floor(s/1e3);if(o<60)return`${o}s`;const u=Math.floor(o/60),l=o%60;return`${u}m ${String(l).padStart(2,"0")}s`}function oP({data:e,selected:n}){var p;const i=e.now??Date.now(),s=["agent-node",`state-${e.state}`,e.synthetic?"synthetic":"",n?"selected":""].filter(Boolean).join(" "),o=e.tools.filter(h=>!h.endedAt).length,l=`hsl(${jg(e.sessionId)} 70% 60%)`,c=((p=e.context)==null?void 0:p.currentContextTokens)??0,d=e.kind==="root"&&c>0;return _.jsxs("div",{className:s,style:{"--accent":l},children:[_.jsx("span",{className:"accent-stripe"}),_.jsx(Zi,{type:"target",position:Ce.Left,style:{background:"transparent",border:"none"}}),_.jsxs("div",{className:"head",children:[_.jsxs("div",{className:"title",children:[_.jsx(aP,{state:e.state}),_.jsx("span",{className:"label",title:e.cwd,children:e.label}),e.synthetic&&_.jsx("span",{className:"synth-tag",title:"No SessionStart captured — synthesised",children:"?"})]}),_.jsxs("div",{className:"head-right",children:[d&&e.onOpenContext&&_.jsx(rP,{currentContextTokens:c,modelId:e.model,onClick:()=>e.onOpenContext(e.sessionId)}),_.jsx("div",{className:"time",title:`Started ${new Date(e.startedAt).toLocaleTimeString()}`,children:sP(e.startedAt,e.endedAt,i)})]})]}),_.jsxs("div",{className:"sub",children:[e.kind==="root"?"session":"subagent",e.childCount>0&&_.jsxs("span",{className:"spawn-badge",title:`${e.childCount} subagents spawned`,children:["→ ",e.childCount]}),e.cwdBasename&&e.kind==="subagent"?` · ${e.cwdBasename}`:"",e.model&&_.jsx("span",{className:"model-chip",title:e.model,children:fo(e.model)})]}),e.tools.length>0&&_.jsx(lP,{tools:e.tools,now:i}),_.jsxs("div",{className:"meta",children:[_.jsxs("span",{children:[_.jsx("b",{children:e.toolCount})," tools"]}),o>0&&_.jsxs("span",{className:"inflight-meta",children:[_.jsx("b",{children:o})," in-flight"]}),e.usage.inputTokens+e.usage.outputTokens>0&&_.jsxs("span",{className:"tokens-meta",title:`in:${e.usage.inputTokens} out:${e.usage.outputTokens} cache-r:${e.usage.cacheReadTokens} cache-c:${e.usage.cacheCreateTokens}${(e.usage.reasoningOutputTokens??0)>0?` reasoning:${e.usage.reasoningOutputTokens}`:""}`,children:[_.jsx("b",{children:uP(e.usage.inputTokens+e.usage.outputTokens)})," tok"]}),e.model&&Ig(e.model)&&(()=>{const h=Bt(e.usage,e.model);if(h.total<=0)return null;const m=Math.max(0,((e.endedAt??i)-e.startedAt)/1e3),v=e.state==="active"?Za(h.total,m):null,w=iP(e.usage,e.model)+(v?`
|
|
59
|
-
burn: ${v}`:"");return _.jsxs("span",{className:"cost-meta",title:w,children:[_.jsx("b",{children:ze(h.total)}),v&&_.jsx("span",{className:"cost-rate",children:v})]})})()]}),_.jsx(Zi,{type:"source",position:Ce.Right,style:{background:"transparent",border:"none"}})]})}function aP({state:e}){const n=e==="active"?"live":e==="done"?"done":"err";return _.jsx("span",{className:`state-pill state-${e}`,children:n})}function uP(e){return e<1e3?`${e}`:e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(2)}M`}function lP({tools:e,now:n}){const u=new Array(24).fill(0);let l=0;for(const v of e){const w=n-v.startedAt;if(w<0||w>=6e4)continue;const b=23-Math.floor(w/2500);b>=0&&b<24&&(u[b]+=1,l+=1)}const c=Math.max(1,...u),d=132,p=14,h=d/24,m=c/(2500/1e3);return _.jsxs("div",{className:"tool-spark-row",title:`${l} tool calls in last 60s · peak ${m.toFixed(1)}/s`,children:[_.jsx("svg",{className:"tool-spark",width:d,height:p,viewBox:`0 0 ${d} ${p}`,"aria-hidden":!0,children:u.map((v,w)=>{const b=v===0?1.5:Math.max(1.5,v/c*p),x=w===23&&v>0,S=`tool-spark-bar${v>0?" active":""}${x?" latest":""}`;return _.jsx("rect",{x:w*h+.4,y:p-b,width:Math.max(.5,h-1),height:b,rx:.8,className:S},w)})}),_.jsx("span",{className:"tool-spark-label",children:"60s"})]})}function fo(e){const n=e.match(/^claude[-_](opus|sonnet|haiku|fable|mythos)[-_](\d+(?:[-_.]\d+)*)/i);if(n){const o=n[1][0].toUpperCase()+n[1].slice(1).toLowerCase(),u=n[2].replace(/[-_]/g,".");return`${o} ${u}`}const i=e.match(/^gpt[-_](\d+(?:[-_.]\d+)*)[-_]codex\b/i);if(i)return`GPT-${i[1].replace(/[-_]/g,".")} Codex`;const s=e.match(/^gpt[-_](\d+(?:[-_.]\d+)*)/i);return s?`GPT-${s[1].replace(/[-_]/g,".")}`:e}function Cw(e){if(e==null)return"(none)";if(typeof e=="string")return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}function cP(e){if(e.endedAt==null)return"in-flight…";const n=e.endedAt-e.startedAt;return n<1e3?`${n}ms`:`${(n/1e3).toFixed(2)}s`}function fP({tool:e,onClose:n}){O.useEffect(()=>{const s=o=>{o.key==="Escape"&&n()};return window.addEventListener("keydown",s),()=>window.removeEventListener("keydown",s)},[n]);const i=e.endedAt==null?"inflight":e.ok===!1?"err":"done";return _.jsx("div",{className:"modal-backdrop",onClick:n,role:"dialog","aria-modal":"true",children:_.jsxs("div",{className:"modal",onClick:s=>s.stopPropagation(),children:[_.jsxs("header",{className:"modal-head",children:[_.jsxs("div",{className:"modal-title",children:[_.jsx("span",{className:`status-dot ${i}`}),_.jsx("span",{className:"modal-tool-name",children:e.name}),_.jsxs("span",{className:"modal-tool-id",title:e.id,children:[e.id.slice(0,12),"…"]})]}),_.jsxs("div",{className:"modal-actions",children:[_.jsx("span",{className:"modal-dur",children:cP(e)}),_.jsx("button",{className:"btn icon-btn",onClick:n,"aria-label":"Close (Esc)",title:"Close (Esc)",children:"×"})]})]}),_.jsxs("section",{className:"modal-body",children:[_.jsxs("div",{className:"modal-section",children:[_.jsx("h4",{children:"Input"}),_.jsx("pre",{children:Cw(e.input??e.inputPreview)})]}),_.jsxs("div",{className:"modal-section",children:[_.jsxs("h4",{children:["Response ",i==="err"&&_.jsx("span",{className:"err-tag",children:"error"})]}),_.jsx("pre",{children:e.endedAt==null?"(waiting…)":Cw(e.response??e.errorPreview)})]})]})]})})}const Oa=18,Tw=26,dP=12;function hP(e){const n=new Map;for(const o of e.nodeInternals.values()){const u=o.data;if(!(u!=null&&u.sessionId)||u.exitAt!=null||o.width==null||o.height==null)continue;const l=o.position.x,c=o.position.y,d=l+o.width,p=c+o.height,h=n.get(u.sessionId);h?(h.minX=Math.min(h.minX,l),h.minY=Math.min(h.minY,c),h.maxX=Math.max(h.maxX,d),h.maxY=Math.max(h.maxY,p),u.kind==="root"&&(h.label=Rw(u)??h.label)):n.set(u.sessionId,{minX:l,minY:c,maxX:d,maxY:p,label:Rw(u)??u.sessionId})}const i=new Map;for(const o of n.values())i.set(o.label,(i.get(o.label)??0)+1);const s=[];for(const[o,u]of n){const c=(i.get(u.label)??0)>1?`${u.label} · ${pP(o)}`:u.label;s.push({sessionId:o,label:c,x:u.minX-Oa,y:u.minY-Oa-Tw,w:u.maxX-u.minX+Oa*2,h:u.maxY-u.minY+Oa*2+Tw})}return s}function pP(e){const n=e.match(/[a-zA-Z0-9]{4}/);return n?n[0]:e.slice(0,4)}function Rw(e){if(e.kind==="root")return e.label}function mP(){const{x:e,y:n,zoom:i}=Tb(),s=co(),o=He(hP,gP);if(o.length<=1)return null;const u=l=>{try{const c=s.getNodes().filter(d=>{const p=d.data;return(p==null?void 0:p.sessionId)===l});if(c.length===0)return;s.fitView({padding:.3,duration:500,nodes:c})}catch{}};return _.jsx("div",{className:"session-clusters",children:o.map(l=>{const c=jg(l.sessionId),d={position:"absolute",left:l.x*i+e,top:l.y*i+n,width:l.w*i,height:l.h*i,borderColor:`hsl(${c} 65% 55% / 0.32)`,background:`hsl(${c} 70% 50% / 0.04)`},p={position:"absolute",left:l.x*i+e+16*i,top:(l.y-dP)*i+n,color:`hsl(${c} 70% 78%)`,borderColor:`hsl(${c} 65% 55% / 0.5)`,transform:`scale(${Math.min(1,i)})`,transformOrigin:"left top"};return _.jsxs(ie.Fragment,{children:[_.jsx("div",{className:"cluster-card",style:d,"aria-hidden":!0}),_.jsx("button",{type:"button",className:"cluster-label",style:p,title:`Fit view to ${l.label} · drag the wrapper to move the whole session`,onClick:()=>u(l.sessionId),children:l.label})]},l.sessionId)})})}function gP(e,n){if(e.length!==n.length)return!1;for(let i=0;i<e.length;i++){const s=e[i],o=n[i];if(s.sessionId!==o.sessionId||s.label!==o.label||s.x!==o.x||s.y!==o.y||s.w!==o.w||s.h!==o.h)return!1}return!0}function vP({data:e}){return _.jsx("div",{className:"session-group-handle",style:{width:(e==null?void 0:e.w)??0,height:(e==null?void 0:e.h)??0}})}const $b=600,yP=36,ug=16,wP=60,_P=6,Aw=220,jw=96,xP=28,SP={Read:"file",Write:"file",Edit:"file",MultiEdit:"file",Glob:"file",Grep:"file",LS:"file",NotebookEdit:"file",Bash:"shell",PowerShell:"shell",shell:"shell",exec_command:"shell",shell_command:"shell",write_stdin:"shell",wait:"shell",apply_patch:"file",update_plan:"task",WebFetch:"web",WebSearch:"web",Task:"agent",Agent:"agent",TodoWrite:"task",TaskCreate:"task",TaskUpdate:"task",TaskList:"task",TaskGet:"task",TaskOutput:"task",TaskStop:"task",EnterPlanMode:"plan",ExitPlanMode:"plan",AskUserQuestion:"plan",Skill:"plan",Workflow:"plan",ScheduleWakeup:"other",CronCreate:"other",CronList:"other",CronDelete:"other",Monitor:"other",PushNotification:"other",RemoteTrigger:"other",ToolSearch:"other"};function kP(e){return e.startsWith("mcp__")?"mcp":SP[e]??"other"}const EP={Read:"📖",Write:"💾",Edit:"✏️",MultiEdit:"🔧",Glob:"🗺️",Grep:"🔎",Bash:"⚡",PowerShell:"💻",shell:"⚡",exec_command:"⚡",shell_command:"⚡",write_stdin:"💻",wait:"⏳",apply_patch:"🩹",update_plan:"📋",LS:"📂",Task:"🤖",Agent:"🤖",TodoWrite:"📋",TaskCreate:"📋",TaskUpdate:"📝",TaskList:"🗂️",TaskGet:"🗂️",TaskOutput:"📤",TaskStop:"🛑",WebFetch:"🌐",WebSearch:"🔭",ToolSearch:"🧰",NotebookEdit:"📓",EnterPlanMode:"🧭",ExitPlanMode:"🏁",AskUserQuestion:"❓",ScheduleWakeup:"⏰",CronCreate:"⏰",CronList:"📅",CronDelete:"🗑️",Skill:"🎯",Workflow:"🎬",Monitor:"📡",PushNotification:"🔔",RemoteTrigger:"📡"};function Iw(e){return e.startsWith("mcp__")?"🔌":EP[e]??"✨"}const bP={git:"🐙",gh:"🐙",glab:"🐙",npm:"📦",pnpm:"📦",yarn:"📦",bun:"📦",brew:"🍺",node:"🟢",deno:"🟢",python:"🐍",python3:"🐍",py:"🐍",pip:"🐍",pip3:"🐍",uv:"🐍",ruby:"💎",bundle:"💎",gem:"💎",cargo:"🦀",rustc:"🦀",rustup:"🦀",go:"🐹",docker:"🐳","docker-compose":"🐳",podman:"🐳",kubectl:"☸️",helm:"☸️",k9s:"☸️",grep:"🔎",rg:"🔎",ag:"🔎",ack:"🔎",find:"🔍",fd:"🔍",locate:"🔍",which:"🔍",ls:"📂",dir:"📂",tree:"📂",cat:"📄",head:"📄",tail:"📄",less:"📄",more:"📄",bat:"📄",cp:"📋",mv:"✂️",rm:"🗑️",rmdir:"🗑️",mkdir:"📁",touch:"📁",sed:"✏️",awk:"✏️",tr:"✏️",curl:"🌐",wget:"🌐",http:"🌐",httpie:"🌐",ssh:"🔐",scp:"🔐",rsync:"🔐",ping:"📡",make:"🔨",cmake:"🔨",ninja:"🔨",bazel:"🔨",just:"🔨",terraform:"🏗️",ansible:"📕",pulumi:"🏗️",ps:"📊",top:"📊",htop:"📊",btm:"📊",kill:"💀",pkill:"💀",systemctl:"⚙️",service:"⚙️",tar:"🗜️",zip:"🗜️",unzip:"🗜️",gzip:"🗜️","7z":"🗜️",vim:"📝",nvim:"📝",nano:"📝",emacs:"📝",code:"📝",jq:"🪺",yq:"🪺",echo:"💬",printf:"💬",ffmpeg:"🎞️",ffprobe:"🎞️",imagemagick:"🖼️",convert:"🖼️","Get-ChildItem":"📂","Get-Content":"📄","Set-Content":"💾","Out-File":"💾","Add-Content":"💾","Set-Location":"📍","Get-Location":"📍","Get-Process":"📊","Start-Process":"▶️","Stop-Process":"💀","Invoke-WebRequest":"🌐","Invoke-RestMethod":"🌐","New-Item":"📁","Remove-Item":"🗑️","Copy-Item":"📋","Move-Item":"✂️","Test-Path":"🔍","Where-Object":"🔎","ForEach-Object":"🔁","Select-Object":"🎯","Measure-Object":"📊","Get-Service":"⚙️","Restart-Service":"⚙️","ConvertTo-Json":"🪺","ConvertFrom-Json":"🪺"};function Db(e){if(!e)return null;let n=e.trim();if(!n)return null;const i=n.match(/^(?:bash|sh|zsh|fish|powershell|pwsh)(?:\.exe)?\s+(?:-c|-Command|-NoProfile|-NonInteractive|\s)+["']([^"']+)["']/i);if(i)return Db(i[1]);for(;;){const u=n.match(/^([A-Z_][A-Z0-9_]*=\S*)\s+/);if(!u)break;n=n.slice(u[0].length)}n=n.replace(/^sudo(?:\s+-\S+)*\s+/,""),n=n.replace(/^(?:time|nohup|xargs)\s+/,"");const s=n.match(/^([^\s|;&<>(]+)/);if(!s)return null;let o=s[1];return o=o.replace(/^.*[/\\]/,""),o=o.replace(/\.(exe|cmd|bat|ps1)$/i,""),o||null}function NP(e){if(typeof e=="string")return e;if(!e||typeof e!="object")return null;const n=e;if(typeof n.cmd=="string")return n.cmd;if(typeof n.command=="string")return n.command;if(Array.isArray(n.command)&&n.command.every(i=>typeof i=="string")){const i=n.command;if(/powershell|cmd|bash|sh(\.exe)?$/i.test(i[0]??"")){const s=i.findIndex(o=>/^(-Command|-c)$/i.test(o));if(s>=0&&s+1<i.length)return i[s+1]}return i.join(" ")}return typeof n.script=="string"?n.script:null}const CP=new Set(["Bash","PowerShell","shell","exec_command","shell_command","write_stdin","wait"]),TP=new Set(["shell","exec_command","shell_command","write_stdin","wait","apply_patch","update_plan"]);function RP(e,n){return TP.has(e)?Math.max(jw,34+n.length*7.5):jw}function AP(e,n){if(!CP.has(e))return null;const i=NP(n);if(!i)return null;const s=Db(i);return s?{emoji:bP[s]??"⚙️",label:s,category:"shell",detail:i}:null}const jP=new Set(["Read","Write","Edit","MultiEdit","NotebookEdit","LS","Glob","apply_patch"]),Mw={ts:"🟦",tsx:"🟦",d:"🟦",js:"🟨",jsx:"🟨",mjs:"🟨",cjs:"🟨",py:"🐍",pyi:"🐍",ipynb:"📓",rs:"🦀",go:"🐹",rb:"💎",erb:"💎",java:"☕",kt:"☕",scala:"☕",gradle:"☕",cs:"🔷",fs:"🔷",php:"🐘",swift:"🦅",c:"🇨",cpp:"🇨",cc:"🇨",h:"🇨",hpp:"🇨",md:"📝",mdx:"📝",rst:"📝",json:"🪺",json5:"🪺",jsonl:"🪺",yaml:"⚙️",yml:"⚙️",toml:"⚙️",ini:"⚙️",conf:"⚙️",cfg:"⚙️",xml:"📰",html:"🌐",htm:"🌐",vue:"🌐",svelte:"🌐",css:"🎨",scss:"🎨",sass:"🎨",less:"🎨",sh:"⚡",bash:"⚡",zsh:"⚡",fish:"⚡",ps1:"⚡",txt:"📄",log:"📄",out:"📄",csv:"📊",tsv:"📊",xlsx:"📊",xls:"📊",pdf:"📕",png:"🖼️",jpg:"🖼️",jpeg:"🖼️",gif:"🖼️",webp:"🖼️",svg:"🖼️",ico:"🖼️",mp4:"🎬",mov:"🎬",avi:"🎬",mkv:"🎬",webm:"🎬",mp3:"🎵",wav:"🎵",ogg:"🎵",flac:"🎵",zip:"🗜️",tar:"🗜️",gz:"🗜️",bz2:"🗜️","7z":"🗜️",xz:"🗜️",rar:"🗜️",env:"🔐",lock:"🔐",pem:"🔐",key:"🔐",crt:"🔐",sql:"🗄️",db:"🗄️",sqlite:"🗄️",parquet:"🗄️"},Pw={dockerfile:"🐳",makefile:"🔨",rakefile:"💎","package.json":"📦","pnpm-lock.yaml":"📦","yarn.lock":"📦","cargo.toml":"🦀","cargo.lock":"🦀","go.mod":"🐹","go.sum":"🐹","pyproject.toml":"🐍","requirements.txt":"🐍","readme.md":"📖",readme:"📖",license:"📜",".gitignore":"🐙",".gitattributes":"🐙",".env":"🔐",".dockerignore":"🐳"};function IP(e){const i=e.replace(/\\/g,"/").replace(/\/+$/,""),s=i.lastIndexOf("/");return s>=0?i.slice(s+1):i}function MP(e){const n=e.toLowerCase();if(Pw[n])return Pw[n];if(n.startsWith("dockerfile."))return"🐳";if(/\.(test|spec)\.[a-z]+$/.test(n))return"🧪";const i=n.lastIndexOf(".");if(i>0&&i<n.length-1){const s=n.slice(i+1);if(Mw[s])return Mw[s]}return"📄"}function PP(e,n){if(!n||typeof n!="object")return null;const i=n;if(e==="apply_patch"&&typeof i.patch=="string"){const s=i.patch.match(/^\*\*\* (?:Update|Add|Delete) File: (.+)$/m);return s?s[1].trim():null}return typeof i.file_path=="string"?i.file_path:typeof i.notebook_path=="string"?i.notebook_path:typeof i.path=="string"?i.path:e==="Glob"&&typeof i.pattern=="string"?i.pattern:null}function qP(e,n){if(!jP.has(e))return null;const i=PP(e,n);if(!i)return null;const s=IP(i);return s?{emoji:e==="LS"?"📂":MP(s),label:s,category:"file",detail:i}:null}const Fb={github:{emoji:"🐙",name:"GitHub"},git:{emoji:"🐙",name:"Git"},gitlab:{emoji:"🦊",name:"GitLab"},slack:{emoji:"💬",name:"Slack"},discord:{emoji:"💬",name:"Discord"},linear:{emoji:"📐",name:"Linear"},jira:{emoji:"🅹",name:"Jira"},atlassian:{emoji:"🅰️",name:"Atlassian"},notion:{emoji:"📓",name:"Notion"},asana:{emoji:"📋",name:"Asana"},intercom:{emoji:"💬",name:"Intercom"},figma:{emoji:"🎨",name:"Figma"},gmail:{emoji:"📧",name:"Gmail"},calendar:{emoji:"📅",name:"Calendar"},drive:{emoji:"☁️",name:"Drive"},zoom:{emoji:"📹",name:"Zoom"},spotify:{emoji:"🎵",name:"Spotify"},youtube:{emoji:"📺",name:"YouTube"},ccd_session:{emoji:"📡",name:"Session"},ccd_directory:{emoji:"📂",name:"Directory"},ccd_session_mgmt:{emoji:"📡",name:"Sessions"},mcp_registry:{emoji:"🧰",name:"Registry"},"computer-use":{emoji:"🖱️",name:"Computer"},"claude-in-chrome":{emoji:"🌐",name:"Chrome"},"claude-preview":{emoji:"👀",name:"Preview"},"scheduled-tasks":{emoji:"⏰",name:"Scheduler"},visualize:{emoji:"🎨",name:"Visualize"},"plugin-design-asana":{emoji:"📋",name:"Asana"},"plugin-design-atlassian":{emoji:"🅰️",name:"Atlassian"},"plugin-design-figma":{emoji:"🎨",name:"Figma"},"plugin-design-intercom":{emoji:"💬",name:"Intercom"},"plugin-design-linear":{emoji:"📐",name:"Linear"},"plugin-design-notion":{emoji:"📓",name:"Notion"},"plugin-design-slack":{emoji:"💬",name:"Slack"}};function zb(e){if(!e.startsWith("mcp__"))return null;const n=e.slice(5),i=n.indexOf("__");return i<=0?{server:n,method:""}:{server:n.slice(0,i),method:n.slice(i+2)}}function OP(e){let n=5381;for(let i=0;i<e.length;i++)n=(n<<5)+n^e.charCodeAt(i);return Math.abs(n)%360}function LP(e,n){const i=zb(e);if(!i)return null;const{server:s,method:o}=i;if(!o)return null;const u=Fb[s.toLowerCase()];return{emoji:(u==null?void 0:u.emoji)??"🔌",label:o,category:"mcp",detail:u?`${u.name} · ${o}`:`${s} · ${o}`}}function $P(e,n){return AP(e,n)??qP(e,n)??LP(e)}const DP={shell:"Shell",exec_command:"Shell",shell_command:"Shell",write_stdin:"stdin",wait:"wait",apply_patch:"Edit",update_plan:"Plan"};function FP(e){const n=zb(e);if(n){const s=Fb[n.server.toLowerCase()];return s?{emoji:s.emoji,label:s.name}:{emoji:"🔌",label:n.server,hue:OP(n.server)}}const i=DP[e];return i?{emoji:Iw(e),label:i}:{emoji:Iw(e),label:e}}function zP(e){return e.endedAt==null?"inflight":e.ok===!1?"err":"done"}function BP(e,n,i){if(i==null)return 1;const s=n-i;return s<0?1:Math.max(0,1-s/$b)}function UP(e,n,i,s,o,u){const l=[];for(const c of e.values()){if(!n.has(c.id)||c.exitAt!=null&&u-c.exitAt>$b)continue;const d=s.get(c.id)??i.get(c.id);if(!d)continue;const p=c.tools.slice(-4);if(p.length===0)continue;const h=c.exitAt??null,m=o.get(c.id),v=Math.max((m==null?void 0:m.width)??Aw,Aw),w=(m==null?void 0:m.height)??130,b=d.x,x=d.y,k=b+v,S=x+w/2;p.forEach((E,T)=>{const C=T*yP,j=b+v+wP,M=x+_P+C,A=BP(E,u,h),D=E.inputPreview??"",L=zP(E),U=A<.999,H=FP(E.name);l.push({id:E.id,toolId:E.id,agentId:c.id,toolName:E.name,name:H.label,emoji:H.emoji,status:L,category:kP(E.name),mcpHue:H.hue,inputPreview:D,fade:A,fading:U,worldX:j,worldY:M,anchorX:k,anchorY:S,spawnDx:k-j,spawnDy:S-(M+ug)});const Q=$P(E.name,E.input);if(Q){const ee=RP(E.name,H.label),R=j+ee+xP,G=M,B=j+ee,X=M+ug;l.push({id:`sub:${E.id}`,toolId:E.id,agentId:c.id,toolName:E.name,name:Q.label,emoji:Q.emoji,isSub:!0,status:L,category:Q.category,inputPreview:Q.detail??D,fade:A,fading:U,worldX:R,worldY:G,anchorX:B,anchorY:X,spawnDx:B-R,spawnDy:0})}})}return l}function HP({agents:e,visibleAgentIds:n,positions:i,pinned:s,measured:o,dimUnmatched:u,spotlight:l,hiddenCategories:c,now:d,onOpenTool:p}){const{x:h,y:m,zoom:v}=Tb(),w=UP(e,n,i,s,o,d),b=c&&c.size>0?w.filter(x=>!c.has(x.category)):w;return _.jsxs("div",{className:"tool-bursts-layer","aria-hidden":!0,children:[_.jsx("svg",{className:"tool-bursts-svg",children:b.map(x=>{const k=x.anchorX*v+h,S=x.anchorY*v+m,E=(x.worldX+6)*v+h,T=(x.worldY+ug)*v+m,C=k+(E-k)*.55,j=u!=null&&!u.has(x.agentId),M=l!=null&&!l.has(x.agentId),A=x.fade*(j||M?.14:1);return _.jsx("path",{d:`M ${k} ${S} Q ${C} ${S}, ${E} ${T}`,className:`tool-conn status-${x.status}${x.fading?" fading":""}`,opacity:A},`l:${x.id}`)})}),b.map(x=>{const k=x.worldX*v+h,S=x.worldY*v+m,E={left:`${k}px`,top:`${S}px`,transform:`scale(${v})`,transformOrigin:"left top","--spawn-dx":`${x.spawnDx}px`,"--spawn-dy":`${x.spawnDy}px`},T=x.isSub?`${x.toolName} · ${x.name}`:x.toolName,C=x.inputPreview?`${T} · ${x.inputPreview}`:T,j=p!=null,M=x.mcpHue!=null?{"--cat-accent":`hsl(${x.mcpHue} 65% 65%)`}:{},A=u!=null&&!u.has(x.agentId),D=l!=null&&!l.has(x.agentId),L=A||D?" dim":"";return _.jsx("div",{className:"tool-burst-wrap",style:E,children:_.jsxs("div",{className:`tool-burst cat-${x.category} status-${x.status}${x.fading?" fading":""}${j?" clickable":""}${x.isSub?" sub":""}${L}`,style:M,title:C,role:j?"button":void 0,tabIndex:j?0:void 0,"aria-label":j?`Open ${x.toolName} ${x.status==="inflight"?"in flight":x.status} — click for details`:void 0,onClick:j?()=>p(x.toolId):void 0,onKeyDown:j?U=>{(U.key==="Enter"||U.key===" ")&&(U.preventDefault(),p(x.toolId))}:void 0,children:[_.jsx("span",{className:"tb-emoji",children:x.emoji}),_.jsx("span",{className:"tb-name",children:x.name}),x.status==="inflight"&&_.jsx("span",{className:"tb-spin"}),x.status==="done"&&_.jsx("span",{className:"tb-mark done",children:"✓"}),x.status==="err"&&_.jsx("span",{className:"tb-mark err",children:"×"})]})},x.id)})]})}function VP({state:e,sessionId:n,onClose:i}){const s=O.useMemo(()=>GP(e,n),[e,n]);return s?_.jsx("div",{className:"modal-backdrop",onClick:i,role:"presentation",children:_.jsxs("div",{className:"modal session-summary",onClick:o=>o.stopPropagation(),role:"dialog","aria-modal":"true","aria-labelledby":"ss-title",children:[_.jsxs("div",{className:"modal-head",children:[_.jsxs("div",{className:"modal-title",children:[_.jsx("span",{className:"state-pill state-done","aria-hidden":!0,children:"done"}),_.jsx("span",{id:"ss-title",className:"modal-tool-name",title:s.cwd??s.sessionId,children:s.label}),_.jsxs("span",{className:"modal-tool-id",children:["· ",s.sessionId.slice(0,8)]})]}),_.jsxs("div",{className:"modal-actions",children:[_.jsx("span",{className:"modal-dur",title:"Total wall time",children:s.durationLabel}),_.jsx("button",{className:"btn",onClick:i,"aria-label":"Close",children:"×"})]})]}),_.jsxs("div",{className:"modal-body",children:[_.jsxs("section",{className:"ss-hero",children:[_.jsxs("div",{className:"ss-hero-left",children:[_.jsx("div",{className:"ss-cost-label",children:"total spend"}),_.jsx("div",{className:"ss-cost",children:ze(s.cost.total)}),s.modelChips.length>0&&_.jsx("div",{className:"ss-models",children:s.modelChips.map(o=>_.jsx("span",{className:"model-chip",title:o,children:fo(o)},o))})]}),_.jsx("div",{className:"ss-hero-right",children:s.cost.total>0&&_.jsxs(_.Fragment,{children:[_.jsx(WP,{cost:s.cost}),_.jsxs("div",{className:"ss-cost-legend",children:[_.jsxs("span",{className:"ssl ssl-in",children:["input ",_.jsx("b",{children:ze(s.cost.input)})]}),_.jsxs("span",{className:"ssl ssl-out",children:["output ",_.jsx("b",{children:ze(s.cost.output)})]}),_.jsxs("span",{className:"ssl ssl-cr",children:["cache r ",_.jsx("b",{children:ze(s.cost.cacheRead)})]}),_.jsxs("span",{className:"ssl ssl-cw",children:["cache w ",_.jsx("b",{children:ze(s.cost.cacheWrite)})]})]})]})})]}),_.jsxs("section",{className:"ss-stats",children:[_.jsx(Bi,{label:"agents",value:s.agentCount}),_.jsx(Bi,{label:"subagents",value:s.subagentCount}),_.jsx(Bi,{label:"tool calls",value:s.toolCount}),_.jsx(Bi,{label:"prompts",value:s.promptCount}),_.jsx(Bi,{label:"tokens",value:s.tokensSum.toLocaleString()}),s.errCount>0&&_.jsx(Bi,{label:"errors",value:s.errCount,tone:"err"})]}),s.topTools.length>0&&_.jsxs("section",{className:"modal-section",children:[_.jsx("h4",{children:"Most-used tools"}),_.jsx("div",{className:"ss-top-tools",children:s.topTools.map(([o,u])=>_.jsxs("div",{className:"ss-tt",children:[_.jsx("span",{className:"ss-tt-name",children:o}),_.jsx("span",{className:"ss-tt-bar",children:_.jsx("span",{className:"ss-tt-bar-fill",style:{width:`${u/s.topTools[0][1]*100}%`}})}),_.jsx("span",{className:"ss-tt-count",children:u})]},o))})]}),s.firstPrompt&&_.jsxs("section",{className:"modal-section",children:[_.jsx("h4",{children:"Opening prompt"}),_.jsx("div",{className:"ss-prompt",children:s.firstPrompt})]})]})]})}):null}function Bi({label:e,value:n,tone:i}){return _.jsxs("div",{className:`ss-stat${i?` tone-${i}`:""}`,children:[_.jsx("div",{className:"ss-stat-value",children:n}),_.jsx("div",{className:"ss-stat-label",children:e})]})}function WP({cost:e}){const n=e.total;if(n<=0)return null;const i=(s,o,u)=>{if(s<=0)return null;const l=s/n*100;return _.jsx("span",{className:`cb-seg ${o}`,style:{width:`${l}%`},title:`${u}: ${ze(s)} (${l.toFixed(0)}%)`},o)};return _.jsxs("div",{className:"cost-bar cost-bar-lg","aria-label":"Cost breakdown",children:[i(e.input,"cb-input","input"),i(e.output,"cb-output","output"),i(e.cacheRead,"cb-cache-r","cache read"),i(e.cacheWrite,"cb-cache-w","cache write")]})}function GP(e,n){const i=e.agents.get(n);if(!i)return null;const s=[];for(const T of e.agents.values())T.sessionId===n&&s.push(T);if(s.length===0)return null;const o={input:0,output:0,cacheRead:0,cacheWrite:0,total:0},u=new Set,l=new Map;let c=0,d=0,p=0,h=0,m=0,v,w=1/0,b=0;for(const T of s){const C=Bt(T.usage,T.model);o.input+=C.input,o.output+=C.output,o.cacheRead+=C.cacheRead,o.cacheWrite+=C.cacheWrite,o.total+=C.total,T.model&&u.add(T.model),T.kind==="subagent"&&m++,d+=T.prompts.length,!v&&T.prompts.length>0&&(v=T.prompts[0].text),p+=T.usage.inputTokens+T.usage.outputTokens,c+=T.tools.length,w=Math.min(w,T.startedAt),b=Math.max(b,T.endedAt??Date.now());for(const j of T.tools)l.set(j.name,(l.get(j.name)??0)+1),j.ok===!1&&h++}const x=Math.max(0,b-w),k=Math.floor(x/1e3),S=k<60?`${k}s`:k<3600?`${Math.floor(k/60)}m ${String(k%60).padStart(2,"0")}s`:`${Math.floor(k/3600)}h ${Math.floor(k%3600/60)}m`,E=Array.from(l.entries()).sort((T,C)=>C[1]-T[1]).slice(0,5);return{sessionId:n,label:i.label||i.cwdBasename||"session",cwd:i.cwd,durationLabel:S,cost:o,modelChips:Array.from(u),agentCount:s.length,subagentCount:m,toolCount:c,promptCount:d,tokensSum:p,errCount:h,topTools:E,firstPrompt:v}}function KP(e,n){const i=[];for(const s of e.agents.values()){if(s.kind!=="root")continue;let o=s.tools.length,u=Bt(s.usage,s.model).total,l=s.endedAt??s.startedAt;for(const c of e.agents.values()){if(c.sessionId!==s.sessionId||c.kind==="root")continue;o+=c.tools.length,u+=Bt(c.usage,c.model).total;const d=c.endedAt??c.startedAt;d>l&&(l=d)}i.push({sessionId:s.sessionId,label:s.label||s.cwdBasename||"session",cwdBasename:s.cwdBasename,state:s.state,modelId:s.model,toolCount:o,cost:u,startedAt:s.startedAt,lastActivity:l})}return i.sort((s,o)=>{if(s.state!==o.state){if(s.state==="active")return-1;if(o.state==="active")return 1}return o.lastActivity-s.lastActivity}),i}function YP(e,n,i){const s=(n??i)-e;if(s<1e3)return"<1s";const o=Math.floor(s/1e3);if(o<60)return`${o}s`;const u=Math.floor(o/60);return u<60?`${u}m`:`${Math.floor(u/60)}h ${u%60}m`}function XP({state:e,now:n,selectedIds:i,onSelect:s,onClose:o}){const u=O.useMemo(()=>KP(e),[e,e.lastSeq,n]),l=u.filter(c=>c.state==="active").length;return _.jsxs("aside",{className:"session-list","aria-label":"Sessions",children:[_.jsxs("div",{className:"sl-header",children:[_.jsxs("h3",{children:["Sessions ",_.jsx("span",{className:"sl-count",children:u.length})]}),l>0&&_.jsxs("span",{className:"sl-live-count",children:[l," live"]}),_.jsx("button",{className:"btn icon-btn sl-close",onClick:o,title:"Hide sidebar (L)","aria-label":"Hide session list",children:"‹"})]}),_.jsxs("div",{className:"sl-rows",children:[u.length===0&&_.jsx("div",{className:"sl-empty",children:"No sessions yet."}),u.map(c=>{const d=i.has(c.sessionId);return _.jsxs("button",{type:"button",className:`sl-row state-${c.state}${d?" selected":""}`,onClick:()=>s(c.sessionId),title:`Focus ${c.label}`,children:[_.jsx("span",{className:`sl-dot state-${c.state}`,"aria-hidden":!0}),_.jsxs("div",{className:"sl-row-body",children:[_.jsxs("div",{className:"sl-row-head",children:[_.jsx("span",{className:"sl-label",children:c.label}),c.modelId&&_.jsx("span",{className:"model-chip",title:c.modelId,children:fo(c.modelId)})]}),_.jsxs("div",{className:"sl-row-meta",children:[_.jsxs("span",{title:"tool calls",children:[_.jsx("b",{children:c.toolCount})," tools"]}),c.cost>0&&_.jsx("span",{className:"sl-cost",title:"total spend",children:_.jsx("b",{children:ze(c.cost)})}),_.jsx("span",{className:"sl-elapsed",title:`Started ${new Date(c.startedAt).toLocaleString()}`,children:YP(c.startedAt,c.state==="active"?void 0:c.lastActivity,n)})]})]})]},c.sessionId)})]})]})}const bc=12e4,qw=400,Bb="agent-dag.timelineMode";function QP(){if(typeof window>"u")return"tools";try{return window.localStorage.getItem(Bb)==="cost"?"cost":"tools"}catch{return"tools"}}function ZP(e){if(!(typeof window>"u"))try{window.localStorage.setItem(Bb,e)}catch{}}const JP={Read:"file",Write:"file",Edit:"file",MultiEdit:"file",Glob:"file",Grep:"file",LS:"file",NotebookEdit:"file",Bash:"shell",PowerShell:"shell",WebFetch:"web",WebSearch:"web",Task:"agent",Agent:"agent",TodoWrite:"task",TaskCreate:"task",TaskUpdate:"task",TaskList:"task",TaskGet:"task",TaskOutput:"task",TaskStop:"task",EnterPlanMode:"plan",ExitPlanMode:"plan",AskUserQuestion:"plan",Skill:"plan",Workflow:"plan"};function eq(e){return e.startsWith("mcp__")?"mcp":JP[e]??"other"}function tq(e,n,i){const s=[];for(const o of e.values())if(n.has(o.id))for(const u of o.tools)u.startedAt<i||s.push({agentId:o.id,toolId:u.id,name:u.name,category:eq(u.name),startedAt:u.startedAt,endedAt:u.endedAt,inflight:u.endedAt==null,errored:u.ok===!1});return s.sort((o,u)=>o.startedAt-u.startedAt),s.length>qw?s.slice(s.length-qw):s}function nq({agents:e,visibleAgentIds:n,now:i,costSamples:s,onSelect:o,onOpenTool:u,onClose:l}){const[c,d]=O.useState(QP);O.useEffect(()=>{ZP(c)},[c]);const p=i-bc,h=O.useMemo(()=>tq(e,n,p),[e,n,p]),m=O.useMemo(()=>{const S=new Map;for(const E of h)S.set(E.category,(S.get(E.category)??0)+1);return S},[h]),v=O.useMemo(()=>s.filter(S=>S.t>=p),[s,p]),w=O.useMemo(()=>v.reduce((S,E)=>Math.max(S,E.cost),0),[v]),b=v.length>0?v[v.length-1].cost:0,x=v.length>0?v[0].cost:0,k=b-x;return _.jsxs("div",{className:"timeline-strip",role:"region","aria-label":c==="cost"?"Spend over time":"Recent tool activity",children:[_.jsxs("div",{className:"ts-header",children:[_.jsxs("div",{className:"ts-mode-toggle",role:"tablist","aria-label":"Timeline mode",children:[_.jsx("button",{role:"tab",className:`ts-mode${c==="tools"?" on":""}`,onClick:()=>d("tools"),"aria-selected":c==="tools",title:"Show recent tool calls",children:"tools"}),_.jsx("button",{role:"tab",className:`ts-mode${c==="cost"?" on":""}`,onClick:()=>d("cost"),"aria-selected":c==="cost",title:"Show cumulative spend",children:"$"})]}),_.jsx("span",{className:"ts-title",children:"Last 2 min"}),c==="tools"?_.jsxs(_.Fragment,{children:[_.jsxs("span",{className:"ts-total",children:[h.length," tool call",h.length===1?"":"s"]}),_.jsx("div",{className:"ts-legend",children:Array.from(m.entries()).sort((S,E)=>E[1]-S[1]).map(([S,E])=>_.jsxs("span",{className:`ts-legend-item cat-${S}`,title:`${E} ${S}`,children:[_.jsx("span",{className:"ts-legend-dot"}),E]},S))})]}):_.jsxs(_.Fragment,{children:[_.jsxs("span",{className:"ts-total",children:[ze(b),k>0&&_.jsxs("span",{className:"ts-delta",children:[" · +",ze(k)]})]}),_.jsx("div",{className:"ts-legend"})]}),_.jsx("button",{className:"btn icon-btn ts-close",onClick:l,title:"Hide timeline","aria-label":"Hide timeline",children:"×"})]}),_.jsxs("div",{className:"ts-track","aria-hidden":!0,children:[[2,1.5,1,.5,0].map(S=>_.jsx("span",{className:"ts-tick",style:{left:`${(2-S)/2*100}%`},children:S===0?"now":`${S}m`},S)),_.jsx("span",{className:"ts-now-line"}),c==="tools"?h.map(S=>{const E=(S.startedAt-p)/bc*100,T=S.inflight?"inflight":S.errored?"err":"done";return _.jsx("button",{className:`ts-dot cat-${S.category} status-${T}`,style:{left:`${E}%`},onClick:()=>{o(S.agentId),u(S.toolId)},title:`${S.name} · ${new Date(S.startedAt).toLocaleTimeString()}${S.endedAt?` (${Math.max(0,S.endedAt-S.startedAt)}ms)`:" — running"}`,"aria-label":`${S.name} ${T}`},S.toolId)}):_.jsx(rq,{series:v,earliest:p,windowMs:bc,costMax:w})]})]})}function rq({series:e,earliest:n,windowMs:i,costMax:s}){if(e.length<2||s<=0)return _.jsx("div",{className:"ts-chart-empty",children:"collecting samples…"});const o=h=>Math.max(0,Math.min(100,(h-n)/i*100)),u=h=>100-h/s*92-4,l=e.map(h=>({x:o(h.t),y:u(h.cost)}));let c=`M ${l[0].x.toFixed(2)} ${l[0].y.toFixed(2)}`;for(let h=1;h<l.length;h++){const m=l[h-1],v=l[h],w=(m.x+v.x)/2;c+=` C ${w.toFixed(2)} ${m.y.toFixed(2)}, ${w.toFixed(2)} ${v.y.toFixed(2)}, ${v.x.toFixed(2)} ${v.y.toFixed(2)}`}const d=l[l.length-1],p=`${c} L ${d.x.toFixed(2)} 100 L ${l[0].x.toFixed(2)} 100 Z`;return _.jsxs("svg",{className:"ts-chart",viewBox:"0 0 100 100",preserveAspectRatio:"none","aria-hidden":!0,children:[_.jsx("defs",{children:_.jsxs("linearGradient",{id:"ts-fill",x1:"0",y1:"0",x2:"0",y2:"1",children:[_.jsx("stop",{offset:"0%",stopColor:"hsl(150 60% 60%)",stopOpacity:"0.55"}),_.jsx("stop",{offset:"100%",stopColor:"hsl(150 60% 60%)",stopOpacity:"0.02"})]})}),_.jsx("path",{d:p,fill:"url(#ts-fill)"}),_.jsx("path",{d:c,fill:"none",stroke:"hsl(150 70% 65%)",strokeWidth:"0.6",vectorEffect:"non-scaling-stroke"}),_.jsx("circle",{cx:d.x,cy:d.y,r:"1.4",fill:"hsl(150 80% 70%)",vectorEffect:"non-scaling-stroke"})]})}function tr(e){return e<1e3?`${e}`:e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(2)}M`}function iq({cost:e}){const n=e.total;if(n<=0)return null;const i=(s,o,u)=>{if(s<=0)return null;const l=s/n*100;return _.jsx("span",{className:`cb-seg ${o}`,style:{width:`${l}%`},title:`${u}: ${ze(s)} (${l.toFixed(0)}%)`},o)};return _.jsxs("div",{className:"cost-bar","aria-label":"Cost breakdown",children:[i(e.input,"cb-input","input"),i(e.output,"cb-output","output"),i(e.cacheRead,"cb-cache-r","cache read"),i(e.cacheWrite,"cb-cache-w","cache write")]})}function sq(e,n){const i=e-n;if(i<=0)return null;const s=Math.floor(i/3600),o=Math.floor(i%3600/60);if(s>23){const u=Math.floor(i/86400),l=Math.floor(i%86400/3600);return`${u}d ${l}h`}return s>0?`${s}h ${o}m`:`${o}m`}function oq(e,n,i,s){const o=Math.max(0,n-s),u=Math.max(0,i-o);if(u<120)return null;const l=Math.min(100,u/i*100),c=e-l;if(Math.abs(c)<3)return{label:"on pace",color:"var(--accent)"};if(c>0){const d=100-e,p=u>0?e/u:0,h=p>0?d/p:1/0,m={label:`${Math.round(c)}% ahead`,color:"var(--warn)"};if(h<o&&h<86400){const v=Math.floor(h/3600),w=Math.floor(h%3600/60);m.runsOutIn=v>0?`${v}h ${w}m`:`${w}m`}return m}return{label:`${Math.round(-c)}% reserve`,color:"var(--accent)"}}function Ui({pct:e,label:n,reset:i,resetAt:s,windowSec:o,limitReached:u,nowSec:l}){const c=Math.min(100,Math.max(0,e)),p=u||c>=90?"var(--err)":c>=70?"var(--warn)":"var(--accent)",h=c===0?"< 1%":`${c}%`,m=c===0?2:c,v=s?sq(s,l):null,w=s&&o?oq(c,s,o,l):null;return _.jsxs("div",{className:"qb-row",children:[_.jsxs("div",{className:"qb-meta",children:[_.jsxs("span",{className:"qb-label",children:[n,u&&_.jsx("span",{className:"qb-limit-badge",title:"Rate limit reached",children:"⛔"})]}),_.jsx("span",{className:"qb-pct",style:{color:p},children:h})]}),_.jsx("div",{className:"qb-track",children:_.jsx("div",{className:"qb-fill",style:{width:`${m}%`,background:p,opacity:c===0?.4:1}})}),_.jsxs("div",{className:"qb-reset-row",children:[v?_.jsxs("span",{className:"qb-reset",children:["resets in ",v]}):i?_.jsxs("span",{className:"qb-reset",children:["resets ",i]}):null,w&&_.jsx("span",{className:"qb-pace",style:{color:w.color},children:w.runsOutIn?`runs out in ${w.runsOutIn}`:w.label})]})]})}const aq=6e4;function uq(){const[e,n]=O.useState(null),[i,s]=O.useState(!1),o=O.useRef(null),u=async(c=!1)=>{c&&s(!0);try{const p=await fetch(c?"/api/quota?refresh=1":"/api/quota");p.ok&&n(await p.json())}catch{}finally{c&&s(!1)}};return O.useEffect(()=>(u(!0),o.current=window.setInterval(()=>u(!1),aq),()=>{o.current!=null&&window.clearInterval(o.current)}),[]),{quota:e,loading:i,refresh:()=>u(!0)}}const Ub=6e4;function lq(){const[e,n]=O.useState(null),[i,s]=O.useState(!1),o=O.useRef(null),u=async(c=!1)=>{c&&s(!0);try{const p=await fetch(c?"/api/codex-quota?refresh=1":"/api/codex-quota");p.ok&&n(await p.json())}catch{}finally{c&&s(!1)}};return O.useEffect(()=>(u(!0),o.current=window.setInterval(()=>u(!1),Ub),()=>{o.current!=null&&window.clearInterval(o.current)}),[]),{data:e,loading:i,refresh:()=>u(!0)}}function cq(){const[e,n]=O.useState(null),i=O.useRef(null),s=async()=>{try{const o=await fetch("/api/codex-usage");o.ok&&n(await o.json())}catch{}};return O.useEffect(()=>(s(),i.current=window.setInterval(s,Ub),()=>{i.current!=null&&window.clearInterval(i.current)}),[]),{data:e}}function fq({state:e,now:n,onClose:i}){const{quota:s,loading:o,refresh:u}=uq(),{data:l,loading:c,refresh:d}=lq(),{data:p}=cq(),[h,m]=O.useState(()=>Math.floor(Date.now()/1e3));O.useEffect(()=>{const A=window.setInterval(()=>m(Math.floor(Date.now()/1e3)),3e4);return()=>window.clearInterval(A)},[]);const{byModel:v,totalCost:w,totalTokens:b,burnRate:x}=O.useMemo(()=>{const A=new Map,D={total:0,input:0,output:0,cacheRead:0,cacheWrite:0};let L=0,U=0,H=0,Q=0;for(const X of e.agents.values()){const Y=X.model??"__unknown__",q=Bt(X.usage,X.model),V=A.get(Y);V?(V.inputTokens+=X.usage.inputTokens,V.outputTokens+=X.usage.outputTokens,V.cacheReadTokens+=X.usage.cacheReadTokens,V.cacheCreateTokens+=X.usage.cacheCreateTokens,V.cost.total+=q.total,V.cost.input+=q.input,V.cost.output+=q.output,V.cost.cacheRead+=q.cacheRead,V.cost.cacheWrite+=q.cacheWrite,V.agentCount++):A.set(Y,{model:Y,inputTokens:X.usage.inputTokens,outputTokens:X.usage.outputTokens,cacheReadTokens:X.usage.cacheReadTokens,cacheCreateTokens:X.usage.cacheCreateTokens,cost:{...q},agentCount:1}),D.total+=q.total,D.input+=q.input,D.output+=q.output,D.cacheRead+=q.cacheRead,D.cacheWrite+=q.cacheWrite,L+=X.usage.inputTokens,U+=X.usage.outputTokens,H+=X.usage.cacheReadTokens,Q+=X.usage.cacheCreateTokens}const ee=Array.from(A.values()).sort((X,Y)=>Y.cost.total-X.cost.total);let R=0,G=0;for(const X of e.agents.values()){if(X.state!=="active")continue;const Y=Bt(X.usage,X.model);R+=Y.total,G=Math.max(G,((X.endedAt??n)-X.startedAt)/1e3)}const B=G>0?Za(R,G):null;return{byModel:ee,totalCost:D,totalTokens:{in:L,out:U,cacheR:H,cacheC:Q},burnRate:B}},[e,e.lastSeq,n]),k=O.useMemo(()=>{const A=[];for(const D of e.agents.values()){if(D.kind!=="root")continue;let L=Bt(D.usage,D.model).total,U=D.usage.inputTokens,H=D.usage.outputTokens;for(const Q of e.agents.values())Q.sessionId!==D.sessionId||Q.kind==="root"||(L+=Bt(Q.usage,Q.model).total,U+=Q.usage.inputTokens,H+=Q.usage.outputTokens);A.push({sessionId:D.sessionId,label:D.label||D.cwdBasename||"session",state:D.state,cost:L,inputTokens:U,outputTokens:H})}return A.sort((D,L)=>L.cost-D.cost).slice(0,12)},[e,e.lastSeq]),S=w.total>0,E=b.in+b.out,T=o||c,C=Math.max((s==null?void 0:s.fetchedAt)??0,(l==null?void 0:l.fetchedAt)??0),j=C>0?(()=>{const A=h-Math.floor(C/1e3);return A<10?"just now":A<60?`${A}s ago`:A<3600?`${Math.floor(A/60)}m ago`:`${Math.floor(A/3600)}h ago`})():null,M=()=>{u(),d()};return _.jsxs("div",{className:"usage-panel","aria-label":"Usage",children:[_.jsxs("div",{className:"up-header",children:[_.jsx("h3",{children:"Usage"}),x&&_.jsx("span",{className:"up-rate",children:x}),_.jsxs("div",{className:"up-header-right",children:[j&&!T&&_.jsx("span",{className:"up-last-updated",children:j}),_.jsx("button",{type:"button",className:"btn up-refresh-btn",onClick:M,disabled:T,title:"Refresh Claude + Codex quota",children:T?"…":"↻"}),_.jsx("button",{type:"button",className:"btn icon-btn up-close",onClick:i,"aria-label":"Close usage panel",title:"Close (U)",children:"×"})]})]}),_.jsxs("section",{className:"up-section up-quota-section",children:[_.jsx("h4",{className:"up-section-title",children:"Claude quota"}),s!=null&&s.ok?_.jsxs("div",{className:"up-quota-bars",children:[s.session5hPct!=null&&_.jsx(Ui,{label:"5-hour window",pct:s.session5hPct,reset:s.session5hReset,resetAt:s.session5hResetAt,windowSec:s.session5hWindowSec,nowSec:h}),s.week7dPct!=null&&_.jsx(Ui,{label:"7-day window",pct:s.week7dPct,reset:s.week7dReset,resetAt:s.week7dResetAt,windowSec:s.week7dWindowSec,nowSec:h}),s.weekSonnetPct!=null&&_.jsx(Ui,{label:"Sonnet (7d)",pct:s.weekSonnetPct,nowSec:h}),s.weekOpusPct!=null&&_.jsx(Ui,{label:"Opus (7d)",pct:s.weekOpusPct,nowSec:h})]}):(s==null?void 0:s.ok)===!1?_.jsxs("div",{className:"up-quota-na",children:[_.jsx("span",{children:"Quota unavailable."}),_.jsxs("span",{className:"up-quota-hint",children:["Run ",_.jsx("code",{children:"/usage"})," in a claude session, then click ↻"]})]}):_.jsx("div",{className:"up-quota-na up-quota-loading",children:"Checking…"})]}),_.jsxs("section",{className:"up-section up-quota-section",children:[_.jsx("h4",{className:"up-section-title",children:"Codex quota"}),l!=null&&l.ok?_.jsxs("div",{className:"up-quota-bars",children:[l.session5hPct!=null&&_.jsx(Ui,{label:"5-hour window",pct:l.session5hPct,reset:l.session5hReset,resetAt:l.session5hResetAt,windowSec:l.session5hWindowSec,limitReached:l.limitReached&&l.session5hPct>=100,nowSec:h}),l.week7dPct!=null&&_.jsx(Ui,{label:"7-day window",pct:l.week7dPct,reset:l.week7dReset,resetAt:l.week7dResetAt,windowSec:l.week7dWindowSec,nowSec:h}),(p==null?void 0:p.ok)&&p.window7d&&p.window7d.sessionCount>0&&_.jsxs("div",{className:"up-quota-sub",children:[tr(p.window7d.totalTokens)," tokens · ",p.window7d.sessionCount," sessions (7d)"]}),l.creditsBalance&&!l.creditsUnlimited&&_.jsxs("div",{className:"up-quota-sub up-credits",children:["credits: $",l.creditsBalance]}),l.creditsUnlimited&&_.jsx("div",{className:"up-quota-sub up-credits",children:"credits: unlimited"})]}):(l==null?void 0:l.ok)===!1?_.jsxs("div",{className:"up-quota-na",children:[_.jsx("span",{children:"Quota unavailable."}),_.jsx("span",{className:"up-quota-hint",children:l.reason==="no_token"?"Run codex login to authenticate.":"ChatGPT API unreachable — click ↻ to retry."})]}):_.jsx("div",{className:"up-quota-na up-quota-loading",children:"Checking…"})]}),S?_.jsxs(_.Fragment,{children:[_.jsxs("div",{className:"up-total",children:[_.jsx("span",{className:"up-total-value",children:ze(w.total)}),_.jsx("span",{className:"up-total-label",children:"total spend"})]}),_.jsx(iq,{cost:w}),E>0&&_.jsxs("div",{className:"up-tokens-row",children:[_.jsxs("span",{className:"up-tok",children:[_.jsx("span",{className:"up-k",children:"in"}),tr(b.in)]}),_.jsxs("span",{className:"up-tok",children:[_.jsx("span",{className:"up-k",children:"out"}),tr(b.out)]}),b.cacheR>0&&_.jsxs("span",{className:"up-tok",children:[_.jsx("span",{className:"up-k",children:"cache r"}),tr(b.cacheR)]}),b.cacheC>0&&_.jsxs("span",{className:"up-tok",children:[_.jsx("span",{className:"up-k",children:"cache c"}),tr(b.cacheC)]})]}),v.filter(A=>A.cost.total>0).length>0&&_.jsxs("section",{className:"up-section",children:[_.jsx("h4",{className:"up-section-title",children:"By model"}),_.jsxs("table",{className:"up-table",children:[_.jsx("thead",{children:_.jsxs("tr",{children:[_.jsx("th",{children:"Model"}),_.jsx("th",{children:"Tokens"}),_.jsx("th",{children:"Cost"})]})}),_.jsx("tbody",{children:v.filter(A=>A.cost.total>0).map(A=>_.jsxs("tr",{children:[_.jsx("td",{className:"up-model-name",title:A.model,children:fo(A.model)}),_.jsx("td",{className:"up-num",children:tr(A.inputTokens+A.outputTokens)}),_.jsx("td",{className:"up-num up-cost-val",children:ze(A.cost.total)})]},A.model))})]})]}),k.filter(A=>A.cost>0).length>0&&_.jsxs("section",{className:"up-section",children:[_.jsx("h4",{className:"up-section-title",children:"By session"}),_.jsx("div",{className:"up-sessions",children:k.filter(A=>A.cost>0).map(A=>_.jsxs("div",{className:"up-session-row",children:[_.jsx("span",{className:`sl-dot state-${A.state}`,"aria-hidden":!0}),_.jsx("span",{className:"up-session-label",children:A.label}),_.jsx("span",{className:"up-session-tokens",children:tr(A.inputTokens+A.outputTokens)}),_.jsx("span",{className:"up-session-cost",children:ze(A.cost)})]},A.sessionId))})]})]}):E>0?_.jsxs(_.Fragment,{children:[_.jsxs("div",{className:"up-tokens-row",children:[_.jsxs("span",{className:"up-tok",children:[_.jsx("span",{className:"up-k",children:"in"}),tr(b.in)]}),_.jsxs("span",{className:"up-tok",children:[_.jsx("span",{className:"up-k",children:"out"}),tr(b.out)]})]}),_.jsx("div",{className:"up-hint",children:"Cost appears once a known model is detected."})]}):_.jsxs("div",{className:"up-empty",children:["No usage data yet.",_.jsx("br",{}),"Start a Claude Code or Codex session."]})]})}function Mg(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Nc,Ow;function dq(){if(Ow)return Nc;Ow=1;function e(){this.__data__=[],this.size=0}return Nc=e,Nc}var Cc,Lw;function Ji(){if(Lw)return Cc;Lw=1;function e(n,i){return n===i||n!==n&&i!==i}return Cc=e,Cc}var Tc,$w;function au(){if($w)return Tc;$w=1;var e=Ji();function n(i,s){for(var o=i.length;o--;)if(e(i[o][0],s))return o;return-1}return Tc=n,Tc}var Rc,Dw;function hq(){if(Dw)return Rc;Dw=1;var e=au(),n=Array.prototype,i=n.splice;function s(o){var u=this.__data__,l=e(u,o);if(l<0)return!1;var c=u.length-1;return l==c?u.pop():i.call(u,l,1),--this.size,!0}return Rc=s,Rc}var Ac,Fw;function pq(){if(Fw)return Ac;Fw=1;var e=au();function n(i){var s=this.__data__,o=e(s,i);return o<0?void 0:s[o][1]}return Ac=n,Ac}var jc,zw;function mq(){if(zw)return jc;zw=1;var e=au();function n(i){return e(this.__data__,i)>-1}return jc=n,jc}var Ic,Bw;function gq(){if(Bw)return Ic;Bw=1;var e=au();function n(i,s){var o=this.__data__,u=e(o,i);return u<0?(++this.size,o.push([i,s])):o[u][1]=s,this}return Ic=n,Ic}var Mc,Uw;function uu(){if(Uw)return Mc;Uw=1;var e=dq(),n=hq(),i=pq(),s=mq(),o=gq();function u(l){var c=-1,d=l==null?0:l.length;for(this.clear();++c<d;){var p=l[c];this.set(p[0],p[1])}}return u.prototype.clear=e,u.prototype.delete=n,u.prototype.get=i,u.prototype.has=s,u.prototype.set=o,Mc=u,Mc}var Pc,Hw;function vq(){if(Hw)return Pc;Hw=1;var e=uu();function n(){this.__data__=new e,this.size=0}return Pc=n,Pc}var qc,Vw;function yq(){if(Vw)return qc;Vw=1;function e(n){var i=this.__data__,s=i.delete(n);return this.size=i.size,s}return qc=e,qc}var Oc,Ww;function wq(){if(Ww)return Oc;Ww=1;function e(n){return this.__data__.get(n)}return Oc=e,Oc}var Lc,Gw;function _q(){if(Gw)return Lc;Gw=1;function e(n){return this.__data__.has(n)}return Lc=e,Lc}var $c,Kw;function Hb(){if(Kw)return $c;Kw=1;var e=typeof ba=="object"&&ba&&ba.Object===Object&&ba;return $c=e,$c}var Dc,Yw;function On(){if(Yw)return Dc;Yw=1;var e=Hb(),n=typeof self=="object"&&self&&self.Object===Object&&self,i=e||n||Function("return this")();return Dc=i,Dc}var Fc,Xw;function es(){if(Xw)return Fc;Xw=1;var e=On(),n=e.Symbol;return Fc=n,Fc}var zc,Qw;function xq(){if(Qw)return zc;Qw=1;var e=es(),n=Object.prototype,i=n.hasOwnProperty,s=n.toString,o=e?e.toStringTag:void 0;function u(l){var c=i.call(l,o),d=l[o];try{l[o]=void 0;var p=!0}catch{}var h=s.call(l);return p&&(c?l[o]=d:delete l[o]),h}return zc=u,zc}var Bc,Zw;function Sq(){if(Zw)return Bc;Zw=1;var e=Object.prototype,n=e.toString;function i(s){return n.call(s)}return Bc=i,Bc}var Uc,Jw;function oi(){if(Jw)return Uc;Jw=1;var e=es(),n=xq(),i=Sq(),s="[object Null]",o="[object Undefined]",u=e?e.toStringTag:void 0;function l(c){return c==null?c===void 0?o:s:u&&u in Object(c)?n(c):i(c)}return Uc=l,Uc}var Hc,e1;function _n(){if(e1)return Hc;e1=1;function e(n){var i=typeof n;return n!=null&&(i=="object"||i=="function")}return Hc=e,Hc}var Vc,t1;function ho(){if(t1)return Vc;t1=1;var e=oi(),n=_n(),i="[object AsyncFunction]",s="[object Function]",o="[object GeneratorFunction]",u="[object Proxy]";function l(c){if(!n(c))return!1;var d=e(c);return d==s||d==o||d==i||d==u}return Vc=l,Vc}var Wc,n1;function kq(){if(n1)return Wc;n1=1;var e=On(),n=e["__core-js_shared__"];return Wc=n,Wc}var Gc,r1;function Eq(){if(r1)return Gc;r1=1;var e=kq(),n=(function(){var s=/[^.]+$/.exec(e&&e.keys&&e.keys.IE_PROTO||"");return s?"Symbol(src)_1."+s:""})();function i(s){return!!n&&n in s}return Gc=i,Gc}var Kc,i1;function Vb(){if(i1)return Kc;i1=1;var e=Function.prototype,n=e.toString;function i(s){if(s!=null){try{return n.call(s)}catch{}try{return s+""}catch{}}return""}return Kc=i,Kc}var Yc,s1;function bq(){if(s1)return Yc;s1=1;var e=ho(),n=Eq(),i=_n(),s=Vb(),o=/[\\^$.*+?()[\]{}|]/g,u=/^\[object .+?Constructor\]$/,l=Function.prototype,c=Object.prototype,d=l.toString,p=c.hasOwnProperty,h=RegExp("^"+d.call(p).replace(o,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function m(v){if(!i(v)||n(v))return!1;var w=e(v)?h:u;return w.test(s(v))}return Yc=m,Yc}var Xc,o1;function Nq(){if(o1)return Xc;o1=1;function e(n,i){return n==null?void 0:n[i]}return Xc=e,Xc}var Qc,a1;function ai(){if(a1)return Qc;a1=1;var e=bq(),n=Nq();function i(s,o){var u=n(s,o);return e(u)?u:void 0}return Qc=i,Qc}var Zc,u1;function Pg(){if(u1)return Zc;u1=1;var e=ai(),n=On(),i=e(n,"Map");return Zc=i,Zc}var Jc,l1;function lu(){if(l1)return Jc;l1=1;var e=ai(),n=e(Object,"create");return Jc=n,Jc}var ef,c1;function Cq(){if(c1)return ef;c1=1;var e=lu();function n(){this.__data__=e?e(null):{},this.size=0}return ef=n,ef}var tf,f1;function Tq(){if(f1)return tf;f1=1;function e(n){var i=this.has(n)&&delete this.__data__[n];return this.size-=i?1:0,i}return tf=e,tf}var nf,d1;function Rq(){if(d1)return nf;d1=1;var e=lu(),n="__lodash_hash_undefined__",i=Object.prototype,s=i.hasOwnProperty;function o(u){var l=this.__data__;if(e){var c=l[u];return c===n?void 0:c}return s.call(l,u)?l[u]:void 0}return nf=o,nf}var rf,h1;function Aq(){if(h1)return rf;h1=1;var e=lu(),n=Object.prototype,i=n.hasOwnProperty;function s(o){var u=this.__data__;return e?u[o]!==void 0:i.call(u,o)}return rf=s,rf}var sf,p1;function jq(){if(p1)return sf;p1=1;var e=lu(),n="__lodash_hash_undefined__";function i(s,o){var u=this.__data__;return this.size+=this.has(s)?0:1,u[s]=e&&o===void 0?n:o,this}return sf=i,sf}var of,m1;function Iq(){if(m1)return of;m1=1;var e=Cq(),n=Tq(),i=Rq(),s=Aq(),o=jq();function u(l){var c=-1,d=l==null?0:l.length;for(this.clear();++c<d;){var p=l[c];this.set(p[0],p[1])}}return u.prototype.clear=e,u.prototype.delete=n,u.prototype.get=i,u.prototype.has=s,u.prototype.set=o,of=u,of}var af,g1;function Mq(){if(g1)return af;g1=1;var e=Iq(),n=uu(),i=Pg();function s(){this.size=0,this.__data__={hash:new e,map:new(i||n),string:new e}}return af=s,af}var uf,v1;function Pq(){if(v1)return uf;v1=1;function e(n){var i=typeof n;return i=="string"||i=="number"||i=="symbol"||i=="boolean"?n!=="__proto__":n===null}return uf=e,uf}var lf,y1;function cu(){if(y1)return lf;y1=1;var e=Pq();function n(i,s){var o=i.__data__;return e(s)?o[typeof s=="string"?"string":"hash"]:o.map}return lf=n,lf}var cf,w1;function qq(){if(w1)return cf;w1=1;var e=cu();function n(i){var s=e(this,i).delete(i);return this.size-=s?1:0,s}return cf=n,cf}var ff,_1;function Oq(){if(_1)return ff;_1=1;var e=cu();function n(i){return e(this,i).get(i)}return ff=n,ff}var df,x1;function Lq(){if(x1)return df;x1=1;var e=cu();function n(i){return e(this,i).has(i)}return df=n,df}var hf,S1;function $q(){if(S1)return hf;S1=1;var e=cu();function n(i,s){var o=e(this,i),u=o.size;return o.set(i,s),this.size+=o.size==u?0:1,this}return hf=n,hf}var pf,k1;function qg(){if(k1)return pf;k1=1;var e=Mq(),n=qq(),i=Oq(),s=Lq(),o=$q();function u(l){var c=-1,d=l==null?0:l.length;for(this.clear();++c<d;){var p=l[c];this.set(p[0],p[1])}}return u.prototype.clear=e,u.prototype.delete=n,u.prototype.get=i,u.prototype.has=s,u.prototype.set=o,pf=u,pf}var mf,E1;function Dq(){if(E1)return mf;E1=1;var e=uu(),n=Pg(),i=qg(),s=200;function o(u,l){var c=this.__data__;if(c instanceof e){var d=c.__data__;if(!n||d.length<s-1)return d.push([u,l]),this.size=++c.size,this;c=this.__data__=new i(d)}return c.set(u,l),this.size=c.size,this}return mf=o,mf}var gf,b1;function fu(){if(b1)return gf;b1=1;var e=uu(),n=vq(),i=yq(),s=wq(),o=_q(),u=Dq();function l(c){var d=this.__data__=new e(c);this.size=d.size}return l.prototype.clear=n,l.prototype.delete=i,l.prototype.get=s,l.prototype.has=o,l.prototype.set=u,gf=l,gf}var vf,N1;function Og(){if(N1)return vf;N1=1;function e(n,i){for(var s=-1,o=n==null?0:n.length;++s<o&&i(n[s],s,n)!==!1;);return n}return vf=e,vf}var yf,C1;function Wb(){if(C1)return yf;C1=1;var e=ai(),n=(function(){try{var i=e(Object,"defineProperty");return i({},"",{}),i}catch{}})();return yf=n,yf}var wf,T1;function du(){if(T1)return wf;T1=1;var e=Wb();function n(i,s,o){s=="__proto__"&&e?e(i,s,{configurable:!0,enumerable:!0,value:o,writable:!0}):i[s]=o}return wf=n,wf}var _f,R1;function hu(){if(R1)return _f;R1=1;var e=du(),n=Ji(),i=Object.prototype,s=i.hasOwnProperty;function o(u,l,c){var d=u[l];(!(s.call(u,l)&&n(d,c))||c===void 0&&!(l in u))&&e(u,l,c)}return _f=o,_f}var xf,A1;function po(){if(A1)return xf;A1=1;var e=hu(),n=du();function i(s,o,u,l){var c=!u;u||(u={});for(var d=-1,p=o.length;++d<p;){var h=o[d],m=l?l(u[h],s[h],h,u,s):void 0;m===void 0&&(m=s[h]),c?n(u,h,m):e(u,h,m)}return u}return xf=i,xf}var Sf,j1;function Fq(){if(j1)return Sf;j1=1;function e(n,i){for(var s=-1,o=Array(n);++s<n;)o[s]=i(s);return o}return Sf=e,Sf}var kf,I1;function Un(){if(I1)return kf;I1=1;function e(n){return n!=null&&typeof n=="object"}return kf=e,kf}var Ef,M1;function zq(){if(M1)return Ef;M1=1;var e=oi(),n=Un(),i="[object Arguments]";function s(o){return n(o)&&e(o)==i}return Ef=s,Ef}var bf,P1;function mo(){if(P1)return bf;P1=1;var e=zq(),n=Un(),i=Object.prototype,s=i.hasOwnProperty,o=i.propertyIsEnumerable,u=e((function(){return arguments})())?e:function(l){return n(l)&&s.call(l,"callee")&&!o.call(l,"callee")};return bf=u,bf}var Nf,q1;function wt(){if(q1)return Nf;q1=1;var e=Array.isArray;return Nf=e,Nf}var Ks={exports:{}},Cf,O1;function Bq(){if(O1)return Cf;O1=1;function e(){return!1}return Cf=e,Cf}Ks.exports;var L1;function ts(){return L1||(L1=1,(function(e,n){var i=On(),s=Bq(),o=n&&!n.nodeType&&n,u=o&&!0&&e&&!e.nodeType&&e,l=u&&u.exports===o,c=l?i.Buffer:void 0,d=c?c.isBuffer:void 0,p=d||s;e.exports=p})(Ks,Ks.exports)),Ks.exports}var Tf,$1;function pu(){if($1)return Tf;$1=1;var e=9007199254740991,n=/^(?:0|[1-9]\d*)$/;function i(s,o){var u=typeof s;return o=o??e,!!o&&(u=="number"||u!="symbol"&&n.test(s))&&s>-1&&s%1==0&&s<o}return Tf=i,Tf}var Rf,D1;function Lg(){if(D1)return Rf;D1=1;var e=9007199254740991;function n(i){return typeof i=="number"&&i>-1&&i%1==0&&i<=e}return Rf=n,Rf}var Af,F1;function Uq(){if(F1)return Af;F1=1;var e=oi(),n=Lg(),i=Un(),s="[object Arguments]",o="[object Array]",u="[object Boolean]",l="[object Date]",c="[object Error]",d="[object Function]",p="[object Map]",h="[object Number]",m="[object Object]",v="[object RegExp]",w="[object Set]",b="[object String]",x="[object WeakMap]",k="[object ArrayBuffer]",S="[object DataView]",E="[object Float32Array]",T="[object Float64Array]",C="[object Int8Array]",j="[object Int16Array]",M="[object Int32Array]",A="[object Uint8Array]",D="[object Uint8ClampedArray]",L="[object Uint16Array]",U="[object Uint32Array]",H={};H[E]=H[T]=H[C]=H[j]=H[M]=H[A]=H[D]=H[L]=H[U]=!0,H[s]=H[o]=H[k]=H[u]=H[S]=H[l]=H[c]=H[d]=H[p]=H[h]=H[m]=H[v]=H[w]=H[b]=H[x]=!1;function Q(ee){return i(ee)&&n(ee.length)&&!!H[e(ee)]}return Af=Q,Af}var jf,z1;function mu(){if(z1)return jf;z1=1;function e(n){return function(i){return n(i)}}return jf=e,jf}var Ys={exports:{}};Ys.exports;var B1;function $g(){return B1||(B1=1,(function(e,n){var i=Hb(),s=n&&!n.nodeType&&n,o=s&&!0&&e&&!e.nodeType&&e,u=o&&o.exports===s,l=u&&i.process,c=(function(){try{var d=o&&o.require&&o.require("util").types;return d||l&&l.binding&&l.binding("util")}catch{}})();e.exports=c})(Ys,Ys.exports)),Ys.exports}var If,U1;function go(){if(U1)return If;U1=1;var e=Uq(),n=mu(),i=$g(),s=i&&i.isTypedArray,o=s?n(s):e;return If=o,If}var Mf,H1;function Gb(){if(H1)return Mf;H1=1;var e=Fq(),n=mo(),i=wt(),s=ts(),o=pu(),u=go(),l=Object.prototype,c=l.hasOwnProperty;function d(p,h){var m=i(p),v=!m&&n(p),w=!m&&!v&&s(p),b=!m&&!v&&!w&&u(p),x=m||v||w||b,k=x?e(p.length,String):[],S=k.length;for(var E in p)(h||c.call(p,E))&&!(x&&(E=="length"||w&&(E=="offset"||E=="parent")||b&&(E=="buffer"||E=="byteLength"||E=="byteOffset")||o(E,S)))&&k.push(E);return k}return Mf=d,Mf}var Pf,V1;function gu(){if(V1)return Pf;V1=1;var e=Object.prototype;function n(i){var s=i&&i.constructor,o=typeof s=="function"&&s.prototype||e;return i===o}return Pf=n,Pf}var qf,W1;function Kb(){if(W1)return qf;W1=1;function e(n,i){return function(s){return n(i(s))}}return qf=e,qf}var Of,G1;function Hq(){if(G1)return Of;G1=1;var e=Kb(),n=e(Object.keys,Object);return Of=n,Of}var Lf,K1;function Dg(){if(K1)return Lf;K1=1;var e=gu(),n=Hq(),i=Object.prototype,s=i.hasOwnProperty;function o(u){if(!e(u))return n(u);var l=[];for(var c in Object(u))s.call(u,c)&&c!="constructor"&&l.push(c);return l}return Lf=o,Lf}var $f,Y1;function or(){if(Y1)return $f;Y1=1;var e=ho(),n=Lg();function i(s){return s!=null&&n(s.length)&&!e(s)}return $f=i,$f}var Df,X1;function Lr(){if(X1)return Df;X1=1;var e=Gb(),n=Dg(),i=or();function s(o){return i(o)?e(o):n(o)}return Df=s,Df}var Ff,Q1;function Vq(){if(Q1)return Ff;Q1=1;var e=po(),n=Lr();function i(s,o){return s&&e(o,n(o),s)}return Ff=i,Ff}var zf,Z1;function Wq(){if(Z1)return zf;Z1=1;function e(n){var i=[];if(n!=null)for(var s in Object(n))i.push(s);return i}return zf=e,zf}var Bf,J1;function Gq(){if(J1)return Bf;J1=1;var e=_n(),n=gu(),i=Wq(),s=Object.prototype,o=s.hasOwnProperty;function u(l){if(!e(l))return i(l);var c=n(l),d=[];for(var p in l)p=="constructor"&&(c||!o.call(l,p))||d.push(p);return d}return Bf=u,Bf}var Uf,e_;function ui(){if(e_)return Uf;e_=1;var e=Gb(),n=Gq(),i=or();function s(o){return i(o)?e(o,!0):n(o)}return Uf=s,Uf}var Hf,t_;function Kq(){if(t_)return Hf;t_=1;var e=po(),n=ui();function i(s,o){return s&&e(o,n(o),s)}return Hf=i,Hf}var Xs={exports:{}};Xs.exports;var n_;function Yb(){return n_||(n_=1,(function(e,n){var i=On(),s=n&&!n.nodeType&&n,o=s&&!0&&e&&!e.nodeType&&e,u=o&&o.exports===s,l=u?i.Buffer:void 0,c=l?l.allocUnsafe:void 0;function d(p,h){if(h)return p.slice();var m=p.length,v=c?c(m):new p.constructor(m);return p.copy(v),v}e.exports=d})(Xs,Xs.exports)),Xs.exports}var Vf,r_;function Xb(){if(r_)return Vf;r_=1;function e(n,i){var s=-1,o=n.length;for(i||(i=Array(o));++s<o;)i[s]=n[s];return i}return Vf=e,Vf}var Wf,i_;function Qb(){if(i_)return Wf;i_=1;function e(n,i){for(var s=-1,o=n==null?0:n.length,u=0,l=[];++s<o;){var c=n[s];i(c,s,n)&&(l[u++]=c)}return l}return Wf=e,Wf}var Gf,s_;function Zb(){if(s_)return Gf;s_=1;function e(){return[]}return Gf=e,Gf}var Kf,o_;function Fg(){if(o_)return Kf;o_=1;var e=Qb(),n=Zb(),i=Object.prototype,s=i.propertyIsEnumerable,o=Object.getOwnPropertySymbols,u=o?function(l){return l==null?[]:(l=Object(l),e(o(l),function(c){return s.call(l,c)}))}:n;return Kf=u,Kf}var Yf,a_;function Yq(){if(a_)return Yf;a_=1;var e=po(),n=Fg();function i(s,o){return e(s,n(s),o)}return Yf=i,Yf}var Xf,u_;function zg(){if(u_)return Xf;u_=1;function e(n,i){for(var s=-1,o=i.length,u=n.length;++s<o;)n[u+s]=i[s];return n}return Xf=e,Xf}var Qf,l_;function vu(){if(l_)return Qf;l_=1;var e=Kb(),n=e(Object.getPrototypeOf,Object);return Qf=n,Qf}var Zf,c_;function Jb(){if(c_)return Zf;c_=1;var e=zg(),n=vu(),i=Fg(),s=Zb(),o=Object.getOwnPropertySymbols,u=o?function(l){for(var c=[];l;)e(c,i(l)),l=n(l);return c}:s;return Zf=u,Zf}var Jf,f_;function Xq(){if(f_)return Jf;f_=1;var e=po(),n=Jb();function i(s,o){return e(s,n(s),o)}return Jf=i,Jf}var ed,d_;function eN(){if(d_)return ed;d_=1;var e=zg(),n=wt();function i(s,o,u){var l=o(s);return n(s)?l:e(l,u(s))}return ed=i,ed}var td,h_;function tN(){if(h_)return td;h_=1;var e=eN(),n=Fg(),i=Lr();function s(o){return e(o,i,n)}return td=s,td}var nd,p_;function Qq(){if(p_)return nd;p_=1;var e=eN(),n=Jb(),i=ui();function s(o){return e(o,i,n)}return nd=s,nd}var rd,m_;function Zq(){if(m_)return rd;m_=1;var e=ai(),n=On(),i=e(n,"DataView");return rd=i,rd}var id,g_;function Jq(){if(g_)return id;g_=1;var e=ai(),n=On(),i=e(n,"Promise");return id=i,id}var sd,v_;function nN(){if(v_)return sd;v_=1;var e=ai(),n=On(),i=e(n,"Set");return sd=i,sd}var od,y_;function e3(){if(y_)return od;y_=1;var e=ai(),n=On(),i=e(n,"WeakMap");return od=i,od}var ad,w_;function ns(){if(w_)return ad;w_=1;var e=Zq(),n=Pg(),i=Jq(),s=nN(),o=e3(),u=oi(),l=Vb(),c="[object Map]",d="[object Object]",p="[object Promise]",h="[object Set]",m="[object WeakMap]",v="[object DataView]",w=l(e),b=l(n),x=l(i),k=l(s),S=l(o),E=u;return(e&&E(new e(new ArrayBuffer(1)))!=v||n&&E(new n)!=c||i&&E(i.resolve())!=p||s&&E(new s)!=h||o&&E(new o)!=m)&&(E=function(T){var C=u(T),j=C==d?T.constructor:void 0,M=j?l(j):"";if(M)switch(M){case w:return v;case b:return c;case x:return p;case k:return h;case S:return m}return C}),ad=E,ad}var ud,__;function t3(){if(__)return ud;__=1;var e=Object.prototype,n=e.hasOwnProperty;function i(s){var o=s.length,u=new s.constructor(o);return o&&typeof s[0]=="string"&&n.call(s,"index")&&(u.index=s.index,u.input=s.input),u}return ud=i,ud}var ld,x_;function rN(){if(x_)return ld;x_=1;var e=On(),n=e.Uint8Array;return ld=n,ld}var cd,S_;function Bg(){if(S_)return cd;S_=1;var e=rN();function n(i){var s=new i.constructor(i.byteLength);return new e(s).set(new e(i)),s}return cd=n,cd}var fd,k_;function n3(){if(k_)return fd;k_=1;var e=Bg();function n(i,s){var o=s?e(i.buffer):i.buffer;return new i.constructor(o,i.byteOffset,i.byteLength)}return fd=n,fd}var dd,E_;function r3(){if(E_)return dd;E_=1;var e=/\w*$/;function n(i){var s=new i.constructor(i.source,e.exec(i));return s.lastIndex=i.lastIndex,s}return dd=n,dd}var hd,b_;function i3(){if(b_)return hd;b_=1;var e=es(),n=e?e.prototype:void 0,i=n?n.valueOf:void 0;function s(o){return i?Object(i.call(o)):{}}return hd=s,hd}var pd,N_;function iN(){if(N_)return pd;N_=1;var e=Bg();function n(i,s){var o=s?e(i.buffer):i.buffer;return new i.constructor(o,i.byteOffset,i.length)}return pd=n,pd}var md,C_;function s3(){if(C_)return md;C_=1;var e=Bg(),n=n3(),i=r3(),s=i3(),o=iN(),u="[object Boolean]",l="[object Date]",c="[object Map]",d="[object Number]",p="[object RegExp]",h="[object Set]",m="[object String]",v="[object Symbol]",w="[object ArrayBuffer]",b="[object DataView]",x="[object Float32Array]",k="[object Float64Array]",S="[object Int8Array]",E="[object Int16Array]",T="[object Int32Array]",C="[object Uint8Array]",j="[object Uint8ClampedArray]",M="[object Uint16Array]",A="[object Uint32Array]";function D(L,U,H){var Q=L.constructor;switch(U){case w:return e(L);case u:case l:return new Q(+L);case b:return n(L,H);case x:case k:case S:case E:case T:case C:case j:case M:case A:return o(L,H);case c:return new Q;case d:case m:return new Q(L);case p:return i(L);case h:return new Q;case v:return s(L)}}return md=D,md}var gd,T_;function sN(){if(T_)return gd;T_=1;var e=_n(),n=Object.create,i=(function(){function s(){}return function(o){if(!e(o))return{};if(n)return n(o);s.prototype=o;var u=new s;return s.prototype=void 0,u}})();return gd=i,gd}var vd,R_;function oN(){if(R_)return vd;R_=1;var e=sN(),n=vu(),i=gu();function s(o){return typeof o.constructor=="function"&&!i(o)?e(n(o)):{}}return vd=s,vd}var yd,A_;function o3(){if(A_)return yd;A_=1;var e=ns(),n=Un(),i="[object Map]";function s(o){return n(o)&&e(o)==i}return yd=s,yd}var wd,j_;function a3(){if(j_)return wd;j_=1;var e=o3(),n=mu(),i=$g(),s=i&&i.isMap,o=s?n(s):e;return wd=o,wd}var _d,I_;function u3(){if(I_)return _d;I_=1;var e=ns(),n=Un(),i="[object Set]";function s(o){return n(o)&&e(o)==i}return _d=s,_d}var xd,M_;function l3(){if(M_)return xd;M_=1;var e=u3(),n=mu(),i=$g(),s=i&&i.isSet,o=s?n(s):e;return xd=o,xd}var Sd,P_;function aN(){if(P_)return Sd;P_=1;var e=fu(),n=Og(),i=hu(),s=Vq(),o=Kq(),u=Yb(),l=Xb(),c=Yq(),d=Xq(),p=tN(),h=Qq(),m=ns(),v=t3(),w=s3(),b=oN(),x=wt(),k=ts(),S=a3(),E=_n(),T=l3(),C=Lr(),j=ui(),M=1,A=2,D=4,L="[object Arguments]",U="[object Array]",H="[object Boolean]",Q="[object Date]",ee="[object Error]",R="[object Function]",G="[object GeneratorFunction]",B="[object Map]",X="[object Number]",Y="[object Object]",q="[object RegExp]",V="[object Set]",I="[object String]",z="[object Symbol]",ae="[object WeakMap]",$="[object ArrayBuffer]",K="[object DataView]",Z="[object Float32Array]",oe="[object Float64Array]",ce="[object Int8Array]",pe="[object Int16Array]",ge="[object Int32Array]",Me="[object Uint8Array]",Ie="[object Uint8ClampedArray]",Pe="[object Uint16Array]",je="[object Uint32Array]",be={};be[L]=be[U]=be[$]=be[K]=be[H]=be[Q]=be[Z]=be[oe]=be[ce]=be[pe]=be[ge]=be[B]=be[X]=be[Y]=be[q]=be[V]=be[I]=be[z]=be[Me]=be[Ie]=be[Pe]=be[je]=!0,be[ee]=be[R]=be[ae]=!1;function Ve(ye,we,Be,st,lt,We){var Ge,ht=we&M,Rt=we&A,Ut=we&D;if(Be&&(Ge=lt?Be(ye,st,lt,We):Be(ye)),Ge!==void 0)return Ge;if(!E(ye))return ye;var pt=x(ye);if(pt){if(Ge=v(ye),!ht)return l(ye,Ge)}else{var ct=m(ye),Ht=ct==R||ct==G;if(k(ye))return u(ye,ht);if(ct==Y||ct==L||Ht&&!lt){if(Ge=Rt||Ht?{}:b(ye),!ht)return Rt?d(ye,o(Ge,ye)):c(ye,s(Ge,ye))}else{if(!be[ct])return lt?ye:{};Ge=w(ye,ct,ht)}}We||(We=new e);var At=We.get(ye);if(At)return At;We.set(ye,Ge),T(ye)?ye.forEach(function(Ye){Ge.add(Ve(Ye,we,Be,Ye,ye,We))}):S(ye)&&ye.forEach(function(Ye,ot){Ge.set(ot,Ve(Ye,we,Be,ot,ye,We))});var Le=Ut?Rt?h:p:Rt?j:C,mt=pt?void 0:Le(ye);return n(mt||ye,function(Ye,ot){mt&&(ot=Ye,Ye=ye[ot]),i(Ge,ot,Ve(Ye,we,Be,ot,ye,We))}),Ge}return Sd=Ve,Sd}var kd,q_;function c3(){if(q_)return kd;q_=1;var e=aN(),n=4;function i(s){return e(s,n)}return kd=i,kd}var Ed,O_;function Ug(){if(O_)return Ed;O_=1;function e(n){return function(){return n}}return Ed=e,Ed}var bd,L_;function f3(){if(L_)return bd;L_=1;function e(n){return function(i,s,o){for(var u=-1,l=Object(i),c=o(i),d=c.length;d--;){var p=c[n?d:++u];if(s(l[p],p,l)===!1)break}return i}}return bd=e,bd}var Nd,$_;function Hg(){if($_)return Nd;$_=1;var e=f3(),n=e();return Nd=n,Nd}var Cd,D_;function Vg(){if(D_)return Cd;D_=1;var e=Hg(),n=Lr();function i(s,o){return s&&e(s,o,n)}return Cd=i,Cd}var Td,F_;function d3(){if(F_)return Td;F_=1;var e=or();function n(i,s){return function(o,u){if(o==null)return o;if(!e(o))return i(o,u);for(var l=o.length,c=s?l:-1,d=Object(o);(s?c--:++c<l)&&u(d[c],c,d)!==!1;);return o}}return Td=n,Td}var Rd,z_;function yu(){if(z_)return Rd;z_=1;var e=Vg(),n=d3(),i=n(e);return Rd=i,Rd}var Ad,B_;function li(){if(B_)return Ad;B_=1;function e(n){return n}return Ad=e,Ad}var jd,U_;function uN(){if(U_)return jd;U_=1;var e=li();function n(i){return typeof i=="function"?i:e}return jd=n,jd}var Id,H_;function lN(){if(H_)return Id;H_=1;var e=Og(),n=yu(),i=uN(),s=wt();function o(u,l){var c=s(u)?e:n;return c(u,i(l))}return Id=o,Id}var Md,V_;function cN(){return V_||(V_=1,Md=lN()),Md}var Pd,W_;function h3(){if(W_)return Pd;W_=1;var e=yu();function n(i,s){var o=[];return e(i,function(u,l,c){s(u,l,c)&&o.push(u)}),o}return Pd=n,Pd}var qd,G_;function p3(){if(G_)return qd;G_=1;var e="__lodash_hash_undefined__";function n(i){return this.__data__.set(i,e),this}return qd=n,qd}var Od,K_;function m3(){if(K_)return Od;K_=1;function e(n){return this.__data__.has(n)}return Od=e,Od}var Ld,Y_;function fN(){if(Y_)return Ld;Y_=1;var e=qg(),n=p3(),i=m3();function s(o){var u=-1,l=o==null?0:o.length;for(this.__data__=new e;++u<l;)this.add(o[u])}return s.prototype.add=s.prototype.push=n,s.prototype.has=i,Ld=s,Ld}var $d,X_;function g3(){if(X_)return $d;X_=1;function e(n,i){for(var s=-1,o=n==null?0:n.length;++s<o;)if(i(n[s],s,n))return!0;return!1}return $d=e,$d}var Dd,Q_;function dN(){if(Q_)return Dd;Q_=1;function e(n,i){return n.has(i)}return Dd=e,Dd}var Fd,Z_;function hN(){if(Z_)return Fd;Z_=1;var e=fN(),n=g3(),i=dN(),s=1,o=2;function u(l,c,d,p,h,m){var v=d&s,w=l.length,b=c.length;if(w!=b&&!(v&&b>w))return!1;var x=m.get(l),k=m.get(c);if(x&&k)return x==c&&k==l;var S=-1,E=!0,T=d&o?new e:void 0;for(m.set(l,c),m.set(c,l);++S<w;){var C=l[S],j=c[S];if(p)var M=v?p(j,C,S,c,l,m):p(C,j,S,l,c,m);if(M!==void 0){if(M)continue;E=!1;break}if(T){if(!n(c,function(A,D){if(!i(T,D)&&(C===A||h(C,A,d,p,m)))return T.push(D)})){E=!1;break}}else if(!(C===j||h(C,j,d,p,m))){E=!1;break}}return m.delete(l),m.delete(c),E}return Fd=u,Fd}var zd,J_;function v3(){if(J_)return zd;J_=1;function e(n){var i=-1,s=Array(n.size);return n.forEach(function(o,u){s[++i]=[u,o]}),s}return zd=e,zd}var Bd,ex;function Wg(){if(ex)return Bd;ex=1;function e(n){var i=-1,s=Array(n.size);return n.forEach(function(o){s[++i]=o}),s}return Bd=e,Bd}var Ud,tx;function y3(){if(tx)return Ud;tx=1;var e=es(),n=rN(),i=Ji(),s=hN(),o=v3(),u=Wg(),l=1,c=2,d="[object Boolean]",p="[object Date]",h="[object Error]",m="[object Map]",v="[object Number]",w="[object RegExp]",b="[object Set]",x="[object String]",k="[object Symbol]",S="[object ArrayBuffer]",E="[object DataView]",T=e?e.prototype:void 0,C=T?T.valueOf:void 0;function j(M,A,D,L,U,H,Q){switch(D){case E:if(M.byteLength!=A.byteLength||M.byteOffset!=A.byteOffset)return!1;M=M.buffer,A=A.buffer;case S:return!(M.byteLength!=A.byteLength||!H(new n(M),new n(A)));case d:case p:case v:return i(+M,+A);case h:return M.name==A.name&&M.message==A.message;case w:case x:return M==A+"";case m:var ee=o;case b:var R=L&l;if(ee||(ee=u),M.size!=A.size&&!R)return!1;var G=Q.get(M);if(G)return G==A;L|=c,Q.set(M,A);var B=s(ee(M),ee(A),L,U,H,Q);return Q.delete(M),B;case k:if(C)return C.call(M)==C.call(A)}return!1}return Ud=j,Ud}var Hd,nx;function w3(){if(nx)return Hd;nx=1;var e=tN(),n=1,i=Object.prototype,s=i.hasOwnProperty;function o(u,l,c,d,p,h){var m=c&n,v=e(u),w=v.length,b=e(l),x=b.length;if(w!=x&&!m)return!1;for(var k=w;k--;){var S=v[k];if(!(m?S in l:s.call(l,S)))return!1}var E=h.get(u),T=h.get(l);if(E&&T)return E==l&&T==u;var C=!0;h.set(u,l),h.set(l,u);for(var j=m;++k<w;){S=v[k];var M=u[S],A=l[S];if(d)var D=m?d(A,M,S,l,u,h):d(M,A,S,u,l,h);if(!(D===void 0?M===A||p(M,A,c,d,h):D)){C=!1;break}j||(j=S=="constructor")}if(C&&!j){var L=u.constructor,U=l.constructor;L!=U&&"constructor"in u&&"constructor"in l&&!(typeof L=="function"&&L instanceof L&&typeof U=="function"&&U instanceof U)&&(C=!1)}return h.delete(u),h.delete(l),C}return Hd=o,Hd}var Vd,rx;function _3(){if(rx)return Vd;rx=1;var e=fu(),n=hN(),i=y3(),s=w3(),o=ns(),u=wt(),l=ts(),c=go(),d=1,p="[object Arguments]",h="[object Array]",m="[object Object]",v=Object.prototype,w=v.hasOwnProperty;function b(x,k,S,E,T,C){var j=u(x),M=u(k),A=j?h:o(x),D=M?h:o(k);A=A==p?m:A,D=D==p?m:D;var L=A==m,U=D==m,H=A==D;if(H&&l(x)){if(!l(k))return!1;j=!0,L=!1}if(H&&!L)return C||(C=new e),j||c(x)?n(x,k,S,E,T,C):i(x,k,A,S,E,T,C);if(!(S&d)){var Q=L&&w.call(x,"__wrapped__"),ee=U&&w.call(k,"__wrapped__");if(Q||ee){var R=Q?x.value():x,G=ee?k.value():k;return C||(C=new e),T(R,G,S,E,C)}}return H?(C||(C=new e),s(x,k,S,E,T,C)):!1}return Vd=b,Vd}var Wd,ix;function pN(){if(ix)return Wd;ix=1;var e=_3(),n=Un();function i(s,o,u,l,c){return s===o?!0:s==null||o==null||!n(s)&&!n(o)?s!==s&&o!==o:e(s,o,u,l,i,c)}return Wd=i,Wd}var Gd,sx;function x3(){if(sx)return Gd;sx=1;var e=fu(),n=pN(),i=1,s=2;function o(u,l,c,d){var p=c.length,h=p,m=!d;if(u==null)return!h;for(u=Object(u);p--;){var v=c[p];if(m&&v[2]?v[1]!==u[v[0]]:!(v[0]in u))return!1}for(;++p<h;){v=c[p];var w=v[0],b=u[w],x=v[1];if(m&&v[2]){if(b===void 0&&!(w in u))return!1}else{var k=new e;if(d)var S=d(b,x,w,u,l,k);if(!(S===void 0?n(x,b,i|s,d,k):S))return!1}}return!0}return Gd=o,Gd}var Kd,ox;function mN(){if(ox)return Kd;ox=1;var e=_n();function n(i){return i===i&&!e(i)}return Kd=n,Kd}var Yd,ax;function S3(){if(ax)return Yd;ax=1;var e=mN(),n=Lr();function i(s){for(var o=n(s),u=o.length;u--;){var l=o[u],c=s[l];o[u]=[l,c,e(c)]}return o}return Yd=i,Yd}var Xd,ux;function gN(){if(ux)return Xd;ux=1;function e(n,i){return function(s){return s==null?!1:s[n]===i&&(i!==void 0||n in Object(s))}}return Xd=e,Xd}var Qd,lx;function k3(){if(lx)return Qd;lx=1;var e=x3(),n=S3(),i=gN();function s(o){var u=n(o);return u.length==1&&u[0][2]?i(u[0][0],u[0][1]):function(l){return l===o||e(l,o,u)}}return Qd=s,Qd}var Zd,cx;function rs(){if(cx)return Zd;cx=1;var e=oi(),n=Un(),i="[object Symbol]";function s(o){return typeof o=="symbol"||n(o)&&e(o)==i}return Zd=s,Zd}var Jd,fx;function Gg(){if(fx)return Jd;fx=1;var e=wt(),n=rs(),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,s=/^\w*$/;function o(u,l){if(e(u))return!1;var c=typeof u;return c=="number"||c=="symbol"||c=="boolean"||u==null||n(u)?!0:s.test(u)||!i.test(u)||l!=null&&u in Object(l)}return Jd=o,Jd}var eh,dx;function E3(){if(dx)return eh;dx=1;var e=qg(),n="Expected a function";function i(s,o){if(typeof s!="function"||o!=null&&typeof o!="function")throw new TypeError(n);var u=function(){var l=arguments,c=o?o.apply(this,l):l[0],d=u.cache;if(d.has(c))return d.get(c);var p=s.apply(this,l);return u.cache=d.set(c,p)||d,p};return u.cache=new(i.Cache||e),u}return i.Cache=e,eh=i,eh}var th,hx;function b3(){if(hx)return th;hx=1;var e=E3(),n=500;function i(s){var o=e(s,function(l){return u.size===n&&u.clear(),l}),u=o.cache;return o}return th=i,th}var nh,px;function N3(){if(px)return nh;px=1;var e=b3(),n=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,s=e(function(o){var u=[];return o.charCodeAt(0)===46&&u.push(""),o.replace(n,function(l,c,d,p){u.push(d?p.replace(i,"$1"):c||l)}),u});return nh=s,nh}var rh,mx;function wu(){if(mx)return rh;mx=1;function e(n,i){for(var s=-1,o=n==null?0:n.length,u=Array(o);++s<o;)u[s]=i(n[s],s,n);return u}return rh=e,rh}var ih,gx;function C3(){if(gx)return ih;gx=1;var e=es(),n=wu(),i=wt(),s=rs(),o=e?e.prototype:void 0,u=o?o.toString:void 0;function l(c){if(typeof c=="string")return c;if(i(c))return n(c,l)+"";if(s(c))return u?u.call(c):"";var d=c+"";return d=="0"&&1/c==-1/0?"-0":d}return ih=l,ih}var sh,vx;function vN(){if(vx)return sh;vx=1;var e=C3();function n(i){return i==null?"":e(i)}return sh=n,sh}var oh,yx;function _u(){if(yx)return oh;yx=1;var e=wt(),n=Gg(),i=N3(),s=vN();function o(u,l){return e(u)?u:n(u,l)?[u]:i(s(u))}return oh=o,oh}var ah,wx;function vo(){if(wx)return ah;wx=1;var e=rs();function n(i){if(typeof i=="string"||e(i))return i;var s=i+"";return s=="0"&&1/i==-1/0?"-0":s}return ah=n,ah}var uh,_x;function xu(){if(_x)return uh;_x=1;var e=_u(),n=vo();function i(s,o){o=e(o,s);for(var u=0,l=o.length;s!=null&&u<l;)s=s[n(o[u++])];return u&&u==l?s:void 0}return uh=i,uh}var lh,xx;function T3(){if(xx)return lh;xx=1;var e=xu();function n(i,s,o){var u=i==null?void 0:e(i,s);return u===void 0?o:u}return lh=n,lh}var ch,Sx;function R3(){if(Sx)return ch;Sx=1;function e(n,i){return n!=null&&i in Object(n)}return ch=e,ch}var fh,kx;function yN(){if(kx)return fh;kx=1;var e=_u(),n=mo(),i=wt(),s=pu(),o=Lg(),u=vo();function l(c,d,p){d=e(d,c);for(var h=-1,m=d.length,v=!1;++h<m;){var w=u(d[h]);if(!(v=c!=null&&p(c,w)))break;c=c[w]}return v||++h!=m?v:(m=c==null?0:c.length,!!m&&o(m)&&s(w,m)&&(i(c)||n(c)))}return fh=l,fh}var dh,Ex;function wN(){if(Ex)return dh;Ex=1;var e=R3(),n=yN();function i(s,o){return s!=null&&n(s,o,e)}return dh=i,dh}var hh,bx;function A3(){if(bx)return hh;bx=1;var e=pN(),n=T3(),i=wN(),s=Gg(),o=mN(),u=gN(),l=vo(),c=1,d=2;function p(h,m){return s(h)&&o(m)?u(l(h),m):function(v){var w=n(v,h);return w===void 0&&w===m?i(v,h):e(m,w,c|d)}}return hh=p,hh}var ph,Nx;function _N(){if(Nx)return ph;Nx=1;function e(n){return function(i){return i==null?void 0:i[n]}}return ph=e,ph}var mh,Cx;function j3(){if(Cx)return mh;Cx=1;var e=xu();function n(i){return function(s){return e(s,i)}}return mh=n,mh}var gh,Tx;function I3(){if(Tx)return gh;Tx=1;var e=_N(),n=j3(),i=Gg(),s=vo();function o(u){return i(u)?e(s(u)):n(u)}return gh=o,gh}var vh,Rx;function ar(){if(Rx)return vh;Rx=1;var e=k3(),n=A3(),i=li(),s=wt(),o=I3();function u(l){return typeof l=="function"?l:l==null?i:typeof l=="object"?s(l)?n(l[0],l[1]):e(l):o(l)}return vh=u,vh}var yh,Ax;function xN(){if(Ax)return yh;Ax=1;var e=Qb(),n=h3(),i=ar(),s=wt();function o(u,l){var c=s(u)?e:n;return c(u,i(l,3))}return yh=o,yh}var wh,jx;function M3(){if(jx)return wh;jx=1;var e=Object.prototype,n=e.hasOwnProperty;function i(s,o){return s!=null&&n.call(s,o)}return wh=i,wh}var _h,Ix;function SN(){if(Ix)return _h;Ix=1;var e=M3(),n=yN();function i(s,o){return s!=null&&n(s,o,e)}return _h=i,_h}var xh,Mx;function P3(){if(Mx)return xh;Mx=1;var e=Dg(),n=ns(),i=mo(),s=wt(),o=or(),u=ts(),l=gu(),c=go(),d="[object Map]",p="[object Set]",h=Object.prototype,m=h.hasOwnProperty;function v(w){if(w==null)return!0;if(o(w)&&(s(w)||typeof w=="string"||typeof w.splice=="function"||u(w)||c(w)||i(w)))return!w.length;var b=n(w);if(b==d||b==p)return!w.size;if(l(w))return!e(w).length;for(var x in w)if(m.call(w,x))return!1;return!0}return xh=v,xh}var Sh,Px;function kN(){if(Px)return Sh;Px=1;function e(n){return n===void 0}return Sh=e,Sh}var kh,qx;function EN(){if(qx)return kh;qx=1;var e=yu(),n=or();function i(s,o){var u=-1,l=n(s)?Array(s.length):[];return e(s,function(c,d,p){l[++u]=o(c,d,p)}),l}return kh=i,kh}var Eh,Ox;function bN(){if(Ox)return Eh;Ox=1;var e=wu(),n=ar(),i=EN(),s=wt();function o(u,l){var c=s(u)?e:i;return c(u,n(l,3))}return Eh=o,Eh}var bh,Lx;function q3(){if(Lx)return bh;Lx=1;function e(n,i,s,o){var u=-1,l=n==null?0:n.length;for(o&&l&&(s=n[++u]);++u<l;)s=i(s,n[u],u,n);return s}return bh=e,bh}var Nh,$x;function O3(){if($x)return Nh;$x=1;function e(n,i,s,o,u){return u(n,function(l,c,d){s=o?(o=!1,l):i(s,l,c,d)}),s}return Nh=e,Nh}var Ch,Dx;function NN(){if(Dx)return Ch;Dx=1;var e=q3(),n=yu(),i=ar(),s=O3(),o=wt();function u(l,c,d){var p=o(l)?e:s,h=arguments.length<3;return p(l,i(c,4),d,h,n)}return Ch=u,Ch}var Th,Fx;function L3(){if(Fx)return Th;Fx=1;var e=oi(),n=wt(),i=Un(),s="[object String]";function o(u){return typeof u=="string"||!n(u)&&i(u)&&e(u)==s}return Th=o,Th}var Rh,zx;function $3(){if(zx)return Rh;zx=1;var e=_N(),n=e("length");return Rh=n,Rh}var Ah,Bx;function D3(){if(Bx)return Ah;Bx=1;var e="\\ud800-\\udfff",n="\\u0300-\\u036f",i="\\ufe20-\\ufe2f",s="\\u20d0-\\u20ff",o=n+i+s,u="\\ufe0e\\ufe0f",l="\\u200d",c=RegExp("["+l+e+o+u+"]");function d(p){return c.test(p)}return Ah=d,Ah}var jh,Ux;function F3(){if(Ux)return jh;Ux=1;var e="\\ud800-\\udfff",n="\\u0300-\\u036f",i="\\ufe20-\\ufe2f",s="\\u20d0-\\u20ff",o=n+i+s,u="\\ufe0e\\ufe0f",l="["+e+"]",c="["+o+"]",d="\\ud83c[\\udffb-\\udfff]",p="(?:"+c+"|"+d+")",h="[^"+e+"]",m="(?:\\ud83c[\\udde6-\\uddff]){2}",v="[\\ud800-\\udbff][\\udc00-\\udfff]",w="\\u200d",b=p+"?",x="["+u+"]?",k="(?:"+w+"(?:"+[h,m,v].join("|")+")"+x+b+")*",S=x+b+k,E="(?:"+[h+c+"?",c,m,v,l].join("|")+")",T=RegExp(d+"(?="+d+")|"+E+S,"g");function C(j){for(var M=T.lastIndex=0;T.test(j);)++M;return M}return jh=C,jh}var Ih,Hx;function z3(){if(Hx)return Ih;Hx=1;var e=$3(),n=D3(),i=F3();function s(o){return n(o)?i(o):e(o)}return Ih=s,Ih}var Mh,Vx;function B3(){if(Vx)return Mh;Vx=1;var e=Dg(),n=ns(),i=or(),s=L3(),o=z3(),u="[object Map]",l="[object Set]";function c(d){if(d==null)return 0;if(i(d))return s(d)?o(d):d.length;var p=n(d);return p==u||p==l?d.size:e(d).length}return Mh=c,Mh}var Ph,Wx;function U3(){if(Wx)return Ph;Wx=1;var e=Og(),n=sN(),i=Vg(),s=ar(),o=vu(),u=wt(),l=ts(),c=ho(),d=_n(),p=go();function h(m,v,w){var b=u(m),x=b||l(m)||p(m);if(v=s(v,4),w==null){var k=m&&m.constructor;x?w=b?new k:[]:d(m)?w=c(k)?n(o(m)):{}:w={}}return(x?e:i)(m,function(S,E,T){return v(w,S,E,T)}),w}return Ph=h,Ph}var qh,Gx;function H3(){if(Gx)return qh;Gx=1;var e=es(),n=mo(),i=wt(),s=e?e.isConcatSpreadable:void 0;function o(u){return i(u)||n(u)||!!(s&&u&&u[s])}return qh=o,qh}var Oh,Kx;function Kg(){if(Kx)return Oh;Kx=1;var e=zg(),n=H3();function i(s,o,u,l,c){var d=-1,p=s.length;for(u||(u=n),c||(c=[]);++d<p;){var h=s[d];o>0&&u(h)?o>1?i(h,o-1,u,l,c):e(c,h):l||(c[c.length]=h)}return c}return Oh=i,Oh}var Lh,Yx;function V3(){if(Yx)return Lh;Yx=1;function e(n,i,s){switch(s.length){case 0:return n.call(i);case 1:return n.call(i,s[0]);case 2:return n.call(i,s[0],s[1]);case 3:return n.call(i,s[0],s[1],s[2])}return n.apply(i,s)}return Lh=e,Lh}var $h,Xx;function CN(){if(Xx)return $h;Xx=1;var e=V3(),n=Math.max;function i(s,o,u){return o=n(o===void 0?s.length-1:o,0),function(){for(var l=arguments,c=-1,d=n(l.length-o,0),p=Array(d);++c<d;)p[c]=l[o+c];c=-1;for(var h=Array(o+1);++c<o;)h[c]=l[c];return h[o]=u(p),e(s,this,h)}}return $h=i,$h}var Dh,Qx;function W3(){if(Qx)return Dh;Qx=1;var e=Ug(),n=Wb(),i=li(),s=n?function(o,u){return n(o,"toString",{configurable:!0,enumerable:!1,value:e(u),writable:!0})}:i;return Dh=s,Dh}var Fh,Zx;function G3(){if(Zx)return Fh;Zx=1;var e=800,n=16,i=Date.now;function s(o){var u=0,l=0;return function(){var c=i(),d=n-(c-l);if(l=c,d>0){if(++u>=e)return arguments[0]}else u=0;return o.apply(void 0,arguments)}}return Fh=s,Fh}var zh,Jx;function TN(){if(Jx)return zh;Jx=1;var e=W3(),n=G3(),i=n(e);return zh=i,zh}var Bh,eS;function Su(){if(eS)return Bh;eS=1;var e=li(),n=CN(),i=TN();function s(o,u){return i(n(o,u,e),o+"")}return Bh=s,Bh}var Uh,tS;function RN(){if(tS)return Uh;tS=1;function e(n,i,s,o){for(var u=n.length,l=s+(o?1:-1);o?l--:++l<u;)if(i(n[l],l,n))return l;return-1}return Uh=e,Uh}var Hh,nS;function K3(){if(nS)return Hh;nS=1;function e(n){return n!==n}return Hh=e,Hh}var Vh,rS;function Y3(){if(rS)return Vh;rS=1;function e(n,i,s){for(var o=s-1,u=n.length;++o<u;)if(n[o]===i)return o;return-1}return Vh=e,Vh}var Wh,iS;function X3(){if(iS)return Wh;iS=1;var e=RN(),n=K3(),i=Y3();function s(o,u,l){return u===u?i(o,u,l):e(o,n,l)}return Wh=s,Wh}var Gh,sS;function Q3(){if(sS)return Gh;sS=1;var e=X3();function n(i,s){var o=i==null?0:i.length;return!!o&&e(i,s,0)>-1}return Gh=n,Gh}var Kh,oS;function Z3(){if(oS)return Kh;oS=1;function e(n,i,s){for(var o=-1,u=n==null?0:n.length;++o<u;)if(s(i,n[o]))return!0;return!1}return Kh=e,Kh}var Yh,aS;function J3(){if(aS)return Yh;aS=1;function e(){}return Yh=e,Yh}var Xh,uS;function eO(){if(uS)return Xh;uS=1;var e=nN(),n=J3(),i=Wg(),s=1/0,o=e&&1/i(new e([,-0]))[1]==s?function(u){return new e(u)}:n;return Xh=o,Xh}var Qh,lS;function tO(){if(lS)return Qh;lS=1;var e=fN(),n=Q3(),i=Z3(),s=dN(),o=eO(),u=Wg(),l=200;function c(d,p,h){var m=-1,v=n,w=d.length,b=!0,x=[],k=x;if(h)b=!1,v=i;else if(w>=l){var S=p?null:o(d);if(S)return u(S);b=!1,v=s,k=new e}else k=p?[]:x;e:for(;++m<w;){var E=d[m],T=p?p(E):E;if(E=h||E!==0?E:0,b&&T===T){for(var C=k.length;C--;)if(k[C]===T)continue e;p&&k.push(T),x.push(E)}else v(k,T,h)||(k!==x&&k.push(T),x.push(E))}return x}return Qh=c,Qh}var Zh,cS;function AN(){if(cS)return Zh;cS=1;var e=or(),n=Un();function i(s){return n(s)&&e(s)}return Zh=i,Zh}var Jh,fS;function nO(){if(fS)return Jh;fS=1;var e=Kg(),n=Su(),i=tO(),s=AN(),o=n(function(u){return i(e(u,1,s,!0))});return Jh=o,Jh}var ep,dS;function rO(){if(dS)return ep;dS=1;var e=wu();function n(i,s){return e(s,function(o){return i[o]})}return ep=n,ep}var tp,hS;function jN(){if(hS)return tp;hS=1;var e=rO(),n=Lr();function i(s){return s==null?[]:e(s,n(s))}return tp=i,tp}var np,pS;function xn(){if(pS)return np;pS=1;var e;if(typeof Mg=="function")try{e={clone:c3(),constant:Ug(),each:cN(),filter:xN(),has:SN(),isArray:wt(),isEmpty:P3(),isFunction:ho(),isUndefined:kN(),keys:Lr(),map:bN(),reduce:NN(),size:B3(),transform:U3(),union:nO(),values:jN()}}catch{}return e||(e=window._),np=e,np}var rp,mS;function Yg(){if(mS)return rp;mS=1;var e=xn();rp=o;var n="\0",i="\0",s="";function o(h){this._isDirected=e.has(h,"directed")?h.directed:!0,this._isMultigraph=e.has(h,"multigraph")?h.multigraph:!1,this._isCompound=e.has(h,"compound")?h.compound:!1,this._label=void 0,this._defaultNodeLabelFn=e.constant(void 0),this._defaultEdgeLabelFn=e.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[i]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}o.prototype._nodeCount=0,o.prototype._edgeCount=0,o.prototype.isDirected=function(){return this._isDirected},o.prototype.isMultigraph=function(){return this._isMultigraph},o.prototype.isCompound=function(){return this._isCompound},o.prototype.setGraph=function(h){return this._label=h,this},o.prototype.graph=function(){return this._label},o.prototype.setDefaultNodeLabel=function(h){return e.isFunction(h)||(h=e.constant(h)),this._defaultNodeLabelFn=h,this},o.prototype.nodeCount=function(){return this._nodeCount},o.prototype.nodes=function(){return e.keys(this._nodes)},o.prototype.sources=function(){var h=this;return e.filter(this.nodes(),function(m){return e.isEmpty(h._in[m])})},o.prototype.sinks=function(){var h=this;return e.filter(this.nodes(),function(m){return e.isEmpty(h._out[m])})},o.prototype.setNodes=function(h,m){var v=arguments,w=this;return e.each(h,function(b){v.length>1?w.setNode(b,m):w.setNode(b)}),this},o.prototype.setNode=function(h,m){return e.has(this._nodes,h)?(arguments.length>1&&(this._nodes[h]=m),this):(this._nodes[h]=arguments.length>1?m:this._defaultNodeLabelFn(h),this._isCompound&&(this._parent[h]=i,this._children[h]={},this._children[i][h]=!0),this._in[h]={},this._preds[h]={},this._out[h]={},this._sucs[h]={},++this._nodeCount,this)},o.prototype.node=function(h){return this._nodes[h]},o.prototype.hasNode=function(h){return e.has(this._nodes,h)},o.prototype.removeNode=function(h){var m=this;if(e.has(this._nodes,h)){var v=function(w){m.removeEdge(m._edgeObjs[w])};delete this._nodes[h],this._isCompound&&(this._removeFromParentsChildList(h),delete this._parent[h],e.each(this.children(h),function(w){m.setParent(w)}),delete this._children[h]),e.each(e.keys(this._in[h]),v),delete this._in[h],delete this._preds[h],e.each(e.keys(this._out[h]),v),delete this._out[h],delete this._sucs[h],--this._nodeCount}return this},o.prototype.setParent=function(h,m){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(e.isUndefined(m))m=i;else{m+="";for(var v=m;!e.isUndefined(v);v=this.parent(v))if(v===h)throw new Error("Setting "+m+" as parent of "+h+" would create a cycle");this.setNode(m)}return this.setNode(h),this._removeFromParentsChildList(h),this._parent[h]=m,this._children[m][h]=!0,this},o.prototype._removeFromParentsChildList=function(h){delete this._children[this._parent[h]][h]},o.prototype.parent=function(h){if(this._isCompound){var m=this._parent[h];if(m!==i)return m}},o.prototype.children=function(h){if(e.isUndefined(h)&&(h=i),this._isCompound){var m=this._children[h];if(m)return e.keys(m)}else{if(h===i)return this.nodes();if(this.hasNode(h))return[]}},o.prototype.predecessors=function(h){var m=this._preds[h];if(m)return e.keys(m)},o.prototype.successors=function(h){var m=this._sucs[h];if(m)return e.keys(m)},o.prototype.neighbors=function(h){var m=this.predecessors(h);if(m)return e.union(m,this.successors(h))},o.prototype.isLeaf=function(h){var m;return this.isDirected()?m=this.successors(h):m=this.neighbors(h),m.length===0},o.prototype.filterNodes=function(h){var m=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});m.setGraph(this.graph());var v=this;e.each(this._nodes,function(x,k){h(k)&&m.setNode(k,x)}),e.each(this._edgeObjs,function(x){m.hasNode(x.v)&&m.hasNode(x.w)&&m.setEdge(x,v.edge(x))});var w={};function b(x){var k=v.parent(x);return k===void 0||m.hasNode(k)?(w[x]=k,k):k in w?w[k]:b(k)}return this._isCompound&&e.each(m.nodes(),function(x){m.setParent(x,b(x))}),m},o.prototype.setDefaultEdgeLabel=function(h){return e.isFunction(h)||(h=e.constant(h)),this._defaultEdgeLabelFn=h,this},o.prototype.edgeCount=function(){return this._edgeCount},o.prototype.edges=function(){return e.values(this._edgeObjs)},o.prototype.setPath=function(h,m){var v=this,w=arguments;return e.reduce(h,function(b,x){return w.length>1?v.setEdge(b,x,m):v.setEdge(b,x),x}),this},o.prototype.setEdge=function(){var h,m,v,w,b=!1,x=arguments[0];typeof x=="object"&&x!==null&&"v"in x?(h=x.v,m=x.w,v=x.name,arguments.length===2&&(w=arguments[1],b=!0)):(h=x,m=arguments[1],v=arguments[3],arguments.length>2&&(w=arguments[2],b=!0)),h=""+h,m=""+m,e.isUndefined(v)||(v=""+v);var k=c(this._isDirected,h,m,v);if(e.has(this._edgeLabels,k))return b&&(this._edgeLabels[k]=w),this;if(!e.isUndefined(v)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(h),this.setNode(m),this._edgeLabels[k]=b?w:this._defaultEdgeLabelFn(h,m,v);var S=d(this._isDirected,h,m,v);return h=S.v,m=S.w,Object.freeze(S),this._edgeObjs[k]=S,u(this._preds[m],h),u(this._sucs[h],m),this._in[m][k]=S,this._out[h][k]=S,this._edgeCount++,this},o.prototype.edge=function(h,m,v){var w=arguments.length===1?p(this._isDirected,arguments[0]):c(this._isDirected,h,m,v);return this._edgeLabels[w]},o.prototype.hasEdge=function(h,m,v){var w=arguments.length===1?p(this._isDirected,arguments[0]):c(this._isDirected,h,m,v);return e.has(this._edgeLabels,w)},o.prototype.removeEdge=function(h,m,v){var w=arguments.length===1?p(this._isDirected,arguments[0]):c(this._isDirected,h,m,v),b=this._edgeObjs[w];return b&&(h=b.v,m=b.w,delete this._edgeLabels[w],delete this._edgeObjs[w],l(this._preds[m],h),l(this._sucs[h],m),delete this._in[m][w],delete this._out[h][w],this._edgeCount--),this},o.prototype.inEdges=function(h,m){var v=this._in[h];if(v){var w=e.values(v);return m?e.filter(w,function(b){return b.v===m}):w}},o.prototype.outEdges=function(h,m){var v=this._out[h];if(v){var w=e.values(v);return m?e.filter(w,function(b){return b.w===m}):w}},o.prototype.nodeEdges=function(h,m){var v=this.inEdges(h,m);if(v)return v.concat(this.outEdges(h,m))};function u(h,m){h[m]?h[m]++:h[m]=1}function l(h,m){--h[m]||delete h[m]}function c(h,m,v,w){var b=""+m,x=""+v;if(!h&&b>x){var k=b;b=x,x=k}return b+s+x+s+(e.isUndefined(w)?n:w)}function d(h,m,v,w){var b=""+m,x=""+v;if(!h&&b>x){var k=b;b=x,x=k}var S={v:b,w:x};return w&&(S.name=w),S}function p(h,m){return c(h,m.v,m.w,m.name)}return rp}var ip,gS;function iO(){return gS||(gS=1,ip="2.1.8"),ip}var sp,vS;function sO(){return vS||(vS=1,sp={Graph:Yg(),version:iO()}),sp}var op,yS;function oO(){if(yS)return op;yS=1;var e=xn(),n=Yg();op={write:i,read:u};function i(l){var c={options:{directed:l.isDirected(),multigraph:l.isMultigraph(),compound:l.isCompound()},nodes:s(l),edges:o(l)};return e.isUndefined(l.graph())||(c.value=e.clone(l.graph())),c}function s(l){return e.map(l.nodes(),function(c){var d=l.node(c),p=l.parent(c),h={v:c};return e.isUndefined(d)||(h.value=d),e.isUndefined(p)||(h.parent=p),h})}function o(l){return e.map(l.edges(),function(c){var d=l.edge(c),p={v:c.v,w:c.w};return e.isUndefined(c.name)||(p.name=c.name),e.isUndefined(d)||(p.value=d),p})}function u(l){var c=new n(l.options).setGraph(l.value);return e.each(l.nodes,function(d){c.setNode(d.v,d.value),d.parent&&c.setParent(d.v,d.parent)}),e.each(l.edges,function(d){c.setEdge({v:d.v,w:d.w,name:d.name},d.value)}),c}return op}var ap,wS;function aO(){if(wS)return ap;wS=1;var e=xn();ap=n;function n(i){var s={},o=[],u;function l(c){e.has(s,c)||(s[c]=!0,u.push(c),e.each(i.successors(c),l),e.each(i.predecessors(c),l))}return e.each(i.nodes(),function(c){u=[],l(c),u.length&&o.push(u)}),o}return ap}var up,_S;function IN(){if(_S)return up;_S=1;var e=xn();up=n;function n(){this._arr=[],this._keyIndices={}}return n.prototype.size=function(){return this._arr.length},n.prototype.keys=function(){return this._arr.map(function(i){return i.key})},n.prototype.has=function(i){return e.has(this._keyIndices,i)},n.prototype.priority=function(i){var s=this._keyIndices[i];if(s!==void 0)return this._arr[s].priority},n.prototype.min=function(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key},n.prototype.add=function(i,s){var o=this._keyIndices;if(i=String(i),!e.has(o,i)){var u=this._arr,l=u.length;return o[i]=l,u.push({key:i,priority:s}),this._decrease(l),!0}return!1},n.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var i=this._arr.pop();return delete this._keyIndices[i.key],this._heapify(0),i.key},n.prototype.decrease=function(i,s){var o=this._keyIndices[i];if(s>this._arr[o].priority)throw new Error("New priority is greater than current priority. Key: "+i+" Old: "+this._arr[o].priority+" New: "+s);this._arr[o].priority=s,this._decrease(o)},n.prototype._heapify=function(i){var s=this._arr,o=2*i,u=o+1,l=i;o<s.length&&(l=s[o].priority<s[l].priority?o:l,u<s.length&&(l=s[u].priority<s[l].priority?u:l),l!==i&&(this._swap(i,l),this._heapify(l)))},n.prototype._decrease=function(i){for(var s=this._arr,o=s[i].priority,u;i!==0&&(u=i>>1,!(s[u].priority<o));)this._swap(i,u),i=u},n.prototype._swap=function(i,s){var o=this._arr,u=this._keyIndices,l=o[i],c=o[s];o[i]=c,o[s]=l,u[c.key]=i,u[l.key]=s},up}var lp,xS;function MN(){if(xS)return lp;xS=1;var e=xn(),n=IN();lp=s;var i=e.constant(1);function s(u,l,c,d){return o(u,String(l),c||i,d||function(p){return u.outEdges(p)})}function o(u,l,c,d){var p={},h=new n,m,v,w=function(b){var x=b.v!==m?b.v:b.w,k=p[x],S=c(b),E=v.distance+S;if(S<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+b+" Weight: "+S);E<k.distance&&(k.distance=E,k.predecessor=m,h.decrease(x,E))};for(u.nodes().forEach(function(b){var x=b===l?0:Number.POSITIVE_INFINITY;p[b]={distance:x},h.add(b,x)});h.size()>0&&(m=h.removeMin(),v=p[m],v.distance!==Number.POSITIVE_INFINITY);)d(m).forEach(w);return p}return lp}var cp,SS;function uO(){if(SS)return cp;SS=1;var e=MN(),n=xn();cp=i;function i(s,o,u){return n.transform(s.nodes(),function(l,c){l[c]=e(s,c,o,u)},{})}return cp}var fp,kS;function PN(){if(kS)return fp;kS=1;var e=xn();fp=n;function n(i){var s=0,o=[],u={},l=[];function c(d){var p=u[d]={onStack:!0,lowlink:s,index:s++};if(o.push(d),i.successors(d).forEach(function(v){e.has(u,v)?u[v].onStack&&(p.lowlink=Math.min(p.lowlink,u[v].index)):(c(v),p.lowlink=Math.min(p.lowlink,u[v].lowlink))}),p.lowlink===p.index){var h=[],m;do m=o.pop(),u[m].onStack=!1,h.push(m);while(d!==m);l.push(h)}}return i.nodes().forEach(function(d){e.has(u,d)||c(d)}),l}return fp}var dp,ES;function lO(){if(ES)return dp;ES=1;var e=xn(),n=PN();dp=i;function i(s){return e.filter(n(s),function(o){return o.length>1||o.length===1&&s.hasEdge(o[0],o[0])})}return dp}var hp,bS;function cO(){if(bS)return hp;bS=1;var e=xn();hp=i;var n=e.constant(1);function i(o,u,l){return s(o,u||n,l||function(c){return o.outEdges(c)})}function s(o,u,l){var c={},d=o.nodes();return d.forEach(function(p){c[p]={},c[p][p]={distance:0},d.forEach(function(h){p!==h&&(c[p][h]={distance:Number.POSITIVE_INFINITY})}),l(p).forEach(function(h){var m=h.v===p?h.w:h.v,v=u(h);c[p][m]={distance:v,predecessor:p}})}),d.forEach(function(p){var h=c[p];d.forEach(function(m){var v=c[m];d.forEach(function(w){var b=v[p],x=h[w],k=v[w],S=b.distance+x.distance;S<k.distance&&(k.distance=S,k.predecessor=x.predecessor)})})}),c}return hp}var pp,NS;function qN(){if(NS)return pp;NS=1;var e=xn();pp=n,n.CycleException=i;function n(s){var o={},u={},l=[];function c(d){if(e.has(u,d))throw new i;e.has(o,d)||(u[d]=!0,o[d]=!0,e.each(s.predecessors(d),c),delete u[d],l.push(d))}if(e.each(s.sinks(),c),e.size(o)!==s.nodeCount())throw new i;return l}function i(){}return i.prototype=new Error,pp}var mp,CS;function fO(){if(CS)return mp;CS=1;var e=qN();mp=n;function n(i){try{e(i)}catch(s){if(s instanceof e.CycleException)return!1;throw s}return!0}return mp}var gp,TS;function ON(){if(TS)return gp;TS=1;var e=xn();gp=n;function n(s,o,u){e.isArray(o)||(o=[o]);var l=(s.isDirected()?s.successors:s.neighbors).bind(s),c=[],d={};return e.each(o,function(p){if(!s.hasNode(p))throw new Error("Graph does not have node: "+p);i(s,p,u==="post",d,l,c)}),c}function i(s,o,u,l,c,d){e.has(l,o)||(l[o]=!0,u||d.push(o),e.each(c(o),function(p){i(s,p,u,l,c,d)}),u&&d.push(o))}return gp}var vp,RS;function dO(){if(RS)return vp;RS=1;var e=ON();vp=n;function n(i,s){return e(i,s,"post")}return vp}var yp,AS;function hO(){if(AS)return yp;AS=1;var e=ON();yp=n;function n(i,s){return e(i,s,"pre")}return yp}var wp,jS;function pO(){if(jS)return wp;jS=1;var e=xn(),n=Yg(),i=IN();wp=s;function s(o,u){var l=new n,c={},d=new i,p;function h(v){var w=v.v===p?v.w:v.v,b=d.priority(w);if(b!==void 0){var x=u(v);x<b&&(c[w]=p,d.decrease(w,x))}}if(o.nodeCount()===0)return l;e.each(o.nodes(),function(v){d.add(v,Number.POSITIVE_INFINITY),l.setNode(v)}),d.decrease(o.nodes()[0],0);for(var m=!1;d.size()>0;){if(p=d.removeMin(),e.has(c,p))l.setEdge(p,c[p]);else{if(m)throw new Error("Input graph is not connected: "+o);m=!0}o.nodeEdges(p).forEach(h)}return l}return wp}var _p,IS;function mO(){return IS||(IS=1,_p={components:aO(),dijkstra:MN(),dijkstraAll:uO(),findCycles:lO(),floydWarshall:cO(),isAcyclic:fO(),postorder:dO(),preorder:hO(),prim:pO(),tarjan:PN(),topsort:qN()}),_p}var xp,MS;function gO(){if(MS)return xp;MS=1;var e=sO();return xp={Graph:e.Graph,json:oO(),alg:mO(),version:e.version},xp}var Sp,PS;function Pn(){if(PS)return Sp;PS=1;var e;if(typeof Mg=="function")try{e=gO()}catch{}return e||(e=window.graphlib),Sp=e,Sp}var kp,qS;function vO(){if(qS)return kp;qS=1;var e=aN(),n=1,i=4;function s(o){return e(o,n|i)}return kp=s,kp}var Ep,OS;function ku(){if(OS)return Ep;OS=1;var e=Ji(),n=or(),i=pu(),s=_n();function o(u,l,c){if(!s(c))return!1;var d=typeof l;return(d=="number"?n(c)&&i(l,c.length):d=="string"&&l in c)?e(c[l],u):!1}return Ep=o,Ep}var bp,LS;function yO(){if(LS)return bp;LS=1;var e=Su(),n=Ji(),i=ku(),s=ui(),o=Object.prototype,u=o.hasOwnProperty,l=e(function(c,d){c=Object(c);var p=-1,h=d.length,m=h>2?d[2]:void 0;for(m&&i(d[0],d[1],m)&&(h=1);++p<h;)for(var v=d[p],w=s(v),b=-1,x=w.length;++b<x;){var k=w[b],S=c[k];(S===void 0||n(S,o[k])&&!u.call(c,k))&&(c[k]=v[k])}return c});return bp=l,bp}var Np,$S;function wO(){if($S)return Np;$S=1;var e=ar(),n=or(),i=Lr();function s(o){return function(u,l,c){var d=Object(u);if(!n(u)){var p=e(l,3);u=i(u),l=function(m){return p(d[m],m,d)}}var h=o(u,l,c);return h>-1?d[p?u[h]:h]:void 0}}return Np=s,Np}var Cp,DS;function _O(){if(DS)return Cp;DS=1;var e=/\s/;function n(i){for(var s=i.length;s--&&e.test(i.charAt(s)););return s}return Cp=n,Cp}var Tp,FS;function xO(){if(FS)return Tp;FS=1;var e=_O(),n=/^\s+/;function i(s){return s&&s.slice(0,e(s)+1).replace(n,"")}return Tp=i,Tp}var Rp,zS;function SO(){if(zS)return Rp;zS=1;var e=xO(),n=_n(),i=rs(),s=NaN,o=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,l=/^0o[0-7]+$/i,c=parseInt;function d(p){if(typeof p=="number")return p;if(i(p))return s;if(n(p)){var h=typeof p.valueOf=="function"?p.valueOf():p;p=n(h)?h+"":h}if(typeof p!="string")return p===0?p:+p;p=e(p);var m=u.test(p);return m||l.test(p)?c(p.slice(2),m?2:8):o.test(p)?s:+p}return Rp=d,Rp}var Ap,BS;function LN(){if(BS)return Ap;BS=1;var e=SO(),n=1/0,i=17976931348623157e292;function s(o){if(!o)return o===0?o:0;if(o=e(o),o===n||o===-n){var u=o<0?-1:1;return u*i}return o===o?o:0}return Ap=s,Ap}var jp,US;function kO(){if(US)return jp;US=1;var e=LN();function n(i){var s=e(i),o=s%1;return s===s?o?s-o:s:0}return jp=n,jp}var Ip,HS;function EO(){if(HS)return Ip;HS=1;var e=RN(),n=ar(),i=kO(),s=Math.max;function o(u,l,c){var d=u==null?0:u.length;if(!d)return-1;var p=c==null?0:i(c);return p<0&&(p=s(d+p,0)),e(u,n(l,3),p)}return Ip=o,Ip}var Mp,VS;function bO(){if(VS)return Mp;VS=1;var e=wO(),n=EO(),i=e(n);return Mp=i,Mp}var Pp,WS;function $N(){if(WS)return Pp;WS=1;var e=Kg();function n(i){var s=i==null?0:i.length;return s?e(i,1):[]}return Pp=n,Pp}var qp,GS;function NO(){if(GS)return qp;GS=1;var e=Hg(),n=uN(),i=ui();function s(o,u){return o==null?o:e(o,n(u),i)}return qp=s,qp}var Op,KS;function CO(){if(KS)return Op;KS=1;function e(n){var i=n==null?0:n.length;return i?n[i-1]:void 0}return Op=e,Op}var Lp,YS;function TO(){if(YS)return Lp;YS=1;var e=du(),n=Vg(),i=ar();function s(o,u){var l={};return u=i(u,3),n(o,function(c,d,p){e(l,d,u(c,d,p))}),l}return Lp=s,Lp}var $p,XS;function Xg(){if(XS)return $p;XS=1;var e=rs();function n(i,s,o){for(var u=-1,l=i.length;++u<l;){var c=i[u],d=s(c);if(d!=null&&(p===void 0?d===d&&!e(d):o(d,p)))var p=d,h=c}return h}return $p=n,$p}var Dp,QS;function RO(){if(QS)return Dp;QS=1;function e(n,i){return n>i}return Dp=e,Dp}var Fp,ZS;function AO(){if(ZS)return Fp;ZS=1;var e=Xg(),n=RO(),i=li();function s(o){return o&&o.length?e(o,i,n):void 0}return Fp=s,Fp}var zp,JS;function DN(){if(JS)return zp;JS=1;var e=du(),n=Ji();function i(s,o,u){(u!==void 0&&!n(s[o],u)||u===void 0&&!(o in s))&&e(s,o,u)}return zp=i,zp}var Bp,ek;function jO(){if(ek)return Bp;ek=1;var e=oi(),n=vu(),i=Un(),s="[object Object]",o=Function.prototype,u=Object.prototype,l=o.toString,c=u.hasOwnProperty,d=l.call(Object);function p(h){if(!i(h)||e(h)!=s)return!1;var m=n(h);if(m===null)return!0;var v=c.call(m,"constructor")&&m.constructor;return typeof v=="function"&&v instanceof v&&l.call(v)==d}return Bp=p,Bp}var Up,tk;function FN(){if(tk)return Up;tk=1;function e(n,i){if(!(i==="constructor"&&typeof n[i]=="function")&&i!="__proto__")return n[i]}return Up=e,Up}var Hp,nk;function IO(){if(nk)return Hp;nk=1;var e=po(),n=ui();function i(s){return e(s,n(s))}return Hp=i,Hp}var Vp,rk;function MO(){if(rk)return Vp;rk=1;var e=DN(),n=Yb(),i=iN(),s=Xb(),o=oN(),u=mo(),l=wt(),c=AN(),d=ts(),p=ho(),h=_n(),m=jO(),v=go(),w=FN(),b=IO();function x(k,S,E,T,C,j,M){var A=w(k,E),D=w(S,E),L=M.get(D);if(L){e(k,E,L);return}var U=j?j(A,D,E+"",k,S,M):void 0,H=U===void 0;if(H){var Q=l(D),ee=!Q&&d(D),R=!Q&&!ee&&v(D);U=D,Q||ee||R?l(A)?U=A:c(A)?U=s(A):ee?(H=!1,U=n(D,!0)):R?(H=!1,U=i(D,!0)):U=[]:m(D)||u(D)?(U=A,u(A)?U=b(A):(!h(A)||p(A))&&(U=o(D))):H=!1}H&&(M.set(D,U),C(U,D,T,j,M),M.delete(D)),e(k,E,U)}return Vp=x,Vp}var Wp,ik;function PO(){if(ik)return Wp;ik=1;var e=fu(),n=DN(),i=Hg(),s=MO(),o=_n(),u=ui(),l=FN();function c(d,p,h,m,v){d!==p&&i(p,function(w,b){if(v||(v=new e),o(w))s(d,p,b,h,c,m,v);else{var x=m?m(l(d,b),w,b+"",d,p,v):void 0;x===void 0&&(x=w),n(d,b,x)}},u)}return Wp=c,Wp}var Gp,sk;function qO(){if(sk)return Gp;sk=1;var e=Su(),n=ku();function i(s){return e(function(o,u){var l=-1,c=u.length,d=c>1?u[c-1]:void 0,p=c>2?u[2]:void 0;for(d=s.length>3&&typeof d=="function"?(c--,d):void 0,p&&n(u[0],u[1],p)&&(d=c<3?void 0:d,c=1),o=Object(o);++l<c;){var h=u[l];h&&s(o,h,l,d)}return o})}return Gp=i,Gp}var Kp,ok;function OO(){if(ok)return Kp;ok=1;var e=PO(),n=qO(),i=n(function(s,o,u){e(s,o,u)});return Kp=i,Kp}var Yp,ak;function zN(){if(ak)return Yp;ak=1;function e(n,i){return n<i}return Yp=e,Yp}var Xp,uk;function LO(){if(uk)return Xp;uk=1;var e=Xg(),n=zN(),i=li();function s(o){return o&&o.length?e(o,i,n):void 0}return Xp=s,Xp}var Qp,lk;function $O(){if(lk)return Qp;lk=1;var e=Xg(),n=ar(),i=zN();function s(o,u){return o&&o.length?e(o,n(u,2),i):void 0}return Qp=s,Qp}var Zp,ck;function DO(){if(ck)return Zp;ck=1;var e=On(),n=function(){return e.Date.now()};return Zp=n,Zp}var Jp,fk;function FO(){if(fk)return Jp;fk=1;var e=hu(),n=_u(),i=pu(),s=_n(),o=vo();function u(l,c,d,p){if(!s(l))return l;c=n(c,l);for(var h=-1,m=c.length,v=m-1,w=l;w!=null&&++h<m;){var b=o(c[h]),x=d;if(b==="__proto__"||b==="constructor"||b==="prototype")return l;if(h!=v){var k=w[b];x=p?p(k,b,w):void 0,x===void 0&&(x=s(k)?k:i(c[h+1])?[]:{})}e(w,b,x),w=w[b]}return l}return Jp=u,Jp}var em,dk;function zO(){if(dk)return em;dk=1;var e=xu(),n=FO(),i=_u();function s(o,u,l){for(var c=-1,d=u.length,p={};++c<d;){var h=u[c],m=e(o,h);l(m,h)&&n(p,i(h,o),m)}return p}return em=s,em}var tm,hk;function BO(){if(hk)return tm;hk=1;var e=zO(),n=wN();function i(s,o){return e(s,o,function(u,l){return n(s,l)})}return tm=i,tm}var nm,pk;function UO(){if(pk)return nm;pk=1;var e=$N(),n=CN(),i=TN();function s(o){return i(n(o,void 0,e),o+"")}return nm=s,nm}var rm,mk;function HO(){if(mk)return rm;mk=1;var e=BO(),n=UO(),i=n(function(s,o){return s==null?{}:e(s,o)});return rm=i,rm}var im,gk;function VO(){if(gk)return im;gk=1;var e=Math.ceil,n=Math.max;function i(s,o,u,l){for(var c=-1,d=n(e((o-s)/(u||1)),0),p=Array(d);d--;)p[l?d:++c]=s,s+=u;return p}return im=i,im}var sm,vk;function WO(){if(vk)return sm;vk=1;var e=VO(),n=ku(),i=LN();function s(o){return function(u,l,c){return c&&typeof c!="number"&&n(u,l,c)&&(l=c=void 0),u=i(u),l===void 0?(l=u,u=0):l=i(l),c=c===void 0?u<l?1:-1:i(c),e(u,l,c,o)}}return sm=s,sm}var om,yk;function GO(){if(yk)return om;yk=1;var e=WO(),n=e();return om=n,om}var am,wk;function KO(){if(wk)return am;wk=1;function e(n,i){var s=n.length;for(n.sort(i);s--;)n[s]=n[s].value;return n}return am=e,am}var um,_k;function YO(){if(_k)return um;_k=1;var e=rs();function n(i,s){if(i!==s){var o=i!==void 0,u=i===null,l=i===i,c=e(i),d=s!==void 0,p=s===null,h=s===s,m=e(s);if(!p&&!m&&!c&&i>s||c&&d&&h&&!p&&!m||u&&d&&h||!o&&h||!l)return 1;if(!u&&!c&&!m&&i<s||m&&o&&l&&!u&&!c||p&&o&&l||!d&&l||!h)return-1}return 0}return um=n,um}var lm,xk;function XO(){if(xk)return lm;xk=1;var e=YO();function n(i,s,o){for(var u=-1,l=i.criteria,c=s.criteria,d=l.length,p=o.length;++u<d;){var h=e(l[u],c[u]);if(h){if(u>=p)return h;var m=o[u];return h*(m=="desc"?-1:1)}}return i.index-s.index}return lm=n,lm}var cm,Sk;function QO(){if(Sk)return cm;Sk=1;var e=wu(),n=xu(),i=ar(),s=EN(),o=KO(),u=mu(),l=XO(),c=li(),d=wt();function p(h,m,v){m.length?m=e(m,function(x){return d(x)?function(k){return n(k,x.length===1?x[0]:x)}:x}):m=[c];var w=-1;m=e(m,u(i));var b=s(h,function(x,k,S){var E=e(m,function(T){return T(x)});return{criteria:E,index:++w,value:x}});return o(b,function(x,k){return l(x,k,v)})}return cm=p,cm}var fm,kk;function ZO(){if(kk)return fm;kk=1;var e=Kg(),n=QO(),i=Su(),s=ku(),o=i(function(u,l){if(u==null)return[];var c=l.length;return c>1&&s(u,l[0],l[1])?l=[]:c>2&&s(l[0],l[1],l[2])&&(l=[l[0]]),n(u,e(l,1),[])});return fm=o,fm}var dm,Ek;function JO(){if(Ek)return dm;Ek=1;var e=vN(),n=0;function i(s){var o=++n;return e(s)+o}return dm=i,dm}var hm,bk;function eL(){if(bk)return hm;bk=1;function e(n,i,s){for(var o=-1,u=n.length,l=i.length,c={};++o<u;){var d=o<l?i[o]:void 0;s(c,n[o],d)}return c}return hm=e,hm}var pm,Nk;function tL(){if(Nk)return pm;Nk=1;var e=hu(),n=eL();function i(s,o){return n(s||[],o||[],e)}return pm=i,pm}var mm,Ck;function tt(){if(Ck)return mm;Ck=1;var e;if(typeof Mg=="function")try{e={cloneDeep:vO(),constant:Ug(),defaults:yO(),each:cN(),filter:xN(),find:bO(),flatten:$N(),forEach:lN(),forIn:NO(),has:SN(),isUndefined:kN(),last:CO(),map:bN(),mapValues:TO(),max:AO(),merge:OO(),min:LO(),minBy:$O(),now:DO(),pick:HO(),range:GO(),reduce:NN(),sortBy:ZO(),uniqueId:JO(),values:jN(),zipObject:tL()}}catch{}return e||(e=window._),mm=e,mm}var gm,Tk;function nL(){if(Tk)return gm;Tk=1,gm=e;function e(){var s={};s._next=s._prev=s,this._sentinel=s}e.prototype.dequeue=function(){var s=this._sentinel,o=s._prev;if(o!==s)return n(o),o},e.prototype.enqueue=function(s){var o=this._sentinel;s._prev&&s._next&&n(s),s._next=o._next,o._next._prev=s,o._next=s,s._prev=o},e.prototype.toString=function(){for(var s=[],o=this._sentinel,u=o._prev;u!==o;)s.push(JSON.stringify(u,i)),u=u._prev;return"["+s.join(", ")+"]"};function n(s){s._prev._next=s._next,s._next._prev=s._prev,delete s._next,delete s._prev}function i(s,o){if(s!=="_next"&&s!=="_prev")return o}return gm}var vm,Rk;function rL(){if(Rk)return vm;Rk=1;var e=tt(),n=Pn().Graph,i=nL();vm=o;var s=e.constant(1);function o(p,h){if(p.nodeCount()<=1)return[];var m=c(p,h||s),v=u(m.graph,m.buckets,m.zeroIdx);return e.flatten(e.map(v,function(w){return p.outEdges(w.v,w.w)}),!0)}function u(p,h,m){for(var v=[],w=h[h.length-1],b=h[0],x;p.nodeCount();){for(;x=b.dequeue();)l(p,h,m,x);for(;x=w.dequeue();)l(p,h,m,x);if(p.nodeCount()){for(var k=h.length-2;k>0;--k)if(x=h[k].dequeue(),x){v=v.concat(l(p,h,m,x,!0));break}}}return v}function l(p,h,m,v,w){var b=w?[]:void 0;return e.forEach(p.inEdges(v.v),function(x){var k=p.edge(x),S=p.node(x.v);w&&b.push({v:x.v,w:x.w}),S.out-=k,d(h,m,S)}),e.forEach(p.outEdges(v.v),function(x){var k=p.edge(x),S=x.w,E=p.node(S);E.in-=k,d(h,m,E)}),p.removeNode(v.v),b}function c(p,h){var m=new n,v=0,w=0;e.forEach(p.nodes(),function(k){m.setNode(k,{v:k,in:0,out:0})}),e.forEach(p.edges(),function(k){var S=m.edge(k.v,k.w)||0,E=h(k),T=S+E;m.setEdge(k.v,k.w,T),w=Math.max(w,m.node(k.v).out+=E),v=Math.max(v,m.node(k.w).in+=E)});var b=e.range(w+v+3).map(function(){return new i}),x=v+1;return e.forEach(m.nodes(),function(k){d(b,x,m.node(k))}),{graph:m,buckets:b,zeroIdx:x}}function d(p,h,m){m.out?m.in?p[m.out-m.in+h].enqueue(m):p[p.length-1].enqueue(m):p[0].enqueue(m)}return vm}var ym,Ak;function iL(){if(Ak)return ym;Ak=1;var e=tt(),n=rL();ym={run:i,undo:o};function i(u){var l=u.graph().acyclicer==="greedy"?n(u,c(u)):s(u);e.forEach(l,function(d){var p=u.edge(d);u.removeEdge(d),p.forwardName=d.name,p.reversed=!0,u.setEdge(d.w,d.v,p,e.uniqueId("rev"))});function c(d){return function(p){return d.edge(p).weight}}}function s(u){var l=[],c={},d={};function p(h){e.has(d,h)||(d[h]=!0,c[h]=!0,e.forEach(u.outEdges(h),function(m){e.has(c,m.w)?l.push(m):p(m.w)}),delete c[h])}return e.forEach(u.nodes(),p),l}function o(u){e.forEach(u.edges(),function(l){var c=u.edge(l);if(c.reversed){u.removeEdge(l);var d=c.forwardName;delete c.reversed,delete c.forwardName,u.setEdge(l.w,l.v,c,d)}})}return ym}var wm,jk;function Jt(){if(jk)return wm;jk=1;var e=tt(),n=Pn().Graph;wm={addDummyNode:i,simplify:s,asNonCompoundGraph:o,successorWeights:u,predecessorWeights:l,intersectRect:c,buildLayerMatrix:d,normalizeRanks:p,removeEmptyRanks:h,addBorderNode:m,maxRank:v,partition:w,time:b,notime:x};function i(k,S,E,T){var C;do C=e.uniqueId(T);while(k.hasNode(C));return E.dummy=S,k.setNode(C,E),C}function s(k){var S=new n().setGraph(k.graph());return e.forEach(k.nodes(),function(E){S.setNode(E,k.node(E))}),e.forEach(k.edges(),function(E){var T=S.edge(E.v,E.w)||{weight:0,minlen:1},C=k.edge(E);S.setEdge(E.v,E.w,{weight:T.weight+C.weight,minlen:Math.max(T.minlen,C.minlen)})}),S}function o(k){var S=new n({multigraph:k.isMultigraph()}).setGraph(k.graph());return e.forEach(k.nodes(),function(E){k.children(E).length||S.setNode(E,k.node(E))}),e.forEach(k.edges(),function(E){S.setEdge(E,k.edge(E))}),S}function u(k){var S=e.map(k.nodes(),function(E){var T={};return e.forEach(k.outEdges(E),function(C){T[C.w]=(T[C.w]||0)+k.edge(C).weight}),T});return e.zipObject(k.nodes(),S)}function l(k){var S=e.map(k.nodes(),function(E){var T={};return e.forEach(k.inEdges(E),function(C){T[C.v]=(T[C.v]||0)+k.edge(C).weight}),T});return e.zipObject(k.nodes(),S)}function c(k,S){var E=k.x,T=k.y,C=S.x-E,j=S.y-T,M=k.width/2,A=k.height/2;if(!C&&!j)throw new Error("Not possible to find intersection inside of the rectangle");var D,L;return Math.abs(j)*M>Math.abs(C)*A?(j<0&&(A=-A),D=A*C/j,L=A):(C<0&&(M=-M),D=M,L=M*j/C),{x:E+D,y:T+L}}function d(k){var S=e.map(e.range(v(k)+1),function(){return[]});return e.forEach(k.nodes(),function(E){var T=k.node(E),C=T.rank;e.isUndefined(C)||(S[C][T.order]=E)}),S}function p(k){var S=e.min(e.map(k.nodes(),function(E){return k.node(E).rank}));e.forEach(k.nodes(),function(E){var T=k.node(E);e.has(T,"rank")&&(T.rank-=S)})}function h(k){var S=e.min(e.map(k.nodes(),function(j){return k.node(j).rank})),E=[];e.forEach(k.nodes(),function(j){var M=k.node(j).rank-S;E[M]||(E[M]=[]),E[M].push(j)});var T=0,C=k.graph().nodeRankFactor;e.forEach(E,function(j,M){e.isUndefined(j)&&M%C!==0?--T:T&&e.forEach(j,function(A){k.node(A).rank+=T})})}function m(k,S,E,T){var C={width:0,height:0};return arguments.length>=4&&(C.rank=E,C.order=T),i(k,"border",C,S)}function v(k){return e.max(e.map(k.nodes(),function(S){var E=k.node(S).rank;if(!e.isUndefined(E))return E}))}function w(k,S){var E={lhs:[],rhs:[]};return e.forEach(k,function(T){S(T)?E.lhs.push(T):E.rhs.push(T)}),E}function b(k,S){var E=e.now();try{return S()}finally{console.log(k+" time: "+(e.now()-E)+"ms")}}function x(k,S){return S()}return wm}var _m,Ik;function sL(){if(Ik)return _m;Ik=1;var e=tt(),n=Jt();_m={run:i,undo:o};function i(u){u.graph().dummyChains=[],e.forEach(u.edges(),function(l){s(u,l)})}function s(u,l){var c=l.v,d=u.node(c).rank,p=l.w,h=u.node(p).rank,m=l.name,v=u.edge(l),w=v.labelRank;if(h!==d+1){u.removeEdge(l);var b,x,k;for(k=0,++d;d<h;++k,++d)v.points=[],x={width:0,height:0,edgeLabel:v,edgeObj:l,rank:d},b=n.addDummyNode(u,"edge",x,"_d"),d===w&&(x.width=v.width,x.height=v.height,x.dummy="edge-label",x.labelpos=v.labelpos),u.setEdge(c,b,{weight:v.weight},m),k===0&&u.graph().dummyChains.push(b),c=b;u.setEdge(c,p,{weight:v.weight},m)}}function o(u){e.forEach(u.graph().dummyChains,function(l){var c=u.node(l),d=c.edgeLabel,p;for(u.setEdge(c.edgeObj,d);c.dummy;)p=u.successors(l)[0],u.removeNode(l),d.points.push({x:c.x,y:c.y}),c.dummy==="edge-label"&&(d.x=c.x,d.y=c.y,d.width=c.width,d.height=c.height),l=p,c=u.node(l)})}return _m}var xm,Mk;function Ja(){if(Mk)return xm;Mk=1;var e=tt();xm={longestPath:n,slack:i};function n(s){var o={};function u(l){var c=s.node(l);if(e.has(o,l))return c.rank;o[l]=!0;var d=e.min(e.map(s.outEdges(l),function(p){return u(p.w)-s.edge(p).minlen}));return(d===Number.POSITIVE_INFINITY||d===void 0||d===null)&&(d=0),c.rank=d}e.forEach(s.sources(),u)}function i(s,o){return s.node(o.w).rank-s.node(o.v).rank-s.edge(o).minlen}return xm}var Sm,Pk;function BN(){if(Pk)return Sm;Pk=1;var e=tt(),n=Pn().Graph,i=Ja().slack;Sm=s;function s(c){var d=new n({directed:!1}),p=c.nodes()[0],h=c.nodeCount();d.setNode(p,{});for(var m,v;o(d,c)<h;)m=u(d,c),v=d.hasNode(m.v)?i(c,m):-i(c,m),l(d,c,v);return d}function o(c,d){function p(h){e.forEach(d.nodeEdges(h),function(m){var v=m.v,w=h===v?m.w:v;!c.hasNode(w)&&!i(d,m)&&(c.setNode(w,{}),c.setEdge(h,w,{}),p(w))})}return e.forEach(c.nodes(),p),c.nodeCount()}function u(c,d){return e.minBy(d.edges(),function(p){if(c.hasNode(p.v)!==c.hasNode(p.w))return i(d,p)})}function l(c,d,p){e.forEach(c.nodes(),function(h){d.node(h).rank+=p})}return Sm}var km,qk;function oL(){if(qk)return km;qk=1;var e=tt(),n=BN(),i=Ja().slack,s=Ja().longestPath,o=Pn().alg.preorder,u=Pn().alg.postorder,l=Jt().simplify;km=c,c.initLowLimValues=m,c.initCutValues=d,c.calcCutValue=h,c.leaveEdge=w,c.enterEdge=b,c.exchangeEdges=x;function c(T){T=l(T),s(T);var C=n(T);m(C),d(C,T);for(var j,M;j=w(C);)M=b(C,T,j),x(C,T,j,M)}function d(T,C){var j=u(T,T.nodes());j=j.slice(0,j.length-1),e.forEach(j,function(M){p(T,C,M)})}function p(T,C,j){var M=T.node(j),A=M.parent;T.edge(j,A).cutvalue=h(T,C,j)}function h(T,C,j){var M=T.node(j),A=M.parent,D=!0,L=C.edge(j,A),U=0;return L||(D=!1,L=C.edge(A,j)),U=L.weight,e.forEach(C.nodeEdges(j),function(H){var Q=H.v===j,ee=Q?H.w:H.v;if(ee!==A){var R=Q===D,G=C.edge(H).weight;if(U+=R?G:-G,S(T,j,ee)){var B=T.edge(j,ee).cutvalue;U+=R?-B:B}}}),U}function m(T,C){arguments.length<2&&(C=T.nodes()[0]),v(T,{},1,C)}function v(T,C,j,M,A){var D=j,L=T.node(M);return C[M]=!0,e.forEach(T.neighbors(M),function(U){e.has(C,U)||(j=v(T,C,j,U,M))}),L.low=D,L.lim=j++,A?L.parent=A:delete L.parent,j}function w(T){return e.find(T.edges(),function(C){return T.edge(C).cutvalue<0})}function b(T,C,j){var M=j.v,A=j.w;C.hasEdge(M,A)||(M=j.w,A=j.v);var D=T.node(M),L=T.node(A),U=D,H=!1;D.lim>L.lim&&(U=L,H=!0);var Q=e.filter(C.edges(),function(ee){return H===E(T,T.node(ee.v),U)&&H!==E(T,T.node(ee.w),U)});return e.minBy(Q,function(ee){return i(C,ee)})}function x(T,C,j,M){var A=j.v,D=j.w;T.removeEdge(A,D),T.setEdge(M.v,M.w,{}),m(T),d(T,C),k(T,C)}function k(T,C){var j=e.find(T.nodes(),function(A){return!C.node(A).parent}),M=o(T,j);M=M.slice(1),e.forEach(M,function(A){var D=T.node(A).parent,L=C.edge(A,D),U=!1;L||(L=C.edge(D,A),U=!0),C.node(A).rank=C.node(D).rank+(U?L.minlen:-L.minlen)})}function S(T,C,j){return T.hasEdge(C,j)}function E(T,C,j){return j.low<=C.lim&&C.lim<=j.lim}return km}var Em,Ok;function aL(){if(Ok)return Em;Ok=1;var e=Ja(),n=e.longestPath,i=BN(),s=oL();Em=o;function o(d){switch(d.graph().ranker){case"network-simplex":c(d);break;case"tight-tree":l(d);break;case"longest-path":u(d);break;default:c(d)}}var u=n;function l(d){n(d),i(d)}function c(d){s(d)}return Em}var bm,Lk;function uL(){if(Lk)return bm;Lk=1;var e=tt();bm=n;function n(o){var u=s(o);e.forEach(o.graph().dummyChains,function(l){for(var c=o.node(l),d=c.edgeObj,p=i(o,u,d.v,d.w),h=p.path,m=p.lca,v=0,w=h[v],b=!0;l!==d.w;){if(c=o.node(l),b){for(;(w=h[v])!==m&&o.node(w).maxRank<c.rank;)v++;w===m&&(b=!1)}if(!b){for(;v<h.length-1&&o.node(w=h[v+1]).minRank<=c.rank;)v++;w=h[v]}o.setParent(l,w),l=o.successors(l)[0]}})}function i(o,u,l,c){var d=[],p=[],h=Math.min(u[l].low,u[c].low),m=Math.max(u[l].lim,u[c].lim),v,w;v=l;do v=o.parent(v),d.push(v);while(v&&(u[v].low>h||m>u[v].lim));for(w=v,v=c;(v=o.parent(v))!==w;)p.push(v);return{path:d.concat(p.reverse()),lca:w}}function s(o){var u={},l=0;function c(d){var p=l;e.forEach(o.children(d),c),u[d]={low:p,lim:l++}}return e.forEach(o.children(),c),u}return bm}var Nm,$k;function lL(){if($k)return Nm;$k=1;var e=tt(),n=Jt();Nm={run:i,cleanup:l};function i(c){var d=n.addDummyNode(c,"root",{},"_root"),p=o(c),h=e.max(e.values(p))-1,m=2*h+1;c.graph().nestingRoot=d,e.forEach(c.edges(),function(w){c.edge(w).minlen*=m});var v=u(c)+1;e.forEach(c.children(),function(w){s(c,d,m,v,h,p,w)}),c.graph().nodeRankFactor=m}function s(c,d,p,h,m,v,w){var b=c.children(w);if(!b.length){w!==d&&c.setEdge(d,w,{weight:0,minlen:p});return}var x=n.addBorderNode(c,"_bt"),k=n.addBorderNode(c,"_bb"),S=c.node(w);c.setParent(x,w),S.borderTop=x,c.setParent(k,w),S.borderBottom=k,e.forEach(b,function(E){s(c,d,p,h,m,v,E);var T=c.node(E),C=T.borderTop?T.borderTop:E,j=T.borderBottom?T.borderBottom:E,M=T.borderTop?h:2*h,A=C!==j?1:m-v[w]+1;c.setEdge(x,C,{weight:M,minlen:A,nestingEdge:!0}),c.setEdge(j,k,{weight:M,minlen:A,nestingEdge:!0})}),c.parent(w)||c.setEdge(d,x,{weight:0,minlen:m+v[w]})}function o(c){var d={};function p(h,m){var v=c.children(h);v&&v.length&&e.forEach(v,function(w){p(w,m+1)}),d[h]=m}return e.forEach(c.children(),function(h){p(h,1)}),d}function u(c){return e.reduce(c.edges(),function(d,p){return d+c.edge(p).weight},0)}function l(c){var d=c.graph();c.removeNode(d.nestingRoot),delete d.nestingRoot,e.forEach(c.edges(),function(p){var h=c.edge(p);h.nestingEdge&&c.removeEdge(p)})}return Nm}var Cm,Dk;function cL(){if(Dk)return Cm;Dk=1;var e=tt(),n=Jt();Cm=i;function i(o){function u(l){var c=o.children(l),d=o.node(l);if(c.length&&e.forEach(c,u),e.has(d,"minRank")){d.borderLeft=[],d.borderRight=[];for(var p=d.minRank,h=d.maxRank+1;p<h;++p)s(o,"borderLeft","_bl",l,d,p),s(o,"borderRight","_br",l,d,p)}}e.forEach(o.children(),u)}function s(o,u,l,c,d,p){var h={width:0,height:0,rank:p,borderType:u},m=d[u][p-1],v=n.addDummyNode(o,"border",h,l);d[u][p]=v,o.setParent(v,c),m&&o.setEdge(m,v,{weight:1})}return Cm}var Tm,Fk;function fL(){if(Fk)return Tm;Fk=1;var e=tt();Tm={adjust:n,undo:i};function n(p){var h=p.graph().rankdir.toLowerCase();(h==="lr"||h==="rl")&&s(p)}function i(p){var h=p.graph().rankdir.toLowerCase();(h==="bt"||h==="rl")&&u(p),(h==="lr"||h==="rl")&&(c(p),s(p))}function s(p){e.forEach(p.nodes(),function(h){o(p.node(h))}),e.forEach(p.edges(),function(h){o(p.edge(h))})}function o(p){var h=p.width;p.width=p.height,p.height=h}function u(p){e.forEach(p.nodes(),function(h){l(p.node(h))}),e.forEach(p.edges(),function(h){var m=p.edge(h);e.forEach(m.points,l),e.has(m,"y")&&l(m)})}function l(p){p.y=-p.y}function c(p){e.forEach(p.nodes(),function(h){d(p.node(h))}),e.forEach(p.edges(),function(h){var m=p.edge(h);e.forEach(m.points,d),e.has(m,"x")&&d(m)})}function d(p){var h=p.x;p.x=p.y,p.y=h}return Tm}var Rm,zk;function dL(){if(zk)return Rm;zk=1;var e=tt();Rm=n;function n(i){var s={},o=e.filter(i.nodes(),function(p){return!i.children(p).length}),u=e.max(e.map(o,function(p){return i.node(p).rank})),l=e.map(e.range(u+1),function(){return[]});function c(p){if(!e.has(s,p)){s[p]=!0;var h=i.node(p);l[h.rank].push(p),e.forEach(i.successors(p),c)}}var d=e.sortBy(o,function(p){return i.node(p).rank});return e.forEach(d,c),l}return Rm}var Am,Bk;function hL(){if(Bk)return Am;Bk=1;var e=tt();Am=n;function n(s,o){for(var u=0,l=1;l<o.length;++l)u+=i(s,o[l-1],o[l]);return u}function i(s,o,u){for(var l=e.zipObject(u,e.map(u,function(v,w){return w})),c=e.flatten(e.map(o,function(v){return e.sortBy(e.map(s.outEdges(v),function(w){return{pos:l[w.w],weight:s.edge(w).weight}}),"pos")}),!0),d=1;d<u.length;)d<<=1;var p=2*d-1;d-=1;var h=e.map(new Array(p),function(){return 0}),m=0;return e.forEach(c.forEach(function(v){var w=v.pos+d;h[w]+=v.weight;for(var b=0;w>0;)w%2&&(b+=h[w+1]),w=w-1>>1,h[w]+=v.weight;m+=v.weight*b})),m}return Am}var jm,Uk;function pL(){if(Uk)return jm;Uk=1;var e=tt();jm=n;function n(i,s){return e.map(s,function(o){var u=i.inEdges(o);if(u.length){var l=e.reduce(u,function(c,d){var p=i.edge(d),h=i.node(d.v);return{sum:c.sum+p.weight*h.order,weight:c.weight+p.weight}},{sum:0,weight:0});return{v:o,barycenter:l.sum/l.weight,weight:l.weight}}else return{v:o}})}return jm}var Im,Hk;function mL(){if(Hk)return Im;Hk=1;var e=tt();Im=n;function n(o,u){var l={};e.forEach(o,function(d,p){var h=l[d.v]={indegree:0,in:[],out:[],vs:[d.v],i:p};e.isUndefined(d.barycenter)||(h.barycenter=d.barycenter,h.weight=d.weight)}),e.forEach(u.edges(),function(d){var p=l[d.v],h=l[d.w];!e.isUndefined(p)&&!e.isUndefined(h)&&(h.indegree++,p.out.push(l[d.w]))});var c=e.filter(l,function(d){return!d.indegree});return i(c)}function i(o){var u=[];function l(p){return function(h){h.merged||(e.isUndefined(h.barycenter)||e.isUndefined(p.barycenter)||h.barycenter>=p.barycenter)&&s(p,h)}}function c(p){return function(h){h.in.push(p),--h.indegree===0&&o.push(h)}}for(;o.length;){var d=o.pop();u.push(d),e.forEach(d.in.reverse(),l(d)),e.forEach(d.out,c(d))}return e.map(e.filter(u,function(p){return!p.merged}),function(p){return e.pick(p,["vs","i","barycenter","weight"])})}function s(o,u){var l=0,c=0;o.weight&&(l+=o.barycenter*o.weight,c+=o.weight),u.weight&&(l+=u.barycenter*u.weight,c+=u.weight),o.vs=u.vs.concat(o.vs),o.barycenter=l/c,o.weight=c,o.i=Math.min(u.i,o.i),u.merged=!0}return Im}var Mm,Vk;function gL(){if(Vk)return Mm;Vk=1;var e=tt(),n=Jt();Mm=i;function i(u,l){var c=n.partition(u,function(x){return e.has(x,"barycenter")}),d=c.lhs,p=e.sortBy(c.rhs,function(x){return-x.i}),h=[],m=0,v=0,w=0;d.sort(o(!!l)),w=s(h,p,w),e.forEach(d,function(x){w+=x.vs.length,h.push(x.vs),m+=x.barycenter*x.weight,v+=x.weight,w=s(h,p,w)});var b={vs:e.flatten(h,!0)};return v&&(b.barycenter=m/v,b.weight=v),b}function s(u,l,c){for(var d;l.length&&(d=e.last(l)).i<=c;)l.pop(),u.push(d.vs),c++;return c}function o(u){return function(l,c){return l.barycenter<c.barycenter?-1:l.barycenter>c.barycenter?1:u?c.i-l.i:l.i-c.i}}return Mm}var Pm,Wk;function vL(){if(Wk)return Pm;Wk=1;var e=tt(),n=pL(),i=mL(),s=gL();Pm=o;function o(c,d,p,h){var m=c.children(d),v=c.node(d),w=v?v.borderLeft:void 0,b=v?v.borderRight:void 0,x={};w&&(m=e.filter(m,function(j){return j!==w&&j!==b}));var k=n(c,m);e.forEach(k,function(j){if(c.children(j.v).length){var M=o(c,j.v,p,h);x[j.v]=M,e.has(M,"barycenter")&&l(j,M)}});var S=i(k,p);u(S,x);var E=s(S,h);if(w&&(E.vs=e.flatten([w,E.vs,b],!0),c.predecessors(w).length)){var T=c.node(c.predecessors(w)[0]),C=c.node(c.predecessors(b)[0]);e.has(E,"barycenter")||(E.barycenter=0,E.weight=0),E.barycenter=(E.barycenter*E.weight+T.order+C.order)/(E.weight+2),E.weight+=2}return E}function u(c,d){e.forEach(c,function(p){p.vs=e.flatten(p.vs.map(function(h){return d[h]?d[h].vs:h}),!0)})}function l(c,d){e.isUndefined(c.barycenter)?(c.barycenter=d.barycenter,c.weight=d.weight):(c.barycenter=(c.barycenter*c.weight+d.barycenter*d.weight)/(c.weight+d.weight),c.weight+=d.weight)}return Pm}var qm,Gk;function yL(){if(Gk)return qm;Gk=1;var e=tt(),n=Pn().Graph;qm=i;function i(o,u,l){var c=s(o),d=new n({compound:!0}).setGraph({root:c}).setDefaultNodeLabel(function(p){return o.node(p)});return e.forEach(o.nodes(),function(p){var h=o.node(p),m=o.parent(p);(h.rank===u||h.minRank<=u&&u<=h.maxRank)&&(d.setNode(p),d.setParent(p,m||c),e.forEach(o[l](p),function(v){var w=v.v===p?v.w:v.v,b=d.edge(w,p),x=e.isUndefined(b)?0:b.weight;d.setEdge(w,p,{weight:o.edge(v).weight+x})}),e.has(h,"minRank")&&d.setNode(p,{borderLeft:h.borderLeft[u],borderRight:h.borderRight[u]}))}),d}function s(o){for(var u;o.hasNode(u=e.uniqueId("_root")););return u}return qm}var Om,Kk;function wL(){if(Kk)return Om;Kk=1;var e=tt();Om=n;function n(i,s,o){var u={},l;e.forEach(o,function(c){for(var d=i.parent(c),p,h;d;){if(p=i.parent(d),p?(h=u[p],u[p]=d):(h=l,l=d),h&&h!==d){s.setEdge(h,d);return}d=p}})}return Om}var Lm,Yk;function _L(){if(Yk)return Lm;Yk=1;var e=tt(),n=dL(),i=hL(),s=vL(),o=yL(),u=wL(),l=Pn().Graph,c=Jt();Lm=d;function d(v){var w=c.maxRank(v),b=p(v,e.range(1,w+1),"inEdges"),x=p(v,e.range(w-1,-1,-1),"outEdges"),k=n(v);m(v,k);for(var S=Number.POSITIVE_INFINITY,E,T=0,C=0;C<4;++T,++C){h(T%2?b:x,T%4>=2),k=c.buildLayerMatrix(v);var j=i(v,k);j<S&&(C=0,E=e.cloneDeep(k),S=j)}m(v,E)}function p(v,w,b){return e.map(w,function(x){return o(v,x,b)})}function h(v,w){var b=new l;e.forEach(v,function(x){var k=x.graph().root,S=s(x,k,b,w);e.forEach(S.vs,function(E,T){x.node(E).order=T}),u(x,b,S.vs)})}function m(v,w){e.forEach(w,function(b){e.forEach(b,function(x,k){v.node(x).order=k})})}return Lm}var $m,Xk;function xL(){if(Xk)return $m;Xk=1;var e=tt(),n=Pn().Graph,i=Jt();$m={positionX:b,findType1Conflicts:s,findType2Conflicts:o,addConflict:l,hasConflict:c,verticalAlignment:d,horizontalCompaction:p,alignCoordinates:v,findSmallestWidthAlignment:m,balance:w};function s(S,E){var T={};function C(j,M){var A=0,D=0,L=j.length,U=e.last(M);return e.forEach(M,function(H,Q){var ee=u(S,H),R=ee?S.node(ee).order:L;(ee||H===U)&&(e.forEach(M.slice(D,Q+1),function(G){e.forEach(S.predecessors(G),function(B){var X=S.node(B),Y=X.order;(Y<A||R<Y)&&!(X.dummy&&S.node(G).dummy)&&l(T,B,G)})}),D=Q+1,A=R)}),M}return e.reduce(E,C),T}function o(S,E){var T={};function C(M,A,D,L,U){var H;e.forEach(e.range(A,D),function(Q){H=M[Q],S.node(H).dummy&&e.forEach(S.predecessors(H),function(ee){var R=S.node(ee);R.dummy&&(R.order<L||R.order>U)&&l(T,ee,H)})})}function j(M,A){var D=-1,L,U=0;return e.forEach(A,function(H,Q){if(S.node(H).dummy==="border"){var ee=S.predecessors(H);ee.length&&(L=S.node(ee[0]).order,C(A,U,Q,D,L),U=Q,D=L)}C(A,U,A.length,L,M.length)}),A}return e.reduce(E,j),T}function u(S,E){if(S.node(E).dummy)return e.find(S.predecessors(E),function(T){return S.node(T).dummy})}function l(S,E,T){if(E>T){var C=E;E=T,T=C}var j=S[E];j||(S[E]=j={}),j[T]=!0}function c(S,E,T){if(E>T){var C=E;E=T,T=C}return e.has(S[E],T)}function d(S,E,T,C){var j={},M={},A={};return e.forEach(E,function(D){e.forEach(D,function(L,U){j[L]=L,M[L]=L,A[L]=U})}),e.forEach(E,function(D){var L=-1;e.forEach(D,function(U){var H=C(U);if(H.length){H=e.sortBy(H,function(B){return A[B]});for(var Q=(H.length-1)/2,ee=Math.floor(Q),R=Math.ceil(Q);ee<=R;++ee){var G=H[ee];M[U]===U&&L<A[G]&&!c(T,U,G)&&(M[G]=U,M[U]=j[U]=j[G],L=A[G])}}})}),{root:j,align:M}}function p(S,E,T,C,j){var M={},A=h(S,E,T,j),D=j?"borderLeft":"borderRight";function L(Q,ee){for(var R=A.nodes(),G=R.pop(),B={};G;)B[G]?Q(G):(B[G]=!0,R.push(G),R=R.concat(ee(G))),G=R.pop()}function U(Q){M[Q]=A.inEdges(Q).reduce(function(ee,R){return Math.max(ee,M[R.v]+A.edge(R))},0)}function H(Q){var ee=A.outEdges(Q).reduce(function(G,B){return Math.min(G,M[B.w]-A.edge(B))},Number.POSITIVE_INFINITY),R=S.node(Q);ee!==Number.POSITIVE_INFINITY&&R.borderType!==D&&(M[Q]=Math.max(M[Q],ee))}return L(U,A.predecessors.bind(A)),L(H,A.successors.bind(A)),e.forEach(C,function(Q){M[Q]=M[T[Q]]}),M}function h(S,E,T,C){var j=new n,M=S.graph(),A=x(M.nodesep,M.edgesep,C);return e.forEach(E,function(D){var L;e.forEach(D,function(U){var H=T[U];if(j.setNode(H),L){var Q=T[L],ee=j.edge(Q,H);j.setEdge(Q,H,Math.max(A(S,U,L),ee||0))}L=U})}),j}function m(S,E){return e.minBy(e.values(E),function(T){var C=Number.NEGATIVE_INFINITY,j=Number.POSITIVE_INFINITY;return e.forIn(T,function(M,A){var D=k(S,A)/2;C=Math.max(M+D,C),j=Math.min(M-D,j)}),C-j})}function v(S,E){var T=e.values(E),C=e.min(T),j=e.max(T);e.forEach(["u","d"],function(M){e.forEach(["l","r"],function(A){var D=M+A,L=S[D],U;if(L!==E){var H=e.values(L);U=A==="l"?C-e.min(H):j-e.max(H),U&&(S[D]=e.mapValues(L,function(Q){return Q+U}))}})})}function w(S,E){return e.mapValues(S.ul,function(T,C){if(E)return S[E.toLowerCase()][C];var j=e.sortBy(e.map(S,C));return(j[1]+j[2])/2})}function b(S){var E=i.buildLayerMatrix(S),T=e.merge(s(S,E),o(S,E)),C={},j;e.forEach(["u","d"],function(A){j=A==="u"?E:e.values(E).reverse(),e.forEach(["l","r"],function(D){D==="r"&&(j=e.map(j,function(Q){return e.values(Q).reverse()}));var L=(A==="u"?S.predecessors:S.successors).bind(S),U=d(S,j,T,L),H=p(S,j,U.root,U.align,D==="r");D==="r"&&(H=e.mapValues(H,function(Q){return-Q})),C[A+D]=H})});var M=m(S,C);return v(C,M),w(C,S.graph().align)}function x(S,E,T){return function(C,j,M){var A=C.node(j),D=C.node(M),L=0,U;if(L+=A.width/2,e.has(A,"labelpos"))switch(A.labelpos.toLowerCase()){case"l":U=-A.width/2;break;case"r":U=A.width/2;break}if(U&&(L+=T?U:-U),U=0,L+=(A.dummy?E:S)/2,L+=(D.dummy?E:S)/2,L+=D.width/2,e.has(D,"labelpos"))switch(D.labelpos.toLowerCase()){case"l":U=D.width/2;break;case"r":U=-D.width/2;break}return U&&(L+=T?U:-U),U=0,L}}function k(S,E){return S.node(E).width}return $m}var Dm,Qk;function SL(){if(Qk)return Dm;Qk=1;var e=tt(),n=Jt(),i=xL().positionX;Dm=s;function s(u){u=n.asNonCompoundGraph(u),o(u),e.forEach(i(u),function(l,c){u.node(c).x=l})}function o(u){var l=n.buildLayerMatrix(u),c=u.graph().ranksep,d=0;e.forEach(l,function(p){var h=e.max(e.map(p,function(m){return u.node(m).height}));e.forEach(p,function(m){u.node(m).y=d+h/2}),d+=h+c})}return Dm}var Fm,Zk;function kL(){if(Zk)return Fm;Zk=1;var e=tt(),n=iL(),i=sL(),s=aL(),o=Jt().normalizeRanks,u=uL(),l=Jt().removeEmptyRanks,c=lL(),d=cL(),p=fL(),h=_L(),m=SL(),v=Jt(),w=Pn().Graph;Fm=b;function b($,K){var Z=K&&K.debugTiming?v.time:v.notime;Z("layout",function(){var oe=Z(" buildLayoutGraph",function(){return L($)});Z(" runLayout",function(){x(oe,Z)}),Z(" updateInputGraph",function(){k($,oe)})})}function x($,K){K(" makeSpaceForEdgeLabels",function(){U($)}),K(" removeSelfEdges",function(){q($)}),K(" acyclic",function(){n.run($)}),K(" nestingGraph.run",function(){c.run($)}),K(" rank",function(){s(v.asNonCompoundGraph($))}),K(" injectEdgeLabelProxies",function(){H($)}),K(" removeEmptyRanks",function(){l($)}),K(" nestingGraph.cleanup",function(){c.cleanup($)}),K(" normalizeRanks",function(){o($)}),K(" assignRankMinMax",function(){Q($)}),K(" removeEdgeLabelProxies",function(){ee($)}),K(" normalize.run",function(){i.run($)}),K(" parentDummyChains",function(){u($)}),K(" addBorderSegments",function(){d($)}),K(" order",function(){h($)}),K(" insertSelfEdges",function(){V($)}),K(" adjustCoordinateSystem",function(){p.adjust($)}),K(" position",function(){m($)}),K(" positionSelfEdges",function(){I($)}),K(" removeBorderNodes",function(){Y($)}),K(" normalize.undo",function(){i.undo($)}),K(" fixupEdgeLabelCoords",function(){B($)}),K(" undoCoordinateSystem",function(){p.undo($)}),K(" translateGraph",function(){R($)}),K(" assignNodeIntersects",function(){G($)}),K(" reversePoints",function(){X($)}),K(" acyclic.undo",function(){n.undo($)})}function k($,K){e.forEach($.nodes(),function(Z){var oe=$.node(Z),ce=K.node(Z);oe&&(oe.x=ce.x,oe.y=ce.y,K.children(Z).length&&(oe.width=ce.width,oe.height=ce.height))}),e.forEach($.edges(),function(Z){var oe=$.edge(Z),ce=K.edge(Z);oe.points=ce.points,e.has(ce,"x")&&(oe.x=ce.x,oe.y=ce.y)}),$.graph().width=K.graph().width,$.graph().height=K.graph().height}var S=["nodesep","edgesep","ranksep","marginx","marginy"],E={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},T=["acyclicer","ranker","rankdir","align"],C=["width","height"],j={width:0,height:0},M=["minlen","weight","width","height","labeloffset"],A={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},D=["labelpos"];function L($){var K=new w({multigraph:!0,compound:!0}),Z=ae($.graph());return K.setGraph(e.merge({},E,z(Z,S),e.pick(Z,T))),e.forEach($.nodes(),function(oe){var ce=ae($.node(oe));K.setNode(oe,e.defaults(z(ce,C),j)),K.setParent(oe,$.parent(oe))}),e.forEach($.edges(),function(oe){var ce=ae($.edge(oe));K.setEdge(oe,e.merge({},A,z(ce,M),e.pick(ce,D)))}),K}function U($){var K=$.graph();K.ranksep/=2,e.forEach($.edges(),function(Z){var oe=$.edge(Z);oe.minlen*=2,oe.labelpos.toLowerCase()!=="c"&&(K.rankdir==="TB"||K.rankdir==="BT"?oe.width+=oe.labeloffset:oe.height+=oe.labeloffset)})}function H($){e.forEach($.edges(),function(K){var Z=$.edge(K);if(Z.width&&Z.height){var oe=$.node(K.v),ce=$.node(K.w),pe={rank:(ce.rank-oe.rank)/2+oe.rank,e:K};v.addDummyNode($,"edge-proxy",pe,"_ep")}})}function Q($){var K=0;e.forEach($.nodes(),function(Z){var oe=$.node(Z);oe.borderTop&&(oe.minRank=$.node(oe.borderTop).rank,oe.maxRank=$.node(oe.borderBottom).rank,K=e.max(K,oe.maxRank))}),$.graph().maxRank=K}function ee($){e.forEach($.nodes(),function(K){var Z=$.node(K);Z.dummy==="edge-proxy"&&($.edge(Z.e).labelRank=Z.rank,$.removeNode(K))})}function R($){var K=Number.POSITIVE_INFINITY,Z=0,oe=Number.POSITIVE_INFINITY,ce=0,pe=$.graph(),ge=pe.marginx||0,Me=pe.marginy||0;function Ie(Pe){var je=Pe.x,be=Pe.y,Ve=Pe.width,ye=Pe.height;K=Math.min(K,je-Ve/2),Z=Math.max(Z,je+Ve/2),oe=Math.min(oe,be-ye/2),ce=Math.max(ce,be+ye/2)}e.forEach($.nodes(),function(Pe){Ie($.node(Pe))}),e.forEach($.edges(),function(Pe){var je=$.edge(Pe);e.has(je,"x")&&Ie(je)}),K-=ge,oe-=Me,e.forEach($.nodes(),function(Pe){var je=$.node(Pe);je.x-=K,je.y-=oe}),e.forEach($.edges(),function(Pe){var je=$.edge(Pe);e.forEach(je.points,function(be){be.x-=K,be.y-=oe}),e.has(je,"x")&&(je.x-=K),e.has(je,"y")&&(je.y-=oe)}),pe.width=Z-K+ge,pe.height=ce-oe+Me}function G($){e.forEach($.edges(),function(K){var Z=$.edge(K),oe=$.node(K.v),ce=$.node(K.w),pe,ge;Z.points?(pe=Z.points[0],ge=Z.points[Z.points.length-1]):(Z.points=[],pe=ce,ge=oe),Z.points.unshift(v.intersectRect(oe,pe)),Z.points.push(v.intersectRect(ce,ge))})}function B($){e.forEach($.edges(),function(K){var Z=$.edge(K);if(e.has(Z,"x"))switch((Z.labelpos==="l"||Z.labelpos==="r")&&(Z.width-=Z.labeloffset),Z.labelpos){case"l":Z.x-=Z.width/2+Z.labeloffset;break;case"r":Z.x+=Z.width/2+Z.labeloffset;break}})}function X($){e.forEach($.edges(),function(K){var Z=$.edge(K);Z.reversed&&Z.points.reverse()})}function Y($){e.forEach($.nodes(),function(K){if($.children(K).length){var Z=$.node(K),oe=$.node(Z.borderTop),ce=$.node(Z.borderBottom),pe=$.node(e.last(Z.borderLeft)),ge=$.node(e.last(Z.borderRight));Z.width=Math.abs(ge.x-pe.x),Z.height=Math.abs(ce.y-oe.y),Z.x=pe.x+Z.width/2,Z.y=oe.y+Z.height/2}}),e.forEach($.nodes(),function(K){$.node(K).dummy==="border"&&$.removeNode(K)})}function q($){e.forEach($.edges(),function(K){if(K.v===K.w){var Z=$.node(K.v);Z.selfEdges||(Z.selfEdges=[]),Z.selfEdges.push({e:K,label:$.edge(K)}),$.removeEdge(K)}})}function V($){var K=v.buildLayerMatrix($);e.forEach(K,function(Z){var oe=0;e.forEach(Z,function(ce,pe){var ge=$.node(ce);ge.order=pe+oe,e.forEach(ge.selfEdges,function(Me){v.addDummyNode($,"selfedge",{width:Me.label.width,height:Me.label.height,rank:ge.rank,order:pe+ ++oe,e:Me.e,label:Me.label},"_se")}),delete ge.selfEdges})})}function I($){e.forEach($.nodes(),function(K){var Z=$.node(K);if(Z.dummy==="selfedge"){var oe=$.node(Z.e.v),ce=oe.x+oe.width/2,pe=oe.y,ge=Z.x-ce,Me=oe.height/2;$.setEdge(Z.e,Z.label),$.removeNode(K),Z.label.points=[{x:ce+2*ge/3,y:pe-Me},{x:ce+5*ge/6,y:pe-Me},{x:ce+ge,y:pe},{x:ce+5*ge/6,y:pe+Me},{x:ce+2*ge/3,y:pe+Me}],Z.label.x=Z.x,Z.label.y=Z.y}})}function z($,K){return e.mapValues(e.pick($,K),Number)}function ae($){var K={};return e.forEach($,function(Z,oe){K[oe.toLowerCase()]=Z}),K}return Fm}var zm,Jk;function EL(){if(Jk)return zm;Jk=1;var e=tt(),n=Jt(),i=Pn().Graph;zm={debugOrdering:s};function s(o){var u=n.buildLayerMatrix(o),l=new i({compound:!0,multigraph:!0}).setGraph({});return e.forEach(o.nodes(),function(c){l.setNode(c,{label:c}),l.setParent(c,"layer"+o.node(c).rank)}),e.forEach(o.edges(),function(c){l.setEdge(c.v,c.w,{},c.name)}),e.forEach(u,function(c,d){var p="layer"+d;l.setNode(p,{rank:"same"}),e.reduce(c,function(h,m){return l.setEdge(h,m,{style:"invis"}),m})}),l}return zm}var Bm,eE;function bL(){return eE||(eE=1,Bm="0.8.5"),Bm}var Um,tE;function NL(){return tE||(tE=1,Um={graphlib:Pn(),layout:kL(),debug:EL(),util:{time:Jt().time,notime:Jt().notime},version:bL()}),Um}var CL=NL();const nE=dg(CL),rE=240,iE=130,TL=110;function RL(e){var i;return((i=e.data)==null?void 0:i.sessionId)??"_default"}function AL(e,n,i,s){const o=new nE.graphlib.Graph;o.setDefaultEdgeLabel(()=>({})),o.setGraph({rankdir:i,marginx:0,marginy:0,nodesep:70,ranksep:160,edgesep:30});const u=new Set(e);for(const w of e){const b=s.get(w);o.setNode(w,{width:(b==null?void 0:b.width)??rE,height:(b==null?void 0:b.height)??iE})}for(const w of n)u.has(w.source)&&u.has(w.target)&&o.setEdge(w.source,w.target);nE.layout(o);const l=new Map;let c=1/0,d=1/0,p=-1/0,h=-1/0;for(const w of e){const b=o.node(w);if(!b)continue;const x=s.get(w),k=(x==null?void 0:x.width)??rE,S=(x==null?void 0:x.height)??iE,E=b.x-k/2,T=b.y-S/2;l.set(w,{x:E,y:T}),E<c&&(c=E),T<d&&(d=T),E+k>p&&(p=E+k),T+S>h&&(h=T+S)}if(Number.isFinite(c)&&Number.isFinite(d))for(const[w,b]of l)l.set(w,{x:b.x-c,y:b.y-d});const m=Number.isFinite(p)?p-c:0,v=Number.isFinite(h)?h-d:0;return{positions:l,width:m,height:v}}function sE(e,n,i={}){const s=i.direction??"LR",o=i.pinned??new Map,u=i.measured??new Map,l=new Map;for(const h of e){const m=RL(h),v=l.get(m);v?v.push(h.id):l.set(m,[h.id])}const c=Array.from(l.keys()).sort(),d=new Map;let p=0;for(const h of c){const m=l.get(h),{positions:v,height:w}=AL(m,n,s,u);for(const[b,x]of v)d.set(b,{x:x.x,y:x.y+p});p+=w+TL}return e.map(h=>{const m=o.get(h.id);if(m)return{...h,position:m};const v=d.get(h.id);return v?{...h,position:v}:h})}const jL=600;function lg(e,n){return!(e.exitAt!=null&&n-e.exitAt>jL||e.kind==="root"&&e.state==="done"&&e.tools.length===0&&e.endedAt!=null&&e.endedAt-e.startedAt<3e3)}function IL(e,n){const i=new Set;for(const s of e.agents.values())lg(s,n)&&i.add(s.id);return i}function Zr(e){return typeof window>"u"?"":getComputedStyle(document.documentElement).getPropertyValue(e).trim()||""}function ML(e){return e<1e3?`${e}`:e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(2)}M`}const PL={agent:oP,sessionGroup:vP},La=18,qL=9e4,OL=200,LL=5*6e4,Qg="agent-dag.layout",Zg="agent-dag.viewport",UN="agent-dag.summariesDismissed",HN="agent-dag.sessionListOpen",VN="agent-dag.timelineOpen",WN="agent-dag.detailOpen",GN="agent-dag.usagePanelOpen";function $L(){if(typeof window>"u")return!0;try{return window.localStorage.getItem(HN)!=="0"}catch{return!0}}function DL(e){if(!(typeof window>"u"))try{window.localStorage.setItem(HN,e?"1":"0")}catch{}}function FL(){if(typeof window>"u")return!1;const e=window.localStorage.getItem(VN);try{return e===null?!1:e!=="0"}catch{return!1}}function zL(e){if(!(typeof window>"u"))try{window.localStorage.setItem(VN,e?"1":"0")}catch{}}function BL(){if(typeof window>"u")return!0;try{return window.localStorage.getItem(WN)!=="0"}catch{return!0}}function UL(e){if(!(typeof window>"u"))try{window.localStorage.setItem(WN,e?"1":"0")}catch{}}function HL(){if(typeof window>"u")return!0;const e=window.localStorage.getItem(GN);try{return e===null?!0:e==="1"}catch{return!0}}function VL(e){if(!(typeof window>"u"))try{window.localStorage.setItem(GN,e?"1":"0")}catch{}}function WL(){if(typeof window>"u")return new Set;try{const e=window.localStorage.getItem(UN);if(!e)return new Set;const n=JSON.parse(e);return new Set(Array.isArray(n)?n.filter(i=>typeof i=="string"):[])}catch{return new Set}}function oE(e){if(!(typeof window>"u"))try{const n=Array.from(e),i=n.length>200?n.slice(-200):n;window.localStorage.setItem(UN,JSON.stringify(i))}catch{}}function GL(){if(typeof window>"u")return[];try{const e=window.localStorage.getItem(Qg);if(!e)return[];const n=JSON.parse(e);return Object.entries(n).filter(([,i])=>i&&typeof i.x=="number"&&typeof i.y=="number")}catch{return[]}}function aE(e){if(!(typeof window>"u"))try{const n={};for(const[i,s]of e)n[i]=s;window.localStorage.setItem(Qg,JSON.stringify(n))}catch{}}function KL(){if(typeof window>"u")return null;try{const e=window.localStorage.getItem(Zg);if(!e)return null;const n=JSON.parse(e);return typeof(n==null?void 0:n.x)!="number"||typeof(n==null?void 0:n.y)!="number"||typeof(n==null?void 0:n.zoom)!="number"?null:n}catch{return null}}function YL(e){if(!(typeof window>"u"))try{window.localStorage.setItem(Zg,JSON.stringify(e))}catch{}}function uE(){if(!(typeof window>"u")){try{window.localStorage.removeItem(Qg)}catch{}try{window.localStorage.removeItem(Zg)}catch{}}}function XL(e,n){const i=e.agents.get(n);if(!i)return;const s=[];for(const h of e.agents.values())h.sessionId===n&&s.push(h);const o={schemaVersion:1,exportedAt:new Date().toISOString(),sessionId:n,label:i.label,cwd:i.cwd,startedAt:i.startedAt,endedAt:i.endedAt,model:i.model,agents:s.map(h=>({id:h.id,kind:h.kind,label:h.label,parentId:h.parentId,state:h.state,startedAt:h.startedAt,endedAt:h.endedAt,model:h.model,cwd:h.cwd,usage:h.usage,prompts:h.prompts,tools:h.tools.map(m=>({id:m.id,name:m.name,inputPreview:m.inputPreview,startedAt:m.startedAt,endedAt:m.endedAt,ok:m.ok,errorPreview:m.errorPreview,usage:m.usage}))}))},u=JSON.stringify(o,null,2),l=new Blob([u],{type:"application/json"}),c=URL.createObjectURL(l),d=document.createElement("a"),p=(i.label||"session").replace(/[^a-z0-9._-]/gi,"_");d.href=c,d.download=`agents-deck-${p}-${n.slice(0,8)}.json`,document.body.appendChild(d),d.click(),document.body.removeChild(d),setTimeout(()=>URL.revokeObjectURL(c),1e3)}const cg={file:"📁",shell:"⚡",web:"🌐",agent:"🤖",task:"📋",plan:"🧭",mcp:"🔌",other:"✨"},fg={file:"file",shell:"shell",web:"web",agent:"agent",task:"task",plan:"plan",mcp:"mcp",other:"other"},QL={Read:"file",Write:"file",Edit:"file",MultiEdit:"file",Glob:"file",Grep:"file",LS:"file",NotebookEdit:"file",Bash:"shell",PowerShell:"shell",shell:"shell",exec_command:"shell",shell_command:"shell",write_stdin:"shell",wait:"shell",apply_patch:"file",update_plan:"task",WebFetch:"web",WebSearch:"web",Task:"agent",Agent:"agent",TodoWrite:"task",TaskCreate:"task",TaskUpdate:"task",TaskList:"task",TaskGet:"task",TaskOutput:"task",TaskStop:"task",EnterPlanMode:"plan",ExitPlanMode:"plan",AskUserQuestion:"plan",Skill:"plan",Workflow:"plan"};function KN(e){return e.startsWith("mcp__")?"mcp":QL[e]??"other"}function YN(e,n){var s,o,u;if(!n)return!0;const i=n.toLowerCase();if(e.label.toLowerCase().includes(i)||(s=e.cwd)!=null&&s.toLowerCase().includes(i)||(o=e.cwdBasename)!=null&&o.toLowerCase().includes(i)||e.sessionId.toLowerCase().includes(i)||(u=e.firstPrompt)!=null&&u.toLowerCase().includes(i))return!0;for(const l of e.tools)if(l.name.toLowerCase().includes(i))return!0;return!1}function ZL(e,n){if(!n)return null;const i=new Set([n]);let s=n;for(;s;){const u=e.agents.get(s);if(!(u!=null&&u.parentId)||i.has(u.parentId))break;i.add(u.parentId),s=u.parentId}let o=!0;for(;o;){o=!1;for(const u of e.agents.values())u.parentId&&i.has(u.parentId)&&!i.has(u.id)&&(i.add(u.id),o=!0)}return i}function JL(e,n,i,s,o,u,l,c,d,p,h,m){const v=[],w=[],b=new Set;if(s)for(const S of e.agents.values())YN(S,s)&&b.add(S.id);for(const S of e.agents.values()){if(!h.has(S.id))continue;const E=s?!b.has(S.id):!1,T=S.exitAt!=null,C=p!=null&&!p.has(S.id),j=[E?"rf-dim":"",T?"rf-exiting":"",C?"rf-spotlit-out":""].filter(Boolean).join(" ")||void 0,M=o.get(S.id);if(v.push({id:S.id,type:"agent",position:{x:0,y:0},data:{...S,now:n,dim:E,onOpenContext:m},className:j,...M?{width:M.width,height:M.height}:null}),S.parentId&&h.has(S.parentId)){const A=jg(S.sessionId),D=S.state==="active"?`hsl(${A} 80% 72%)`:`hsl(${A} 50% 55%)`,L=s&&!b.has(S.id)&&!b.has(S.parentId),U=T,H=d.size>0&&(d.has(S.id)||d.has(S.parentId)),Q=p!=null&&!p.has(S.id)&&!p.has(S.parentId),ee=S.state==="active"?2:1.5,R=H?ee+1.5:ee,G=L||U?.2:Q?.12:1,B=[U?"rf-edge-exiting":"",H?"rf-edge-selected":""].filter(Boolean).join(" ")||void 0;w.push({id:`e:${S.parentId}->${S.id}`,source:S.parentId,target:S.id,animated:(S.state==="active"||H)&&!L&&!U,type:"smoothstep",style:{stroke:D,strokeWidth:R,opacity:G,transition:"opacity 500ms ease, stroke-width 200ms ease"},className:B})}}if(l!==c.current){const S=sE(v,w,{direction:"LR",pinned:i,measured:o});for(const E of S)u.set(E.id,E.position);c.current=l}else if(v.filter(E=>!i.has(E.id)&&!u.has(E.id)).length>0){const E=sE(v,w,{direction:"LR",pinned:i,measured:o});for(const T of E)u.has(T.id)||u.set(T.id,T.position)}for(const S of Array.from(u.keys()))e.agents.has(S)||u.delete(S);const x=[];let k=!1;for(const S of v){let E=i.get(S.id)??u.get(S.id);E||(E={x:0,y:0},u.set(S.id,E),k=!0),x.push({...S,position:E})}return k&&(c.current=""),{nodes:x,edges:w}}function e$(){return _.jsx(Rg,{children:_.jsx(t$,{})})}function t$(){const e=co(),n=O.useRef(og()),[,i]=O.useState(0),s=O.useCallback(()=>i(se=>se+1),[]),[o,u]=O.useState(()=>new Set),[l,c]=O.useState(null),[d,p]=O.useState(null),h=O.useCallback((se,re)=>{u(he=>{if(!re)return new Set([se]);const me=new Set(he);return me.has(se)?me.delete(se):me.add(se),me}),c(he=>re&&he===se?he:se)},[]),m=O.useCallback(()=>{u(new Set),c(null)},[]),[v,w]=O.useState(null),[b,x]=O.useState(null),k=O.useCallback(se=>x(se),[]),S=O.useRef(WL()),[E,T]=O.useState($L);O.useEffect(()=>{DL(E)},[E]);const[C,j]=O.useState(FL);O.useEffect(()=>{zL(C)},[C]);const[M,A]=O.useState(BL);O.useEffect(()=>{UL(M)},[M]);const[D,L]=O.useState(HL);O.useEffect(()=>{VL(D)},[D]);const[U,H]=O.useState(0),[Q,ee]=O.useState(!1),[R,G]=O.useState(!1),B=O.useRef([]),[X,Y]=O.useState(Date.now()),q=O.useRef(new Map(GL())),V=O.useRef(null),I=O.useState(()=>KL())[0],[z,ae]=O.useState(""),[$,K]=O.useState(()=>new Set),[Z,oe]=O.useState(()=>typeof window>"u"?"dark":window.localStorage.getItem("agent-dag.theme")??"dark"),[ce,pe]=O.useState(!1),ge=O.useRef(null);O.useEffect(()=>{document.documentElement.dataset.theme=Z;try{window.localStorage.setItem("agent-dag.theme",Z)}catch{}},[Z]),O.useEffect(()=>{if(!I)return;const se=window.setTimeout(()=>{try{e.setViewport(I,{duration:0})}catch{}},60);return()=>window.clearTimeout(se)},[e,I]);const Me=O.useRef(!0),Ie=O.useRef(null);O.useEffect(()=>{const se=new EventSource("/events");return se.addEventListener("open",()=>{ee(!0),pe(!0)}),se.addEventListener("error",()=>ee(!1)),se.addEventListener("replay-end",()=>{Me.current=!1,Ie.current!=null&&(window.clearTimeout(Ie.current),Ie.current=null),s()}),se.addEventListener("hook",re=>{try{const he=JSON.parse(re.data);if(R){B.current.push(he);return}n.current=bw(n.current,he),he.replay===!0||Me.current||Date.now()-he.receivedAt>3e4?(Ie.current!=null&&window.clearTimeout(Ie.current),Ie.current=window.setTimeout(()=>{Ie.current=null,s()},120)):(Ie.current!=null&&(window.clearTimeout(Ie.current),Ie.current=null),s())}catch{}}),()=>{se.close(),Ie.current!=null&&(window.clearTimeout(Ie.current),Ie.current=null)}},[R,s]),O.useEffect(()=>{if(!R&&B.current.length!==0){for(const se of B.current)n.current=bw(n.current,se);B.current.length=0,s()}},[R,s]),O.useEffect(()=>{const se=setInterval(()=>{const re=Date.now();Y(re);let he=YM(n.current,re,qL);if(KM(n.current,re,OL,LL)&&(he=!0),re-we.current>=1e3){we.current=re;let me=0;for(const ke of n.current.agents.values())me+=Bt(ke.usage,ke.model).total;const _e=ye.current;_e.push({t:re,cost:me}),_e.length>240&&_e.shift()}he&&s()},250);return()=>clearInterval(se)},[s]);const Pe=O.useRef(null),je=O.useRef(0),be=O.useRef(""),Ve=O.useRef(null),ye=O.useRef([]),we=O.useRef(0),Be=O.useRef(0),st=O.useCallback(()=>{Be.current=Date.now()},[]),lt="agent-dag.autoFitDisabled",We=O.useRef((()=>{if(typeof window>"u")return!1;try{return window.localStorage.getItem(lt)==="1"}catch{return!1}})()),[Ge,ht]=O.useState(We.current),Rt=O.useCallback(()=>{if(!We.current){We.current=!0,ht(!0);try{window.localStorage.setItem(lt,"1")}catch{}}},[]),Ut=O.useCallback(()=>{We.current=!1,ht(!1);try{window.localStorage.removeItem(lt)}catch{}try{e.fitView({padding:.25,duration:400})}catch{}},[e]);O.useEffect(()=>{const se=setInterval(()=>{if(We.current||Date.now()-Be.current<800)return;const re=n.current,he=Date.now(),me=[];for(const ft of re.agents.values())lg(ft,he)&&me.push({id:ft.id});if(me.length===0)return;const _e=e.getViewport(),ke=window.innerWidth-360,De=window.innerHeight-52;let vt=!1,bt=!1;for(const{id:ft}of me){const Je=pt.current.get(ft),Vn=q.current.get(ft)??Le.current.get(ft);if(!Je||!Vn)continue;bt=!0;const ci=Vn.x*_e.zoom+_e.x,fi=Vn.y*_e.zoom+_e.y,di=(Vn.x+Je.width)*_e.zoom+_e.x,hi=(Vn.y+Je.height)*_e.zoom+_e.y;if(di>0&&ci<ke&&hi>0&&fi<De){vt=!0;break}}if(bt&&!vt)try{e.fitView({padding:.25,duration:600})}catch{}},1500);return()=>clearInterval(se)},[e]);const pt=O.useRef(new Map),ct=O.useRef(0),Ht=O.useCallback(se=>{const re=pt.current;let he=!1;for(const me of se.nodeInternals.values()){const _e=me.width,ke=me.height;if(_e==null||ke==null)continue;const De=re.get(me.id);De?(Math.abs(De.height-ke)>4||Math.abs(De.width-_e)>4)&&(re.set(me.id,{width:_e,height:ke}),he=!0):(re.set(me.id,{width:_e,height:ke}),he=!0)}return he&&(ct.current+=1),ct.current},[]),At=He(Ht),Le=O.useRef(new Map),mt=O.useRef(""),Ye=O.useMemo(()=>{const se=[];for(const re of n.current.agents.values())lg(re,X)&&se.push(re.id+(re.parentId?`>${re.parentId}`:""));return se.sort(),`${se.join("|")}#sv${At}`},[n.current,n.current.lastSeq,X,At]);O.useEffect(()=>{if(be.current===Ye)return;const se=be.current;if(be.current=Ye,!se||We.current)return;const re=Date.now();if(re-je.current>1200){try{e.fitView({padding:.25,duration:400})}catch{}je.current=re}Pe.current&&window.clearTimeout(Pe.current),Pe.current=window.setTimeout(()=>{if(!We.current){try{e.fitView({padding:.25,duration:500})}catch{}je.current=Date.now()}},280)},[Ye,e]);const ot=O.useMemo(()=>{if(o.size===0)return null;const se=new Set;for(const re of o){const he=ZL(n.current,re);if(he)for(const me of he)se.add(me)}return se.size>0?se:null},[n.current,n.current.lastSeq,o]),Vt=O.useMemo(()=>IL(n.current,X),[n.current,n.current.lastSeq,X]),{nodes:Ze,edges:Pt}=O.useMemo(()=>JL(n.current,X,q.current,z,pt.current,Le.current,Ye,mt,o,ot,Vt,k),[n.current,n.current.lastSeq,X,z,Ye,o,ot,Vt,k,U]),an=O.useMemo(()=>{const se=new Map;for(const he of Ze){const me=he.data;if(!(me!=null&&me.sessionId)||me.exitAt!=null)continue;const _e=he.width,ke=he.height;if(_e==null||ke==null)continue;const De=he.position.x,vt=he.position.y,bt=De+_e,ft=vt+ke,Je=se.get(me.sessionId);Je?(Je.minX=Math.min(Je.minX,De),Je.minY=Math.min(Je.minY,vt),Je.maxX=Math.max(Je.maxX,bt),Je.maxY=Math.max(Je.maxY,ft)):se.set(me.sessionId,{minX:De,minY:vt,maxX:bt,maxY:ft})}const re=[];for(const[he,me]of se){const _e=me.maxX-me.minX+La*2,ke=me.maxY-me.minY+La*2;re.push({id:`group:${he}`,type:"sessionGroup",position:{x:me.minX-La,y:me.minY-La},data:{sessionId:he,w:_e,h:ke},width:_e,height:ke,style:{width:_e,height:ke},zIndex:-1,draggable:!0,selectable:!1,focusable:!1,deletable:!1,connectable:!1})}return re},[Ze,X]),Hn=O.useMemo(()=>[...an,...Ze],[an,Ze]),Sn=O.useMemo(()=>{if(!z)return null;const se=new Set;for(const re of n.current.agents.values())YN(re,z)&&se.add(re.id);return se},[n.current,n.current.lastSeq,z]),en=O.useMemo(()=>{const se=new Set;for(const re of n.current.agents.values())for(const he of re.tools)se.add(KN(he.name));return Object.keys(cg).filter(re=>se.has(re))},[n.current,n.current.lastSeq]),Dt=O.useMemo(()=>{const se=new Map;for(const he of n.current.agents.values())for(const me of he.tools){if(!me.name.startsWith("mcp__"))continue;const _e=me.name.slice(5),ke=_e.indexOf("__"),De=ke>0?_e.slice(0,ke):_e;se.set(De,(se.get(De)??0)+1)}const re=[];for(const[he,me]of se){let _e=5381;for(let ke=0;ke<he.length;ke++)_e=(_e<<5)+_e^he.charCodeAt(ke);re.push({server:he,count:me,hue:Math.abs(_e)%360})}return re.sort((he,me)=>me.count-he.count),re},[n.current,n.current.lastSeq]),un=O.useCallback(se=>{K(re=>{const he=new Set(re);return he.has(se)?he.delete(se):he.add(se),he})},[]),_t=l?n.current.agents.get(l):null,$r=d?Array.from(n.current.agents.values()).flatMap(se=>se.tools).find(se=>se.id===d)??null:null,ur=O.useCallback(async()=>{try{await fetch("/api/clear",{method:"POST"})}catch{}n.current=og(),q.current.clear(),pt.current.clear(),Le.current.clear(),mt.current="",uE(),m(),s()},[s,m]),lr=O.useCallback(()=>{q.current.clear(),Le.current.clear(),mt.current="",uE(),s(),window.setTimeout(()=>{try{e.fitView({padding:.25,duration:500})}catch{}je.current=Date.now()},80)},[s,e]),cr=O.useCallback(()=>{try{e.fitView({padding:.25,duration:500})}catch{}je.current=Date.now()},[e]),fr=O.useCallback(se=>{if(Ze.length===0)return;const re=Ze.slice().sort((ke,De)=>ke.position.y-De.position.y||ke.position.x-De.position.x),he=l?re.findIndex(ke=>ke.id===l):-1;let me;he===-1?me=se===1?0:re.length-1:me=(he+se+re.length)%re.length;const _e=re[me];_e&&(h(_e.id,!1),window.setTimeout(()=>{try{e.fitView({padding:.35,duration:350,nodes:[_e]})}catch{}je.current=Date.now()},30))},[Ze,l,h,e]);O.useEffect(()=>{const se=re=>{var me,_e;const he=((me=re.target)==null?void 0:me.tagName)==="INPUT";if(re.key==="Escape"){he?re.target.blur():m();return}if(!he){if(re.key==="/"){re.preventDefault(),(_e=ge.current)==null||_e.focus();return}re.key===" "&&(re.preventDefault(),G(ke=>!ke)),(re.key==="c"||re.key==="C")&&ur(),(re.key==="r"||re.key==="R")&&lr(),(re.key==="f"||re.key==="F")&&cr(),(re.key==="l"||re.key==="L")&&T(ke=>!ke),(re.key==="h"||re.key==="H")&&j(ke=>!ke),(re.key==="u"||re.key==="U")&&L(ke=>!ke),(re.key==="j"||re.key==="J")&&fr(1),(re.key==="k"||re.key==="K")&&fr(-1),(re.key==="t"||re.key==="T")&&oe(ke=>ke==="dark"?"light":"dark")}};return window.addEventListener("keydown",se),()=>window.removeEventListener("keydown",se)},[ur,lr,cr,m,fr]);const ln=n.current.agents.size,Dr=new Set(Array.from(n.current.agents.values()).map(se=>se.sessionId)).size,gt=O.useMemo(()=>{let se=0,re=0,he=0,me=0,_e=0,ke=0,De=0,vt=0,bt=0;for(const ft of n.current.agents.values()){se+=ft.usage.inputTokens,re+=ft.usage.outputTokens,he+=ft.usage.cacheReadTokens,me+=ft.usage.cacheCreateTokens;const Je=Bt(ft.usage,ft.model);_e+=Je.total,ke+=Je.input,De+=Je.output,vt+=Je.cacheRead,bt+=Je.cacheWrite}return{inT:se,outT:re,cacheR:he,cacheC:me,sum:se+re,cost:{total:_e,input:ke,output:De,cacheRead:vt,cacheWrite:bt}}},[n.current,n.current.lastSeq]);return _.jsxs("div",{className:"app",children:[_.jsxs("header",{className:"topbar",children:[_.jsxs("div",{className:"brand",children:[_.jsx("span",{className:"logo"}),"agents-deck ",_.jsxs("span",{className:"v",children:["v","1.20.1"]})]}),_t&&(()=>{const se=Bt(_t.usage,_t.model),re=Math.max(0,((_t.endedAt??X)-_t.startedAt)/1e3),he=_t.state==="active"?Za(se.total,re):null,me=o.size-1;return _.jsxs("button",{type:"button",className:"selected-ribbon",title:`Fit view to ${_t.label}`,onClick:()=>{try{const _e=Ze.find(ke=>ke.id===_t.id);_e&&e.fitView({padding:.35,duration:500,nodes:[_e]}),je.current=Date.now()}catch{}},children:[_.jsx("span",{className:`state-pill state-${_t.state}`,children:_t.state==="active"?"live":_t.state}),_.jsx("span",{className:"selected-label",children:_t.label}),se.total>0&&_.jsxs("span",{className:"selected-cost",children:[ze(se.total),he?_.jsxs("span",{className:"selected-rate",children:[" · ",he]}):null]}),me>0&&_.jsxs("span",{className:"selected-extra",children:["+",me]}),_.jsx("span",{role:"button","aria-label":"Deselect",className:"selected-close",onClick:_e=>{_e.stopPropagation(),m()},children:"×"})]})})(),_.jsxs("div",{className:"actions",children:[_.jsxs("div",{className:"search",children:[_.jsx("span",{className:"search-icon","aria-hidden":!0,children:"⌕"}),_.jsx("input",{ref:ge,type:"text",placeholder:"Search agents, cwd, tools…",value:z,onChange:se=>ae(se.target.value),spellCheck:!1,"aria-label":"Filter the graph"}),z?_.jsx("button",{className:"search-clear","aria-label":"Clear search",onClick:()=>ae(""),children:"×"}):_.jsx("kbd",{className:"search-kbd","aria-hidden":!0,children:"/"})]}),_.jsxs("span",{className:"status",role:"status",children:[_.jsx("span",{className:`pill ${Q?"live":"dead"}`,title:Q?"Receiving events":"SSE disconnected",children:Q?"live":"offline"}),_.jsxs("span",{className:"stat",title:"Distinct CC sessions",children:[_.jsx("span",{className:"count",children:Dr}),_.jsx("span",{className:"lbl",children:"sessions"})]}),_.jsxs("span",{className:"stat",title:"Total agents (root + subagents)",children:[_.jsx("span",{className:"count",children:ln}),_.jsx("span",{className:"lbl",children:"agents"})]}),_.jsxs("span",{className:"stat",title:"Total hook events received",children:[_.jsx("span",{className:"count",children:n.current.totalEvents}),_.jsx("span",{className:"lbl",children:"events"})]}),gt.sum>0&&_.jsxs("span",{className:"stat",title:`in:${gt.inT.toLocaleString()} out:${gt.outT.toLocaleString()} cache-r:${gt.cacheR.toLocaleString()} cache-c:${gt.cacheC.toLocaleString()}`,children:[_.jsx("span",{className:"count",children:ML(gt.sum)}),_.jsx("span",{className:"lbl",children:"tokens"})]}),Dt.length>0&&_.jsxs("span",{className:"stat mcp-legend",title:`MCP servers seen this session:
|
|
59
|
+
burn: ${v}`:"");return _.jsxs("span",{className:"cost-meta",title:w,children:[_.jsx("b",{children:ze(h.total)}),v&&_.jsx("span",{className:"cost-rate",children:v})]})})()]}),_.jsx(Zi,{type:"source",position:Ce.Right,style:{background:"transparent",border:"none"}})]})}function aP({state:e}){const n=e==="active"?"live":e==="done"?"done":"err";return _.jsx("span",{className:`state-pill state-${e}`,children:n})}function uP(e){return e<1e3?`${e}`:e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(2)}M`}function lP({tools:e,now:n}){const u=new Array(24).fill(0);let l=0;for(const v of e){const w=n-v.startedAt;if(w<0||w>=6e4)continue;const b=23-Math.floor(w/2500);b>=0&&b<24&&(u[b]+=1,l+=1)}const c=Math.max(1,...u),d=132,p=14,h=d/24,m=c/(2500/1e3);return _.jsxs("div",{className:"tool-spark-row",title:`${l} tool calls in last 60s · peak ${m.toFixed(1)}/s`,children:[_.jsx("svg",{className:"tool-spark",width:d,height:p,viewBox:`0 0 ${d} ${p}`,"aria-hidden":!0,children:u.map((v,w)=>{const b=v===0?1.5:Math.max(1.5,v/c*p),x=w===23&&v>0,S=`tool-spark-bar${v>0?" active":""}${x?" latest":""}`;return _.jsx("rect",{x:w*h+.4,y:p-b,width:Math.max(.5,h-1),height:b,rx:.8,className:S},w)})}),_.jsx("span",{className:"tool-spark-label",children:"60s"})]})}function fo(e){const n=e.match(/^claude[-_](opus|sonnet|haiku|fable|mythos)[-_](\d+(?:[-_.]\d+)*)/i);if(n){const o=n[1][0].toUpperCase()+n[1].slice(1).toLowerCase(),u=n[2].replace(/[-_]/g,".");return`${o} ${u}`}const i=e.match(/^gpt[-_](\d+(?:[-_.]\d+)*)[-_]codex\b/i);if(i)return`GPT-${i[1].replace(/[-_]/g,".")} Codex`;const s=e.match(/^gpt[-_](\d+(?:[-_.]\d+)*)/i);return s?`GPT-${s[1].replace(/[-_]/g,".")}`:e}function Cw(e){if(e==null)return"(none)";if(typeof e=="string")return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}function cP(e){if(e.endedAt==null)return"in-flight…";const n=e.endedAt-e.startedAt;return n<1e3?`${n}ms`:`${(n/1e3).toFixed(2)}s`}function fP({tool:e,onClose:n}){O.useEffect(()=>{const s=o=>{o.key==="Escape"&&n()};return window.addEventListener("keydown",s),()=>window.removeEventListener("keydown",s)},[n]);const i=e.endedAt==null?"inflight":e.ok===!1?"err":"done";return _.jsx("div",{className:"modal-backdrop",onClick:n,role:"dialog","aria-modal":"true",children:_.jsxs("div",{className:"modal",onClick:s=>s.stopPropagation(),children:[_.jsxs("header",{className:"modal-head",children:[_.jsxs("div",{className:"modal-title",children:[_.jsx("span",{className:`status-dot ${i}`}),_.jsx("span",{className:"modal-tool-name",children:e.name}),_.jsxs("span",{className:"modal-tool-id",title:e.id,children:[e.id.slice(0,12),"…"]})]}),_.jsxs("div",{className:"modal-actions",children:[_.jsx("span",{className:"modal-dur",children:cP(e)}),_.jsx("button",{className:"btn icon-btn",onClick:n,"aria-label":"Close (Esc)",title:"Close (Esc)",children:"×"})]})]}),_.jsxs("section",{className:"modal-body",children:[_.jsxs("div",{className:"modal-section",children:[_.jsx("h4",{children:"Input"}),_.jsx("pre",{children:Cw(e.input??e.inputPreview)})]}),_.jsxs("div",{className:"modal-section",children:[_.jsxs("h4",{children:["Response ",i==="err"&&_.jsx("span",{className:"err-tag",children:"error"})]}),_.jsx("pre",{children:e.endedAt==null?"(waiting…)":Cw(e.response??e.errorPreview)})]})]})]})})}const Oa=18,Tw=26,dP=12;function hP(e){const n=new Map;for(const o of e.nodeInternals.values()){const u=o.data;if(!(u!=null&&u.sessionId)||u.exitAt!=null||o.width==null||o.height==null)continue;const l=o.position.x,c=o.position.y,d=l+o.width,p=c+o.height,h=n.get(u.sessionId);h?(h.minX=Math.min(h.minX,l),h.minY=Math.min(h.minY,c),h.maxX=Math.max(h.maxX,d),h.maxY=Math.max(h.maxY,p),u.kind==="root"&&(h.label=Rw(u)??h.label)):n.set(u.sessionId,{minX:l,minY:c,maxX:d,maxY:p,label:Rw(u)??u.sessionId})}const i=new Map;for(const o of n.values())i.set(o.label,(i.get(o.label)??0)+1);const s=[];for(const[o,u]of n){const c=(i.get(u.label)??0)>1?`${u.label} · ${pP(o)}`:u.label;s.push({sessionId:o,label:c,x:u.minX-Oa,y:u.minY-Oa-Tw,w:u.maxX-u.minX+Oa*2,h:u.maxY-u.minY+Oa*2+Tw})}return s}function pP(e){const n=e.match(/[a-zA-Z0-9]{4}/);return n?n[0]:e.slice(0,4)}function Rw(e){if(e.kind==="root")return e.label}function mP(){const{x:e,y:n,zoom:i}=Tb(),s=co(),o=He(hP,gP);if(o.length<=1)return null;const u=l=>{try{const c=s.getNodes().filter(d=>{const p=d.data;return(p==null?void 0:p.sessionId)===l});if(c.length===0)return;s.fitView({padding:.3,duration:500,nodes:c})}catch{}};return _.jsx("div",{className:"session-clusters",children:o.map(l=>{const c=jg(l.sessionId),d={position:"absolute",left:l.x*i+e,top:l.y*i+n,width:l.w*i,height:l.h*i,borderColor:`hsl(${c} 65% 55% / 0.32)`,background:`hsl(${c} 70% 50% / 0.04)`},p={position:"absolute",left:l.x*i+e+16*i,top:(l.y-dP)*i+n,color:`hsl(${c} 70% 78%)`,borderColor:`hsl(${c} 65% 55% / 0.5)`,transform:`scale(${Math.min(1,i)})`,transformOrigin:"left top"};return _.jsxs(ie.Fragment,{children:[_.jsx("div",{className:"cluster-card",style:d,"aria-hidden":!0}),_.jsx("button",{type:"button",className:"cluster-label",style:p,title:`Fit view to ${l.label} · drag the wrapper to move the whole session`,onClick:()=>u(l.sessionId),children:l.label})]},l.sessionId)})})}function gP(e,n){if(e.length!==n.length)return!1;for(let i=0;i<e.length;i++){const s=e[i],o=n[i];if(s.sessionId!==o.sessionId||s.label!==o.label||s.x!==o.x||s.y!==o.y||s.w!==o.w||s.h!==o.h)return!1}return!0}function vP({data:e}){return _.jsx("div",{className:"session-group-handle",style:{width:(e==null?void 0:e.w)??0,height:(e==null?void 0:e.h)??0}})}const $b=600,yP=36,ug=16,wP=60,_P=6,Aw=220,jw=96,xP=28,SP={Read:"file",Write:"file",Edit:"file",MultiEdit:"file",Glob:"file",Grep:"file",LS:"file",NotebookEdit:"file",Bash:"shell",PowerShell:"shell",shell:"shell",exec_command:"shell",shell_command:"shell",write_stdin:"shell",wait:"shell",apply_patch:"file",update_plan:"task",WebFetch:"web",WebSearch:"web",Task:"agent",Agent:"agent",TodoWrite:"task",TaskCreate:"task",TaskUpdate:"task",TaskList:"task",TaskGet:"task",TaskOutput:"task",TaskStop:"task",EnterPlanMode:"plan",ExitPlanMode:"plan",AskUserQuestion:"plan",Skill:"plan",Workflow:"plan",ScheduleWakeup:"other",CronCreate:"other",CronList:"other",CronDelete:"other",Monitor:"other",PushNotification:"other",RemoteTrigger:"other",ToolSearch:"other"};function kP(e){return e.startsWith("mcp__")?"mcp":SP[e]??"other"}const EP={Read:"📖",Write:"💾",Edit:"✏️",MultiEdit:"🔧",Glob:"🗺️",Grep:"🔎",Bash:"⚡",PowerShell:"💻",shell:"⚡",exec_command:"⚡",shell_command:"⚡",write_stdin:"💻",wait:"⏳",apply_patch:"🩹",update_plan:"📋",LS:"📂",Task:"🤖",Agent:"🤖",TodoWrite:"📋",TaskCreate:"📋",TaskUpdate:"📝",TaskList:"🗂️",TaskGet:"🗂️",TaskOutput:"📤",TaskStop:"🛑",WebFetch:"🌐",WebSearch:"🔭",ToolSearch:"🧰",NotebookEdit:"📓",EnterPlanMode:"🧭",ExitPlanMode:"🏁",AskUserQuestion:"❓",ScheduleWakeup:"⏰",CronCreate:"⏰",CronList:"📅",CronDelete:"🗑️",Skill:"🎯",Workflow:"🎬",Monitor:"📡",PushNotification:"🔔",RemoteTrigger:"📡"};function Iw(e){return e.startsWith("mcp__")?"🔌":EP[e]??"✨"}const bP={git:"🐙",gh:"🐙",glab:"🐙",npm:"📦",pnpm:"📦",yarn:"📦",bun:"📦",brew:"🍺",node:"🟢",deno:"🟢",python:"🐍",python3:"🐍",py:"🐍",pip:"🐍",pip3:"🐍",uv:"🐍",ruby:"💎",bundle:"💎",gem:"💎",cargo:"🦀",rustc:"🦀",rustup:"🦀",go:"🐹",docker:"🐳","docker-compose":"🐳",podman:"🐳",kubectl:"☸️",helm:"☸️",k9s:"☸️",grep:"🔎",rg:"🔎",ag:"🔎",ack:"🔎",find:"🔍",fd:"🔍",locate:"🔍",which:"🔍",ls:"📂",dir:"📂",tree:"📂",cat:"📄",head:"📄",tail:"📄",less:"📄",more:"📄",bat:"📄",cp:"📋",mv:"✂️",rm:"🗑️",rmdir:"🗑️",mkdir:"📁",touch:"📁",sed:"✏️",awk:"✏️",tr:"✏️",curl:"🌐",wget:"🌐",http:"🌐",httpie:"🌐",ssh:"🔐",scp:"🔐",rsync:"🔐",ping:"📡",make:"🔨",cmake:"🔨",ninja:"🔨",bazel:"🔨",just:"🔨",terraform:"🏗️",ansible:"📕",pulumi:"🏗️",ps:"📊",top:"📊",htop:"📊",btm:"📊",kill:"💀",pkill:"💀",systemctl:"⚙️",service:"⚙️",tar:"🗜️",zip:"🗜️",unzip:"🗜️",gzip:"🗜️","7z":"🗜️",vim:"📝",nvim:"📝",nano:"📝",emacs:"📝",code:"📝",jq:"🪺",yq:"🪺",echo:"💬",printf:"💬",ffmpeg:"🎞️",ffprobe:"🎞️",imagemagick:"🖼️",convert:"🖼️","Get-ChildItem":"📂","Get-Content":"📄","Set-Content":"💾","Out-File":"💾","Add-Content":"💾","Set-Location":"📍","Get-Location":"📍","Get-Process":"📊","Start-Process":"▶️","Stop-Process":"💀","Invoke-WebRequest":"🌐","Invoke-RestMethod":"🌐","New-Item":"📁","Remove-Item":"🗑️","Copy-Item":"📋","Move-Item":"✂️","Test-Path":"🔍","Where-Object":"🔎","ForEach-Object":"🔁","Select-Object":"🎯","Measure-Object":"📊","Get-Service":"⚙️","Restart-Service":"⚙️","ConvertTo-Json":"🪺","ConvertFrom-Json":"🪺"};function Db(e){if(!e)return null;let n=e.trim();if(!n)return null;const i=n.match(/^(?:bash|sh|zsh|fish|powershell|pwsh)(?:\.exe)?\s+(?:-c|-Command|-NoProfile|-NonInteractive|\s)+["']([^"']+)["']/i);if(i)return Db(i[1]);for(;;){const u=n.match(/^([A-Z_][A-Z0-9_]*=\S*)\s+/);if(!u)break;n=n.slice(u[0].length)}n=n.replace(/^sudo(?:\s+-\S+)*\s+/,""),n=n.replace(/^(?:time|nohup|xargs)\s+/,"");const s=n.match(/^([^\s|;&<>(]+)/);if(!s)return null;let o=s[1];return o=o.replace(/^.*[/\\]/,""),o=o.replace(/\.(exe|cmd|bat|ps1)$/i,""),o||null}function NP(e){if(typeof e=="string")return e;if(!e||typeof e!="object")return null;const n=e;if(typeof n.cmd=="string")return n.cmd;if(typeof n.command=="string")return n.command;if(Array.isArray(n.command)&&n.command.every(i=>typeof i=="string")){const i=n.command;if(/powershell|cmd|bash|sh(\.exe)?$/i.test(i[0]??"")){const s=i.findIndex(o=>/^(-Command|-c)$/i.test(o));if(s>=0&&s+1<i.length)return i[s+1]}return i.join(" ")}return typeof n.script=="string"?n.script:null}const CP=new Set(["Bash","PowerShell","shell","exec_command","shell_command","write_stdin","wait"]),TP=new Set(["shell","exec_command","shell_command","write_stdin","wait","apply_patch","update_plan"]);function RP(e,n){return TP.has(e)?Math.max(jw,34+n.length*7.5):jw}function AP(e,n){if(!CP.has(e))return null;const i=NP(n);if(!i)return null;const s=Db(i);return s?{emoji:bP[s]??"⚙️",label:s,category:"shell",detail:i}:null}const jP=new Set(["Read","Write","Edit","MultiEdit","NotebookEdit","LS","Glob","apply_patch"]),Mw={ts:"🟦",tsx:"🟦",d:"🟦",js:"🟨",jsx:"🟨",mjs:"🟨",cjs:"🟨",py:"🐍",pyi:"🐍",ipynb:"📓",rs:"🦀",go:"🐹",rb:"💎",erb:"💎",java:"☕",kt:"☕",scala:"☕",gradle:"☕",cs:"🔷",fs:"🔷",php:"🐘",swift:"🦅",c:"🇨",cpp:"🇨",cc:"🇨",h:"🇨",hpp:"🇨",md:"📝",mdx:"📝",rst:"📝",json:"🪺",json5:"🪺",jsonl:"🪺",yaml:"⚙️",yml:"⚙️",toml:"⚙️",ini:"⚙️",conf:"⚙️",cfg:"⚙️",xml:"📰",html:"🌐",htm:"🌐",vue:"🌐",svelte:"🌐",css:"🎨",scss:"🎨",sass:"🎨",less:"🎨",sh:"⚡",bash:"⚡",zsh:"⚡",fish:"⚡",ps1:"⚡",txt:"📄",log:"📄",out:"📄",csv:"📊",tsv:"📊",xlsx:"📊",xls:"📊",pdf:"📕",png:"🖼️",jpg:"🖼️",jpeg:"🖼️",gif:"🖼️",webp:"🖼️",svg:"🖼️",ico:"🖼️",mp4:"🎬",mov:"🎬",avi:"🎬",mkv:"🎬",webm:"🎬",mp3:"🎵",wav:"🎵",ogg:"🎵",flac:"🎵",zip:"🗜️",tar:"🗜️",gz:"🗜️",bz2:"🗜️","7z":"🗜️",xz:"🗜️",rar:"🗜️",env:"🔐",lock:"🔐",pem:"🔐",key:"🔐",crt:"🔐",sql:"🗄️",db:"🗄️",sqlite:"🗄️",parquet:"🗄️"},Pw={dockerfile:"🐳",makefile:"🔨",rakefile:"💎","package.json":"📦","pnpm-lock.yaml":"📦","yarn.lock":"📦","cargo.toml":"🦀","cargo.lock":"🦀","go.mod":"🐹","go.sum":"🐹","pyproject.toml":"🐍","requirements.txt":"🐍","readme.md":"📖",readme:"📖",license:"📜",".gitignore":"🐙",".gitattributes":"🐙",".env":"🔐",".dockerignore":"🐳"};function IP(e){const i=e.replace(/\\/g,"/").replace(/\/+$/,""),s=i.lastIndexOf("/");return s>=0?i.slice(s+1):i}function MP(e){const n=e.toLowerCase();if(Pw[n])return Pw[n];if(n.startsWith("dockerfile."))return"🐳";if(/\.(test|spec)\.[a-z]+$/.test(n))return"🧪";const i=n.lastIndexOf(".");if(i>0&&i<n.length-1){const s=n.slice(i+1);if(Mw[s])return Mw[s]}return"📄"}function PP(e,n){if(!n||typeof n!="object")return null;const i=n;if(e==="apply_patch"&&typeof i.patch=="string"){const s=i.patch.match(/^\*\*\* (?:Update|Add|Delete) File: (.+)$/m);return s?s[1].trim():null}return typeof i.file_path=="string"?i.file_path:typeof i.notebook_path=="string"?i.notebook_path:typeof i.path=="string"?i.path:e==="Glob"&&typeof i.pattern=="string"?i.pattern:null}function qP(e,n){if(!jP.has(e))return null;const i=PP(e,n);if(!i)return null;const s=IP(i);return s?{emoji:e==="LS"?"📂":MP(s),label:s,category:"file",detail:i}:null}const Fb={github:{emoji:"🐙",name:"GitHub"},git:{emoji:"🐙",name:"Git"},gitlab:{emoji:"🦊",name:"GitLab"},slack:{emoji:"💬",name:"Slack"},discord:{emoji:"💬",name:"Discord"},linear:{emoji:"📐",name:"Linear"},jira:{emoji:"🅹",name:"Jira"},atlassian:{emoji:"🅰️",name:"Atlassian"},notion:{emoji:"📓",name:"Notion"},asana:{emoji:"📋",name:"Asana"},intercom:{emoji:"💬",name:"Intercom"},figma:{emoji:"🎨",name:"Figma"},gmail:{emoji:"📧",name:"Gmail"},calendar:{emoji:"📅",name:"Calendar"},drive:{emoji:"☁️",name:"Drive"},zoom:{emoji:"📹",name:"Zoom"},spotify:{emoji:"🎵",name:"Spotify"},youtube:{emoji:"📺",name:"YouTube"},ccd_session:{emoji:"📡",name:"Session"},ccd_directory:{emoji:"📂",name:"Directory"},ccd_session_mgmt:{emoji:"📡",name:"Sessions"},mcp_registry:{emoji:"🧰",name:"Registry"},"computer-use":{emoji:"🖱️",name:"Computer"},"claude-in-chrome":{emoji:"🌐",name:"Chrome"},"claude-preview":{emoji:"👀",name:"Preview"},"scheduled-tasks":{emoji:"⏰",name:"Scheduler"},visualize:{emoji:"🎨",name:"Visualize"},"plugin-design-asana":{emoji:"📋",name:"Asana"},"plugin-design-atlassian":{emoji:"🅰️",name:"Atlassian"},"plugin-design-figma":{emoji:"🎨",name:"Figma"},"plugin-design-intercom":{emoji:"💬",name:"Intercom"},"plugin-design-linear":{emoji:"📐",name:"Linear"},"plugin-design-notion":{emoji:"📓",name:"Notion"},"plugin-design-slack":{emoji:"💬",name:"Slack"}};function zb(e){if(!e.startsWith("mcp__"))return null;const n=e.slice(5),i=n.indexOf("__");return i<=0?{server:n,method:""}:{server:n.slice(0,i),method:n.slice(i+2)}}function OP(e){let n=5381;for(let i=0;i<e.length;i++)n=(n<<5)+n^e.charCodeAt(i);return Math.abs(n)%360}function LP(e,n){const i=zb(e);if(!i)return null;const{server:s,method:o}=i;if(!o)return null;const u=Fb[s.toLowerCase()];return{emoji:(u==null?void 0:u.emoji)??"🔌",label:o,category:"mcp",detail:u?`${u.name} · ${o}`:`${s} · ${o}`}}function $P(e,n){return AP(e,n)??qP(e,n)??LP(e)}const DP={shell:"Shell",exec_command:"Shell",shell_command:"Shell",write_stdin:"stdin",wait:"wait",apply_patch:"Edit",update_plan:"Plan"};function FP(e){const n=zb(e);if(n){const s=Fb[n.server.toLowerCase()];return s?{emoji:s.emoji,label:s.name}:{emoji:"🔌",label:n.server,hue:OP(n.server)}}const i=DP[e];return i?{emoji:Iw(e),label:i}:{emoji:Iw(e),label:e}}function zP(e){return e.endedAt==null?"inflight":e.ok===!1?"err":"done"}function BP(e,n,i){if(i==null)return 1;const s=n-i;return s<0?1:Math.max(0,1-s/$b)}function UP(e,n,i,s,o,u){const l=[];for(const c of e.values()){if(!n.has(c.id)||c.exitAt!=null&&u-c.exitAt>$b)continue;const d=s.get(c.id)??i.get(c.id);if(!d)continue;const p=c.tools.slice(-4);if(p.length===0)continue;const h=c.exitAt??null,m=o.get(c.id),v=Math.max((m==null?void 0:m.width)??Aw,Aw),w=(m==null?void 0:m.height)??130,b=d.x,x=d.y,k=b+v,S=x+w/2;p.forEach((E,T)=>{const C=T*yP,j=b+v+wP,M=x+_P+C,A=BP(E,u,h),D=E.inputPreview??"",L=zP(E),U=A<.999,H=FP(E.name);l.push({id:E.id,toolId:E.id,agentId:c.id,toolName:E.name,name:H.label,emoji:H.emoji,status:L,category:kP(E.name),mcpHue:H.hue,inputPreview:D,fade:A,fading:U,worldX:j,worldY:M,anchorX:k,anchorY:S,spawnDx:k-j,spawnDy:S-(M+ug)});const Q=$P(E.name,E.input);if(Q){const ee=RP(E.name,H.label),R=j+ee+xP,G=M,B=j+ee,X=M+ug;l.push({id:`sub:${E.id}`,toolId:E.id,agentId:c.id,toolName:E.name,name:Q.label,emoji:Q.emoji,isSub:!0,status:L,category:Q.category,inputPreview:Q.detail??D,fade:A,fading:U,worldX:R,worldY:G,anchorX:B,anchorY:X,spawnDx:B-R,spawnDy:0})}})}return l}function HP({agents:e,visibleAgentIds:n,positions:i,pinned:s,measured:o,dimUnmatched:u,spotlight:l,hiddenCategories:c,now:d,onOpenTool:p}){const{x:h,y:m,zoom:v}=Tb(),w=UP(e,n,i,s,o,d),b=c&&c.size>0?w.filter(x=>!c.has(x.category)):w;return _.jsxs("div",{className:"tool-bursts-layer","aria-hidden":!0,children:[_.jsx("svg",{className:"tool-bursts-svg",children:b.map(x=>{const k=x.anchorX*v+h,S=x.anchorY*v+m,E=(x.worldX+6)*v+h,T=(x.worldY+ug)*v+m,C=k+(E-k)*.55,j=u!=null&&!u.has(x.agentId),M=l!=null&&!l.has(x.agentId),A=x.fade*(j||M?.14:1);return _.jsx("path",{d:`M ${k} ${S} Q ${C} ${S}, ${E} ${T}`,className:`tool-conn status-${x.status}${x.fading?" fading":""}`,opacity:A},`l:${x.id}`)})}),b.map(x=>{const k=x.worldX*v+h,S=x.worldY*v+m,E={left:`${k}px`,top:`${S}px`,transform:`scale(${v})`,transformOrigin:"left top","--spawn-dx":`${x.spawnDx}px`,"--spawn-dy":`${x.spawnDy}px`},T=x.isSub?`${x.toolName} · ${x.name}`:x.toolName,C=x.inputPreview?`${T} · ${x.inputPreview}`:T,j=p!=null,M=x.mcpHue!=null?{"--cat-accent":`hsl(${x.mcpHue} 65% 65%)`}:{},A=u!=null&&!u.has(x.agentId),D=l!=null&&!l.has(x.agentId),L=A||D?" dim":"";return _.jsx("div",{className:"tool-burst-wrap",style:E,children:_.jsxs("div",{className:`tool-burst cat-${x.category} status-${x.status}${x.fading?" fading":""}${j?" clickable":""}${x.isSub?" sub":""}${L}`,style:M,title:C,role:j?"button":void 0,tabIndex:j?0:void 0,"aria-label":j?`Open ${x.toolName} ${x.status==="inflight"?"in flight":x.status} — click for details`:void 0,onClick:j?()=>p(x.toolId):void 0,onKeyDown:j?U=>{(U.key==="Enter"||U.key===" ")&&(U.preventDefault(),p(x.toolId))}:void 0,children:[_.jsx("span",{className:"tb-emoji",children:x.emoji}),_.jsx("span",{className:"tb-name",children:x.name}),x.status==="inflight"&&_.jsx("span",{className:"tb-spin"}),x.status==="done"&&_.jsx("span",{className:"tb-mark done",children:"✓"}),x.status==="err"&&_.jsx("span",{className:"tb-mark err",children:"×"})]})},x.id)})]})}function VP({state:e,sessionId:n,onClose:i}){const s=O.useMemo(()=>GP(e,n),[e,n]);return s?_.jsx("div",{className:"modal-backdrop",onClick:i,role:"presentation",children:_.jsxs("div",{className:"modal session-summary",onClick:o=>o.stopPropagation(),role:"dialog","aria-modal":"true","aria-labelledby":"ss-title",children:[_.jsxs("div",{className:"modal-head",children:[_.jsxs("div",{className:"modal-title",children:[_.jsx("span",{className:"state-pill state-done","aria-hidden":!0,children:"done"}),_.jsx("span",{id:"ss-title",className:"modal-tool-name",title:s.cwd??s.sessionId,children:s.label}),_.jsxs("span",{className:"modal-tool-id",children:["· ",s.sessionId.slice(0,8)]})]}),_.jsxs("div",{className:"modal-actions",children:[_.jsx("span",{className:"modal-dur",title:"Total wall time",children:s.durationLabel}),_.jsx("button",{className:"btn",onClick:i,"aria-label":"Close",children:"×"})]})]}),_.jsxs("div",{className:"modal-body",children:[_.jsxs("section",{className:"ss-hero",children:[_.jsxs("div",{className:"ss-hero-left",children:[_.jsx("div",{className:"ss-cost-label",children:"total spend"}),_.jsx("div",{className:"ss-cost",children:ze(s.cost.total)}),s.modelChips.length>0&&_.jsx("div",{className:"ss-models",children:s.modelChips.map(o=>_.jsx("span",{className:"model-chip",title:o,children:fo(o)},o))})]}),_.jsx("div",{className:"ss-hero-right",children:s.cost.total>0&&_.jsxs(_.Fragment,{children:[_.jsx(WP,{cost:s.cost}),_.jsxs("div",{className:"ss-cost-legend",children:[_.jsxs("span",{className:"ssl ssl-in",children:["input ",_.jsx("b",{children:ze(s.cost.input)})]}),_.jsxs("span",{className:"ssl ssl-out",children:["output ",_.jsx("b",{children:ze(s.cost.output)})]}),_.jsxs("span",{className:"ssl ssl-cr",children:["cache r ",_.jsx("b",{children:ze(s.cost.cacheRead)})]}),_.jsxs("span",{className:"ssl ssl-cw",children:["cache w ",_.jsx("b",{children:ze(s.cost.cacheWrite)})]})]})]})})]}),_.jsxs("section",{className:"ss-stats",children:[_.jsx(Bi,{label:"agents",value:s.agentCount}),_.jsx(Bi,{label:"subagents",value:s.subagentCount}),_.jsx(Bi,{label:"tool calls",value:s.toolCount}),_.jsx(Bi,{label:"prompts",value:s.promptCount}),_.jsx(Bi,{label:"tokens",value:s.tokensSum.toLocaleString()}),s.errCount>0&&_.jsx(Bi,{label:"errors",value:s.errCount,tone:"err"})]}),s.topTools.length>0&&_.jsxs("section",{className:"modal-section",children:[_.jsx("h4",{children:"Most-used tools"}),_.jsx("div",{className:"ss-top-tools",children:s.topTools.map(([o,u])=>_.jsxs("div",{className:"ss-tt",children:[_.jsx("span",{className:"ss-tt-name",children:o}),_.jsx("span",{className:"ss-tt-bar",children:_.jsx("span",{className:"ss-tt-bar-fill",style:{width:`${u/s.topTools[0][1]*100}%`}})}),_.jsx("span",{className:"ss-tt-count",children:u})]},o))})]}),s.firstPrompt&&_.jsxs("section",{className:"modal-section",children:[_.jsx("h4",{children:"Opening prompt"}),_.jsx("div",{className:"ss-prompt",children:s.firstPrompt})]})]})]})}):null}function Bi({label:e,value:n,tone:i}){return _.jsxs("div",{className:`ss-stat${i?` tone-${i}`:""}`,children:[_.jsx("div",{className:"ss-stat-value",children:n}),_.jsx("div",{className:"ss-stat-label",children:e})]})}function WP({cost:e}){const n=e.total;if(n<=0)return null;const i=(s,o,u)=>{if(s<=0)return null;const l=s/n*100;return _.jsx("span",{className:`cb-seg ${o}`,style:{width:`${l}%`},title:`${u}: ${ze(s)} (${l.toFixed(0)}%)`},o)};return _.jsxs("div",{className:"cost-bar cost-bar-lg","aria-label":"Cost breakdown",children:[i(e.input,"cb-input","input"),i(e.output,"cb-output","output"),i(e.cacheRead,"cb-cache-r","cache read"),i(e.cacheWrite,"cb-cache-w","cache write")]})}function GP(e,n){const i=e.agents.get(n);if(!i)return null;const s=[];for(const T of e.agents.values())T.sessionId===n&&s.push(T);if(s.length===0)return null;const o={input:0,output:0,cacheRead:0,cacheWrite:0,total:0},u=new Set,l=new Map;let c=0,d=0,p=0,h=0,m=0,v,w=1/0,b=0;for(const T of s){const C=Bt(T.usage,T.model);o.input+=C.input,o.output+=C.output,o.cacheRead+=C.cacheRead,o.cacheWrite+=C.cacheWrite,o.total+=C.total,T.model&&u.add(T.model),T.kind==="subagent"&&m++,d+=T.prompts.length,!v&&T.prompts.length>0&&(v=T.prompts[0].text),p+=T.usage.inputTokens+T.usage.outputTokens,c+=T.tools.length,w=Math.min(w,T.startedAt),b=Math.max(b,T.endedAt??Date.now());for(const j of T.tools)l.set(j.name,(l.get(j.name)??0)+1),j.ok===!1&&h++}const x=Math.max(0,b-w),k=Math.floor(x/1e3),S=k<60?`${k}s`:k<3600?`${Math.floor(k/60)}m ${String(k%60).padStart(2,"0")}s`:`${Math.floor(k/3600)}h ${Math.floor(k%3600/60)}m`,E=Array.from(l.entries()).sort((T,C)=>C[1]-T[1]).slice(0,5);return{sessionId:n,label:i.label||i.cwdBasename||"session",cwd:i.cwd,durationLabel:S,cost:o,modelChips:Array.from(u),agentCount:s.length,subagentCount:m,toolCount:c,promptCount:d,tokensSum:p,errCount:h,topTools:E,firstPrompt:v}}function KP(e,n){const i=[];for(const s of e.agents.values()){if(s.kind!=="root")continue;let o=s.tools.length,u=Bt(s.usage,s.model).total,l=s.endedAt??s.startedAt;for(const c of e.agents.values()){if(c.sessionId!==s.sessionId||c.kind==="root")continue;o+=c.tools.length,u+=Bt(c.usage,c.model).total;const d=c.endedAt??c.startedAt;d>l&&(l=d)}i.push({sessionId:s.sessionId,label:s.label||s.cwdBasename||"session",cwdBasename:s.cwdBasename,state:s.state,modelId:s.model,toolCount:o,cost:u,startedAt:s.startedAt,lastActivity:l})}return i.sort((s,o)=>{if(s.state!==o.state){if(s.state==="active")return-1;if(o.state==="active")return 1}return o.lastActivity-s.lastActivity}),i}function YP(e,n,i){const s=(n??i)-e;if(s<1e3)return"<1s";const o=Math.floor(s/1e3);if(o<60)return`${o}s`;const u=Math.floor(o/60);return u<60?`${u}m`:`${Math.floor(u/60)}h ${u%60}m`}function XP({state:e,now:n,selectedIds:i,onSelect:s,onClose:o}){const u=O.useMemo(()=>KP(e),[e,e.lastSeq,n]),l=u.filter(c=>c.state==="active").length;return _.jsxs("aside",{className:"session-list","aria-label":"Sessions",children:[_.jsxs("div",{className:"sl-header",children:[_.jsxs("h3",{children:["Sessions ",_.jsx("span",{className:"sl-count",children:u.length})]}),l>0&&_.jsxs("span",{className:"sl-live-count",children:[l," live"]}),_.jsx("button",{className:"btn icon-btn sl-close",onClick:o,title:"Hide sidebar (L)","aria-label":"Hide session list",children:"‹"})]}),_.jsxs("div",{className:"sl-rows",children:[u.length===0&&_.jsx("div",{className:"sl-empty",children:"No sessions yet."}),u.map(c=>{const d=i.has(c.sessionId);return _.jsxs("button",{type:"button",className:`sl-row state-${c.state}${d?" selected":""}`,onClick:()=>s(c.sessionId),title:`Focus ${c.label}`,children:[_.jsx("span",{className:`sl-dot state-${c.state}`,"aria-hidden":!0}),_.jsxs("div",{className:"sl-row-body",children:[_.jsxs("div",{className:"sl-row-head",children:[_.jsx("span",{className:"sl-label",children:c.label}),c.modelId&&_.jsx("span",{className:"model-chip",title:c.modelId,children:fo(c.modelId)})]}),_.jsxs("div",{className:"sl-row-meta",children:[_.jsxs("span",{title:"tool calls",children:[_.jsx("b",{children:c.toolCount})," tools"]}),c.cost>0&&_.jsx("span",{className:"sl-cost",title:"total spend",children:_.jsx("b",{children:ze(c.cost)})}),_.jsx("span",{className:"sl-elapsed",title:`Started ${new Date(c.startedAt).toLocaleString()}`,children:YP(c.startedAt,c.state==="active"?void 0:c.lastActivity,n)})]})]})]},c.sessionId)})]})]})}const bc=12e4,qw=400,Bb="agent-dag.timelineMode";function QP(){if(typeof window>"u")return"tools";try{return window.localStorage.getItem(Bb)==="cost"?"cost":"tools"}catch{return"tools"}}function ZP(e){if(!(typeof window>"u"))try{window.localStorage.setItem(Bb,e)}catch{}}const JP={Read:"file",Write:"file",Edit:"file",MultiEdit:"file",Glob:"file",Grep:"file",LS:"file",NotebookEdit:"file",Bash:"shell",PowerShell:"shell",WebFetch:"web",WebSearch:"web",Task:"agent",Agent:"agent",TodoWrite:"task",TaskCreate:"task",TaskUpdate:"task",TaskList:"task",TaskGet:"task",TaskOutput:"task",TaskStop:"task",EnterPlanMode:"plan",ExitPlanMode:"plan",AskUserQuestion:"plan",Skill:"plan",Workflow:"plan"};function eq(e){return e.startsWith("mcp__")?"mcp":JP[e]??"other"}function tq(e,n,i){const s=[];for(const o of e.values())if(n.has(o.id))for(const u of o.tools)u.startedAt<i||s.push({agentId:o.id,toolId:u.id,name:u.name,category:eq(u.name),startedAt:u.startedAt,endedAt:u.endedAt,inflight:u.endedAt==null,errored:u.ok===!1});return s.sort((o,u)=>o.startedAt-u.startedAt),s.length>qw?s.slice(s.length-qw):s}function nq({agents:e,visibleAgentIds:n,now:i,costSamples:s,onSelect:o,onOpenTool:u,onClose:l}){const[c,d]=O.useState(QP);O.useEffect(()=>{ZP(c)},[c]);const p=i-bc,h=O.useMemo(()=>tq(e,n,p),[e,n,p]),m=O.useMemo(()=>{const S=new Map;for(const E of h)S.set(E.category,(S.get(E.category)??0)+1);return S},[h]),v=O.useMemo(()=>s.filter(S=>S.t>=p),[s,p]),w=O.useMemo(()=>v.reduce((S,E)=>Math.max(S,E.cost),0),[v]),b=v.length>0?v[v.length-1].cost:0,x=v.length>0?v[0].cost:0,k=b-x;return _.jsxs("div",{className:"timeline-strip",role:"region","aria-label":c==="cost"?"Spend over time":"Recent tool activity",children:[_.jsxs("div",{className:"ts-header",children:[_.jsxs("div",{className:"ts-mode-toggle",role:"tablist","aria-label":"Timeline mode",children:[_.jsx("button",{role:"tab",className:`ts-mode${c==="tools"?" on":""}`,onClick:()=>d("tools"),"aria-selected":c==="tools",title:"Show recent tool calls",children:"tools"}),_.jsx("button",{role:"tab",className:`ts-mode${c==="cost"?" on":""}`,onClick:()=>d("cost"),"aria-selected":c==="cost",title:"Show cumulative spend",children:"$"})]}),_.jsx("span",{className:"ts-title",children:"Last 2 min"}),c==="tools"?_.jsxs(_.Fragment,{children:[_.jsxs("span",{className:"ts-total",children:[h.length," tool call",h.length===1?"":"s"]}),_.jsx("div",{className:"ts-legend",children:Array.from(m.entries()).sort((S,E)=>E[1]-S[1]).map(([S,E])=>_.jsxs("span",{className:`ts-legend-item cat-${S}`,title:`${E} ${S}`,children:[_.jsx("span",{className:"ts-legend-dot"}),E]},S))})]}):_.jsxs(_.Fragment,{children:[_.jsxs("span",{className:"ts-total",children:[ze(b),k>0&&_.jsxs("span",{className:"ts-delta",children:[" · +",ze(k)]})]}),_.jsx("div",{className:"ts-legend"})]}),_.jsx("button",{className:"btn icon-btn ts-close",onClick:l,title:"Hide timeline","aria-label":"Hide timeline",children:"×"})]}),_.jsxs("div",{className:"ts-track","aria-hidden":!0,children:[[2,1.5,1,.5,0].map(S=>_.jsx("span",{className:"ts-tick",style:{left:`${(2-S)/2*100}%`},children:S===0?"now":`${S}m`},S)),_.jsx("span",{className:"ts-now-line"}),c==="tools"?h.map(S=>{const E=(S.startedAt-p)/bc*100,T=S.inflight?"inflight":S.errored?"err":"done";return _.jsx("button",{className:`ts-dot cat-${S.category} status-${T}`,style:{left:`${E}%`},onClick:()=>{o(S.agentId),u(S.toolId)},title:`${S.name} · ${new Date(S.startedAt).toLocaleTimeString()}${S.endedAt?` (${Math.max(0,S.endedAt-S.startedAt)}ms)`:" — running"}`,"aria-label":`${S.name} ${T}`},S.toolId)}):_.jsx(rq,{series:v,earliest:p,windowMs:bc,costMax:w})]})]})}function rq({series:e,earliest:n,windowMs:i,costMax:s}){if(e.length<2||s<=0)return _.jsx("div",{className:"ts-chart-empty",children:"collecting samples…"});const o=h=>Math.max(0,Math.min(100,(h-n)/i*100)),u=h=>100-h/s*92-4,l=e.map(h=>({x:o(h.t),y:u(h.cost)}));let c=`M ${l[0].x.toFixed(2)} ${l[0].y.toFixed(2)}`;for(let h=1;h<l.length;h++){const m=l[h-1],v=l[h],w=(m.x+v.x)/2;c+=` C ${w.toFixed(2)} ${m.y.toFixed(2)}, ${w.toFixed(2)} ${v.y.toFixed(2)}, ${v.x.toFixed(2)} ${v.y.toFixed(2)}`}const d=l[l.length-1],p=`${c} L ${d.x.toFixed(2)} 100 L ${l[0].x.toFixed(2)} 100 Z`;return _.jsxs("svg",{className:"ts-chart",viewBox:"0 0 100 100",preserveAspectRatio:"none","aria-hidden":!0,children:[_.jsx("defs",{children:_.jsxs("linearGradient",{id:"ts-fill",x1:"0",y1:"0",x2:"0",y2:"1",children:[_.jsx("stop",{offset:"0%",stopColor:"hsl(150 60% 60%)",stopOpacity:"0.55"}),_.jsx("stop",{offset:"100%",stopColor:"hsl(150 60% 60%)",stopOpacity:"0.02"})]})}),_.jsx("path",{d:p,fill:"url(#ts-fill)"}),_.jsx("path",{d:c,fill:"none",stroke:"hsl(150 70% 65%)",strokeWidth:"0.6",vectorEffect:"non-scaling-stroke"}),_.jsx("circle",{cx:d.x,cy:d.y,r:"1.4",fill:"hsl(150 80% 70%)",vectorEffect:"non-scaling-stroke"})]})}function tr(e){return e<1e3?`${e}`:e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(2)}M`}function iq({cost:e}){const n=e.total;if(n<=0)return null;const i=(s,o,u)=>{if(s<=0)return null;const l=s/n*100;return _.jsx("span",{className:`cb-seg ${o}`,style:{width:`${l}%`},title:`${u}: ${ze(s)} (${l.toFixed(0)}%)`},o)};return _.jsxs("div",{className:"cost-bar","aria-label":"Cost breakdown",children:[i(e.input,"cb-input","input"),i(e.output,"cb-output","output"),i(e.cacheRead,"cb-cache-r","cache read"),i(e.cacheWrite,"cb-cache-w","cache write")]})}function sq(e,n){const i=e-n;if(i<=0)return null;const s=Math.floor(i/3600),o=Math.floor(i%3600/60);if(s>23){const u=Math.floor(i/86400),l=Math.floor(i%86400/3600);return`${u}d ${l}h`}return s>0?`${s}h ${o}m`:`${o}m`}function oq(e,n,i,s){const o=Math.max(0,n-s),u=Math.max(0,i-o);if(u<120)return null;const l=Math.min(100,u/i*100),c=e-l;if(Math.abs(c)<3)return{label:"on pace",color:"var(--accent)"};if(c>0){const d=100-e,p=u>0?e/u:0,h=p>0?d/p:1/0,m={label:`${Math.round(c)}% ahead`,color:"var(--warn)"};if(h<o&&h<86400){const v=Math.floor(h/3600),w=Math.floor(h%3600/60);m.runsOutIn=v>0?`${v}h ${w}m`:`${w}m`}return m}return{label:`${Math.round(-c)}% reserve`,color:"var(--accent)"}}function Ui({pct:e,label:n,reset:i,resetAt:s,windowSec:o,limitReached:u,nowSec:l}){const c=Math.min(100,Math.max(0,e)),p=u||c>=90?"var(--err)":c>=70?"var(--warn)":"var(--accent)",h=c===0?"< 1%":`${c}%`,m=c===0?2:c,v=s?sq(s,l):null,w=s&&o?oq(c,s,o,l):null;return _.jsxs("div",{className:"qb-row",children:[_.jsxs("div",{className:"qb-meta",children:[_.jsxs("span",{className:"qb-label",children:[n,u&&_.jsx("span",{className:"qb-limit-badge",title:"Rate limit reached",children:"⛔"})]}),_.jsx("span",{className:"qb-pct",style:{color:p},children:h})]}),_.jsx("div",{className:"qb-track",children:_.jsx("div",{className:"qb-fill",style:{width:`${m}%`,background:p,opacity:c===0?.4:1}})}),_.jsxs("div",{className:"qb-reset-row",children:[v?_.jsxs("span",{className:"qb-reset",children:["resets in ",v]}):i?_.jsxs("span",{className:"qb-reset",children:["resets ",i]}):null,w&&_.jsx("span",{className:"qb-pace",style:{color:w.color},children:w.runsOutIn?`runs out in ${w.runsOutIn}`:w.label})]})]})}const aq=6e4;function uq(){const[e,n]=O.useState(null),[i,s]=O.useState(!1),o=O.useRef(null),u=async(c=!1)=>{c&&s(!0);try{const p=await fetch(c?"/api/quota?refresh=1":"/api/quota");p.ok&&n(await p.json())}catch{}finally{c&&s(!1)}};return O.useEffect(()=>(u(!0),o.current=window.setInterval(()=>u(!1),aq),()=>{o.current!=null&&window.clearInterval(o.current)}),[]),{quota:e,loading:i,refresh:()=>u(!0)}}const Ub=6e4;function lq(){const[e,n]=O.useState(null),[i,s]=O.useState(!1),o=O.useRef(null),u=async(c=!1)=>{c&&s(!0);try{const p=await fetch(c?"/api/codex-quota?refresh=1":"/api/codex-quota");p.ok&&n(await p.json())}catch{}finally{c&&s(!1)}};return O.useEffect(()=>(u(!0),o.current=window.setInterval(()=>u(!1),Ub),()=>{o.current!=null&&window.clearInterval(o.current)}),[]),{data:e,loading:i,refresh:()=>u(!0)}}function cq(){const[e,n]=O.useState(null),i=O.useRef(null),s=async()=>{try{const o=await fetch("/api/codex-usage");o.ok&&n(await o.json())}catch{}};return O.useEffect(()=>(s(),i.current=window.setInterval(s,Ub),()=>{i.current!=null&&window.clearInterval(i.current)}),[]),{data:e}}function fq({state:e,now:n,onClose:i}){const{quota:s,loading:o,refresh:u}=uq(),{data:l,loading:c,refresh:d}=lq(),{data:p}=cq(),[h,m]=O.useState(()=>Math.floor(Date.now()/1e3));O.useEffect(()=>{const A=window.setInterval(()=>m(Math.floor(Date.now()/1e3)),3e4);return()=>window.clearInterval(A)},[]);const{byModel:v,totalCost:w,totalTokens:b,burnRate:x}=O.useMemo(()=>{const A=new Map,D={total:0,input:0,output:0,cacheRead:0,cacheWrite:0};let L=0,U=0,H=0,Q=0;for(const X of e.agents.values()){const Y=X.model??"__unknown__",q=Bt(X.usage,X.model),V=A.get(Y);V?(V.inputTokens+=X.usage.inputTokens,V.outputTokens+=X.usage.outputTokens,V.cacheReadTokens+=X.usage.cacheReadTokens,V.cacheCreateTokens+=X.usage.cacheCreateTokens,V.cost.total+=q.total,V.cost.input+=q.input,V.cost.output+=q.output,V.cost.cacheRead+=q.cacheRead,V.cost.cacheWrite+=q.cacheWrite,V.agentCount++):A.set(Y,{model:Y,inputTokens:X.usage.inputTokens,outputTokens:X.usage.outputTokens,cacheReadTokens:X.usage.cacheReadTokens,cacheCreateTokens:X.usage.cacheCreateTokens,cost:{...q},agentCount:1}),D.total+=q.total,D.input+=q.input,D.output+=q.output,D.cacheRead+=q.cacheRead,D.cacheWrite+=q.cacheWrite,L+=X.usage.inputTokens,U+=X.usage.outputTokens,H+=X.usage.cacheReadTokens,Q+=X.usage.cacheCreateTokens}const ee=Array.from(A.values()).sort((X,Y)=>Y.cost.total-X.cost.total);let R=0,G=0;for(const X of e.agents.values()){if(X.state!=="active")continue;const Y=Bt(X.usage,X.model);R+=Y.total,G=Math.max(G,((X.endedAt??n)-X.startedAt)/1e3)}const B=G>0?Za(R,G):null;return{byModel:ee,totalCost:D,totalTokens:{in:L,out:U,cacheR:H,cacheC:Q},burnRate:B}},[e,e.lastSeq,n]),k=O.useMemo(()=>{const A=[];for(const D of e.agents.values()){if(D.kind!=="root")continue;let L=Bt(D.usage,D.model).total,U=D.usage.inputTokens,H=D.usage.outputTokens;for(const Q of e.agents.values())Q.sessionId!==D.sessionId||Q.kind==="root"||(L+=Bt(Q.usage,Q.model).total,U+=Q.usage.inputTokens,H+=Q.usage.outputTokens);A.push({sessionId:D.sessionId,label:D.label||D.cwdBasename||"session",state:D.state,cost:L,inputTokens:U,outputTokens:H})}return A.sort((D,L)=>L.cost-D.cost).slice(0,12)},[e,e.lastSeq]),S=w.total>0,E=b.in+b.out,T=o||c,C=Math.max((s==null?void 0:s.fetchedAt)??0,(l==null?void 0:l.fetchedAt)??0),j=C>0?(()=>{const A=h-Math.floor(C/1e3);return A<10?"just now":A<60?`${A}s ago`:A<3600?`${Math.floor(A/60)}m ago`:`${Math.floor(A/3600)}h ago`})():null,M=()=>{u(),d()};return _.jsxs("div",{className:"usage-panel","aria-label":"Usage",children:[_.jsxs("div",{className:"up-header",children:[_.jsx("h3",{children:"Usage"}),x&&_.jsx("span",{className:"up-rate",children:x}),_.jsxs("div",{className:"up-header-right",children:[j&&!T&&_.jsx("span",{className:"up-last-updated",children:j}),_.jsx("button",{type:"button",className:"btn up-refresh-btn",onClick:M,disabled:T,title:"Refresh Claude + Codex quota",children:T?"…":"↻"}),_.jsx("button",{type:"button",className:"btn icon-btn up-close",onClick:i,"aria-label":"Close usage panel",title:"Close (U)",children:"×"})]})]}),_.jsxs("section",{className:"up-section up-quota-section",children:[_.jsx("h4",{className:"up-section-title",children:"Claude quota"}),s!=null&&s.ok?_.jsxs("div",{className:"up-quota-bars",children:[s.session5hPct!=null&&_.jsx(Ui,{label:"5-hour window",pct:s.session5hPct,reset:s.session5hReset,resetAt:s.session5hResetAt,windowSec:s.session5hWindowSec,nowSec:h}),s.week7dPct!=null&&_.jsx(Ui,{label:"7-day window",pct:s.week7dPct,reset:s.week7dReset,resetAt:s.week7dResetAt,windowSec:s.week7dWindowSec,nowSec:h}),s.weekSonnetPct!=null&&_.jsx(Ui,{label:"Sonnet (7d)",pct:s.weekSonnetPct,nowSec:h}),s.weekOpusPct!=null&&_.jsx(Ui,{label:"Opus (7d)",pct:s.weekOpusPct,nowSec:h})]}):(s==null?void 0:s.ok)===!1?_.jsxs("div",{className:"up-quota-na",children:[_.jsx("span",{children:"Quota unavailable."}),_.jsxs("span",{className:"up-quota-hint",children:["Run ",_.jsx("code",{children:"/usage"})," in a claude session, then click ↻"]})]}):_.jsx("div",{className:"up-quota-na up-quota-loading",children:"Checking…"})]}),_.jsxs("section",{className:"up-section up-quota-section",children:[_.jsx("h4",{className:"up-section-title",children:"Codex quota"}),l!=null&&l.ok?_.jsxs("div",{className:"up-quota-bars",children:[l.session5hPct!=null&&_.jsx(Ui,{label:"5-hour window",pct:l.session5hPct,reset:l.session5hReset,resetAt:l.session5hResetAt,windowSec:l.session5hWindowSec,limitReached:l.limitReached&&l.session5hPct>=100,nowSec:h}),l.week7dPct!=null&&_.jsx(Ui,{label:"7-day window",pct:l.week7dPct,reset:l.week7dReset,resetAt:l.week7dResetAt,windowSec:l.week7dWindowSec,nowSec:h}),(p==null?void 0:p.ok)&&p.window7d&&p.window7d.sessionCount>0&&_.jsxs("div",{className:"up-quota-sub",children:[tr(p.window7d.totalTokens)," tokens · ",p.window7d.sessionCount," sessions (7d)"]}),l.creditsBalance&&!l.creditsUnlimited&&_.jsxs("div",{className:"up-quota-sub up-credits",children:["credits: $",l.creditsBalance]}),l.creditsUnlimited&&_.jsx("div",{className:"up-quota-sub up-credits",children:"credits: unlimited"})]}):(l==null?void 0:l.ok)===!1?_.jsxs("div",{className:"up-quota-na",children:[_.jsx("span",{children:"Quota unavailable."}),_.jsx("span",{className:"up-quota-hint",children:l.reason==="no_token"?"Run codex login to authenticate.":"ChatGPT API unreachable — click ↻ to retry."})]}):_.jsx("div",{className:"up-quota-na up-quota-loading",children:"Checking…"})]}),S?_.jsxs(_.Fragment,{children:[_.jsxs("div",{className:"up-total",children:[_.jsx("span",{className:"up-total-value",children:ze(w.total)}),_.jsx("span",{className:"up-total-label",children:"total spend"})]}),_.jsx(iq,{cost:w}),E>0&&_.jsxs("div",{className:"up-tokens-row",children:[_.jsxs("span",{className:"up-tok",children:[_.jsx("span",{className:"up-k",children:"in"}),tr(b.in)]}),_.jsxs("span",{className:"up-tok",children:[_.jsx("span",{className:"up-k",children:"out"}),tr(b.out)]}),b.cacheR>0&&_.jsxs("span",{className:"up-tok",children:[_.jsx("span",{className:"up-k",children:"cache r"}),tr(b.cacheR)]}),b.cacheC>0&&_.jsxs("span",{className:"up-tok",children:[_.jsx("span",{className:"up-k",children:"cache c"}),tr(b.cacheC)]})]}),v.filter(A=>A.cost.total>0).length>0&&_.jsxs("section",{className:"up-section",children:[_.jsx("h4",{className:"up-section-title",children:"By model"}),_.jsxs("table",{className:"up-table",children:[_.jsx("thead",{children:_.jsxs("tr",{children:[_.jsx("th",{children:"Model"}),_.jsx("th",{children:"Tokens"}),_.jsx("th",{children:"Cost"})]})}),_.jsx("tbody",{children:v.filter(A=>A.cost.total>0).map(A=>_.jsxs("tr",{children:[_.jsx("td",{className:"up-model-name",title:A.model,children:fo(A.model)}),_.jsx("td",{className:"up-num",children:tr(A.inputTokens+A.outputTokens)}),_.jsx("td",{className:"up-num up-cost-val",children:ze(A.cost.total)})]},A.model))})]})]}),k.filter(A=>A.cost>0).length>0&&_.jsxs("section",{className:"up-section",children:[_.jsx("h4",{className:"up-section-title",children:"By session"}),_.jsx("div",{className:"up-sessions",children:k.filter(A=>A.cost>0).map(A=>_.jsxs("div",{className:"up-session-row",children:[_.jsx("span",{className:`sl-dot state-${A.state}`,"aria-hidden":!0}),_.jsx("span",{className:"up-session-label",children:A.label}),_.jsx("span",{className:"up-session-tokens",children:tr(A.inputTokens+A.outputTokens)}),_.jsx("span",{className:"up-session-cost",children:ze(A.cost)})]},A.sessionId))})]})]}):E>0?_.jsxs(_.Fragment,{children:[_.jsxs("div",{className:"up-tokens-row",children:[_.jsxs("span",{className:"up-tok",children:[_.jsx("span",{className:"up-k",children:"in"}),tr(b.in)]}),_.jsxs("span",{className:"up-tok",children:[_.jsx("span",{className:"up-k",children:"out"}),tr(b.out)]})]}),_.jsx("div",{className:"up-hint",children:"Cost appears once a known model is detected."})]}):_.jsxs("div",{className:"up-empty",children:["No usage data yet.",_.jsx("br",{}),"Start a Claude Code or Codex session."]})]})}function Mg(e){throw new Error('Could not dynamically require "'+e+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Nc,Ow;function dq(){if(Ow)return Nc;Ow=1;function e(){this.__data__=[],this.size=0}return Nc=e,Nc}var Cc,Lw;function Ji(){if(Lw)return Cc;Lw=1;function e(n,i){return n===i||n!==n&&i!==i}return Cc=e,Cc}var Tc,$w;function au(){if($w)return Tc;$w=1;var e=Ji();function n(i,s){for(var o=i.length;o--;)if(e(i[o][0],s))return o;return-1}return Tc=n,Tc}var Rc,Dw;function hq(){if(Dw)return Rc;Dw=1;var e=au(),n=Array.prototype,i=n.splice;function s(o){var u=this.__data__,l=e(u,o);if(l<0)return!1;var c=u.length-1;return l==c?u.pop():i.call(u,l,1),--this.size,!0}return Rc=s,Rc}var Ac,Fw;function pq(){if(Fw)return Ac;Fw=1;var e=au();function n(i){var s=this.__data__,o=e(s,i);return o<0?void 0:s[o][1]}return Ac=n,Ac}var jc,zw;function mq(){if(zw)return jc;zw=1;var e=au();function n(i){return e(this.__data__,i)>-1}return jc=n,jc}var Ic,Bw;function gq(){if(Bw)return Ic;Bw=1;var e=au();function n(i,s){var o=this.__data__,u=e(o,i);return u<0?(++this.size,o.push([i,s])):o[u][1]=s,this}return Ic=n,Ic}var Mc,Uw;function uu(){if(Uw)return Mc;Uw=1;var e=dq(),n=hq(),i=pq(),s=mq(),o=gq();function u(l){var c=-1,d=l==null?0:l.length;for(this.clear();++c<d;){var p=l[c];this.set(p[0],p[1])}}return u.prototype.clear=e,u.prototype.delete=n,u.prototype.get=i,u.prototype.has=s,u.prototype.set=o,Mc=u,Mc}var Pc,Hw;function vq(){if(Hw)return Pc;Hw=1;var e=uu();function n(){this.__data__=new e,this.size=0}return Pc=n,Pc}var qc,Vw;function yq(){if(Vw)return qc;Vw=1;function e(n){var i=this.__data__,s=i.delete(n);return this.size=i.size,s}return qc=e,qc}var Oc,Ww;function wq(){if(Ww)return Oc;Ww=1;function e(n){return this.__data__.get(n)}return Oc=e,Oc}var Lc,Gw;function _q(){if(Gw)return Lc;Gw=1;function e(n){return this.__data__.has(n)}return Lc=e,Lc}var $c,Kw;function Hb(){if(Kw)return $c;Kw=1;var e=typeof ba=="object"&&ba&&ba.Object===Object&&ba;return $c=e,$c}var Dc,Yw;function On(){if(Yw)return Dc;Yw=1;var e=Hb(),n=typeof self=="object"&&self&&self.Object===Object&&self,i=e||n||Function("return this")();return Dc=i,Dc}var Fc,Xw;function es(){if(Xw)return Fc;Xw=1;var e=On(),n=e.Symbol;return Fc=n,Fc}var zc,Qw;function xq(){if(Qw)return zc;Qw=1;var e=es(),n=Object.prototype,i=n.hasOwnProperty,s=n.toString,o=e?e.toStringTag:void 0;function u(l){var c=i.call(l,o),d=l[o];try{l[o]=void 0;var p=!0}catch{}var h=s.call(l);return p&&(c?l[o]=d:delete l[o]),h}return zc=u,zc}var Bc,Zw;function Sq(){if(Zw)return Bc;Zw=1;var e=Object.prototype,n=e.toString;function i(s){return n.call(s)}return Bc=i,Bc}var Uc,Jw;function oi(){if(Jw)return Uc;Jw=1;var e=es(),n=xq(),i=Sq(),s="[object Null]",o="[object Undefined]",u=e?e.toStringTag:void 0;function l(c){return c==null?c===void 0?o:s:u&&u in Object(c)?n(c):i(c)}return Uc=l,Uc}var Hc,e1;function _n(){if(e1)return Hc;e1=1;function e(n){var i=typeof n;return n!=null&&(i=="object"||i=="function")}return Hc=e,Hc}var Vc,t1;function ho(){if(t1)return Vc;t1=1;var e=oi(),n=_n(),i="[object AsyncFunction]",s="[object Function]",o="[object GeneratorFunction]",u="[object Proxy]";function l(c){if(!n(c))return!1;var d=e(c);return d==s||d==o||d==i||d==u}return Vc=l,Vc}var Wc,n1;function kq(){if(n1)return Wc;n1=1;var e=On(),n=e["__core-js_shared__"];return Wc=n,Wc}var Gc,r1;function Eq(){if(r1)return Gc;r1=1;var e=kq(),n=(function(){var s=/[^.]+$/.exec(e&&e.keys&&e.keys.IE_PROTO||"");return s?"Symbol(src)_1."+s:""})();function i(s){return!!n&&n in s}return Gc=i,Gc}var Kc,i1;function Vb(){if(i1)return Kc;i1=1;var e=Function.prototype,n=e.toString;function i(s){if(s!=null){try{return n.call(s)}catch{}try{return s+""}catch{}}return""}return Kc=i,Kc}var Yc,s1;function bq(){if(s1)return Yc;s1=1;var e=ho(),n=Eq(),i=_n(),s=Vb(),o=/[\\^$.*+?()[\]{}|]/g,u=/^\[object .+?Constructor\]$/,l=Function.prototype,c=Object.prototype,d=l.toString,p=c.hasOwnProperty,h=RegExp("^"+d.call(p).replace(o,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function m(v){if(!i(v)||n(v))return!1;var w=e(v)?h:u;return w.test(s(v))}return Yc=m,Yc}var Xc,o1;function Nq(){if(o1)return Xc;o1=1;function e(n,i){return n==null?void 0:n[i]}return Xc=e,Xc}var Qc,a1;function ai(){if(a1)return Qc;a1=1;var e=bq(),n=Nq();function i(s,o){var u=n(s,o);return e(u)?u:void 0}return Qc=i,Qc}var Zc,u1;function Pg(){if(u1)return Zc;u1=1;var e=ai(),n=On(),i=e(n,"Map");return Zc=i,Zc}var Jc,l1;function lu(){if(l1)return Jc;l1=1;var e=ai(),n=e(Object,"create");return Jc=n,Jc}var ef,c1;function Cq(){if(c1)return ef;c1=1;var e=lu();function n(){this.__data__=e?e(null):{},this.size=0}return ef=n,ef}var tf,f1;function Tq(){if(f1)return tf;f1=1;function e(n){var i=this.has(n)&&delete this.__data__[n];return this.size-=i?1:0,i}return tf=e,tf}var nf,d1;function Rq(){if(d1)return nf;d1=1;var e=lu(),n="__lodash_hash_undefined__",i=Object.prototype,s=i.hasOwnProperty;function o(u){var l=this.__data__;if(e){var c=l[u];return c===n?void 0:c}return s.call(l,u)?l[u]:void 0}return nf=o,nf}var rf,h1;function Aq(){if(h1)return rf;h1=1;var e=lu(),n=Object.prototype,i=n.hasOwnProperty;function s(o){var u=this.__data__;return e?u[o]!==void 0:i.call(u,o)}return rf=s,rf}var sf,p1;function jq(){if(p1)return sf;p1=1;var e=lu(),n="__lodash_hash_undefined__";function i(s,o){var u=this.__data__;return this.size+=this.has(s)?0:1,u[s]=e&&o===void 0?n:o,this}return sf=i,sf}var of,m1;function Iq(){if(m1)return of;m1=1;var e=Cq(),n=Tq(),i=Rq(),s=Aq(),o=jq();function u(l){var c=-1,d=l==null?0:l.length;for(this.clear();++c<d;){var p=l[c];this.set(p[0],p[1])}}return u.prototype.clear=e,u.prototype.delete=n,u.prototype.get=i,u.prototype.has=s,u.prototype.set=o,of=u,of}var af,g1;function Mq(){if(g1)return af;g1=1;var e=Iq(),n=uu(),i=Pg();function s(){this.size=0,this.__data__={hash:new e,map:new(i||n),string:new e}}return af=s,af}var uf,v1;function Pq(){if(v1)return uf;v1=1;function e(n){var i=typeof n;return i=="string"||i=="number"||i=="symbol"||i=="boolean"?n!=="__proto__":n===null}return uf=e,uf}var lf,y1;function cu(){if(y1)return lf;y1=1;var e=Pq();function n(i,s){var o=i.__data__;return e(s)?o[typeof s=="string"?"string":"hash"]:o.map}return lf=n,lf}var cf,w1;function qq(){if(w1)return cf;w1=1;var e=cu();function n(i){var s=e(this,i).delete(i);return this.size-=s?1:0,s}return cf=n,cf}var ff,_1;function Oq(){if(_1)return ff;_1=1;var e=cu();function n(i){return e(this,i).get(i)}return ff=n,ff}var df,x1;function Lq(){if(x1)return df;x1=1;var e=cu();function n(i){return e(this,i).has(i)}return df=n,df}var hf,S1;function $q(){if(S1)return hf;S1=1;var e=cu();function n(i,s){var o=e(this,i),u=o.size;return o.set(i,s),this.size+=o.size==u?0:1,this}return hf=n,hf}var pf,k1;function qg(){if(k1)return pf;k1=1;var e=Mq(),n=qq(),i=Oq(),s=Lq(),o=$q();function u(l){var c=-1,d=l==null?0:l.length;for(this.clear();++c<d;){var p=l[c];this.set(p[0],p[1])}}return u.prototype.clear=e,u.prototype.delete=n,u.prototype.get=i,u.prototype.has=s,u.prototype.set=o,pf=u,pf}var mf,E1;function Dq(){if(E1)return mf;E1=1;var e=uu(),n=Pg(),i=qg(),s=200;function o(u,l){var c=this.__data__;if(c instanceof e){var d=c.__data__;if(!n||d.length<s-1)return d.push([u,l]),this.size=++c.size,this;c=this.__data__=new i(d)}return c.set(u,l),this.size=c.size,this}return mf=o,mf}var gf,b1;function fu(){if(b1)return gf;b1=1;var e=uu(),n=vq(),i=yq(),s=wq(),o=_q(),u=Dq();function l(c){var d=this.__data__=new e(c);this.size=d.size}return l.prototype.clear=n,l.prototype.delete=i,l.prototype.get=s,l.prototype.has=o,l.prototype.set=u,gf=l,gf}var vf,N1;function Og(){if(N1)return vf;N1=1;function e(n,i){for(var s=-1,o=n==null?0:n.length;++s<o&&i(n[s],s,n)!==!1;);return n}return vf=e,vf}var yf,C1;function Wb(){if(C1)return yf;C1=1;var e=ai(),n=(function(){try{var i=e(Object,"defineProperty");return i({},"",{}),i}catch{}})();return yf=n,yf}var wf,T1;function du(){if(T1)return wf;T1=1;var e=Wb();function n(i,s,o){s=="__proto__"&&e?e(i,s,{configurable:!0,enumerable:!0,value:o,writable:!0}):i[s]=o}return wf=n,wf}var _f,R1;function hu(){if(R1)return _f;R1=1;var e=du(),n=Ji(),i=Object.prototype,s=i.hasOwnProperty;function o(u,l,c){var d=u[l];(!(s.call(u,l)&&n(d,c))||c===void 0&&!(l in u))&&e(u,l,c)}return _f=o,_f}var xf,A1;function po(){if(A1)return xf;A1=1;var e=hu(),n=du();function i(s,o,u,l){var c=!u;u||(u={});for(var d=-1,p=o.length;++d<p;){var h=o[d],m=l?l(u[h],s[h],h,u,s):void 0;m===void 0&&(m=s[h]),c?n(u,h,m):e(u,h,m)}return u}return xf=i,xf}var Sf,j1;function Fq(){if(j1)return Sf;j1=1;function e(n,i){for(var s=-1,o=Array(n);++s<n;)o[s]=i(s);return o}return Sf=e,Sf}var kf,I1;function Un(){if(I1)return kf;I1=1;function e(n){return n!=null&&typeof n=="object"}return kf=e,kf}var Ef,M1;function zq(){if(M1)return Ef;M1=1;var e=oi(),n=Un(),i="[object Arguments]";function s(o){return n(o)&&e(o)==i}return Ef=s,Ef}var bf,P1;function mo(){if(P1)return bf;P1=1;var e=zq(),n=Un(),i=Object.prototype,s=i.hasOwnProperty,o=i.propertyIsEnumerable,u=e((function(){return arguments})())?e:function(l){return n(l)&&s.call(l,"callee")&&!o.call(l,"callee")};return bf=u,bf}var Nf,q1;function wt(){if(q1)return Nf;q1=1;var e=Array.isArray;return Nf=e,Nf}var Ks={exports:{}},Cf,O1;function Bq(){if(O1)return Cf;O1=1;function e(){return!1}return Cf=e,Cf}Ks.exports;var L1;function ts(){return L1||(L1=1,(function(e,n){var i=On(),s=Bq(),o=n&&!n.nodeType&&n,u=o&&!0&&e&&!e.nodeType&&e,l=u&&u.exports===o,c=l?i.Buffer:void 0,d=c?c.isBuffer:void 0,p=d||s;e.exports=p})(Ks,Ks.exports)),Ks.exports}var Tf,$1;function pu(){if($1)return Tf;$1=1;var e=9007199254740991,n=/^(?:0|[1-9]\d*)$/;function i(s,o){var u=typeof s;return o=o??e,!!o&&(u=="number"||u!="symbol"&&n.test(s))&&s>-1&&s%1==0&&s<o}return Tf=i,Tf}var Rf,D1;function Lg(){if(D1)return Rf;D1=1;var e=9007199254740991;function n(i){return typeof i=="number"&&i>-1&&i%1==0&&i<=e}return Rf=n,Rf}var Af,F1;function Uq(){if(F1)return Af;F1=1;var e=oi(),n=Lg(),i=Un(),s="[object Arguments]",o="[object Array]",u="[object Boolean]",l="[object Date]",c="[object Error]",d="[object Function]",p="[object Map]",h="[object Number]",m="[object Object]",v="[object RegExp]",w="[object Set]",b="[object String]",x="[object WeakMap]",k="[object ArrayBuffer]",S="[object DataView]",E="[object Float32Array]",T="[object Float64Array]",C="[object Int8Array]",j="[object Int16Array]",M="[object Int32Array]",A="[object Uint8Array]",D="[object Uint8ClampedArray]",L="[object Uint16Array]",U="[object Uint32Array]",H={};H[E]=H[T]=H[C]=H[j]=H[M]=H[A]=H[D]=H[L]=H[U]=!0,H[s]=H[o]=H[k]=H[u]=H[S]=H[l]=H[c]=H[d]=H[p]=H[h]=H[m]=H[v]=H[w]=H[b]=H[x]=!1;function Q(ee){return i(ee)&&n(ee.length)&&!!H[e(ee)]}return Af=Q,Af}var jf,z1;function mu(){if(z1)return jf;z1=1;function e(n){return function(i){return n(i)}}return jf=e,jf}var Ys={exports:{}};Ys.exports;var B1;function $g(){return B1||(B1=1,(function(e,n){var i=Hb(),s=n&&!n.nodeType&&n,o=s&&!0&&e&&!e.nodeType&&e,u=o&&o.exports===s,l=u&&i.process,c=(function(){try{var d=o&&o.require&&o.require("util").types;return d||l&&l.binding&&l.binding("util")}catch{}})();e.exports=c})(Ys,Ys.exports)),Ys.exports}var If,U1;function go(){if(U1)return If;U1=1;var e=Uq(),n=mu(),i=$g(),s=i&&i.isTypedArray,o=s?n(s):e;return If=o,If}var Mf,H1;function Gb(){if(H1)return Mf;H1=1;var e=Fq(),n=mo(),i=wt(),s=ts(),o=pu(),u=go(),l=Object.prototype,c=l.hasOwnProperty;function d(p,h){var m=i(p),v=!m&&n(p),w=!m&&!v&&s(p),b=!m&&!v&&!w&&u(p),x=m||v||w||b,k=x?e(p.length,String):[],S=k.length;for(var E in p)(h||c.call(p,E))&&!(x&&(E=="length"||w&&(E=="offset"||E=="parent")||b&&(E=="buffer"||E=="byteLength"||E=="byteOffset")||o(E,S)))&&k.push(E);return k}return Mf=d,Mf}var Pf,V1;function gu(){if(V1)return Pf;V1=1;var e=Object.prototype;function n(i){var s=i&&i.constructor,o=typeof s=="function"&&s.prototype||e;return i===o}return Pf=n,Pf}var qf,W1;function Kb(){if(W1)return qf;W1=1;function e(n,i){return function(s){return n(i(s))}}return qf=e,qf}var Of,G1;function Hq(){if(G1)return Of;G1=1;var e=Kb(),n=e(Object.keys,Object);return Of=n,Of}var Lf,K1;function Dg(){if(K1)return Lf;K1=1;var e=gu(),n=Hq(),i=Object.prototype,s=i.hasOwnProperty;function o(u){if(!e(u))return n(u);var l=[];for(var c in Object(u))s.call(u,c)&&c!="constructor"&&l.push(c);return l}return Lf=o,Lf}var $f,Y1;function or(){if(Y1)return $f;Y1=1;var e=ho(),n=Lg();function i(s){return s!=null&&n(s.length)&&!e(s)}return $f=i,$f}var Df,X1;function Lr(){if(X1)return Df;X1=1;var e=Gb(),n=Dg(),i=or();function s(o){return i(o)?e(o):n(o)}return Df=s,Df}var Ff,Q1;function Vq(){if(Q1)return Ff;Q1=1;var e=po(),n=Lr();function i(s,o){return s&&e(o,n(o),s)}return Ff=i,Ff}var zf,Z1;function Wq(){if(Z1)return zf;Z1=1;function e(n){var i=[];if(n!=null)for(var s in Object(n))i.push(s);return i}return zf=e,zf}var Bf,J1;function Gq(){if(J1)return Bf;J1=1;var e=_n(),n=gu(),i=Wq(),s=Object.prototype,o=s.hasOwnProperty;function u(l){if(!e(l))return i(l);var c=n(l),d=[];for(var p in l)p=="constructor"&&(c||!o.call(l,p))||d.push(p);return d}return Bf=u,Bf}var Uf,e_;function ui(){if(e_)return Uf;e_=1;var e=Gb(),n=Gq(),i=or();function s(o){return i(o)?e(o,!0):n(o)}return Uf=s,Uf}var Hf,t_;function Kq(){if(t_)return Hf;t_=1;var e=po(),n=ui();function i(s,o){return s&&e(o,n(o),s)}return Hf=i,Hf}var Xs={exports:{}};Xs.exports;var n_;function Yb(){return n_||(n_=1,(function(e,n){var i=On(),s=n&&!n.nodeType&&n,o=s&&!0&&e&&!e.nodeType&&e,u=o&&o.exports===s,l=u?i.Buffer:void 0,c=l?l.allocUnsafe:void 0;function d(p,h){if(h)return p.slice();var m=p.length,v=c?c(m):new p.constructor(m);return p.copy(v),v}e.exports=d})(Xs,Xs.exports)),Xs.exports}var Vf,r_;function Xb(){if(r_)return Vf;r_=1;function e(n,i){var s=-1,o=n.length;for(i||(i=Array(o));++s<o;)i[s]=n[s];return i}return Vf=e,Vf}var Wf,i_;function Qb(){if(i_)return Wf;i_=1;function e(n,i){for(var s=-1,o=n==null?0:n.length,u=0,l=[];++s<o;){var c=n[s];i(c,s,n)&&(l[u++]=c)}return l}return Wf=e,Wf}var Gf,s_;function Zb(){if(s_)return Gf;s_=1;function e(){return[]}return Gf=e,Gf}var Kf,o_;function Fg(){if(o_)return Kf;o_=1;var e=Qb(),n=Zb(),i=Object.prototype,s=i.propertyIsEnumerable,o=Object.getOwnPropertySymbols,u=o?function(l){return l==null?[]:(l=Object(l),e(o(l),function(c){return s.call(l,c)}))}:n;return Kf=u,Kf}var Yf,a_;function Yq(){if(a_)return Yf;a_=1;var e=po(),n=Fg();function i(s,o){return e(s,n(s),o)}return Yf=i,Yf}var Xf,u_;function zg(){if(u_)return Xf;u_=1;function e(n,i){for(var s=-1,o=i.length,u=n.length;++s<o;)n[u+s]=i[s];return n}return Xf=e,Xf}var Qf,l_;function vu(){if(l_)return Qf;l_=1;var e=Kb(),n=e(Object.getPrototypeOf,Object);return Qf=n,Qf}var Zf,c_;function Jb(){if(c_)return Zf;c_=1;var e=zg(),n=vu(),i=Fg(),s=Zb(),o=Object.getOwnPropertySymbols,u=o?function(l){for(var c=[];l;)e(c,i(l)),l=n(l);return c}:s;return Zf=u,Zf}var Jf,f_;function Xq(){if(f_)return Jf;f_=1;var e=po(),n=Jb();function i(s,o){return e(s,n(s),o)}return Jf=i,Jf}var ed,d_;function eN(){if(d_)return ed;d_=1;var e=zg(),n=wt();function i(s,o,u){var l=o(s);return n(s)?l:e(l,u(s))}return ed=i,ed}var td,h_;function tN(){if(h_)return td;h_=1;var e=eN(),n=Fg(),i=Lr();function s(o){return e(o,i,n)}return td=s,td}var nd,p_;function Qq(){if(p_)return nd;p_=1;var e=eN(),n=Jb(),i=ui();function s(o){return e(o,i,n)}return nd=s,nd}var rd,m_;function Zq(){if(m_)return rd;m_=1;var e=ai(),n=On(),i=e(n,"DataView");return rd=i,rd}var id,g_;function Jq(){if(g_)return id;g_=1;var e=ai(),n=On(),i=e(n,"Promise");return id=i,id}var sd,v_;function nN(){if(v_)return sd;v_=1;var e=ai(),n=On(),i=e(n,"Set");return sd=i,sd}var od,y_;function e3(){if(y_)return od;y_=1;var e=ai(),n=On(),i=e(n,"WeakMap");return od=i,od}var ad,w_;function ns(){if(w_)return ad;w_=1;var e=Zq(),n=Pg(),i=Jq(),s=nN(),o=e3(),u=oi(),l=Vb(),c="[object Map]",d="[object Object]",p="[object Promise]",h="[object Set]",m="[object WeakMap]",v="[object DataView]",w=l(e),b=l(n),x=l(i),k=l(s),S=l(o),E=u;return(e&&E(new e(new ArrayBuffer(1)))!=v||n&&E(new n)!=c||i&&E(i.resolve())!=p||s&&E(new s)!=h||o&&E(new o)!=m)&&(E=function(T){var C=u(T),j=C==d?T.constructor:void 0,M=j?l(j):"";if(M)switch(M){case w:return v;case b:return c;case x:return p;case k:return h;case S:return m}return C}),ad=E,ad}var ud,__;function t3(){if(__)return ud;__=1;var e=Object.prototype,n=e.hasOwnProperty;function i(s){var o=s.length,u=new s.constructor(o);return o&&typeof s[0]=="string"&&n.call(s,"index")&&(u.index=s.index,u.input=s.input),u}return ud=i,ud}var ld,x_;function rN(){if(x_)return ld;x_=1;var e=On(),n=e.Uint8Array;return ld=n,ld}var cd,S_;function Bg(){if(S_)return cd;S_=1;var e=rN();function n(i){var s=new i.constructor(i.byteLength);return new e(s).set(new e(i)),s}return cd=n,cd}var fd,k_;function n3(){if(k_)return fd;k_=1;var e=Bg();function n(i,s){var o=s?e(i.buffer):i.buffer;return new i.constructor(o,i.byteOffset,i.byteLength)}return fd=n,fd}var dd,E_;function r3(){if(E_)return dd;E_=1;var e=/\w*$/;function n(i){var s=new i.constructor(i.source,e.exec(i));return s.lastIndex=i.lastIndex,s}return dd=n,dd}var hd,b_;function i3(){if(b_)return hd;b_=1;var e=es(),n=e?e.prototype:void 0,i=n?n.valueOf:void 0;function s(o){return i?Object(i.call(o)):{}}return hd=s,hd}var pd,N_;function iN(){if(N_)return pd;N_=1;var e=Bg();function n(i,s){var o=s?e(i.buffer):i.buffer;return new i.constructor(o,i.byteOffset,i.length)}return pd=n,pd}var md,C_;function s3(){if(C_)return md;C_=1;var e=Bg(),n=n3(),i=r3(),s=i3(),o=iN(),u="[object Boolean]",l="[object Date]",c="[object Map]",d="[object Number]",p="[object RegExp]",h="[object Set]",m="[object String]",v="[object Symbol]",w="[object ArrayBuffer]",b="[object DataView]",x="[object Float32Array]",k="[object Float64Array]",S="[object Int8Array]",E="[object Int16Array]",T="[object Int32Array]",C="[object Uint8Array]",j="[object Uint8ClampedArray]",M="[object Uint16Array]",A="[object Uint32Array]";function D(L,U,H){var Q=L.constructor;switch(U){case w:return e(L);case u:case l:return new Q(+L);case b:return n(L,H);case x:case k:case S:case E:case T:case C:case j:case M:case A:return o(L,H);case c:return new Q;case d:case m:return new Q(L);case p:return i(L);case h:return new Q;case v:return s(L)}}return md=D,md}var gd,T_;function sN(){if(T_)return gd;T_=1;var e=_n(),n=Object.create,i=(function(){function s(){}return function(o){if(!e(o))return{};if(n)return n(o);s.prototype=o;var u=new s;return s.prototype=void 0,u}})();return gd=i,gd}var vd,R_;function oN(){if(R_)return vd;R_=1;var e=sN(),n=vu(),i=gu();function s(o){return typeof o.constructor=="function"&&!i(o)?e(n(o)):{}}return vd=s,vd}var yd,A_;function o3(){if(A_)return yd;A_=1;var e=ns(),n=Un(),i="[object Map]";function s(o){return n(o)&&e(o)==i}return yd=s,yd}var wd,j_;function a3(){if(j_)return wd;j_=1;var e=o3(),n=mu(),i=$g(),s=i&&i.isMap,o=s?n(s):e;return wd=o,wd}var _d,I_;function u3(){if(I_)return _d;I_=1;var e=ns(),n=Un(),i="[object Set]";function s(o){return n(o)&&e(o)==i}return _d=s,_d}var xd,M_;function l3(){if(M_)return xd;M_=1;var e=u3(),n=mu(),i=$g(),s=i&&i.isSet,o=s?n(s):e;return xd=o,xd}var Sd,P_;function aN(){if(P_)return Sd;P_=1;var e=fu(),n=Og(),i=hu(),s=Vq(),o=Kq(),u=Yb(),l=Xb(),c=Yq(),d=Xq(),p=tN(),h=Qq(),m=ns(),v=t3(),w=s3(),b=oN(),x=wt(),k=ts(),S=a3(),E=_n(),T=l3(),C=Lr(),j=ui(),M=1,A=2,D=4,L="[object Arguments]",U="[object Array]",H="[object Boolean]",Q="[object Date]",ee="[object Error]",R="[object Function]",G="[object GeneratorFunction]",B="[object Map]",X="[object Number]",Y="[object Object]",q="[object RegExp]",V="[object Set]",I="[object String]",z="[object Symbol]",ae="[object WeakMap]",$="[object ArrayBuffer]",K="[object DataView]",Z="[object Float32Array]",oe="[object Float64Array]",ce="[object Int8Array]",pe="[object Int16Array]",ge="[object Int32Array]",Me="[object Uint8Array]",Ie="[object Uint8ClampedArray]",Pe="[object Uint16Array]",je="[object Uint32Array]",be={};be[L]=be[U]=be[$]=be[K]=be[H]=be[Q]=be[Z]=be[oe]=be[ce]=be[pe]=be[ge]=be[B]=be[X]=be[Y]=be[q]=be[V]=be[I]=be[z]=be[Me]=be[Ie]=be[Pe]=be[je]=!0,be[ee]=be[R]=be[ae]=!1;function Ve(ye,we,Be,st,lt,We){var Ge,ht=we&M,Rt=we&A,Ut=we&D;if(Be&&(Ge=lt?Be(ye,st,lt,We):Be(ye)),Ge!==void 0)return Ge;if(!E(ye))return ye;var pt=x(ye);if(pt){if(Ge=v(ye),!ht)return l(ye,Ge)}else{var ct=m(ye),Ht=ct==R||ct==G;if(k(ye))return u(ye,ht);if(ct==Y||ct==L||Ht&&!lt){if(Ge=Rt||Ht?{}:b(ye),!ht)return Rt?d(ye,o(Ge,ye)):c(ye,s(Ge,ye))}else{if(!be[ct])return lt?ye:{};Ge=w(ye,ct,ht)}}We||(We=new e);var At=We.get(ye);if(At)return At;We.set(ye,Ge),T(ye)?ye.forEach(function(Ye){Ge.add(Ve(Ye,we,Be,Ye,ye,We))}):S(ye)&&ye.forEach(function(Ye,ot){Ge.set(ot,Ve(Ye,we,Be,ot,ye,We))});var Le=Ut?Rt?h:p:Rt?j:C,mt=pt?void 0:Le(ye);return n(mt||ye,function(Ye,ot){mt&&(ot=Ye,Ye=ye[ot]),i(Ge,ot,Ve(Ye,we,Be,ot,ye,We))}),Ge}return Sd=Ve,Sd}var kd,q_;function c3(){if(q_)return kd;q_=1;var e=aN(),n=4;function i(s){return e(s,n)}return kd=i,kd}var Ed,O_;function Ug(){if(O_)return Ed;O_=1;function e(n){return function(){return n}}return Ed=e,Ed}var bd,L_;function f3(){if(L_)return bd;L_=1;function e(n){return function(i,s,o){for(var u=-1,l=Object(i),c=o(i),d=c.length;d--;){var p=c[n?d:++u];if(s(l[p],p,l)===!1)break}return i}}return bd=e,bd}var Nd,$_;function Hg(){if($_)return Nd;$_=1;var e=f3(),n=e();return Nd=n,Nd}var Cd,D_;function Vg(){if(D_)return Cd;D_=1;var e=Hg(),n=Lr();function i(s,o){return s&&e(s,o,n)}return Cd=i,Cd}var Td,F_;function d3(){if(F_)return Td;F_=1;var e=or();function n(i,s){return function(o,u){if(o==null)return o;if(!e(o))return i(o,u);for(var l=o.length,c=s?l:-1,d=Object(o);(s?c--:++c<l)&&u(d[c],c,d)!==!1;);return o}}return Td=n,Td}var Rd,z_;function yu(){if(z_)return Rd;z_=1;var e=Vg(),n=d3(),i=n(e);return Rd=i,Rd}var Ad,B_;function li(){if(B_)return Ad;B_=1;function e(n){return n}return Ad=e,Ad}var jd,U_;function uN(){if(U_)return jd;U_=1;var e=li();function n(i){return typeof i=="function"?i:e}return jd=n,jd}var Id,H_;function lN(){if(H_)return Id;H_=1;var e=Og(),n=yu(),i=uN(),s=wt();function o(u,l){var c=s(u)?e:n;return c(u,i(l))}return Id=o,Id}var Md,V_;function cN(){return V_||(V_=1,Md=lN()),Md}var Pd,W_;function h3(){if(W_)return Pd;W_=1;var e=yu();function n(i,s){var o=[];return e(i,function(u,l,c){s(u,l,c)&&o.push(u)}),o}return Pd=n,Pd}var qd,G_;function p3(){if(G_)return qd;G_=1;var e="__lodash_hash_undefined__";function n(i){return this.__data__.set(i,e),this}return qd=n,qd}var Od,K_;function m3(){if(K_)return Od;K_=1;function e(n){return this.__data__.has(n)}return Od=e,Od}var Ld,Y_;function fN(){if(Y_)return Ld;Y_=1;var e=qg(),n=p3(),i=m3();function s(o){var u=-1,l=o==null?0:o.length;for(this.__data__=new e;++u<l;)this.add(o[u])}return s.prototype.add=s.prototype.push=n,s.prototype.has=i,Ld=s,Ld}var $d,X_;function g3(){if(X_)return $d;X_=1;function e(n,i){for(var s=-1,o=n==null?0:n.length;++s<o;)if(i(n[s],s,n))return!0;return!1}return $d=e,$d}var Dd,Q_;function dN(){if(Q_)return Dd;Q_=1;function e(n,i){return n.has(i)}return Dd=e,Dd}var Fd,Z_;function hN(){if(Z_)return Fd;Z_=1;var e=fN(),n=g3(),i=dN(),s=1,o=2;function u(l,c,d,p,h,m){var v=d&s,w=l.length,b=c.length;if(w!=b&&!(v&&b>w))return!1;var x=m.get(l),k=m.get(c);if(x&&k)return x==c&&k==l;var S=-1,E=!0,T=d&o?new e:void 0;for(m.set(l,c),m.set(c,l);++S<w;){var C=l[S],j=c[S];if(p)var M=v?p(j,C,S,c,l,m):p(C,j,S,l,c,m);if(M!==void 0){if(M)continue;E=!1;break}if(T){if(!n(c,function(A,D){if(!i(T,D)&&(C===A||h(C,A,d,p,m)))return T.push(D)})){E=!1;break}}else if(!(C===j||h(C,j,d,p,m))){E=!1;break}}return m.delete(l),m.delete(c),E}return Fd=u,Fd}var zd,J_;function v3(){if(J_)return zd;J_=1;function e(n){var i=-1,s=Array(n.size);return n.forEach(function(o,u){s[++i]=[u,o]}),s}return zd=e,zd}var Bd,ex;function Wg(){if(ex)return Bd;ex=1;function e(n){var i=-1,s=Array(n.size);return n.forEach(function(o){s[++i]=o}),s}return Bd=e,Bd}var Ud,tx;function y3(){if(tx)return Ud;tx=1;var e=es(),n=rN(),i=Ji(),s=hN(),o=v3(),u=Wg(),l=1,c=2,d="[object Boolean]",p="[object Date]",h="[object Error]",m="[object Map]",v="[object Number]",w="[object RegExp]",b="[object Set]",x="[object String]",k="[object Symbol]",S="[object ArrayBuffer]",E="[object DataView]",T=e?e.prototype:void 0,C=T?T.valueOf:void 0;function j(M,A,D,L,U,H,Q){switch(D){case E:if(M.byteLength!=A.byteLength||M.byteOffset!=A.byteOffset)return!1;M=M.buffer,A=A.buffer;case S:return!(M.byteLength!=A.byteLength||!H(new n(M),new n(A)));case d:case p:case v:return i(+M,+A);case h:return M.name==A.name&&M.message==A.message;case w:case x:return M==A+"";case m:var ee=o;case b:var R=L&l;if(ee||(ee=u),M.size!=A.size&&!R)return!1;var G=Q.get(M);if(G)return G==A;L|=c,Q.set(M,A);var B=s(ee(M),ee(A),L,U,H,Q);return Q.delete(M),B;case k:if(C)return C.call(M)==C.call(A)}return!1}return Ud=j,Ud}var Hd,nx;function w3(){if(nx)return Hd;nx=1;var e=tN(),n=1,i=Object.prototype,s=i.hasOwnProperty;function o(u,l,c,d,p,h){var m=c&n,v=e(u),w=v.length,b=e(l),x=b.length;if(w!=x&&!m)return!1;for(var k=w;k--;){var S=v[k];if(!(m?S in l:s.call(l,S)))return!1}var E=h.get(u),T=h.get(l);if(E&&T)return E==l&&T==u;var C=!0;h.set(u,l),h.set(l,u);for(var j=m;++k<w;){S=v[k];var M=u[S],A=l[S];if(d)var D=m?d(A,M,S,l,u,h):d(M,A,S,u,l,h);if(!(D===void 0?M===A||p(M,A,c,d,h):D)){C=!1;break}j||(j=S=="constructor")}if(C&&!j){var L=u.constructor,U=l.constructor;L!=U&&"constructor"in u&&"constructor"in l&&!(typeof L=="function"&&L instanceof L&&typeof U=="function"&&U instanceof U)&&(C=!1)}return h.delete(u),h.delete(l),C}return Hd=o,Hd}var Vd,rx;function _3(){if(rx)return Vd;rx=1;var e=fu(),n=hN(),i=y3(),s=w3(),o=ns(),u=wt(),l=ts(),c=go(),d=1,p="[object Arguments]",h="[object Array]",m="[object Object]",v=Object.prototype,w=v.hasOwnProperty;function b(x,k,S,E,T,C){var j=u(x),M=u(k),A=j?h:o(x),D=M?h:o(k);A=A==p?m:A,D=D==p?m:D;var L=A==m,U=D==m,H=A==D;if(H&&l(x)){if(!l(k))return!1;j=!0,L=!1}if(H&&!L)return C||(C=new e),j||c(x)?n(x,k,S,E,T,C):i(x,k,A,S,E,T,C);if(!(S&d)){var Q=L&&w.call(x,"__wrapped__"),ee=U&&w.call(k,"__wrapped__");if(Q||ee){var R=Q?x.value():x,G=ee?k.value():k;return C||(C=new e),T(R,G,S,E,C)}}return H?(C||(C=new e),s(x,k,S,E,T,C)):!1}return Vd=b,Vd}var Wd,ix;function pN(){if(ix)return Wd;ix=1;var e=_3(),n=Un();function i(s,o,u,l,c){return s===o?!0:s==null||o==null||!n(s)&&!n(o)?s!==s&&o!==o:e(s,o,u,l,i,c)}return Wd=i,Wd}var Gd,sx;function x3(){if(sx)return Gd;sx=1;var e=fu(),n=pN(),i=1,s=2;function o(u,l,c,d){var p=c.length,h=p,m=!d;if(u==null)return!h;for(u=Object(u);p--;){var v=c[p];if(m&&v[2]?v[1]!==u[v[0]]:!(v[0]in u))return!1}for(;++p<h;){v=c[p];var w=v[0],b=u[w],x=v[1];if(m&&v[2]){if(b===void 0&&!(w in u))return!1}else{var k=new e;if(d)var S=d(b,x,w,u,l,k);if(!(S===void 0?n(x,b,i|s,d,k):S))return!1}}return!0}return Gd=o,Gd}var Kd,ox;function mN(){if(ox)return Kd;ox=1;var e=_n();function n(i){return i===i&&!e(i)}return Kd=n,Kd}var Yd,ax;function S3(){if(ax)return Yd;ax=1;var e=mN(),n=Lr();function i(s){for(var o=n(s),u=o.length;u--;){var l=o[u],c=s[l];o[u]=[l,c,e(c)]}return o}return Yd=i,Yd}var Xd,ux;function gN(){if(ux)return Xd;ux=1;function e(n,i){return function(s){return s==null?!1:s[n]===i&&(i!==void 0||n in Object(s))}}return Xd=e,Xd}var Qd,lx;function k3(){if(lx)return Qd;lx=1;var e=x3(),n=S3(),i=gN();function s(o){var u=n(o);return u.length==1&&u[0][2]?i(u[0][0],u[0][1]):function(l){return l===o||e(l,o,u)}}return Qd=s,Qd}var Zd,cx;function rs(){if(cx)return Zd;cx=1;var e=oi(),n=Un(),i="[object Symbol]";function s(o){return typeof o=="symbol"||n(o)&&e(o)==i}return Zd=s,Zd}var Jd,fx;function Gg(){if(fx)return Jd;fx=1;var e=wt(),n=rs(),i=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,s=/^\w*$/;function o(u,l){if(e(u))return!1;var c=typeof u;return c=="number"||c=="symbol"||c=="boolean"||u==null||n(u)?!0:s.test(u)||!i.test(u)||l!=null&&u in Object(l)}return Jd=o,Jd}var eh,dx;function E3(){if(dx)return eh;dx=1;var e=qg(),n="Expected a function";function i(s,o){if(typeof s!="function"||o!=null&&typeof o!="function")throw new TypeError(n);var u=function(){var l=arguments,c=o?o.apply(this,l):l[0],d=u.cache;if(d.has(c))return d.get(c);var p=s.apply(this,l);return u.cache=d.set(c,p)||d,p};return u.cache=new(i.Cache||e),u}return i.Cache=e,eh=i,eh}var th,hx;function b3(){if(hx)return th;hx=1;var e=E3(),n=500;function i(s){var o=e(s,function(l){return u.size===n&&u.clear(),l}),u=o.cache;return o}return th=i,th}var nh,px;function N3(){if(px)return nh;px=1;var e=b3(),n=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,i=/\\(\\)?/g,s=e(function(o){var u=[];return o.charCodeAt(0)===46&&u.push(""),o.replace(n,function(l,c,d,p){u.push(d?p.replace(i,"$1"):c||l)}),u});return nh=s,nh}var rh,mx;function wu(){if(mx)return rh;mx=1;function e(n,i){for(var s=-1,o=n==null?0:n.length,u=Array(o);++s<o;)u[s]=i(n[s],s,n);return u}return rh=e,rh}var ih,gx;function C3(){if(gx)return ih;gx=1;var e=es(),n=wu(),i=wt(),s=rs(),o=e?e.prototype:void 0,u=o?o.toString:void 0;function l(c){if(typeof c=="string")return c;if(i(c))return n(c,l)+"";if(s(c))return u?u.call(c):"";var d=c+"";return d=="0"&&1/c==-1/0?"-0":d}return ih=l,ih}var sh,vx;function vN(){if(vx)return sh;vx=1;var e=C3();function n(i){return i==null?"":e(i)}return sh=n,sh}var oh,yx;function _u(){if(yx)return oh;yx=1;var e=wt(),n=Gg(),i=N3(),s=vN();function o(u,l){return e(u)?u:n(u,l)?[u]:i(s(u))}return oh=o,oh}var ah,wx;function vo(){if(wx)return ah;wx=1;var e=rs();function n(i){if(typeof i=="string"||e(i))return i;var s=i+"";return s=="0"&&1/i==-1/0?"-0":s}return ah=n,ah}var uh,_x;function xu(){if(_x)return uh;_x=1;var e=_u(),n=vo();function i(s,o){o=e(o,s);for(var u=0,l=o.length;s!=null&&u<l;)s=s[n(o[u++])];return u&&u==l?s:void 0}return uh=i,uh}var lh,xx;function T3(){if(xx)return lh;xx=1;var e=xu();function n(i,s,o){var u=i==null?void 0:e(i,s);return u===void 0?o:u}return lh=n,lh}var ch,Sx;function R3(){if(Sx)return ch;Sx=1;function e(n,i){return n!=null&&i in Object(n)}return ch=e,ch}var fh,kx;function yN(){if(kx)return fh;kx=1;var e=_u(),n=mo(),i=wt(),s=pu(),o=Lg(),u=vo();function l(c,d,p){d=e(d,c);for(var h=-1,m=d.length,v=!1;++h<m;){var w=u(d[h]);if(!(v=c!=null&&p(c,w)))break;c=c[w]}return v||++h!=m?v:(m=c==null?0:c.length,!!m&&o(m)&&s(w,m)&&(i(c)||n(c)))}return fh=l,fh}var dh,Ex;function wN(){if(Ex)return dh;Ex=1;var e=R3(),n=yN();function i(s,o){return s!=null&&n(s,o,e)}return dh=i,dh}var hh,bx;function A3(){if(bx)return hh;bx=1;var e=pN(),n=T3(),i=wN(),s=Gg(),o=mN(),u=gN(),l=vo(),c=1,d=2;function p(h,m){return s(h)&&o(m)?u(l(h),m):function(v){var w=n(v,h);return w===void 0&&w===m?i(v,h):e(m,w,c|d)}}return hh=p,hh}var ph,Nx;function _N(){if(Nx)return ph;Nx=1;function e(n){return function(i){return i==null?void 0:i[n]}}return ph=e,ph}var mh,Cx;function j3(){if(Cx)return mh;Cx=1;var e=xu();function n(i){return function(s){return e(s,i)}}return mh=n,mh}var gh,Tx;function I3(){if(Tx)return gh;Tx=1;var e=_N(),n=j3(),i=Gg(),s=vo();function o(u){return i(u)?e(s(u)):n(u)}return gh=o,gh}var vh,Rx;function ar(){if(Rx)return vh;Rx=1;var e=k3(),n=A3(),i=li(),s=wt(),o=I3();function u(l){return typeof l=="function"?l:l==null?i:typeof l=="object"?s(l)?n(l[0],l[1]):e(l):o(l)}return vh=u,vh}var yh,Ax;function xN(){if(Ax)return yh;Ax=1;var e=Qb(),n=h3(),i=ar(),s=wt();function o(u,l){var c=s(u)?e:n;return c(u,i(l,3))}return yh=o,yh}var wh,jx;function M3(){if(jx)return wh;jx=1;var e=Object.prototype,n=e.hasOwnProperty;function i(s,o){return s!=null&&n.call(s,o)}return wh=i,wh}var _h,Ix;function SN(){if(Ix)return _h;Ix=1;var e=M3(),n=yN();function i(s,o){return s!=null&&n(s,o,e)}return _h=i,_h}var xh,Mx;function P3(){if(Mx)return xh;Mx=1;var e=Dg(),n=ns(),i=mo(),s=wt(),o=or(),u=ts(),l=gu(),c=go(),d="[object Map]",p="[object Set]",h=Object.prototype,m=h.hasOwnProperty;function v(w){if(w==null)return!0;if(o(w)&&(s(w)||typeof w=="string"||typeof w.splice=="function"||u(w)||c(w)||i(w)))return!w.length;var b=n(w);if(b==d||b==p)return!w.size;if(l(w))return!e(w).length;for(var x in w)if(m.call(w,x))return!1;return!0}return xh=v,xh}var Sh,Px;function kN(){if(Px)return Sh;Px=1;function e(n){return n===void 0}return Sh=e,Sh}var kh,qx;function EN(){if(qx)return kh;qx=1;var e=yu(),n=or();function i(s,o){var u=-1,l=n(s)?Array(s.length):[];return e(s,function(c,d,p){l[++u]=o(c,d,p)}),l}return kh=i,kh}var Eh,Ox;function bN(){if(Ox)return Eh;Ox=1;var e=wu(),n=ar(),i=EN(),s=wt();function o(u,l){var c=s(u)?e:i;return c(u,n(l,3))}return Eh=o,Eh}var bh,Lx;function q3(){if(Lx)return bh;Lx=1;function e(n,i,s,o){var u=-1,l=n==null?0:n.length;for(o&&l&&(s=n[++u]);++u<l;)s=i(s,n[u],u,n);return s}return bh=e,bh}var Nh,$x;function O3(){if($x)return Nh;$x=1;function e(n,i,s,o,u){return u(n,function(l,c,d){s=o?(o=!1,l):i(s,l,c,d)}),s}return Nh=e,Nh}var Ch,Dx;function NN(){if(Dx)return Ch;Dx=1;var e=q3(),n=yu(),i=ar(),s=O3(),o=wt();function u(l,c,d){var p=o(l)?e:s,h=arguments.length<3;return p(l,i(c,4),d,h,n)}return Ch=u,Ch}var Th,Fx;function L3(){if(Fx)return Th;Fx=1;var e=oi(),n=wt(),i=Un(),s="[object String]";function o(u){return typeof u=="string"||!n(u)&&i(u)&&e(u)==s}return Th=o,Th}var Rh,zx;function $3(){if(zx)return Rh;zx=1;var e=_N(),n=e("length");return Rh=n,Rh}var Ah,Bx;function D3(){if(Bx)return Ah;Bx=1;var e="\\ud800-\\udfff",n="\\u0300-\\u036f",i="\\ufe20-\\ufe2f",s="\\u20d0-\\u20ff",o=n+i+s,u="\\ufe0e\\ufe0f",l="\\u200d",c=RegExp("["+l+e+o+u+"]");function d(p){return c.test(p)}return Ah=d,Ah}var jh,Ux;function F3(){if(Ux)return jh;Ux=1;var e="\\ud800-\\udfff",n="\\u0300-\\u036f",i="\\ufe20-\\ufe2f",s="\\u20d0-\\u20ff",o=n+i+s,u="\\ufe0e\\ufe0f",l="["+e+"]",c="["+o+"]",d="\\ud83c[\\udffb-\\udfff]",p="(?:"+c+"|"+d+")",h="[^"+e+"]",m="(?:\\ud83c[\\udde6-\\uddff]){2}",v="[\\ud800-\\udbff][\\udc00-\\udfff]",w="\\u200d",b=p+"?",x="["+u+"]?",k="(?:"+w+"(?:"+[h,m,v].join("|")+")"+x+b+")*",S=x+b+k,E="(?:"+[h+c+"?",c,m,v,l].join("|")+")",T=RegExp(d+"(?="+d+")|"+E+S,"g");function C(j){for(var M=T.lastIndex=0;T.test(j);)++M;return M}return jh=C,jh}var Ih,Hx;function z3(){if(Hx)return Ih;Hx=1;var e=$3(),n=D3(),i=F3();function s(o){return n(o)?i(o):e(o)}return Ih=s,Ih}var Mh,Vx;function B3(){if(Vx)return Mh;Vx=1;var e=Dg(),n=ns(),i=or(),s=L3(),o=z3(),u="[object Map]",l="[object Set]";function c(d){if(d==null)return 0;if(i(d))return s(d)?o(d):d.length;var p=n(d);return p==u||p==l?d.size:e(d).length}return Mh=c,Mh}var Ph,Wx;function U3(){if(Wx)return Ph;Wx=1;var e=Og(),n=sN(),i=Vg(),s=ar(),o=vu(),u=wt(),l=ts(),c=ho(),d=_n(),p=go();function h(m,v,w){var b=u(m),x=b||l(m)||p(m);if(v=s(v,4),w==null){var k=m&&m.constructor;x?w=b?new k:[]:d(m)?w=c(k)?n(o(m)):{}:w={}}return(x?e:i)(m,function(S,E,T){return v(w,S,E,T)}),w}return Ph=h,Ph}var qh,Gx;function H3(){if(Gx)return qh;Gx=1;var e=es(),n=mo(),i=wt(),s=e?e.isConcatSpreadable:void 0;function o(u){return i(u)||n(u)||!!(s&&u&&u[s])}return qh=o,qh}var Oh,Kx;function Kg(){if(Kx)return Oh;Kx=1;var e=zg(),n=H3();function i(s,o,u,l,c){var d=-1,p=s.length;for(u||(u=n),c||(c=[]);++d<p;){var h=s[d];o>0&&u(h)?o>1?i(h,o-1,u,l,c):e(c,h):l||(c[c.length]=h)}return c}return Oh=i,Oh}var Lh,Yx;function V3(){if(Yx)return Lh;Yx=1;function e(n,i,s){switch(s.length){case 0:return n.call(i);case 1:return n.call(i,s[0]);case 2:return n.call(i,s[0],s[1]);case 3:return n.call(i,s[0],s[1],s[2])}return n.apply(i,s)}return Lh=e,Lh}var $h,Xx;function CN(){if(Xx)return $h;Xx=1;var e=V3(),n=Math.max;function i(s,o,u){return o=n(o===void 0?s.length-1:o,0),function(){for(var l=arguments,c=-1,d=n(l.length-o,0),p=Array(d);++c<d;)p[c]=l[o+c];c=-1;for(var h=Array(o+1);++c<o;)h[c]=l[c];return h[o]=u(p),e(s,this,h)}}return $h=i,$h}var Dh,Qx;function W3(){if(Qx)return Dh;Qx=1;var e=Ug(),n=Wb(),i=li(),s=n?function(o,u){return n(o,"toString",{configurable:!0,enumerable:!1,value:e(u),writable:!0})}:i;return Dh=s,Dh}var Fh,Zx;function G3(){if(Zx)return Fh;Zx=1;var e=800,n=16,i=Date.now;function s(o){var u=0,l=0;return function(){var c=i(),d=n-(c-l);if(l=c,d>0){if(++u>=e)return arguments[0]}else u=0;return o.apply(void 0,arguments)}}return Fh=s,Fh}var zh,Jx;function TN(){if(Jx)return zh;Jx=1;var e=W3(),n=G3(),i=n(e);return zh=i,zh}var Bh,eS;function Su(){if(eS)return Bh;eS=1;var e=li(),n=CN(),i=TN();function s(o,u){return i(n(o,u,e),o+"")}return Bh=s,Bh}var Uh,tS;function RN(){if(tS)return Uh;tS=1;function e(n,i,s,o){for(var u=n.length,l=s+(o?1:-1);o?l--:++l<u;)if(i(n[l],l,n))return l;return-1}return Uh=e,Uh}var Hh,nS;function K3(){if(nS)return Hh;nS=1;function e(n){return n!==n}return Hh=e,Hh}var Vh,rS;function Y3(){if(rS)return Vh;rS=1;function e(n,i,s){for(var o=s-1,u=n.length;++o<u;)if(n[o]===i)return o;return-1}return Vh=e,Vh}var Wh,iS;function X3(){if(iS)return Wh;iS=1;var e=RN(),n=K3(),i=Y3();function s(o,u,l){return u===u?i(o,u,l):e(o,n,l)}return Wh=s,Wh}var Gh,sS;function Q3(){if(sS)return Gh;sS=1;var e=X3();function n(i,s){var o=i==null?0:i.length;return!!o&&e(i,s,0)>-1}return Gh=n,Gh}var Kh,oS;function Z3(){if(oS)return Kh;oS=1;function e(n,i,s){for(var o=-1,u=n==null?0:n.length;++o<u;)if(s(i,n[o]))return!0;return!1}return Kh=e,Kh}var Yh,aS;function J3(){if(aS)return Yh;aS=1;function e(){}return Yh=e,Yh}var Xh,uS;function eO(){if(uS)return Xh;uS=1;var e=nN(),n=J3(),i=Wg(),s=1/0,o=e&&1/i(new e([,-0]))[1]==s?function(u){return new e(u)}:n;return Xh=o,Xh}var Qh,lS;function tO(){if(lS)return Qh;lS=1;var e=fN(),n=Q3(),i=Z3(),s=dN(),o=eO(),u=Wg(),l=200;function c(d,p,h){var m=-1,v=n,w=d.length,b=!0,x=[],k=x;if(h)b=!1,v=i;else if(w>=l){var S=p?null:o(d);if(S)return u(S);b=!1,v=s,k=new e}else k=p?[]:x;e:for(;++m<w;){var E=d[m],T=p?p(E):E;if(E=h||E!==0?E:0,b&&T===T){for(var C=k.length;C--;)if(k[C]===T)continue e;p&&k.push(T),x.push(E)}else v(k,T,h)||(k!==x&&k.push(T),x.push(E))}return x}return Qh=c,Qh}var Zh,cS;function AN(){if(cS)return Zh;cS=1;var e=or(),n=Un();function i(s){return n(s)&&e(s)}return Zh=i,Zh}var Jh,fS;function nO(){if(fS)return Jh;fS=1;var e=Kg(),n=Su(),i=tO(),s=AN(),o=n(function(u){return i(e(u,1,s,!0))});return Jh=o,Jh}var ep,dS;function rO(){if(dS)return ep;dS=1;var e=wu();function n(i,s){return e(s,function(o){return i[o]})}return ep=n,ep}var tp,hS;function jN(){if(hS)return tp;hS=1;var e=rO(),n=Lr();function i(s){return s==null?[]:e(s,n(s))}return tp=i,tp}var np,pS;function xn(){if(pS)return np;pS=1;var e;if(typeof Mg=="function")try{e={clone:c3(),constant:Ug(),each:cN(),filter:xN(),has:SN(),isArray:wt(),isEmpty:P3(),isFunction:ho(),isUndefined:kN(),keys:Lr(),map:bN(),reduce:NN(),size:B3(),transform:U3(),union:nO(),values:jN()}}catch{}return e||(e=window._),np=e,np}var rp,mS;function Yg(){if(mS)return rp;mS=1;var e=xn();rp=o;var n="\0",i="\0",s="";function o(h){this._isDirected=e.has(h,"directed")?h.directed:!0,this._isMultigraph=e.has(h,"multigraph")?h.multigraph:!1,this._isCompound=e.has(h,"compound")?h.compound:!1,this._label=void 0,this._defaultNodeLabelFn=e.constant(void 0),this._defaultEdgeLabelFn=e.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[i]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}o.prototype._nodeCount=0,o.prototype._edgeCount=0,o.prototype.isDirected=function(){return this._isDirected},o.prototype.isMultigraph=function(){return this._isMultigraph},o.prototype.isCompound=function(){return this._isCompound},o.prototype.setGraph=function(h){return this._label=h,this},o.prototype.graph=function(){return this._label},o.prototype.setDefaultNodeLabel=function(h){return e.isFunction(h)||(h=e.constant(h)),this._defaultNodeLabelFn=h,this},o.prototype.nodeCount=function(){return this._nodeCount},o.prototype.nodes=function(){return e.keys(this._nodes)},o.prototype.sources=function(){var h=this;return e.filter(this.nodes(),function(m){return e.isEmpty(h._in[m])})},o.prototype.sinks=function(){var h=this;return e.filter(this.nodes(),function(m){return e.isEmpty(h._out[m])})},o.prototype.setNodes=function(h,m){var v=arguments,w=this;return e.each(h,function(b){v.length>1?w.setNode(b,m):w.setNode(b)}),this},o.prototype.setNode=function(h,m){return e.has(this._nodes,h)?(arguments.length>1&&(this._nodes[h]=m),this):(this._nodes[h]=arguments.length>1?m:this._defaultNodeLabelFn(h),this._isCompound&&(this._parent[h]=i,this._children[h]={},this._children[i][h]=!0),this._in[h]={},this._preds[h]={},this._out[h]={},this._sucs[h]={},++this._nodeCount,this)},o.prototype.node=function(h){return this._nodes[h]},o.prototype.hasNode=function(h){return e.has(this._nodes,h)},o.prototype.removeNode=function(h){var m=this;if(e.has(this._nodes,h)){var v=function(w){m.removeEdge(m._edgeObjs[w])};delete this._nodes[h],this._isCompound&&(this._removeFromParentsChildList(h),delete this._parent[h],e.each(this.children(h),function(w){m.setParent(w)}),delete this._children[h]),e.each(e.keys(this._in[h]),v),delete this._in[h],delete this._preds[h],e.each(e.keys(this._out[h]),v),delete this._out[h],delete this._sucs[h],--this._nodeCount}return this},o.prototype.setParent=function(h,m){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(e.isUndefined(m))m=i;else{m+="";for(var v=m;!e.isUndefined(v);v=this.parent(v))if(v===h)throw new Error("Setting "+m+" as parent of "+h+" would create a cycle");this.setNode(m)}return this.setNode(h),this._removeFromParentsChildList(h),this._parent[h]=m,this._children[m][h]=!0,this},o.prototype._removeFromParentsChildList=function(h){delete this._children[this._parent[h]][h]},o.prototype.parent=function(h){if(this._isCompound){var m=this._parent[h];if(m!==i)return m}},o.prototype.children=function(h){if(e.isUndefined(h)&&(h=i),this._isCompound){var m=this._children[h];if(m)return e.keys(m)}else{if(h===i)return this.nodes();if(this.hasNode(h))return[]}},o.prototype.predecessors=function(h){var m=this._preds[h];if(m)return e.keys(m)},o.prototype.successors=function(h){var m=this._sucs[h];if(m)return e.keys(m)},o.prototype.neighbors=function(h){var m=this.predecessors(h);if(m)return e.union(m,this.successors(h))},o.prototype.isLeaf=function(h){var m;return this.isDirected()?m=this.successors(h):m=this.neighbors(h),m.length===0},o.prototype.filterNodes=function(h){var m=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});m.setGraph(this.graph());var v=this;e.each(this._nodes,function(x,k){h(k)&&m.setNode(k,x)}),e.each(this._edgeObjs,function(x){m.hasNode(x.v)&&m.hasNode(x.w)&&m.setEdge(x,v.edge(x))});var w={};function b(x){var k=v.parent(x);return k===void 0||m.hasNode(k)?(w[x]=k,k):k in w?w[k]:b(k)}return this._isCompound&&e.each(m.nodes(),function(x){m.setParent(x,b(x))}),m},o.prototype.setDefaultEdgeLabel=function(h){return e.isFunction(h)||(h=e.constant(h)),this._defaultEdgeLabelFn=h,this},o.prototype.edgeCount=function(){return this._edgeCount},o.prototype.edges=function(){return e.values(this._edgeObjs)},o.prototype.setPath=function(h,m){var v=this,w=arguments;return e.reduce(h,function(b,x){return w.length>1?v.setEdge(b,x,m):v.setEdge(b,x),x}),this},o.prototype.setEdge=function(){var h,m,v,w,b=!1,x=arguments[0];typeof x=="object"&&x!==null&&"v"in x?(h=x.v,m=x.w,v=x.name,arguments.length===2&&(w=arguments[1],b=!0)):(h=x,m=arguments[1],v=arguments[3],arguments.length>2&&(w=arguments[2],b=!0)),h=""+h,m=""+m,e.isUndefined(v)||(v=""+v);var k=c(this._isDirected,h,m,v);if(e.has(this._edgeLabels,k))return b&&(this._edgeLabels[k]=w),this;if(!e.isUndefined(v)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(h),this.setNode(m),this._edgeLabels[k]=b?w:this._defaultEdgeLabelFn(h,m,v);var S=d(this._isDirected,h,m,v);return h=S.v,m=S.w,Object.freeze(S),this._edgeObjs[k]=S,u(this._preds[m],h),u(this._sucs[h],m),this._in[m][k]=S,this._out[h][k]=S,this._edgeCount++,this},o.prototype.edge=function(h,m,v){var w=arguments.length===1?p(this._isDirected,arguments[0]):c(this._isDirected,h,m,v);return this._edgeLabels[w]},o.prototype.hasEdge=function(h,m,v){var w=arguments.length===1?p(this._isDirected,arguments[0]):c(this._isDirected,h,m,v);return e.has(this._edgeLabels,w)},o.prototype.removeEdge=function(h,m,v){var w=arguments.length===1?p(this._isDirected,arguments[0]):c(this._isDirected,h,m,v),b=this._edgeObjs[w];return b&&(h=b.v,m=b.w,delete this._edgeLabels[w],delete this._edgeObjs[w],l(this._preds[m],h),l(this._sucs[h],m),delete this._in[m][w],delete this._out[h][w],this._edgeCount--),this},o.prototype.inEdges=function(h,m){var v=this._in[h];if(v){var w=e.values(v);return m?e.filter(w,function(b){return b.v===m}):w}},o.prototype.outEdges=function(h,m){var v=this._out[h];if(v){var w=e.values(v);return m?e.filter(w,function(b){return b.w===m}):w}},o.prototype.nodeEdges=function(h,m){var v=this.inEdges(h,m);if(v)return v.concat(this.outEdges(h,m))};function u(h,m){h[m]?h[m]++:h[m]=1}function l(h,m){--h[m]||delete h[m]}function c(h,m,v,w){var b=""+m,x=""+v;if(!h&&b>x){var k=b;b=x,x=k}return b+s+x+s+(e.isUndefined(w)?n:w)}function d(h,m,v,w){var b=""+m,x=""+v;if(!h&&b>x){var k=b;b=x,x=k}var S={v:b,w:x};return w&&(S.name=w),S}function p(h,m){return c(h,m.v,m.w,m.name)}return rp}var ip,gS;function iO(){return gS||(gS=1,ip="2.1.8"),ip}var sp,vS;function sO(){return vS||(vS=1,sp={Graph:Yg(),version:iO()}),sp}var op,yS;function oO(){if(yS)return op;yS=1;var e=xn(),n=Yg();op={write:i,read:u};function i(l){var c={options:{directed:l.isDirected(),multigraph:l.isMultigraph(),compound:l.isCompound()},nodes:s(l),edges:o(l)};return e.isUndefined(l.graph())||(c.value=e.clone(l.graph())),c}function s(l){return e.map(l.nodes(),function(c){var d=l.node(c),p=l.parent(c),h={v:c};return e.isUndefined(d)||(h.value=d),e.isUndefined(p)||(h.parent=p),h})}function o(l){return e.map(l.edges(),function(c){var d=l.edge(c),p={v:c.v,w:c.w};return e.isUndefined(c.name)||(p.name=c.name),e.isUndefined(d)||(p.value=d),p})}function u(l){var c=new n(l.options).setGraph(l.value);return e.each(l.nodes,function(d){c.setNode(d.v,d.value),d.parent&&c.setParent(d.v,d.parent)}),e.each(l.edges,function(d){c.setEdge({v:d.v,w:d.w,name:d.name},d.value)}),c}return op}var ap,wS;function aO(){if(wS)return ap;wS=1;var e=xn();ap=n;function n(i){var s={},o=[],u;function l(c){e.has(s,c)||(s[c]=!0,u.push(c),e.each(i.successors(c),l),e.each(i.predecessors(c),l))}return e.each(i.nodes(),function(c){u=[],l(c),u.length&&o.push(u)}),o}return ap}var up,_S;function IN(){if(_S)return up;_S=1;var e=xn();up=n;function n(){this._arr=[],this._keyIndices={}}return n.prototype.size=function(){return this._arr.length},n.prototype.keys=function(){return this._arr.map(function(i){return i.key})},n.prototype.has=function(i){return e.has(this._keyIndices,i)},n.prototype.priority=function(i){var s=this._keyIndices[i];if(s!==void 0)return this._arr[s].priority},n.prototype.min=function(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key},n.prototype.add=function(i,s){var o=this._keyIndices;if(i=String(i),!e.has(o,i)){var u=this._arr,l=u.length;return o[i]=l,u.push({key:i,priority:s}),this._decrease(l),!0}return!1},n.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var i=this._arr.pop();return delete this._keyIndices[i.key],this._heapify(0),i.key},n.prototype.decrease=function(i,s){var o=this._keyIndices[i];if(s>this._arr[o].priority)throw new Error("New priority is greater than current priority. Key: "+i+" Old: "+this._arr[o].priority+" New: "+s);this._arr[o].priority=s,this._decrease(o)},n.prototype._heapify=function(i){var s=this._arr,o=2*i,u=o+1,l=i;o<s.length&&(l=s[o].priority<s[l].priority?o:l,u<s.length&&(l=s[u].priority<s[l].priority?u:l),l!==i&&(this._swap(i,l),this._heapify(l)))},n.prototype._decrease=function(i){for(var s=this._arr,o=s[i].priority,u;i!==0&&(u=i>>1,!(s[u].priority<o));)this._swap(i,u),i=u},n.prototype._swap=function(i,s){var o=this._arr,u=this._keyIndices,l=o[i],c=o[s];o[i]=c,o[s]=l,u[c.key]=i,u[l.key]=s},up}var lp,xS;function MN(){if(xS)return lp;xS=1;var e=xn(),n=IN();lp=s;var i=e.constant(1);function s(u,l,c,d){return o(u,String(l),c||i,d||function(p){return u.outEdges(p)})}function o(u,l,c,d){var p={},h=new n,m,v,w=function(b){var x=b.v!==m?b.v:b.w,k=p[x],S=c(b),E=v.distance+S;if(S<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+b+" Weight: "+S);E<k.distance&&(k.distance=E,k.predecessor=m,h.decrease(x,E))};for(u.nodes().forEach(function(b){var x=b===l?0:Number.POSITIVE_INFINITY;p[b]={distance:x},h.add(b,x)});h.size()>0&&(m=h.removeMin(),v=p[m],v.distance!==Number.POSITIVE_INFINITY);)d(m).forEach(w);return p}return lp}var cp,SS;function uO(){if(SS)return cp;SS=1;var e=MN(),n=xn();cp=i;function i(s,o,u){return n.transform(s.nodes(),function(l,c){l[c]=e(s,c,o,u)},{})}return cp}var fp,kS;function PN(){if(kS)return fp;kS=1;var e=xn();fp=n;function n(i){var s=0,o=[],u={},l=[];function c(d){var p=u[d]={onStack:!0,lowlink:s,index:s++};if(o.push(d),i.successors(d).forEach(function(v){e.has(u,v)?u[v].onStack&&(p.lowlink=Math.min(p.lowlink,u[v].index)):(c(v),p.lowlink=Math.min(p.lowlink,u[v].lowlink))}),p.lowlink===p.index){var h=[],m;do m=o.pop(),u[m].onStack=!1,h.push(m);while(d!==m);l.push(h)}}return i.nodes().forEach(function(d){e.has(u,d)||c(d)}),l}return fp}var dp,ES;function lO(){if(ES)return dp;ES=1;var e=xn(),n=PN();dp=i;function i(s){return e.filter(n(s),function(o){return o.length>1||o.length===1&&s.hasEdge(o[0],o[0])})}return dp}var hp,bS;function cO(){if(bS)return hp;bS=1;var e=xn();hp=i;var n=e.constant(1);function i(o,u,l){return s(o,u||n,l||function(c){return o.outEdges(c)})}function s(o,u,l){var c={},d=o.nodes();return d.forEach(function(p){c[p]={},c[p][p]={distance:0},d.forEach(function(h){p!==h&&(c[p][h]={distance:Number.POSITIVE_INFINITY})}),l(p).forEach(function(h){var m=h.v===p?h.w:h.v,v=u(h);c[p][m]={distance:v,predecessor:p}})}),d.forEach(function(p){var h=c[p];d.forEach(function(m){var v=c[m];d.forEach(function(w){var b=v[p],x=h[w],k=v[w],S=b.distance+x.distance;S<k.distance&&(k.distance=S,k.predecessor=x.predecessor)})})}),c}return hp}var pp,NS;function qN(){if(NS)return pp;NS=1;var e=xn();pp=n,n.CycleException=i;function n(s){var o={},u={},l=[];function c(d){if(e.has(u,d))throw new i;e.has(o,d)||(u[d]=!0,o[d]=!0,e.each(s.predecessors(d),c),delete u[d],l.push(d))}if(e.each(s.sinks(),c),e.size(o)!==s.nodeCount())throw new i;return l}function i(){}return i.prototype=new Error,pp}var mp,CS;function fO(){if(CS)return mp;CS=1;var e=qN();mp=n;function n(i){try{e(i)}catch(s){if(s instanceof e.CycleException)return!1;throw s}return!0}return mp}var gp,TS;function ON(){if(TS)return gp;TS=1;var e=xn();gp=n;function n(s,o,u){e.isArray(o)||(o=[o]);var l=(s.isDirected()?s.successors:s.neighbors).bind(s),c=[],d={};return e.each(o,function(p){if(!s.hasNode(p))throw new Error("Graph does not have node: "+p);i(s,p,u==="post",d,l,c)}),c}function i(s,o,u,l,c,d){e.has(l,o)||(l[o]=!0,u||d.push(o),e.each(c(o),function(p){i(s,p,u,l,c,d)}),u&&d.push(o))}return gp}var vp,RS;function dO(){if(RS)return vp;RS=1;var e=ON();vp=n;function n(i,s){return e(i,s,"post")}return vp}var yp,AS;function hO(){if(AS)return yp;AS=1;var e=ON();yp=n;function n(i,s){return e(i,s,"pre")}return yp}var wp,jS;function pO(){if(jS)return wp;jS=1;var e=xn(),n=Yg(),i=IN();wp=s;function s(o,u){var l=new n,c={},d=new i,p;function h(v){var w=v.v===p?v.w:v.v,b=d.priority(w);if(b!==void 0){var x=u(v);x<b&&(c[w]=p,d.decrease(w,x))}}if(o.nodeCount()===0)return l;e.each(o.nodes(),function(v){d.add(v,Number.POSITIVE_INFINITY),l.setNode(v)}),d.decrease(o.nodes()[0],0);for(var m=!1;d.size()>0;){if(p=d.removeMin(),e.has(c,p))l.setEdge(p,c[p]);else{if(m)throw new Error("Input graph is not connected: "+o);m=!0}o.nodeEdges(p).forEach(h)}return l}return wp}var _p,IS;function mO(){return IS||(IS=1,_p={components:aO(),dijkstra:MN(),dijkstraAll:uO(),findCycles:lO(),floydWarshall:cO(),isAcyclic:fO(),postorder:dO(),preorder:hO(),prim:pO(),tarjan:PN(),topsort:qN()}),_p}var xp,MS;function gO(){if(MS)return xp;MS=1;var e=sO();return xp={Graph:e.Graph,json:oO(),alg:mO(),version:e.version},xp}var Sp,PS;function Pn(){if(PS)return Sp;PS=1;var e;if(typeof Mg=="function")try{e=gO()}catch{}return e||(e=window.graphlib),Sp=e,Sp}var kp,qS;function vO(){if(qS)return kp;qS=1;var e=aN(),n=1,i=4;function s(o){return e(o,n|i)}return kp=s,kp}var Ep,OS;function ku(){if(OS)return Ep;OS=1;var e=Ji(),n=or(),i=pu(),s=_n();function o(u,l,c){if(!s(c))return!1;var d=typeof l;return(d=="number"?n(c)&&i(l,c.length):d=="string"&&l in c)?e(c[l],u):!1}return Ep=o,Ep}var bp,LS;function yO(){if(LS)return bp;LS=1;var e=Su(),n=Ji(),i=ku(),s=ui(),o=Object.prototype,u=o.hasOwnProperty,l=e(function(c,d){c=Object(c);var p=-1,h=d.length,m=h>2?d[2]:void 0;for(m&&i(d[0],d[1],m)&&(h=1);++p<h;)for(var v=d[p],w=s(v),b=-1,x=w.length;++b<x;){var k=w[b],S=c[k];(S===void 0||n(S,o[k])&&!u.call(c,k))&&(c[k]=v[k])}return c});return bp=l,bp}var Np,$S;function wO(){if($S)return Np;$S=1;var e=ar(),n=or(),i=Lr();function s(o){return function(u,l,c){var d=Object(u);if(!n(u)){var p=e(l,3);u=i(u),l=function(m){return p(d[m],m,d)}}var h=o(u,l,c);return h>-1?d[p?u[h]:h]:void 0}}return Np=s,Np}var Cp,DS;function _O(){if(DS)return Cp;DS=1;var e=/\s/;function n(i){for(var s=i.length;s--&&e.test(i.charAt(s)););return s}return Cp=n,Cp}var Tp,FS;function xO(){if(FS)return Tp;FS=1;var e=_O(),n=/^\s+/;function i(s){return s&&s.slice(0,e(s)+1).replace(n,"")}return Tp=i,Tp}var Rp,zS;function SO(){if(zS)return Rp;zS=1;var e=xO(),n=_n(),i=rs(),s=NaN,o=/^[-+]0x[0-9a-f]+$/i,u=/^0b[01]+$/i,l=/^0o[0-7]+$/i,c=parseInt;function d(p){if(typeof p=="number")return p;if(i(p))return s;if(n(p)){var h=typeof p.valueOf=="function"?p.valueOf():p;p=n(h)?h+"":h}if(typeof p!="string")return p===0?p:+p;p=e(p);var m=u.test(p);return m||l.test(p)?c(p.slice(2),m?2:8):o.test(p)?s:+p}return Rp=d,Rp}var Ap,BS;function LN(){if(BS)return Ap;BS=1;var e=SO(),n=1/0,i=17976931348623157e292;function s(o){if(!o)return o===0?o:0;if(o=e(o),o===n||o===-n){var u=o<0?-1:1;return u*i}return o===o?o:0}return Ap=s,Ap}var jp,US;function kO(){if(US)return jp;US=1;var e=LN();function n(i){var s=e(i),o=s%1;return s===s?o?s-o:s:0}return jp=n,jp}var Ip,HS;function EO(){if(HS)return Ip;HS=1;var e=RN(),n=ar(),i=kO(),s=Math.max;function o(u,l,c){var d=u==null?0:u.length;if(!d)return-1;var p=c==null?0:i(c);return p<0&&(p=s(d+p,0)),e(u,n(l,3),p)}return Ip=o,Ip}var Mp,VS;function bO(){if(VS)return Mp;VS=1;var e=wO(),n=EO(),i=e(n);return Mp=i,Mp}var Pp,WS;function $N(){if(WS)return Pp;WS=1;var e=Kg();function n(i){var s=i==null?0:i.length;return s?e(i,1):[]}return Pp=n,Pp}var qp,GS;function NO(){if(GS)return qp;GS=1;var e=Hg(),n=uN(),i=ui();function s(o,u){return o==null?o:e(o,n(u),i)}return qp=s,qp}var Op,KS;function CO(){if(KS)return Op;KS=1;function e(n){var i=n==null?0:n.length;return i?n[i-1]:void 0}return Op=e,Op}var Lp,YS;function TO(){if(YS)return Lp;YS=1;var e=du(),n=Vg(),i=ar();function s(o,u){var l={};return u=i(u,3),n(o,function(c,d,p){e(l,d,u(c,d,p))}),l}return Lp=s,Lp}var $p,XS;function Xg(){if(XS)return $p;XS=1;var e=rs();function n(i,s,o){for(var u=-1,l=i.length;++u<l;){var c=i[u],d=s(c);if(d!=null&&(p===void 0?d===d&&!e(d):o(d,p)))var p=d,h=c}return h}return $p=n,$p}var Dp,QS;function RO(){if(QS)return Dp;QS=1;function e(n,i){return n>i}return Dp=e,Dp}var Fp,ZS;function AO(){if(ZS)return Fp;ZS=1;var e=Xg(),n=RO(),i=li();function s(o){return o&&o.length?e(o,i,n):void 0}return Fp=s,Fp}var zp,JS;function DN(){if(JS)return zp;JS=1;var e=du(),n=Ji();function i(s,o,u){(u!==void 0&&!n(s[o],u)||u===void 0&&!(o in s))&&e(s,o,u)}return zp=i,zp}var Bp,ek;function jO(){if(ek)return Bp;ek=1;var e=oi(),n=vu(),i=Un(),s="[object Object]",o=Function.prototype,u=Object.prototype,l=o.toString,c=u.hasOwnProperty,d=l.call(Object);function p(h){if(!i(h)||e(h)!=s)return!1;var m=n(h);if(m===null)return!0;var v=c.call(m,"constructor")&&m.constructor;return typeof v=="function"&&v instanceof v&&l.call(v)==d}return Bp=p,Bp}var Up,tk;function FN(){if(tk)return Up;tk=1;function e(n,i){if(!(i==="constructor"&&typeof n[i]=="function")&&i!="__proto__")return n[i]}return Up=e,Up}var Hp,nk;function IO(){if(nk)return Hp;nk=1;var e=po(),n=ui();function i(s){return e(s,n(s))}return Hp=i,Hp}var Vp,rk;function MO(){if(rk)return Vp;rk=1;var e=DN(),n=Yb(),i=iN(),s=Xb(),o=oN(),u=mo(),l=wt(),c=AN(),d=ts(),p=ho(),h=_n(),m=jO(),v=go(),w=FN(),b=IO();function x(k,S,E,T,C,j,M){var A=w(k,E),D=w(S,E),L=M.get(D);if(L){e(k,E,L);return}var U=j?j(A,D,E+"",k,S,M):void 0,H=U===void 0;if(H){var Q=l(D),ee=!Q&&d(D),R=!Q&&!ee&&v(D);U=D,Q||ee||R?l(A)?U=A:c(A)?U=s(A):ee?(H=!1,U=n(D,!0)):R?(H=!1,U=i(D,!0)):U=[]:m(D)||u(D)?(U=A,u(A)?U=b(A):(!h(A)||p(A))&&(U=o(D))):H=!1}H&&(M.set(D,U),C(U,D,T,j,M),M.delete(D)),e(k,E,U)}return Vp=x,Vp}var Wp,ik;function PO(){if(ik)return Wp;ik=1;var e=fu(),n=DN(),i=Hg(),s=MO(),o=_n(),u=ui(),l=FN();function c(d,p,h,m,v){d!==p&&i(p,function(w,b){if(v||(v=new e),o(w))s(d,p,b,h,c,m,v);else{var x=m?m(l(d,b),w,b+"",d,p,v):void 0;x===void 0&&(x=w),n(d,b,x)}},u)}return Wp=c,Wp}var Gp,sk;function qO(){if(sk)return Gp;sk=1;var e=Su(),n=ku();function i(s){return e(function(o,u){var l=-1,c=u.length,d=c>1?u[c-1]:void 0,p=c>2?u[2]:void 0;for(d=s.length>3&&typeof d=="function"?(c--,d):void 0,p&&n(u[0],u[1],p)&&(d=c<3?void 0:d,c=1),o=Object(o);++l<c;){var h=u[l];h&&s(o,h,l,d)}return o})}return Gp=i,Gp}var Kp,ok;function OO(){if(ok)return Kp;ok=1;var e=PO(),n=qO(),i=n(function(s,o,u){e(s,o,u)});return Kp=i,Kp}var Yp,ak;function zN(){if(ak)return Yp;ak=1;function e(n,i){return n<i}return Yp=e,Yp}var Xp,uk;function LO(){if(uk)return Xp;uk=1;var e=Xg(),n=zN(),i=li();function s(o){return o&&o.length?e(o,i,n):void 0}return Xp=s,Xp}var Qp,lk;function $O(){if(lk)return Qp;lk=1;var e=Xg(),n=ar(),i=zN();function s(o,u){return o&&o.length?e(o,n(u,2),i):void 0}return Qp=s,Qp}var Zp,ck;function DO(){if(ck)return Zp;ck=1;var e=On(),n=function(){return e.Date.now()};return Zp=n,Zp}var Jp,fk;function FO(){if(fk)return Jp;fk=1;var e=hu(),n=_u(),i=pu(),s=_n(),o=vo();function u(l,c,d,p){if(!s(l))return l;c=n(c,l);for(var h=-1,m=c.length,v=m-1,w=l;w!=null&&++h<m;){var b=o(c[h]),x=d;if(b==="__proto__"||b==="constructor"||b==="prototype")return l;if(h!=v){var k=w[b];x=p?p(k,b,w):void 0,x===void 0&&(x=s(k)?k:i(c[h+1])?[]:{})}e(w,b,x),w=w[b]}return l}return Jp=u,Jp}var em,dk;function zO(){if(dk)return em;dk=1;var e=xu(),n=FO(),i=_u();function s(o,u,l){for(var c=-1,d=u.length,p={};++c<d;){var h=u[c],m=e(o,h);l(m,h)&&n(p,i(h,o),m)}return p}return em=s,em}var tm,hk;function BO(){if(hk)return tm;hk=1;var e=zO(),n=wN();function i(s,o){return e(s,o,function(u,l){return n(s,l)})}return tm=i,tm}var nm,pk;function UO(){if(pk)return nm;pk=1;var e=$N(),n=CN(),i=TN();function s(o){return i(n(o,void 0,e),o+"")}return nm=s,nm}var rm,mk;function HO(){if(mk)return rm;mk=1;var e=BO(),n=UO(),i=n(function(s,o){return s==null?{}:e(s,o)});return rm=i,rm}var im,gk;function VO(){if(gk)return im;gk=1;var e=Math.ceil,n=Math.max;function i(s,o,u,l){for(var c=-1,d=n(e((o-s)/(u||1)),0),p=Array(d);d--;)p[l?d:++c]=s,s+=u;return p}return im=i,im}var sm,vk;function WO(){if(vk)return sm;vk=1;var e=VO(),n=ku(),i=LN();function s(o){return function(u,l,c){return c&&typeof c!="number"&&n(u,l,c)&&(l=c=void 0),u=i(u),l===void 0?(l=u,u=0):l=i(l),c=c===void 0?u<l?1:-1:i(c),e(u,l,c,o)}}return sm=s,sm}var om,yk;function GO(){if(yk)return om;yk=1;var e=WO(),n=e();return om=n,om}var am,wk;function KO(){if(wk)return am;wk=1;function e(n,i){var s=n.length;for(n.sort(i);s--;)n[s]=n[s].value;return n}return am=e,am}var um,_k;function YO(){if(_k)return um;_k=1;var e=rs();function n(i,s){if(i!==s){var o=i!==void 0,u=i===null,l=i===i,c=e(i),d=s!==void 0,p=s===null,h=s===s,m=e(s);if(!p&&!m&&!c&&i>s||c&&d&&h&&!p&&!m||u&&d&&h||!o&&h||!l)return 1;if(!u&&!c&&!m&&i<s||m&&o&&l&&!u&&!c||p&&o&&l||!d&&l||!h)return-1}return 0}return um=n,um}var lm,xk;function XO(){if(xk)return lm;xk=1;var e=YO();function n(i,s,o){for(var u=-1,l=i.criteria,c=s.criteria,d=l.length,p=o.length;++u<d;){var h=e(l[u],c[u]);if(h){if(u>=p)return h;var m=o[u];return h*(m=="desc"?-1:1)}}return i.index-s.index}return lm=n,lm}var cm,Sk;function QO(){if(Sk)return cm;Sk=1;var e=wu(),n=xu(),i=ar(),s=EN(),o=KO(),u=mu(),l=XO(),c=li(),d=wt();function p(h,m,v){m.length?m=e(m,function(x){return d(x)?function(k){return n(k,x.length===1?x[0]:x)}:x}):m=[c];var w=-1;m=e(m,u(i));var b=s(h,function(x,k,S){var E=e(m,function(T){return T(x)});return{criteria:E,index:++w,value:x}});return o(b,function(x,k){return l(x,k,v)})}return cm=p,cm}var fm,kk;function ZO(){if(kk)return fm;kk=1;var e=Kg(),n=QO(),i=Su(),s=ku(),o=i(function(u,l){if(u==null)return[];var c=l.length;return c>1&&s(u,l[0],l[1])?l=[]:c>2&&s(l[0],l[1],l[2])&&(l=[l[0]]),n(u,e(l,1),[])});return fm=o,fm}var dm,Ek;function JO(){if(Ek)return dm;Ek=1;var e=vN(),n=0;function i(s){var o=++n;return e(s)+o}return dm=i,dm}var hm,bk;function eL(){if(bk)return hm;bk=1;function e(n,i,s){for(var o=-1,u=n.length,l=i.length,c={};++o<u;){var d=o<l?i[o]:void 0;s(c,n[o],d)}return c}return hm=e,hm}var pm,Nk;function tL(){if(Nk)return pm;Nk=1;var e=hu(),n=eL();function i(s,o){return n(s||[],o||[],e)}return pm=i,pm}var mm,Ck;function tt(){if(Ck)return mm;Ck=1;var e;if(typeof Mg=="function")try{e={cloneDeep:vO(),constant:Ug(),defaults:yO(),each:cN(),filter:xN(),find:bO(),flatten:$N(),forEach:lN(),forIn:NO(),has:SN(),isUndefined:kN(),last:CO(),map:bN(),mapValues:TO(),max:AO(),merge:OO(),min:LO(),minBy:$O(),now:DO(),pick:HO(),range:GO(),reduce:NN(),sortBy:ZO(),uniqueId:JO(),values:jN(),zipObject:tL()}}catch{}return e||(e=window._),mm=e,mm}var gm,Tk;function nL(){if(Tk)return gm;Tk=1,gm=e;function e(){var s={};s._next=s._prev=s,this._sentinel=s}e.prototype.dequeue=function(){var s=this._sentinel,o=s._prev;if(o!==s)return n(o),o},e.prototype.enqueue=function(s){var o=this._sentinel;s._prev&&s._next&&n(s),s._next=o._next,o._next._prev=s,o._next=s,s._prev=o},e.prototype.toString=function(){for(var s=[],o=this._sentinel,u=o._prev;u!==o;)s.push(JSON.stringify(u,i)),u=u._prev;return"["+s.join(", ")+"]"};function n(s){s._prev._next=s._next,s._next._prev=s._prev,delete s._next,delete s._prev}function i(s,o){if(s!=="_next"&&s!=="_prev")return o}return gm}var vm,Rk;function rL(){if(Rk)return vm;Rk=1;var e=tt(),n=Pn().Graph,i=nL();vm=o;var s=e.constant(1);function o(p,h){if(p.nodeCount()<=1)return[];var m=c(p,h||s),v=u(m.graph,m.buckets,m.zeroIdx);return e.flatten(e.map(v,function(w){return p.outEdges(w.v,w.w)}),!0)}function u(p,h,m){for(var v=[],w=h[h.length-1],b=h[0],x;p.nodeCount();){for(;x=b.dequeue();)l(p,h,m,x);for(;x=w.dequeue();)l(p,h,m,x);if(p.nodeCount()){for(var k=h.length-2;k>0;--k)if(x=h[k].dequeue(),x){v=v.concat(l(p,h,m,x,!0));break}}}return v}function l(p,h,m,v,w){var b=w?[]:void 0;return e.forEach(p.inEdges(v.v),function(x){var k=p.edge(x),S=p.node(x.v);w&&b.push({v:x.v,w:x.w}),S.out-=k,d(h,m,S)}),e.forEach(p.outEdges(v.v),function(x){var k=p.edge(x),S=x.w,E=p.node(S);E.in-=k,d(h,m,E)}),p.removeNode(v.v),b}function c(p,h){var m=new n,v=0,w=0;e.forEach(p.nodes(),function(k){m.setNode(k,{v:k,in:0,out:0})}),e.forEach(p.edges(),function(k){var S=m.edge(k.v,k.w)||0,E=h(k),T=S+E;m.setEdge(k.v,k.w,T),w=Math.max(w,m.node(k.v).out+=E),v=Math.max(v,m.node(k.w).in+=E)});var b=e.range(w+v+3).map(function(){return new i}),x=v+1;return e.forEach(m.nodes(),function(k){d(b,x,m.node(k))}),{graph:m,buckets:b,zeroIdx:x}}function d(p,h,m){m.out?m.in?p[m.out-m.in+h].enqueue(m):p[p.length-1].enqueue(m):p[0].enqueue(m)}return vm}var ym,Ak;function iL(){if(Ak)return ym;Ak=1;var e=tt(),n=rL();ym={run:i,undo:o};function i(u){var l=u.graph().acyclicer==="greedy"?n(u,c(u)):s(u);e.forEach(l,function(d){var p=u.edge(d);u.removeEdge(d),p.forwardName=d.name,p.reversed=!0,u.setEdge(d.w,d.v,p,e.uniqueId("rev"))});function c(d){return function(p){return d.edge(p).weight}}}function s(u){var l=[],c={},d={};function p(h){e.has(d,h)||(d[h]=!0,c[h]=!0,e.forEach(u.outEdges(h),function(m){e.has(c,m.w)?l.push(m):p(m.w)}),delete c[h])}return e.forEach(u.nodes(),p),l}function o(u){e.forEach(u.edges(),function(l){var c=u.edge(l);if(c.reversed){u.removeEdge(l);var d=c.forwardName;delete c.reversed,delete c.forwardName,u.setEdge(l.w,l.v,c,d)}})}return ym}var wm,jk;function Jt(){if(jk)return wm;jk=1;var e=tt(),n=Pn().Graph;wm={addDummyNode:i,simplify:s,asNonCompoundGraph:o,successorWeights:u,predecessorWeights:l,intersectRect:c,buildLayerMatrix:d,normalizeRanks:p,removeEmptyRanks:h,addBorderNode:m,maxRank:v,partition:w,time:b,notime:x};function i(k,S,E,T){var C;do C=e.uniqueId(T);while(k.hasNode(C));return E.dummy=S,k.setNode(C,E),C}function s(k){var S=new n().setGraph(k.graph());return e.forEach(k.nodes(),function(E){S.setNode(E,k.node(E))}),e.forEach(k.edges(),function(E){var T=S.edge(E.v,E.w)||{weight:0,minlen:1},C=k.edge(E);S.setEdge(E.v,E.w,{weight:T.weight+C.weight,minlen:Math.max(T.minlen,C.minlen)})}),S}function o(k){var S=new n({multigraph:k.isMultigraph()}).setGraph(k.graph());return e.forEach(k.nodes(),function(E){k.children(E).length||S.setNode(E,k.node(E))}),e.forEach(k.edges(),function(E){S.setEdge(E,k.edge(E))}),S}function u(k){var S=e.map(k.nodes(),function(E){var T={};return e.forEach(k.outEdges(E),function(C){T[C.w]=(T[C.w]||0)+k.edge(C).weight}),T});return e.zipObject(k.nodes(),S)}function l(k){var S=e.map(k.nodes(),function(E){var T={};return e.forEach(k.inEdges(E),function(C){T[C.v]=(T[C.v]||0)+k.edge(C).weight}),T});return e.zipObject(k.nodes(),S)}function c(k,S){var E=k.x,T=k.y,C=S.x-E,j=S.y-T,M=k.width/2,A=k.height/2;if(!C&&!j)throw new Error("Not possible to find intersection inside of the rectangle");var D,L;return Math.abs(j)*M>Math.abs(C)*A?(j<0&&(A=-A),D=A*C/j,L=A):(C<0&&(M=-M),D=M,L=M*j/C),{x:E+D,y:T+L}}function d(k){var S=e.map(e.range(v(k)+1),function(){return[]});return e.forEach(k.nodes(),function(E){var T=k.node(E),C=T.rank;e.isUndefined(C)||(S[C][T.order]=E)}),S}function p(k){var S=e.min(e.map(k.nodes(),function(E){return k.node(E).rank}));e.forEach(k.nodes(),function(E){var T=k.node(E);e.has(T,"rank")&&(T.rank-=S)})}function h(k){var S=e.min(e.map(k.nodes(),function(j){return k.node(j).rank})),E=[];e.forEach(k.nodes(),function(j){var M=k.node(j).rank-S;E[M]||(E[M]=[]),E[M].push(j)});var T=0,C=k.graph().nodeRankFactor;e.forEach(E,function(j,M){e.isUndefined(j)&&M%C!==0?--T:T&&e.forEach(j,function(A){k.node(A).rank+=T})})}function m(k,S,E,T){var C={width:0,height:0};return arguments.length>=4&&(C.rank=E,C.order=T),i(k,"border",C,S)}function v(k){return e.max(e.map(k.nodes(),function(S){var E=k.node(S).rank;if(!e.isUndefined(E))return E}))}function w(k,S){var E={lhs:[],rhs:[]};return e.forEach(k,function(T){S(T)?E.lhs.push(T):E.rhs.push(T)}),E}function b(k,S){var E=e.now();try{return S()}finally{console.log(k+" time: "+(e.now()-E)+"ms")}}function x(k,S){return S()}return wm}var _m,Ik;function sL(){if(Ik)return _m;Ik=1;var e=tt(),n=Jt();_m={run:i,undo:o};function i(u){u.graph().dummyChains=[],e.forEach(u.edges(),function(l){s(u,l)})}function s(u,l){var c=l.v,d=u.node(c).rank,p=l.w,h=u.node(p).rank,m=l.name,v=u.edge(l),w=v.labelRank;if(h!==d+1){u.removeEdge(l);var b,x,k;for(k=0,++d;d<h;++k,++d)v.points=[],x={width:0,height:0,edgeLabel:v,edgeObj:l,rank:d},b=n.addDummyNode(u,"edge",x,"_d"),d===w&&(x.width=v.width,x.height=v.height,x.dummy="edge-label",x.labelpos=v.labelpos),u.setEdge(c,b,{weight:v.weight},m),k===0&&u.graph().dummyChains.push(b),c=b;u.setEdge(c,p,{weight:v.weight},m)}}function o(u){e.forEach(u.graph().dummyChains,function(l){var c=u.node(l),d=c.edgeLabel,p;for(u.setEdge(c.edgeObj,d);c.dummy;)p=u.successors(l)[0],u.removeNode(l),d.points.push({x:c.x,y:c.y}),c.dummy==="edge-label"&&(d.x=c.x,d.y=c.y,d.width=c.width,d.height=c.height),l=p,c=u.node(l)})}return _m}var xm,Mk;function Ja(){if(Mk)return xm;Mk=1;var e=tt();xm={longestPath:n,slack:i};function n(s){var o={};function u(l){var c=s.node(l);if(e.has(o,l))return c.rank;o[l]=!0;var d=e.min(e.map(s.outEdges(l),function(p){return u(p.w)-s.edge(p).minlen}));return(d===Number.POSITIVE_INFINITY||d===void 0||d===null)&&(d=0),c.rank=d}e.forEach(s.sources(),u)}function i(s,o){return s.node(o.w).rank-s.node(o.v).rank-s.edge(o).minlen}return xm}var Sm,Pk;function BN(){if(Pk)return Sm;Pk=1;var e=tt(),n=Pn().Graph,i=Ja().slack;Sm=s;function s(c){var d=new n({directed:!1}),p=c.nodes()[0],h=c.nodeCount();d.setNode(p,{});for(var m,v;o(d,c)<h;)m=u(d,c),v=d.hasNode(m.v)?i(c,m):-i(c,m),l(d,c,v);return d}function o(c,d){function p(h){e.forEach(d.nodeEdges(h),function(m){var v=m.v,w=h===v?m.w:v;!c.hasNode(w)&&!i(d,m)&&(c.setNode(w,{}),c.setEdge(h,w,{}),p(w))})}return e.forEach(c.nodes(),p),c.nodeCount()}function u(c,d){return e.minBy(d.edges(),function(p){if(c.hasNode(p.v)!==c.hasNode(p.w))return i(d,p)})}function l(c,d,p){e.forEach(c.nodes(),function(h){d.node(h).rank+=p})}return Sm}var km,qk;function oL(){if(qk)return km;qk=1;var e=tt(),n=BN(),i=Ja().slack,s=Ja().longestPath,o=Pn().alg.preorder,u=Pn().alg.postorder,l=Jt().simplify;km=c,c.initLowLimValues=m,c.initCutValues=d,c.calcCutValue=h,c.leaveEdge=w,c.enterEdge=b,c.exchangeEdges=x;function c(T){T=l(T),s(T);var C=n(T);m(C),d(C,T);for(var j,M;j=w(C);)M=b(C,T,j),x(C,T,j,M)}function d(T,C){var j=u(T,T.nodes());j=j.slice(0,j.length-1),e.forEach(j,function(M){p(T,C,M)})}function p(T,C,j){var M=T.node(j),A=M.parent;T.edge(j,A).cutvalue=h(T,C,j)}function h(T,C,j){var M=T.node(j),A=M.parent,D=!0,L=C.edge(j,A),U=0;return L||(D=!1,L=C.edge(A,j)),U=L.weight,e.forEach(C.nodeEdges(j),function(H){var Q=H.v===j,ee=Q?H.w:H.v;if(ee!==A){var R=Q===D,G=C.edge(H).weight;if(U+=R?G:-G,S(T,j,ee)){var B=T.edge(j,ee).cutvalue;U+=R?-B:B}}}),U}function m(T,C){arguments.length<2&&(C=T.nodes()[0]),v(T,{},1,C)}function v(T,C,j,M,A){var D=j,L=T.node(M);return C[M]=!0,e.forEach(T.neighbors(M),function(U){e.has(C,U)||(j=v(T,C,j,U,M))}),L.low=D,L.lim=j++,A?L.parent=A:delete L.parent,j}function w(T){return e.find(T.edges(),function(C){return T.edge(C).cutvalue<0})}function b(T,C,j){var M=j.v,A=j.w;C.hasEdge(M,A)||(M=j.w,A=j.v);var D=T.node(M),L=T.node(A),U=D,H=!1;D.lim>L.lim&&(U=L,H=!0);var Q=e.filter(C.edges(),function(ee){return H===E(T,T.node(ee.v),U)&&H!==E(T,T.node(ee.w),U)});return e.minBy(Q,function(ee){return i(C,ee)})}function x(T,C,j,M){var A=j.v,D=j.w;T.removeEdge(A,D),T.setEdge(M.v,M.w,{}),m(T),d(T,C),k(T,C)}function k(T,C){var j=e.find(T.nodes(),function(A){return!C.node(A).parent}),M=o(T,j);M=M.slice(1),e.forEach(M,function(A){var D=T.node(A).parent,L=C.edge(A,D),U=!1;L||(L=C.edge(D,A),U=!0),C.node(A).rank=C.node(D).rank+(U?L.minlen:-L.minlen)})}function S(T,C,j){return T.hasEdge(C,j)}function E(T,C,j){return j.low<=C.lim&&C.lim<=j.lim}return km}var Em,Ok;function aL(){if(Ok)return Em;Ok=1;var e=Ja(),n=e.longestPath,i=BN(),s=oL();Em=o;function o(d){switch(d.graph().ranker){case"network-simplex":c(d);break;case"tight-tree":l(d);break;case"longest-path":u(d);break;default:c(d)}}var u=n;function l(d){n(d),i(d)}function c(d){s(d)}return Em}var bm,Lk;function uL(){if(Lk)return bm;Lk=1;var e=tt();bm=n;function n(o){var u=s(o);e.forEach(o.graph().dummyChains,function(l){for(var c=o.node(l),d=c.edgeObj,p=i(o,u,d.v,d.w),h=p.path,m=p.lca,v=0,w=h[v],b=!0;l!==d.w;){if(c=o.node(l),b){for(;(w=h[v])!==m&&o.node(w).maxRank<c.rank;)v++;w===m&&(b=!1)}if(!b){for(;v<h.length-1&&o.node(w=h[v+1]).minRank<=c.rank;)v++;w=h[v]}o.setParent(l,w),l=o.successors(l)[0]}})}function i(o,u,l,c){var d=[],p=[],h=Math.min(u[l].low,u[c].low),m=Math.max(u[l].lim,u[c].lim),v,w;v=l;do v=o.parent(v),d.push(v);while(v&&(u[v].low>h||m>u[v].lim));for(w=v,v=c;(v=o.parent(v))!==w;)p.push(v);return{path:d.concat(p.reverse()),lca:w}}function s(o){var u={},l=0;function c(d){var p=l;e.forEach(o.children(d),c),u[d]={low:p,lim:l++}}return e.forEach(o.children(),c),u}return bm}var Nm,$k;function lL(){if($k)return Nm;$k=1;var e=tt(),n=Jt();Nm={run:i,cleanup:l};function i(c){var d=n.addDummyNode(c,"root",{},"_root"),p=o(c),h=e.max(e.values(p))-1,m=2*h+1;c.graph().nestingRoot=d,e.forEach(c.edges(),function(w){c.edge(w).minlen*=m});var v=u(c)+1;e.forEach(c.children(),function(w){s(c,d,m,v,h,p,w)}),c.graph().nodeRankFactor=m}function s(c,d,p,h,m,v,w){var b=c.children(w);if(!b.length){w!==d&&c.setEdge(d,w,{weight:0,minlen:p});return}var x=n.addBorderNode(c,"_bt"),k=n.addBorderNode(c,"_bb"),S=c.node(w);c.setParent(x,w),S.borderTop=x,c.setParent(k,w),S.borderBottom=k,e.forEach(b,function(E){s(c,d,p,h,m,v,E);var T=c.node(E),C=T.borderTop?T.borderTop:E,j=T.borderBottom?T.borderBottom:E,M=T.borderTop?h:2*h,A=C!==j?1:m-v[w]+1;c.setEdge(x,C,{weight:M,minlen:A,nestingEdge:!0}),c.setEdge(j,k,{weight:M,minlen:A,nestingEdge:!0})}),c.parent(w)||c.setEdge(d,x,{weight:0,minlen:m+v[w]})}function o(c){var d={};function p(h,m){var v=c.children(h);v&&v.length&&e.forEach(v,function(w){p(w,m+1)}),d[h]=m}return e.forEach(c.children(),function(h){p(h,1)}),d}function u(c){return e.reduce(c.edges(),function(d,p){return d+c.edge(p).weight},0)}function l(c){var d=c.graph();c.removeNode(d.nestingRoot),delete d.nestingRoot,e.forEach(c.edges(),function(p){var h=c.edge(p);h.nestingEdge&&c.removeEdge(p)})}return Nm}var Cm,Dk;function cL(){if(Dk)return Cm;Dk=1;var e=tt(),n=Jt();Cm=i;function i(o){function u(l){var c=o.children(l),d=o.node(l);if(c.length&&e.forEach(c,u),e.has(d,"minRank")){d.borderLeft=[],d.borderRight=[];for(var p=d.minRank,h=d.maxRank+1;p<h;++p)s(o,"borderLeft","_bl",l,d,p),s(o,"borderRight","_br",l,d,p)}}e.forEach(o.children(),u)}function s(o,u,l,c,d,p){var h={width:0,height:0,rank:p,borderType:u},m=d[u][p-1],v=n.addDummyNode(o,"border",h,l);d[u][p]=v,o.setParent(v,c),m&&o.setEdge(m,v,{weight:1})}return Cm}var Tm,Fk;function fL(){if(Fk)return Tm;Fk=1;var e=tt();Tm={adjust:n,undo:i};function n(p){var h=p.graph().rankdir.toLowerCase();(h==="lr"||h==="rl")&&s(p)}function i(p){var h=p.graph().rankdir.toLowerCase();(h==="bt"||h==="rl")&&u(p),(h==="lr"||h==="rl")&&(c(p),s(p))}function s(p){e.forEach(p.nodes(),function(h){o(p.node(h))}),e.forEach(p.edges(),function(h){o(p.edge(h))})}function o(p){var h=p.width;p.width=p.height,p.height=h}function u(p){e.forEach(p.nodes(),function(h){l(p.node(h))}),e.forEach(p.edges(),function(h){var m=p.edge(h);e.forEach(m.points,l),e.has(m,"y")&&l(m)})}function l(p){p.y=-p.y}function c(p){e.forEach(p.nodes(),function(h){d(p.node(h))}),e.forEach(p.edges(),function(h){var m=p.edge(h);e.forEach(m.points,d),e.has(m,"x")&&d(m)})}function d(p){var h=p.x;p.x=p.y,p.y=h}return Tm}var Rm,zk;function dL(){if(zk)return Rm;zk=1;var e=tt();Rm=n;function n(i){var s={},o=e.filter(i.nodes(),function(p){return!i.children(p).length}),u=e.max(e.map(o,function(p){return i.node(p).rank})),l=e.map(e.range(u+1),function(){return[]});function c(p){if(!e.has(s,p)){s[p]=!0;var h=i.node(p);l[h.rank].push(p),e.forEach(i.successors(p),c)}}var d=e.sortBy(o,function(p){return i.node(p).rank});return e.forEach(d,c),l}return Rm}var Am,Bk;function hL(){if(Bk)return Am;Bk=1;var e=tt();Am=n;function n(s,o){for(var u=0,l=1;l<o.length;++l)u+=i(s,o[l-1],o[l]);return u}function i(s,o,u){for(var l=e.zipObject(u,e.map(u,function(v,w){return w})),c=e.flatten(e.map(o,function(v){return e.sortBy(e.map(s.outEdges(v),function(w){return{pos:l[w.w],weight:s.edge(w).weight}}),"pos")}),!0),d=1;d<u.length;)d<<=1;var p=2*d-1;d-=1;var h=e.map(new Array(p),function(){return 0}),m=0;return e.forEach(c.forEach(function(v){var w=v.pos+d;h[w]+=v.weight;for(var b=0;w>0;)w%2&&(b+=h[w+1]),w=w-1>>1,h[w]+=v.weight;m+=v.weight*b})),m}return Am}var jm,Uk;function pL(){if(Uk)return jm;Uk=1;var e=tt();jm=n;function n(i,s){return e.map(s,function(o){var u=i.inEdges(o);if(u.length){var l=e.reduce(u,function(c,d){var p=i.edge(d),h=i.node(d.v);return{sum:c.sum+p.weight*h.order,weight:c.weight+p.weight}},{sum:0,weight:0});return{v:o,barycenter:l.sum/l.weight,weight:l.weight}}else return{v:o}})}return jm}var Im,Hk;function mL(){if(Hk)return Im;Hk=1;var e=tt();Im=n;function n(o,u){var l={};e.forEach(o,function(d,p){var h=l[d.v]={indegree:0,in:[],out:[],vs:[d.v],i:p};e.isUndefined(d.barycenter)||(h.barycenter=d.barycenter,h.weight=d.weight)}),e.forEach(u.edges(),function(d){var p=l[d.v],h=l[d.w];!e.isUndefined(p)&&!e.isUndefined(h)&&(h.indegree++,p.out.push(l[d.w]))});var c=e.filter(l,function(d){return!d.indegree});return i(c)}function i(o){var u=[];function l(p){return function(h){h.merged||(e.isUndefined(h.barycenter)||e.isUndefined(p.barycenter)||h.barycenter>=p.barycenter)&&s(p,h)}}function c(p){return function(h){h.in.push(p),--h.indegree===0&&o.push(h)}}for(;o.length;){var d=o.pop();u.push(d),e.forEach(d.in.reverse(),l(d)),e.forEach(d.out,c(d))}return e.map(e.filter(u,function(p){return!p.merged}),function(p){return e.pick(p,["vs","i","barycenter","weight"])})}function s(o,u){var l=0,c=0;o.weight&&(l+=o.barycenter*o.weight,c+=o.weight),u.weight&&(l+=u.barycenter*u.weight,c+=u.weight),o.vs=u.vs.concat(o.vs),o.barycenter=l/c,o.weight=c,o.i=Math.min(u.i,o.i),u.merged=!0}return Im}var Mm,Vk;function gL(){if(Vk)return Mm;Vk=1;var e=tt(),n=Jt();Mm=i;function i(u,l){var c=n.partition(u,function(x){return e.has(x,"barycenter")}),d=c.lhs,p=e.sortBy(c.rhs,function(x){return-x.i}),h=[],m=0,v=0,w=0;d.sort(o(!!l)),w=s(h,p,w),e.forEach(d,function(x){w+=x.vs.length,h.push(x.vs),m+=x.barycenter*x.weight,v+=x.weight,w=s(h,p,w)});var b={vs:e.flatten(h,!0)};return v&&(b.barycenter=m/v,b.weight=v),b}function s(u,l,c){for(var d;l.length&&(d=e.last(l)).i<=c;)l.pop(),u.push(d.vs),c++;return c}function o(u){return function(l,c){return l.barycenter<c.barycenter?-1:l.barycenter>c.barycenter?1:u?c.i-l.i:l.i-c.i}}return Mm}var Pm,Wk;function vL(){if(Wk)return Pm;Wk=1;var e=tt(),n=pL(),i=mL(),s=gL();Pm=o;function o(c,d,p,h){var m=c.children(d),v=c.node(d),w=v?v.borderLeft:void 0,b=v?v.borderRight:void 0,x={};w&&(m=e.filter(m,function(j){return j!==w&&j!==b}));var k=n(c,m);e.forEach(k,function(j){if(c.children(j.v).length){var M=o(c,j.v,p,h);x[j.v]=M,e.has(M,"barycenter")&&l(j,M)}});var S=i(k,p);u(S,x);var E=s(S,h);if(w&&(E.vs=e.flatten([w,E.vs,b],!0),c.predecessors(w).length)){var T=c.node(c.predecessors(w)[0]),C=c.node(c.predecessors(b)[0]);e.has(E,"barycenter")||(E.barycenter=0,E.weight=0),E.barycenter=(E.barycenter*E.weight+T.order+C.order)/(E.weight+2),E.weight+=2}return E}function u(c,d){e.forEach(c,function(p){p.vs=e.flatten(p.vs.map(function(h){return d[h]?d[h].vs:h}),!0)})}function l(c,d){e.isUndefined(c.barycenter)?(c.barycenter=d.barycenter,c.weight=d.weight):(c.barycenter=(c.barycenter*c.weight+d.barycenter*d.weight)/(c.weight+d.weight),c.weight+=d.weight)}return Pm}var qm,Gk;function yL(){if(Gk)return qm;Gk=1;var e=tt(),n=Pn().Graph;qm=i;function i(o,u,l){var c=s(o),d=new n({compound:!0}).setGraph({root:c}).setDefaultNodeLabel(function(p){return o.node(p)});return e.forEach(o.nodes(),function(p){var h=o.node(p),m=o.parent(p);(h.rank===u||h.minRank<=u&&u<=h.maxRank)&&(d.setNode(p),d.setParent(p,m||c),e.forEach(o[l](p),function(v){var w=v.v===p?v.w:v.v,b=d.edge(w,p),x=e.isUndefined(b)?0:b.weight;d.setEdge(w,p,{weight:o.edge(v).weight+x})}),e.has(h,"minRank")&&d.setNode(p,{borderLeft:h.borderLeft[u],borderRight:h.borderRight[u]}))}),d}function s(o){for(var u;o.hasNode(u=e.uniqueId("_root")););return u}return qm}var Om,Kk;function wL(){if(Kk)return Om;Kk=1;var e=tt();Om=n;function n(i,s,o){var u={},l;e.forEach(o,function(c){for(var d=i.parent(c),p,h;d;){if(p=i.parent(d),p?(h=u[p],u[p]=d):(h=l,l=d),h&&h!==d){s.setEdge(h,d);return}d=p}})}return Om}var Lm,Yk;function _L(){if(Yk)return Lm;Yk=1;var e=tt(),n=dL(),i=hL(),s=vL(),o=yL(),u=wL(),l=Pn().Graph,c=Jt();Lm=d;function d(v){var w=c.maxRank(v),b=p(v,e.range(1,w+1),"inEdges"),x=p(v,e.range(w-1,-1,-1),"outEdges"),k=n(v);m(v,k);for(var S=Number.POSITIVE_INFINITY,E,T=0,C=0;C<4;++T,++C){h(T%2?b:x,T%4>=2),k=c.buildLayerMatrix(v);var j=i(v,k);j<S&&(C=0,E=e.cloneDeep(k),S=j)}m(v,E)}function p(v,w,b){return e.map(w,function(x){return o(v,x,b)})}function h(v,w){var b=new l;e.forEach(v,function(x){var k=x.graph().root,S=s(x,k,b,w);e.forEach(S.vs,function(E,T){x.node(E).order=T}),u(x,b,S.vs)})}function m(v,w){e.forEach(w,function(b){e.forEach(b,function(x,k){v.node(x).order=k})})}return Lm}var $m,Xk;function xL(){if(Xk)return $m;Xk=1;var e=tt(),n=Pn().Graph,i=Jt();$m={positionX:b,findType1Conflicts:s,findType2Conflicts:o,addConflict:l,hasConflict:c,verticalAlignment:d,horizontalCompaction:p,alignCoordinates:v,findSmallestWidthAlignment:m,balance:w};function s(S,E){var T={};function C(j,M){var A=0,D=0,L=j.length,U=e.last(M);return e.forEach(M,function(H,Q){var ee=u(S,H),R=ee?S.node(ee).order:L;(ee||H===U)&&(e.forEach(M.slice(D,Q+1),function(G){e.forEach(S.predecessors(G),function(B){var X=S.node(B),Y=X.order;(Y<A||R<Y)&&!(X.dummy&&S.node(G).dummy)&&l(T,B,G)})}),D=Q+1,A=R)}),M}return e.reduce(E,C),T}function o(S,E){var T={};function C(M,A,D,L,U){var H;e.forEach(e.range(A,D),function(Q){H=M[Q],S.node(H).dummy&&e.forEach(S.predecessors(H),function(ee){var R=S.node(ee);R.dummy&&(R.order<L||R.order>U)&&l(T,ee,H)})})}function j(M,A){var D=-1,L,U=0;return e.forEach(A,function(H,Q){if(S.node(H).dummy==="border"){var ee=S.predecessors(H);ee.length&&(L=S.node(ee[0]).order,C(A,U,Q,D,L),U=Q,D=L)}C(A,U,A.length,L,M.length)}),A}return e.reduce(E,j),T}function u(S,E){if(S.node(E).dummy)return e.find(S.predecessors(E),function(T){return S.node(T).dummy})}function l(S,E,T){if(E>T){var C=E;E=T,T=C}var j=S[E];j||(S[E]=j={}),j[T]=!0}function c(S,E,T){if(E>T){var C=E;E=T,T=C}return e.has(S[E],T)}function d(S,E,T,C){var j={},M={},A={};return e.forEach(E,function(D){e.forEach(D,function(L,U){j[L]=L,M[L]=L,A[L]=U})}),e.forEach(E,function(D){var L=-1;e.forEach(D,function(U){var H=C(U);if(H.length){H=e.sortBy(H,function(B){return A[B]});for(var Q=(H.length-1)/2,ee=Math.floor(Q),R=Math.ceil(Q);ee<=R;++ee){var G=H[ee];M[U]===U&&L<A[G]&&!c(T,U,G)&&(M[G]=U,M[U]=j[U]=j[G],L=A[G])}}})}),{root:j,align:M}}function p(S,E,T,C,j){var M={},A=h(S,E,T,j),D=j?"borderLeft":"borderRight";function L(Q,ee){for(var R=A.nodes(),G=R.pop(),B={};G;)B[G]?Q(G):(B[G]=!0,R.push(G),R=R.concat(ee(G))),G=R.pop()}function U(Q){M[Q]=A.inEdges(Q).reduce(function(ee,R){return Math.max(ee,M[R.v]+A.edge(R))},0)}function H(Q){var ee=A.outEdges(Q).reduce(function(G,B){return Math.min(G,M[B.w]-A.edge(B))},Number.POSITIVE_INFINITY),R=S.node(Q);ee!==Number.POSITIVE_INFINITY&&R.borderType!==D&&(M[Q]=Math.max(M[Q],ee))}return L(U,A.predecessors.bind(A)),L(H,A.successors.bind(A)),e.forEach(C,function(Q){M[Q]=M[T[Q]]}),M}function h(S,E,T,C){var j=new n,M=S.graph(),A=x(M.nodesep,M.edgesep,C);return e.forEach(E,function(D){var L;e.forEach(D,function(U){var H=T[U];if(j.setNode(H),L){var Q=T[L],ee=j.edge(Q,H);j.setEdge(Q,H,Math.max(A(S,U,L),ee||0))}L=U})}),j}function m(S,E){return e.minBy(e.values(E),function(T){var C=Number.NEGATIVE_INFINITY,j=Number.POSITIVE_INFINITY;return e.forIn(T,function(M,A){var D=k(S,A)/2;C=Math.max(M+D,C),j=Math.min(M-D,j)}),C-j})}function v(S,E){var T=e.values(E),C=e.min(T),j=e.max(T);e.forEach(["u","d"],function(M){e.forEach(["l","r"],function(A){var D=M+A,L=S[D],U;if(L!==E){var H=e.values(L);U=A==="l"?C-e.min(H):j-e.max(H),U&&(S[D]=e.mapValues(L,function(Q){return Q+U}))}})})}function w(S,E){return e.mapValues(S.ul,function(T,C){if(E)return S[E.toLowerCase()][C];var j=e.sortBy(e.map(S,C));return(j[1]+j[2])/2})}function b(S){var E=i.buildLayerMatrix(S),T=e.merge(s(S,E),o(S,E)),C={},j;e.forEach(["u","d"],function(A){j=A==="u"?E:e.values(E).reverse(),e.forEach(["l","r"],function(D){D==="r"&&(j=e.map(j,function(Q){return e.values(Q).reverse()}));var L=(A==="u"?S.predecessors:S.successors).bind(S),U=d(S,j,T,L),H=p(S,j,U.root,U.align,D==="r");D==="r"&&(H=e.mapValues(H,function(Q){return-Q})),C[A+D]=H})});var M=m(S,C);return v(C,M),w(C,S.graph().align)}function x(S,E,T){return function(C,j,M){var A=C.node(j),D=C.node(M),L=0,U;if(L+=A.width/2,e.has(A,"labelpos"))switch(A.labelpos.toLowerCase()){case"l":U=-A.width/2;break;case"r":U=A.width/2;break}if(U&&(L+=T?U:-U),U=0,L+=(A.dummy?E:S)/2,L+=(D.dummy?E:S)/2,L+=D.width/2,e.has(D,"labelpos"))switch(D.labelpos.toLowerCase()){case"l":U=D.width/2;break;case"r":U=-D.width/2;break}return U&&(L+=T?U:-U),U=0,L}}function k(S,E){return S.node(E).width}return $m}var Dm,Qk;function SL(){if(Qk)return Dm;Qk=1;var e=tt(),n=Jt(),i=xL().positionX;Dm=s;function s(u){u=n.asNonCompoundGraph(u),o(u),e.forEach(i(u),function(l,c){u.node(c).x=l})}function o(u){var l=n.buildLayerMatrix(u),c=u.graph().ranksep,d=0;e.forEach(l,function(p){var h=e.max(e.map(p,function(m){return u.node(m).height}));e.forEach(p,function(m){u.node(m).y=d+h/2}),d+=h+c})}return Dm}var Fm,Zk;function kL(){if(Zk)return Fm;Zk=1;var e=tt(),n=iL(),i=sL(),s=aL(),o=Jt().normalizeRanks,u=uL(),l=Jt().removeEmptyRanks,c=lL(),d=cL(),p=fL(),h=_L(),m=SL(),v=Jt(),w=Pn().Graph;Fm=b;function b($,K){var Z=K&&K.debugTiming?v.time:v.notime;Z("layout",function(){var oe=Z(" buildLayoutGraph",function(){return L($)});Z(" runLayout",function(){x(oe,Z)}),Z(" updateInputGraph",function(){k($,oe)})})}function x($,K){K(" makeSpaceForEdgeLabels",function(){U($)}),K(" removeSelfEdges",function(){q($)}),K(" acyclic",function(){n.run($)}),K(" nestingGraph.run",function(){c.run($)}),K(" rank",function(){s(v.asNonCompoundGraph($))}),K(" injectEdgeLabelProxies",function(){H($)}),K(" removeEmptyRanks",function(){l($)}),K(" nestingGraph.cleanup",function(){c.cleanup($)}),K(" normalizeRanks",function(){o($)}),K(" assignRankMinMax",function(){Q($)}),K(" removeEdgeLabelProxies",function(){ee($)}),K(" normalize.run",function(){i.run($)}),K(" parentDummyChains",function(){u($)}),K(" addBorderSegments",function(){d($)}),K(" order",function(){h($)}),K(" insertSelfEdges",function(){V($)}),K(" adjustCoordinateSystem",function(){p.adjust($)}),K(" position",function(){m($)}),K(" positionSelfEdges",function(){I($)}),K(" removeBorderNodes",function(){Y($)}),K(" normalize.undo",function(){i.undo($)}),K(" fixupEdgeLabelCoords",function(){B($)}),K(" undoCoordinateSystem",function(){p.undo($)}),K(" translateGraph",function(){R($)}),K(" assignNodeIntersects",function(){G($)}),K(" reversePoints",function(){X($)}),K(" acyclic.undo",function(){n.undo($)})}function k($,K){e.forEach($.nodes(),function(Z){var oe=$.node(Z),ce=K.node(Z);oe&&(oe.x=ce.x,oe.y=ce.y,K.children(Z).length&&(oe.width=ce.width,oe.height=ce.height))}),e.forEach($.edges(),function(Z){var oe=$.edge(Z),ce=K.edge(Z);oe.points=ce.points,e.has(ce,"x")&&(oe.x=ce.x,oe.y=ce.y)}),$.graph().width=K.graph().width,$.graph().height=K.graph().height}var S=["nodesep","edgesep","ranksep","marginx","marginy"],E={ranksep:50,edgesep:20,nodesep:50,rankdir:"tb"},T=["acyclicer","ranker","rankdir","align"],C=["width","height"],j={width:0,height:0},M=["minlen","weight","width","height","labeloffset"],A={minlen:1,weight:1,width:0,height:0,labeloffset:10,labelpos:"r"},D=["labelpos"];function L($){var K=new w({multigraph:!0,compound:!0}),Z=ae($.graph());return K.setGraph(e.merge({},E,z(Z,S),e.pick(Z,T))),e.forEach($.nodes(),function(oe){var ce=ae($.node(oe));K.setNode(oe,e.defaults(z(ce,C),j)),K.setParent(oe,$.parent(oe))}),e.forEach($.edges(),function(oe){var ce=ae($.edge(oe));K.setEdge(oe,e.merge({},A,z(ce,M),e.pick(ce,D)))}),K}function U($){var K=$.graph();K.ranksep/=2,e.forEach($.edges(),function(Z){var oe=$.edge(Z);oe.minlen*=2,oe.labelpos.toLowerCase()!=="c"&&(K.rankdir==="TB"||K.rankdir==="BT"?oe.width+=oe.labeloffset:oe.height+=oe.labeloffset)})}function H($){e.forEach($.edges(),function(K){var Z=$.edge(K);if(Z.width&&Z.height){var oe=$.node(K.v),ce=$.node(K.w),pe={rank:(ce.rank-oe.rank)/2+oe.rank,e:K};v.addDummyNode($,"edge-proxy",pe,"_ep")}})}function Q($){var K=0;e.forEach($.nodes(),function(Z){var oe=$.node(Z);oe.borderTop&&(oe.minRank=$.node(oe.borderTop).rank,oe.maxRank=$.node(oe.borderBottom).rank,K=e.max(K,oe.maxRank))}),$.graph().maxRank=K}function ee($){e.forEach($.nodes(),function(K){var Z=$.node(K);Z.dummy==="edge-proxy"&&($.edge(Z.e).labelRank=Z.rank,$.removeNode(K))})}function R($){var K=Number.POSITIVE_INFINITY,Z=0,oe=Number.POSITIVE_INFINITY,ce=0,pe=$.graph(),ge=pe.marginx||0,Me=pe.marginy||0;function Ie(Pe){var je=Pe.x,be=Pe.y,Ve=Pe.width,ye=Pe.height;K=Math.min(K,je-Ve/2),Z=Math.max(Z,je+Ve/2),oe=Math.min(oe,be-ye/2),ce=Math.max(ce,be+ye/2)}e.forEach($.nodes(),function(Pe){Ie($.node(Pe))}),e.forEach($.edges(),function(Pe){var je=$.edge(Pe);e.has(je,"x")&&Ie(je)}),K-=ge,oe-=Me,e.forEach($.nodes(),function(Pe){var je=$.node(Pe);je.x-=K,je.y-=oe}),e.forEach($.edges(),function(Pe){var je=$.edge(Pe);e.forEach(je.points,function(be){be.x-=K,be.y-=oe}),e.has(je,"x")&&(je.x-=K),e.has(je,"y")&&(je.y-=oe)}),pe.width=Z-K+ge,pe.height=ce-oe+Me}function G($){e.forEach($.edges(),function(K){var Z=$.edge(K),oe=$.node(K.v),ce=$.node(K.w),pe,ge;Z.points?(pe=Z.points[0],ge=Z.points[Z.points.length-1]):(Z.points=[],pe=ce,ge=oe),Z.points.unshift(v.intersectRect(oe,pe)),Z.points.push(v.intersectRect(ce,ge))})}function B($){e.forEach($.edges(),function(K){var Z=$.edge(K);if(e.has(Z,"x"))switch((Z.labelpos==="l"||Z.labelpos==="r")&&(Z.width-=Z.labeloffset),Z.labelpos){case"l":Z.x-=Z.width/2+Z.labeloffset;break;case"r":Z.x+=Z.width/2+Z.labeloffset;break}})}function X($){e.forEach($.edges(),function(K){var Z=$.edge(K);Z.reversed&&Z.points.reverse()})}function Y($){e.forEach($.nodes(),function(K){if($.children(K).length){var Z=$.node(K),oe=$.node(Z.borderTop),ce=$.node(Z.borderBottom),pe=$.node(e.last(Z.borderLeft)),ge=$.node(e.last(Z.borderRight));Z.width=Math.abs(ge.x-pe.x),Z.height=Math.abs(ce.y-oe.y),Z.x=pe.x+Z.width/2,Z.y=oe.y+Z.height/2}}),e.forEach($.nodes(),function(K){$.node(K).dummy==="border"&&$.removeNode(K)})}function q($){e.forEach($.edges(),function(K){if(K.v===K.w){var Z=$.node(K.v);Z.selfEdges||(Z.selfEdges=[]),Z.selfEdges.push({e:K,label:$.edge(K)}),$.removeEdge(K)}})}function V($){var K=v.buildLayerMatrix($);e.forEach(K,function(Z){var oe=0;e.forEach(Z,function(ce,pe){var ge=$.node(ce);ge.order=pe+oe,e.forEach(ge.selfEdges,function(Me){v.addDummyNode($,"selfedge",{width:Me.label.width,height:Me.label.height,rank:ge.rank,order:pe+ ++oe,e:Me.e,label:Me.label},"_se")}),delete ge.selfEdges})})}function I($){e.forEach($.nodes(),function(K){var Z=$.node(K);if(Z.dummy==="selfedge"){var oe=$.node(Z.e.v),ce=oe.x+oe.width/2,pe=oe.y,ge=Z.x-ce,Me=oe.height/2;$.setEdge(Z.e,Z.label),$.removeNode(K),Z.label.points=[{x:ce+2*ge/3,y:pe-Me},{x:ce+5*ge/6,y:pe-Me},{x:ce+ge,y:pe},{x:ce+5*ge/6,y:pe+Me},{x:ce+2*ge/3,y:pe+Me}],Z.label.x=Z.x,Z.label.y=Z.y}})}function z($,K){return e.mapValues(e.pick($,K),Number)}function ae($){var K={};return e.forEach($,function(Z,oe){K[oe.toLowerCase()]=Z}),K}return Fm}var zm,Jk;function EL(){if(Jk)return zm;Jk=1;var e=tt(),n=Jt(),i=Pn().Graph;zm={debugOrdering:s};function s(o){var u=n.buildLayerMatrix(o),l=new i({compound:!0,multigraph:!0}).setGraph({});return e.forEach(o.nodes(),function(c){l.setNode(c,{label:c}),l.setParent(c,"layer"+o.node(c).rank)}),e.forEach(o.edges(),function(c){l.setEdge(c.v,c.w,{},c.name)}),e.forEach(u,function(c,d){var p="layer"+d;l.setNode(p,{rank:"same"}),e.reduce(c,function(h,m){return l.setEdge(h,m,{style:"invis"}),m})}),l}return zm}var Bm,eE;function bL(){return eE||(eE=1,Bm="0.8.5"),Bm}var Um,tE;function NL(){return tE||(tE=1,Um={graphlib:Pn(),layout:kL(),debug:EL(),util:{time:Jt().time,notime:Jt().notime},version:bL()}),Um}var CL=NL();const nE=dg(CL),rE=240,iE=130,TL=110;function RL(e){var i;return((i=e.data)==null?void 0:i.sessionId)??"_default"}function AL(e,n,i,s){const o=new nE.graphlib.Graph;o.setDefaultEdgeLabel(()=>({})),o.setGraph({rankdir:i,marginx:0,marginy:0,nodesep:70,ranksep:160,edgesep:30});const u=new Set(e);for(const w of e){const b=s.get(w);o.setNode(w,{width:(b==null?void 0:b.width)??rE,height:(b==null?void 0:b.height)??iE})}for(const w of n)u.has(w.source)&&u.has(w.target)&&o.setEdge(w.source,w.target);nE.layout(o);const l=new Map;let c=1/0,d=1/0,p=-1/0,h=-1/0;for(const w of e){const b=o.node(w);if(!b)continue;const x=s.get(w),k=(x==null?void 0:x.width)??rE,S=(x==null?void 0:x.height)??iE,E=b.x-k/2,T=b.y-S/2;l.set(w,{x:E,y:T}),E<c&&(c=E),T<d&&(d=T),E+k>p&&(p=E+k),T+S>h&&(h=T+S)}if(Number.isFinite(c)&&Number.isFinite(d))for(const[w,b]of l)l.set(w,{x:b.x-c,y:b.y-d});const m=Number.isFinite(p)?p-c:0,v=Number.isFinite(h)?h-d:0;return{positions:l,width:m,height:v}}function sE(e,n,i={}){const s=i.direction??"LR",o=i.pinned??new Map,u=i.measured??new Map,l=new Map;for(const h of e){const m=RL(h),v=l.get(m);v?v.push(h.id):l.set(m,[h.id])}const c=Array.from(l.keys()).sort(),d=new Map;let p=0;for(const h of c){const m=l.get(h),{positions:v,height:w}=AL(m,n,s,u);for(const[b,x]of v)d.set(b,{x:x.x,y:x.y+p});p+=w+TL}return e.map(h=>{const m=o.get(h.id);if(m)return{...h,position:m};const v=d.get(h.id);return v?{...h,position:v}:h})}const jL=600;function lg(e,n){return!(e.exitAt!=null&&n-e.exitAt>jL||e.kind==="root"&&e.state==="done"&&e.tools.length===0&&e.endedAt!=null&&e.endedAt-e.startedAt<3e3)}function IL(e,n){const i=new Set;for(const s of e.agents.values())lg(s,n)&&i.add(s.id);return i}function Zr(e){return typeof window>"u"?"":getComputedStyle(document.documentElement).getPropertyValue(e).trim()||""}function ML(e){return e<1e3?`${e}`:e<1e6?`${(e/1e3).toFixed(1)}k`:`${(e/1e6).toFixed(2)}M`}const PL={agent:oP,sessionGroup:vP},La=18,qL=9e4,OL=200,LL=5*6e4,Qg="agent-dag.layout",Zg="agent-dag.viewport",UN="agent-dag.summariesDismissed",HN="agent-dag.sessionListOpen",VN="agent-dag.timelineOpen",WN="agent-dag.detailOpen",GN="agent-dag.usagePanelOpen";function $L(){if(typeof window>"u")return!0;try{return window.localStorage.getItem(HN)!=="0"}catch{return!0}}function DL(e){if(!(typeof window>"u"))try{window.localStorage.setItem(HN,e?"1":"0")}catch{}}function FL(){if(typeof window>"u")return!1;const e=window.localStorage.getItem(VN);try{return e===null?!1:e!=="0"}catch{return!1}}function zL(e){if(!(typeof window>"u"))try{window.localStorage.setItem(VN,e?"1":"0")}catch{}}function BL(){if(typeof window>"u")return!0;try{return window.localStorage.getItem(WN)!=="0"}catch{return!0}}function UL(e){if(!(typeof window>"u"))try{window.localStorage.setItem(WN,e?"1":"0")}catch{}}function HL(){if(typeof window>"u")return!0;const e=window.localStorage.getItem(GN);try{return e===null?!0:e==="1"}catch{return!0}}function VL(e){if(!(typeof window>"u"))try{window.localStorage.setItem(GN,e?"1":"0")}catch{}}function WL(){if(typeof window>"u")return new Set;try{const e=window.localStorage.getItem(UN);if(!e)return new Set;const n=JSON.parse(e);return new Set(Array.isArray(n)?n.filter(i=>typeof i=="string"):[])}catch{return new Set}}function oE(e){if(!(typeof window>"u"))try{const n=Array.from(e),i=n.length>200?n.slice(-200):n;window.localStorage.setItem(UN,JSON.stringify(i))}catch{}}function GL(){if(typeof window>"u")return[];try{const e=window.localStorage.getItem(Qg);if(!e)return[];const n=JSON.parse(e);return Object.entries(n).filter(([,i])=>i&&typeof i.x=="number"&&typeof i.y=="number")}catch{return[]}}function aE(e){if(!(typeof window>"u"))try{const n={};for(const[i,s]of e)n[i]=s;window.localStorage.setItem(Qg,JSON.stringify(n))}catch{}}function KL(){if(typeof window>"u")return null;try{const e=window.localStorage.getItem(Zg);if(!e)return null;const n=JSON.parse(e);return typeof(n==null?void 0:n.x)!="number"||typeof(n==null?void 0:n.y)!="number"||typeof(n==null?void 0:n.zoom)!="number"?null:n}catch{return null}}function YL(e){if(!(typeof window>"u"))try{window.localStorage.setItem(Zg,JSON.stringify(e))}catch{}}function uE(){if(!(typeof window>"u")){try{window.localStorage.removeItem(Qg)}catch{}try{window.localStorage.removeItem(Zg)}catch{}}}function XL(e,n){const i=e.agents.get(n);if(!i)return;const s=[];for(const h of e.agents.values())h.sessionId===n&&s.push(h);const o={schemaVersion:1,exportedAt:new Date().toISOString(),sessionId:n,label:i.label,cwd:i.cwd,startedAt:i.startedAt,endedAt:i.endedAt,model:i.model,agents:s.map(h=>({id:h.id,kind:h.kind,label:h.label,parentId:h.parentId,state:h.state,startedAt:h.startedAt,endedAt:h.endedAt,model:h.model,cwd:h.cwd,usage:h.usage,prompts:h.prompts,tools:h.tools.map(m=>({id:m.id,name:m.name,inputPreview:m.inputPreview,startedAt:m.startedAt,endedAt:m.endedAt,ok:m.ok,errorPreview:m.errorPreview,usage:m.usage}))}))},u=JSON.stringify(o,null,2),l=new Blob([u],{type:"application/json"}),c=URL.createObjectURL(l),d=document.createElement("a"),p=(i.label||"session").replace(/[^a-z0-9._-]/gi,"_");d.href=c,d.download=`agents-deck-${p}-${n.slice(0,8)}.json`,document.body.appendChild(d),d.click(),document.body.removeChild(d),setTimeout(()=>URL.revokeObjectURL(c),1e3)}const cg={file:"📁",shell:"⚡",web:"🌐",agent:"🤖",task:"📋",plan:"🧭",mcp:"🔌",other:"✨"},fg={file:"file",shell:"shell",web:"web",agent:"agent",task:"task",plan:"plan",mcp:"mcp",other:"other"},QL={Read:"file",Write:"file",Edit:"file",MultiEdit:"file",Glob:"file",Grep:"file",LS:"file",NotebookEdit:"file",Bash:"shell",PowerShell:"shell",shell:"shell",exec_command:"shell",shell_command:"shell",write_stdin:"shell",wait:"shell",apply_patch:"file",update_plan:"task",WebFetch:"web",WebSearch:"web",Task:"agent",Agent:"agent",TodoWrite:"task",TaskCreate:"task",TaskUpdate:"task",TaskList:"task",TaskGet:"task",TaskOutput:"task",TaskStop:"task",EnterPlanMode:"plan",ExitPlanMode:"plan",AskUserQuestion:"plan",Skill:"plan",Workflow:"plan"};function KN(e){return e.startsWith("mcp__")?"mcp":QL[e]??"other"}function YN(e,n){var s,o,u;if(!n)return!0;const i=n.toLowerCase();if(e.label.toLowerCase().includes(i)||(s=e.cwd)!=null&&s.toLowerCase().includes(i)||(o=e.cwdBasename)!=null&&o.toLowerCase().includes(i)||e.sessionId.toLowerCase().includes(i)||(u=e.firstPrompt)!=null&&u.toLowerCase().includes(i))return!0;for(const l of e.tools)if(l.name.toLowerCase().includes(i))return!0;return!1}function ZL(e,n){if(!n)return null;const i=new Set([n]);let s=n;for(;s;){const u=e.agents.get(s);if(!(u!=null&&u.parentId)||i.has(u.parentId))break;i.add(u.parentId),s=u.parentId}let o=!0;for(;o;){o=!1;for(const u of e.agents.values())u.parentId&&i.has(u.parentId)&&!i.has(u.id)&&(i.add(u.id),o=!0)}return i}function JL(e,n,i,s,o,u,l,c,d,p,h,m){const v=[],w=[],b=new Set;if(s)for(const S of e.agents.values())YN(S,s)&&b.add(S.id);for(const S of e.agents.values()){if(!h.has(S.id))continue;const E=s?!b.has(S.id):!1,T=S.exitAt!=null,C=p!=null&&!p.has(S.id),j=[E?"rf-dim":"",T?"rf-exiting":"",C?"rf-spotlit-out":""].filter(Boolean).join(" ")||void 0,M=o.get(S.id);if(v.push({id:S.id,type:"agent",position:{x:0,y:0},data:{...S,now:n,dim:E,onOpenContext:m},className:j,...M?{width:M.width,height:M.height}:null}),S.parentId&&h.has(S.parentId)){const A=jg(S.sessionId),D=S.state==="active"?`hsl(${A} 80% 72%)`:`hsl(${A} 50% 55%)`,L=s&&!b.has(S.id)&&!b.has(S.parentId),U=T,H=d.size>0&&(d.has(S.id)||d.has(S.parentId)),Q=p!=null&&!p.has(S.id)&&!p.has(S.parentId),ee=S.state==="active"?2:1.5,R=H?ee+1.5:ee,G=L||U?.2:Q?.12:1,B=[U?"rf-edge-exiting":"",H?"rf-edge-selected":""].filter(Boolean).join(" ")||void 0;w.push({id:`e:${S.parentId}->${S.id}`,source:S.parentId,target:S.id,animated:(S.state==="active"||H)&&!L&&!U,type:"smoothstep",style:{stroke:D,strokeWidth:R,opacity:G,transition:"opacity 500ms ease, stroke-width 200ms ease"},className:B})}}if(l!==c.current){const S=sE(v,w,{direction:"LR",pinned:i,measured:o});for(const E of S)u.set(E.id,E.position);c.current=l}else if(v.filter(E=>!i.has(E.id)&&!u.has(E.id)).length>0){const E=sE(v,w,{direction:"LR",pinned:i,measured:o});for(const T of E)u.has(T.id)||u.set(T.id,T.position)}for(const S of Array.from(u.keys()))e.agents.has(S)||u.delete(S);const x=[];let k=!1;for(const S of v){let E=i.get(S.id)??u.get(S.id);E||(E={x:0,y:0},u.set(S.id,E),k=!0),x.push({...S,position:E})}return k&&(c.current=""),{nodes:x,edges:w}}function e$(){return _.jsx(Rg,{children:_.jsx(t$,{})})}function t$(){const e=co(),n=O.useRef(og()),[,i]=O.useState(0),s=O.useCallback(()=>i(se=>se+1),[]),[o,u]=O.useState(()=>new Set),[l,c]=O.useState(null),[d,p]=O.useState(null),h=O.useCallback((se,re)=>{u(he=>{if(!re)return new Set([se]);const me=new Set(he);return me.has(se)?me.delete(se):me.add(se),me}),c(he=>re&&he===se?he:se)},[]),m=O.useCallback(()=>{u(new Set),c(null)},[]),[v,w]=O.useState(null),[b,x]=O.useState(null),k=O.useCallback(se=>x(se),[]),S=O.useRef(WL()),[E,T]=O.useState($L);O.useEffect(()=>{DL(E)},[E]);const[C,j]=O.useState(FL);O.useEffect(()=>{zL(C)},[C]);const[M,A]=O.useState(BL);O.useEffect(()=>{UL(M)},[M]);const[D,L]=O.useState(HL);O.useEffect(()=>{VL(D)},[D]);const[U,H]=O.useState(0),[Q,ee]=O.useState(!1),[R,G]=O.useState(!1),B=O.useRef([]),[X,Y]=O.useState(Date.now()),q=O.useRef(new Map(GL())),V=O.useRef(null),I=O.useState(()=>KL())[0],[z,ae]=O.useState(""),[$,K]=O.useState(()=>new Set),[Z,oe]=O.useState(()=>typeof window>"u"?"dark":window.localStorage.getItem("agent-dag.theme")??"dark"),[ce,pe]=O.useState(!1),ge=O.useRef(null);O.useEffect(()=>{document.documentElement.dataset.theme=Z;try{window.localStorage.setItem("agent-dag.theme",Z)}catch{}},[Z]),O.useEffect(()=>{if(!I)return;const se=window.setTimeout(()=>{try{e.setViewport(I,{duration:0})}catch{}},60);return()=>window.clearTimeout(se)},[e,I]);const Me=O.useRef(!0),Ie=O.useRef(null);O.useEffect(()=>{const se=new EventSource("/events");return se.addEventListener("open",()=>{ee(!0),pe(!0)}),se.addEventListener("error",()=>ee(!1)),se.addEventListener("replay-end",()=>{Me.current=!1,Ie.current!=null&&(window.clearTimeout(Ie.current),Ie.current=null),s()}),se.addEventListener("hook",re=>{try{const he=JSON.parse(re.data);if(R){B.current.push(he);return}n.current=bw(n.current,he),he.replay===!0||Me.current||Date.now()-he.receivedAt>3e4?(Ie.current!=null&&window.clearTimeout(Ie.current),Ie.current=window.setTimeout(()=>{Ie.current=null,s()},120)):(Ie.current!=null&&(window.clearTimeout(Ie.current),Ie.current=null),s())}catch{}}),()=>{se.close(),Ie.current!=null&&(window.clearTimeout(Ie.current),Ie.current=null)}},[R,s]),O.useEffect(()=>{if(!R&&B.current.length!==0){for(const se of B.current)n.current=bw(n.current,se);B.current.length=0,s()}},[R,s]),O.useEffect(()=>{const se=setInterval(()=>{const re=Date.now();Y(re);let he=YM(n.current,re,qL);if(KM(n.current,re,OL,LL)&&(he=!0),re-we.current>=1e3){we.current=re;let me=0;for(const ke of n.current.agents.values())me+=Bt(ke.usage,ke.model).total;const _e=ye.current;_e.push({t:re,cost:me}),_e.length>240&&_e.shift()}he&&s()},250);return()=>clearInterval(se)},[s]);const Pe=O.useRef(null),je=O.useRef(0),be=O.useRef(""),Ve=O.useRef(null),ye=O.useRef([]),we=O.useRef(0),Be=O.useRef(0),st=O.useCallback(()=>{Be.current=Date.now()},[]),lt="agent-dag.autoFitDisabled",We=O.useRef((()=>{if(typeof window>"u")return!1;try{return window.localStorage.getItem(lt)==="1"}catch{return!1}})()),[Ge,ht]=O.useState(We.current),Rt=O.useCallback(()=>{if(!We.current){We.current=!0,ht(!0);try{window.localStorage.setItem(lt,"1")}catch{}}},[]),Ut=O.useCallback(()=>{We.current=!1,ht(!1);try{window.localStorage.removeItem(lt)}catch{}try{e.fitView({padding:.25,duration:400})}catch{}},[e]);O.useEffect(()=>{const se=setInterval(()=>{if(We.current||Date.now()-Be.current<800)return;const re=n.current,he=Date.now(),me=[];for(const ft of re.agents.values())lg(ft,he)&&me.push({id:ft.id});if(me.length===0)return;const _e=e.getViewport(),ke=window.innerWidth-360,De=window.innerHeight-52;let vt=!1,bt=!1;for(const{id:ft}of me){const Je=pt.current.get(ft),Vn=q.current.get(ft)??Le.current.get(ft);if(!Je||!Vn)continue;bt=!0;const ci=Vn.x*_e.zoom+_e.x,fi=Vn.y*_e.zoom+_e.y,di=(Vn.x+Je.width)*_e.zoom+_e.x,hi=(Vn.y+Je.height)*_e.zoom+_e.y;if(di>0&&ci<ke&&hi>0&&fi<De){vt=!0;break}}if(bt&&!vt)try{e.fitView({padding:.25,duration:600})}catch{}},1500);return()=>clearInterval(se)},[e]);const pt=O.useRef(new Map),ct=O.useRef(0),Ht=O.useCallback(se=>{const re=pt.current;let he=!1;for(const me of se.nodeInternals.values()){const _e=me.width,ke=me.height;if(_e==null||ke==null)continue;const De=re.get(me.id);De?(Math.abs(De.height-ke)>4||Math.abs(De.width-_e)>4)&&(re.set(me.id,{width:_e,height:ke}),he=!0):(re.set(me.id,{width:_e,height:ke}),he=!0)}return he&&(ct.current+=1),ct.current},[]),At=He(Ht),Le=O.useRef(new Map),mt=O.useRef(""),Ye=O.useMemo(()=>{const se=[];for(const re of n.current.agents.values())lg(re,X)&&se.push(re.id+(re.parentId?`>${re.parentId}`:""));return se.sort(),`${se.join("|")}#sv${At}`},[n.current,n.current.lastSeq,X,At]);O.useEffect(()=>{if(be.current===Ye)return;const se=be.current;if(be.current=Ye,!se||We.current)return;const re=Date.now();if(re-je.current>1200){try{e.fitView({padding:.25,duration:400})}catch{}je.current=re}Pe.current&&window.clearTimeout(Pe.current),Pe.current=window.setTimeout(()=>{if(!We.current){try{e.fitView({padding:.25,duration:500})}catch{}je.current=Date.now()}},280)},[Ye,e]);const ot=O.useMemo(()=>{if(o.size===0)return null;const se=new Set;for(const re of o){const he=ZL(n.current,re);if(he)for(const me of he)se.add(me)}return se.size>0?se:null},[n.current,n.current.lastSeq,o]),Vt=O.useMemo(()=>IL(n.current,X),[n.current,n.current.lastSeq,X]),{nodes:Ze,edges:Pt}=O.useMemo(()=>JL(n.current,X,q.current,z,pt.current,Le.current,Ye,mt,o,ot,Vt,k),[n.current,n.current.lastSeq,X,z,Ye,o,ot,Vt,k,U]),an=O.useMemo(()=>{const se=new Map;for(const he of Ze){const me=he.data;if(!(me!=null&&me.sessionId)||me.exitAt!=null)continue;const _e=he.width,ke=he.height;if(_e==null||ke==null)continue;const De=he.position.x,vt=he.position.y,bt=De+_e,ft=vt+ke,Je=se.get(me.sessionId);Je?(Je.minX=Math.min(Je.minX,De),Je.minY=Math.min(Je.minY,vt),Je.maxX=Math.max(Je.maxX,bt),Je.maxY=Math.max(Je.maxY,ft)):se.set(me.sessionId,{minX:De,minY:vt,maxX:bt,maxY:ft})}const re=[];for(const[he,me]of se){const _e=me.maxX-me.minX+La*2,ke=me.maxY-me.minY+La*2;re.push({id:`group:${he}`,type:"sessionGroup",position:{x:me.minX-La,y:me.minY-La},data:{sessionId:he,w:_e,h:ke},width:_e,height:ke,style:{width:_e,height:ke},zIndex:-1,draggable:!0,selectable:!1,focusable:!1,deletable:!1,connectable:!1})}return re},[Ze,X]),Hn=O.useMemo(()=>[...an,...Ze],[an,Ze]),Sn=O.useMemo(()=>{if(!z)return null;const se=new Set;for(const re of n.current.agents.values())YN(re,z)&&se.add(re.id);return se},[n.current,n.current.lastSeq,z]),en=O.useMemo(()=>{const se=new Set;for(const re of n.current.agents.values())for(const he of re.tools)se.add(KN(he.name));return Object.keys(cg).filter(re=>se.has(re))},[n.current,n.current.lastSeq]),Dt=O.useMemo(()=>{const se=new Map;for(const he of n.current.agents.values())for(const me of he.tools){if(!me.name.startsWith("mcp__"))continue;const _e=me.name.slice(5),ke=_e.indexOf("__"),De=ke>0?_e.slice(0,ke):_e;se.set(De,(se.get(De)??0)+1)}const re=[];for(const[he,me]of se){let _e=5381;for(let ke=0;ke<he.length;ke++)_e=(_e<<5)+_e^he.charCodeAt(ke);re.push({server:he,count:me,hue:Math.abs(_e)%360})}return re.sort((he,me)=>me.count-he.count),re},[n.current,n.current.lastSeq]),un=O.useCallback(se=>{K(re=>{const he=new Set(re);return he.has(se)?he.delete(se):he.add(se),he})},[]),_t=l?n.current.agents.get(l):null,$r=d?Array.from(n.current.agents.values()).flatMap(se=>se.tools).find(se=>se.id===d)??null:null,ur=O.useCallback(async()=>{try{await fetch("/api/clear",{method:"POST"})}catch{}n.current=og(),q.current.clear(),pt.current.clear(),Le.current.clear(),mt.current="",uE(),m(),s()},[s,m]),lr=O.useCallback(()=>{q.current.clear(),Le.current.clear(),mt.current="",uE(),s(),window.setTimeout(()=>{try{e.fitView({padding:.25,duration:500})}catch{}je.current=Date.now()},80)},[s,e]),cr=O.useCallback(()=>{try{e.fitView({padding:.25,duration:500})}catch{}je.current=Date.now()},[e]),fr=O.useCallback(se=>{if(Ze.length===0)return;const re=Ze.slice().sort((ke,De)=>ke.position.y-De.position.y||ke.position.x-De.position.x),he=l?re.findIndex(ke=>ke.id===l):-1;let me;he===-1?me=se===1?0:re.length-1:me=(he+se+re.length)%re.length;const _e=re[me];_e&&(h(_e.id,!1),window.setTimeout(()=>{try{e.fitView({padding:.35,duration:350,nodes:[_e]})}catch{}je.current=Date.now()},30))},[Ze,l,h,e]);O.useEffect(()=>{const se=re=>{var me,_e;const he=((me=re.target)==null?void 0:me.tagName)==="INPUT";if(re.key==="Escape"){he?re.target.blur():m();return}if(!he){if(re.key==="/"){re.preventDefault(),(_e=ge.current)==null||_e.focus();return}re.key===" "&&(re.preventDefault(),G(ke=>!ke)),(re.key==="c"||re.key==="C")&&ur(),(re.key==="r"||re.key==="R")&&lr(),(re.key==="f"||re.key==="F")&&cr(),(re.key==="l"||re.key==="L")&&T(ke=>!ke),(re.key==="h"||re.key==="H")&&j(ke=>!ke),(re.key==="u"||re.key==="U")&&L(ke=>!ke),(re.key==="j"||re.key==="J")&&fr(1),(re.key==="k"||re.key==="K")&&fr(-1),(re.key==="t"||re.key==="T")&&oe(ke=>ke==="dark"?"light":"dark")}};return window.addEventListener("keydown",se),()=>window.removeEventListener("keydown",se)},[ur,lr,cr,m,fr]);const ln=n.current.agents.size,Dr=new Set(Array.from(n.current.agents.values()).map(se=>se.sessionId)).size,gt=O.useMemo(()=>{let se=0,re=0,he=0,me=0,_e=0,ke=0,De=0,vt=0,bt=0;for(const ft of n.current.agents.values()){se+=ft.usage.inputTokens,re+=ft.usage.outputTokens,he+=ft.usage.cacheReadTokens,me+=ft.usage.cacheCreateTokens;const Je=Bt(ft.usage,ft.model);_e+=Je.total,ke+=Je.input,De+=Je.output,vt+=Je.cacheRead,bt+=Je.cacheWrite}return{inT:se,outT:re,cacheR:he,cacheC:me,sum:se+re,cost:{total:_e,input:ke,output:De,cacheRead:vt,cacheWrite:bt}}},[n.current,n.current.lastSeq]);return _.jsxs("div",{className:"app",children:[_.jsxs("header",{className:"topbar",children:[_.jsxs("div",{className:"brand",children:[_.jsx("span",{className:"logo"}),"agents-deck ",_.jsxs("span",{className:"v",children:["v","1.20.2"]})]}),_t&&(()=>{const se=Bt(_t.usage,_t.model),re=Math.max(0,((_t.endedAt??X)-_t.startedAt)/1e3),he=_t.state==="active"?Za(se.total,re):null,me=o.size-1;return _.jsxs("button",{type:"button",className:"selected-ribbon",title:`Fit view to ${_t.label}`,onClick:()=>{try{const _e=Ze.find(ke=>ke.id===_t.id);_e&&e.fitView({padding:.35,duration:500,nodes:[_e]}),je.current=Date.now()}catch{}},children:[_.jsx("span",{className:`state-pill state-${_t.state}`,children:_t.state==="active"?"live":_t.state}),_.jsx("span",{className:"selected-label",children:_t.label}),se.total>0&&_.jsxs("span",{className:"selected-cost",children:[ze(se.total),he?_.jsxs("span",{className:"selected-rate",children:[" · ",he]}):null]}),me>0&&_.jsxs("span",{className:"selected-extra",children:["+",me]}),_.jsx("span",{role:"button","aria-label":"Deselect",className:"selected-close",onClick:_e=>{_e.stopPropagation(),m()},children:"×"})]})})(),_.jsxs("div",{className:"actions",children:[_.jsxs("div",{className:"search",children:[_.jsx("span",{className:"search-icon","aria-hidden":!0,children:"⌕"}),_.jsx("input",{ref:ge,type:"text",placeholder:"Search agents, cwd, tools…",value:z,onChange:se=>ae(se.target.value),spellCheck:!1,"aria-label":"Filter the graph"}),z?_.jsx("button",{className:"search-clear","aria-label":"Clear search",onClick:()=>ae(""),children:"×"}):_.jsx("kbd",{className:"search-kbd","aria-hidden":!0,children:"/"})]}),_.jsxs("span",{className:"status",role:"status",children:[_.jsx("span",{className:`pill ${Q?"live":"dead"}`,title:Q?"Receiving events":"SSE disconnected",children:Q?"live":"offline"}),_.jsxs("span",{className:"stat",title:"Distinct CC sessions",children:[_.jsx("span",{className:"count",children:Dr}),_.jsx("span",{className:"lbl",children:"sessions"})]}),_.jsxs("span",{className:"stat",title:"Total agents (root + subagents)",children:[_.jsx("span",{className:"count",children:ln}),_.jsx("span",{className:"lbl",children:"agents"})]}),_.jsxs("span",{className:"stat",title:"Total hook events received",children:[_.jsx("span",{className:"count",children:n.current.totalEvents}),_.jsx("span",{className:"lbl",children:"events"})]}),gt.sum>0&&_.jsxs("span",{className:"stat",title:`in:${gt.inT.toLocaleString()} out:${gt.outT.toLocaleString()} cache-r:${gt.cacheR.toLocaleString()} cache-c:${gt.cacheC.toLocaleString()}`,children:[_.jsx("span",{className:"count",children:ML(gt.sum)}),_.jsx("span",{className:"lbl",children:"tokens"})]}),Dt.length>0&&_.jsxs("span",{className:"stat mcp-legend",title:`MCP servers seen this session:
|
|
60
60
|
${Dt.map(se=>` ${se.server}: ${se.count} call${se.count===1?"":"s"}`).join(`
|
|
61
61
|
`)}`,children:[Dt.slice(0,6).map(se=>_.jsx("span",{className:"mcp-dot",style:{background:`hsl(${se.hue} 65% 65%)`}},se.server)),Dt.length>6&&_.jsxs("span",{className:"mcp-more",children:["+",Dt.length-6]}),_.jsx("span",{className:"lbl",children:"mcp"})]}),gt.cost.total>0&&(()=>{let se=0,re=0;for(const _e of n.current.agents.values()){if(_e.state!=="active")continue;const ke=Bt(_e.usage,_e.model);se+=ke.total,re=Math.max(re,((_e.endedAt??X)-_e.startedAt)/1e3)}const he=re>0?Za(se,re):null,me=`input ${ze(gt.cost.input)} + output ${ze(gt.cost.output)} + cache r ${ze(gt.cost.cacheRead)} + cache w ${ze(gt.cost.cacheWrite)}${he?`
|
|
62
62
|
active burn: ${he}`:""}`;return _.jsxs("span",{className:"stat",title:me,children:[_.jsx("span",{className:"count",children:ze(gt.cost.total)}),_.jsxs("span",{className:"lbl",children:["cost",he?` · ${he}`:""]})]})})()]}),_.jsx("button",{className:`btn ${R?"warn":""}`,onClick:()=>G(se=>!se),title:"Pause/resume live updates (Space)",children:R?`Resume${B.current.length?` · ${B.current.length}`:""}`:"Pause"}),_.jsx("button",{className:`btn icon-btn ${D?"primary":""}`,onClick:()=>L(se=>!se),title:`${D?"Hide":"Show"} usage panel (U)`,"aria-label":"Toggle usage panel",children:"$"}),_.jsx("button",{className:`btn icon-btn ${E?"primary":""}`,onClick:()=>T(se=>!se),title:`${E?"Hide":"Show"} session list (L)`,"aria-label":"Toggle session list",children:"☰"}),_.jsx("button",{className:`btn icon-btn ${C?"primary":""}`,onClick:()=>j(se=>!se),title:`${C?"Hide":"Show"} activity timeline (H)`,"aria-label":"Toggle activity timeline",children:"⏱"}),_.jsx("button",{className:"btn",onClick:lr,title:"Auto-arrange — clear pins (R)",children:"Re-layout"}),_.jsx("button",{className:"btn",onClick:ur,title:"Clear canvas (C)",children:"Clear"}),_.jsx("button",{className:"btn icon-btn",onClick:()=>oe(se=>se==="dark"?"light":"dark"),title:`Switch to ${Z==="dark"?"light":"dark"} mode (T)`,"aria-label":"Toggle theme",children:Z==="dark"?"☀":"☾"})]})]}),ce&&!Q&&_.jsxs("div",{className:"conn-banner",role:"alert",children:[_.jsx("span",{className:"conn-dot"}),"Lost connection to agents-deck server. Reconnecting…"]}),D&&_.jsx(fq,{state:n.current,now:X,onClose:()=>L(!1)}),E&&_.jsx(XP,{state:n.current,now:X,selectedIds:o,onSelect:se=>{h(se,!1),window.setTimeout(()=>{try{const re=Ze.find(he=>he.id===se);re&&e.fitView({padding:.3,duration:500,nodes:[re]}),je.current=Date.now()}catch{}},60)},onClose:()=>T(!1)}),_.jsxs("div",{className:"canvas-wrap",children:[ln===0&&_.jsx(n$,{live:Q,everConnected:ce}),en.length>1&&_.jsx("div",{className:"cat-filter-bar",role:"toolbar","aria-label":"Filter tools by category",children:en.map(se=>{const re=$.has(se);return _.jsxs("button",{type:"button",className:`cat-filter${re?" off":""}`,onClick:()=>un(se),title:`${re?"Show":"Hide"} ${fg[se]} tools`,children:[_.jsx("span",{className:"cat-emoji",children:cg[se]}),_.jsx("span",{className:"cat-name",children:fg[se]})]},se)})}),_.jsxs(Cb,{nodes:Hn,edges:Pt,nodeTypes:PL,fitView:!I,fitViewOptions:{padding:.25,duration:400},minZoom:.2,maxZoom:1.6,panOnScroll:!0,nodesDraggable:!0,nodesConnectable:!1,selectionOnDrag:!1,onNodeClick:(se,re)=>{if(re.type==="sessionGroup"){m();return}h(re.id,se.shiftKey)},onPaneClick:()=>m(),onMoveStart:()=>{Rt()},onMove:(se,re)=>{st(),Ve.current&&window.clearTimeout(Ve.current),Ve.current=window.setTimeout(()=>YL(re),250)},onNodeDragStart:(se,re)=>{var he;if(st(),Rt(),re.type==="sessionGroup"){const me=(he=re.data)==null?void 0:he.sessionId,_e=new Map;if(me)for(const ke of Ze){const De=ke.data;(De==null?void 0:De.sessionId)===me&&_e.set(ke.id,{x:ke.position.x,y:ke.position.y})}V.current={start:{x:re.position.x,y:re.position.y},members:_e};return}q.current.set(re.id,{x:re.position.x,y:re.position.y})},onNodeDrag:(se,re)=>{if(st(),re.type==="sessionGroup"){const he=V.current;if(!he)return;const me=re.position.x-he.start.x,_e=re.position.y-he.start.y;for(const[ke,De]of he.members){const vt={x:De.x+me,y:De.y+_e};q.current.set(ke,vt),Le.current.set(ke,vt)}H(ke=>ke+1);return}q.current.set(re.id,{x:re.position.x,y:re.position.y}),Le.current.set(re.id,{x:re.position.x,y:re.position.y})},onNodeDragStop:(se,re)=>{if(st(),re.type==="sessionGroup"){const he=V.current;if(he){const me=re.position.x-he.start.x,_e=re.position.y-he.start.y;for(const[ke,De]of he.members){const vt={x:De.x+me,y:De.y+_e};q.current.set(ke,vt),Le.current.set(ke,vt)}}V.current=null,aE(q.current),H(me=>me+1);return}q.current.set(re.id,{x:re.position.x,y:re.position.y}),Le.current.set(re.id,{x:re.position.x,y:re.position.y}),aE(q.current)},children:[_.jsx(BM,{gap:28,size:1,color:Zr("--grid-line")}),_.jsx(mP,{}),_.jsx(HP,{agents:n.current.agents,visibleAgentIds:Vt,positions:Le.current,pinned:q.current,measured:pt.current,dimUnmatched:Sn,spotlight:ot,hiddenCategories:$,now:X,onOpenTool:p}),_.jsx(OM,{showInteractive:!1,children:_.jsx(Vi,{onClick:Ut,title:Ge?"Recenter view + re-enable autofit":"Recenter view (autofit already on)","aria-label":"Recenter view",style:Ge?{color:"var(--accent)"}:void 0,children:_.jsxs("svg",{width:"14",height:"14",viewBox:"0 0 24 24","aria-hidden":!0,children:[_.jsx("circle",{cx:"12",cy:"12",r:"3.5",fill:"none",stroke:"currentColor",strokeWidth:"2"}),_.jsx("path",{d:"M12 2v4M12 18v4M2 12h4M18 12h4",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",fill:"none"})]})})}),_.jsx(RM,{zoomable:!0,pannable:!0,nodeColor:se=>{const re=se.data;return re.state==="err"?Zr("--err"):re.state==="active"?Zr("--inflight"):Zr("--ok")},nodeStrokeWidth:2,maskColor:Zr("--minimap-mask"),style:{background:Zr("--panel"),border:`1px solid ${Zr("--line")}`,borderRadius:8}})]}),C&&ln>0&&_.jsx(nq,{agents:n.current.agents,visibleAgentIds:Vt,now:X,costSamples:ye.current,onSelect:se=>h(se,!1),onOpenTool:p,onClose:()=>j(!1)})]}),M?_.jsxs("aside",{className:"detail",children:[_.jsx("button",{type:"button",className:"detail-close",title:"Close panel","aria-label":"Close detail panel",onClick:()=>A(!1),children:"×"}),_t?_.jsx(s$,{agent:_t,now:X,onOpenTool:p,onShowSummary:se=>{S.current.has(se)&&(S.current.delete(se),oE(S.current)),w(se)},onExportSession:se=>XL(n.current,se)}):_.jsx(i$,{count:ln})]}):_.jsx("button",{type:"button",className:"detail-reopen",title:"Show detail panel","aria-label":"Show detail panel",onClick:()=>A(!0),children:"‹"}),$r&&_.jsx(fP,{tool:$r,onClose:()=>p(null)}),b&&(()=>{const se=n.current.agents.get(b);return se?_.jsx(nP,{agent:se,onClose:()=>x(null)}):null})(),v&&_.jsx(VP,{state:n.current,sessionId:v,onClose:()=>{S.current.add(v),oE(S.current),w(null)}})]})}function n$({live:e,everConnected:n}){const i=!e;return _.jsxs("div",{className:"empty-hero",children:[_.jsxs("div",{className:"orbit-stack","aria-hidden":!0,children:[_.jsx("div",{className:"core"}),_.jsxs("div",{className:"orbit r1",children:[_.jsx("span",{className:"dot"}),_.jsx("span",{className:"dot b"})]}),_.jsxs("div",{className:"orbit r2",children:[_.jsx("span",{className:"dot"}),_.jsx("span",{className:"dot b"})]}),_.jsxs("div",{className:"orbit r3",children:[_.jsx("span",{className:"dot"}),_.jsx("span",{className:"dot b"})]})]}),i?_.jsxs(_.Fragment,{children:[_.jsx("h2",{children:n?"Disconnected from server":"Server unreachable"}),_.jsxs("p",{children:["The browser cannot reach ",_.jsx("code",{children:"/events"}),". Check that",_.jsx("code",{children:"agents-deck"})," is still running in your terminal, then this page will resume automatically."]})]}):r$()]})}function r$(){return _.jsxs(_.Fragment,{children:[_.jsx("h2",{children:"Waiting for Claude Code or Codex"}),_.jsxs("p",{children:["Run ",_.jsx("code",{children:"claude"})," or ",_.jsx("code",{children:"codex"})," in any folder. As soon as a session sends an event, a node appears here and grows as subagents fork and tools are called."]}),_.jsxs("p",{className:"hint-row",children:["Not seeing anything? Make sure ",_.jsx("code",{children:"agents-deck"})," is running and that hooks are installed in ",_.jsx("code",{children:"~/.claude/settings.json"})," and"," ",_.jsx("code",{children:"~/.codex/hooks.json"}),". (Codex requires"," ",_.jsx("code",{children:"/hooks"})," trust on first run.)"]})]})}function i$({count:e}){return _.jsxs(_.Fragment,{children:[_.jsx("h3",{children:"Detail"}),e===0?_.jsxs("div",{className:"hint",children:["No data yet. Start a Claude Code or Codex session anywhere on this machine — agents-deck is in ",_.jsx("code",{children:"--all"})," mode and listens to every workspace."]}):_.jsx("div",{className:"empty",children:"Click an agent to see its tools."}),_.jsx("h3",{style:{marginTop:4},children:"Shortcuts"}),_.jsxs("div",{className:"shortcuts",children:[_.jsxs("div",{className:"sc",children:[_.jsx("kbd",{children:"drag"}),_.jsx("span",{children:"move a node"})]}),_.jsxs("div",{className:"sc",children:[_.jsx("kbd",{children:"/"}),_.jsx("span",{children:"focus search"})]}),_.jsxs("div",{className:"sc",children:[_.jsx("kbd",{children:"space"}),_.jsx("span",{children:"pause / resume"})]}),_.jsxs("div",{className:"sc",children:[_.jsx("kbd",{children:"J"}),_.jsx("span",{children:"next agent"})]}),_.jsxs("div",{className:"sc",children:[_.jsx("kbd",{children:"K"}),_.jsx("span",{children:"previous agent"})]}),_.jsxs("div",{className:"sc",children:[_.jsx("kbd",{children:"R"}),_.jsx("span",{children:"re-arrange"})]}),_.jsxs("div",{className:"sc",children:[_.jsx("kbd",{children:"F"}),_.jsx("span",{children:"fit view"})]}),_.jsxs("div",{className:"sc",children:[_.jsx("kbd",{children:"L"}),_.jsx("span",{children:"session list"})]}),_.jsxs("div",{className:"sc",children:[_.jsx("kbd",{children:"H"}),_.jsx("span",{children:"activity timeline"})]}),_.jsxs("div",{className:"sc",children:[_.jsx("kbd",{children:"U"}),_.jsx("span",{children:"usage panel"})]}),_.jsxs("div",{className:"sc",children:[_.jsx("kbd",{children:"C"}),_.jsx("span",{children:"clear canvas"})]}),_.jsxs("div",{className:"sc",children:[_.jsx("kbd",{children:"T"}),_.jsx("span",{children:"toggle theme"})]}),_.jsxs("div",{className:"sc",children:[_.jsx("kbd",{children:"Esc"}),_.jsx("span",{children:"deselect"})]})]})]})}function s$({agent:e,now:n,onOpenTool:i,onShowSummary:s,onExportSession:o}){const u=(e.endedAt??n)-e.startedAt,l=Math.max(0,Math.floor(u/1e3)),c=l<60?`${l}s`:`${Math.floor(l/60)}m ${String(l%60).padStart(2,"0")}s`,d=Bt(e.usage,e.model),p=d.total>0,h=e.usage.inputTokens+e.usage.outputTokens,m=new Map;for(const x of e.tools){const k=KN(x.name);m.set(k,(m.get(k)??0)+1)}const v=e.tools.filter(x=>x.ok===!1).length,w=e.tools.filter(x=>!x.endedAt).length,b=Array.from(m.entries()).sort((x,k)=>k[1]-x[1]);return _.jsxs(_.Fragment,{children:[_.jsxs("header",{className:"detail-hero",children:[_.jsxs("div",{className:"hero-line",children:[_.jsx("span",{className:`state-pill state-${e.state}`,children:e.state==="active"?"live":e.state}),_.jsx("h2",{className:"hero-title",title:e.cwd??e.label,children:e.label})]}),_.jsxs("div",{className:"hero-meta",children:[_.jsx("span",{className:"hero-meta-item",children:e.kind}),_.jsx("span",{className:"hero-sep",children:"·"}),_.jsx("span",{className:"hero-meta-item",title:`started ${new Date(e.startedAt).toLocaleString()}`,children:c}),e.model&&_.jsxs(_.Fragment,{children:[_.jsx("span",{className:"hero-sep",children:"·"}),_.jsx("span",{className:"model-chip",title:e.model,children:fo(e.model)})]})]}),p&&_.jsxs("div",{className:"hero-cost",children:[_.jsxs("div",{className:"hero-cost-headline",children:[_.jsx("span",{className:"hero-cost-value",children:ze(d.total)}),_.jsx("span",{className:"hero-cost-label",children:"spend"})]}),_.jsx(o$,{cost:d})]}),_.jsxs("div",{className:"hero-actions",children:[e.kind==="root"&&e.state==="done"&&s&&_.jsx("button",{type:"button",className:"btn hero-action-btn",onClick:()=>s(e.sessionId),title:"Reopen the end-of-session recap modal",children:"Show recap"}),o&&_.jsx("button",{type:"button",className:"btn hero-action-btn",onClick:()=>o(e.sessionId),title:"Download this session as JSON",children:"Export JSON"})]})]}),e.tools.length>0&&_.jsxs("section",{className:"detail-section",children:[_.jsx("h3",{children:"Activity"}),_.jsxs("div",{className:"activity-row",children:[_.jsxs("div",{className:"activity-counters",children:[_.jsxs("span",{className:"ac-item",children:[_.jsx("b",{children:e.toolCount})," calls"]}),w>0&&_.jsxs("span",{className:"ac-item ac-live",children:[_.jsx("b",{children:w})," live"]}),v>0&&_.jsxs("span",{className:"ac-item ac-err",children:[_.jsx("b",{children:v})," err"]})]}),_.jsx("div",{className:"cat-strip",children:b.map(([x,k])=>_.jsxs("span",{className:`cat-chip cat-${x}`,title:`${k} ${fg[x]} call${k===1?"":"s"}`,children:[_.jsx("span",{className:"cat-emoji",children:cg[x]}),_.jsx("span",{className:"cat-count",children:k})]},x))})]})]}),h>0&&_.jsxs("section",{className:"detail-section",children:[_.jsx("h3",{children:"Tokens"}),_.jsxs("div",{className:"tokens-grid",children:[_.jsxs("div",{children:[_.jsx("span",{className:"k",children:"in"}),_.jsx("b",{children:e.usage.inputTokens.toLocaleString()})]}),_.jsxs("div",{children:[_.jsx("span",{className:"k",children:"out"}),_.jsx("b",{children:e.usage.outputTokens.toLocaleString()})]}),_.jsxs("div",{children:[_.jsx("span",{className:"k",children:"cache r"}),_.jsx("b",{children:e.usage.cacheReadTokens.toLocaleString()})]}),_.jsxs("div",{children:[_.jsx("span",{className:"k",children:"cache c"}),_.jsx("b",{children:e.usage.cacheCreateTokens.toLocaleString()})]})]})]}),_.jsxs("section",{className:"detail-section",children:[_.jsx("h3",{children:"Identity"}),_.jsxs("div",{children:[e.cwd&&_.jsxs("div",{className:"row",children:[_.jsx("span",{className:"k",children:"cwd"}),_.jsx("span",{className:"v",title:e.cwd,children:e.cwd})]}),_.jsxs("div",{className:"row",children:[_.jsx("span",{className:"k",children:"session"}),_.jsxs("span",{className:"v",children:[e.sessionId.slice(0,12),"…"]})]}),e.parentId&&_.jsxs("div",{className:"row",children:[_.jsx("span",{className:"k",children:"parent"}),_.jsxs("span",{className:"v",children:[e.parentId.slice(0,12),"…"]})]})]})]}),e.prompts.length>0&&_.jsxs("section",{className:"detail-section",children:[_.jsxs("h3",{children:["Prompts ",_.jsx("span",{className:"section-count",children:e.prompts.length})]}),_.jsx("div",{className:"prompts",children:e.prompts.slice().reverse().map((x,k)=>_.jsxs("div",{className:"prompt-entry",children:[_.jsx("div",{className:"prompt-time",children:new Date(x.at).toLocaleTimeString()}),_.jsx("div",{className:"prompt-text",children:x.text})]},k))})]}),_.jsxs("section",{className:"detail-section",children:[_.jsxs("h3",{children:["Tool calls ",_.jsx("span",{className:"section-count",children:e.tools.length})]}),e.tools.length===0&&_.jsx("div",{className:"empty",children:"No tool calls yet."}),_.jsx("div",{children:e.tools.slice().reverse().map(x=>_.jsx(a$,{t:x,now:n,onClick:()=>i(x.id)},x.id))})]})]})}function o$({cost:e}){const n=e.total;if(n<=0)return null;const i=(s,o,u)=>{if(s<=0)return null;const l=s/n*100;return _.jsx("span",{className:`cb-seg ${o}`,style:{width:`${l}%`},title:`${u}: ${ze(s)} (${l.toFixed(0)}%)`},o)};return _.jsxs("div",{className:"cost-bar","aria-label":"Cost breakdown",children:[i(e.input,"cb-input","input"),i(e.output,"cb-output","output"),i(e.cacheRead,"cb-cache-r","cache read"),i(e.cacheWrite,"cb-cache-w","cache write")]})}function a$({t:e,now:n,onClick:i}){const s=e.endedAt==null?"inflight":e.ok===!1?"err":"done",o=(e.endedAt??n)-e.startedAt,u=e.endedAt==null?"…":o<1e3?`${o}ms`:`${(o/1e3).toFixed(1)}s`;return _.jsxs("button",{className:"tool clickable",title:e.inputPreview||e.name,onClick:i,children:[_.jsxs("span",{className:"name",children:[_.jsx("span",{className:`status-dot ${s}`}),e.name]}),_.jsx("span",{style:{color:"var(--muted)"},children:u})]})}const u$=zT.createRoot(document.getElementById("root"));u$.render(_.jsx(e$,{}));
|