!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},t=(new e.Error).stack;t&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[t]="a3768a25-4a77-41dc-8e51-59fc6965bc36",e._sentryDebugIdIdentifier="sentry-dbid-a3768a25-4a77-41dc-8e51-59fc6965bc36")}catch(e){}}();"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[24790],{24790:(e,t,r)=>{r.r(t),r.d(t,{m:()=>ts});var s,i,n,o,a,c,u,h,l,d,f,p,b,y,g,m,v,_,E,P,w,S,O,x,A,C,M,I,k,j,N,T,R,U,K,L,F,B,D,q,$,z,G,H=r(62701),J=r.n(H),V={},W={},Y={},X={},Z={};function Q(){return s?Z:(s=1,Object.defineProperty(Z,"__esModule",{value:!0}),Z.TD=Z.TE=Z.Empty=void 0,Z.encode=function(...e){let t=[];for(let r=0;r1&&(r=r[0]),e=Array.isArray(e)?(e=e.map(e=>`'${e}'`)).join(","):`'${e}'`,new t(`${e} ${r}`,s)}}ee.InvalidArgumentError=t;class r extends Error{constructor(e,t){super(e,t),this.name="InvalidOperationError"}}ee.InvalidOperationError=r;class s extends Error{constructor(e,t){super(e,t),this.name="UserAuthenticationExpiredError"}static parse(e){return -1!==e.toLowerCase().indexOf("user authentication expired")?new s(e):null}}ee.UserAuthenticationExpiredError=s;class n extends Error{constructor(e,t){super(e,t),this.name="AuthorizationError"}static parse(e){let t=["authorization violation","account authentication expired","authentication timeout"],r=e.toLowerCase();for(let s=0;s{s={cancel:()=>{i&&clearTimeout(i)}},i=setTimeout(()=>{null===n?o(new t.TimeoutError):o(n)},e)}),s)},X.delay=function(e=0){let t;return Object.assign(new Promise(r=>{let s=setTimeout(()=>{r()},e);t={cancel:()=>{s&&(clearTimeout(s),r())}}}),t)},X.deadline=r,X.deferred=s,X.debugDeferred=function(){let e={};return Object.assign(new Promise((t,r)=>{e={resolve:e=>{console.trace("resolve",e),t(e)},reject:e=>{console.trace("reject"),r(e)}}}),e)},X.shuffle=function(e){for(let t=e.length-1;t>0;t--){let r=Math.floor(Math.random()*(t+1));[e[t],e[r]]=[e[r],e[t]]}return e},X.collect=i,X.jitter=c,X.backoff=function(e=[0,250,250,500,500,3e3,5e3]){Array.isArray(e)||(e=[0,250,250,500,500,3e3,5e3]);let t=e.length-1;return{backoff:r=>c(r>t?e[t]:e[r])}},X.nanos=function(e){return 1e6*e},X.millis=function(e){return Math.floor(e/1e6)};let e=Q(),t=et();async function r(e,i=1e3){let n=s(),o=setTimeout(()=>{n.reject(new t.TimeoutError)},i);try{return await Promise.race([e,n])}finally{clearTimeout(o)}}function s(){let e={};return Object.assign(new Promise((t,r)=>{e={resolve:t,reject:r}}),e)}async function i(e){let t=[];for await(let r of e)t.push(r);return t}class o{timers;measures;constructor(){this.timers=new Map,this.measures=new Map}mark(e){this.timers.set(e,performance.now())}measure(e,t,r){let s=this.timers.get(t);if(void 0===s)throw Error(`${t} is not defined`);let i=this.timers.get(r);if(void 0===i)throw Error(`${r} is not defined`);this.measures.set(e,i-s)}getEntries(){let e=[];return this.measures.forEach((t,r)=>{e.push({name:r,duration:t})}),e}}X.Perf=o;class a{max;current;waiting;constructor(e=1){this.max=e,this.current=0,this.waiting=[]}lock(){if(this.current++,this.current<=this.max)return Promise.resolve();let e=s();return this.waiting.push(e),e}unlock(){this.current--;let e=this.waiting.pop();e?.resolve()}}function c(e){return 0===e?0:Math.floor(e/2+Math.random()*e)}return X.SimpleMutex=a,X}var es={},ei={},en={},eo={},ea={};function ec(){var e;return a?eo:(a=1,Object.defineProperty(eo,"__esModule",{value:!0}),eo.nuid=eo.Nuid=void 0,e=function(){if(o)return ea;o=1,Object.defineProperty(ea,"__esModule",{value:!0}),ea.nuid=ea.Nuid=void 0;let e="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";class t{buf;seq;inc;inited;constructor(){this.buf=new Uint8Array(22),this.inited=!1}init(){this.inited=!0,this.setPre(),this.initSeqAndInc(),this.fillSeq()}initSeqAndInc(){this.seq=Math.floor(0xcfd41b9100000*Math.random()),this.inc=Math.floor(300*Math.random()+33)}setPre(){let t=new Uint8Array(12);if(globalThis?.crypto?.getRandomValues)globalThis.crypto.getRandomValues(t);else for(let e=0;e=12;r--)this.buf[r]=e.charCodeAt(t%36),t=Math.floor(t/36)}next(){return this.inited||this.init(),this.seq+=this.inc,this.seq>0xcfd41b9100000&&(this.setPre(),this.initSeqAndInc()),this.fillSeq(),String.fromCharCode.apply(String,this.buf)}reset(){this.init()}}return ea.Nuid=t,ea.nuid=new t,ea}(),Object.defineProperty(eo,"Nuid",{enumerable:!0,get:function(){return e.Nuid}}),Object.defineProperty(eo,"nuid",{enumerable:!0,get:function(){return e.nuid}}),eo)}function eu(){if(c)return en;c=1,Object.defineProperty(en,"__esModule",{value:!0}),en.DEFAULT_HOST=en.DEFAULT_PORT=en.Match=void 0,en.syncIterator=function(e){let t=e[Symbol.asyncIterator]();return{async next(){let e=await t.next();return e.done?Promise.resolve(null):Promise.resolve(e.value)}}},en.createInbox=function(r=""){if("string"!=typeof(r=r||"_INBOX"))throw TypeError("prefix must be a string");return r.split(".").forEach(e=>{if("*"===e||">"===e)throw t.InvalidArgumentError.format("prefix",`cannot have wildcards ('${r}')`)}),`${r}.${e.nuid.next()}`};let e=ec(),t=et();return en.Match={Exact:"exact",CanonicalMIME:"canonical",IgnoreCase:"insensitive"},en.DEFAULT_PORT=4222,en.DEFAULT_HOST="127.0.0.1",en}var eh={};function el(){if(u)return eh;u=1,Object.defineProperty(eh,"__esModule",{value:!0}),eh.DataBuffer=void 0;let e=Q();class t{buffers;byteLength;constructor(){this.buffers=[],this.byteLength=0}static concat(...e){let t=0;for(let r=0;r1){let e=new Uint8Array(this.byteLength),t=0;for(let r=0;rr)&&(e=r);let s=t.subarray(0,e);return r>e&&this.buffers.push(t.subarray(e)),this.byteLength=r-e,s}}return new Uint8Array(0)}fill(e,...t){e&&(this.buffers.push(e),this.byteLength+=e.length);for(let e=0;e0){let s=new Uint8Array(e).slice(0,t);return r.TD.decode(s)}return""};let r=Q(),s=eu(),i=el();function n(t){for(let r=0;rs&&t[r]===e.CR&&t[s]===e.LF)return s+1}return 0}e.CR_LF="\r\n",e.CR_LF_LEN=e.CR_LF.length,e.CRLF=i.DataBuffer.fromAscii(e.CR_LF),e.CR=new Uint8Array(e.CRLF)[0],e.LF=new Uint8Array(e.CRLF)[1]}(ei)),ei}var ef={},ep={};function eb(){if(l)return ep;function e(e,t,r,s){let i=new Uint8Array(16);return[0,0,0,0,0,0,0,0,0,0,255,255].forEach((e,t)=>{i[t]=e}),i[12]=e,i[13]=t,i[14]=r,i[15]=s,i}function t(e){for(let t=0;t=2&&":"===e[0]&&":"===e[1]&&(s=0,0===(e=e.substring(2)).length))return t;let i=0;for(;i<16;){let{n,c:o,ok:a}=function(e){let t=0,r=0;for(r=0;r=e.charCodeAt(r))t*=16,t+=e.charCodeAt(r)-48;else if(97<=e.charCodeAt(r)&&102>=e.charCodeAt(r))t*=16,t+=e.charCodeAt(r)-97+10;else if(65<=e.charCodeAt(r)&&70>=e.charCodeAt(r))t*=16,t+=e.charCodeAt(r)-65+10;else break;if(t>=0xffffff)return{n:0,c:r,ok:!1}}return 0===r?{n:0,c:r,ok:!1}:{n:t,c:r,ok:!0}}(e);if(!a||n>65535)return;if(o16)return;let n=r(e);if(void 0===n)return;t[i]=n[12],t[i+1]=n[13],t[i+2]=n[14],t[i+3]=n[15],e="",i+=4;break}if(t[i]=n>>8,t[i+1]=n,i+=2,0===(e=e.substring(o)).length)break;if(":"!==e[0]||1==e.length)return;if(":"===(e=e.substring(1))[0]){if(s>=0)return;if(s=i,0===(e=e.substring(1)).length)break}}if(0===e.length){if(i<16){if(s<0)return;let e=16-i;for(let r=i-1;r>=s;r--)t[r+e]=t[r];for(let r=s+e-1;r>=s;r--)t[r]=0}else if(s>=0)return;return t}}(e)}}function r(t){let r=new Uint8Array(4);for(let e=0;e<4;e++){if(0===t.length)return;if(e>0){if("."!==t[0])return;t=t.substring(1)}let{n:s,c:i,ok:n}=function(e){let t=0,r=0;for(t=0;t=e.charCodeAt(t);t++)if((r=10*r+(e.charCodeAt(t)-48))>=0xffffff)return{n:0xffffff,c:t,ok:!1};return 0===t?{n:0,c:0,ok:!1}:{n:r,c:t,ok:!0}}(t);if(!n||s>255)return;t=t.substring(i),r[e]=s}return e(r[0],r[1],r[2],r[3])}return l=1,Object.defineProperty(ep,"__esModule",{value:!0}),ep.ipV4=e,ep.isIP=function(e){return void 0!==t(e)},ep.parseIP=t,ep}function ey(){if(d)return ef;d=1,Object.defineProperty(ef,"__esModule",{value:!0}),ef.Servers=ef.ServerImpl=void 0,ef.isIPV4OrHostname=i,ef.hostPort=n;let e=ed(),t=er(),r=eb(),s=eu();function i(e){return -1===e.indexOf("[")&&-1===e.indexOf("::")&&(-1!==e.indexOf(".")||!!(e.split(":").length<=2))}function n(e){(e=e.trim()).match(/^(.*:\/\/)(.*)/m)&&(e=e.replace(/^(.*:\/\/)(.*)/gm,"$2")),i(e=function(e){let t="::FFFF:",r=e.toUpperCase().indexOf(t);if(-1!==r&&-1!==e.indexOf(".")){let s=e.substring(r+t.length);return(s=s.replace("[","")).replace("]","")}return e}(e))||-1!==e.indexOf("[")||(e=`[${e}]`);let t=i(e)?e.match(/(:)(\d+)/):e.match(/(]:)(\d+)/),r=t&&3===t.length&&t[1]&&t[2]?parseInt(t[2]):s.DEFAULT_PORT,n=new URL(`${80===r?"https":"http"}://${e}`);n.port=`${r}`;let o=n.hostname;return"["===o.charAt(0)&&(o=o.substring(1,o.length-1)),{listen:n.host,hostname:o,port:r}}class o{src;listen;hostname;port;didConnect;reconnects;lastConnect;gossiped;tlsName;resolves;constructor(e,t=!1){this.src=e,this.tlsName="";let r=n(e);this.listen=r.listen,this.hostname=r.hostname,this.port=r.port,this.didConnect=!1,this.reconnects=0,this.lastConnect=0,this.gossiped=t}toString(){return this.listen}async resolve(e){if(!e.fn||!1===e.resolve)return[this];let s=[];if((0,r.isIP)(this.hostname))return[this];{let t=await e.fn(this.hostname);for(let r of(e.debug&&console.log(`resolve ${this.hostname} = ${t.join(",")}`),t)){let e=80===this.port?"https":"http",t=new URL(`${e}://${!i(r)?"["+r+"]":r}`);t.port=`${this.port}`;let n=new o(t.host,!1);n.tlsName=this.hostname,s.push(n)}}return e.randomize&&(0,t.shuffle)(s),this.resolves=s,s}}ef.ServerImpl=o;class a{firstSelect;servers;currentServer;tlsName;randomize;constructor(r=[],i={}){this.firstSelect=!0,this.servers=[],this.tlsName="",this.randomize=i.randomize||!1;let n=(0,e.getUrlParseFn)();r&&(r.forEach(e=>{e=n?n(e):e,this.servers.push(new o(e))}),this.randomize&&(this.servers=(0,t.shuffle)(this.servers))),0===this.servers.length&&this.addServer(`${s.DEFAULT_HOST}:${(0,e.defaultPort)()}`,!1),this.currentServer=this.servers[0]}clear(){this.servers.length=0}updateTLSName(){let e=this.getCurrentServer();(0,r.isIP)(e.hostname)||(this.tlsName=e.hostname,this.servers.forEach(e=>{e.gossiped&&(e.tlsName=this.tlsName)}))}getCurrentServer(){return this.currentServer}addServer(t,s=!1){let i=(0,e.getUrlParseFn)(),n=new o(t=i?i(t):t,s);(0,r.isIP)(n.hostname)&&(n.tlsName=this.tlsName),this.servers.push(n)}selectServer(){if(this.firstSelect)return this.firstSelect=!1,this.currentServer;let e=this.servers.shift();return e&&(this.servers.push(e),this.currentServer=e),e}removeCurrentServer(){this.removeServer(this.currentServer)}removeServer(e){if(e){let t=this.servers.indexOf(e);this.servers.splice(t,1)}}length(){return this.servers.length}next(){return this.servers.length?this.servers[0]:void 0}getServers(){return this.servers}update(t,r){let s=[],i=[],n=(0,e.getUrlParseFn)(),a=new Map;t.connect_urls&&t.connect_urls.length>0&&t.connect_urls.forEach(e=>{let t=new o(e=n?n(e,r):e,!0);a.set(e,t)});let c=[];return this.servers.forEach((e,t)=>{let r=e.listen;e.gossiped&&this.currentServer.listen!==r&&void 0===a.get(r)&&c.push(t),a.delete(r)}),c.reverse(),c.forEach(e=>{let t=this.servers.splice(e,1);i=i.concat(t[0].listen)}),a.forEach((e,t)=>{this.servers.push(e),s.push(t)}),{added:s,deleted:i}}}return ef.Servers=a,ef}var eg={};function em(){if(f)return eg;f=1,Object.defineProperty(eg,"__esModule",{value:!0}),eg.QueuedIteratorImpl=void 0;let e=er(),t=et();class r{inflight;processed;received;noIterator;iterClosed;done;signal;yields;filtered;pendingFiltered;ctx;_data;err;time;profile;yielding;didBreak;constructor(){this.inflight=0,this.filtered=0,this.pendingFiltered=0,this.processed=0,this.received=0,this.noIterator=!1,this.done=!1,this.signal=(0,e.deferred)(),this.yields=[],this.iterClosed=(0,e.deferred)(),this.time=0,this.yielding=!1,this.didBreak=!1,this.profile=!1}[Symbol.asyncIterator](){return this.iterate()}push(e){if(!this.done){if(this.didBreak){if("function"==typeof e)try{e()}catch(e){}return}"function"==typeof e&&this.pendingFiltered++,this.yields.push(e),this.signal.resolve()}}async *iterate(){if(this.noIterator)throw new t.InvalidOperationError("iterator cannot be used when a callback is registered");if(this.yielding)throw new t.InvalidOperationError("iterator is already yielding");this.yielding=!0;try{for(;;){if(0===this.yields.length&&await this.signal,this.err)throw this.err;let t=this.yields;this.inflight=t.length,this.yields=[];for(let e=0;e{e.resolver(t,{})}),!0;if("publish"===t.operation){let e=this.all().find(e=>e.requestSubject===t.subject);if(e)return e.resolver(t,{}),!0}return!1}dispatcher(){return(e,r)=>{let s=this.getToken(r);if(s){let i=this.get(s);i&&(null===e&&(e=r?.data?.length===0&&r.headers?.code===503?new t.NoRespondersError(i.requestSubject):null),i.resolver(e,r))}}}close(){let e=new t.RequestError("connection closed");this.reqs.forEach(t=>{t.resolver(e,{})})}}return ev.MuxSubscription=r,ev}var eE={};function eP(){if(b)return eE;b=1,Object.defineProperty(eE,"__esModule",{value:!0}),eE.Heartbeat=void 0;let e=er();class t{ph;interval;maxOut;timer;pendings;constructor(e,t,r){this.ph=e,this.interval=t,this.maxOut=r,this.pendings=[]}start(){this.cancel(),this._schedule()}cancel(e){this.timer&&(clearTimeout(this.timer),this.timer=void 0),this._reset(),e&&this.ph.disconnect()}_schedule(){this.timer=setTimeout(()=>{if(this.ph.dispatchStatus({type:"ping",pendingPings:this.pendings.length+1}),this.pendings.length===this.maxOut)return void this.cancel(!0);let t=(0,e.deferred)();this.ph.flush(t).then(()=>{this._reset()}).catch(()=>{this.cancel()}),this.pendings.push(t),this._schedule()},this.interval)}_reset(){this.pendings=this.pendings.filter(e=>(e.resolve(),!1))}}return eE.Heartbeat=t,eE}var ew={},eS={};function eO(){return y||(y=1,!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DenoBuffer=e.MAX_SIZE=e.AssertionError=void 0,e.assert=s,e.concat=n,e.append=function(e,t){return n(e,Uint8Array.of(t))},e.readAll=function(e){let t=new o;return t.readFrom(e),t.bytes()},e.writeAll=function(e,t){let r=0;for(;rs&&(e=e.subarray(0,s)),t.set(e,r),e.byteLength}function n(e,t){if(void 0===e&&void 0===t)return new Uint8Array(0);if(void 0===e)return t;if(void 0===t)return e;let r=new Uint8Array(e.length+t.length);return r.set(e,0),r.set(t,e.length),r}e.AssertionError=r,e.MAX_SIZE=0x100000000-2;class o{_buf;_off;constructor(e){if(this._off=0,null==e){this._buf=new Uint8Array(0);return}this._buf=new Uint8Array(e)}bytes(e={copy:!0}){return!1===e.copy?this._buf.subarray(this._off):this._buf.slice(this._off)}empty(){return this._buf.byteLength<=this._off}get length(){return this._buf.byteLength-this._off}get capacity(){return this._buf.buffer.byteLength}truncate(e){if(0===e)return void this.reset();if(e<0||e>this.length)throw Error("bytes.Buffer: truncation out of range");this._reslice(this._off+e)}reset(){this._reslice(0),this._off=0}_tryGrowByReslice(e){let t=this._buf.byteLength;return e<=this.capacity-t?(this._reslice(t+e),t):-1}_reslice(e){s(e<=this._buf.buffer.byteLength),this._buf=new Uint8Array(this._buf.buffer,0,e)}readByte(){let e=new Uint8Array(1);return this.read(e)?e[0]:null}read(e){if(this.empty())return(this.reset(),0===e.byteLength)?0:null;let t=i(this._buf.subarray(this._off),e);return this._off+=t,t}writeByte(e){return this.write(Uint8Array.of(e))}writeString(e){return this.write(t.TE.encode(e))}write(e){let t=this._grow(e.byteLength);return i(e,this._buf,t)}_grow(t){let r=this.length;0===r&&0!==this._off&&this.reset();let s=this._tryGrowByReslice(t);if(s>=0)return s;let n=this.capacity;if(t<=Math.floor(n/2)-r)i(this._buf.subarray(this._off),this._buf);else if(n+t>e.MAX_SIZE)throw Error("The buffer cannot be grown beyond the maximum size.");else{let r=new Uint8Array(Math.min(2*n+t,e.MAX_SIZE));i(this._buf.subarray(this._off),r),this._buf=r}return this._off=0,this._reslice(Math.min(r+t,e.MAX_SIZE)),r}grow(e){if(e<0)throw Error("Buffer._grow: negative count");let t=this._grow(e);this._reslice(t)}readFrom(e){let t=0,r=new Uint8Array(32768);for(;;){let s=this.capacity-this.length<32768,i=s?r:new Uint8Array(this._buf.buffer,this.length),n=e.read(i);if(null===n)return t;s?this.write(i.subarray(0,n)):this._reslice(this.length+n),t+=n}}}e.DenoBuffer=o}(eS)),eS}function ex(){if(g)return ew;g=1;Object.defineProperty(ew,"__esModule",{value:!0}),ew.cc=ew.State=ew.Parser=ew.Kind=void 0,ew.describe=function(e){let r,s="";switch(e.kind){case ew.Kind.MSG:r="MSG";break;case ew.Kind.OK:r="OK";break;case ew.Kind.ERR:r="ERR",s=t.TD.decode(e.data);break;case ew.Kind.PING:r="PING";break;case ew.Kind.PONG:r="PONG";break;case ew.Kind.INFO:r="INFO",s=t.TD.decode(e.data)}return`${r}: ${s}`};let e=eO(),t=Q();function r(){let e={};return e.sid=-1,e.hdr=-1,e.size=-1,e}ew.Kind={OK:0,ERR:1,MSG:2,INFO:3,PING:4,PONG:5};class s{dispatcher;state;as;drop;hdr;ma;argBuf;msgBuf;constructor(e){this.dispatcher=e,this.state=ew.State.OP_START,this.as=0,this.drop=0,this.hdr=0}parse(t){let s;for(s=0;s=this.ma.size){let e=this.msgBuf.bytes({copy:!1});this.dispatcher.push({kind:ew.Kind.MSG,msg:this.ma,data:e}),this.argBuf=void 0,this.msgBuf=void 0,this.state=ew.State.MSG_END}else{let r=this.ma.size-this.msgBuf.length,i=t.length-s;i0?(this.msgBuf.write(t.subarray(s,s+r)),s=s+r-1):this.msgBuf.writeByte(e)}else s-this.as>=this.ma.size&&(this.dispatcher.push({kind:ew.Kind.MSG,msg:this.ma,data:t.subarray(this.as,s)}),this.argBuf=void 0,this.msgBuf=void 0,this.state=ew.State.MSG_END);break;case ew.State.MSG_END:if(e!==ew.cc.NL)continue;this.drop=0,this.as=s+1,this.state=ew.State.OP_START;break;case ew.State.OP_PLUS:switch(e){case ew.cc.O:case ew.cc.o:this.state=ew.State.OP_PLUS_O;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_PLUS_O:switch(e){case ew.cc.K:case ew.cc.k:this.state=ew.State.OP_PLUS_OK;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_PLUS_OK:e===ew.cc.NL&&(this.dispatcher.push({kind:ew.Kind.OK}),this.drop=0,this.state=ew.State.OP_START);break;case ew.State.OP_MINUS:switch(e){case ew.cc.E:case ew.cc.e:this.state=ew.State.OP_MINUS_E;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_MINUS_E:switch(e){case ew.cc.R:case ew.cc.r:this.state=ew.State.OP_MINUS_ER;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_MINUS_ER:switch(e){case ew.cc.R:case ew.cc.r:this.state=ew.State.OP_MINUS_ERR;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_MINUS_ERR:switch(e){case ew.cc.SPACE:case ew.cc.TAB:this.state=ew.State.OP_MINUS_ERR_SPC;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_MINUS_ERR_SPC:switch(e){case ew.cc.SPACE:case ew.cc.TAB:continue;default:this.state=ew.State.MINUS_ERR_ARG,this.as=s}break;case ew.State.MINUS_ERR_ARG:switch(e){case ew.cc.CR:this.drop=1;break;case ew.cc.NL:{let e;this.argBuf?(e=this.argBuf.bytes(),this.argBuf=void 0):e=t.subarray(this.as,s-this.drop),this.dispatcher.push({kind:ew.Kind.ERR,data:e}),this.drop=0,this.as=s+1,this.state=ew.State.OP_START;break}default:this.argBuf&&this.argBuf.write(Uint8Array.of(e))}break;case ew.State.OP_P:switch(e){case ew.cc.I:case ew.cc.i:this.state=ew.State.OP_PI;break;case ew.cc.O:case ew.cc.o:this.state=ew.State.OP_PO;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_PO:switch(e){case ew.cc.N:case ew.cc.n:this.state=ew.State.OP_PON;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_PON:switch(e){case ew.cc.G:case ew.cc.g:this.state=ew.State.OP_PONG;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_PONG:e===ew.cc.NL&&(this.dispatcher.push({kind:ew.Kind.PONG}),this.drop=0,this.state=ew.State.OP_START);break;case ew.State.OP_PI:switch(e){case ew.cc.N:case ew.cc.n:this.state=ew.State.OP_PIN;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_PIN:switch(e){case ew.cc.G:case ew.cc.g:this.state=ew.State.OP_PING;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_PING:e===ew.cc.NL&&(this.dispatcher.push({kind:ew.Kind.PING}),this.drop=0,this.state=ew.State.OP_START);break;case ew.State.OP_I:switch(e){case ew.cc.N:case ew.cc.n:this.state=ew.State.OP_IN;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_IN:switch(e){case ew.cc.F:case ew.cc.f:this.state=ew.State.OP_INF;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_INF:switch(e){case ew.cc.O:case ew.cc.o:this.state=ew.State.OP_INFO;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_INFO:switch(e){case ew.cc.SPACE:case ew.cc.TAB:this.state=ew.State.OP_INFO_SPC;break;default:throw this.fail(t.subarray(s))}break;case ew.State.OP_INFO_SPC:switch(e){case ew.cc.SPACE:case ew.cc.TAB:continue;default:this.state=ew.State.INFO_ARG,this.as=s}break;case ew.State.INFO_ARG:switch(e){case ew.cc.CR:this.drop=1;break;case ew.cc.NL:{let e;this.argBuf?(e=this.argBuf.bytes(),this.argBuf=void 0):e=t.subarray(this.as,s-this.drop),this.dispatcher.push({kind:ew.Kind.INFO,data:e}),this.drop=0,this.as=s+1,this.state=ew.State.OP_START;break}default:this.argBuf&&this.argBuf.writeByte(e)}break;default:throw this.fail(t.subarray(s))}}this.state!==ew.State.MSG_ARG&&this.state!==ew.State.MINUS_ERR_ARG&&this.state!==ew.State.INFO_ARG||this.argBuf||(this.argBuf=new e.DenoBuffer(t.subarray(this.as,s-this.drop))),this.state!==ew.State.MSG_PAYLOAD||this.msgBuf||(this.argBuf||this.cloneMsgArg(),this.msgBuf=new e.DenoBuffer(t.subarray(this.as)))}cloneMsgArg(){let t=this.ma.subject.length,r=new Uint8Array(t+(this.ma.reply?this.ma.reply.length:0));r.set(this.ma.subject),this.ma.reply&&r.set(this.ma.reply,t),this.argBuf=new e.DenoBuffer(r),this.ma.subject=r.subarray(0,t),this.ma.reply&&(this.ma.reply=r.subarray(t))}processMsgArgs(e){if(this.hdr>=0)return this.processHeaderMsgArgs(e);let t=[],r=-1;for(let s=0;s=0&&(t.push(e.subarray(r,s)),r=-1);break;default:r<0&&(r=s)}switch(r>=0&&t.push(e.subarray(r)),t.length){case 3:this.ma.subject=t[0],this.ma.sid=this.protoParseInt(t[1]),this.ma.reply=void 0,this.ma.size=this.protoParseInt(t[2]);break;case 4:this.ma.subject=t[0],this.ma.sid=this.protoParseInt(t[1]),this.ma.reply=t[2],this.ma.size=this.protoParseInt(t[3]);break;default:throw this.fail(e,"processMsgArgs Parse Error")}if(this.ma.sid<0)throw this.fail(e,"processMsgArgs Bad or Missing Sid Error");if(this.ma.size<0)throw this.fail(e,"processMsgArgs Bad or Missing Size Error")}fail(e,r=""){return r=r?`${r} [${this.state}]`:`parse error [${this.state}]`,Error(`${r}: ${t.TD.decode(e)}`)}processHeaderMsgArgs(e){let t=[],r=-1;for(let s=0;s=0&&(t.push(e.subarray(r,s)),r=-1);break;default:r<0&&(r=s)}switch(r>=0&&t.push(e.subarray(r)),t.length){case 4:this.ma.subject=t[0],this.ma.sid=this.protoParseInt(t[1]),this.ma.reply=void 0,this.ma.hdr=this.protoParseInt(t[2]),this.ma.size=this.protoParseInt(t[3]);break;case 5:this.ma.subject=t[0],this.ma.sid=this.protoParseInt(t[1]),this.ma.reply=t[2],this.ma.hdr=this.protoParseInt(t[3]),this.ma.size=this.protoParseInt(t[4]);break;default:throw this.fail(e,"processHeaderMsgArgs Parse Error")}if(this.ma.sid<0)throw this.fail(e,"processHeaderMsgArgs Bad or Missing Sid Error");if(this.ma.hdr<0||this.ma.hdr>this.ma.size)throw this.fail(e,"processHeaderMsgArgs Bad or Missing Header Size Error");if(this.ma.size<0)throw this.fail(e,"processHeaderMsgArgs Bad or Missing Size Error")}protoParseInt(e){if(0===e.length)return -1;let t=0;for(let r=0;r57)return -1;t=10*t+(e[r]-48)}return t}}return ew.Parser=s,ew.State={OP_START:0,OP_PLUS:1,OP_PLUS_O:2,OP_PLUS_OK:3,OP_MINUS:4,OP_MINUS_E:5,OP_MINUS_ER:6,OP_MINUS_ERR:7,OP_MINUS_ERR_SPC:8,MINUS_ERR_ARG:9,OP_M:10,OP_MS:11,OP_MSG:12,OP_MSG_SPC:13,MSG_ARG:14,MSG_PAYLOAD:15,MSG_END:16,OP_H:17,OP_P:18,OP_PI:19,OP_PIN:20,OP_PING:21,OP_PO:22,OP_PON:23,OP_PONG:24,OP_I:25,OP_IN:26,OP_INF:27,OP_INFO:28,OP_INFO_SPC:29,INFO_ARG:30},ew.cc={CR:13,E:69,e:101,F:70,f:102,G:71,g:103,H:72,h:104,I:73,i:105,K:75,k:107,M:77,m:109,MINUS:45,N:78,n:110,NL:10,O:79,o:111,P:80,p:112,PLUS:43,R:82,r:114,S:83,s:115,SPACE:32,TAB:9},ew}var eA={},eC={};function eM(){if(m)return eC;m=1,Object.defineProperty(eC,"__esModule",{value:!0}),eC.MsgHdrsImpl=void 0,eC.canonicalMIMEHeaderKey=s,eC.headers=function(e=0,t=""){if(0===e&&""!==t||e>0&&""===t)throw r.InvalidArgumentError.format("description","is required");return new n(e,t)};let e=Q(),t=eu(),r=et();function s(e){let t=!0,s=Array(e.length);for(let i=0;i126)throw r.InvalidArgumentError.format("header",`'${e[i]}' is not a valid character in a header name`);t&&97<=n&&n<=122?n-=32:!t&&65<=n&&n<=90&&(n+=32),s[i]=n,t=45==n}return String.fromCharCode(...s)}let i="NATS/1.0";class n{_code;headers;_description;constructor(e=0,t=""){this._code=e,this._description=t,this.headers=new Map}[Symbol.iterator](){return this.headers.entries()}size(){return this.headers.size}equals(e){if(e&&this.headers.size===e.headers.size&&this._code===e._code){for(let[t,r]of this.headers){let s=e.values(t);if(r.length!==s.length)return!1;let i=[...r].sort(),n=[...s].sort();for(let e=0;e0){r._code=parseInt(e,10),isNaN(r._code)&&(r._code=0);let t=r._code.toString();r._description=(e=e.replace(t,"")).trim()}}return s.length>=1&&s.slice(1).map(e=>{if(e){let t=e.indexOf(":");if(t>-1){let s=e.slice(0,t),i=e.slice(t+1).trim();r.append(s,i)}}}),r}toString(){if(0===this.headers.size&&0===this._code)return"";let e=i;for(let[t,r]of(this._code>0&&""!==this._description&&(e+=` ${this._code} ${this._description}`),this.headers))for(let s=0;st===e);case t.Match.CanonicalMIME:return e=s(e),i.filter(t=>t===e);default:{let t=e.toLowerCase();return i.filter(e=>t===e.toLowerCase())}}}get(e,r=t.Match.Exact){let s=this.findKeys(e,r);if(s.length){let e=this.headers.get(s[0]);if(e)return Array.isArray(e)?e[0]:e}return""}last(e,r=t.Match.Exact){let s=this.findKeys(e,r);if(s.length){let e=this.headers.get(s[0]);if(e)return Array.isArray(e)?e[e.length-1]:e}return""}has(e,r=t.Match.Exact){return this.findKeys(e,r).length>0}set(e,r,s=t.Match.Exact){this.delete(e,s),this.append(e,r,s)}append(e,r,i=t.Match.Exact){let o=s(e);i===t.Match.CanonicalMIME&&(e=o);let a=this.findKeys(e,i);e=a.length>0?a[0]:e;let c=n.validHeaderValue(r),u=this.headers.get(e);u||(u=[],this.headers.set(e,u)),u.push(c)}values(e,r=t.Match.Exact){let s=[];return this.findKeys(e,r).forEach(e=>{let t=this.headers.get(e);t&&s.push(...t)}),s}delete(e,r=t.Match.Exact){this.findKeys(e,r).forEach(e=>{this.headers.delete(e)})}get hasError(){return this._code>=300}get status(){return`${this._code} ${this._description}`.trim()}toRecord(){let e={};return this.keys().forEach(t=>{e[t]=this.values(t)}),e}get code(){return this._code}get description(){return this._description}static fromRecord(e){let t=new n;for(let r in e)t.headers.set(r,e[r]);return t}}return eC.MsgHdrsImpl=n,eC}function eI(){if(v)return eA;v=1,Object.defineProperty(eA,"__esModule",{value:!0}),eA.MsgImpl=void 0;let e=eM(),t=Q();class r{_headers;_msg;_rdata;_reply;_subject;publisher;constructor(e,t,r){this._msg=e,this._rdata=t,this.publisher=r}get subject(){return this._subject||(this._subject=t.TD.decode(this._msg.subject)),this._subject}get reply(){return this._reply||(this._reply=t.TD.decode(this._msg.reply)),this._reply}get sid(){return this._msg.sid}get headers(){if(this._msg.hdr>-1&&!this._headers){let t=this._rdata.subarray(0,this._msg.hdr);this._headers=e.MsgHdrsImpl.decode(t)}return this._headers}get data(){return this._rdata?this._msg.hdr>-1?this._rdata.subarray(this._msg.hdr):this._rdata:new Uint8Array(0)}respond(e=t.Empty,r){return!!this.reply&&(this.publisher.publish(this.reply,e,r),!0)}size(){let e=this._msg.subject.length;return e+(this._msg.reply?.length||0)+(-1===this._msg.size?0:this._msg.size)}json(e){return JSON.parse(this.string(),e)}string(){return t.TD.decode(this.data)}requestInfo(){let e=this.headers?.get("Nats-Request-Info");return e?JSON.parse(e,function(e,t){return("start"===e||"stop"===e)&&""!==t?new Date(Date.parse(t)):t}):null}}return eA.MsgImpl=r,eA}var ek={};function ej(){if(_)return ek;_=1;function e(t=""){let r=t.match(/(\d+).(\d+).(\d+)/);if(r)return{major:parseInt(r[1]),minor:parseInt(r[2]),micro:parseInt(r[3])};throw Error(`'${t}' is not a semver value`)}function t(e,t){return e.majort.major?1:e.minort.minor?1:e.microt.micro)}Object.defineProperty(ek,"__esModule",{value:!0}),ek.Features=ek.Feature=void 0,ek.parseSemVer=e,ek.compare=t,ek.Feature={JS_KV:"js_kv",JS_OBJECTSTORE:"js_objectstore",JS_PULL_MAX_BYTES:"js_pull_max_bytes",JS_NEW_CONSUMER_CREATE_API:"js_new_consumer_create",JS_ALLOW_DIRECT:"js_allow_direct",JS_MULTIPLE_CONSUMER_FILTER:"js_multiple_consumer_filter",JS_SIMPLIFICATION:"js_simplification",JS_STREAM_CONSUMER_METADATA:"js_stream_consumer_metadata",JS_CONSUMER_FILTER_SUBJECTS:"js_consumer_filter_subjects",JS_STREAM_FIRST_SEQ:"js_stream_first_seq",JS_STREAM_SUBJECT_TRANSFORM:"js_stream_subject_transform",JS_STREAM_SOURCE_SUBJECT_TRANSFORM:"js_stream_source_subject_transform",JS_STREAM_COMPRESSION:"js_stream_compression",JS_DEFAULT_CONSUMER_LIMITS:"js_default_consumer_limits",JS_BATCH_DIRECT_GET:"js_batch_direct_get",JS_PRIORITY_GROUPS:"js_priority_groups"};class r{server;features;disabled;constructor(e){this.features=new Map,this.disabled=[],this.update(e)}resetDisabled(){this.disabled.length=0,this.update(this.server)}disable(e){this.disabled.push(e),this.update(this.server)}isDisabled(e){return -1!==this.disabled.indexOf(e)}update(t){"string"==typeof t&&(t=e(t)),this.server=t,this.set(ek.Feature.JS_KV,"2.6.2"),this.set(ek.Feature.JS_OBJECTSTORE,"2.6.3"),this.set(ek.Feature.JS_PULL_MAX_BYTES,"2.8.3"),this.set(ek.Feature.JS_NEW_CONSUMER_CREATE_API,"2.9.0"),this.set(ek.Feature.JS_ALLOW_DIRECT,"2.9.0"),this.set(ek.Feature.JS_MULTIPLE_CONSUMER_FILTER,"2.10.0"),this.set(ek.Feature.JS_SIMPLIFICATION,"2.9.4"),this.set(ek.Feature.JS_STREAM_CONSUMER_METADATA,"2.10.0"),this.set(ek.Feature.JS_CONSUMER_FILTER_SUBJECTS,"2.10.0"),this.set(ek.Feature.JS_STREAM_FIRST_SEQ,"2.10.0"),this.set(ek.Feature.JS_STREAM_SUBJECT_TRANSFORM,"2.10.0"),this.set(ek.Feature.JS_STREAM_SOURCE_SUBJECT_TRANSFORM,"2.10.0"),this.set(ek.Feature.JS_STREAM_COMPRESSION,"2.10.0"),this.set(ek.Feature.JS_DEFAULT_CONSUMER_LIMITS,"2.10.0"),this.set(ek.Feature.JS_BATCH_DIRECT_GET,"2.11.0"),this.set(ek.Feature.JS_PRIORITY_GROUPS,"2.11.0"),this.disabled.forEach(e=>{this.features.delete(e)})}set(r,s){this.features.set(r,{min:s,ok:t(this.server,e(s))>=0})}get(e){return this.features.get(e)||{min:"unknown",ok:!1}}supports(e){return this.get(e)?.ok||!1}require(r){return"string"==typeof r&&(r=e(r)),t(this.server,r)>=0}}return ek.Features=r,ek}var eN={},eT={},eR={},eU={},eK={},eL={},eF={},eB={};function eD(){if(E)return eB;E=1,Object.defineProperty(eB,"__esModule",{value:!0}),eB.crc16=void 0;let e=new Uint16Array([0,4129,8258,12387,16516,20645,24774,28903,33032,37161,41290,45419,49548,53677,57806,61935,4657,528,12915,8786,21173,17044,29431,25302,37689,33560,45947,41818,54205,50076,62463,58334,9314,13379,1056,5121,25830,29895,17572,21637,42346,46411,34088,38153,58862,62927,50604,54669,13907,9842,5649,1584,30423,26358,22165,18100,46939,42874,38681,34616,63455,59390,55197,51132,18628,22757,26758,30887,2112,6241,10242,14371,51660,55789,59790,63919,35144,39273,43274,47403,23285,19156,31415,27286,6769,2640,14899,10770,56317,52188,64447,60318,39801,35672,47931,43802,27814,31879,19684,23749,11298,15363,3168,7233,60846,64911,52716,56781,44330,48395,36200,40265,32407,28342,24277,20212,15891,11826,7761,3696,65439,61374,57309,53244,48923,44858,40793,36728,37256,33193,45514,41451,53516,49453,61774,57711,4224,161,12482,8419,20484,16421,28742,24679,33721,37784,41979,46042,49981,54044,58239,62302,689,4752,8947,13010,16949,21012,25207,29270,46570,42443,38312,34185,62830,58703,54572,50445,13538,9411,5280,1153,29798,25671,21540,17413,42971,47098,34713,38840,59231,63358,50973,55100,9939,14066,1681,5808,26199,30326,17941,22068,55628,51565,63758,59695,39368,35305,47498,43435,22596,18533,30726,26663,6336,2273,14466,10403,52093,56156,60223,64286,35833,39896,43963,48026,19061,23124,27191,31254,2801,6864,10931,14994,64814,60687,56684,52557,48554,44427,40424,36297,31782,27655,23652,19525,15522,11395,7392,3265,61215,65342,53085,57212,44955,49082,36825,40952,28183,32310,20053,24180,11923,16050,3793,7920]);return eB.crc16=class t{static checksum(t){let r=0;for(let s=0;s>8^t[s])&255];return r}static validate(e,r){return t.checksum(e)==r}},eB}var eq={};function e$(){if(P)return eq;P=1,Object.defineProperty(eq,"__esModule",{value:!0}),eq.base32=void 0;let e="ABCDEFGHIJKLMNOPQRSTUVWXYZ234567";return eq.base32=class{static encode(t){let r=0,s=0,i=new Uint8Array(t),n=new Uint8Array(2*t.byteLength),o=0;for(let t=0;t=5;){let t=s>>>r-5&31;n[o++]=e.charAt(t).charCodeAt(0),r-=5}if(r>0){let t=s<<5-r&31;n[o++]=e.charAt(t).charCodeAt(0)}return n.slice(0,o)}static decode(t){let r=0,s=0,i=0,n=new Uint8Array(t),o=new Uint8Array(5*n.byteLength/8|0);for(let t=0;t=8&&(o[i++]=s>>>r-8&255,r-=8)}return o.slice(0,i)}},eq}function ez(){if(w)return eF;w=1,Object.defineProperty(eF,"__esModule",{value:!0}),eF.Codec=void 0;let e=eD(),t=eY(),r=e$();class s{static encode(e,r){if(!r||!(r instanceof Uint8Array))throw new t.NKeysError(t.NKeysErrorCode.SerializationError);if(!t.Prefixes.isValidPrefix(e))throw new t.NKeysError(t.NKeysErrorCode.InvalidPrefixByte);return s._encode(!1,e,r)}static encodeSeed(e,r){if(!r)throw new t.NKeysError(t.NKeysErrorCode.ApiError);if(!t.Prefixes.isValidPublicPrefix(e))throw new t.NKeysError(t.NKeysErrorCode.InvalidPrefixByte);if(32!==r.byteLength)throw new t.NKeysError(t.NKeysErrorCode.InvalidSeedLen);return s._encode(!0,e,r)}static decode(e,r){if(!t.Prefixes.isValidPrefix(e))throw new t.NKeysError(t.NKeysErrorCode.InvalidPrefixByte);let i=s._decode(r);if(i[0]!==e)throw new t.NKeysError(t.NKeysErrorCode.InvalidPrefixByte);return i.slice(1)}static decodeSeed(e){let r=s._decode(e),i=s._decodePrefix(r);if(i[0]!=t.Prefix.Seed)throw new t.NKeysError(t.NKeysErrorCode.InvalidSeed);if(!t.Prefixes.isValidPublicPrefix(i[1]))throw new t.NKeysError(t.NKeysErrorCode.InvalidPrefixByte);return{buf:r.slice(2),prefix:i[1]}}static _encode(i,n,o){let a=i?2:1,c=o.byteLength,u=a+c,h=new Uint8Array(a+c+2);if(i){let e=s._encodePrefix(t.Prefix.Seed,n);h.set(e)}else h[0]=n;h.set(o,a);let l=e.crc16.checksum(h.slice(0,u));return new DataView(h.buffer).setUint16(u,l,!0),r.base32.encode(h)}static _decode(s){let i;if(s.byteLength<4)throw new t.NKeysError(t.NKeysErrorCode.InvalidEncoding);try{i=r.base32.decode(s)}catch(e){throw new t.NKeysError(t.NKeysErrorCode.InvalidEncoding,{cause:e})}let n=i.byteLength-2,o=new DataView(i.buffer).getUint16(n,!0),a=i.slice(0,n);if(!e.crc16.validate(a,o))throw new t.NKeysError(t.NKeysErrorCode.InvalidChecksum);return a}static _encodePrefix(e,t){return new Uint8Array([e|t>>5,(31&t)<<3])}static _decodePrefix(e){return new Uint8Array([248&e[0],(7&e[0])<<5|(248&e[1])>>3])}}return eF.Codec=s,eF}var eG={},eH={exports:{}};function eJ(){if(O)return eG;O=1;var e=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};return Object.defineProperty(eG,"__esModule",{value:!0}),eG.default=e(function(){return S?eH.exports:(S=1,!function(e){var t,r=function(e){var t,r=new Float64Array(16);if(e)for(t=0;t>24&255,e[t+1]=r>>16&255,e[t+2]=r>>8&255,e[t+3]=255&r,e[t+4]=s>>24&255,e[t+5]=s>>16&255,e[t+6]=s>>8&255,e[t+7]=255&s}function b(e,t,r,s,i){var n,o=0;for(n=0;n>>8)-1}function y(e,t,r,s){return b(e,t,r,s,16)}function g(e,t,r,s){return b(e,t,r,s,32)}function m(e,t,r,s){!function(e,t,r,s){for(var i,n=255&s[0]|(255&s[1])<<8|(255&s[2])<<16|(255&s[3])<<24,o=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,a=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,c=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,u=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,h=255&s[4]|(255&s[5])<<8|(255&s[6])<<16|(255&s[7])<<24,l=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,f=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,p=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,b=255&s[8]|(255&s[9])<<8|(255&s[10])<<16|(255&s[11])<<24,y=255&r[16]|(255&r[17])<<8|(255&r[18])<<16|(255&r[19])<<24,g=255&r[20]|(255&r[21])<<8|(255&r[22])<<16|(255&r[23])<<24,m=255&r[24]|(255&r[25])<<8|(255&r[26])<<16|(255&r[27])<<24,v=255&r[28]|(255&r[29])<<8|(255&r[30])<<16|(255&r[31])<<24,_=255&s[12]|(255&s[13])<<8|(255&s[14])<<16|(255&s[15])<<24,E=n,P=o,w=a,S=c,O=u,x=h,A=l,C=d,M=f,I=p,k=b,j=y,N=g,T=m,R=v,U=_,K=0;K<20;K+=2)O^=(i=E+N|0)<<7|i>>>25,M^=(i=O+E|0)<<9|i>>>23,N^=(i=M+O|0)<<13|i>>>19,E^=(i=N+M|0)<<18|i>>>14,I^=(i=x+P|0)<<7|i>>>25,T^=(i=I+x|0)<<9|i>>>23,P^=(i=T+I|0)<<13|i>>>19,x^=(i=P+T|0)<<18|i>>>14,R^=(i=k+A|0)<<7|i>>>25,w^=(i=R+k|0)<<9|i>>>23,A^=(i=w+R|0)<<13|i>>>19,k^=(i=A+w|0)<<18|i>>>14,S^=(i=U+j|0)<<7|i>>>25,C^=(i=S+U|0)<<9|i>>>23,j^=(i=C+S|0)<<13|i>>>19,U^=(i=j+C|0)<<18|i>>>14,P^=(i=E+S|0)<<7|i>>>25,w^=(i=P+E|0)<<9|i>>>23,S^=(i=w+P|0)<<13|i>>>19,E^=(i=S+w|0)<<18|i>>>14,A^=(i=x+O|0)<<7|i>>>25,C^=(i=A+x|0)<<9|i>>>23,O^=(i=C+A|0)<<13|i>>>19,x^=(i=O+C|0)<<18|i>>>14,j^=(i=k+I|0)<<7|i>>>25,M^=(i=j+k|0)<<9|i>>>23,I^=(i=M+j|0)<<13|i>>>19,k^=(i=I+M|0)<<18|i>>>14,N^=(i=U+R|0)<<7|i>>>25,T^=(i=N+U|0)<<9|i>>>23,R^=(i=T+N|0)<<13|i>>>19,U^=(i=R+T|0)<<18|i>>>14;E=E+n|0,P=P+o|0,w=w+a|0,S=S+c|0,O=O+u|0,x=x+h|0,A=A+l|0,C=C+d|0,M=M+f|0,I=I+p|0,k=k+b|0,j=j+y|0,N=N+g|0,T=T+m|0,R=R+v|0,U=U+_|0,e[0]=E>>>0&255,e[1]=E>>>8&255,e[2]=E>>>16&255,e[3]=E>>>24&255,e[4]=P>>>0&255,e[5]=P>>>8&255,e[6]=P>>>16&255,e[7]=P>>>24&255,e[8]=w>>>0&255,e[9]=w>>>8&255,e[10]=w>>>16&255,e[11]=w>>>24&255,e[12]=S>>>0&255,e[13]=S>>>8&255,e[14]=S>>>16&255,e[15]=S>>>24&255,e[16]=O>>>0&255,e[17]=O>>>8&255,e[18]=O>>>16&255,e[19]=O>>>24&255,e[20]=x>>>0&255,e[21]=x>>>8&255,e[22]=x>>>16&255,e[23]=x>>>24&255,e[24]=A>>>0&255,e[25]=A>>>8&255,e[26]=A>>>16&255,e[27]=A>>>24&255,e[28]=C>>>0&255,e[29]=C>>>8&255,e[30]=C>>>16&255,e[31]=C>>>24&255,e[32]=M>>>0&255,e[33]=M>>>8&255,e[34]=M>>>16&255,e[35]=M>>>24&255,e[36]=I>>>0&255,e[37]=I>>>8&255,e[38]=I>>>16&255,e[39]=I>>>24&255,e[40]=k>>>0&255,e[41]=k>>>8&255,e[42]=k>>>16&255,e[43]=k>>>24&255,e[44]=j>>>0&255,e[45]=j>>>8&255,e[46]=j>>>16&255,e[47]=j>>>24&255,e[48]=N>>>0&255,e[49]=N>>>8&255,e[50]=N>>>16&255,e[51]=N>>>24&255,e[52]=T>>>0&255,e[53]=T>>>8&255,e[54]=T>>>16&255,e[55]=T>>>24&255,e[56]=R>>>0&255,e[57]=R>>>8&255,e[58]=R>>>16&255,e[59]=R>>>24&255,e[60]=U>>>0&255,e[61]=U>>>8&255,e[62]=U>>>16&255,e[63]=U>>>24&255}(e,t,r,s)}function v(e,t,r,s){!function(e,t,r,s){for(var i,n=255&s[0]|(255&s[1])<<8|(255&s[2])<<16|(255&s[3])<<24,o=255&r[0]|(255&r[1])<<8|(255&r[2])<<16|(255&r[3])<<24,a=255&r[4]|(255&r[5])<<8|(255&r[6])<<16|(255&r[7])<<24,c=255&r[8]|(255&r[9])<<8|(255&r[10])<<16|(255&r[11])<<24,u=255&r[12]|(255&r[13])<<8|(255&r[14])<<16|(255&r[15])<<24,h=255&s[4]|(255&s[5])<<8|(255&s[6])<<16|(255&s[7])<<24,l=255&t[0]|(255&t[1])<<8|(255&t[2])<<16|(255&t[3])<<24,d=255&t[4]|(255&t[5])<<8|(255&t[6])<<16|(255&t[7])<<24,f=255&t[8]|(255&t[9])<<8|(255&t[10])<<16|(255&t[11])<<24,p=255&t[12]|(255&t[13])<<8|(255&t[14])<<16|(255&t[15])<<24,b=255&s[8]|(255&s[9])<<8|(255&s[10])<<16|(255&s[11])<<24,y=255&r[16]|(255&r[17])<<8|(255&r[18])<<16|(255&r[19])<<24,g=255&r[20]|(255&r[21])<<8|(255&r[22])<<16|(255&r[23])<<24,m=255&r[24]|(255&r[25])<<8|(255&r[26])<<16|(255&r[27])<<24,v=255&r[28]|(255&r[29])<<8|(255&r[30])<<16|(255&r[31])<<24,_=255&s[12]|(255&s[13])<<8|(255&s[14])<<16|(255&s[15])<<24,E=n,P=o,w=a,S=c,O=u,x=h,A=l,C=d,M=f,I=p,k=b,j=y,N=g,T=m,R=v,U=_,K=0;K<20;K+=2)O^=(i=E+N|0)<<7|i>>>25,M^=(i=O+E|0)<<9|i>>>23,N^=(i=M+O|0)<<13|i>>>19,E^=(i=N+M|0)<<18|i>>>14,I^=(i=x+P|0)<<7|i>>>25,T^=(i=I+x|0)<<9|i>>>23,P^=(i=T+I|0)<<13|i>>>19,x^=(i=P+T|0)<<18|i>>>14,R^=(i=k+A|0)<<7|i>>>25,w^=(i=R+k|0)<<9|i>>>23,A^=(i=w+R|0)<<13|i>>>19,k^=(i=A+w|0)<<18|i>>>14,S^=(i=U+j|0)<<7|i>>>25,C^=(i=S+U|0)<<9|i>>>23,j^=(i=C+S|0)<<13|i>>>19,U^=(i=j+C|0)<<18|i>>>14,P^=(i=E+S|0)<<7|i>>>25,w^=(i=P+E|0)<<9|i>>>23,S^=(i=w+P|0)<<13|i>>>19,E^=(i=S+w|0)<<18|i>>>14,A^=(i=x+O|0)<<7|i>>>25,C^=(i=A+x|0)<<9|i>>>23,O^=(i=C+A|0)<<13|i>>>19,x^=(i=O+C|0)<<18|i>>>14,j^=(i=k+I|0)<<7|i>>>25,M^=(i=j+k|0)<<9|i>>>23,I^=(i=M+j|0)<<13|i>>>19,k^=(i=I+M|0)<<18|i>>>14,N^=(i=U+R|0)<<7|i>>>25,T^=(i=N+U|0)<<9|i>>>23,R^=(i=T+N|0)<<13|i>>>19,U^=(i=R+T|0)<<18|i>>>14;e[0]=E>>>0&255,e[1]=E>>>8&255,e[2]=E>>>16&255,e[3]=E>>>24&255,e[4]=x>>>0&255,e[5]=x>>>8&255,e[6]=x>>>16&255,e[7]=x>>>24&255,e[8]=k>>>0&255,e[9]=k>>>8&255,e[10]=k>>>16&255,e[11]=k>>>24&255,e[12]=U>>>0&255,e[13]=U>>>8&255,e[14]=U>>>16&255,e[15]=U>>>24&255,e[16]=A>>>0&255,e[17]=A>>>8&255,e[18]=A>>>16&255,e[19]=A>>>24&255,e[20]=C>>>0&255,e[21]=C>>>8&255,e[22]=C>>>16&255,e[23]=C>>>24&255,e[24]=M>>>0&255,e[25]=M>>>8&255,e[26]=M>>>16&255,e[27]=M>>>24&255,e[28]=I>>>0&255,e[29]=I>>>8&255,e[30]=I>>>16&255,e[31]=I>>>24&255}(e,t,r,s)}var _=new Uint8Array([101,120,112,97,110,100,32,51,50,45,98,121,116,101,32,107]);function E(e,t,r,s,i,n,o){var a,c,u=new Uint8Array(16),h=new Uint8Array(64);for(c=0;c<16;c++)u[c]=0;for(c=0;c<8;c++)u[c]=n[c];for(;i>=64;){for(m(h,u,o,_),c=0;c<64;c++)e[t+c]=r[s+c]^h[c];for(c=8,a=1;c<16;c++)a=a+(255&u[c])|0,u[c]=255&a,a>>>=8;i-=64,t+=64,s+=64}if(i>0)for(m(h,u,o,_),c=0;c=64;){for(m(c,a,i,_),o=0;o<64;o++)e[t+o]=c[o];for(o=8,n=1;o<16;o++)n=n+(255&a[o])|0,a[o]=255&n,n>>>=8;r-=64,t+=64}if(r>0)for(m(c,a,i,_),o=0;o>>13|r<<3)&8191,s=255&e[4]|(255&e[5])<<8,this.r[2]=(r>>>10|s<<6)&7939,i=255&e[6]|(255&e[7])<<8,this.r[3]=(s>>>7|i<<9)&8191,n=255&e[8]|(255&e[9])<<8,this.r[4]=(i>>>4|n<<12)&255,this.r[5]=n>>>1&8190,o=255&e[10]|(255&e[11])<<8,this.r[6]=(n>>>14|o<<2)&8191,a=255&e[12]|(255&e[13])<<8,this.r[7]=(o>>>11|a<<5)&8065,c=255&e[14]|(255&e[15])<<8,this.r[8]=(a>>>8|c<<8)&8191,this.r[9]=c>>>5&127,this.pad[0]=255&e[16]|(255&e[17])<<8,this.pad[1]=255&e[18]|(255&e[19])<<8,this.pad[2]=255&e[20]|(255&e[21])<<8,this.pad[3]=255&e[22]|(255&e[23])<<8,this.pad[4]=255&e[24]|(255&e[25])<<8,this.pad[5]=255&e[26]|(255&e[27])<<8,this.pad[6]=255&e[28]|(255&e[29])<<8,this.pad[7]=255&e[30]|(255&e[31])<<8};function x(e,t,r,s,i,n){var o=new O(n);return o.update(r,s,i),o.finish(e,t),0}function A(e,t,r,s,i,n){var o=new Uint8Array(16);return x(o,0,r,s,i,n),y(e,t,o,0)}function C(e,t,r,s,i){var n;if(r<32)return -1;for(S(e,0,t,0,r,s,i),x(e,16,e,32,r-32,e),n=0;n<16;n++)e[n]=0;return 0}function M(e,t,r,s,i){var n,o=new Uint8Array(32);if(r<32||(w(o,0,32,s,i),0!==A(t,16,t,32,r-32,o)))return -1;for(S(e,0,t,0,r,s,i),n=0;n<32;n++)e[n]=0;return 0}function I(e,t){var r;for(r=0;r<16;r++)e[r]=0|t[r]}function k(e){var t,r,s=1;for(t=0;t<16;t++)s=Math.floor((r=e[t]+s+65535)/65536),e[t]=r-65536*s;e[0]+=s-1+37*(s-1)}function j(e,t,r){for(var s,i=~(r-1),n=0;n<16;n++)s=i&(e[n]^t[n]),e[n]^=s,t[n]^=s}function N(e,t){var s,i,n,o=r(),a=r();for(s=0;s<16;s++)a[s]=t[s];for(k(a),k(a),k(a),i=0;i<2;i++){for(s=1,o[0]=a[0]-65517;s<15;s++)o[s]=a[s]-65535-(o[s-1]>>16&1),o[s-1]&=65535;o[15]=a[15]-32767-(o[14]>>16&1),n=o[15]>>16&1,o[14]&=65535,j(a,o,1-n)}for(s=0;s<16;s++)e[2*s]=255&a[s],e[2*s+1]=a[s]>>8}function T(e,t){var r=new Uint8Array(32),s=new Uint8Array(32);return N(r,e),N(s,t),g(r,0,s,0)}function R(e){var t=new Uint8Array(32);return N(t,e),1&t[0]}function U(e,t){var r;for(r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}function K(e,t,r){for(var s=0;s<16;s++)e[s]=t[s]+r[s]}function L(e,t,r){for(var s=0;s<16;s++)e[s]=t[s]-r[s]}function F(e,t,r){var s,i,n=0,o=0,a=0,c=0,u=0,h=0,l=0,d=0,f=0,p=0,b=0,y=0,g=0,m=0,v=0,_=0,E=0,P=0,w=0,S=0,O=0,x=0,A=0,C=0,M=0,I=0,k=0,j=0,N=0,T=0,R=0,U=r[0],K=r[1],L=r[2],F=r[3],B=r[4],D=r[5],q=r[6],$=r[7],z=r[8],G=r[9],H=r[10],J=r[11],V=r[12],W=r[13],Y=r[14],X=r[15];n+=(s=t[0])*U,o+=s*K,a+=s*L,c+=s*F,u+=s*B,h+=s*D,l+=s*q,d+=s*$,f+=s*z,p+=s*G,b+=s*H,y+=s*J,g+=s*V,m+=s*W,v+=s*Y,_+=s*X,o+=(s=t[1])*U,a+=s*K,c+=s*L,u+=s*F,h+=s*B,l+=s*D,d+=s*q,f+=s*$,p+=s*z,b+=s*G,y+=s*H,g+=s*J,m+=s*V,v+=s*W,_+=s*Y,E+=s*X,a+=(s=t[2])*U,c+=s*K,u+=s*L,h+=s*F,l+=s*B,d+=s*D,f+=s*q,p+=s*$,b+=s*z,y+=s*G,g+=s*H,m+=s*J,v+=s*V,_+=s*W,E+=s*Y,P+=s*X,c+=(s=t[3])*U,u+=s*K,h+=s*L,l+=s*F,d+=s*B,f+=s*D,p+=s*q,b+=s*$,y+=s*z,g+=s*G,m+=s*H,v+=s*J,_+=s*V,E+=s*W,P+=s*Y,w+=s*X,u+=(s=t[4])*U,h+=s*K,l+=s*L,d+=s*F,f+=s*B,p+=s*D,b+=s*q,y+=s*$,g+=s*z,m+=s*G,v+=s*H,_+=s*J,E+=s*V,P+=s*W,w+=s*Y,S+=s*X,h+=(s=t[5])*U,l+=s*K,d+=s*L,f+=s*F,p+=s*B,b+=s*D,y+=s*q,g+=s*$,m+=s*z,v+=s*G,_+=s*H,E+=s*J,P+=s*V,w+=s*W,S+=s*Y,O+=s*X,l+=(s=t[6])*U,d+=s*K,f+=s*L,p+=s*F,b+=s*B,y+=s*D,g+=s*q,m+=s*$,v+=s*z,_+=s*G,E+=s*H,P+=s*J,w+=s*V,S+=s*W,O+=s*Y,x+=s*X,d+=(s=t[7])*U,f+=s*K,p+=s*L,b+=s*F,y+=s*B,g+=s*D,m+=s*q,v+=s*$,_+=s*z,E+=s*G,P+=s*H,w+=s*J,S+=s*V,O+=s*W,x+=s*Y,A+=s*X,f+=(s=t[8])*U,p+=s*K,b+=s*L,y+=s*F,g+=s*B,m+=s*D,v+=s*q,_+=s*$,E+=s*z,P+=s*G,w+=s*H,S+=s*J,O+=s*V,x+=s*W,A+=s*Y,C+=s*X,p+=(s=t[9])*U,b+=s*K,y+=s*L,g+=s*F,m+=s*B,v+=s*D,_+=s*q,E+=s*$,P+=s*z,w+=s*G,S+=s*H,O+=s*J,x+=s*V,A+=s*W,C+=s*Y,M+=s*X,b+=(s=t[10])*U,y+=s*K,g+=s*L,m+=s*F,v+=s*B,_+=s*D,E+=s*q,P+=s*$,w+=s*z,S+=s*G,O+=s*H,x+=s*J,A+=s*V,C+=s*W,M+=s*Y,I+=s*X,y+=(s=t[11])*U,g+=s*K,m+=s*L,v+=s*F,_+=s*B,E+=s*D,P+=s*q,w+=s*$,S+=s*z,O+=s*G,x+=s*H,A+=s*J,C+=s*V,M+=s*W,I+=s*Y,k+=s*X,g+=(s=t[12])*U,m+=s*K,v+=s*L,_+=s*F,E+=s*B,P+=s*D,w+=s*q,S+=s*$,O+=s*z,x+=s*G,A+=s*H,C+=s*J,M+=s*V,I+=s*W,k+=s*Y,j+=s*X,m+=(s=t[13])*U,v+=s*K,_+=s*L,E+=s*F,P+=s*B,w+=s*D,S+=s*q,O+=s*$,x+=s*z,A+=s*G,C+=s*H,M+=s*J,I+=s*V,k+=s*W,j+=s*Y,N+=s*X,v+=(s=t[14])*U,_+=s*K,E+=s*L,P+=s*F,w+=s*B,S+=s*D,O+=s*q,x+=s*$,A+=s*z,C+=s*G,M+=s*H,I+=s*J,k+=s*V,j+=s*W,N+=s*Y,T+=s*X,_+=(s=t[15])*U,E+=s*K,P+=s*L,w+=s*F,S+=s*B,O+=s*D,x+=s*q,A+=s*$,C+=s*z,M+=s*G,I+=s*H,k+=s*J,j+=s*V,N+=s*W,T+=s*Y,R+=s*X,n+=38*E,o+=38*P,a+=38*w,c+=38*S,u+=38*O,h+=38*x,l+=38*A,d+=38*C,f+=38*M,p+=38*I,b+=38*k,y+=38*j,g+=38*N,m+=38*T,v+=38*R,i=Math.floor((s=n+(i=1)+65535)/65536),n=s-65536*i,i=Math.floor((s=o+i+65535)/65536),o=s-65536*i,i=Math.floor((s=a+i+65535)/65536),a=s-65536*i,i=Math.floor((s=c+i+65535)/65536),c=s-65536*i,i=Math.floor((s=u+i+65535)/65536),u=s-65536*i,i=Math.floor((s=h+i+65535)/65536),h=s-65536*i,i=Math.floor((s=l+i+65535)/65536),l=s-65536*i,i=Math.floor((s=d+i+65535)/65536),d=s-65536*i,i=Math.floor((s=f+i+65535)/65536),f=s-65536*i,i=Math.floor((s=p+i+65535)/65536),p=s-65536*i,i=Math.floor((s=b+i+65535)/65536),b=s-65536*i,i=Math.floor((s=y+i+65535)/65536),y=s-65536*i,i=Math.floor((s=g+i+65535)/65536),g=s-65536*i,i=Math.floor((s=m+i+65535)/65536),m=s-65536*i,i=Math.floor((s=v+i+65535)/65536),v=s-65536*i,i=Math.floor((s=_+i+65535)/65536),_=s-65536*i,n+=i-1+37*(i-1),i=Math.floor((s=n+(i=1)+65535)/65536),n=s-65536*i,i=Math.floor((s=o+i+65535)/65536),o=s-65536*i,i=Math.floor((s=a+i+65535)/65536),a=s-65536*i,i=Math.floor((s=c+i+65535)/65536),c=s-65536*i,i=Math.floor((s=u+i+65535)/65536),u=s-65536*i,i=Math.floor((s=h+i+65535)/65536),h=s-65536*i,i=Math.floor((s=l+i+65535)/65536),l=s-65536*i,i=Math.floor((s=d+i+65535)/65536),d=s-65536*i,i=Math.floor((s=f+i+65535)/65536),f=s-65536*i,i=Math.floor((s=p+i+65535)/65536),p=s-65536*i,i=Math.floor((s=b+i+65535)/65536),b=s-65536*i,i=Math.floor((s=y+i+65535)/65536),y=s-65536*i,i=Math.floor((s=g+i+65535)/65536),g=s-65536*i,i=Math.floor((s=m+i+65535)/65536),m=s-65536*i,i=Math.floor((s=v+i+65535)/65536),v=s-65536*i,i=Math.floor((s=_+i+65535)/65536),_=s-65536*i,n+=i-1+37*(i-1),e[0]=n,e[1]=o,e[2]=a,e[3]=c,e[4]=u,e[5]=h,e[6]=l,e[7]=d,e[8]=f,e[9]=p,e[10]=b,e[11]=y,e[12]=g,e[13]=m,e[14]=v,e[15]=_}function B(e,t){F(e,t,t)}function D(e,t){var s,i=r();for(s=0;s<16;s++)i[s]=t[s];for(s=253;s>=0;s--)B(i,i),2!==s&&4!==s&&F(i,i,t);for(s=0;s<16;s++)e[s]=i[s]}function q(e,t){var s,i=r();for(s=0;s<16;s++)i[s]=t[s];for(s=250;s>=0;s--)B(i,i),1!==s&&F(i,i,t);for(s=0;s<16;s++)e[s]=i[s]}function $(e,t,s){var i,n,o=new Uint8Array(32),a=new Float64Array(80),u=r(),h=r(),l=r(),d=r(),f=r(),p=r();for(n=0;n<31;n++)o[n]=t[n];for(o[31]=127&t[31]|64,o[0]&=248,U(a,s),n=0;n<16;n++)h[n]=a[n],d[n]=u[n]=l[n]=0;for(n=254,u[0]=d[0]=1;n>=0;--n)j(u,h,i=o[n>>>3]>>>(7&n)&1),j(l,d,i),K(f,u,l),L(u,u,l),K(l,h,d),L(h,h,d),B(d,f),B(p,u),F(u,l,u),F(l,h,f),K(f,u,l),L(u,u,l),B(h,u),L(l,d,p),F(u,l,c),K(u,u,d),F(l,l,u),F(u,d,p),F(d,h,a),B(h,f),j(u,h,i),j(l,d,i);for(n=0;n<16;n++)a[n+16]=u[n],a[n+32]=l[n],a[n+48]=h[n],a[n+64]=d[n];var b=a.subarray(32),y=a.subarray(16);return D(b,b),F(y,y,b),N(e,y),0}function z(e,t){return $(e,t,n)}function G(e,t){return s(t,32),z(e,t)}function H(e,t,r){var s=new Uint8Array(32);return $(s,r,t),v(e,i,s,_)}O.prototype.blocks=function(e,t,r){for(var s,i,n,o,a,c,u,h,l,d,f,p,b,y,g,m,v,_,E,P=2048*!this.fin,w=this.h[0],S=this.h[1],O=this.h[2],x=this.h[3],A=this.h[4],C=this.h[5],M=this.h[6],I=this.h[7],k=this.h[8],j=this.h[9],N=this.r[0],T=this.r[1],R=this.r[2],U=this.r[3],K=this.r[4],L=this.r[5],F=this.r[6],B=this.r[7],D=this.r[8],q=this.r[9];r>=16;)w+=8191&(s=255&e[t+0]|(255&e[t+1])<<8),S+=(s>>>13|(i=255&e[t+2]|(255&e[t+3])<<8)<<3)&8191,O+=(i>>>10|(n=255&e[t+4]|(255&e[t+5])<<8)<<6)&8191,x+=(n>>>7|(o=255&e[t+6]|(255&e[t+7])<<8)<<9)&8191,A+=(o>>>4|(a=255&e[t+8]|(255&e[t+9])<<8)<<12)&8191,C+=a>>>1&8191,M+=(a>>>14|(c=255&e[t+10]|(255&e[t+11])<<8)<<2)&8191,I+=(c>>>11|(u=255&e[t+12]|(255&e[t+13])<<8)<<5)&8191,k+=(u>>>8|(h=255&e[t+14]|(255&e[t+15])<<8)<<8)&8191,j+=h>>>5|P,l=(d=(l=0)+w*N+5*q*S+5*D*O+5*B*x+5*F*A)>>>13,d&=8191,d+=5*L*C,d+=5*K*M,d+=5*U*I,d+=5*R*k,d+=5*T*j,l+=d>>>13,d&=8191,l=(f=l+w*T+S*N+5*q*O+5*D*x+5*B*A)>>>13,f&=8191,f+=5*F*C,f+=5*L*M,f+=5*K*I,f+=5*U*k,f+=5*R*j,l+=f>>>13,f&=8191,l=(p=l+w*R+S*T+O*N+5*q*x+5*D*A)>>>13,p&=8191,p+=5*B*C,p+=5*F*M,p+=5*L*I,p+=5*K*k,p+=5*U*j,l+=p>>>13,p&=8191,l=(b=l+w*U+S*R+O*T+x*N+5*q*A)>>>13,b&=8191,b+=5*D*C,b+=5*B*M,b+=5*F*I,b+=5*L*k,b+=5*K*j,l+=b>>>13,b&=8191,l=(y=l+w*K+S*U+O*R+x*T+A*N)>>>13,y&=8191,y+=5*q*C,y+=5*D*M,y+=5*B*I,y+=5*F*k,y+=5*L*j,l+=y>>>13,y&=8191,l=(g=l+w*L+S*K+O*U+x*R+A*T)>>>13,g&=8191,g+=C*N,g+=5*q*M,g+=5*D*I,g+=5*B*k,g+=5*F*j,l+=g>>>13,g&=8191,l=(m=l+w*F+S*L+O*K+x*U+A*R)>>>13,m&=8191,m+=C*T,m+=M*N,m+=5*q*I,m+=5*D*k,m+=5*B*j,l+=m>>>13,m&=8191,l=(v=l+w*B+S*F+O*L+x*K+A*U)>>>13,v&=8191,v+=C*R,v+=M*T,v+=I*N,v+=5*q*k,v+=5*D*j,l+=v>>>13,v&=8191,l=(_=l+w*D+S*B+O*F+x*L+A*K)>>>13,_&=8191,_+=C*U,_+=M*R,_+=I*T,_+=k*N,_+=5*q*j,l+=_>>>13,_&=8191,l=(E=l+w*q+S*D+O*B+x*F+A*L)>>>13,E&=8191,E+=C*K,E+=M*U,E+=I*R,E+=k*T,E+=j*N,l+=E>>>13,E&=8191,d=8191&(l=(l=(l<<2)+l|0)+d|0),l>>>=13,f+=l,w=d,S=f,O=p,x=b,A=y,C=g,M=m,I=v,k=_,j=E,t+=16,r-=16;this.h[0]=w,this.h[1]=S,this.h[2]=O,this.h[3]=x,this.h[4]=A,this.h[5]=C,this.h[6]=M,this.h[7]=I,this.h[8]=k,this.h[9]=j},O.prototype.finish=function(e,t){var r,s,i,n,o=new Uint16Array(10);if(this.leftover){for(n=this.leftover,this.buffer[n++]=1;n<16;n++)this.buffer[n]=0;this.fin=1,this.blocks(this.buffer,0,16)}for(r=this.h[1]>>>13,this.h[1]&=8191,n=2;n<10;n++)this.h[n]+=r,r=this.h[n]>>>13,this.h[n]&=8191;for(this.h[0]+=5*r,r=this.h[0]>>>13,this.h[0]&=8191,this.h[1]+=r,r=this.h[1]>>>13,this.h[1]&=8191,this.h[2]+=r,o[0]=this.h[0]+5,r=o[0]>>>13,o[0]&=8191,n=1;n<10;n++)o[n]=this.h[n]+r,r=o[n]>>>13,o[n]&=8191;for(o[9]-=8192,s=(1^r)-1,n=0;n<10;n++)o[n]&=s;for(n=0,s=~s;n<10;n++)this.h[n]=this.h[n]&s|o[n];for(n=1,this.h[0]=(this.h[0]|this.h[1]<<13)&65535,this.h[1]=(this.h[1]>>>3|this.h[2]<<10)&65535,this.h[2]=(this.h[2]>>>6|this.h[3]<<7)&65535,this.h[3]=(this.h[3]>>>9|this.h[4]<<4)&65535,this.h[4]=(this.h[4]>>>12|this.h[5]<<1|this.h[6]<<14)&65535,this.h[5]=(this.h[6]>>>2|this.h[7]<<11)&65535,this.h[6]=(this.h[7]>>>5|this.h[8]<<8)&65535,this.h[7]=(this.h[8]>>>8|this.h[9]<<5)&65535,i=this.h[0]+this.pad[0],this.h[0]=65535&i;n<8;n++)i=(this.h[n]+this.pad[n]|0)+(i>>>16)|0,this.h[n]=65535&i;e[t+0]=this.h[0]>>>0&255,e[t+1]=this.h[0]>>>8&255,e[t+2]=this.h[1]>>>0&255,e[t+3]=this.h[1]>>>8&255,e[t+4]=this.h[2]>>>0&255,e[t+5]=this.h[2]>>>8&255,e[t+6]=this.h[3]>>>0&255,e[t+7]=this.h[3]>>>8&255,e[t+8]=this.h[4]>>>0&255,e[t+9]=this.h[4]>>>8&255,e[t+10]=this.h[5]>>>0&255,e[t+11]=this.h[5]>>>8&255,e[t+12]=this.h[6]>>>0&255,e[t+13]=this.h[6]>>>8&255,e[t+14]=this.h[7]>>>0&255,e[t+15]=this.h[7]>>>8&255},O.prototype.update=function(e,t,r){var s,i;if(this.leftover){for((i=16-this.leftover)>r&&(i=r),s=0;s=16&&(i=r-r%16,this.blocks(e,t,i),t+=i,r-=i),r){for(s=0;s=128;){for(P=0;P<16;P++)w=8*P+W,I[P]=r[w+0]<<24|r[w+1]<<16|r[w+2]<<8|r[w+3],k[P]=r[w+4]<<24|r[w+5]<<16|r[w+6]<<8|r[w+7];for(P=0;P<80;P++)if(i=j,n=N,o=T,a=R,c=U,u=K,h=L,l=F,d=B,f=D,p=q,b=$,y=z,g=G,m=H,v=J,S=F,x=65535&(O=J),A=O>>>16,C=65535&S,M=S>>>16,S=(U>>>14|z<<18)^(U>>>18|z<<14)^(z>>>9|U<<23),x+=65535&(O=(z>>>14|U<<18)^(z>>>18|U<<14)^(U>>>9|z<<23)),A+=O>>>16,C+=65535&S,M+=S>>>16,S=U&K^~U&L,x+=65535&(O=z&G^~z&H),A+=O>>>16,C+=65535&S,M+=S>>>16,S=V[2*P],x+=65535&(O=V[2*P+1]),A+=O>>>16,C+=65535&S,M+=S>>>16,S=I[P%16],x+=65535&(O=k[P%16]),A+=O>>>16,C+=65535&S,M+=S>>>16,A+=x>>>16,C+=A>>>16,M+=C>>>16,_=65535&C|M<<16,E=65535&x|A<<16,S=_,x=65535&(O=E),A=O>>>16,C=65535&S,M=S>>>16,S=(j>>>28|B<<4)^(B>>>2|j<<30)^(B>>>7|j<<25),x+=65535&(O=(B>>>28|j<<4)^(j>>>2|B<<30)^(j>>>7|B<<25)),A+=O>>>16,C+=65535&S,M+=S>>>16,S=j&N^j&T^N&T,x+=65535&(O=B&D^B&q^D&q),A+=O>>>16,C+=65535&S,M+=S>>>16,A+=x>>>16,C+=A>>>16,M+=C>>>16,l=65535&C|M<<16,v=65535&x|A<<16,S=a,x=65535&(O=b),A=O>>>16,C=65535&S,M=S>>>16,S=_,x+=65535&(O=E),A+=O>>>16,C+=65535&S,M+=S>>>16,A+=x>>>16,C+=A>>>16,M+=C>>>16,a=65535&C|M<<16,b=65535&x|A<<16,N=i,T=n,R=o,U=a,K=c,L=u,F=h,j=l,D=d,q=f,$=p,z=b,G=y,H=g,J=m,B=v,P%16==15)for(w=0;w<16;w++)S=I[w],x=65535&(O=k[w]),A=O>>>16,C=65535&S,M=S>>>16,S=I[(w+9)%16],x+=65535&(O=k[(w+9)%16]),A+=O>>>16,C+=65535&S,M+=S>>>16,S=((_=I[(w+1)%16])>>>1|(E=k[(w+1)%16])<<31)^(_>>>8|E<<24)^_>>>7,x+=65535&(O=(E>>>1|_<<31)^(E>>>8|_<<24)^(E>>>7|_<<25)),A+=O>>>16,C+=65535&S,M+=S>>>16,S=((_=I[(w+14)%16])>>>19|(E=k[(w+14)%16])<<13)^(E>>>29|_<<3)^_>>>6,x+=65535&(O=(E>>>19|_<<13)^(_>>>29|E<<3)^(E>>>6|_<<26)),A+=O>>>16,C+=65535&S,M+=S>>>16,A+=x>>>16,C+=A>>>16,M+=C>>>16,I[w]=65535&C|M<<16,k[w]=65535&x|A<<16;S=j,x=65535&(O=B),A=O>>>16,C=65535&S,M=S>>>16,S=e[0],x+=65535&(O=t[0]),A+=O>>>16,C+=65535&S,M+=S>>>16,A+=x>>>16,C+=A>>>16,M+=C>>>16,e[0]=j=65535&C|M<<16,t[0]=B=65535&x|A<<16,S=N,x=65535&(O=D),A=O>>>16,C=65535&S,M=S>>>16,S=e[1],x+=65535&(O=t[1]),A+=O>>>16,C+=65535&S,M+=S>>>16,A+=x>>>16,C+=A>>>16,M+=C>>>16,e[1]=N=65535&C|M<<16,t[1]=D=65535&x|A<<16,S=T,x=65535&(O=q),A=O>>>16,C=65535&S,M=S>>>16,S=e[2],x+=65535&(O=t[2]),A+=O>>>16,C+=65535&S,M+=S>>>16,A+=x>>>16,C+=A>>>16,M+=C>>>16,e[2]=T=65535&C|M<<16,t[2]=q=65535&x|A<<16,S=R,x=65535&(O=$),A=O>>>16,C=65535&S,M=S>>>16,S=e[3],x+=65535&(O=t[3]),A+=O>>>16,C+=65535&S,M+=S>>>16,A+=x>>>16,C+=A>>>16,M+=C>>>16,e[3]=R=65535&C|M<<16,t[3]=$=65535&x|A<<16,S=U,x=65535&(O=z),A=O>>>16,C=65535&S,M=S>>>16,S=e[4],x+=65535&(O=t[4]),A+=O>>>16,C+=65535&S,M+=S>>>16,A+=x>>>16,C+=A>>>16,M+=C>>>16,e[4]=U=65535&C|M<<16,t[4]=z=65535&x|A<<16,S=K,x=65535&(O=G),A=O>>>16,C=65535&S,M=S>>>16,S=e[5],x+=65535&(O=t[5]),A+=O>>>16,C+=65535&S,M+=S>>>16,A+=x>>>16,C+=A>>>16,M+=C>>>16,e[5]=K=65535&C|M<<16,t[5]=G=65535&x|A<<16,S=L,x=65535&(O=H),A=O>>>16,C=65535&S,M=S>>>16,S=e[6],x+=65535&(O=t[6]),A+=O>>>16,C+=65535&S,M+=S>>>16,A+=x>>>16,C+=A>>>16,M+=C>>>16,e[6]=L=65535&C|M<<16,t[6]=H=65535&x|A<<16,S=F,x=65535&(O=J),A=O>>>16,C=65535&S,M=S>>>16,S=e[7],x+=65535&(O=t[7]),A+=O>>>16,C+=65535&S,M+=S>>>16,A+=x>>>16,C+=A>>>16,M+=C>>>16,e[7]=F=65535&C|M<<16,t[7]=J=65535&x|A<<16,W+=128,s-=128}return s}function Y(e,t,r){var s,i=new Int32Array(8),n=new Int32Array(8),o=new Uint8Array(256),a=r;for(i[0]=0x6a09e667,i[1]=0xbb67ae85,i[2]=0x3c6ef372,i[3]=0xa54ff53a,i[4]=0x510e527f,i[5]=0x9b05688c,i[6]=0x1f83d9ab,i[7]=0x5be0cd19,n[0]=0xf3bcc908,n[1]=0x84caa73b,n[2]=0xfe94f82b,n[3]=0x5f1d36f1,n[4]=0xade682d1,n[5]=0x2b3e6c1f,n[6]=0xfb41bd6b,n[7]=0x137e2179,W(i,n,t,r),r%=128,s=0;s=0;--i)Z(e,t,s=r[i/8|0]>>(7&i)&1),X(t,e),X(e,e),Z(e,t,s)}function et(e,t){var s=[r(),r(),r(),r()];I(s[0],l),I(s[1],d),I(s[2],a),F(s[3],l,d),ee(e,s,t)}function er(e,t,i){var n,o=new Uint8Array(64),a=[r(),r(),r(),r()];for(i||s(t,32),Y(o,t,32),o[0]&=248,o[31]&=127,o[31]|=64,et(a,o),Q(e,a),n=0;n<32;n++)t[n+32]=e[n];return 0}var es=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]);function ei(e,t){var r,s,i,n;for(s=63;s>=32;--s){for(r=0,i=s-32,n=s-12;i>4)*es[i],r=t[i]>>8,t[i]&=255;for(i=0;i<32;i++)t[i]-=r*es[i];for(s=0;s<32;s++)t[s+1]+=t[s]>>8,e[s]=255&t[s]}function en(e){var t,r=new Float64Array(64);for(t=0;t<64;t++)r[t]=e[t];for(t=0;t<64;t++)e[t]=0;ei(e,r)}function eo(e,t,s,i){var n,o,a=new Uint8Array(64),c=new Uint8Array(64),u=new Uint8Array(64),h=new Float64Array(64),l=[r(),r(),r(),r()];for(Y(a,i,32),a[0]&=248,a[31]&=127,a[31]|=64,n=0;n>7&&L(E[0],o,E[0]),F(E[3],E[0],E[1]),0)))return -1;for(y=0;y=0},e.sign.keyPair=function(){var e=new Uint8Array(32),t=new Uint8Array(64);return er(e,t),{publicKey:e,secretKey:t}},e.sign.keyPair.fromSecretKey=function(e){if(eu(e),64!==e.length)throw Error("bad secret key size");for(var t=new Uint8Array(32),r=0;r{let r={};return e.forEach(e=>{let s=e(t)||{};r=Object.assign(r,s)}),r}},eT.noAuthFn=function(){return()=>{}},eT.usernamePasswordAuthenticator=function(e,t){return()=>({user:"function"==typeof e?e():e,pass:"function"==typeof t?t():t})},eT.tokenAuthenticator=function(e){return()=>({auth_token:"function"==typeof e?e():e})},eT.nkeyAuthenticator=r,eT.jwtAuthenticator=s,eT.credsAuthenticator=function(e){let r="function"!=typeof e?()=>e:e,i=()=>{let e=/\s*(?:(?:[-]{3,}[^\n]*[-]{3,}\n)(.+)(?:\n\s*[-]{3,}[^\n]*[-]{3,}\n))/ig,s=t.TD.decode(r()),i=e.exec(s);if(!i)throw Error("unable to parse credentials");let n=i[1].trim();if(!(i=e.exec(s)))throw Error("unable to parse credentials");return{jwt:n,seed:t.TE.encode(i[1].trim())}};return s(()=>{let{jwt:e}=i();return e},()=>{let{seed:e}=i();return e})};let e=eQ(),t=Q();function r(r){return s=>{let i="function"==typeof r?r():r,n=i?e.nkeys.fromSeed(i):void 0,o=n?n.getPublicKey():"",a=t.TE.encode(s||""),c=void 0!==n&&s?n.sign(a):void 0;return{nkey:o,sig:c?e.nkeys.encode(c):""}}}function s(e,t){return s=>{let i="function"==typeof e?e():e,{nkey:n,sig:o}=r(t)(s);return{jwt:i,nkey:n,sig:o}}}return eT}function e0(){return R||(R=1,!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.DEFAULT_RECONNECT_TIME_WAIT=e.DEFAULT_MAX_PING_OUT=e.DEFAULT_PING_INTERVAL=e.DEFAULT_JITTER_TLS=e.DEFAULT_JITTER=e.DEFAULT_MAX_RECONNECT_ATTEMPTS=void 0,e.defaultOptions=o,e.hasWsProtocol=function(e){if(e){let{servers:t}=e;if("string"==typeof t&&(t=[t]),t)for(let e=0;e0&&e.port)throw n.InvalidArgumentError.format(["servers","port"],"are mutually exclusive");0===e.servers.length&&e.port&&(e.servers=[`${s.DEFAULT_HOST}:${e.port}`]),e.servers&&0===e.servers.length&&(e.servers=[i]);let c=(0,t.extend)(o(),e);if(c.authenticator=a(c),["reconnectDelayHandler","authenticator"].forEach(e=>{if(c[e]&&"function"!=typeof c[e])throw TypeError(`'${e}' must be a function`)}),c.reconnectDelayHandler||(c.reconnectDelayHandler=()=>{let e=c.tls?c.reconnectJitterTLS:c.reconnectJitter;return e&&(e=Math.floor(Math.random()*++e)),c.reconnectTimeWait+e}),c.inboxPrefix&&(0,s.createInbox)(c.inboxPrefix),void 0===c.resolve&&(c.resolve="function"==typeof(0,r.getResolveFn)()),c.resolve&&"function"!=typeof(0,r.getResolveFn)())throw n.InvalidArgumentError.format("resolve","is not supported in the current runtime");return c},e.checkOptions=function(e,t){let{proto:r,tls_required:s,tls_available:i}=e;if((void 0===r||r<1)&&t.noEcho)throw new n.errors.ConnectionError("server does not support 'noEcho'");if(t.tls&&!(s||i))throw new n.errors.ConnectionError("server does not support 'tls'")},e.checkUnsupportedOption=function(e,t){if(t)throw n.InvalidArgumentError.format(e,"is not supported")};let t=er(),r=ed(),s=eu(),i=e5(),n=et();function o(){return{maxPingOut:e.DEFAULT_MAX_PING_OUT,maxReconnectAttempts:e.DEFAULT_MAX_RECONNECT_ATTEMPTS,noRandomize:!1,pedantic:!1,pingInterval:e.DEFAULT_PING_INTERVAL,reconnect:!0,reconnectJitter:e.DEFAULT_JITTER,reconnectJitterTLS:e.DEFAULT_JITTER_TLS,reconnectTimeWait:e.DEFAULT_RECONNECT_TIME_WAIT,tls:void 0,verbose:!1,waitOnFirstConnect:!1,ignoreAuthErrorAbort:!1}}function a(e){let t=[];return"function"==typeof e.authenticator&&t.push(e.authenticator),Array.isArray(e.authenticator)&&t.push(...e.authenticator),e.token&&t.push((0,i.tokenAuthenticator)(e.token)),e.user&&t.push((0,i.usernamePasswordAuthenticator)(e.user,e.pass)),0===t.length?(0,i.noAuthFn)():(0,i.multiAuthenticator)(t)}e.DEFAULT_MAX_RECONNECT_ATTEMPTS=10,e.DEFAULT_JITTER=100,e.DEFAULT_JITTER_TLS=1e3,e.DEFAULT_PING_INTERVAL=12e4,e.DEFAULT_MAX_PING_OUT=2,e.DEFAULT_RECONNECT_TIME_WAIT=2e3}(eN)),eN}function e1(){if(U)return es;U=1,Object.defineProperty(es,"__esModule",{value:!0}),es.ProtocolHandler=es.Subscriptions=es.SubscriptionImpl=es.Connect=es.INFO=void 0;let e=Q(),t=ed(),r=er(),s=el(),i=ey(),n=em(),o=e_(),a=eP(),c=ex(),u=eI(),h=ej(),l=e0(),d=et();es.INFO=/^INFO\s+([^\r\n]+)\r\n/i;let f=(0,e.encode)("PONG\r\n"),p=(0,e.encode)("PING\r\n");class b{echo;no_responders;protocol;verbose;pedantic;jwt;nkey;sig;user;pass;auth_token;tls_required;name;lang;version;headers;constructor(e,t,s){this.protocol=1,this.version=e.version,this.lang=e.lang,this.echo=!t.noEcho&&void 0,this.verbose=t.verbose,this.pedantic=t.pedantic,this.tls_required=!!t.tls||void 0,this.name=t.name;let i=(t&&"function"==typeof t.authenticator?t.authenticator(s):{})||{};(0,r.extend)(this,i)}}es.Connect=b;class y{slow;cb;notified;constructor(e,t){this.slow=e,this.cb=t,this.notified=!1}maybeNotify(e){e<=this.slow?this.notified=!1:this.notified||(this.cb(e),this.notified=!0)}}class g extends n.QueuedIteratorImpl{sid;queue;draining;max;subject;drained;protocol;timer;info;cleanupFn;closed;requestSubject;slow;constructor(e,t,s={}){super(),(0,r.extend)(this,s),this.protocol=e,this.subject=t,this.draining=!1,this.noIterator="function"==typeof s.callback,this.closed=(0,r.deferred)();let i=!e.options?.noAsyncTraces;s.timeout&&(this.timer=(0,r.timeout)(s.timeout,i),this.timer.then(()=>{this.timer=void 0}).catch(e=>{this.stop(e),this.noIterator&&this.callback(e,{})})),this.noIterator||this.iterClosed.then(e=>{this.closed.resolve(e),this.unsubscribe()})}setSlowNotificationFn(e,t){if(this.slow=void 0,t){if(this.noIterator)throw Error("callbacks don't support slow notifications");this.slow=new y(e,t)}}callback(e,t){this.cancelTimeout(),e?this.stop(e):this.push(t),!e&&this.slow&&this.slow.maybeNotify(this.getPending())}close(e){if(!this.isClosed()){this.cancelTimeout();let t=()=>{if(this.stop(),this.cleanupFn)try{this.cleanupFn(this,this.info)}catch(e){}this.closed.resolve(e)};this.noIterator?t():this.push(t)}}unsubscribe(e){this.protocol.unsubscribe(this,e)}cancelTimeout(){this.timer&&(this.timer.cancel(),this.timer=void 0)}drain(){return this.protocol.isClosed()?Promise.reject(new d.errors.ClosedConnectionError):this.isClosed()?Promise.reject(new d.errors.InvalidOperationError("subscription is already closed")):(this.drained||(this.draining=!0,this.protocol.unsub(this),this.drained=this.protocol.flush((0,r.deferred)()).then(()=>{this.protocol.subscriptions.cancel(this)}).catch(()=>{this.protocol.subscriptions.cancel(this)})),this.drained)}isDraining(){return this.draining}isClosed(){return this.done}getSubject(){return this.subject}getMax(){return this.max}getID(){return this.sid}}es.SubscriptionImpl=g;class m{mux;subs;sidCounter;constructor(){this.sidCounter=0,this.mux=null,this.subs=new Map}size(){return this.subs.size}add(e){return this.sidCounter++,e.sid=this.sidCounter,this.subs.set(e.sid,e),e}setMux(e){return this.mux=e,e}getMux(){return this.mux}get(e){return this.subs.get(e)}resub(e){return this.sidCounter++,this.subs.delete(e.sid),e.sid=this.sidCounter,this.subs.set(e.sid,e),e}all(){return Array.from(this.subs.values())}cancel(e){e&&(e.close(),this.subs.delete(e.sid))}handleError(e){let t,r=this.all();return"subscription"===e.operation?t=r.find(t=>t.subject===e.subject&&t.queue===e.queue):"publish"===e.operation&&(t=r.find(t=>t.requestSubject===e.subject)),!!t&&(t.callback(e,{}),t.close(e),this.subs.delete(t.sid),t!==this.mux)}close(){this.subs.forEach(e=>{e.close()})}}es.Subscriptions=m;class v{connected;connectedOnce;infoReceived;info;muxSubscriptions;options;outbound;pongs;subscriptions;transport;noMorePublishing;connectError;publisher;_closed;closed;listeners;heartbeats;parser;outMsgs;inMsgs;outBytes;inBytes;pendingLimit;lastError;abortReconnect;whyClosed;servers;server;features;connectPromise;dialDelay;raceTimer;constructor(e,t){this._closed=!1,this.connected=!1,this.connectedOnce=!1,this.infoReceived=!1,this.noMorePublishing=!1,this.abortReconnect=!1,this.listeners=[],this.pendingLimit=32768,this.outMsgs=0,this.inMsgs=0,this.outBytes=0,this.inBytes=0,this.options=e,this.publisher=t,this.subscriptions=new m,this.muxSubscriptions=new o.MuxSubscription,this.outbound=new s.DataBuffer,this.pongs=[],this.whyClosed="",this.pendingLimit=e.pendingLimit||this.pendingLimit,this.features=new h.Features({major:0,minor:0,micro:0}),this.connectPromise=null,this.dialDelay=null;let n="string"==typeof e.servers?[e.servers]:e.servers;this.servers=new i.Servers(n,{randomize:!e.noRandomize}),this.closed=(0,r.deferred)(),this.parser=new c.Parser(this),this.heartbeats=new a.Heartbeat(this,this.options.pingInterval||l.DEFAULT_PING_INTERVAL,this.options.maxPingOut||l.DEFAULT_MAX_PING_OUT)}resetOutbound(){this.outbound.reset();let e=this.pongs;this.pongs=[];let t=new d.errors.RequestError("connection disconnected");t.stack="",e.forEach(e=>{e.reject(t)}),this.parser=new c.Parser(this),this.infoReceived=!1}dispatchStatus(e){this.listeners.forEach(t=>{t.push(e)})}prepare(){this.transport&&this.transport.discard(),this.info=void 0,this.resetOutbound();let e=(0,r.deferred)();return e.catch(()=>{}),this.pongs.unshift(e),this.connectError=t=>{e.reject(t)},this.transport=(0,t.newTransport)(),this.transport.closed().then(async e=>{if(this.connected=!1,!this.isClosed())return void await this.disconnected(this.transport.closeError||this.lastError)}),e}disconnect(){this.dispatchStatus({type:"staleConnection"}),this.transport.disconnect()}reconnect(){return this.connected&&(this.dispatchStatus({type:"forceReconnect"}),this.transport.disconnect()),Promise.resolve()}async disconnected(e){this.dispatchStatus({type:"disconnect",server:this.servers.getCurrentServer().toString()}),this.options.reconnect?await this.dialLoop().then(()=>{this.dispatchStatus({type:"reconnect",server:this.servers.getCurrentServer().toString()}),this.lastError instanceof d.errors.UserAuthenticationExpiredError&&(this.lastError=void 0)}).catch(e=>{this.close(e).catch()}):await this.close(e).catch()}async dial(e){let t=this.prepare();try{this.raceTimer=(0,r.timeout)(this.options.timeout||2e4);let t=this.transport.connect(e,this.options);await Promise.race([t,this.raceTimer]),(async()=>{try{for await(let e of this.transport)this.parser.parse(e)}catch(e){console.log("reader closed",e)}})().then()}catch(e){t.reject(e)}try{await Promise.race([this.raceTimer,t]),this.raceTimer?.cancel(),this.connected=!0,this.connectError=void 0,this.sendSubscriptions(),this.connectedOnce=!0,this.server.didConnect=!0,this.server.reconnects=0,this.flushPending(),this.heartbeats.start()}catch(e){throw this.raceTimer?.cancel(),await this.transport.close(e),e}}async _doDial(e){let{resolve:r}=this.options,s=await e.resolve({fn:(0,t.getResolveFn)(),debug:this.options.debug,randomize:!this.options.noRandomize,resolve:r}),i=null;for(let e of s)try{i=null,this.dispatchStatus({type:"reconnecting"}),await this.dial(e);return}catch(e){i=e}throw i}dialLoop(){return null===this.connectPromise&&(this.connectPromise=this.dodialLoop(),this.connectPromise.then(()=>{}).catch(()=>{}).finally(()=>{this.connectPromise=null})),this.connectPromise}async dodialLoop(){let e;for(;;){this._closed&&this.servers.clear();let t=this.options.reconnectDelayHandler?this.options.reconnectDelayHandler():l.DEFAULT_RECONNECT_TIME_WAIT,s=t,i=this.selectServer();if(!i||this.abortReconnect)if(e)throw e;else if(this.lastError)throw this.lastError;else throw new d.errors.ConnectionError("connection refused");let n=Date.now();if(0===i.lastConnect||i.lastConnect+t<=n){i.lastConnect=Date.now();try{await this._doDial(i);break}catch(r){if(e=r,!this.connectedOnce){if(this.options.waitOnFirstConnect)continue;this.servers.removeCurrentServer()}i.reconnects++;let t=this.options.maxReconnectAttempts||0;-1!==t&&i.reconnects>=t&&this.servers.removeCurrentServer()}}else s=Math.min(s,i.lastConnect+t-n),this.dialDelay=(0,r.delay)(s),await this.dialDelay}}static async connect(e,t){let r=new v(e,t);return await r.dialLoop(),r}static toError(e){let t=d.errors.PermissionViolationError.parse(e);return t||(t=d.errors.UserAuthenticationExpiredError.parse(e))||(t=d.errors.AuthorizationError.parse(e))?t:new d.errors.ProtocolError(e)}processMsg(e,t){if(this.inMsgs++,this.inBytes+=t.length,!this.subscriptions.sidCounter)return;let r=this.subscriptions.get(e.sid);r&&(r.received+=1,r.callback&&r.callback(null,new u.MsgImpl(e,t,this)),void 0!==r.max&&r.received>=r.max&&r.unsubscribe())}processError(t){let r=(0,e.decode)(t);r.startsWith("'")&&r.endsWith("'")&&(r=r.slice(1,r.length-1));let s=v.toError(r);if(s.constructor===d.errors.PermissionViolationError){let e=this.subscriptions.getMux(),t=!!e&&s.subject===e.subject;this.subscriptions.handleError(s),this.muxSubscriptions.handleError(t,s),t&&this.subscriptions.setMux(null)}this.dispatchStatus({type:"error",error:s}),this.handleError(s)}handleError(e){(e instanceof d.errors.UserAuthenticationExpiredError||e instanceof d.errors.AuthorizationError)&&this.handleAuthError(e),e instanceof d.errors.PermissionViolationError||(this.lastError=e)}handleAuthError(e){(this.lastError instanceof d.errors.UserAuthenticationExpiredError||this.lastError instanceof d.errors.AuthorizationError)&&!1===this.options.ignoreAuthErrorAbort&&(this.abortReconnect=!0),this.connectError?this.connectError(e):this.disconnect()}processPing(){this.transport.send(f)}processPong(){let e=this.pongs.shift();e&&e.resolve()}processInfo(r){let s=JSON.parse((0,e.decode)(r));this.info=s;let i=this.options&&this.options.ignoreClusterUpdates?void 0:this.servers.update(s,this.transport.isEncrypted());if(!this.infoReceived){this.features.update((0,h.parseSemVer)(s.version)),this.infoReceived=!0,this.transport.isEncrypted()&&this.servers.updateTLSName();let{version:r,lang:i}=this.transport;try{let n=new b({version:r,lang:i},this.options,s.nonce);s.headers&&(n.headers=!0,n.no_responders=!0);let o=JSON.stringify(n);this.transport.send((0,e.encode)(`CONNECT ${o}${t.CR_LF}`)),this.transport.send(p)}catch(e){this.close(e).catch()}}if(i){let{added:e,deleted:t}=i;this.dispatchStatus({type:"update",added:e,deleted:t})}void 0!==s.ldm&&s.ldm&&this.dispatchStatus({type:"ldm",server:this.servers.getCurrentServer().toString()})}push(e){switch(e.kind){case c.Kind.MSG:{let{msg:t,data:r}=e;this.processMsg(t,r);break}case c.Kind.OK:break;case c.Kind.ERR:this.processError(e.data);break;case c.Kind.PING:this.processPing();break;case c.Kind.PONG:this.processPong();break;case c.Kind.INFO:this.processInfo(e.data)}}sendCommand(t,...r){let s,i=this.outbound.length();s="string"==typeof t?(0,e.encode)(t):t,this.outbound.fill(s,...r),0===i?queueMicrotask(()=>{this.flushPending()}):this.outbound.size()>=this.pendingLimit&&this.flushPending()}publish(r,s=e.Empty,i){let n,o;if(s instanceof Uint8Array)n=s;else if("string"==typeof s)n=e.TE.encode(s);else throw TypeError("payload types can be strings or Uint8Array");let a=n.length;(i=i||{}).reply=i.reply||"";let c=e.Empty,u=0;if(i.headers&&(this.info&&!this.info.headers&&d.InvalidArgumentError.format("headers","are not available on this server"),u=(c=i.headers.encode()).length,a=n.length+u),this.info&&a>this.info.max_payload)throw d.InvalidArgumentError.format("payload","max_payload size exceeded");this.outBytes+=a,this.outMsgs++,i.headers?(o=i.reply?`HPUB ${r} ${i.reply} ${u} ${a}\r `:`HPUB ${r} ${u} ${a}\r `,this.sendCommand(o,c,n,t.CRLF)):(o=i.reply?`PUB ${r} ${i.reply} ${a}\r `:`PUB ${r} ${a}\r `,this.sendCommand(o,n,t.CRLF))}request(e){return this.initMux(),this.muxSubscriptions.add(e),e}subscribe(e){return this.subscriptions.add(e),this._subunsub(e),e}_sub(e){e.queue?this.sendCommand(`SUB ${e.subject} ${e.queue} ${e.sid}\r `):this.sendCommand(`SUB ${e.subject} ${e.sid}\r `)}_subunsub(e){return this._sub(e),e.max&&this.unsubscribe(e,e.max),e}unsubscribe(e,t){this.unsub(e,t),(void 0===e.max||e.received>=e.max)&&this.subscriptions.cancel(e)}unsub(e,t){!e||this.isClosed()||(t?this.sendCommand(`UNSUB ${e.sid} ${t}\r `):this.sendCommand(`UNSUB ${e.sid}\r `),e.max=t)}resub(e,t){!e||this.isClosed()||(this.unsub(e),e.subject=t,this.subscriptions.resub(e),this._sub(e))}flush(e){return e||(e=(0,r.deferred)()),this.pongs.push(e),this.outbound.fill(p),this.flushPending(),e}sendSubscriptions(){let r=[];this.subscriptions.all().forEach(e=>{e.queue?r.push(`SUB ${e.subject} ${e.queue} ${e.sid}${t.CR_LF}`):r.push(`SUB ${e.subject} ${e.sid}${t.CR_LF}`)}),r.length&&this.transport.send((0,e.encode)(r.join("")))}async close(e){if(this._closed)return;this.whyClosed=Error("close trace").stack||"",this.heartbeats.cancel(),this.connectError&&(this.connectError(e),this.connectError=void 0),this.muxSubscriptions.close(),this.subscriptions.close();let t=[];for(let e=0;e{t.push(e.drain())});try{await Promise.allSettled(t)}catch{}finally{this.noMorePublishing=!0,await this.flush()}return this.close()}flushPending(){if(this.infoReceived&&this.connected&&this.outbound.size()){let e=this.outbound.drain();this.transport.send(e)}}initMux(){if(!this.subscriptions.getMux()){let e=this.muxSubscriptions.init(this.options.inboxPrefix),t=new g(this,`${e}*`);t.callback=this.muxSubscriptions.dispatcher(),this.subscriptions.setMux(t),this.subscribe(t)}}selectServer(){let e=this.servers.selectServer();if(void 0!==e)return this.server=e,this.server}getServer(){return this.server}}return es.ProtocolHandler=v,es}var e2={};function e6(){if(K)return e2;K=1,Object.defineProperty(e2,"__esModule",{value:!0}),e2.RequestOne=e2.RequestMany=e2.BaseRequest=void 0;let e=er(),t=ec(),r=et();class s{token;received;ctx;requestSubject;mux;constructor(e,s,i=!0){this.mux=e,this.requestSubject=s,this.received=0,this.token=t.nuid.next(),i&&(this.ctx=new r.RequestError)}}e2.BaseRequest=s;class i extends s{callback;done;timer;max;opts;constructor(t,r,s={maxWait:1e3}){if(super(t,r),this.opts=s,"function"!=typeof this.opts.callback)throw TypeError("callback must be a function");this.callback=this.opts.callback,this.max="number"==typeof s.maxMessages&&s.maxMessages>0?s.maxMessages:-1,this.done=(0,e.deferred)(),this.done.then(()=>{this.callback(null,null)}),this.timer=setTimeout(()=>{this.cancel()},s.maxWait)}cancel(e){e&&this.callback(e,null),clearTimeout(this.timer),this.mux.cancel(this),this.done.resolve()}resolver(e,t){e?(this.ctx&&(e.stack+=` ${this.ctx.stack}`),this.cancel(e)):(this.callback(null,t),"count"===this.opts.strategy&&(this.max--,0===this.max&&this.cancel()),"stall"===this.opts.strategy&&(clearTimeout(this.timer),this.timer=setTimeout(()=>{this.cancel()},this.opts.stall||300)),"sentinel"===this.opts.strategy&&t&&0===t.data.length&&this.cancel())}}e2.RequestMany=i;class n extends s{deferred;timer;constructor(t,r,s={timeout:1e3},i=!0){super(t,r,i),this.deferred=(0,e.deferred)(),this.timer=(0,e.timeout)(s.timeout,i)}resolver(e,t){this.timer&&this.timer.cancel(),e?(e instanceof r.TimeoutError||(this.ctx?(this.ctx.message=e.message,this.ctx.cause=e,e=this.ctx):e=new r.errors.RequestError(e.message,{cause:e})),this.deferred.reject(e)):this.deferred.resolve(t),this.cancel()}cancel(e){this.timer&&this.timer.cancel(),this.mux.cancel(this),this.deferred.reject(e||new r.RequestError("cancelled"))}}return e2.RequestOne=n,e2}function e3(){if(L)return Y;L=1,Object.defineProperty(Y,"__esModule",{value:!0}),Y.NatsConnectionImpl=void 0;let e=er(),t=e1(),r=Q(),s=eM(),i=ej(),n=e0(),o=em(),a=e6(),c=eu(),u=et();class h{options;protocol;draining;closeListeners;constructor(e){this.draining=!1,this.options=(0,n.parseOptions)(e)}static connect(e={}){return new Promise((r,s)=>{let i=new h(e);t.ProtocolHandler.connect(i.options,i).then(e=>{i.protocol=e,r(i)}).catch(e=>{s(e)})})}closed(){return this.protocol.closed}async close(){await this.protocol.close()}_check(e,t,r){if(this.isClosed())throw new u.errors.ClosedConnectionError;if(t&&this.isDraining()||r&&this.protocol.noMorePublishing)throw new u.errors.DrainingConnectionError;if(0===(e=e||"").length)throw new u.errors.InvalidSubjectError(e)}publish(e,t,r){if(this._check(e,!1,!0),r?.reply&&this._check(r.reply,!1,!0),"boolean"==typeof r?.traceOnly){let e=r.headers||(0,s.headers)();e.set("Nats-Trace-Only","true"),r.headers=e}if("string"==typeof r?.traceDestination){let e=r.headers||(0,s.headers)();e.set("Nats-Trace-Dest",r.traceDestination),r.headers=e}this.protocol.publish(e,t,r)}publishMessage(e){return this.publish(e.subject,e.data,{reply:e.reply,headers:e.headers})}respondMessage(e){return!!e.reply&&(this.publish(e.reply,e.data,{reply:e.reply,headers:e.headers}),!0)}subscribe(e,r={}){this._check(e,!0,!1);let s=new t.SubscriptionImpl(this.protocol,e,r);return"function"!=typeof r.callback&&"number"==typeof r.slow&&s.setSlowNotificationFn(r.slow,e=>{this.protocol.dispatchStatus({type:"slowConsumer",sub:s,pending:e})}),this.protocol.subscribe(s),s}_resub(e,t,r){this._check(t,!0,!1),e.max=r,r&&(e.max=r+e.received),this.protocol.resub(e,t)}requestMany(e,t=r.Empty,s={maxWait:1e3,maxMessages:-1}){let i=!this.protocol.options.noAsyncTraces;try{this._check(e,!0,!0)}catch(e){return Promise.reject(e)}if(s.strategy=s.strategy||"timer",s.maxWait=s.maxWait||1e3,s.maxWait<1)return Promise.reject(u.InvalidArgumentError.format("timeout","must be greater than 0"));let n=new o.QueuedIteratorImpl;function h(e){n.push(()=>{n.stop(e)})}function l(e,t){e||null===t?h(null===e?void 0:e):n.push(t)}if(s.noMux){let r=i?Error().stack:null,o="number"==typeof s.maxMessages&&s.maxMessages>0?s.maxMessages:-1,a=this.subscribe((0,c.createInbox)(this.options.inboxPrefix),{callback:(t,i)=>{if(i?.data?.length===0&&i?.headers?.status==="503"&&(t=new u.errors.NoRespondersError(e)),t){r&&(t.stack+=` ${r}`),d(t);return}l(null,i),"count"===s.strategy&&0==--o&&d(),"stall"===s.strategy&&(g(),y=setTimeout(()=>{d()},300)),"sentinel"===s.strategy&&i&&0===i.data.length&&d()}});a.requestSubject=e,a.closed.then(()=>{h()}).catch(e=>{n.stop(e)});let d=e=>{e&&n.push(()=>{throw e}),g(),a.drain().then(()=>{h()}).catch(e=>{h()})};n.iterClosed.then(()=>{g(),a?.unsubscribe()}).catch(e=>{g(),a?.unsubscribe()});let{headers:f,traceDestination:p,traceOnly:b}=s;try{this.publish(e,t,{reply:a.getSubject(),headers:f,traceDestination:p,traceOnly:b})}catch(e){d(e)}let y=setTimeout(()=>{d()},s.maxWait),g=()=>{y&&clearTimeout(y)}}else{s.callback=l,n.iterClosed.then(()=>{r.cancel()}).catch(e=>{r.cancel(e)});let r=new a.RequestMany(this.protocol.muxSubscriptions,e,s);this.protocol.request(r);let{headers:i,traceDestination:o,traceOnly:c}=s;try{this.publish(e,t,{reply:`${this.protocol.muxSubscriptions.baseInbox}${r.token}`,headers:i,traceDestination:o,traceOnly:c})}catch(e){r.cancel(e)}}return Promise.resolve(n)}request(t,r,s={timeout:1e3,noMux:!1}){try{this._check(t,!0,!0)}catch(e){return Promise.reject(e)}let i=!this.protocol.options.noAsyncTraces;if(s.timeout=s.timeout||1e3,s.timeout<1)return Promise.reject(u.InvalidArgumentError.format("timeout","must be greater than 0"));if(!s.noMux&&s.reply)return Promise.reject(u.InvalidArgumentError.format(["reply","noMux"],"are mutually exclusive"));if(s.noMux){let n=s.reply?s.reply:(0,c.createInbox)(this.options.inboxPrefix),o=(0,e.deferred)(),a=i?new u.errors.RequestError(""):null,h=this.subscribe(n,{max:1,timeout:s.timeout,callback:(e,r)=>{r&&r.data?.length===0&&r.headers?.code===503&&(e=new u.errors.NoRespondersError(t)),e?(e instanceof u.TimeoutError||(a?(a.message=e.message,a.cause=e,e=a):e=new u.errors.RequestError(e.message,{cause:e})),o.reject(e),h.unsubscribe()):o.resolve(r)}});return h.requestSubject=t,this.protocol.publish(t,r,{reply:n,headers:s.headers}),o}{let e=new a.RequestOne(this.protocol.muxSubscriptions,t,s,i);this.protocol.request(e);let{headers:n,traceDestination:o,traceOnly:c}=s;try{this.publish(t,r,{reply:`${this.protocol.muxSubscriptions.baseInbox}${e.token}`,headers:n,traceDestination:o,traceOnly:c})}catch(t){e.cancel(t)}let u=Promise.race([e.timer,e.deferred]);return u.catch(()=>{e.cancel()}),u}}flush(){return this.isClosed()?Promise.reject(new u.errors.ClosedConnectionError):this.protocol.flush()}drain(){return this.isClosed()?Promise.reject(new u.errors.ClosedConnectionError):this.isDraining()?Promise.reject(new u.errors.DrainingConnectionError):(this.draining=!0,this.protocol.drain())}isClosed(){return this.protocol.isClosed()}isDraining(){return this.draining}getServer(){let e=this.protocol.getServer();return e?e.listen:""}status(){let e=new o.QueuedIteratorImpl;return e.iterClosed.then(()=>{let t=this.protocol.listeners.indexOf(e);t>-1&&this.protocol.listeners.splice(t,1)}),this.protocol.listeners.push(e),e}get info(){return this.protocol.isClosed()?void 0:this.protocol.info}async context(){return(await this.request("$SYS.REQ.USER.INFO")).json((e,t)=>"time"===e?new Date(Date.parse(t)):t)}stats(){return{inBytes:this.protocol.inBytes,outBytes:this.protocol.outBytes,inMsgs:this.protocol.inMsgs,outMsgs:this.protocol.outMsgs}}getServerVersion(){let e=this.info;return e?(0,i.parseSemVer)(e.version):void 0}async rtt(){if(this.isClosed())throw new u.errors.ClosedConnectionError;if(!this.protocol.connected)throw new u.errors.RequestError("connection disconnected");let e=Date.now();return await this.flush(),Date.now()-e}get features(){return this.protocol.features}reconnect(){return this.isClosed()?Promise.reject(new u.errors.ClosedConnectionError):this.isDraining()?Promise.reject(new u.errors.DrainingConnectionError):this.protocol.reconnect()}addCloseListener(e){void 0===this.closeListeners&&(this.closeListeners=new l(this.closed())),this.closeListeners.add(e)}removeCloseListener(e){this.closeListeners&&this.closeListeners.remove(e)}}Y.NatsConnectionImpl=h;class l{listeners;constructor(e){this.listeners=[],e.then(e=>{this.notify(e)})}add(e){this.listeners.push(e)}remove(e){this.listeners=this.listeners.filter(t=>t!==e)}notify(e){this.listeners.forEach(t=>{if("function"==typeof t.connectionClosedCallback)try{t.connectionClosedCallback(e)}catch(e){}}),this.listeners=[]}}return Y}var e8={},e4={};function e9(){var e;return F?e4:(F=1,Object.defineProperty(e4,"__esModule",{value:!0}),e4.Empty=void 0,e=Q(),Object.defineProperty(e4,"Empty",{enumerable:!0,get:function(){return e.Empty}}),e4)}var e7={},te={},tt={},tr=function(){var e;return G?V:(G=1,Object.defineProperty(V,"__esModule",{value:!0}),V.wsconnect=V.usernamePasswordAuthenticator=V.UserAuthenticationExpiredError=V.tokenAuthenticator=V.TimeoutError=V.syncIterator=V.RequestError=V.ProtocolError=V.PermissionViolationError=V.nuid=V.Nuid=V.NoRespondersError=V.nkeys=V.nkeyAuthenticator=V.nanos=V.MsgHdrsImpl=V.millis=V.Metric=V.Match=V.jwtAuthenticator=V.InvalidSubjectError=V.InvalidOperationError=V.InvalidArgumentError=V.headers=V.hasWsProtocol=V.errors=V.Empty=V.DrainingConnectionError=V.delay=V.deferred=V.deadline=V.credsAuthenticator=V.createInbox=V.ConnectionError=V.ClosedConnectionError=V.canonicalMIMEHeaderKey=V.buildAuthenticator=V.Bench=V.backoff=V.AuthorizationError=void 0,z||(z=1,!function(e){var t=this&&this.__createBinding||(Object.create?function(e,t,r,s){void 0===s&&(s=r);var i=Object.getOwnPropertyDescriptor(t,r);(!i||("get"in i?!t.__esModule:i.writable||i.configurable))&&(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,s,i)}:function(e,t,r,s){void 0===s&&(s=r),e[s]=t[r]}),r=this&&this.__exportStar||function(e,r){for(var s in e)"default"===s||Object.prototype.hasOwnProperty.call(r,s)||t(r,e,s)};Object.defineProperty(e,"__esModule",{value:!0}),e.TD=e.Metric=e.Bench=e.writeAll=e.readAll=e.MAX_SIZE=e.DenoBuffer=e.State=e.Parser=e.Kind=e.QueuedIteratorImpl=e.usernamePasswordAuthenticator=e.tokenAuthenticator=e.nkeyAuthenticator=e.jwtAuthenticator=e.credsAuthenticator=e.RequestOne=e.parseOptions=e.hasWsProtocol=e.defaultOptions=e.DEFAULT_MAX_RECONNECT_ATTEMPTS=e.checkUnsupportedOption=e.checkOptions=e.buildAuthenticator=e.DataBuffer=e.MuxSubscription=e.Heartbeat=e.MsgHdrsImpl=e.headers=e.canonicalMIMEHeaderKey=e.timeout=e.SimpleMutex=e.render=e.nanos=e.millis=e.extend=e.delay=e.deferred=e.deadline=e.collect=e.backoff=e.ProtocolHandler=e.INFO=e.Connect=e.setTransportFactory=e.getResolveFn=e.MsgImpl=e.nuid=e.Nuid=e.NatsConnectionImpl=void 0,e.UserAuthenticationExpiredError=e.TimeoutError=e.RequestError=e.ProtocolError=e.PermissionViolationError=e.NoRespondersError=e.InvalidSubjectError=e.InvalidOperationError=e.InvalidArgumentError=e.errors=e.DrainingConnectionError=e.ConnectionError=e.ClosedConnectionError=e.AuthorizationError=e.wsUrlParseFn=e.wsconnect=e.Servers=e.isIPV4OrHostname=e.IdleHeartbeatMonitor=e.Subscriptions=e.SubscriptionImpl=e.syncIterator=e.Match=e.createInbox=e.protoLen=e.extractProtocolMessage=e.Empty=e.parseSemVer=e.Features=e.Feature=e.compare=e.parseIP=e.isIP=e.ipV4=e.TE=void 0;var s=e3();Object.defineProperty(e,"NatsConnectionImpl",{enumerable:!0,get:function(){return s.NatsConnectionImpl}});var i=ec();Object.defineProperty(e,"Nuid",{enumerable:!0,get:function(){return i.Nuid}}),Object.defineProperty(e,"nuid",{enumerable:!0,get:function(){return i.nuid}});var n=eI();Object.defineProperty(e,"MsgImpl",{enumerable:!0,get:function(){return n.MsgImpl}});var o=ed();Object.defineProperty(e,"getResolveFn",{enumerable:!0,get:function(){return o.getResolveFn}}),Object.defineProperty(e,"setTransportFactory",{enumerable:!0,get:function(){return o.setTransportFactory}});var a=e1();Object.defineProperty(e,"Connect",{enumerable:!0,get:function(){return a.Connect}}),Object.defineProperty(e,"INFO",{enumerable:!0,get:function(){return a.INFO}}),Object.defineProperty(e,"ProtocolHandler",{enumerable:!0,get:function(){return a.ProtocolHandler}});var c=er();Object.defineProperty(e,"backoff",{enumerable:!0,get:function(){return c.backoff}}),Object.defineProperty(e,"collect",{enumerable:!0,get:function(){return c.collect}}),Object.defineProperty(e,"deadline",{enumerable:!0,get:function(){return c.deadline}}),Object.defineProperty(e,"deferred",{enumerable:!0,get:function(){return c.deferred}}),Object.defineProperty(e,"delay",{enumerable:!0,get:function(){return c.delay}}),Object.defineProperty(e,"extend",{enumerable:!0,get:function(){return c.extend}}),Object.defineProperty(e,"millis",{enumerable:!0,get:function(){return c.millis}}),Object.defineProperty(e,"nanos",{enumerable:!0,get:function(){return c.nanos}}),Object.defineProperty(e,"render",{enumerable:!0,get:function(){return c.render}}),Object.defineProperty(e,"SimpleMutex",{enumerable:!0,get:function(){return c.SimpleMutex}}),Object.defineProperty(e,"timeout",{enumerable:!0,get:function(){return c.timeout}});var u=eM();Object.defineProperty(e,"canonicalMIMEHeaderKey",{enumerable:!0,get:function(){return u.canonicalMIMEHeaderKey}}),Object.defineProperty(e,"headers",{enumerable:!0,get:function(){return u.headers}}),Object.defineProperty(e,"MsgHdrsImpl",{enumerable:!0,get:function(){return u.MsgHdrsImpl}});var h=eP();Object.defineProperty(e,"Heartbeat",{enumerable:!0,get:function(){return h.Heartbeat}});var l=e_();Object.defineProperty(e,"MuxSubscription",{enumerable:!0,get:function(){return l.MuxSubscription}});var d=el();Object.defineProperty(e,"DataBuffer",{enumerable:!0,get:function(){return d.DataBuffer}});var f=e0();Object.defineProperty(e,"buildAuthenticator",{enumerable:!0,get:function(){return f.buildAuthenticator}}),Object.defineProperty(e,"checkOptions",{enumerable:!0,get:function(){return f.checkOptions}}),Object.defineProperty(e,"checkUnsupportedOption",{enumerable:!0,get:function(){return f.checkUnsupportedOption}}),Object.defineProperty(e,"DEFAULT_MAX_RECONNECT_ATTEMPTS",{enumerable:!0,get:function(){return f.DEFAULT_MAX_RECONNECT_ATTEMPTS}}),Object.defineProperty(e,"defaultOptions",{enumerable:!0,get:function(){return f.defaultOptions}}),Object.defineProperty(e,"hasWsProtocol",{enumerable:!0,get:function(){return f.hasWsProtocol}}),Object.defineProperty(e,"parseOptions",{enumerable:!0,get:function(){return f.parseOptions}});var p=e6();Object.defineProperty(e,"RequestOne",{enumerable:!0,get:function(){return p.RequestOne}});var b=e5();Object.defineProperty(e,"credsAuthenticator",{enumerable:!0,get:function(){return b.credsAuthenticator}}),Object.defineProperty(e,"jwtAuthenticator",{enumerable:!0,get:function(){return b.jwtAuthenticator}}),Object.defineProperty(e,"nkeyAuthenticator",{enumerable:!0,get:function(){return b.nkeyAuthenticator}}),Object.defineProperty(e,"tokenAuthenticator",{enumerable:!0,get:function(){return b.tokenAuthenticator}}),Object.defineProperty(e,"usernamePasswordAuthenticator",{enumerable:!0,get:function(){return b.usernamePasswordAuthenticator}}),r(eQ(),e);var y=em();Object.defineProperty(e,"QueuedIteratorImpl",{enumerable:!0,get:function(){return y.QueuedIteratorImpl}});var g=ex();Object.defineProperty(e,"Kind",{enumerable:!0,get:function(){return g.Kind}}),Object.defineProperty(e,"Parser",{enumerable:!0,get:function(){return g.Parser}}),Object.defineProperty(e,"State",{enumerable:!0,get:function(){return g.State}});var m=eO();Object.defineProperty(e,"DenoBuffer",{enumerable:!0,get:function(){return m.DenoBuffer}}),Object.defineProperty(e,"MAX_SIZE",{enumerable:!0,get:function(){return m.MAX_SIZE}}),Object.defineProperty(e,"readAll",{enumerable:!0,get:function(){return m.readAll}}),Object.defineProperty(e,"writeAll",{enumerable:!0,get:function(){return m.writeAll}});var v=function(){if(B)return e8;B=1,Object.defineProperty(e8,"__esModule",{value:!0}),e8.Bench=e8.Metric=void 0,e8.throughput=n,e8.msgThroughput=function(e,t){return`${Math.floor(e/t)} msgs/sec`},e8.humanizeBytes=o;let e=e9(),t=ec(),r=er();class s{name;duration;date;payload;msgs;lang;version;bytes;asyncRequests;min;max;constructor(e,t){this.name=e,this.duration=t,this.date=Date.now(),this.payload=0,this.msgs=0,this.bytes=0}toString(){let e=this.duration/1e3,t=Math.round(this.msgs/e),r=this.asyncRequests?"asyncRequests":"",s="";return this.max&&(s=`${this.min}/${this.max}`),`${this.name}${r?" [asyncRequests]":""} ${t.toString().replace(/\B(?=(\d{3})+(?!\d))/g,",")} msgs/sec - [${e.toFixed(2)} secs] ~ ${n(this.bytes,e)} ${s}`}toCsv(){return`"${this.name}",${new Date(this.date).toISOString()},${this.lang},${this.version},${this.msgs},${this.payload},${this.bytes},${this.duration},${!!this.asyncRequests&&this.asyncRequests} `}static header(){return`Test,Date,Lang,Version,Count,MsgPayload,Bytes,Millis,Async `}}e8.Metric=s;class i{nc;callbacks;msgs;size;subject;asyncRequests;pub;sub;req;rep;perf;payload;constructor(s,i={msgs:1e5,size:128,subject:"",asyncRequests:!1,pub:!1,sub:!1,req:!1,rep:!1}){if(this.nc=s,this.callbacks=i.callbacks||!1,this.msgs=i.msgs||0,this.size=i.size||0,this.subject=i.subject||t.nuid.next(),this.asyncRequests=i.asyncRequests||!1,this.pub=i.pub||!1,this.sub=i.sub||!1,this.req=i.req||!1,this.rep=i.rep||!1,this.perf=new r.Perf,this.payload=this.size?new Uint8Array(this.size):e.Empty,!this.pub&&!this.sub&&!this.req&&!this.rep)throw Error("no options selected")}async run(){return this.nc.closed().then(e=>{if(e)throw e}),this.callbacks?await this.runCallbacks():await this.runAsync(),this.processMetrics()}processMetrics(){let{lang:e,version:t}=this.nc.protocol.transport;this.pub&&this.sub&&this.perf.measure("pubsub","pubStart","subStop"),this.req&&this.rep&&this.perf.measure("reqrep","reqStart","reqStop");let r=this.perf.getEntries(),i=r.find(e=>"pubsub"===e.name),n=r.find(e=>"reqrep"===e.name),o=r.find(e=>"req"===e.name),a=r.find(e=>"rep"===e.name),c=r.find(e=>"pub"===e.name),u=r.find(e=>"sub"===e.name),h=this.nc.stats(),l=[];if(i){let{name:r,duration:n}=i,o=new s(r,n);o.msgs=2*this.msgs,o.bytes=h.inBytes+h.outBytes,o.lang=e,o.version=t,o.payload=this.payload.length,l.push(o)}if(n){let{name:r,duration:i}=n,o=new s(r,i);o.msgs=2*this.msgs,o.bytes=h.inBytes+h.outBytes,o.lang=e,o.version=t,o.payload=this.payload.length,l.push(o)}if(c){let{name:r,duration:i}=c,n=new s(r,i);n.msgs=this.msgs,n.bytes=h.outBytes,n.lang=e,n.version=t,n.payload=this.payload.length,l.push(n)}if(u){let{name:r,duration:i}=u,n=new s(r,i);n.msgs=this.msgs,n.bytes=h.inBytes,n.lang=e,n.version=t,n.payload=this.payload.length,l.push(n)}if(a){let{name:r,duration:i}=a,n=new s(r,i);n.msgs=this.msgs,n.bytes=h.inBytes+h.outBytes,n.lang=e,n.version=t,n.payload=this.payload.length,l.push(n)}if(o){let{name:r,duration:i}=o,n=new s(r,i);n.msgs=this.msgs,n.bytes=h.inBytes+h.outBytes,n.lang=e,n.version=t,n.payload=this.payload.length,l.push(n)}return l}async runCallbacks(){let e=[];if(this.sub){let t=(0,r.deferred)();e.push(t);let s=0;this.nc.subscribe(this.subject,{max:this.msgs,callback:()=>{1==++s&&this.perf.mark("subStart"),s===this.msgs&&(this.perf.mark("subStop"),this.perf.measure("sub","subStart","subStop"),t.resolve())}})}if(this.rep){let t=(0,r.deferred)();e.push(t);let s=0;this.nc.subscribe(this.subject,{max:this.msgs,callback:(e,r)=>{r.respond(this.payload),1==++s&&this.perf.mark("repStart"),s===this.msgs&&(this.perf.mark("repStop"),this.perf.measure("rep","repStart","repStop"),t.resolve())}})}if(this.pub){let t=(async()=>{this.perf.mark("pubStart");for(let e=0;e{if(this.asyncRequests){this.perf.mark("reqStart");let e=[];for(let t=0;t{for await(let e of r)t||(this.perf.mark("repStart"),t=!0),e.respond(this.payload);await this.nc.flush(),this.perf.mark("repStop"),this.perf.measure("rep","repStart","repStop")})();e.push(s)}if(this.sub){let t=!1,r=this.nc.subscribe(this.subject,{max:this.msgs}),s=(async()=>{for await(let e of r)t||(this.perf.mark("subStart"),t=!0);this.perf.mark("subStop"),this.perf.measure("sub","subStart","subStop")})();e.push(s)}if(this.pub){let t=(async()=>{this.perf.mark("pubStart");for(let e=0;e{if(this.asyncRequests){this.perf.mark("reqStart");let e=[];for(let t=0;t0&&(this.autoCancelTimer=setTimeout(()=>{this.cancel()},this.cancelAfter)),this.timer=setInterval(()=>{if(this.count++,Date.now()-this.last>this.interval&&this.missed++,this.missed>=this.maxOut)try{!0===this.callback(this.missed)&&this.cancel()}catch(e){console.log(e)}},this.interval)}}return e7.IdleHeartbeatMonitor=e,e7}();Object.defineProperty(e,"IdleHeartbeatMonitor",{enumerable:!0,get:function(){return A.IdleHeartbeatMonitor}});var C=ey();Object.defineProperty(e,"isIPV4OrHostname",{enumerable:!0,get:function(){return C.isIPV4OrHostname}}),Object.defineProperty(e,"Servers",{enumerable:!0,get:function(){return C.Servers}});var M=function(){if($)return te;$=1,Object.defineProperty(te,"__esModule",{value:!0}),te.WsTransport=void 0,te.wsUrlParseFn=h,te.wsconnect=function(e={}){return(0,t.setTransportFactory)({defaultPort:443,urlParseFn:h,factory:()=>{if(e.tls)throw a.InvalidArgumentError.format("tls","is not configurable on w3c websocket connections");return new u}}),n.NatsConnectionImpl.connect(e)};let e=er(),t=ed(),r=e0(),s=el(),i=e1(),n=e3(),o=(q||(q=1,Object.defineProperty(tt,"__esModule",{value:!0}),tt.version=void 0,tt.version="3.1.0"),tt),a=et(),c=o.version;class u{version;lang;closeError;connected;done;socket;options;socketClosed;encrypted;peeked;yields;signal;closedNotification;constructor(){this.version=c,this.lang="nats.ws",this.connected=!1,this.done=!1,this.socketClosed=!1,this.encrypted=!1,this.peeked=!1,this.yields=[],this.signal=(0,e.deferred)(),this.closedNotification=(0,e.deferred)()}async connect(n,o){let c=(0,e.deferred)();this.options=o;let u=n.src;if(o.wsFactory){let{socket:e,encrypted:t}=await o.wsFactory(n.src,o);this.socket=e,this.encrypted=t}else this.encrypted=0===u.indexOf("wss://"),this.socket=new WebSocket(u);return this.socket.binaryType="arraybuffer",this.socket.onopen=()=>{this.done&&this._closed(Error("aborted"))},this.socket.onmessage=n=>{if(this.done)return;if(this.yields.push(new Uint8Array(n.data)),this.peeked)return void this.signal.resolve();let a=s.DataBuffer.concat(...this.yields),u=(0,t.extractProtocolMessage)(a);if(""!==u){let t=i.INFO.exec(u);if(!t){o.debug&&console.error("!!!",(0,e.render)(a)),c.reject(Error("unexpected response from server"));return}try{let e=JSON.parse(t[1]);(0,r.checkOptions)(e,this.options),this.peeked=!0,this.connected=!0,this.signal.resolve(),c.resolve()}catch(e){c.reject(e);return}}},this.socket.onclose=e=>{let t;e.wasClean||""===e.reason||(t=Error(e.reason)),this._closed(t),this._cleanup()},this.socket.onerror=e=>{if(this.done)return;let t=new a.errors.ConnectionError(e.message);c.reject(t),this._cleanup()},c}_cleanup(){!1===this.socketClosed&&(this.socketClosed=!0,this.socket.onopen=null,this.socket.onmessage=null,this.socket.onerror=null,this.socket.onclose=null,this.closedNotification.resolve(this.closeError))}disconnect(){this._closed(void 0,!0)}async _closed(t,r=!0){if(this.done){try{this.socket.close()}catch(e){}return}if(this.closeError=t,!t)for(;!this.socketClosed&&this.socket.bufferedAmount>0;)await (0,e.delay)(100);this.done=!0;try{this.socket.close()}catch(e){}return this.closedNotification}get isClosed(){return this.done}[Symbol.asyncIterator](){return this.iterate()}async *iterate(){for(;;){if(this.done)return;0===this.yields.length&&await this.signal;let t=this.yields;this.yields=[];for(let r=0;r ${(0,e.render)(t[r])}`),yield t[r];if(this.done)break;0===this.yields.length&&(t.length=0,this.yields=t,this.signal=(0,e.deferred)())}}isEncrypted(){return this.connected&&this.encrypted}send(t){if(!this.done)try{this.socket.send(t.buffer),this.options.debug&&console.info(`< ${(0,e.render)(t)}`);return}catch(r){this.options.debug&&console.error(`!!! ${(0,e.render)(t)}: ${r}`)}}close(e){return this._closed(e,!1)}closed(){return this.closedNotification}discard(){this.socket?.close()}}function h(e,t){let r,s;/^(.*:\/\/)(.*)/.test(e)||(e="boolean"==typeof t?`${!0===t?"https":"http"}://${e}`:`https://${e}`);let i=new URL(e),n=i.protocol.toLowerCase();"ws:"===n&&(t=!1),"wss:"===n&&(t=!0),"https:"!==n&&"http"!==n&&(e=e.replace(/^(.*:\/\/)(.*)/gm,"$2"),i=new URL(`http://${e}`));let o=i.hostname,a=i.pathname,c=i.search||"";switch(n){case"http:":case"ws:":case"nats:":s=i.port||"80",r="ws:";break;case"https:":case"wss:":case"tls:":s=i.port||"443",r="wss:";break;default:s=i.port||!0===t?"443":"80",r=!0===t?"wss:":"ws:"}return`${r}//${o}:${s}${a}${c}`}return te.WsTransport=u,te}();Object.defineProperty(e,"wsconnect",{enumerable:!0,get:function(){return M.wsconnect}}),Object.defineProperty(e,"wsUrlParseFn",{enumerable:!0,get:function(){return M.wsUrlParseFn}});var I=et();Object.defineProperty(e,"AuthorizationError",{enumerable:!0,get:function(){return I.AuthorizationError}}),Object.defineProperty(e,"ClosedConnectionError",{enumerable:!0,get:function(){return I.ClosedConnectionError}}),Object.defineProperty(e,"ConnectionError",{enumerable:!0,get:function(){return I.ConnectionError}}),Object.defineProperty(e,"DrainingConnectionError",{enumerable:!0,get:function(){return I.DrainingConnectionError}}),Object.defineProperty(e,"errors",{enumerable:!0,get:function(){return I.errors}}),Object.defineProperty(e,"InvalidArgumentError",{enumerable:!0,get:function(){return I.InvalidArgumentError}}),Object.defineProperty(e,"InvalidOperationError",{enumerable:!0,get:function(){return I.InvalidOperationError}}),Object.defineProperty(e,"InvalidSubjectError",{enumerable:!0,get:function(){return I.InvalidSubjectError}}),Object.defineProperty(e,"NoRespondersError",{enumerable:!0,get:function(){return I.NoRespondersError}}),Object.defineProperty(e,"PermissionViolationError",{enumerable:!0,get:function(){return I.PermissionViolationError}}),Object.defineProperty(e,"ProtocolError",{enumerable:!0,get:function(){return I.ProtocolError}}),Object.defineProperty(e,"RequestError",{enumerable:!0,get:function(){return I.RequestError}}),Object.defineProperty(e,"TimeoutError",{enumerable:!0,get:function(){return I.TimeoutError}}),Object.defineProperty(e,"UserAuthenticationExpiredError",{enumerable:!0,get:function(){return I.UserAuthenticationExpiredError}})}(W)),e=W,Object.defineProperty(V,"AuthorizationError",{enumerable:!0,get:function(){return e.AuthorizationError}}),Object.defineProperty(V,"backoff",{enumerable:!0,get:function(){return e.backoff}}),Object.defineProperty(V,"Bench",{enumerable:!0,get:function(){return e.Bench}}),Object.defineProperty(V,"buildAuthenticator",{enumerable:!0,get:function(){return e.buildAuthenticator}}),Object.defineProperty(V,"canonicalMIMEHeaderKey",{enumerable:!0,get:function(){return e.canonicalMIMEHeaderKey}}),Object.defineProperty(V,"ClosedConnectionError",{enumerable:!0,get:function(){return e.ClosedConnectionError}}),Object.defineProperty(V,"ConnectionError",{enumerable:!0,get:function(){return e.ConnectionError}}),Object.defineProperty(V,"createInbox",{enumerable:!0,get:function(){return e.createInbox}}),Object.defineProperty(V,"credsAuthenticator",{enumerable:!0,get:function(){return e.credsAuthenticator}}),Object.defineProperty(V,"deadline",{enumerable:!0,get:function(){return e.deadline}}),Object.defineProperty(V,"deferred",{enumerable:!0,get:function(){return e.deferred}}),Object.defineProperty(V,"delay",{enumerable:!0,get:function(){return e.delay}}),Object.defineProperty(V,"DrainingConnectionError",{enumerable:!0,get:function(){return e.DrainingConnectionError}}),Object.defineProperty(V,"Empty",{enumerable:!0,get:function(){return e.Empty}}),Object.defineProperty(V,"errors",{enumerable:!0,get:function(){return e.errors}}),Object.defineProperty(V,"hasWsProtocol",{enumerable:!0,get:function(){return e.hasWsProtocol}}),Object.defineProperty(V,"headers",{enumerable:!0,get:function(){return e.headers}}),Object.defineProperty(V,"InvalidArgumentError",{enumerable:!0,get:function(){return e.InvalidArgumentError}}),Object.defineProperty(V,"InvalidOperationError",{enumerable:!0,get:function(){return e.InvalidOperationError}}),Object.defineProperty(V,"InvalidSubjectError",{enumerable:!0,get:function(){return e.InvalidSubjectError}}),Object.defineProperty(V,"jwtAuthenticator",{enumerable:!0,get:function(){return e.jwtAuthenticator}}),Object.defineProperty(V,"Match",{enumerable:!0,get:function(){return e.Match}}),Object.defineProperty(V,"Metric",{enumerable:!0,get:function(){return e.Metric}}),Object.defineProperty(V,"millis",{enumerable:!0,get:function(){return e.millis}}),Object.defineProperty(V,"MsgHdrsImpl",{enumerable:!0,get:function(){return e.MsgHdrsImpl}}),Object.defineProperty(V,"nanos",{enumerable:!0,get:function(){return e.nanos}}),Object.defineProperty(V,"nkeyAuthenticator",{enumerable:!0,get:function(){return e.nkeyAuthenticator}}),Object.defineProperty(V,"nkeys",{enumerable:!0,get:function(){return e.nkeys}}),Object.defineProperty(V,"NoRespondersError",{enumerable:!0,get:function(){return e.NoRespondersError}}),Object.defineProperty(V,"Nuid",{enumerable:!0,get:function(){return e.Nuid}}),Object.defineProperty(V,"nuid",{enumerable:!0,get:function(){return e.nuid}}),Object.defineProperty(V,"PermissionViolationError",{enumerable:!0,get:function(){return e.PermissionViolationError}}),Object.defineProperty(V,"ProtocolError",{enumerable:!0,get:function(){return e.ProtocolError}}),Object.defineProperty(V,"RequestError",{enumerable:!0,get:function(){return e.RequestError}}),Object.defineProperty(V,"syncIterator",{enumerable:!0,get:function(){return e.syncIterator}}),Object.defineProperty(V,"TimeoutError",{enumerable:!0,get:function(){return e.TimeoutError}}),Object.defineProperty(V,"tokenAuthenticator",{enumerable:!0,get:function(){return e.tokenAuthenticator}}),Object.defineProperty(V,"UserAuthenticationExpiredError",{enumerable:!0,get:function(){return e.UserAuthenticationExpiredError}}),Object.defineProperty(V,"usernamePasswordAuthenticator",{enumerable:!0,get:function(){return e.usernamePasswordAuthenticator}}),Object.defineProperty(V,"wsconnect",{enumerable:!0,get:function(){return e.wsconnect}}),V)}(),ts=function(e,t){return t.forEach(function(t){t&&"string"!=typeof t&&!Array.isArray(t)&&Object.keys(t).forEach(function(r){if("default"!==r&&!(r in e)){var s=Object.getOwnPropertyDescriptor(t,r);Object.defineProperty(e,r,s.get?s:{enumerable:!0,get:function(){return t[r]}})}})}),Object.freeze(e)}({__proto__:null,default:function(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}(tr)},[tr])}}]);