spyret 0.1.1 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +78 -22
- package/THIRD_PARTY_NOTICES.txt +28 -1
- package/dist/spyret-browser.amd.js +61 -0
- package/dist/spyret-browser.d.mts +272 -0
- package/dist/spyret-browser.d.ts +272 -0
- package/dist/spyret-browser.global.js +57 -0
- package/dist/spyret-browser.js +57 -0
- package/dist/spyret-browser.mjs +57 -0
- package/dist/spyret.d.mts +29 -1
- package/dist/spyret.d.ts +29 -1
- package/dist/spyret.global.js +12 -6
- package/dist/spyret.js +12 -6
- package/dist/spyret.mjs +12 -6
- package/dist/spyret.pyret.js +66 -0
- package/docs/BROWSER_LIBRARY.md +97 -0
- package/docs/IDE_MIGRATION.md +38 -0
- package/docs/PYRET_CAPTURE.md +4 -2
- package/docs/RELEASING.md +18 -60
- package/docs/SPYTIAL_HOOKS.md +73 -0
- package/docs/SPYTIAL_RULES_REFERENCE.md +51 -0
- package/package.json +29 -8
- package/pyret/spytial.arr +527 -0
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";var ed=Object.create;var yr=Object.defineProperty;var rd=Object.getOwnPropertyDescriptor;var td=Object.getOwnPropertyNames;var nd=Object.getPrototypeOf,id=Object.prototype.hasOwnProperty;var f=(e,r)=>()=>(r||e((r={exports:{}}).exports,r),r.exports),od=(e,r)=>{for(var t in r)yr(e,t,{get:r[t],enumerable:!0})},jn=(e,r,t,n)=>{if(r&&typeof r=="object"||typeof r=="function")for(let i of td(r))!id.call(e,i)&&i!==t&&yr(e,i,{get:()=>r[i],enumerable:!(n=rd(r,i))||n.enumerable});return e};var Mn=(e,r,t)=>(t=e!=null?ed(nd(e)):{},jn(r||!e||!e.__esModule?yr(t,"default",{value:e,enumerable:!0}):t,e)),ad=e=>jn(yr({},"__esModule",{value:!0}),e);var ki=f((M_,Ii)=>{"use strict";function Om(){this.__data__=[],this.size=0}Ii.exports=Om});var xr=f((F_,qi)=>{"use strict";function Cm(e,r){return e===r||e!==e&&r!==r}qi.exports=Cm});var He=f((L_,_i)=>{"use strict";var Pm=xr();function Tm(e,r){for(var t=e.length;t--;)if(Pm(e[t][0],r))return t;return-1}_i.exports=Tm});var Ci=f((D_,Oi)=>{"use strict";var Nm=He(),Rm=Array.prototype,jm=Rm.splice;function Mm(e){var r=this.__data__,t=Nm(r,e);if(t<0)return!1;var n=r.length-1;return t==n?r.pop():jm.call(r,t,1),--this.size,!0}Oi.exports=Mm});var Ti=f(($_,Pi)=>{"use strict";var Fm=He();function Lm(e){var r=this.__data__,t=Fm(r,e);return t<0?void 0:r[t][1]}Pi.exports=Lm});var Ri=f((B_,Ni)=>{"use strict";var Dm=He();function $m(e){return Dm(this.__data__,e)>-1}Ni.exports=$m});var Mi=f((V_,ji)=>{"use strict";var Bm=He();function Vm(e,r){var t=this.__data__,n=Bm(t,e);return n<0?(++this.size,t.push([e,r])):t[n][1]=r,this}ji.exports=Vm});var Ge=f((U_,Fi)=>{"use strict";var Um=ki(),Hm=Ci(),Gm=Ti(),Km=Ri(),zm=Mi();function qe(e){var r=-1,t=e==null?0:e.length;for(this.clear();++r<t;){var n=e[r];this.set(n[0],n[1])}}qe.prototype.clear=Um;qe.prototype.delete=Hm;qe.prototype.get=Gm;qe.prototype.has=Km;qe.prototype.set=zm;Fi.exports=qe});var Di=f((H_,Li)=>{"use strict";var Ym=Ge();function Jm(){this.__data__=new Ym,this.size=0}Li.exports=Jm});var Bi=f((G_,$i)=>{"use strict";function Wm(e){var r=this.__data__,t=r.delete(e);return this.size=r.size,t}$i.exports=Wm});var Ui=f((K_,Vi)=>{"use strict";function Qm(e){return this.__data__.get(e)}Vi.exports=Qm});var Gi=f((z_,Hi)=>{"use strict";function Zm(e){return this.__data__.has(e)}Hi.exports=Zm});var Et=f((Y_,Ki)=>{"use strict";var Xm=typeof global=="object"&&global&&global.Object===Object&&global;Ki.exports=Xm});var K=f((J_,zi)=>{"use strict";var eh=Et(),rh=typeof self=="object"&&self&&self.Object===Object&&self,th=eh||rh||Function("return this")();zi.exports=th});var ge=f((W_,Yi)=>{"use strict";var nh=K(),ih=nh.Symbol;Yi.exports=ih});var Zi=f((Q_,Qi)=>{"use strict";var Ji=ge(),Wi=Object.prototype,oh=Wi.hasOwnProperty,ah=Wi.toString,Ke=Ji?Ji.toStringTag:void 0;function sh(e){var r=oh.call(e,Ke),t=e[Ke];try{e[Ke]=void 0;var n=!0}catch{}var i=ah.call(e);return n&&(r?e[Ke]=t:delete e[Ke]),i}Qi.exports=sh});var eo=f((Z_,Xi)=>{"use strict";var uh=Object.prototype,lh=uh.toString;function ch(e){return lh.call(e)}Xi.exports=ch});var be=f((X_,no)=>{"use strict";var ro=ge(),fh=Zi(),ph=eo(),dh="[object Null]",yh="[object Undefined]",to=ro?ro.toStringTag:void 0;function mh(e){return e==null?e===void 0?yh:dh:to&&to in Object(e)?fh(e):ph(e)}no.exports=mh});var le=f((eO,io)=>{"use strict";function hh(e){var r=typeof e;return e!=null&&(r=="object"||r=="function")}io.exports=hh});var ze=f((rO,oo)=>{"use strict";var gh=be(),bh=le(),wh="[object AsyncFunction]",vh="[object Function]",xh="[object GeneratorFunction]",Ah="[object Proxy]";function Sh(e){if(!bh(e))return!1;var r=gh(e);return r==vh||r==xh||r==wh||r==Ah}oo.exports=Sh});var so=f((tO,ao)=>{"use strict";var Eh=K(),Ih=Eh["__core-js_shared__"];ao.exports=Ih});var co=f((nO,lo)=>{"use strict";var It=so(),uo=(function(){var e=/[^.]+$/.exec(It&&It.keys&&It.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""})();function kh(e){return!!uo&&uo in e}lo.exports=kh});var kt=f((iO,fo)=>{"use strict";var qh=Function.prototype,_h=qh.toString;function Oh(e){if(e!=null){try{return _h.call(e)}catch{}try{return e+""}catch{}}return""}fo.exports=Oh});var yo=f((oO,po)=>{"use strict";var Ch=ze(),Ph=co(),Th=le(),Nh=kt(),Rh=/[\\^$.*+?()[\]{}|]/g,jh=/^\[object .+?Constructor\]$/,Mh=Function.prototype,Fh=Object.prototype,Lh=Mh.toString,Dh=Fh.hasOwnProperty,$h=RegExp("^"+Lh.call(Dh).replace(Rh,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function Bh(e){if(!Th(e)||Ph(e))return!1;var r=Ch(e)?$h:jh;return r.test(Nh(e))}po.exports=Bh});var ho=f((aO,mo)=>{"use strict";function Vh(e,r){return e?.[r]}mo.exports=Vh});var ce=f((sO,go)=>{"use strict";var Uh=yo(),Hh=ho();function Gh(e,r){var t=Hh(e,r);return Uh(t)?t:void 0}go.exports=Gh});var Ar=f((uO,bo)=>{"use strict";var Kh=ce(),zh=K(),Yh=Kh(zh,"Map");bo.exports=Yh});var Ye=f((lO,wo)=>{"use strict";var Jh=ce(),Wh=Jh(Object,"create");wo.exports=Wh});var Ao=f((cO,xo)=>{"use strict";var vo=Ye();function Qh(){this.__data__=vo?vo(null):{},this.size=0}xo.exports=Qh});var Eo=f((fO,So)=>{"use strict";function Zh(e){var r=this.has(e)&&delete this.__data__[e];return this.size-=r?1:0,r}So.exports=Zh});var ko=f((pO,Io)=>{"use strict";var Xh=Ye(),eg="__lodash_hash_undefined__",rg=Object.prototype,tg=rg.hasOwnProperty;function ng(e){var r=this.__data__;if(Xh){var t=r[e];return t===eg?void 0:t}return tg.call(r,e)?r[e]:void 0}Io.exports=ng});var _o=f((dO,qo)=>{"use strict";var ig=Ye(),og=Object.prototype,ag=og.hasOwnProperty;function sg(e){var r=this.__data__;return ig?r[e]!==void 0:ag.call(r,e)}qo.exports=sg});var Co=f((yO,Oo)=>{"use strict";var ug=Ye(),lg="__lodash_hash_undefined__";function cg(e,r){var t=this.__data__;return this.size+=this.has(e)?0:1,t[e]=ug&&r===void 0?lg:r,this}Oo.exports=cg});var To=f((mO,Po)=>{"use strict";var fg=Ao(),pg=Eo(),dg=ko(),yg=_o(),mg=Co();function _e(e){var r=-1,t=e==null?0:e.length;for(this.clear();++r<t;){var n=e[r];this.set(n[0],n[1])}}_e.prototype.clear=fg;_e.prototype.delete=pg;_e.prototype.get=dg;_e.prototype.has=yg;_e.prototype.set=mg;Po.exports=_e});var jo=f((hO,Ro)=>{"use strict";var No=To(),hg=Ge(),gg=Ar();function bg(){this.size=0,this.__data__={hash:new No,map:new(gg||hg),string:new No}}Ro.exports=bg});var Fo=f((gO,Mo)=>{"use strict";function wg(e){var r=typeof e;return r=="string"||r=="number"||r=="symbol"||r=="boolean"?e!=="__proto__":e===null}Mo.exports=wg});var Je=f((bO,Lo)=>{"use strict";var vg=Fo();function xg(e,r){var t=e.__data__;return vg(r)?t[typeof r=="string"?"string":"hash"]:t.map}Lo.exports=xg});var $o=f((wO,Do)=>{"use strict";var Ag=Je();function Sg(e){var r=Ag(this,e).delete(e);return this.size-=r?1:0,r}Do.exports=Sg});var Vo=f((vO,Bo)=>{"use strict";var Eg=Je();function Ig(e){return Eg(this,e).get(e)}Bo.exports=Ig});var Ho=f((xO,Uo)=>{"use strict";var kg=Je();function qg(e){return kg(this,e).has(e)}Uo.exports=qg});var Ko=f((AO,Go)=>{"use strict";var _g=Je();function Og(e,r){var t=_g(this,e),n=t.size;return t.set(e,r),this.size+=t.size==n?0:1,this}Go.exports=Og});var Sr=f((SO,zo)=>{"use strict";var Cg=jo(),Pg=$o(),Tg=Vo(),Ng=Ho(),Rg=Ko();function Oe(e){var r=-1,t=e==null?0:e.length;for(this.clear();++r<t;){var n=e[r];this.set(n[0],n[1])}}Oe.prototype.clear=Cg;Oe.prototype.delete=Pg;Oe.prototype.get=Tg;Oe.prototype.has=Ng;Oe.prototype.set=Rg;zo.exports=Oe});var Jo=f((EO,Yo)=>{"use strict";var jg=Ge(),Mg=Ar(),Fg=Sr(),Lg=200;function Dg(e,r){var t=this.__data__;if(t instanceof jg){var n=t.__data__;if(!Mg||n.length<Lg-1)return n.push([e,r]),this.size=++t.size,this;t=this.__data__=new Fg(n)}return t.set(e,r),this.size=t.size,this}Yo.exports=Dg});var Er=f((IO,Wo)=>{"use strict";var $g=Ge(),Bg=Di(),Vg=Bi(),Ug=Ui(),Hg=Gi(),Gg=Jo();function Ce(e){var r=this.__data__=new $g(e);this.size=r.size}Ce.prototype.clear=Bg;Ce.prototype.delete=Vg;Ce.prototype.get=Ug;Ce.prototype.has=Hg;Ce.prototype.set=Gg;Wo.exports=Ce});var Ir=f((kO,Qo)=>{"use strict";function Kg(e,r){for(var t=-1,n=e==null?0:e.length;++t<n&&r(e[t],t,e)!==!1;);return e}Qo.exports=Kg});var qt=f((qO,Zo)=>{"use strict";var zg=ce(),Yg=(function(){try{var e=zg(Object,"defineProperty");return e({},"",{}),e}catch{}})();Zo.exports=Yg});var _t=f((_O,ea)=>{"use strict";var Xo=qt();function Jg(e,r,t){r=="__proto__"&&Xo?Xo(e,r,{configurable:!0,enumerable:!0,value:t,writable:!0}):e[r]=t}ea.exports=Jg});var Ot=f((OO,ra)=>{"use strict";var Wg=_t(),Qg=xr(),Zg=Object.prototype,Xg=Zg.hasOwnProperty;function eb(e,r,t){var n=e[r];(!(Xg.call(e,r)&&Qg(n,t))||t===void 0&&!(r in e))&&Wg(e,r,t)}ra.exports=eb});var We=f((CO,ta)=>{"use strict";var rb=Ot(),tb=_t();function nb(e,r,t,n){var i=!t;t||(t={});for(var o=-1,a=r.length;++o<a;){var s=r[o],u=n?n(t[s],e[s],s,t,e):void 0;u===void 0&&(u=e[s]),i?tb(t,s,u):rb(t,s,u)}return t}ta.exports=nb});var ia=f((PO,na)=>{"use strict";function ib(e,r){for(var t=-1,n=Array(e);++t<e;)n[t]=r(t);return n}na.exports=ib});var Q=f((TO,oa)=>{"use strict";function ob(e){return e!=null&&typeof e=="object"}oa.exports=ob});var sa=f((NO,aa)=>{"use strict";var ab=be(),sb=Q(),ub="[object Arguments]";function lb(e){return sb(e)&&ab(e)==ub}aa.exports=lb});var Qe=f((RO,ca)=>{"use strict";var ua=sa(),cb=Q(),la=Object.prototype,fb=la.hasOwnProperty,pb=la.propertyIsEnumerable,db=ua((function(){return arguments})())?ua:function(e){return cb(e)&&fb.call(e,"callee")&&!pb.call(e,"callee")};ca.exports=db});var j=f((jO,fa)=>{"use strict";var yb=Array.isArray;fa.exports=yb});var da=f((MO,pa)=>{"use strict";function mb(){return!1}pa.exports=mb});var Te=f((Ze,Pe)=>{"use strict";var hb=K(),gb=da(),ha=typeof Ze=="object"&&Ze&&!Ze.nodeType&&Ze,ya=ha&&typeof Pe=="object"&&Pe&&!Pe.nodeType&&Pe,bb=ya&&ya.exports===ha,ma=bb?hb.Buffer:void 0,wb=ma?ma.isBuffer:void 0,vb=wb||gb;Pe.exports=vb});var Ct=f((FO,ga)=>{"use strict";var xb=9007199254740991,Ab=/^(?:0|[1-9]\d*)$/;function Sb(e,r){var t=typeof e;return r=r??xb,!!r&&(t=="number"||t!="symbol"&&Ab.test(e))&&e>-1&&e%1==0&&e<r}ga.exports=Sb});var kr=f((LO,ba)=>{"use strict";var Eb=9007199254740991;function Ib(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=Eb}ba.exports=Ib});var va=f((DO,wa)=>{"use strict";var kb=be(),qb=kr(),_b=Q(),Ob="[object Arguments]",Cb="[object Array]",Pb="[object Boolean]",Tb="[object Date]",Nb="[object Error]",Rb="[object Function]",jb="[object Map]",Mb="[object Number]",Fb="[object Object]",Lb="[object RegExp]",Db="[object Set]",$b="[object String]",Bb="[object WeakMap]",Vb="[object ArrayBuffer]",Ub="[object DataView]",Hb="[object Float32Array]",Gb="[object Float64Array]",Kb="[object Int8Array]",zb="[object Int16Array]",Yb="[object Int32Array]",Jb="[object Uint8Array]",Wb="[object Uint8ClampedArray]",Qb="[object Uint16Array]",Zb="[object Uint32Array]",C={};C[Hb]=C[Gb]=C[Kb]=C[zb]=C[Yb]=C[Jb]=C[Wb]=C[Qb]=C[Zb]=!0;C[Ob]=C[Cb]=C[Vb]=C[Pb]=C[Ub]=C[Tb]=C[Nb]=C[Rb]=C[jb]=C[Mb]=C[Fb]=C[Lb]=C[Db]=C[$b]=C[Bb]=!1;function Xb(e){return _b(e)&&qb(e.length)&&!!C[kb(e)]}wa.exports=Xb});var qr=f(($O,xa)=>{"use strict";function ew(e){return function(r){return e(r)}}xa.exports=ew});var _r=f((Xe,Ne)=>{"use strict";var rw=Et(),Aa=typeof Xe=="object"&&Xe&&!Xe.nodeType&&Xe,er=Aa&&typeof Ne=="object"&&Ne&&!Ne.nodeType&&Ne,tw=er&&er.exports===Aa,Pt=tw&&rw.process,nw=(function(){try{var e=er&&er.require&&er.require("util").types;return e||Pt&&Pt.binding&&Pt.binding("util")}catch{}})();Ne.exports=nw});var rr=f((BO,Ia)=>{"use strict";var iw=va(),ow=qr(),Sa=_r(),Ea=Sa&&Sa.isTypedArray,aw=Ea?ow(Ea):iw;Ia.exports=aw});var Tt=f((VO,ka)=>{"use strict";var sw=ia(),uw=Qe(),lw=j(),cw=Te(),fw=Ct(),pw=rr(),dw=Object.prototype,yw=dw.hasOwnProperty;function mw(e,r){var t=lw(e),n=!t&&uw(e),i=!t&&!n&&cw(e),o=!t&&!n&&!i&&pw(e),a=t||n||i||o,s=a?sw(e.length,String):[],u=s.length;for(var l in e)(r||yw.call(e,l))&&!(a&&(l=="length"||i&&(l=="offset"||l=="parent")||o&&(l=="buffer"||l=="byteLength"||l=="byteOffset")||fw(l,u)))&&s.push(l);return s}ka.exports=mw});var tr=f((UO,qa)=>{"use strict";var hw=Object.prototype;function gw(e){var r=e&&e.constructor,t=typeof r=="function"&&r.prototype||hw;return e===t}qa.exports=gw});var Nt=f((HO,_a)=>{"use strict";function bw(e,r){return function(t){return e(r(t))}}_a.exports=bw});var Ca=f((GO,Oa)=>{"use strict";var ww=Nt(),vw=ww(Object.keys,Object);Oa.exports=vw});var Or=f((KO,Pa)=>{"use strict";var xw=tr(),Aw=Ca(),Sw=Object.prototype,Ew=Sw.hasOwnProperty;function Iw(e){if(!xw(e))return Aw(e);var r=[];for(var t in Object(e))Ew.call(e,t)&&t!="constructor"&&r.push(t);return r}Pa.exports=Iw});var fe=f((zO,Ta)=>{"use strict";var kw=ze(),qw=kr();function _w(e){return e!=null&&qw(e.length)&&!kw(e)}Ta.exports=_w});var pe=f((YO,Na)=>{"use strict";var Ow=Tt(),Cw=Or(),Pw=fe();function Tw(e){return Pw(e)?Ow(e):Cw(e)}Na.exports=Tw});var ja=f((JO,Ra)=>{"use strict";var Nw=We(),Rw=pe();function jw(e,r){return e&&Nw(r,Rw(r),e)}Ra.exports=jw});var Fa=f((WO,Ma)=>{"use strict";function Mw(e){var r=[];if(e!=null)for(var t in Object(e))r.push(t);return r}Ma.exports=Mw});var Da=f((QO,La)=>{"use strict";var Fw=le(),Lw=tr(),Dw=Fa(),$w=Object.prototype,Bw=$w.hasOwnProperty;function Vw(e){if(!Fw(e))return Dw(e);var r=Lw(e),t=[];for(var n in e)n=="constructor"&&(r||!Bw.call(e,n))||t.push(n);return t}La.exports=Vw});var Cr=f((ZO,$a)=>{"use strict";var Uw=Tt(),Hw=Da(),Gw=fe();function Kw(e){return Gw(e)?Uw(e,!0):Hw(e)}$a.exports=Kw});var Va=f((XO,Ba)=>{"use strict";var zw=We(),Yw=Cr();function Jw(e,r){return e&&zw(r,Yw(r),e)}Ba.exports=Jw});var za=f((nr,Re)=>{"use strict";var Ww=K(),Ka=typeof nr=="object"&&nr&&!nr.nodeType&&nr,Ua=Ka&&typeof Re=="object"&&Re&&!Re.nodeType&&Re,Qw=Ua&&Ua.exports===Ka,Ha=Qw?Ww.Buffer:void 0,Ga=Ha?Ha.allocUnsafe:void 0;function Zw(e,r){if(r)return e.slice();var t=e.length,n=Ga?Ga(t):new e.constructor(t);return e.copy(n),n}Re.exports=Zw});var Ja=f((eC,Ya)=>{"use strict";function Xw(e,r){var t=-1,n=e.length;for(r||(r=Array(n));++t<n;)r[t]=e[t];return r}Ya.exports=Xw});var Rt=f((rC,Wa)=>{"use strict";function ev(e,r){for(var t=-1,n=e==null?0:e.length,i=0,o=[];++t<n;){var a=e[t];r(a,t,e)&&(o[i++]=a)}return o}Wa.exports=ev});var jt=f((tC,Qa)=>{"use strict";function rv(){return[]}Qa.exports=rv});var Pr=f((nC,Xa)=>{"use strict";var tv=Rt(),nv=jt(),iv=Object.prototype,ov=iv.propertyIsEnumerable,Za=Object.getOwnPropertySymbols,av=Za?function(e){return e==null?[]:(e=Object(e),tv(Za(e),function(r){return ov.call(e,r)}))}:nv;Xa.exports=av});var rs=f((iC,es)=>{"use strict";var sv=We(),uv=Pr();function lv(e,r){return sv(e,uv(e),r)}es.exports=lv});var Tr=f((oC,ts)=>{"use strict";function cv(e,r){for(var t=-1,n=r.length,i=e.length;++t<n;)e[i+t]=r[t];return e}ts.exports=cv});var Nr=f((aC,ns)=>{"use strict";var fv=Nt(),pv=fv(Object.getPrototypeOf,Object);ns.exports=pv});var Mt=f((sC,is)=>{"use strict";var dv=Tr(),yv=Nr(),mv=Pr(),hv=jt(),gv=Object.getOwnPropertySymbols,bv=gv?function(e){for(var r=[];e;)dv(r,mv(e)),e=yv(e);return r}:hv;is.exports=bv});var as=f((uC,os)=>{"use strict";var wv=We(),vv=Mt();function xv(e,r){return wv(e,vv(e),r)}os.exports=xv});var Ft=f((lC,ss)=>{"use strict";var Av=Tr(),Sv=j();function Ev(e,r,t){var n=r(e);return Sv(e)?n:Av(n,t(e))}ss.exports=Ev});var Lt=f((cC,us)=>{"use strict";var Iv=Ft(),kv=Pr(),qv=pe();function _v(e){return Iv(e,qv,kv)}us.exports=_v});var cs=f((fC,ls)=>{"use strict";var Ov=Ft(),Cv=Mt(),Pv=Cr();function Tv(e){return Ov(e,Pv,Cv)}ls.exports=Tv});var ps=f((pC,fs)=>{"use strict";var Nv=ce(),Rv=K(),jv=Nv(Rv,"DataView");fs.exports=jv});var ys=f((dC,ds)=>{"use strict";var Mv=ce(),Fv=K(),Lv=Mv(Fv,"Promise");ds.exports=Lv});var Dt=f((yC,ms)=>{"use strict";var Dv=ce(),$v=K(),Bv=Dv($v,"Set");ms.exports=Bv});var gs=f((mC,hs)=>{"use strict";var Vv=ce(),Uv=K(),Hv=Vv(Uv,"WeakMap");hs.exports=Hv});var ve=f((hC,Es)=>{"use strict";var $t=ps(),Bt=Ar(),Vt=ys(),Ut=Dt(),Ht=gs(),Ss=be(),je=kt(),bs="[object Map]",Gv="[object Object]",ws="[object Promise]",vs="[object Set]",xs="[object WeakMap]",As="[object DataView]",Kv=je($t),zv=je(Bt),Yv=je(Vt),Jv=je(Ut),Wv=je(Ht),we=Ss;($t&&we(new $t(new ArrayBuffer(1)))!=As||Bt&&we(new Bt)!=bs||Vt&&we(Vt.resolve())!=ws||Ut&&we(new Ut)!=vs||Ht&&we(new Ht)!=xs)&&(we=function(e){var r=Ss(e),t=r==Gv?e.constructor:void 0,n=t?je(t):"";if(n)switch(n){case Kv:return As;case zv:return bs;case Yv:return ws;case Jv:return vs;case Wv:return xs}return r});Es.exports=we});var ks=f((gC,Is)=>{"use strict";var Qv=Object.prototype,Zv=Qv.hasOwnProperty;function Xv(e){var r=e.length,t=new e.constructor(r);return r&&typeof e[0]=="string"&&Zv.call(e,"index")&&(t.index=e.index,t.input=e.input),t}Is.exports=Xv});var Gt=f((bC,qs)=>{"use strict";var ex=K(),rx=ex.Uint8Array;qs.exports=rx});var Rr=f((wC,Os)=>{"use strict";var _s=Gt();function tx(e){var r=new e.constructor(e.byteLength);return new _s(r).set(new _s(e)),r}Os.exports=tx});var Ps=f((vC,Cs)=>{"use strict";var nx=Rr();function ix(e,r){var t=r?nx(e.buffer):e.buffer;return new e.constructor(t,e.byteOffset,e.byteLength)}Cs.exports=ix});var Ns=f((xC,Ts)=>{"use strict";var ox=/\w*$/;function ax(e){var r=new e.constructor(e.source,ox.exec(e));return r.lastIndex=e.lastIndex,r}Ts.exports=ax});var Ls=f((AC,Fs)=>{"use strict";var Rs=ge(),js=Rs?Rs.prototype:void 0,Ms=js?js.valueOf:void 0;function sx(e){return Ms?Object(Ms.call(e)):{}}Fs.exports=sx});var $s=f((SC,Ds)=>{"use strict";var ux=Rr();function lx(e,r){var t=r?ux(e.buffer):e.buffer;return new e.constructor(t,e.byteOffset,e.length)}Ds.exports=lx});var Vs=f((EC,Bs)=>{"use strict";var cx=Rr(),fx=Ps(),px=Ns(),dx=Ls(),yx=$s(),mx="[object Boolean]",hx="[object Date]",gx="[object Map]",bx="[object Number]",wx="[object RegExp]",vx="[object Set]",xx="[object String]",Ax="[object Symbol]",Sx="[object ArrayBuffer]",Ex="[object DataView]",Ix="[object Float32Array]",kx="[object Float64Array]",qx="[object Int8Array]",_x="[object Int16Array]",Ox="[object Int32Array]",Cx="[object Uint8Array]",Px="[object Uint8ClampedArray]",Tx="[object Uint16Array]",Nx="[object Uint32Array]";function Rx(e,r,t){var n=e.constructor;switch(r){case Sx:return cx(e);case mx:case hx:return new n(+e);case Ex:return fx(e,t);case Ix:case kx:case qx:case _x:case Ox:case Cx:case Px:case Tx:case Nx:return yx(e,t);case gx:return new n;case bx:case xx:return new n(e);case wx:return px(e);case vx:return new n;case Ax:return dx(e)}}Bs.exports=Rx});var Kt=f((IC,Hs)=>{"use strict";var jx=le(),Us=Object.create,Mx=(function(){function e(){}return function(r){if(!jx(r))return{};if(Us)return Us(r);e.prototype=r;var t=new e;return e.prototype=void 0,t}})();Hs.exports=Mx});var Ks=f((kC,Gs)=>{"use strict";var Fx=Kt(),Lx=Nr(),Dx=tr();function $x(e){return typeof e.constructor=="function"&&!Dx(e)?Fx(Lx(e)):{}}Gs.exports=$x});var Ys=f((qC,zs)=>{"use strict";var Bx=ve(),Vx=Q(),Ux="[object Map]";function Hx(e){return Vx(e)&&Bx(e)==Ux}zs.exports=Hx});var Zs=f((_C,Qs)=>{"use strict";var Gx=Ys(),Kx=qr(),Js=_r(),Ws=Js&&Js.isMap,zx=Ws?Kx(Ws):Gx;Qs.exports=zx});var eu=f((OC,Xs)=>{"use strict";var Yx=ve(),Jx=Q(),Wx="[object Set]";function Qx(e){return Jx(e)&&Yx(e)==Wx}Xs.exports=Qx});var iu=f((CC,nu)=>{"use strict";var Zx=eu(),Xx=qr(),ru=_r(),tu=ru&&ru.isSet,e0=tu?Xx(tu):Zx;nu.exports=e0});var lu=f((PC,uu)=>{"use strict";var r0=Er(),t0=Ir(),n0=Ot(),i0=ja(),o0=Va(),a0=za(),s0=Ja(),u0=rs(),l0=as(),c0=Lt(),f0=cs(),p0=ve(),d0=ks(),y0=Vs(),m0=Ks(),h0=j(),g0=Te(),b0=Zs(),w0=le(),v0=iu(),x0=pe(),A0=Cr(),S0=1,E0=2,I0=4,ou="[object Arguments]",k0="[object Array]",q0="[object Boolean]",_0="[object Date]",O0="[object Error]",au="[object Function]",C0="[object GeneratorFunction]",P0="[object Map]",T0="[object Number]",su="[object Object]",N0="[object RegExp]",R0="[object Set]",j0="[object String]",M0="[object Symbol]",F0="[object WeakMap]",L0="[object ArrayBuffer]",D0="[object DataView]",$0="[object Float32Array]",B0="[object Float64Array]",V0="[object Int8Array]",U0="[object Int16Array]",H0="[object Int32Array]",G0="[object Uint8Array]",K0="[object Uint8ClampedArray]",z0="[object Uint16Array]",Y0="[object Uint32Array]",O={};O[ou]=O[k0]=O[L0]=O[D0]=O[q0]=O[_0]=O[$0]=O[B0]=O[V0]=O[U0]=O[H0]=O[P0]=O[T0]=O[su]=O[N0]=O[R0]=O[j0]=O[M0]=O[G0]=O[K0]=O[z0]=O[Y0]=!0;O[O0]=O[au]=O[F0]=!1;function jr(e,r,t,n,i,o){var a,s=r&S0,u=r&E0,l=r&I0;if(t&&(a=i?t(e,n,i,o):t(e)),a!==void 0)return a;if(!w0(e))return e;var p=h0(e);if(p){if(a=d0(e),!s)return s0(e,a)}else{var d=p0(e),c=d==au||d==C0;if(g0(e))return a0(e,s);if(d==su||d==ou||c&&!i){if(a=u||c?{}:m0(e),!s)return u?l0(e,o0(a,e)):u0(e,i0(a,e))}else{if(!O[d])return i?e:{};a=y0(e,d,s)}}o||(o=new r0);var m=o.get(e);if(m)return m;o.set(e,a),v0(e)?e.forEach(function(b){a.add(jr(b,r,t,b,e,o))}):b0(e)&&e.forEach(function(b,g){a.set(g,jr(b,r,t,g,e,o))});var y=l?u?f0:c0:u?A0:x0,h=p?void 0:y(e);return t0(h||e,function(b,g){h&&(g=b,b=e[g]),n0(a,g,jr(b,r,t,g,e,o))}),a}uu.exports=jr});var fu=f((TC,cu)=>{"use strict";var J0=lu(),W0=4;function Q0(e){return J0(e,W0)}cu.exports=Q0});var zt=f((NC,pu)=>{"use strict";function Z0(e){return function(){return e}}pu.exports=Z0});var yu=f((RC,du)=>{"use strict";function X0(e){return function(r,t,n){for(var i=-1,o=Object(r),a=n(r),s=a.length;s--;){var u=a[e?s:++i];if(t(o[u],u,o)===!1)break}return r}}du.exports=X0});var hu=f((jC,mu)=>{"use strict";var eA=yu(),rA=eA();mu.exports=rA});var Yt=f((MC,gu)=>{"use strict";var tA=hu(),nA=pe();function iA(e,r){return e&&tA(e,r,nA)}gu.exports=iA});var wu=f((FC,bu)=>{"use strict";var oA=fe();function aA(e,r){return function(t,n){if(t==null)return t;if(!oA(t))return e(t,n);for(var i=t.length,o=r?i:-1,a=Object(t);(r?o--:++o<i)&&n(a[o],o,a)!==!1;);return t}}bu.exports=aA});var ir=f((LC,vu)=>{"use strict";var sA=Yt(),uA=wu(),lA=uA(sA);vu.exports=lA});var or=f((DC,xu)=>{"use strict";function cA(e){return e}xu.exports=cA});var Su=f(($C,Au)=>{"use strict";var fA=or();function pA(e){return typeof e=="function"?e:fA}Au.exports=pA});var Iu=f((BC,Eu)=>{"use strict";var dA=Ir(),yA=ir(),mA=Su(),hA=j();function gA(e,r){var t=hA(e)?dA:yA;return t(e,mA(r))}Eu.exports=gA});var qu=f((VC,ku)=>{"use strict";ku.exports=Iu()});var Ou=f((UC,_u)=>{"use strict";var bA=ir();function wA(e,r){var t=[];return bA(e,function(n,i,o){r(n,i,o)&&t.push(n)}),t}_u.exports=wA});var Pu=f((HC,Cu)=>{"use strict";var vA="__lodash_hash_undefined__";function xA(e){return this.__data__.set(e,vA),this}Cu.exports=xA});var Nu=f((GC,Tu)=>{"use strict";function AA(e){return this.__data__.has(e)}Tu.exports=AA});var Jt=f((KC,Ru)=>{"use strict";var SA=Sr(),EA=Pu(),IA=Nu();function Mr(e){var r=-1,t=e==null?0:e.length;for(this.__data__=new SA;++r<t;)this.add(e[r])}Mr.prototype.add=Mr.prototype.push=EA;Mr.prototype.has=IA;Ru.exports=Mr});var Mu=f((zC,ju)=>{"use strict";function kA(e,r){for(var t=-1,n=e==null?0:e.length;++t<n;)if(r(e[t],t,e))return!0;return!1}ju.exports=kA});var Wt=f((YC,Fu)=>{"use strict";function qA(e,r){return e.has(r)}Fu.exports=qA});var Qt=f((JC,Lu)=>{"use strict";var _A=Jt(),OA=Mu(),CA=Wt(),PA=1,TA=2;function NA(e,r,t,n,i,o){var a=t&PA,s=e.length,u=r.length;if(s!=u&&!(a&&u>s))return!1;var l=o.get(e),p=o.get(r);if(l&&p)return l==r&&p==e;var d=-1,c=!0,m=t&TA?new _A:void 0;for(o.set(e,r),o.set(r,e);++d<s;){var y=e[d],h=r[d];if(n)var b=a?n(h,y,d,r,e,o):n(y,h,d,e,r,o);if(b!==void 0){if(b)continue;c=!1;break}if(m){if(!OA(r,function(g,v){if(!CA(m,v)&&(y===g||i(y,g,t,n,o)))return m.push(v)})){c=!1;break}}else if(!(y===h||i(y,h,t,n,o))){c=!1;break}}return o.delete(e),o.delete(r),c}Lu.exports=NA});var $u=f((WC,Du)=>{"use strict";function RA(e){var r=-1,t=Array(e.size);return e.forEach(function(n,i){t[++r]=[i,n]}),t}Du.exports=RA});var Fr=f((QC,Bu)=>{"use strict";function jA(e){var r=-1,t=Array(e.size);return e.forEach(function(n){t[++r]=n}),t}Bu.exports=jA});var Ku=f((ZC,Gu)=>{"use strict";var Vu=ge(),Uu=Gt(),MA=xr(),FA=Qt(),LA=$u(),DA=Fr(),$A=1,BA=2,VA="[object Boolean]",UA="[object Date]",HA="[object Error]",GA="[object Map]",KA="[object Number]",zA="[object RegExp]",YA="[object Set]",JA="[object String]",WA="[object Symbol]",QA="[object ArrayBuffer]",ZA="[object DataView]",Hu=Vu?Vu.prototype:void 0,Zt=Hu?Hu.valueOf:void 0;function XA(e,r,t,n,i,o,a){switch(t){case ZA:if(e.byteLength!=r.byteLength||e.byteOffset!=r.byteOffset)return!1;e=e.buffer,r=r.buffer;case QA:return!(e.byteLength!=r.byteLength||!o(new Uu(e),new Uu(r)));case VA:case UA:case KA:return MA(+e,+r);case HA:return e.name==r.name&&e.message==r.message;case zA:case JA:return e==r+"";case GA:var s=LA;case YA:var u=n&$A;if(s||(s=DA),e.size!=r.size&&!u)return!1;var l=a.get(e);if(l)return l==r;n|=BA,a.set(e,r);var p=FA(s(e),s(r),n,i,o,a);return a.delete(e),p;case WA:if(Zt)return Zt.call(e)==Zt.call(r)}return!1}Gu.exports=XA});var Ju=f((XC,Yu)=>{"use strict";var zu=Lt(),eS=1,rS=Object.prototype,tS=rS.hasOwnProperty;function nS(e,r,t,n,i,o){var a=t&eS,s=zu(e),u=s.length,l=zu(r),p=l.length;if(u!=p&&!a)return!1;for(var d=u;d--;){var c=s[d];if(!(a?c in r:tS.call(r,c)))return!1}var m=o.get(e),y=o.get(r);if(m&&y)return m==r&&y==e;var h=!0;o.set(e,r),o.set(r,e);for(var b=a;++d<u;){c=s[d];var g=e[c],v=r[c];if(n)var E=a?n(v,g,c,r,e,o):n(g,v,c,e,r,o);if(!(E===void 0?g===v||i(g,v,t,n,o):E)){h=!1;break}b||(b=c=="constructor")}if(h&&!b){var T=e.constructor,M=r.constructor;T!=M&&"constructor"in e&&"constructor"in r&&!(typeof T=="function"&&T instanceof T&&typeof M=="function"&&M instanceof M)&&(h=!1)}return o.delete(e),o.delete(r),h}Yu.exports=nS});var nl=f((eP,tl)=>{"use strict";var Xt=Er(),iS=Qt(),oS=Ku(),aS=Ju(),Wu=ve(),Qu=j(),Zu=Te(),sS=rr(),uS=1,Xu="[object Arguments]",el="[object Array]",Lr="[object Object]",lS=Object.prototype,rl=lS.hasOwnProperty;function cS(e,r,t,n,i,o){var a=Qu(e),s=Qu(r),u=a?el:Wu(e),l=s?el:Wu(r);u=u==Xu?Lr:u,l=l==Xu?Lr:l;var p=u==Lr,d=l==Lr,c=u==l;if(c&&Zu(e)){if(!Zu(r))return!1;a=!0,p=!1}if(c&&!p)return o||(o=new Xt),a||sS(e)?iS(e,r,t,n,i,o):oS(e,r,u,t,n,i,o);if(!(t&uS)){var m=p&&rl.call(e,"__wrapped__"),y=d&&rl.call(r,"__wrapped__");if(m||y){var h=m?e.value():e,b=y?r.value():r;return o||(o=new Xt),i(h,b,t,n,o)}}return c?(o||(o=new Xt),aS(e,r,t,n,i,o)):!1}tl.exports=cS});var en=f((rP,al)=>{"use strict";var fS=nl(),il=Q();function ol(e,r,t,n,i){return e===r?!0:e==null||r==null||!il(e)&&!il(r)?e!==e&&r!==r:fS(e,r,t,n,ol,i)}al.exports=ol});var ul=f((tP,sl)=>{"use strict";var pS=Er(),dS=en(),yS=1,mS=2;function hS(e,r,t,n){var i=t.length,o=i,a=!n;if(e==null)return!o;for(e=Object(e);i--;){var s=t[i];if(a&&s[2]?s[1]!==e[s[0]]:!(s[0]in e))return!1}for(;++i<o;){s=t[i];var u=s[0],l=e[u],p=s[1];if(a&&s[2]){if(l===void 0&&!(u in e))return!1}else{var d=new pS;if(n)var c=n(l,p,u,e,r,d);if(!(c===void 0?dS(p,l,yS|mS,n,d):c))return!1}}return!0}sl.exports=hS});var rn=f((nP,ll)=>{"use strict";var gS=le();function bS(e){return e===e&&!gS(e)}ll.exports=bS});var fl=f((iP,cl)=>{"use strict";var wS=rn(),vS=pe();function xS(e){for(var r=vS(e),t=r.length;t--;){var n=r[t],i=e[n];r[t]=[n,i,wS(i)]}return r}cl.exports=xS});var tn=f((oP,pl)=>{"use strict";function AS(e,r){return function(t){return t==null?!1:t[e]===r&&(r!==void 0||e in Object(t))}}pl.exports=AS});var yl=f((aP,dl)=>{"use strict";var SS=ul(),ES=fl(),IS=tn();function kS(e){var r=ES(e);return r.length==1&&r[0][2]?IS(r[0][0],r[0][1]):function(t){return t===e||SS(t,e,r)}}dl.exports=kS});var Dr=f((sP,ml)=>{"use strict";var qS=be(),_S=Q(),OS="[object Symbol]";function CS(e){return typeof e=="symbol"||_S(e)&&qS(e)==OS}ml.exports=CS});var $r=f((uP,hl)=>{"use strict";var PS=j(),TS=Dr(),NS=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,RS=/^\w*$/;function jS(e,r){if(PS(e))return!1;var t=typeof e;return t=="number"||t=="symbol"||t=="boolean"||e==null||TS(e)?!0:RS.test(e)||!NS.test(e)||r!=null&&e in Object(r)}hl.exports=jS});var wl=f((lP,bl)=>{"use strict";var gl=Sr(),MS="Expected a function";function nn(e,r){if(typeof e!="function"||r!=null&&typeof r!="function")throw new TypeError(MS);var t=function(){var n=arguments,i=r?r.apply(this,n):n[0],o=t.cache;if(o.has(i))return o.get(i);var a=e.apply(this,n);return t.cache=o.set(i,a)||o,a};return t.cache=new(nn.Cache||gl),t}nn.Cache=gl;bl.exports=nn});var xl=f((cP,vl)=>{"use strict";var FS=wl(),LS=500;function DS(e){var r=FS(e,function(n){return t.size===LS&&t.clear(),n}),t=r.cache;return r}vl.exports=DS});var Sl=f((fP,Al)=>{"use strict";var $S=xl(),BS=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,VS=/\\(\\)?/g,US=$S(function(e){var r=[];return e.charCodeAt(0)===46&&r.push(""),e.replace(BS,function(t,n,i,o){r.push(i?o.replace(VS,"$1"):n||t)}),r});Al.exports=US});var Br=f((pP,El)=>{"use strict";function HS(e,r){for(var t=-1,n=e==null?0:e.length,i=Array(n);++t<n;)i[t]=r(e[t],t,e);return i}El.exports=HS});var Cl=f((dP,Ol)=>{"use strict";var Il=ge(),GS=Br(),KS=j(),zS=Dr(),YS=1/0,kl=Il?Il.prototype:void 0,ql=kl?kl.toString:void 0;function _l(e){if(typeof e=="string")return e;if(KS(e))return GS(e,_l)+"";if(zS(e))return ql?ql.call(e):"";var r=e+"";return r=="0"&&1/e==-YS?"-0":r}Ol.exports=_l});var Tl=f((yP,Pl)=>{"use strict";var JS=Cl();function WS(e){return e==null?"":JS(e)}Pl.exports=WS});var on=f((mP,Nl)=>{"use strict";var QS=j(),ZS=$r(),XS=Sl(),eE=Tl();function rE(e,r){return QS(e)?e:ZS(e,r)?[e]:XS(eE(e))}Nl.exports=rE});var ar=f((hP,Rl)=>{"use strict";var tE=Dr(),nE=1/0;function iE(e){if(typeof e=="string"||tE(e))return e;var r=e+"";return r=="0"&&1/e==-nE?"-0":r}Rl.exports=iE});var an=f((gP,jl)=>{"use strict";var oE=on(),aE=ar();function sE(e,r){r=oE(r,e);for(var t=0,n=r.length;e!=null&&t<n;)e=e[aE(r[t++])];return t&&t==n?e:void 0}jl.exports=sE});var Fl=f((bP,Ml)=>{"use strict";var uE=an();function lE(e,r,t){var n=e==null?void 0:uE(e,r);return n===void 0?t:n}Ml.exports=lE});var Dl=f((wP,Ll)=>{"use strict";function cE(e,r){return e!=null&&r in Object(e)}Ll.exports=cE});var sn=f((vP,$l)=>{"use strict";var fE=on(),pE=Qe(),dE=j(),yE=Ct(),mE=kr(),hE=ar();function gE(e,r,t){r=fE(r,e);for(var n=-1,i=r.length,o=!1;++n<i;){var a=hE(r[n]);if(!(o=e!=null&&t(e,a)))break;e=e[a]}return o||++n!=i?o:(i=e==null?0:e.length,!!i&&mE(i)&&yE(a,i)&&(dE(e)||pE(e)))}$l.exports=gE});var Vl=f((xP,Bl)=>{"use strict";var bE=Dl(),wE=sn();function vE(e,r){return e!=null&&wE(e,r,bE)}Bl.exports=vE});var Hl=f((AP,Ul)=>{"use strict";var xE=en(),AE=Fl(),SE=Vl(),EE=$r(),IE=rn(),kE=tn(),qE=ar(),_E=1,OE=2;function CE(e,r){return EE(e)&&IE(r)?kE(qE(e),r):function(t){var n=AE(t,e);return n===void 0&&n===r?SE(t,e):xE(r,n,_E|OE)}}Ul.exports=CE});var un=f((SP,Gl)=>{"use strict";function PE(e){return function(r){return r?.[e]}}Gl.exports=PE});var zl=f((EP,Kl)=>{"use strict";var TE=an();function NE(e){return function(r){return TE(r,e)}}Kl.exports=NE});var Jl=f((IP,Yl)=>{"use strict";var RE=un(),jE=zl(),ME=$r(),FE=ar();function LE(e){return ME(e)?RE(FE(e)):jE(e)}Yl.exports=LE});var sr=f((kP,Wl)=>{"use strict";var DE=yl(),$E=Hl(),BE=or(),VE=j(),UE=Jl();function HE(e){return typeof e=="function"?e:e==null?BE:typeof e=="object"?VE(e)?$E(e[0],e[1]):DE(e):UE(e)}Wl.exports=HE});var Zl=f((qP,Ql)=>{"use strict";var GE=Rt(),KE=Ou(),zE=sr(),YE=j();function JE(e,r){var t=YE(e)?GE:KE;return t(e,zE(r,3))}Ql.exports=JE});var ec=f((_P,Xl)=>{"use strict";var WE=Object.prototype,QE=WE.hasOwnProperty;function ZE(e,r){return e!=null&&QE.call(e,r)}Xl.exports=ZE});var tc=f((OP,rc)=>{"use strict";var XE=ec(),eI=sn();function rI(e,r){return e!=null&&eI(e,r,XE)}rc.exports=rI});var ic=f((CP,nc)=>{"use strict";var tI=Or(),nI=ve(),iI=Qe(),oI=j(),aI=fe(),sI=Te(),uI=tr(),lI=rr(),cI="[object Map]",fI="[object Set]",pI=Object.prototype,dI=pI.hasOwnProperty;function yI(e){if(e==null)return!0;if(aI(e)&&(oI(e)||typeof e=="string"||typeof e.splice=="function"||sI(e)||lI(e)||iI(e)))return!e.length;var r=nI(e);if(r==cI||r==fI)return!e.size;if(uI(e))return!tI(e).length;for(var t in e)if(dI.call(e,t))return!1;return!0}nc.exports=yI});var ac=f((PP,oc)=>{"use strict";function mI(e){return e===void 0}oc.exports=mI});var uc=f((TP,sc)=>{"use strict";var hI=ir(),gI=fe();function bI(e,r){var t=-1,n=gI(e)?Array(e.length):[];return hI(e,function(i,o,a){n[++t]=r(i,o,a)}),n}sc.exports=bI});var cc=f((NP,lc)=>{"use strict";var wI=Br(),vI=sr(),xI=uc(),AI=j();function SI(e,r){var t=AI(e)?wI:xI;return t(e,vI(r,3))}lc.exports=SI});var pc=f((RP,fc)=>{"use strict";function EI(e,r,t,n){var i=-1,o=e==null?0:e.length;for(n&&o&&(t=e[++i]);++i<o;)t=r(t,e[i],i,e);return t}fc.exports=EI});var yc=f((jP,dc)=>{"use strict";function II(e,r,t,n,i){return i(e,function(o,a,s){t=n?(n=!1,o):r(t,o,a,s)}),t}dc.exports=II});var hc=f((MP,mc)=>{"use strict";var kI=pc(),qI=ir(),_I=sr(),OI=yc(),CI=j();function PI(e,r,t){var n=CI(e)?kI:OI,i=arguments.length<3;return n(e,_I(r,4),t,i,qI)}mc.exports=PI});var bc=f((FP,gc)=>{"use strict";var TI=be(),NI=j(),RI=Q(),jI="[object String]";function MI(e){return typeof e=="string"||!NI(e)&&RI(e)&&TI(e)==jI}gc.exports=MI});var vc=f((LP,wc)=>{"use strict";var FI=un(),LI=FI("length");wc.exports=LI});var Ac=f((DP,xc)=>{"use strict";var DI="\\ud800-\\udfff",$I="\\u0300-\\u036f",BI="\\ufe20-\\ufe2f",VI="\\u20d0-\\u20ff",UI=$I+BI+VI,HI="\\ufe0e\\ufe0f",GI="\\u200d",KI=RegExp("["+GI+DI+UI+HI+"]");function zI(e){return KI.test(e)}xc.exports=zI});var Pc=f(($P,Cc)=>{"use strict";var Ec="\\ud800-\\udfff",YI="\\u0300-\\u036f",JI="\\ufe20-\\ufe2f",WI="\\u20d0-\\u20ff",QI=YI+JI+WI,ZI="\\ufe0e\\ufe0f",XI="["+Ec+"]",ln="["+QI+"]",cn="\\ud83c[\\udffb-\\udfff]",ek="(?:"+ln+"|"+cn+")",Ic="[^"+Ec+"]",kc="(?:\\ud83c[\\udde6-\\uddff]){2}",qc="[\\ud800-\\udbff][\\udc00-\\udfff]",rk="\\u200d",_c=ek+"?",Oc="["+ZI+"]?",tk="(?:"+rk+"(?:"+[Ic,kc,qc].join("|")+")"+Oc+_c+")*",nk=Oc+_c+tk,ik="(?:"+[Ic+ln+"?",ln,kc,qc,XI].join("|")+")",Sc=RegExp(cn+"(?="+cn+")|"+ik+nk,"g");function ok(e){for(var r=Sc.lastIndex=0;Sc.test(e);)++r;return r}Cc.exports=ok});var Nc=f((BP,Tc)=>{"use strict";var ak=vc(),sk=Ac(),uk=Pc();function lk(e){return sk(e)?uk(e):ak(e)}Tc.exports=lk});var jc=f((VP,Rc)=>{"use strict";var ck=Or(),fk=ve(),pk=fe(),dk=bc(),yk=Nc(),mk="[object Map]",hk="[object Set]";function gk(e){if(e==null)return 0;if(pk(e))return dk(e)?yk(e):e.length;var r=fk(e);return r==mk||r==hk?e.size:ck(e).length}Rc.exports=gk});var Fc=f((UP,Mc)=>{"use strict";var bk=Ir(),wk=Kt(),vk=Yt(),xk=sr(),Ak=Nr(),Sk=j(),Ek=Te(),Ik=ze(),kk=le(),qk=rr();function _k(e,r,t){var n=Sk(e),i=n||Ek(e)||qk(e);if(r=xk(r,4),t==null){var o=e&&e.constructor;i?t=n?new o:[]:kk(e)?t=Ik(o)?wk(Ak(e)):{}:t={}}return(i?bk:vk)(e,function(a,s,u){return r(t,a,s,u)}),t}Mc.exports=_k});var Bc=f((HP,$c)=>{"use strict";var Lc=ge(),Ok=Qe(),Ck=j(),Dc=Lc?Lc.isConcatSpreadable:void 0;function Pk(e){return Ck(e)||Ok(e)||!!(Dc&&e&&e[Dc])}$c.exports=Pk});var Hc=f((GP,Uc)=>{"use strict";var Tk=Tr(),Nk=Bc();function Vc(e,r,t,n,i){var o=-1,a=e.length;for(t||(t=Nk),i||(i=[]);++o<a;){var s=e[o];r>0&&t(s)?r>1?Vc(s,r-1,t,n,i):Tk(i,s):n||(i[i.length]=s)}return i}Uc.exports=Vc});var Kc=f((KP,Gc)=>{"use strict";function Rk(e,r,t){switch(t.length){case 0:return e.call(r);case 1:return e.call(r,t[0]);case 2:return e.call(r,t[0],t[1]);case 3:return e.call(r,t[0],t[1],t[2])}return e.apply(r,t)}Gc.exports=Rk});var Jc=f((zP,Yc)=>{"use strict";var jk=Kc(),zc=Math.max;function Mk(e,r,t){return r=zc(r===void 0?e.length-1:r,0),function(){for(var n=arguments,i=-1,o=zc(n.length-r,0),a=Array(o);++i<o;)a[i]=n[r+i];i=-1;for(var s=Array(r+1);++i<r;)s[i]=n[i];return s[r]=t(a),jk(e,this,s)}}Yc.exports=Mk});var Zc=f((YP,Qc)=>{"use strict";var Fk=zt(),Wc=qt(),Lk=or(),Dk=Wc?function(e,r){return Wc(e,"toString",{configurable:!0,enumerable:!1,value:Fk(r),writable:!0})}:Lk;Qc.exports=Dk});var ef=f((JP,Xc)=>{"use strict";var $k=800,Bk=16,Vk=Date.now;function Uk(e){var r=0,t=0;return function(){var n=Vk(),i=Bk-(n-t);if(t=n,i>0){if(++r>=$k)return arguments[0]}else r=0;return e.apply(void 0,arguments)}}Xc.exports=Uk});var tf=f((WP,rf)=>{"use strict";var Hk=Zc(),Gk=ef(),Kk=Gk(Hk);rf.exports=Kk});var of=f((QP,nf)=>{"use strict";var zk=or(),Yk=Jc(),Jk=tf();function Wk(e,r){return Jk(Yk(e,r,zk),e+"")}nf.exports=Wk});var sf=f((ZP,af)=>{"use strict";function Qk(e,r,t,n){for(var i=e.length,o=t+(n?1:-1);n?o--:++o<i;)if(r(e[o],o,e))return o;return-1}af.exports=Qk});var lf=f((XP,uf)=>{"use strict";function Zk(e){return e!==e}uf.exports=Zk});var ff=f((eT,cf)=>{"use strict";function Xk(e,r,t){for(var n=t-1,i=e.length;++n<i;)if(e[n]===r)return n;return-1}cf.exports=Xk});var df=f((rT,pf)=>{"use strict";var eq=sf(),rq=lf(),tq=ff();function nq(e,r,t){return r===r?tq(e,r,t):eq(e,rq,t)}pf.exports=nq});var mf=f((tT,yf)=>{"use strict";var iq=df();function oq(e,r){var t=e==null?0:e.length;return!!t&&iq(e,r,0)>-1}yf.exports=oq});var gf=f((nT,hf)=>{"use strict";function aq(e,r,t){for(var n=-1,i=e==null?0:e.length;++n<i;)if(t(r,e[n]))return!0;return!1}hf.exports=aq});var wf=f((iT,bf)=>{"use strict";function sq(){}bf.exports=sq});var xf=f((oT,vf)=>{"use strict";var fn=Dt(),uq=wf(),lq=Fr(),cq=1/0,fq=fn&&1/lq(new fn([,-0]))[1]==cq?function(e){return new fn(e)}:uq;vf.exports=fq});var Sf=f((aT,Af)=>{"use strict";var pq=Jt(),dq=mf(),yq=gf(),mq=Wt(),hq=xf(),gq=Fr(),bq=200;function wq(e,r,t){var n=-1,i=dq,o=e.length,a=!0,s=[],u=s;if(t)a=!1,i=yq;else if(o>=bq){var l=r?null:hq(e);if(l)return gq(l);a=!1,i=mq,u=new pq}else u=r?[]:s;e:for(;++n<o;){var p=e[n],d=r?r(p):p;if(p=t||p!==0?p:0,a&&d===d){for(var c=u.length;c--;)if(u[c]===d)continue e;r&&u.push(d),s.push(p)}else i(u,d,t)||(u!==s&&u.push(d),s.push(p))}return s}Af.exports=wq});var If=f((sT,Ef)=>{"use strict";var vq=fe(),xq=Q();function Aq(e){return xq(e)&&vq(e)}Ef.exports=Aq});var qf=f((uT,kf)=>{"use strict";var Sq=Hc(),Eq=of(),Iq=Sf(),kq=If(),qq=Eq(function(e){return Iq(Sq(e,1,kq,!0))});kf.exports=qq});var Of=f((lT,_f)=>{"use strict";var _q=Br();function Oq(e,r){return _q(r,function(t){return e[t]})}_f.exports=Oq});var Pf=f((cT,Cf)=>{"use strict";var Cq=Of(),Pq=pe();function Tq(e){return e==null?[]:Cq(e,Pq(e))}Cf.exports=Tq});var U=f((fT,Tf)=>{"use strict";var Vr;if(typeof require=="function")try{Vr={clone:fu(),constant:zt(),each:qu(),filter:Zl(),has:tc(),isArray:j(),isEmpty:ic(),isFunction:ze(),isUndefined:ac(),keys:pe(),map:cc(),reduce:hc(),size:jc(),transform:Fc(),union:qf(),values:Pf()}}catch{}Vr||(Vr=window._);Tf.exports=Vr});var Ur=f((pT,Mf)=>{"use strict";var I=U();Mf.exports=_;var Nq="\0",xe="\0",Nf="";function _(e){this._isDirected=I.has(e,"directed")?e.directed:!0,this._isMultigraph=I.has(e,"multigraph")?e.multigraph:!1,this._isCompound=I.has(e,"compound")?e.compound:!1,this._label=void 0,this._defaultNodeLabelFn=I.constant(void 0),this._defaultEdgeLabelFn=I.constant(void 0),this._nodes={},this._isCompound&&(this._parent={},this._children={},this._children[xe]={}),this._in={},this._preds={},this._out={},this._sucs={},this._edgeObjs={},this._edgeLabels={}}_.prototype._nodeCount=0;_.prototype._edgeCount=0;_.prototype.isDirected=function(){return this._isDirected};_.prototype.isMultigraph=function(){return this._isMultigraph};_.prototype.isCompound=function(){return this._isCompound};_.prototype.setGraph=function(e){return this._label=e,this};_.prototype.graph=function(){return this._label};_.prototype.setDefaultNodeLabel=function(e){return I.isFunction(e)||(e=I.constant(e)),this._defaultNodeLabelFn=e,this};_.prototype.nodeCount=function(){return this._nodeCount};_.prototype.nodes=function(){return I.keys(this._nodes)};_.prototype.sources=function(){var e=this;return I.filter(this.nodes(),function(r){return I.isEmpty(e._in[r])})};_.prototype.sinks=function(){var e=this;return I.filter(this.nodes(),function(r){return I.isEmpty(e._out[r])})};_.prototype.setNodes=function(e,r){var t=arguments,n=this;return I.each(e,function(i){t.length>1?n.setNode(i,r):n.setNode(i)}),this};_.prototype.setNode=function(e,r){return I.has(this._nodes,e)?(arguments.length>1&&(this._nodes[e]=r),this):(this._nodes[e]=arguments.length>1?r:this._defaultNodeLabelFn(e),this._isCompound&&(this._parent[e]=xe,this._children[e]={},this._children[xe][e]=!0),this._in[e]={},this._preds[e]={},this._out[e]={},this._sucs[e]={},++this._nodeCount,this)};_.prototype.node=function(e){return this._nodes[e]};_.prototype.hasNode=function(e){return I.has(this._nodes,e)};_.prototype.removeNode=function(e){var r=this;if(I.has(this._nodes,e)){var t=function(n){r.removeEdge(r._edgeObjs[n])};delete this._nodes[e],this._isCompound&&(this._removeFromParentsChildList(e),delete this._parent[e],I.each(this.children(e),function(n){r.setParent(n)}),delete this._children[e]),I.each(I.keys(this._in[e]),t),delete this._in[e],delete this._preds[e],I.each(I.keys(this._out[e]),t),delete this._out[e],delete this._sucs[e],--this._nodeCount}return this};_.prototype.setParent=function(e,r){if(!this._isCompound)throw new Error("Cannot set parent in a non-compound graph");if(I.isUndefined(r))r=xe;else{r+="";for(var t=r;!I.isUndefined(t);t=this.parent(t))if(t===e)throw new Error("Setting "+r+" as parent of "+e+" would create a cycle");this.setNode(r)}return this.setNode(e),this._removeFromParentsChildList(e),this._parent[e]=r,this._children[r][e]=!0,this};_.prototype._removeFromParentsChildList=function(e){delete this._children[this._parent[e]][e]};_.prototype.parent=function(e){if(this._isCompound){var r=this._parent[e];if(r!==xe)return r}};_.prototype.children=function(e){if(I.isUndefined(e)&&(e=xe),this._isCompound){var r=this._children[e];if(r)return I.keys(r)}else{if(e===xe)return this.nodes();if(this.hasNode(e))return[]}};_.prototype.predecessors=function(e){var r=this._preds[e];if(r)return I.keys(r)};_.prototype.successors=function(e){var r=this._sucs[e];if(r)return I.keys(r)};_.prototype.neighbors=function(e){var r=this.predecessors(e);if(r)return I.union(r,this.successors(e))};_.prototype.isLeaf=function(e){var r;return this.isDirected()?r=this.successors(e):r=this.neighbors(e),r.length===0};_.prototype.filterNodes=function(e){var r=new this.constructor({directed:this._isDirected,multigraph:this._isMultigraph,compound:this._isCompound});r.setGraph(this.graph());var t=this;I.each(this._nodes,function(o,a){e(a)&&r.setNode(a,o)}),I.each(this._edgeObjs,function(o){r.hasNode(o.v)&&r.hasNode(o.w)&&r.setEdge(o,t.edge(o))});var n={};function i(o){var a=t.parent(o);return a===void 0||r.hasNode(a)?(n[o]=a,a):a in n?n[a]:i(a)}return this._isCompound&&I.each(r.nodes(),function(o){r.setParent(o,i(o))}),r};_.prototype.setDefaultEdgeLabel=function(e){return I.isFunction(e)||(e=I.constant(e)),this._defaultEdgeLabelFn=e,this};_.prototype.edgeCount=function(){return this._edgeCount};_.prototype.edges=function(){return I.values(this._edgeObjs)};_.prototype.setPath=function(e,r){var t=this,n=arguments;return I.reduce(e,function(i,o){return n.length>1?t.setEdge(i,o,r):t.setEdge(i,o),o}),this};_.prototype.setEdge=function(){var e,r,t,n,i=!1,o=arguments[0];typeof o=="object"&&o!==null&&"v"in o?(e=o.v,r=o.w,t=o.name,arguments.length===2&&(n=arguments[1],i=!0)):(e=o,r=arguments[1],t=arguments[3],arguments.length>2&&(n=arguments[2],i=!0)),e=""+e,r=""+r,I.isUndefined(t)||(t=""+t);var a=ur(this._isDirected,e,r,t);if(I.has(this._edgeLabels,a))return i&&(this._edgeLabels[a]=n),this;if(!I.isUndefined(t)&&!this._isMultigraph)throw new Error("Cannot set a named edge when isMultigraph = false");this.setNode(e),this.setNode(r),this._edgeLabels[a]=i?n:this._defaultEdgeLabelFn(e,r,t);var s=Rq(this._isDirected,e,r,t);return e=s.v,r=s.w,Object.freeze(s),this._edgeObjs[a]=s,Rf(this._preds[r],e),Rf(this._sucs[e],r),this._in[r][a]=s,this._out[e][a]=s,this._edgeCount++,this};_.prototype.edge=function(e,r,t){var n=arguments.length===1?pn(this._isDirected,arguments[0]):ur(this._isDirected,e,r,t);return this._edgeLabels[n]};_.prototype.hasEdge=function(e,r,t){var n=arguments.length===1?pn(this._isDirected,arguments[0]):ur(this._isDirected,e,r,t);return I.has(this._edgeLabels,n)};_.prototype.removeEdge=function(e,r,t){var n=arguments.length===1?pn(this._isDirected,arguments[0]):ur(this._isDirected,e,r,t),i=this._edgeObjs[n];return i&&(e=i.v,r=i.w,delete this._edgeLabels[n],delete this._edgeObjs[n],jf(this._preds[r],e),jf(this._sucs[e],r),delete this._in[r][n],delete this._out[e][n],this._edgeCount--),this};_.prototype.inEdges=function(e,r){var t=this._in[e];if(t){var n=I.values(t);return r?I.filter(n,function(i){return i.v===r}):n}};_.prototype.outEdges=function(e,r){var t=this._out[e];if(t){var n=I.values(t);return r?I.filter(n,function(i){return i.w===r}):n}};_.prototype.nodeEdges=function(e,r){var t=this.inEdges(e,r);if(t)return t.concat(this.outEdges(e,r))};function Rf(e,r){e[r]?e[r]++:e[r]=1}function jf(e,r){--e[r]||delete e[r]}function ur(e,r,t,n){var i=""+r,o=""+t;if(!e&&i>o){var a=i;i=o,o=a}return i+Nf+o+Nf+(I.isUndefined(n)?Nq:n)}function Rq(e,r,t,n){var i=""+r,o=""+t;if(!e&&i>o){var a=i;i=o,o=a}var s={v:i,w:o};return n&&(s.name=n),s}function pn(e,r){return ur(e,r.v,r.w,r.name)}});var Lf=f((dT,Ff)=>{"use strict";Ff.exports="2.1.8"});var $f=f((yT,Df)=>{"use strict";Df.exports={Graph:Ur(),version:Lf()}});var Vf=f((mT,Bf)=>{"use strict";var Z=U(),jq=Ur();Bf.exports={write:Mq,read:Dq};function Mq(e){var r={options:{directed:e.isDirected(),multigraph:e.isMultigraph(),compound:e.isCompound()},nodes:Fq(e),edges:Lq(e)};return Z.isUndefined(e.graph())||(r.value=Z.clone(e.graph())),r}function Fq(e){return Z.map(e.nodes(),function(r){var t=e.node(r),n=e.parent(r),i={v:r};return Z.isUndefined(t)||(i.value=t),Z.isUndefined(n)||(i.parent=n),i})}function Lq(e){return Z.map(e.edges(),function(r){var t=e.edge(r),n={v:r.v,w:r.w};return Z.isUndefined(r.name)||(n.name=r.name),Z.isUndefined(t)||(n.value=t),n})}function Dq(e){var r=new jq(e.options).setGraph(e.value);return Z.each(e.nodes,function(t){r.setNode(t.v,t.value),t.parent&&r.setParent(t.v,t.parent)}),Z.each(e.edges,function(t){r.setEdge({v:t.v,w:t.w,name:t.name},t.value)}),r}});var Hf=f((hT,Uf)=>{"use strict";var Hr=U();Uf.exports=$q;function $q(e){var r={},t=[],n;function i(o){Hr.has(r,o)||(r[o]=!0,n.push(o),Hr.each(e.successors(o),i),Hr.each(e.predecessors(o),i))}return Hr.each(e.nodes(),function(o){n=[],i(o),n.length&&t.push(n)}),t}});var dn=f((gT,Kf)=>{"use strict";var Gf=U();Kf.exports=H;function H(){this._arr=[],this._keyIndices={}}H.prototype.size=function(){return this._arr.length};H.prototype.keys=function(){return this._arr.map(function(e){return e.key})};H.prototype.has=function(e){return Gf.has(this._keyIndices,e)};H.prototype.priority=function(e){var r=this._keyIndices[e];if(r!==void 0)return this._arr[r].priority};H.prototype.min=function(){if(this.size()===0)throw new Error("Queue underflow");return this._arr[0].key};H.prototype.add=function(e,r){var t=this._keyIndices;if(e=String(e),!Gf.has(t,e)){var n=this._arr,i=n.length;return t[e]=i,n.push({key:e,priority:r}),this._decrease(i),!0}return!1};H.prototype.removeMin=function(){this._swap(0,this._arr.length-1);var e=this._arr.pop();return delete this._keyIndices[e.key],this._heapify(0),e.key};H.prototype.decrease=function(e,r){var t=this._keyIndices[e];if(r>this._arr[t].priority)throw new Error("New priority is greater than current priority. Key: "+e+" Old: "+this._arr[t].priority+" New: "+r);this._arr[t].priority=r,this._decrease(t)};H.prototype._heapify=function(e){var r=this._arr,t=2*e,n=t+1,i=e;t<r.length&&(i=r[t].priority<r[i].priority?t:i,n<r.length&&(i=r[n].priority<r[i].priority?n:i),i!==e&&(this._swap(e,i),this._heapify(i)))};H.prototype._decrease=function(e){for(var r=this._arr,t=r[e].priority,n;e!==0&&(n=e>>1,!(r[n].priority<t));)this._swap(e,n),e=n};H.prototype._swap=function(e,r){var t=this._arr,n=this._keyIndices,i=t[e],o=t[r];t[e]=o,t[r]=i,n[o.key]=e,n[i.key]=r}});var yn=f((bT,zf)=>{"use strict";var Bq=U(),Vq=dn();zf.exports=Hq;var Uq=Bq.constant(1);function Hq(e,r,t,n){return Gq(e,String(r),t||Uq,n||function(i){return e.outEdges(i)})}function Gq(e,r,t,n){var i={},o=new Vq,a,s,u=function(l){var p=l.v!==a?l.v:l.w,d=i[p],c=t(l),m=s.distance+c;if(c<0)throw new Error("dijkstra does not allow negative edge weights. Bad edge: "+l+" Weight: "+c);m<d.distance&&(d.distance=m,d.predecessor=a,o.decrease(p,m))};for(e.nodes().forEach(function(l){var p=l===r?0:Number.POSITIVE_INFINITY;i[l]={distance:p},o.add(l,p)});o.size()>0&&(a=o.removeMin(),s=i[a],s.distance!==Number.POSITIVE_INFINITY);)n(a).forEach(u);return i}});var Jf=f((wT,Yf)=>{"use strict";var Kq=yn(),zq=U();Yf.exports=Yq;function Yq(e,r,t){return zq.transform(e.nodes(),function(n,i){n[i]=Kq(e,i,r,t)},{})}});var mn=f((vT,Qf)=>{"use strict";var Wf=U();Qf.exports=Jq;function Jq(e){var r=0,t=[],n={},i=[];function o(a){var s=n[a]={onStack:!0,lowlink:r,index:r++};if(t.push(a),e.successors(a).forEach(function(p){Wf.has(n,p)?n[p].onStack&&(s.lowlink=Math.min(s.lowlink,n[p].index)):(o(p),s.lowlink=Math.min(s.lowlink,n[p].lowlink))}),s.lowlink===s.index){var u=[],l;do l=t.pop(),n[l].onStack=!1,u.push(l);while(a!==l);i.push(u)}}return e.nodes().forEach(function(a){Wf.has(n,a)||o(a)}),i}});var Xf=f((xT,Zf)=>{"use strict";var Wq=U(),Qq=mn();Zf.exports=Zq;function Zq(e){return Wq.filter(Qq(e),function(r){return r.length>1||r.length===1&&e.hasEdge(r[0],r[0])})}});var rp=f((AT,ep)=>{"use strict";var Xq=U();ep.exports=r_;var e_=Xq.constant(1);function r_(e,r,t){return t_(e,r||e_,t||function(n){return e.outEdges(n)})}function t_(e,r,t){var n={},i=e.nodes();return i.forEach(function(o){n[o]={},n[o][o]={distance:0},i.forEach(function(a){o!==a&&(n[o][a]={distance:Number.POSITIVE_INFINITY})}),t(o).forEach(function(a){var s=a.v===o?a.w:a.v,u=r(a);n[o][s]={distance:u,predecessor:o}})}),i.forEach(function(o){var a=n[o];i.forEach(function(s){var u=n[s];i.forEach(function(l){var p=u[o],d=a[l],c=u[l],m=p.distance+d.distance;m<c.distance&&(c.distance=m,c.predecessor=d.predecessor)})})}),n}});var hn=f((ST,np)=>{"use strict";var lr=U();np.exports=tp;tp.CycleException=Gr;function tp(e){var r={},t={},n=[];function i(o){if(lr.has(t,o))throw new Gr;lr.has(r,o)||(t[o]=!0,r[o]=!0,lr.each(e.predecessors(o),i),delete t[o],n.push(o))}if(lr.each(e.sinks(),i),lr.size(r)!==e.nodeCount())throw new Gr;return n}function Gr(){}Gr.prototype=new Error});var ap=f((ET,op)=>{"use strict";var ip=hn();op.exports=n_;function n_(e){try{ip(e)}catch(r){if(r instanceof ip.CycleException)return!1;throw r}return!0}});var gn=f((IT,up)=>{"use strict";var Kr=U();up.exports=i_;function i_(e,r,t){Kr.isArray(r)||(r=[r]);var n=(e.isDirected()?e.successors:e.neighbors).bind(e),i=[],o={};return Kr.each(r,function(a){if(!e.hasNode(a))throw new Error("Graph does not have node: "+a);sp(e,a,t==="post",o,n,i)}),i}function sp(e,r,t,n,i,o){Kr.has(n,r)||(n[r]=!0,t||o.push(r),Kr.each(i(r),function(a){sp(e,a,t,n,i,o)}),t&&o.push(r))}});var cp=f((kT,lp)=>{"use strict";var o_=gn();lp.exports=a_;function a_(e,r){return o_(e,r,"post")}});var pp=f((qT,fp)=>{"use strict";var s_=gn();fp.exports=u_;function u_(e,r){return s_(e,r,"pre")}});var mp=f((_T,yp)=>{"use strict";var dp=U(),l_=Ur(),c_=dn();yp.exports=f_;function f_(e,r){var t=new l_,n={},i=new c_,o;function a(u){var l=u.v===o?u.w:u.v,p=i.priority(l);if(p!==void 0){var d=r(u);d<p&&(n[l]=o,i.decrease(l,d))}}if(e.nodeCount()===0)return t;dp.each(e.nodes(),function(u){i.add(u,Number.POSITIVE_INFINITY),t.setNode(u)}),i.decrease(e.nodes()[0],0);for(var s=!1;i.size()>0;){if(o=i.removeMin(),dp.has(n,o))t.setEdge(o,n[o]);else{if(s)throw new Error("Input graph is not connected: "+e);s=!0}e.nodeEdges(o).forEach(a)}return t}});var gp=f((OT,hp)=>{"use strict";hp.exports={components:Hf(),dijkstra:yn(),dijkstraAll:Jf(),findCycles:Xf(),floydWarshall:rp(),isAcyclic:ap(),postorder:cp(),preorder:pp(),prim:mp(),tarjan:mn(),topsort:hn()}});var bn=f((CT,wp)=>{"use strict";var bp=$f();wp.exports={Graph:bp.Graph,json:Vf(),alg:gp(),version:bp.version}});var O_={};od(O_,{combineSpytialSpecs:()=>Jp,createCpoModule:()=>__,createDiagramView:()=>Wp,createPyretModule:()=>Qp,loadBrowserCore:()=>Xp,registerCpoOutput:()=>Zp});module.exports=ad(O_);function Zn(e){return typeof e>"u"||e===null}function sd(e){return typeof e=="object"&&e!==null}function ud(e){return Array.isArray(e)?e:Zn(e)?[]:[e]}function ld(e,r){var t,n,i,o;if(r)for(o=Object.keys(r),t=0,n=o.length;t<n;t+=1)i=o[t],e[i]=r[i];return e}function cd(e,r){var t="",n;for(n=0;n<r;n+=1)t+=e;return t}function fd(e){return e===0&&Number.NEGATIVE_INFINITY===1/e}var pd=Zn,dd=sd,yd=ud,md=cd,hd=fd,gd=ld,R={isNothing:pd,isObject:dd,toArray:yd,repeat:md,isNegativeZero:hd,extend:gd};function Xn(e,r){var t="",n=e.reason||"(unknown reason)";return e.mark?(e.mark.name&&(t+='in "'+e.mark.name+'" '),t+="("+(e.mark.line+1)+":"+(e.mark.column+1)+")",!r&&e.mark.snippet&&(t+=`
|
|
2
|
+
|
|
3
|
+
`+e.mark.snippet),n+" "+t):n}function $e(e,r){Error.call(this),this.name="YAMLException",this.reason=e,this.mark=r,this.message=Xn(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}$e.prototype=Object.create(Error.prototype);$e.prototype.constructor=$e;$e.prototype.toString=function(r){return this.name+": "+Xn(this,r)};var B=$e;function ft(e,r,t,n,i){var o="",a="",s=Math.floor(i/2)-1;return n-r>s&&(o=" ... ",r=n-s+o.length),t-n>s&&(a=" ...",t=n+s-a.length),{str:o+e.slice(r,t).replace(/\t/g,"\u2192")+a,pos:n-r+o.length}}function pt(e,r){return R.repeat(" ",r-e.length)+e}function bd(e,r){if(r=Object.create(r||null),!e.buffer)return null;r.maxLength||(r.maxLength=79),typeof r.indent!="number"&&(r.indent=1),typeof r.linesBefore!="number"&&(r.linesBefore=3),typeof r.linesAfter!="number"&&(r.linesAfter=2);for(var t=/\r?\n|\r|\0/g,n=[0],i=[],o,a=-1;o=t.exec(e.buffer);)i.push(o.index),n.push(o.index+o[0].length),e.position<=o.index&&a<0&&(a=n.length-2);a<0&&(a=n.length-1);var s="",u,l,p=Math.min(e.line+r.linesAfter,i.length).toString().length,d=r.maxLength-(r.indent+p+3);for(u=1;u<=r.linesBefore&&!(a-u<0);u++)l=ft(e.buffer,n[a-u],i[a-u],e.position-(n[a]-n[a-u]),d),s=R.repeat(" ",r.indent)+pt((e.line-u+1).toString(),p)+" | "+l.str+`
|
|
4
|
+
`+s;for(l=ft(e.buffer,n[a],i[a],e.position,d),s+=R.repeat(" ",r.indent)+pt((e.line+1).toString(),p)+" | "+l.str+`
|
|
5
|
+
`,s+=R.repeat("-",r.indent+p+3+l.pos)+`^
|
|
6
|
+
`,u=1;u<=r.linesAfter&&!(a+u>=i.length);u++)l=ft(e.buffer,n[a+u],i[a+u],e.position-(n[a]-n[a+u]),d),s+=R.repeat(" ",r.indent)+pt((e.line+u+1).toString(),p)+" | "+l.str+`
|
|
7
|
+
`;return s.replace(/\n$/,"")}var wd=bd,vd=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],xd=["scalar","sequence","mapping"];function Ad(e){var r={};return e!==null&&Object.keys(e).forEach(function(t){e[t].forEach(function(n){r[String(n)]=t})}),r}function Sd(e,r){if(r=r||{},Object.keys(r).forEach(function(t){if(vd.indexOf(t)===-1)throw new B('Unknown option "'+t+'" is met in definition of "'+e+'" YAML type.')}),this.options=r,this.tag=e,this.kind=r.kind||null,this.resolve=r.resolve||function(){return!0},this.construct=r.construct||function(t){return t},this.instanceOf=r.instanceOf||null,this.predicate=r.predicate||null,this.represent=r.represent||null,this.representName=r.representName||null,this.defaultStyle=r.defaultStyle||null,this.multi=r.multi||!1,this.styleAliases=Ad(r.styleAliases||null),xd.indexOf(this.kind)===-1)throw new B('Unknown kind "'+this.kind+'" is specified for "'+e+'" YAML type.')}var L=Sd;function Fn(e,r){var t=[];return e[r].forEach(function(n){var i=t.length;t.forEach(function(o,a){o.tag===n.tag&&o.kind===n.kind&&o.multi===n.multi&&(i=a)}),t[i]=n}),t}function Ed(){var e={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},r,t;function n(i){i.multi?(e.multi[i.kind].push(i),e.multi.fallback.push(i)):e[i.kind][i.tag]=e.fallback[i.tag]=i}for(r=0,t=arguments.length;r<t;r+=1)arguments[r].forEach(n);return e}function yt(e){return this.extend(e)}yt.prototype.extend=function(r){var t=[],n=[];if(r instanceof L)n.push(r);else if(Array.isArray(r))n=n.concat(r);else if(r&&(Array.isArray(r.implicit)||Array.isArray(r.explicit)))r.implicit&&(t=t.concat(r.implicit)),r.explicit&&(n=n.concat(r.explicit));else throw new B("Schema.extend argument should be a Type, [ Type ], or a schema definition ({ implicit: [...], explicit: [...] })");t.forEach(function(o){if(!(o instanceof L))throw new B("Specified list of YAML types (or a single Type object) contains a non-Type object.");if(o.loadKind&&o.loadKind!=="scalar")throw new B("There is a non-scalar type in the implicit list of a schema. Implicit resolving of such types is not supported.");if(o.multi)throw new B("There is a multi type in the implicit list of a schema. Multi tags can only be listed as explicit.")}),n.forEach(function(o){if(!(o instanceof L))throw new B("Specified list of YAML types (or a single Type object) contains a non-Type object.")});var i=Object.create(yt.prototype);return i.implicit=(this.implicit||[]).concat(t),i.explicit=(this.explicit||[]).concat(n),i.compiledImplicit=Fn(i,"implicit"),i.compiledExplicit=Fn(i,"explicit"),i.compiledTypeMap=Ed(i.compiledImplicit,i.compiledExplicit),i};var Id=yt,kd=new L("tag:yaml.org,2002:str",{kind:"scalar",construct:function(e){return e!==null?e:""}}),qd=new L("tag:yaml.org,2002:seq",{kind:"sequence",construct:function(e){return e!==null?e:[]}}),_d=new L("tag:yaml.org,2002:map",{kind:"mapping",construct:function(e){return e!==null?e:{}}}),Od=new Id({explicit:[kd,qd,_d]});function Cd(e){if(e===null)return!0;var r=e.length;return r===1&&e==="~"||r===4&&(e==="null"||e==="Null"||e==="NULL")}function Pd(){return null}function Td(e){return e===null}var Nd=new L("tag:yaml.org,2002:null",{kind:"scalar",resolve:Cd,construct:Pd,predicate:Td,represent:{canonical:function(){return"~"},lowercase:function(){return"null"},uppercase:function(){return"NULL"},camelcase:function(){return"Null"},empty:function(){return""}},defaultStyle:"lowercase"});function Rd(e){if(e===null)return!1;var r=e.length;return r===4&&(e==="true"||e==="True"||e==="TRUE")||r===5&&(e==="false"||e==="False"||e==="FALSE")}function jd(e){return e==="true"||e==="True"||e==="TRUE"}function Md(e){return Object.prototype.toString.call(e)==="[object Boolean]"}var Fd=new L("tag:yaml.org,2002:bool",{kind:"scalar",resolve:Rd,construct:jd,predicate:Md,represent:{lowercase:function(e){return e?"true":"false"},uppercase:function(e){return e?"TRUE":"FALSE"},camelcase:function(e){return e?"True":"False"}},defaultStyle:"lowercase"});function Ld(e){return 48<=e&&e<=57||65<=e&&e<=70||97<=e&&e<=102}function Dd(e){return 48<=e&&e<=55}function $d(e){return 48<=e&&e<=57}function Bd(e){if(e===null)return!1;var r=e.length,t=0,n=!1,i;if(!r)return!1;if(i=e[t],(i==="-"||i==="+")&&(i=e[++t]),i==="0"){if(t+1===r)return!0;if(i=e[++t],i==="b"){for(t++;t<r;t++)if(i=e[t],i!=="_"){if(i!=="0"&&i!=="1")return!1;n=!0}return n&&i!=="_"}if(i==="x"){for(t++;t<r;t++)if(i=e[t],i!=="_"){if(!Ld(e.charCodeAt(t)))return!1;n=!0}return n&&i!=="_"}if(i==="o"){for(t++;t<r;t++)if(i=e[t],i!=="_"){if(!Dd(e.charCodeAt(t)))return!1;n=!0}return n&&i!=="_"}}if(i==="_")return!1;for(;t<r;t++)if(i=e[t],i!=="_"){if(!$d(e.charCodeAt(t)))return!1;n=!0}return!(!n||i==="_")}function Vd(e){var r=e,t=1,n;if(r.indexOf("_")!==-1&&(r=r.replace(/_/g,"")),n=r[0],(n==="-"||n==="+")&&(n==="-"&&(t=-1),r=r.slice(1),n=r[0]),r==="0")return 0;if(n==="0"){if(r[1]==="b")return t*parseInt(r.slice(2),2);if(r[1]==="x")return t*parseInt(r.slice(2),16);if(r[1]==="o")return t*parseInt(r.slice(2),8)}return t*parseInt(r,10)}function Ud(e){return Object.prototype.toString.call(e)==="[object Number]"&&e%1===0&&!R.isNegativeZero(e)}var Hd=new L("tag:yaml.org,2002:int",{kind:"scalar",resolve:Bd,construct:Vd,predicate:Ud,represent:{binary:function(e){return e>=0?"0b"+e.toString(2):"-0b"+e.toString(2).slice(1)},octal:function(e){return e>=0?"0o"+e.toString(8):"-0o"+e.toString(8).slice(1)},decimal:function(e){return e.toString(10)},hexadecimal:function(e){return e>=0?"0x"+e.toString(16).toUpperCase():"-0x"+e.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),Gd=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function Kd(e){return!(e===null||!Gd.test(e)||e[e.length-1]==="_")}function zd(e){var r,t;return r=e.replace(/_/g,"").toLowerCase(),t=r[0]==="-"?-1:1,"+-".indexOf(r[0])>=0&&(r=r.slice(1)),r===".inf"?t===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:r===".nan"?NaN:t*parseFloat(r,10)}var Yd=/^[-+]?[0-9]+e/;function Jd(e,r){var t;if(isNaN(e))switch(r){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===e)switch(r){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===e)switch(r){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(R.isNegativeZero(e))return"-0.0";return t=e.toString(10),Yd.test(t)?t.replace("e",".e"):t}function Wd(e){return Object.prototype.toString.call(e)==="[object Number]"&&(e%1!==0||R.isNegativeZero(e))}var Qd=new L("tag:yaml.org,2002:float",{kind:"scalar",resolve:Kd,construct:zd,predicate:Wd,represent:Jd,defaultStyle:"lowercase"}),Zd=Od.extend({implicit:[Nd,Fd,Hd,Qd]}),Xd=Zd,ei=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),ri=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9]?)-([0-9][0-9]?)(?:[Tt]|[ \\t]+)([0-9][0-9]?):([0-9][0-9]):([0-9][0-9])(?:\\.([0-9]*))?(?:[ \\t]*(Z|([-+])([0-9][0-9]?)(?::([0-9][0-9]))?))?$");function ey(e){return e===null?!1:ei.exec(e)!==null||ri.exec(e)!==null}function ry(e){var r,t,n,i,o,a,s,u=0,l=null,p,d,c;if(r=ei.exec(e),r===null&&(r=ri.exec(e)),r===null)throw new Error("Date resolve error");if(t=+r[1],n=+r[2]-1,i=+r[3],!r[4])return new Date(Date.UTC(t,n,i));if(o=+r[4],a=+r[5],s=+r[6],r[7]){for(u=r[7].slice(0,3);u.length<3;)u+="0";u=+u}return r[9]&&(p=+r[10],d=+(r[11]||0),l=(p*60+d)*6e4,r[9]==="-"&&(l=-l)),c=new Date(Date.UTC(t,n,i,o,a,s,u)),l&&c.setTime(c.getTime()-l),c}function ty(e){return e.toISOString()}var ny=new L("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:ey,construct:ry,instanceOf:Date,represent:ty});function iy(e){return e==="<<"||e===null}var oy=new L("tag:yaml.org,2002:merge",{kind:"scalar",resolve:iy}),wt=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=
|
|
8
|
+
\r`;function ay(e){if(e===null)return!1;var r,t,n=0,i=e.length,o=wt;for(t=0;t<i;t++)if(r=o.indexOf(e.charAt(t)),!(r>64)){if(r<0)return!1;n+=6}return n%8===0}function sy(e){var r,t,n=e.replace(/[\r\n=]/g,""),i=n.length,o=wt,a=0,s=[];for(r=0;r<i;r++)r%4===0&&r&&(s.push(a>>16&255),s.push(a>>8&255),s.push(a&255)),a=a<<6|o.indexOf(n.charAt(r));return t=i%4*6,t===0?(s.push(a>>16&255),s.push(a>>8&255),s.push(a&255)):t===18?(s.push(a>>10&255),s.push(a>>2&255)):t===12&&s.push(a>>4&255),new Uint8Array(s)}function uy(e){var r="",t=0,n,i,o=e.length,a=wt;for(n=0;n<o;n++)n%3===0&&n&&(r+=a[t>>18&63],r+=a[t>>12&63],r+=a[t>>6&63],r+=a[t&63]),t=(t<<8)+e[n];return i=o%3,i===0?(r+=a[t>>18&63],r+=a[t>>12&63],r+=a[t>>6&63],r+=a[t&63]):i===2?(r+=a[t>>10&63],r+=a[t>>4&63],r+=a[t<<2&63],r+=a[64]):i===1&&(r+=a[t>>2&63],r+=a[t<<4&63],r+=a[64],r+=a[64]),r}function ly(e){return Object.prototype.toString.call(e)==="[object Uint8Array]"}var cy=new L("tag:yaml.org,2002:binary",{kind:"scalar",resolve:ay,construct:sy,predicate:ly,represent:uy}),fy=Object.prototype.hasOwnProperty,py=Object.prototype.toString;function dy(e){if(e===null)return!0;var r=[],t,n,i,o,a,s=e;for(t=0,n=s.length;t<n;t+=1){if(i=s[t],a=!1,py.call(i)!=="[object Object]")return!1;for(o in i)if(fy.call(i,o))if(!a)a=!0;else return!1;if(!a)return!1;if(r.indexOf(o)===-1)r.push(o);else return!1}return!0}function yy(e){return e!==null?e:[]}var my=new L("tag:yaml.org,2002:omap",{kind:"sequence",resolve:dy,construct:yy}),hy=Object.prototype.toString;function gy(e){if(e===null)return!0;var r,t,n,i,o,a=e;for(o=new Array(a.length),r=0,t=a.length;r<t;r+=1){if(n=a[r],hy.call(n)!=="[object Object]"||(i=Object.keys(n),i.length!==1))return!1;o[r]=[i[0],n[i[0]]]}return!0}function by(e){if(e===null)return[];var r,t,n,i,o,a=e;for(o=new Array(a.length),r=0,t=a.length;r<t;r+=1)n=a[r],i=Object.keys(n),o[r]=[i[0],n[i[0]]];return o}var wy=new L("tag:yaml.org,2002:pairs",{kind:"sequence",resolve:gy,construct:by}),vy=Object.prototype.hasOwnProperty;function xy(e){if(e===null)return!0;var r,t=e;for(r in t)if(vy.call(t,r)&&t[r]!==null)return!1;return!0}function Ay(e){return e!==null?e:{}}var Sy=new L("tag:yaml.org,2002:set",{kind:"mapping",resolve:xy,construct:Ay}),ti=Xd.extend({implicit:[ny,oy],explicit:[cy,my,wy,Sy]}),ue=Object.prototype.hasOwnProperty,mr=1,ni=2,ii=3,hr=4,dt=1,Ey=2,Ln=3,Iy=/[\x00-\x08\x0B\x0C\x0E-\x1F\x7F-\x84\x86-\x9F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,ky=/[\x85\u2028\u2029]/,qy=/[,\[\]\{\}]/,oi=/^(?:!|!!|![a-z\-]+!)$/i,ai=/^(?:!|[^,\[\]\{\}])(?:%[0-9a-f]{2}|[0-9a-z\-#;\/\?:@&=\+\$,_\.!~\*'\(\)\[\]])*$/i;function Dn(e){return Object.prototype.toString.call(e)}function W(e){return e===10||e===13}function he(e){return e===9||e===32}function V(e){return e===9||e===32||e===10||e===13}function Ee(e){return e===44||e===91||e===93||e===123||e===125}function _y(e){var r;return 48<=e&&e<=57?e-48:(r=e|32,97<=r&&r<=102?r-97+10:-1)}function Oy(e){return e===120?2:e===117?4:e===85?8:0}function Cy(e){return 48<=e&&e<=57?e-48:-1}function $n(e){return e===48?"\0":e===97?"\x07":e===98?"\b":e===116||e===9?" ":e===110?`
|
|
9
|
+
`:e===118?"\v":e===102?"\f":e===114?"\r":e===101?"\x1B":e===32?" ":e===34?'"':e===47?"/":e===92?"\\":e===78?"\x85":e===95?"\xA0":e===76?"\u2028":e===80?"\u2029":""}function Py(e){return e<=65535?String.fromCharCode(e):String.fromCharCode((e-65536>>10)+55296,(e-65536&1023)+56320)}var si=new Array(256),ui=new Array(256);for(me=0;me<256;me++)si[me]=$n(me)?1:0,ui[me]=$n(me);var me;function Ty(e,r){this.input=e,this.filename=r.filename||null,this.schema=r.schema||ti,this.onWarning=r.onWarning||null,this.legacy=r.legacy||!1,this.json=r.json||!1,this.listener=r.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=e.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function li(e,r){var t={name:e.filename,buffer:e.input.slice(0,-1),position:e.position,line:e.line,column:e.position-e.lineStart};return t.snippet=wd(t),new B(r,t)}function x(e,r){throw li(e,r)}function gr(e,r){e.onWarning&&e.onWarning.call(null,li(e,r))}var Bn={YAML:function(r,t,n){var i,o,a;r.version!==null&&x(r,"duplication of %YAML directive"),n.length!==1&&x(r,"YAML directive accepts exactly one argument"),i=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),i===null&&x(r,"ill-formed argument of the YAML directive"),o=parseInt(i[1],10),a=parseInt(i[2],10),o!==1&&x(r,"unacceptable YAML version of the document"),r.version=n[0],r.checkLineBreaks=a<2,a!==1&&a!==2&&gr(r,"unsupported YAML version of the document")},TAG:function(r,t,n){var i,o;n.length!==2&&x(r,"TAG directive accepts exactly two arguments"),i=n[0],o=n[1],oi.test(i)||x(r,"ill-formed tag handle (first argument) of the TAG directive"),ue.call(r.tagMap,i)&&x(r,'there is a previously declared suffix for "'+i+'" tag handle'),ai.test(o)||x(r,"ill-formed tag prefix (second argument) of the TAG directive");try{o=decodeURIComponent(o)}catch{x(r,"tag prefix is malformed: "+o)}r.tagMap[i]=o}};function se(e,r,t,n){var i,o,a,s;if(r<t){if(s=e.input.slice(r,t),n)for(i=0,o=s.length;i<o;i+=1)a=s.charCodeAt(i),a===9||32<=a&&a<=1114111||x(e,"expected valid JSON character");else Iy.test(s)&&x(e,"the stream contains non-printable characters");e.result+=s}}function Vn(e,r,t,n){var i,o,a,s;for(R.isObject(t)||x(e,"cannot merge mappings; the provided source object is unacceptable"),i=Object.keys(t),a=0,s=i.length;a<s;a+=1)o=i[a],ue.call(r,o)||(r[o]=t[o],n[o]=!0)}function Ie(e,r,t,n,i,o,a,s,u){var l,p;if(Array.isArray(i))for(i=Array.prototype.slice.call(i),l=0,p=i.length;l<p;l+=1)Array.isArray(i[l])&&x(e,"nested arrays are not supported inside keys"),typeof i=="object"&&Dn(i[l])==="[object Object]"&&(i[l]="[object Object]");if(typeof i=="object"&&Dn(i)==="[object Object]"&&(i="[object Object]"),i=String(i),r===null&&(r={}),n==="tag:yaml.org,2002:merge")if(Array.isArray(o))for(l=0,p=o.length;l<p;l+=1)Vn(e,r,o[l],t);else Vn(e,r,o,t);else!e.json&&!ue.call(t,i)&&ue.call(r,i)&&(e.line=a||e.line,e.lineStart=s||e.lineStart,e.position=u||e.position,x(e,"duplicated mapping key")),i==="__proto__"?Object.defineProperty(r,i,{configurable:!0,enumerable:!0,writable:!0,value:o}):r[i]=o,delete t[i];return r}function vt(e){var r;r=e.input.charCodeAt(e.position),r===10?e.position++:r===13?(e.position++,e.input.charCodeAt(e.position)===10&&e.position++):x(e,"a line break is expected"),e.line+=1,e.lineStart=e.position,e.firstTabInLine=-1}function N(e,r,t){for(var n=0,i=e.input.charCodeAt(e.position);i!==0;){for(;he(i);)i===9&&e.firstTabInLine===-1&&(e.firstTabInLine=e.position),i=e.input.charCodeAt(++e.position);if(r&&i===35)do i=e.input.charCodeAt(++e.position);while(i!==10&&i!==13&&i!==0);if(W(i))for(vt(e),i=e.input.charCodeAt(e.position),n++,e.lineIndent=0;i===32;)e.lineIndent++,i=e.input.charCodeAt(++e.position);else break}return t!==-1&&n!==0&&e.lineIndent<t&&gr(e,"deficient indentation"),n}function vr(e){var r=e.position,t;return t=e.input.charCodeAt(r),!!((t===45||t===46)&&t===e.input.charCodeAt(r+1)&&t===e.input.charCodeAt(r+2)&&(r+=3,t=e.input.charCodeAt(r),t===0||V(t)))}function xt(e,r){r===1?e.result+=" ":r>1&&(e.result+=R.repeat(`
|
|
10
|
+
`,r-1))}function Ny(e,r,t){var n,i,o,a,s,u,l,p,d=e.kind,c=e.result,m;if(m=e.input.charCodeAt(e.position),V(m)||Ee(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(i=e.input.charCodeAt(e.position+1),V(i)||t&&Ee(i)))return!1;for(e.kind="scalar",e.result="",o=a=e.position,s=!1;m!==0;){if(m===58){if(i=e.input.charCodeAt(e.position+1),V(i)||t&&Ee(i))break}else if(m===35){if(n=e.input.charCodeAt(e.position-1),V(n))break}else{if(e.position===e.lineStart&&vr(e)||t&&Ee(m))break;if(W(m))if(u=e.line,l=e.lineStart,p=e.lineIndent,N(e,!1,-1),e.lineIndent>=r){s=!0,m=e.input.charCodeAt(e.position);continue}else{e.position=a,e.line=u,e.lineStart=l,e.lineIndent=p;break}}s&&(se(e,o,a,!1),xt(e,e.line-u),o=a=e.position,s=!1),he(m)||(a=e.position+1),m=e.input.charCodeAt(++e.position)}return se(e,o,a,!1),e.result?!0:(e.kind=d,e.result=c,!1)}function Ry(e,r){var t,n,i;if(t=e.input.charCodeAt(e.position),t!==39)return!1;for(e.kind="scalar",e.result="",e.position++,n=i=e.position;(t=e.input.charCodeAt(e.position))!==0;)if(t===39)if(se(e,n,e.position,!0),t=e.input.charCodeAt(++e.position),t===39)n=e.position,e.position++,i=e.position;else return!0;else W(t)?(se(e,n,i,!0),xt(e,N(e,!1,r)),n=i=e.position):e.position===e.lineStart&&vr(e)?x(e,"unexpected end of the document within a single quoted scalar"):(e.position++,i=e.position);x(e,"unexpected end of the stream within a single quoted scalar")}function jy(e,r){var t,n,i,o,a,s;if(s=e.input.charCodeAt(e.position),s!==34)return!1;for(e.kind="scalar",e.result="",e.position++,t=n=e.position;(s=e.input.charCodeAt(e.position))!==0;){if(s===34)return se(e,t,e.position,!0),e.position++,!0;if(s===92){if(se(e,t,e.position,!0),s=e.input.charCodeAt(++e.position),W(s))N(e,!1,r);else if(s<256&&si[s])e.result+=ui[s],e.position++;else if((a=Oy(s))>0){for(i=a,o=0;i>0;i--)s=e.input.charCodeAt(++e.position),(a=_y(s))>=0?o=(o<<4)+a:x(e,"expected hexadecimal character");e.result+=Py(o),e.position++}else x(e,"unknown escape sequence");t=n=e.position}else W(s)?(se(e,t,n,!0),xt(e,N(e,!1,r)),t=n=e.position):e.position===e.lineStart&&vr(e)?x(e,"unexpected end of the document within a double quoted scalar"):(e.position++,n=e.position)}x(e,"unexpected end of the stream within a double quoted scalar")}function My(e,r){var t=!0,n,i,o,a=e.tag,s,u=e.anchor,l,p,d,c,m,y=Object.create(null),h,b,g,v;if(v=e.input.charCodeAt(e.position),v===91)p=93,m=!1,s=[];else if(v===123)p=125,m=!0,s={};else return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=s),v=e.input.charCodeAt(++e.position);v!==0;){if(N(e,!0,r),v=e.input.charCodeAt(e.position),v===p)return e.position++,e.tag=a,e.anchor=u,e.kind=m?"mapping":"sequence",e.result=s,!0;t?v===44&&x(e,"expected the node content, but found ','"):x(e,"missed comma between flow collection entries"),b=h=g=null,d=c=!1,v===63&&(l=e.input.charCodeAt(e.position+1),V(l)&&(d=c=!0,e.position++,N(e,!0,r))),n=e.line,i=e.lineStart,o=e.position,ke(e,r,mr,!1,!0),b=e.tag,h=e.result,N(e,!0,r),v=e.input.charCodeAt(e.position),(c||e.line===n)&&v===58&&(d=!0,v=e.input.charCodeAt(++e.position),N(e,!0,r),ke(e,r,mr,!1,!0),g=e.result),m?Ie(e,s,y,b,h,g,n,i,o):d?s.push(Ie(e,null,y,b,h,g,n,i,o)):s.push(h),N(e,!0,r),v=e.input.charCodeAt(e.position),v===44?(t=!0,v=e.input.charCodeAt(++e.position)):t=!1}x(e,"unexpected end of the stream within a flow collection")}function Fy(e,r){var t,n,i=dt,o=!1,a=!1,s=r,u=0,l=!1,p,d;if(d=e.input.charCodeAt(e.position),d===124)n=!1;else if(d===62)n=!0;else return!1;for(e.kind="scalar",e.result="";d!==0;)if(d=e.input.charCodeAt(++e.position),d===43||d===45)dt===i?i=d===43?Ln:Ey:x(e,"repeat of a chomping mode identifier");else if((p=Cy(d))>=0)p===0?x(e,"bad explicit indentation width of a block scalar; it cannot be less than one"):a?x(e,"repeat of an indentation width identifier"):(s=r+p-1,a=!0);else break;if(he(d)){do d=e.input.charCodeAt(++e.position);while(he(d));if(d===35)do d=e.input.charCodeAt(++e.position);while(!W(d)&&d!==0)}for(;d!==0;){for(vt(e),e.lineIndent=0,d=e.input.charCodeAt(e.position);(!a||e.lineIndent<s)&&d===32;)e.lineIndent++,d=e.input.charCodeAt(++e.position);if(!a&&e.lineIndent>s&&(s=e.lineIndent),W(d)){u++;continue}if(e.lineIndent<s){i===Ln?e.result+=R.repeat(`
|
|
11
|
+
`,o?1+u:u):i===dt&&o&&(e.result+=`
|
|
12
|
+
`);break}for(n?he(d)?(l=!0,e.result+=R.repeat(`
|
|
13
|
+
`,o?1+u:u)):l?(l=!1,e.result+=R.repeat(`
|
|
14
|
+
`,u+1)):u===0?o&&(e.result+=" "):e.result+=R.repeat(`
|
|
15
|
+
`,u):e.result+=R.repeat(`
|
|
16
|
+
`,o?1+u:u),o=!0,a=!0,u=0,t=e.position;!W(d)&&d!==0;)d=e.input.charCodeAt(++e.position);se(e,t,e.position,!1)}return!0}function Un(e,r){var t,n=e.tag,i=e.anchor,o=[],a,s=!1,u;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=o),u=e.input.charCodeAt(e.position);u!==0&&(e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,x(e,"tab characters must not be used in indentation")),!(u!==45||(a=e.input.charCodeAt(e.position+1),!V(a))));){if(s=!0,e.position++,N(e,!0,-1)&&e.lineIndent<=r){o.push(null),u=e.input.charCodeAt(e.position);continue}if(t=e.line,ke(e,r,ii,!1,!0),o.push(e.result),N(e,!0,-1),u=e.input.charCodeAt(e.position),(e.line===t||e.lineIndent>r)&&u!==0)x(e,"bad indentation of a sequence entry");else if(e.lineIndent<r)break}return s?(e.tag=n,e.anchor=i,e.kind="sequence",e.result=o,!0):!1}function Ly(e,r,t){var n,i,o,a,s,u,l=e.tag,p=e.anchor,d={},c=Object.create(null),m=null,y=null,h=null,b=!1,g=!1,v;if(e.firstTabInLine!==-1)return!1;for(e.anchor!==null&&(e.anchorMap[e.anchor]=d),v=e.input.charCodeAt(e.position);v!==0;){if(!b&&e.firstTabInLine!==-1&&(e.position=e.firstTabInLine,x(e,"tab characters must not be used in indentation")),n=e.input.charCodeAt(e.position+1),o=e.line,(v===63||v===58)&&V(n))v===63?(b&&(Ie(e,d,c,m,y,null,a,s,u),m=y=h=null),g=!0,b=!0,i=!0):b?(b=!1,i=!0):x(e,"incomplete explicit mapping pair; a key node is missed; or followed by a non-tabulated empty line"),e.position+=1,v=n;else{if(a=e.line,s=e.lineStart,u=e.position,!ke(e,t,ni,!1,!0))break;if(e.line===o){for(v=e.input.charCodeAt(e.position);he(v);)v=e.input.charCodeAt(++e.position);if(v===58)v=e.input.charCodeAt(++e.position),V(v)||x(e,"a whitespace character is expected after the key-value separator within a block mapping"),b&&(Ie(e,d,c,m,y,null,a,s,u),m=y=h=null),g=!0,b=!1,i=!1,m=e.tag,y=e.result;else if(g)x(e,"can not read an implicit mapping pair; a colon is missed");else return e.tag=l,e.anchor=p,!0}else if(g)x(e,"can not read a block mapping entry; a multiline key may not be an implicit key");else return e.tag=l,e.anchor=p,!0}if((e.line===o||e.lineIndent>r)&&(b&&(a=e.line,s=e.lineStart,u=e.position),ke(e,r,hr,!0,i)&&(b?y=e.result:h=e.result),b||(Ie(e,d,c,m,y,h,a,s,u),m=y=h=null),N(e,!0,-1),v=e.input.charCodeAt(e.position)),(e.line===o||e.lineIndent>r)&&v!==0)x(e,"bad indentation of a mapping entry");else if(e.lineIndent<r)break}return b&&Ie(e,d,c,m,y,null,a,s,u),g&&(e.tag=l,e.anchor=p,e.kind="mapping",e.result=d),g}function Dy(e){var r,t=!1,n=!1,i,o,a;if(a=e.input.charCodeAt(e.position),a!==33)return!1;if(e.tag!==null&&x(e,"duplication of a tag property"),a=e.input.charCodeAt(++e.position),a===60?(t=!0,a=e.input.charCodeAt(++e.position)):a===33?(n=!0,i="!!",a=e.input.charCodeAt(++e.position)):i="!",r=e.position,t){do a=e.input.charCodeAt(++e.position);while(a!==0&&a!==62);e.position<e.length?(o=e.input.slice(r,e.position),a=e.input.charCodeAt(++e.position)):x(e,"unexpected end of the stream within a verbatim tag")}else{for(;a!==0&&!V(a);)a===33&&(n?x(e,"tag suffix cannot contain exclamation marks"):(i=e.input.slice(r-1,e.position+1),oi.test(i)||x(e,"named tag handle cannot contain such characters"),n=!0,r=e.position+1)),a=e.input.charCodeAt(++e.position);o=e.input.slice(r,e.position),qy.test(o)&&x(e,"tag suffix cannot contain flow indicator characters")}o&&!ai.test(o)&&x(e,"tag name cannot contain such characters: "+o);try{o=decodeURIComponent(o)}catch{x(e,"tag name is malformed: "+o)}return t?e.tag=o:ue.call(e.tagMap,i)?e.tag=e.tagMap[i]+o:i==="!"?e.tag="!"+o:i==="!!"?e.tag="tag:yaml.org,2002:"+o:x(e,'undeclared tag handle "'+i+'"'),!0}function $y(e){var r,t;if(t=e.input.charCodeAt(e.position),t!==38)return!1;for(e.anchor!==null&&x(e,"duplication of an anchor property"),t=e.input.charCodeAt(++e.position),r=e.position;t!==0&&!V(t)&&!Ee(t);)t=e.input.charCodeAt(++e.position);return e.position===r&&x(e,"name of an anchor node must contain at least one character"),e.anchor=e.input.slice(r,e.position),!0}function By(e){var r,t,n;if(n=e.input.charCodeAt(e.position),n!==42)return!1;for(n=e.input.charCodeAt(++e.position),r=e.position;n!==0&&!V(n)&&!Ee(n);)n=e.input.charCodeAt(++e.position);return e.position===r&&x(e,"name of an alias node must contain at least one character"),t=e.input.slice(r,e.position),ue.call(e.anchorMap,t)||x(e,'unidentified alias "'+t+'"'),e.result=e.anchorMap[t],N(e,!0,-1),!0}function ke(e,r,t,n,i){var o,a,s,u=1,l=!1,p=!1,d,c,m,y,h,b;if(e.listener!==null&&e.listener("open",e),e.tag=null,e.anchor=null,e.kind=null,e.result=null,o=a=s=hr===t||ii===t,n&&N(e,!0,-1)&&(l=!0,e.lineIndent>r?u=1:e.lineIndent===r?u=0:e.lineIndent<r&&(u=-1)),u===1)for(;Dy(e)||$y(e);)N(e,!0,-1)?(l=!0,s=o,e.lineIndent>r?u=1:e.lineIndent===r?u=0:e.lineIndent<r&&(u=-1)):s=!1;if(s&&(s=l||i),(u===1||hr===t)&&(mr===t||ni===t?h=r:h=r+1,b=e.position-e.lineStart,u===1?s&&(Un(e,b)||Ly(e,b,h))||My(e,h)?p=!0:(a&&Fy(e,h)||Ry(e,h)||jy(e,h)?p=!0:By(e)?(p=!0,(e.tag!==null||e.anchor!==null)&&x(e,"alias node should not have any properties")):Ny(e,h,mr===t)&&(p=!0,e.tag===null&&(e.tag="?")),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):u===0&&(p=s&&Un(e,b))),e.tag===null)e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);else if(e.tag==="?"){for(e.result!==null&&e.kind!=="scalar"&&x(e,'unacceptable node kind for !<?> tag; it should be "scalar", not "'+e.kind+'"'),d=0,c=e.implicitTypes.length;d<c;d+=1)if(y=e.implicitTypes[d],y.resolve(e.result)){e.result=y.construct(e.result),e.tag=y.tag,e.anchor!==null&&(e.anchorMap[e.anchor]=e.result);break}}else if(e.tag!=="!"){if(ue.call(e.typeMap[e.kind||"fallback"],e.tag))y=e.typeMap[e.kind||"fallback"][e.tag];else for(y=null,m=e.typeMap.multi[e.kind||"fallback"],d=0,c=m.length;d<c;d+=1)if(e.tag.slice(0,m[d].tag.length)===m[d].tag){y=m[d];break}y||x(e,"unknown tag !<"+e.tag+">"),e.result!==null&&y.kind!==e.kind&&x(e,"unacceptable node kind for !<"+e.tag+'> tag; it should be "'+y.kind+'", not "'+e.kind+'"'),y.resolve(e.result,e.tag)?(e.result=y.construct(e.result,e.tag),e.anchor!==null&&(e.anchorMap[e.anchor]=e.result)):x(e,"cannot resolve a node with !<"+e.tag+"> explicit tag")}return e.listener!==null&&e.listener("close",e),e.tag!==null||e.anchor!==null||p}function Vy(e){var r=e.position,t,n,i,o=!1,a;for(e.version=null,e.checkLineBreaks=e.legacy,e.tagMap=Object.create(null),e.anchorMap=Object.create(null);(a=e.input.charCodeAt(e.position))!==0&&(N(e,!0,-1),a=e.input.charCodeAt(e.position),!(e.lineIndent>0||a!==37));){for(o=!0,a=e.input.charCodeAt(++e.position),t=e.position;a!==0&&!V(a);)a=e.input.charCodeAt(++e.position);for(n=e.input.slice(t,e.position),i=[],n.length<1&&x(e,"directive name must not be less than one character in length");a!==0;){for(;he(a);)a=e.input.charCodeAt(++e.position);if(a===35){do a=e.input.charCodeAt(++e.position);while(a!==0&&!W(a));break}if(W(a))break;for(t=e.position;a!==0&&!V(a);)a=e.input.charCodeAt(++e.position);i.push(e.input.slice(t,e.position))}a!==0&&vt(e),ue.call(Bn,n)?Bn[n](e,n,i):gr(e,'unknown document directive "'+n+'"')}if(N(e,!0,-1),e.lineIndent===0&&e.input.charCodeAt(e.position)===45&&e.input.charCodeAt(e.position+1)===45&&e.input.charCodeAt(e.position+2)===45?(e.position+=3,N(e,!0,-1)):o&&x(e,"directives end mark is expected"),ke(e,e.lineIndent-1,hr,!1,!0),N(e,!0,-1),e.checkLineBreaks&&ky.test(e.input.slice(r,e.position))&&gr(e,"non-ASCII line breaks are interpreted as content"),e.documents.push(e.result),e.position===e.lineStart&&vr(e)){e.input.charCodeAt(e.position)===46&&(e.position+=3,N(e,!0,-1));return}if(e.position<e.length-1)x(e,"end of the stream or a document separator is expected");else return}function ci(e,r){e=String(e),r=r||{},e.length!==0&&(e.charCodeAt(e.length-1)!==10&&e.charCodeAt(e.length-1)!==13&&(e+=`
|
|
17
|
+
`),e.charCodeAt(0)===65279&&(e=e.slice(1)));var t=new Ty(e,r),n=e.indexOf("\0");for(n!==-1&&(t.position=n,x(t,"null byte is not allowed in input")),t.input+="\0";t.input.charCodeAt(t.position)===32;)t.lineIndent+=1,t.position+=1;for(;t.position<t.length-1;)Vy(t);return t.documents}function Uy(e,r,t){r!==null&&typeof r=="object"&&typeof t>"u"&&(t=r,r=null);var n=ci(e,t);if(typeof r!="function")return n;for(var i=0,o=n.length;i<o;i+=1)r(n[i])}function Hy(e,r){var t=ci(e,r);if(t.length!==0){if(t.length===1)return t[0];throw new B("expected a single document in the stream, but found more")}}var Gy=Uy,Ky=Hy,fi={loadAll:Gy,load:Ky},pi=Object.prototype.toString,di=Object.prototype.hasOwnProperty,At=65279,zy=9,Be=10,Yy=13,Jy=32,Wy=33,Qy=34,mt=35,Zy=37,Xy=38,em=39,rm=42,yi=44,tm=45,br=58,nm=61,im=62,om=63,am=64,mi=91,hi=93,sm=96,gi=123,um=124,bi=125,D={};D[0]="\\0";D[7]="\\a";D[8]="\\b";D[9]="\\t";D[10]="\\n";D[11]="\\v";D[12]="\\f";D[13]="\\r";D[27]="\\e";D[34]='\\"';D[92]="\\\\";D[133]="\\N";D[160]="\\_";D[8232]="\\L";D[8233]="\\P";var lm=["y","Y","yes","Yes","YES","on","On","ON","n","N","no","No","NO","off","Off","OFF"],cm=/^[-+]?[0-9_]+(?::[0-9_]+)+(?:\.[0-9_]*)?$/;function fm(e,r){var t,n,i,o,a,s,u;if(r===null)return{};for(t={},n=Object.keys(r),i=0,o=n.length;i<o;i+=1)a=n[i],s=String(r[a]),a.slice(0,2)==="!!"&&(a="tag:yaml.org,2002:"+a.slice(2)),u=e.compiledTypeMap.fallback[a],u&&di.call(u.styleAliases,s)&&(s=u.styleAliases[s]),t[a]=s;return t}function pm(e){var r,t,n;if(r=e.toString(16).toUpperCase(),e<=255)t="x",n=2;else if(e<=65535)t="u",n=4;else if(e<=4294967295)t="U",n=8;else throw new B("code point within a string may not be greater than 0xFFFFFFFF");return"\\"+t+R.repeat("0",n-r.length)+r}var dm=1,Ve=2;function ym(e){this.schema=e.schema||ti,this.indent=Math.max(1,e.indent||2),this.noArrayIndent=e.noArrayIndent||!1,this.skipInvalid=e.skipInvalid||!1,this.flowLevel=R.isNothing(e.flowLevel)?-1:e.flowLevel,this.styleMap=fm(this.schema,e.styles||null),this.sortKeys=e.sortKeys||!1,this.lineWidth=e.lineWidth||80,this.noRefs=e.noRefs||!1,this.noCompatMode=e.noCompatMode||!1,this.condenseFlow=e.condenseFlow||!1,this.quotingType=e.quotingType==='"'?Ve:dm,this.forceQuotes=e.forceQuotes||!1,this.replacer=typeof e.replacer=="function"?e.replacer:null,this.implicitTypes=this.schema.compiledImplicit,this.explicitTypes=this.schema.compiledExplicit,this.tag=null,this.result="",this.duplicates=[],this.usedDuplicates=null}function Hn(e,r){for(var t=R.repeat(" ",r),n=0,i=-1,o="",a,s=e.length;n<s;)i=e.indexOf(`
|
|
18
|
+
`,n),i===-1?(a=e.slice(n),n=s):(a=e.slice(n,i+1),n=i+1),a.length&&a!==`
|
|
19
|
+
`&&(o+=t),o+=a;return o}function ht(e,r){return`
|
|
20
|
+
`+R.repeat(" ",e.indent*r)}function mm(e,r){var t,n,i;for(t=0,n=e.implicitTypes.length;t<n;t+=1)if(i=e.implicitTypes[t],i.resolve(r))return!0;return!1}function wr(e){return e===Jy||e===zy}function Ue(e){return 32<=e&&e<=126||161<=e&&e<=55295&&e!==8232&&e!==8233||57344<=e&&e<=65533&&e!==At||65536<=e&&e<=1114111}function Gn(e){return Ue(e)&&e!==At&&e!==Yy&&e!==Be}function Kn(e,r,t){var n=Gn(e),i=n&&!wr(e);return(t?n:n&&e!==yi&&e!==mi&&e!==hi&&e!==gi&&e!==bi)&&e!==mt&&!(r===br&&!i)||Gn(r)&&!wr(r)&&e===mt||r===br&&i}function hm(e){return Ue(e)&&e!==At&&!wr(e)&&e!==tm&&e!==om&&e!==br&&e!==yi&&e!==mi&&e!==hi&&e!==gi&&e!==bi&&e!==mt&&e!==Xy&&e!==rm&&e!==Wy&&e!==um&&e!==nm&&e!==im&&e!==em&&e!==Qy&&e!==Zy&&e!==am&&e!==sm}function gm(e){return!wr(e)&&e!==br}function De(e,r){var t=e.charCodeAt(r),n;return t>=55296&&t<=56319&&r+1<e.length&&(n=e.charCodeAt(r+1),n>=56320&&n<=57343)?(t-55296)*1024+n-56320+65536:t}function wi(e){var r=/^\n* /;return r.test(e)}var vi=1,gt=2,xi=3,Ai=4,Se=5;function bm(e,r,t,n,i,o,a,s){var u,l=0,p=null,d=!1,c=!1,m=n!==-1,y=-1,h=hm(De(e,0))&&gm(De(e,e.length-1));if(r||a)for(u=0;u<e.length;l>=65536?u+=2:u++){if(l=De(e,u),!Ue(l))return Se;h=h&&Kn(l,p,s),p=l}else{for(u=0;u<e.length;l>=65536?u+=2:u++){if(l=De(e,u),l===Be)d=!0,m&&(c=c||u-y-1>n&&e[y+1]!==" ",y=u);else if(!Ue(l))return Se;h=h&&Kn(l,p,s),p=l}c=c||m&&u-y-1>n&&e[y+1]!==" "}return!d&&!c?h&&!a&&!i(e)?vi:o===Ve?Se:gt:t>9&&wi(e)?Se:a?o===Ve?Se:gt:c?Ai:xi}function wm(e,r,t,n,i){e.dump=(function(){if(r.length===0)return e.quotingType===Ve?'""':"''";if(!e.noCompatMode&&(lm.indexOf(r)!==-1||cm.test(r)))return e.quotingType===Ve?'"'+r+'"':"'"+r+"'";var o=e.indent*Math.max(1,t),a=e.lineWidth===-1?-1:Math.max(Math.min(e.lineWidth,40),e.lineWidth-o),s=n||e.flowLevel>-1&&t>=e.flowLevel;function u(l){return mm(e,l)}switch(bm(r,s,e.indent,a,u,e.quotingType,e.forceQuotes&&!n,i)){case vi:return r;case gt:return"'"+r.replace(/'/g,"''")+"'";case xi:return"|"+zn(r,e.indent)+Yn(Hn(r,o));case Ai:return">"+zn(r,e.indent)+Yn(Hn(vm(r,a),o));case Se:return'"'+xm(r)+'"';default:throw new B("impossible error: invalid scalar style")}})()}function zn(e,r){var t=wi(e)?String(r):"",n=e[e.length-1]===`
|
|
21
|
+
`,i=n&&(e[e.length-2]===`
|
|
22
|
+
`||e===`
|
|
23
|
+
`),o=i?"+":n?"":"-";return t+o+`
|
|
24
|
+
`}function Yn(e){return e[e.length-1]===`
|
|
25
|
+
`?e.slice(0,-1):e}function vm(e,r){for(var t=/(\n+)([^\n]*)/g,n=(function(){var l=e.indexOf(`
|
|
26
|
+
`);return l=l!==-1?l:e.length,t.lastIndex=l,Jn(e.slice(0,l),r)})(),i=e[0]===`
|
|
27
|
+
`||e[0]===" ",o,a;a=t.exec(e);){var s=a[1],u=a[2];o=u[0]===" ",n+=s+(!i&&!o&&u!==""?`
|
|
28
|
+
`:"")+Jn(u,r),i=o}return n}function Jn(e,r){if(e===""||e[0]===" ")return e;for(var t=/ [^ ]/g,n,i=0,o,a=0,s=0,u="";n=t.exec(e);)s=n.index,s-i>r&&(o=a>i?a:s,u+=`
|
|
29
|
+
`+e.slice(i,o),i=o+1),a=s;return u+=`
|
|
30
|
+
`,e.length-i>r&&a>i?u+=e.slice(i,a)+`
|
|
31
|
+
`+e.slice(a+1):u+=e.slice(i),u.slice(1)}function xm(e){for(var r="",t=0,n,i=0;i<e.length;t>=65536?i+=2:i++)t=De(e,i),n=D[t],!n&&Ue(t)?(r+=e[i],t>=65536&&(r+=e[i+1])):r+=n||pm(t);return r}function Am(e,r,t){var n="",i=e.tag,o,a,s;for(o=0,a=t.length;o<a;o+=1)s=t[o],e.replacer&&(s=e.replacer.call(t,String(o),s)),(te(e,r,s,!1,!1)||typeof s>"u"&&te(e,r,null,!1,!1))&&(n!==""&&(n+=","+(e.condenseFlow?"":" ")),n+=e.dump);e.tag=i,e.dump="["+n+"]"}function Wn(e,r,t,n){var i="",o=e.tag,a,s,u;for(a=0,s=t.length;a<s;a+=1)u=t[a],e.replacer&&(u=e.replacer.call(t,String(a),u)),(te(e,r+1,u,!0,!0,!1,!0)||typeof u>"u"&&te(e,r+1,null,!0,!0,!1,!0))&&((!n||i!=="")&&(i+=ht(e,r)),e.dump&&Be===e.dump.charCodeAt(0)?i+="-":i+="- ",i+=e.dump);e.tag=o,e.dump=i||"[]"}function Sm(e,r,t){var n="",i=e.tag,o=Object.keys(t),a,s,u,l,p;for(a=0,s=o.length;a<s;a+=1)p="",n!==""&&(p+=", "),e.condenseFlow&&(p+='"'),u=o[a],l=t[u],e.replacer&&(l=e.replacer.call(t,u,l)),te(e,r,u,!1,!1)&&(e.dump.length>1024&&(p+="? "),p+=e.dump+(e.condenseFlow?'"':"")+":"+(e.condenseFlow?"":" "),te(e,r,l,!1,!1)&&(p+=e.dump,n+=p));e.tag=i,e.dump="{"+n+"}"}function Em(e,r,t,n){var i="",o=e.tag,a=Object.keys(t),s,u,l,p,d,c;if(e.sortKeys===!0)a.sort();else if(typeof e.sortKeys=="function")a.sort(e.sortKeys);else if(e.sortKeys)throw new B("sortKeys must be a boolean or a function");for(s=0,u=a.length;s<u;s+=1)c="",(!n||i!=="")&&(c+=ht(e,r)),l=a[s],p=t[l],e.replacer&&(p=e.replacer.call(t,l,p)),te(e,r+1,l,!0,!0,!0)&&(d=e.tag!==null&&e.tag!=="?"||e.dump&&e.dump.length>1024,d&&(e.dump&&Be===e.dump.charCodeAt(0)?c+="?":c+="? "),c+=e.dump,d&&(c+=ht(e,r)),te(e,r+1,p,!0,d)&&(e.dump&&Be===e.dump.charCodeAt(0)?c+=":":c+=": ",c+=e.dump,i+=c));e.tag=o,e.dump=i||"{}"}function Qn(e,r,t){var n,i,o,a,s,u;for(i=t?e.explicitTypes:e.implicitTypes,o=0,a=i.length;o<a;o+=1)if(s=i[o],(s.instanceOf||s.predicate)&&(!s.instanceOf||typeof r=="object"&&r instanceof s.instanceOf)&&(!s.predicate||s.predicate(r))){if(t?s.multi&&s.representName?e.tag=s.representName(r):e.tag=s.tag:e.tag="?",s.represent){if(u=e.styleMap[s.tag]||s.defaultStyle,pi.call(s.represent)==="[object Function]")n=s.represent(r,u);else if(di.call(s.represent,u))n=s.represent[u](r,u);else throw new B("!<"+s.tag+'> tag resolver accepts not "'+u+'" style');e.dump=n}return!0}return!1}function te(e,r,t,n,i,o,a){e.tag=null,e.dump=t,Qn(e,t,!1)||Qn(e,t,!0);var s=pi.call(e.dump),u=n,l;n&&(n=e.flowLevel<0||e.flowLevel>r);var p=s==="[object Object]"||s==="[object Array]",d,c;if(p&&(d=e.duplicates.indexOf(t),c=d!==-1),(e.tag!==null&&e.tag!=="?"||c||e.indent!==2&&r>0)&&(i=!1),c&&e.usedDuplicates[d])e.dump="*ref_"+d;else{if(p&&c&&!e.usedDuplicates[d]&&(e.usedDuplicates[d]=!0),s==="[object Object]")n&&Object.keys(e.dump).length!==0?(Em(e,r,e.dump,i),c&&(e.dump="&ref_"+d+e.dump)):(Sm(e,r,e.dump),c&&(e.dump="&ref_"+d+" "+e.dump));else if(s==="[object Array]")n&&e.dump.length!==0?(e.noArrayIndent&&!a&&r>0?Wn(e,r-1,e.dump,i):Wn(e,r,e.dump,i),c&&(e.dump="&ref_"+d+e.dump)):(Am(e,r,e.dump),c&&(e.dump="&ref_"+d+" "+e.dump));else if(s==="[object String]")e.tag!=="?"&&wm(e,e.dump,r,o,u);else{if(s==="[object Undefined]")return!1;if(e.skipInvalid)return!1;throw new B("unacceptable kind of an object to dump "+s)}e.tag!==null&&e.tag!=="?"&&(l=encodeURI(e.tag[0]==="!"?e.tag.slice(1):e.tag).replace(/!/g,"%21"),e.tag[0]==="!"?l="!"+l:l.slice(0,18)==="tag:yaml.org,2002:"?l="!!"+l.slice(18):l="!<"+l+">",e.dump=l+" "+e.dump)}return!0}function Im(e,r){var t=[],n=[],i,o;for(bt(e,t,n),i=0,o=n.length;i<o;i+=1)r.duplicates.push(t[n[i]]);r.usedDuplicates=new Array(o)}function bt(e,r,t){var n,i,o;if(e!==null&&typeof e=="object")if(i=r.indexOf(e),i!==-1)t.indexOf(i)===-1&&t.push(i);else if(r.push(e),Array.isArray(e))for(i=0,o=e.length;i<o;i+=1)bt(e[i],r,t);else for(n=Object.keys(e),i=0,o=n.length;i<o;i+=1)bt(e[n[i]],r,t)}function km(e,r){r=r||{};var t=new ym(r);t.noRefs||Im(e,t);var n=e;return t.replacer&&(n=t.replacer.call({"":n},"",n)),te(t,0,n,!0,!0)?t.dump+`
|
|
32
|
+
`:""}var qm=km,_m={dump:qm};function St(e,r){return function(){throw new Error("Function yaml."+e+" is removed in js-yaml 4. Use yaml."+r+" instead, which is now safe by default.")}}var Si=fi.load,P_=fi.loadAll,Ei=_m.dump;var T_=St("safeLoad","load"),N_=St("safeLoadAll","loadAll"),R_=St("safeDump","dump");var Lp=Mn(bn());var zr=class{constructor(){this.eventListeners=new Map}addEventListener(r,t){this.eventListeners.has(r)||this.eventListeners.set(r,new Set),this.eventListeners.get(r).add(t)}removeEventListener(r,t){this.eventListeners.get(r)?.delete(t)}emitEvent(r){let t=this.eventListeners.get(r.type);if(t)for(let n of t)try{n(r)}catch(i){console.error("Error in data instance event listener:",i)}}};function vp(e,r,t){let n=e.atoms.length,i=Array.isArray(r?.types)?r.types:[],a=(r?.tuples?.length??0)>0&&i.length!==n;if(!a&&i.length===n)return{tuple:{...e,types:[...i]},relationTypes:[...i]};let s=Array.isArray(e.types)?e.types:[],u=e.atoms.map((l,p)=>t(l)??s[p]??"untyped");return{tuple:{...e,types:u},relationTypes:a?[]:u}}function de(e){if(!Object.prototype.hasOwnProperty.call(e,"$pyretValue"))return;let r=e.$pyretValue;if(r?.kind==="nothing"||r?.kind==="object"||r?.kind==="tuple"||r?.kind==="raw-array"||r?.kind==="table")return{kind:r.kind};if(r?.kind==="reference"&&typeof r.unrestricted=="boolean")return{kind:r.kind,unrestricted:r.unrestricted};if(r?.kind==="string-dict"&&typeof r.mutable=="boolean"&&typeof r.sealed=="boolean"&&(r.mutable||!r.sealed))return{kind:r.kind,mutable:r.mutable,sealed:r.sealed};throw new Error("Malformed reconstructed Pyret value")}function wn(e){if(!e||typeof e!="object"||"dict"in e)return!1;let r=e;return Number.isInteger(r.state)&&"value"in r&&!!r.anns&&Array.isArray(r.anns.anns)&&typeof r.anns.check=="function"&&typeof r.anns.addAnn=="function"&&Object.keys(r).every(t=>t==="state"||t==="value"||t==="anns")}function xp(e){if(wn(e)){if(e.state!==2)throw new Error("Only initialized mutable Pyret references are supported");return{kind:"reference",unrestricted:e.anns.anns.every(r=>r.ann?.name==="Any")}}}function Ap(e){return!!e.dict&&typeof e.dict=="object"&&Object.keys(e.dict).length===0&&typeof e.brand=="function"&&typeof e.extendWith=="function"&&!("updateDict"in e)&&Object.keys(e).every(r=>r==="dict"||r==="brands")}function Yr(e){return typeof e=="function"||e!==null&&typeof e=="object"&&("app"in e||"meth"in e&&"full_meth"in e)}function Sp(e,r){let t=[];for(let n in e)(r||!Yr(e[n]))&&t.push(n);return t}var Jr=e=>typeof e=="string"&&/^-?(0|[1-9][0-9]*)$/.test(e);function ne(e,r=1n){if(r===0n)throw new Error("Invalid Pyret rational denominator");r<0n&&(e=-e,r=-r);let t=e<0n?-e:e,n=r;for(;n!==0n;){let i=t%n;t=n,n=i}return e/=t,r/=t,r===1n?{version:1,kind:"integer",value:e.toString()}:{version:1,kind:"rational",numerator:e.toString(),denominator:r.toString()}}function Ep(e){let r=e;if(r?.version===1){if(r.kind==="integer"&&Jr(r.value))return ne(BigInt(r.value));if(r.kind==="rational"&&Jr(r.numerator)&&Jr(r.denominator))return ne(BigInt(r.numerator),BigInt(r.denominator));if(r.kind==="roughnum"&&typeof r.value=="string"&&/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]+)?(?:e[+-]?[0-9]+)?$/i.test(r.value)&&Number.isFinite(Number(r.value)))return{version:1,kind:"roughnum",value:r.value}}throw new Error("Malformed Pyret number")}function Ip(e){if(e.startsWith("~"))return Ep({version:1,kind:"roughnum",value:e.slice(1)});let r=/^(-?(?:0|[1-9][0-9]*))\/(-?(?:0|[1-9][0-9]*))$/.exec(e);if(r)return ne(BigInt(r[1]),BigInt(r[2]));let t=/^(-?(?:0|[1-9][0-9]*))(?:\.([0-9]+))?(?:e([+-]?[0-9]+))?$/i.exec(e);if(!t)throw new Error("Malformed Pyret number label");let n=BigInt(t[3]??"0")-BigInt(t[2]?.length??0),i=BigInt(t[1]+(t[2]??""));return n>=0n?ne(i*10n**n):ne(i,10n**-n)}function vn(e){if(typeof e=="number"&&Number.isInteger(e))return BigInt(e).toString();if(typeof e=="bigint")return e.toString();if(!e||typeof e!="object")return;let r=e;if(typeof r.isInteger=="function"&&r.isInteger()&&typeof r.isExact=="function"&&r.isExact()){let t=r.toString();if(Jr(t))return t}}function ie(e){if(e&&typeof e=="object"){if("$pyretNumber"in e)return Ep(e.$pyretNumber);if("n"in e&&"d"in e){let n=vn(e.n),i=vn(e.d);if(n!==void 0&&i!==void 0)return ne(BigInt(n),BigInt(i))}let t=e;if(typeof t.isRoughnum=="function"&&t.isRoughnum()){if(typeof t.n!="number"||!Number.isFinite(t.n))throw new Error("Invalid Pyret roughnum");return{version:1,kind:"roughnum",value:Object.is(t.n,-0)?"-0":String(t.n)}}}let r=vn(e);if(r!==void 0)return ne(BigInt(r));if(typeof e=="number"){if(!Number.isFinite(e))throw new Error("Invalid Pyret number");let[t,n="0"]=String(e).split("e"),i=t.split(".")[1]?.length??0,o=Number(n)-i,a=BigInt(t.replace(".",""));return o>=0?ne(a*10n**BigInt(o)):ne(a,10n**BigInt(-o))}}function Wr(e){switch(e.kind){case"integer":return e.value;case"rational":return`${e.numerator}/${e.denominator}`;case"roughnum":return`~${e.value}`}}function kp(e){if(e.kind==="integer"){let r=BigInt(e.value);if(r>=BigInt(Number.MIN_SAFE_INTEGER)&&r<=BigInt(Number.MAX_SAFE_INTEGER))return Number(r)}return{$pyretNumber:e}}var xn="pyret:field:v1:",An="pyret:constructor:v1:";function qp(e,r,t){return An+JSON.stringify([e,r,t])}function X(e){if(!e.startsWith(An))return;let r=JSON.parse(e.slice(An.length));if(!Array.isArray(r)||r.length!==3||typeof r[0]!="string"||!r[0]||!Number.isSafeInteger(r[1])||r[1]<0||typeof r[2]!="string"||!r[2])throw new Error("Malformed Pyret constructor identity");return{scope:r[0],index:r[1],name:r[2]}}function ee(e){return X(e)?.name??e}function z(e){let{$name:r,$arity:t}=e;if(typeof r!="string"||!Number.isInteger(t)||t<-1)return;let n=e.$constructor?.$fieldNames;if(t===-1)return{name:r,arity:t,fields:[]};if(!Array.isArray(n)||n.length!==t||n.some(a=>typeof a!="string")||new Set(n).size!==n.length)throw new Error(`Invalid Pyret constructor metadata for ${r}`);let i=e.$mut_fields_mask;if(i!==void 0&&(!Array.isArray(i)||i.length!==t||i.some(a=>typeof a!="boolean")))throw new Error(`Invalid Pyret mutable field mask for ${r}`);let o=i?.flatMap((a,s)=>a?[s]:[])??[];return{name:r,arity:t,fields:n,...o.length?{mutableFields:o}:{}}}function _p(e,r){return xn+JSON.stringify([e.name,r,e.fields[r]])}function Qr(e){if(!e.startsWith(xn))return;let r=JSON.parse(e.slice(xn.length));if(!Array.isArray(r)||r.length!==3||typeof r[0]!="string"||!Number.isInteger(r[1])||r[1]<0||typeof r[2]!="string")throw new Error("Malformed Pyret field ID");return{name:r[0],position:r[1],field:r[2]}}var Cp=new Set(["Number","String","Boolean"]),Sn=new Set([...Cp,"Index","Nothing","Object","Tuple","RawArray","Reference","StringDict","MutableStringDict","Table"]);function cr(e){if(e?.type!=="Index"||!/^(0|[1-9][0-9]*)$/.test(e.label)||!Number.isSafeInteger(Number(e.label)))throw new Error("Malformed Pyret position label");return Number(e.label)}function Op(e,r,t){if(e.has(r)&&e.get(r)!==t||[...e].some(([n,i])=>n!==r&&i===t))throw new Error("Conflicting Pyret field positions");e.set(r,t)}function fr(e,r){let t=[];for(let n=0;n<e.size;n++){if(!e.has(n))throw new Error(`Incomplete Pyret ${r}: positions must be contiguous from zero`);t.push(e.get(n))}return t}function p_(e){let r={fields:new Map,targets:new Set,constructors:new Map,objectPositions:new Map,elements:new Map,columns:new Map,rows:new Map,references:new Map,entries:new Map,mutableFields:new Map,sealed:new Set,unrestricted:new Set,nullary:new Set},t=new Map(e.getAtoms().map(n=>[n.id,n]));for(let n of e.getRelations()){let i=Qr(n.id);if(i){if(n.name!==i.field)throw new Error("Pyret field ID disagrees with its name");let o=r.constructors.get(i.name)??new Map;Op(o,i.field,i.position),r.constructors.set(i.name,o)}for(let o of n.tuples){if(!o.atoms.length||o.atoms.some(h=>!t.has(h)))throw new Error("Malformed Pyret relation tuple");let[a,s,u,l]=o.atoms,p=t.get(a).type,d=o.atoms.length;for(let h of o.atoms.slice(1))r.targets.add(h);if(!i&&p!=="Object"){if(n.name==="sealed"&&p==="MutableStringDict"){if(d!==1)throw new Error("Malformed Pyret sealed fact");r.sealed.add(a);continue}if(n.name==="unrestricted"&&p==="Reference"){if(d!==1)throw new Error("Malformed Pyret unrestricted fact");r.unrestricted.add(a);continue}if(n.name==="nullary-constructor"&&!Sn.has(p)){if(d!==1)throw new Error("Malformed Pyret nullary constructor fact");r.nullary.add(a);continue}if(n.name==="mutable-field"&&!Sn.has(p)){if(d!==2)throw new Error("Malformed Pyret mutable field positions");let h=r.mutableFields.get(a)??new Set;h.add(cr(t.get(s))),r.mutableFields.set(a,h);continue}}if(d<2)throw new Error("Malformed Pyret unary relation");if(p==="Table"){if(i)throw new Error("Pyret table relations must have opaque IDs");let h=cr(t.get(s));if(n.name==="column"&&d===3&&t.get(u)?.type==="String"){let b=r.columns.get(a)??new Map;if(b.has(h)&&b.get(h)!==u)throw new Error("Conflicting Pyret table column positions");b.set(h,u),r.columns.set(a,b)}else if(n.name==="row"){let b=r.rows.get(a)??new Map,g=o.atoms.slice(2);if(b.has(h)&&JSON.stringify(b.get(h))!==JSON.stringify(g))throw new Error("Conflicting Pyret table row positions");if(g.some(v=>t.get(v)?.type==="Index"))throw new Error("Pyret table cells cannot be positions");b.set(h,g),r.rows.set(a,b)}else throw new Error("Malformed Pyret table relation");continue}if(p==="StringDict"||p==="MutableStringDict"){if(n.name!=="entry"||d!==4||t.get(u)?.type!=="String")throw new Error("Malformed Pyret dictionary entry");let h=cr(t.get(s)),b=r.entries.get(a)??new Map,g=b.get(h);if(g&&(g.key!==u||g.value!==l))throw new Error("Conflicting Pyret dictionary entry positions");b.set(h,{key:u,value:l}),r.entries.set(a,b);continue}if(p==="Reference"){if(n.name!=="target"||d!==2)throw new Error("Malformed Pyret reference target");if(r.references.has(a)&&r.references.get(a)!==s)throw new Error("Conflicting Pyret reference targets");r.references.set(a,s);continue}if(p==="Tuple"||p==="RawArray"){if(n.name!=="element"||d!==3)throw new Error("Malformed Pyret indexed element");let h=cr(t.get(s)),b=r.elements.get(a)??new Map;if(b.has(h)&&b.get(h)!==u)throw new Error("Conflicting Pyret element positions");b.set(h,u),r.elements.set(a,b);continue}if(Sn.has(p)&&p!=="Object")throw new Error("Pyret primitive cannot have fields");if(i&&(p!==i.name||d!==2))throw new Error("Pyret field ID disagrees with its source constructor");if(p==="Object"){if(d!==3||i)throw new Error("Pyret object field must have a position and one value");let h=r.objectPositions.get(a)??new Map;Op(h,n.name,cr(t.get(s))),r.objectPositions.set(a,h)}let c=r.fields.get(a)??new Map,m=i?.field??n.name,y=c.get(m)??[];for(let h of p==="Object"?[u]:o.atoms.slice(1))y.includes(h)||y.push(h);c.set(m,y),r.fields.set(a,c)}}return r}function d_(e,r){switch(e.type){case"Nothing":return{kind:"nothing"};case"Object":return{kind:"object"};case"Tuple":return{kind:"tuple"};case"RawArray":return{kind:"raw-array"};case"Table":return{kind:"table"};case"Reference":return{kind:"reference",unrestricted:r.unrestricted.has(e.id)};case"StringDict":case"MutableStringDict":return{kind:"string-dict",mutable:e.type==="MutableStringDict",sealed:r.sealed.has(e.id)};default:return}}function y_(e){switch(e.type){case"Number":return kp(Ip(e.label));case"Boolean":if(e.label!=="true"&&e.label!=="false")throw new Error("Malformed Pyret boolean label");return e.label==="true";default:return e.label}}function En(e,r){let t=/^\d+$/.test(e),n=/^\d+$/.test(r);return t&&n?parseInt(e,10)-parseInt(r,10):e.localeCompare(r)}function m_(e,r){let n=Me.getGlobalConstructorCache().get(e);if(n&&n.length){let i=n.filter(a=>r.includes(a)),o=r.filter(a=>!n.includes(a));return[...i,...o.sort(En)]}return[...r].sort(En)}function h_(e){return e.length>0&&e.every(r=>/^\d+$/.test(r))}function Pp(e,r,t={}){let n=In(e,r===void 0?void 0:[r],t);return n.length?n[0]:null}function In(e,r,t={}){let n=new Map(e.getAtoms().map(g=>[g.id,g])),i=p_(e),{fields:o,targets:a,elements:s,references:u,entries:l}=i,p=new Map,d=0,c=new Set,m=new Map,y=g=>{if(m.has(g)){if(!t.allowContainerCycles&&p.get(g)===d&&c.size)throw new Error("Cyclic Pyret containers are not supported");return m.get(g)}let v=n.get(g);if(!v)throw new Error("Unknown Pyret atom ID: "+g);if(Cp.has(v.type)){let k=y_(v);return m.set(g,k),k}let E=d_(v,i);if(E?.kind==="nothing"){let k={$pyretValue:E};return m.set(g,k),k}if(p.set(g,d),E?.kind==="table"){let k=fr(i.columns.get(g)??new Map,"table columns").map(q=>n.get(q).label);if(new Set(k).size!==k.length)throw new Error("Duplicate Pyret table column name");let w=fr(i.rows.get(g)??new Map,"table rows");if(w.some(q=>q.length!==k.length))throw new Error("Pyret table row width must match its columns");let A=[],S={$pyretValue:E,dict:{"_header-raw-array":k,"_rows-raw-array":A}};m.set(g,S),c.add(g);for(let q of w)A.push(q.map(y));return c.delete(g),p.delete(g),S}if(E?.kind==="string-dict"){let k=l.get(g)??new Map,w=fr(k,"dictionary entries"),A={$pyretValue:E,entries:[]};m.set(g,A);let S=new Set;E.mutable&&d++;for(let q of w){let $=n.get(q.key).label;if(S.has($))throw new Error("Duplicate Pyret dictionary key");S.add($),A.entries.push([$,y(q.value)])}return E.mutable&&d--,p.delete(g),A}if(E?.kind==="reference"){let k=u.get(g);if(k===void 0)throw new Error("Incomplete Pyret reference target");let w={$pyretValue:E};return m.set(g,w),d++,w.value=y(k),d--,p.delete(g),w}if(E?.kind==="raw-array"||E?.kind==="tuple"){let k=s.get(g)??new Map,w=fr(k,"container elements"),A=[],S=E.kind==="raw-array"?A:{vals:A};m.set(g,S),c.add(g);for(let q of w)A.push(y(q));return c.delete(g),p.delete(g),S}let T=o.get(g)??new Map,M=Array.from(T.keys()),Y=i.constructors.get(v.type),J=E?void 0:i.nullary.has(g)?0:Y?.size??(M.length?void 0:-1),oe=[...i.mutableFields.get(g)??[]];if(oe.some(k=>J===void 0||k>=J))throw new Error("Malformed Pyret mutable field positions");if(!E&&J===void 0&&h_(M)){let k=[];m.set(g,k);let w=M.slice().sort(En);for(let A of w){let S=T.get(A)??[];k.push(S.length===1?y(S[0]):S.map(q=>y(q)))}return p.delete(g),k}let G={dict:Object.create(null),...E?.kind==="object"?{$pyretValue:E}:{$name:v.type}};m.set(g,G);let re;if(E?.kind==="object"){let k=i.objectPositions.get(g)??new Map;re=fr(new Map([...k].map(([w,A])=>[A,w])),"object fields")}else if(J!==void 0){let k=Y??new Map,w=Math.max(0,J);if(M.length!==w||k.size!==w||[...k].some(([A,S])=>S>=w||!T.has(A)))throw new Error("Incomplete Pyret constructor fields");re=[...k].sort((A,S)=>A[1]-S[1]).map(([A])=>A),G.$arity=J,G.$constructor={$fieldNames:re},oe.length&&(G.$mut_fields_mask=re.map((A,S)=>oe.includes(S)))}else re=m_(v.type,M);for(let k of re){let w=T.get(k)??[];if((E?.kind==="object"||J!==void 0)&&w.length!==1)throw new Error("Pyret constructor field must have one value");w.length===1?G.dict[k]=y(w[0]):G.dict[k]=w.map(A=>y(A))}for(let k of oe){let w=G.dict[re[k]];if(!w||typeof w!="object"||de(w)?.kind!=="reference")throw new Error("Pyret mutable field must contain a reference")}return p.delete(g),G};if(r!==void 0)return r.map(g=>{if(!n.has(g))throw new Error("Unknown Pyret root ID: "+g);return y(g)});let h=e.getAtoms().map(g=>g.id);if(!h.length)return[];let b=h.filter(g=>!a.has(g));if(b.length!==1)throw new Error("Pyret graph has no unique root; supply an explicit root ID");return[y(b[0])]}function Fe(e,r,t){if(!e||typeof e!="object"||Array.isArray(e)||!("$name"in e)||ee(String(e.$name))!==r)return!1;let n=z(e);return!!n&&!n.mutableFields?.length&&n.arity===(t.length||-1)&&n.fields.length===t.length&&n.fields.every((i,o)=>i===t[o])&&!!e.dict&&t.every(i=>Object.prototype.hasOwnProperty.call(e.dict,i))}function pr(e){let r=Fe(e,"list-set",["elems"])?"list-set":Fe(e,"tree-set",["elems"])?"tree-set":void 0;if(!r)return;let t=e.dict.elems,n=[],i=new Set,o=()=>new Error(`Malformed Pyret ${r} backing structure`);if(r==="list-set"){let a=t;for(;!Fe(a,"empty",[]);){if(!Fe(a,"link",["first","rest"])||i.has(a))throw o();i.add(a),n.push(a.dict.first),a=a.dict.rest}}else{let a=[{node:t,phase:"enter"}];for(;a.length;){let{node:s,phase:u}=a.pop();if(!Fe(s,"leaf",[])){if(!Fe(s,"branch",["value","h","left","right"]))throw o();if(u==="exit")i.delete(s);else if(u==="emit")n.push(s.dict.value);else{if(i.has(s))throw o();i.add(s),a.push({node:s,phase:"exit"},{node:s.dict.right,phase:"enter"},{node:s,phase:"emit"},{node:s.dict.left,phase:"enter"})}}}}return{kind:r,elements:n}}function Tp(e,r){return e.kind==="tree-set"?`[tree-set: ${e.elements.map(r).join(", ")}]`:"[list-set: ]"+[...e.elements].reverse().map(t=>`.add(${r(t)})`).join("")}function Zr(e){return!!e.dict&&typeof e.dict=="object"&&"_header-raw-array"in e.dict&&"_rows-raw-array"in e.dict&&(!e.brands||Object.keys(e.brands).some(r=>r.includes("brandtable")))}function Xr(e){return Array.isArray(e.$rowData)&&!!e.$underlyingTable}function Ae(e){let r=e.dict?.["_header-raw-array"],t=e.dict?.["_rows-raw-array"];if(!Array.isArray(r)||!Array.isArray(t)||Array.from(r).some(n=>typeof n!="string")||new Set(r).size!==r.length||Array.from(t).some(n=>!Array.isArray(n)||n.length!==r.length))throw new Error("Malformed Pyret table: unique string headers and rectangular rows required");return{headers:r,rows:t}}function Np(e,r,t){let{headers:n,rows:i}=Ae(e);if(!n.length)return i.length?`for fold(spytial-table from empty-table([list: ]), spytial-row from range(0, ${i.length})):
|
|
33
|
+
spytial-table.add-row([raw-row: ])
|
|
34
|
+
end`:"empty-table([list: ])";let o;try{o=n.map(t)}catch{}return o?`table: ${o.join(", ")}${i.map(a=>`
|
|
35
|
+
row: `+a.map(r).join(", ")).join("")}
|
|
36
|
+
end`:`[table-from-columns: ${n.map((a,s)=>`{${r(a)}; [list: ${i.map(u=>r(u[s])).join(", ")}]}`).join(", ")}]`}function Rp(e,r,t){let n=de,i=w=>!!w&&typeof w=="object"&&!ie(w)&&n(w)?.kind!=="nothing",o=w=>{if(Array.isArray(w))return w;let A=n(w);if(A?.kind==="reference")return[w.value];if(A?.kind==="string-dict")return w.entries.map(q=>q[1]);if(A?.kind==="table")return Ae(w).rows.flat();if(Array.isArray(w.vals))return w.vals;let S=pr(w);return S?S.elements:Object.keys(w.dict??{}).map(q=>w.dict[q])},a=new Set,s=new Set,u=new Map,l=!1,p=!1,d=[e];for(;d.length;){let w=d.pop();if(!i(w))continue;if(a.has(w)){l=!0;continue}if(a.add(w),!Array.isArray(w)&&n(w)?.kind==="reference"&&s.add(w),!Array.isArray(w)){let S=n(w);S?.kind==="string-dict"&&S.mutable&&u.set(w,S),S?.kind==="table"&&(p=!0)}let A=o(w);for(let S=A.length-1;S>=0;S--)d.push(A[S])}if(!s.size&&!((u.size||p)&&l))return;let c=new Map,m=new Map,y=new Set(["nothing"]);for(let w of a){if(Array.isArray(w))continue;typeof w.$name=="string"&&y.add(ee(w.$name));let A=z(w),S=A?.mutableFields?.map(q=>A.fields[q])??[];m.set(w,S);for(let q of S){let $=w.dict[q];if(!s.has($))throw new Error("Pyret mutable field must contain a reference");if(c.has($))throw new Error("A Pyret reference shared by multiple mutable constructor fields cannot be reconstructed");c.set($,{value:w,field:q})}}let h=0,b=w=>{let A;do A=w+h++;while(y.has(A));return y.add(A),A},g=new Map,v=new Set,E=[],T=new Map,M=w=>!i(w)||v.has(w),Y=w=>{if(!i(w))return r(w,Y);if(!v.has(w))throw new Error("Unresolved Pyret construction dependency");return g.get(w)};for(let w of a)s.has(w)||g.set(w,b("spytial-value"));if([...s].some(w=>!c.has(w)))throw new Error("Pyret reference source requires a reachable mutable constructor field for each reference");let J=new Map;for(let[w,A]of u){let S=g.get(w),q=A.sealed?b("spytial-dict"):S;E.push(`shadow ${q} = ${r({$pyretValue:{...A,sealed:!1},entries:[]},Y)}`),A.sealed&&E.push(`shadow ${S} = ${q}.seal()`),v.add(w),J.set(w,q)}let oe=new Map(J),G=()=>{for(let[w,A]of oe)if(o(w).every(M)){for(let[S,q]of w.entries)E.push(`${A}.set-now(${Y(S)}, ${Y(q)})`);oe.delete(w)}for(let[w,{owner:A,field:S}]of T)M(w.value)&&(E.push(`${A}!{${t(S)}: ${Y(w.value)}}`),T.delete(w))},re=w=>{let A=new Set,S=[w];for(;S.length;){let q=S.pop();if(!(!i(q)||A.has(q))){if(!v.has(q)||oe.has(q)||T.has(q))return!1;A.add(q),S.push(...o(q))}}return!0},k=[...a].filter(w=>!s.has(w)&&!u.has(w));for(;k.length;){G();let w=!1;for(let A=0;A<k.length;){let S=k[A],q=Array.isArray(S)?[]:m.get(S)??[],$=S;if(q.length){let ae=S,ye={...ae.dict};for(let Nn of q){let dr=ae.dict[Nn],Rn=n(dr);ye[Nn]=M(dr.value)?dr.value:Rn?.kind==="reference"&&Rn.unrestricted?null:dr.value}$={...ae,dict:ye}}if(!o($).every(M)){A++;continue}if(pr($)&&!o($).every(re)){A++;continue}let ct=g.get(S);E.push(`shadow ${ct} = ${r($,Y)}`),v.add(S);for(let ae of q){let ye=S.dict[ae];g.set(ye,`${ct}.${t(ae).trim()}`),v.add(ye),(!M(ye.value)||$.dict[ae]===null)&&T.set(ye,{owner:ct,field:ae})}k.splice(A,1),w=!0}if(!w)throw new Error("Pyret graph cannot be constructed: cycles need allocatable mutable fields and set elements need complete contents")}return G(),E.push(Y(e)),`block:
|
|
37
|
+
${E.map(w=>" "+w).join(`
|
|
38
|
+
`)}
|
|
39
|
+
end`}function et(e){let r=n=>{let i=e.dict?.[n];return i&&typeof i.meth=="function"&&typeof i.full_meth=="function"},t=e.$underlyingMap;if(t&&r("keys-list")&&r("get-value")&&r("unfreeze")){if(!Number.isSafeInteger(t.size)||t.size<0||typeof t.keys!="function"||typeof t.get!="function")throw new Error("Malformed Pyret string dictionary backing map");return{kind:"string-dict",mutable:!1,sealed:!1}}if(e.$underlyingDict&&r("keys-list-now")&&r("get-value-now")&&r("freeze")){if(typeof e.$underlyingDict!="object"||e.$sealed!==void 0&&typeof e.$sealed!="boolean")throw new Error("Malformed Pyret mutable string dictionary backing map");return{kind:"string-dict",mutable:!0,sealed:e.$sealed===!0}}}function rt(e,r){let t;if("$pyretValue"in e)t=e.entries;else if(r.mutable)t=Object.entries(e.$underlyingDict);else{let n=e.$underlyingMap,i=n.keys();if(!Array.isArray(i)||i.some(o=>typeof o!="string"))throw new Error("Malformed Pyret dictionary keys");t=i.map(o=>[o,n.get(o)])}if(!Array.isArray(t)||t.some(n=>!Array.isArray(n)||n.length!==2||typeof n[0]!="string")||new Set(t.map(n=>n[0])).size!==t.length)throw new Error("Malformed Pyret dictionary entries");return t}function jp(e,r,t){let n=e.mutable?"mutable-string-dict":"string-dict",i=[...r];if(!e.mutable&&i.length>8){let o=u=>{let l=0;for(let p=0;p<u.length;p++)l=31*l+u.charCodeAt(p)|0;return l>>>1&1073741824|l&3221225471},a=o(i[8][0]),s=i.findIndex(([u])=>o(u)===a);i.splice(8,0,i.splice(s,1)[0])}return`[${n}: ${i.flatMap(([o,a])=>[t(o),t(a)]).join(", ")}]`+(e.sealed?".seal()":"")}function g_(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)&&"dict"in e}function b_(e){return'"'+e.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/\t/g,"\\t").replace(/[^\x20-\x7E]/g,r=>"\\u"+r.charCodeAt(0).toString(16).toUpperCase().padStart(4,"0"))+'"'}var w_=new Set(`and as ascending ask by cases check data descending do does-not-raise
|
|
40
|
+
else end examples extend extract false for from fun hiding if import include is is-not is-roughly
|
|
41
|
+
is-not-roughly because lam lazy let letrec load-table method module newtype of or provide provide-types
|
|
42
|
+
raises raises-other-than raises-satisfies raises-violates reactor rec ref sanitize satisfies select
|
|
43
|
+
shadow sieve spy order transform true type type-let using use var violates when`.split(/\s+/)),v_=new Set(`function break return do yield throw continue while class interface
|
|
44
|
+
type generator alias extends implements module package namespace public private protected static const
|
|
45
|
+
enum super export new try finally debug spy switch this match case with __proto__`.split(/\s+/)),x_=new Set(["block","doc","otherwise","row","sharing","source","table","then","where","with"]);function kn(e){if(w_.has(e)||v_.has(e)||!/^[A-Za-z_][A-Za-z0-9_]*(?:-+[A-Za-z0-9_]+)*$/.test(e))throw new Error(`Pyret object field has no literal spelling: ${JSON.stringify(e)}`);return x_.has(e)?e+" ":e}function qn(e,r,t=n=>qn(n,r)){if(e==null)return"nothing";if(typeof e=="number")return String(e);if(typeof e=="boolean")return e?"true":"false";if(typeof e=="string")return b_(e);let n=ie(e);if(n)return Wr(n);let i=de(e);if(i?.kind==="nothing")return"nothing";if(i?.kind==="table"){if(r.has(e))throw new Error("Cyclic Pyret table construction is not supported");r.add(e);let o=Np(e,t,kn);return r.delete(e),o}if(i?.kind==="string-dict"){if(r.has(e))throw new Error("Cyclic immutable Pyret dictionary construction is not supported");r.add(e);let o=jp(i,e.entries,t);return r.delete(e),o}if("vals"in e&&Array.isArray(e.vals)){if(r.has(e))throw new Error("Cyclic Pyret containers are not supported");if(!e.vals.length)throw new Error("Pyret has no empty tuple literal");r.add(e);let o=`{${e.vals.map(a=>t(a)).join("; ")}${e.vals.length===1?";":""}}`;return r.delete(e),o}if(Array.isArray(e)){if(r.has(e))return"<cyclic>";r.add(e);let o=`[raw-array: ${e.map(t).join(", ")}]`;return r.delete(e),o}if(g_(e)){if(r.has(e))return"<cyclic>";r.add(e);let o=pr(e);if(o){let p=Tp(o,t);return r.delete(e),p}let a=ee(e.$name||"object"),s=e.dict||{},u=Object.keys(s),l=i?.kind==="object"?`{${u.map(p=>`${kn(p)}: ${t(s[p])}`).join(", ")}}`:u.length||e.$arity===0?`${a}(${u.map(p=>t(s[p])).join(", ")})`:a;return r.delete(e),l}return String(e)}function tt(e,r){let t=new Map;for(let i of e.getAtoms()){let o=X(i.type);if(o){if(t.has(o.name)&&t.get(o.name)!==i.type)throw new Error(`Source reconstruction needs explicit bindings for same-named constructor ${o.name}`);t.set(o.name,i.type)}}let n=Pp(e,r);return Rp(n,(i,o)=>qn(i,new Set,o),kn)??qn(n,new Set)}function nt(e){return JSON.stringify(e.atoms)}function Mp(e){let r=new Set;return e.filter(t=>{let n=nt(t);return r.has(n)?!1:(r.add(n),!0)}).map(t=>({...t,atoms:[...t.atoms],types:[...t.types]}))}function Fp(e,r=[]){if(!e.length)return[...r];let t=e[0].atoms.length;return e.some(n=>n.atoms.length!==t)?[]:Array.from({length:t},(n,i)=>{let o=new Set(e.map(a=>a.types[i]??"univ"));return o.size===1?[...o][0]:"univ"})}function _n(e,r){if(e.name!==r.name)throw new Error(`Conflicting names for relation ID ${JSON.stringify(e.id)}: ${JSON.stringify(e.name)} and ${JSON.stringify(r.name)}`)}function A_(e,r){let t=e.id,n=r.atoms;return`${t}:${n.join("->")}`}var P=class P extends zr{constructor(t,n={},i){super();this.atoms=new Map;this.relations=new Map;this.types=new Map;this.objectToAtomId=new WeakMap;this.atomCounter=0;this.valueRelations=new Map;this.indexAtoms=new Map;this.typeLabelCounters=new Map;this.originalObjects=new Map;this.externalEvaluator=null;this.options={stringsIdempotent:n.stringsIdempotent??!0,numbersIdempotent:n.numbersIdempotent??!0,booleansIdempotent:n.booleansIdempotent??!0,showFunctions:n.showFunctions??!1},this.externalEvaluator=i||null,this.initializeBuiltinTypes(),this.isAtomicValue(t)?this.createAtomFromPrimitive(t):t!=null&&this.parseObjectIteratively(t)}static fromValues(t){let n=new P,i=new WeakSet,o=t.map(a=>{if(n.isAtomicValue(a))return n.createAtomFromPrimitive(a);if(!Array.isArray(a)&&!n.isPyretObject(a))throw new Error("Unsupported normalized Pyret root");return n.parseObjectIteratively(a,i),n.objectToAtomId.get(a)});return{instance:n,rootIds:o}}setExternalEvaluator(t){this.externalEvaluator=t}getExternalEvaluator(){return this.externalEvaluator}getOptions(){return{...this.options}}cacheConstructorPattern(t,n){if(n.length===0)return;let i=P.globalConstructorCache.get(t),o=++P.instantiationCounter;(!i||o>i.instantiation)&&P.globalConstructorCache.set(t,{pattern:[...n],instantiation:o})}static getGlobalConstructorCache(){let t=new Map;for(let[n,i]of P.globalConstructorCache)t.set(n,[...i.pattern]);return t}static getGlobalConstructorCacheWithPriority(){return new Map(P.globalConstructorCache)}static clearGlobalConstructorCache(){P.globalConstructorCache.clear()}static async fromExpression(t,n={},i){let o=await P.evaluateExpression(t,i);if(!o.success)throw new Error(`Failed to evaluate Pyret expression: ${P.formatError(o.exn)}`);if(P.isPrimitive(o.result)){let a=new P(null,n,i),s=typeof o.result=="string"?"String":typeof o.result=="number"?"Number":"Boolean",u={id:`result_${o.result}`,label:String(o.result),type:s};return a.addAtom(u),a}return new P(o.result,n,i)}static async evaluateExpression(t,n){try{let i=await n.run(t),o=P.findKeyAtAnyLevel(i,"exn");if(o!==void 0)return{success:!1,exn:o};let a=P.findKeyAtAnyLevel(i,"answer");return a!==void 0?{success:!0,result:a}:P.isPrimitive(i)?{success:!0,result:i}:{success:!1,exn:"Unable to find answer or exn in evaluation result"}}catch(i){return{success:!1,exn:i instanceof Error?i.message:"Unknown evaluation error"}}}static findKeyAtAnyLevel(t,n){if(!(!t||typeof t!="object")){if(n in t)return t[n];for(let i of Object.values(t))if(i&&typeof i=="object"){let o=P.findKeyAtAnyLevel(i,n);if(o!==void 0)return o}}}static isPrimitive(t){return typeof t=="string"||typeof t=="number"||typeof t=="boolean"}static formatError(t){if(!t)return"Unknown error";if(typeof t=="string")return t;if(typeof t=="object"&&t!==null){let n=t;if(n.message)return n.message;if(n.toString&&typeof n.toString=="function")return n.toString()}return String(t)}hasExternalEvaluator(){return this.externalEvaluator!==null}addAtom(t){this.atoms.set(t.id,t),this.ensureTypeExists(t.type);let n=this.types.get(t.type);n&&!n.atoms.some(i=>i.id===t.id)&&n.atoms.push(t),this.emitEvent({type:"atomAdded",data:{atom:t}})}removeAtom(t){let n=this.atoms.get(t);this.atoms.delete(t),this.types.forEach(i=>{i.atoms=i.atoms.filter(o=>o.id!==t)}),this.relations.forEach(i=>{i.tuples=i.tuples.filter(o=>!o.atoms.includes(t))}),n&&this.emitEvent({type:"atomRemoved",data:{atomId:t}})}removeRelationTuple(t,n){let i=this.relations.get(t);if(i){let o=i.tuples.length;i.tuples=i.tuples.filter(a=>!a.atoms.every((s,u)=>s===n.atoms[u])),i.tuples.length<o&&this.emitEvent({type:"relationTupleRemoved",data:{relationId:t,tuple:n}})}}reify(t){return tt(this,t)}parseObjectIteratively(t,n=new WeakSet){let i=[{obj:t}],o=(a,s,u,l)=>{if(this.isAtomicValue(a)){let p=this.createAtomFromPrimitive(a);this.addRelationTuple(u,{atoms:[...s,p],types:[]},l)}else(Array.isArray(a)||this.isPyretObject(a))&&i.push({obj:a,parentInfo:{atoms:s,relationId:u,relationName:l}})};for(let a=0;a<i.length;a++){let{obj:s,parentInfo:u}=i[a],l=this.objectToAtomId.get(s);if(l||(l=this.createAtomFromObject(s)),u&&this.addRelationTuple(u.relationId,{atoms:[...u.atoms,l],types:[]},u.relationName),n.has(s))continue;n.add(s);let p=this.valueInfo(s);if(p?.kind==="nothing")continue;if(p?.kind==="table"){this.processTableSemantics(l,s,y=>{if(this.isAtomicValue(y))return this.createAtomFromPrimitive(y);if(Yr(y)||!Array.isArray(y)&&!this.isPyretObject(y))throw new Error("Unsupported Pyret table cell");let h=y,b=this.objectToAtomId.get(h)??this.createAtomFromObject(h);return i.push({obj:h}),b});continue}if(p?.kind==="string-dict"){p.sealed&&this.addValueFact("sealed",l,"MutableStringDict"),rt(s,p).forEach(([h,b],g)=>{if(!this.isAtomicValue(b)&&!Array.isArray(b)&&!this.isPyretObject(b))throw new Error("Unsupported Pyret dictionary value");let v=this.valueRelationId("dictionary-entries","entry",["PyretObject","Index","String","PyretObject"]);o(b,[l,this.createIndexAtom(g),this.createAtomFromPrimitive(h)],v,"entry")});continue}if(p?.kind==="reference"){p.unrestricted&&this.addValueFact("unrestricted",l,"Reference");let y=s.value;if(!this.isAtomicValue(y)&&!Array.isArray(y)&&!this.isPyretObject(y))throw new Error("Unsupported Pyret reference target");let h=this.valueRelationId("reference-target","target",["Reference","PyretObject"]);o(y,[l],h,"target");continue}if(p?.kind==="tuple"||p?.kind==="raw-array"){let y=Array.isArray(s)?s:s.vals;for(let h=0;h<y.length;h++){let b=this.valueRelationId("sequence-elements","element",["PyretObject","Index","PyretObject"]);o(y[h],[l,this.createIndexAtom(h)],b,"element")}continue}let d=s;this.originalObjects.set(l,d);let c=z(d);c?.arity===0&&this.addValueFact("nullary-constructor",l,"PyretObject");for(let y of c?.mutableFields??[]){let h=this.valueRelationId("mutable-field","mutable-field",["PyretObject","Index"]);this.addRelationTuple(h,{atoms:[l,this.createIndexAtom(y)],types:[]},"mutable-field")}if(!d.dict||typeof d.dict!="object")continue;let m=c?.fields??(p?.kind==="object"?Sp(d.dict,this.options.showFunctions):Object.keys(d.dict));!p&&!X(this.extractType(d))&&this.cacheConstructorPattern(this.extractType(d),m),m.forEach((y,h)=>{let b=d.dict[y],g=c?_p(c,h):p?.kind==="object"?this.valueRelationId("object-field:"+y,y,["Object","Index","PyretObject"]):y;if(c&&!this.relations.has(g)&&this.relations.set(g,{id:g,name:y,types:[c.name,"PyretObject"],tuples:[]}),!this.options.showFunctions&&Yr(b))return;let v=p?.kind==="object"?[l,this.createIndexAtom(h)]:[l];o(b,v,g,p?.kind==="object"?y:void 0)})}}addValueFact(t,n,i){let o=this.valueRelationId(t,t,[i]);this.addRelationTuple(o,{atoms:[n],types:[]},t)}valueRelationId(t,n,i){let o=this.valueRelations.get(t);return o||(o=globalThis.crypto?.randomUUID?.()??`relation-${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}-${this.valueRelations.size}`,this.valueRelations.set(t,o),this.relations.set(o,{id:o,name:n,types:i,tuples:[]})),o}createIndexAtom(t){let n=this.indexAtoms.get(t);if(n)return n;let i=this.generateAtomId("Index");return this.atoms.set(i,{id:i,type:"Index",label:String(t)}),this.ensureTypeExists("Index"),this.indexAtoms.set(t,i),i}valueInfo(t){if(Array.isArray(t))return{kind:"raw-array"};if("$pyretValue"in t)return de(t);if(Xr(t))throw new Error("Standalone Pyret Row values are not supported");if(Zr(t))return{kind:"table"};let n=xp(t);if(n)return n;let i=et(t);if(i)return i;if(Ap(t))return{kind:"nothing"};if(Array.isArray(t.vals))return{kind:"tuple"};if(!z(t)&&t.dict&&(typeof t.updateDict=="function"||this.extractType(t)==="PyretObject"))return{kind:"object"}}processTableSemantics(t,n,i){let{headers:o,rows:a}=Ae(n),s=this.valueRelationId("table-columns","column",["Table","Index","String"]);o.forEach((l,p)=>this.addRelationTuple(s,{atoms:[t,this.createIndexAtom(p),this.createAtomFromPrimitive(l)],types:[]},"column"));let u=this.valueRelationId("table-rows:"+o.length,"row",["Table","Index",...o.map(()=>"PyretObject")]);a.forEach((l,p)=>this.addRelationTuple(u,{atoms:[t,this.createIndexAtom(p),...Array.from(l,i)],types:[]},"row"))}createAtomFromObject(t){let n=this.valueInfo(t),i=n?{nothing:"Nothing",reference:"Reference",object:"Object",tuple:"Tuple","raw-array":"RawArray",table:"Table","string-dict":n.kind==="string-dict"&&n.mutable?"MutableStringDict":"StringDict"}[n.kind]:this.extractType(t),o=this.generateAtomId(i),a={id:o,type:i,label:n?i:this.extractLabel(t)};return this.atoms.set(o,a),this.objectToAtomId.set(t,o),this.ensureTypeExists(i),o}createAtomFromPrimitive(t){let n=ie(t),i=n?"Number":this.mapPrimitiveType(t),o=n?Wr(n):String(t);if(i==="String"&&this.options.stringsIdempotent||i==="Number"&&this.options.numbersIdempotent||i==="Boolean"&&this.options.booleansIdempotent){let l=Array.from(this.atoms.values()).find(p=>p.type===i&&p.label===o);if(l)return l.id}let s=this.generateAtomId(i),u={id:s,type:i,label:o};return this.atoms.set(s,u),this.ensureTypeExists(i),s}mapPrimitiveType(t){switch(typeof t){case"number":return"Number";case"string":return"String";case"boolean":return"Boolean";default:return"Value"}}extractMostSpecificBrand(t){let n=-1,i,o;for(let a of Object.keys(t)){let s=/^\$brand([a-zA-Z_]+)(\d+)$/.exec(a);if(s){let[,u,l]=s,p=parseInt(l,10);p>n&&(n=p,i=u)}else{let u=/^\$brand_?([a-zA-Z_]+)$/.exec(a);if(u){let[,l]=u;(!o||l>o)&&(o=l)}}}return i||o}extractType(t){if(t.$name&&typeof t.$name=="string")return t.$name;if(t.brands&&typeof t.brands=="object"){let n=this.extractMostSpecificBrand(t.brands);if(n)return n}return"PyretObject"}extractLabel(t){if(t.$name&&typeof t.$name=="string")return ee(t.$name);let n=this.extractType(t),o=(this.typeLabelCounters.get(n)??0)+1;return this.typeLabelCounters.set(n,o),`${n}$${o}`}addRelationTuple(t,n,i){let o=n.atoms[0],a=n.atoms[n.atoms.length-1],s=this.atoms.get(o),u=this.atoms.get(a);if(!s||!u){console.warn(`Cannot create relation ${t}: missing atoms ${o} or ${a}`);return}let l=this.relations.get(t),p=i??l?.name??Qr(t)?.field??t;l&&_n(l,{...l,name:p});let d=vp(n,l,m=>this.atoms.get(m)?.type);l?l.types=d.relationTypes:(l={id:t,name:p,types:d.relationTypes,tuples:[]},this.relations.set(t,l)),l.tuples.some(m=>nt(m)===nt(n))||(l.tuples.push(d.tuple),this.emitEvent({type:"relationTupleAdded",data:{relationId:t,tuple:d.tuple}}))}ensureTypeExists(t){if(!this.types.has(t)){let n=X(t),i=n&&!["Number","String","Boolean","PyretObject","Index","Nothing","Object","Tuple","RawArray","Reference","StringDict","MutableStringDict","Table"].includes(n.name)?n.name:void 0;i&&this.ensureTypeExists(i);let o={id:t,types:i?[t,i,"PyretObject"]:[t,"PyretObject"],atoms:[],isBuiltin:this.isBuiltinType(t)};this.types.set(t,o)}}initializeBuiltinTypes(){["Number","String","Boolean","PyretObject"].forEach(n=>{let i={id:n,types:n==="PyretObject"?["PyretObject"]:[n,"PyretObject"],atoms:[],isBuiltin:!0};this.types.set(n,i)})}isBuiltinType(t){return["Number","String","Boolean","PyretObject"].includes(t)}isAtomicValue(t){return typeof t=="string"||typeof t=="boolean"||ie(t)!==void 0}isPyretObject(t){return typeof t=="object"&&t!==null&&("dict"in t||"brands"in t||"$name"in t||"vals"in t||"$pyretValue"in t||wn(t))}generateAtomId(t){return`${t?t.toLowerCase().substring(0,3):"atom"}_${++this.atomCounter}`}getAtoms(){return Array.from(this.atoms.values())}getRelations(){let t=this.relations.values();return Array.from(t)}getTypes(){return this.types.forEach(t=>{t.atoms=this.getAtoms().filter(n=>n.type===t.id||!!X(n.type)&&this.types.get(n.type)?.types.includes(t.id))}),Array.from(this.types.values())}getAtomType(t){let n=this.atoms.get(t);if(!n)throw new Error(`Atom with id '${t}' not found`);let i=this.types.get(n.type);return i||(this.ensureTypeExists(n.type),this.types.get(n.type))}generateGraph(t=!1,n=!1){let i=new Lp.Graph({directed:!0,multigraph:!0});if(this.getAtoms().forEach(o=>{i.setNode(o.id,{label:o.label})}),this.getRelations().forEach(o=>{o.tuples.forEach(a=>{if(a.atoms.length>=2){let s=a.atoms[0],u=a.atoms[a.atoms.length-1],l=a.atoms.slice(1,-1),p=o.name;if(l.length>0){let c=l.map(m=>{let y=this.atoms.get(m);return y?y.label:m});p=`${o.name}[${c.join(", ")}]`}let d=A_(o,a);i.setEdge(s,u,p,d)}})}),t||n){let o=[];i.nodes().forEach(a=>{let s=i.inEdges(a)||[],u=i.outEdges(a)||[];if(s.length===0&&u.length===0&&this.atoms.get(a)){let c=this.getAtomType(a).isBuiltin;(t||c&&n)&&o.push(a)}}),o.forEach(a=>i.removeNode(a))}return i}addFromDataInstance(t,n){if(!(t instanceof P))return!1;let i=t;for(let a of i.getRelations()){let s=this.relations.get(a.id);s&&_n(s,a)}let o=new Map;return i.getAtoms().forEach(a=>{let s=this.isBuiltinType(a.type);if(n&&s&&(a.type==="String"&&this.options.stringsIdempotent||a.type==="Number"&&this.options.numbersIdempotent||a.type==="Boolean"&&this.options.booleansIdempotent)){let c=Array.from(this.atoms.values()).find(m=>m.type===a.type&&m.label===a.label);if(c){o.set(a.id,c.id);return}}let u=this.generateAtomId(a.type);o.set(a.id,u);let l={...a,id:u};this.addAtom(l);let p=i.originalObjects.get(a.id);p&&this.originalObjects.set(u,p)}),i.getTypes().forEach(a=>{if(!this.types.has(a.id))this.types.set(a.id,{...a,atoms:a.atoms.map(s=>({...s,id:o.get(s.id)||s.id}))});else{let s=this.types.get(a.id),u=a.atoms.map(l=>({...l,id:o.get(l.id)||l.id}));s.atoms.push(...u)}}),i.getRelations().forEach(a=>{let s=a.tuples.map(l=>({atoms:l.atoms.map(p=>o.get(p)||p),types:l.types})),u=this.relations.get(a.id);u?(u.tuples=Mp([...u.tuples,...s]),u.types=Fp(u.tuples,u.types)):this.relations.set(a.id,{...a,tuples:s})}),!0}};P.globalConstructorCache=new Map,P.instantiationCounter=0;var Me=P;var Dp=Mn(bn()),it=class{constructor(r){this.datum=r;this.atoms=new Map(r.atoms.map(t=>[t.id,t])),this.types=new Map(r.types.map(t=>[t.id,t]))}getAtoms(){return this.datum.atoms}getRelations(){return this.datum.relations}getTypes(){return this.datum.types}getAtomType(r){let t=this.atoms.get(r);if(!t)throw new Error(`Unknown captured atom ${r}`);let n=this.types.get(t.type);if(!n)throw new Error(`Unknown captured type ${t.type}`);return n}generateGraph(r=!1,t=!1){let n=new Dp.Graph({directed:!0,multigraph:!0});for(let i of this.datum.atoms)n.setNode(i.id,{label:i.label});for(let i of this.datum.relations)for(let o of i.tuples){if(o.atoms.length<2)continue;let a=o.atoms[0],s=o.atoms[o.atoms.length-1],u=o.atoms.slice(1,-1).map(p=>this.atoms.get(p).label),l=i.name+(u.length?`[${u.join(", ")}]`:"");n.setEdge(a,s,l,JSON.stringify([i.id,o.atoms]))}if(r||t)for(let i of n.nodes())!(n.nodeEdges(i)||[]).length&&(r||this.getAtomType(i).isBuiltin)&&n.removeNode(i);return n}};var ot=class extends Error{constructor(t,n,i){super(`Cannot capture ${JSON.stringify(t)}${n.map(o=>`[${JSON.stringify(o)}]`).join("")}: ${i}`);this.root=t;this.path=n;this.reason=i;this.name="PyretCaptureError"}};function $p(e){let r=new Set;function t(n){if(n===null||typeof n=="string"||typeof n=="boolean"||typeof n=="number"&&Number.isFinite(n))return;let i=n&&typeof n=="object"?Object.getPrototypeOf(n):void 0;if(!n||typeof n!="object"||!Array.isArray(n)&&i!==null&&Object.getPrototypeOf(i)!==null)throw new Error("Capture metadata must contain only JSON values");if(r.has(n))throw new Error("Capture metadata must not contain cycles");r.add(n);for(let o of Reflect.ownKeys(n)){let a=Object.getOwnPropertyDescriptor(n,o);if(typeof o!="string"||a.get||a.set)throw new Error("Capture metadata must not contain symbols or accessors")}for(let o of Array.isArray(n)?Array.from(n):Object.values(n))t(o);r.delete(n)}return t(e),JSON.parse(JSON.stringify(e))}function Bp(e,r,t){if(!Array.isArray(e)||!e.length)throw new Error("Capture requires at least one named root");let n=new Set;for(let c of e){if(!c||typeof c.name!="string"||!c.name||n.has(c.name))throw new Error("Capture root names must be nonempty and unique");n.add(c.name)}let i=globalThis.crypto?.randomUUID?.()??`${Date.now().toString(36)}-${Math.random().toString(36).slice(2)}`,o=new Map,a=new Map,s=[],u=(c,m,y)=>{if(o.has(c))return o.get(c);try{let h=r.observe(c);if(h.kind==="primitive")return h.value;let b;switch(h.kind){case"nothing":b={$pyretValue:{kind:"nothing"}};break;case"raw-array":b=[];break;case"tuple":b={vals:[]};break;case"object":b={$pyretValue:{kind:"object"},dict:Object.create(null)};break;case"reference":b={$pyretValue:{kind:"reference",unrestricted:!0}};break;case"string-dict":b={$pyretValue:{kind:"string-dict",mutable:h.mutable,sealed:h.sealed},entries:[]};break;case"table":b={$pyretValue:{kind:"table"},dict:Object.create(null)};break;case"constructor":{let g=JSON.stringify(h.info),v=a.get(h.identity);if(v&&v.schema!==g)throw new Error("Constructor schema changed during capture");v||(v={id:qp(i,a.size,h.info.name),schema:g},a.set(h.identity,v)),b={$name:v.id,$arity:h.info.arity,$constructor:{$fieldNames:h.info.fields.slice()},$mut_fields_mask:h.info.fields.map((E,T)=>(h.info.mutableFields??[]).includes(T)),dict:Object.create(null)};break}default:throw new Error("Unsupported adapter observation")}return o.set(c,b),s.push({carrier:b,observed:h,root:m,path:y}),b}catch(h){throw h instanceof ot?h:new ot(m,y,h instanceof Error?h.message:String(h))}},l=e.map(c=>u(c.value,c.name,[]));for(let c=0;c<s.length;c++){let{carrier:m,observed:y,root:h,path:b}=s[c],g=(v,...E)=>u(v,h,[...b,...E]);switch(y.kind){case"constructor":y.info.fields.forEach((v,E)=>{m.dict[v]=g(y.values[E],v)});break;case"object":y.fields.forEach(([v,E])=>{m.dict[v]=g(E,v)});break;case"raw-array":y.values.forEach((v,E)=>m.push(g(v,E)));break;case"tuple":y.values.forEach((v,E)=>m.vals.push(g(v,E)));break;case"reference":m.value=g(y.value,"target");break;case"string-dict":y.entries.forEach(([v,E])=>m.entries.push([v,g(E,v)]));break;case"table":m.dict["_header-raw-array"]=y.headers.slice(),m.dict["_rows-raw-array"]=y.rows.map((v,E)=>v.map((T,M)=>g(T,"rows",E,y.headers[M])));break}}let{instance:p,rootIds:d}=Me.fromValues(l);return $p({format:"spytial-pyret-capture",version:1,datum:{atoms:[...p.getAtoms()],relations:[...p.getRelations()],types:[...p.getTypes()]},roots:e.map((c,m)=>({name:c.name,atomId:d[m],...c.observation===void 0?{}:{observation:c.observation}})),...t===void 0?{}:{provenance:t}})}function Vp(e){let r=$p(e);if(!r||r.format!=="spytial-pyret-capture"||r.version!==1)throw new Error("Unsupported Pyret capture format/version");if(!Array.isArray(r.roots)||!r.roots.length||!r.datum||!Array.isArray(r.datum.atoms)||!Array.isArray(r.datum.relations)||!Array.isArray(r.datum.types))throw new Error("Malformed Pyret capture");let t=new Map,n=new Set(["Number","String","Boolean","Nothing","Object","Index","Tuple","RawArray","Reference","StringDict","MutableStringDict","Table"]);for(let c of r.datum.atoms){if(!c||typeof c.id!="string"||!c.id||t.has(c.id)||typeof c.label!="string"||typeof c.type!="string"||!n.has(c.type)&&!X(c.type))throw new Error("Malformed or duplicate Pyret capture atom");if(c.type==="Index"&&(!/^(0|[1-9][0-9]*)$/.test(c.label)||!Number.isSafeInteger(Number(c.label))))throw new Error("Malformed Pyret capture index");t.set(c.id,c)}let i=new Set,o=(c,m)=>c===m.type||c==="PyretObject"||!n.has(c)&&c===X(m.type)?.name,a=new Set;for(let c of r.datum.types){if(!c||typeof c.id!="string"||a.has(c.id)||!Array.isArray(c.types)||c.types[0]!==c.id||c.types.some(y=>typeof y!="string")||!Array.isArray(c.atoms)||typeof c.isBuiltin!="boolean")throw new Error("Malformed Pyret capture type");a.add(c.id);let m=new Set;for(let y of c.atoms){let h=y&&t.get(y.id);if(!h||m.has(y.id)||y.type!==h.type||y.label!==h.label||!o(c.id,h))throw new Error("Invalid Pyret capture type membership");m.add(y.id)}}if([...t.values()].some(c=>!a.has(c.type))||r.datum.types.some(c=>c.types.some(m=>!a.has(m))))throw new Error("Unknown Pyret capture type");for(let c of r.datum.relations){if(!c||typeof c.id!="string"||i.has(c.id)||typeof c.name!="string"||!Array.isArray(c.tuples)||!Array.isArray(c.types)||c.types.some(y=>typeof y!="string"))throw new Error("Malformed or duplicate Pyret capture relation");i.add(c.id);let m=new Set;for(let y of c.tuples){if(!y||!Array.isArray(y.atoms)||!y.atoms.length||y.atoms.some(b=>!t.has(b))||!Array.isArray(y.types)||y.types.length!==y.atoms.length||y.types.some((b,g)=>!o(b,t.get(y.atoms[g]))))throw new Error("Malformed Pyret capture tuple");let h=JSON.stringify(y.atoms);if(m.has(h))throw new Error("Duplicate Pyret capture tuple");m.add(h)}}let s=new Set;for(let c of r.roots){if(!c||typeof c.name!="string"||!c.name||s.has(c.name)||!t.has(c.atomId)||t.get(c.atomId).type==="Index")throw new Error("Invalid Pyret capture root");s.add(c.name)}let u=new it(r.datum),l=[...t.values()].filter(c=>c.type!=="Index").map(c=>c.id),p=In(u,l,{allowContainerCycles:!0}),d=new Map(l.map((c,m)=>[c,p[m]]));return{snapshot:r,instance:u,values:new Map(r.roots.map(c=>[c.name,d.get(c.atomId)]))}}function at(e){for(let r of["isNumber","isNothing","isDataValue","isTuple","isRef","isFunction","isMethod","isOpaque","isObject"])if(typeof e?.[r]!="function")throw new Error(`Pyret runtime lacks ${r}`);return{observe(r){if(typeof r=="string"||typeof r=="boolean")return{kind:"primitive",value:r};if(e.isNumber(r)){let n=ie(r);if(!n)throw new Error("Unsupported Pyret numeric representation");return{kind:"primitive",value:{$pyretNumber:n}}}if(e.isFunction(r))throw new Error("Unsupported Pyret function");if(e.isMethod(r))throw new Error("Unsupported Pyret method");if(e.isOpaque(r))throw new Error("Unsupported Pyret opaque value");if(e.isNothing(r))return{kind:"nothing"};if(Array.isArray(r)){if(Array.from({length:r.length},(n,i)=>i).some(n=>!(n in r)))throw new Error("Unsupported sparse raw array");return{kind:"raw-array",values:r.slice()}}let t=r;if(e.isRef(r)){if(t.state!==2)throw new Error("Unsupported Pyret reference state: only initialized mutable references are supported");if(!Array.isArray(t.anns?.anns)||!t.anns.anns.every(n=>n.ann===e.Any))throw new Error("Unsupported Pyret reference annotation: only the runtime Any annotation is supported");return{kind:"reference",value:t.value}}if(e.isTuple(r))return{kind:"tuple",values:t.vals.slice()};if(e.isDataValue(r)){let n=z(t);if(!n||!t.$constructor||typeof t.$constructor!="object")throw new Error("Invalid Pyret constructor metadata");for(let i in t.dict)if(!n.fields.includes(i)&&i!=="$fieldNames"&&!e.isMethod(t.dict[i])&&!(i==="_spytial"&&e.isFunction(t.dict[i])))throw new Error(`Unsupported extra constructor field ${JSON.stringify(i)}`);return{kind:"constructor",identity:t.$constructor,info:n,values:n.fields.map(i=>t.dict[i])}}if(e.isObject(r)){if(Xr(t))throw new Error("Unsupported standalone Pyret Row");if(Zr(t))return{kind:"table",...Ae(t)};let n=et(t);if(n)return{...n,entries:rt(t,n)};if(t.brands&&Object.keys(t.brands).some(o=>o!=="brandCount"&&t.brands[o]===!0))throw new Error("Unsupported branded Pyret object");let i=[];for(let o in t.dict)o==="_spytial"&&(e.isFunction(t.dict[o])||e.isMethod(t.dict[o]))||i.push([o,t.dict[o]]);return{kind:"object",fields:i}}throw new Error("Unsupported value from this Pyret runtime")}}}function Up(e,r){let t=Bp([{name:"value",value:e}],at(r)),{instance:n}=Vp(t),i;try{i=tt(n,t.roots[0].atomId)}catch(o){i="Source preview unavailable: "+(o instanceof Error?o.message:String(o))}return{snapshot:t,instance:n,sourcePreview:i}}function Hp(e){return{...e,nodes:e.nodes.map(r=>({...r,mostSpecificType:ee(r.mostSpecificType)}))}}var st={languageVersion:"2026-09-18",coreVersion:"6.3.2",enums:{TextSize:{"text-size-small":"small","text-size-normal":"normal","text-size-large":"large"},LinePattern:{"line-pattern-solid":"solid","line-pattern-dashed":"dashed","line-pattern-dotted":"dotted"},IconPlacement:{"icon-placement-full":"full","icon-placement-badge":"badge"},Direction:{"direction-above":"above","direction-below":"below","direction-left":"left","direction-right":"right","direction-directly-above":"directlyAbove","direction-directly-below":"directlyBelow","direction-directly-left":"directlyLeft","direction-directly-right":"directlyRight"},Hold:{"hold-always":"always","hold-never":"never"},Rotation:{"rotation-clockwise":"clockwise","rotation-counterclockwise":"counterclockwise"},Alignment:{"alignment-horizontal":"horizontal","alignment-vertical":"vertical"},GroupEdgeDirection:{"group-edge-direction-none":"none","group-edge-direction-togroup":"togroup","group-edge-direction-fromgroup":"fromgroup"},LayoutFlag:{"layout-flag-hide-disconnected":"hideDisconnected","layout-flag-hide-disconnected-built-ins":"hideDisconnectedBuiltIns"}},blocks:{textStyle:{name:"textStyle",typeName:"TextStyle",constructor:"text-style",fields:[{name:"size",pyretName:"size",type:"enum",required:!1,enum:"TextSize"},{name:"color",pyretName:"color",type:"color",required:!1}]},lineStyle:{name:"lineStyle",typeName:"LineStyle",constructor:"line-style",fields:[{name:"color",pyretName:"color",type:"color",required:!1},{name:"pattern",pyretName:"pattern",type:"enum",required:!1,enum:"LinePattern"},{name:"weight",pyretName:"weight",type:"number",required:!1,exclusiveMinimum:0},{name:"highlight",pyretName:"highlight",type:"color",required:!1}]},fillStyle:{name:"fillStyle",typeName:"FillStyle",constructor:"fill-style",fields:[{name:"color",pyretName:"color",type:"color",required:!1}]},borderStyle:{name:"borderStyle",typeName:"BorderStyle",constructor:"border-style",fields:[{name:"color",pyretName:"color",type:"color",required:!1},{name:"width",pyretName:"width",type:"number",required:!1,exclusiveMinimum:0}]},iconStyle:{name:"iconStyle",typeName:"IconStyle",constructor:"icon-style",fields:[{name:"path",pyretName:"path",type:"icon-path",required:!1},{name:"placement",pyretName:"placement",type:"enum",required:!1,enum:"IconPlacement"},{name:"opacity",pyretName:"opacity",type:"number",required:!1,minimum:0,maximum:1}]},ruleSource:{name:"ruleSource",typeName:"RuleSource",constructor:"rule-source",fields:[{name:"text",pyretName:"text",type:"string",required:!0},{name:"location",pyretName:"location",type:"string",required:!1}]},groupAddEdge:{name:"groupAddEdge",typeName:"GroupAddEdge",constructor:"group-add-edge",fields:[{name:"points",pyretName:"points",type:"enum",required:!1,enum:"GroupEdgeDirection"},{name:"lineStyle",pyretName:"line-style",type:"block",required:!1,block:"lineStyle"},{name:"textStyle",pyretName:"text-style",type:"block",required:!1,block:"textStyle"}]}},rules:{orientation:{name:"orientation",yamlKey:"orientation",section:"constraints",shape:"mapping",constructor:"spytial-orientation",optionsConstructor:"orientation-options",fields:[{name:"selector",pyretName:"selector",type:"selector",required:!0},{name:"directions",pyretName:"directions",type:"enum-list",required:!0,listRules:{atMostOneOf:[["above","below"],["left","right"]],narrowsListTo:{directlyAbove:["above","directlyAbove"],directlyBelow:["below","directlyBelow"],directlyLeft:["left","directlyLeft"],directlyRight:["right","directlyRight"]}},enum:"Direction"},{name:"hold",pyretName:"hold",type:"enum",required:!1,enum:"Hold"},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},cyclic:{name:"cyclic",yamlKey:"cyclic",section:"constraints",shape:"mapping",constructor:"spytial-cyclic",optionsConstructor:"cyclic-options",fields:[{name:"selector",pyretName:"selector",type:"selector",required:!0},{name:"direction",pyretName:"direction",type:"enum",required:!1,enum:"Rotation"},{name:"hold",pyretName:"hold",type:"enum",required:!1,enum:"Hold"},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},align:{name:"align",yamlKey:"align",section:"constraints",shape:"mapping",constructor:"spytial-align",optionsConstructor:"align-options",fields:[{name:"selector",pyretName:"selector",type:"selector",required:!0},{name:"direction",pyretName:"direction",type:"enum",required:!0,enum:"Alignment"},{name:"hold",pyretName:"hold",type:"enum",required:!1,enum:"Hold"},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},group:{name:"group",yamlKey:"group",section:"constraints",shape:"mapping",constructor:"spytial-group",optionsConstructor:"group-options",fields:[{name:"selector",pyretName:"selector",type:"selector",required:!0},{name:"name",pyretName:"name",type:"string",required:!0},{name:"addEdge",pyretName:"add-edge",type:"block",required:!1,block:"groupAddEdge"},{name:"showLabel",pyretName:"show-label",type:"boolean",required:!1},{name:"textStyle",pyretName:"text-style",type:"block",required:!1,block:"textStyle"},{name:"hold",pyretName:"hold",type:"enum",required:!1,enum:"Hold"},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},size:{name:"size",yamlKey:"size",section:"constraints",shape:"mapping",constructor:"spytial-size",optionsConstructor:"size-options",fields:[{name:"width",pyretName:"width",type:"number",required:!0,exclusiveMinimum:0},{name:"height",pyretName:"height",type:"number",required:!0,exclusiveMinimum:0},{name:"selector",pyretName:"selector",type:"selector",required:!1},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},hideAtom:{name:"hideAtom",yamlKey:"hideAtom",section:"constraints",shape:"mapping",constructor:"spytial-hide-atom",optionsConstructor:"hide-atom-options",fields:[{name:"selector",pyretName:"selector",type:"selector",required:!0},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},flag:{name:"flag",yamlKey:"flag",section:"directives",shape:"scalar",constructor:"spytial-flag",optionsConstructor:"flag-options",fields:[{name:"flag",pyretName:"name",type:"enum",required:!0,enum:"LayoutFlag"}]},atomStyle:{name:"atomStyle",yamlKey:"atomStyle",section:"directives",shape:"mapping",constructor:"spytial-atom-style",optionsConstructor:"atom-style-options",fields:[{name:"selector",pyretName:"selector",type:"selector",required:!1},{name:"fillStyle",pyretName:"fill-style",type:"block",required:!1,block:"fillStyle"},{name:"borderStyle",pyretName:"border-style",type:"block",required:!1,block:"borderStyle"},{name:"iconStyle",pyretName:"icon-style",type:"block",required:!1,block:"iconStyle"},{name:"textStyle",pyretName:"text-style",type:"block",required:!1,block:"textStyle"},{name:"showLabel",pyretName:"show-label",type:"boolean",required:!1},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},edgeStyle:{name:"edgeStyle",yamlKey:"edgeStyle",section:"directives",shape:"mapping",constructor:"spytial-edge-style",optionsConstructor:"edge-style-options",fields:[{name:"field",pyretName:"field",type:"relation",required:!0},{name:"selector",pyretName:"selector",type:"selector",required:!1},{name:"filter",pyretName:"filter",type:"selector",required:!1},{name:"lineStyle",pyretName:"line-style",type:"block",required:!1,block:"lineStyle"},{name:"textStyle",pyretName:"text-style",type:"block",required:!1,block:"textStyle"},{name:"showLabel",pyretName:"show-label",type:"boolean",required:!1},{name:"hidden",pyretName:"hidden",type:"boolean",required:!1},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},attribute:{name:"attribute",yamlKey:"attribute",section:"directives",shape:"mapping",constructor:"spytial-attribute",optionsConstructor:"attribute-options",fields:[{name:"field",pyretName:"field",type:"relation",required:!0},{name:"selector",pyretName:"selector",type:"selector",required:!1},{name:"filter",pyretName:"filter",type:"selector",required:!1},{name:"textStyle",pyretName:"text-style",type:"block",required:!1,block:"textStyle"},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},tag:{name:"tag",yamlKey:"tag",section:"directives",shape:"mapping",constructor:"spytial-tag",optionsConstructor:"tag-options",fields:[{name:"toTag",pyretName:"to-tag",type:"selector",required:!0},{name:"name",pyretName:"name",type:"string",required:!0},{name:"value",pyretName:"value",type:"selector",required:!0},{name:"textStyle",pyretName:"text-style",type:"block",required:!1,block:"textStyle"},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},hideField:{name:"hideField",yamlKey:"hideField",section:"directives",shape:"mapping",constructor:"spytial-hide-field",optionsConstructor:"hide-field-options",fields:[{name:"field",pyretName:"field",type:"relation",required:!0},{name:"selector",pyretName:"selector",type:"selector",required:!1},{name:"filter",pyretName:"filter",type:"selector",required:!1},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},inferredEdge:{name:"inferredEdge",yamlKey:"inferredEdge",section:"directives",shape:"mapping",constructor:"spytial-inferred-edge",optionsConstructor:"inferred-edge-options",fields:[{name:"name",pyretName:"name",type:"string",required:!0},{name:"selector",pyretName:"selector",type:"selector",required:!0},{name:"draw",pyretName:"draw",type:"string",required:!1,pattern:"^\\s*[^\\s](?:(?!->)[\\s\\S])*->(?:(?!->)[\\s\\S])*[^\\s]\\s*$"},{name:"lineStyle",pyretName:"line-style",type:"block",required:!1,block:"lineStyle"},{name:"textStyle",pyretName:"text-style",type:"block",required:!1,block:"textStyle"},{name:"color",pyretName:"color",type:"color",required:!1},{name:"style",pyretName:"style",type:"enum",required:!1,enum:"LinePattern"},{name:"weight",pyretName:"weight",type:"number",required:!1,exclusiveMinimum:0},{name:"highlight",pyretName:"highlight",type:"color",required:!1},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},icon:{name:"icon",yamlKey:"icon",section:"directives",shape:"mapping",constructor:"spytial-icon",optionsConstructor:"icon-options",fields:[{name:"selector",pyretName:"selector",type:"selector",required:!0},{name:"path",pyretName:"path",type:"icon-path",required:!0},{name:"showLabels",pyretName:"show-labels",type:"boolean",required:!1},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},atomColor:{name:"atomColor",yamlKey:"atomColor",section:"directives",shape:"mapping",constructor:"spytial-atom-color",optionsConstructor:"atom-color-options",fields:[{name:"value",pyretName:"value",type:"color",required:!0},{name:"selector",pyretName:"selector",type:"selector",required:!0},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]},edgeColor:{name:"edgeColor",yamlKey:"edgeColor",section:"directives",shape:"mapping",constructor:"spytial-edge-color",optionsConstructor:"edge-color-options",fields:[{name:"field",pyretName:"field",type:"relation",required:!0},{name:"value",pyretName:"value",type:"color",required:!0},{name:"selector",pyretName:"selector",type:"selector",required:!1},{name:"filter",pyretName:"filter",type:"selector",required:!1},{name:"style",pyretName:"style",type:"enum",required:!1,enum:"LinePattern"},{name:"weight",pyretName:"weight",type:"number",required:!1,exclusiveMinimum:0},{name:"highlight",pyretName:"highlight",type:"color",required:!1},{name:"showLabel",pyretName:"show-label",type:"boolean",required:!1},{name:"hidden",pyretName:"hidden",type:"boolean",required:!1},{name:"source",pyretName:"source",type:"block",required:!1,block:"ruleSource"}]}}};var Le=class extends Error{constructor(t,n){super(`${t}: ${n}`);this.path=t;this.name="SpytialSpecError"}},S_=Object.values(st.rules),E_=st.blocks,I_=st.enums;function F(e,r){throw new Le(e,r)}function ut(e,r,t,n,i){if(!r.isDataValue(e))return F(t,`expected ${n}`);let o=e,a=z(o);return o.$name!==n||!a||a.fields.length!==i.length||a.fields.some((s,u)=>s!==i[u])?F(t,`expected ${n}`):o.dict}function Gp(e,r,t){let n=new Set,i=[];for(;!r.ffi.isEmpty(e);){if(!r.ffi.isLink(e))return F(t,"expected a Pyret List");if(n.has(e))return F(t,"cyclic rule list");n.add(e);let o=e.dict;i.push(o.first),e=o.rest}return i}function k_(e,r,t,n){if(r.type==="enum"||r.type==="enum-list"){let i=I_[r.enum],o=(s,u)=>{let l=s?.$name;return!l||!Object.prototype.hasOwnProperty.call(i,l)?F(u,`expected ${r.enum}`):(ut(s,t,u,l,[]),i[l])};if(r.type==="enum")return o(e,n);let a=Gp(e,t,n).map((s,u)=>o(s,`${n}[${u}]`));for(let s of r.listRules?.atMostOneOf??[])s.filter(u=>a.includes(u)).length>1&&F(n,"incompatible directions");for(let[s,u]of Object.entries(r.listRules?.narrowsListTo??{}))a.includes(s)&&a.some(l=>!u.includes(l))&&F(n,"incompatible directions");return a}if(r.type==="block")return zp(e,E_[r.block],t,n);if(r.type==="boolean")return typeof e!="boolean"?F(n,"expected Boolean"):e;if(r.type==="number"||r.type==="integer"){if(!t.isNumber(e))return F(n,"expected Number");let i=t.num_to_fixnum(e);return!Number.isFinite(i)||r.type==="integer"&&!Number.isSafeInteger(i)||r.minimum!==void 0&&i<r.minimum||r.maximum!==void 0&&i>r.maximum||r.exclusiveMinimum!==void 0&&i<=r.exclusiveMinimum?F(n,"number is outside the manifest bounds"):i}return typeof e!="string"?F(n,"expected String"):r.required&&!e.trim()?F(n,"required string must not be empty"):r.pattern&&!new RegExp(r.pattern).test(e)?F(n,"string does not match the manifest pattern"):e}function Kp(e,r,t,n){let i={};for(let o of r){let a=e[o.pyretName],s=`${n}.${o.pyretName}`;if(!o.required){if(t.ffi.isNone(a))continue;t.ffi.isSome(a)||F(s,"expected Option"),a=a.dict.value}i[o.name]=k_(a,o,t,s)}return i}function zp(e,r,t,n){return Kp(ut(e,t,n,r.constructor,r.fields.map(i=>i.pyretName)),r.fields,t,n)}function Cn(e,r=0){let t=" ".repeat(r);if(Array.isArray(e))return e.length?`
|
|
46
|
+
`+e.map(i=>`${t}- ${Cn(i,r+2).trimStart()}`).join(`
|
|
47
|
+
`):"[]";if(typeof e!="object")return JSON.stringify(e);let n=Object.entries(e);return n.length?`
|
|
48
|
+
`+n.map(([i,o])=>{let a=Array.isArray(o)&&o.every(s=>typeof s!="object")?JSON.stringify(o):Cn(o,r+2);return`${t}${JSON.stringify(i)}:${a.startsWith(`
|
|
49
|
+
`)?"":" "}${a}`}).join(`
|
|
50
|
+
`):"{}"}function Pn(e,r){let t={constraints:[],directives:[]};for(let[n,i]of Gp(e,r,"rules").entries()){let o=`rules[${n}]`,a=i?.$name;a!=="constraint"&&a!=="directive"&&F(o,"expected SpytialRule");let s=ut(i,r,o,a,["value"]).value,u=s?.$name,l=S_.find(y=>y.constructor===u);(!l||l.section!==`${a}s`)&&F(o,`invalid ${a} variant`);let p=l.fields.filter(y=>y.required),d=l.fields.filter(y=>!y.required),c=ut(s,r,o,l.constructor,[...p.map(y=>y.pyretName),...d.length?["options"]:[]]),m=Kp(c,p,r,o);d.length&&Object.assign(m,zp(c.options,{constructor:l.optionsConstructor,fields:d},r,`${o}.options`)),t[l.section].push({[l.yamlKey]:l.shape==="scalar"?m[l.fields[0].name]:m})}return Cn(t).trimStart()+`
|
|
51
|
+
`}function On(e){let r=[];for(;e;e=e.parent)r.push(e.key);return"value"+r.reverse().map(t=>`[${JSON.stringify(t)}]`).join("")}function q_(e,r,t){let n=at(r),i=new Set,o=new Set,a=[],s=[{value:e}];for(let c=0;c<s.length;c++){let{value:m,path:y}=s[c];if(i.has(m)||(i.add(m),r.isFunction(m)||r.isMethod(m)))continue;let h=(b,g)=>s.push({value:b,path:{parent:y,key:g}});try{if(r.isObject(m)&&r.hasField(m,"_spytial")){let g=r.getColonField(m,"_spytial");!r.isFunction(g)&&!r.isMethod(g)&&F(On(y),"_spytial must be a function or method"),o.has(g)||(o.add(g),a.push({fn:r.getField(m,"_spytial"),path:y}))}let b=n.observe(m);switch(b.kind){case"constructor":b.values.forEach((g,v)=>h(g,b.info.fields[v]));break;case"object":b.fields.forEach(([g,v])=>h(v,g));break;case"raw-array":case"tuple":b.values.forEach(h);break;case"reference":h(b.value,"target");break;case"string-dict":b.entries.forEach(([g,v])=>h(v,g));break;case"table":b.rows.forEach((g,v)=>g.forEach((E,T)=>s.push({value:E,path:{parent:{parent:{parent:y,key:"rows"},key:v},key:b.headers[T]}})));break}}catch(b){throw b instanceof Le?b:new Le(On(y),b instanceof Error?b.message:String(b))}}let u=[],l=0,p="value",d=()=>{if(l===a.length)return u;let c=a[l++];return p=`${On(c.path)}._spytial`,r.safeCall(()=>c.fn.app(),m=>{try{u.push(typeof m=="string"?m:Pn(m,r))}catch(y){let h=new Le(p,y instanceof Error?y.message:String(y));throw t&&t(h),h}return d()},p)};return{next:d,documents:u,hasHooks:a.length>0,activePath:()=>p}}function Yp(e,r,t,n){let i=q_(e,r,n);return r.safeCall(i.next,()=>t(i.documents),"Spyret.collectSpytialSpec")}function Jp(e){let r={constraints:[],directives:[]};return e.forEach((t,n)=>{if(!t.trim())return;let i=Si(t);if(!i||typeof i!="object"||Array.isArray(i))throw new Error(`Spytial spec ${n+1}: expected a YAML mapping`);for(let[o,a]of Object.entries(i)){if(o!=="constraints"&&o!=="directives")throw new Error(`Spytial spec ${n+1}: unknown section ${o}`);if(!Array.isArray(a))throw new Error(`Spytial spec ${n+1}: ${o} must be a list`);r[o].push(...a)}}),Ei(r)}function Wp(e,r,t){let n=t.defaultView,i="spyret-diagram-view";n.customElements.get(i)||n.customElements.define(i,class extends n.HTMLElement{connectedCallback(){this.spyretConnect?.()}});let o=t.createElement(i);o.className="spyret-diagram",o.style.display="block",o.spytialCapture=e.snapshot;let a=t.createElement("pre");a.textContent=e.sourcePreview;let s=t.createElement("div");s.setAttribute("role","alert");let u=t.createElement("div"),l=t.createElement("button");l.type="button",l.textContent="Hide diagram",l.setAttribute("aria-expanded","true"),o.append(a,s,l,u);let p=0;return l.onclick=()=>{u.hidden=!u.hidden,l.textContent=u.hidden?"Show diagram":"Hide diagram",l.setAttribute("aria-expanded",String(!u.hidden)),u.hidden?(p++,u.replaceChildren()):o.spyretConnect()},o.spyretConnect=()=>{if(u.hidden)return;let d=++p,c=t.createElement("webcola-cnd-graph");c.style.cssText="display:block;width:100%;height:400px",delete o.dataset.rendered,delete o.dataset.settled,delete o.dataset.error,s.textContent="",c.addEventListener("layout-complete",()=>{d===p&&c.isConnected&&(o.dataset.settled="true")}),u.replaceChildren(c),n.requestAnimationFrame(()=>{!o.isConnected||d!==p||Promise.resolve().then(()=>c.renderLayout(r)).then(()=>{d===p&&o.isConnected&&(o.dataset.rendered="true")},m=>{d!==p||!o.isConnected||(s.textContent="Spytial: "+String(m),o.dataset.error=String(m))})})},o}function Qp(e,r){function t(n,i,o){return(i==="yaml"||i==="dom")&&e.checkString(o),e.safeCall(()=>e.pauseStack(a=>{let s=a.handlers,u=s?.break,l=!1,p=()=>{l=!0,d(),u.call(s)},d=()=>{s?.break===p&&(s.break=u)};s&&(s.break=p),Promise.resolve().then(()=>r.core()).then(c=>{d(),l||a.resume(c)},c=>{d(),l||a.error(c instanceof Error?e.ffi.makeMessageException("Spyret: "+c.message):c)})}),a=>{let s=a,u=l=>{try{let p=l?Jp(l):i==="rules"?Pn(o,e):String(o).trim()||`constraints: []
|
|
52
|
+
directives: []`,d=Up(n,e),c=new s.Evaluators.SGraphQueryEvaluator;c.initialize({sourceData:d.instance});let m=new s.LayoutInstance(s.parseLayoutSpec(p),c,0,!0).generateLayout(d.instance),y=Hp(m.layout),h=()=>{let g=Wp(d,y,r.document);return g.dataset.specCount=String(l?.length??1),g};if(i==="dom")return h();let b=Object.freeze({});return r.registerOutput(e,b,h),e.makeOpaque(b)}catch(p){throw p instanceof Error&&e.ffi.throwMessageException("Spyret: "+p.message),p}};if(i!=="hooks")return u();try{return Yp(n,e,u,l=>e.ffi.throwMessageException("Spyret: "+l.message))}catch(l){throw l instanceof Error&&e.ffi.throwMessageException("Spyret: "+l.message),l}},"Spyret.diagram")}return e.makeModuleReturn({diagram:e.makeFunction((...n)=>n.length===1?t(n[0],"hooks"):n.length===2?t(n[0],"yaml",n[1]):e.ffi.throwMessageException("Spyret.diagram expects a value and optionally a YAML string"),"diagram"),"diagram-with-rules":e.makeFunction((n,i)=>t(n,"rules",i),"diagram-with-rules"),genlayout:e.makeFunction((n,i)=>t(n,"dom",i),"genlayout")},{})}var Tn=Symbol.for("spyret.cpo-renderer.v1");function Zp(e,r,t,n){let i=e.ReprMethods?.$cpo;if(!i||typeof i.opaque!="function")throw new Error("Spyret requires the CPO output renderer or an explicit browser host");if(!i[Tn]){let o=new WeakMap,a=i.opaque;i.opaque=function(s){let u=s.val&&typeof s.val=="object"?o.get(s.val):void 0;return u?n(u()):a.call(this,s)},i[Tn]=o}i[Tn].set(r,t)}var lt=new WeakMap;function Xp(e,r){let t=e.defaultView;if(t.spytialcore)return Promise.resolve(t.spytialcore);let n=lt.get(e);return n||(n=new Promise((i,o)=>{let a=e.createElement("script");a.src=r,a.onload=()=>{t.spytialcore?i(t.spytialcore):(lt.delete(e),a.remove(),o(new Error("Spytial Core did not initialize")))},a.onerror=()=>{lt.delete(e),a.remove(),o(new Error("Cannot load Spytial Core: "+r))},e.head.appendChild(a)}),lt.set(e,n)),n}function __(e,r,t){return Qp(e,{document:r,core:()=>Xp(r,t),registerOutput:(n,i,o)=>Zp(n,i,o,r.defaultView.jQuery)})}
|
|
53
|
+
/*! Bundled license information:
|
|
54
|
+
|
|
55
|
+
js-yaml/dist/js-yaml.mjs:
|
|
56
|
+
(*! js-yaml 4.1.0 https://github.com/nodeca/js-yaml @license MIT *)
|
|
57
|
+
*/
|