@rainbow-robotics/plugin-ui 0.1.2-dev.6 → 0.1.2-dev.7

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 +1 @@
1
- import{a as Gg}from"./chunks/chunk-Q6XGCIPE.js";import{a as Fg,j as Lg}from"./chunks/chunk-3DOWEHFU.js";import{a as SA,b as ug,c as GI,d as Q,e as G,f as q,g as ZA,h as d}from"./chunks/chunk-HJVATDC6.js";var pg=SA(v=>{"use strict";Object.defineProperty(v,"__esModule",{value:!0});v.MultiReceiverChannel=v.SimpleChannel=v.TryReceivedKind=v.State=void 0;var b;(function(I){I.empty="empty",I.receiver="receiver",I.data="data",I.close="close"})(b=v.State||(v.State={}));var YI;(function(I){I.value="value",I.notReceived="no",I.close="close"})(YI=v.TryReceivedKind||(v.TryReceivedKind={}));var bI=class{constructor(){this.receivers=[],this.data=[],this._state=b.empty}get state(){return this._state}tryReceive(){if(this._state==b.data){let A=this.data.shift();return A===null?(this._state=b.close,{kind:YI.close}):(this.data.length===0&&(this._state=b.empty),{kind:YI.value,value:A})}else return{kind:YI.notReceived}}receive(){if(this._state===b.close)return Promise.reject();if(this._state===b.data){let A=this.data.shift();return A===null?(this._state=b.close,Promise.reject()):(this.data.length===0&&(this._state=b.empty),Promise.resolve(A))}else return new Promise((A,B)=>{this.receivers.push([A,B]),this._state=b.receiver})}send(A){if(this._state===b.close)throw"sending on closed channel";if(this._state!==b.receiver)this.data.push(A),this._state=b.data;else{let[B]=this.receivers.shift();B(A),this.receivers.length===0&&(this._state=b.empty)}}close(){if(this._state!==b.close)if(this._state!==b.receiver)this.data.push(null),this._state=b.data;else{let[,A]=this.receivers.shift();A(),this.receivers.length===0&&(this._state=b.close)}}async*[Symbol.asyncIterator](){try{for(;;)yield await this.receive()}catch{}}};v.SimpleChannel=bI;var sg=class{constructor(){this.chan=new Set}send(A){for(let B of this.chan)B.send(A)}close(){for(let A of this.chan)A.close()}receiver(){let A=new bI;return this.chan.add(A),A}removeReceiver(A){this.chan.delete(A)}};v.MultiReceiverChannel=sg});var Yg=SA(HI=>{"use strict";Object.defineProperty(HI,"__esModule",{value:!0});HI.observe=void 0;var mQ=rg();HI.observe=I=>(Object.defineProperties(I,{chan:{value:new mQ.MultiReceiverChannel},notify:{value:function(){this.chan.send(this)}},receiver:{value:function(){return this.chan.receiver()}},removeReceiver:{value:function(A){A.close(),this.chan.removeReceiver(A)}}}),I)});var bg=SA(pA=>{"use strict";Object.defineProperty(pA,"__esModule",{value:!0});pA.Guard=pA.Mutex=void 0;var ng=class{constructor(){this.resolveList=[],this.locked=[!1]}acquire(){return new Promise(A=>{if(this.locked[0])this.resolveList.push(A);else{this.locked[0]=!0;let B=new mI(this.resolveList,this.locked);A(B)}})}};pA.Mutex=ng;var mI=class{constructor(A,B){this.resolveList=A,this.locked=B}release(){let A=this.resolveList.shift();A?A(this):this.locked[0]=!1}};pA.Guard=mI});var rg=SA(CA=>{"use strict";Object.defineProperty(CA,"__esModule",{value:!0});var TI=pg();Object.defineProperty(CA,"SimpleChannel",{enumerable:!0,get:function(){return TI.SimpleChannel}});Object.defineProperty(CA,"ChannelState",{enumerable:!0,get:function(){return TI.State}});Object.defineProperty(CA,"MultiReceiverChannel",{enumerable:!0,get:function(){return TI.MultiReceiverChannel}});Object.defineProperty(CA,"TryReceivedKind",{enumerable:!0,get:function(){return TI.TryReceivedKind}});var TQ=Yg();Object.defineProperty(CA,"observe",{enumerable:!0,get:function(){return TQ.observe}});var Hg=bg();Object.defineProperty(CA,"Mutex",{enumerable:!0,get:function(){return Hg.Mutex}});Object.defineProperty(CA,"Guard",{enumerable:!0,get:function(){return Hg.Guard}})});var gQ=SA(c=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});c.daysFrom=c.hoursFrom=c.minutesFrom=c.secondsFrom=c.millisecondsFrom=c.numberFrom=c.daysOf=c.hoursOf=c.minutesOf=c.millisecondsOf=c.secondsOf=c.valueOf=c.valueFrom=c.isTypedDuration=void 0;var wC=I=>typeof I=="object"&&I?.valueType==="TYPED_DURATION";c.isTypedDuration=wC;var hC=I=>(0,c.isTypedDuration)(I)?I.value:I;c.valueFrom=hC;var yC=(I,A="")=>`${(0,c.valueFrom)(I)}${(0,c.isTypedDuration)(I)?I.unit:A}`;c.valueOf=yC;var qA=I=>(0,c.isTypedDuration)(I)&&I.type==="SECONDS",xA=I=>(0,c.isTypedDuration)(I)&&I.type==="MILLISECONDS",OA=I=>(0,c.isTypedDuration)(I)&&I.type==="MINUTES",zA=I=>(0,c.isTypedDuration)(I)&&I.type==="HOURS",WA=I=>(0,c.isTypedDuration)(I)&&I.type==="DAYS",gA=I=>typeof I=="number",lC=I=>({type:"SECONDS",value:I,valueType:"TYPED_DURATION",unit:"s"});function X(I){return qA(I)?I:gA(I)?lC(I):xA(I)?X(I.value/1e3):OA(I)?X(I.value*60):zA(I)?X($(I)):WA(I)?X($(V(I))):I}c.secondsOf=X;var NC=I=>({type:"MILLISECONDS",value:I,valueType:"TYPED_DURATION",unit:"ms"});function TA(I){return xA(I)?I:gA(I)?NC(I):qA(I)?TA(I.value*1e3):OA(I)?TA(X(I)):zA(I)?TA(X($(I))):WA(I)?TA(X($(V(I)))):I}c.millisecondsOf=TA;var hg=I=>({type:"MINUTES",value:I,valueType:"TYPED_DURATION",unit:"m"});function $(I){return OA(I)?I:gA(I)?hg(I):xA(I)?$(X(I)):qA(I)?hg(I.value/60):zA(I)?hg(I.value*60):WA(I)?$(V(I)):I}c.minutesOf=$;var uC=I=>({type:"HOURS",value:I,valueType:"TYPED_DURATION",unit:"h"});function V(I){return zA(I)?I:gA(I)?uC(I):xA(I)?V($(X(I))):qA(I)?V($(I)):OA(I)?V(I.value/60):WA(I)?V(I.value*24):I}c.hoursOf=V;var FC=I=>({type:"DAYS",value:I,valueType:"TYPED_DURATION",unit:"d"});function KA(I){return WA(I)?I:gA(I)?FC(I):xA(I)?KA(V($(X(I)))):qA(I)?KA(V($(I))):OA(I)?KA(V(I)):zA(I)?KA(I.value/24):I}c.daysOf=KA;var LC=I=>(0,c.isTypedDuration)(I)?I.value:I;c.numberFrom=LC;var GC=I=>gA(I)?I:xA(I)?(0,c.numberFrom)(I):(0,c.millisecondsFrom)(TA(I));c.millisecondsFrom=GC;var SC=I=>gA(I)?I:qA(I)?(0,c.numberFrom)(I):(0,c.secondsFrom)(X(I));c.secondsFrom=SC;var UC=I=>gA(I)?I:OA(I)?(0,c.numberFrom)(I):(0,c.minutesFrom)($(I));c.minutesFrom=UC;var RC=I=>gA(I)?I:zA(I)?(0,c.numberFrom)(I):(0,c.hoursFrom)(V(I));c.hoursFrom=RC;var MC=I=>gA(I)?I:WA(I)?(0,c.numberFrom)(I):(0,c.daysFrom)(KA(I));c.daysFrom=MC});var mB=SA(HB=>{"use strict";Object.defineProperty(HB,"__esModule",{value:!0});HB.Duration=void 0;var W=gQ();HB.Duration={milliseconds:{of:W.millisecondsOf,from:W.millisecondsFrom},seconds:{of:W.secondsOf,from:W.secondsFrom},minutes:{of:W.minutesOf,from:W.minutesFrom},hours:{of:W.hoursOf,from:W.hoursFrom},days:{of:W.daysOf,from:W.daysFrom},value:{from:W.valueFrom,of:W.valueOf},isTypedDuration:W.isTypedDuration}});var WB=Symbol.for("quilt.threads.serialize"),Sg=Symbol.for("quilt.threads.transferable");var jA=class extends AbortController{constructor(...A){super();let B=A.find(g=>g.aborted);if(B)this.abort(B.reason);else{let g=E=>this.abort(E.target.reason),C={signal:this.signal};for(let E of A)E.addEventListener("abort",g,C)}}};var _A=class extends Error{constructor(){super("You attempted to call a function on a closed thread.")}};var EQ="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";function SI(I=21){let A="",B=crypto.getRandomValues(new Uint8Array(I));for(let g=0;g<I;g++)A+=EQ[63&B[g]];return A}var UA,hA,RA,vA,RI,Ug,UI=class{constructor(){q(this,RI);q(this,UA,new Map);q(this,hA,new Map);q(this,RA,new Map);q(this,vA,new WeakMap)}get(A){return G(this,hA).get(A)}release(A){let B=G(this,hA).get(A);return B&&(G(this,hA).delete(A),G(this,UA).delete(B)),!!B}serialize(A){let B=G(this,UA).get(A);return B==null&&(B=SI(),G(this,UA).set(A,B),G(this,hA).set(B,A)),B}deserialize(A,B){let g=G(this,RA).get(A)?.deref();return g||(g=(...C)=>{if(!G(this,RA).has(A))throw new Error("You attempted to call a function that was already revoked.");return B.call((E,e,t)=>{B.messages.send([3,E,A,e],t)},C)},d(this,RI,Ug).call(this,B)?.register(g,A),G(this,RA).set(A,new WeakRef(g)),g)}};UA=new WeakMap,hA=new WeakMap,RA=new WeakMap,vA=new WeakMap,RI=new WeakSet,Ug=function(A){let B=G(this,vA).get(A);if(!(typeof FinalizationRegistry>"u"))return B||(B=new FinalizationRegistry(g=>{A.messages.send([5,g])}),G(this,vA).set(A,B)),B};function Rg(I){return I!=null&&(Symbol.asyncIterator in I||Symbol.iterator in I)&&typeof I.next=="function"}function ZB(I){if(I==null||typeof I!="object")return!1;let A=Object.getPrototypeOf(I);return A==null||A===Object.prototype}var jB="_@f",Mg="_@i",MA,kA,x,MI,tA,kI=class{constructor(A){q(this,x);q(this,MA);q(this,kA);ZA(this,MA,A?.serialize),ZA(this,kA,A?.deserialize)}serialize(A,B,g){return d(this,x,MI).call(this,A,B,g)}deserialize(A,B){return d(this,x,tA).call(this,A,B)}};MA=new WeakMap,kA=new WeakMap,x=new WeakSet,MI=function(A,B,g,C=new Map,E=!1){if(A==null)return A;if(C.has(A))return C.get(A);if(C.set(A,void 0),typeof A=="object"){if(G(this,MA)&&!E){let n=G(this,MA).call(this,A,h=>d(this,x,MI).call(this,h,B,g,C,!0),B,g);if(n!==void 0)return C.set(A,n),n}if(A[Sg])return g?.push(A),C.set(A,A),A;let e=n=>d(this,x,MI).call(this,n,B,g,C);if(typeof A[WB]=="function"){let n=A[WB]({serialize:e});return C.set(A,n),n}if(Array.isArray(A)){let n=A.map(h=>e(h));return C.set(A,n),n}if(A instanceof Map){let n=[...A.entries()].map(([D,k])=>[e(D),e(k)]),h=new Map(n);return C.set(A,h),h}if(A instanceof Set){let n=[...A].map(D=>e(D)),h=new Set(n);return C.set(A,h),h}let t=Rg(A);if(ZB(A)||t){let n={};for(let h of Object.keys(A))n[h]=e(A[h]);return t&&(n.next??(n.next=e(A.next.bind(A))),n.return??(n.return=e(A.return.bind(A))),n.throw??(n.throw=e(A.throw.bind(A))),n[Mg]=!0),C.set(A,n),n}}if(typeof A=="function"){let e=B.functions.serialize(A,B,g),t={[jB]:e};return C.set(A,t),t}return C.set(A,A),A},tA=function(A,B,g=!1){if(A==null)return A;if(typeof A=="object"){if(G(this,kA)&&!g){let E=G(this,kA).call(this,A,e=>d(this,x,tA).call(this,e,B,!0),B);if(E!==void 0)return E}if(A==null)return A;if(Array.isArray(A))return A.map(E=>d(this,x,tA).call(this,E,B));if(A instanceof Map)return new Map([...A].map(([E,e])=>[d(this,x,tA).call(this,E,B),d(this,x,tA).call(this,e,B)]));if(A instanceof Set)return new Set([...A].map(E=>d(this,x,tA).call(this,E,B)));if(jB in A)return B.functions.deserialize(A[jB],B);if(!ZB(A))return A;let C={};for(let E of Object.keys(A))E===Mg?C[Symbol.asyncIterator]=()=>C:C[E]=d(this,x,tA).call(this,A[E],B);return C}return A};var yA,sA,Z,_B,kg,vB,dg,dI=class{constructor(A,{imports:B,exports:g,functions:C=new UI,serialization:E=new kI,signal:e}={}){q(this,Z);q(this,yA);q(this,sA,new Map);this.messages=A,ZA(this,yA,e?new jA(e):new AbortController),this.exports=g??{},this.imports=nQ(d(this,Z,kg).bind(this),B),this.functions=C,this.serialization=E,this.functions.start?.(this),this.serialization.start?.(this),this.signal.addEventListener("abort",()=>{for(let t of G(this,sA).keys())d(this,Z,vB).call(this,t,void 0,new _A);G(this,sA).clear()},{once:!0}),A.listen(async t=>{if(!(Array.isArray(t)&&typeof t[0]=="number"))return;let h=t;switch(h[0]){case 1:{let[,D,k,oA]=h,aA=this.exports[k]??(()=>{throw new Error(`No '${k}' method is exported from this thread`)});await d(this,Z,_B).call(this,aA,oA,(cA,DA,wA)=>{this.messages.send([2,D,cA,DA],wA)});break}case 3:{let[,D,k,oA]=h,aA=this.functions.get(k,this)??oQ;await d(this,Z,_B).call(this,aA,oA,(cA,DA,wA)=>{this.messages.send([4,D,cA,DA],wA)});break}case 2:case 4:{d(this,Z,vB).call(this,...h.slice(1));break}case 5:{let D=h[1];this.functions.release(D,this);break}}},{signal:this.signal})}get signal(){return G(this,yA).signal}get closed(){return G(this,yA).signal.aborted}close(){G(this,yA).abort()}call(A,B){if(this.closed)return Promise.reject(new _A);let g=[],C=this.serialization.serialize(B,this,g),E=SI(),e=d(this,Z,dg).call(this,E);return A(E,C,g),e}};yA=new WeakMap,sA=new WeakMap,Z=new WeakSet,_B=async function(A,B,g){try{let C=this.functions.call?await this.functions.call(A,B,this):await A(...this.serialization.deserialize(B,this)),E=[],e=this.serialization.serialize(C,this,E);g(e,void 0,E)}catch(C){g(void 0,this.serialization.serialize(C,this))}},kg=function(A){return(...B)=>{try{if(typeof A!="string"&&typeof A!="number")throw new Error(`Can\u2019t call a symbol method on a thread: ${A.toString()}`);return this.call((g,C,E)=>{this.messages.send([1,g,A,C],E)},B)}catch(g){return Promise.reject(g)}}},vB=function(...A){let B=A[0],g=G(this,sA).get(B);g&&(g(...A),G(this,sA).delete(B))},dg=function(A){let B=new Promise((g,C)=>{G(this,sA).set(A,(E,e,t)=>{t==null?g(this.serialization.deserialize(e,this)):C(this.serialization.deserialize(t,this))})});return Object.defineProperty(B,Symbol.asyncIterator,{async*value(){let g=await B;Object.defineProperty(g,Symbol.asyncIterator,{value:()=>g}),yield*g}}),B};function nQ(I,A){let B;if(A==null){if(typeof Proxy!="function")throw new Error("You must pass an array of callable methods in environments without Proxies.");let g=new Map;B=new Proxy({},{get(C,E){if(g.has(E))return g.get(E);let e=I(E);return g.set(E,e),e}})}else{B={};for(let g of A)Object.defineProperty(B,g,{value:I(g),writable:!1,configurable:!0,enumerable:!0})}return B}function oQ(){throw new Error("You attempted to call a function that is not stored. It may have already been released.")}var H=class H extends dI{static from(A,B){return new H(A,B)}static import(A,B){return new H(A,B).imports}static export(A,B,g){new H(A,{...g,exports:B})}constructor(A,{targetOrigin:B="*",...g}={}){super(aQ(A,{targetOrigin:B}),g),this.window=A}};Q(H,"iframe",Object.assign((A,B)=>H.from(VB(A),B),{import:(A,B)=>H.import(VB(A),B),export:(A,B,g)=>H.export(VB(A),B,g)})),Q(H,"parent",Object.assign(A=>H.from(XB(),A),{import:A=>H.import(XB(),A),export:(A,B)=>H.export(XB(),A,B)})),Q(H,"opener",Object.assign(A=>H.from(PB(),A),{import:A=>H.import(PB(),A),export:(A,B)=>H.export(PB(),A,B)}));var PA=H;function PB(){if(typeof window>"u"||window.opener==null)throw new Error("No opener window found");return window.opener}function XB(){if(typeof window>"u"||window.parent==null||window.parent===window)throw new Error("No parent window found");return window.parent}function VB(I){if(I.contentWindow==null)throw new Error("No content window found");return I.contentWindow}function aQ(I,{targetOrigin:A="*"}={}){let B=function(C,E){I.postMessage(C,A,E)};return{send(g,C){return B(g,C)},listen(g,{signal:C}){self.addEventListener("message",E=>{E.source===I&&g(E.data)},{signal:C})}}}import{createElement as CQ}from"react";import{createRoot as JC}from"react-dom/client";var ig={};ug(ig,{__externref_table_dealloc:()=>pQ,__wbindgen_export_0:()=>dQ,__wbindgen_free:()=>YQ,__wbindgen_malloc:()=>JQ,__wbindgen_realloc:()=>fQ,__wbindgen_start:()=>eg,autocanonize:()=>kQ,concat:()=>UQ,includes:()=>RQ,intersects:()=>MQ,join:()=>SQ,memory:()=>LQ,new_key_expr:()=>GQ});var Eg={};ug(Eg,{__wbg_set_wasm:()=>$B,__wbindgen_init_externref_table:()=>hQ,__wbindgen_string_new:()=>yQ,__wbindgen_throw:()=>lQ,autocanonize:()=>Cg,concat:()=>Bg,includes:()=>gg,intersects:()=>Qg,join:()=>Ig,new_key_expr:()=>Ag});var l;function $B(I){l=I}var cQ=typeof TextDecoder>"u"?(0,module.require)("util").TextDecoder:TextDecoder,Jg=new cQ("utf-8",{ignoreBOM:!0,fatal:!0});Jg.decode();var JI=null;function fI(){return(JI===null||JI.byteLength===0)&&(JI=new Uint8Array(l.memory.buffer)),JI}function XA(I,A){return I=I>>>0,Jg.decode(fI().subarray(I,I+A))}var j=0,DQ=typeof TextEncoder>"u"?(0,module.require)("util").TextEncoder:TextEncoder,pI=new DQ("utf-8"),wQ=typeof pI.encodeInto=="function"?function(I,A){return pI.encodeInto(I,A)}:function(I,A){let B=pI.encode(I);return A.set(B),{read:I.length,written:B.length}};function AA(I,A,B){if(B===void 0){let t=pI.encode(I),n=A(t.length,1)>>>0;return fI().subarray(n,n+t.length).set(t),j=t.length,n}let g=I.length,C=A(g,1)>>>0,E=fI(),e=0;for(;e<g;e++){let t=I.charCodeAt(e);if(t>127)break;E[C+e]=t}if(e!==g){e!==0&&(I=I.slice(e)),C=B(C,g,g=e+I.length*3,1)>>>0;let t=fI().subarray(C+e,C+g),n=wQ(I,t);e+=n.written,C=B(C,g,e,1)>>>0}return j=e,C}function dA(I){let A=l.__wbindgen_export_0.get(I);return l.__externref_table_dealloc(I),A}function Ag(I){let A=AA(I,l.__wbindgen_malloc,l.__wbindgen_realloc),B=j,g=l.new_key_expr(A,B);if(g[1])throw dA(g[0])}function Ig(I,A){let B,g;try{let e=AA(I,l.__wbindgen_malloc,l.__wbindgen_realloc),t=j,n=AA(A,l.__wbindgen_malloc,l.__wbindgen_realloc),h=j,D=l.join(e,t,n,h);var C=D[0],E=D[1];if(D[3])throw C=0,E=0,dA(D[2]);return B=C,g=E,XA(C,E)}finally{l.__wbindgen_free(B,g,1)}}function Bg(I,A){let B,g;try{let e=AA(I,l.__wbindgen_malloc,l.__wbindgen_realloc),t=j,n=AA(A,l.__wbindgen_malloc,l.__wbindgen_realloc),h=j,D=l.concat(e,t,n,h);var C=D[0],E=D[1];if(D[3])throw C=0,E=0,dA(D[2]);return B=C,g=E,XA(C,E)}finally{l.__wbindgen_free(B,g,1)}}function gg(I,A){let B=AA(I,l.__wbindgen_malloc,l.__wbindgen_realloc),g=j,C=AA(A,l.__wbindgen_malloc,l.__wbindgen_realloc),E=j,e=l.includes(B,g,C,E);if(e[2])throw dA(e[1]);return e[0]!==0}function Qg(I,A){let B=AA(I,l.__wbindgen_malloc,l.__wbindgen_realloc),g=j,C=AA(A,l.__wbindgen_malloc,l.__wbindgen_realloc),E=j,e=l.intersects(B,g,C,E);if(e[2])throw dA(e[1]);return e[0]!==0}function Cg(I){let A,B;try{let E=AA(I,l.__wbindgen_malloc,l.__wbindgen_realloc),e=j,t=l.autocanonize(E,e);var g=t[0],C=t[1];if(t[3])throw g=0,C=0,dA(t[2]);return A=g,B=C,XA(g,C)}finally{l.__wbindgen_free(A,B,1)}}function hQ(){let I=l.__wbindgen_export_0,A=I.grow(4);I.set(0,void 0),I.set(A+0,void 0),I.set(A+1,null),I.set(A+2,!0),I.set(A+3,!1)}function yQ(I,A){return XA(I,A)}function lQ(I,A){throw new Error(XA(I,A))}var NQ="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IAAgAEH/H00bNgIAIAMgBE8NAEGo6sAAQX82AgALC4sFAQR/IwBBIGsiAyQAAkAgABATQf8BcSIBQQJGBEBBASEBDAELAkACQAJAAkAgACgCACIERQ0AIAAoAggiAiAAKAIETw0AIAIgBGotAABB8ABHDQAgACACQQFqNgIIIAAoAhAhAiABQQFxRQRAIAJFDQJBASEBQey0wABBASACEMoBDQUMAgsgAkUNAUHpusAAQQIgAhDKAUUNAUEBIQEMBAsgAUEBcUUNAgwBCwJAAkAgACgCAEUNACADIAAQEiADKAIARQ0BIANBGGogA0EIaikCADcDACADIAMpAgA3AxACQCAAKAIQIgJFDQBBASEBIANBEGogAhAJDQUgACgCECICRQ0AQb27wABBAyACEMoBDQULIAAQDARAQQEhAQwFCwNAIAAoAgAiAkUNAyAAKAIIIgEgACgCBE8NAyABIAJqLQAAQfAARw0DIAAgAUEBajYCCCAAKAIQIgEEQEHpusAAQQIgARDKAQRAQQEhAQwHCyAAKAIARQ0CCyADIAAQEiADKAIARQ0CIANBGGogA0EIaikCADcDACADIAMpAgA3AxACQCAAKAIQIgJFDQBBASEBIANBEGogAhAJDQYgACgCECICRQ0AQb27wABBAyACEMoBDQYLQQEhASAAEAxFDQALDAQLIAAoAhAiAEUNAkHhusAAQQEgABDKASEBDAMLIAAoAhAhAQJAIAMtAAQiAkUEQCABRQ0BQbi6wABBECABEMoBRQ0BQQEhAQwECyABRQ0AQci6wABBGSABEMoBRQ0AQQEhAQwDCyAAIAI6AARBACEBIABBADYCAAwCCyAAKAIQIgBFDQBBASEBQeu0wABBASAAEMoBDQELQQAhAQsgA0EgaiQAIAELygQCD38BfiMAQdAAayIDJAAgA0EMaq1CgICAgLAFhCESIAAtAAwhCSAAKAIEIQ8gACgCACENIAAoAggiB0EUaiEQIAdBGGohEQNAAkAgCyIMQQFxDQAgBiEIQQEhCwJAIAIgBU8EQANAIAEgBWohBgJAAkACQCACIAVrIgpBB00EQCACIAVGBEAgCCEGIAIhBSACIQQMBwtBACEEA0AgBCAGai0AAEEKRg0CIAogBEEBaiIERw0ACyAIIQYgAiEFIAIhBAwGCyADQQogBiAKEDwgAygCACIK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AiABQT9xQYABcjoADyACIAFBEnZB8AFyOgAMIAIgAUEGdkE/cUGAAXI6AA4gAiABQQx2QT9xQYABcjoADUEEDAILIAIgAUE/cUGAAXI6AA4gAiABQQx2QeABcjoADCACIAFBBnZBP3FBgAFyOgANQQMMAQsgAiABQT9xQYABcjoADSACIAFBBnZBwAFyOgAMQQILIQEgASAAKAIAIAAoAggiA2tLBEAgACADIAEQRyAAKAIIIQMLIAAoAgQgA2ogAkEMaiABEBYaIAAgASADajYCCAwBCyAAKAIIIgMgACgCAEYEQCAAQbSDwAAQSQsgACgCBCADaiABOgAAIAAgA0EBajYCCAsgAkEQaiQAQQALxAIBBH8gAEIANwIQIAACf0EAIAFBgAJJDQAaQR8gAUH///8HSw0AGiABQQYgAUEIdmciA2t2QQFxIANBAXRrQT5qCyIENgIcIARBAnRB8ObAAGohAkEBIAR0IgNBjOrAACgCAHFFBEAgAiAANgIAIAAgAjYCGCAAIAA2AgwgACAANgIIQYzqwABBjOrAACgCACADcjYCAA8LAkACQCABIAIoAgAiAygCBEF4cUYEQCADIQIMAQsgAUEZIARBAXZrQQAgBEEfRxt0IQUDQCADIAVBHXZBBHFqQRBqIgQoAgAiAkUNAiAFQQF0IQUgAiEDIAIoAgRBeHEgAUcNAAsLIAIoAggiASAANgIMIAIgADYCCCAAQQA2AhggACACNgIMIAAgATYCCA8LIAQgADYCACAAIAM2AhggACAANgIMIAAgADYCCAv5AgEEfyMAQTBrIgAkAAJAAkBBsObAACgCAEUEQEHI5sAAKAIAIQFByObAAEEANgIAIAFFDQEgAEEYaiABEQMAIABBEGoiAiAAQSRqKQIANwMAIAAgACkCHDcDCCAAKAIYIQFBsObAACgCACIDDQICQCADRQ0AQbTmwAAoAgAiAkUNAEG45sAAKAIAIAJBAnRBBBCsAQtBtObAACABNgIAQbDmwABBATYCAEG45sAAIAApAwg3AgBBwObAACAAQRBqKQMANwIACyAAQTBqJABBtObAAA8LIABBADYCKCAAQQE2AhwgAEGwpMAANgIYIABCBDcCICAAQRhqQZilwAAQfgALIABBKGogAikDADcCACAAIAApAwg3AiAgACABNgIcIABBATYCGAJAIABBGGoiASgCAEUNACABKAIEIgJFDQAgASgCCCACQQJ0QQQQrAELIABBADYCKCAAQQE2AhwgAEG4pcAANgIYIABCBDcCICABQcClwAAQfgALlgIBAX8jAEEQayICJAACfwJAIAEoAgBFBEAgASgCCEEBRw0BCyAAKAIAIQAgAkEANgIMIAEgAkEMagJ/IABBgAFPBEAgAEGAEE8EQCAAQYCABE8EQCACIABBP3FBgAFyOgAPIAIgAEESdkHwAXI6AAwgAiAAQQZ2QT9xQYABcjoADiACIABBDHZBP3FBgAFyOgANQQQMAwsgAiAAQT9xQYABcjoADiACIABBDHZB4AFyOgAMIAIgAEEGdkE/cUGAAXI6AA1BAwwCCyACIABBP3FBgAFyOgANIAIgAEEGdkHAAXI6AAxBAgwBCyACIAA6AAxBAQsQEQwBCyABKAIUIAAoAgAgASgCGCgCEBEAAAsgAkEQaiQAC50CAQV/AkACQAJAAkAgAkEDakF8cSIEIAJGDQAgBCACayIEIAMgAyAESxsiBUUNAEEAIQQgAUH/AXEhBkEBIQcDQCACIARqLQAAIAZGDQQgBSAEQQFqIgRHDQALIAUgA0EIayIISw0CDAELIANBCGshCEEAIQULIAFB/wFxQYGChAhsIQQDQEGAgoQIIAIgBWoiBygCACAEcyIGayAGckGAgoQIIAdBBGooAgAgBHMiBmsgBnJxQYCBgoR4cUGAgYKEeEcNASAFQQhqIgUgCE0NAAsLIAMgBUcEQCABQf8BcSEEQQEhBwNAIAQgAiAFai0AAEYEQCAFIQQMAwsgAyAFQQFqIgVHDQALC0EAIQcLIAAgBDYCBCAAIAc2AgALlgIBA38jAEEQayICJAAgAkEANgIMAn8gAUGAAU8EQCABQYAQTwRAIAFBgIAETwRAIAIgAUE/cUGAAXI6AA8gAiABQRJ2QfABcjoADCACIAFBBnZBP3FBgAFyOgAOIAIgAUEMdkE/cUGAAXI6AA1BBAwDCyACIAFBP3FBgAFyOgAOIAIgAUEMdkHgAXI6AAwgAiABQQZ2QT9xQYABcjoADUEDDAILIAIgAUE/cUGAAXI6AA0gAiABQQZ2QcABcjoADEECDAELIAIgAToADEEBCyEBIAAgACgCBCIDIAFrNgIEIAAgACgCACABIANLciIENgIAQQEhAyAERQRAIAAoAgggAkEMaiABEJYBIQMLIAJBEGokACADC8oBAgR/AX4jAEEgayIDJAACQAJAIAEgASACaiICSw0AQQggACgCACIBQQF0IgQgAiACIARJGyICIAJBCEkbIgKtIgdCIIhQRQ0AIAenIgVB/////wdLDQAgAyABBH8gAyABNgIcIAMgACgCBDYCFEEBBUEACzYCGCADQQhqQQEgBSADQRRqEFMgAygCCEEBRw0BIAMoAhAhBCADKAIMIQYLIAYgBEHcncAAEI8BAAsgAygCDCEBIAAgAjYCACAAIAE2AgQgA0EgaiQAC6oCAgN/AX4jAEFAaiICJAAgASgCAEGAgICAeEYEQCABKAIMIQMgAkEkaiIEQQA2AgAgAkKAgICAEDcCHCACQTBqIAMoAgAiA0EIaikCADcDACACQThqIANBEGopAgA3AwAgAiADKQIANwMoIAJBHGpBoKfAACACQShqEBwaIAJBGGogBCgCACIDNgIAIAIgAikCHCIFNwMQIAFBCGogAzYCACABIAU3AgALIAEpAgAhBSABQoCAgIAQNwIAIAJBCGoiAyABQQhqIgEoAgA2AgAgAUEANgIAQc3mwAAtAAAaIAIgBTcDAEEMQQQQngEiAUUEQEEEQQwQyAEACyABIAIpAwA3AgAgAUEIaiADKAIANgIAIABBlKzAADYCBCAAIAE2AgAgAkFAayQAC/YBAQh/IAEoAggiAiABKAIEIgMgAiADSxshCCABKAIAIQVBfyEHIAIhBAJAAkADQCAEIAhGDQEgASAEQQFqIgY2AgggB0EBaiEHIAQgBWogBiEELQAAIgZBMGtB/wFxQQpJIAZB4QBrQf8BcUEGSXINAAsgBkHfAEcNACACIARBAWsiAUsNAQJAIAIEQCACIANPBEAgAiADRyABIANLcg0EDAILIAIgBWosAABBQEgNAyABIANNDQEMAwsgASADSw0CCyAAIAc2AgQgACACIAVqNgIADwsgAEEANgIAIABBADoABA8LIAUgAyACIAFB6LnAABCaAQAL1QECBH8BfiMAQSBrIgMkAAJAAkAgASABIAJqIgJLBEBBACEBDAELQQAhAUEIIAAoAgAiBUEBdCIEIAIgAiAESRsiAiACQQhJGyICrSIHQiCIUEUNACAHpyIGQf////8HSw0AIAMgBQR/IAMgBTYCHCADIAAoAgQ2AhRB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BSgCACAFKAIEIAUoAgggBSgCDCAFQRBqJAALtQIBBH8jAEEgayIDJAAgA0EIaiECIwBBIGsiASQAAkACQAJAAkACQAJAQdjmwAAtAAAOAgABAgtB2ObAAEEBOgAACyACQQE2AgAMAQtB2ebAAC0AACEEQdnmwABBAToAACABIAQ6AAcgBEEBRg0BIAJBADoAFCACQQA2AgBB2ebAAEEAOgAACyABQSBqJAAMAQsgAUIANwIUIAFCgYCAgMAANwIMIAFB0KrAADYCCCABQQdqIAFBCGoQdAALAn9BzebAAC0AABpBKEEEEJ4BIgEEQCABQaCYwAA2AgAgASACKQIANwIEIAEgACkCADcCHCABQQxqIAJBCGopAgA3AgAgAUEUaiACQRBqKQIANwIAIAFBJGogAEEIaigCADYCACABDAELQQRBKBDIAQALIANBIGokAAv6AQICfwF+IwBBEGsiAiQAIAJBATsBDCACIAE2AgggAiAANgIEIwBBEGsiASQAIAJBBGoiACkCACEEIAEgADYCDCABIAQ3AgQjAEEQayIAJAAgAUEEaiIBKAIAIgIoAgwhAwJAAkACQAJAIAIoAgQOAgABAgsgAw0BQQEhAkEAIQMMAgsgAw0AIAIoAgAiAigCBCEDIAIoAgAhAgwBCyAAQYCAgIB4NgIAIAAgATYCDCAAQdCswAAgASgCBCABKAIIIgAtAAggAC0ACRBOAAsgACADNgIEIAAgAjYCACAAQbSswAAgASgCBCABKAIIIgAtAAggAC0ACRBOAAshAAJAIAEgAxCDAQRAIAAgASADIAIQkgEiAA0BCwALIAAL2AMBCX8jAEEQayIFJAAjAEEgayIDJAAgAyABNgIQIAMgADYCDCADIAE2AgggA0EUaiEEIwBB0ABrIgEkACABQRBqIANBCGoQRCABKAIUIQICQAJAAkAgASgCEEUEQCABIAEoAhg2AgwgASACNgIIIAIgAigCACICQQFrNgIAIAJBAUYEQCABQQhqEGYLIARBgICAgHg2AgAMAQsgASgCGCEGIAFBADYCJCABQoCAgIAQNwIcIAFBAzoASCABQSA2AjggAUEANgJEIAFBxIPAADYCQCABQQA2AjAgAUEANgIoIAEgAUEcajYCPCACIAFBKGogBigCEBEAAA0BIAEoAiQhCCABKAIgIQkgASgCHCEKIAYo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AgggBkIENwIQIAZBCGpBuI/AABB+AAsgASADQfiPwAAQrQEACyAGQSBqJAAgAiADTQRAIAAgAjYCCAsLKAAgASAAKAIALQAAQQJ0IgBB1L3AAGooAgAgAEHAvcAAaigCABCWAQsVACABaUEBRkGAgICAeCABayAAT3ELHgAgAEUEQBC8AQALIAAgAiADIAQgBSABKAIQEQkACygBAX8gACgCACIBQYCAgIB4ckGAgICAeEcEQCAAKAIEIAFBARCsAQsLHAAgAEUEQBC8AQALIAAgAiADIAQgASgCEBEcAAscACAARQRAELwBAAsgACACIAMgBCABKAIQEQoACxwAIABFBEAQvAEACyAAIAIgAyAEIAEoAhARBwALHAAgAEUEQBC8AQALIAAgAiADIAQgASgCEBEeAAscACAARQRAELwBAAsgACACIAMgBCABKAIQESAACygAIABBHGpBACACQpCXlb2eldv5/wBRG0EAIAFCtYuSrNePpsh3URsLGgAgAEUEQBC8AQALIAAgAiADIAEoAhARBAALGAAgAEUEQBC8AQALIAAgAiABKAIQEQAACxoBAX8gACgCACIBBEAgACgCBCABQQEQrAELC0IAIABFBEAjAEEgayIAJAAgAEEANgIYIABBATYCDCAAQfS/wAA2AgggAEIENwIQIABBCGogAhB+AAsgACABEMgBAAscACAAQQA2AhAgAEIANwIIIABCgICAgMAANwIAC/cDAwp/AX4BbyAAIAEQACENIwBBIGsiBCQAIARBGGoiCRA6IgVBEGoiBygCADYCACAEQRBqIgogBUEIaiIIKQIANwMAIAdBADYCACAIQgA3AgAgBSkCACEMIAVCgICAgMAANwIAIAQgDDcDCAJ/IwBBIGsiAyQAAkAgBEEIaiIBKAIMIgAgASgCCCICRgRAAkAgASgCACICIABGBEDQb0GAASAAIABBgAFNGyIG/A8BIgJBf0YNAwJAIAEoAhAiC0UEQCABIAI2AhAMAQsgACALaiACRw0ECyAAIAZqIgIgAEkgAkH/////A0tyDQMgAkECdCIGQfz///8HSw0DIAMgAAR/IAMgAEECdDYCHCADIAEoAgQ2AhRBBAVBAAs2AhggA0EIakEEIAYgA0EUahBTIAMoAghBAUYNAyADKAIMIQYgASACNgIAIAEgBjYCBAwBCyAAIAJP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GyABak8EQCACQQAgAyABQSdqSxsNASAAEBkMAgtB4afAAEEuQZCowAAQbwALQaCowABBLkHQqMAAEG8ACwtqAQF/IwBBMGsiAyQAIAMgATYCBCADIAA2AgAgA0ECNgIMIANBpNvAADYCCCADQgI3AhQgAyADQQRqrUKAgICAsAWENwMoIAMgA61CgICAgLAFhDcDICADIANBIGo2AhAgA0EIaiACEH4AC2oBAX8jAEEwayIDJAAgAyABNgIEIAMgADYCACADQQI2AgwgA0HE28AANgIIIANCAjcCFCADIANBBGqtQoCAgICwBYQ3AyggAyADrUKAgICAsAWENwMgIAMgA0EgajYCECADQQhqIAIQfgALCwAgACgCACABEDcLagEBfyMAQTBrIgMkACADIAE2AgQgAyAANgIAIANBAjYCDCADQfjbwAA2AgggA0ICNwIUIAMgA0EEaq1CgICAgLAFhDcDKCADIAOtQoCAgICwBYQ3AyAgAyADQSBqNgIQIANBCGogAhB+AAsOAEHZwsAAQSsgABBvAAvJAgIEfwJ+IAApAwAhBiMAQSBrIgMkAEEUIQACQCAGQpDOAFQEQCAGIQcMAQsDQCADQQxqIABqIgRBBGsgBiAGQpDOAIAiB0KQzgB+faciBUH//wNxQeQAbiICQQF0QZnFwABqLwAAOwAAIARBAmsgBSACQeQAbGtB//8DcUEBdEGZxcAAai8AADsAACAAQQRrIQAgBkL/wdcvViAHIQYNAAsLAkAgB0LjAFgEQCAHpyECDAELIABBAmsiACADQQxqaiAHpyICIAJB//8DcUHkAG4iAkHkAGxrQf//A3FBAXRBmcXAAGovAAA7AAALAkAgAkEKTwRAIABBAmsiACADQQxqaiACQQF0QZnFwABqLwAAOwAADAELIABBAWsiACADQQxqaiACQTByOgAACyABQQFBACADQQxqIABqQRQgAGsQFCADQSBqJAALDQAgAEHMgcAAIAEQHAsOACABQeSCwABBBRCWAQsMACAAIAEpAhA3AwALDgAgAUGcl8AAQQsQlgELDQAgAEHsncAAIAEQHAuoAwIHfwF+IAAoAgAhACMAQdAAayICJAAgAkEgaiAAIAAoAgAoAgQRAgAgAiACQcgAaq1CgICAgLAGhDcDKEEBIQMgAkEBNgI0IAJBxKDAADYCMCACQgE3AjwgAiACKQMgNwJIIAIgAkEoajYCOAJAIAEoAhQiByABKAIYIgggAkEwahAcDQAgAS0AHEEEcUUEQEEAIQMMAQsgAkEYaiAAIAAoAgAoAgQRAgAgAkEoaq1CgICAgLAGhCEJIAIoAhwhBCACKAIYIQVBACEAQQEhBgNAAkAgAEEBcQRAIAQhASAFIQAMAQsgBSEAIAQhAQNAIABFBEBBACEDDAQLIAJBEGogACABKAIYEQIAIAIoAhQhASACKAIQIQAgBkEBayIGDQALCyAAQQBHIQMgAEUNASACQQhqIAAgASgCGBECACACKAIMIQQgAigCCCEFIAIgATYCLCACIAA2AihBASEAIAJBATYCNCACQdCgwAA2AjAgAkIBNwI8IAIgCTcDSCACIAJByABqNgI4QQAhBiAHIAggAkEwahC5AUUNAAsLIAJB0ABqJAAgAwsKACAAIAEgAhAcCw4AIAFBhJ7AAEEFEJYBCw0AIABBzKPAACABEBwLDABB/OXAAEEyEAEACykAAn8gACgCAC0AAEUEQCABQfTGwABBBRARDAELIAFB+cbAAEEEEBELCw0AIABBoKfAACABEBwLzAEBBn8gACgCACECIwBBgAFrIgQkACABKAIEIQcgASgCACEGIAEoAhwiBSEAAkAgBUEEcUUNACAFQQhyIQAgBg0AIAFCgYCAgKABNwIACyABIABBBHI2AhxBACEAA0AgACAEakH/AGogAkEPcSIDQTByIANB1wBqIANBCkkbOgAAIABBAWshACACQQ9LIAJBBHYhAg0ACyABQZfFwABBAiAAIARqQYABakEAIABrEBQgASAFNgIcIAEgBzYCBCABIAY2AgAgBEGAAWokAAsMACAAIAEpAgA3AwALDQAgAUHgrsAAQQIQEQsNACAAQfSxwAAgARAcCw4AIAFBn7HAAEEFEJYBCw4AIAFBrL3AAEESEJYBCw0AIABByL/AACABEBwLDgAgAUG4v8AAQQUQlgELDgAgAUG9v8AAQQsQlgELGgAgACABQdzmwAAoAgAiAEHAACAAGxECAAALDQAgAEHsxMAAIAEQHAsKACACIAAgARARC7cJAQd/AkACQCACIgUgACIDIAFrSwRAIAEgAmohACACIANqIQMgAkEQSQ0BQQAgA0EDcSIGayEIAkAgA0F8cSIEIANPDQAgBkEBawJAIAZF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ahAcDQEgBSgCSCIARQ0AIAUoAkwgAEEBEKwBC0EAIRUMAQsgBSgCSCIARQ0AIAUoAkwgAEEBEKwBCyAFQYABaiQAIBULCAAgACABEEULBABBAAsCAAsLwWQQAEGAgMAACwUvAAAAAQBBjoDAAAvLAxAAAQAAAC9ydXN0Yy85ZmM2YjQzMTI2NDY5ZTM4NThlMmZlODZjYWZiNGYwZmQ1MDY4ODY5L2xpYnJhcnkvYWxsb2Mvc3JjL3N0cmluZy5ycwAUABAASwAAAI0FAAAbAAAAL3J1c3RjLzlmYzZiNDMxMjY0NjllMzg1OGUyZmU4NmNhZmI0ZjBmZDUwNjg4NjkvbGlicmFyeS9hbGxvYy9zcmMvcmF3X3ZlYy5yc3AAEABMAAAAKwIAABEAAAABAAAADAAAAAQAAAACAAAAAwAAAAQAAAAvVXNlcnMvbWlseWluLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvd2FzbS1iaW5kZ2VuLTAuMi4xMDAvc3JjL2NvbnZlcnQvc2xpY2VzLnJzAAAA5AAQAG0AAAAkAQAADgAAAEVycm9yL3J1c3RjLzlmYzZiNDMxMjY0NjllMzg1OGUyZmU4NmNhZmI0ZjBmZDUwNjg4NjkvbGlicmFyeS9hbGxvYy9zcmMvc3RyaW5nLnJzaQEQAEsAAACNBQAAGwAAAAgAAAAMAAAABAAAAAkAAAAKAAAABABB5IPAAAvJHQEAAAALAAAAYSBEaXNwbGF5IGltcGxlbWVudGF0aW9uIHJldHVybmVkIGFuIGVycm9yIHVuZXhwZWN0ZWRseQBpARAASwAAAIAKAAAOAAAAAQAAAAAAAAABAAAAAAAAAFRyaWVkIHRvIGNvbmNhdGVuYXRlICAoZW5kcyB3aXRoICopIGFuZCAgKHN0YXJ0cyB3aXRoICopLCB3aGljaCB3b3VsZCBsaWtlbHkgaGF2ZSBjYXVzZWQgYnVncy4gSWYgeW91J3JlIHN1cmUgeW91IHdhbnQgdG8gZG8gdGhpcywgY29uY2F0ZW5hdGUgdGhlc2UgaW50byBhIHN0cmluZyBhbmQgdGhlbiB0cnkgdG8gY29udmVydC4ARAIQABUAAABZAhAAEwAAAGwCEACTAAAAL3J1c3RjLzlmYzZiNDMxMjY0NjllMzg1OGUyZmU4NmNhZmI0ZjBmZDUwNjg4NjkvbGlicmFyeS9jb3JlL3NyYy9zdHIvcGF0dGVybi5yc2Rlc2NyaXB0aW9uKCkgaXMgZGVwcmVjYXRlZDsgdXNlIERpc3BsYXkvcnVzdGMvOWZjNmI0MzEyNjQ2OWUzODU4ZTJmZTg2Y2FmYjRmMGZkNTA2ODg2OS9saWJyYXJ5L2FsbG9jL3NyYy9zbGljZS5ycwAAAI8DEABKAAAAnwAAABkAAAAYAxAATwAAAM0BAAA3AAAAGAMQAE8AAAAJAgAANwAAAC9Vc2Vycy9taWx5aW4vLmNhcmdvL2dpdC9jaGVja291dHMvemVub2gtY2MyMzdmMjU3MGZhYjgxMy8yNjJjNmJkL2NvbW1vbnMvemVub2gta2V5ZXhwci9zcmMva2V5X2V4cHIvYm9ycm93ZWQucnNJbnZhbGlkIEtleSBFeHByIGBgOiBgJGAgaXMgbm90IGFsbG93ZWQgYWZ0ZXIgYCQqYAAAfAQQABIAAACOBBAAIAAAAA0AAAAcAAAABAAAAA4AAAANAAAAHAAAAAQAAAAPAAAADgAAAMAEEAAQAAAAEQAAABIAAAATAAAAFAAAAGA6IGAkYCBpcyBvbmx5IGFsbG93ZWQgaW4gYCQqYAAAfAQQABIAAAD8BBAAHgAAAGA6IGAjYCBhbmQgYD9gIGFyZSBmb3JiaWRkZW4gY2hhcmFjdGVycwB8BBAAEgAAACwFEAAnAAAAYDogZW1wdHkgY2h1bmtzIGFyZSBmb3JiaWRkZW4sIGFzIHdlbGwgYXMgbGVhZGluZyBhbmQgdHJhaWxpbmcgc2xhc2hlcwAAfAQQABIAAABkBRAARgAAAGA6IGAqYCBhbmQgYCoqYCBtYXkgb25seSBiZSBwcmVjZWRlZCBhbiBmb2xsb3dlZCBieSBgL2AAfAQQABIAAAC8BRAANwAAAGA6IGAqKi8qYCBtdXN0IGJlIHJlcGxhY2VkIGJ5IGAqLyoqYCB0byByZWFjaCBjYW5vbi1mb3JtfAQQABIAAAAEBhAAOAAAAGA6IGAqKi8qKmAgbXVzdCBiZSByZXBsYWNlZCBieSBgKipgIHRvIHJlYWNoIGNhbm9uLWZvcm0AfAQQABIAAABMBhAANwAAAGA6IGxvbmUgYCQqYHMgbXVzdCBiZSByZXBsYWNlZCBieSBgKmAgdG8gcmVhY2ggY2Fub24tZm9ybQAAAHwEEAASAAAAlAYQADkAAAAvVXNlcnMvbWlseWluLy5jYXJnby9naXQvY2hlY2tvdXRzL3plbm9oLWNjMjM3ZjI1NzBmYWI4MTMvMjYyYzZiZC9jb21tb25zL3plbm9oLWtleWV4cHIvc3JjL2tleV9leHByL2Nhbm9uLnJzAAAA4AYQAG0AAAAcAAAAFgAAAOAGEABtAAAAJgAAABEAAADgBhAAbQAAAC8AAAARAAAA4AYQAG0AAAAqAAAAHgAAAC8qKgDgBhAAbQAAACoAAAA1AAAA4AYQAG0AAAA5AAAAGgAAACoqLwDgBhAAbQAAAFMAAAAjAAAA4AYQAG0AAABCAAAAIwAAAOAGEABtAAAASAAAACMAAADgBhAAbQAAAEoAAAAtAAAA4AYQAG0AAAAaAAAAFQAAAC9Vc2Vycy9taWx5aW4vLmNhcmdvL2dpdC9jaGVja291dHMvemVub2gtY2MyMzdmMjU3MGZhYjgxMy8yNjJjNmJkL2NvbW1vbnMvemVub2gta2V5ZXhwci9zcmMva2V5X2V4cHIvaW5jbHVkZS5ycwAICBAAbwAAAFMAAABSAAAAd2luZG93IHNpemUgbXVzdCBiZSBub24temVybwgIEABvAAAAVwAAACQAAAAICBAAbwAAAFkAAAAtAAAAL1VzZXJzL21pbHlpbi8uY2FyZ28vZ2l0L2NoZWNrb3V0cy96ZW5vaC1jYzIzN2YyNTcwZmFiODEzLzI2MmM2YmQvY29tbW9ucy96ZW5vaC1rZXlleHByL3NyYy9rZXlfZXhwci91dGlscy5ycwAAAMQIEABtAAAAkQAAAC8AAADECBAAbQAAAJkAAAAUAAAAZGVzdCBpcyBvdXQgb2YgYm91bmRzAAAAVAkQABUAAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlOiBpbnZhbGlkIE9uY2Ugc3RhdGV0CRAAPAAAAC9ydXN0Yy85ZmM2YjQzMTI2NDY5ZTM4NThlMmZlODZjYWZiNGYwZmQ1MDY4ODY5L2xpYnJhcnkvc3RkL3NyYy9zeXMvc3luYy9vbmNlL25vX3RocmVhZHMucnMAuAkQAFsAAAA2AAAAEgAAAC9Vc2Vycy9taWx5aW4vLmNhcmdvL2dpdC9jaGVja291dHMvemVub2gtY2MyMzdmMjU3MGZhYjgxMy8yNjJjNmJkL2NvbW1vbnMvemVub2gta2V5ZXhwci9zcmMva2V5X2V4cHIvaW50ZXJzZWN0L2NsYXNzaWNhbC5ycwAkChAAewAAAB4AAAA+AAAAJAoQAHsAAAAbAAAAMQAAACQKEAB7AAAAJQAAADEAAAAkChAAewAAAC4AAAA2AAAAZGVzY3JpcHRpb24oKSBpcyBkZXByZWNhdGVkOyB1c2UgRGlzcGxheQAAAAAAAAAAAQAAABUAAABjYWxsZWQgYFJlc3VsdDo6dW53cmFwKClgIG9uIGFuIGBFcnJgIHZhbHVlL3J1c3RjLzlmYzZiNDMxMjY0NjllMzg1OGUyZmU4NmNhZmI0ZjBmZDUwNjg4NjkvbGlicmFyeS9hbGxvYy9zcmMvc3luYy5yc0MLEABJAAAA4AcAACkAAABMYXlvdXRFcnJvcgAWAAAADAAAAAQAAAAXAAAAFgAAAAwAAAAEAAAAGAAAABcAAACoCxAAGQAAABoAAAAbAAAAHAAAAB0AAAAeAAAAKAAAAAQAAAAfAAAAHgAAACgAAAAEAAAAIAAAAB8AAADkCxAAIQAAACIAAAAjAAAAIQAAACQAAAAlAAAAJgAAACcAAAAoAAAAKQAAACoAAABOb24tbmVnYXRpdmUgdmFsdWUgdXNlZCBpbiBOZWdhdGl2ZUk4AAAAOAwQACUAAAAvVXNlcnMvbWlseWluLy5jYXJnby9naXQvY2hlY2tvdXRzL3plbm9oLWNjMjM3ZjI1NzBmYWI4MTMvMjYyYzZiZC9jb21tb25zL3plbm9oLXJlc3VsdC9zcmMvbGliLnJzAAAAaAwQAGEAAABvAAAADQAAACBhdCA6LgAAAQAAAAAAAADcDBAABAAAAOAMEAABAAAA4QwQAAEAAAAgLSBDYXVzZWQgYnkgAAAABA0QAA0AAAAvcnVzdGMvOWZjNmI0MzEyNjQ2OWUzODU4ZTJmZTg2Y2FmYjRmMGZkNTA2ODg2OS9saWJyYXJ5L2NvcmUvc3JjL3B0ci9tb2QucnMAHA0QAEsAAAAJAgAAAQAAAC9ydXN0Yy85ZmM2YjQzMTI2NDY5ZTM4NThlMmZlODZjYWZiNGYwZmQ1MDY4ODY5L2xpYnJhcnkvY29yZS9zcmMvc2xpY2UvaW5kZXgucnMAeA0QAE8AAABMAwAANAAAAHgNEABPAAAAUwMAADIAAABhc3NlcnRpb24gZmFpbGVkOiBzZWxmLmlzX2NoYXJfYm91bmRhcnkobikvcnVzdGMvOWZjNmI0MzEyNjQ2OWUzODU4ZTJmZTg2Y2FmYjRmMGZkNTA2ODg2OS9saWJyYXJ5L2FsbG9jL3NyYy9zdHJpbmcucnMAAAASDhAASwAAAMQHAAAdAAAAEg4QAEsAAADMBwAAHQAAABIOEABLAAAAjQUAABsAAAAvcnVzdGMvOWZjNmI0MzEyNjQ2OWUzODU4ZTJmZTg2Y2FmYjRmMGZkNTA2ODg2OS9saWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjLnJzkA4QAEwAAAArAgAAEQAAAC8AAAAMAAAABAAAADAAAAAxAAAAMgAAAEVycm9yL3J1c3RjLzlmYzZiNDMxMjY0NjllMzg1OGUyZmU4NmNhZmI0ZjBmZDUwNjg4NjkvbGlicmFyeS9hbGxvYy9zcmMvc3RyaW5nLnJzCQ8QAEsAAACNBQAAGwAAAGFzc2VydGlvbiBmYWlsZWQ6IHNlbGYuaXNfY2hhcl9ib3VuZGFyeShuZXdfbGVuKQkPEABLAAAAwAUAAA0AAAAAAAAAEAAAAAQAAAA1AAAANgAAADcAAABiYWNrdHJhY2UgY2FwdHVyZSBmYWlsZWQvVXNlcnMvbWlseWluLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvYW55aG93LTEuMC45Ny9zcmMvZXJyb3IucnMAAADUDxAAXQAAAOoDAAAOAAAAAQAAAAAAAAA6IAAATBAQAAIAAAAKCkNhdXNlZCBieToKAAAAOAAAAAwAAAAEAAAAOQAAADoAAAAyAAAACgpzdGFjayBiYWNrdHJhY2U6U3RhY2sgYmFja3RyYWNlOgoAkhAQABEAAABTAEG4ocAAC5UEAQAAADsAAABhIERpc3BsYXkgaW1wbGVtZW50YXRpb24gcmV0dXJuZWQgYW4gZXJyb3IgdW5leHBlY3RlZGx5AAkPEABLAAAAgAoAAA4AAAAvcnVzdGMvOWZjNmI0MzEyNjQ2OWUzODU4ZTJmZTg2Y2FmYjRmMGZkNTA2ODg2OS9saWJyYXJ5L2FsbG9jL3NyYy92ZWMvbW9kLnJzCBEQAEwAAAA6CgAAJAAAAC9ydXN0Yy85ZmM2YjQzMTI2NDY5ZTM4NThlMmZlODZjYWZiNGYwZmQ1MDY4ODY5L2xpYnJhcnkvY29yZS9zcmMvaXRlci90cmFpdHMvaXRlcmF0b3IucnNkERAAWAAAALMHAAAJAAAAAAAAABAAAAAEAAAANQAAADYAAAA3AAAAICAgIDogAAABAAAAAAAAAOgREAACAAAAICAgICAgIExhenkgaW5zdGFuY2UgaGFzIHByZXZpb3VzbHkgYmVlbiBwb2lzb25lZAAAAAMSEAAqAAAAL1VzZXJzL21pbHlpbi8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby02ZjE3ZDIyYmJhMTUwMDFmL29uY2VfY2VsbC0xLjIxLjMvc3JjL2xpYi5ycwAAOBIQAF4AAAAIAwAAGQAAAHJlZW50cmFudCBpbml0AACoEhAADgAAADgSEABeAAAAegIAAA0AQdilwAALyRAEAAAABAAAAEEAAAAvcnVzdGMvOWZjNmI0MzEyNjQ2OWUzODU4ZTJmZTg2Y2FmYjRmMGZkNTA2ODg2OS9saWJyYXJ5L2FsbG9jL3NyYy9zdHJpbmcucnMA5BIQAEsAAACNBQAAGwAAAC9ydXN0Yy85ZmM2YjQzMTI2NDY5ZTM4NThlMmZlODZjYWZiNGYwZmQ1MDY4ODY5L2xpYnJhcnkvYWxsb2Mvc3JjL3Jhd192ZWMucnNAExAATAAAACsCAAARAAAAOgAAAEIAAAAMAAAABAAAAEMAAABEAAAARQAAAC9ydXN0L2RlcHMvZGxtYWxsb2MtMC4yLjcvc3JjL2RsbWFsbG9jLnJzYXNzZXJ0aW9uIGZhaWxlZDogcHNpemUgPj0gc2l6ZSArIG1pbl9vdmVyaGVhZAC4ExAAKQAAAKgEAAAJAAAAYXNzZXJ0aW9uIGZhaWxlZDogcHNpemUgPD0gc2l6ZSArIG1heF9vdmVyaGVhZAAAuBMQACkAAACuBAAADQAAAHN0ZC9zcmMvYmFja3RyYWNlLnJzb3BlcmF0aW9uIG5vdCBzdXBwb3J0ZWQgb24gdGhpcyBwbGF0Zm9ybXQUEAAoAAAAJAAAAAIAAACcFBAAdW5zdXBwb3J0ZWQgYmFja3RyYWNlZGlzYWJsZWQgYmFja3RyYWNlAGAUEAAUAAAAigEAAB0AAABGAAAAEAAAAAQAAABHAAAASAAAAAEAAAAAAAAAOiBzdGQvc3JjL3N5bmMvbGF6eV9sb2NrLnJzAAYVEAAZAAAA0AAAABMAAABjYW5ub3QgcmVjdXJzaXZlbHkgYWNxdWlyZSBtdXRleDAVEAAgAAAAc3RkL3NyYy9zeXMvc3luYy9tdXRleC9ub190aHJlYWRzLnJzWBUQACQAAAAUAAAACQAAAHN0ZC9zcmMvc3luYy9vbmNlLnJzjBUQABQAAACeAAAAMgAAADx1bmtub3duPu+/vW1lbW9yeSBhbGxvY2F0aW9uIG9mICBieXRlcyBmYWlsZWQAALwVEAAVAAAA0RUQAA0AAABzdGQvc3JjL2FsbG9jLnJz8BUQABAAAABjAQAACQAAAAoAAABCAAAADAAAAAQAAABJAAAAAAAAAAgAAAAEAAAASgAAAAAAAAAIAAAABAAAAEsAAABMAAAATQAAAE4AAABPAAAAEAAAAAQAAABQAAAAUQAAAFIAAABTAAAAc3RkL3NyYy8uLi8uLi9iYWNrdHJhY2Uvc3JjL3N5bWJvbGl6ZS9tb2QucnNsFhAALAAAAGcBAAAwAAAAAQAAAAAAAAAEFRAAAgAAACAtIAABAAAAAAAAALgWEAADAAAAICAgICAgICAgICAgICAgICAgIGF0IAAAnBMQAAEAAABPbmNlIGluc3RhbmNlIGhhcyBwcmV2aW91c2x5IGJlZW4gcG9pc29uZWQAAOwWEAAqAAAAb25lLXRpbWUgaW5pdGlhbGl6YXRpb24gbWF5IG5vdCBiZSBwZXJmb3JtZWQgcmVjdXJzaXZlbHkgFxAAOAAAACgpAAAAAAAABAAAAAQAAABXAAAAL3J1c3RjLzlmYzZiNDMxMjY0NjllMzg1OGUyZmU4NmNhZmI0ZjBmZDUwNjg4NjkvbGlicmFyeS9jb3JlL3NyYy9vcHMvZnVuY3Rpb24ucnN0FxAAUAAAAKYAAAAFAAAAL3J1c3RjLzlmYzZiNDMxMjY0NjllMzg1OGUyZmU4NmNhZmI0ZjBmZDUwNjg4NjkvbGlicmFyeS9jb3JlL3NyYy9zdHIvcGF0dGVybi5ycwDUFxAATwAAAOEFAAAUAAAA1BcQAE8AAADhBQAA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AgMBAQEAAgsCNAUFAxcBAAEGDwAMAwMABTsHAAE/BFEBCwIAAgAuAhcABQMGCAgCBx4ElAMANwQyCAEOARYFAQ8ABwERAgcBAgEFZAGgBwABPQQABP4CAAdtBwBggPAAAgICAgICAgICAwMBAQEAQZ/jwAALEAEAAAAAAAAAAgIAAAAAAAIAQd7jwAALAQIAQYTkwAALAQEAQZ/kwAALAQEAQf/kwAALrwEvVXNlcnMvbWlseWluLy5jYXJnby9yZWdpc3RyeS9zcmMvaW5kZXguY3JhdGVzLmlvLTZmMTdkMjJiYmExNTAwMWYvd2FzbS1iaW5kZ2VuLTAuMi4xMDAvc3JjL2NvbnZlcnQvc2xpY2VzLnJzfzIQAG0AAAAkAQAADgAAAGNsb3N1cmUgaW52b2tlZCByZWN1cnNpdmVseSBvciBhZnRlciBiZWluZyBkcm9wcGVkAEHI5sAACwE8AHAJcHJvZHVjZXJzAghsYW5ndWFnZQEEUnVzdAAMcHJvY2Vzc2VkLWJ5AwVydXN0Yx0xLjg0LjAgKDlmYzZiNDMxMiAyMDI1LTAxLTA3KQZ3YWxydXMGMC4yMy4zDHdhc20tYmluZGdlbgcwLjIuMTAwAEkPdGFyZ2V0X2ZlYXR1cmVzBCsPbXV0YWJsZS1nbG9iYWxzKwhzaWduLWV4dCsPcmVmZXJlbmNlLXR5cGVzKwptdWx0aXZhbHVl",uQ=Uint8Array.from(atob(NQ),I=>I.charCodeAt(0)),FQ=new WebAssembly.Module(uQ),z=new WebAssembly.Instance(FQ,{"./zenoh_keyexpr_wrapper_bg.js":Eg}),LQ=z.exports.memory,GQ=z.exports.new_key_expr,SQ=z.exports.join,UQ=z.exports.concat,RQ=z.exports.includes,MQ=z.exports.intersects,kQ=z.exports.autocanonize,dQ=z.exports.__wbindgen_export_0,JQ=z.exports.__wbindgen_malloc,fQ=z.exports.__wbindgen_realloc,pQ=z.exports.__externref_table_dealloc,YQ=z.exports.__wbindgen_free,eg=z.exports.__wbindgen_start;$B(ig);eg();var S=class I{constructor(A){Q(this,"inner_");let B;if(A instanceof I){this.inner_=A.inner_;return}else A instanceof String?B=A.toString():B=A;Ag(B),this.inner_=B}toString(){return this.inner_}join(A){let B=Ig(this.inner_,I.intoString(A));return new I(B)}concat(A){let B=Bg(this.inner_,I.intoString(A));return new I(B)}includes(A){return gg(this.inner_,I.intoString(A))}intersects(A){return Qg(this.inner_,I.intoString(A))}static autocanonize(A){let B=Cg(I.intoString(A));return new I(B)}static intoString(A){return A instanceof I?A.inner_:A instanceof String?A.toString():A}};var F=class I{constructor(A){Q(this,"buffer_");if(A instanceof I)this.buffer_=A.buffer_;else if(A instanceof String||typeof A=="string"){let g=new TextEncoder().encode(A.toString());this.buffer_=g}else this.buffer_=Uint8Array.from(A)}len(){return this.buffer_.length}isEmpty(){return this.buffer_.length==0}empty(){return new I(new Uint8Array)}toBytes(){return this.buffer_}toString(){return new TextDecoder().decode(this.buffer_)}};var L;(function(I){I[I.REAL_TIME=1]="REAL_TIME",I[I.INTERACTIVE_HIGH=2]="INTERACTIVE_HIGH",I[I.INTERACTIVE_LOW=3]="INTERACTIVE_LOW",I[I.DATA_HIGH=4]="DATA_HIGH",I[I.DATA=5]="DATA",I[I.DATA_LOW=6]="DATA_LOW",I[I.BACKGROUND=7]="BACKGROUND",I[I.DEFAULT=5]="DEFAULT"})(L||(L={}));var p;(function(I){I[I.DROP=0]="DROP",I[I.BLOCK=1]="BLOCK",I[I.DEFAULT_PUSH=0]="DEFAULT_PUSH",I[I.DEFAULT_REQUEST=1]="DEFAULT_REQUEST",I[I.DEFAULT_RESPONSE=1]="DEFAULT_RESPONSE"})(p||(p={}));var Y;(function(I){I[I.BEST_EFFORT=0]="BEST_EFFORT",I[I.RELIABLE=1]="RELIABLE",I[I.DEFAULT=1]="DEFAULT"})(Y||(Y={}));var R;(function(I){I[I.SESSION_LOCAL=0]="SESSION_LOCAL",I[I.REMOTE=1]="REMOTE",I[I.ANY=2]="ANY",I[I.DEFAULT=2]="DEFAULT"})(R||(R={}));var QA;(function(I){I[I.PUT=0]="PUT",I[I.DELETE=1]="DELETE"})(QA||(QA={}));var JA;(function(I){I[I.BEST_MATCHING=0]="BEST_MATCHING",I[I.ALL=1]="ALL",I[I.ALL_COMPLETE=2]="ALL_COMPLETE",I[I.DEFAULT=0]="DEFAULT"})(JA||(JA={}));var fA;(function(I){I[I.AUTO=0]="AUTO",I[I.NONE=1]="NONE",I[I.MONOTONIC=2]="MONOTONIC",I[I.LATEST=3]="LATEST",I[I.DEFAULT=0]="DEFAULT"})(fA||(fA={}));var tg;(function(I){I[I.ROUTER=1]="ROUTER",I[I.PEER=2]="PEER",I[I.CLIENT=4]="CLIENT"})(tg||(tg={}));var _;(function(I){I[I.ANY=0]="ANY",I[I.MATCHING_QUERY=1]="MATCHING_QUERY",I[I.DEFAULT=1]="DEFAULT"})(_||(_={}));var VA=class{constructor(A,B,g,C,E,e,t,n,h){Q(this,"keyexpr_");Q(this,"payload_");Q(this,"kind_");Q(this,"encoding_");Q(this,"attachment_");Q(this,"timestamp_");Q(this,"priority_");Q(this,"congestionControl_");Q(this,"express_");this.keyexpr_=A,this.payload_=B,this.kind_=g,this.encoding_=C,this.attachment_=E,this.timestamp_=e,this.priority_=t,this.congestionControl_=n,this.express_=h}keyexpr(){return this.keyexpr_}payload(){return this.payload_}kind(){return this.kind_}encoding(){return this.encoding_}timestamp(){return this.timestamp_}congestionControl(){return this.congestionControl_}priority(){return this.priority_}express(){return this.express_}attachment(){return this.attachment_}};var $A=class{constructor(A,B){Q(this,"zid");Q(this,"ntp64");this.zid=A,this.ntp64=B}getId(){return this.zid}getNtp64(){return this.ntp64}getMsSinceUnixEpoch(){let A=Number(this.ntp64>>32n),g=Number(this.ntp64&0xffffffffn)*1e3/4294967296;return A*1e3+g}asDate(){return new Date(this.getMsSinceUnixEpoch())}};var AI=class AI{constructor(A){Q(this,"zid");if(this.zid=A,A.length!=16)throw new Error("Zid should contain exactly 16 bytes")}toString(){let A="";for(let B=this.zid.length-1;B>=0;--B){let g=this.zid[B];A+=AI.KEY[g>>4],A+=AI.KEY[g&15]}return A}toLeBytes(){return this.zid}};Q(AI,"KEY","0123456789abcdef");var II=AI;var r;(function(I){I[I.ZENOH_BYTES=0]="ZENOH_BYTES",I[I.ZENOH_STRING=1]="ZENOH_STRING",I[I.ZENOH_SERIALIZED=2]="ZENOH_SERIALIZED",I[I.APPLICATION_OCTET_STREAM=3]="APPLICATION_OCTET_STREAM",I[I.TEXT_PLAIN=4]="TEXT_PLAIN",I[I.APPLICATION_JSON=5]="APPLICATION_JSON",I[I.TEXT_JSON=6]="TEXT_JSON",I[I.APPLICATION_CDR=7]="APPLICATION_CDR",I[I.APPLICATION_CBOR=8]="APPLICATION_CBOR",I[I.APPLICATION_YAML=9]="APPLICATION_YAML",I[I.TEXT_YAML=10]="TEXT_YAML",I[I.TEXT_JSON5=11]="TEXT_JSON5",I[I.APPLICATION_PYTHON_SERIALIZED_OBJECT=12]="APPLICATION_PYTHON_SERIALIZED_OBJECT",I[I.APPLICATION_PROTOBUF=13]="APPLICATION_PROTOBUF",I[I.APPLICATION_JAVA_SERIALIZED_OBJECT=14]="APPLICATION_JAVA_SERIALIZED_OBJECT",I[I.APPLICATION_OPENMETRICS_TEXT=15]="APPLICATION_OPENMETRICS_TEXT",I[I.IMAGE_PNG=16]="IMAGE_PNG",I[I.IMAGE_JPEG=17]="IMAGE_JPEG",I[I.IMAGE_GIF=18]="IMAGE_GIF",I[I.IMAGE_BMP=19]="IMAGE_BMP",I[I.IMAGE_WEBP=20]="IMAGE_WEBP",I[I.APPLICATION_XML=21]="APPLICATION_XML",I[I.APPLICATION_X_WWW_FORM_URLENCODED=22]="APPLICATION_X_WWW_FORM_URLENCODED",I[I.TEXT_HTML=23]="TEXT_HTML",I[I.TEXT_XML=24]="TEXT_XML",I[I.TEXT_CSS=25]="TEXT_CSS",I[I.TEXT_JAVASCRIPT=26]="TEXT_JAVASCRIPT",I[I.TEXT_MARKDOWN=27]="TEXT_MARKDOWN",I[I.TEXT_CSV=28]="TEXT_CSV",I[I.APPLICATION_SQL=29]="APPLICATION_SQL",I[I.APPLICATION_COAP_PAYLOAD=30]="APPLICATION_COAP_PAYLOAD",I[I.APPLICATION_JSON_PATCH_JSON=31]="APPLICATION_JSON_PATCH_JSON",I[I.APPLICATION_JSON_SEQ=32]="APPLICATION_JSON_SEQ",I[I.APPLICATION_JSONPATH=33]="APPLICATION_JSONPATH",I[I.APPLICATION_JWT=34]="APPLICATION_JWT",I[I.APPLICATION_MP4=35]="APPLICATION_MP4",I[I.APPLICATION_SOAP_XML=36]="APPLICATION_SOAP_XML",I[I.APPLICATION_YANG=37]="APPLICATION_YANG",I[I.AUDIO_AAC=38]="AUDIO_AAC",I[I.AUDIO_FLAC=39]="AUDIO_FLAC",I[I.AUDIO_MP4=40]="AUDIO_MP4",I[I.AUDIO_OGG=41]="AUDIO_OGG",I[I.AUDIO_VORBIS=42]="AUDIO_VORBIS",I[I.VIDEO_H261=43]="VIDEO_H261",I[I.VIDEO_H263=44]="VIDEO_H263",I[I.VIDEO_H264=45]="VIDEO_H264",I[I.VIDEO_H265=46]="VIDEO_H265",I[I.VIDEO_H266=47]="VIDEO_H266",I[I.VIDEO_MP4=48]="VIDEO_MP4",I[I.VIDEO_OGG=49]="VIDEO_OGG",I[I.VIDEO_RAW=50]="VIDEO_RAW",I[I.VIDEO_VP8=51]="VIDEO_VP8",I[I.VIDEO_VP9=52]="VIDEO_VP9",I[I.CUSTOM=65535]="CUSTOM"})(r||(r={}));function fg(I){switch(I){case r.APPLICATION_OCTET_STREAM:return"application/octet-stream";case r.APPLICATION_PYTHON_SERIALIZED_OBJECT:return"application/python-serialized-object";case r.APPLICATION_JAVA_SERIALIZED_OBJECT:return"application/java-serialized-object";case r.APPLICATION_OPENMETRICS_TEXT:return"application/openmetrics-text";case r.APPLICATION_X_WWW_FORM_URLENCODED:return"application/x-www-form-urlencoded";case r.APPLICATION_COAP_PAYLOAD:return"application/coap-payload";case r.APPLICATION_JSON_PATCH_JSON:return"application/json-patch+json";case r.APPLICATION_JSON_SEQ:return"application/json-seq";case r.APPLICATION_SOAP_XML:return"application/soap+xml";default:return r[I].toLocaleLowerCase().replaceAll("_","/")}}function bQ(){let I=new Map;for(let A in r){let B=Number(A);!isNaN(B)&&B!=r.CUSTOM&&I.set(B,fg(B))}return I}function HQ(){let I=new Map;for(let A in r){let B=Number(A);!isNaN(B)&&B!=r.CUSTOM&&I.set(fg(B),B)}return I}var i=class i{constructor(A,B){Q(this,"id");Q(this,"schema");this.id=A,this.schema=B}withSchema(A){if(this.id!=r.CUSTOM||this.schema==null)return new i(this.id,A);{let B=this.schema.indexOf(i.SEP);return B==-1?new i(this.id,this.schema+";"+A):new i(this.id,this.schema.substring(0,B)+";"+A)}}static default(){return new i(r.ZENOH_BYTES)}toString(){let A="";return this.id!=r.CUSTOM&&(A+=i.ID_TO_ENCODING.get(this.id)),this.schema!=null&&(this.id!=r.CUSTOM&&(A+=";"),A+=this.schema),A}static fromString(A){if(A.length==0)return new i(r.ZENOH_BYTES,void 0);let B=A.indexOf(i.SEP),g,C;B==-1?g=A:(g=A.substring(0,B),C=A.substring(B+1));let E=i.ENCODING_TO_ID.get(g)??r.CUSTOM;return E==r.CUSTOM&&(C=C?g+";"+C:g),new i(E,C)}static from(A){return A instanceof i?A:i.fromString(A.toString())}toIdSchema(){return[this.id,this.schema]}};Q(i,"ID_TO_ENCODING",bQ()),Q(i,"ENCODING_TO_ID",HQ()),Q(i,"SEP",";"),Q(i,"ZENOH_BYTES",new i(r.ZENOH_BYTES)),Q(i,"ZENOH_STRING",new i(r.ZENOH_STRING)),Q(i,"ZENOH_SERIALIZED",new i(r.ZENOH_SERIALIZED)),Q(i,"APPLICATION_OCTET_STREAM",new i(r.APPLICATION_OCTET_STREAM)),Q(i,"TEXT_PLAIN",new i(r.TEXT_PLAIN)),Q(i,"APPLICATION_JSON",new i(r.APPLICATION_JSON)),Q(i,"TEXT_JSON",new i(r.TEXT_JSON)),Q(i,"APPLICATION_CDR",new i(r.APPLICATION_CDR)),Q(i,"APPLICATION_CBOR",new i(r.APPLICATION_CBOR)),Q(i,"APPLICATION_YAML",new i(r.APPLICATION_YAML)),Q(i,"TEXT_YAML",new i(r.TEXT_YAML)),Q(i,"TEXT_JSON5",new i(r.TEXT_JSON5)),Q(i,"APPLICATION_PROTOBUF",new i(r.APPLICATION_PROTOBUF)),Q(i,"APPLICATION_PYTHON_SERIALIZED_OBJECT",new i(r.APPLICATION_PYTHON_SERIALIZED_OBJECT)),Q(i,"APPLICATION_JAVA_SERIALIZED_OBJECT",new i(r.APPLICATION_JAVA_SERIALIZED_OBJECT)),Q(i,"APPLICATION_OPENMETRICS_TEXT",new i(r.APPLICATION_OPENMETRICS_TEXT)),Q(i,"IMAGE_PNG",new i(r.IMAGE_PNG)),Q(i,"IMAGE_JPEG",new i(r.IMAGE_JPEG)),Q(i,"IMAGE_GIF",new i(r.IMAGE_GIF)),Q(i,"IMAGE_BMP",new i(r.IMAGE_BMP)),Q(i,"IMAGE_WEBP",new i(r.IMAGE_WEBP)),Q(i,"APPLICATION_XML",new i(r.APPLICATION_XML)),Q(i,"APPLICATION_X_WWW_FORM_URLENCODED",new i(r.APPLICATION_X_WWW_FORM_URLENCODED)),Q(i,"TEXT_HTML",new i(r.TEXT_HTML)),Q(i,"TEXT_XML",new i(r.TEXT_XML)),Q(i,"TEXT_CSS",new i(r.TEXT_CSS)),Q(i,"TEXT_JAVASCRIPT",new i(r.TEXT_JAVASCRIPT)),Q(i,"TEXT_MARKDOWN",new i(r.TEXT_MARKDOWN)),Q(i,"TEXT_CSV",new i(r.TEXT_CSV)),Q(i,"APPLICATION_SQL",new i(r.APPLICATION_SQL)),Q(i,"APPLICATION_COAP_PAYLOAD",new i(r.APPLICATION_COAP_PAYLOAD)),Q(i,"APPLICATION_JSON_PATCH_JSON",new i(r.APPLICATION_JSON_PATCH_JSON)),Q(i,"APPLICATION_JSON_SEQ",new i(r.APPLICATION_JSON_SEQ)),Q(i,"APPLICATION_JSONPATH",new i(r.APPLICATION_JSONPATH)),Q(i,"APPLICATION_JWT",new i(r.APPLICATION_JWT)),Q(i,"APPLICATION_MP4",new i(r.APPLICATION_MP4)),Q(i,"APPLICATION_SOAP_XML",new i(r.APPLICATION_SOAP_XML)),Q(i,"APPLICATION_YANG",new i(r.APPLICATION_YANG)),Q(i,"AUDIO_AAC",new i(r.AUDIO_AAC)),Q(i,"AUDIO_FLAC",new i(r.AUDIO_FLAC)),Q(i,"AUDIO_MP4",new i(r.AUDIO_MP4)),Q(i,"AUDIO_OGG",new i(r.AUDIO_OGG)),Q(i,"AUDIO_VORBIS",new i(r.AUDIO_VORBIS)),Q(i,"VIDEO_H261",new i(r.VIDEO_H261)),Q(i,"VIDEO_H263",new i(r.VIDEO_H263)),Q(i,"VIDEO_H264",new i(r.VIDEO_H264)),Q(i,"VIDEO_H265",new i(r.VIDEO_H265)),Q(i,"VIDEO_H266",new i(r.VIDEO_H266)),Q(i,"VIDEO_MP4",new i(r.VIDEO_MP4)),Q(i,"VIDEO_OGG",new i(r.VIDEO_OGG)),Q(i,"VIDEO_RAW",new i(r.VIDEO_RAW)),Q(i,"VIDEO_VP8",new i(r.VIDEO_VP8)),Q(i,"VIDEO_VP9",new i(r.VIDEO_VP9));var J=i;var lA=GI(rg(),1);function KQ(I){return I.intoSenderReceiverPair!=null}function O(I){if(KQ(I)){let[A,B]=I.intoSenderReceiverPair();return[E=>{A.send(E)},()=>{A.close()},B]}else return Array.isArray(I)?[I[0],I[1],void 0]:[I,()=>{},void 0]}var m=class{constructor(A){Q(this,"chan");Q(this,"capacity");Q(this,"size");this.capacity=A,this.size=0,this.chan=new lA.SimpleChannel}send(A){this.size!=this.capacity&&(this.chan.send(A),this.size++)}state(){return this.chan.state}tryReceive(){let A=this.chan.tryReceive();return A.kind==lA.TryReceivedKind.value&&this.size--,A}async receive(){let A=await this.chan.receive();return this.size--,A}close(){this.chan.close()}async*[Symbol.asyncIterator](){try{for(;;)yield await this.receive()}catch{}}intoSenderReceiverPair(){return[this,this]}};var mg=()=>typeof self<"u"&&typeof self.WebAssembly<"u"||typeof global<"u"&&typeof global.WebAssembly<"u";var BI=(I,A=B=>B!==void 0?": "+B:"")=>class extends Error{constructor(g){super(I(g)+A(g));Q(this,"origMessage");this.origMessage=g!==void 0?String(g):""}};var qQ=BI(()=>"index out of bounds"),xQ=I=>{throw new qQ(I)},Tg=(I,A,B)=>(I<A||I>=B)&&xQ(I);var OQ=BI(()=>"unsupported operation"),Kg=I=>{throw new OQ(I)};var YE=BI(()=>"unsupported feature");var qg="AGFzbQEAAAABCgJgAX4Bf2AAAX4DBQQAAQABBQMBABEGEQJ/AUGAgMAAC38AQYCAwAALB1gGBm1lbW9yeQIAD2xlYjEyOEVuY29kZVU2NAAAA2J1ZgMBD2xlYjEyOERlY29kZVU2NAABD2xlYjEyOEVuY29kZUk2NAACD2xlYjEyOERlY29kZUk2NAADCoYEBFsBAn8CQCAAQoABWgRAA0AgAUGAgEBrIACnQf8AcSAAQv8AVkEHdHI6AAAgAUEBaiEBIABCgAFUIABCB4ghAEUNAAsMAQtBgIDAACAAPAAAQQEhAQsgAUH/AXELdwIEfwF+IwBBEGsiACQAIABBADoADwNAAkAgACAALQAPIgJBB2pBP3E6AA8gAUGAgEBrLAAAIgNB/wBxrSACQT9xrYYgBIQhBCABQQFqIQIgAUEISw0AIAIhASADQQBIDQELC0GAgMAAIAI6AAAgAEEQaiQAIAQLkQEBA38CQCAAQkB9QoABWgRAQQEhAgNAIAJBAXFFDQIgAUGAgEBrQQBBgH8gAKciAkHAAHEiA0UgAEKAAVRxIANBBnYgAEIHhyIAQn9RcXIiAxsgAkH/AHFyOgAAIANFIQIgAUEBaiEBDAALAAtBgIDAACAAQjmIp0HAAHEgAKdBP3FyOgAAQQEhAQsgAUH/AXELnAECAX4EfyMAQRBrIgEkACABQQA6AA9BfyECA0ACQCABIAEtAA8iA0EHakE/cToADyACQYGAwABqLQAAIgRB/wBxrSADQT9xrYYgAIQhACAEwCEDIAJBAWoiAkEISw0AIANBAEgNAQsLIANBwABxRSACQQhLckUEQEJ/IAExAA+GIACEIQALQYCAwAAgAkEBajoAACABQRBqJAAgAAs=";var NA,gI;mg()&&(NA=new WebAssembly.Instance(new WebAssembly.Module(new Uint8Array([...atob(qg)].map(A=>A.charCodeAt(0))))).exports,gI=new Uint8Array(NA.memory.buffer,NA.buf,16));var og=()=>!NA&&Kg("WASM module unavailable"),xg=(I,A)=>B=>{og();let g=A?BigInt.asIntN(64,BigInt(B)):BigInt.asUintN(64,BigInt(B));return gI.slice(0,NA[I](g))},Og=(I,A)=>(B,g,C=0)=>{og();let E=A?BigInt.asIntN(64,BigInt(g)):BigInt.asUintN(64,BigInt(g)),e=NA[I](E);return Tg(C,0,B.length-e+1),B.set(gI.subarray(0,e),C),e},zg=(I,A)=>(B,g=0)=>{og(),gI.set(B.subarray(g,Math.min(g+10,B.length)),0);let C=NA[I](0,0);return[A?BigInt.asIntN(64,C):BigInt.asUintN(64,C),gI[0]]},xE=xg("leb128EncodeI64",!0),OE=zg("leb128DecodeI64",!0),zE=Og("leb128EncodeI64",!0),WE=xg("leb128EncodeU64",!1),Wg=zg("leb128DecodeU64",!1),Zg=Og("leb128EncodeU64",!0);function WQ(I){return I instanceof Uint8Array}function ZQ(I){return I instanceof Uint16Array}function jQ(I){return I instanceof Uint32Array}function _Q(I){return I instanceof BigUint64Array}function vQ(I){return I instanceof Int8Array}function PQ(I){return I instanceof Int16Array}function XQ(I){return I instanceof Int32Array}function VQ(I){return I instanceof BigInt64Array}function $Q(I){return I instanceof Float32Array}function AC(I){return I instanceof Float64Array}var T=new Uint32Array(new Uint8Array([1,2,3,4]).buffer)[0]===67305985;function IC(I){return I.serializeWithZSerializer!==void 0}var rA=class rA{constructor(){Q(this,"buffer");Q(this,"bufferLen");Q(this,"data");Q(this,"len");this.data=new Array,this.len=0,this.buffer=new Uint8Array(rA.DEFAULT_BUFFER_SIZE),this.bufferLen=0}resetBuffer(A){A<rA.DEFAULT_BUFFER_SIZE&&(A=rA.DEFAULT_BUFFER_SIZE),this.buffer=new Uint8Array(A),this.bufferLen=0}ensureBuffer(A){return this.bufferLen+A>=this.buffer.length&&this.resetBuffer(A),this.bufferLen+=A,this.buffer.subarray(this.bufferLen-A,this.bufferLen)}append(A){this.data.push(A),this.len+=A.length}writeSequenceLength(A){if(A<=rA.MAX_SEQUENCE_LENGTH_TO_FIT_IN_SINGLE_BYTE){this.serializeNumberUint8(A);return}let B=this.ensureBuffer(10),g=Zg(B,A);B=B.subarray(0,g),this.bufferLen-=10-g,this.append(B)}serializeString(A){if(A.length==0)this.writeSequenceLength(0);else{let g=new TextEncoder().encode(A);this.writeSequenceLength(g.length),this.append(g)}}serializeUint8Array(A){this.writeSequenceLength(A.length),this.append(A)}serializeUint16Array(A){this.writeSequenceLength(A.length),T?this.append(new Uint8Array(A.buffer)):A.forEach(B=>this.serializeNumberUint16(B))}serializeUint32Array(A){this.writeSequenceLength(A.length),T?this.append(new Uint8Array(A.buffer)):A.forEach(B=>this.serializeNumberUint32(B))}serializeBiguint64Array(A){this.writeSequenceLength(A.length),T?this.append(new Uint8Array(A.buffer)):A.forEach(B=>this.serializeBigintUint64(B))}serializeInt8Array(A){this.writeSequenceLength(A.length),this.append(new Uint8Array(A.buffer))}serializeInt16Array(A){this.writeSequenceLength(A.length),T?this.append(new Uint8Array(A.buffer)):A.forEach(B=>this.serializeNumberInt16(B))}serializeInt32Array(A){this.writeSequenceLength(A.length),T?this.append(new Uint8Array(A.buffer)):A.forEach(B=>this.serializeNumberInt32(B))}serializeBigint64Array(A){this.writeSequenceLength(A.length),T?this.append(new Uint8Array(A.buffer)):A.forEach(B=>this.serializeBigintInt64(B))}serializeFloat32Array(A){this.writeSequenceLength(A.length),T?this.append(new Uint8Array(A.buffer)):A.forEach(B=>this.serializeNumberFloat32(B))}serializeFloat64Array(A){this.writeSequenceLength(A.length),T?this.append(new Uint8Array(A.buffer)):A.forEach(B=>this.serializeNumberFloat64(B))}serializeBigintInt64(A){let B=this.ensureBuffer(8);new DataView(B.buffer,B.byteOffset,B.byteLength).setBigInt64(0,A,!0),this.append(B)}serializeBigintUint64(A){let B=this.ensureBuffer(8);new DataView(B.buffer,B.byteOffset,B.byteLength).setBigUint64(0,A,!0),this.append(B)}serializeNumberFloat64(A){let B=this.ensureBuffer(8);new DataView(B.buffer,B.byteOffset,B.byteLength).setFloat64(0,A,!0),this.append(B)}serializeNumberFloat32(A){let B=this.ensureBuffer(4);new DataView(B.buffer,B.byteOffset,B.byteLength).setFloat32(0,A,!0),this.append(B)}serializeNumberInt64(A){let B=BigInt(A);this.serializeBigintInt64(B)}serializeNumberUint64(A){let B=BigInt(A);this.serializeBigintUint64(B)}serializeNumberInt32(A){let B=this.ensureBuffer(4);new DataView(B.buffer,B.byteOffset,B.byteLength).setInt32(0,A,!0),this.append(B)}serializeNumberUint32(A){let B=this.ensureBuffer(4);new DataView(B.buffer,B.byteOffset,B.byteLength).setUint32(0,A,!0),this.append(B)}serializeNumberInt16(A){let B=this.ensureBuffer(2);new DataView(B.buffer,B.byteOffset,B.byteLength).setInt16(0,A,!0),this.append(B)}serializeNumberUint16(A){let B=this.ensureBuffer(2);new DataView(B.buffer,B.byteOffset,B.byteLength).setUint16(0,A,!0),this.append(B)}serializeNumberInt8(A){let B=this.ensureBuffer(1);new DataView(B.buffer,B.byteOffset,B.byteLength).setInt8(0,A),this.append(B)}serializeNumberUint8(A){let B=this.ensureBuffer(1);B[0]=A,this.append(B)}serializeBoolean(A){this.serializeNumberUint8(A===!0?1:0)}serializeArray(A,B){this.writeSequenceLength(A.length),A.length>0&&B===void 0&&(B=this.getDefaultSerializationTag(A[0])),A.forEach(g=>B.serialize(this,g))}serializeMap(A,B,g){if(this.writeSequenceLength(A.size),A.size>0){let C=A.entries().next();if(C!==void 0){let E=C.value;E!==void 0&&(B??(B=this.getDefaultSerializationTag(E[0])),g??(g=this.getDefaultSerializationTag(E[1])))}}A.forEach((C,E)=>{B.serialize(this,E),g.serialize(this,C)})}getDefaultSerializationTag(A){if(IC(A))return f.object();if(typeof A=="number")return f.number();if(typeof A=="bigint")return f.bigint();if(typeof A=="string")return f.string();if(typeof A=="boolean")return f.boolean();if(WQ(A))return f.uint8array();if(ZQ(A))return f.uint16array();if(jQ(A))return f.uint32array();if(_Q(A))return f.biguint64array();if(vQ(A))return f.int8array();if(PQ(A))return f.int16array();if(XQ(A))return f.int32array();if(VQ(A))return f.bigint64array();if($Q(A))return f.float32array();if(AC(A))return f.float64array();if(Array.isArray(A)){let B;return A.length>0&&(B=this.getDefaultSerializationTag(A[0])),f.array(B)}else if(A instanceof Map){let B,g,C=A.entries().next();if(C!==void 0){let E=C.value;E!==void 0&&(B=this.getDefaultSerializationTag(E[0]),g=this.getDefaultSerializationTag(E[1]))}return f.map(B,g)}else throw new Error("Non-ZSerializeable type")}serialize(A,B){B===void 0?this.getDefaultSerializationTag(A).serialize(this,A):B.serialize(this,A)}finish(){let A=new F(this.toBytes());return this.data=new Array,this.len=0,this.bufferLen=0,A}toBytes(){if(this.data.length==0)return new Uint8Array(0);if(this.data.length==1)return this.data[0];{let A=new Uint8Array(this.len),B=0;for(let g of this.data)A.set(g,B),B+=g.length;return A}}};Q(rA,"DEFAULT_BUFFER_SIZE",256),Q(rA,"MAX_SEQUENCE_LENGTH_TO_FIT_IN_SINGLE_BYTE",127);var YA=rA,U;(function(I){I[I.Float64=1]="Float64",I[I.Float32=2]="Float32",I[I.Int64=3]="Int64",I[I.Uint64=4]="Uint64",I[I.Int32=5]="Int32",I[I.Uint32=6]="Uint32",I[I.Int16=7]="Int16",I[I.Uint16=8]="Uint16",I[I.Int8=9]="Int8",I[I.Uint8=10]="Uint8"})(U||(U={}));var EA;(function(I){I[I.Int64=1]="Int64",I[I.Uint64=2]="Uint64"})(EA||(EA={}));var N=class{constructor(A){Q(this,"deserialize_");this.deserialize_=A}deserialize(A){return this.deserialize_(A)}},u=class{constructor(A){Q(this,"serialize_");this.serialize_=A}serialize(A,B){this.serialize_(A,B)}},eA;(function(I){function A(s=U.Float64){switch(s){case U.Float64:return new N(o=>o.deserializeNumberFloat64());case U.Float32:return new N(o=>o.deserializeNumberFloat32());case U.Int64:return new N(o=>o.deserializeNumberInt64());case U.Uint64:return new N(o=>o.deserializeNumberUint64());case U.Int32:return new N(o=>o.deserializeNumberInt32());case U.Uint32:return new N(o=>o.deserializeNumberUint32());case U.Int16:return new N(o=>o.deserializeNumberInt16());case U.Uint16:return new N(o=>o.deserializeNumberUint16());case U.Int8:return new N(o=>o.deserializeNumberInt8());case U.Uint8:return new N(o=>o.deserializeNumberUint8())}}I.number=A;function B(s=EA.Int64){switch(s){case EA.Int64:return new N(o=>o.deserializeBigintInt64());case EA.Uint64:return new N(o=>o.deserializeBigintUint64())}}I.bigint=B;function g(){return new N(s=>s.deserializeString())}I.string=g;function C(){return new N(s=>s.deserializeBoolean())}I.boolean=C;function E(){return new N(s=>s.deserializeUint8Array())}I.uint8array=E;function e(){return new N(s=>s.deserializeUint16Array())}I.uint16array=e;function t(){return new N(s=>s.deserializeUint32Array())}I.uint32array=t;function n(){return new N(s=>s.deserializeBiguint64Array())}I.biguint64array=n;function h(){return new N(s=>s.deserializeInt8Array())}I.int8array=h;function D(){return new N(s=>s.deserializeInt16Array())}I.int16array=D;function k(){return new N(s=>s.deserializeInt32Array())}I.int32array=k;function oA(){return new N(s=>s.deserializeBigint64Array())}I.bigint64array=oA;function aA(){return new N(s=>s.deserializeFloat32Array())}I.float32array=aA;function cA(){return new N(s=>s.deserializeFloat64Array())}I.float64array=cA;function DA(s){return new N(o=>o.deserializeObject(s))}I.object=DA;function wA(s){return new N(o=>s(o))}I.objectStatic=wA;function OB(s){return new N(o=>o.deserializeArray(s))}I.array=OB;function y(s,o){return new N(zB=>zB.deserializeMap(s,o))}I.map=y})(eA||(eA={}));var f;(function(I){function A(y=U.Float64){switch(y){case U.Float64:return new u((s,o)=>{s.serializeNumberFloat64(o)});case U.Float32:return new u((s,o)=>{s.serializeNumberFloat32(o)});case U.Int64:return new u((s,o)=>{s.serializeNumberInt64(o)});case U.Uint64:return new u((s,o)=>{s.serializeNumberUint64(o)});case U.Int32:return new u((s,o)=>{s.serializeNumberInt32(o)});case U.Uint32:return new u((s,o)=>{s.serializeNumberUint32(o)});case U.Int16:return new u((s,o)=>{s.serializeNumberInt16(o)});case U.Uint16:return new u((s,o)=>{s.serializeNumberUint16(o)});case U.Int8:return new u((s,o)=>{s.serializeNumberInt8(o)});case U.Uint8:return new u((s,o)=>{s.serializeNumberUint8(o)})}}I.number=A;function B(y=EA.Int64){switch(y){case EA.Int64:return new u((s,o)=>{s.serializeBigintInt64(o)});case EA.Uint64:return new u((s,o)=>{s.serializeBigintUint64(o)})}}I.bigint=B;function g(){return new u((y,s)=>{y.serializeString(s)})}I.string=g;function C(){return new u((y,s)=>{y.serializeBoolean(s)})}I.boolean=C;function E(){return new u((y,s)=>{y.serializeUint8Array(s)})}I.uint8array=E;function e(){return new u((y,s)=>{y.serializeUint16Array(s)})}I.uint16array=e;function t(){return new u((y,s)=>{y.serializeUint32Array(s)})}I.uint32array=t;function n(){return new u((y,s)=>{y.serializeBiguint64Array(s)})}I.biguint64array=n;function h(){return new u((y,s)=>{y.serializeInt8Array(s)})}I.int8array=h;function D(){return new u((y,s)=>{y.serializeInt16Array(s)})}I.int16array=D;function k(){return new u((y,s)=>{y.serializeInt32Array(s)})}I.int32array=k;function oA(){return new u((y,s)=>{y.serializeBigint64Array(s)})}I.bigint64array=oA;function aA(){return new u((y,s)=>{y.serializeFloat32Array(s)})}I.float32array=aA;function cA(){return new u((y,s)=>{y.serializeFloat64Array(s)})}I.float64array=cA;function DA(){return new u((y,s)=>{s.serializeWithZSerializer(y)})}I.object=DA;function wA(y){return new u((s,o)=>{s.serializeArray(o,y)})}I.array=wA;function OB(y,s){return new u((o,zB)=>{o.serializeMap(zB,y,s)})}I.map=OB})(f||(f={}));var KI=class KI{constructor(A){Q(this,"buffer_");Q(this,"idx_");A instanceof F?this.buffer_=A.toBytes():this.buffer_=A,this.idx_=0}readSlice(A){let B=this.buffer_.subarray(this.idx_,this.idx_+A);if(B.length<A)throw new Error(`Array index is out of bounds: ${this.idx_+A} / ${this.buffer_.length}`);return this.idx_+=A,B}readByte(){if(this.idx_>=this.buffer_.length)throw new Error(`Array index is out of bounds: ${this.idx_+1} / ${this.buffer_.length}`);let A=this.buffer_[this.idx_];return this.idx_+=1,A}peekByte(){return this.buffer_[this.idx_]}readSequenceLength(){let A=this.peekByte();if(A!=null&&(A&KI.LEB128_CONTINUATION_MASK)==0)return this.idx_+=1,A;let[B,g]=Wg(this.buffer_,this.idx_);if(this.idx_+=g,B>Number.MAX_SAFE_INTEGER)throw new Error(`Array length overflow: ${B}`);return new Number(B).valueOf()}deserializeString(){let A=this.readSequenceLength();return A==0?"":new TextDecoder().decode(this.readSlice(A))}deserializeUint8Array(){let A=this.readSequenceLength();return this.readSlice(A)}deserializeUint16Array(){let A=this.readSequenceLength();if(T){let B=this.readSlice(A*2);return B.byteOffset%2!=0&&(B=B.slice()),new Uint16Array(B.buffer,B.byteOffset,A)}else{let B=new Uint16Array(A);for(let g=0;g<A;g++)B[g]=this.deserializeNumberUint16();return B}}deserializeUint32Array(){let A=this.readSequenceLength();if(T){let B=this.readSlice(A*4);return B.byteOffset%4!=0&&(B=B.slice()),new Uint32Array(B.buffer,B.byteOffset,A)}else{let B=new Uint32Array(A);for(let g=0;g<A;g++)B[g]=this.deserializeNumberUint32();return B}}deserializeBiguint64Array(){let A=this.readSequenceLength();if(T){let B=this.readSlice(A*8);return B.byteOffset%8!=0&&(B=B.slice()),new BigUint64Array(B.buffer,B.byteOffset,A)}else{let B=new BigUint64Array(A);for(let g=0;g<A;g++)B[g]=this.deserializeBigintUint64();return B}}deserializeInt8Array(){let A=this.readSequenceLength(),B=this.readSlice(A);return new Int8Array(B.buffer,B.byteOffset,A)}deserializeInt16Array(){let A=this.readSequenceLength();if(T){let B=this.readSlice(A*2);return B.byteOffset%2!=0&&(B=B.slice()),new Int16Array(B.buffer,B.byteOffset,A)}else{let B=new Int16Array(A);for(let g=0;g<A;g++)B[g]=this.deserializeNumberInt16();return B}}deserializeInt32Array(){let A=this.readSequenceLength();if(T){let B=this.readSlice(A*4);return B.byteOffset%4!=0&&(B=B.slice()),new Int32Array(B.buffer,B.byteOffset,A)}else{let B=new Int32Array(A);for(let g=0;g<A;g++)B[g]=this.deserializeNumberInt32();return B}}deserializeBigint64Array(){let A=this.readSequenceLength();if(T){let B=this.readSlice(A*8);return B.byteOffset%8!=0&&(B=B.slice()),new BigInt64Array(B.buffer,B.byteOffset,A)}else{let B=new BigInt64Array(A);for(let g=0;g<A;g++)B[g]=this.deserializeBigintInt64();return B}}deserializeFloat32Array(){let A=this.readSequenceLength();if(T){let B=this.readSlice(A*4);return B.byteOffset%4!=0&&(B=B.slice()),new Float32Array(B.buffer,B.byteOffset,A)}else{let B=new Float32Array(A);for(let g=0;g<A;g++)B[g]=this.deserializeNumberFloat32();return B}}deserializeFloat64Array(){let A=this.readSequenceLength();if(T){let B=this.readSlice(A*8);return B.byteOffset%8!=0&&(B=B.slice()),new Float64Array(B.buffer,B.byteOffset,A)}else{let B=new Float64Array(A);for(let g=0;g<A;g++)B[g]=this.deserializeNumberFloat64();return B}}deserializeBigintInt64(){let A=this.readSlice(8);return new DataView(A.buffer,A.byteOffset,A.byteLength).getBigInt64(0,!0)}deserializeBigintUint64(){let A=this.readSlice(8);return new DataView(A.buffer,A.byteOffset,A.byteLength).getBigUint64(0,!0)}deserializeNumberFloat64(){let A=this.readSlice(8);return new DataView(A.buffer,A.byteOffset,A.byteLength).getFloat64(0,!0)}deserializeNumberFloat32(){let A=this.readSlice(4);return new DataView(A.buffer,A.byteOffset,A.byteLength).getFloat32(0,!0)}deserializeNumberInt64(){let A=this.deserializeBigintInt64();if(A>Number.MAX_SAFE_INTEGER||A<Number.MIN_SAFE_INTEGER)throw new Error(`Integer value ${A} exceeds the safe range for JavaScript numbers`);return Number(A)}deserializeNumberUint64(){let A=this.deserializeBigintUint64();if(A>Number.MAX_SAFE_INTEGER)throw new Error(`Integer value ${A} exceeds the safe range for JavaScript numbers`);return Number(A)}deserializeNumberInt32(){let A=this.readSlice(4);return new DataView(A.buffer,A.byteOffset,A.byteLength).getInt32(0,!0)}deserializeNumberUint32(){let A=this.readSlice(4);return new DataView(A.buffer,A.byteOffset,A.byteLength).getUint32(0,!0)}deserializeNumberInt16(){let A=this.readSlice(2);return new DataView(A.buffer,A.byteOffset,A.byteLength).getInt16(0,!0)}deserializeNumberUint16(){let A=this.readSlice(2);return new DataView(A.buffer,A.byteOffset,A.byteLength).getUint16(0,!0)}deserializeNumberInt8(){let A=this.readSlice(1);return new DataView(A.buffer,A.byteOffset,A.byteLength).getInt8(0)}deserializeNumberUint8(){return this.readByte()}deserializeBoolean(){let A=this.readByte();if(A==1)return!0;if(A==0)return!1;throw new Error(`Unexpected boolean value: ${A}`)}deserializeArray(A){let B=this.readSequenceLength(),g=new Array(B);for(let C=0;C<B;C++)g[C]=A.deserialize(this);return g}deserializeMap(A,B){let g=this.readSequenceLength(),C=new Map;for(let E=0;E<g;E++){let e=A.deserialize(this),t=B.deserialize(this);C.set(e,t)}return C}deserializeObject(A){let B=new A;return B.deserializeWithZDeserializer(this),B}deserialize(A){return A.deserialize(this)}isDone(){return this.buffer_.length==this.idx_}};Q(KI,"LEB128_CONTINUATION_MASK",128);var QI=KI;var CI=class{constructor(A,B,g,C){Q(this,"session");Q(this,"id");Q(this,"keyExpr_");Q(this,"receiver_");this.session=A,this.id=B,this.keyExpr_=g,this.receiver_=C}async[Symbol.asyncDispose](){await this.undeclare()}keyExpr(){return this.keyExpr_}receiver(){return this.receiver_}async undeclare(){await this.session.undeclareQueryable(this.id)}},qI=class{constructor(A,B,g,C,E,e,t){Q(this,"queryId");Q(this,"keyexpr_");Q(this,"parameters_");Q(this,"payload_");Q(this,"encoding_");Q(this,"attachment_");Q(this,"replyKeyExpr_");this.queryId=A,this.keyexpr_=B,this.parameters_=g,this.payload_=C,this.encoding_=E,this.attachment_=e,this.replyKeyExpr_=t}},EI=class{constructor(A,B){Q(this,"session");Q(this,"inner");this.session=A,this.inner=B}selector(){return new HA(this.inner.keyexpr_,this.inner.parameters_)}keyExpr(){return this.inner.keyexpr_}parameters(){return this.inner.parameters_}payload(){return this.inner.payload_}encoding(){return this.inner.encoding_}attachment(){return this.inner.attachment_}acceptsReplies(){return this.inner.replyKeyExpr_}async reply(A,B,g){await this.session.replyOk(new xI(this.inner.queryId,new S(A),new F(B),g?.encoding?J.from(g.encoding):J.default(),g?.attachment?new F(g.attachment):void 0,g?.timestamp,new P(g?.priority??L.DEFAULT,g?.congestionControl??p.DEFAULT_RESPONSE,g?.express??!1,Y.DEFAULT,R.DEFAULT)))}async replyErr(A,B){await this.session.replyErr(new zI(this.inner.queryId,new F(A),B?.encoding?J.from(B.encoding):J.default()))}async replyDel(A,B){await this.session.replyDel(new OI(this.inner.queryId,new S(A),B?.attachment?new F(B.attachment):void 0,B?.timestamp,new P(B?.priority??L.DEFAULT,B?.congestionControl??p.DEFAULT_RESPONSE,B?.express??!1,Y.DEFAULT,R.DEFAULT)))}async finalize(){this.session.sendResponseFinal(this.inner.queryId)}toString(){return this.selector().toString()}async[Symbol.asyncDispose](){await this.finalize()}},IA=class I{constructor(A){Q(this,"source");A instanceof I?this.source=A.source:A instanceof Map?this.source=Array.from(A.entries()).map(([B,g])=>g?`${B}=${g}`:B).join(";"):this.source=A.toString()}*iterByKeyValuePos(){if(this.source.length===0)return;let A=0;for(;A<this.source.length;){for(;A<this.source.length&&this.source[A]===";";)A++;if(A>=this.source.length)break;let B=A;for(;A<this.source.length&&this.source[A]!==";"&&this.source[A]!=="=";)A++;let g=A-B;if(g===0)continue;let C=-1,E=0;if(A<this.source.length&&this.source[A]==="="){for(A++,C=A;A<this.source.length&&this.source[A]!==";";)A++;E=A-C}yield[B,g,C,E],A++}}static empty(){return new I("")}remove(A){let B=!1,g="",C=0;for(let[E,e,t,n]of this.iterByKeyValuePos())this.source.slice(E,E+e)==A&&(g+=this.source.slice(C,E),C=t>=0?t+n+1:E+e+1,B=!0);return B&&(g+=this.source.slice(C),this.source=g.replace(/;+/g,";").replace(/^;|;$/g,"")),B}*iter(){for(let[A,B,g,C]of this.iterByKeyValuePos()){let E=this.source.slice(A,A+B),e=g>=0?this.source.slice(g,g+C):"";yield[E,e]}}*values(A){let B=this.get(A);if(B!=null){let g=B.split("|");for(let C of g)yield C}}isEmpty(){if(!this.source)return!0;for(let A of this.iterByKeyValuePos())return!1;return!0}containsKey(A){for(let[B,g]of this.iterByKeyValuePos())if(this.source.slice(B,B+g)===A)return!0;return!1}get(A){for(let[B,g,C,E]of this.iterByKeyValuePos())if(this.source.slice(B,B+g)===A)return C>=0?this.source.slice(C,C+E):""}insert(A,B){this.remove(A),this.source&&!this.source.endsWith(";")&&this.source.length>0&&(this.source+=";"),this.source+=`${A}=${B}`}extend(A){let B=new I(A);for(let[g,C,E,e]of B.iterByKeyValuePos()){let t=B.source.slice(g,g+C),n=E>=0?B.source.slice(E,E+e):"";this.insert(t,n)}}toString(){return this.source}},eI=class{constructor(A,B){Q(this,"payload_");Q(this,"encoding_");this.payload_=A,this.encoding_=B}payload(){return this.payload_}encoding(){return this.encoding_}},bA=class{constructor(A){Q(this,"result_");this.result_=A}result(){return this.result_}},HA=class I{constructor(A,B){Q(this,"keyExpr_");Q(this,"parameters_");this.keyExpr_=new S(A),B==null?this.parameters_=new IA(""):this.parameters_=new IA(B)}keyExpr(){return this.keyExpr_}parameters(){return this.parameters_}toString(){return this.parameters_.isEmpty()?this.keyExpr_.toString():this.keyExpr_.toString()+"?"+this.parameters_.toString()}static from(A){if(A instanceof I)return A;if(A instanceof S)return new I(A,void 0);if(Array.isArray(A))return new I(A[0],A[1]);{let B=A.indexOf("?");if(B==-1)return new I(new S(A));{let g=A.substring(0,B),C=A.substring(B+1);return new I(new S(g),new IA(C))}}}};var iI=class{constructor(A,B,g,C){Q(this,"zid_");Q(this,"whatami_");Q(this,"isQos_");Q(this,"isMulticast_");this.zid_=A,this.whatami_=B,this.isQos_=g,this.isMulticast_=C}zid(){return this.zid_}whatami(){return this.whatami_}isQos(){return this.isQos_}isMulticast(){return this.isMulticast_}},tI=class{constructor(A,B,g,C,E,e,t,n,h,D){Q(this,"zid_");Q(this,"src_");Q(this,"dst_");Q(this,"group_");Q(this,"mtu_");Q(this,"isStreamed_");Q(this,"interfaces_");Q(this,"authIdentifier_");Q(this,"priorities_");Q(this,"reliability_");this.zid_=A,this.src_=B,this.dst_=g,this.group_=C,this.mtu_=E,this.isStreamed_=e,this.interfaces_=t,this.authIdentifier_=n,this.priorities_=h,this.reliability_=D}zid(){return this.zid_}src(){return this.src_}dst(){return this.dst_}group(){return this.group_}mtu(){return this.mtu_}isStreamed(){return this.isStreamed_}interfaces(){return this.interfaces_}authIdentifier(){return this.authIdentifier_}priorities(){return this.priorities_}reliability(){return this.reliability_}},sI=class{constructor(A,B){Q(this,"kind_");Q(this,"transport_");this.kind_=A,this.transport_=B}kind(){return this.kind_}transport(){return this.transport_}},rI=class{constructor(A,B){Q(this,"kind_");Q(this,"link_");this.kind_=A,this.link_=B}kind(){return this.kind_}link(){return this.link_}},nI=class{constructor(A,B,g){Q(this,"session");Q(this,"id");Q(this,"receiver_");this.session=A,this.id=B,this.receiver_=g}async[Symbol.asyncDispose](){await this.undeclare()}receiver(){return this.receiver_}async undeclare(){await this.session.undeclareTransportEventsListener(this.id)}},oI=class{constructor(A,B,g){Q(this,"session");Q(this,"id");Q(this,"receiver_");this.session=A,this.id=B,this.receiver_=g}async[Symbol.asyncDispose](){await this.undeclare()}receiver(){return this.receiver_}async undeclare(){await this.session.undeclareLinkEventsListener(this.id)}};function cg(I){switch(I){case QA.PUT:return QA.PUT;case QA.DELETE:return QA.DELETE;default:return console.warn(`Unsupported SampleKind value ${I}`),QA.PUT}}function BC(I){switch(I){case L.REAL_TIME:return L.REAL_TIME;case L.INTERACTIVE_HIGH:return L.INTERACTIVE_HIGH;case L.INTERACTIVE_LOW:return L.INTERACTIVE_LOW;case L.DATA_HIGH:return L.DATA_HIGH;case L.DATA:return L.DATA;case L.DATA_LOW:return L.DATA_LOW;case L.BACKGROUND:return L.BACKGROUND;default:return console.warn(`Unsupported Priority value ${I}`),L.DEFAULT}}function gC(I){switch(I){case p.DROP:return p.DROP;case p.BLOCK:return p.BLOCK;default:return console.warn(`Unsupported CongestionControl value ${I}`),p.DEFAULT_PUSH}}function QC(I){switch(I){case Y.BEST_EFFORT:return Y.BEST_EFFORT;case Y.RELIABLE:return Y.RELIABLE;default:return console.warn(`Unsupported Reliability value ${I}`),Y.DEFAULT}}function CC(I){switch(I){case R.SESSION_LOCAL:return R.SESSION_LOCAL;case R.REMOTE:return R.REMOTE;case R.ANY:return R.ANY;default:return console.warn(`Unsupported Locality value ${I}`),R.DEFAULT}}var P=class{constructor(A,B,g,C,E){Q(this,"priority");Q(this,"congestionControl");Q(this,"express");Q(this,"reliability");Q(this,"locality");this.priority=A,this.congestionControl=B,this.express=g,this.reliability=C,this.locality=E}};function uA(I){let A=I.express?1:0;return I.priority|I.congestionControl<<3|A<<4|I.reliability<<5|I.locality<<6}function EC(I){let A=I&7,B=I>>3&1,g=I>>4&1,C=I>>5&1,E=I>>6&3;return new P(BC(A),gC(B),g!=0,QC(C),CC(E))}function eC(I){switch(I){case _.ANY:return _.ANY;case _.MATCHING_QUERY:return _.MATCHING_QUERY;default:return console.warn(`Unsupported ReplyKeyExpr value ${I}`),_.DEFAULT}}function hI(I,A){let[B,g]=I.toIdSchema();A.serializeNumberUint16(B),A.serializeString(g??"")}function Dg(I,A){I==null?A.serializeBoolean(!1):(A.serializeBoolean(!0),hI(I,A))}function wg(I){let A=I.deserializeNumberUint16(),B=I.deserializeString();return B.length==0&&(B=void 0),new J(A,B)}function iC(I){if(I.deserializeBoolean())return wg(I)}var aI=class{constructor(A,B,g){Q(this,"target");Q(this,"consolidation");Q(this,"replyKeyExpr");this.target=A,this.consolidation=B,this.replyKeyExpr=g}};function _g(I){return I.target|I.consolidation<<2|I.replyKeyExpr<<4}function cI(I){return new II(I.deserializeUint8Array())}function tC(I,A){A.serializeUint8Array(I.toLeBytes())}function sC(I,A){A.serializeBigintUint64(I.getNtp64()),tC(I.getId(),A)}function mA(I,A){I==null?A.serializeBoolean(!1):(A.serializeBoolean(!0),sC(I,A))}function vg(I){let A=I.deserializeBigintUint64(),B=cI(I);return new $A(B,A)}function rC(I){if(I.deserializeBoolean())return vg(I)}function BA(I,A){I==null?A.serialize(!1):(A.serialize(!0),A.serializeUint8Array(I.toBytes()))}function ag(I){if(I.deserializeBoolean())return new F(I.deserializeUint8Array())}function Pg(I){let A=new S(I.deserializeString()),B=new F(I.deserializeUint8Array()),g=cg(I.deserializeNumberUint8()),C=wg(I),E=ag(I),e=rC(I),t=EC(I.deserializeNumberUint8());return new VA(A,B,g,C,E,e,t.priority,t.congestionControl,t.express)}function nC(I){if(I.deserializeBoolean())return new bA(Pg(I));{let A=new F(I.deserializeUint8Array()),B=wg(I);return new bA(new eI(A,B))}}function oC(I){let A=I.deserializeNumberUint32(),B=new S(I.deserializeString()),g=new IA(I.deserializeString()),C=ag(I),E=iC(I),e=ag(I),t=eC(I.deserializeNumberUint8());return new qI(A,B,g,C,E,e,t)}var w;(function(I){I[I.DeclarePublisher=0]="DeclarePublisher",I[I.UndeclarePublisher=1]="UndeclarePublisher",I[I.DeclareSubscriber=2]="DeclareSubscriber",I[I.UndeclareSubscriber=3]="UndeclareSubscriber",I[I.DeclareQueryable=4]="DeclareQueryable",I[I.UndeclareQueryable=5]="UndeclareQueryable",I[I.DeclareQuerier=6]="DeclareQuerier",I[I.UndeclareQuerier=7]="UndeclareQuerier",I[I.DeclareLivelinessToken=8]="DeclareLivelinessToken",I[I.UndeclareLivelinessToken=9]="UndeclareLivelinessToken",I[I.DeclareLivelinessSubscriber=10]="DeclareLivelinessSubscriber",I[I.UndeclareLivelinessSubscriber=11]="UndeclareLivelinessSubscriber",I[I.GetSessionInfo=12]="GetSessionInfo",I[I.GetTimestamp=13]="GetTimestamp",I[I.Put=14]="Put",I[I.Delete=15]="Delete",I[I.PublisherPut=16]="PublisherPut",I[I.PublisherDelete=17]="PublisherDelete",I[I.Get=18]="Get",I[I.QuerierGet=19]="QuerierGet",I[I.LivelinessGet=20]="LivelinessGet",I[I.ReplyOk=21]="ReplyOk",I[I.ReplyDel=22]="ReplyDel",I[I.ReplyErr=23]="ReplyErr",I[I.QueryResponseFinal=24]="QueryResponseFinal",I[I.Ping=25]="Ping",I[I.PublisherDeclareMatchingListener=26]="PublisherDeclareMatchingListener",I[I.UndeclareMatchingListener=27]="UndeclareMatchingListener",I[I.PublisherGetMatchingStatus=28]="PublisherGetMatchingStatus",I[I.QuerierDeclareMatchingListener=29]="QuerierDeclareMatchingListener",I[I.QuerierGetMatchingStatus=30]="QuerierGetMatchingStatus",I[I.GetTransports=31]="GetTransports",I[I.GetLinks=32]="GetLinks",I[I.DeclareTransportEventsListener=33]="DeclareTransportEventsListener",I[I.UndeclareTransportEventsListener=34]="UndeclareTransportEventsListener",I[I.DeclareLinkEventsListener=35]="DeclareLinkEventsListener",I[I.UndeclareLinkEventsListener=36]="UndeclareLinkEventsListener"})(w||(w={}));var WI=class{constructor(A,B){Q(this,"id");Q(this,"properties");Q(this,"outMessageId",w.DeclarePublisher);this.id=A,this.properties=B}serializeWithZSerializer(A){A.serializeNumberUint32(this.id),A.serializeString(this.properties.keyexpr.toString()),hI(this.properties.encoding,A),A.serializeNumberUint8(uA(this.properties.qos))}},ZI=class{constructor(A){Q(this,"id");Q(this,"outMessageId",w.UndeclarePublisher);this.id=A}serializeWithZSerializer(A){A.serializeNumberUint32(this.id)}},jI=class{constructor(A,B){Q(this,"id");Q(this,"properties");Q(this,"outMessageId",w.DeclareSubscriber);this.id=A,this.properties=B}serializeWithZSerializer(A){A.serializeNumberUint32(this.id),A.serializeString(this.properties.keyexpr.toString()),A.serializeNumberUint8(this.properties.allowedOrigin)}},_I=class{constructor(A){Q(this,"id");Q(this,"outMessageId",w.UndeclareSubscriber);this.id=A}serializeWithZSerializer(A){A.serializeNumberUint32(this.id)}},vI=class{constructor(A,B){Q(this,"id");Q(this,"properties");Q(this,"outMessageId",w.DeclareQueryable);this.id=A,this.properties=B}serializeWithZSerializer(A){A.serializeNumberUint32(this.id),A.serializeString(this.properties.keyexpr.toString()),A.serializeBoolean(this.properties.complete),A.serializeNumberUint8(this.properties.allowedOrigin)}},PI=class{constructor(A){Q(this,"id");Q(this,"outMessageId",w.UndeclareQueryable);this.id=A}serializeWithZSerializer(A){A.serializeNumberUint32(this.id)}},XI=class{constructor(A,B){Q(this,"id");Q(this,"properties");Q(this,"outMessageId",w.DeclareQuerier);this.id=A,this.properties=B}serializeWithZSerializer(A){A.serializeNumberUint32(this.id),A.serializeString(this.properties.keyexpr.toString()),A.serializeNumberUint8(uA(this.properties.qos)),A.serializeNumberUint8(_g(this.properties.querySettings)),A.serializeNumberUint32(this.properties.timeoutMs)}},VI=class{constructor(A){Q(this,"id");Q(this,"outMessageId",w.UndeclareQuerier);this.id=A}serializeWithZSerializer(A){A.serializeNumberUint32(this.id)}},$I=class{constructor(A,B){Q(this,"id");Q(this,"keyexpr");Q(this,"outMessageId",w.DeclareLivelinessToken);this.id=A,this.keyexpr=B}serializeWithZSerializer(A){A.serializeNumberUint32(this.id),A.serializeString(this.keyexpr.toString())}},AB=class{constructor(A){Q(this,"id");Q(this,"outMessageId",w.UndeclareLivelinessToken);this.id=A}serializeWithZSerializer(A){A.serializeNumberUint32(this.id)}},IB=class{constructor(A,B){Q(this,"id");Q(this,"properties");Q(this,"outMessageId",w.DeclareLivelinessSubscriber);this.id=A,this.properties=B}serializeWithZSerializer(A){A.serializeNumberUint32(this.id),A.serializeString(this.properties.keyexpr.toString()),A.serializeBoolean(this.properties.history)}},BB=class{constructor(A){Q(this,"id");Q(this,"outMessageId",w.UndeclareLivelinessSubscriber);this.id=A}serializeWithZSerializer(A){A.serializeNumberUint32(this.id)}},gB=class{constructor(){Q(this,"outMessageId",w.GetSessionInfo)}serializeWithZSerializer(A){}},QB=class{constructor(){Q(this,"outMessageId",w.GetTimestamp)}serializeWithZSerializer(A){}},CB=class{constructor(A,B,g,C,E,e){Q(this,"keyexpr");Q(this,"payload");Q(this,"encoding");Q(this,"attachment");Q(this,"timestamp");Q(this,"qos");Q(this,"outMessageId",w.Put);this.keyexpr=A,this.payload=B,this.encoding=g,this.attachment=C,this.timestamp=E,this.qos=e}serializeWithZSerializer(A){A.serializeString(this.keyexpr.toString()),A.serializeUint8Array(this.payload.toBytes()),hI(this.encoding,A),BA(this.attachment,A),mA(this.timestamp,A),A.serializeNumberUint8(uA(this.qos))}},EB=class{constructor(A,B,g,C){Q(this,"keyexpr");Q(this,"attachment");Q(this,"timestamp");Q(this,"qos");Q(this,"outMessageId",w.Delete);this.keyexpr=A,this.attachment=B,this.timestamp=g,this.qos=C}serializeWithZSerializer(A){A.serializeString(this.keyexpr.toString()),BA(this.attachment,A),mA(this.timestamp,A),A.serializeNumberUint8(uA(this.qos))}},eB=class{constructor(A,B,g,C,E){Q(this,"publisherId");Q(this,"payload");Q(this,"encoding");Q(this,"attachment");Q(this,"timestamp");Q(this,"outMessageId",w.PublisherPut);this.publisherId=A,this.payload=B,this.encoding=g,this.attachment=C,this.timestamp=E}serializeWithZSerializer(A){A.serializeNumberUint32(this.publisherId),A.serializeUint8Array(this.payload.toBytes()),Dg(this.encoding,A),BA(this.attachment,A),mA(this.timestamp,A)}},iB=class{constructor(A,B,g){Q(this,"publisherId");Q(this,"attachment");Q(this,"timestamp");Q(this,"outMessageId",w.PublisherDelete);this.publisherId=A,this.attachment=B,this.timestamp=g}serializeWithZSerializer(A){A.serializeNumberUint32(this.publisherId),BA(this.attachment,A),mA(this.timestamp,A)}},tB=class{constructor(A,B){Q(this,"id");Q(this,"properties");Q(this,"outMessageId",w.Get);this.id=A,this.properties=B}serializeWithZSerializer(A){A.serializeNumberUint32(this.id),A.serializeString(this.properties.keyexpr.toString()),A.serializeString(this.properties.parameters),BA(this.properties.payload,A),Dg(this.properties.encoding,A),BA(this.properties.attachment,A),A.serializeNumberUint8(uA(this.properties.qos)),A.serializeNumberUint8(_g(this.properties.querySettings)),A.serializeNumberUint32(this.properties.timeoutMs)}},sB=class{constructor(A,B){Q(this,"id");Q(this,"properties");Q(this,"outMessageId",w.QuerierGet);this.id=A,this.properties=B}serializeWithZSerializer(A){A.serializeNumberUint32(this.id),A.serializeNumberUint32(this.properties.querierId),A.serializeString(this.properties.parameters),BA(this.properties.payload,A),Dg(this.properties.encoding,A),BA(this.properties.attachment,A)}},rB=class{constructor(A,B){Q(this,"id");Q(this,"properties");Q(this,"outMessageId",w.LivelinessGet);this.id=A,this.properties=B}serializeWithZSerializer(A){A.serializeNumberUint32(this.id),A.serializeString(this.properties.keyexpr.toString()),A.serializeNumberUint32(this.properties.timeoutMs)}},xI=class{constructor(A,B,g,C,E,e,t){Q(this,"queryId");Q(this,"keyexpr");Q(this,"payload");Q(this,"encoding");Q(this,"attachment");Q(this,"timestamp");Q(this,"qos");Q(this,"outMessageId",w.ReplyOk);this.queryId=A,this.keyexpr=B,this.payload=g,this.encoding=C,this.attachment=E,this.timestamp=e,this.qos=t}serializeWithZSerializer(A){A.serializeNumberUint32(this.queryId),A.serializeString(this.keyexpr.toString()),A.serializeUint8Array(this.payload.toBytes()),hI(this.encoding,A),BA(this.attachment,A),mA(this.timestamp,A),A.serializeNumberUint8(uA(this.qos))}},OI=class{constructor(A,B,g,C,E){Q(this,"queryId");Q(this,"keyexpr");Q(this,"attachment");Q(this,"timestamp");Q(this,"qos");Q(this,"outMessageId",w.ReplyDel);this.queryId=A,this.keyexpr=B,this.attachment=g,this.timestamp=C,this.qos=E}serializeWithZSerializer(A){A.serializeNumberUint32(this.queryId),A.serializeString(this.keyexpr.toString()),BA(this.attachment,A),mA(this.timestamp,A),A.serializeNumberUint8(uA(this.qos))}},zI=class{constructor(A,B,g){Q(this,"queryId");Q(this,"payload");Q(this,"encoding");Q(this,"outMessageId",w.ReplyErr);this.queryId=A,this.payload=B,this.encoding=g}serializeWithZSerializer(A){A.serializeNumberUint32(this.queryId),A.serializeUint8Array(this.payload.toBytes()),hI(this.encoding,A)}},DI=class I{constructor(A){Q(this,"queryId");Q(this,"outMessageId",w.QueryResponseFinal);Q(this,"inMessageId",a.QueryResponseFinal);this.queryId=A}serializeWithZSerializer(A){A.serializeNumberUint32(this.queryId)}static deserialize(A){let B=A.deserializeNumberUint32();return new I(B)}},nB=class{constructor(){Q(this,"outMessageId",w.Ping)}serializeWithZSerializer(A){}},oB=class{constructor(A,B){Q(this,"id");Q(this,"publisherId");Q(this,"outMessageId",w.PublisherDeclareMatchingListener);this.id=A,this.publisherId=B}serializeWithZSerializer(A){A.serializeNumberUint32(this.id),A.serializeNumberUint32(this.publisherId)}},aB=class{constructor(A){Q(this,"id");Q(this,"outMessageId",w.UndeclareMatchingListener);this.id=A}serializeWithZSerializer(A){A.serializeNumberUint32(this.id)}},cB=class{constructor(A){Q(this,"publisherId");Q(this,"outMessageId",w.PublisherGetMatchingStatus);this.publisherId=A}serializeWithZSerializer(A){A.serializeNumberUint32(this.publisherId)}},DB=class{constructor(A,B){Q(this,"id");Q(this,"querierId");Q(this,"outMessageId",w.QuerierDeclareMatchingListener);this.id=A,this.querierId=B}serializeWithZSerializer(A){A.serializeNumberUint32(this.id),A.serializeNumberUint32(this.querierId)}},wB=class{constructor(A){Q(this,"querierId");Q(this,"outMessageId",w.QuerierGetMatchingStatus);this.querierId=A}serializeWithZSerializer(A){A.serializeNumberUint32(this.querierId)}},hB=class{constructor(){Q(this,"outMessageId",w.GetTransports)}serializeWithZSerializer(A){}},yB=class{constructor(){Q(this,"outMessageId",w.GetLinks)}serializeWithZSerializer(A){}},lB=class{constructor(A,B){Q(this,"id");Q(this,"history");Q(this,"outMessageId",w.DeclareTransportEventsListener);this.id=A,this.history=B}serializeWithZSerializer(A){A.serializeNumberUint32(this.id),A.serializeBoolean(this.history)}},NB=class{constructor(A){Q(this,"id");Q(this,"outMessageId",w.UndeclareTransportEventsListener);this.id=A}serializeWithZSerializer(A){A.serializeNumberUint32(this.id)}},uB=class{constructor(A,B){Q(this,"id");Q(this,"history");Q(this,"outMessageId",w.DeclareLinkEventsListener);this.id=A,this.history=B}serializeWithZSerializer(A){A.serializeNumberUint32(this.id),A.serializeBoolean(this.history)}},FB=class{constructor(A){Q(this,"id");Q(this,"outMessageId",w.UndeclareLinkEventsListener);this.id=A}serializeWithZSerializer(A){A.serializeNumberUint32(this.id)}},a;(function(I){I[I.ResponsePing=0]="ResponsePing",I[I.ResponseOk=1]="ResponseOk",I[I.ResponseError=2]="ResponseError",I[I.ResponseTimestamp=3]="ResponseTimestamp",I[I.ResponseSessionInfo=4]="ResponseSessionInfo",I[I.InSample=5]="InSample",I[I.InQuery=6]="InQuery",I[I.InReply=7]="InReply",I[I.QueryResponseFinal=8]="QueryResponseFinal",I[I.ResponseMatchingStatus=9]="ResponseMatchingStatus",I[I.MatchingStatusUpdate=10]="MatchingStatusUpdate",I[I.ResponseTransports=11]="ResponseTransports",I[I.ResponseLinks=12]="ResponseLinks",I[I.InTransportEventUpdate=13]="InTransportEventUpdate",I[I.InLinkEventUpdate=14]="InLinkEventUpdate"})(a||(a={}));var LB=class I{constructor(A){Q(this,"uuid");Q(this,"inMessageId",a.ResponsePing);this.uuid=A}static deserialize(A){let B=A.deserializeString();return new I(B)}},M=class I{constructor(A){Q(this,"contentId");Q(this,"inMessageId",a.ResponseOk);this.contentId=A}static deserialize(A){let B=A.deserializeNumberUint8();return new I(B)}},GB=class I{constructor(A){Q(this,"error");Q(this,"inMessageId",a.ResponseError);this.error=A}static deserialize(A){let B=A.deserializeString();return new I(B)}},SB=class I{constructor(A){Q(this,"timestamp");Q(this,"inMessageId",a.ResponseTimestamp);this.timestamp=A}static deserialize(A){return new I(vg(A))}},UB=class I{constructor(A,B,g){Q(this,"zid");Q(this,"peers");Q(this,"routers");Q(this,"inMessageId",a.ResponseSessionInfo);this.zid=A,this.peers=B,this.routers=g}static deserialize(A){let B=cI(A),g=eA.array(eA.objectStatic(cI)),C=A.deserialize(g),E=A.deserialize(g);return new I(B,E,C)}},RB=class I{constructor(A,B){Q(this,"subscriberId");Q(this,"sample");Q(this,"inMessageId",a.InSample);this.subscriberId=A,this.sample=B}static deserialize(A){let B=A.deserializeNumberUint32(),g=Pg(A);return new I(B,g)}},MB=class I{constructor(A,B){Q(this,"queryableId");Q(this,"query");Q(this,"inMessageId",a.InQuery);this.queryableId=A,this.query=B}static deserialize(A){let B=A.deserializeNumberUint32(),g=oC(A);return new I(B,g)}},kB=class I{constructor(A,B){Q(this,"queryId");Q(this,"reply");Q(this,"inMessageId",a.InReply);this.queryId=A,this.reply=B}static deserialize(A){let B=A.deserializeNumberUint32(),g=nC(A);return new I(B,g)}},wI=class I{constructor(A){Q(this,"matching");Q(this,"inMessageId",a.ResponseMatchingStatus);this.matching=A}static deserialize(A){let B=A.deserializeBoolean();return new I(B)}},dB=class I{constructor(A,B){Q(this,"matchingListenerId");Q(this,"matching");Q(this,"inMessageId",a.MatchingStatusUpdate);this.matchingListenerId=A,this.matching=B}static deserialize(A){let B=A.deserializeNumberUint32(),g=A.deserializeBoolean();return new I(B,g)}};function Xg(I){let A=cI(I),B=I.deserializeNumberUint8(),g=I.deserializeBoolean(),C=I.deserializeBoolean();return new iI(A,B,g,C)}function jg(I){if(I.deserializeBoolean())return I.deserializeString()}function aC(I){if(I.deserializeBoolean()){let A=I.deserializeNumberUint8(),B=I.deserializeNumberUint8();return[A,B]}else return}function cC(I){if(I.deserializeBoolean())return I.deserializeNumberUint8()}function Vg(I){let A=cI(I),B=I.deserializeString(),g=I.deserializeString(),C=jg(I),E=I.deserializeNumberUint16(),e=I.deserializeBoolean(),t=I.deserializeArray(eA.string()),n=jg(I),h=aC(I),D=cC(I);return new tI(A,B,g,C,E,e,t,n,h,D)}var JB=class I{constructor(A){Q(this,"transports");Q(this,"inMessageId",a.ResponseTransports);this.transports=A}static deserialize(A){let B=A.deserializeArray(eA.objectStatic(Xg));return new I(B)}},fB=class I{constructor(A){Q(this,"links");Q(this,"inMessageId",a.ResponseLinks);this.links=A}static deserialize(A){let B=A.deserializeArray(eA.objectStatic(Vg));return new I(B)}},pB=class I{constructor(A,B,g){Q(this,"listenerId");Q(this,"kind");Q(this,"transport");Q(this,"inMessageId",a.InTransportEventUpdate);this.listenerId=A,this.kind=B,this.transport=g}static deserialize(A){let B=A.deserializeNumberUint32(),g=cg(A.deserializeNumberUint8()),C=Xg(A);return new I(B,g,C)}},YB=class I{constructor(A,B,g){Q(this,"listenerId");Q(this,"kind");Q(this,"link");Q(this,"inMessageId",a.InLinkEventUpdate);this.listenerId=A,this.kind=B,this.link=g}static deserialize(A){let B=A.deserializeNumberUint32(),g=cg(A.deserializeNumberUint8()),C=Vg(A);return new I(B,g,C)}},$g=128,DC=127;function AQ(I){let A=I.deserializeNumberUint8();if((A&$g)==0)return[A,void 0];{A=A&DC;let B=I.deserializeNumberUint32();return[A,B]}}function IQ(I,A){I[1]==null?A.serializeNumberUint8(I[0]):(A.serializeNumberUint8(I[0]|$g),A.serializeNumberUint32(I[1]))}var bB=class I{constructor(A){Q(this,"ws");this.ws=A,this.ws=A}static async new(A){let B=this.parseZenohLocator(A),g=0,C=2e3;for(;g<10;){let E=new WebSocket(B);E.binaryType="arraybuffer",E.onerror=function(t){console.warn("WebSocket error: ",t)},E.onclose=function(t){console.warn(`WebSocket has been disconnected from remote-api-plugin: ${t.code}`)};let e=0;for(;E.readyState!=1;)if(await BQ(100),e+=100,e>C){E.close(),C*=2;break}if(E.readyState==1)return console.warn("Connected to",B),new I(E);E=new WebSocket(B),console.warn("Restart connection")}throw new Error(`Failed to connect to locator endpoint: ${A} after 10`)}onmessage(A){this.ws.onmessage=function(B){A(new Uint8Array(B.data))}}async send(A){if(!this.isOk)throw new Error("WebSocket is closed");for(;this.ws.bufferedAmount>2097152;)if(await BQ(10),!this.isOk)throw new Error("WebSocket is closed");this.ws.send(A)}isOk(){return this.ws.readyState==WebSocket.OPEN}async close(){this.ws.onmessage=null,!(this.ws.readyState===WebSocket.CLOSED||this.ws.readyState===WebSocket.CLOSING)&&await new Promise((A,B)=>{this.ws.onclose=()=>{this.ws.onclose=null,this.ws.onerror=null,A()},this.ws.onerror=()=>{this.ws.onclose=null,this.ws.onerror=null,B(new Error("WebSocket error during close"))},this.ws.close()})}static parseZenohLocator(A){let B=A.split("/",2);if(B.length!=2)return A;let g=B[0],C=B[1];return g!="ws"&&g!="wss"?A:`${g}://${C}`}};function BQ(I){return new Promise(A=>setTimeout(A,I))}var QQ=GI(mB(),1);var yI=class{constructor(A){Q(this,"session");this.session=A}async declareToken(A){let B=await this.session.declareLivelinessToken(new S(A));return new TB(this.session,B)}async declareSubscriber(A,B){let g=B?.handler??new m(256),[C,E,e]=O(g),t=new S(A),n=await this.session.declareLivelinessSubscriber({keyexpr:t,history:B?.history??!1},{callback:C,drop:E});return new FA(this.session,nA.LivelinessSubscriber,n,t,e)}async get(A,B){let g=B?.handler??new m(256),[C,E,e]=O(g),t=B?.cancellationToken;if(t?.isCancelled()??!1)return E(),e;let n=await this.session.livelinessGet({keyexpr:new S(A),timeoutMs:B?.timeout?QQ.Duration.milliseconds.from(B.timeout):KB},{callback:C,drop:E});return t?.addCancelAction(()=>this.session.cancelQuery(n)),e}},TB=class{constructor(A,B){Q(this,"session");Q(this,"id");this.session=A,this.id=B}async undeclare(){await this.session.undeclareLivelinessToken(this.id)}async[Symbol.asyncDispose](){await this.undeclare()}};var yg=GI(mB(),1);var LA=class{constructor(A){Q(this,"matching_");this.matching_=A}matching(){return this.matching_}},GA=class{constructor(A,B,g){Q(this,"session");Q(this,"id");Q(this,"receiver_");this.session=A,this.id=B,this.receiver_=g}async[Symbol.asyncDispose](){await this.undeclare()}receiver(){return this.receiver_}async undeclare(){await this.session.undeclareMatchingListener(this.id)}};var lI=class{constructor(A,B,g,C,E,e){Q(this,"session");Q(this,"querierId");Q(this,"keyExpr_");Q(this,"congestionControl_");Q(this,"priority_");Q(this,"acceptReplies_");this.session=A,this.querierId=B,this.keyExpr_=g,this.congestionControl_=C,this.priority_=E,this.acceptReplies_=e}async[Symbol.asyncDispose](){await this.undeclare()}async undeclare(){await this.session.undeclareQuerier(this.querierId)}keyExpr(){return this.keyExpr_}congestionControl(){return this.congestionControl_}priority(){return this.priority_}acceptReplies(){return this.acceptReplies_}async get(A){let B=A?.handler??new m(256),[g,C,E]=O(B),e=A?.cancellationToken;if(e?.isCancelled()??!1)return C(),E;let t=await this.session.querierGet({querierId:this.querierId,parameters:A?.parameters?new IA(A.parameters).toString():"",payload:A?.payload?new F(A.payload):void 0,encoding:A?.encoding?J.from(A.encoding):void 0,attachment:A?.attachment?new F(A.attachment):void 0},{callback:g,drop:C});return e?.addCancelAction(()=>this.session.cancelQuery(t)),E}async matchingListener(A){let B=A?.handler??new m(256),[g,C,E]=O(B),e=await this.session.querierDeclareMatchingListener(this.querierId,{callback:g,drop:C});return new GA(this.session,e,E)}async matchingStatus(){return await this.session.querierGetMatchingStatus(this.querierId)}};var KB=1e4,NI=class I{constructor(A){Q(this,"inner");this.inner=A}async[Symbol.asyncDispose](){await this.close()}static async open(A){let B=await qB.open(A.locator,A.messageResponseTimeoutMs);return new I(B)}async close(){this.inner.close()}isClosed(){return this.inner.isClosed()}async put(A,B,g){await this.inner.put(new CB(new S(A),new F(B),g?.encoding?J.from(g.encoding):J.default(),g?.attachment?new F(g.attachment):void 0,g?.timestamp,new P(g?.priority??L.DEFAULT,g?.congestionControl??p.DEFAULT_PUSH,g?.express??!1,g?.reliability??Y.DEFAULT,g?.allowedDestination??R.DEFAULT)))}declareKeyexpr(A){return new S(A)}async info(){return await this.inner.getSessionInfo()}async delete(A,B){await this.inner.delete(new EB(new S(A),B?.attachment?new F(B.attachment):void 0,B?.timestamp,new P(B?.priority??L.DEFAULT,B?.congestionControl??p.DEFAULT_PUSH,B?.express??!1,B?.reliability??Y.DEFAULT,B?.allowedDestination??R.DEFAULT)))}async get(A,B){let g=B?.handler??new m(256),[C,E,e]=O(g),t=HA.from(A),n=B?.cancellationToken;if(n?.isCancelled()??!1)return E(),e;let h=await this.inner.get({keyexpr:t.keyExpr(),parameters:t.parameters().toString(),payload:B?.payload?new F(B.payload):void 0,encoding:B?.encoding?J.from(B.encoding):void 0,attachment:B?.attachment?new F(B.attachment):void 0,qos:new P(B?.priority??L.DEFAULT,B?.congestionControl??p.DEFAULT_REQUEST,B?.express??!1,Y.DEFAULT,B?.allowedDestination??R.DEFAULT),querySettings:new aI(B?.target??JA.DEFAULT,B?.consolidation??fA.DEFAULT,B?.acceptReplies??_.DEFAULT),timeoutMs:B?.timeout?yg.Duration.milliseconds.from(B.timeout):KB},{callback:C,drop:E});return n?.addCancelAction(()=>this.inner.cancelQuery(h)),e}async declareSubscriber(A,B){let g=B?.handler??new m(256),C=new S(A),[E,e,t]=O(g),n=await this.inner.declareSubscriber({keyexpr:C,allowedOrigin:B?.allowedOrigin??R.DEFAULT},{callback:E,drop:e});return new FA(this.inner,nA.Subscriber,n,C,t)}liveliness(){return new yI(this.inner)}async newTimestamp(){return await this.inner.getTimestamp()}async declareQueryable(A,B){let g=new S(A),C=B?.handler??new m(256),[E,e,t]=O(C),n=await this.inner.declareQueryable({keyexpr:g,complete:B?.complete??!1,allowedOrigin:B?.allowedOrigin??R.DEFAULT},{callback:E,drop:e});return new CI(this.inner,n,g,t)}async declarePublisher(A,B){let g={keyexpr:new S(A),encoding:B?.encoding?J.from(B.encoding):J.default(),qos:new P(B?.priority??L.DEFAULT,B?.congestionControl??p.DEFAULT_PUSH,B?.express??!1,B?.reliability??Y.DEFAULT,B?.allowedDestination??R.DEFAULT)},C=await this.inner.declarePublisher(g);return new FI(this.inner,C,g)}async declareQuerier(A,B){let g={keyexpr:new S(A),qos:new P(B?.priority??L.DEFAULT,B?.congestionControl??p.DEFAULT_REQUEST,B?.express??!1,Y.DEFAULT,B?.allowedDestination??R.DEFAULT),querySettings:new aI(B?.target??JA.DEFAULT,B?.consolidation??fA.DEFAULT,B?.acceptReplies??_.DEFAULT),timeoutMs:B?.timeout?yg.Duration.milliseconds.from(B.timeout):KB},C=await this.inner.declareQuerier(g);return new lI(this.inner,C,g.keyexpr,g.qos.congestionControl,g.qos.priority,g.querySettings.replyKeyExpr)}};var uI=class{constructor(A,B,g,C){Q(this,"zid_");Q(this,"peers_");Q(this,"routers_");Q(this,"inner");this.zid_=A,this.peers_=B,this.routers_=g,this.inner=C}zid(){return this.zid_}routersZid(){return this.routers_}peersZid(){return this.peers_}async transports(){return await this.inner.getTransports()}async links(){return await this.inner.getLinks()}async transportEventsListener(A){let B=A?.handler??new m(256),[g,C,E]=O(B),e=await this.inner.declareTransportEventsListener(A?.history??!1,{callback:g,drop:C});return new nI(this.inner,e,E)}async linkEventsListener(A){let B=A?.handler??new m(256),[g,C,E]=O(B),e=await this.inner.declareLinkEventsListener(A?.history??!1,{callback:g,drop:C});return new oI(this.inner,e,E)}};var nA;(function(I){I[I.Subscriber=0]="Subscriber",I[I.LivelinessSubscriber=1]="LivelinessSubscriber"})(nA||(nA={}));var iA=class iA{static get(){let A=iA.current;return iA.current==iA.MAX?iA.current=0:iA.current++,A}};Q(iA,"MAX",1<<31),Q(iA,"current",0);var K=iA,qB=class I{constructor(A,B){Q(this,"isClosed_",!1);Q(this,"link");Q(this,"id","");Q(this,"subscribers",new Map);Q(this,"queryables",new Map);Q(this,"gets",new Map);Q(this,"matchingListeners",new Map);Q(this,"transportEventsListeners",new Map);Q(this,"linkEventsListeners",new Map);Q(this,"pendingMessageResponses",new Map);Q(this,"nextMessageId",0);Q(this,"messageResponseTimeoutMs");this.link=A,this.messageResponseTimeoutMs=B,this.link.onmessage(g=>{try{this.onMessageReceived(g)}catch(C){console.warn(C)}})}onMessageReceived(A){let B=new QI(A),[g,C]=AQ(B);if(C!=null){let E=this.pendingMessageResponses.get(C);E==null?console.warn(`Received unexpected response ${g}:${C}`):(E([g,B]),this.pendingMessageResponses.delete(C))}else switch(g){case a.InQuery:{let E=MB.deserialize(B),e=this.queryables.get(E.queryableId);e==null?console.warn(`Received query for inexistant queryable ${E.queryableId}`):e.callback(new EI(this,E.query));break}case a.InReply:{let E=kB.deserialize(B),e=this.gets.get(E.queryId);e==null?console.warn(`Received reply for inexistant query ${E.queryId}`):e.callback(E.reply);break}case a.InSample:{let E=RB.deserialize(B),e=this.subscribers.get(E.subscriberId);e==null?console.warn(`Received sample for inexistant subscriber ${E.subscriberId}`):e.callback(E.sample);break}case a.QueryResponseFinal:{let E=DI.deserialize(B),e=this.gets.get(E.queryId);e==null?console.warn(`Received responseFinal for inexistant get ${E.queryId}`):(this.gets.delete(E.queryId),e.drop());break}case a.MatchingStatusUpdate:{let E=dB.deserialize(B),e=this.matchingListeners.get(E.matchingListenerId);e==null?console.warn(`Received matching status update for inexistant matching listener ${E.matchingListenerId}`):e.callback(new LA(E.matching));break}case a.InTransportEventUpdate:{let E=pB.deserialize(B),e=this.transportEventsListeners.get(E.listenerId);e==null?console.warn(`Received transport event for inexistant listener ${E.listenerId}`):e.callback(new sI(E.kind,E.transport));break}case a.InLinkEventUpdate:{let E=YB.deserialize(B),e=this.linkEventsListeners.get(E.listenerId);e==null?console.warn(`Received link event for inexistant listener ${E.listenerId}`):e.callback(new rI(E.kind,E.link));break}default:throw new Error(`Received unexpected message type ${g}`)}}async sendMessage(A){let B=new YA;return B.serializeNumberUint8(A.outMessageId),A.serializeWithZSerializer(B),await this.link.send(B.toBytes())}async sendRequest(A,B,g){let C=new YA,E=this.nextMessageId;this.nextMessageId=(this.nextMessageId+1)%(1<<31),IQ([A.outMessageId,E],C),A.serializeWithZSerializer(C);let e=new Promise((t,n)=>{let h=setTimeout(()=>n(),this.messageResponseTimeoutMs);this.pendingMessageResponses.set(E,D=>{clearTimeout(h),t(D)})});return await this.link.send(C.finish().toBytes()),await e.then(t=>{switch(t[0]){case B:return g(t[1]);case a.ResponseError:{let n=GB.deserialize(t[1]);throw new Error(n.error)}default:throw new Error(`Unexpected InRemoteMessageId ${t[0]}`)}},()=>{throw this.pendingMessageResponses.delete(E),new Error("Remote api request timeout")})}async ping(){return await this.sendRequest(new nB,a.ResponsePing,LB.deserialize)}static async open(A,B){let g=await bB.new(A),C=new I(g,B);return C.id=(await C.ping()).uuid,console.log(`Successfully opened session with id: ${C.id}`),C}async declarePublisher(A){let B=K.get();return await this.sendRequest(new WI(B,A),a.ResponseOk,M.deserialize),B}async undeclarePublisher(A){await this.sendRequest(new ZI(A),a.ResponseOk,M.deserialize)}async declareSubscriber(A,B){let g=K.get();this.subscribers.set(g,B);try{await this.sendRequest(new jI(g,A),a.ResponseOk,M.deserialize)}catch(C){throw this.subscribers.delete(g),C}return g}async undeclareSubscriber(A){let B=this.subscribers.get(A);B==null?new Error(`Unknown subscriber id: ${A}`):(this.subscribers.delete(A),B.drop()),await this.sendRequest(new _I(A),a.ResponseOk,M.deserialize)}async declareQueryable(A,B){let g=K.get();return await this.sendRequest(new vI(g,A),a.ResponseOk,M.deserialize),this.queryables.set(g,B),g}async undeclareQueryable(A){let B=this.queryables.get(A);B==null?new Error(`Unknown queryable id: ${A}`):(this.queryables.delete(A),B.drop()),await this.sendRequest(new PI(A),a.ResponseOk,M.deserialize)}async declareQuerier(A){let B=K.get();return await this.sendRequest(new XI(B,A),a.ResponseOk,M.deserialize),B}async undeclareQuerier(A){await this.sendRequest(new VI(A),a.ResponseOk,M.deserialize)}async declareLivelinessToken(A){let B=K.get();return await this.sendRequest(new $I(B,A),a.ResponseOk,M.deserialize),B}async undeclareLivelinessToken(A){await this.sendRequest(new AB(A),a.ResponseOk,M.deserialize)}async declareLivelinessSubscriber(A,B){let g=K.get();this.subscribers.set(g,B);try{await this.sendRequest(new IB(g,A),a.ResponseOk,M.deserialize)}catch(C){throw this.subscribers.delete(g),C}return g}async undeclareLivelinessSubscriber(A){let B=this.subscribers.get(A);B==null?new Error(`Unknown liveliness subscriber id: ${A}`):(this.subscribers.delete(A),B.drop()),await this.sendRequest(new BB(A),a.ResponseOk,M.deserialize)}async getSessionInfo(){return await this.sendRequest(new gB,a.ResponseSessionInfo,UB.deserialize).then(A=>new uI(A.zid,A.peers,A.routers,this))}async getTimestamp(){return await this.sendRequest(new QB,a.ResponseTimestamp,SB.deserialize).then(A=>A.timestamp)}async put(A){return await this.sendMessage(A)}async delete(A){return await this.sendMessage(A)}async publisherPut(A){return await this.sendMessage(A)}async publisherDelete(A){return await this.sendMessage(A)}async get(A,B){let g=K.get();this.gets.set(g,B);try{return await this.sendMessage(new tB(g,A)),g}catch(C){throw this.gets.delete(g),C}}async querierGet(A,B){let g=K.get();this.gets.set(g,B);try{return await this.sendMessage(new sB(g,A)),g}catch(C){throw this.gets.delete(g),C}}async livelinessGet(A,B){let g=K.get();this.gets.set(g,B);try{return await this.sendMessage(new rB(g,A)),g}catch(C){throw this.gets.delete(g),C}}async replyOk(A){await this.sendMessage(A)}async replyDel(A){await this.sendMessage(A)}async replyErr(A){await this.sendMessage(A)}async sendResponseFinal(A){await this.sendMessage(new DI(A))}async publisherDeclareMatchingListener(A,B){let g=K.get();this.matchingListeners.set(g,B);try{await this.sendRequest(new oB(g,A),a.ResponseOk,M.deserialize)}catch(C){throw this.matchingListeners.delete(g),C}return g}async undeclareMatchingListener(A){let B=this.matchingListeners.get(A);B==null?new Error(`Unknown matching listener id: ${A}`):(this.matchingListeners.delete(A),B.drop()),await this.sendRequest(new aB(A),a.ResponseOk,M.deserialize)}async publisherGetMatchingStatus(A){return await this.sendRequest(new cB(A),a.ResponseMatchingStatus,wI.deserialize).then(B=>new LA(B.matching))}async querierDeclareMatchingListener(A,B){let g=K.get();this.matchingListeners.set(g,B);try{await this.sendRequest(new DB(g,A),a.ResponseOk,M.deserialize)}catch(C){throw this.matchingListeners.delete(g),C}return g}async querierGetMatchingStatus(A){return await this.sendRequest(new wB(A),a.ResponseMatchingStatus,wI.deserialize).then(B=>new LA(B.matching))}async getTransports(){return await this.sendRequest(new hB,a.ResponseTransports,JB.deserialize).then(A=>A.transports)}async getLinks(){return await this.sendRequest(new yB,a.ResponseLinks,fB.deserialize).then(A=>A.links)}async declareTransportEventsListener(A,B){let g=K.get();this.transportEventsListeners.set(g,B);try{await this.sendRequest(new lB(g,A),a.ResponseOk,M.deserialize)}catch(C){throw this.transportEventsListeners.delete(g),C}return g}async undeclareTransportEventsListener(A){let B=this.transportEventsListeners.get(A);B==null?new Error(`Unknown transport events listener id: ${A}`):(this.transportEventsListeners.delete(A),B.drop()),await this.sendRequest(new NB(A),a.ResponseOk,M.deserialize)}async declareLinkEventsListener(A,B){let g=K.get();this.linkEventsListeners.set(g,B);try{await this.sendRequest(new uB(g,A),a.ResponseOk,M.deserialize)}catch(C){throw this.linkEventsListeners.delete(g),C}return g}async undeclareLinkEventsListener(A){let B=this.linkEventsListeners.get(A);B==null?new Error(`Unknown link events listener id: ${A}`):(this.linkEventsListeners.delete(A),B.drop()),await this.sendRequest(new FB(A),a.ResponseOk,M.deserialize)}async close(){await this.link.close();for(let A of this.subscribers)A[1].drop();this.subscribers.clear();for(let A of this.gets)A[1].drop();this.gets.clear();for(let A of this.queryables)A[1].drop();this.queryables.clear();for(let A of this.matchingListeners)A[1].drop();this.matchingListeners.clear();for(let A of this.transportEventsListeners)A[1].drop();this.transportEventsListeners.clear();for(let A of this.linkEventsListeners)A[1].drop();this.linkEventsListeners.clear(),this.isClosed_=!0}isClosed(){return this.isClosed_}cancelQuery(A){let B=this.gets.get(A);B!=null&&(this.gets.delete(A),B.drop())}};var FA=class{constructor(A,B,g,C,E){Q(this,"session");Q(this,"kind");Q(this,"id");Q(this,"keyExpr_");Q(this,"receiver_");this.session=A,this.kind=B,this.id=g,this.keyExpr_=C,this.receiver_=E}async[Symbol.asyncDispose](){await this.undeclare()}keyExpr(){return this.keyExpr_}receiver(){return this.receiver_}async undeclare(){this.kind===nA.Subscriber?await this.session.undeclareSubscriber(this.id):await this.session.undeclareLivelinessSubscriber(this.id)}},FI=class{constructor(A,B,g){Q(this,"session");Q(this,"publisherId");Q(this,"properties");this.session=A,this.publisherId=B,this.properties=g}async[Symbol.asyncDispose](){await this.undeclare()}keyExpr(){return this.properties.keyexpr}async put(A,B){await this.session.publisherPut(new eB(this.publisherId,new F(A),B?.encoding?J.from(B.encoding):void 0,B?.attachment?new F(B.attachment):void 0,B?.timestamp))}encoding(){return this.properties.encoding}priority(){return this.properties.qos.priority}reliability(){return this.properties.qos.reliability}congestionControl(){return this.properties.qos.congestionControl}async delete(A){await this.session.publisherDelete(new iB(this.publisherId,A?.attachment?new F(A.attachment):void 0,A?.timestamp))}async matchingListener(A){let B=A?.handler??new m(256),[g,C,E]=O(B),e=await this.session.publisherDeclareMatchingListener(this.publisherId,{callback:g,drop:C});return new GA(this.session,e,E)}async matchingStatus(){return await this.session.publisherGetMatchingStatus(this.publisherId)}async undeclare(){await this.session.undeclarePublisher(this.publisherId)}};var LI=class{constructor(A,B=500){Q(this,"locator");Q(this,"messageResponseTimeoutMs");this.locator=A,this.messageResponseTimeoutMs=B}};var kC=GI(mB(),1);function dC(I,A){return A.startsWith("/")?A.slice(1):`plugin/${I}/${A}`}function lg(I){return JSON.stringify(I)}function Ng(I){let A=typeof I=="string"?I:new TextDecoder().decode(I);try{return JSON.parse(A)}catch{return A}}var xB=class I{constructor(A,B){Q(this,"_session");Q(this,"_pluginId");Q(this,"_pubs",new Map);this._session=A,this._pluginId=B}static async open(A,B){let g=await NI.open(new LI(A));return new I(g,B)}_key(A){return dC(this._pluginId,A)}async pub(A,B){let g=this._key(A),C=this._pubs.get(g);C||(C=await this._session.declarePublisher(g),this._pubs.set(g,C)),await C.put(lg(B))}async sub(A,B){return this._session.declareSubscriber(this._key(A),{handler:g=>{B(Ng(g.payload().toBytes()))}})}async action(A,B){let g=B!==void 0?{payload:lg(B)}:void 0,C=await this._session.get(this._key(A),g);if(C)for await(let E of C){let e=E.result();if(e&&"payload"in e)return Ng(e.payload().toBytes())}}async serve(A,B){let g=this._key(A);return this._session.declareQueryable(g,{handler:async C=>{let E=C.payload()?Ng(C.payload().toBytes()):void 0,e=await B(E);await C.reply(g,lg(e))}})}async close(){for(let A of this._pubs.values())await A.undeclare();this._pubs.clear(),await this._session.close()}};function Vi(I){Lg(),PA.parent.import({targetOrigin:"*"}).connect().then(async({connection:B,toast:g,zenohUrl:C,pluginId:E})=>{let e=await xB.open(C,E),t={pub:(D,k)=>e.pub(D,k),sub:(D,k)=>e.sub(D,k),action:(D,k)=>e.action(D,k),serve:(D,k)=>e.serve(D,k),toast:(D,k)=>g(D,k)},n=document.createElement("remote-root");document.body.append(n),new Fg(B).observe(n),JC(n).render(CQ(Gg.Provider,{value:t},CQ(I)))})}export{Vi as connect};
1
+ import{a as Xt}from"./chunks/chunk-Q6XGCIPE.js";import{a as jt,j as Jt}from"./chunks/chunk-4MGSRUAS.js";import{a as Pe,b as T,c as l,d as _,e as Y,f as m}from"./chunks/chunk-37HVFFJB.js";var At=Symbol.for("quilt.threads.serialize"),$t=Symbol.for("quilt.threads.transferable");var G=class extends AbortController{constructor(...t){super();let e=t.find(r=>r.aborted);if(e)this.abort(e.reason);else{let r=i=>this.abort(i.target.reason),n={signal:this.signal};for(let i of t)i.addEventListener("abort",r,n)}}};var j=class extends Error{constructor(){super("You attempted to call a function on a closed thread.")}};var Ie="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";function at(s=21){let t="",e=crypto.getRandomValues(new Uint8Array(s));for(let r=0;r<s;r++)t+=Ie[63&e[r]];return t}var F,B,q,J,ht,Qt,ct=class{constructor(){_(this,ht);_(this,F,new Map);_(this,B,new Map);_(this,q,new Map);_(this,J,new WeakMap)}get(t){return l(this,B).get(t)}release(t){let e=l(this,B).get(t);return e&&(l(this,B).delete(t),l(this,F).delete(e)),!!e}serialize(t){let e=l(this,F).get(t);return e==null&&(e=at(),l(this,F).set(t,e),l(this,B).set(e,t)),e}deserialize(t,e){let r=l(this,q).get(t)?.deref();return r||(r=(...n)=>{if(!l(this,q).has(t))throw new Error("You attempted to call a function that was already revoked.");return e.call((i,o,c)=>{e.messages.send([3,i,t,o],c)},n)},m(this,ht,Qt).call(this,e)?.register(r,t),l(this,q).set(t,new WeakRef(r)),r)}};F=new WeakMap,B=new WeakMap,q=new WeakMap,J=new WeakMap,ht=new WeakSet,Qt=function(t){let e=l(this,J).get(t);if(!(typeof FinalizationRegistry>"u"))return e||(e=new FinalizationRegistry(r=>{t.messages.send([5,r])}),l(this,J).set(t,e)),e};function Zt(s){return s!=null&&(Symbol.asyncIterator in s||Symbol.iterator in s)&&typeof s.next=="function"}function Rt(s){if(s==null||typeof s!="object")return!1;let t=Object.getPrototypeOf(s);return t==null||t===Object.prototype}var vt="_@f",te="_@i",U,D,b,ft,v,ut=class{constructor(t){_(this,b);_(this,U);_(this,D);Y(this,U,t?.serialize),Y(this,D,t?.deserialize)}serialize(t,e,r){return m(this,b,ft).call(this,t,e,r)}deserialize(t,e){return m(this,b,v).call(this,t,e)}};U=new WeakMap,D=new WeakMap,b=new WeakSet,ft=function(t,e,r,n=new Map,i=!1){if(t==null)return t;if(n.has(t))return n.get(t);if(n.set(t,void 0),typeof t=="object"){if(l(this,U)&&!i){let a=l(this,U).call(this,t,u=>m(this,b,ft).call(this,u,e,r,n,!0),e,r);if(a!==void 0)return n.set(t,a),a}if(t[$t])return r?.push(t),n.set(t,t),t;let o=a=>m(this,b,ft).call(this,a,e,r,n);if(typeof t[At]=="function"){let a=t[At]({serialize:o});return n.set(t,a),a}if(Array.isArray(t)){let a=t.map(u=>o(u));return n.set(t,a),a}if(t instanceof Map){let a=[...t.entries()].map(([f,d])=>[o(f),o(d)]),u=new Map(a);return n.set(t,u),u}if(t instanceof Set){let a=[...t].map(f=>o(f)),u=new Set(a);return n.set(t,u),u}let c=Zt(t);if(Rt(t)||c){let a={};for(let u of Object.keys(t))a[u]=o(t[u]);return c&&(a.next??(a.next=o(t.next.bind(t))),a.return??(a.return=o(t.return.bind(t))),a.throw??(a.throw=o(t.throw.bind(t))),a[te]=!0),n.set(t,a),a}}if(typeof t=="function"){let o=e.functions.serialize(t,e,r),c={[vt]:o};return n.set(t,c),c}return n.set(t,t),t},v=function(t,e,r=!1){if(t==null)return t;if(typeof t=="object"){if(l(this,D)&&!r){let i=l(this,D).call(this,t,o=>m(this,b,v).call(this,o,e,!0),e);if(i!==void 0)return i}if(t==null)return t;if(Array.isArray(t))return t.map(i=>m(this,b,v).call(this,i,e));if(t instanceof Map)return new Map([...t].map(([i,o])=>[m(this,b,v).call(this,i,e),m(this,b,v).call(this,o,e)]));if(t instanceof Set)return new Set([...t].map(i=>m(this,b,v).call(this,i,e)));if(vt in t)return e.functions.deserialize(t[vt],e);if(!Rt(t))return t;let n={};for(let i of Object.keys(t))i===te?n[Symbol.asyncIterator]=()=>n:n[i]=m(this,b,v).call(this,t[i],e);return n}return t};var P,C,E,Ct,ee,Ot,re,lt=class{constructor(t,{imports:e,exports:r,functions:n=new ct,serialization:i=new ut,signal:o}={}){_(this,E);_(this,P);_(this,C,new Map);this.messages=t,Y(this,P,o?new G(o):new AbortController),this.exports=r??{},this.imports=ze(m(this,E,ee).bind(this),e),this.functions=n,this.serialization=i,this.functions.start?.(this),this.serialization.start?.(this),this.signal.addEventListener("abort",()=>{for(let c of l(this,C).keys())m(this,E,Ot).call(this,c,void 0,new j);l(this,C).clear()},{once:!0}),t.listen(async c=>{if(!(Array.isArray(c)&&typeof c[0]=="number"))return;let u=c;switch(u[0]){case 1:{let[,f,d,k]=u,xt=this.exports[d]??(()=>{throw new Error(`No '${d}' method is exported from this thread`)});await m(this,E,Ct).call(this,xt,k,(kt,Tt,St)=>{this.messages.send([2,f,kt,Tt],St)});break}case 3:{let[,f,d,k]=u,xt=this.functions.get(d,this)??He;await m(this,E,Ct).call(this,xt,k,(kt,Tt,St)=>{this.messages.send([4,f,kt,Tt],St)});break}case 2:case 4:{m(this,E,Ot).call(this,...u.slice(1));break}case 5:{let f=u[1];this.functions.release(f,this);break}}},{signal:this.signal})}get signal(){return l(this,P).signal}get closed(){return l(this,P).signal.aborted}close(){l(this,P).abort()}call(t,e){if(this.closed)return Promise.reject(new j);let r=[],n=this.serialization.serialize(e,this,r),i=at(),o=m(this,E,re).call(this,i);return t(i,n,r),o}};P=new WeakMap,C=new WeakMap,E=new WeakSet,Ct=async function(t,e,r){try{let n=this.functions.call?await this.functions.call(t,e,this):await t(...this.serialization.deserialize(e,this)),i=[],o=this.serialization.serialize(n,this,i);r(o,void 0,i)}catch(n){r(void 0,this.serialization.serialize(n,this))}},ee=function(t){return(...e)=>{try{if(typeof t!="string"&&typeof t!="number")throw new Error(`Can\u2019t call a symbol method on a thread: ${t.toString()}`);return this.call((r,n,i)=>{this.messages.send([1,r,t,n],i)},e)}catch(r){return Promise.reject(r)}}},Ot=function(...t){let e=t[0],r=l(this,C).get(e);r&&(r(...t),l(this,C).delete(e))},re=function(t){let e=new Promise((r,n)=>{l(this,C).set(t,(i,o,c)=>{c==null?r(this.serialization.deserialize(o,this)):n(this.serialization.deserialize(c,this))})});return Object.defineProperty(e,Symbol.asyncIterator,{async*value(){let r=await e;Object.defineProperty(r,Symbol.asyncIterator,{value:()=>r}),yield*r}}),e};function ze(s,t){let e;if(t==null){if(typeof Proxy!="function")throw new Error("You must pass an array of callable methods in environments without Proxies.");let r=new Map;e=new Proxy({},{get(n,i){if(r.has(i))return r.get(i);let o=s(i);return r.set(i,o),o}})}else{e={};for(let r of t)Object.defineProperty(e,r,{value:s(r),writable:!1,configurable:!0,enumerable:!0})}return e}function He(){throw new Error("You attempted to call a function that is not stored. It may have already been released.")}var y=class y extends lt{static from(t,e){return new y(t,e)}static import(t,e){return new y(t,e).imports}static export(t,e,r){new y(t,{...r,exports:e})}constructor(t,{targetOrigin:e="*",...r}={}){super(Ve(t,{targetOrigin:e}),r),this.window=t}};T(y,"iframe",Object.assign((t,e)=>y.from(Bt(t),e),{import:(t,e)=>y.import(Bt(t),e),export:(t,e,r)=>y.export(Bt(t),e,r)})),T(y,"parent",Object.assign(t=>y.from(Lt(),t),{import:t=>y.import(Lt(),t),export:(t,e)=>y.export(Lt(),t,e)})),T(y,"opener",Object.assign(t=>y.from(Nt(),t),{import:t=>y.import(Nt(),t),export:(t,e)=>y.export(Nt(),t,e)}));var X=y;function Nt(){if(typeof window>"u"||window.opener==null)throw new Error("No opener window found");return window.opener}function Lt(){if(typeof window>"u"||window.parent==null||window.parent===window)throw new Error("No parent window found");return window.parent}function Bt(s){if(s.contentWindow==null)throw new Error("No content window found");return s.contentWindow}function Ve(s,{targetOrigin:t="*"}={}){let e=function(n,i){s.postMessage(n,t,i)};return{send(r,n){return e(r,n)},listen(r,{signal:n}){self.addEventListener("message",i=>{i.source===s&&r(i.data)},{signal:n})}}}import{createElement as Be}from"react";import{createRoot as dr}from"react-dom/client";var x=Object.create(null);x.open="0";x.close="1";x.ping="2";x.pong="3";x.message="4";x.upgrade="5";x.noop="6";var $=Object.create(null);Object.keys(x).forEach(s=>{$[x[s]]=s});var Q={type:"error",data:"parser error"};var ie=typeof Blob=="function"||typeof Blob<"u"&&Object.prototype.toString.call(Blob)==="[object BlobConstructor]",oe=typeof ArrayBuffer=="function",ae=s=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(s):s&&s.buffer instanceof ArrayBuffer,Z=({type:s,data:t},e,r)=>ie&&t instanceof Blob?e?r(t):se(t,r):oe&&(t instanceof ArrayBuffer||ae(t))?e?r(t):se(new Blob([t]),r):r(x[s]+(t||"")),se=(s,t)=>{let e=new FileReader;return e.onload=function(){let r=e.result.split(",")[1];t("b"+(r||""))},e.readAsDataURL(s)};function ne(s){return s instanceof Uint8Array?s:s instanceof ArrayBuffer?new Uint8Array(s):new Uint8Array(s.buffer,s.byteOffset,s.byteLength)}var Pt;function ce(s,t){if(ie&&s.data instanceof Blob)return s.data.arrayBuffer().then(ne).then(t);if(oe&&(s.data instanceof ArrayBuffer||ae(s.data)))return t(ne(s.data));Z(s,!1,e=>{Pt||(Pt=new TextEncoder),t(Pt.encode(e))})}var he="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",tt=typeof Uint8Array>"u"?[]:new Uint8Array(256);for(let s=0;s<he.length;s++)tt[he.charCodeAt(s)]=s;var fe=s=>{let t=s.length*.75,e=s.length,r,n=0,i,o,c,a;s[s.length-1]==="="&&(t--,s[s.length-2]==="="&&t--);let u=new ArrayBuffer(t),f=new Uint8Array(u);for(r=0;r<e;r+=4)i=tt[s.charCodeAt(r)],o=tt[s.charCodeAt(r+1)],c=tt[s.charCodeAt(r+2)],a=tt[s.charCodeAt(r+3)],f[n++]=i<<2|o>>4,f[n++]=(o&15)<<4|c>>2,f[n++]=(c&3)<<6|a&63;return u};var We=typeof ArrayBuffer=="function",et=(s,t)=>{if(typeof s!="string")return{type:"message",data:ue(s,t)};let e=s.charAt(0);return e==="b"?{type:"message",data:Ke(s.substring(1),t)}:$[e]?s.length>1?{type:$[e],data:s.substring(1)}:{type:$[e]}:Q},Ke=(s,t)=>{if(We){let e=fe(s);return ue(e,t)}else return{base64:!0,data:s}},ue=(s,t)=>{switch(t){case"blob":return s instanceof Blob?s:new Blob([s]);case"arraybuffer":default:return s instanceof ArrayBuffer?s:s.buffer}};var le="",pe=(s,t)=>{let e=s.length,r=new Array(e),n=0;s.forEach((i,o)=>{Z(i,!1,c=>{r[o]=c,++n===e&&t(r.join(le))})})},de=(s,t)=>{let e=s.split(le),r=[];for(let n=0;n<e.length;n++){let i=et(e[n],t);if(r.push(i),i.type==="error")break}return r};function me(){return new TransformStream({transform(s,t){ce(s,e=>{let r=e.length,n;if(r<126)n=new Uint8Array(1),new DataView(n.buffer).setUint8(0,r);else if(r<65536){n=new Uint8Array(3);let i=new DataView(n.buffer);i.setUint8(0,126),i.setUint16(1,r)}else{n=new Uint8Array(9);let i=new DataView(n.buffer);i.setUint8(0,127),i.setBigUint64(1,BigInt(r))}s.data&&typeof s.data!="string"&&(n[0]|=128),t.enqueue(n),t.enqueue(e)})}})}var It;function pt(s){return s.reduce((t,e)=>t+e.length,0)}function dt(s,t){if(s[0].length===t)return s.shift();let e=new Uint8Array(t),r=0;for(let n=0;n<t;n++)e[n]=s[0][r++],r===s[0].length&&(s.shift(),r=0);return s.length&&r<s[0].length&&(s[0]=s[0].slice(r)),e}function ye(s,t){It||(It=new TextDecoder);let e=[],r=0,n=-1,i=!1;return new TransformStream({transform(o,c){for(e.push(o);;){if(r===0){if(pt(e)<1)break;let a=dt(e,1);i=(a[0]&128)===128,n=a[0]&127,n<126?r=3:n===126?r=1:r=2}else if(r===1){if(pt(e)<2)break;let a=dt(e,2);n=new DataView(a.buffer,a.byteOffset,a.length).getUint16(0),r=3}else if(r===2){if(pt(e)<8)break;let a=dt(e,8),u=new DataView(a.buffer,a.byteOffset,a.length),f=u.getUint32(0);if(f>Math.pow(2,21)-1){c.enqueue(Q);break}n=f*Math.pow(2,32)+u.getUint32(4),r=3}else{if(pt(e)<n)break;let a=dt(e,n);c.enqueue(et(i?a:It.decode(a),t)),r=0}if(n===0||n>s){c.enqueue(Q);break}}}})}var Mt=4;function p(s){if(s)return Ye(s)}function Ye(s){for(var t in p.prototype)s[t]=p.prototype[t];return s}p.prototype.on=p.prototype.addEventListener=function(s,t){return this._callbacks=this._callbacks||{},(this._callbacks["$"+s]=this._callbacks["$"+s]||[]).push(t),this};p.prototype.once=function(s,t){function e(){this.off(s,e),t.apply(this,arguments)}return e.fn=t,this.on(s,e),this};p.prototype.off=p.prototype.removeListener=p.prototype.removeAllListeners=p.prototype.removeEventListener=function(s,t){if(this._callbacks=this._callbacks||{},arguments.length==0)return this._callbacks={},this;var e=this._callbacks["$"+s];if(!e)return this;if(arguments.length==1)return delete this._callbacks["$"+s],this;for(var r,n=0;n<e.length;n++)if(r=e[n],r===t||r.fn===t){e.splice(n,1);break}return e.length===0&&delete this._callbacks["$"+s],this};p.prototype.emit=function(s){this._callbacks=this._callbacks||{};for(var t=new Array(arguments.length-1),e=this._callbacks["$"+s],r=1;r<arguments.length;r++)t[r-1]=arguments[r];if(e){e=e.slice(0);for(var r=0,n=e.length;r<n;++r)e[r].apply(this,t)}return this};p.prototype.emitReserved=p.prototype.emit;p.prototype.listeners=function(s){return this._callbacks=this._callbacks||{},this._callbacks["$"+s]||[]};p.prototype.hasListeners=function(s){return!!this.listeners(s).length};var S=typeof Promise=="function"&&typeof Promise.resolve=="function"?t=>Promise.resolve().then(t):(t,e)=>e(t,0),g=typeof self<"u"?self:typeof window<"u"?window:Function("return this")(),ge="arraybuffer";function mt(s,...t){return t.reduce((e,r)=>(s.hasOwnProperty(r)&&(e[r]=s[r]),e),{})}var Ge=g.setTimeout,je=g.clearTimeout;function A(s,t){t.useNativeTimers?(s.setTimeoutFn=Ge.bind(g),s.clearTimeoutFn=je.bind(g)):(s.setTimeoutFn=g.setTimeout.bind(g),s.clearTimeoutFn=g.clearTimeout.bind(g))}var Je=1.33;function _e(s){return typeof s=="string"?Xe(s):Math.ceil((s.byteLength||s.size)*Je)}function Xe(s){let t=0,e=0;for(let r=0,n=s.length;r<n;r++)t=s.charCodeAt(r),t<128?e+=1:t<2048?e+=2:t<55296||t>=57344?e+=3:(r++,e+=4);return e}function yt(){return Date.now().toString(36).substring(3)+Math.random().toString(36).substring(2,5)}function be(s){let t="";for(let e in s)s.hasOwnProperty(e)&&(t.length&&(t+="&"),t+=encodeURIComponent(e)+"="+encodeURIComponent(s[e]));return t}function we(s){let t={},e=s.split("&");for(let r=0,n=e.length;r<n;r++){let i=e[r].split("=");t[decodeURIComponent(i[0])]=decodeURIComponent(i[1])}return t}var gt=class extends Error{constructor(t,e,r){super(t),this.description=e,this.context=r,this.type="TransportError"}},R=class extends p{constructor(t){super(),this.writable=!1,A(this,t),this.opts=t,this.query=t.query,this.socket=t.socket,this.supportsBinary=!t.forceBase64}onError(t,e,r){return super.emitReserved("error",new gt(t,e,r)),this}open(){return this.readyState="opening",this.doOpen(),this}close(){return(this.readyState==="opening"||this.readyState==="open")&&(this.doClose(),this.onClose()),this}send(t){this.readyState==="open"&&this.write(t)}onOpen(){this.readyState="open",this.writable=!0,super.emitReserved("open")}onData(t){let e=et(t,this.socket.binaryType);this.onPacket(e)}onPacket(t){super.emitReserved("packet",t)}onClose(t){this.readyState="closed",super.emitReserved("close",t)}pause(t){}createUri(t,e={}){return t+"://"+this._hostname()+this._port()+this.opts.path+this._query(e)}_hostname(){let t=this.opts.hostname;return t.indexOf(":")===-1?t:"["+t+"]"}_port(){return this.opts.port&&(this.opts.secure&&Number(this.opts.port)!==443||!this.opts.secure&&Number(this.opts.port)!==80)?":"+this.opts.port:""}_query(t){let e=be(t);return e.length?"?"+e:""}};var rt=class extends R{constructor(){super(...arguments),this._polling=!1}get name(){return"polling"}doOpen(){this._poll()}pause(t){this.readyState="pausing";let e=()=>{this.readyState="paused",t()};if(this._polling||!this.writable){let r=0;this._polling&&(r++,this.once("pollComplete",function(){--r||e()})),this.writable||(r++,this.once("drain",function(){--r||e()}))}else e()}_poll(){this._polling=!0,this.doPoll(),this.emitReserved("poll")}onData(t){let e=r=>{if(this.readyState==="opening"&&r.type==="open"&&this.onOpen(),r.type==="close")return this.onClose({description:"transport closed by the server"}),!1;this.onPacket(r)};de(t,this.socket.binaryType).forEach(e),this.readyState!=="closed"&&(this._polling=!1,this.emitReserved("pollComplete"),this.readyState==="open"&&this._poll())}doClose(){let t=()=>{this.write([{type:"close"}])};this.readyState==="open"?t():this.once("open",t)}write(t){this.writable=!1,pe(t,e=>{this.doWrite(e,()=>{this.writable=!0,this.emitReserved("drain")})})}uri(){let t=this.opts.secure?"https":"http",e=this.query||{};return this.opts.timestampRequests!==!1&&(e[this.opts.timestampParam]=yt()),!this.supportsBinary&&!e.sid&&(e.b64=1),this.createUri(t,e)}};var Ee=!1;try{Ee=typeof XMLHttpRequest<"u"&&"withCredentials"in new XMLHttpRequest}catch{}var xe=Ee;function $e(){}var Ft=class extends rt{constructor(t){if(super(t),typeof location<"u"){let e=location.protocol==="https:",r=location.port;r||(r=e?"443":"80"),this.xd=typeof location<"u"&&t.hostname!==location.hostname||r!==t.port}}doWrite(t,e){let r=this.request({method:"POST",data:t});r.on("success",e),r.on("error",(n,i)=>{this.onError("xhr post error",n,i)})}doPoll(){let t=this.request();t.on("data",this.onData.bind(this)),t.on("error",(e,r)=>{this.onError("xhr poll error",e,r)}),this.pollXhr=t}},O=class s extends p{constructor(t,e,r){super(),this.createRequest=t,A(this,r),this._opts=r,this._method=r.method||"GET",this._uri=e,this._data=r.data!==void 0?r.data:null,this._create()}_create(){var t;let e=mt(this._opts,"agent","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","autoUnref");e.xdomain=!!this._opts.xd;let r=this._xhr=this.createRequest(e);try{r.open(this._method,this._uri,!0);try{if(this._opts.extraHeaders){r.setDisableHeaderCheck&&r.setDisableHeaderCheck(!0);for(let n in this._opts.extraHeaders)this._opts.extraHeaders.hasOwnProperty(n)&&r.setRequestHeader(n,this._opts.extraHeaders[n])}}catch{}if(this._method==="POST")try{r.setRequestHeader("Content-type","text/plain;charset=UTF-8")}catch{}try{r.setRequestHeader("Accept","*/*")}catch{}(t=this._opts.cookieJar)===null||t===void 0||t.addCookies(r),"withCredentials"in r&&(r.withCredentials=this._opts.withCredentials),this._opts.requestTimeout&&(r.timeout=this._opts.requestTimeout),r.onreadystatechange=()=>{var n;r.readyState===3&&((n=this._opts.cookieJar)===null||n===void 0||n.parseCookies(r.getResponseHeader("set-cookie"))),r.readyState===4&&(r.status===200||r.status===1223?this._onLoad():this.setTimeoutFn(()=>{this._onError(typeof r.status=="number"?r.status:0)},0))},r.send(this._data)}catch(n){this.setTimeoutFn(()=>{this._onError(n)},0);return}typeof document<"u"&&(this._index=s.requestsCount++,s.requests[this._index]=this)}_onError(t){this.emitReserved("error",t,this._xhr),this._cleanup(!0)}_cleanup(t){if(!(typeof this._xhr>"u"||this._xhr===null)){if(this._xhr.onreadystatechange=$e,t)try{this._xhr.abort()}catch{}typeof document<"u"&&delete s.requests[this._index],this._xhr=null}}_onLoad(){let t=this._xhr.responseText;t!==null&&(this.emitReserved("data",t),this.emitReserved("success"),this._cleanup())}abort(){this._cleanup()}};O.requestsCount=0;O.requests={};if(typeof document<"u"){if(typeof attachEvent=="function")attachEvent("onunload",ke);else if(typeof addEventListener=="function"){let s="onpagehide"in g?"pagehide":"unload";addEventListener(s,ke,!1)}}function ke(){for(let s in O.requests)O.requests.hasOwnProperty(s)&&O.requests[s].abort()}var Qe=(function(){let s=Te({xdomain:!1});return s&&s.responseType!==null})(),N=class extends Ft{constructor(t){super(t);let e=t&&t.forceBase64;this.supportsBinary=Qe&&!e}request(t={}){return Object.assign(t,{xd:this.xd},this.opts),new O(Te,this.uri(),t)}};function Te(s){let t=s.xdomain;try{if(typeof XMLHttpRequest<"u"&&(!t||xe))return new XMLHttpRequest}catch{}if(!t)try{return new g[["Active"].concat("Object").join("X")]("Microsoft.XMLHTTP")}catch{}}var Se=typeof navigator<"u"&&typeof navigator.product=="string"&&navigator.product.toLowerCase()==="reactnative",Ut=class extends R{get name(){return"websocket"}doOpen(){let t=this.uri(),e=this.opts.protocols,r=Se?{}:mt(this.opts,"agent","perMessageDeflate","pfx","key","passphrase","cert","ca","ciphers","rejectUnauthorized","localAddress","protocolVersion","origin","maxPayload","family","checkServerIdentity");this.opts.extraHeaders&&(r.headers=this.opts.extraHeaders);try{this.ws=this.createSocket(t,e,r)}catch(n){return this.emitReserved("error",n)}this.ws.binaryType=this.socket.binaryType,this.addEventListeners()}addEventListeners(){this.ws.onopen=()=>{this.opts.autoUnref&&this.ws._socket.unref(),this.onOpen()},this.ws.onclose=t=>this.onClose({description:"websocket connection closed",context:t}),this.ws.onmessage=t=>this.onData(t.data),this.ws.onerror=t=>this.onError("websocket error",t)}write(t){this.writable=!1;for(let e=0;e<t.length;e++){let r=t[e],n=e===t.length-1;Z(r,this.supportsBinary,i=>{try{this.doWrite(r,i)}catch{}n&&S(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){typeof this.ws<"u"&&(this.ws.onerror=()=>{},this.ws.close(),this.ws=null)}uri(){let t=this.opts.secure?"wss":"ws",e=this.query||{};return this.opts.timestampRequests&&(e[this.opts.timestampParam]=yt()),this.supportsBinary||(e.b64=1),this.createUri(t,e)}},qt=g.WebSocket||g.MozWebSocket,L=class extends Ut{createSocket(t,e,r){return Se?new qt(t,e,r):e?new qt(t,e):new qt(t)}doWrite(t,e){this.ws.send(e)}};var z=class extends R{get name(){return"webtransport"}doOpen(){try{this._transport=new WebTransport(this.createUri("https"),this.opts.transportOptions[this.name])}catch(t){return this.emitReserved("error",t)}this._transport.closed.then(()=>{this.onClose()}).catch(t=>{this.onError("webtransport error",t)}),this._transport.ready.then(()=>{this._transport.createBidirectionalStream().then(t=>{let e=ye(Number.MAX_SAFE_INTEGER,this.socket.binaryType),r=t.readable.pipeThrough(e).getReader(),n=me();n.readable.pipeTo(t.writable),this._writer=n.writable.getWriter();let i=()=>{r.read().then(({done:c,value:a})=>{c||(this.onPacket(a),i())}).catch(c=>{})};i();let o={type:"open"};this.query.sid&&(o.data=`{"sid":"${this.query.sid}"}`),this._writer.write(o).then(()=>this.onOpen())})})}write(t){this.writable=!1;for(let e=0;e<t.length;e++){let r=t[e],n=e===t.length-1;this._writer.write(r).then(()=>{n&&S(()=>{this.writable=!0,this.emitReserved("drain")},this.setTimeoutFn)})}}doClose(){var t;(t=this._transport)===null||t===void 0||t.close()}};var Dt={websocket:L,webtransport:z,polling:N};var Ze=/^(?:(?![^:@\/?#]+:[^:@\/]*@)(http|https|ws|wss):\/\/)?((?:(([^:@\/?#]*)(?::([^:@\/?#]*))?)?@)?((?:[a-f0-9]{0,4}:){2,7}[a-f0-9]{0,4}|[^:\/?#]*)(?::(\d*))?)(((\/(?:[^?#](?![^?#\/]*\.[^?#\/.]+(?:[?#]|$)))*\/?)?([^?#\/]*))(?:\?([^#]*))?(?:#(.*))?)/,tr=["source","protocol","authority","userInfo","user","password","host","port","relative","path","directory","file","query","anchor"];function H(s){if(s.length>8e3)throw"URI too long";let t=s,e=s.indexOf("["),r=s.indexOf("]");e!=-1&&r!=-1&&(s=s.substring(0,e)+s.substring(e,r).replace(/:/g,";")+s.substring(r,s.length));let n=Ze.exec(s||""),i={},o=14;for(;o--;)i[tr[o]]=n[o]||"";return e!=-1&&r!=-1&&(i.source=t,i.host=i.host.substring(1,i.host.length-1).replace(/;/g,":"),i.authority=i.authority.replace("[","").replace("]","").replace(/;/g,":"),i.ipv6uri=!0),i.pathNames=er(i,i.path),i.queryKey=rr(i,i.query),i}function er(s,t){let e=/\/{2,9}/g,r=t.replace(e,"/").split("/");return(t.slice(0,1)=="/"||t.length===0)&&r.splice(0,1),t.slice(-1)=="/"&&r.splice(r.length-1,1),r}function rr(s,t){let e={};return t.replace(/(?:^|&)([^&=]*)=?([^&]*)/g,function(r,n,i){n&&(e[n]=i)}),e}var zt=typeof addEventListener=="function"&&typeof removeEventListener=="function",_t=[];zt&&addEventListener("offline",()=>{_t.forEach(s=>s())},!1);var I=class s extends p{constructor(t,e){if(super(),this.binaryType=ge,this.writeBuffer=[],this._prevBufferLen=0,this._pingInterval=-1,this._pingTimeout=-1,this._maxPayload=-1,this._pingTimeoutTime=1/0,t&&typeof t=="object"&&(e=t,t=null),t){let r=H(t);e.hostname=r.host,e.secure=r.protocol==="https"||r.protocol==="wss",e.port=r.port,r.query&&(e.query=r.query)}else e.host&&(e.hostname=H(e.host).host);A(this,e),this.secure=e.secure!=null?e.secure:typeof location<"u"&&location.protocol==="https:",e.hostname&&!e.port&&(e.port=this.secure?"443":"80"),this.hostname=e.hostname||(typeof location<"u"?location.hostname:"localhost"),this.port=e.port||(typeof location<"u"&&location.port?location.port:this.secure?"443":"80"),this.transports=[],this._transportsByName={},e.transports.forEach(r=>{let n=r.prototype.name;this.transports.push(n),this._transportsByName[n]=r}),this.opts=Object.assign({path:"/engine.io",agent:!1,withCredentials:!1,upgrade:!0,timestampParam:"t",rememberUpgrade:!1,addTrailingSlash:!0,rejectUnauthorized:!0,perMessageDeflate:{threshold:1024},transportOptions:{},closeOnBeforeunload:!1},e),this.opts.path=this.opts.path.replace(/\/$/,"")+(this.opts.addTrailingSlash?"/":""),typeof this.opts.query=="string"&&(this.opts.query=we(this.opts.query)),zt&&(this.opts.closeOnBeforeunload&&(this._beforeunloadEventListener=()=>{this.transport&&(this.transport.removeAllListeners(),this.transport.close())},addEventListener("beforeunload",this._beforeunloadEventListener,!1)),this.hostname!=="localhost"&&(this._offlineEventListener=()=>{this._onClose("transport close",{description:"network connection lost"})},_t.push(this._offlineEventListener))),this.opts.withCredentials&&(this._cookieJar=void 0),this._open()}createTransport(t){let e=Object.assign({},this.opts.query);e.EIO=Mt,e.transport=t,this.id&&(e.sid=this.id);let r=Object.assign({},this.opts,{query:e,socket:this,hostname:this.hostname,secure:this.secure,port:this.port},this.opts.transportOptions[t]);return new this._transportsByName[t](r)}_open(){if(this.transports.length===0){this.setTimeoutFn(()=>{this.emitReserved("error","No transports available")},0);return}let t=this.opts.rememberUpgrade&&s.priorWebsocketSuccess&&this.transports.indexOf("websocket")!==-1?"websocket":this.transports[0];this.readyState="opening";let e=this.createTransport(t);e.open(),this.setTransport(e)}setTransport(t){this.transport&&this.transport.removeAllListeners(),this.transport=t,t.on("drain",this._onDrain.bind(this)).on("packet",this._onPacket.bind(this)).on("error",this._onError.bind(this)).on("close",e=>this._onClose("transport close",e))}onOpen(){this.readyState="open",s.priorWebsocketSuccess=this.transport.name==="websocket",this.emitReserved("open"),this.flush()}_onPacket(t){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing")switch(this.emitReserved("packet",t),this.emitReserved("heartbeat"),t.type){case"open":this.onHandshake(JSON.parse(t.data));break;case"ping":this._sendPacket("pong"),this.emitReserved("ping"),this.emitReserved("pong"),this._resetPingTimeout();break;case"error":let e=new Error("server error");e.code=t.data,this._onError(e);break;case"message":this.emitReserved("data",t.data),this.emitReserved("message",t.data);break}}onHandshake(t){this.emitReserved("handshake",t),this.id=t.sid,this.transport.query.sid=t.sid,this._pingInterval=t.pingInterval,this._pingTimeout=t.pingTimeout,this._maxPayload=t.maxPayload,this.onOpen(),this.readyState!=="closed"&&this._resetPingTimeout()}_resetPingTimeout(){this.clearTimeoutFn(this._pingTimeoutTimer);let t=this._pingInterval+this._pingTimeout;this._pingTimeoutTime=Date.now()+t,this._pingTimeoutTimer=this.setTimeoutFn(()=>{this._onClose("ping timeout")},t),this.opts.autoUnref&&this._pingTimeoutTimer.unref()}_onDrain(){this.writeBuffer.splice(0,this._prevBufferLen),this._prevBufferLen=0,this.writeBuffer.length===0?this.emitReserved("drain"):this.flush()}flush(){if(this.readyState!=="closed"&&this.transport.writable&&!this.upgrading&&this.writeBuffer.length){let t=this._getWritablePackets();this.transport.send(t),this._prevBufferLen=t.length,this.emitReserved("flush")}}_getWritablePackets(){if(!(this._maxPayload&&this.transport.name==="polling"&&this.writeBuffer.length>1))return this.writeBuffer;let e=1;for(let r=0;r<this.writeBuffer.length;r++){let n=this.writeBuffer[r].data;if(n&&(e+=_e(n)),r>0&&e>this._maxPayload)return this.writeBuffer.slice(0,r);e+=2}return this.writeBuffer}_hasPingExpired(){if(!this._pingTimeoutTime)return!0;let t=Date.now()>this._pingTimeoutTime;return t&&(this._pingTimeoutTime=0,S(()=>{this._onClose("ping timeout")},this.setTimeoutFn)),t}write(t,e,r){return this._sendPacket("message",t,e,r),this}send(t,e,r){return this._sendPacket("message",t,e,r),this}_sendPacket(t,e,r,n){if(typeof e=="function"&&(n=e,e=void 0),typeof r=="function"&&(n=r,r=null),this.readyState==="closing"||this.readyState==="closed")return;r=r||{},r.compress=r.compress!==!1;let i={type:t,data:e,options:r};this.emitReserved("packetCreate",i),this.writeBuffer.push(i),n&&this.once("flush",n),this.flush()}close(){let t=()=>{this._onClose("forced close"),this.transport.close()},e=()=>{this.off("upgrade",e),this.off("upgradeError",e),t()},r=()=>{this.once("upgrade",e),this.once("upgradeError",e)};return(this.readyState==="opening"||this.readyState==="open")&&(this.readyState="closing",this.writeBuffer.length?this.once("drain",()=>{this.upgrading?r():t()}):this.upgrading?r():t()),this}_onError(t){if(s.priorWebsocketSuccess=!1,this.opts.tryAllTransports&&this.transports.length>1&&this.readyState==="opening")return this.transports.shift(),this._open();this.emitReserved("error",t),this._onClose("transport error",t)}_onClose(t,e){if(this.readyState==="opening"||this.readyState==="open"||this.readyState==="closing"){if(this.clearTimeoutFn(this._pingTimeoutTimer),this.transport.removeAllListeners("close"),this.transport.close(),this.transport.removeAllListeners(),zt&&(this._beforeunloadEventListener&&removeEventListener("beforeunload",this._beforeunloadEventListener,!1),this._offlineEventListener)){let r=_t.indexOf(this._offlineEventListener);r!==-1&&_t.splice(r,1)}this.readyState="closed",this.id=null,this.emitReserved("close",t,e),this.writeBuffer=[],this._prevBufferLen=0}}};I.protocol=Mt;var bt=class extends I{constructor(){super(...arguments),this._upgrades=[]}onOpen(){if(super.onOpen(),this.readyState==="open"&&this.opts.upgrade)for(let t=0;t<this._upgrades.length;t++)this._probe(this._upgrades[t])}_probe(t){let e=this.createTransport(t),r=!1;I.priorWebsocketSuccess=!1;let n=()=>{r||(e.send([{type:"ping",data:"probe"}]),e.once("packet",d=>{if(!r)if(d.type==="pong"&&d.data==="probe"){if(this.upgrading=!0,this.emitReserved("upgrading",e),!e)return;I.priorWebsocketSuccess=e.name==="websocket",this.transport.pause(()=>{r||this.readyState!=="closed"&&(f(),this.setTransport(e),e.send([{type:"upgrade"}]),this.emitReserved("upgrade",e),e=null,this.upgrading=!1,this.flush())})}else{let k=new Error("probe error");k.transport=e.name,this.emitReserved("upgradeError",k)}}))};function i(){r||(r=!0,f(),e.close(),e=null)}let o=d=>{let k=new Error("probe error: "+d);k.transport=e.name,i(),this.emitReserved("upgradeError",k)};function c(){o("transport closed")}function a(){o("socket closed")}function u(d){e&&d.name!==e.name&&i()}let f=()=>{e.removeListener("open",n),e.removeListener("error",o),e.removeListener("close",c),this.off("close",a),this.off("upgrading",u)};e.once("open",n),e.once("error",o),e.once("close",c),this.once("close",a),this.once("upgrading",u),this._upgrades.indexOf("webtransport")!==-1&&t!=="webtransport"?this.setTimeoutFn(()=>{r||e.open()},200):e.open()}onHandshake(t){this._upgrades=this._filterUpgrades(t.upgrades),super.onHandshake(t)}_filterUpgrades(t){let e=[];for(let r=0;r<t.length;r++)~this.transports.indexOf(t[r])&&e.push(t[r]);return e}},V=class extends bt{constructor(t,e={}){let r=typeof t=="object"?t:e;(!r.transports||r.transports&&typeof r.transports[0]=="string")&&(r.transports=(r.transports||["polling","websocket","webtransport"]).map(n=>Dt[n]).filter(n=>!!n)),super(t,r)}};var Ks=V.protocol;function Ae(s,t="",e){let r=s;e=e||typeof location<"u"&&location,s==null&&(s=e.protocol+"//"+e.host),typeof s=="string"&&(s.charAt(0)==="/"&&(s.charAt(1)==="/"?s=e.protocol+s:s=e.host+s),/^(https?|wss?):\/\//.test(s)||(typeof e<"u"?s=e.protocol+"//"+s:s="https://"+s),r=H(s)),r.port||(/^(http|ws)$/.test(r.protocol)?r.port="80":/^(http|ws)s$/.test(r.protocol)&&(r.port="443")),r.path=r.path||"/";let i=r.host.indexOf(":")!==-1?"["+r.host+"]":r.host;return r.id=r.protocol+"://"+i+":"+r.port+t,r.href=r.protocol+"://"+i+(e&&e.port===r.port?"":":"+r.port),r}var Gt={};Pe(Gt,{Decoder:()=>Kt,Encoder:()=>Wt,PacketType:()=>h,isPacketValid:()=>ur,protocol:()=>Ne});var nr=typeof ArrayBuffer=="function",ir=s=>typeof ArrayBuffer.isView=="function"?ArrayBuffer.isView(s):s.buffer instanceof ArrayBuffer,Re=Object.prototype.toString,or=typeof Blob=="function"||typeof Blob<"u"&&Re.call(Blob)==="[object BlobConstructor]",ar=typeof File=="function"||typeof File<"u"&&Re.call(File)==="[object FileConstructor]";function nt(s){return nr&&(s instanceof ArrayBuffer||ir(s))||or&&s instanceof Blob||ar&&s instanceof File}function st(s,t){if(!s||typeof s!="object")return!1;if(Array.isArray(s)){for(let e=0,r=s.length;e<r;e++)if(st(s[e]))return!0;return!1}if(nt(s))return!0;if(s.toJSON&&typeof s.toJSON=="function"&&arguments.length===1)return st(s.toJSON(),!0);for(let e in s)if(Object.prototype.hasOwnProperty.call(s,e)&&st(s[e]))return!0;return!1}function ve(s){let t=[],e=s.data,r=s;return r.data=Ht(e,t),r.attachments=t.length,{packet:r,buffers:t}}function Ht(s,t){if(!s)return s;if(nt(s)){let e={_placeholder:!0,num:t.length};return t.push(s),e}else if(Array.isArray(s)){let e=new Array(s.length);for(let r=0;r<s.length;r++)e[r]=Ht(s[r],t);return e}else if(typeof s=="object"&&!(s instanceof Date)){let e={};for(let r in s)Object.prototype.hasOwnProperty.call(s,r)&&(e[r]=Ht(s[r],t));return e}return s}function Ce(s,t){return s.data=Vt(s.data,t),delete s.attachments,s}function Vt(s,t){if(!s)return s;if(s&&s._placeholder===!0){if(typeof s.num=="number"&&s.num>=0&&s.num<t.length)return t[s.num];throw new Error("illegal attachments")}else if(Array.isArray(s))for(let e=0;e<s.length;e++)s[e]=Vt(s[e],t);else if(typeof s=="object")for(let e in s)Object.prototype.hasOwnProperty.call(s,e)&&(s[e]=Vt(s[e],t));return s}var Oe=["connect","connect_error","disconnect","disconnecting","newListener","removeListener"],Ne=5,h;(function(s){s[s.CONNECT=0]="CONNECT",s[s.DISCONNECT=1]="DISCONNECT",s[s.EVENT=2]="EVENT",s[s.ACK=3]="ACK",s[s.CONNECT_ERROR=4]="CONNECT_ERROR",s[s.BINARY_EVENT=5]="BINARY_EVENT",s[s.BINARY_ACK=6]="BINARY_ACK"})(h||(h={}));var Wt=class{constructor(t){this.replacer=t}encode(t){return(t.type===h.EVENT||t.type===h.ACK)&&st(t)?this.encodeAsBinary({type:t.type===h.EVENT?h.BINARY_EVENT:h.BINARY_ACK,nsp:t.nsp,data:t.data,id:t.id}):[this.encodeAsString(t)]}encodeAsString(t){let e=""+t.type;return(t.type===h.BINARY_EVENT||t.type===h.BINARY_ACK)&&(e+=t.attachments+"-"),t.nsp&&t.nsp!=="/"&&(e+=t.nsp+","),t.id!=null&&(e+=t.id),t.data!=null&&(e+=JSON.stringify(t.data,this.replacer)),e}encodeAsBinary(t){let e=ve(t),r=this.encodeAsString(e.packet),n=e.buffers;return n.unshift(r),n}},Kt=class s extends p{constructor(t){super(),this.opts=Object.assign({reviver:void 0,maxAttachments:10},typeof t=="function"?{reviver:t}:t)}add(t){let e;if(typeof t=="string"){if(this.reconstructor)throw new Error("got plaintext data when reconstructing a packet");e=this.decodeString(t);let r=e.type===h.BINARY_EVENT;r||e.type===h.BINARY_ACK?(e.type=r?h.EVENT:h.ACK,this.reconstructor=new Yt(e),e.attachments===0&&super.emitReserved("decoded",e)):super.emitReserved("decoded",e)}else if(nt(t)||t.base64)if(this.reconstructor)e=this.reconstructor.takeBinaryData(t),e&&(this.reconstructor=null,super.emitReserved("decoded",e));else throw new Error("got binary data when not reconstructing a packet");else throw new Error("Unknown type: "+t)}decodeString(t){let e=0,r={type:Number(t.charAt(0))};if(h[r.type]===void 0)throw new Error("unknown packet type "+r.type);if(r.type===h.BINARY_EVENT||r.type===h.BINARY_ACK){let i=e+1;for(;t.charAt(++e)!=="-"&&e!=t.length;);let o=t.substring(i,e);if(o!=Number(o)||t.charAt(e)!=="-")throw new Error("Illegal attachments");let c=Number(o);if(!Le(c)||c<0)throw new Error("Illegal attachments");if(c>this.opts.maxAttachments)throw new Error("too many attachments");r.attachments=c}if(t.charAt(e+1)==="/"){let i=e+1;for(;++e&&!(t.charAt(e)===","||e===t.length););r.nsp=t.substring(i,e)}else r.nsp="/";let n=t.charAt(e+1);if(n!==""&&Number(n)==n){let i=e+1;for(;++e;){let o=t.charAt(e);if(o==null||Number(o)!=o){--e;break}if(e===t.length)break}r.id=Number(t.substring(i,e+1))}if(t.charAt(++e)){let i=this.tryParse(t.substr(e));if(s.isPayloadValid(r.type,i))r.data=i;else throw new Error("invalid payload")}return r}tryParse(t){try{return JSON.parse(t,this.opts.reviver)}catch{return!1}}static isPayloadValid(t,e){switch(t){case h.CONNECT:return wt(e);case h.DISCONNECT:return e===void 0;case h.CONNECT_ERROR:return typeof e=="string"||wt(e);case h.EVENT:case h.BINARY_EVENT:return Array.isArray(e)&&(typeof e[0]=="number"||typeof e[0]=="string"&&Oe.indexOf(e[0])===-1);case h.ACK:case h.BINARY_ACK:return Array.isArray(e)}}destroy(){this.reconstructor&&(this.reconstructor.finishedReconstruction(),this.reconstructor=null)}},Yt=class{constructor(t){this.packet=t,this.buffers=[],this.reconPack=t}takeBinaryData(t){if(this.buffers.push(t),this.buffers.length===this.reconPack.attachments){let e=Ce(this.reconPack,this.buffers);return this.finishedReconstruction(),e}return null}finishedReconstruction(){this.reconPack=null,this.buffers=[]}};function cr(s){return typeof s=="string"}var Le=Number.isInteger||function(s){return typeof s=="number"&&isFinite(s)&&Math.floor(s)===s};function hr(s){return s===void 0||Le(s)}function wt(s){return Object.prototype.toString.call(s)==="[object Object]"}function fr(s,t){switch(s){case h.CONNECT:return t===void 0||wt(t);case h.DISCONNECT:return t===void 0;case h.EVENT:return Array.isArray(t)&&(typeof t[0]=="number"||typeof t[0]=="string"&&Oe.indexOf(t[0])===-1);case h.ACK:return Array.isArray(t);case h.CONNECT_ERROR:return typeof t=="string"||wt(t);default:return!1}}function ur(s){return cr(s.nsp)&&hr(s.id)&&fr(s.type,s.data)}function w(s,t,e){return s.on(t,e),function(){s.off(t,e)}}var lr=Object.freeze({connect:1,connect_error:1,disconnect:1,disconnecting:1,newListener:1,removeListener:1}),W=class extends p{constructor(t,e,r){super(),this.connected=!1,this.recovered=!1,this.receiveBuffer=[],this.sendBuffer=[],this._queue=[],this._queueSeq=0,this.ids=0,this.acks={},this.flags={},this.io=t,this.nsp=e,r&&r.auth&&(this.auth=r.auth),this._opts=Object.assign({},r),this.io._autoConnect&&this.open()}get disconnected(){return!this.connected}subEvents(){if(this.subs)return;let t=this.io;this.subs=[w(t,"open",this.onopen.bind(this)),w(t,"packet",this.onpacket.bind(this)),w(t,"error",this.onerror.bind(this)),w(t,"close",this.onclose.bind(this))]}get active(){return!!this.subs}connect(){return this.connected?this:(this.subEvents(),this.io._reconnecting||this.io.open(),this.io._readyState==="open"&&this.onopen(),this)}open(){return this.connect()}send(...t){return t.unshift("message"),this.emit.apply(this,t),this}emit(t,...e){var r,n,i;if(lr.hasOwnProperty(t))throw new Error('"'+t.toString()+'" is a reserved event name');if(e.unshift(t),this._opts.retries&&!this.flags.fromQueue&&!this.flags.volatile)return this._addToQueue(e),this;let o={type:h.EVENT,data:e};if(o.options={},o.options.compress=this.flags.compress!==!1,typeof e[e.length-1]=="function"){let f=this.ids++,d=e.pop();this._registerAckCallback(f,d),o.id=f}let c=(n=(r=this.io.engine)===null||r===void 0?void 0:r.transport)===null||n===void 0?void 0:n.writable,a=this.connected&&!(!((i=this.io.engine)===null||i===void 0)&&i._hasPingExpired());return this.flags.volatile&&!c||(a?(this.notifyOutgoingListeners(o),this.packet(o)):this.sendBuffer.push(o)),this.flags={},this}_registerAckCallback(t,e){var r;let n=(r=this.flags.timeout)!==null&&r!==void 0?r:this._opts.ackTimeout;if(n===void 0){this.acks[t]=e;return}let i=this.io.setTimeoutFn(()=>{delete this.acks[t];for(let c=0;c<this.sendBuffer.length;c++)this.sendBuffer[c].id===t&&this.sendBuffer.splice(c,1);e.call(this,new Error("operation has timed out"))},n),o=(...c)=>{this.io.clearTimeoutFn(i),e.apply(this,c)};o.withError=!0,this.acks[t]=o}emitWithAck(t,...e){return new Promise((r,n)=>{let i=(o,c)=>o?n(o):r(c);i.withError=!0,e.push(i),this.emit(t,...e)})}_addToQueue(t){let e;typeof t[t.length-1]=="function"&&(e=t.pop());let r={id:this._queueSeq++,tryCount:0,pending:!1,args:t,flags:Object.assign({fromQueue:!0},this.flags)};t.push((n,...i)=>(this._queue[0],n!==null?r.tryCount>this._opts.retries&&(this._queue.shift(),e&&e(n)):(this._queue.shift(),e&&e(null,...i)),r.pending=!1,this._drainQueue())),this._queue.push(r),this._drainQueue()}_drainQueue(t=!1){if(!this.connected||this._queue.length===0)return;let e=this._queue[0];e.pending&&!t||(e.pending=!0,e.tryCount++,this.flags=e.flags,this.emit.apply(this,e.args))}packet(t){t.nsp=this.nsp,this.io._packet(t)}onopen(){typeof this.auth=="function"?this.auth(t=>{this._sendConnectPacket(t)}):this._sendConnectPacket(this.auth)}_sendConnectPacket(t){this.packet({type:h.CONNECT,data:this._pid?Object.assign({pid:this._pid,offset:this._lastOffset},t):t})}onerror(t){this.connected||this.emitReserved("connect_error",t)}onclose(t,e){this.connected=!1,delete this.id,this.emitReserved("disconnect",t,e),this._clearAcks()}_clearAcks(){Object.keys(this.acks).forEach(t=>{if(!this.sendBuffer.some(r=>String(r.id)===t)){let r=this.acks[t];delete this.acks[t],r.withError&&r.call(this,new Error("socket has been disconnected"))}})}onpacket(t){if(t.nsp===this.nsp)switch(t.type){case h.CONNECT:t.data&&t.data.sid?this.onconnect(t.data.sid,t.data.pid):this.emitReserved("connect_error",new Error("It seems you are trying to reach a Socket.IO server in v2.x with a v3.x client, but they are not compatible (more information here: https://socket.io/docs/v3/migrating-from-2-x-to-3-0/)"));break;case h.EVENT:case h.BINARY_EVENT:this.onevent(t);break;case h.ACK:case h.BINARY_ACK:this.onack(t);break;case h.DISCONNECT:this.ondisconnect();break;case h.CONNECT_ERROR:this.destroy();let r=new Error(t.data.message);r.data=t.data.data,this.emitReserved("connect_error",r);break}}onevent(t){let e=t.data||[];t.id!=null&&e.push(this.ack(t.id)),this.connected?this.emitEvent(e):this.receiveBuffer.push(Object.freeze(e))}emitEvent(t){if(this._anyListeners&&this._anyListeners.length){let e=this._anyListeners.slice();for(let r of e)r.apply(this,t)}super.emit.apply(this,t),this._pid&&t.length&&typeof t[t.length-1]=="string"&&(this._lastOffset=t[t.length-1])}ack(t){let e=this,r=!1;return function(...n){r||(r=!0,e.packet({type:h.ACK,id:t,data:n}))}}onack(t){let e=this.acks[t.id];typeof e=="function"&&(delete this.acks[t.id],e.withError&&t.data.unshift(null),e.apply(this,t.data))}onconnect(t,e){this.id=t,this.recovered=e&&this._pid===e,this._pid=e,this.connected=!0,this.emitBuffered(),this._drainQueue(!0),this.emitReserved("connect")}emitBuffered(){this.receiveBuffer.forEach(t=>this.emitEvent(t)),this.receiveBuffer=[],this.sendBuffer.forEach(t=>{this.notifyOutgoingListeners(t),this.packet(t)}),this.sendBuffer=[]}ondisconnect(){this.destroy(),this.onclose("io server disconnect")}destroy(){this.subs&&(this.subs.forEach(t=>t()),this.subs=void 0),this.io._destroy(this)}disconnect(){return this.connected&&this.packet({type:h.DISCONNECT}),this.destroy(),this.connected&&this.onclose("io client disconnect"),this}close(){return this.disconnect()}compress(t){return this.flags.compress=t,this}get volatile(){return this.flags.volatile=!0,this}timeout(t){return this.flags.timeout=t,this}onAny(t){return this._anyListeners=this._anyListeners||[],this._anyListeners.push(t),this}prependAny(t){return this._anyListeners=this._anyListeners||[],this._anyListeners.unshift(t),this}offAny(t){if(!this._anyListeners)return this;if(t){let e=this._anyListeners;for(let r=0;r<e.length;r++)if(t===e[r])return e.splice(r,1),this}else this._anyListeners=[];return this}listenersAny(){return this._anyListeners||[]}onAnyOutgoing(t){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.push(t),this}prependAnyOutgoing(t){return this._anyOutgoingListeners=this._anyOutgoingListeners||[],this._anyOutgoingListeners.unshift(t),this}offAnyOutgoing(t){if(!this._anyOutgoingListeners)return this;if(t){let e=this._anyOutgoingListeners;for(let r=0;r<e.length;r++)if(t===e[r])return e.splice(r,1),this}else this._anyOutgoingListeners=[];return this}listenersAnyOutgoing(){return this._anyOutgoingListeners||[]}notifyOutgoingListeners(t){if(this._anyOutgoingListeners&&this._anyOutgoingListeners.length){let e=this._anyOutgoingListeners.slice();for(let r of e)r.apply(this,t.data)}}};function M(s){s=s||{},this.ms=s.min||100,this.max=s.max||1e4,this.factor=s.factor||2,this.jitter=s.jitter>0&&s.jitter<=1?s.jitter:0,this.attempts=0}M.prototype.duration=function(){var s=this.ms*Math.pow(this.factor,this.attempts++);if(this.jitter){var t=Math.random(),e=Math.floor(t*this.jitter*s);s=(Math.floor(t*10)&1)==0?s-e:s+e}return Math.min(s,this.max)|0};M.prototype.reset=function(){this.attempts=0};M.prototype.setMin=function(s){this.ms=s};M.prototype.setMax=function(s){this.max=s};M.prototype.setJitter=function(s){this.jitter=s};var K=class extends p{constructor(t,e){var r;super(),this.nsps={},this.subs=[],t&&typeof t=="object"&&(e=t,t=void 0),e=e||{},e.path=e.path||"/socket.io",this.opts=e,A(this,e),this.reconnection(e.reconnection!==!1),this.reconnectionAttempts(e.reconnectionAttempts||1/0),this.reconnectionDelay(e.reconnectionDelay||1e3),this.reconnectionDelayMax(e.reconnectionDelayMax||5e3),this.randomizationFactor((r=e.randomizationFactor)!==null&&r!==void 0?r:.5),this.backoff=new M({min:this.reconnectionDelay(),max:this.reconnectionDelayMax(),jitter:this.randomizationFactor()}),this.timeout(e.timeout==null?2e4:e.timeout),this._readyState="closed",this.uri=t;let n=e.parser||Gt;this.encoder=new n.Encoder,this.decoder=new n.Decoder,this._autoConnect=e.autoConnect!==!1,this._autoConnect&&this.open()}reconnection(t){return arguments.length?(this._reconnection=!!t,t||(this.skipReconnect=!0),this):this._reconnection}reconnectionAttempts(t){return t===void 0?this._reconnectionAttempts:(this._reconnectionAttempts=t,this)}reconnectionDelay(t){var e;return t===void 0?this._reconnectionDelay:(this._reconnectionDelay=t,(e=this.backoff)===null||e===void 0||e.setMin(t),this)}randomizationFactor(t){var e;return t===void 0?this._randomizationFactor:(this._randomizationFactor=t,(e=this.backoff)===null||e===void 0||e.setJitter(t),this)}reconnectionDelayMax(t){var e;return t===void 0?this._reconnectionDelayMax:(this._reconnectionDelayMax=t,(e=this.backoff)===null||e===void 0||e.setMax(t),this)}timeout(t){return arguments.length?(this._timeout=t,this):this._timeout}maybeReconnectOnOpen(){!this._reconnecting&&this._reconnection&&this.backoff.attempts===0&&this.reconnect()}open(t){if(~this._readyState.indexOf("open"))return this;this.engine=new V(this.uri,this.opts);let e=this.engine,r=this;this._readyState="opening",this.skipReconnect=!1;let n=w(e,"open",function(){r.onopen(),t&&t()}),i=c=>{this.cleanup(),this._readyState="closed",this.emitReserved("error",c),t?t(c):this.maybeReconnectOnOpen()},o=w(e,"error",i);if(this._timeout!==!1){let c=this._timeout,a=this.setTimeoutFn(()=>{n(),i(new Error("timeout")),e.close()},c);this.opts.autoUnref&&a.unref(),this.subs.push(()=>{this.clearTimeoutFn(a)})}return this.subs.push(n),this.subs.push(o),this}connect(t){return this.open(t)}onopen(){this.cleanup(),this._readyState="open",this.emitReserved("open");let t=this.engine;this.subs.push(w(t,"ping",this.onping.bind(this)),w(t,"data",this.ondata.bind(this)),w(t,"error",this.onerror.bind(this)),w(t,"close",this.onclose.bind(this)),w(this.decoder,"decoded",this.ondecoded.bind(this)))}onping(){this.emitReserved("ping")}ondata(t){try{this.decoder.add(t)}catch(e){this.onclose("parse error",e)}}ondecoded(t){S(()=>{this.emitReserved("packet",t)},this.setTimeoutFn)}onerror(t){this.emitReserved("error",t)}socket(t,e){let r=this.nsps[t];return r?this._autoConnect&&!r.active&&r.connect():(r=new W(this,t,e),this.nsps[t]=r),r}_destroy(t){let e=Object.keys(this.nsps);for(let r of e)if(this.nsps[r].active)return;this._close()}_packet(t){let e=this.encoder.encode(t);for(let r=0;r<e.length;r++)this.engine.write(e[r],t.options)}cleanup(){this.subs.forEach(t=>t()),this.subs.length=0,this.decoder.destroy()}_close(){this.skipReconnect=!0,this._reconnecting=!1,this.onclose("forced close")}disconnect(){return this._close()}onclose(t,e){var r;this.cleanup(),(r=this.engine)===null||r===void 0||r.close(),this.backoff.reset(),this._readyState="closed",this.emitReserved("close",t,e),this._reconnection&&!this.skipReconnect&&this.reconnect()}reconnect(){if(this._reconnecting||this.skipReconnect)return this;let t=this;if(this.backoff.attempts>=this._reconnectionAttempts)this.backoff.reset(),this.emitReserved("reconnect_failed"),this._reconnecting=!1;else{let e=this.backoff.duration();this._reconnecting=!0;let r=this.setTimeoutFn(()=>{t.skipReconnect||(this.emitReserved("reconnect_attempt",t.backoff.attempts),!t.skipReconnect&&t.open(n=>{n?(t._reconnecting=!1,t.reconnect(),this.emitReserved("reconnect_error",n)):t.onreconnect()}))},e);this.opts.autoUnref&&r.unref(),this.subs.push(()=>{this.clearTimeoutFn(r)})}}onreconnect(){let t=this.backoff.attempts;this._reconnecting=!1,this.backoff.reset(),this.emitReserved("reconnect",t)}};var it={};function ot(s,t){typeof s=="object"&&(t=s,s=void 0),t=t||{};let e=Ae(s,t.path||"/socket.io"),r=e.source,n=e.id,i=e.path,o=it[n]&&i in it[n].nsps,c=t.forceNew||t["force new connection"]||t.multiplex===!1||o,a;return c?a=new K(r,t):(it[n]||(it[n]=new K(r,t)),a=it[n]),e.query&&!t.query&&(t.query=e.queryKey),a.socket(e.path,t)}Object.assign(ot,{Manager:K,Socket:W,io:ot,connect:ot});function pr(s,t){return t.startsWith("/")?t.slice(1):`plugin/${s}/${t}`}var Et=class s{constructor(t,e){T(this,"_socket");T(this,"_pluginId");T(this,"_subHandlers",new Map);T(this,"_serveHandlers",new Map);this._socket=t,this._pluginId=e,t.on("msg",({topic:r,payload:n})=>{this._subHandlers.get(r)?.forEach(i=>i(n))}),t.on("serve_call",async({id:r,topic:n,payload:i})=>{let o=this._serveHandlers.get(n),c=o?await o(i):void 0;t.emit("serve_reply",{id:r,payload:c})})}static connect(t,e){return new Promise((r,n)=>{let i=ot(t,{transports:["websocket"]}),o=()=>{a(),r(new s(i,e))},c=u=>{a(),n(u)},a=()=>{i.off("connect",o),i.off("connect_error",c)};i.once("connect",o),i.once("connect_error",c)})}_key(t){return pr(this._pluginId,t)}async pub(t,e){this._socket.emit("pub",{topic:this._key(t),payload:e})}async sub(t,e){let r=this._key(t);this._subHandlers.has(r)||(this._subHandlers.set(r,new Set),this._socket.emit("sub",{topic:r}));let n=e;return this._subHandlers.get(r).add(n),{undeclare:()=>{let i=this._subHandlers.get(r);i&&(i.delete(n),i.size===0&&(this._subHandlers.delete(r),this._socket.emit("unsub",{topic:r})))}}}async action(t,e){return new Promise(r=>{this._socket.timeout(1e4).emit("action",{topic:this._key(t),payload:e},(n,i)=>{r(n?void 0:i)})})}async serve(t,e){let r=this._key(t);return this._serveHandlers.set(r,e),this._socket.emit("serve_register",{topic:r}),{undeclare:()=>{this._serveHandlers.delete(r),this._socket.emit("serve_unregister",{topic:r})}}}close(){this._socket.disconnect()}};function Hn(s){Jt(),X.parent.import({targetOrigin:"*"}).connect().then(async({connection:e,toast:r,socketUrl:n,pluginId:i})=>{let o=await Et.connect(n,i),c={pub:(f,d)=>o.pub(f,d),sub:(f,d)=>o.sub(f,d),action:(f,d)=>o.action(f,d),serve:(f,d)=>o.serve(f,d),toast:(f,d)=>r(f,d)},a=document.createElement("remote-root");document.body.append(a),new jt(e).observe(a),dr(a).render(Be(Xt.Provider,{value:c},Be(s)))})}export{Hn as connect};