var Ft=Object.defineProperty;var r=(e,t)=>Ft(e,"name",{value:t,configurable:!0});var B,H,Ut=Object.defineProperty,Rt=r((e,t)=>Ut(e,"name",{value:t,configurable:!0}),"c$7");function k(e,t,n){n=n||{};var i=e.ownerDocument,s=i.defaultView.CustomEvent;typeof s=="function"?s=new s(t,{detail:n}):(s=i.createEvent("Event"),s.initEvent(t,!1,!1),s.detail=n),e.dispatchEvent(s)}r(k,"o$c"),Rt(k,"dispatch");var zt=Object.defineProperty,be=r((e,t)=>zt(e,"name",{value:t,configurable:!0}),"r$7");function ee(e){return Array.isArray(e)||e instanceof Int8Array||e instanceof Int16Array||e instanceof Int32Array||e instanceof Uint8Array||e instanceof Uint8ClampedArray||e instanceof Uint16Array||e instanceof Uint32Array||e instanceof Float32Array||e instanceof Float64Array}r(ee,"o$b"),be(ee,"isarray");function te(e){return e===(e|0)+""}r(te,"s$4"),be(te,"isindex");var Bt=Object.defineProperty,Ht=r((e,t)=>Bt(e,"name",{value:t,configurable:!0}),"n$8");function $(e){const t=document.createElement("span");return t.className="observablehq--cellname",t.textContent=`${e} = `,t}r($,"c$6"),Ht($,"inspectName");var Vt=Object.defineProperty,Yt=r((e,t)=>Vt(e,"name",{value:t,configurable:!0}),"t$8");const Gt=Symbol.prototype.toString;function j(e){return Gt.call(e)}r(j,"e$6"),Yt(j,"formatSymbol");var Jt=Object.defineProperty,ne=r((e,t)=>Jt(e,"name",{value:t,configurable:!0}),"n$6");const{getOwnPropertySymbols:Kt,prototype:{hasOwnProperty:Zt}}=Object,{toStringTag:Xt}=Symbol,ve={},A=Kt;function I(e,t){return Zt.call(e,t)}r(I,"i$5"),ne(I,"isown");function V(e){return e[Xt]||e.constructor&&e.constructor.name||"Object"}r(V,"l$1"),ne(V,"tagof");function _(e,t){try{const n=e[t];return n&&n.constructor,n}catch{return ve}}r(_,"y$2"),ne(_,"valueof");var Qt=Object.defineProperty,Wt=r((e,t)=>Qt(e,"name",{value:t,configurable:!0}),"i$4");const en=[{symbol:"@@__IMMUTABLE_INDEXED__@@",name:"Indexed",modifier:!0},{symbol:"@@__IMMUTABLE_KEYED__@@",name:"Keyed",modifier:!0},{symbol:"@@__IMMUTABLE_LIST__@@",name:"List",arrayish:!0},{symbol:"@@__IMMUTABLE_MAP__@@",name:"Map"},{symbol:"@@__IMMUTABLE_ORDERED__@@",name:"Ordered",modifier:!0,prefix:!0},{symbol:"@@__IMMUTABLE_RECORD__@@",name:"Record"},{symbol:"@@__IMMUTABLE_SET__@@",name:"Set",arrayish:!0,setish:!0},{symbol:"@@__IMMUTABLE_STACK__@@",name:"Stack",arrayish:!0}];function re(e){try{let t=en.filter(({symbol:o})=>e[o]===!0);if(!t.length)return;const n=t.find(o=>!o.modifier),i=n.name==="Map"&&t.find(o=>o.modifier&&o.prefix),s=t.some(o=>o.arrayish),a=t.some(o=>o.setish);return{name:`${i?i.name:""}${n.name}`,symbols:t,arrayish:s&&!a,setish:a}}catch{return null}}r(re,"y$1"),Wt(re,"immutableName");var tn=Object.defineProperty,b=r((e,t)=>tn(e,"name",{value:t,configurable:!0}),"i$3");const{getPrototypeOf:ie,getOwnPropertyDescriptors:nn}=Object,ye=ie({});function oe(e,t,n,i){let s=ee(e),a,o,l,c;e instanceof Map?e instanceof e.constructor?(a=`Map(${e.size})`,o=ge):(a="Map()",o=P):e instanceof Set?e instanceof e.constructor?(a=`Set(${e.size})`,o=$e):(a="Set()",o=P):s?(a=`${e.constructor.name}(${e.length})`,o=Ce):(c=re(e))?(a=`Immutable.${c.name}${c.name==="Record"?"":`(${e.size})`}`,s=c.arrayish,o=c.arrayish?Ee:c.setish?we:Se):i?(a=V(e),o=xe):(a=V(e),o=P);const u=document.createElement("span");u.className="observablehq--expanded",n&&u.appendChild($(n));const d=u.appendChild(document.createElement("a"));d.innerHTML=` `,d.appendChild(document.createTextNode(`${a}${s?" [":" {"}`)),d.addEventListener("mouseup",function(f){f.stopPropagation(),D(u,Y(e,null,n,i))}),o=o(e);for(let f=0;!(l=o.next()).done&&f<20;++f)u.appendChild(l.value);if(!l.done){const f=u.appendChild(document.createElement("a"));f.className="observablehq--field",f.style.display="block",f.appendChild(document.createTextNode(" \u2026 more")),f.addEventListener("mouseup",function(g){g.stopPropagation(),u.insertBefore(l.value,u.lastChild.previousSibling);for(let O=0;!(l=o.next()).done&&O<19;++O)u.insertBefore(l.value,u.lastChild.previousSibling);l.done&&u.removeChild(u.lastChild.previousSibling),k(u,"load")})}return u.appendChild(document.createTextNode(s?"]":"}")),u}r(oe,"F$2"),b(oe,"inspectExpanded");function*ge(e){for(const[t,n]of e)yield Ne(t,n);yield*P(e)}r(ge,"A$3"),b(ge,"iterateMap");function*$e(e){for(const t of e)yield se(t);yield*P(e)}r($e,"B$1"),b($e,"iterateSet");function*we(e){for(const t of e)yield se(t)}r(we,"D$4"),b(we,"iterateImSet");function*Ce(e){for(let t=0,n=e.length;t ")),n.appendChild(h(t)),n}r(Ne,"J$1"),b(Ne,"formatMapField");function se(e){const t=document.createElement("div");return t.className="observablehq--field",t.appendChild(document.createTextNode(" ")),t.appendChild(h(e)),t}r(se,"k$2"),b(se,"formatSetField");var rn=Object.defineProperty,v=r((e,t)=>rn(e,"name",{value:t,configurable:!0}),"a$3");function ue(e){const t=window.getSelection();return t.type==="Range"&&(t.containsNode(e,!0)||e.contains(t.anchorNode)||e.contains(t.focusNode))}r(ue,"q$1"),v(ue,"hasSelection");function Y(e,t,n,i){let s=ee(e),a,o,l,c;if(e instanceof Map?e instanceof e.constructor?(a=`Map(${e.size})`,o=Oe):(a="Map()",o=q):e instanceof Set?e instanceof e.constructor?(a=`Set(${e.size})`,o=je):(a="Set()",o=q):s?(a=`${e.constructor.name}(${e.length})`,o=Me):(c=re(e))?(a=`Immutable.${c.name}${c.name==="Record"?"":`(${e.size})`}`,s=c.arrayish,o=c.arrayish?qe:c.setish?Pe:Te):(a=V(e),o=q),t){const f=document.createElement("span");return f.className="observablehq--shallow",n&&f.appendChild($(n)),f.appendChild(document.createTextNode(a)),f.addEventListener("mouseup",function(g){ue(f)||(g.stopPropagation(),D(f,Y(e)))}),f}const u=document.createElement("span");u.className="observablehq--collapsed",n&&u.appendChild($(n));const d=u.appendChild(document.createElement("a"));d.innerHTML=` `,d.appendChild(document.createTextNode(`${a}${s?" [":" {"}`)),u.addEventListener("mouseup",function(f){ue(u)||(f.stopPropagation(),D(u,oe(e,null,n,i)))},!0),o=o(e);for(let f=0;!(l=o.next()).done&&f<20;++f)f>0&&u.appendChild(document.createTextNode(", ")),u.appendChild(l.value);return l.done||u.appendChild(document.createTextNode(", \u2026")),u.appendChild(document.createTextNode(s?"]":"}")),u}r(Y,"E$1"),v(Y,"inspectCollapsed");function*Oe(e){for(const[t,n]of e)yield ke(t,n);yield*q(e)}r(Oe,"F$1"),v(Oe,"iterateMap");function*je(e){for(const t of e)yield h(t,!0);yield*q(e)}r(je,"I$2"),v(je,"iterateSet");function*Pe(e){for(const t of e)yield h(t,!0)}r(Pe,"L$3"),v(Pe,"iterateImSet");function*qe(e){let t=-1,n=0;for(const i=e.size;nt+1&&(yield L(n-t-1)),yield h(e.get(n),!0),t=n;n>t+1&&(yield L(n-t-1))}r(qe,"A$2"),v(qe,"iterateImArray");function*Me(e){let t=-1,n=0;for(const i=e.length;nt+1&&(yield L(n-t-1)),yield h(_(e,n),!0),t=n);n>t+1&&(yield L(n-t-1));for(const i in e)!te(i)&&I(e,i)&&(yield M(i,_(e,i),"observablehq--key"));for(const i of A(e))yield M(j(i),_(e,i),"observablehq--symbol")}r(Me,"D$3"),v(Me,"iterateArray");function*q(e){for(const t in e)I(e,t)&&(yield M(t,_(e,t),"observablehq--key"));for(const t of A(e))yield M(j(t),_(e,t),"observablehq--symbol")}r(q,"u$2"),v(q,"iterateObject");function*Te(e){for(const[t,n]of e)yield M(t,n,"observablehq--key")}r(Te,"O$3"),v(Te,"iterateImObject");function L(e){const t=document.createElement("span");return t.className="observablehq--empty",t.textContent=e===1?"empty":`empty \xD7 ${e}`,t}r(L,"h$4"),v(L,"formatEmpty");function M(e,t,n){const i=document.createDocumentFragment(),s=i.appendChild(document.createElement("span"));return s.className=n,s.textContent=e,i.appendChild(document.createTextNode(": ")),i.appendChild(h(t,!0)),i}r(M,"m$1"),v(M,"formatField");function ke(e,t){const n=document.createDocumentFragment();return n.appendChild(h(e,!0)),n.appendChild(document.createTextNode(" => ")),n.appendChild(h(t,!0)),n}r(ke,"P$2"),v(ke,"formatMapField");var on=Object.defineProperty,le=r((e,t)=>on(e,"name",{value:t,configurable:!0}),"i$2");function Ae(e,t){if(e instanceof Date||(e=new Date(+e)),isNaN(e))return typeof t=="function"?t(e):t;const n=e.getUTCHours(),i=e.getUTCMinutes(),s=e.getUTCSeconds(),a=e.getUTCMilliseconds();return`${Ie(e.getUTCFullYear())}-${C(e.getUTCMonth()+1,2)}-${C(e.getUTCDate(),2)}${n||i||s||a?`T${C(n,2)}:${C(i,2)}${s||a?`:${C(s,2)}${a?`.${C(a,3)}`:""}`:""}Z`:""}`}r(Ae,"c$4"),le(Ae,"format");function Ie(e){return e<0?`-${C(-e,6)}`:e>9999?`+${C(e,6)}`:C(e,4)}r(Ie,"f$6"),le(Ie,"formatYear");function C(e,t){return`${e}`.padStart(t,"0")}r(C,"t$7"),le(C,"pad");var an=Object.defineProperty,sn=r((e,t)=>an(e,"name",{value:t,configurable:!0}),"t$6");const un=/^(?:[-+]\d{2})?\d{4}(?:-\d{2}(?:-\d{2})?)?(?:T\d{2}:\d{2}(?::\d{2}(?:\.\d{3})?)?(?:Z|[-+]\d{2}:?\d{2})?)?$/;function ln(e,t){return un.test(e+="")?new Date(e):typeof t=="function"?t(e):t}r(ln,"r$5"),sn(ln,"parse");var cn=Object.defineProperty,dn=r((e,t)=>cn(e,"name",{value:t,configurable:!0}),"r$4");function Le(e){return Ae(e,"Invalid Date")}r(Le,"f$5"),dn(Le,"formatDate");var fn=Object.defineProperty,pn=r((e,t)=>fn(e,"name",{value:t,configurable:!0}),"t$5"),mn=Error.prototype.toString;function De(e){return e.stack||mn.call(e)}r(De,"e$4"),pn(De,"formatError");var hn=Object.defineProperty,_n=r((e,t)=>hn(e,"name",{value:t,configurable:!0}),"r$3"),bn=RegExp.prototype.toString;function Fe(e){return bn.call(e)}r(Fe,"g$1"),_n(Fe,"formatRegExp");var vn=Object.defineProperty,G=r((e,t)=>vn(e,"name",{value:t,configurable:!0}),"s$1");const ce=20;function Ue(e,t,n,i){if(t===!1){if(fe(e,/["\n]/g)<=fe(e,/`|\${/g)){const u=document.createElement("span");i&&u.appendChild($(i));const d=u.appendChild(document.createElement("span"));return d.className="observablehq--string",d.textContent=JSON.stringify(e),u}const o=e.split(` `);if(o.length>ce&&!n){const u=document.createElement("div");i&&u.appendChild($(i));const d=u.appendChild(document.createElement("span"));d.className="observablehq--string",d.textContent="`"+de(o.slice(0,ce).join(` `));const f=u.appendChild(document.createElement("span")),g=o.length-ce;return f.textContent=`Show ${g} truncated line${g>1?"s":""}`,f.className="observablehq--string-expand",f.addEventListener("mouseup",function(O){O.stopPropagation(),D(u,h(e,t,!0,i))}),u}const l=document.createElement("span");i&&l.appendChild($(i));const c=l.appendChild(document.createElement("span"));return c.className=`observablehq--string${n?" observablehq--expanded":""}`,c.textContent="`"+de(e)+"`",l}const s=document.createElement("span");i&&s.appendChild($(i));const a=s.appendChild(document.createElement("span"));return a.className="observablehq--string",a.textContent=JSON.stringify(e.length>100?`${e.slice(0,50)}\u2026${e.slice(-49)}`:e),s}r(Ue,"g"),G(Ue,"formatString");function de(e){return e.replace(/[\\`\x00-\x09\x0b-\x19]|\${/g,Re)}r(de,"h$3"),G(de,"templatify");function Re(e){var t=e.charCodeAt(0);switch(t){case 8:return"\\b";case 9:return"\\t";case 11:return"\\v";case 12:return"\\f";case 13:return"\\r"}return t<16?"\\x0"+t.toString(16):t<32?"\\x"+t.toString(16):"\\"+e}r(Re,"$$2"),G(Re,"templatifyChar");function fe(e,t){for(var n=0;t.exec(e);)++n;return n}r(fe,"C$2"),G(fe,"count");var yn=Object.defineProperty,ze=r((e,t)=>yn(e,"name",{value:t,configurable:!0}),"a$1"),gn=Function.prototype.toString,$n={prefix:"async \u0192"},wn={prefix:"async \u0192*"},Be={prefix:"class"},Cn={prefix:"\u0192"},En={prefix:"\u0192*"};function He(e,t){var n,i,s=gn.call(e);switch(e.constructor&&e.constructor.name){case"AsyncFunction":n=$n;break;case"AsyncGeneratorFunction":n=wn;break;case"GeneratorFunction":n=En;break;default:n=/^class\b/.test(s)?Be:Cn;break}return n===Be?T(n,"",t):(i=/^(?:async\s*)?(\w+)\s*=>/.exec(s))?T(n,"("+i[1]+")",t):(i=/^(?:async\s*)?\(\s*(\w+(?:\s*,\s*\w+)*)?\s*\)/.exec(s))?T(n,i[1]?"("+i[1].replace(/\s*,\s*/g,", ")+")":"()",t):(i=/^(?:async\s*)?function(?:\s*\*)?(?:\s*\w+)?\s*\(\s*(\w+(?:\s*,\s*\w+)*)?\s*\)/.exec(s))?T(n,i[1]?"("+i[1].replace(/\s*,\s*/g,", ")+")":"()",t):T(n,"(\u2026)",t)}r(He,"y"),ze(He,"inspectFunction");function T(e,t,n){var i=document.createElement("span");i.className="observablehq--function",n&&i.appendChild($(n));var s=i.appendChild(document.createElement("span"));return s.className="observablehq--keyword",s.textContent=e.prefix,i.appendChild(document.createTextNode(t)),i}r(T,"c$3"),ze(T,"formatFunction");var xn=Object.defineProperty,Ve=r((e,t)=>xn(e,"name",{value:t,configurable:!0}),"c$2");const{prototype:{toString:Sn}}=Object;function h(e,t,n,i,s){let a=typeof e;switch(a){case"boolean":case"undefined":{e+="";break}case"number":{e=e===0&&1/e<0?"-0":e+"";break}case"bigint":{e=e+"n";break}case"symbol":{e=j(e);break}case"function":return He(e,i);case"string":return Ue(e,t,n,i);default:{if(e===null){a=null,e="null";break}if(e instanceof Date){a="date",e=Le(e);break}if(e===ve){a="forbidden",e="[forbidden]";break}switch(Sn.call(e)){case"[object RegExp]":{a="regexp",e=Fe(e);break}case"[object Error]":case"[object DOMException]":{a="error",e=De(e);break}default:return(n?oe:Y)(e,t,i,s)}break}}const o=document.createElement("span");i&&o.appendChild($(i));const l=o.appendChild(document.createElement("span"));return l.className=`observablehq--${a}`,l.textContent=e,o}r(h,"$$1"),Ve(h,"inspect");function D(e,t){e.classList.contains("observablehq--inspect")&&t.classList.add("observablehq--inspect"),e.parentNode.replaceChild(t,e),k(t,"load")}r(D,"z$2"),Ve(D,"replace");var Nn=Object.defineProperty,Ye=r((e,t)=>Nn(e,"name",{value:t,configurable:!0}),"n$2");const On=/\s+\(\d+:\d+\)$/m,Ge=(B=class{constructor(t){if(!t)throw new Error("invalid node");this._node=t,t.classList.add("observablehq")}pending(){const{_node:t}=this;t.classList.remove("observablehq--error"),t.classList.add("observablehq--running")}fulfilled(t,n){const{_node:i}=this;if((!Je(t)||t.parentNode&&t.parentNode!==i)&&(t=h(t,!1,i.firstChild&&i.firstChild.classList&&i.firstChild.classList.contains("observablehq--expanded"),n),t.classList.add("observablehq--inspect")),i.classList.remove("observablehq--running","observablehq--error"),i.firstChild!==t)if(i.firstChild){for(;i.lastChild!==i.firstChild;)i.removeChild(i.lastChild);i.replaceChild(t,i.firstChild)}else i.appendChild(t);k(i,"update")}rejected(t,n){const{_node:i}=this;for(i.classList.remove("observablehq--running"),i.classList.add("observablehq--error");i.lastChild;)i.removeChild(i.lastChild);var s=document.createElement("div");s.className="observablehq--inspect",n&&s.appendChild($(n)),s.appendChild(document.createTextNode((t+"").replace(On,""))),i.appendChild(s),k(i,"error",{error:t})}},r(B,"o"),B);Ye(Ge,"Inspector");let pe=Ge;pe.into=function(e){if(typeof e=="string"&&(e=document.querySelector(e),e==null))throw new Error("container not found");return function(){return new pe(e.appendChild(document.createElement("div")))}};function Je(e){return(e instanceof Element||e instanceof Text)&&e instanceof e.constructor}r(Je,"p$2"),Ye(Je,"isnode");var jn=Object.defineProperty,Pn=r((e,t)=>jn(e,"name",{value:t,configurable:!0}),"o$4");const Ke=(H=class extends Error{constructor(t,n){super(t),this.input=n}},r(H,"e"),H);Pn(Ke,"RuntimeError");let E=Ke;E.prototype.name="RuntimeError";var qn=Object.defineProperty,Mn=r((e,t)=>qn(e,"name",{value:t,configurable:!0}),"t$4");function Ze(e){return e&&typeof e.next=="function"&&typeof e.return=="function"}r(Ze,"f$1"),Mn(Ze,"generatorish");var Tn=Object.defineProperty,kn=r((e,t)=>Tn(e,"name",{value:t,configurable:!0}),"t$3");function J(e){return()=>e}r(J,"e$2"),kn(J,"constant");var An=Object.defineProperty,In=r((e,t)=>An(e,"name",{value:t,configurable:!0}),"n$1");function F(e){return e}r(F,"o$3"),In(F,"identity");var Ln=Object.defineProperty,Dn=r((e,t)=>Ln(e,"name",{value:t,configurable:!0}),"t$2");function Xe(e){return()=>{throw e}}r(Xe,"h$2"),Dn(Xe,"rethrow");const Fn=Array.prototype,Un=Fn.map;var Rn=Object.defineProperty,zn=r((e,t)=>Rn(e,"name",{value:t,configurable:!0}),"o$1");function x(){}r(x,"e"),zn(x,"noop");var Bn=Object.defineProperty,m=r((e,t)=>Bn(e,"name",{value:t,configurable:!0}),"r");const me=1,U=2,K=3,R=Symbol("no-observer"),Hn=Promise.resolve();function N(e,t,n,i){n||(n=R),Object.defineProperties(this,{_observer:{value:n,writable:!0},_definition:{value:Z,writable:!0},_duplicate:{value:void 0,writable:!0},_duplicates:{value:void 0,writable:!0},_indegree:{value:NaN,writable:!0},_inputs:{value:[],writable:!0},_invalidate:{value:x,writable:!0},_module:{value:t},_name:{value:null,writable:!0},_outputs:{value:new Set,writable:!0},_promise:{value:Hn,writable:!0},_reachable:{value:n!==R,writable:!0},_rejector:{value:tt(this)},_shadow:{value:Qe(t,i)},_type:{value:e},_value:{value:void 0,writable:!0},_version:{value:0,writable:!0}})}r(N,"h$1"),m(N,"Variable"),Object.defineProperties(N.prototype,{_pending:{value:at,writable:!0,configurable:!0},_fulfilled:{value:st,writable:!0,configurable:!0},_rejected:{value:ut,writable:!0,configurable:!0},_resolve:{value:rt,writable:!0,configurable:!0},define:{value:nt,writable:!0,configurable:!0},delete:{value:ot,writable:!0,configurable:!0},import:{value:it,writable:!0,configurable:!0}});function Qe(e,t){return t?.shadow?new Map(Object.entries(t.shadow).map(([n,i])=>[n,new N(U,e).define([],i)])):null}r(Qe,"S$1"),m(Qe,"initShadow");function We(e){e._module._runtime._dirty.add(e),e._outputs.add(this)}r(We,"j"),m(We,"variable_attach");function et(e){e._module._runtime._dirty.add(e),e._outputs.delete(this)}r(et,"O$2"),m(et,"variable_detach");function Z(){throw Z}r(Z,"f"),m(Z,"variable_undefined");function S(){throw S}r(S,"b"),m(S,"variable_stale");function tt(e){return t=>{throw t===S?t:t===Z?new E(`${e._name} is not defined`,e._name):t instanceof Error&&t.message?new E(t.message,e._name):new E(`${e._name} could not be resolved`,e._name)}}r(tt,"P$1"),m(tt,"variable_rejector");function he(e){return()=>{throw new E(`${e} is defined more than once`)}}r(he,"w"),m(he,"variable_duplicate");function nt(e,t,n){switch(arguments.length){case 1:{n=e,e=t=null;break}case 2:{n=t,typeof e=="string"?t=null:(t=e,e=null);break}}return X.call(this,e==null?null:String(e),t==null?[]:Un.call(t,this._resolve,this),typeof n=="function"?n:J(n))}r(nt,"I$1"),m(nt,"variable_define");function rt(e){return this._shadow?.get(e)??this._module._resolve(e)}r(rt,"T$1"),m(rt,"variable_resolve");function X(e,t,n){const i=this._module._scope,s=this._module._runtime;if(this._inputs.forEach(et,this),t.forEach(We,this),this._inputs=t,this._definition=n,this._value=void 0,n===x?s._variables.delete(this):s._variables.add(this),e!==this._name||i.get(e)!==this){let a,o;if(this._name)if(this._outputs.size)i.delete(this._name),o=this._module._resolve(this._name),o._outputs=this._outputs,this._outputs=new Set,o._outputs.forEach(function(l){l._inputs[l._inputs.indexOf(this)]=o},this),o._outputs.forEach(s._updates.add,s._updates),s._dirty.add(o).add(this),i.set(this._name,o);else if((o=i.get(this._name))===this)i.delete(this._name);else if(o._type===K)o._duplicates.delete(this),this._duplicate=void 0,o._duplicates.size===1&&(o=o._duplicates.keys().next().value,a=i.get(this._name),o._outputs=a._outputs,a._outputs=new Set,o._outputs.forEach(function(l){l._inputs[l._inputs.indexOf(a)]=o}),o._definition=o._duplicate,o._duplicate=void 0,s._dirty.add(a).add(o),s._updates.add(o),i.set(this._name,o));else throw new Error;if(this._outputs.size)throw new Error;e&&((o=i.get(e))?o._type===K?(this._definition=he(e),this._duplicate=n,o._duplicates.add(this)):o._type===U?(this._outputs=o._outputs,o._outputs=new Set,this._outputs.forEach(function(l){l._inputs[l._inputs.indexOf(o)]=this},this),s._dirty.add(o).add(this),i.set(e,this)):(o._duplicate=o._definition,this._duplicate=n,a=new N(K,this._module),a._name=e,a._definition=this._definition=o._definition=he(e),a._outputs=o._outputs,o._outputs=new Set,a._outputs.forEach(function(l){l._inputs[l._inputs.indexOf(o)]=a}),a._duplicates=new Set([this,o]),s._dirty.add(o).add(a),s._updates.add(o).add(a),i.set(e,a)):i.set(e,this)),this._name=e}return this._version>0&&++this._version,s._updates.add(this),s._compute(),this}r(X,"c"),m(X,"variable_defineImpl");function it(e,t,n){return arguments.length<3&&(n=t,t=e),X.call(this,String(t),[n._resolve(String(e))],F)}r(it,"k$1"),m(it,"variable_import");function ot(){return X.call(this,null,[],x)}r(ot,"z$1"),m(ot,"variable_delete");function at(){this._observer.pending&&this._observer.pending()}r(at,"L$2"),m(at,"variable_pending");function st(e){this._observer.fulfilled&&this._observer.fulfilled(e,this._name)}r(st,"M$2"),m(st,"variable_fulfilled");function ut(e){this._observer.rejected&&this._observer.rejected(e,this._name)}r(ut,"N$1"),m(ut,"variable_rejected");var Vn=Object.defineProperty,y=r((e,t)=>Vn(e,"name",{value:t,configurable:!0}),"n");const lt=Symbol("variable"),ct=Symbol("invalidation"),dt=Symbol("visibility");function z(e,t=[]){Object.defineProperties(this,{_runtime:{value:e},_scope:{value:new Map},_builtins:{value:new Map([["@variable",lt],["invalidation",ct],["visibility",dt],...t])},_source:{value:null,writable:!0}})}r(z,"M$1"),y(z,"Module"),Object.defineProperties(z.prototype,{_resolve:{value:vt,writable:!0,configurable:!0},redefine:{value:ft,writable:!0,configurable:!0},define:{value:pt,writable:!0,configurable:!0},derive:{value:bt,writable:!0,configurable:!0},import:{value:mt,writable:!0,configurable:!0},value:{value:_t,writable:!0,configurable:!0},variable:{value:ht,writable:!0,configurable:!0},builtin:{value:yt,writable:!0,configurable:!0}});function ft(e){const t=this._scope.get(e);if(!t)throw new E(`${e} is not defined`);if(t._type===K)throw new E(`${e} is defined more than once`);return t.define.apply(t,arguments)}r(ft,"O$1"),y(ft,"module_redefine");function pt(){const e=new N(me,this);return e.define.apply(e,arguments)}r(pt,"V$1"),y(pt,"module_define");function mt(){const e=new N(me,this);return e.import.apply(e,arguments)}r(mt,"Y$1"),y(mt,"module_import");function ht(e,t){return new N(me,this,e,t)}r(ht,"$"),y(ht,"module_variable");async function _t(e){let t=this._scope.get(e);if(!t)throw new E(`${e} is not defined`);if(t._observer===R){t=this.variable(!0).define([e],F);try{return await Q(this._runtime,t)}finally{t.delete()}}else return Q(this._runtime,t)}r(_t,"A$1"),y(_t,"module_value");async function Q(e,t){await e._compute();try{return await t._promise}catch(n){if(n===S)return Q(e,t);throw n}}r(Q,"p"),y(Q,"module_revalue");function bt(e,t){const n=new Map,i=new Set,s=[];function a(l){let c=n.get(l);return c||(c=new z(l._runtime,l._builtins),c._source=l,n.set(l,c),s.push([c,l]),i.add(l),c)}r(a,"v"),y(a,"alias");const o=a(this);for(const l of e){const{alias:c,name:u}=typeof l=="object"?l:{name:l};o.import(u,c??u,t)}for(const l of i)for(const[c,u]of l._scope)if(u._definition===F){if(l===this&&o._scope.has(c))continue;const d=u._inputs[0]._module;d._source&&a(d)}for(const[l,c]of s)for(const[u,d]of c._scope){const f=l._scope.get(u);if(!(f&&f._type!==U))if(d._definition===F){const g=d._inputs[0],O=g._module;l.import(g._name,u,n.get(O)||O)}else l.define(u,d._inputs.map(gt),d._definition)}return o}r(bt,"C$1"),y(bt,"module_derive");function vt(e){let t=this._scope.get(e),n;if(!t)if(t=new N(U,this),this._builtins.has(e))t.define(e,J(this._builtins.get(e)));else if(this._runtime._builtin._scope.has(e))t.import(e,this._runtime._builtin);else{try{n=this._runtime._global(e)}catch(i){return t.define(e,Xe(i))}n===void 0?this._scope.set(t._name=e,t):t.define(e,J(n))}return t}r(vt,"R$1"),y(vt,"module_resolve");function yt(e,t){this._builtins.set(e,t)}r(yt,"D$1"),y(yt,"module_builtin");function gt(e){return e._name}r(gt,"N"),y(gt,"variable_name");var Yn=Object.defineProperty,p=r((e,t)=>Yn(e,"name",{value:t,configurable:!0}),"o");const Gn=typeof requestAnimationFrame=="function"?requestAnimationFrame:typeof setImmediate=="function"?setImmediate:e=>setTimeout(e,0);function _e(e,t=Dt){const n=this.module();if(Object.defineProperties(this,{_dirty:{value:new Set},_updates:{value:new Set},_precomputes:{value:[],writable:!0},_computing:{value:null,writable:!0},_init:{value:null,writable:!0},_modules:{value:new Map},_variables:{value:new Set},_disposed:{value:!1,writable:!0},_builtin:{value:n},_global:{value:t}}),e)for(const i in e)new N(U,n).define(i,[],e[i])}r(_e,"k"),p(_e,"Runtime"),Object.defineProperties(_e.prototype,{_precompute:{value:Ct,writable:!0,configurable:!0},_compute:{value:Et,writable:!0,configurable:!0},_computeSoon:{value:xt,writable:!0,configurable:!0},_computeNow:{value:St,writable:!0,configurable:!0},dispose:{value:$t,writable:!0,configurable:!0},module:{value:wt,writable:!0,configurable:!0}});function $t(){this._computing=Promise.resolve(),this._disposed=!0,this._variables.forEach(e=>{e._invalidate(),e._version=NaN})}r($t,"q"),p($t,"runtime_dispose");function wt(e,t=x){let n;if(e===void 0)return(n=this._init)?(this._init=null,n):new z(this);if(n=this._modules.get(e),n)return n;this._init=n=new z(this),this._modules.set(e,n);try{e(this,t)}finally{this._init=null}return n}r(wt,"O"),p(wt,"runtime_module");function Ct(e){this._precomputes.push(e),this._compute()}r(Ct,"T"),p(Ct,"runtime_precompute");function Et(){return this._computing||(this._computing=this._computeSoon())}r(Et,"M"),p(Et,"runtime_compute");function xt(){return new Promise(Gn).then(()=>this._disposed?void 0:this._computeNow())}r(xt,"x"),p(xt,"runtime_computeSoon");async function St(){let e=[],t,n,i=this._precomputes;if(i.length){this._precomputes=[];for(const a of i)a();await Nt(3)}t=new Set(this._dirty),t.forEach(function(a){a._inputs.forEach(t.add,t);const o=Lt(a);o>a._reachable?this._updates.add(a):o{});return t}r(Nt,"F"),p(Nt,"runtime_defer");function Ot(e){const t=new Set(e._inputs);for(const n of t){if(n===e)return!0;n._inputs.forEach(t.add,t)}return!1}r(Ot,"R"),p(Ot,"variable_circular");function jt(e){++e._indegree}r(jt,"V"),p(jt,"variable_increment");function Pt(e){--e._indegree}r(Pt,"z"),p(Pt,"variable_decrement");function qt(e){return e._promise.catch(e._rejector)}r(qt,"C"),p(qt,"variable_value");function W(e){return new Promise(function(t){e._invalidate=t})}r(W,"h"),p(W,"variable_invalidator");function Mt(e,t){let n=typeof IntersectionObserver=="function"&&t._observer&&t._observer._node,i=!n,s=x,a=x,o,l;return n&&(l=new IntersectionObserver(([c])=>(i=c.isIntersecting)&&(o=null,s())),l.observe(n),e.then(()=>(l.disconnect(),l=null,a()))),function(c){return i?Promise.resolve(c):l?(o||(o=new Promise((u,d)=>(s=u,a=d))),o.then(()=>c)):Promise.reject()}}r(Mt,"L"),p(Mt,"variable_intersector");function Tt(e){e._invalidate(),e._invalidate=x,e._pending();const t=e._value,n=++e._version,i=e._inputs,s=e._definition;let a=null;const o=e._promise=e._promise.then(l,l).then(c).then(u);function l(){return Promise.all(i.map(qt))}r(l,"f"),p(l,"init");function c(d){if(e._version!==n)throw S;for(let f=0,g=d.length;f{e._value=d,e._fulfilled(d)},d=>{d===S||e._version!==n||(e._value=void 0,e._rejected(d))})}r(Tt,"Y"),p(Tt,"variable_compute");function kt(e,t,n){const i=e._module._runtime;let s;function a(c){return new Promise(u=>u(n.next(s))).then(({done:u,value:d})=>u?void 0:Promise.resolve(d).then(c))}r(a,"n"),p(a,"compute");function o(){const c=a(u=>{if(e._version!==t)throw S;return s=u,l(u,c).then(()=>i._precompute(o)),e._fulfilled(u),u});c.catch(u=>{u===S||e._version!==t||(l(void 0,c),e._rejected(u))})}r(o,"_"),p(o,"recompute");function l(c,u){return e._value=c,e._promise=u,e._outputs.forEach(i._updates.add,i._updates),i._compute()}return r(l,"f"),p(l,"postcompute"),a(c=>{if(e._version!==t)throw S;return s=c,i._precompute(o),c})}r(kt,"B"),p(kt,"variable_generate");function At(e,t){e._invalidate(),e._invalidate=x,e._pending(),++e._version,e._indegree=NaN,(e._promise=Promise.reject(t)).catch(x),e._value=void 0,e._rejected(t)}r(At,"D"),p(At,"variable_error");function It(e){return function(){e.return()}}r(It,"G"),p(It,"variable_return");function Lt(e){if(e._observer!==R)return!0;const t=new Set(e._outputs);for(const n of t){if(n._observer!==R)return!0;n._outputs.forEach(t.add,t)}return!1}r(Lt,"H"),p(Lt,"variable_reachable");function Dt(e){return globalThis[e]}r(Dt,"J"),p(Dt,"window_global");export{pe as Inspector,_e as Runtime,E as RuntimeError};