seroval 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,3 +1,3 @@
1
- "use strict";var Ie=Object.defineProperty;var or=Object.getOwnPropertyDescriptor;var ar=Object.getOwnPropertyNames;var lr=Object.prototype.hasOwnProperty;var ur=(n,e)=>{for(var r in e)Ie(n,r,{get:e[r],enumerable:!0})},dr=(n,e,r,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of ar(e))!lr.call(n,s)&&s!==r&&Ie(n,s,{get:()=>e[s],enumerable:!(t=or(e,s))||t.enumerable});return n};var cr=n=>dr(Ie({},"__esModule",{value:!0}),n);var _r={};ur(_r,{Feature:()=>x,Serializer:()=>q,compileJSON:()=>kr,createPlugin:()=>gr,createReference:()=>ke,createStream:()=>E,crossSerialize:()=>Fr,crossSerializeAsync:()=>Vr,crossSerializeStream:()=>Oe,deserialize:()=>Cr,fromCrossJSON:()=>Mr,fromJSON:()=>Tr,getCrossReferenceHeader:()=>ze,resolvePlugins:()=>c,serialize:()=>wr,serializeAsync:()=>Pr,toCrossJSON:()=>Dr,toCrossJSONAsync:()=>Br,toCrossJSONStream:()=>jr,toJSON:()=>Or,toJSONAsync:()=>zr});module.exports=cr(_r);var x=(i=>(i[i.AggregateError=1]="AggregateError",i[i.ArrowFunction=2]="ArrowFunction",i[i.ErrorPrototypeStack=4]="ErrorPrototypeStack",i[i.ObjectAssign=8]="ObjectAssign",i[i.BigIntTypedArray=16]="BigIntTypedArray",i))(x||{});function f(n,e){if(!n)throw e}function fr(n){switch(n){case'"':return'\\"';case"\\":return"\\\\";case`
2
- `:return"\\n";case"\r":return"\\r";case"\b":return"\\b";case" ":return"\\t";case"\f":return"\\f";case"<":return"\\x3C";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:return}}function d(n){let e="",r=0,t;for(let s=0,i=n.length;s<i;s++)t=fr(n[s]),t&&(e+=n.slice(r,s)+t,r=s+1);return r===0?e=n:e+=n.slice(r),e}function pr(n){switch(n){case"\\\\":return"\\";case'\\"':return'"';case"\\n":return`
3
- `;case"\\r":return"\r";case"\\b":return"\b";case"\\t":return" ";case"\\f":return"\f";case"\\x3C":return"<";case"\\u2028":return"\u2028";case"\\u2029":return"\u2029";default:return n}}function S(n){return n.replace(/(\\\\|\\"|\\n|\\r|\\b|\\t|\\f|\\u2028|\\u2029|\\x3C)/g,pr)}var A="__SEROVAL_REFS__",K="$R",Z=`self.${K}`;function ze(n){return n==null?`${Z}=${Z}||[]`:`(${Z}=${Z}||{})["${d(n)}"]=[]`}var Ee=new Map,I=new Map;function ke(n,e){return Ee.set(e,n),I.set(n,e),e}function X(n){return Ee.has(n)}function mr(n){return I.has(n)}function Te(n){return f(X(n),new Error("Missing reference id")),Ee.get(n)}function Fe(n){return f(mr(n),new Error("Missing reference for id:"+n)),I.get(n)}typeof globalThis!="undefined"?Object.defineProperty(globalThis,A,{value:I,configurable:!0,writable:!1,enumerable:!1}):typeof window!="undefined"?Object.defineProperty(window,A,{value:I,configurable:!0,writable:!1,enumerable:!1}):typeof self!="undefined"?Object.defineProperty(self,A,{value:I,configurable:!0,writable:!1,enumerable:!1}):typeof global!="undefined"&&Object.defineProperty(global,A,{value:I,configurable:!0,writable:!1,enumerable:!1});function gr(n){return n}function Ve(n,e){for(let r=0,t=e.length;r<t;r++){let s=e[r];n.has(s)||(n.add(s),s.extends&&Ve(n,s.extends))}}function c(n){if(n){let e=new Set;return Ve(e,n),[...e]}}var{toString:Sr}=Object.prototype,p=class extends Error{constructor(r){super('Unsupported type "'+Sr.call(r)+'"');this.value=r}};var De={0:"Symbol.asyncIterator",1:"Symbol.hasInstance",2:"Symbol.isConcatSpreadable",3:"Symbol.iterator",4:"Symbol.match",5:"Symbol.matchAll",6:"Symbol.replace",7:"Symbol.search",8:"Symbol.species",9:"Symbol.split",10:"Symbol.toPrimitive",11:"Symbol.toStringTag",12:"Symbol.unscopables"},L={[Symbol.asyncIterator]:0,[Symbol.hasInstance]:1,[Symbol.isConcatSpreadable]:2,[Symbol.iterator]:3,[Symbol.match]:4,[Symbol.matchAll]:5,[Symbol.replace]:6,[Symbol.search]:7,[Symbol.species]:8,[Symbol.split]:9,[Symbol.toPrimitive]:10,[Symbol.toStringTag]:11,[Symbol.unscopables]:12},Be={0:Symbol.asyncIterator,1:Symbol.hasInstance,2:Symbol.isConcatSpreadable,3:Symbol.iterator,4:Symbol.match,5:Symbol.matchAll,6:Symbol.replace,7:Symbol.search,8:Symbol.species,9:Symbol.split,10:Symbol.toPrimitive,11:Symbol.toStringTag,12:Symbol.unscopables},je={2:"!0",3:"!1",1:"void 0",0:"null",4:"-0",5:"1/0",6:"-1/0",7:"0/0"},Me={2:!0,3:!1,1:void 0,0:null,4:-0,5:1/0,6:-1/0,7:NaN};var Q={0:"Error",1:"EvalError",2:"RangeError",3:"ReferenceError",4:"SyntaxError",5:"TypeError",6:"URIError"},_e={0:Error,1:EvalError,2:RangeError,3:ReferenceError,4:SyntaxError,5:TypeError,6:URIError};function y(n){return{t:2,i:void 0,s:n,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}var v=y(2),N=y(3),ee=y(1),re=y(0),Ue=y(4),We=y(5),Ke=y(6),Le=y(7);function te(n){return n instanceof EvalError?1:n instanceof RangeError?2:n instanceof ReferenceError?3:n instanceof SyntaxError?4:n instanceof TypeError?5:n instanceof URIError?6:0}function hr(n){let e=Q[te(n)];return n.name!==e?{name:n.name}:n.constructor.name!==e?{name:n.constructor.name}:{}}function z(n,e){let r=hr(n),t=Object.getOwnPropertyNames(n);for(let s=0,i=t.length,o;s<i;s++)o=t[s],o!=="name"&&o!=="message"&&(o==="stack"?e&4&&(r=r||{},r[o]=n[o]):(r=r||{},r[o]=n[o]));return r}function ne(n){return Object.isFrozen(n)?3:Object.isSealed(n)?2:Object.isExtensible(n)?0:1}function se(n){switch(n){case 1/0:return We;case-1/0:return Ke}return n!==n?Le:Object.is(n,-0)?Ue:{t:0,i:void 0,s:n,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function b(n){return{t:1,i:void 0,s:d(n),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function ie(n){return{t:3,i:void 0,s:""+n,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function Ye(n){return{t:4,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function oe(n,e){return{t:5,i:n,s:e.toISOString(),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,f:void 0,a:void 0,b:void 0,o:void 0}}function ae(n,e){return{t:6,i:n,s:void 0,l:void 0,c:d(e.source),m:e.flags,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function le(n,e){let r=new Uint8Array(e),t=r.length,s=new Array(t);for(let i=0;i<t;i++)s[i]=r[i];return{t:19,i:n,s,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function Ge(n,e){return f(e in L,new Error("Only well-known symbols are supported.")),{t:17,i:n,s:L[e],l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function Re(n,e){return{t:18,i:n,s:d(Te(e)),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function k(n,e,r){return{t:25,i:n,s:r,l:void 0,c:d(e),m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function ue(n,e,r){return{t:9,i:n,s:void 0,l:e.length,c:void 0,m:void 0,p:void 0,e:void 0,a:r,f:void 0,b:void 0,o:ne(e)}}function de(n,e){return{t:21,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:e,b:void 0,o:void 0}}function ce(n,e,r){return{t:15,i:n,s:void 0,l:e.length,c:e.constructor.name,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:e.byteOffset,o:void 0}}function fe(n,e,r){return{t:16,i:n,s:void 0,l:e.length,c:e.constructor.name,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:e.byteOffset,o:void 0}}function pe(n,e,r){return{t:20,i:n,s:void 0,l:e.byteLength,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:e.byteOffset,o:void 0}}function me(n,e,r){return{t:13,i:n,s:te(e),l:void 0,c:void 0,m:d(e.message),p:r,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function ge(n,e,r){return{t:14,i:n,s:te(e),l:void 0,c:void 0,m:d(e.message),p:r,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function Se(n,e,r){return{t:7,i:n,s:void 0,l:e,c:void 0,m:void 0,p:void 0,e:void 0,a:r,f:void 0,b:void 0,o:void 0}}function T(n,e){return{t:28,i:void 0,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[n,e],f:void 0,b:void 0,o:void 0}}function F(n,e){return{t:30,i:void 0,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[n,e],f:void 0,b:void 0,o:void 0}}function V(n,e,r){return{t:31,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:r,f:e,b:void 0,o:void 0}}function he(n,e){return{t:32,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:e,b:void 0,o:void 0}}function ye(n,e){return{t:33,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:e,b:void 0,o:void 0}}function ve(n,e){return{t:34,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:e,b:void 0,o:void 0}}function D(n){let e=[],r=-1,t=-1,s=n[Symbol.iterator]();for(;;)try{let i=s.next();if(e.push(i.value),i.done){t=e.length-1;break}}catch(i){r=e.length,e.push(i)}return{v:e,t:r,d:t}}function He(n){return()=>{let e=0;return{[Symbol.iterator](){return this},next(){if(e>n.d)return{done:!0,value:void 0};let r=e++,t=n.v[r];if(r===n.t)throw t;return{done:r===n.d,value:t}}}}}var $e={},qe={};var Ze={0:{},1:{},2:{},3:{},4:{}};var B=class{constructor(e){this.marked=new Set;this.plugins=e.plugins,this.features=31^(e.disabledFeatures||0),this.refs=e.refs||new Map}markRef(e){this.marked.add(e)}isMarked(e){return this.marked.has(e)}getIndexedValue(e){let r=this.refs.get(e);if(r!=null)return this.markRef(r),{type:1,value:Ye(r)};let t=this.refs.size;return this.refs.set(e,t),{type:0,value:t}}getReference(e){let r=this.getIndexedValue(e);return r.type===1?r:X(e)?{type:2,value:Re(r.value,e)}:r}getStrictReference(e){f(X(e),new Error("Cannot serialize "+typeof e+" without reference ID."));let r=this.getIndexedValue(e);return r.type===1?r.value:Re(r.value,e)}parseFunction(e){return this.getStrictReference(e)}parseWellKnownSymbol(e){let r=this.getReference(e);return r.type!==0?r.value:(f(e in L,new Error("Cannot serialized unsupported symbol.")),Ge(r.value,e))}parseSpecialReference(e){let r=this.getIndexedValue(Ze[e]);return r.type===1?r.value:{t:26,i:r.value,s:e,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}parseIteratorFactory(){let e=this.getIndexedValue($e);return e.type===1?e.value:{t:27,i:e.value,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:this.parseWellKnownSymbol(Symbol.iterator),b:void 0,o:void 0}}parseAsyncIteratorFactory(){let e=this.getIndexedValue(qe);return e.type===1?e.value:{t:29,i:e.value,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[this.parseSpecialReference(1),this.parseWellKnownSymbol(Symbol.asyncIterator)],f:void 0,b:void 0,o:void 0}}createObjectNode(e,r,t,s){return{t:t?11:10,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:s,e:void 0,a:void 0,f:void 0,b:void 0,o:ne(r)}}createMapNode(e,r,t,s){return{t:8,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:{k:r,v:t,s},a:void 0,f:this.parseSpecialReference(0),b:void 0,o:void 0}}};async function we(n){try{return[1,await n]}catch(e){return[0,e]}}function J(){let n,e;return{promise:new Promise((r,t)=>{n=r,e=t}),resolve(r){n(r)},reject(r){e(r)}}}function be(n){return"__SEROVAL_STREAM__"in n}function E(){let n=new Set,e=[],r=!0,t=!1;function s(a){for(let l of n.keys())l.next(a)}function i(a){for(let l of n.keys())l.throw(a)}function o(a){for(let l of n.keys())l.return(a)}return{__SEROVAL_STREAM__:!0,on(a){r&&n.add(a);for(let l=0,u=e.length;l<u;l++){let g=e[l];l===u-1?t?a.return(g):a.throw(g):a.next(g)}return()=>{r&&n.delete(a)}},next(a){r&&(e.push(a),s(a))},throw(a){r&&(e.push(a),i(a),r=!1,t=!1,n.clear())},return(a){r&&(e.push(a),o(a),r=!1,t=!0,n.clear())}}}function xe(n){let e=E(),r=n[Symbol.asyncIterator]();async function t(){try{let s=await r.next();s.done?e.return(s.value):(e.next(s.value),await t())}catch(s){e.throw(s)}}return t().catch(()=>{}),e}function Xe(n){return()=>{let e=[],r=[],t=0,s=-1,i=!1;function o(){for(let l=0,u=r.length;l<u;l++)r[l].resolve({done:!0,value:void 0})}n.on({next(l){let u=r.shift();u&&u.resolve({done:!1,value:l}),e.push(l)},throw(l){let u=r.shift();u&&u.reject(l),o(),s=e.length,e.push(l),i=!0},return(l){let u=r.shift();u&&u.resolve({done:!0,value:l}),o(),s=e.length,e.push(l)}});function a(){let l=t++,u=e[l];if(l!==s)return{done:!1,value:u};if(i)throw u;return{done:!0,value:u}}return{[Symbol.asyncIterator](){return this},async next(){if(s===-1){let l=t++;if(l>=e.length){let u=J();return r.push(u),await u.promise}return{done:!1,value:e[l]}}return t>s?{done:!0,value:void 0}:a()}}}}var R=class extends B{async parseItems(e){let r=[];for(let t=0,s=e.length;t<s;t++)t in e&&(r[t]=await this.parse(e[t]));return r}async parseArray(e,r){return ue(e,r,await this.parseItems(r))}async parseProperties(e){let r=Object.entries(e),t=[],s=[];for(let o=0,a=r.length;o<a;o++)t.push(d(r[o][0])),s.push(await this.parse(r[o][1]));let i=Symbol.iterator;return i in e&&(t.push(this.parseWellKnownSymbol(i)),s.push(T(this.parseIteratorFactory(),await this.parse(D(e))))),i=Symbol.asyncIterator,i in e&&(t.push(this.parseWellKnownSymbol(i)),s.push(F(this.parseAsyncIteratorFactory(),await this.parse(xe(e))))),i=Symbol.toStringTag,i in e&&(t.push(this.parseWellKnownSymbol(i)),s.push(b(e[i]))),i=Symbol.isConcatSpreadable,i in e&&(t.push(this.parseWellKnownSymbol(i)),s.push(e[i]?v:N)),{k:t,v:s,s:t.length}}async parsePlainObject(e,r,t){return this.createObjectNode(e,r,t,await this.parseProperties(r))}async parseBoxed(e,r){return de(e,await this.parse(r.valueOf()))}async parseTypedArray(e,r){return ce(e,r,await this.parse(r.buffer))}async parseBigIntTypedArray(e,r){return fe(e,r,await this.parse(r.buffer))}async parseDataView(e,r){return pe(e,r,await this.parse(r.buffer))}async parseError(e,r){let t=z(r,this.features);return me(e,r,t?await this.parseProperties(t):void 0)}async parseAggregateError(e,r){let t=z(r,this.features);return ge(e,r,t?await this.parseProperties(t):void 0)}async parseMap(e,r){let t=[],s=[];for(let[i,o]of r.entries())t.push(await this.parse(i)),s.push(await this.parse(o));return this.createMapNode(e,t,s,r.size)}async parseSet(e,r){let t=[];for(let s of r.keys())t.push(await this.parse(s));return Se(e,r.size,t)}async parsePromise(e,r){let[t,s]=await we(r);return{t:12,i:e,s:t,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:await this.parse(s),b:void 0,o:void 0}}async parsePlugin(e,r){let t=this.plugins;if(t)for(let s=0,i=t.length;s<i;s++){let o=t[s];if(o.parse.async&&o.test(r))return k(e,o.tag,await o.parse.async(r,this,{id:e}))}}async parseStream(e,r){return V(e,this.parseSpecialReference(4),await new Promise((t,s)=>{let i=[],o=r.on({next:a=>{this.markRef(e),this.parse(a).then(l=>{i.push(he(e,l))},l=>{s(l),o()})},throw:a=>{this.markRef(e),this.parse(a).then(l=>{i.push(ye(e,l)),t(i),o()},l=>{s(l),o()})},return:a=>{this.markRef(e),this.parse(a).then(l=>{i.push(ve(e,l)),t(i),o()},l=>{s(l),o()})}})}))}async parseObject(e,r){if(Array.isArray(r))return this.parseArray(e,r);if(be(r))return this.parseStream(e,r);let t=await this.parsePlugin(e,r);if(t)return t;let s=r.constructor;switch(s){case Object:return this.parsePlainObject(e,r,!1);case void 0:return this.parsePlainObject(e,r,!0);case Date:return oe(e,r);case RegExp:return ae(e,r);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return this.parseError(e,r);case Number:case Boolean:case String:case BigInt:return this.parseBoxed(e,r);case ArrayBuffer:return le(e,r);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return this.parseTypedArray(e,r);case DataView:return this.parseDataView(e,r);case Map:return this.parseMap(e,r);case Set:return this.parseSet(e,r);default:break}if(s===Promise||r instanceof Promise)return this.parsePromise(e,r);let i=this.features;if(i&16)switch(s){case BigInt64Array:case BigUint64Array:return this.parseBigIntTypedArray(e,r);default:break}if(i&1&&typeof AggregateError!="undefined"&&(s===AggregateError||r instanceof AggregateError))return this.parseAggregateError(e,r);if(r instanceof Error)return this.parseError(e,r);if(Symbol.iterator in r||Symbol.asyncIterator in r)return this.parsePlainObject(e,r,!!s);throw new p(r)}async parse(e){switch(typeof e){case"boolean":return e?v:N;case"undefined":return ee;case"string":return b(e);case"number":return se(e);case"bigint":return ie(e);case"object":{if(e){let r=this.getReference(e);return r.type===0?await this.parseObject(r.value,e):r.value}return re}case"symbol":return this.parseWellKnownSymbol(e);case"function":return this.parseFunction(e);default:throw new p(e)}}};var j=class extends R{constructor(){super(...arguments);this.mode="vanilla"}};function Qe(n){switch(n){case"Int8Array":return Int8Array;case"Int16Array":return Int16Array;case"Int32Array":return Int32Array;case"Uint8Array":return Uint8Array;case"Uint16Array":return Uint16Array;case"Uint32Array":return Uint32Array;case"Uint8ClampedArray":return Uint8ClampedArray;case"Float32Array":return Float32Array;case"Float64Array":return Float64Array;case"BigInt64Array":return BigInt64Array;case"BigUint64Array":return BigUint64Array;default:throw new Error(`Unknown TypedArray "${n}"`)}}function er(n,e){switch(e){case 3:return Object.freeze(n);case 1:return Object.preventExtensions(n);case 2:return Object.seal(n);default:return n}}var w=class{constructor(e){this.plugins=e.plugins,this.refs=e.refs||new Map}deserializeReference(e){return this.assignIndexedValue(e.i,Fe(S(e.s)))}deserializeArray(e){let r=e.l,t=this.assignIndexedValue(e.i,new Array(r)),s;for(let i=0;i<r;i++)s=e.a[i],s&&(t[i]=this.deserialize(s));return er(t,e.o),t}deserializeProperties(e,r){let t=e.s;if(t){let s=e.k,i=e.v;for(let o=0,a;o<t;o++)a=s[o],typeof a=="string"?r[S(a)]=this.deserialize(i[o]):r[this.deserialize(a)]=this.deserialize(i[o])}return r}deserializeObject(e){let r=this.assignIndexedValue(e.i,e.t===10?{}:Object.create(null));return this.deserializeProperties(e.p,r),er(r,e.o),r}deserializeDate(e){return this.assignIndexedValue(e.i,new Date(e.s))}deserializeRegExp(e){return this.assignIndexedValue(e.i,new RegExp(S(e.c),e.m))}deserializeSet(e){let r=this.assignIndexedValue(e.i,new Set),t=e.a;for(let s=0,i=e.l;s<i;s++)r.add(this.deserialize(t[s]));return r}deserializeMap(e){let r=this.assignIndexedValue(e.i,new Map),t=e.e.k,s=e.e.v;for(let i=0,o=e.e.s;i<o;i++)r.set(this.deserialize(t[i]),this.deserialize(s[i]));return r}deserializeArrayBuffer(e){let r=new Uint8Array(e.s);return this.assignIndexedValue(e.i,r.buffer)}deserializeTypedArray(e){let r=Qe(e.c),t=this.deserialize(e.f);return this.assignIndexedValue(e.i,new r(t,e.b,e.l))}deserializeDataView(e){let r=this.deserialize(e.f);return this.assignIndexedValue(e.i,new DataView(r,e.b,e.l))}deserializeDictionary(e,r){if(e.p){let t=this.deserializeProperties(e.p,{});Object.assign(r,t)}return r}deserializeAggregateError(e){let r=this.assignIndexedValue(e.i,new AggregateError([],S(e.m)));return this.deserializeDictionary(e,r)}deserializeError(e){let r=_e[e.s],t=this.assignIndexedValue(e.i,new r(S(e.m)));return this.deserializeDictionary(e,t)}deserializePromise(e){let r=J(),t=this.assignIndexedValue(e.i,r),s=this.deserialize(e.f);return e.s?r.resolve(s):r.reject(s),t.promise}deserializeBoxed(e){return this.assignIndexedValue(e.i,Object(this.deserialize(e.f)))}deserializePlugin(e){let r=this.plugins;if(r){let t=S(e.c);for(let s=0,i=r.length;s<i;s++){let o=r[s];if(o.tag===t)return this.assignIndexedValue(e.i,o.deserialize(e.s,this,{id:e.i}))}}throw new Error('Missing plugin for tag "'+e.c+'".')}deserializePromiseConstructor(e){return this.assignIndexedValue(e.i,J()).promise}deserializePromiseResolve(e){let r=this.refs.get(e.i);f(r,new Error("Missing Promise instance.")),r.resolve(this.deserialize(e.a[1]))}deserializePromiseReject(e){let r=this.refs.get(e.i);f(r,new Error("Missing Promise instance.")),r.reject(this.deserialize(e.a[1]))}deserializeIteratorFactoryInstance(e){this.deserialize(e.a[0]);let r=this.deserialize(e.a[1]);return He(r)}deserializeAsyncIteratorFactoryInstance(e){this.deserialize(e.a[0]);let r=this.deserialize(e.a[1]);return Xe(r)}deserializeStreamConstructor(e){let r=this.assignIndexedValue(e.i,E()),t=e.a.length;if(t)for(let s=0;s<t;s++)this.deserialize(e.a[s]);return r}deserializeStreamNext(e){let r=this.refs.get(e.i);f(r,new Error("Missing Stream instance.")),r.next(this.deserialize(e.f))}deserializeStreamThrow(e){let r=this.refs.get(e.i);f(r,new Error("Missing Stream instance.")),r.throw(this.deserialize(e.f))}deserializeStreamReturn(e){let r=this.refs.get(e.i);f(r,new Error("Missing Stream instance.")),r.return(this.deserialize(e.f))}deserializeIteratorFactory(e){this.deserialize(e.f)}deserializeAsyncIteratorFactory(e){this.deserialize(e.a[1])}deserialize(e){switch(e.t){case 2:return Me[e.s];case 0:return e.s;case 1:return S(e.s);case 3:return BigInt(e.s);case 4:return this.refs.get(e.i);case 18:return this.deserializeReference(e);case 9:return this.deserializeArray(e);case 10:case 11:return this.deserializeObject(e);case 5:return this.deserializeDate(e);case 6:return this.deserializeRegExp(e);case 7:return this.deserializeSet(e);case 8:return this.deserializeMap(e);case 19:return this.deserializeArrayBuffer(e);case 16:case 15:return this.deserializeTypedArray(e);case 20:return this.deserializeDataView(e);case 14:return this.deserializeAggregateError(e);case 13:return this.deserializeError(e);case 12:return this.deserializePromise(e);case 17:return Be[e.s];case 21:return this.deserializeBoxed(e);case 25:return this.deserializePlugin(e);case 22:return this.deserializePromiseConstructor(e);case 23:return this.deserializePromiseResolve(e);case 24:return this.deserializePromiseReject(e);case 28:return this.deserializeIteratorFactoryInstance(e);case 30:return this.deserializeAsyncIteratorFactoryInstance(e);case 31:return this.deserializeStreamConstructor(e);case 32:return this.deserializeStreamNext(e);case 33:return this.deserializeStreamThrow(e);case 34:return this.deserializeStreamReturn(e);case 27:return this.deserializeIteratorFactory(e);case 29:return this.deserializeAsyncIteratorFactory(e);default:throw new Error("invariant")}}};var Y=class extends w{constructor(r){super(r);this.mode="vanilla";this.marked=new Set(r.markedRefs)}assignIndexedValue(r,t){return this.marked.has(r)&&this.refs.set(r,t),t}};var vr=/^[$A-Z_][0-9A-Z_$]*$/i;function Pe(n){let e=n[0];return(e==="$"||e==="_"||e>="A"&&e<="Z"||e>="a"&&e<="z")&&vr.test(n)}function G(n){switch(n.t){case"index":return n.s+"="+n.v;case"set":return n.s+".set("+n.k+","+n.v+")";case"add":return n.s+".add("+n.v+")";case"delete":return n.s+".delete("+n.k+")";default:return""}}function Nr(n){let e=[],r=n[0];for(let t=1,s=n.length,i,o=r;t<s;t++)i=n[t],i.t==="index"&&i.v===o.v?r={t:"index",s:i.s,k:void 0,v:G(r)}:i.t==="set"&&i.s===o.s?r={t:"set",s:G(r),k:i.k,v:i.v}:i.t==="add"&&i.s===o.s?r={t:"add",s:G(r),k:void 0,v:i.v}:i.t==="delete"&&i.s===o.s?r={t:"delete",s:G(r),k:i.k,v:void 0}:(e.push(r),r=i),o=i;return e.push(r),e}function rr(n){if(n.length){let e="",r=Nr(n);for(let t=0,s=r.length;t<s;t++)e+=G(r[t])+",";return e}}var br="Object.create(null)",xr="new Set",Ar="new Map",Ir="Promise.resolve",Er="Promise.reject",Rr={3:"Object.freeze",2:"Object.seal",1:"Object.preventExtensions",0:void 0},P=class{constructor(e){this.stack=[];this.flags=[];this.assignments=[];this.plugins=e.plugins,this.features=e.features,this.marked=new Set(e.markedRefs)}createFunction(e,r){return this.features&2?(e.length===1?e[0]:"("+e.join(",")+")")+"=>"+r:"function("+e.join(",")+"){return "+r+"}"}createEffectfulFunction(e,r){return this.features&2?(e.length===1?e[0]:"("+e.join(",")+")")+"=>{"+r+"}":"function("+e.join(",")+"){"+r+"}"}markRef(e){this.marked.add(e)}isMarked(e){return this.marked.has(e)}pushObjectFlag(e,r){e!==0&&(this.markRef(r),this.flags.push({type:e,value:this.getRefParam(r)}))}resolveFlags(){let e="";for(let r=0,t=this.flags,s=t.length;r<s;r++){let i=t[r];e+=Rr[i.type]+"("+i.value+"),"}return e}resolvePatches(){let e=rr(this.assignments),r=this.resolveFlags();return e?r?e+r:e:r}createAssignment(e,r){this.assignments.push({t:"index",s:e,k:void 0,v:r})}createAddAssignment(e,r){this.assignments.push({t:"add",s:this.getRefParam(e),k:void 0,v:r})}createSetAssignment(e,r,t){this.assignments.push({t:"set",s:this.getRefParam(e),k:r,v:t})}createDeleteAssignment(e,r){this.assignments.push({t:"delete",s:this.getRefParam(e),k:r,v:void 0})}createArrayAssign(e,r,t){this.createAssignment(this.getRefParam(e)+"["+r+"]",t)}createObjectAssign(e,r,t){this.createAssignment(this.getRefParam(e)+"."+r,t)}isIndexedValueInStack(e){return e.t===4&&this.stack.includes(e.i)}serializeReference(e){return this.assignIndexedValue(e.i,A+'.get("'+e.s+'")')}serializeArrayItem(e,r,t){return r?this.isIndexedValueInStack(r)?(this.markRef(e),this.createArrayAssign(e,t,this.getRefParam(r.i)),""):this.serialize(r):""}serializeArray(e){let r=e.i;if(e.l){this.stack.push(r);let t=e.a,s=this.serializeArrayItem(r,t[0],0),i=s==="";for(let o=1,a=e.l,l;o<a;o++)l=this.serializeArrayItem(r,t[o],o),s+=","+l,i=l==="";return this.stack.pop(),this.pushObjectFlag(e.o,e.i),this.assignIndexedValue(r,"["+s+(i?",]":"]"))}return this.assignIndexedValue(r,"[]")}serializeProperty(e,r,t){if(typeof r=="string"){let s=Number(r),i=s>=0||Pe(r);if(this.isIndexedValueInStack(t)){let o=this.getRefParam(t.i);return this.markRef(e.i),i&&s!==s?this.createObjectAssign(e.i,r,o):this.createArrayAssign(e.i,i?r:'"'+r+'"',o),""}return(i?r:'"'+r+'"')+":"+this.serialize(t)}return"["+this.serialize(r)+"]:"+this.serialize(t)}serializeProperties(e,r){let t=r.s;if(t){this.stack.push(e.i);let s=r.k,i=r.v,o=this.serializeProperty(e,s[0],i[0]);for(let a=1,l=o;a<t;a++)l=this.serializeProperty(e,s[a],i[a]),o+=(l&&o&&",")+l;return this.stack.pop(),"{"+o+"}"}return"{}"}serializeObject(e){return this.pushObjectFlag(e.o,e.i),this.assignIndexedValue(e.i,this.serializeProperties(e,e.p))}serializeWithObjectAssign(e,r,t){let s=this.serializeProperties(e,r);return s!=="{}"?"Object.assign("+t+","+s+")":t}serializeStringKeyAssignment(e,r,t,s){let i=this.serialize(s),o=Number(t),a=o>=0||Pe(t);if(this.isIndexedValueInStack(s))a&&o!==o?this.createObjectAssign(e.i,t,i):this.createArrayAssign(e.i,a?t:'"'+t+'"',i);else{let l=this.assignments;this.assignments=r,a?this.createObjectAssign(e.i,t,i):this.createArrayAssign(e.i,a?t:'"'+t+'"',i),this.assignments=l}}serializeAssignment(e,r,t,s){if(typeof t=="string")this.serializeStringKeyAssignment(e,r,t,s);else{let i=this.stack;this.stack=[];let o=this.serialize(s);this.stack=i;let a=this.assignments;this.assignments=r,this.createArrayAssign(e.i,this.serialize(t),o),this.assignments=a}}serializeAssignments(e,r){let t=r.s;if(t){this.stack.push(e.i);let s=[],i=r.k,o=r.v;for(let a=0;a<t;a++)this.serializeAssignment(e,s,i[a],o[a]);return this.stack.pop(),rr(s)}}serializeDictionary(e,r){if(e.p)if(this.features&8)r=this.serializeWithObjectAssign(e,e.p,r);else{this.markRef(e.i);let t=this.serializeAssignments(e,e.p);if(t)return"("+this.assignIndexedValue(e.i,r)+","+t+this.getRefParam(e.i)+")"}return this.assignIndexedValue(e.i,r)}serializeNullConstructor(e){return this.pushObjectFlag(e.o,e.i),this.serializeDictionary(e,br)}serializeDate(e){return this.assignIndexedValue(e.i,'new Date("'+e.s+'")')}serializeRegExp(e){return this.assignIndexedValue(e.i,"/"+e.c+"/"+e.m)}serializeSetItem(e,r){return this.isIndexedValueInStack(r)?(this.markRef(e),this.createAddAssignment(e,this.getRefParam(r.i)),""):this.serialize(r)}serializeSet(e){let r=xr,t=e.l,s=e.i;if(t){let i=e.a;this.stack.push(s);let o=this.serializeSetItem(s,i[0]);for(let a=1,l=o;a<t;a++)l=this.serializeSetItem(s,i[a]),o+=(l&&o&&",")+l;this.stack.pop(),o&&(r+="(["+o+"])")}return this.assignIndexedValue(s,r)}serializeMapEntry(e,r,t,s){if(this.isIndexedValueInStack(r)){let i=this.getRefParam(r.i);if(this.markRef(e),this.isIndexedValueInStack(t)){let a=this.getRefParam(t.i);return this.createSetAssignment(e,i,a),""}if(t.t!==4&&t.i!=null&&this.isMarked(t.i)){let a="("+this.serialize(t)+",["+s+","+s+"])";return this.createSetAssignment(e,i,this.getRefParam(t.i)),this.createDeleteAssignment(e,s),a}let o=this.stack;return this.stack=[],this.createSetAssignment(e,i,this.serialize(t)),this.stack=o,""}if(this.isIndexedValueInStack(t)){let i=this.getRefParam(t.i);if(this.markRef(e),r.t!==4&&r.i!=null&&this.isMarked(r.i)){let a="("+this.serialize(r)+",["+s+","+s+"])";return this.createSetAssignment(e,this.getRefParam(r.i),i),this.createDeleteAssignment(e,s),a}let o=this.stack;return this.stack=[],this.createSetAssignment(e,this.serialize(r),i),this.stack=o,""}return"["+this.serialize(r)+","+this.serialize(t)+"]"}serializeMap(e){let r=Ar,t=e.e.s,s=e.i,i=e.f,o=this.getRefParam(i.i);if(t){let a=e.e.k,l=e.e.v;this.stack.push(s);let u=this.serializeMapEntry(s,a[0],l[0],o);for(let g=1,Ae=u;g<t;g++)Ae=this.serializeMapEntry(s,a[g],l[g],o),u+=(Ae&&u&&",")+Ae;this.stack.pop(),u&&(r+="(["+u+"])")}return i.t===26&&(this.markRef(i.i),r="("+this.serialize(i)+","+r+")"),this.assignIndexedValue(s,r)}serializeArrayBuffer(e){let r="new Uint8Array(",t=e.s,s=t.length;if(s){r+="["+t[0];for(let i=1;i<s;i++)r+=","+t[i];r+="]"}return this.assignIndexedValue(e.i,r+").buffer")}serializeTypedArray(e){return this.assignIndexedValue(e.i,"new "+e.c+"("+this.serialize(e.f)+","+e.b+","+e.l+")")}serializeDataView(e){return this.assignIndexedValue(e.i,"new DataView("+this.serialize(e.f)+","+e.b+","+e.l+")")}serializeAggregateError(e){let r=e.i;this.stack.push(r);let t='new AggregateError([],"'+e.m+'")';return this.stack.pop(),this.serializeDictionary(e,t)}serializeError(e){return this.serializeDictionary(e,"new "+Q[e.s]+'("'+e.m+'")')}serializePromise(e){let r,t=e.f,s=e.i,i=e.s?Ir:Er;if(this.isIndexedValueInStack(t)){let o=this.getRefParam(t.i);r=i+(e.s?"().then("+this.createFunction([],o)+")":"().catch("+this.createEffectfulFunction([],"throw "+o)+")")}else{this.stack.push(s);let o=this.serialize(t);this.stack.pop(),r=i+"("+o+")"}return this.assignIndexedValue(s,r)}serializeWellKnownSymbol(e){return this.assignIndexedValue(e.i,De[e.s])}serializeFormDataEntry(e,r,t){return this.getRefParam(e)+'.append("'+r+'",'+this.serialize(t)+")"}serializeBoxed(e){return this.assignIndexedValue(e.i,"Object("+this.serialize(e.f)+")")}serializePlugin(e){let r=this.plugins;if(r)for(let t=0,s=r.length;t<s;t++){let i=r[t];if(i.tag===e.c)return this.assignIndexedValue(e.i,i.serialize(e.s,this,{id:e.i}))}throw new Error('Missing plugin for tag "'+e.c+'".')}getConstructor(e){let r=this.serialize(e);return r===this.getRefParam(e.i)?r:"("+r+")"}serializePromiseConstructor(e){return this.assignIndexedValue(e.i,this.getConstructor(e.f)+"()")}serializePromiseResolve(e){return this.getConstructor(e.a[0])+"("+this.getRefParam(e.i)+","+this.serialize(e.a[1])+")"}serializePromiseReject(e){return this.getConstructor(e.a[0])+"("+this.getRefParam(e.i)+","+this.serialize(e.a[1])+")"}serializeSpecialReferenceValue(e){switch(e){case 0:return"[]";case 1:return this.createFunction(["s","f","p"],"((p=new Promise("+this.createEffectfulFunction(["a","b"],"s=a,f=b")+")).s=s,p.f=f,p)");case 2:return this.createEffectfulFunction(["p","d"],'p.s(d),p.status="success",p.value=d;delete p.s;delete p.f');case 3:return this.createEffectfulFunction(["p","d"],'p.f(d),p.status="failure",p.value=d;delete p.s;delete p.f');case 4:return this.createFunction(["b","a","s","l","p","f","e","n"],"(b=[],a=!0,s=!1,l=[],s=0,f="+this.createEffectfulFunction(["v","m","x"],"for(x=0;x<s;x++)l[x]&&l[x][m](v)")+",n="+this.createEffectfulFunction(["o","x","z","c"],'for(x=0,z=b.length;x<z;x++)(c=b[x],x===z-1?o[s?"return":"throw"](c):o.next(c))')+",e="+this.createFunction(["o","t"],"(a&&(l[t=p++]=o),n(o),"+this.createEffectfulFunction([],"a&&(l[t]=void 0)")+")")+",{__SEROVAL_STREAM__:!0,on:"+this.createFunction(["o"],"e(o)")+",next:"+this.createEffectfulFunction(["v"],'a&&(b.push(v),f(v,"next"))')+",throw:"+this.createEffectfulFunction(["v"],'a&&(b.push(v),f(v,"throw"),a=s=!1,l.length=0)')+",return:"+this.createEffectfulFunction(["v"],'a&&(b.push(v),f(v,"return"),a=!1,s=!0,l.length=0)')+"})");default:return""}}serializeSpecialReference(e){return this.assignIndexedValue(e.i,this.serializeSpecialReferenceValue(e.s))}serializeIteratorFactory(e){let r="",t=!1;return e.f.t!==4&&(this.markRef(e.f.i),r="("+this.serialize(e.f)+",",t=!0),r+=this.assignIndexedValue(e.i,this.createFunction(["s"],this.createFunction(["i","c","d","t"],"(i=0,t={["+this.getRefParam(e.f.i)+"]:"+this.createFunction([],"t")+",next:"+this.createEffectfulFunction([],"if(i>s.d)return{done:!0,value:void 0};if(d=s.v[c=i++],c===s.t)throw d;return{done:c===s.d,value:d}")+"})"))),t&&(r+=")"),r}serializeIteratorFactoryInstance(e){return this.getConstructor(e.a[0])+"("+this.serialize(e.a[1])+")"}serializeAsyncIteratorFactory(e){let r=e.a[0],t=e.a[1],s="";r.t!==4&&(this.markRef(r.i),s+="("+this.serialize(r)),t.t!==4&&(this.markRef(t.i),s+=(s?",":"(")+this.serialize(t)),s&&(s+=",");let i=this.assignIndexedValue(e.i,this.createFunction(["s"],this.createFunction(["b","c","p","d","e","t","f"],"(b=[],c=0,p=[],d=-1,e=!1,f="+this.createEffectfulFunction(["i","l"],"for(i=0,l=p.length;i<l;i++)p[i].s({done:!0,value:void 0})")+",s.on({next:"+this.createEffectfulFunction(["v","t"],"if(t=p.shift())t.s({done:!1,value:v});b.push(v)")+",throw:"+this.createEffectfulFunction(["v","t"],"if(t=p.shift())t.f(v);f(),d=b.length,e=!0,b.push(v)")+",return:"+this.createEffectfulFunction(["v","t"],"if(t=p.shift())t.s({done:!0,value:v});f(),d=b.length,b.push(v)")+"}),t={["+this.getRefParam(t.i)+"]:"+this.createFunction([],"t")+",next:"+this.createEffectfulFunction(["i","t","v"],"if(d===-1){return((i=c++)>=b.length)?(p.push(t="+this.getRefParam(r.i)+"()),t):{done:!0,value:b[i]}}if(c>d)return{done:!0,value:void 0};if(v=b[i=c++],i!==d)return{done:!1,value:v};if(e)throw v;return{done:!0,value:v}")+"})")));return s?s+i+")":i}serializeAsyncIteratorFactoryInstance(e){return this.getConstructor(e.a[0])+"("+this.serialize(e.a[1])+")"}serializeStreamConstructor(e){let r=this.assignIndexedValue(e.i,this.getConstructor(e.f)+"()"),t=e.a.length;if(t){let s=this.serialize(e.a[0]);for(let i=1;i<t;i++)s+=","+this.serialize(e.a[i]);return"("+r+","+s+","+this.getRefParam(e.i)+")"}return r}serializeStreamNext(e){return this.getRefParam(e.i)+".next("+this.serialize(e.f)+")"}serializeStreamThrow(e){return this.getRefParam(e.i)+".throw("+this.serialize(e.f)+")"}serializeStreamReturn(e){return this.getRefParam(e.i)+".return("+this.serialize(e.f)+")"}serialize(e){switch(e.t){case 2:return je[e.s];case 0:return""+e.s;case 1:return'"'+e.s+'"';case 3:return e.s+"n";case 4:return this.getRefParam(e.i);case 18:return this.serializeReference(e);case 9:return this.serializeArray(e);case 10:return this.serializeObject(e);case 11:return this.serializeNullConstructor(e);case 5:return this.serializeDate(e);case 6:return this.serializeRegExp(e);case 7:return this.serializeSet(e);case 8:return this.serializeMap(e);case 19:return this.serializeArrayBuffer(e);case 16:case 15:return this.serializeTypedArray(e);case 20:return this.serializeDataView(e);case 14:return this.serializeAggregateError(e);case 13:return this.serializeError(e);case 12:return this.serializePromise(e);case 17:return this.serializeWellKnownSymbol(e);case 21:return this.serializeBoxed(e);case 22:return this.serializePromiseConstructor(e);case 23:return this.serializePromiseResolve(e);case 24:return this.serializePromiseReject(e);case 25:return this.serializePlugin(e);case 26:return this.serializeSpecialReference(e);case 27:return this.serializeIteratorFactory(e);case 28:return this.serializeIteratorFactoryInstance(e);case 29:return this.serializeAsyncIteratorFactory(e);case 30:return this.serializeAsyncIteratorFactoryInstance(e);case 31:return this.serializeStreamConstructor(e);case 32:return this.serializeStreamNext(e);case 33:return this.serializeStreamThrow(e);case 34:return this.serializeStreamReturn(e);default:throw new Error("invariant")}}};var sr="hjkmoquxzABCDEFGHIJKLNPQRTUVWXYZ$_",tr=sr.length,ir="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789$_",nr=ir.length;function Ce(n){let e=n%tr,r=sr[e];for(n=(n-e)/tr;n>0;)e=n%nr,r+=ir[e],n=(n-e)/nr;return r}var C=class extends P{constructor(){super(...arguments);this.mode="vanilla";this.valid=new Map;this.vars=[]}getRefParam(r){let t=this.valid.get(r);t==null&&(t=this.valid.size,this.valid.set(r,t));let s=this.vars[t];return s==null&&(s=Ce(t),this.vars[t]=s),s}assignIndexedValue(r,t){return this.isMarked(r)?this.getRefParam(r)+"="+t:t}serializePromiseConstructor(r){throw new Error('Unsupported node type "'+r.t+'".')}serializePromiseResolve(r){throw new Error('Unsupported node type "'+r.t+'".')}serializePromiseReject(r){throw new Error('Unsupported node type "'+r.t+'".')}serializeTop(r){let t=this.serialize(r);if(r.i!=null&&this.vars.length){let s=this.resolvePatches(),i=t;if(s){let o=this.getRefParam(r.i);i=t+","+s+o,t.startsWith(o+"=")||(i=o+"="+i)}return"("+this.createFunction(this.vars,"("+i+")")+")()"}return r.t===10?"("+t+")":t}};var m=class extends B{parseItems(e){let r=[];for(let t=0,s=e.length;t<s;t++)t in e&&(r[t]=this.parse(e[t]));return r}parseArray(e,r){return ue(e,r,this.parseItems(r))}parseProperties(e){let r=Object.entries(e),t=[],s=[];for(let o=0,a=r.length;o<a;o++)t.push(d(r[o][0])),s.push(this.parse(r[o][1]));let i=Symbol.iterator;return i in e&&(t.push(this.parseWellKnownSymbol(i)),s.push(T(this.parseIteratorFactory(),this.parse(D(e))))),i=Symbol.asyncIterator,i in e&&(t.push(this.parseWellKnownSymbol(i)),s.push(F(this.parseAsyncIteratorFactory(),this.parse(E())))),i=Symbol.toStringTag,i in e&&(t.push(this.parseWellKnownSymbol(i)),s.push(b(e[i]))),i=Symbol.isConcatSpreadable,i in e&&(t.push(this.parseWellKnownSymbol(i)),s.push(e[i]?v:N)),{k:t,v:s,s:t.length}}parsePlainObject(e,r,t){return this.createObjectNode(e,r,t,this.parseProperties(r))}parseBoxed(e,r){return de(e,this.parse(r.valueOf()))}parseTypedArray(e,r){return ce(e,r,this.parse(r.buffer))}parseBigIntTypedArray(e,r){return fe(e,r,this.parse(r.buffer))}parseDataView(e,r){return pe(e,r,this.parse(r.buffer))}parseError(e,r){let t=z(r,this.features);return me(e,r,t?this.parseProperties(t):void 0)}parseAggregateError(e,r){let t=z(r,this.features);return ge(e,r,t?this.parseProperties(t):void 0)}parseMap(e,r){let t=[],s=[];for(let[i,o]of r.entries())t.push(this.parse(i)),s.push(this.parse(o));return this.createMapNode(e,t,s,r.size)}parseSet(e,r){let t=[];for(let s of r.keys())t.push(this.parse(s));return Se(e,r.size,t)}parsePlugin(e,r){let t=this.plugins;if(t)for(let s=0,i=t.length;s<i;s++){let o=t[s];if(o.parse.sync&&o.test(r))return k(e,o.tag,o.parse.sync(r,this,{id:e}))}}parseStream(e,r){return V(e,this.parseSpecialReference(4),[])}parsePromise(e,r){return{t:22,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:this.parseSpecialReference(1),b:void 0,o:void 0}}parseObject(e,r){if(Array.isArray(r))return this.parseArray(e,r);if(be(r))return this.parseStream(e,r);let t=this.parsePlugin(e,r);if(t)return t;let s=r.constructor;switch(s){case Object:return this.parsePlainObject(e,r,!1);case void 0:return this.parsePlainObject(e,r,!0);case Date:return oe(e,r);case RegExp:return ae(e,r);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return this.parseError(e,r);case Number:case Boolean:case String:case BigInt:return this.parseBoxed(e,r);case ArrayBuffer:return le(e,r);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return this.parseTypedArray(e,r);case DataView:return this.parseDataView(e,r);case Map:return this.parseMap(e,r);case Set:return this.parseSet(e,r);default:break}if(s===Promise||r instanceof Promise)return this.parsePromise(e,r);let i=this.features;if(i&16)switch(s){case BigInt64Array:case BigUint64Array:return this.parseBigIntTypedArray(e,r);default:break}if(i&1&&typeof AggregateError!="undefined"&&(s===AggregateError||r instanceof AggregateError))return this.parseAggregateError(e,r);if(r instanceof Error)return this.parseError(e,r);if(Symbol.iterator in r||Symbol.asyncIterator in r)return this.parsePlainObject(e,r,!!s);throw new p(r)}parse(e){switch(typeof e){case"boolean":return e?v:N;case"undefined":return ee;case"string":return b(e);case"number":return se(e);case"bigint":return ie(e);case"object":{if(e){let r=this.getReference(e);return r.type===0?this.parseObject(r.value,e):r.value}return re}case"symbol":return this.parseWellKnownSymbol(e);case"function":return this.parseFunction(e);default:throw new p(e)}}};var M=class extends m{constructor(){super(...arguments);this.mode="vanilla"}};function wr(n,e={}){let r=c(e.plugins),t=new M({plugins:r,disabledFeatures:e.disabledFeatures}),s=t.parse(n);return new C({plugins:r,features:t.features,markedRefs:t.marked}).serializeTop(s)}async function Pr(n,e={}){let r=c(e.plugins),t=new j({plugins:r,disabledFeatures:e.disabledFeatures}),s=await t.parse(n);return new C({plugins:r,features:t.features,markedRefs:t.marked}).serializeTop(s)}function Cr(n){return(0,eval)(n)}function Or(n,e={}){let r=c(e.plugins),t=new M({plugins:r,disabledFeatures:e.disabledFeatures});return{t:t.parse(n),f:t.features,m:Array.from(t.marked)}}async function zr(n,e={}){let r=c(e.plugins),t=new j({plugins:r,disabledFeatures:e.disabledFeatures});return{t:await t.parse(n),f:t.features,m:Array.from(t.marked)}}function kr(n,e={}){let r=c(e.plugins);return new C({plugins:r,features:n.f,markedRefs:n.m}).serializeTop(n.t)}function Tr(n,e={}){let r=c(e.plugins);return new Y({plugins:r,markedRefs:n.m}).deserialize(n.t)}var _=class extends R{constructor(){super(...arguments);this.mode="cross"}};var H=class extends w{constructor(){super(...arguments);this.mode="cross"}assignIndexedValue(r,t){return this.refs.has(r)||this.refs.set(r,t),t}};var O=class extends P{constructor(r){super(r);this.mode="cross";this.scopeId=r.scopeId}getRefParam(r){return K+"["+r+"]"}assignIndexedValue(r,t){return this.getRefParam(r)+"="+t}serializeTop(r){let t=this.serialize(r),s=r.i;if(s==null)return t;let i=this.resolvePatches(),o=this.getRefParam(s),a=this.scopeId==null?"":K,l=i?t+","+i+o:t;if(a==="")return i?"("+l+")":l;let u=this.scopeId==null?"()":"("+K+'["'+d(this.scopeId)+'"])';return"("+this.createFunction([a],l)+")"+u}};var $=class extends m{constructor(r){super(r);this.alive=!0;this.pending=0;this.initial=!0;this.buffer=[];this.onParseCallback=r.onParse,this.onErrorCallback=r.onError,this.onDoneCallback=r.onDone}onParseInternal(r,t){try{this.onParseCallback(r,t)}catch(s){this.onError(s)}}flush(){for(let r=0,t=this.buffer.length;r<t;r++)this.onParseInternal(this.buffer[r],!1)}onParse(r){this.initial?this.buffer.push(r):this.onParseInternal(r,!1)}onError(r){if(this.onErrorCallback)this.onErrorCallback(r);else throw r}onDone(){this.onDoneCallback&&this.onDoneCallback()}pushPendingState(){this.pending++}popPendingState(){--this.pending<=0&&this.onDone()}parseProperties(r){let t=Object.entries(r),s=[],i=[];for(let a=0,l=t.length;a<l;a++)s.push(d(t[a][0])),i.push(this.parse(t[a][1]));let o=Symbol.iterator;return o in r&&(s.push(this.parseWellKnownSymbol(o)),i.push(T(this.parseIteratorFactory(),this.parse(D(r))))),o=Symbol.asyncIterator,o in r&&(s.push(this.parseWellKnownSymbol(o)),i.push(F(this.parseAsyncIteratorFactory(),this.parse(xe(r))))),o=Symbol.toStringTag,o in r&&(s.push(this.parseWellKnownSymbol(o)),i.push(b(r[o]))),o=Symbol.isConcatSpreadable,o in r&&(s.push(this.parseWellKnownSymbol(o)),i.push(r[o]?v:N)),{k:s,v:i,s:s.length}}parsePromise(r,t){return t.then(s=>{let i=this.parseWithError(s);i&&this.onParse({t:23,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[this.parseSpecialReference(2),i],f:void 0,b:void 0,o:void 0}),this.popPendingState()},s=>{if(this.alive){let i=this.parseWithError(s);i&&this.onParse({t:24,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[this.parseSpecialReference(3),i],f:void 0,b:void 0,o:void 0})}this.popPendingState()}),this.pushPendingState(),{t:22,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:this.parseSpecialReference(1),b:void 0,o:void 0}}parsePlugin(r,t){let s=this.plugins;if(s)for(let i=0,o=s.length;i<o;i++){let a=s[i];if(a.parse.stream&&a.test(t))return k(r,a.tag,a.parse.stream(t,this,{id:r}))}}parseStream(r,t){let s=V(r,this.parseSpecialReference(4),[]);return this.pushPendingState(),t.on({next:i=>{if(this.alive){let o=this.parseWithError(i);o&&this.onParse(he(r,o))}},throw:i=>{if(this.alive){let o=this.parseWithError(i);o&&this.onParse(ye(r,o))}this.popPendingState()},return:i=>{if(this.alive){let o=this.parseWithError(i);o&&this.onParse(ve(r,o))}this.popPendingState()}}),s}parseWithError(r){try{return this.parse(r)}catch(t){this.onError(t);return}}start(r){let t=this.parseWithError(r);t&&(this.onParseInternal(t,!0),this.initial=!1,this.flush(),this.pending<=0&&this.destroy())}destroy(){this.alive&&(this.onDone(),this.alive=!1)}isAlive(){return this.alive}};var U=class extends ${constructor(){super(...arguments);this.mode="cross"}};var W=class extends m{constructor(){super(...arguments);this.mode="cross"}};function Fr(n,e={}){let r=c(e.plugins),t=new W({plugins:r,disabledFeatures:e.disabledFeatures,refs:e.refs}),s=t.parse(n);return new O({plugins:r,features:t.features,scopeId:e.scopeId,markedRefs:t.marked}).serializeTop(s)}async function Vr(n,e={}){let r=c(e.plugins),t=new _({plugins:r,disabledFeatures:e.disabledFeatures,refs:e.refs}),s=await t.parse(n);return new O({plugins:r,features:t.features,scopeId:e.scopeId,markedRefs:t.marked}).serializeTop(s)}function Dr(n,e={}){let r=c(e.plugins);return new W({plugins:r,disabledFeatures:e.disabledFeatures,refs:e.refs}).parse(n)}async function Br(n,e={}){let r=c(e.plugins);return await new _({plugins:r,disabledFeatures:e.disabledFeatures,refs:e.refs}).parse(n)}function Oe(n,e){let r=c(e.plugins),t=new U({plugins:r,refs:e.refs,disabledFeatures:e.disabledFeatures,onParse(s,i){let o=new O({plugins:r,features:t.features,scopeId:e.scopeId,markedRefs:t.marked}),a;try{a=o.serializeTop(s)}catch(l){e.onError&&e.onError(l);return}e.onSerialize(a,i)},onError:e.onError,onDone:e.onDone});return t.start(n),()=>{t.destroy()}}function jr(n,e){let r=c(e.plugins),t=new U({plugins:r,refs:e.refs,disabledFeatures:e.disabledFeatures,onParse:e.onParse,onError:e.onError,onDone:e.onDone});return t.start(n),()=>{t.destroy()}}function Mr(n,e){let r=c(e.plugins);return new H({plugins:r,refs:e.refs}).deserialize(n)}var q=class{constructor(e){this.options=e;this.alive=!0;this.flushed=!1;this.done=!1;this.pending=0;this.cleanups=[];this.refs=new Map;this.keys=new Set;this.ids=0;this.plugins=c(e.plugins)}write(e,r){this.alive&&!this.flushed&&(this.pending++,this.keys.add(e),this.cleanups.push(Oe(r,{plugins:this.plugins,scopeId:this.options.scopeId,refs:this.refs,disabledFeatures:this.options.disabledFeatures,onError:this.options.onError,onSerialize:(t,s)=>{this.alive&&this.options.onData(s?this.options.globalIdentifier+'["'+d(e)+'"]='+t:t)},onDone:()=>{this.alive&&(this.pending--,this.pending<=0&&this.flushed&&!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0))}})))}getNextID(){for(;this.keys.has(""+this.ids);)this.ids++;return""+this.ids}push(e){let r=this.getNextID();return this.write(r,e),r}flush(){this.alive&&(this.flushed=!0,this.pending<=0&&!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0))}close(){if(this.alive){for(let e=0,r=this.cleanups.length;e<r;e++)this.cleanups[e]();!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0),this.alive=!1}}};
1
+ "use strict";var Ie=Object.defineProperty;var ir=Object.getOwnPropertyDescriptor;var ar=Object.getOwnPropertyNames;var lr=Object.prototype.hasOwnProperty;var dr=(n,e)=>{for(var r in e)Ie(n,r,{get:e[r],enumerable:!0})},ur=(n,e,r,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of ar(e))!lr.call(n,s)&&s!==r&&Ie(n,s,{get:()=>e[s],enumerable:!(t=ir(e,s))||t.enumerable});return n};var cr=n=>ur(Ie({},"__esModule",{value:!0}),n);var _r={};dr(_r,{Feature:()=>b,Serializer:()=>q,compileJSON:()=>Tr,createPlugin:()=>gr,createReference:()=>Te,createStream:()=>E,crossSerialize:()=>Fr,crossSerializeAsync:()=>Dr,crossSerializeStream:()=>Oe,deserialize:()=>Cr,fromCrossJSON:()=>Mr,fromJSON:()=>kr,getCrossReferenceHeader:()=>ze,resolvePlugins:()=>c,serialize:()=>wr,serializeAsync:()=>Pr,toCrossJSON:()=>Vr,toCrossJSONAsync:()=>Br,toCrossJSONStream:()=>jr,toJSON:()=>Or,toJSONAsync:()=>zr});module.exports=cr(_r);var b=(o=>(o[o.AggregateError=1]="AggregateError",o[o.ArrowFunction=2]="ArrowFunction",o[o.ErrorPrototypeStack=4]="ErrorPrototypeStack",o[o.ObjectAssign=8]="ObjectAssign",o[o.BigIntTypedArray=16]="BigIntTypedArray",o))(b||{});function f(n,e){if(!n)throw e}function fr(n){switch(n){case'"':return'\\"';case"\\":return"\\\\";case`
2
+ `:return"\\n";case"\r":return"\\r";case"\b":return"\\b";case" ":return"\\t";case"\f":return"\\f";case"<":return"\\x3C";case"\u2028":return"\\u2028";case"\u2029":return"\\u2029";default:return}}function u(n){let e="",r=0,t;for(let s=0,o=n.length;s<o;s++)t=fr(n[s]),t&&(e+=n.slice(r,s)+t,r=s+1);return r===0?e=n:e+=n.slice(r),e}function pr(n){switch(n){case"\\\\":return"\\";case'\\"':return'"';case"\\n":return`
3
+ `;case"\\r":return"\r";case"\\b":return"\b";case"\\t":return" ";case"\\f":return"\f";case"\\x3C":return"<";case"\\u2028":return"\u2028";case"\\u2029":return"\u2029";default:return n}}function S(n){return n.replace(/(\\\\|\\"|\\n|\\r|\\b|\\t|\\f|\\u2028|\\u2029|\\x3C)/g,pr)}var x="__SEROVAL_REFS__",K="$R",Z=`self.${K}`;function ze(n){return n==null?`${Z}=${Z}||[]`:`(${Z}=${Z}||{})["${u(n)}"]=[]`}var Ee=new Map,A=new Map;function Te(n,e){return Ee.set(e,n),A.set(n,e),e}function X(n){return Ee.has(n)}function mr(n){return A.has(n)}function ke(n){return f(X(n),new Error("Missing reference id")),Ee.get(n)}function Fe(n){return f(mr(n),new Error("Missing reference for id:"+n)),A.get(n)}typeof globalThis!="undefined"?Object.defineProperty(globalThis,x,{value:A,configurable:!0,writable:!1,enumerable:!1}):typeof window!="undefined"?Object.defineProperty(window,x,{value:A,configurable:!0,writable:!1,enumerable:!1}):typeof self!="undefined"?Object.defineProperty(self,x,{value:A,configurable:!0,writable:!1,enumerable:!1}):typeof global!="undefined"&&Object.defineProperty(global,x,{value:A,configurable:!0,writable:!1,enumerable:!1});function gr(n){return n}function De(n,e){for(let r=0,t=e.length;r<t;r++){let s=e[r];n.has(s)||(n.add(s),s.extends&&De(n,s.extends))}}function c(n){if(n){let e=new Set;return De(e,n),[...e]}}var{toString:Sr}=Object.prototype,p=class extends Error{constructor(r){super('Unsupported type "'+Sr.call(r)+'"');this.value=r}};var Ve={0:"Symbol.asyncIterator",1:"Symbol.hasInstance",2:"Symbol.isConcatSpreadable",3:"Symbol.iterator",4:"Symbol.match",5:"Symbol.matchAll",6:"Symbol.replace",7:"Symbol.search",8:"Symbol.species",9:"Symbol.split",10:"Symbol.toPrimitive",11:"Symbol.toStringTag",12:"Symbol.unscopables"},L={[Symbol.asyncIterator]:0,[Symbol.hasInstance]:1,[Symbol.isConcatSpreadable]:2,[Symbol.iterator]:3,[Symbol.match]:4,[Symbol.matchAll]:5,[Symbol.replace]:6,[Symbol.search]:7,[Symbol.species]:8,[Symbol.split]:9,[Symbol.toPrimitive]:10,[Symbol.toStringTag]:11,[Symbol.unscopables]:12},Be={0:Symbol.asyncIterator,1:Symbol.hasInstance,2:Symbol.isConcatSpreadable,3:Symbol.iterator,4:Symbol.match,5:Symbol.matchAll,6:Symbol.replace,7:Symbol.search,8:Symbol.species,9:Symbol.split,10:Symbol.toPrimitive,11:Symbol.toStringTag,12:Symbol.unscopables},je={2:"!0",3:"!1",1:"void 0",0:"null",4:"-0",5:"1/0",6:"-1/0",7:"0/0"},Me={2:!0,3:!1,1:void 0,0:null,4:-0,5:1/0,6:-1/0,7:NaN};var Q={0:"Error",1:"EvalError",2:"RangeError",3:"ReferenceError",4:"SyntaxError",5:"TypeError",6:"URIError"},_e={0:Error,1:EvalError,2:RangeError,3:ReferenceError,4:SyntaxError,5:TypeError,6:URIError};function h(n){return{t:2,i:void 0,s:n,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}var y=h(2),v=h(3),ee=h(1),re=h(0),Ue=h(4),We=h(5),Ke=h(6),Le=h(7);function te(n){return n instanceof EvalError?1:n instanceof RangeError?2:n instanceof ReferenceError?3:n instanceof SyntaxError?4:n instanceof TypeError?5:n instanceof URIError?6:0}function hr(n){let e=Q[te(n)];return n.name!==e?{name:n.name}:n.constructor.name!==e?{name:n.constructor.name}:{}}function z(n,e){let r=hr(n),t=Object.getOwnPropertyNames(n);for(let s=0,o=t.length,i;s<o;s++)i=t[s],i!=="name"&&i!=="message"&&(i==="stack"?e&4&&(r=r||{},r[i]=n[i]):(r=r||{},r[i]=n[i]));return r}function ne(n){return Object.isFrozen(n)?3:Object.isSealed(n)?2:Object.isExtensible(n)?0:1}function se(n){switch(n){case 1/0:return We;case-1/0:return Ke}return n!==n?Le:Object.is(n,-0)?Ue:{t:0,i:void 0,s:n,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function N(n){return{t:1,i:void 0,s:u(n),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function oe(n){return{t:3,i:void 0,s:""+n,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function Ye(n){return{t:4,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function ie(n,e){return{t:5,i:n,s:e.toISOString(),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,f:void 0,a:void 0,b:void 0,o:void 0}}function ae(n,e){return{t:6,i:n,s:void 0,l:void 0,c:u(e.source),m:e.flags,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function le(n,e){let r=new Uint8Array(e),t=r.length,s=new Array(t);for(let o=0;o<t;o++)s[o]=r[o];return{t:19,i:n,s,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function Ge(n,e){return f(e in L,new Error("Only well-known symbols are supported.")),{t:17,i:n,s:L[e],l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function Re(n,e){return{t:18,i:n,s:u(ke(e)),l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function T(n,e,r){return{t:25,i:n,s:r,l:void 0,c:u(e),m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function de(n,e,r){return{t:9,i:n,s:void 0,l:e.length,c:void 0,m:void 0,p:void 0,e:void 0,a:r,f:void 0,b:void 0,o:ne(e)}}function ue(n,e){return{t:21,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:e,b:void 0,o:void 0}}function ce(n,e,r){return{t:15,i:n,s:void 0,l:e.length,c:e.constructor.name,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:e.byteOffset,o:void 0}}function fe(n,e,r){return{t:16,i:n,s:void 0,l:e.length,c:e.constructor.name,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:e.byteOffset,o:void 0}}function pe(n,e,r){return{t:20,i:n,s:void 0,l:e.byteLength,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:r,b:e.byteOffset,o:void 0}}function me(n,e,r){return{t:13,i:n,s:te(e),l:void 0,c:void 0,m:u(e.message),p:r,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function ge(n,e,r){return{t:14,i:n,s:te(e),l:void 0,c:void 0,m:u(e.message),p:r,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}function Se(n,e,r){return{t:7,i:n,s:void 0,l:e,c:void 0,m:void 0,p:void 0,e:void 0,a:r,f:void 0,b:void 0,o:void 0}}function k(n,e){return{t:28,i:void 0,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[n,e],f:void 0,b:void 0,o:void 0}}function F(n,e){return{t:30,i:void 0,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[n,e],f:void 0,b:void 0,o:void 0}}function D(n,e,r){return{t:31,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:r,f:e,b:void 0,o:void 0}}function he(n,e){return{t:32,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:e,b:void 0,o:void 0}}function ye(n,e){return{t:33,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:e,b:void 0,o:void 0}}function ve(n,e){return{t:34,i:n,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:e,b:void 0,o:void 0}}function V(n){let e=[],r=-1,t=-1,s=n[Symbol.iterator]();for(;;)try{let o=s.next();if(e.push(o.value),o.done){t=e.length-1;break}}catch(o){r=e.length,e.push(o)}return{v:e,t:r,d:t}}function He(n){return()=>{let e=0;return{[Symbol.iterator](){return this},next(){if(e>n.d)return{done:!0,value:void 0};let r=e++,t=n.v[r];if(r===n.t)throw t;return{done:r===n.d,value:t}}}}}var $e={},qe={};var Ze={0:{},1:{},2:{},3:{},4:{}};var B=class{constructor(e){this.marked=new Set;this.plugins=e.plugins,this.features=31^(e.disabledFeatures||0),this.refs=e.refs||new Map}markRef(e){this.marked.add(e)}isMarked(e){return this.marked.has(e)}getIndexedValue(e){let r=this.refs.get(e);if(r!=null)return this.markRef(r),{type:1,value:Ye(r)};let t=this.refs.size;return this.refs.set(e,t),{type:0,value:t}}getReference(e){let r=this.getIndexedValue(e);return r.type===1?r:X(e)?{type:2,value:Re(r.value,e)}:r}getStrictReference(e){f(X(e),new Error("Cannot serialize "+typeof e+" without reference ID."));let r=this.getIndexedValue(e);return r.type===1?r.value:Re(r.value,e)}parseFunction(e){return this.getStrictReference(e)}parseWellKnownSymbol(e){let r=this.getReference(e);return r.type!==0?r.value:(f(e in L,new Error("Cannot serialized unsupported symbol.")),Ge(r.value,e))}parseSpecialReference(e){let r=this.getIndexedValue(Ze[e]);return r.type===1?r.value:{t:26,i:r.value,s:e,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:void 0,b:void 0,o:void 0}}parseIteratorFactory(){let e=this.getIndexedValue($e);return e.type===1?e.value:{t:27,i:e.value,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:this.parseWellKnownSymbol(Symbol.iterator),b:void 0,o:void 0}}parseAsyncIteratorFactory(){let e=this.getIndexedValue(qe);return e.type===1?e.value:{t:29,i:e.value,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[this.parseSpecialReference(1),this.parseWellKnownSymbol(Symbol.asyncIterator)],f:void 0,b:void 0,o:void 0}}createObjectNode(e,r,t,s){return{t:t?11:10,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:s,e:void 0,a:void 0,f:void 0,b:void 0,o:ne(r)}}createMapNode(e,r,t,s){return{t:8,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:{k:r,v:t,s},a:void 0,f:this.parseSpecialReference(0),b:void 0,o:void 0}}createPromiseConstructorNode(e){return{t:22,i:e,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:this.parseSpecialReference(1),b:void 0,o:void 0}}};async function we(n){try{return[1,await n]}catch(e){return[0,e]}}function J(){let n,e;return{promise:new Promise((r,t)=>{n=r,e=t}),resolve(r){n(r)},reject(r){e(r)}}}function be(n){return"__SEROVAL_STREAM__"in n}function E(){let n=new Set,e=[],r=!0,t=!1;function s(a){for(let l of n.keys())l.next(a)}function o(a){for(let l of n.keys())l.throw(a)}function i(a){for(let l of n.keys())l.return(a)}return{__SEROVAL_STREAM__:!0,on(a){r&&n.add(a);for(let l=0,d=e.length;l<d;l++){let g=e[l];l===d-1?t?a.return(g):a.throw(g):a.next(g)}return()=>{r&&n.delete(a)}},next(a){r&&(e.push(a),s(a))},throw(a){r&&(e.push(a),o(a),r=!1,t=!1,n.clear())},return(a){r&&(e.push(a),i(a),r=!1,t=!0,n.clear())}}}function xe(n){let e=E(),r=n[Symbol.asyncIterator]();async function t(){try{let s=await r.next();s.done?e.return(s.value):(e.next(s.value),await t())}catch(s){e.throw(s)}}return t().catch(()=>{}),e}function Xe(n){return()=>{let e=[],r=[],t=0,s=-1,o=!1;function i(){for(let l=0,d=r.length;l<d;l++)r[l].resolve({done:!0,value:void 0})}n.on({next(l){let d=r.shift();d&&d.resolve({done:!1,value:l}),e.push(l)},throw(l){let d=r.shift();d&&d.reject(l),i(),s=e.length,e.push(l),o=!0},return(l){let d=r.shift();d&&d.resolve({done:!0,value:l}),i(),s=e.length,e.push(l)}});function a(){let l=t++,d=e[l];if(l!==s)return{done:!1,value:d};if(o)throw d;return{done:!0,value:d}}return{[Symbol.asyncIterator](){return this},async next(){if(s===-1){let l=t++;if(l>=e.length){let d=J();return r.push(d),await d.promise}return{done:!1,value:e[l]}}return t>s?{done:!0,value:void 0}:a()}}}}var R=class extends B{async parseItems(e){let r=[];for(let t=0,s=e.length;t<s;t++)t in e&&(r[t]=await this.parse(e[t]));return r}async parseArray(e,r){return de(e,r,await this.parseItems(r))}async parseProperties(e){let r=Object.entries(e),t=[],s=[];for(let i=0,a=r.length;i<a;i++)t.push(u(r[i][0])),s.push(await this.parse(r[i][1]));let o=Symbol.iterator;return o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(k(this.parseIteratorFactory(),await this.parse(V(e))))),o=Symbol.asyncIterator,o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(F(this.parseAsyncIteratorFactory(),await this.parse(xe(e))))),o=Symbol.toStringTag,o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(N(e[o]))),o=Symbol.isConcatSpreadable,o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(e[o]?y:v)),{k:t,v:s,s:t.length}}async parsePlainObject(e,r,t){return this.createObjectNode(e,r,t,await this.parseProperties(r))}async parseBoxed(e,r){return ue(e,await this.parse(r.valueOf()))}async parseTypedArray(e,r){return ce(e,r,await this.parse(r.buffer))}async parseBigIntTypedArray(e,r){return fe(e,r,await this.parse(r.buffer))}async parseDataView(e,r){return pe(e,r,await this.parse(r.buffer))}async parseError(e,r){let t=z(r,this.features);return me(e,r,t?await this.parseProperties(t):void 0)}async parseAggregateError(e,r){let t=z(r,this.features);return ge(e,r,t?await this.parseProperties(t):void 0)}async parseMap(e,r){let t=[],s=[];for(let[o,i]of r.entries())t.push(await this.parse(o)),s.push(await this.parse(i));return this.createMapNode(e,t,s,r.size)}async parseSet(e,r){let t=[];for(let s of r.keys())t.push(await this.parse(s));return Se(e,r.size,t)}async parsePromise(e,r){let[t,s]=await we(r);return{t:12,i:e,s:t,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:void 0,f:await this.parse(s),b:void 0,o:void 0}}async parsePlugin(e,r){let t=this.plugins;if(t)for(let s=0,o=t.length;s<o;s++){let i=t[s];if(i.parse.async&&i.test(r))return T(e,i.tag,await i.parse.async(r,this,{id:e}))}}async parseStream(e,r){return D(e,this.parseSpecialReference(4),await new Promise((t,s)=>{let o=[],i=r.on({next:a=>{this.markRef(e),this.parse(a).then(l=>{o.push(he(e,l))},l=>{s(l),i()})},throw:a=>{this.markRef(e),this.parse(a).then(l=>{o.push(ye(e,l)),t(o),i()},l=>{s(l),i()})},return:a=>{this.markRef(e),this.parse(a).then(l=>{o.push(ve(e,l)),t(o),i()},l=>{s(l),i()})}})}))}async parseObject(e,r){if(Array.isArray(r))return this.parseArray(e,r);if(be(r))return this.parseStream(e,r);let t=await this.parsePlugin(e,r);if(t)return t;let s=r.constructor;switch(s){case Object:return this.parsePlainObject(e,r,!1);case void 0:return this.parsePlainObject(e,r,!0);case Date:return ie(e,r);case RegExp:return ae(e,r);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return this.parseError(e,r);case Number:case Boolean:case String:case BigInt:return this.parseBoxed(e,r);case ArrayBuffer:return le(e,r);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return this.parseTypedArray(e,r);case DataView:return this.parseDataView(e,r);case Map:return this.parseMap(e,r);case Set:return this.parseSet(e,r);default:break}if(s===Promise||r instanceof Promise)return this.parsePromise(e,r);let o=this.features;if(o&16)switch(s){case BigInt64Array:case BigUint64Array:return this.parseBigIntTypedArray(e,r);default:break}if(o&1&&typeof AggregateError!="undefined"&&(s===AggregateError||r instanceof AggregateError))return this.parseAggregateError(e,r);if(r instanceof Error)return this.parseError(e,r);if(Symbol.iterator in r||Symbol.asyncIterator in r)return this.parsePlainObject(e,r,!!s);throw new p(r)}async parse(e){switch(typeof e){case"boolean":return e?y:v;case"undefined":return ee;case"string":return N(e);case"number":return se(e);case"bigint":return oe(e);case"object":{if(e){let r=this.getReference(e);return r.type===0?await this.parseObject(r.value,e):r.value}return re}case"symbol":return this.parseWellKnownSymbol(e);case"function":return this.parseFunction(e);default:throw new p(e)}}};var j=class extends R{constructor(){super(...arguments);this.mode="vanilla"}};function Qe(n){switch(n){case"Int8Array":return Int8Array;case"Int16Array":return Int16Array;case"Int32Array":return Int32Array;case"Uint8Array":return Uint8Array;case"Uint16Array":return Uint16Array;case"Uint32Array":return Uint32Array;case"Uint8ClampedArray":return Uint8ClampedArray;case"Float32Array":return Float32Array;case"Float64Array":return Float64Array;case"BigInt64Array":return BigInt64Array;case"BigUint64Array":return BigUint64Array;default:throw new Error(`Unknown TypedArray "${n}"`)}}function er(n,e){switch(e){case 3:return Object.freeze(n);case 1:return Object.preventExtensions(n);case 2:return Object.seal(n);default:return n}}var w=class{constructor(e){this.plugins=e.plugins,this.refs=e.refs||new Map}deserializeReference(e){return this.assignIndexedValue(e.i,Fe(S(e.s)))}deserializeArray(e){let r=e.l,t=this.assignIndexedValue(e.i,new Array(r)),s;for(let o=0;o<r;o++)s=e.a[o],s&&(t[o]=this.deserialize(s));return er(t,e.o),t}deserializeProperties(e,r){let t=e.s;if(t){let s=e.k,o=e.v;for(let i=0,a;i<t;i++)a=s[i],typeof a=="string"?r[S(a)]=this.deserialize(o[i]):r[this.deserialize(a)]=this.deserialize(o[i])}return r}deserializeObject(e){let r=this.assignIndexedValue(e.i,e.t===10?{}:Object.create(null));return this.deserializeProperties(e.p,r),er(r,e.o),r}deserializeDate(e){return this.assignIndexedValue(e.i,new Date(e.s))}deserializeRegExp(e){return this.assignIndexedValue(e.i,new RegExp(S(e.c),e.m))}deserializeSet(e){let r=this.assignIndexedValue(e.i,new Set),t=e.a;for(let s=0,o=e.l;s<o;s++)r.add(this.deserialize(t[s]));return r}deserializeMap(e){let r=this.assignIndexedValue(e.i,new Map),t=e.e.k,s=e.e.v;for(let o=0,i=e.e.s;o<i;o++)r.set(this.deserialize(t[o]),this.deserialize(s[o]));return r}deserializeArrayBuffer(e){let r=new Uint8Array(e.s);return this.assignIndexedValue(e.i,r.buffer)}deserializeTypedArray(e){let r=Qe(e.c),t=this.deserialize(e.f);return this.assignIndexedValue(e.i,new r(t,e.b,e.l))}deserializeDataView(e){let r=this.deserialize(e.f);return this.assignIndexedValue(e.i,new DataView(r,e.b,e.l))}deserializeDictionary(e,r){if(e.p){let t=this.deserializeProperties(e.p,{});Object.assign(r,t)}return r}deserializeAggregateError(e){let r=this.assignIndexedValue(e.i,new AggregateError([],S(e.m)));return this.deserializeDictionary(e,r)}deserializeError(e){let r=_e[e.s],t=this.assignIndexedValue(e.i,new r(S(e.m)));return this.deserializeDictionary(e,t)}deserializePromise(e){let r=J(),t=this.assignIndexedValue(e.i,r),s=this.deserialize(e.f);return e.s?r.resolve(s):r.reject(s),t.promise}deserializeBoxed(e){return this.assignIndexedValue(e.i,Object(this.deserialize(e.f)))}deserializePlugin(e){let r=this.plugins;if(r){let t=S(e.c);for(let s=0,o=r.length;s<o;s++){let i=r[s];if(i.tag===t)return this.assignIndexedValue(e.i,i.deserialize(e.s,this,{id:e.i}))}}throw new Error('Missing plugin for tag "'+e.c+'".')}deserializePromiseConstructor(e){return this.assignIndexedValue(e.i,J()).promise}deserializePromiseResolve(e){let r=this.refs.get(e.i);f(r,new Error("Missing Promise instance.")),r.resolve(this.deserialize(e.a[1]))}deserializePromiseReject(e){let r=this.refs.get(e.i);f(r,new Error("Missing Promise instance.")),r.reject(this.deserialize(e.a[1]))}deserializeIteratorFactoryInstance(e){this.deserialize(e.a[0]);let r=this.deserialize(e.a[1]);return He(r)}deserializeAsyncIteratorFactoryInstance(e){this.deserialize(e.a[0]);let r=this.deserialize(e.a[1]);return Xe(r)}deserializeStreamConstructor(e){let r=this.assignIndexedValue(e.i,E()),t=e.a.length;if(t)for(let s=0;s<t;s++)this.deserialize(e.a[s]);return r}deserializeStreamNext(e){let r=this.refs.get(e.i);f(r,new Error("Missing Stream instance.")),r.next(this.deserialize(e.f))}deserializeStreamThrow(e){let r=this.refs.get(e.i);f(r,new Error("Missing Stream instance.")),r.throw(this.deserialize(e.f))}deserializeStreamReturn(e){let r=this.refs.get(e.i);f(r,new Error("Missing Stream instance.")),r.return(this.deserialize(e.f))}deserializeIteratorFactory(e){this.deserialize(e.f)}deserializeAsyncIteratorFactory(e){this.deserialize(e.a[1])}deserialize(e){switch(e.t){case 2:return Me[e.s];case 0:return e.s;case 1:return S(e.s);case 3:return BigInt(e.s);case 4:return this.refs.get(e.i);case 18:return this.deserializeReference(e);case 9:return this.deserializeArray(e);case 10:case 11:return this.deserializeObject(e);case 5:return this.deserializeDate(e);case 6:return this.deserializeRegExp(e);case 7:return this.deserializeSet(e);case 8:return this.deserializeMap(e);case 19:return this.deserializeArrayBuffer(e);case 16:case 15:return this.deserializeTypedArray(e);case 20:return this.deserializeDataView(e);case 14:return this.deserializeAggregateError(e);case 13:return this.deserializeError(e);case 12:return this.deserializePromise(e);case 17:return Be[e.s];case 21:return this.deserializeBoxed(e);case 25:return this.deserializePlugin(e);case 22:return this.deserializePromiseConstructor(e);case 23:return this.deserializePromiseResolve(e);case 24:return this.deserializePromiseReject(e);case 28:return this.deserializeIteratorFactoryInstance(e);case 30:return this.deserializeAsyncIteratorFactoryInstance(e);case 31:return this.deserializeStreamConstructor(e);case 32:return this.deserializeStreamNext(e);case 33:return this.deserializeStreamThrow(e);case 34:return this.deserializeStreamReturn(e);case 27:return this.deserializeIteratorFactory(e);case 29:return this.deserializeAsyncIteratorFactory(e);default:throw new Error("invariant")}}};var Y=class extends w{constructor(r){super(r);this.mode="vanilla";this.marked=new Set(r.markedRefs)}assignIndexedValue(r,t){return this.marked.has(r)&&this.refs.set(r,t),t}};var vr=/^[$A-Z_][0-9A-Z_$]*$/i;function Pe(n){let e=n[0];return(e==="$"||e==="_"||e>="A"&&e<="Z"||e>="a"&&e<="z")&&vr.test(n)}function G(n){switch(n.t){case 0:return n.s+"="+n.v;case 2:return n.s+".set("+n.k+","+n.v+")";case 1:return n.s+".add("+n.v+")";case 3:return n.s+".delete("+n.k+")"}}function Nr(n){let e=[],r=n[0];for(let t=1,s=n.length,o,i=r;t<s;t++)o=n[t],o.t===0&&o.v===i.v?r={t:0,s:o.s,k:void 0,v:G(r)}:o.t===2&&o.s===i.s?r={t:2,s:G(r),k:o.k,v:o.v}:o.t===1&&o.s===i.s?r={t:1,s:G(r),k:void 0,v:o.v}:o.t===3&&o.s===i.s?r={t:3,s:G(r),k:o.k,v:void 0}:(e.push(r),r=o),i=o;return e.push(r),e}function rr(n){if(n.length){let e="",r=Nr(n);for(let t=0,s=r.length;t<s;t++)e+=G(r[t])+",";return e}}var br="Object.create(null)",xr="new Set",Ar="new Map",Ir="Promise.resolve",Er="Promise.reject",Rr={3:"Object.freeze",2:"Object.seal",1:"Object.preventExtensions",0:void 0},P=class{constructor(e){this.stack=[];this.flags=[];this.assignments=[];this.plugins=e.plugins,this.features=e.features,this.marked=new Set(e.markedRefs)}createFunction(e,r){return this.features&2?(e.length===1?e[0]:"("+e.join(",")+")")+"=>"+r:"function("+e.join(",")+"){return "+r+"}"}createEffectfulFunction(e,r){return this.features&2?(e.length===1?e[0]:"("+e.join(",")+")")+"=>{"+r+"}":"function("+e.join(",")+"){"+r+"}"}markRef(e){this.marked.add(e)}isMarked(e){return this.marked.has(e)}pushObjectFlag(e,r){e!==0&&(this.markRef(r),this.flags.push({type:e,value:this.getRefParam(r)}))}resolveFlags(){let e="";for(let r=0,t=this.flags,s=t.length;r<s;r++){let o=t[r];e+=Rr[o.type]+"("+o.value+"),"}return e}resolvePatches(){let e=rr(this.assignments),r=this.resolveFlags();return e?r?e+r:e:r}createAssignment(e,r){this.assignments.push({t:0,s:e,k:void 0,v:r})}createAddAssignment(e,r){this.assignments.push({t:1,s:this.getRefParam(e),k:void 0,v:r})}createSetAssignment(e,r,t){this.assignments.push({t:2,s:this.getRefParam(e),k:r,v:t})}createDeleteAssignment(e,r){this.assignments.push({t:3,s:this.getRefParam(e),k:r,v:void 0})}createArrayAssign(e,r,t){this.createAssignment(this.getRefParam(e)+"["+r+"]",t)}createObjectAssign(e,r,t){this.createAssignment(this.getRefParam(e)+"."+r,t)}isIndexedValueInStack(e){return e.t===4&&this.stack.includes(e.i)}serializeReference(e){return this.assignIndexedValue(e.i,x+'.get("'+e.s+'")')}serializeArrayItem(e,r,t){return r?this.isIndexedValueInStack(r)?(this.markRef(e),this.createArrayAssign(e,t,this.getRefParam(r.i)),""):this.serialize(r):""}serializeArray(e){let r=e.i;if(e.l){this.stack.push(r);let t=e.a,s=this.serializeArrayItem(r,t[0],0),o=s==="";for(let i=1,a=e.l,l;i<a;i++)l=this.serializeArrayItem(r,t[i],i),s+=","+l,o=l==="";return this.stack.pop(),this.pushObjectFlag(e.o,e.i),this.assignIndexedValue(r,"["+s+(o?",]":"]"))}return this.assignIndexedValue(r,"[]")}serializeProperty(e,r,t){if(typeof r=="string"){let s=Number(r),o=s>=0||Pe(r);if(this.isIndexedValueInStack(t)){let i=this.getRefParam(t.i);return this.markRef(e.i),o&&s!==s?this.createObjectAssign(e.i,r,i):this.createArrayAssign(e.i,o?r:'"'+r+'"',i),""}return(o?r:'"'+r+'"')+":"+this.serialize(t)}return"["+this.serialize(r)+"]:"+this.serialize(t)}serializeProperties(e,r){let t=r.s;if(t){let s=r.k,o=r.v;this.stack.push(e.i);let i=this.serializeProperty(e,s[0],o[0]);for(let a=1,l=i;a<t;a++)l=this.serializeProperty(e,s[a],o[a]),i+=(l&&i&&",")+l;return this.stack.pop(),"{"+i+"}"}return"{}"}serializeObject(e){return this.pushObjectFlag(e.o,e.i),this.assignIndexedValue(e.i,this.serializeProperties(e,e.p))}serializeWithObjectAssign(e,r,t){let s=this.serializeProperties(e,r);return s!=="{}"?"Object.assign("+t+","+s+")":t}serializeStringKeyAssignment(e,r,t,s){let o=this.serialize(s),i=Number(t),a=i>=0||Pe(t);if(this.isIndexedValueInStack(s))a&&i!==i?this.createObjectAssign(e.i,t,o):this.createArrayAssign(e.i,a?t:'"'+t+'"',o);else{let l=this.assignments;this.assignments=r,a?this.createObjectAssign(e.i,t,o):this.createArrayAssign(e.i,a?t:'"'+t+'"',o),this.assignments=l}}serializeAssignment(e,r,t,s){if(typeof t=="string")this.serializeStringKeyAssignment(e,r,t,s);else{let o=this.stack;this.stack=[];let i=this.serialize(s);this.stack=o;let a=this.assignments;this.assignments=r,this.createArrayAssign(e.i,this.serialize(t),i),this.assignments=a}}serializeAssignments(e,r){let t=r.s;if(t){let s=[],o=r.k,i=r.v;this.stack.push(e.i);for(let a=0;a<t;a++)this.serializeAssignment(e,s,o[a],i[a]);return this.stack.pop(),rr(s)}}serializeDictionary(e,r){if(e.p)if(this.features&8)r=this.serializeWithObjectAssign(e,e.p,r);else{this.markRef(e.i);let t=this.serializeAssignments(e,e.p);if(t)return"("+this.assignIndexedValue(e.i,r)+","+t+this.getRefParam(e.i)+")"}return this.assignIndexedValue(e.i,r)}serializeNullConstructor(e){return this.pushObjectFlag(e.o,e.i),this.serializeDictionary(e,br)}serializeDate(e){return this.assignIndexedValue(e.i,'new Date("'+e.s+'")')}serializeRegExp(e){return this.assignIndexedValue(e.i,"/"+e.c+"/"+e.m)}serializeSetItem(e,r){return this.isIndexedValueInStack(r)?(this.markRef(e),this.createAddAssignment(e,this.getRefParam(r.i)),""):this.serialize(r)}serializeSet(e){let r=xr,t=e.l,s=e.i;if(t){let o=e.a;this.stack.push(s);let i=this.serializeSetItem(s,o[0]);for(let a=1,l=i;a<t;a++)l=this.serializeSetItem(s,o[a]),i+=(l&&i&&",")+l;this.stack.pop(),i&&(r+="(["+i+"])")}return this.assignIndexedValue(s,r)}serializeMapEntry(e,r,t,s){if(this.isIndexedValueInStack(r)){let o=this.getRefParam(r.i);if(this.markRef(e),this.isIndexedValueInStack(t)){let a=this.getRefParam(t.i);return this.createSetAssignment(e,o,a),""}if(t.t!==4&&t.i!=null&&this.isMarked(t.i)){let a="("+this.serialize(t)+",["+s+","+s+"])";return this.createSetAssignment(e,o,this.getRefParam(t.i)),this.createDeleteAssignment(e,s),a}let i=this.stack;return this.stack=[],this.createSetAssignment(e,o,this.serialize(t)),this.stack=i,""}if(this.isIndexedValueInStack(t)){let o=this.getRefParam(t.i);if(this.markRef(e),r.t!==4&&r.i!=null&&this.isMarked(r.i)){let a="("+this.serialize(r)+",["+s+","+s+"])";return this.createSetAssignment(e,this.getRefParam(r.i),o),this.createDeleteAssignment(e,s),a}let i=this.stack;return this.stack=[],this.createSetAssignment(e,this.serialize(r),o),this.stack=i,""}return"["+this.serialize(r)+","+this.serialize(t)+"]"}serializeMap(e){let r=Ar,t=e.e.s,s=e.i,o=e.f,i=this.getRefParam(o.i);if(t){let a=e.e.k,l=e.e.v;this.stack.push(s);let d=this.serializeMapEntry(s,a[0],l[0],i);for(let g=1,Ae=d;g<t;g++)Ae=this.serializeMapEntry(s,a[g],l[g],i),d+=(Ae&&d&&",")+Ae;this.stack.pop(),d&&(r+="(["+d+"])")}return o.t===26&&(this.markRef(o.i),r="("+this.serialize(o)+","+r+")"),this.assignIndexedValue(s,r)}serializeArrayBuffer(e){let r="new Uint8Array(",t=e.s,s=t.length;if(s){r+="["+t[0];for(let o=1;o<s;o++)r+=","+t[o];r+="]"}return this.assignIndexedValue(e.i,r+").buffer")}serializeTypedArray(e){return this.assignIndexedValue(e.i,"new "+e.c+"("+this.serialize(e.f)+","+e.b+","+e.l+")")}serializeDataView(e){return this.assignIndexedValue(e.i,"new DataView("+this.serialize(e.f)+","+e.b+","+e.l+")")}serializeAggregateError(e){let r=e.i;this.stack.push(r);let t=this.serializeDictionary(e,'new AggregateError([],"'+e.m+'")');return this.stack.pop(),t}serializeError(e){return this.serializeDictionary(e,"new "+Q[e.s]+'("'+e.m+'")')}serializePromise(e){let r,t=e.f,s=e.i,o=e.s?Ir:Er;if(this.isIndexedValueInStack(t)){let i=this.getRefParam(t.i);r=o+(e.s?"().then("+this.createFunction([],i)+")":"().catch("+this.createEffectfulFunction([],"throw "+i)+")")}else{this.stack.push(s);let i=this.serialize(t);this.stack.pop(),r=o+"("+i+")"}return this.assignIndexedValue(s,r)}serializeWellKnownSymbol(e){return this.assignIndexedValue(e.i,Ve[e.s])}serializeBoxed(e){return this.assignIndexedValue(e.i,"Object("+this.serialize(e.f)+")")}serializePlugin(e){let r=this.plugins;if(r)for(let t=0,s=r.length;t<s;t++){let o=r[t];if(o.tag===e.c)return this.assignIndexedValue(e.i,o.serialize(e.s,this,{id:e.i}))}throw new Error('Missing plugin for tag "'+e.c+'".')}getConstructor(e){let r=this.serialize(e);return r===this.getRefParam(e.i)?r:"("+r+")"}serializePromiseConstructor(e){return this.assignIndexedValue(e.i,this.getConstructor(e.f)+"()")}serializePromiseResolve(e){return this.getConstructor(e.a[0])+"("+this.getRefParam(e.i)+","+this.serialize(e.a[1])+")"}serializePromiseReject(e){return this.getConstructor(e.a[0])+"("+this.getRefParam(e.i)+","+this.serialize(e.a[1])+")"}serializeSpecialReferenceValue(e){switch(e){case 0:return"[]";case 1:return this.createFunction(["s","f","p"],"((p=new Promise("+this.createEffectfulFunction(["a","b"],"s=a,f=b")+")).s=s,p.f=f,p)");case 2:return this.createEffectfulFunction(["p","d"],'p.s(d),p.status="success",p.value=d;delete p.s;delete p.f');case 3:return this.createEffectfulFunction(["p","d"],'p.f(d),p.status="failure",p.value=d;delete p.s;delete p.f');case 4:return this.createFunction(["b","a","s","l","p","f","e","n"],"(b=[],a=!0,s=!1,l=[],p=0,f="+this.createEffectfulFunction(["v","m","x"],"for(x=0;x<p;x++)l[x]&&l[x][m](v)")+",n="+this.createEffectfulFunction(["o","x","z","c"],'for(x=0,z=b.length;x<z;x++)(c=b[x],x===z-1?o[s?"return":"throw"](c):o.next(c))')+",e="+this.createFunction(["o","t"],"(a&&(l[t=p++]=o),n(o),"+this.createEffectfulFunction([],"a&&(l[t]=void 0)")+")")+",{__SEROVAL_STREAM__:!0,on:"+this.createFunction(["o"],"e(o)")+",next:"+this.createEffectfulFunction(["v"],'a&&(b.push(v),f(v,"next"))')+",throw:"+this.createEffectfulFunction(["v"],'a&&(b.push(v),f(v,"throw"),a=s=!1,l.length=0)')+",return:"+this.createEffectfulFunction(["v"],'a&&(b.push(v),f(v,"return"),a=!1,s=!0,l.length=0)')+"})");default:return""}}serializeSpecialReference(e){return this.assignIndexedValue(e.i,this.serializeSpecialReferenceValue(e.s))}serializeIteratorFactory(e){let r="",t=!1;return e.f.t!==4&&(this.markRef(e.f.i),r="("+this.serialize(e.f)+",",t=!0),r+=this.assignIndexedValue(e.i,this.createFunction(["s"],this.createFunction(["i","c","d","t"],"(i=0,t={["+this.getRefParam(e.f.i)+"]:"+this.createFunction([],"t")+",next:"+this.createEffectfulFunction([],"if(i>s.d)return{done:!0,value:void 0};if(d=s.v[c=i++],c===s.t)throw d;return{done:c===s.d,value:d}")+"})"))),t&&(r+=")"),r}serializeIteratorFactoryInstance(e){return this.getConstructor(e.a[0])+"("+this.serialize(e.a[1])+")"}serializeAsyncIteratorFactory(e){let r=e.a[0],t=e.a[1],s="";r.t!==4&&(this.markRef(r.i),s+="("+this.serialize(r)),t.t!==4&&(this.markRef(t.i),s+=(s?",":"(")+this.serialize(t)),s&&(s+=",");let o=this.assignIndexedValue(e.i,this.createFunction(["s"],this.createFunction(["b","c","p","d","e","t","f"],"(b=[],c=0,p=[],d=-1,e=!1,f="+this.createEffectfulFunction(["i","l"],"for(i=0,l=p.length;i<l;i++)p[i].s({done:!0,value:void 0})")+",s.on({next:"+this.createEffectfulFunction(["v","t"],"if(t=p.shift())t.s({done:!1,value:v});b.push(v)")+",throw:"+this.createEffectfulFunction(["v","t"],"if(t=p.shift())t.f(v);f(),d=b.length,e=!0,b.push(v)")+",return:"+this.createEffectfulFunction(["v","t"],"if(t=p.shift())t.s({done:!0,value:v});f(),d=b.length,b.push(v)")+"}),t={["+this.getRefParam(t.i)+"]:"+this.createFunction([],"t")+",next:"+this.createEffectfulFunction(["i","t","v"],"if(d===-1){return((i=c++)>=b.length)?(p.push(t="+this.getRefParam(r.i)+"()),t):{done:!0,value:b[i]}}if(c>d)return{done:!0,value:void 0};if(v=b[i=c++],i!==d)return{done:!1,value:v};if(e)throw v;return{done:!0,value:v}")+"})")));return s?s+o+")":o}serializeAsyncIteratorFactoryInstance(e){return this.getConstructor(e.a[0])+"("+this.serialize(e.a[1])+")"}serializeStreamConstructor(e){let r=this.assignIndexedValue(e.i,this.getConstructor(e.f)+"()"),t=e.a.length;if(t){let s=this.serialize(e.a[0]);for(let o=1;o<t;o++)s+=","+this.serialize(e.a[o]);return"("+r+","+s+","+this.getRefParam(e.i)+")"}return r}serializeStreamNext(e){return this.getRefParam(e.i)+".next("+this.serialize(e.f)+")"}serializeStreamThrow(e){return this.getRefParam(e.i)+".throw("+this.serialize(e.f)+")"}serializeStreamReturn(e){return this.getRefParam(e.i)+".return("+this.serialize(e.f)+")"}serialize(e){switch(e.t){case 2:return je[e.s];case 0:return""+e.s;case 1:return'"'+e.s+'"';case 3:return e.s+"n";case 4:return this.getRefParam(e.i);case 18:return this.serializeReference(e);case 9:return this.serializeArray(e);case 10:return this.serializeObject(e);case 11:return this.serializeNullConstructor(e);case 5:return this.serializeDate(e);case 6:return this.serializeRegExp(e);case 7:return this.serializeSet(e);case 8:return this.serializeMap(e);case 19:return this.serializeArrayBuffer(e);case 16:case 15:return this.serializeTypedArray(e);case 20:return this.serializeDataView(e);case 14:return this.serializeAggregateError(e);case 13:return this.serializeError(e);case 12:return this.serializePromise(e);case 17:return this.serializeWellKnownSymbol(e);case 21:return this.serializeBoxed(e);case 22:return this.serializePromiseConstructor(e);case 23:return this.serializePromiseResolve(e);case 24:return this.serializePromiseReject(e);case 25:return this.serializePlugin(e);case 26:return this.serializeSpecialReference(e);case 27:return this.serializeIteratorFactory(e);case 28:return this.serializeIteratorFactoryInstance(e);case 29:return this.serializeAsyncIteratorFactory(e);case 30:return this.serializeAsyncIteratorFactoryInstance(e);case 31:return this.serializeStreamConstructor(e);case 32:return this.serializeStreamNext(e);case 33:return this.serializeStreamThrow(e);case 34:return this.serializeStreamReturn(e);default:throw new Error("invariant")}}};var sr="hjkmoquxzABCDEFGHIJKLNPQRTUVWXYZ$_",tr=sr.length,or="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789$_",nr=or.length;function Ce(n){let e=n%tr,r=sr[e];for(n=(n-e)/tr;n>0;)e=n%nr,r+=or[e],n=(n-e)/nr;return r}var C=class extends P{constructor(){super(...arguments);this.mode="vanilla";this.valid=new Map;this.vars=[]}getRefParam(r){let t=this.valid.get(r);t==null&&(t=this.valid.size,this.valid.set(r,t));let s=this.vars[t];return s==null&&(s=Ce(t),this.vars[t]=s),s}assignIndexedValue(r,t){return this.isMarked(r)?this.getRefParam(r)+"="+t:t}serializePromiseConstructor(r){throw new Error('Unsupported node type "'+r.t+'".')}serializePromiseResolve(r){throw new Error('Unsupported node type "'+r.t+'".')}serializePromiseReject(r){throw new Error('Unsupported node type "'+r.t+'".')}serializeTop(r){let t=this.serialize(r);if(r.i!=null&&this.vars.length){let s=this.resolvePatches(),o=t;if(s){let i=this.getRefParam(r.i);o=t+","+s+i,t.startsWith(i+"=")||(o=i+"="+o)}return"("+this.createFunction(this.vars,"("+o+")")+")()"}return r.t===10?"("+t+")":t}};var m=class extends B{parseItems(e){let r=[];for(let t=0,s=e.length;t<s;t++)t in e&&(r[t]=this.parse(e[t]));return r}parseArray(e,r){return de(e,r,this.parseItems(r))}parseProperties(e){let r=Object.entries(e),t=[],s=[];for(let i=0,a=r.length;i<a;i++)t.push(u(r[i][0])),s.push(this.parse(r[i][1]));let o=Symbol.iterator;return o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(k(this.parseIteratorFactory(),this.parse(V(e))))),o=Symbol.asyncIterator,o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(F(this.parseAsyncIteratorFactory(),this.parse(E())))),o=Symbol.toStringTag,o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(N(e[o]))),o=Symbol.isConcatSpreadable,o in e&&(t.push(this.parseWellKnownSymbol(o)),s.push(e[o]?y:v)),{k:t,v:s,s:t.length}}parsePlainObject(e,r,t){return this.createObjectNode(e,r,t,this.parseProperties(r))}parseBoxed(e,r){return ue(e,this.parse(r.valueOf()))}parseTypedArray(e,r){return ce(e,r,this.parse(r.buffer))}parseBigIntTypedArray(e,r){return fe(e,r,this.parse(r.buffer))}parseDataView(e,r){return pe(e,r,this.parse(r.buffer))}parseError(e,r){let t=z(r,this.features);return me(e,r,t?this.parseProperties(t):void 0)}parseAggregateError(e,r){let t=z(r,this.features);return ge(e,r,t?this.parseProperties(t):void 0)}parseMap(e,r){let t=[],s=[];for(let[o,i]of r.entries())t.push(this.parse(o)),s.push(this.parse(i));return this.createMapNode(e,t,s,r.size)}parseSet(e,r){let t=[];for(let s of r.keys())t.push(this.parse(s));return Se(e,r.size,t)}parsePlugin(e,r){let t=this.plugins;if(t)for(let s=0,o=t.length;s<o;s++){let i=t[s];if(i.parse.sync&&i.test(r))return T(e,i.tag,i.parse.sync(r,this,{id:e}))}}parseStream(e,r){return D(e,this.parseSpecialReference(4),[])}parsePromise(e,r){return this.createPromiseConstructorNode(e)}parseObject(e,r){if(Array.isArray(r))return this.parseArray(e,r);if(be(r))return this.parseStream(e,r);let t=this.parsePlugin(e,r);if(t)return t;let s=r.constructor;switch(s){case Object:return this.parsePlainObject(e,r,!1);case void 0:return this.parsePlainObject(e,r,!0);case Date:return ie(e,r);case RegExp:return ae(e,r);case Error:case EvalError:case RangeError:case ReferenceError:case SyntaxError:case TypeError:case URIError:return this.parseError(e,r);case Number:case Boolean:case String:case BigInt:return this.parseBoxed(e,r);case ArrayBuffer:return le(e,r);case Int8Array:case Int16Array:case Int32Array:case Uint8Array:case Uint16Array:case Uint32Array:case Uint8ClampedArray:case Float32Array:case Float64Array:return this.parseTypedArray(e,r);case DataView:return this.parseDataView(e,r);case Map:return this.parseMap(e,r);case Set:return this.parseSet(e,r);default:break}if(s===Promise||r instanceof Promise)return this.parsePromise(e,r);let o=this.features;if(o&16)switch(s){case BigInt64Array:case BigUint64Array:return this.parseBigIntTypedArray(e,r);default:break}if(o&1&&typeof AggregateError!="undefined"&&(s===AggregateError||r instanceof AggregateError))return this.parseAggregateError(e,r);if(r instanceof Error)return this.parseError(e,r);if(Symbol.iterator in r||Symbol.asyncIterator in r)return this.parsePlainObject(e,r,!!s);throw new p(r)}parse(e){switch(typeof e){case"boolean":return e?y:v;case"undefined":return ee;case"string":return N(e);case"number":return se(e);case"bigint":return oe(e);case"object":{if(e){let r=this.getReference(e);return r.type===0?this.parseObject(r.value,e):r.value}return re}case"symbol":return this.parseWellKnownSymbol(e);case"function":return this.parseFunction(e);default:throw new p(e)}}};var M=class extends m{constructor(){super(...arguments);this.mode="vanilla"}};function wr(n,e={}){let r=c(e.plugins),t=new M({plugins:r,disabledFeatures:e.disabledFeatures}),s=t.parse(n);return new C({plugins:r,features:t.features,markedRefs:t.marked}).serializeTop(s)}async function Pr(n,e={}){let r=c(e.plugins),t=new j({plugins:r,disabledFeatures:e.disabledFeatures}),s=await t.parse(n);return new C({plugins:r,features:t.features,markedRefs:t.marked}).serializeTop(s)}function Cr(n){return(0,eval)(n)}function Or(n,e={}){let r=c(e.plugins),t=new M({plugins:r,disabledFeatures:e.disabledFeatures});return{t:t.parse(n),f:t.features,m:Array.from(t.marked)}}async function zr(n,e={}){let r=c(e.plugins),t=new j({plugins:r,disabledFeatures:e.disabledFeatures});return{t:await t.parse(n),f:t.features,m:Array.from(t.marked)}}function Tr(n,e={}){let r=c(e.plugins);return new C({plugins:r,features:n.f,markedRefs:n.m}).serializeTop(n.t)}function kr(n,e={}){let r=c(e.plugins);return new Y({plugins:r,markedRefs:n.m}).deserialize(n.t)}var _=class extends R{constructor(){super(...arguments);this.mode="cross"}};var H=class extends w{constructor(){super(...arguments);this.mode="cross"}assignIndexedValue(r,t){return this.refs.has(r)||this.refs.set(r,t),t}};var O=class extends P{constructor(r){super(r);this.mode="cross";this.scopeId=r.scopeId}getRefParam(r){return K+"["+r+"]"}assignIndexedValue(r,t){return this.getRefParam(r)+"="+t}serializeTop(r){let t=this.serialize(r),s=r.i;if(s==null)return t;let o=this.resolvePatches(),i=this.getRefParam(s),a=this.scopeId==null?"":K,l=o?t+","+o+i:t;if(a==="")return o?"("+l+")":l;let d=this.scopeId==null?"()":"("+K+'["'+u(this.scopeId)+'"])';return"("+this.createFunction([a],l)+")"+d}};var $=class extends m{constructor(r){super(r);this.alive=!0;this.pending=0;this.initial=!0;this.buffer=[];this.onParseCallback=r.onParse,this.onErrorCallback=r.onError,this.onDoneCallback=r.onDone}onParseInternal(r,t){try{this.onParseCallback(r,t)}catch(s){this.onError(s)}}flush(){for(let r=0,t=this.buffer.length;r<t;r++)this.onParseInternal(this.buffer[r],!1)}onParse(r){this.initial?this.buffer.push(r):this.onParseInternal(r,!1)}onError(r){if(this.onErrorCallback)this.onErrorCallback(r);else throw r}onDone(){this.onDoneCallback&&this.onDoneCallback()}pushPendingState(){this.pending++}popPendingState(){--this.pending<=0&&this.onDone()}parseProperties(r){let t=Object.entries(r),s=[],o=[];for(let a=0,l=t.length;a<l;a++)s.push(u(t[a][0])),o.push(this.parse(t[a][1]));let i=Symbol.iterator;return i in r&&(s.push(this.parseWellKnownSymbol(i)),o.push(k(this.parseIteratorFactory(),this.parse(V(r))))),i=Symbol.asyncIterator,i in r&&(s.push(this.parseWellKnownSymbol(i)),o.push(F(this.parseAsyncIteratorFactory(),this.parse(xe(r))))),i=Symbol.toStringTag,i in r&&(s.push(this.parseWellKnownSymbol(i)),o.push(N(r[i]))),i=Symbol.isConcatSpreadable,i in r&&(s.push(this.parseWellKnownSymbol(i)),o.push(r[i]?y:v)),{k:s,v:o,s:s.length}}parsePromise(r,t){return t.then(s=>{let o=this.parseWithError(s);o&&this.onParse({t:23,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[this.parseSpecialReference(2),o],f:void 0,b:void 0,o:void 0}),this.popPendingState()},s=>{if(this.alive){let o=this.parseWithError(s);o&&this.onParse({t:24,i:r,s:void 0,l:void 0,c:void 0,m:void 0,p:void 0,e:void 0,a:[this.parseSpecialReference(3),o],f:void 0,b:void 0,o:void 0})}this.popPendingState()}),this.pushPendingState(),this.createPromiseConstructorNode(r)}parsePlugin(r,t){let s=this.plugins;if(s)for(let o=0,i=s.length;o<i;o++){let a=s[o];if(a.parse.stream&&a.test(t))return T(r,a.tag,a.parse.stream(t,this,{id:r}))}}parseStream(r,t){let s=D(r,this.parseSpecialReference(4),[]);return this.pushPendingState(),t.on({next:o=>{if(this.alive){let i=this.parseWithError(o);i&&this.onParse(he(r,i))}},throw:o=>{if(this.alive){let i=this.parseWithError(o);i&&this.onParse(ye(r,i))}this.popPendingState()},return:o=>{if(this.alive){let i=this.parseWithError(o);i&&this.onParse(ve(r,i))}this.popPendingState()}}),s}parseWithError(r){try{return this.parse(r)}catch(t){this.onError(t);return}}start(r){let t=this.parseWithError(r);t&&(this.onParseInternal(t,!0),this.initial=!1,this.flush(),this.pending<=0&&this.destroy())}destroy(){this.alive&&(this.onDone(),this.alive=!1)}isAlive(){return this.alive}};var U=class extends ${constructor(){super(...arguments);this.mode="cross"}};var W=class extends m{constructor(){super(...arguments);this.mode="cross"}};function Fr(n,e={}){let r=c(e.plugins),t=new W({plugins:r,disabledFeatures:e.disabledFeatures,refs:e.refs}),s=t.parse(n);return new O({plugins:r,features:t.features,scopeId:e.scopeId,markedRefs:t.marked}).serializeTop(s)}async function Dr(n,e={}){let r=c(e.plugins),t=new _({plugins:r,disabledFeatures:e.disabledFeatures,refs:e.refs}),s=await t.parse(n);return new O({plugins:r,features:t.features,scopeId:e.scopeId,markedRefs:t.marked}).serializeTop(s)}function Vr(n,e={}){let r=c(e.plugins);return new W({plugins:r,disabledFeatures:e.disabledFeatures,refs:e.refs}).parse(n)}async function Br(n,e={}){let r=c(e.plugins);return await new _({plugins:r,disabledFeatures:e.disabledFeatures,refs:e.refs}).parse(n)}function Oe(n,e){let r=c(e.plugins),t=new U({plugins:r,refs:e.refs,disabledFeatures:e.disabledFeatures,onParse(s,o){let i=new O({plugins:r,features:t.features,scopeId:e.scopeId,markedRefs:t.marked}),a;try{a=i.serializeTop(s)}catch(l){e.onError&&e.onError(l);return}e.onSerialize(a,o)},onError:e.onError,onDone:e.onDone});return t.start(n),()=>{t.destroy()}}function jr(n,e){let r=c(e.plugins),t=new U({plugins:r,refs:e.refs,disabledFeatures:e.disabledFeatures,onParse:e.onParse,onError:e.onError,onDone:e.onDone});return t.start(n),()=>{t.destroy()}}function Mr(n,e){let r=c(e.plugins);return new H({plugins:r,refs:e.refs}).deserialize(n)}var q=class{constructor(e){this.options=e;this.alive=!0;this.flushed=!1;this.done=!1;this.pending=0;this.cleanups=[];this.refs=new Map;this.keys=new Set;this.ids=0;this.plugins=c(e.plugins)}write(e,r){this.alive&&!this.flushed&&(this.pending++,this.keys.add(e),this.cleanups.push(Oe(r,{plugins:this.plugins,scopeId:this.options.scopeId,refs:this.refs,disabledFeatures:this.options.disabledFeatures,onError:this.options.onError,onSerialize:(t,s)=>{this.alive&&this.options.onData(s?this.options.globalIdentifier+'["'+u(e)+'"]='+t:t)},onDone:()=>{this.alive&&(this.pending--,this.pending<=0&&this.flushed&&!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0))}})))}getNextID(){for(;this.keys.has(""+this.ids);)this.ids++;return""+this.ids}push(e){let r=this.getNextID();return this.write(r,e),r}flush(){this.alive&&(this.flushed=!0,this.pending<=0&&!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0))}close(){if(this.alive){for(let e=0,r=this.cleanups.length;e<r;e++)this.cleanups[e]();!this.done&&this.options.onDone&&(this.options.onDone(),this.done=!0),this.alive=!1}}};
@@ -874,25 +874,25 @@ var BaseParserContext = class {
874
874
  if (registeredId != null) {
875
875
  this.markRef(registeredId);
876
876
  return {
877
- type: 1,
877
+ type: 1 /* Indexed */,
878
878
  value: createIndexedValueNode(registeredId)
879
879
  };
880
880
  }
881
881
  const id = this.refs.size;
882
882
  this.refs.set(current, id);
883
883
  return {
884
- type: 0,
884
+ type: 0 /* Fresh */,
885
885
  value: id
886
886
  };
887
887
  }
888
888
  getReference(current) {
889
889
  const indexed = this.getIndexedValue(current);
890
- if (indexed.type === 1) {
890
+ if (indexed.type === 1 /* Indexed */) {
891
891
  return indexed;
892
892
  }
893
893
  if (hasReferenceID(current)) {
894
894
  return {
895
- type: 2,
895
+ type: 2 /* Referenced */,
896
896
  value: createReferenceNode(indexed.value, current)
897
897
  };
898
898
  }
@@ -906,7 +906,7 @@ var BaseParserContext = class {
906
906
  )
907
907
  );
908
908
  const result = this.getIndexedValue(current);
909
- if (result.type === 1) {
909
+ if (result.type === 1 /* Indexed */) {
910
910
  return result.value;
911
911
  }
912
912
  return createReferenceNode(result.value, current);
@@ -916,7 +916,7 @@ var BaseParserContext = class {
916
916
  }
917
917
  parseWellKnownSymbol(current) {
918
918
  const ref = this.getReference(current);
919
- if (ref.type !== 0) {
919
+ if (ref.type !== 0 /* Fresh */) {
920
920
  return ref.value;
921
921
  }
922
922
  assert(
@@ -927,7 +927,7 @@ var BaseParserContext = class {
927
927
  }
928
928
  parseSpecialReference(ref) {
929
929
  const result = this.getIndexedValue(SPECIAL_REFS[ref]);
930
- if (result.type === 1) {
930
+ if (result.type === 1 /* Indexed */) {
931
931
  return result.value;
932
932
  }
933
933
  return {
@@ -947,7 +947,7 @@ var BaseParserContext = class {
947
947
  }
948
948
  parseIteratorFactory() {
949
949
  const result = this.getIndexedValue(ITERATOR);
950
- if (result.type === 1) {
950
+ if (result.type === 1 /* Indexed */) {
951
951
  return result.value;
952
952
  }
953
953
  return {
@@ -967,7 +967,7 @@ var BaseParserContext = class {
967
967
  }
968
968
  parseAsyncIteratorFactory() {
969
969
  const result = this.getIndexedValue(ASYNC_ITERATOR);
970
- if (result.type === 1) {
970
+ if (result.type === 1 /* Indexed */) {
971
971
  return result.value;
972
972
  }
973
973
  return {
@@ -1020,6 +1020,22 @@ var BaseParserContext = class {
1020
1020
  o: void 0
1021
1021
  };
1022
1022
  }
1023
+ createPromiseConstructorNode(id) {
1024
+ return {
1025
+ t: 22 /* PromiseConstructor */,
1026
+ i: id,
1027
+ s: void 0,
1028
+ l: void 0,
1029
+ c: void 0,
1030
+ m: void 0,
1031
+ p: void 0,
1032
+ e: void 0,
1033
+ a: void 0,
1034
+ f: this.parseSpecialReference(1 /* PromiseConstructor */),
1035
+ b: void 0,
1036
+ o: void 0
1037
+ };
1038
+ }
1023
1039
  };
1024
1040
 
1025
1041
  // src/core/utils/promise-to-result.ts
@@ -1907,16 +1923,14 @@ function isValidIdentifier(name) {
1907
1923
  // src/core/context/serializer.ts
1908
1924
  function getAssignmentExpression(assignment) {
1909
1925
  switch (assignment.t) {
1910
- case "index":
1926
+ case 0 /* Index */:
1911
1927
  return assignment.s + "=" + assignment.v;
1912
- case "set":
1928
+ case 2 /* Set */:
1913
1929
  return assignment.s + ".set(" + assignment.k + "," + assignment.v + ")";
1914
- case "add":
1930
+ case 1 /* Add */:
1915
1931
  return assignment.s + ".add(" + assignment.v + ")";
1916
- case "delete":
1932
+ case 3 /* Delete */:
1917
1933
  return assignment.s + ".delete(" + assignment.k + ")";
1918
- default:
1919
- return "";
1920
1934
  }
1921
1935
  }
1922
1936
  function mergeAssignments(assignments) {
@@ -1924,30 +1938,30 @@ function mergeAssignments(assignments) {
1924
1938
  let current = assignments[0];
1925
1939
  for (let i = 1, len = assignments.length, item, prev = current; i < len; i++) {
1926
1940
  item = assignments[i];
1927
- if (item.t === "index" && item.v === prev.v) {
1941
+ if (item.t === 0 /* Index */ && item.v === prev.v) {
1928
1942
  current = {
1929
- t: "index",
1943
+ t: 0 /* Index */,
1930
1944
  s: item.s,
1931
1945
  k: void 0,
1932
1946
  v: getAssignmentExpression(current)
1933
1947
  };
1934
- } else if (item.t === "set" && item.s === prev.s) {
1948
+ } else if (item.t === 2 /* Set */ && item.s === prev.s) {
1935
1949
  current = {
1936
- t: "set",
1950
+ t: 2 /* Set */,
1937
1951
  s: getAssignmentExpression(current),
1938
1952
  k: item.k,
1939
1953
  v: item.v
1940
1954
  };
1941
- } else if (item.t === "add" && item.s === prev.s) {
1955
+ } else if (item.t === 1 /* Add */ && item.s === prev.s) {
1942
1956
  current = {
1943
- t: "add",
1957
+ t: 1 /* Add */,
1944
1958
  s: getAssignmentExpression(current),
1945
1959
  k: void 0,
1946
1960
  v: item.v
1947
1961
  };
1948
- } else if (item.t === "delete" && item.s === prev.s) {
1962
+ } else if (item.t === 3 /* Delete */ && item.s === prev.s) {
1949
1963
  current = {
1950
- t: "delete",
1964
+ t: 3 /* Delete */,
1951
1965
  s: getAssignmentExpression(current),
1952
1966
  k: item.k,
1953
1967
  v: void 0
@@ -2065,7 +2079,7 @@ var BaseSerializerContext = class {
2065
2079
  */
2066
2080
  createAssignment(source, value) {
2067
2081
  this.assignments.push({
2068
- t: "index",
2082
+ t: 0 /* Index */,
2069
2083
  s: source,
2070
2084
  k: void 0,
2071
2085
  v: value
@@ -2073,7 +2087,7 @@ var BaseSerializerContext = class {
2073
2087
  }
2074
2088
  createAddAssignment(ref, value) {
2075
2089
  this.assignments.push({
2076
- t: "add",
2090
+ t: 1 /* Add */,
2077
2091
  s: this.getRefParam(ref),
2078
2092
  k: void 0,
2079
2093
  v: value
@@ -2081,7 +2095,7 @@ var BaseSerializerContext = class {
2081
2095
  }
2082
2096
  createSetAssignment(ref, key, value) {
2083
2097
  this.assignments.push({
2084
- t: "set",
2098
+ t: 2 /* Set */,
2085
2099
  s: this.getRefParam(ref),
2086
2100
  k: key,
2087
2101
  v: value
@@ -2089,7 +2103,7 @@ var BaseSerializerContext = class {
2089
2103
  }
2090
2104
  createDeleteAssignment(ref, key) {
2091
2105
  this.assignments.push({
2092
- t: "delete",
2106
+ t: 3 /* Delete */,
2093
2107
  s: this.getRefParam(ref),
2094
2108
  k: key,
2095
2109
  v: void 0
@@ -2172,9 +2186,9 @@ var BaseSerializerContext = class {
2172
2186
  serializeProperties(source, record) {
2173
2187
  const len = record.s;
2174
2188
  if (len) {
2175
- this.stack.push(source.i);
2176
2189
  const keys = record.k;
2177
2190
  const values = record.v;
2191
+ this.stack.push(source.i);
2178
2192
  let result = this.serializeProperty(source, keys[0], values[0]);
2179
2193
  for (let i = 1, item = result; i < len; i++) {
2180
2194
  item = this.serializeProperty(source, keys[i], values[i]);
@@ -2245,10 +2259,10 @@ var BaseSerializerContext = class {
2245
2259
  serializeAssignments(source, node) {
2246
2260
  const len = node.s;
2247
2261
  if (len) {
2248
- this.stack.push(source.i);
2249
2262
  const mainAssignments = [];
2250
2263
  const keys = node.k;
2251
2264
  const values = node.v;
2265
+ this.stack.push(source.i);
2252
2266
  for (let i = 0; i < len; i++) {
2253
2267
  this.serializeAssignment(source, mainAssignments, keys[i], values[i]);
2254
2268
  }
@@ -2403,9 +2417,12 @@ var BaseSerializerContext = class {
2403
2417
  serializeAggregateError(node) {
2404
2418
  const id = node.i;
2405
2419
  this.stack.push(id);
2406
- const serialized = 'new AggregateError([],"' + node.m + '")';
2420
+ const serialized = this.serializeDictionary(
2421
+ node,
2422
+ 'new AggregateError([],"' + node.m + '")'
2423
+ );
2407
2424
  this.stack.pop();
2408
- return this.serializeDictionary(node, serialized);
2425
+ return serialized;
2409
2426
  }
2410
2427
  serializeError(node) {
2411
2428
  return this.serializeDictionary(
@@ -2432,9 +2449,6 @@ var BaseSerializerContext = class {
2432
2449
  serializeWellKnownSymbol(node) {
2433
2450
  return this.assignIndexedValue(node.i, SYMBOL_STRING[node.s]);
2434
2451
  }
2435
- serializeFormDataEntry(id, key, value) {
2436
- return this.getRefParam(id) + '.append("' + key + '",' + this.serialize(value) + ")";
2437
- }
2438
2452
  serializeBoxed(node) {
2439
2453
  return this.assignIndexedValue(
2440
2454
  node.i,
@@ -2493,9 +2507,9 @@ var BaseSerializerContext = class {
2493
2507
  case 4 /* StreamConstructor */:
2494
2508
  return this.createFunction(
2495
2509
  ["b", "a", "s", "l", "p", "f", "e", "n"],
2496
- "(b=[],a=!0,s=!1,l=[],s=0,f=" + this.createEffectfulFunction(
2510
+ "(b=[],a=!0,s=!1,l=[],p=0,f=" + this.createEffectfulFunction(
2497
2511
  ["v", "m", "x"],
2498
- "for(x=0;x<s;x++)l[x]&&l[x][m](v)"
2512
+ "for(x=0;x<p;x++)l[x]&&l[x][m](v)"
2499
2513
  ) + ",n=" + this.createEffectfulFunction(
2500
2514
  ["o", "x", "z", "c"],
2501
2515
  'for(x=0,z=b.length;x<z;x++)(c=b[x],x===z-1?o[s?"return":"throw"](c):o.next(c))'
@@ -2922,20 +2936,7 @@ var BaseSyncParserContext = class extends BaseParserContext {
2922
2936
  );
2923
2937
  }
2924
2938
  parsePromise(id, _current) {
2925
- return {
2926
- t: 22 /* PromiseConstructor */,
2927
- i: id,
2928
- s: void 0,
2929
- l: void 0,
2930
- c: void 0,
2931
- m: void 0,
2932
- p: void 0,
2933
- e: void 0,
2934
- a: void 0,
2935
- f: this.parseSpecialReference(1 /* PromiseConstructor */),
2936
- b: void 0,
2937
- o: void 0
2938
- };
2939
+ return this.createPromiseConstructorNode(id);
2939
2940
  }
2940
2941
  parseObject(id, current) {
2941
2942
  if (Array.isArray(current)) {
@@ -3346,20 +3347,7 @@ var BaseStreamParserContext = class extends BaseSyncParserContext {
3346
3347
  }
3347
3348
  );
3348
3349
  this.pushPendingState();
3349
- return {
3350
- t: 22 /* PromiseConstructor */,
3351
- i: id,
3352
- s: void 0,
3353
- l: void 0,
3354
- c: void 0,
3355
- m: void 0,
3356
- p: void 0,
3357
- e: void 0,
3358
- a: void 0,
3359
- f: this.parseSpecialReference(1 /* PromiseConstructor */),
3360
- b: void 0,
3361
- o: void 0
3362
- };
3350
+ return this.createPromiseConstructorNode(id);
3363
3351
  }
3364
3352
  parsePlugin(id, current) {
3365
3353
  const currentPlugins = this.plugins;