@walletconnect/ethereum-provider 2.0.0-rc.3 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.umd.js CHANGED
@@ -1,2 +1,2 @@
1
- (function(wt,Z){typeof exports=="object"&&typeof module<"u"?Z(exports):typeof define=="function"&&define.amd?define(["exports"],Z):(wt=typeof globalThis<"u"?globalThis:wt||self,Z(wt["@walletconnect/ethereum-provider"]={}))})(this,function(wt){"use strict";var Z=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Ba(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function bi(t){var e=t.default;if(typeof e=="function"){var r=function(){return e.apply(this,arguments)};r.prototype=e.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(t).forEach(function(i){var n=Object.getOwnPropertyDescriptor(t,i);Object.defineProperty(r,i,n.get?n:{enumerable:!0,get:function(){return t[i]}})}),r}function He(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}var gr=He;He.EventEmitter=He,He.prototype._events=void 0,He.prototype._maxListeners=void 0,He.defaultMaxListeners=10,He.prototype.setMaxListeners=function(t){if(!za(t)||t<0||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},He.prototype.emit=function(t){var e,r,i,n,s,c;if(this._events||(this._events={}),t==="error"&&(!this._events.error||vr(this._events.error)&&!this._events.error.length)){if(e=arguments[1],e instanceof Error)throw e;var u=new Error('Uncaught, unspecified "error" event. ('+e+")");throw u.context=e,u}if(r=this._events[t],Pn(r))return!1;if(Nt(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:n=Array.prototype.slice.call(arguments,1),r.apply(this,n)}else if(vr(r))for(n=Array.prototype.slice.call(arguments,1),c=r.slice(),i=c.length,s=0;s<i;s++)c[s].apply(this,n);return!0},He.prototype.addListener=function(t,e){var r;if(!Nt(e))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",t,Nt(e.listener)?e.listener:e),this._events[t]?vr(this._events[t])?this._events[t].push(e):this._events[t]=[this._events[t],e]:this._events[t]=e,vr(this._events[t])&&!this._events[t].warned&&(Pn(this._maxListeners)?r=He.defaultMaxListeners:r=this._maxListeners,r&&r>0&&this._events[t].length>r&&(this._events[t].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[t].length),typeof console.trace=="function"&&console.trace())),this},He.prototype.on=He.prototype.addListener,He.prototype.once=function(t,e){if(!Nt(e))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(t,i),r||(r=!0,e.apply(this,arguments))}return i.listener=e,this.on(t,i),this},He.prototype.removeListener=function(t,e){var r,i,n,s;if(!Nt(e))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(r=this._events[t],n=r.length,i=-1,r===e||Nt(r.listener)&&r.listener===e)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,e);else if(vr(r)){for(s=n;s-- >0;)if(r[s]===e||r[s].listener&&r[s].listener===e){i=s;break}if(i<0)return this;r.length===1?(r.length=0,delete this._events[t]):r.splice(i,1),this._events.removeListener&&this.emit("removeListener",t,e)}return this},He.prototype.removeAllListeners=function(t){var e,r;if(!this._events)return this;if(!this._events.removeListener)return arguments.length===0?this._events={}:this._events[t]&&delete this._events[t],this;if(arguments.length===0){for(e in this._events)e!=="removeListener"&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(r=this._events[t],Nt(r))this.removeListener(t,r);else if(r)for(;r.length;)this.removeListener(t,r[r.length-1]);return delete this._events[t],this},He.prototype.listeners=function(t){var e;return!this._events||!this._events[t]?e=[]:Nt(this._events[t])?e=[this._events[t]]:e=this._events[t].slice(),e},He.prototype.listenerCount=function(t){if(this._events){var e=this._events[t];if(Nt(e))return 1;if(e)return e.length}return 0},He.listenerCount=function(t,e){return t.listenerCount(e)};function Nt(t){return typeof t=="function"}function za(t){return typeof t=="number"}function vr(t){return typeof t=="object"&&t!==null}function Pn(t){return t===void 0}const Ha="PARSE_ERROR",Ka="INVALID_REQUEST",qa="METHOD_NOT_FOUND",Va="INVALID_PARAMS",Rn="INTERNAL_ERROR",mi="SERVER_ERROR",Ga=[-32700,-32600,-32601,-32602,-32603],yr={[Ha]:{code:-32700,message:"Parse error"},[Ka]:{code:-32600,message:"Invalid Request"},[qa]:{code:-32601,message:"Method not found"},[Va]:{code:-32602,message:"Invalid params"},[Rn]:{code:-32603,message:"Internal error"},[mi]:{code:-32e3,message:"Server error"}},Fn=mi;function Wa(t){return Ga.includes(t)}function Un(t){return Object.keys(yr).includes(t)?yr[t]:yr[Fn]}function ka(t){const e=Object.values(yr).find(r=>r.code===t);return e||yr[Fn]}function Mn(t,e,r){return t.message.includes("getaddrinfo ENOTFOUND")||t.message.includes("connect ECONNREFUSED")?new Error(`Unavailable ${r} RPC url at ${e}`):t}var jn={},zt={};Object.defineProperty(zt,"__esModule",{value:!0}),zt.isBrowserCryptoAvailable=zt.getSubtleCrypto=zt.getBrowerCrypto=void 0;function wi(){return Z?.crypto||Z?.msCrypto||{}}zt.getBrowerCrypto=wi;function $n(){const t=wi();return t.subtle||t.webkitSubtle}zt.getSubtleCrypto=$n;function Ya(){return!!wi()&&!!$n()}zt.isBrowserCryptoAvailable=Ya;var Ht={};Object.defineProperty(Ht,"__esModule",{value:!0}),Ht.isBrowser=Ht.isNode=Ht.isReactNative=void 0;function Bn(){return typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"}Ht.isReactNative=Bn;function zn(){return typeof process<"u"&&typeof process.versions<"u"&&typeof process.versions.node<"u"}Ht.isNode=zn;function Ja(){return!Bn()&&!zn()}Ht.isBrowser=Ja,function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(zt,t),r(Ht,t)}(jn);function Xa(){const t=Date.now()*Math.pow(10,3),e=Math.floor(Math.random()*Math.pow(10,3));return t+e}function Ei(t,e,r){return{id:r||Xa(),jsonrpc:"2.0",method:t,params:e}}function Di(t,e){return{id:t,jsonrpc:"2.0",result:e}}function qr(t,e,r){return{id:t,jsonrpc:"2.0",error:Za(e,r)}}function Za(t,e){return typeof t>"u"?Un(Rn):(typeof t=="string"&&(t=Object.assign(Object.assign({},Un(mi)),{message:t})),typeof e<"u"&&(t.data=e),Wa(t.code)&&(t=ka(t.code)),t)}class Hn{}class Qa extends Hn{constructor(e){super()}}class ec extends Hn{constructor(){super()}}class tc extends ec{constructor(e){super()}}const rc="^https?:",ic="^wss?:";function nc(t){const e=t.match(new RegExp(/^\w+:/,"gi"));if(!(!e||!e.length))return e[0]}function Kn(t,e){const r=nc(t);return typeof r>"u"?!1:new RegExp(e).test(r)}function qn(t){return Kn(t,rc)}function Vn(t){return Kn(t,ic)}function sc(t){return new RegExp("wss?://localhost(:d{2,5})?").test(t)}function Gn(t){return typeof t=="object"&&"id"in t&&"jsonrpc"in t&&t.jsonrpc==="2.0"}function Wn(t){return Gn(t)&&"method"in t}function kn(t){return Gn(t)&&(Pt(t)||Et(t))}function Pt(t){return"result"in t}function Et(t){return"error"in t}class xi extends tc{constructor(e){super(e),this.events=new gr.EventEmitter,this.hasRegisteredEventListeners=!1,this.connection=this.setConnection(e),this.connection.connected&&this.registerEventListeners()}async connect(e=this.connection){await this.open(e)}async disconnect(){await this.close()}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}off(e,r){this.events.off(e,r)}removeListener(e,r){this.events.removeListener(e,r)}async request(e,r){return this.requestStrict(Ei(e.method,e.params||[]),r)}async requestStrict(e,r){return new Promise(async(i,n)=>{if(!this.connection.connected)try{await this.open()}catch(s){n(s)}this.events.on(`${e.id}`,s=>{Et(s)?n(s.error):i(s.result)});try{await this.connection.send(e,r)}catch(s){n(s)}})}setConnection(e=this.connection){return e}onPayload(e){this.events.emit("payload",e),kn(e)?this.events.emit(`${e.id}`,e):this.events.emit("message",{type:e.method,data:e.params})}async open(e=this.connection){this.connection===e&&this.connection.connected||(this.connection.connected&&this.close(),typeof e=="string"&&(await this.connection.open(e),e=this.connection),this.connection=this.setConnection(e),await this.connection.open(),this.registerEventListeners(),this.events.emit("connect"))}async close(){await this.connection.close()}registerEventListeners(){this.hasRegisteredEventListeners||(this.connection.on("payload",e=>this.onPayload(e)),this.connection.on("close",()=>this.events.emit("disconnect")),this.connection.on("error",e=>this.events.emit("error",e)),this.hasRegisteredEventListeners=!0)}}var Si={exports:{}};(function(t,e){var r=typeof self<"u"?self:Z,i=function(){function s(){this.fetch=!1,this.DOMException=r.DOMException}return s.prototype=r,new s}();(function(s){(function(c){var u={searchParams:"URLSearchParams"in s,iterable:"Symbol"in s&&"iterator"in Symbol,blob:"FileReader"in s&&"Blob"in s&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in s,arrayBuffer:"ArrayBuffer"in s};function h(f){return f&&DataView.prototype.isPrototypeOf(f)}if(u.arrayBuffer)var d=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],g=ArrayBuffer.isView||function(f){return f&&d.indexOf(Object.prototype.toString.call(f))>-1};function D(f){if(typeof f!="string"&&(f=String(f)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(f))throw new TypeError("Invalid character in header field name");return f.toLowerCase()}function C(f){return typeof f!="string"&&(f=String(f)),f}function x(f){var _={next:function(){var U=f.shift();return{done:U===void 0,value:U}}};return u.iterable&&(_[Symbol.iterator]=function(){return _}),_}function w(f){this.map={},f instanceof w?f.forEach(function(_,U){this.append(U,_)},this):Array.isArray(f)?f.forEach(function(_){this.append(_[0],_[1])},this):f&&Object.getOwnPropertyNames(f).forEach(function(_){this.append(_,f[_])},this)}w.prototype.append=function(f,_){f=D(f),_=C(_);var U=this.map[f];this.map[f]=U?U+", "+_:_},w.prototype.delete=function(f){delete this.map[D(f)]},w.prototype.get=function(f){return f=D(f),this.has(f)?this.map[f]:null},w.prototype.has=function(f){return this.map.hasOwnProperty(D(f))},w.prototype.set=function(f,_){this.map[D(f)]=C(_)},w.prototype.forEach=function(f,_){for(var U in this.map)this.map.hasOwnProperty(U)&&f.call(_,this.map[U],U,this)},w.prototype.keys=function(){var f=[];return this.forEach(function(_,U){f.push(U)}),x(f)},w.prototype.values=function(){var f=[];return this.forEach(function(_){f.push(_)}),x(f)},w.prototype.entries=function(){var f=[];return this.forEach(function(_,U){f.push([U,_])}),x(f)},u.iterable&&(w.prototype[Symbol.iterator]=w.prototype.entries);function R(f){if(f.bodyUsed)return Promise.reject(new TypeError("Already read"));f.bodyUsed=!0}function L(f){return new Promise(function(_,U){f.onload=function(){_(f.result)},f.onerror=function(){U(f.error)}})}function $(f){var _=new FileReader,U=L(_);return _.readAsArrayBuffer(f),U}function E(f){var _=new FileReader,U=L(_);return _.readAsText(f),U}function A(f){for(var _=new Uint8Array(f),U=new Array(_.length),q=0;q<_.length;q++)U[q]=String.fromCharCode(_[q]);return U.join("")}function y(f){if(f.slice)return f.slice(0);var _=new Uint8Array(f.byteLength);return _.set(new Uint8Array(f)),_.buffer}function m(){return this.bodyUsed=!1,this._initBody=function(f){this._bodyInit=f,f?typeof f=="string"?this._bodyText=f:u.blob&&Blob.prototype.isPrototypeOf(f)?this._bodyBlob=f:u.formData&&FormData.prototype.isPrototypeOf(f)?this._bodyFormData=f:u.searchParams&&URLSearchParams.prototype.isPrototypeOf(f)?this._bodyText=f.toString():u.arrayBuffer&&u.blob&&h(f)?(this._bodyArrayBuffer=y(f.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):u.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(f)||g(f))?this._bodyArrayBuffer=y(f):this._bodyText=f=Object.prototype.toString.call(f):this._bodyText="",this.headers.get("content-type")||(typeof f=="string"?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):u.searchParams&&URLSearchParams.prototype.isPrototypeOf(f)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},u.blob&&(this.blob=function(){var f=R(this);if(f)return f;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?R(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then($)}),this.text=function(){var f=R(this);if(f)return f;if(this._bodyBlob)return E(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(A(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},u.formData&&(this.formData=function(){return this.text().then(M)}),this.json=function(){return this.text().then(JSON.parse)},this}var b=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function o(f){var _=f.toUpperCase();return b.indexOf(_)>-1?_:f}function l(f,_){_=_||{};var U=_.body;if(f instanceof l){if(f.bodyUsed)throw new TypeError("Already read");this.url=f.url,this.credentials=f.credentials,_.headers||(this.headers=new w(f.headers)),this.method=f.method,this.mode=f.mode,this.signal=f.signal,!U&&f._bodyInit!=null&&(U=f._bodyInit,f.bodyUsed=!0)}else this.url=String(f);if(this.credentials=_.credentials||this.credentials||"same-origin",(_.headers||!this.headers)&&(this.headers=new w(_.headers)),this.method=o(_.method||this.method||"GET"),this.mode=_.mode||this.mode||null,this.signal=_.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&U)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(U)}l.prototype.clone=function(){return new l(this,{body:this._bodyInit})};function M(f){var _=new FormData;return f.trim().split("&").forEach(function(U){if(U){var q=U.split("="),P=q.shift().replace(/\+/g," "),N=q.join("=").replace(/\+/g," ");_.append(decodeURIComponent(P),decodeURIComponent(N))}}),_}function K(f){var _=new w,U=f.replace(/\r?\n[\t ]+/g," ");return U.split(/\r?\n/).forEach(function(q){var P=q.split(":"),N=P.shift().trim();if(N){var j=P.join(":").trim();_.append(N,j)}}),_}m.call(l.prototype);function V(f,_){_||(_={}),this.type="default",this.status=_.status===void 0?200:_.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in _?_.statusText:"OK",this.headers=new w(_.headers),this.url=_.url||"",this._initBody(f)}m.call(V.prototype),V.prototype.clone=function(){return new V(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new w(this.headers),url:this.url})},V.error=function(){var f=new V(null,{status:0,statusText:""});return f.type="error",f};var J=[301,302,303,307,308];V.redirect=function(f,_){if(J.indexOf(_)===-1)throw new RangeError("Invalid status code");return new V(null,{status:_,headers:{location:f}})},c.DOMException=s.DOMException;try{new c.DOMException}catch{c.DOMException=function(_,U){this.message=_,this.name=U;var q=Error(_);this.stack=q.stack},c.DOMException.prototype=Object.create(Error.prototype),c.DOMException.prototype.constructor=c.DOMException}function X(f,_){return new Promise(function(U,q){var P=new l(f,_);if(P.signal&&P.signal.aborted)return q(new c.DOMException("Aborted","AbortError"));var N=new XMLHttpRequest;function j(){N.abort()}N.onload=function(){var B={status:N.status,statusText:N.statusText,headers:K(N.getAllResponseHeaders()||"")};B.url="responseURL"in N?N.responseURL:B.headers.get("X-Request-URL");var Q="response"in N?N.response:N.responseText;U(new V(Q,B))},N.onerror=function(){q(new TypeError("Network request failed"))},N.ontimeout=function(){q(new TypeError("Network request failed"))},N.onabort=function(){q(new c.DOMException("Aborted","AbortError"))},N.open(P.method,P.url,!0),P.credentials==="include"?N.withCredentials=!0:P.credentials==="omit"&&(N.withCredentials=!1),"responseType"in N&&u.blob&&(N.responseType="blob"),P.headers.forEach(function(B,Q){N.setRequestHeader(Q,B)}),P.signal&&(P.signal.addEventListener("abort",j),N.onreadystatechange=function(){N.readyState===4&&P.signal.removeEventListener("abort",j)}),N.send(typeof P._bodyInit>"u"?null:P._bodyInit)})}return X.polyfill=!0,s.fetch||(s.fetch=X,s.Headers=w,s.Request=l,s.Response=V),c.Headers=w,c.Request=l,c.Response=V,c.fetch=X,Object.defineProperty(c,"__esModule",{value:!0}),c})({})})(i),i.fetch.ponyfill=!0,delete i.fetch.polyfill;var n=i;e=n.fetch,e.default=n.fetch,e.fetch=n.fetch,e.Headers=n.Headers,e.Request=n.Request,e.Response=n.Response,t.exports=e})(Si,Si.exports);var Yn=Ba(Si.exports);function Oi(t){if(typeof t!="string")throw new Error(`Cannot safe json parse value of type ${typeof t}`);try{return JSON.parse(t)}catch{return t}}function _r(t){return typeof t=="string"?t:JSON.stringify(t)}const Jn={headers:{Accept:"application/json","Content-Type":"application/json"},method:"POST"},Xn=10;class oc{constructor(e){if(this.url=e,this.events=new gr.EventEmitter,this.isAvailable=!1,this.registering=!1,!qn(e))throw new Error(`Provided URL is not compatible with HTTP connection: ${e}`);this.url=e}get connected(){return this.isAvailable}get connecting(){return this.registering}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}off(e,r){this.events.off(e,r)}removeListener(e,r){this.events.removeListener(e,r)}async open(e=this.url){await this.register(e)}async close(){if(!this.isAvailable)throw new Error("Connection already closed");this.onClose()}async send(e,r){this.isAvailable||await this.register();try{const i=_r(e),s=await(await Yn(this.url,Object.assign(Object.assign({},Jn),{body:i}))).json();this.onPayload({data:s})}catch(i){this.onError(e.id,i)}}async register(e=this.url){if(!qn(e))throw new Error(`Provided URL is not compatible with HTTP connection: ${e}`);if(this.registering){const r=this.events.getMaxListeners();return(this.events.listenerCount("register_error")>=r||this.events.listenerCount("open")>=r)&&this.events.setMaxListeners(r+1),new Promise((i,n)=>{this.events.once("register_error",s=>{this.resetMaxListeners(),n(s)}),this.events.once("open",()=>{if(this.resetMaxListeners(),typeof this.isAvailable>"u")return n(new Error("HTTP connection is missing or invalid"));i()})})}this.url=e,this.registering=!0;try{const r=_r({id:1,jsonrpc:"2.0",method:"test",params:[]});await Yn(e,Object.assign(Object.assign({},Jn),{body:r})),this.onOpen()}catch(r){const i=this.parseError(r);throw this.events.emit("register_error",i),this.onClose(),i}}onOpen(){this.isAvailable=!0,this.registering=!1,this.events.emit("open")}onClose(){this.isAvailable=!1,this.registering=!1,this.events.emit("close")}onPayload(e){if(typeof e.data>"u")return;const r=typeof e.data=="string"?Oi(e.data):e.data;this.events.emit("payload",r)}onError(e,r){const i=this.parseError(r),n=i.message||i.toString(),s=qr(e,n);this.events.emit("payload",s)}parseError(e,r=this.url){return Mn(e,r,"HTTP")}resetMaxListeners(){this.events.getMaxListeners()>Xn&&this.events.setMaxListeners(Xn)}}var Ai={},Vr={},re={},Zn={};(function(t){Object.defineProperty(t,"__esModule",{value:!0});function e(u,h){var d=u>>>16&65535,g=u&65535,D=h>>>16&65535,C=h&65535;return g*C+(d*C+g*D<<16>>>0)|0}t.mul=Math.imul||e;function r(u,h){return u+h|0}t.add=r;function i(u,h){return u-h|0}t.sub=i;function n(u,h){return u<<h|u>>>32-h}t.rotl=n;function s(u,h){return u<<32-h|u>>>h}t.rotr=s;function c(u){return typeof u=="number"&&isFinite(u)&&Math.floor(u)===u}t.isInteger=Number.isInteger||c,t.MAX_SAFE_INTEGER=9007199254740991,t.isSafeInteger=function(u){return t.isInteger(u)&&u>=-t.MAX_SAFE_INTEGER&&u<=t.MAX_SAFE_INTEGER}})(Zn),Object.defineProperty(re,"__esModule",{value:!0});var Qn=Zn;function ac(t,e){return e===void 0&&(e=0),(t[e+0]<<8|t[e+1])<<16>>16}re.readInt16BE=ac;function cc(t,e){return e===void 0&&(e=0),(t[e+0]<<8|t[e+1])>>>0}re.readUint16BE=cc;function uc(t,e){return e===void 0&&(e=0),(t[e+1]<<8|t[e])<<16>>16}re.readInt16LE=uc;function hc(t,e){return e===void 0&&(e=0),(t[e+1]<<8|t[e])>>>0}re.readUint16LE=hc;function es(t,e,r){return e===void 0&&(e=new Uint8Array(2)),r===void 0&&(r=0),e[r+0]=t>>>8,e[r+1]=t>>>0,e}re.writeUint16BE=es,re.writeInt16BE=es;function ts(t,e,r){return e===void 0&&(e=new Uint8Array(2)),r===void 0&&(r=0),e[r+0]=t>>>0,e[r+1]=t>>>8,e}re.writeUint16LE=ts,re.writeInt16LE=ts;function Ii(t,e){return e===void 0&&(e=0),t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3]}re.readInt32BE=Ii;function Ti(t,e){return e===void 0&&(e=0),(t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3])>>>0}re.readUint32BE=Ti;function Ci(t,e){return e===void 0&&(e=0),t[e+3]<<24|t[e+2]<<16|t[e+1]<<8|t[e]}re.readInt32LE=Ci;function Li(t,e){return e===void 0&&(e=0),(t[e+3]<<24|t[e+2]<<16|t[e+1]<<8|t[e])>>>0}re.readUint32LE=Li;function Gr(t,e,r){return e===void 0&&(e=new Uint8Array(4)),r===void 0&&(r=0),e[r+0]=t>>>24,e[r+1]=t>>>16,e[r+2]=t>>>8,e[r+3]=t>>>0,e}re.writeUint32BE=Gr,re.writeInt32BE=Gr;function Wr(t,e,r){return e===void 0&&(e=new Uint8Array(4)),r===void 0&&(r=0),e[r+0]=t>>>0,e[r+1]=t>>>8,e[r+2]=t>>>16,e[r+3]=t>>>24,e}re.writeUint32LE=Wr,re.writeInt32LE=Wr;function fc(t,e){e===void 0&&(e=0);var r=Ii(t,e),i=Ii(t,e+4);return r*4294967296+i-(i>>31)*4294967296}re.readInt64BE=fc;function lc(t,e){e===void 0&&(e=0);var r=Ti(t,e),i=Ti(t,e+4);return r*4294967296+i}re.readUint64BE=lc;function dc(t,e){e===void 0&&(e=0);var r=Ci(t,e),i=Ci(t,e+4);return i*4294967296+r-(r>>31)*4294967296}re.readInt64LE=dc;function pc(t,e){e===void 0&&(e=0);var r=Li(t,e),i=Li(t,e+4);return i*4294967296+r}re.readUint64LE=pc;function rs(t,e,r){return e===void 0&&(e=new Uint8Array(8)),r===void 0&&(r=0),Gr(t/4294967296>>>0,e,r),Gr(t>>>0,e,r+4),e}re.writeUint64BE=rs,re.writeInt64BE=rs;function is(t,e,r){return e===void 0&&(e=new Uint8Array(8)),r===void 0&&(r=0),Wr(t>>>0,e,r),Wr(t/4294967296>>>0,e,r+4),e}re.writeUint64LE=is,re.writeInt64LE=is;function gc(t,e,r){if(r===void 0&&(r=0),t%8!==0)throw new Error("readUintBE supports only bitLengths divisible by 8");if(t/8>e.length-r)throw new Error("readUintBE: array is too short for the given bitLength");for(var i=0,n=1,s=t/8+r-1;s>=r;s--)i+=e[s]*n,n*=256;return i}re.readUintBE=gc;function vc(t,e,r){if(r===void 0&&(r=0),t%8!==0)throw new Error("readUintLE supports only bitLengths divisible by 8");if(t/8>e.length-r)throw new Error("readUintLE: array is too short for the given bitLength");for(var i=0,n=1,s=r;s<r+t/8;s++)i+=e[s]*n,n*=256;return i}re.readUintLE=vc;function yc(t,e,r,i){if(r===void 0&&(r=new Uint8Array(t/8)),i===void 0&&(i=0),t%8!==0)throw new Error("writeUintBE supports only bitLengths divisible by 8");if(!Qn.isSafeInteger(e))throw new Error("writeUintBE value must be an integer");for(var n=1,s=t/8+i-1;s>=i;s--)r[s]=e/n&255,n*=256;return r}re.writeUintBE=yc;function _c(t,e,r,i){if(r===void 0&&(r=new Uint8Array(t/8)),i===void 0&&(i=0),t%8!==0)throw new Error("writeUintLE supports only bitLengths divisible by 8");if(!Qn.isSafeInteger(e))throw new Error("writeUintLE value must be an integer");for(var n=1,s=i;s<i+t/8;s++)r[s]=e/n&255,n*=256;return r}re.writeUintLE=_c;function bc(t,e){e===void 0&&(e=0);var r=new DataView(t.buffer,t.byteOffset,t.byteLength);return r.getFloat32(e)}re.readFloat32BE=bc;function mc(t,e){e===void 0&&(e=0);var r=new DataView(t.buffer,t.byteOffset,t.byteLength);return r.getFloat32(e,!0)}re.readFloat32LE=mc;function wc(t,e){e===void 0&&(e=0);var r=new DataView(t.buffer,t.byteOffset,t.byteLength);return r.getFloat64(e)}re.readFloat64BE=wc;function Ec(t,e){e===void 0&&(e=0);var r=new DataView(t.buffer,t.byteOffset,t.byteLength);return r.getFloat64(e,!0)}re.readFloat64LE=Ec;function Dc(t,e,r){e===void 0&&(e=new Uint8Array(4)),r===void 0&&(r=0);var i=new DataView(e.buffer,e.byteOffset,e.byteLength);return i.setFloat32(r,t),e}re.writeFloat32BE=Dc;function xc(t,e,r){e===void 0&&(e=new Uint8Array(4)),r===void 0&&(r=0);var i=new DataView(e.buffer,e.byteOffset,e.byteLength);return i.setFloat32(r,t,!0),e}re.writeFloat32LE=xc;function Sc(t,e,r){e===void 0&&(e=new Uint8Array(8)),r===void 0&&(r=0);var i=new DataView(e.buffer,e.byteOffset,e.byteLength);return i.setFloat64(r,t),e}re.writeFloat64BE=Sc;function Oc(t,e,r){e===void 0&&(e=new Uint8Array(8)),r===void 0&&(r=0);var i=new DataView(e.buffer,e.byteOffset,e.byteLength);return i.setFloat64(r,t,!0),e}re.writeFloat64LE=Oc;var pt={};Object.defineProperty(pt,"__esModule",{value:!0});function Ac(t){for(var e=0;e<t.length;e++)t[e]=0;return t}pt.wipe=Ac,Object.defineProperty(Vr,"__esModule",{value:!0});var st=re,Ni=pt,Ic=20;function Tc(t,e,r){for(var i=1634760805,n=857760878,s=2036477234,c=1797285236,u=r[3]<<24|r[2]<<16|r[1]<<8|r[0],h=r[7]<<24|r[6]<<16|r[5]<<8|r[4],d=r[11]<<24|r[10]<<16|r[9]<<8|r[8],g=r[15]<<24|r[14]<<16|r[13]<<8|r[12],D=r[19]<<24|r[18]<<16|r[17]<<8|r[16],C=r[23]<<24|r[22]<<16|r[21]<<8|r[20],x=r[27]<<24|r[26]<<16|r[25]<<8|r[24],w=r[31]<<24|r[30]<<16|r[29]<<8|r[28],R=e[3]<<24|e[2]<<16|e[1]<<8|e[0],L=e[7]<<24|e[6]<<16|e[5]<<8|e[4],$=e[11]<<24|e[10]<<16|e[9]<<8|e[8],E=e[15]<<24|e[14]<<16|e[13]<<8|e[12],A=i,y=n,m=s,b=c,o=u,l=h,M=d,K=g,V=D,J=C,X=x,f=w,_=R,U=L,q=$,P=E,N=0;N<Ic;N+=2)A=A+o|0,_^=A,_=_>>>32-16|_<<16,V=V+_|0,o^=V,o=o>>>32-12|o<<12,y=y+l|0,U^=y,U=U>>>32-16|U<<16,J=J+U|0,l^=J,l=l>>>32-12|l<<12,m=m+M|0,q^=m,q=q>>>32-16|q<<16,X=X+q|0,M^=X,M=M>>>32-12|M<<12,b=b+K|0,P^=b,P=P>>>32-16|P<<16,f=f+P|0,K^=f,K=K>>>32-12|K<<12,m=m+M|0,q^=m,q=q>>>32-8|q<<8,X=X+q|0,M^=X,M=M>>>32-7|M<<7,b=b+K|0,P^=b,P=P>>>32-8|P<<8,f=f+P|0,K^=f,K=K>>>32-7|K<<7,y=y+l|0,U^=y,U=U>>>32-8|U<<8,J=J+U|0,l^=J,l=l>>>32-7|l<<7,A=A+o|0,_^=A,_=_>>>32-8|_<<8,V=V+_|0,o^=V,o=o>>>32-7|o<<7,A=A+l|0,P^=A,P=P>>>32-16|P<<16,X=X+P|0,l^=X,l=l>>>32-12|l<<12,y=y+M|0,_^=y,_=_>>>32-16|_<<16,f=f+_|0,M^=f,M=M>>>32-12|M<<12,m=m+K|0,U^=m,U=U>>>32-16|U<<16,V=V+U|0,K^=V,K=K>>>32-12|K<<12,b=b+o|0,q^=b,q=q>>>32-16|q<<16,J=J+q|0,o^=J,o=o>>>32-12|o<<12,m=m+K|0,U^=m,U=U>>>32-8|U<<8,V=V+U|0,K^=V,K=K>>>32-7|K<<7,b=b+o|0,q^=b,q=q>>>32-8|q<<8,J=J+q|0,o^=J,o=o>>>32-7|o<<7,y=y+M|0,_^=y,_=_>>>32-8|_<<8,f=f+_|0,M^=f,M=M>>>32-7|M<<7,A=A+l|0,P^=A,P=P>>>32-8|P<<8,X=X+P|0,l^=X,l=l>>>32-7|l<<7;st.writeUint32LE(A+i|0,t,0),st.writeUint32LE(y+n|0,t,4),st.writeUint32LE(m+s|0,t,8),st.writeUint32LE(b+c|0,t,12),st.writeUint32LE(o+u|0,t,16),st.writeUint32LE(l+h|0,t,20),st.writeUint32LE(M+d|0,t,24),st.writeUint32LE(K+g|0,t,28),st.writeUint32LE(V+D|0,t,32),st.writeUint32LE(J+C|0,t,36),st.writeUint32LE(X+x|0,t,40),st.writeUint32LE(f+w|0,t,44),st.writeUint32LE(_+R|0,t,48),st.writeUint32LE(U+L|0,t,52),st.writeUint32LE(q+$|0,t,56),st.writeUint32LE(P+E|0,t,60)}function ns(t,e,r,i,n){if(n===void 0&&(n=0),t.length!==32)throw new Error("ChaCha: key size must be 32 bytes");if(i.length<r.length)throw new Error("ChaCha: destination is shorter than source");var s,c;if(n===0){if(e.length!==8&&e.length!==12)throw new Error("ChaCha nonce must be 8 or 12 bytes");s=new Uint8Array(16),c=s.length-e.length,s.set(e,c)}else{if(e.length!==16)throw new Error("ChaCha nonce with counter must be 16 bytes");s=e,c=n}for(var u=new Uint8Array(64),h=0;h<r.length;h+=64){Tc(u,s,t);for(var d=h;d<h+64&&d<r.length;d++)i[d]=r[d]^u[d-h];Lc(s,0,c)}return Ni.wipe(u),n===0&&Ni.wipe(s),i}Vr.streamXOR=ns;function Cc(t,e,r,i){return i===void 0&&(i=0),Ni.wipe(r),ns(t,e,r,r,i)}Vr.stream=Cc;function Lc(t,e,r){for(var i=1;r--;)i=i+(t[e]&255)|0,t[e]=i&255,i>>>=8,e++;if(i>0)throw new Error("ChaCha: counter overflow")}var ss={},Kt={};Object.defineProperty(Kt,"__esModule",{value:!0});function Nc(t,e,r){return~(t-1)&e|t-1&r}Kt.select=Nc;function Pc(t,e){return(t|0)-(e|0)-1>>>31&1}Kt.lessOrEqual=Pc;function os(t,e){if(t.length!==e.length)return 0;for(var r=0,i=0;i<t.length;i++)r|=t[i]^e[i];return 1&r-1>>>8}Kt.compare=os;function Rc(t,e){return t.length===0||e.length===0?!1:os(t,e)!==0}Kt.equal=Rc,function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=Kt,r=pt;t.DIGEST_LENGTH=16;var i=function(){function c(u){this.digestLength=t.DIGEST_LENGTH,this._buffer=new Uint8Array(16),this._r=new Uint16Array(10),this._h=new Uint16Array(10),this._pad=new Uint16Array(8),this._leftover=0,this._fin=0,this._finished=!1;var h=u[0]|u[1]<<8;this._r[0]=h&8191;var d=u[2]|u[3]<<8;this._r[1]=(h>>>13|d<<3)&8191;var g=u[4]|u[5]<<8;this._r[2]=(d>>>10|g<<6)&7939;var D=u[6]|u[7]<<8;this._r[3]=(g>>>7|D<<9)&8191;var C=u[8]|u[9]<<8;this._r[4]=(D>>>4|C<<12)&255,this._r[5]=C>>>1&8190;var x=u[10]|u[11]<<8;this._r[6]=(C>>>14|x<<2)&8191;var w=u[12]|u[13]<<8;this._r[7]=(x>>>11|w<<5)&8065;var R=u[14]|u[15]<<8;this._r[8]=(w>>>8|R<<8)&8191,this._r[9]=R>>>5&127,this._pad[0]=u[16]|u[17]<<8,this._pad[1]=u[18]|u[19]<<8,this._pad[2]=u[20]|u[21]<<8,this._pad[3]=u[22]|u[23]<<8,this._pad[4]=u[24]|u[25]<<8,this._pad[5]=u[26]|u[27]<<8,this._pad[6]=u[28]|u[29]<<8,this._pad[7]=u[30]|u[31]<<8}return c.prototype._blocks=function(u,h,d){for(var g=this._fin?0:2048,D=this._h[0],C=this._h[1],x=this._h[2],w=this._h[3],R=this._h[4],L=this._h[5],$=this._h[6],E=this._h[7],A=this._h[8],y=this._h[9],m=this._r[0],b=this._r[1],o=this._r[2],l=this._r[3],M=this._r[4],K=this._r[5],V=this._r[6],J=this._r[7],X=this._r[8],f=this._r[9];d>=16;){var _=u[h+0]|u[h+1]<<8;D+=_&8191;var U=u[h+2]|u[h+3]<<8;C+=(_>>>13|U<<3)&8191;var q=u[h+4]|u[h+5]<<8;x+=(U>>>10|q<<6)&8191;var P=u[h+6]|u[h+7]<<8;w+=(q>>>7|P<<9)&8191;var N=u[h+8]|u[h+9]<<8;R+=(P>>>4|N<<12)&8191,L+=N>>>1&8191;var j=u[h+10]|u[h+11]<<8;$+=(N>>>14|j<<2)&8191;var B=u[h+12]|u[h+13]<<8;E+=(j>>>11|B<<5)&8191;var Q=u[h+14]|u[h+15]<<8;A+=(B>>>8|Q<<8)&8191,y+=Q>>>5|g;var H=0,ee=H;ee+=D*m,ee+=C*(5*f),ee+=x*(5*X),ee+=w*(5*J),ee+=R*(5*V),H=ee>>>13,ee&=8191,ee+=L*(5*K),ee+=$*(5*M),ee+=E*(5*l),ee+=A*(5*o),ee+=y*(5*b),H+=ee>>>13,ee&=8191;var k=H;k+=D*b,k+=C*m,k+=x*(5*f),k+=w*(5*X),k+=R*(5*J),H=k>>>13,k&=8191,k+=L*(5*V),k+=$*(5*K),k+=E*(5*M),k+=A*(5*l),k+=y*(5*o),H+=k>>>13,k&=8191;var ae=H;ae+=D*o,ae+=C*b,ae+=x*m,ae+=w*(5*f),ae+=R*(5*X),H=ae>>>13,ae&=8191,ae+=L*(5*J),ae+=$*(5*V),ae+=E*(5*K),ae+=A*(5*M),ae+=y*(5*l),H+=ae>>>13,ae&=8191;var T=H;T+=D*l,T+=C*o,T+=x*b,T+=w*m,T+=R*(5*f),H=T>>>13,T&=8191,T+=L*(5*X),T+=$*(5*J),T+=E*(5*V),T+=A*(5*K),T+=y*(5*M),H+=T>>>13,T&=8191;var I=H;I+=D*M,I+=C*l,I+=x*o,I+=w*b,I+=R*m,H=I>>>13,I&=8191,I+=L*(5*f),I+=$*(5*X),I+=E*(5*J),I+=A*(5*V),I+=y*(5*K),H+=I>>>13,I&=8191;var S=H;S+=D*K,S+=C*M,S+=x*l,S+=w*o,S+=R*b,H=S>>>13,S&=8191,S+=L*m,S+=$*(5*f),S+=E*(5*X),S+=A*(5*J),S+=y*(5*V),H+=S>>>13,S&=8191;var a=H;a+=D*V,a+=C*K,a+=x*M,a+=w*l,a+=R*o,H=a>>>13,a&=8191,a+=L*b,a+=$*m,a+=E*(5*f),a+=A*(5*X),a+=y*(5*J),H+=a>>>13,a&=8191;var v=H;v+=D*J,v+=C*V,v+=x*K,v+=w*M,v+=R*l,H=v>>>13,v&=8191,v+=L*o,v+=$*b,v+=E*m,v+=A*(5*f),v+=y*(5*X),H+=v>>>13,v&=8191;var z=H;z+=D*X,z+=C*J,z+=x*V,z+=w*K,z+=R*M,H=z>>>13,z&=8191,z+=L*l,z+=$*o,z+=E*b,z+=A*m,z+=y*(5*f),H+=z>>>13,z&=8191;var Y=H;Y+=D*f,Y+=C*X,Y+=x*J,Y+=w*V,Y+=R*K,H=Y>>>13,Y&=8191,Y+=L*M,Y+=$*l,Y+=E*o,Y+=A*b,Y+=y*m,H+=Y>>>13,Y&=8191,H=(H<<2)+H|0,H=H+ee|0,ee=H&8191,H=H>>>13,k+=H,D=ee,C=k,x=ae,w=T,R=I,L=S,$=a,E=v,A=z,y=Y,h+=16,d-=16}this._h[0]=D,this._h[1]=C,this._h[2]=x,this._h[3]=w,this._h[4]=R,this._h[5]=L,this._h[6]=$,this._h[7]=E,this._h[8]=A,this._h[9]=y},c.prototype.finish=function(u,h){h===void 0&&(h=0);var d=new Uint16Array(10),g,D,C,x;if(this._leftover){for(x=this._leftover,this._buffer[x++]=1;x<16;x++)this._buffer[x]=0;this._fin=1,this._blocks(this._buffer,0,16)}for(g=this._h[1]>>>13,this._h[1]&=8191,x=2;x<10;x++)this._h[x]+=g,g=this._h[x]>>>13,this._h[x]&=8191;for(this._h[0]+=g*5,g=this._h[0]>>>13,this._h[0]&=8191,this._h[1]+=g,g=this._h[1]>>>13,this._h[1]&=8191,this._h[2]+=g,d[0]=this._h[0]+5,g=d[0]>>>13,d[0]&=8191,x=1;x<10;x++)d[x]=this._h[x]+g,g=d[x]>>>13,d[x]&=8191;for(d[9]-=1<<13,D=(g^1)-1,x=0;x<10;x++)d[x]&=D;for(D=~D,x=0;x<10;x++)this._h[x]=this._h[x]&D|d[x];for(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,C=this._h[0]+this._pad[0],this._h[0]=C&65535,x=1;x<8;x++)C=(this._h[x]+this._pad[x]|0)+(C>>>16)|0,this._h[x]=C&65535;return u[h+0]=this._h[0]>>>0,u[h+1]=this._h[0]>>>8,u[h+2]=this._h[1]>>>0,u[h+3]=this._h[1]>>>8,u[h+4]=this._h[2]>>>0,u[h+5]=this._h[2]>>>8,u[h+6]=this._h[3]>>>0,u[h+7]=this._h[3]>>>8,u[h+8]=this._h[4]>>>0,u[h+9]=this._h[4]>>>8,u[h+10]=this._h[5]>>>0,u[h+11]=this._h[5]>>>8,u[h+12]=this._h[6]>>>0,u[h+13]=this._h[6]>>>8,u[h+14]=this._h[7]>>>0,u[h+15]=this._h[7]>>>8,this._finished=!0,this},c.prototype.update=function(u){var h=0,d=u.length,g;if(this._leftover){g=16-this._leftover,g>d&&(g=d);for(var D=0;D<g;D++)this._buffer[this._leftover+D]=u[h+D];if(d-=g,h+=g,this._leftover+=g,this._leftover<16)return this;this._blocks(this._buffer,0,16),this._leftover=0}if(d>=16&&(g=d-d%16,this._blocks(u,h,g),h+=g,d-=g),d){for(var D=0;D<d;D++)this._buffer[this._leftover+D]=u[h+D];this._leftover+=d}return this},c.prototype.digest=function(){if(this._finished)throw new Error("Poly1305 was finished");var u=new Uint8Array(16);return this.finish(u),u},c.prototype.clean=function(){return r.wipe(this._buffer),r.wipe(this._r),r.wipe(this._h),r.wipe(this._pad),this._leftover=0,this._fin=0,this._finished=!0,this},c}();t.Poly1305=i;function n(c,u){var h=new i(c);h.update(u);var d=h.digest();return h.clean(),d}t.oneTimeAuth=n;function s(c,u){return c.length!==t.DIGEST_LENGTH||u.length!==t.DIGEST_LENGTH?!1:e.equal(c,u)}t.equal=s}(ss),function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=Vr,r=ss,i=pt,n=re,s=Kt;t.KEY_LENGTH=32,t.NONCE_LENGTH=12,t.TAG_LENGTH=16;var c=new Uint8Array(16),u=function(){function h(d){if(this.nonceLength=t.NONCE_LENGTH,this.tagLength=t.TAG_LENGTH,d.length!==t.KEY_LENGTH)throw new Error("ChaCha20Poly1305 needs 32-byte key");this._key=new Uint8Array(d)}return h.prototype.seal=function(d,g,D,C){if(d.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");var x=new Uint8Array(16);x.set(d,x.length-d.length);var w=new Uint8Array(32);e.stream(this._key,x,w,4);var R=g.length+this.tagLength,L;if(C){if(C.length!==R)throw new Error("ChaCha20Poly1305: incorrect destination length");L=C}else L=new Uint8Array(R);return e.streamXOR(this._key,x,g,L,4),this._authenticate(L.subarray(L.length-this.tagLength,L.length),w,L.subarray(0,L.length-this.tagLength),D),i.wipe(x),L},h.prototype.open=function(d,g,D,C){if(d.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");if(g.length<this.tagLength)return null;var x=new Uint8Array(16);x.set(d,x.length-d.length);var w=new Uint8Array(32);e.stream(this._key,x,w,4);var R=new Uint8Array(this.tagLength);if(this._authenticate(R,w,g.subarray(0,g.length-this.tagLength),D),!s.equal(R,g.subarray(g.length-this.tagLength,g.length)))return null;var L=g.length-this.tagLength,$;if(C){if(C.length!==L)throw new Error("ChaCha20Poly1305: incorrect destination length");$=C}else $=new Uint8Array(L);return e.streamXOR(this._key,x,g.subarray(0,g.length-this.tagLength),$,4),i.wipe(x),$},h.prototype.clean=function(){return i.wipe(this._key),this},h.prototype._authenticate=function(d,g,D,C){var x=new r.Poly1305(g);C&&(x.update(C),C.length%16>0&&x.update(c.subarray(C.length%16))),x.update(D),D.length%16>0&&x.update(c.subarray(D.length%16));var w=new Uint8Array(8);C&&n.writeUint64LE(C.length,w),x.update(w),n.writeUint64LE(D.length,w),x.update(w);for(var R=x.digest(),L=0;L<R.length;L++)d[L]=R[L];x.clean(),i.wipe(R),i.wipe(w)},h}();t.ChaCha20Poly1305=u}(Ai);var as={},br={},Pi={};Object.defineProperty(Pi,"__esModule",{value:!0});function Fc(t){return typeof t.saveState<"u"&&typeof t.restoreState<"u"&&typeof t.cleanSavedState<"u"}Pi.isSerializableHash=Fc,Object.defineProperty(br,"__esModule",{value:!0});var Ot=Pi,Uc=Kt,Mc=pt,cs=function(){function t(e,r){this._finished=!1,this._inner=new e,this._outer=new e,this.blockSize=this._outer.blockSize,this.digestLength=this._outer.digestLength;var i=new Uint8Array(this.blockSize);r.length>this.blockSize?this._inner.update(r).finish(i).clean():i.set(r);for(var n=0;n<i.length;n++)i[n]^=54;this._inner.update(i);for(var n=0;n<i.length;n++)i[n]^=106;this._outer.update(i),Ot.isSerializableHash(this._inner)&&Ot.isSerializableHash(this._outer)&&(this._innerKeyedState=this._inner.saveState(),this._outerKeyedState=this._outer.saveState()),Mc.wipe(i)}return t.prototype.reset=function(){if(!Ot.isSerializableHash(this._inner)||!Ot.isSerializableHash(this._outer))throw new Error("hmac: can't reset() because hash doesn't implement restoreState()");return this._inner.restoreState(this._innerKeyedState),this._outer.restoreState(this._outerKeyedState),this._finished=!1,this},t.prototype.clean=function(){Ot.isSerializableHash(this._inner)&&this._inner.cleanSavedState(this._innerKeyedState),Ot.isSerializableHash(this._outer)&&this._outer.cleanSavedState(this._outerKeyedState),this._inner.clean(),this._outer.clean()},t.prototype.update=function(e){return this._inner.update(e),this},t.prototype.finish=function(e){return this._finished?(this._outer.finish(e),this):(this._inner.finish(e),this._outer.update(e.subarray(0,this.digestLength)).finish(e),this._finished=!0,this)},t.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},t.prototype.saveState=function(){if(!Ot.isSerializableHash(this._inner))throw new Error("hmac: can't saveState() because hash doesn't implement it");return this._inner.saveState()},t.prototype.restoreState=function(e){if(!Ot.isSerializableHash(this._inner)||!Ot.isSerializableHash(this._outer))throw new Error("hmac: can't restoreState() because hash doesn't implement it");return this._inner.restoreState(e),this._outer.restoreState(this._outerKeyedState),this._finished=!1,this},t.prototype.cleanSavedState=function(e){if(!Ot.isSerializableHash(this._inner))throw new Error("hmac: can't cleanSavedState() because hash doesn't implement it");this._inner.cleanSavedState(e)},t}();br.HMAC=cs;function jc(t,e,r){var i=new cs(t,e);i.update(r);var n=i.digest();return i.clean(),n}br.hmac=jc,br.equal=Uc.equal,Object.defineProperty(as,"__esModule",{value:!0});var us=br,hs=pt,$c=function(){function t(e,r,i,n){i===void 0&&(i=new Uint8Array(0)),this._counter=new Uint8Array(1),this._hash=e,this._info=n;var s=us.hmac(this._hash,i,r);this._hmac=new us.HMAC(e,s),this._buffer=new Uint8Array(this._hmac.digestLength),this._bufpos=this._buffer.length}return t.prototype._fillBuffer=function(){this._counter[0]++;var e=this._counter[0];if(e===0)throw new Error("hkdf: cannot expand more");this._hmac.reset(),e>1&&this._hmac.update(this._buffer),this._info&&this._hmac.update(this._info),this._hmac.update(this._counter),this._hmac.finish(this._buffer),this._bufpos=0},t.prototype.expand=function(e){for(var r=new Uint8Array(e),i=0;i<r.length;i++)this._bufpos===this._buffer.length&&this._fillBuffer(),r[i]=this._buffer[this._bufpos++];return r},t.prototype.clean=function(){this._hmac.clean(),hs.wipe(this._buffer),hs.wipe(this._counter),this._bufpos=0},t}(),Bc=as.HKDF=$c,sr={},Ri={},Fi={};Object.defineProperty(Fi,"__esModule",{value:!0});var fs=65536,zc=function(){function t(){this.isAvailable=!1,this.isInstantiated=!1;var e=typeof self<"u"?self.crypto||self.msCrypto:null;e&&e.getRandomValues&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}return t.prototype.randomBytes=function(e){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");for(var r=new Uint8Array(e),i=0;i<r.length;i+=fs)this._crypto.getRandomValues(r.subarray(i,i+Math.min(r.length-i,fs)));return r},t}();Fi.BrowserRandomSource=zc;function Hc(t){throw new Error('Could not dynamically require "'+t+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var Ui={},Kc={},qc=Object.freeze({__proto__:null,default:Kc}),Vc=bi(qc);Object.defineProperty(Ui,"__esModule",{value:!0});var Gc=pt,Wc=function(){function t(){if(this.isAvailable=!1,this.isInstantiated=!1,typeof Hc<"u"){var e=Vc;e&&e.randomBytes&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}}return t.prototype.randomBytes=function(e){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");var r=this._crypto.randomBytes(e);if(r.length!==e)throw new Error("NodeRandomSource: got fewer bytes than requested");for(var i=new Uint8Array(e),n=0;n<i.length;n++)i[n]=r[n];return Gc.wipe(r),i},t}();Ui.NodeRandomSource=Wc,Object.defineProperty(Ri,"__esModule",{value:!0});var kc=Fi,Yc=Ui,Jc=function(){function t(){if(this.isAvailable=!1,this.name="",this._source=new kc.BrowserRandomSource,this._source.isAvailable){this.isAvailable=!0,this.name="Browser";return}if(this._source=new Yc.NodeRandomSource,this._source.isAvailable){this.isAvailable=!0,this.name="Node";return}}return t.prototype.randomBytes=function(e){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(e)},t}();Ri.SystemRandomSource=Jc,function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=Ri,r=re,i=pt;t.defaultRandomSource=new e.SystemRandomSource;function n(d,g){return g===void 0&&(g=t.defaultRandomSource),g.randomBytes(d)}t.randomBytes=n;function s(d){d===void 0&&(d=t.defaultRandomSource);var g=n(4,d),D=r.readUint32LE(g);return i.wipe(g),D}t.randomUint32=s;var c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function u(d,g,D){if(g===void 0&&(g=c),D===void 0&&(D=t.defaultRandomSource),g.length<2)throw new Error("randomString charset is too short");if(g.length>256)throw new Error("randomString charset is too long");for(var C="",x=g.length,w=256-256%x;d>0;){for(var R=n(Math.ceil(d*256/w),D),L=0;L<R.length&&d>0;L++){var $=R[L];$<w&&(C+=g.charAt($%x),d--)}i.wipe(R)}return C}t.randomString=u;function h(d,g,D){g===void 0&&(g=c),D===void 0&&(D=t.defaultRandomSource);var C=Math.ceil(d/(Math.log(g.length)/Math.LN2));return u(C,g,D)}t.randomStringForEntropy=h}(sr);var kr={};(function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=re,r=pt;t.DIGEST_LENGTH=32,t.BLOCK_SIZE=64;var i=function(){function u(){this.digestLength=t.DIGEST_LENGTH,this.blockSize=t.BLOCK_SIZE,this._state=new Int32Array(8),this._temp=new Int32Array(64),this._buffer=new Uint8Array(128),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this.reset()}return u.prototype._initState=function(){this._state[0]=1779033703,this._state[1]=3144134277,this._state[2]=1013904242,this._state[3]=2773480762,this._state[4]=1359893119,this._state[5]=2600822924,this._state[6]=528734635,this._state[7]=1541459225},u.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},u.prototype.clean=function(){r.wipe(this._buffer),r.wipe(this._temp),this.reset()},u.prototype.update=function(h,d){if(d===void 0&&(d=h.length),this._finished)throw new Error("SHA256: can't update because hash was finished.");var g=0;if(this._bytesHashed+=d,this._bufferLength>0){for(;this._bufferLength<this.blockSize&&d>0;)this._buffer[this._bufferLength++]=h[g++],d--;this._bufferLength===this.blockSize&&(s(this._temp,this._state,this._buffer,0,this.blockSize),this._bufferLength=0)}for(d>=this.blockSize&&(g=s(this._temp,this._state,h,g,d),d%=this.blockSize);d>0;)this._buffer[this._bufferLength++]=h[g++],d--;return this},u.prototype.finish=function(h){if(!this._finished){var d=this._bytesHashed,g=this._bufferLength,D=d/536870912|0,C=d<<3,x=d%64<56?64:128;this._buffer[g]=128;for(var w=g+1;w<x-8;w++)this._buffer[w]=0;e.writeUint32BE(D,this._buffer,x-8),e.writeUint32BE(C,this._buffer,x-4),s(this._temp,this._state,this._buffer,0,x),this._finished=!0}for(var w=0;w<this.digestLength/4;w++)e.writeUint32BE(this._state[w],h,w*4);return this},u.prototype.digest=function(){var h=new Uint8Array(this.digestLength);return this.finish(h),h},u.prototype.saveState=function(){if(this._finished)throw new Error("SHA256: cannot save finished state");return{state:new Int32Array(this._state),buffer:this._bufferLength>0?new Uint8Array(this._buffer):void 0,bufferLength:this._bufferLength,bytesHashed:this._bytesHashed}},u.prototype.restoreState=function(h){return this._state.set(h.state),this._bufferLength=h.bufferLength,h.buffer&&this._buffer.set(h.buffer),this._bytesHashed=h.bytesHashed,this._finished=!1,this},u.prototype.cleanSavedState=function(h){r.wipe(h.state),h.buffer&&r.wipe(h.buffer),h.bufferLength=0,h.bytesHashed=0},u}();t.SHA256=i;var n=new Int32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);function s(u,h,d,g,D){for(;D>=64;){for(var C=h[0],x=h[1],w=h[2],R=h[3],L=h[4],$=h[5],E=h[6],A=h[7],y=0;y<16;y++){var m=g+y*4;u[y]=e.readUint32BE(d,m)}for(var y=16;y<64;y++){var b=u[y-2],o=(b>>>17|b<<32-17)^(b>>>19|b<<32-19)^b>>>10;b=u[y-15];var l=(b>>>7|b<<32-7)^(b>>>18|b<<32-18)^b>>>3;u[y]=(o+u[y-7]|0)+(l+u[y-16]|0)}for(var y=0;y<64;y++){var o=(((L>>>6|L<<26)^(L>>>11|L<<21)^(L>>>25|L<<7))+(L&$^~L&E)|0)+(A+(n[y]+u[y]|0)|0)|0,l=((C>>>2|C<<32-2)^(C>>>13|C<<32-13)^(C>>>22|C<<32-22))+(C&x^C&w^x&w)|0;A=E,E=$,$=L,L=R+o|0,R=w,w=x,x=C,C=o+l|0}h[0]+=C,h[1]+=x,h[2]+=w,h[3]+=R,h[4]+=L,h[5]+=$,h[6]+=E,h[7]+=A,g+=64,D-=64}return g}function c(u){var h=new i;h.update(u);var d=h.digest();return h.clean(),d}t.hash=c})(kr);var Mi={};(function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=sr,r=pt;t.PUBLIC_KEY_LENGTH=32,t.SECRET_KEY_LENGTH=32,t.SHARED_KEY_LENGTH=32;function i(y){var m=new Float64Array(16);if(y)for(var b=0;b<y.length;b++)m[b]=y[b];return m}var n=new Uint8Array(32);n[0]=9;var s=i([56129,1]);function c(y){for(var m=1,b=0;b<16;b++){var o=y[b]+m+65535;m=Math.floor(o/65536),y[b]=o-m*65536}y[0]+=m-1+37*(m-1)}function u(y,m,b){for(var o=~(b-1),l=0;l<16;l++){var M=o&(y[l]^m[l]);y[l]^=M,m[l]^=M}}function h(y,m){for(var b=i(),o=i(),l=0;l<16;l++)o[l]=m[l];c(o),c(o),c(o);for(var M=0;M<2;M++){b[0]=o[0]-65517;for(var l=1;l<15;l++)b[l]=o[l]-65535-(b[l-1]>>16&1),b[l-1]&=65535;b[15]=o[15]-32767-(b[14]>>16&1);var K=b[15]>>16&1;b[14]&=65535,u(o,b,1-K)}for(var l=0;l<16;l++)y[2*l]=o[l]&255,y[2*l+1]=o[l]>>8}function d(y,m){for(var b=0;b<16;b++)y[b]=m[2*b]+(m[2*b+1]<<8);y[15]&=32767}function g(y,m,b){for(var o=0;o<16;o++)y[o]=m[o]+b[o]}function D(y,m,b){for(var o=0;o<16;o++)y[o]=m[o]-b[o]}function C(y,m,b){var o,l,M=0,K=0,V=0,J=0,X=0,f=0,_=0,U=0,q=0,P=0,N=0,j=0,B=0,Q=0,H=0,ee=0,k=0,ae=0,T=0,I=0,S=0,a=0,v=0,z=0,Y=0,fe=0,ye=0,de=0,me=0,Fe=0,Ce=0,ve=b[0],pe=b[1],le=b[2],ue=b[3],ce=b[4],oe=b[5],se=b[6],te=b[7],he=b[8],ge=b[9],ie=b[10],_e=b[11],be=b[12],Ee=b[13],De=b[14],we=b[15];o=m[0],M+=o*ve,K+=o*pe,V+=o*le,J+=o*ue,X+=o*ce,f+=o*oe,_+=o*se,U+=o*te,q+=o*he,P+=o*ge,N+=o*ie,j+=o*_e,B+=o*be,Q+=o*Ee,H+=o*De,ee+=o*we,o=m[1],K+=o*ve,V+=o*pe,J+=o*le,X+=o*ue,f+=o*ce,_+=o*oe,U+=o*se,q+=o*te,P+=o*he,N+=o*ge,j+=o*ie,B+=o*_e,Q+=o*be,H+=o*Ee,ee+=o*De,k+=o*we,o=m[2],V+=o*ve,J+=o*pe,X+=o*le,f+=o*ue,_+=o*ce,U+=o*oe,q+=o*se,P+=o*te,N+=o*he,j+=o*ge,B+=o*ie,Q+=o*_e,H+=o*be,ee+=o*Ee,k+=o*De,ae+=o*we,o=m[3],J+=o*ve,X+=o*pe,f+=o*le,_+=o*ue,U+=o*ce,q+=o*oe,P+=o*se,N+=o*te,j+=o*he,B+=o*ge,Q+=o*ie,H+=o*_e,ee+=o*be,k+=o*Ee,ae+=o*De,T+=o*we,o=m[4],X+=o*ve,f+=o*pe,_+=o*le,U+=o*ue,q+=o*ce,P+=o*oe,N+=o*se,j+=o*te,B+=o*he,Q+=o*ge,H+=o*ie,ee+=o*_e,k+=o*be,ae+=o*Ee,T+=o*De,I+=o*we,o=m[5],f+=o*ve,_+=o*pe,U+=o*le,q+=o*ue,P+=o*ce,N+=o*oe,j+=o*se,B+=o*te,Q+=o*he,H+=o*ge,ee+=o*ie,k+=o*_e,ae+=o*be,T+=o*Ee,I+=o*De,S+=o*we,o=m[6],_+=o*ve,U+=o*pe,q+=o*le,P+=o*ue,N+=o*ce,j+=o*oe,B+=o*se,Q+=o*te,H+=o*he,ee+=o*ge,k+=o*ie,ae+=o*_e,T+=o*be,I+=o*Ee,S+=o*De,a+=o*we,o=m[7],U+=o*ve,q+=o*pe,P+=o*le,N+=o*ue,j+=o*ce,B+=o*oe,Q+=o*se,H+=o*te,ee+=o*he,k+=o*ge,ae+=o*ie,T+=o*_e,I+=o*be,S+=o*Ee,a+=o*De,v+=o*we,o=m[8],q+=o*ve,P+=o*pe,N+=o*le,j+=o*ue,B+=o*ce,Q+=o*oe,H+=o*se,ee+=o*te,k+=o*he,ae+=o*ge,T+=o*ie,I+=o*_e,S+=o*be,a+=o*Ee,v+=o*De,z+=o*we,o=m[9],P+=o*ve,N+=o*pe,j+=o*le,B+=o*ue,Q+=o*ce,H+=o*oe,ee+=o*se,k+=o*te,ae+=o*he,T+=o*ge,I+=o*ie,S+=o*_e,a+=o*be,v+=o*Ee,z+=o*De,Y+=o*we,o=m[10],N+=o*ve,j+=o*pe,B+=o*le,Q+=o*ue,H+=o*ce,ee+=o*oe,k+=o*se,ae+=o*te,T+=o*he,I+=o*ge,S+=o*ie,a+=o*_e,v+=o*be,z+=o*Ee,Y+=o*De,fe+=o*we,o=m[11],j+=o*ve,B+=o*pe,Q+=o*le,H+=o*ue,ee+=o*ce,k+=o*oe,ae+=o*se,T+=o*te,I+=o*he,S+=o*ge,a+=o*ie,v+=o*_e,z+=o*be,Y+=o*Ee,fe+=o*De,ye+=o*we,o=m[12],B+=o*ve,Q+=o*pe,H+=o*le,ee+=o*ue,k+=o*ce,ae+=o*oe,T+=o*se,I+=o*te,S+=o*he,a+=o*ge,v+=o*ie,z+=o*_e,Y+=o*be,fe+=o*Ee,ye+=o*De,de+=o*we,o=m[13],Q+=o*ve,H+=o*pe,ee+=o*le,k+=o*ue,ae+=o*ce,T+=o*oe,I+=o*se,S+=o*te,a+=o*he,v+=o*ge,z+=o*ie,Y+=o*_e,fe+=o*be,ye+=o*Ee,de+=o*De,me+=o*we,o=m[14],H+=o*ve,ee+=o*pe,k+=o*le,ae+=o*ue,T+=o*ce,I+=o*oe,S+=o*se,a+=o*te,v+=o*he,z+=o*ge,Y+=o*ie,fe+=o*_e,ye+=o*be,de+=o*Ee,me+=o*De,Fe+=o*we,o=m[15],ee+=o*ve,k+=o*pe,ae+=o*le,T+=o*ue,I+=o*ce,S+=o*oe,a+=o*se,v+=o*te,z+=o*he,Y+=o*ge,fe+=o*ie,ye+=o*_e,de+=o*be,me+=o*Ee,Fe+=o*De,Ce+=o*we,M+=38*k,K+=38*ae,V+=38*T,J+=38*I,X+=38*S,f+=38*a,_+=38*v,U+=38*z,q+=38*Y,P+=38*fe,N+=38*ye,j+=38*de,B+=38*me,Q+=38*Fe,H+=38*Ce,l=1,o=M+l+65535,l=Math.floor(o/65536),M=o-l*65536,o=K+l+65535,l=Math.floor(o/65536),K=o-l*65536,o=V+l+65535,l=Math.floor(o/65536),V=o-l*65536,o=J+l+65535,l=Math.floor(o/65536),J=o-l*65536,o=X+l+65535,l=Math.floor(o/65536),X=o-l*65536,o=f+l+65535,l=Math.floor(o/65536),f=o-l*65536,o=_+l+65535,l=Math.floor(o/65536),_=o-l*65536,o=U+l+65535,l=Math.floor(o/65536),U=o-l*65536,o=q+l+65535,l=Math.floor(o/65536),q=o-l*65536,o=P+l+65535,l=Math.floor(o/65536),P=o-l*65536,o=N+l+65535,l=Math.floor(o/65536),N=o-l*65536,o=j+l+65535,l=Math.floor(o/65536),j=o-l*65536,o=B+l+65535,l=Math.floor(o/65536),B=o-l*65536,o=Q+l+65535,l=Math.floor(o/65536),Q=o-l*65536,o=H+l+65535,l=Math.floor(o/65536),H=o-l*65536,o=ee+l+65535,l=Math.floor(o/65536),ee=o-l*65536,M+=l-1+37*(l-1),l=1,o=M+l+65535,l=Math.floor(o/65536),M=o-l*65536,o=K+l+65535,l=Math.floor(o/65536),K=o-l*65536,o=V+l+65535,l=Math.floor(o/65536),V=o-l*65536,o=J+l+65535,l=Math.floor(o/65536),J=o-l*65536,o=X+l+65535,l=Math.floor(o/65536),X=o-l*65536,o=f+l+65535,l=Math.floor(o/65536),f=o-l*65536,o=_+l+65535,l=Math.floor(o/65536),_=o-l*65536,o=U+l+65535,l=Math.floor(o/65536),U=o-l*65536,o=q+l+65535,l=Math.floor(o/65536),q=o-l*65536,o=P+l+65535,l=Math.floor(o/65536),P=o-l*65536,o=N+l+65535,l=Math.floor(o/65536),N=o-l*65536,o=j+l+65535,l=Math.floor(o/65536),j=o-l*65536,o=B+l+65535,l=Math.floor(o/65536),B=o-l*65536,o=Q+l+65535,l=Math.floor(o/65536),Q=o-l*65536,o=H+l+65535,l=Math.floor(o/65536),H=o-l*65536,o=ee+l+65535,l=Math.floor(o/65536),ee=o-l*65536,M+=l-1+37*(l-1),y[0]=M,y[1]=K,y[2]=V,y[3]=J,y[4]=X,y[5]=f,y[6]=_,y[7]=U,y[8]=q,y[9]=P,y[10]=N,y[11]=j,y[12]=B,y[13]=Q,y[14]=H,y[15]=ee}function x(y,m){C(y,m,m)}function w(y,m){for(var b=i(),o=0;o<16;o++)b[o]=m[o];for(var o=253;o>=0;o--)x(b,b),o!==2&&o!==4&&C(b,b,m);for(var o=0;o<16;o++)y[o]=b[o]}function R(y,m){for(var b=new Uint8Array(32),o=new Float64Array(80),l=i(),M=i(),K=i(),V=i(),J=i(),X=i(),f=0;f<31;f++)b[f]=y[f];b[31]=y[31]&127|64,b[0]&=248,d(o,m);for(var f=0;f<16;f++)M[f]=o[f];l[0]=V[0]=1;for(var f=254;f>=0;--f){var _=b[f>>>3]>>>(f&7)&1;u(l,M,_),u(K,V,_),g(J,l,K),D(l,l,K),g(K,M,V),D(M,M,V),x(V,J),x(X,l),C(l,K,l),C(K,M,J),g(J,l,K),D(l,l,K),x(M,l),D(K,V,X),C(l,K,s),g(l,l,V),C(K,K,l),C(l,V,X),C(V,M,o),x(M,J),u(l,M,_),u(K,V,_)}for(var f=0;f<16;f++)o[f+16]=l[f],o[f+32]=K[f],o[f+48]=M[f],o[f+64]=V[f];var U=o.subarray(32),q=o.subarray(16);w(U,U),C(q,q,U);var P=new Uint8Array(32);return h(P,q),P}t.scalarMult=R;function L(y){return R(y,n)}t.scalarMultBase=L;function $(y){if(y.length!==t.SECRET_KEY_LENGTH)throw new Error("x25519: seed must be "+t.SECRET_KEY_LENGTH+" bytes");var m=new Uint8Array(y),b=L(m);return{publicKey:b,secretKey:m}}t.generateKeyPairFromSeed=$;function E(y){var m=e.randomBytes(32,y),b=$(m);return r.wipe(m),b}t.generateKeyPair=E;function A(y,m,b){if(b===void 0&&(b=!1),y.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect secret key length");if(m.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect public key length");var o=R(y,m);if(b){for(var l=0,M=0;M<o.length;M++)l|=o[M];if(l===0)throw new Error("X25519: invalid shared key")}return o}t.sharedKey=A})(Mi);function ls(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?globalThis.Buffer.allocUnsafe(t):new Uint8Array(t)}function ji(t,e){e||(e=t.reduce((n,s)=>n+s.length,0));const r=ls(e);let i=0;for(const n of t)r.set(n,i),i+=n.length;return r}function Xc(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),i=0;i<r.length;i++)r[i]=255;for(var n=0;n<t.length;n++){var s=t.charAt(n),c=s.charCodeAt(0);if(r[c]!==255)throw new TypeError(s+" is ambiguous");r[c]=n}var u=t.length,h=t.charAt(0),d=Math.log(u)/Math.log(256),g=Math.log(256)/Math.log(u);function D(w){if(w instanceof Uint8Array||(ArrayBuffer.isView(w)?w=new Uint8Array(w.buffer,w.byteOffset,w.byteLength):Array.isArray(w)&&(w=Uint8Array.from(w))),!(w instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(w.length===0)return"";for(var R=0,L=0,$=0,E=w.length;$!==E&&w[$]===0;)$++,R++;for(var A=(E-$)*g+1>>>0,y=new Uint8Array(A);$!==E;){for(var m=w[$],b=0,o=A-1;(m!==0||b<L)&&o!==-1;o--,b++)m+=256*y[o]>>>0,y[o]=m%u>>>0,m=m/u>>>0;if(m!==0)throw new Error("Non-zero carry");L=b,$++}for(var l=A-L;l!==A&&y[l]===0;)l++;for(var M=h.repeat(R);l<A;++l)M+=t.charAt(y[l]);return M}function C(w){if(typeof w!="string")throw new TypeError("Expected String");if(w.length===0)return new Uint8Array;var R=0;if(w[R]!==" "){for(var L=0,$=0;w[R]===h;)L++,R++;for(var E=(w.length-R)*d+1>>>0,A=new Uint8Array(E);w[R];){var y=r[w.charCodeAt(R)];if(y===255)return;for(var m=0,b=E-1;(y!==0||m<$)&&b!==-1;b--,m++)y+=u*A[b]>>>0,A[b]=y%256>>>0,y=y/256>>>0;if(y!==0)throw new Error("Non-zero carry");$=m,R++}if(w[R]!==" "){for(var o=E-$;o!==E&&A[o]===0;)o++;for(var l=new Uint8Array(L+(E-o)),M=L;o!==E;)l[M++]=A[o++];return l}}}function x(w){var R=C(w);if(R)return R;throw new Error(`Non-${e} character`)}return{encode:D,decodeUnsafe:C,decode:x}}var Zc=Xc,Qc=Zc;const ds=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")},eu=t=>new TextEncoder().encode(t),tu=t=>new TextDecoder().decode(t);class ru{constructor(e,r,i){this.name=e,this.prefix=r,this.baseEncode=i}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class iu{constructor(e,r,i){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=i}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return ps(this,e)}}class nu{constructor(e){this.decoders=e}or(e){return ps(this,e)}decode(e){const r=e[0],i=this.decoders[r];if(i)return i.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const ps=(t,e)=>new nu({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}});class su{constructor(e,r,i,n){this.name=e,this.prefix=r,this.baseEncode=i,this.baseDecode=n,this.encoder=new ru(e,r,i),this.decoder=new iu(e,r,n)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const Yr=({name:t,prefix:e,encode:r,decode:i})=>new su(t,e,r,i),mr=({prefix:t,name:e,alphabet:r})=>{const{encode:i,decode:n}=Qc(r,e);return Yr({prefix:t,name:e,encode:i,decode:s=>ds(n(s))})},ou=(t,e,r,i)=>{const n={};for(let g=0;g<e.length;++g)n[e[g]]=g;let s=t.length;for(;t[s-1]==="=";)--s;const c=new Uint8Array(s*r/8|0);let u=0,h=0,d=0;for(let g=0;g<s;++g){const D=n[t[g]];if(D===void 0)throw new SyntaxError(`Non-${i} character`);h=h<<r|D,u+=r,u>=8&&(u-=8,c[d++]=255&h>>u)}if(u>=r||255&h<<8-u)throw new SyntaxError("Unexpected end of data");return c},au=(t,e,r)=>{const i=e[e.length-1]==="=",n=(1<<r)-1;let s="",c=0,u=0;for(let h=0;h<t.length;++h)for(u=u<<8|t[h],c+=8;c>r;)c-=r,s+=e[n&u>>c];if(c&&(s+=e[n&u<<r-c]),i)for(;s.length*r&7;)s+="=";return s},tt=({name:t,prefix:e,bitsPerChar:r,alphabet:i})=>Yr({prefix:e,name:t,encode(n){return au(n,i,r)},decode(n){return ou(n,i,r,t)}}),cu=Yr({prefix:"\0",name:"identity",encode:t=>tu(t),decode:t=>eu(t)});var uu=Object.freeze({__proto__:null,identity:cu});const hu=tt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var fu=Object.freeze({__proto__:null,base2:hu});const lu=tt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var du=Object.freeze({__proto__:null,base8:lu});const pu=mr({prefix:"9",name:"base10",alphabet:"0123456789"});var gu=Object.freeze({__proto__:null,base10:pu});const vu=tt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),yu=tt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var _u=Object.freeze({__proto__:null,base16:vu,base16upper:yu});const bu=tt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),mu=tt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),wu=tt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Eu=tt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Du=tt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),xu=tt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Su=tt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Ou=tt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Au=tt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Iu=Object.freeze({__proto__:null,base32:bu,base32upper:mu,base32pad:wu,base32padupper:Eu,base32hex:Du,base32hexupper:xu,base32hexpad:Su,base32hexpadupper:Ou,base32z:Au});const Tu=mr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Cu=mr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Lu=Object.freeze({__proto__:null,base36:Tu,base36upper:Cu});const Nu=mr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Pu=mr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Ru=Object.freeze({__proto__:null,base58btc:Nu,base58flickr:Pu});const Fu=tt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Uu=tt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Mu=tt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),ju=tt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var $u=Object.freeze({__proto__:null,base64:Fu,base64pad:Uu,base64url:Mu,base64urlpad:ju});const gs=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),Bu=gs.reduce((t,e,r)=>(t[r]=e,t),[]),zu=gs.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function Hu(t){return t.reduce((e,r)=>(e+=Bu[r],e),"")}function Ku(t){const e=[];for(const r of t){const i=zu[r.codePointAt(0)];if(i===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(i)}return new Uint8Array(e)}const qu=Yr({prefix:"\u{1F680}",name:"base256emoji",encode:Hu,decode:Ku});var Vu=Object.freeze({__proto__:null,base256emoji:qu}),Gu=ys,vs=128,Wu=127,ku=~Wu,Yu=Math.pow(2,31);function ys(t,e,r){e=e||[],r=r||0;for(var i=r;t>=Yu;)e[r++]=t&255|vs,t/=128;for(;t&ku;)e[r++]=t&255|vs,t>>>=7;return e[r]=t|0,ys.bytes=r-i+1,e}var Ju=$i,Xu=128,_s=127;function $i(t,i){var r=0,i=i||0,n=0,s=i,c,u=t.length;do{if(s>=u)throw $i.bytes=0,new RangeError("Could not decode varint");c=t[s++],r+=n<28?(c&_s)<<n:(c&_s)*Math.pow(2,n),n+=7}while(c>=Xu);return $i.bytes=s-i,r}var Zu=Math.pow(2,7),Qu=Math.pow(2,14),eh=Math.pow(2,21),th=Math.pow(2,28),rh=Math.pow(2,35),ih=Math.pow(2,42),nh=Math.pow(2,49),sh=Math.pow(2,56),oh=Math.pow(2,63),ah=function(t){return t<Zu?1:t<Qu?2:t<eh?3:t<th?4:t<rh?5:t<ih?6:t<nh?7:t<sh?8:t<oh?9:10},ch={encode:Gu,decode:Ju,encodingLength:ah},bs=ch;const ms=(t,e,r=0)=>(bs.encode(t,e,r),e),ws=t=>bs.encodingLength(t),Bi=(t,e)=>{const r=e.byteLength,i=ws(t),n=i+ws(r),s=new Uint8Array(n+r);return ms(t,s,0),ms(r,s,i),s.set(e,n),new uh(t,r,e,s)};class uh{constructor(e,r,i,n){this.code=e,this.size=r,this.digest=i,this.bytes=n}}const Es=({name:t,code:e,encode:r})=>new hh(t,e,r);class hh{constructor(e,r,i){this.name=e,this.code=r,this.encode=i}digest(e){if(e instanceof Uint8Array){const r=this.encode(e);return r instanceof Uint8Array?Bi(this.code,r):r.then(i=>Bi(this.code,i))}else throw Error("Unknown type, must be binary type")}}const Ds=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),fh=Es({name:"sha2-256",code:18,encode:Ds("SHA-256")}),lh=Es({name:"sha2-512",code:19,encode:Ds("SHA-512")});var dh=Object.freeze({__proto__:null,sha256:fh,sha512:lh});const xs=0,ph="identity",Ss=ds;var gh=Object.freeze({__proto__:null,identity:{code:xs,name:ph,encode:Ss,digest:t=>Bi(xs,Ss(t))}});new TextEncoder,new TextDecoder;const Os={...uu,...fu,...du,...gu,..._u,...Iu,...Lu,...Ru,...$u,...Vu};({...dh,...gh});function As(t,e,r,i){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:i}}}const Is=As("utf8","u",t=>{const e=new TextDecoder("utf8");return"u"+e.decode(t)},t=>new TextEncoder().encode(t.substring(1))),zi=As("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);const e=ls(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Ts={utf8:Is,"utf-8":Is,hex:Os.base16,latin1:zi,ascii:zi,binary:zi,...Os};function ht(t,e="utf8"){const r=Ts[e];if(!r)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t,"utf8"):r.decoder.decode(`${r.prefix}${t}`)}function ft(t,e="utf8"){const r=Ts[e];if(!r)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var Cs=function(t,e,r){if(r||arguments.length===2)for(var i=0,n=e.length,s;i<n;i++)(s||!(i in e))&&(s||(s=Array.prototype.slice.call(e,0,i)),s[i]=e[i]);return t.concat(s||Array.prototype.slice.call(e))},vh=function(){function t(e,r,i){this.name=e,this.version=r,this.os=i,this.type="browser"}return t}(),yh=function(){function t(e){this.version=e,this.type="node",this.name="node",this.os=process.platform}return t}(),_h=function(){function t(e,r,i,n){this.name=e,this.version=r,this.os=i,this.bot=n,this.type="bot-device"}return t}(),bh=function(){function t(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return t}(),mh=function(){function t(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return t}(),wh=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,Eh=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Ls=3,Dh=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/EdgA?\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["pie",/^Microsoft Pocket Internet Explorer\/(\d+\.\d+)$/],["pie",/^Mozilla\/\d\.\d+\s\(compatible;\s(?:MSP?IE|MSInternet Explorer) (\d+\.\d+);.*Windows CE.*\)$/],["netfront",/^Mozilla\/\d\.\d+.*NetFront\/(\d.\d)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FB[AS]V\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["curl",/^curl\/([0-9\.]+)$/],["searchbot",wh]],Ns=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Windows CE",/Windows CE|WinCE|Microsoft Pocket Internet Explorer/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]];function xh(t){return t?Ps(t):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new mh:typeof navigator<"u"?Ps(navigator.userAgent):Ah()}function Sh(t){return t!==""&&Dh.reduce(function(e,r){var i=r[0],n=r[1];if(e)return e;var s=n.exec(t);return!!s&&[i,s]},!1)}function Ps(t){var e=Sh(t);if(!e)return null;var r=e[0],i=e[1];if(r==="searchbot")return new bh;var n=i[1]&&i[1].split(".").join("_").split("_").slice(0,3);n?n.length<Ls&&(n=Cs(Cs([],n,!0),Ih(Ls-n.length),!0)):n=[];var s=n.join("."),c=Oh(t),u=Eh.exec(t);return u&&u[1]?new _h(r,s,c,u[1]):new vh(r,s,c)}function Oh(t){for(var e=0,r=Ns.length;e<r;e++){var i=Ns[e],n=i[0],s=i[1],c=s.exec(t);if(c)return n}return null}function Ah(){var t=typeof process<"u"&&process.version;return t?new yh(process.version.slice(1)):null}function Ih(t){for(var e=[],r=0;r<t;r++)e.push("0");return e}var Ie={},Rs={},Jr={};Object.defineProperty(Jr,"__esModule",{value:!0}),Jr.delay=void 0;function Th(t){return new Promise(e=>{setTimeout(()=>{e(!0)},t)})}Jr.delay=Th;var or={},Hi={},ar={};Object.defineProperty(ar,"__esModule",{value:!0}),ar.ONE_THOUSAND=ar.ONE_HUNDRED=void 0,ar.ONE_HUNDRED=100,ar.ONE_THOUSAND=1e3;var Fs={};(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.ONE_YEAR=t.FOUR_WEEKS=t.THREE_WEEKS=t.TWO_WEEKS=t.ONE_WEEK=t.THIRTY_DAYS=t.SEVEN_DAYS=t.FIVE_DAYS=t.THREE_DAYS=t.ONE_DAY=t.TWENTY_FOUR_HOURS=t.TWELVE_HOURS=t.SIX_HOURS=t.THREE_HOURS=t.ONE_HOUR=t.SIXTY_MINUTES=t.THIRTY_MINUTES=t.TEN_MINUTES=t.FIVE_MINUTES=t.ONE_MINUTE=t.SIXTY_SECONDS=t.THIRTY_SECONDS=t.TEN_SECONDS=t.FIVE_SECONDS=t.ONE_SECOND=void 0,t.ONE_SECOND=1,t.FIVE_SECONDS=5,t.TEN_SECONDS=10,t.THIRTY_SECONDS=30,t.SIXTY_SECONDS=60,t.ONE_MINUTE=t.SIXTY_SECONDS,t.FIVE_MINUTES=t.ONE_MINUTE*5,t.TEN_MINUTES=t.ONE_MINUTE*10,t.THIRTY_MINUTES=t.ONE_MINUTE*30,t.SIXTY_MINUTES=t.ONE_MINUTE*60,t.ONE_HOUR=t.SIXTY_MINUTES,t.THREE_HOURS=t.ONE_HOUR*3,t.SIX_HOURS=t.ONE_HOUR*6,t.TWELVE_HOURS=t.ONE_HOUR*12,t.TWENTY_FOUR_HOURS=t.ONE_HOUR*24,t.ONE_DAY=t.TWENTY_FOUR_HOURS,t.THREE_DAYS=t.ONE_DAY*3,t.FIVE_DAYS=t.ONE_DAY*5,t.SEVEN_DAYS=t.ONE_DAY*7,t.THIRTY_DAYS=t.ONE_DAY*30,t.ONE_WEEK=t.SEVEN_DAYS,t.TWO_WEEKS=t.ONE_WEEK*2,t.THREE_WEEKS=t.ONE_WEEK*3,t.FOUR_WEEKS=t.ONE_WEEK*4,t.ONE_YEAR=t.ONE_DAY*365})(Fs),function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(ar,t),r(Fs,t)}(Hi),Object.defineProperty(or,"__esModule",{value:!0}),or.fromMiliseconds=or.toMiliseconds=void 0;const Us=Hi;function Ch(t){return t*Us.ONE_THOUSAND}or.toMiliseconds=Ch;function Lh(t){return Math.floor(t/Us.ONE_THOUSAND)}or.fromMiliseconds=Lh,function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(Jr,t),r(or,t)}(Rs);var wr={};Object.defineProperty(wr,"__esModule",{value:!0}),wr.Watch=void 0;class Ms{constructor(){this.timestamps=new Map}start(e){if(this.timestamps.has(e))throw new Error(`Watch already started for label: ${e}`);this.timestamps.set(e,{started:Date.now()})}stop(e){const r=this.get(e);if(typeof r.elapsed<"u")throw new Error(`Watch already stopped for label: ${e}`);const i=Date.now()-r.started;this.timestamps.set(e,{started:r.started,elapsed:i})}get(e){const r=this.timestamps.get(e);if(typeof r>"u")throw new Error(`No timestamp found for label: ${e}`);return r}elapsed(e){const r=this.get(e);return r.elapsed||Date.now()-r.started}}wr.Watch=Ms,wr.default=Ms;var js={},Xr={};Object.defineProperty(Xr,"__esModule",{value:!0}),Xr.IWatch=void 0;class Nh{}Xr.IWatch=Nh,function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(Xr,t)}(js),function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(Rs,t),r(wr,t),r(js,t),r(Hi,t)}(Ie);var xe={};Object.defineProperty(xe,"__esModule",{value:!0}),xe.getLocalStorage=xe.getLocalStorageOrThrow=xe.getCrypto=xe.getCryptoOrThrow=Bs=xe.getLocation=xe.getLocationOrThrow=Ki=xe.getNavigator=xe.getNavigatorOrThrow=$s=xe.getDocument=xe.getDocumentOrThrow=xe.getFromWindowOrThrow=xe.getFromWindow=void 0;function Yt(t){let e;return typeof window<"u"&&typeof window[t]<"u"&&(e=window[t]),e}xe.getFromWindow=Yt;function cr(t){const e=Yt(t);if(!e)throw new Error(`${t} is not defined in Window`);return e}xe.getFromWindowOrThrow=cr;function Ph(){return cr("document")}xe.getDocumentOrThrow=Ph;function Rh(){return Yt("document")}var $s=xe.getDocument=Rh;function Fh(){return cr("navigator")}xe.getNavigatorOrThrow=Fh;function Uh(){return Yt("navigator")}var Ki=xe.getNavigator=Uh;function Mh(){return cr("location")}xe.getLocationOrThrow=Mh;function jh(){return Yt("location")}var Bs=xe.getLocation=jh;function $h(){return cr("crypto")}xe.getCryptoOrThrow=$h;function Bh(){return Yt("crypto")}xe.getCrypto=Bh;function zh(){return cr("localStorage")}xe.getLocalStorageOrThrow=zh;function Hh(){return Yt("localStorage")}xe.getLocalStorage=Hh;var qi={};Object.defineProperty(qi,"__esModule",{value:!0});var zs=qi.getWindowMetadata=void 0;const Hs=xe;function Kh(){let t,e;try{t=Hs.getDocumentOrThrow(),e=Hs.getLocationOrThrow()}catch{return null}function r(){const D=t.getElementsByTagName("link"),C=[];for(let x=0;x<D.length;x++){const w=D[x],R=w.getAttribute("rel");if(R&&R.toLowerCase().indexOf("icon")>-1){const L=w.getAttribute("href");if(L)if(L.toLowerCase().indexOf("https:")===-1&&L.toLowerCase().indexOf("http:")===-1&&L.indexOf("//")!==0){let $=e.protocol+"//"+e.host;if(L.indexOf("/")===0)$+=L;else{const E=e.pathname.split("/");E.pop(),$+=E.join("/")+"/"+L}C.push($)}else if(L.indexOf("//")===0){const $=e.protocol+L;C.push($)}else C.push(L)}}return C}function i(...D){const C=t.getElementsByTagName("meta");for(let x=0;x<C.length;x++){const w=C[x],R=["itemprop","property","name"].map(L=>w.getAttribute(L)).filter(L=>L?D.includes(L):!1);if(R.length&&R){const L=w.getAttribute("content");if(L)return L}}return""}function n(){let D=i("name","og:site_name","og:title","twitter:title");return D||(D=t.title),D}function s(){return i("description","og:description","twitter:description","keywords")}const c=n(),u=s(),h=e.origin,d=r();return{description:u,url:h,icons:d,name:c}}zs=qi.getWindowMetadata=Kh;var Er={},qh=t=>encodeURIComponent(t).replace(/[!'()*]/g,e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`),Ks="%[a-f0-9]{2}",qs=new RegExp(Ks,"gi"),Vs=new RegExp("("+Ks+")+","gi");function Vi(t,e){try{return decodeURIComponent(t.join(""))}catch{}if(t.length===1)return t;e=e||1;var r=t.slice(0,e),i=t.slice(e);return Array.prototype.concat.call([],Vi(r),Vi(i))}function Vh(t){try{return decodeURIComponent(t)}catch{for(var e=t.match(qs),r=1;r<e.length;r++)t=Vi(e,r).join(""),e=t.match(qs);return t}}function Gh(t){for(var e={"%FE%FF":"\uFFFD\uFFFD","%FF%FE":"\uFFFD\uFFFD"},r=Vs.exec(t);r;){try{e[r[0]]=decodeURIComponent(r[0])}catch{var i=Vh(r[0]);i!==r[0]&&(e[r[0]]=i)}r=Vs.exec(t)}e["%C2"]="\uFFFD";for(var n=Object.keys(e),s=0;s<n.length;s++){var c=n[s];t=t.replace(new RegExp(c,"g"),e[c])}return t}var Wh=function(t){if(typeof t!="string")throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof t+"`");try{return t=t.replace(/\+/g," "),decodeURIComponent(t)}catch{return Gh(t)}},kh=(t,e)=>{if(!(typeof t=="string"&&typeof e=="string"))throw new TypeError("Expected the arguments to be of type `string`");if(e==="")return[t];const r=t.indexOf(e);return r===-1?[t]:[t.slice(0,r),t.slice(r+e.length)]},Yh=function(t,e){for(var r={},i=Object.keys(t),n=Array.isArray(e),s=0;s<i.length;s++){var c=i[s],u=t[c];(n?e.indexOf(c)!==-1:e(c,u,t))&&(r[c]=u)}return r};(function(t){const e=qh,r=Wh,i=kh,n=Yh,s=E=>E==null,c=Symbol("encodeFragmentIdentifier");function u(E){switch(E.arrayFormat){case"index":return A=>(y,m)=>{const b=y.length;return m===void 0||E.skipNull&&m===null||E.skipEmptyString&&m===""?y:m===null?[...y,[g(A,E),"[",b,"]"].join("")]:[...y,[g(A,E),"[",g(b,E),"]=",g(m,E)].join("")]};case"bracket":return A=>(y,m)=>m===void 0||E.skipNull&&m===null||E.skipEmptyString&&m===""?y:m===null?[...y,[g(A,E),"[]"].join("")]:[...y,[g(A,E),"[]=",g(m,E)].join("")];case"colon-list-separator":return A=>(y,m)=>m===void 0||E.skipNull&&m===null||E.skipEmptyString&&m===""?y:m===null?[...y,[g(A,E),":list="].join("")]:[...y,[g(A,E),":list=",g(m,E)].join("")];case"comma":case"separator":case"bracket-separator":{const A=E.arrayFormat==="bracket-separator"?"[]=":"=";return y=>(m,b)=>b===void 0||E.skipNull&&b===null||E.skipEmptyString&&b===""?m:(b=b===null?"":b,m.length===0?[[g(y,E),A,g(b,E)].join("")]:[[m,g(b,E)].join(E.arrayFormatSeparator)])}default:return A=>(y,m)=>m===void 0||E.skipNull&&m===null||E.skipEmptyString&&m===""?y:m===null?[...y,g(A,E)]:[...y,[g(A,E),"=",g(m,E)].join("")]}}function h(E){let A;switch(E.arrayFormat){case"index":return(y,m,b)=>{if(A=/\[(\d*)\]$/.exec(y),y=y.replace(/\[\d*\]$/,""),!A){b[y]=m;return}b[y]===void 0&&(b[y]={}),b[y][A[1]]=m};case"bracket":return(y,m,b)=>{if(A=/(\[\])$/.exec(y),y=y.replace(/\[\]$/,""),!A){b[y]=m;return}if(b[y]===void 0){b[y]=[m];return}b[y]=[].concat(b[y],m)};case"colon-list-separator":return(y,m,b)=>{if(A=/(:list)$/.exec(y),y=y.replace(/:list$/,""),!A){b[y]=m;return}if(b[y]===void 0){b[y]=[m];return}b[y]=[].concat(b[y],m)};case"comma":case"separator":return(y,m,b)=>{const o=typeof m=="string"&&m.includes(E.arrayFormatSeparator),l=typeof m=="string"&&!o&&D(m,E).includes(E.arrayFormatSeparator);m=l?D(m,E):m;const M=o||l?m.split(E.arrayFormatSeparator).map(K=>D(K,E)):m===null?m:D(m,E);b[y]=M};case"bracket-separator":return(y,m,b)=>{const o=/(\[\])$/.test(y);if(y=y.replace(/\[\]$/,""),!o){b[y]=m&&D(m,E);return}const l=m===null?[]:m.split(E.arrayFormatSeparator).map(M=>D(M,E));if(b[y]===void 0){b[y]=l;return}b[y]=[].concat(b[y],l)};default:return(y,m,b)=>{if(b[y]===void 0){b[y]=m;return}b[y]=[].concat(b[y],m)}}}function d(E){if(typeof E!="string"||E.length!==1)throw new TypeError("arrayFormatSeparator must be single character string")}function g(E,A){return A.encode?A.strict?e(E):encodeURIComponent(E):E}function D(E,A){return A.decode?r(E):E}function C(E){return Array.isArray(E)?E.sort():typeof E=="object"?C(Object.keys(E)).sort((A,y)=>Number(A)-Number(y)).map(A=>E[A]):E}function x(E){const A=E.indexOf("#");return A!==-1&&(E=E.slice(0,A)),E}function w(E){let A="";const y=E.indexOf("#");return y!==-1&&(A=E.slice(y)),A}function R(E){E=x(E);const A=E.indexOf("?");return A===-1?"":E.slice(A+1)}function L(E,A){return A.parseNumbers&&!Number.isNaN(Number(E))&&typeof E=="string"&&E.trim()!==""?E=Number(E):A.parseBooleans&&E!==null&&(E.toLowerCase()==="true"||E.toLowerCase()==="false")&&(E=E.toLowerCase()==="true"),E}function $(E,A){A=Object.assign({decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1},A),d(A.arrayFormatSeparator);const y=h(A),m=Object.create(null);if(typeof E!="string"||(E=E.trim().replace(/^[?#&]/,""),!E))return m;for(const b of E.split("&")){if(b==="")continue;let[o,l]=i(A.decode?b.replace(/\+/g," "):b,"=");l=l===void 0?null:["comma","separator","bracket-separator"].includes(A.arrayFormat)?l:D(l,A),y(D(o,A),l,m)}for(const b of Object.keys(m)){const o=m[b];if(typeof o=="object"&&o!==null)for(const l of Object.keys(o))o[l]=L(o[l],A);else m[b]=L(o,A)}return A.sort===!1?m:(A.sort===!0?Object.keys(m).sort():Object.keys(m).sort(A.sort)).reduce((b,o)=>{const l=m[o];return Boolean(l)&&typeof l=="object"&&!Array.isArray(l)?b[o]=C(l):b[o]=l,b},Object.create(null))}t.extract=R,t.parse=$,t.stringify=(E,A)=>{if(!E)return"";A=Object.assign({encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:","},A),d(A.arrayFormatSeparator);const y=l=>A.skipNull&&s(E[l])||A.skipEmptyString&&E[l]==="",m=u(A),b={};for(const l of Object.keys(E))y(l)||(b[l]=E[l]);const o=Object.keys(b);return A.sort!==!1&&o.sort(A.sort),o.map(l=>{const M=E[l];return M===void 0?"":M===null?g(l,A):Array.isArray(M)?M.length===0&&A.arrayFormat==="bracket-separator"?g(l,A)+"[]":M.reduce(m(l),[]).join("&"):g(l,A)+"="+g(M,A)}).filter(l=>l.length>0).join("&")},t.parseUrl=(E,A)=>{A=Object.assign({decode:!0},A);const[y,m]=i(E,"#");return Object.assign({url:y.split("?")[0]||"",query:$(R(E),A)},A&&A.parseFragmentIdentifier&&m?{fragmentIdentifier:D(m,A)}:{})},t.stringifyUrl=(E,A)=>{A=Object.assign({encode:!0,strict:!0,[c]:!0},A);const y=x(E.url).split("?")[0]||"",m=t.extract(E.url),b=t.parse(m,{sort:!1}),o=Object.assign(b,E.query);let l=t.stringify(o,A);l&&(l=`?${l}`);let M=w(E.url);return E.fragmentIdentifier&&(M=`#${A[c]?g(E.fragmentIdentifier,A):E.fragmentIdentifier}`),`${y}${l}${M}`},t.pick=(E,A,y)=>{y=Object.assign({parseFragmentIdentifier:!0,[c]:!1},y);const{url:m,query:b,fragmentIdentifier:o}=t.parseUrl(E,y);return t.stringifyUrl({url:m,query:n(b,A),fragmentIdentifier:o},y)},t.exclude=(E,A,y)=>{const m=Array.isArray(A)?b=>!A.includes(b):(b,o)=>!A(b,o);return t.pick(E,m,y)}})(Er);const Jh={waku:{publish:"waku_publish",subscribe:"waku_subscribe",subscription:"waku_subscription",unsubscribe:"waku_unsubscribe"},irn:{publish:"irn_publish",subscribe:"irn_subscribe",subscription:"irn_subscription",unsubscribe:"irn_unsubscribe"},iridium:{publish:"iridium_publish",subscribe:"iridium_subscribe",subscription:"iridium_subscription",unsubscribe:"iridium_unsubscribe"}},Gs=":";function Xh(t){const{namespace:e,reference:r}=t;return[e,r].join(Gs)}function Zh(t){const[e,r,i]=t.split(Gs);return{namespace:e,reference:r,address:i}}function Qh(t,e){const r=[];return t.forEach(i=>{const n=e(i);r.includes(n)||r.push(n)}),r}function ef(t){const{namespace:e,reference:r}=Zh(t);return Xh({namespace:e,reference:r})}function tf(t){return Qh(t,ef)}function Gi(t,e=[]){const r=[];return Object.keys(t).forEach(i=>{if(e.length&&!e.includes(i))return;const n=t[i];r.push(...n.accounts)}),r}function Wi(t,e=[]){const r=[];return Object.keys(t).forEach(i=>{if(e.length&&!e.includes(i))return;const n=t[i];r.push(...tf(n.accounts))}),r}function rf(t,e=[]){const r=[];return Object.keys(t).forEach(i=>{if(e.length&&!e.includes(i))return;const n=t[i];r.push(...n.chains)}),r}const Ws="base10",lt="base16",ki="base64pad",Yi="utf8",ks=0,Dr=1,nf=0,Ys=1,Ji=12,Xi=32;function sf(){const t=Mi.generateKeyPair();return{privateKey:ft(t.secretKey,lt),publicKey:ft(t.publicKey,lt)}}function Zi(){const t=sr.randomBytes(Xi);return ft(t,lt)}function of(t,e){const r=Mi.sharedKey(ht(t,lt),ht(e,lt)),i=new Bc(kr.SHA256,r).expand(Xi);return ft(i,lt)}function af(t){const e=kr.hash(ht(t,lt));return ft(e,lt)}function Zr(t){const e=kr.hash(ht(t,Yi));return ft(e,lt)}function cf(t){return ht(`${t}`,Ws)}function Qr(t){return Number(ft(t,Ws))}function uf(t){const e=cf(typeof t.type<"u"?t.type:ks);if(Qr(e)===Dr&&typeof t.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");const r=typeof t.senderPublicKey<"u"?ht(t.senderPublicKey,lt):void 0,i=typeof t.iv<"u"?ht(t.iv,lt):sr.randomBytes(Ji),n=new Ai.ChaCha20Poly1305(ht(t.symKey,lt)).seal(i,ht(t.message,Yi));return ff({type:e,sealed:n,iv:i,senderPublicKey:r})}function hf(t){const e=new Ai.ChaCha20Poly1305(ht(t.symKey,lt)),{sealed:r,iv:i}=Js(t.encoded),n=e.open(i,r);if(n===null)throw new Error("Failed to decrypt");return ft(n,Yi)}function ff(t){if(Qr(t.type)===Dr){if(typeof t.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");return ft(ji([t.type,t.senderPublicKey,t.iv,t.sealed]),ki)}return ft(ji([t.type,t.iv,t.sealed]),ki)}function Js(t){const e=ht(t,ki),r=e.slice(nf,Ys),i=Ys;if(Qr(r)===Dr){const u=i+Xi,h=u+Ji,d=e.slice(i,u),g=e.slice(u,h),D=e.slice(h);return{type:r,sealed:D,iv:g,senderPublicKey:d}}const n=i+Ji,s=e.slice(i,n),c=e.slice(n);return{type:r,sealed:c,iv:s}}function lf(t,e){const r=Js(t);return Xs({type:Qr(r.type),senderPublicKey:typeof r.senderPublicKey<"u"?ft(r.senderPublicKey,lt):void 0,receiverPublicKey:e?.receiverPublicKey})}function Xs(t){const e=t?.type||ks;if(e===Dr){if(typeof t?.senderPublicKey>"u")throw new Error("missing sender public key");if(typeof t?.receiverPublicKey>"u")throw new Error("missing receiver public key")}return{type:e,senderPublicKey:t?.senderPublicKey,receiverPublicKey:t?.receiverPublicKey}}function Zs(t){return t.type===Dr&&typeof t.senderPublicKey=="string"&&typeof t.receiverPublicKey=="string"}var df=Object.defineProperty,Qs=Object.getOwnPropertySymbols,pf=Object.prototype.hasOwnProperty,gf=Object.prototype.propertyIsEnumerable,eo=(t,e,r)=>e in t?df(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,to=(t,e)=>{for(var r in e||(e={}))pf.call(e,r)&&eo(t,r,e[r]);if(Qs)for(var r of Qs(e))gf.call(e,r)&&eo(t,r,e[r]);return t};const vf="ReactNative",xr={reactNative:"react-native",node:"node",browser:"browser",unknown:"unknown"},yf="js";function ro(){return typeof process<"u"&&typeof process.versions<"u"&&typeof process.versions.node<"u"}function _f(){return!$s()&&!!Ki()&&navigator.product===vf}function bf(){return!ro()&&!!Ki()}function mf(){return _f()?xr.reactNative:ro()?xr.node:bf()?xr.browser:xr.unknown}function wf(t,e){let r=Er.parse(t);return r=to(to({},r),e),t=Er.stringify(r),t}function Ef(){return zs()||{name:"",description:"",url:"",icons:[""]}}function Df(){const t=xh();if(t===null)return"unknown";const e=t.os?t.os.replace(" ","").toLowerCase():"unknown";return t.type==="browser"?[e,t.name,t.version].join("-"):[e,t.version].join("-")}function xf(){var t;const e=mf();return e===xr.browser?[e,((t=Bs())==null?void 0:t.host)||"unknown"].join(":"):e}function Sf(t,e,r){const i=Df(),n=xf();return[[t,e].join("-"),[yf,r].join("-"),i,n].join("/")}function Of({protocol:t,version:e,relayUrl:r,sdkVersion:i,auth:n,projectId:s}){const c=r.split("?"),u=Sf(t,e,i),h={auth:n,ua:u,projectId:s},d=wf(c[1]||"",h);return c[0]+"?"+d}function dt(t,e){return t.filter(r=>e.includes(r)).length===t.length}function io(t){return Object.fromEntries(t.entries())}function no(t){return new Map(Object.entries(t))}function Rt(t,e){return Ie.fromMiliseconds((e||Date.now())+Ie.toMiliseconds(t))}function Jt(t){return Ie.fromMiliseconds(Date.now())>=Ie.toMiliseconds(t)}function Xt(){const t=Ie.toMiliseconds(Ie.FIVE_MINUTES);let e,r,i;return{resolve:n=>{i&&e&&(clearTimeout(i),e(n))},reject:n=>{i&&r&&(clearTimeout(i),r(n))},done:()=>new Promise((n,s)=>{i=setTimeout(s,t),e=n,r=s})}}function so(t,e){if(typeof e=="string"&&e.startsWith(`${t}:`))return e;if(t.toLowerCase()==="topic"){if(typeof e!="string")throw new Error('Value must be "string" for expirer target type: topic');return`topic:${e}`}else if(t.toLowerCase()==="id"){if(typeof e!="number")throw new Error('Value must be "number" for expirer target type: id');return`id:${e}`}throw new Error(`Unknown expirer target type: ${t}`)}function Af(t){return so("topic",t)}function If(t){return so("id",t)}function Tf(t){const[e,r]=t.split(":"),i={id:void 0,topic:void 0};if(e==="topic"&&typeof r=="string")i.topic=r;else if(e==="id"&&Number.isInteger(Number(r)))i.id=Number(r);else throw new Error(`Invalid target, expected id:number or topic:string, got ${e}:${r}`);return i}function Re(t,e){return`${t}${e?`:${e}`:""}`}const Cf="irn";function Qi(t){return t?.relay||{protocol:Cf}}function en(t){const e=Jh[t];if(typeof e>"u")throw new Error(`Relay Protocol not supported: ${t}`);return e}var Lf=Object.defineProperty,oo=Object.getOwnPropertySymbols,Nf=Object.prototype.hasOwnProperty,Pf=Object.prototype.propertyIsEnumerable,ao=(t,e,r)=>e in t?Lf(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Rf=(t,e)=>{for(var r in e||(e={}))Nf.call(e,r)&&ao(t,r,e[r]);if(oo)for(var r of oo(e))Pf.call(e,r)&&ao(t,r,e[r]);return t};function Ff(t,e="-"){const r={},i="relay"+e;return Object.keys(t).forEach(n=>{if(n.startsWith(i)){const s=n.replace(i,""),c=t[n];r[s]=c}}),r}function Uf(t){const e=t.indexOf(":"),r=t.indexOf("?")!==-1?t.indexOf("?"):void 0,i=t.substring(0,e),n=t.substring(e+1,r).split("@"),s=typeof r<"u"?t.substring(r):"",c=Er.parse(s);return{protocol:i,topic:n[0],version:parseInt(n[1],10),symKey:c.symKey,relay:Ff(c)}}function Mf(t,e="-"){const r="relay",i={};return Object.keys(t).forEach(n=>{const s=r+e+n;t[n]&&(i[s]=t[n])}),i}function jf(t){return`${t.protocol}:${t.topic}@${t.version}?`+Er.stringify(Rf({symKey:t.symKey},Mf(t.relay)))}function At(t){const e=[];return t.forEach(r=>{const[i,n]=r.split(":");e.push(`${i}:${n}`)}),e}function $f(t){const e=[];return Object.values(t).forEach(r=>{e.push(...At(r.accounts)),r.extension&&r.extension.forEach(i=>{e.push(...At(i.accounts))})}),e}function Bf(t,e){const r=[];return Object.values(t).forEach(i=>{At(i.accounts).includes(e)&&r.push(...i.methods),i.extension&&i.extension.forEach(n=>{At(n.accounts).includes(e)&&r.push(...n.methods)})}),r}function zf(t,e){const r=[];return Object.values(t).forEach(i=>{At(i.accounts).includes(e)&&r.push(...i.events),i.extension&&i.extension.forEach(n=>{At(n.accounts).includes(e)&&r.push(...n.events)})}),r}const Hf={INVALID_METHOD:{message:"Invalid method.",code:1001},INVALID_EVENT:{message:"Invalid event.",code:1002},INVALID_UPDATE_REQUEST:{message:"Invalid update request.",code:1003},INVALID_EXTEND_REQUEST:{message:"Invalid extend request.",code:1004},INVALID_SESSION_SETTLE_REQUEST:{message:"Invalid session settle request.",code:1005},UNAUTHORIZED_METHOD:{message:"Unauthorized method.",code:3001},UNAUTHORIZED_EVENT:{message:"Unauthorized event.",code:3002},UNAUTHORIZED_UPDATE_REQUEST:{message:"Unauthorized update request.",code:3003},UNAUTHORIZED_EXTEND_REQUEST:{message:"Unauthorized extend request.",code:3004},USER_REJECTED:{message:"User rejected.",code:5e3},USER_REJECTED_CHAINS:{message:"User rejected chains.",code:5001},USER_REJECTED_METHODS:{message:"User rejected methods.",code:5002},USER_REJECTED_EVENTS:{message:"User rejected events.",code:5003},UNSUPPORTED_CHAINS:{message:"Unsupported chains.",code:5100},UNSUPPORTED_METHODS:{message:"Unsupported methods.",code:5101},UNSUPPORTED_EVENTS:{message:"Unsupported events.",code:5102},UNSUPPORTED_ACCOUNTS:{message:"Unsupported accounts.",code:5103},UNSUPPORTED_NAMESPACE_KEY:{message:"Unsupported namespace key.",code:5104},USER_DISCONNECTED:{message:"User disconnected.",code:6e3},SESSION_SETTLEMENT_FAILED:{message:"Session settlement failed.",code:7e3}},Kf={NOT_INITIALIZED:{message:"Not initialized.",code:1},NO_MATCHING_KEY:{message:"No matching key.",code:2},RESTORE_WILL_OVERRIDE:{message:"Restore will override.",code:3},RESUBSCRIBED:{message:"Resubscribed.",code:4},MISSING_OR_INVALID:{message:"Missing or invalid.",code:5},EXPIRED:{message:"Expired.",code:6},UNKNOWN_TYPE:{message:"Unknown type.",code:7},MISMATCHED_TOPIC:{message:"Mismatched topic.",code:8},NON_CONFORMING_NAMESPACES:{message:"Non conforming namespaces.",code:9}};function G(t,e){const{message:r,code:i}=Kf[t];return{message:e?`${r} ${e}`:r,code:i}}function rt(t,e){const{message:r,code:i}=Hf[t];return{message:e?`${r} ${e}`:r,code:i}}function Sr(t,e){return Array.isArray(t)?typeof e<"u"&&t.length?t.every(e):!0:!1}function co(t){return Object.getPrototypeOf(t)===Object.prototype&&Object.keys(t).length}function yt(t){return typeof t>"u"}function ot(t,e){return e&&yt(t)?!0:typeof t=="string"&&Boolean(t.trim().length)}function uo(t,e){return e&&yt(t)?!0:typeof t=="number"&&!isNaN(t)}function qf(t,e){const{requiredNamespaces:r}=e,i=Object.keys(t.namespaces),n=Object.keys(r);let s=!0;return dt(n,i)?(i.forEach(c=>{const{accounts:u,methods:h,events:d,extension:g}=t.namespaces[c],D=At(u),C=r[c];(!dt(C.chains,D)||!dt(C.methods,h)||!dt(C.events,d))&&(s=!1),s&&g&&g.forEach(x=>{var w;const{accounts:R,methods:L,events:$}=x,E=At(R);(w=C.extension)!=null&&w.find(A=>dt(A.chains,E)&&dt(A.methods,L)&&dt(A.events,$))||(s=!1)})}),s):!1}function tn(t){return ot(t,!1)&&t.includes(":")?t.split(":").length===2:!1}function Vf(t){if(ot(t,!1)&&t.includes(":")){const e=t.split(":");if(e.length===3){const r=e[0]+":"+e[1];return!!e[2]&&tn(r)}}return!1}function Gf(t){if(ot(t,!1))try{return typeof new URL(t)<"u"}catch{return!1}return!1}function Wf(t){var e;return(e=t?.proposer)==null?void 0:e.publicKey}function kf(t){return t?.topic}function Yf(t,e){let r=null;return ot(t?.publicKey,!1)||(r=G("MISSING_OR_INVALID",`${e} controller public key should be a string`)),r}function rn(t,e){let r=null;return yt(t?.extension)||(!Sr(t.extension)||!t.extension.length)&&(r=G("MISSING_OR_INVALID",`${e} extension should be an array of namespaces, or omitted`)),r}function ho(t){let e=!0;return Sr(t)?t.length&&(e=t.every(r=>ot(r,!1))):e=!1,e}function fo(t,e,r){let i=null;return Sr(e)?e.forEach(n=>{i||(!tn(n)||!n.includes(t))&&(i=rt("UNSUPPORTED_CHAINS",`${r}, chain ${n} should be a string and conform to "namespace:chainId" format`))}):i=rt("UNSUPPORTED_CHAINS",`${r}, chains ${e} should be an array of strings conforming to "namespace:chainId" format`),i}function Jf(t,e){let r=null;return Object.entries(t).forEach(([i,n])=>{if(r)return;const s=fo(i,n?.chains,`${e} requiredNamespace`),c=rn(n,e);s?r=s:c?r=c:n.extension&&n.extension.forEach(u=>{if(r)return;const h=fo(i,u.chains,`${e} extension`);h&&(r=h)})}),r}function lo(t,e){let r=null;return Sr(t)?t.forEach(i=>{r||Vf(i)||(r=rt("UNSUPPORTED_ACCOUNTS",`${e}, account ${i} should be a string and conform to "namespace:chainId:address" format`))}):r=rt("UNSUPPORTED_ACCOUNTS",`${e}, accounts should be an array of strings conforming to "namespace:chainId:address" format`),r}function Xf(t,e){let r=null;return Object.values(t).forEach(i=>{if(r)return;const n=lo(i?.accounts,`${e} namespace`),s=rn(i,e);n?r=n:s?r=s:i.extension&&i.extension.forEach(c=>{if(r)return;const u=lo(c.accounts,`${e} extension`);u&&(r=u)})}),r}function po(t,e){let r=null;return ho(t?.methods)?ho(t?.events)||(r=rt("UNSUPPORTED_EVENTS",`${e}, events should be an array of strings or empty array for no events`)):r=rt("UNSUPPORTED_METHODS",`${e}, methods should be an array of strings or empty array for no methods`),r}function go(t,e){let r=null;return Object.values(t).forEach(i=>{if(r)return;const n=po(i,`${e}, namespace`),s=rn(i,e);n?r=n:s?r=s:i.extension&&i.extension.forEach(c=>{if(r)return;const u=po(c,`${e}, extension`);u&&(r=u)})}),r}function Zf(t,e){let r=null;if(t&&co(t)){const i=go(t,e);i&&(r=i);const n=Jf(t,e);n&&(r=n)}else r=G("MISSING_OR_INVALID",`${e}, requiredNamespaces should be an object with data`);return r}function nn(t,e){let r=null;if(t&&co(t)){const i=go(t,e);i&&(r=i);const n=Xf(t,e);n&&(r=n)}else r=G("MISSING_OR_INVALID",`${e}, namespaces should be an object with data`);return r}function vo(t){return ot(t.protocol,!0)}function Qf(t,e){let r=!1;return e&&!t?r=!0:t&&Sr(t)&&t.length&&t.forEach(i=>{r=vo(i)}),r}function el(t){return typeof t=="number"}function _t(t){return typeof t<"u"&&typeof t!==null}function tl(t){return!(!t||typeof t!="object"||!t.code||!uo(t.code,!1)||!t.message||!ot(t.message,!1))}function rl(t){return!(yt(t)||!ot(t.method,!1))}function il(t){return!(yt(t)||yt(t.result)&&yt(t.error)||!uo(t.id,!1)||!ot(t.jsonrpc,!1))}function nl(t){return!(yt(t)||!ot(t.name,!1))}function yo(t,e){return!(!tn(e)||!$f(t).includes(e))}function sl(t,e,r){return ot(r,!1)?Bf(t,e).includes(r):!1}function ol(t,e,r){return ot(r,!1)?zf(t,e).includes(r):!1}function _o(t,e,r){let i=null;const n=Object.keys(t),s=Object.keys(e);return dt(n,s)?n.forEach(c=>{var u;if(i)return;const h=t[c].chains,d=At(e[c].accounts);dt(h,d)?dt(t[c].methods,e[c].methods)?dt(t[c].events,e[c].events)?t[c].extension&&!e[c].extension?i=G("NON_CONFORMING_NAMESPACES",`${r} namespaces extension doesn't satisfy requiredNamespaces extension for ${c}`):t[c].extension&&e[c].extension&&((u=t[c].extension)==null||u.forEach(({methods:g,events:D,chains:C})=>{var x;i||(x=e[c].extension)!=null&&x.find(w=>{const R=At(w.accounts);return dt(C,R)&&dt(D,w.events)&&dt(g,w.methods)})||(i=G("NON_CONFORMING_NAMESPACES",`${r} namespaces extension doesn't satisfy requiredNamespaces extension for ${c}`))})):i=G("NON_CONFORMING_NAMESPACES",`${r} namespaces events don't satisfy requiredNamespaces events for ${c}`):i=G("NON_CONFORMING_NAMESPACES",`${r} namespaces methods don't satisfy requiredNamespaces methods for ${c}`):i=G("NON_CONFORMING_NAMESPACES",`${r} namespaces accounts don't satisfy requiredNamespaces chains for ${c}`)}):i=G("NON_CONFORMING_NAMESPACES",`${r} namespaces keys don't satisfy requiredNamespaces`),i}function al(t){try{return JSON.stringify(t)}catch{return'"[Circular]"'}}var cl=ul;function ul(t,e,r){var i=r&&r.stringify||al,n=1;if(typeof t=="object"&&t!==null){var s=e.length+n;if(s===1)return t;var c=new Array(s);c[0]=i(t);for(var u=1;u<s;u++)c[u]=i(e[u]);return c.join(" ")}if(typeof t!="string")return t;var h=e.length;if(h===0)return t;for(var d="",g=1-n,D=-1,C=t&&t.length||0,x=0;x<C;){if(t.charCodeAt(x)===37&&x+1<C){switch(D=D>-1?D:0,t.charCodeAt(x+1)){case 100:case 102:if(g>=h||e[g]==null)break;D<x&&(d+=t.slice(D,x)),d+=Number(e[g]),D=x+2,x++;break;case 105:if(g>=h||e[g]==null)break;D<x&&(d+=t.slice(D,x)),d+=Math.floor(Number(e[g])),D=x+2,x++;break;case 79:case 111:case 106:if(g>=h||e[g]===void 0)break;D<x&&(d+=t.slice(D,x));var w=typeof e[g];if(w==="string"){d+="'"+e[g]+"'",D=x+2,x++;break}if(w==="function"){d+=e[g].name||"<anonymous>",D=x+2,x++;break}d+=i(e[g]),D=x+2,x++;break;case 115:if(g>=h)break;D<x&&(d+=t.slice(D,x)),d+=String(e[g]),D=x+2,x++;break;case 37:D<x&&(d+=t.slice(D,x)),d+="%",D=x+2,x++,g--;break}++g}++x}return D===-1?t:(D<C&&(d+=t.slice(D)),d)}var bo=cl,sn=It,Or=_l().console||{},hl={mapHttpRequest:ti,mapHttpResponse:ti,wrapRequestSerializer:an,wrapResponseSerializer:an,wrapErrorSerializer:an,req:ti,res:ti,err:pl};function It(t){t=t||{},t.browser=t.browser||{};var e=t.browser.transmit;if(e&&typeof e.send!="function")throw Error("pino: transmit option must have a send function");var r=t.browser.write||Or;t.browser.write&&(t.browser.asObject=!0);var i=t.serializers||{},n=Array.isArray(t.browser.serialize)?t.browser.serialize.filter(function(w){return w!=="!stdSerializers.err"}):t.browser.serialize===!0?Object.keys(i):!1,s=t.browser.serialize;Array.isArray(t.browser.serialize)&&t.browser.serialize.indexOf("!stdSerializers.err")>-1&&(s=!1);var c=["error","fatal","warn","info","debug","trace"];typeof r=="function"&&(r.error=r.fatal=r.warn=r.info=r.debug=r.trace=r),t.enabled===!1&&(t.level="silent");var u=t.level||"info",h=Object.create(r);h.log||(h.log=Ar),Object.defineProperty(h,"levelVal",{get:g}),Object.defineProperty(h,"level",{get:D,set:C});var d={transmit:e,serialize:n,asObject:t.browser.asObject,levels:c,timestamp:gl(t)};h.levels=It.levels,h.level=u,h.setMaxListeners=h.getMaxListeners=h.emit=h.addListener=h.on=h.prependListener=h.once=h.prependOnceListener=h.removeListener=h.removeAllListeners=h.listeners=h.listenerCount=h.eventNames=h.write=h.flush=Ar,h.serializers=i,h._serialize=n,h._stdErrSerialize=s,h.child=x,e&&(h._logEvent=on());function g(){return this.level==="silent"?1/0:this.levels.values[this.level]}function D(){return this._level}function C(w){if(w!=="silent"&&!this.levels.values[w])throw Error("unknown level "+w);this._level=w,ur(d,h,"error","log"),ur(d,h,"fatal","error"),ur(d,h,"warn","error"),ur(d,h,"info","log"),ur(d,h,"debug","log"),ur(d,h,"trace","log")}function x(w){if(!w)throw new Error("missing bindings for child Pino");var R=w.serializers;if(n&&R){var L=Object.assign({},i,R),$=t.browser.serialize===!0?Object.keys(L):n;delete w.serializers,ei([w],$,L,this._stdErrSerialize)}function E(A){this._childLevel=(A._childLevel|0)+1,this.error=hr(A,w,"error"),this.fatal=hr(A,w,"fatal"),this.warn=hr(A,w,"warn"),this.info=hr(A,w,"info"),this.debug=hr(A,w,"debug"),this.trace=hr(A,w,"trace"),L&&(this.serializers=L,this._serialize=$),e&&(this._logEvent=on([].concat(A._logEvent.bindings,w)))}return E.prototype=this,new E(this)}return h}It.levels={values:{fatal:60,error:50,warn:40,info:30,debug:20,trace:10},labels:{10:"trace",20:"debug",30:"info",40:"warn",50:"error",60:"fatal"}},It.stdSerializers=hl,It.stdTimeFunctions=Object.assign({},{nullTime:mo,epochTime:wo,unixTime:vl,isoTime:yl});function ur(t,e,r,i){var n=Object.getPrototypeOf(e);e[r]=e.levelVal>e.levels.values[r]?Ar:n[r]?n[r]:Or[r]||Or[i]||Ar,fl(t,e,r)}function fl(t,e,r){!t.transmit&&e[r]===Ar||(e[r]=function(i){return function(){for(var s=t.timestamp(),c=new Array(arguments.length),u=Object.getPrototypeOf&&Object.getPrototypeOf(this)===Or?Or:this,h=0;h<c.length;h++)c[h]=arguments[h];if(t.serialize&&!t.asObject&&ei(c,this._serialize,this.serializers,this._stdErrSerialize),t.asObject?i.call(u,ll(this,r,c,s)):i.apply(u,c),t.transmit){var d=t.transmit.level||e.level,g=It.levels.values[d],D=It.levels.values[r];if(D<g)return;dl(this,{ts:s,methodLevel:r,methodValue:D,transmitLevel:d,transmitValue:It.levels.values[t.transmit.level||e.level],send:t.transmit.send,val:e.levelVal},c)}}}(e[r]))}function ll(t,e,r,i){t._serialize&&ei(r,t._serialize,t.serializers,t._stdErrSerialize);var n=r.slice(),s=n[0],c={};i&&(c.time=i),c.level=It.levels.values[e];var u=(t._childLevel|0)+1;if(u<1&&(u=1),s!==null&&typeof s=="object"){for(;u--&&typeof n[0]=="object";)Object.assign(c,n.shift());s=n.length?bo(n.shift(),n):void 0}else typeof s=="string"&&(s=bo(n.shift(),n));return s!==void 0&&(c.msg=s),c}function ei(t,e,r,i){for(var n in t)if(i&&t[n]instanceof Error)t[n]=It.stdSerializers.err(t[n]);else if(typeof t[n]=="object"&&!Array.isArray(t[n]))for(var s in t[n])e&&e.indexOf(s)>-1&&s in r&&(t[n][s]=r[s](t[n][s]))}function hr(t,e,r){return function(){var i=new Array(1+arguments.length);i[0]=e;for(var n=1;n<i.length;n++)i[n]=arguments[n-1];return t[r].apply(this,i)}}function dl(t,e,r){var i=e.send,n=e.ts,s=e.methodLevel,c=e.methodValue,u=e.val,h=t._logEvent.bindings;ei(r,t._serialize||Object.keys(t.serializers),t.serializers,t._stdErrSerialize===void 0?!0:t._stdErrSerialize),t._logEvent.ts=n,t._logEvent.messages=r.filter(function(d){return h.indexOf(d)===-1}),t._logEvent.level.label=s,t._logEvent.level.value=c,i(s,t._logEvent,u),t._logEvent=on(h)}function on(t){return{ts:0,messages:[],bindings:t||[],level:{label:"",value:0}}}function pl(t){var e={type:t.constructor.name,msg:t.message,stack:t.stack};for(var r in t)e[r]===void 0&&(e[r]=t[r]);return e}function gl(t){return typeof t.timestamp=="function"?t.timestamp:t.timestamp===!1?mo:wo}function ti(){return{}}function an(t){return t}function Ar(){}function mo(){return!1}function wo(){return Date.now()}function vl(){return Math.round(Date.now()/1e3)}function yl(){return new Date(Date.now()).toISOString()}function _l(){function t(e){return typeof e<"u"&&e}try{return typeof globalThis<"u"||Object.defineProperty(Object.prototype,"globalThis",{get:function(){return delete Object.prototype.globalThis,this.globalThis=this},configurable:!0}),globalThis}catch{return t(self)||t(window)||t(this)||{}}}var ri={},cn=function(t,e){return cn=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var n in i)Object.prototype.hasOwnProperty.call(i,n)&&(r[n]=i[n])},cn(t,e)};function bl(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");cn(t,e);function r(){this.constructor=t}t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}var un=function(){return un=Object.assign||function(e){for(var r,i=1,n=arguments.length;i<n;i++){r=arguments[i];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(e[s]=r[s])}return e},un.apply(this,arguments)};function ml(t,e){var r={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(r[i]=t[i]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,i=Object.getOwnPropertySymbols(t);n<i.length;n++)e.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(t,i[n])&&(r[i[n]]=t[i[n]]);return r}function wl(t,e,r,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,r):i,c;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(t,e,r,i);else for(var u=t.length-1;u>=0;u--)(c=t[u])&&(s=(n<3?c(s):n>3?c(e,r,s):c(e,r))||s);return n>3&&s&&Object.defineProperty(e,r,s),s}function El(t,e){return function(r,i){e(r,i,t)}}function Dl(t,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,e)}function xl(t,e,r,i){function n(s){return s instanceof r?s:new r(function(c){c(s)})}return new(r||(r=Promise))(function(s,c){function u(g){try{d(i.next(g))}catch(D){c(D)}}function h(g){try{d(i.throw(g))}catch(D){c(D)}}function d(g){g.done?s(g.value):n(g.value).then(u,h)}d((i=i.apply(t,e||[])).next())})}function Sl(t,e){var r={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},i,n,s,c;return c={next:u(0),throw:u(1),return:u(2)},typeof Symbol=="function"&&(c[Symbol.iterator]=function(){return this}),c;function u(d){return function(g){return h([d,g])}}function h(d){if(i)throw new TypeError("Generator is already executing.");for(;r;)try{if(i=1,n&&(s=d[0]&2?n.return:d[0]?n.throw||((s=n.return)&&s.call(n),0):n.next)&&!(s=s.call(n,d[1])).done)return s;switch(n=0,s&&(d=[d[0]&2,s.value]),d[0]){case 0:case 1:s=d;break;case 4:return r.label++,{value:d[1],done:!1};case 5:r.label++,n=d[1],d=[0];continue;case 7:d=r.ops.pop(),r.trys.pop();continue;default:if(s=r.trys,!(s=s.length>0&&s[s.length-1])&&(d[0]===6||d[0]===2)){r=0;continue}if(d[0]===3&&(!s||d[1]>s[0]&&d[1]<s[3])){r.label=d[1];break}if(d[0]===6&&r.label<s[1]){r.label=s[1],s=d;break}if(s&&r.label<s[2]){r.label=s[2],r.ops.push(d);break}s[2]&&r.ops.pop(),r.trys.pop();continue}d=e.call(t,r)}catch(g){d=[6,g],n=0}finally{i=s=0}if(d[0]&5)throw d[1];return{value:d[0]?d[1]:void 0,done:!0}}}var hn=Object.create?function(t,e,r,i){i===void 0&&(i=r);var n=Object.getOwnPropertyDescriptor(e,r);(!n||("get"in n?!e.__esModule:n.writable||n.configurable))&&(n={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,n)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]};function Ol(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&hn(e,t,r)}function fn(t){var e=typeof Symbol=="function"&&Symbol.iterator,r=e&&t[e],i=0;if(r)return r.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Eo(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var i=r.call(t),n,s=[],c;try{for(;(e===void 0||e-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(u){c={error:u}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(c)throw c.error}}return s}function Al(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(Eo(arguments[e]));return t}function Il(){for(var t=0,e=0,r=arguments.length;e<r;e++)t+=arguments[e].length;for(var i=Array(t),n=0,e=0;e<r;e++)for(var s=arguments[e],c=0,u=s.length;c<u;c++,n++)i[n]=s[c];return i}function Tl(t,e,r){if(r||arguments.length===2)for(var i=0,n=e.length,s;i<n;i++)(s||!(i in e))&&(s||(s=Array.prototype.slice.call(e,0,i)),s[i]=e[i]);return t.concat(s||Array.prototype.slice.call(e))}function Ir(t){return this instanceof Ir?(this.v=t,this):new Ir(t)}function Cl(t,e,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=r.apply(t,e||[]),n,s=[];return n={},c("next"),c("throw"),c("return"),n[Symbol.asyncIterator]=function(){return this},n;function c(C){i[C]&&(n[C]=function(x){return new Promise(function(w,R){s.push([C,x,w,R])>1||u(C,x)})})}function u(C,x){try{h(i[C](x))}catch(w){D(s[0][3],w)}}function h(C){C.value instanceof Ir?Promise.resolve(C.value.v).then(d,g):D(s[0][2],C)}function d(C){u("next",C)}function g(C){u("throw",C)}function D(C,x){C(x),s.shift(),s.length&&u(s[0][0],s[0][1])}}function Ll(t){var e,r;return e={},i("next"),i("throw",function(n){throw n}),i("return"),e[Symbol.iterator]=function(){return this},e;function i(n,s){e[n]=t[n]?function(c){return(r=!r)?{value:Ir(t[n](c)),done:n==="return"}:s?s(c):c}:s}}function Nl(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof fn=="function"?fn(t):t[Symbol.iterator](),r={},i("next"),i("throw"),i("return"),r[Symbol.asyncIterator]=function(){return this},r);function i(s){r[s]=t[s]&&function(c){return new Promise(function(u,h){c=t[s](c),n(u,h,c.done,c.value)})}}function n(s,c,u,h){Promise.resolve(h).then(function(d){s({value:d,done:u})},c)}}function Pl(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}var Rl=Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e};function Fl(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&hn(e,t,r);return Rl(e,t),e}function Ul(t){return t&&t.__esModule?t:{default:t}}function Ml(t,e,r,i){if(r==="a"&&!i)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?i:r==="a"?i.call(t):i?i.value:e.get(t)}function jl(t,e,r,i,n){if(i==="m")throw new TypeError("Private method is not writable");if(i==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return i==="a"?n.call(t,r):n?n.value=r:e.set(t,r),r}function $l(t,e){if(e===null||typeof e!="object"&&typeof e!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof t=="function"?e===t:t.has(e)}var Bl=Object.freeze({__proto__:null,__extends:bl,get __assign(){return un},__rest:ml,__decorate:wl,__param:El,__metadata:Dl,__awaiter:xl,__generator:Sl,__createBinding:hn,__exportStar:Ol,__values:fn,__read:Eo,__spread:Al,__spreadArrays:Il,__spreadArray:Tl,__await:Ir,__asyncGenerator:Cl,__asyncDelegator:Ll,__asyncValues:Nl,__makeTemplateObject:Pl,__importStar:Fl,__importDefault:Ul,__classPrivateFieldGet:Ml,__classPrivateFieldSet:jl,__classPrivateFieldIn:$l}),ln=bi(Bl),ii={exports:{}},Do;function zl(){return Do||(Do=1,function(){var t;function e(){}t=e,t.prototype.getItem=function(r){return this.hasOwnProperty(r)?String(this[r]):null},t.prototype.setItem=function(r,i){this[r]=String(i)},t.prototype.removeItem=function(r){delete this[r]},t.prototype.clear=function(){var r=this;Object.keys(r).forEach(function(i){r[i]=void 0,delete r[i]})},t.prototype.key=function(r){return r=r||0,Object.keys(this)[r]},t.prototype.__defineGetter__("length",function(){return Object.keys(this).length}),Z.localStorage?ii.exports=localStorage:ii.exports=new e}()),ii.exports}var Tr={},xo;function So(){if(xo)return Tr;xo=1,Object.defineProperty(Tr,"__esModule",{value:!0});function t(r){if(typeof r!="string")throw new Error(`Cannot safe json parse value of type ${typeof r}`);try{return JSON.parse(r)}catch{return r}}Tr.safeJsonParse=t;function e(r){return typeof r=="string"?r:JSON.stringify(r,(i,n)=>typeof n>"u"?null:n)}return Tr.safeJsonStringify=e,Tr}var dn={},Cr={},Oo;function Hl(){if(Oo)return Cr;Oo=1,Object.defineProperty(Cr,"__esModule",{value:!0}),Cr.IKeyValueStorage=void 0;class t{}return Cr.IKeyValueStorage=t,Cr}var Lr={},Ao;function Kl(){if(Ao)return Lr;Ao=1,Object.defineProperty(Lr,"__esModule",{value:!0}),Lr.parseEntry=void 0;const t=So();function e(r){var i;return[r[0],t.safeJsonParse((i=r[1])!==null&&i!==void 0?i:"")]}return Lr.parseEntry=e,Lr}var Io;function ql(){return Io||(Io=1,function(t){Object.defineProperty(t,"__esModule",{value:!0});const e=ln;e.__exportStar(Hl(),t),e.__exportStar(Kl(),t)}(dn)),dn}Object.defineProperty(ri,"__esModule",{value:!0}),ri.KeyValueStorage=void 0;const fr=ln,Vl=fr.__importDefault(zl()),To=So(),Gl=ql();class Co{constructor(){this.localStorage=Vl.default}getKeys(){return fr.__awaiter(this,void 0,void 0,function*(){return Object.keys(this.localStorage)})}getEntries(){return fr.__awaiter(this,void 0,void 0,function*(){return Object.entries(this.localStorage).map(Gl.parseEntry)})}getItem(e){return fr.__awaiter(this,void 0,void 0,function*(){const r=this.localStorage.getItem(e);if(r!==null)return To.safeJsonParse(r)})}setItem(e,r){return fr.__awaiter(this,void 0,void 0,function*(){this.localStorage.setItem(e,To.safeJsonStringify(r))})}removeItem(e){return fr.__awaiter(this,void 0,void 0,function*(){this.localStorage.removeItem(e)})}}ri.KeyValueStorage=Co;var Wl=ri.default=Co,Nr={},ni={},pn={},si={};class Zt{}var kl=Object.freeze({__proto__:null,IEvents:Zt}),Yl=bi(kl);Object.defineProperty(si,"__esModule",{value:!0}),si.IHeartBeat=void 0;const Jl=Yl;class Xl extends Jl.IEvents{constructor(e){super()}}si.IHeartBeat=Xl,function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(si,t)}(pn);var gn={},lr={};Object.defineProperty(lr,"__esModule",{value:!0}),lr.HEARTBEAT_EVENTS=lr.HEARTBEAT_INTERVAL=void 0;const Zl=Ie;lr.HEARTBEAT_INTERVAL=Zl.FIVE_SECONDS,lr.HEARTBEAT_EVENTS={pulse:"heartbeat_pulse"},function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(lr,t)}(gn);var vn=Z&&Z.__awaiter||function(t,e,r,i){function n(s){return s instanceof r?s:new r(function(c){c(s)})}return new(r||(r=Promise))(function(s,c){function u(g){try{d(i.next(g))}catch(D){c(D)}}function h(g){try{d(i.throw(g))}catch(D){c(D)}}function d(g){g.done?s(g.value):n(g.value).then(u,h)}d((i=i.apply(t,e||[])).next())})};Object.defineProperty(ni,"__esModule",{value:!0}),ni.HeartBeat=void 0;const Ql=gr,ed=Ie,td=pn,yn=gn;class _n extends td.IHeartBeat{constructor(e){super(e),this.events=new Ql.EventEmitter,this.interval=yn.HEARTBEAT_INTERVAL,this.interval=e?.interval||yn.HEARTBEAT_INTERVAL}static init(e){return vn(this,void 0,void 0,function*(){const r=new _n(e);return yield r.init(),r})}init(){return vn(this,void 0,void 0,function*(){yield this.initialize()})}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}off(e,r){this.events.off(e,r)}removeListener(e,r){this.events.removeListener(e,r)}initialize(){return vn(this,void 0,void 0,function*(){setInterval(()=>this.pulse(),ed.toMiliseconds(this.interval))})}pulse(){this.events.emit(yn.HEARTBEAT_EVENTS.pulse)}}ni.HeartBeat=_n,function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(ni,t),r(pn,t),r(gn,t)}(Nr);var Se={},Qt={},Lo;function No(){return Lo||(Lo=1,Object.defineProperty(Qt,"__esModule",{value:!0}),Qt.PINO_CUSTOM_CONTEXT_KEY=Qt.PINO_LOGGER_DEFAULTS=void 0,Qt.PINO_LOGGER_DEFAULTS={level:"info"},Qt.PINO_CUSTOM_CONTEXT_KEY="custom_context"),Qt}var ct={},Po;function rd(){if(Po)return ct;Po=1,Object.defineProperty(ct,"__esModule",{value:!0}),ct.generateChildLogger=ct.formatChildLoggerContext=ct.getLoggerContext=ct.setBrowserLoggerContext=ct.getBrowserLoggerContext=ct.getDefaultLoggerOptions=void 0;const t=No();function e(u){return Object.assign(Object.assign({},u),{level:u?.level||t.PINO_LOGGER_DEFAULTS.level})}ct.getDefaultLoggerOptions=e;function r(u,h=t.PINO_CUSTOM_CONTEXT_KEY){return u[h]||""}ct.getBrowserLoggerContext=r;function i(u,h,d=t.PINO_CUSTOM_CONTEXT_KEY){return u[d]=h,u}ct.setBrowserLoggerContext=i;function n(u,h=t.PINO_CUSTOM_CONTEXT_KEY){let d="";return typeof u.bindings>"u"?d=r(u,h):d=u.bindings().context||"",d}ct.getLoggerContext=n;function s(u,h,d=t.PINO_CUSTOM_CONTEXT_KEY){const g=n(u,d);return g.trim()?`${g}/${h}`:h}ct.formatChildLoggerContext=s;function c(u,h,d=t.PINO_CUSTOM_CONTEXT_KEY){const g=s(u,h,d),D=u.child({context:g});return i(D,g,d)}return ct.generateChildLogger=c,ct}(function(t){Object.defineProperty(t,"__esModule",{value:!0});const e=ln;e.__exportStar(No(),t),e.__exportStar(rd(),t)})(Se);class id extends Zt{constructor(e){super(),this.opts=e,this.protocol="wc",this.version=2}}class nd extends Zt{constructor(e,r){super(),this.core=e,this.logger=r,this.records=new Map}}class sd{constructor(e,r){this.logger=e,this.core=r}}class od extends Zt{constructor(e,r){super(),this.relayer=e,this.logger=r}}class ad extends Zt{constructor(e){super()}}class cd{constructor(e,r,i,n){this.core=e,this.logger=r,this.name=i}}class ud extends Zt{constructor(e,r){super(),this.relayer=e,this.logger=r}}function Ke(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}var hd=Ke;Ke.EventEmitter=Ke,Ke.prototype._events=void 0,Ke.prototype._maxListeners=void 0,Ke.defaultMaxListeners=10,Ke.prototype.setMaxListeners=function(t){if(!fd(t)||t<0||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},Ke.prototype.emit=function(t){var e,r,i,n,s,c;if(this._events||(this._events={}),t==="error"&&(!this._events.error||Pr(this._events.error)&&!this._events.error.length)){if(e=arguments[1],e instanceof Error)throw e;var u=new Error('Uncaught, unspecified "error" event. ('+e+")");throw u.context=e,u}if(r=this._events[t],Ro(r))return!1;if(Ft(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:n=Array.prototype.slice.call(arguments,1),r.apply(this,n)}else if(Pr(r))for(n=Array.prototype.slice.call(arguments,1),c=r.slice(),i=c.length,s=0;s<i;s++)c[s].apply(this,n);return!0},Ke.prototype.addListener=function(t,e){var r;if(!Ft(e))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",t,Ft(e.listener)?e.listener:e),this._events[t]?Pr(this._events[t])?this._events[t].push(e):this._events[t]=[this._events[t],e]:this._events[t]=e,Pr(this._events[t])&&!this._events[t].warned&&(Ro(this._maxListeners)?r=Ke.defaultMaxListeners:r=this._maxListeners,r&&r>0&&this._events[t].length>r&&(this._events[t].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[t].length),typeof console.trace=="function"&&console.trace())),this},Ke.prototype.on=Ke.prototype.addListener,Ke.prototype.once=function(t,e){if(!Ft(e))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(t,i),r||(r=!0,e.apply(this,arguments))}return i.listener=e,this.on(t,i),this},Ke.prototype.removeListener=function(t,e){var r,i,n,s;if(!Ft(e))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(r=this._events[t],n=r.length,i=-1,r===e||Ft(r.listener)&&r.listener===e)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,e);else if(Pr(r)){for(s=n;s-- >0;)if(r[s]===e||r[s].listener&&r[s].listener===e){i=s;break}if(i<0)return this;r.length===1?(r.length=0,delete this._events[t]):r.splice(i,1),this._events.removeListener&&this.emit("removeListener",t,e)}return this},Ke.prototype.removeAllListeners=function(t){var e,r;if(!this._events)return this;if(!this._events.removeListener)return arguments.length===0?this._events={}:this._events[t]&&delete this._events[t],this;if(arguments.length===0){for(e in this._events)e!=="removeListener"&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(r=this._events[t],Ft(r))this.removeListener(t,r);else if(r)for(;r.length;)this.removeListener(t,r[r.length-1]);return delete this._events[t],this},Ke.prototype.listeners=function(t){var e;return!this._events||!this._events[t]?e=[]:Ft(this._events[t])?e=[this._events[t]]:e=this._events[t].slice(),e},Ke.prototype.listenerCount=function(t){if(this._events){var e=this._events[t];if(Ft(e))return 1;if(e)return e.length}return 0},Ke.listenerCount=function(t,e){return t.listenerCount(e)};function Ft(t){return typeof t=="function"}function fd(t){return typeof t=="number"}function Pr(t){return typeof t=="object"&&t!==null}function Ro(t){return t===void 0}class ld{constructor(e){this.opts=e,this.protocol="wc",this.version=2}}class dv extends hd.EventEmitter{constructor(){super()}}class dd{constructor(e){this.client=e}}class pd extends Zt{constructor(e,r){super(),this.core=e,this.logger=r}}var bn={},Fo={};(function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=re,r=pt;t.DIGEST_LENGTH=64,t.BLOCK_SIZE=128;var i=function(){function u(){this.digestLength=t.DIGEST_LENGTH,this.blockSize=t.BLOCK_SIZE,this._stateHi=new Int32Array(8),this._stateLo=new Int32Array(8),this._tempHi=new Int32Array(16),this._tempLo=new Int32Array(16),this._buffer=new Uint8Array(256),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this.reset()}return u.prototype._initState=function(){this._stateHi[0]=1779033703,this._stateHi[1]=3144134277,this._stateHi[2]=1013904242,this._stateHi[3]=2773480762,this._stateHi[4]=1359893119,this._stateHi[5]=2600822924,this._stateHi[6]=528734635,this._stateHi[7]=1541459225,this._stateLo[0]=4089235720,this._stateLo[1]=2227873595,this._stateLo[2]=4271175723,this._stateLo[3]=1595750129,this._stateLo[4]=2917565137,this._stateLo[5]=725511199,this._stateLo[6]=4215389547,this._stateLo[7]=327033209},u.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},u.prototype.clean=function(){r.wipe(this._buffer),r.wipe(this._tempHi),r.wipe(this._tempLo),this.reset()},u.prototype.update=function(h,d){if(d===void 0&&(d=h.length),this._finished)throw new Error("SHA512: can't update because hash was finished.");var g=0;if(this._bytesHashed+=d,this._bufferLength>0){for(;this._bufferLength<t.BLOCK_SIZE&&d>0;)this._buffer[this._bufferLength++]=h[g++],d--;this._bufferLength===this.blockSize&&(s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,this.blockSize),this._bufferLength=0)}for(d>=this.blockSize&&(g=s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,h,g,d),d%=this.blockSize);d>0;)this._buffer[this._bufferLength++]=h[g++],d--;return this},u.prototype.finish=function(h){if(!this._finished){var d=this._bytesHashed,g=this._bufferLength,D=d/536870912|0,C=d<<3,x=d%128<112?128:256;this._buffer[g]=128;for(var w=g+1;w<x-8;w++)this._buffer[w]=0;e.writeUint32BE(D,this._buffer,x-8),e.writeUint32BE(C,this._buffer,x-4),s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,x),this._finished=!0}for(var w=0;w<this.digestLength/8;w++)e.writeUint32BE(this._stateHi[w],h,w*8),e.writeUint32BE(this._stateLo[w],h,w*8+4);return this},u.prototype.digest=function(){var h=new Uint8Array(this.digestLength);return this.finish(h),h},u.prototype.saveState=function(){if(this._finished)throw new Error("SHA256: cannot save finished state");return{stateHi:new Int32Array(this._stateHi),stateLo:new Int32Array(this._stateLo),buffer:this._bufferLength>0?new Uint8Array(this._buffer):void 0,bufferLength:this._bufferLength,bytesHashed:this._bytesHashed}},u.prototype.restoreState=function(h){return this._stateHi.set(h.stateHi),this._stateLo.set(h.stateLo),this._bufferLength=h.bufferLength,h.buffer&&this._buffer.set(h.buffer),this._bytesHashed=h.bytesHashed,this._finished=!1,this},u.prototype.cleanSavedState=function(h){r.wipe(h.stateHi),r.wipe(h.stateLo),h.buffer&&r.wipe(h.buffer),h.bufferLength=0,h.bytesHashed=0},u}();t.SHA512=i;var n=new Int32Array([1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591]);function s(u,h,d,g,D,C,x){for(var w=d[0],R=d[1],L=d[2],$=d[3],E=d[4],A=d[5],y=d[6],m=d[7],b=g[0],o=g[1],l=g[2],M=g[3],K=g[4],V=g[5],J=g[6],X=g[7],f,_,U,q,P,N,j,B;x>=128;){for(var Q=0;Q<16;Q++){var H=8*Q+C;u[Q]=e.readUint32BE(D,H),h[Q]=e.readUint32BE(D,H+4)}for(var Q=0;Q<80;Q++){var ee=w,k=R,ae=L,T=$,I=E,S=A,a=y,v=m,z=b,Y=o,fe=l,ye=M,de=K,me=V,Fe=J,Ce=X;if(f=m,_=X,P=_&65535,N=_>>>16,j=f&65535,B=f>>>16,f=(E>>>14|K<<32-14)^(E>>>18|K<<32-18)^(K>>>41-32|E<<32-(41-32)),_=(K>>>14|E<<32-14)^(K>>>18|E<<32-18)^(E>>>41-32|K<<32-(41-32)),P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,f=E&A^~E&y,_=K&V^~K&J,P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,f=n[Q*2],_=n[Q*2+1],P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,f=u[Q%16],_=h[Q%16],P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,N+=P>>>16,j+=N>>>16,B+=j>>>16,U=j&65535|B<<16,q=P&65535|N<<16,f=U,_=q,P=_&65535,N=_>>>16,j=f&65535,B=f>>>16,f=(w>>>28|b<<32-28)^(b>>>34-32|w<<32-(34-32))^(b>>>39-32|w<<32-(39-32)),_=(b>>>28|w<<32-28)^(w>>>34-32|b<<32-(34-32))^(w>>>39-32|b<<32-(39-32)),P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,f=w&R^w&L^R&L,_=b&o^b&l^o&l,P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,N+=P>>>16,j+=N>>>16,B+=j>>>16,v=j&65535|B<<16,Ce=P&65535|N<<16,f=T,_=ye,P=_&65535,N=_>>>16,j=f&65535,B=f>>>16,f=U,_=q,P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,N+=P>>>16,j+=N>>>16,B+=j>>>16,T=j&65535|B<<16,ye=P&65535|N<<16,R=ee,L=k,$=ae,E=T,A=I,y=S,m=a,w=v,o=z,l=Y,M=fe,K=ye,V=de,J=me,X=Fe,b=Ce,Q%16===15)for(var H=0;H<16;H++)f=u[H],_=h[H],P=_&65535,N=_>>>16,j=f&65535,B=f>>>16,f=u[(H+9)%16],_=h[(H+9)%16],P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,U=u[(H+1)%16],q=h[(H+1)%16],f=(U>>>1|q<<32-1)^(U>>>8|q<<32-8)^U>>>7,_=(q>>>1|U<<32-1)^(q>>>8|U<<32-8)^(q>>>7|U<<32-7),P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,U=u[(H+14)%16],q=h[(H+14)%16],f=(U>>>19|q<<32-19)^(q>>>61-32|U<<32-(61-32))^U>>>6,_=(q>>>19|U<<32-19)^(U>>>61-32|q<<32-(61-32))^(q>>>6|U<<32-6),P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,N+=P>>>16,j+=N>>>16,B+=j>>>16,u[H]=j&65535|B<<16,h[H]=P&65535|N<<16}f=w,_=b,P=_&65535,N=_>>>16,j=f&65535,B=f>>>16,f=d[0],_=g[0],P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,N+=P>>>16,j+=N>>>16,B+=j>>>16,d[0]=w=j&65535|B<<16,g[0]=b=P&65535|N<<16,f=R,_=o,P=_&65535,N=_>>>16,j=f&65535,B=f>>>16,f=d[1],_=g[1],P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,N+=P>>>16,j+=N>>>16,B+=j>>>16,d[1]=R=j&65535|B<<16,g[1]=o=P&65535|N<<16,f=L,_=l,P=_&65535,N=_>>>16,j=f&65535,B=f>>>16,f=d[2],_=g[2],P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,N+=P>>>16,j+=N>>>16,B+=j>>>16,d[2]=L=j&65535|B<<16,g[2]=l=P&65535|N<<16,f=$,_=M,P=_&65535,N=_>>>16,j=f&65535,B=f>>>16,f=d[3],_=g[3],P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,N+=P>>>16,j+=N>>>16,B+=j>>>16,d[3]=$=j&65535|B<<16,g[3]=M=P&65535|N<<16,f=E,_=K,P=_&65535,N=_>>>16,j=f&65535,B=f>>>16,f=d[4],_=g[4],P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,N+=P>>>16,j+=N>>>16,B+=j>>>16,d[4]=E=j&65535|B<<16,g[4]=K=P&65535|N<<16,f=A,_=V,P=_&65535,N=_>>>16,j=f&65535,B=f>>>16,f=d[5],_=g[5],P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,N+=P>>>16,j+=N>>>16,B+=j>>>16,d[5]=A=j&65535|B<<16,g[5]=V=P&65535|N<<16,f=y,_=J,P=_&65535,N=_>>>16,j=f&65535,B=f>>>16,f=d[6],_=g[6],P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,N+=P>>>16,j+=N>>>16,B+=j>>>16,d[6]=y=j&65535|B<<16,g[6]=J=P&65535|N<<16,f=m,_=X,P=_&65535,N=_>>>16,j=f&65535,B=f>>>16,f=d[7],_=g[7],P+=_&65535,N+=_>>>16,j+=f&65535,B+=f>>>16,N+=P>>>16,j+=N>>>16,B+=j>>>16,d[7]=m=j&65535|B<<16,g[7]=X=P&65535|N<<16,C+=128,x-=128}return C}function c(u){var h=new i;h.update(u);var d=h.digest();return h.clean(),d}t.hash=c})(Fo),function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=sr,r=Fo,i=pt;t.SIGNATURE_LENGTH=64,t.PUBLIC_KEY_LENGTH=32,t.SECRET_KEY_LENGTH=64,t.SEED_LENGTH=32;function n(T){var I=new Float64Array(16);if(T)for(var S=0;S<T.length;S++)I[S]=T[S];return I}var s=new Uint8Array(32);s[0]=9;var c=n(),u=n([1]),h=n([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),d=n([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),g=n([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),D=n([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),C=n([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function x(T,I){for(var S=0;S<16;S++)T[S]=I[S]|0}function w(T){for(var I=1,S=0;S<16;S++){var a=T[S]+I+65535;I=Math.floor(a/65536),T[S]=a-I*65536}T[0]+=I-1+37*(I-1)}function R(T,I,S){for(var a=~(S-1),v=0;v<16;v++){var z=a&(T[v]^I[v]);T[v]^=z,I[v]^=z}}function L(T,I){for(var S=n(),a=n(),v=0;v<16;v++)a[v]=I[v];w(a),w(a),w(a);for(var z=0;z<2;z++){S[0]=a[0]-65517;for(var v=1;v<15;v++)S[v]=a[v]-65535-(S[v-1]>>16&1),S[v-1]&=65535;S[15]=a[15]-32767-(S[14]>>16&1);var Y=S[15]>>16&1;S[14]&=65535,R(a,S,1-Y)}for(var v=0;v<16;v++)T[2*v]=a[v]&255,T[2*v+1]=a[v]>>8}function $(T,I){for(var S=0,a=0;a<32;a++)S|=T[a]^I[a];return(1&S-1>>>8)-1}function E(T,I){var S=new Uint8Array(32),a=new Uint8Array(32);return L(S,T),L(a,I),$(S,a)}function A(T){var I=new Uint8Array(32);return L(I,T),I[0]&1}function y(T,I){for(var S=0;S<16;S++)T[S]=I[2*S]+(I[2*S+1]<<8);T[15]&=32767}function m(T,I,S){for(var a=0;a<16;a++)T[a]=I[a]+S[a]}function b(T,I,S){for(var a=0;a<16;a++)T[a]=I[a]-S[a]}function o(T,I,S){var a,v,z=0,Y=0,fe=0,ye=0,de=0,me=0,Fe=0,Ce=0,ve=0,pe=0,le=0,ue=0,ce=0,oe=0,se=0,te=0,he=0,ge=0,ie=0,_e=0,be=0,Ee=0,De=0,we=0,xt=0,Lt=0,Vt=0,gt=0,tr=0,zr=0,li=0,Ue=S[0],Le=S[1],Me=S[2],je=S[3],$e=S[4],Ne=S[5],We=S[6],ke=S[7],Ye=S[8],Je=S[9],Xe=S[10],ze=S[11],Be=S[12],Ae=S[13],Ze=S[14],Qe=S[15];a=I[0],z+=a*Ue,Y+=a*Le,fe+=a*Me,ye+=a*je,de+=a*$e,me+=a*Ne,Fe+=a*We,Ce+=a*ke,ve+=a*Ye,pe+=a*Je,le+=a*Xe,ue+=a*ze,ce+=a*Be,oe+=a*Ae,se+=a*Ze,te+=a*Qe,a=I[1],Y+=a*Ue,fe+=a*Le,ye+=a*Me,de+=a*je,me+=a*$e,Fe+=a*Ne,Ce+=a*We,ve+=a*ke,pe+=a*Ye,le+=a*Je,ue+=a*Xe,ce+=a*ze,oe+=a*Be,se+=a*Ae,te+=a*Ze,he+=a*Qe,a=I[2],fe+=a*Ue,ye+=a*Le,de+=a*Me,me+=a*je,Fe+=a*$e,Ce+=a*Ne,ve+=a*We,pe+=a*ke,le+=a*Ye,ue+=a*Je,ce+=a*Xe,oe+=a*ze,se+=a*Be,te+=a*Ae,he+=a*Ze,ge+=a*Qe,a=I[3],ye+=a*Ue,de+=a*Le,me+=a*Me,Fe+=a*je,Ce+=a*$e,ve+=a*Ne,pe+=a*We,le+=a*ke,ue+=a*Ye,ce+=a*Je,oe+=a*Xe,se+=a*ze,te+=a*Be,he+=a*Ae,ge+=a*Ze,ie+=a*Qe,a=I[4],de+=a*Ue,me+=a*Le,Fe+=a*Me,Ce+=a*je,ve+=a*$e,pe+=a*Ne,le+=a*We,ue+=a*ke,ce+=a*Ye,oe+=a*Je,se+=a*Xe,te+=a*ze,he+=a*Be,ge+=a*Ae,ie+=a*Ze,_e+=a*Qe,a=I[5],me+=a*Ue,Fe+=a*Le,Ce+=a*Me,ve+=a*je,pe+=a*$e,le+=a*Ne,ue+=a*We,ce+=a*ke,oe+=a*Ye,se+=a*Je,te+=a*Xe,he+=a*ze,ge+=a*Be,ie+=a*Ae,_e+=a*Ze,be+=a*Qe,a=I[6],Fe+=a*Ue,Ce+=a*Le,ve+=a*Me,pe+=a*je,le+=a*$e,ue+=a*Ne,ce+=a*We,oe+=a*ke,se+=a*Ye,te+=a*Je,he+=a*Xe,ge+=a*ze,ie+=a*Be,_e+=a*Ae,be+=a*Ze,Ee+=a*Qe,a=I[7],Ce+=a*Ue,ve+=a*Le,pe+=a*Me,le+=a*je,ue+=a*$e,ce+=a*Ne,oe+=a*We,se+=a*ke,te+=a*Ye,he+=a*Je,ge+=a*Xe,ie+=a*ze,_e+=a*Be,be+=a*Ae,Ee+=a*Ze,De+=a*Qe,a=I[8],ve+=a*Ue,pe+=a*Le,le+=a*Me,ue+=a*je,ce+=a*$e,oe+=a*Ne,se+=a*We,te+=a*ke,he+=a*Ye,ge+=a*Je,ie+=a*Xe,_e+=a*ze,be+=a*Be,Ee+=a*Ae,De+=a*Ze,we+=a*Qe,a=I[9],pe+=a*Ue,le+=a*Le,ue+=a*Me,ce+=a*je,oe+=a*$e,se+=a*Ne,te+=a*We,he+=a*ke,ge+=a*Ye,ie+=a*Je,_e+=a*Xe,be+=a*ze,Ee+=a*Be,De+=a*Ae,we+=a*Ze,xt+=a*Qe,a=I[10],le+=a*Ue,ue+=a*Le,ce+=a*Me,oe+=a*je,se+=a*$e,te+=a*Ne,he+=a*We,ge+=a*ke,ie+=a*Ye,_e+=a*Je,be+=a*Xe,Ee+=a*ze,De+=a*Be,we+=a*Ae,xt+=a*Ze,Lt+=a*Qe,a=I[11],ue+=a*Ue,ce+=a*Le,oe+=a*Me,se+=a*je,te+=a*$e,he+=a*Ne,ge+=a*We,ie+=a*ke,_e+=a*Ye,be+=a*Je,Ee+=a*Xe,De+=a*ze,we+=a*Be,xt+=a*Ae,Lt+=a*Ze,Vt+=a*Qe,a=I[12],ce+=a*Ue,oe+=a*Le,se+=a*Me,te+=a*je,he+=a*$e,ge+=a*Ne,ie+=a*We,_e+=a*ke,be+=a*Ye,Ee+=a*Je,De+=a*Xe,we+=a*ze,xt+=a*Be,Lt+=a*Ae,Vt+=a*Ze,gt+=a*Qe,a=I[13],oe+=a*Ue,se+=a*Le,te+=a*Me,he+=a*je,ge+=a*$e,ie+=a*Ne,_e+=a*We,be+=a*ke,Ee+=a*Ye,De+=a*Je,we+=a*Xe,xt+=a*ze,Lt+=a*Be,Vt+=a*Ae,gt+=a*Ze,tr+=a*Qe,a=I[14],se+=a*Ue,te+=a*Le,he+=a*Me,ge+=a*je,ie+=a*$e,_e+=a*Ne,be+=a*We,Ee+=a*ke,De+=a*Ye,we+=a*Je,xt+=a*Xe,Lt+=a*ze,Vt+=a*Be,gt+=a*Ae,tr+=a*Ze,zr+=a*Qe,a=I[15],te+=a*Ue,he+=a*Le,ge+=a*Me,ie+=a*je,_e+=a*$e,be+=a*Ne,Ee+=a*We,De+=a*ke,we+=a*Ye,xt+=a*Je,Lt+=a*Xe,Vt+=a*ze,gt+=a*Be,tr+=a*Ae,zr+=a*Ze,li+=a*Qe,z+=38*he,Y+=38*ge,fe+=38*ie,ye+=38*_e,de+=38*be,me+=38*Ee,Fe+=38*De,Ce+=38*we,ve+=38*xt,pe+=38*Lt,le+=38*Vt,ue+=38*gt,ce+=38*tr,oe+=38*zr,se+=38*li,v=1,a=z+v+65535,v=Math.floor(a/65536),z=a-v*65536,a=Y+v+65535,v=Math.floor(a/65536),Y=a-v*65536,a=fe+v+65535,v=Math.floor(a/65536),fe=a-v*65536,a=ye+v+65535,v=Math.floor(a/65536),ye=a-v*65536,a=de+v+65535,v=Math.floor(a/65536),de=a-v*65536,a=me+v+65535,v=Math.floor(a/65536),me=a-v*65536,a=Fe+v+65535,v=Math.floor(a/65536),Fe=a-v*65536,a=Ce+v+65535,v=Math.floor(a/65536),Ce=a-v*65536,a=ve+v+65535,v=Math.floor(a/65536),ve=a-v*65536,a=pe+v+65535,v=Math.floor(a/65536),pe=a-v*65536,a=le+v+65535,v=Math.floor(a/65536),le=a-v*65536,a=ue+v+65535,v=Math.floor(a/65536),ue=a-v*65536,a=ce+v+65535,v=Math.floor(a/65536),ce=a-v*65536,a=oe+v+65535,v=Math.floor(a/65536),oe=a-v*65536,a=se+v+65535,v=Math.floor(a/65536),se=a-v*65536,a=te+v+65535,v=Math.floor(a/65536),te=a-v*65536,z+=v-1+37*(v-1),v=1,a=z+v+65535,v=Math.floor(a/65536),z=a-v*65536,a=Y+v+65535,v=Math.floor(a/65536),Y=a-v*65536,a=fe+v+65535,v=Math.floor(a/65536),fe=a-v*65536,a=ye+v+65535,v=Math.floor(a/65536),ye=a-v*65536,a=de+v+65535,v=Math.floor(a/65536),de=a-v*65536,a=me+v+65535,v=Math.floor(a/65536),me=a-v*65536,a=Fe+v+65535,v=Math.floor(a/65536),Fe=a-v*65536,a=Ce+v+65535,v=Math.floor(a/65536),Ce=a-v*65536,a=ve+v+65535,v=Math.floor(a/65536),ve=a-v*65536,a=pe+v+65535,v=Math.floor(a/65536),pe=a-v*65536,a=le+v+65535,v=Math.floor(a/65536),le=a-v*65536,a=ue+v+65535,v=Math.floor(a/65536),ue=a-v*65536,a=ce+v+65535,v=Math.floor(a/65536),ce=a-v*65536,a=oe+v+65535,v=Math.floor(a/65536),oe=a-v*65536,a=se+v+65535,v=Math.floor(a/65536),se=a-v*65536,a=te+v+65535,v=Math.floor(a/65536),te=a-v*65536,z+=v-1+37*(v-1),T[0]=z,T[1]=Y,T[2]=fe,T[3]=ye,T[4]=de,T[5]=me,T[6]=Fe,T[7]=Ce,T[8]=ve,T[9]=pe,T[10]=le,T[11]=ue,T[12]=ce,T[13]=oe,T[14]=se,T[15]=te}function l(T,I){o(T,I,I)}function M(T,I){var S=n(),a;for(a=0;a<16;a++)S[a]=I[a];for(a=253;a>=0;a--)l(S,S),a!==2&&a!==4&&o(S,S,I);for(a=0;a<16;a++)T[a]=S[a]}function K(T,I){var S=n(),a;for(a=0;a<16;a++)S[a]=I[a];for(a=250;a>=0;a--)l(S,S),a!==1&&o(S,S,I);for(a=0;a<16;a++)T[a]=S[a]}function V(T,I){var S=n(),a=n(),v=n(),z=n(),Y=n(),fe=n(),ye=n(),de=n(),me=n();b(S,T[1],T[0]),b(me,I[1],I[0]),o(S,S,me),m(a,T[0],T[1]),m(me,I[0],I[1]),o(a,a,me),o(v,T[3],I[3]),o(v,v,d),o(z,T[2],I[2]),m(z,z,z),b(Y,a,S),b(fe,z,v),m(ye,z,v),m(de,a,S),o(T[0],Y,fe),o(T[1],de,ye),o(T[2],ye,fe),o(T[3],Y,de)}function J(T,I,S){for(var a=0;a<4;a++)R(T[a],I[a],S)}function X(T,I){var S=n(),a=n(),v=n();M(v,I[2]),o(S,I[0],v),o(a,I[1],v),L(T,a),T[31]^=A(S)<<7}function f(T,I,S){x(T[0],c),x(T[1],u),x(T[2],u),x(T[3],c);for(var a=255;a>=0;--a){var v=S[a/8|0]>>(a&7)&1;J(T,I,v),V(I,T),V(T,T),J(T,I,v)}}function _(T,I){var S=[n(),n(),n(),n()];x(S[0],g),x(S[1],D),x(S[2],u),o(S[3],g,D),f(T,S,I)}function U(T){if(T.length!==t.SEED_LENGTH)throw new Error("ed25519: seed must be "+t.SEED_LENGTH+" bytes");var I=r.hash(T);I[0]&=248,I[31]&=127,I[31]|=64;var S=new Uint8Array(32),a=[n(),n(),n(),n()];_(a,I),X(S,a);var v=new Uint8Array(64);return v.set(T),v.set(S,32),{publicKey:S,secretKey:v}}t.generateKeyPairFromSeed=U;function q(T){var I=e.randomBytes(32,T),S=U(I);return i.wipe(I),S}t.generateKeyPair=q;function P(T){if(T.length!==t.SECRET_KEY_LENGTH)throw new Error("ed25519: secret key must be "+t.SECRET_KEY_LENGTH+" bytes");return new Uint8Array(T.subarray(32))}t.extractPublicKeyFromSecretKey=P;var N=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 j(T,I){var S,a,v,z;for(a=63;a>=32;--a){for(S=0,v=a-32,z=a-12;v<z;++v)I[v]+=S-16*I[a]*N[v-(a-32)],S=Math.floor((I[v]+128)/256),I[v]-=S*256;I[v]+=S,I[a]=0}for(S=0,v=0;v<32;v++)I[v]+=S-(I[31]>>4)*N[v],S=I[v]>>8,I[v]&=255;for(v=0;v<32;v++)I[v]-=S*N[v];for(a=0;a<32;a++)I[a+1]+=I[a]>>8,T[a]=I[a]&255}function B(T){for(var I=new Float64Array(64),S=0;S<64;S++)I[S]=T[S];for(var S=0;S<64;S++)T[S]=0;j(T,I)}function Q(T,I){var S=new Float64Array(64),a=[n(),n(),n(),n()],v=r.hash(T.subarray(0,32));v[0]&=248,v[31]&=127,v[31]|=64;var z=new Uint8Array(64);z.set(v.subarray(32),32);var Y=new r.SHA512;Y.update(z.subarray(32)),Y.update(I);var fe=Y.digest();Y.clean(),B(fe),_(a,fe),X(z,a),Y.reset(),Y.update(z.subarray(0,32)),Y.update(T.subarray(32)),Y.update(I);var ye=Y.digest();B(ye);for(var de=0;de<32;de++)S[de]=fe[de];for(var de=0;de<32;de++)for(var me=0;me<32;me++)S[de+me]+=ye[de]*v[me];return j(z.subarray(32),S),z}t.sign=Q;function H(T,I){var S=n(),a=n(),v=n(),z=n(),Y=n(),fe=n(),ye=n();return x(T[2],u),y(T[1],I),l(v,T[1]),o(z,v,h),b(v,v,T[2]),m(z,T[2],z),l(Y,z),l(fe,Y),o(ye,fe,Y),o(S,ye,v),o(S,S,z),K(S,S),o(S,S,v),o(S,S,z),o(S,S,z),o(T[0],S,z),l(a,T[0]),o(a,a,z),E(a,v)&&o(T[0],T[0],C),l(a,T[0]),o(a,a,z),E(a,v)?-1:(A(T[0])===I[31]>>7&&b(T[0],c,T[0]),o(T[3],T[0],T[1]),0)}function ee(T,I,S){var a=new Uint8Array(32),v=[n(),n(),n(),n()],z=[n(),n(),n(),n()];if(S.length!==t.SIGNATURE_LENGTH)throw new Error("ed25519: signature must be "+t.SIGNATURE_LENGTH+" bytes");if(H(z,T))return!1;var Y=new r.SHA512;Y.update(S.subarray(0,32)),Y.update(T),Y.update(I);var fe=Y.digest();return B(fe),f(v,z,fe),_(z,S.subarray(32)),V(v,z),X(a,v),!$(S,a)}t.verify=ee;function k(T){var I=[n(),n(),n(),n()];if(H(I,T))throw new Error("Ed25519: invalid public key");var S=n(),a=n(),v=I[1];m(S,u,v),b(a,u,v),M(a,a),o(S,S,a);var z=new Uint8Array(32);return L(z,S),z}t.convertPublicKeyToX25519=k;function ae(T){var I=r.hash(T.subarray(0,32));I[0]&=248,I[31]&=127,I[31]|=64;var S=new Uint8Array(I.subarray(0,32));return i.wipe(I),S}t.convertSecretKeyToX25519=ae}(bn);const gd="EdDSA",vd="JWT",Uo=".",Mo="base64url",yd="utf8",_d="utf8",bd=":",md="did",wd="key",jo="base58btc",Ed="z",Dd="K36",xd=32;function oi(t){return ft(ht(_r(t),yd),Mo)}function $o(t){const e=ht(Dd,jo),r=Ed+ft(ji([e,t]),jo);return[md,wd,r].join(bd)}function Sd(t){return ft(t,Mo)}function Od(t){return ht([oi(t.header),oi(t.payload)].join(Uo),_d)}function Ad(t){return[oi(t.header),oi(t.payload),Sd(t.signature)].join(Uo)}function Bo(t=sr.randomBytes(xd)){return bn.generateKeyPairFromSeed(t)}async function Id(t,e,r,i,n=Ie.fromMiliseconds(Date.now())){const s={alg:gd,typ:vd},c=$o(i.publicKey),u=n+r,h={iss:c,sub:t,aud:e,iat:n,exp:u},d=Od({header:s,payload:h}),g=bn.sign(i.secretKey,d);return Ad({header:s,payload:h,signature:g})}const zo=10,Td=typeof global.WebSocket<"u"?global.WebSocket:require("ws");class Cd{constructor(e){if(this.url=e,this.events=new gr.EventEmitter,this.registering=!1,!Vn(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);this.url=e}get connected(){return typeof this.socket<"u"}get connecting(){return this.registering}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}off(e,r){this.events.off(e,r)}removeListener(e,r){this.events.removeListener(e,r)}async open(e=this.url){await this.register(e)}async close(){if(typeof this.socket>"u")throw new Error("Connection already closed");this.socket.close(),this.onClose()}async send(e,r){typeof this.socket>"u"&&(this.socket=await this.register());try{this.socket.send(_r(e))}catch(i){this.onError(e.id,i)}}register(e=this.url){if(!Vn(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);if(this.registering){const r=this.events.getMaxListeners();return(this.events.listenerCount("register_error")>=r||this.events.listenerCount("open")>=r)&&this.events.setMaxListeners(r+1),new Promise((i,n)=>{this.events.once("register_error",s=>{this.resetMaxListeners(),n(s)}),this.events.once("open",()=>{if(this.resetMaxListeners(),typeof this.socket>"u")return n(new Error("WebSocket connection is missing or invalid"));i(this.socket)})})}return this.url=e,this.registering=!0,new Promise((r,i)=>{const n=jn.isReactNative()?void 0:{rejectUnauthorized:!sc(e)},s=new Td(e,[],n);s.onopen=()=>{this.onOpen(s),r(s)},s.onerror=c=>{const u=this.parseError(c.error);this.events.emit("register_error",u),this.onClose(),i(u)}})}onOpen(e){e.onmessage=r=>this.onPayload(r),e.onclose=()=>this.onClose(),e.onerror=r=>{const i=this.parseError(r.error);this.events.emit("error",i)},this.socket=e,this.registering=!1,this.events.emit("open")}onClose(){this.socket=void 0,this.registering=!1,this.events.emit("close")}onPayload(e){if(typeof e.data>"u")return;const r=typeof e.data=="string"?Oi(e.data):e.data;this.events.emit("payload",r)}onError(e,r){const i=this.parseError(r),n=i.message||i.toString(),s=qr(e,n);this.events.emit("payload",s)}parseError(e,r=this.url){return Mn(e,r,"WS")}resetMaxListeners(){this.events.getMaxListeners()>zo&&this.events.setMaxListeners(zo)}}var mn={exports:{}};(function(t,e){var r=200,i="__lodash_hash_undefined__",n=1,s=2,c=9007199254740991,u="[object Arguments]",h="[object Array]",d="[object AsyncFunction]",g="[object Boolean]",D="[object Date]",C="[object Error]",x="[object Function]",w="[object GeneratorFunction]",R="[object Map]",L="[object Number]",$="[object Null]",E="[object Object]",A="[object Promise]",y="[object Proxy]",m="[object RegExp]",b="[object Set]",o="[object String]",l="[object Symbol]",M="[object Undefined]",K="[object WeakMap]",V="[object ArrayBuffer]",J="[object DataView]",X="[object Float32Array]",f="[object Float64Array]",_="[object Int8Array]",U="[object Int16Array]",q="[object Int32Array]",P="[object Uint8Array]",N="[object Uint8ClampedArray]",j="[object Uint16Array]",B="[object Uint32Array]",Q=/[\\^$.*+?()[\]{}|]/g,H=/^\[object .+?Constructor\]$/,ee=/^(?:0|[1-9]\d*)$/,k={};k[X]=k[f]=k[_]=k[U]=k[q]=k[P]=k[N]=k[j]=k[B]=!0,k[u]=k[h]=k[V]=k[g]=k[J]=k[D]=k[C]=k[x]=k[R]=k[L]=k[E]=k[m]=k[b]=k[o]=k[K]=!1;var ae=typeof Z=="object"&&Z&&Z.Object===Object&&Z,T=typeof self=="object"&&self&&self.Object===Object&&self,I=ae||T||Function("return this")(),S=e&&!e.nodeType&&e,a=S&&!0&&t&&!t.nodeType&&t,v=a&&a.exports===S,z=v&&ae.process,Y=function(){try{return z&&z.binding&&z.binding("util")}catch{}}(),fe=Y&&Y.isTypedArray;function ye(p,O){for(var F=-1,W=p==null?0:p.length,Oe=0,ne=[];++F<W;){var Pe=p[F];O(Pe,F,p)&&(ne[Oe++]=Pe)}return ne}function de(p,O){for(var F=-1,W=O.length,Oe=p.length;++F<W;)p[Oe+F]=O[F];return p}function me(p,O){for(var F=-1,W=p==null?0:p.length;++F<W;)if(O(p[F],F,p))return!0;return!1}function Fe(p,O){for(var F=-1,W=Array(p);++F<p;)W[F]=O(F);return W}function Ce(p){return function(O){return p(O)}}function ve(p,O){return p.has(O)}function pe(p,O){return p?.[O]}function le(p){var O=-1,F=Array(p.size);return p.forEach(function(W,Oe){F[++O]=[Oe,W]}),F}function ue(p,O){return function(F){return p(O(F))}}function ce(p){var O=-1,F=Array(p.size);return p.forEach(function(W){F[++O]=W}),F}var oe=Array.prototype,se=Function.prototype,te=Object.prototype,he=I["__core-js_shared__"],ge=se.toString,ie=te.hasOwnProperty,_e=function(){var p=/[^.]+$/.exec(he&&he.keys&&he.keys.IE_PROTO||"");return p?"Symbol(src)_1."+p:""}(),be=te.toString,Ee=RegExp("^"+ge.call(ie).replace(Q,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),De=v?I.Buffer:void 0,we=I.Symbol,xt=I.Uint8Array,Lt=te.propertyIsEnumerable,Vt=oe.splice,gt=we?we.toStringTag:void 0,tr=Object.getOwnPropertySymbols,zr=De?De.isBuffer:void 0,li=ue(Object.keys,Object),Ue=pr(I,"DataView"),Le=pr(I,"Map"),Me=pr(I,"Promise"),je=pr(I,"Set"),$e=pr(I,"WeakMap"),Ne=pr(Object,"create"),We=ir(Ue),ke=ir(Le),Ye=ir(Me),Je=ir(je),Xe=ir($e),ze=we?we.prototype:void 0,Be=ze?ze.valueOf:void 0;function Ae(p){var O=-1,F=p==null?0:p.length;for(this.clear();++O<F;){var W=p[O];this.set(W[0],W[1])}}function Ze(){this.__data__=Ne?Ne(null):{},this.size=0}function Qe(p){var O=this.has(p)&&delete this.__data__[p];return this.size-=O?1:0,O}function E0(p){var O=this.__data__;if(Ne){var F=O[p];return F===i?void 0:F}return ie.call(O,p)?O[p]:void 0}function D0(p){var O=this.__data__;return Ne?O[p]!==void 0:ie.call(O,p)}function x0(p,O){var F=this.__data__;return this.size+=this.has(p)?0:1,F[p]=Ne&&O===void 0?i:O,this}Ae.prototype.clear=Ze,Ae.prototype.delete=Qe,Ae.prototype.get=E0,Ae.prototype.has=D0,Ae.prototype.set=x0;function $t(p){var O=-1,F=p==null?0:p.length;for(this.clear();++O<F;){var W=p[O];this.set(W[0],W[1])}}function S0(){this.__data__=[],this.size=0}function O0(p){var O=this.__data__,F=pi(O,p);if(F<0)return!1;var W=O.length-1;return F==W?O.pop():Vt.call(O,F,1),--this.size,!0}function A0(p){var O=this.__data__,F=pi(O,p);return F<0?void 0:O[F][1]}function I0(p){return pi(this.__data__,p)>-1}function T0(p,O){var F=this.__data__,W=pi(F,p);return W<0?(++this.size,F.push([p,O])):F[W][1]=O,this}$t.prototype.clear=S0,$t.prototype.delete=O0,$t.prototype.get=A0,$t.prototype.has=I0,$t.prototype.set=T0;function rr(p){var O=-1,F=p==null?0:p.length;for(this.clear();++O<F;){var W=p[O];this.set(W[0],W[1])}}function C0(){this.size=0,this.__data__={hash:new Ae,map:new(Le||$t),string:new Ae}}function L0(p){var O=gi(this,p).delete(p);return this.size-=O?1:0,O}function N0(p){return gi(this,p).get(p)}function P0(p){return gi(this,p).has(p)}function R0(p,O){var F=gi(this,p),W=F.size;return F.set(p,O),this.size+=F.size==W?0:1,this}rr.prototype.clear=C0,rr.prototype.delete=L0,rr.prototype.get=N0,rr.prototype.has=P0,rr.prototype.set=R0;function di(p){var O=-1,F=p==null?0:p.length;for(this.__data__=new rr;++O<F;)this.add(p[O])}function F0(p){return this.__data__.set(p,i),this}function U0(p){return this.__data__.has(p)}di.prototype.add=di.prototype.push=F0,di.prototype.has=U0;function Gt(p){var O=this.__data__=new $t(p);this.size=O.size}function M0(){this.__data__=new $t,this.size=0}function j0(p){var O=this.__data__,F=O.delete(p);return this.size=O.size,F}function $0(p){return this.__data__.get(p)}function B0(p){return this.__data__.has(p)}function z0(p,O){var F=this.__data__;if(F instanceof $t){var W=F.__data__;if(!Le||W.length<r-1)return W.push([p,O]),this.size=++F.size,this;F=this.__data__=new rr(W)}return F.set(p,O),this.size=F.size,this}Gt.prototype.clear=M0,Gt.prototype.delete=j0,Gt.prototype.get=$0,Gt.prototype.has=B0,Gt.prototype.set=z0;function H0(p,O){var F=vi(p),W=!F&&iv(p),Oe=!F&&!W&&Nn(p),ne=!F&&!W&&!Oe&&ja(p),Pe=F||W||Oe||ne,et=Pe?Fe(p.length,String):[],nt=et.length;for(var Te in p)(O||ie.call(p,Te))&&!(Pe&&(Te=="length"||Oe&&(Te=="offset"||Te=="parent")||ne&&(Te=="buffer"||Te=="byteLength"||Te=="byteOffset")||Z0(Te,nt)))&&et.push(Te);return et}function pi(p,O){for(var F=p.length;F--;)if(Ra(p[F][0],O))return F;return-1}function K0(p,O,F){var W=O(p);return vi(p)?W:de(W,F(p))}function Hr(p){return p==null?p===void 0?M:$:gt&&gt in Object(p)?J0(p):rv(p)}function Ca(p){return Kr(p)&&Hr(p)==u}function La(p,O,F,W,Oe){return p===O?!0:p==null||O==null||!Kr(p)&&!Kr(O)?p!==p&&O!==O:q0(p,O,F,W,La,Oe)}function q0(p,O,F,W,Oe,ne){var Pe=vi(p),et=vi(O),nt=Pe?h:Wt(p),Te=et?h:Wt(O);nt=nt==u?E:nt,Te=Te==u?E:Te;var vt=nt==E,St=Te==E,at=nt==Te;if(at&&Nn(p)){if(!Nn(O))return!1;Pe=!0,vt=!1}if(at&&!vt)return ne||(ne=new Gt),Pe||ja(p)?Na(p,O,F,W,Oe,ne):k0(p,O,nt,F,W,Oe,ne);if(!(F&n)){var bt=vt&&ie.call(p,"__wrapped__"),mt=St&&ie.call(O,"__wrapped__");if(bt||mt){var kt=bt?p.value():p,Bt=mt?O.value():O;return ne||(ne=new Gt),Oe(kt,Bt,F,W,ne)}}return at?(ne||(ne=new Gt),Y0(p,O,F,W,Oe,ne)):!1}function V0(p){if(!Ma(p)||ev(p))return!1;var O=Fa(p)?Ee:H;return O.test(ir(p))}function G0(p){return Kr(p)&&Ua(p.length)&&!!k[Hr(p)]}function W0(p){if(!tv(p))return li(p);var O=[];for(var F in Object(p))ie.call(p,F)&&F!="constructor"&&O.push(F);return O}function Na(p,O,F,W,Oe,ne){var Pe=F&n,et=p.length,nt=O.length;if(et!=nt&&!(Pe&&nt>et))return!1;var Te=ne.get(p);if(Te&&ne.get(O))return Te==O;var vt=-1,St=!0,at=F&s?new di:void 0;for(ne.set(p,O),ne.set(O,p);++vt<et;){var bt=p[vt],mt=O[vt];if(W)var kt=Pe?W(mt,bt,vt,O,p,ne):W(bt,mt,vt,p,O,ne);if(kt!==void 0){if(kt)continue;St=!1;break}if(at){if(!me(O,function(Bt,nr){if(!ve(at,nr)&&(bt===Bt||Oe(bt,Bt,F,W,ne)))return at.push(nr)})){St=!1;break}}else if(!(bt===mt||Oe(bt,mt,F,W,ne))){St=!1;break}}return ne.delete(p),ne.delete(O),St}function k0(p,O,F,W,Oe,ne,Pe){switch(F){case J:if(p.byteLength!=O.byteLength||p.byteOffset!=O.byteOffset)return!1;p=p.buffer,O=O.buffer;case V:return!(p.byteLength!=O.byteLength||!ne(new xt(p),new xt(O)));case g:case D:case L:return Ra(+p,+O);case C:return p.name==O.name&&p.message==O.message;case m:case o:return p==O+"";case R:var et=le;case b:var nt=W&n;if(et||(et=ce),p.size!=O.size&&!nt)return!1;var Te=Pe.get(p);if(Te)return Te==O;W|=s,Pe.set(p,O);var vt=Na(et(p),et(O),W,Oe,ne,Pe);return Pe.delete(p),vt;case l:if(Be)return Be.call(p)==Be.call(O)}return!1}function Y0(p,O,F,W,Oe,ne){var Pe=F&n,et=Pa(p),nt=et.length,Te=Pa(O),vt=Te.length;if(nt!=vt&&!Pe)return!1;for(var St=nt;St--;){var at=et[St];if(!(Pe?at in O:ie.call(O,at)))return!1}var bt=ne.get(p);if(bt&&ne.get(O))return bt==O;var mt=!0;ne.set(p,O),ne.set(O,p);for(var kt=Pe;++St<nt;){at=et[St];var Bt=p[at],nr=O[at];if(W)var $a=Pe?W(nr,Bt,at,O,p,ne):W(Bt,nr,at,p,O,ne);if(!($a===void 0?Bt===nr||Oe(Bt,nr,F,W,ne):$a)){mt=!1;break}kt||(kt=at=="constructor")}if(mt&&!kt){var yi=p.constructor,_i=O.constructor;yi!=_i&&"constructor"in p&&"constructor"in O&&!(typeof yi=="function"&&yi instanceof yi&&typeof _i=="function"&&_i instanceof _i)&&(mt=!1)}return ne.delete(p),ne.delete(O),mt}function Pa(p){return K0(p,ov,X0)}function gi(p,O){var F=p.__data__;return Q0(O)?F[typeof O=="string"?"string":"hash"]:F.map}function pr(p,O){var F=pe(p,O);return V0(F)?F:void 0}function J0(p){var O=ie.call(p,gt),F=p[gt];try{p[gt]=void 0;var W=!0}catch{}var Oe=be.call(p);return W&&(O?p[gt]=F:delete p[gt]),Oe}var X0=tr?function(p){return p==null?[]:(p=Object(p),ye(tr(p),function(O){return Lt.call(p,O)}))}:av,Wt=Hr;(Ue&&Wt(new Ue(new ArrayBuffer(1)))!=J||Le&&Wt(new Le)!=R||Me&&Wt(Me.resolve())!=A||je&&Wt(new je)!=b||$e&&Wt(new $e)!=K)&&(Wt=function(p){var O=Hr(p),F=O==E?p.constructor:void 0,W=F?ir(F):"";if(W)switch(W){case We:return J;case ke:return R;case Ye:return A;case Je:return b;case Xe:return K}return O});function Z0(p,O){return O=O??c,!!O&&(typeof p=="number"||ee.test(p))&&p>-1&&p%1==0&&p<O}function Q0(p){var O=typeof p;return O=="string"||O=="number"||O=="symbol"||O=="boolean"?p!=="__proto__":p===null}function ev(p){return!!_e&&_e in p}function tv(p){var O=p&&p.constructor,F=typeof O=="function"&&O.prototype||te;return p===F}function rv(p){return be.call(p)}function ir(p){if(p!=null){try{return ge.call(p)}catch{}try{return p+""}catch{}}return""}function Ra(p,O){return p===O||p!==p&&O!==O}var iv=Ca(function(){return arguments}())?Ca:function(p){return Kr(p)&&ie.call(p,"callee")&&!Lt.call(p,"callee")},vi=Array.isArray;function nv(p){return p!=null&&Ua(p.length)&&!Fa(p)}var Nn=zr||cv;function sv(p,O){return La(p,O)}function Fa(p){if(!Ma(p))return!1;var O=Hr(p);return O==x||O==w||O==d||O==y}function Ua(p){return typeof p=="number"&&p>-1&&p%1==0&&p<=c}function Ma(p){var O=typeof p;return p!=null&&(O=="object"||O=="function")}function Kr(p){return p!=null&&typeof p=="object"}var ja=fe?Ce(fe):G0;function ov(p){return nv(p)?H0(p):W0(p)}function av(){return[]}function cv(){return!1}t.exports=sv})(mn,mn.exports);var Ld=mn.exports,Nd=Object.defineProperty,Ho=Object.getOwnPropertySymbols,Pd=Object.prototype.hasOwnProperty,Rd=Object.prototype.propertyIsEnumerable,Ko=(t,e,r)=>e in t?Nd(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,ut=(t,e)=>{for(var r in e||(e={}))Pd.call(e,r)&&Ko(t,r,e[r]);if(Ho)for(var r of Ho(e))Rd.call(e,r)&&Ko(t,r,e[r]);return t};function qe(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}var ai=qe;qe.EventEmitter=qe,qe.prototype._events=void 0,qe.prototype._maxListeners=void 0,qe.defaultMaxListeners=10,qe.prototype.setMaxListeners=function(t){if(!Fd(t)||t<0||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},qe.prototype.emit=function(t){var e,r,i,n,s,c;if(this._events||(this._events={}),t==="error"&&(!this._events.error||Rr(this._events.error)&&!this._events.error.length)){if(e=arguments[1],e instanceof Error)throw e;var u=new Error('Uncaught, unspecified "error" event. ('+e+")");throw u.context=e,u}if(r=this._events[t],qo(r))return!1;if(Ut(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:n=Array.prototype.slice.call(arguments,1),r.apply(this,n)}else if(Rr(r))for(n=Array.prototype.slice.call(arguments,1),c=r.slice(),i=c.length,s=0;s<i;s++)c[s].apply(this,n);return!0},qe.prototype.addListener=function(t,e){var r;if(!Ut(e))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",t,Ut(e.listener)?e.listener:e),this._events[t]?Rr(this._events[t])?this._events[t].push(e):this._events[t]=[this._events[t],e]:this._events[t]=e,Rr(this._events[t])&&!this._events[t].warned&&(qo(this._maxListeners)?r=qe.defaultMaxListeners:r=this._maxListeners,r&&r>0&&this._events[t].length>r&&(this._events[t].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[t].length),typeof console.trace=="function"&&console.trace())),this},qe.prototype.on=qe.prototype.addListener,qe.prototype.once=function(t,e){if(!Ut(e))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(t,i),r||(r=!0,e.apply(this,arguments))}return i.listener=e,this.on(t,i),this},qe.prototype.removeListener=function(t,e){var r,i,n,s;if(!Ut(e))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(r=this._events[t],n=r.length,i=-1,r===e||Ut(r.listener)&&r.listener===e)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,e);else if(Rr(r)){for(s=n;s-- >0;)if(r[s]===e||r[s].listener&&r[s].listener===e){i=s;break}if(i<0)return this;r.length===1?(r.length=0,delete this._events[t]):r.splice(i,1),this._events.removeListener&&this.emit("removeListener",t,e)}return this},qe.prototype.removeAllListeners=function(t){var e,r;if(!this._events)return this;if(!this._events.removeListener)return arguments.length===0?this._events={}:this._events[t]&&delete this._events[t],this;if(arguments.length===0){for(e in this._events)e!=="removeListener"&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(r=this._events[t],Ut(r))this.removeListener(t,r);else if(r)for(;r.length;)this.removeListener(t,r[r.length-1]);return delete this._events[t],this},qe.prototype.listeners=function(t){var e;return!this._events||!this._events[t]?e=[]:Ut(this._events[t])?e=[this._events[t]]:e=this._events[t].slice(),e},qe.prototype.listenerCount=function(t){if(this._events){var e=this._events[t];if(Ut(e))return 1;if(e)return e.length}return 0},qe.listenerCount=function(t,e){return t.listenerCount(e)};function Ut(t){return typeof t=="function"}function Fd(t){return typeof t=="number"}function Rr(t){return typeof t=="object"&&t!==null}function qo(t){return t===void 0}function Ud(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),i=0;i<r.length;i++)r[i]=255;for(var n=0;n<t.length;n++){var s=t.charAt(n),c=s.charCodeAt(0);if(r[c]!==255)throw new TypeError(s+" is ambiguous");r[c]=n}var u=t.length,h=t.charAt(0),d=Math.log(u)/Math.log(256),g=Math.log(256)/Math.log(u);function D(w){if(w instanceof Uint8Array||(ArrayBuffer.isView(w)?w=new Uint8Array(w.buffer,w.byteOffset,w.byteLength):Array.isArray(w)&&(w=Uint8Array.from(w))),!(w instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(w.length===0)return"";for(var R=0,L=0,$=0,E=w.length;$!==E&&w[$]===0;)$++,R++;for(var A=(E-$)*g+1>>>0,y=new Uint8Array(A);$!==E;){for(var m=w[$],b=0,o=A-1;(m!==0||b<L)&&o!==-1;o--,b++)m+=256*y[o]>>>0,y[o]=m%u>>>0,m=m/u>>>0;if(m!==0)throw new Error("Non-zero carry");L=b,$++}for(var l=A-L;l!==A&&y[l]===0;)l++;for(var M=h.repeat(R);l<A;++l)M+=t.charAt(y[l]);return M}function C(w){if(typeof w!="string")throw new TypeError("Expected String");if(w.length===0)return new Uint8Array;var R=0;if(w[R]!==" "){for(var L=0,$=0;w[R]===h;)L++,R++;for(var E=(w.length-R)*d+1>>>0,A=new Uint8Array(E);w[R];){var y=r[w.charCodeAt(R)];if(y===255)return;for(var m=0,b=E-1;(y!==0||m<$)&&b!==-1;b--,m++)y+=u*A[b]>>>0,A[b]=y%256>>>0,y=y/256>>>0;if(y!==0)throw new Error("Non-zero carry");$=m,R++}if(w[R]!==" "){for(var o=E-$;o!==E&&A[o]===0;)o++;for(var l=new Uint8Array(L+(E-o)),M=L;o!==E;)l[M++]=A[o++];return l}}}function x(w){var R=C(w);if(R)return R;throw new Error(`Non-${e} character`)}return{encode:D,decodeUnsafe:C,decode:x}}var Md=Ud,jd=Md;const Vo=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")},$d=t=>new TextEncoder().encode(t),Bd=t=>new TextDecoder().decode(t);class zd{constructor(e,r,i){this.name=e,this.prefix=r,this.baseEncode=i}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class Hd{constructor(e,r,i){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=i}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return Go(this,e)}}class Kd{constructor(e){this.decoders=e}or(e){return Go(this,e)}decode(e){const r=e[0],i=this.decoders[r];if(i)return i.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const Go=(t,e)=>new Kd(ut(ut({},t.decoders||{[t.prefix]:t}),e.decoders||{[e.prefix]:e}));class qd{constructor(e,r,i,n){this.name=e,this.prefix=r,this.baseEncode=i,this.baseDecode=n,this.encoder=new zd(e,r,i),this.decoder=new Hd(e,r,n)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const ci=({name:t,prefix:e,encode:r,decode:i})=>new qd(t,e,r,i),Fr=({prefix:t,name:e,alphabet:r})=>{const{encode:i,decode:n}=jd(r,e);return ci({prefix:t,name:e,encode:i,decode:s=>Vo(n(s))})},Vd=(t,e,r,i)=>{const n={};for(let g=0;g<e.length;++g)n[e[g]]=g;let s=t.length;for(;t[s-1]==="=";)--s;const c=new Uint8Array(s*r/8|0);let u=0,h=0,d=0;for(let g=0;g<s;++g){const D=n[t[g]];if(D===void 0)throw new SyntaxError(`Non-${i} character`);h=h<<r|D,u+=r,u>=8&&(u-=8,c[d++]=255&h>>u)}if(u>=r||255&h<<8-u)throw new SyntaxError("Unexpected end of data");return c},Gd=(t,e,r)=>{const i=e[e.length-1]==="=",n=(1<<r)-1;let s="",c=0,u=0;for(let h=0;h<t.length;++h)for(u=u<<8|t[h],c+=8;c>r;)c-=r,s+=e[n&u>>c];if(c&&(s+=e[n&u<<r-c]),i)for(;s.length*r&7;)s+="=";return s},it=({name:t,prefix:e,bitsPerChar:r,alphabet:i})=>ci({prefix:e,name:t,encode(n){return Gd(n,i,r)},decode(n){return Vd(n,i,r,t)}}),Wd=ci({prefix:"\0",name:"identity",encode:t=>Bd(t),decode:t=>$d(t)});var kd=Object.freeze({__proto__:null,identity:Wd});const Yd=it({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var Jd=Object.freeze({__proto__:null,base2:Yd});const Xd=it({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var Zd=Object.freeze({__proto__:null,base8:Xd});const Qd=Fr({prefix:"9",name:"base10",alphabet:"0123456789"});var ep=Object.freeze({__proto__:null,base10:Qd});const tp=it({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),rp=it({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var ip=Object.freeze({__proto__:null,base16:tp,base16upper:rp});const np=it({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),sp=it({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),op=it({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),ap=it({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),cp=it({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),up=it({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),hp=it({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),fp=it({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),lp=it({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var dp=Object.freeze({__proto__:null,base32:np,base32upper:sp,base32pad:op,base32padupper:ap,base32hex:cp,base32hexupper:up,base32hexpad:hp,base32hexpadupper:fp,base32z:lp});const pp=Fr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),gp=Fr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var vp=Object.freeze({__proto__:null,base36:pp,base36upper:gp});const yp=Fr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),_p=Fr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var bp=Object.freeze({__proto__:null,base58btc:yp,base58flickr:_p});const mp=it({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),wp=it({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Ep=it({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Dp=it({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var xp=Object.freeze({__proto__:null,base64:mp,base64pad:wp,base64url:Ep,base64urlpad:Dp});const Wo=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),Sp=Wo.reduce((t,e,r)=>(t[r]=e,t),[]),Op=Wo.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function Ap(t){return t.reduce((e,r)=>(e+=Sp[r],e),"")}function Ip(t){const e=[];for(const r of t){const i=Op[r.codePointAt(0)];if(i===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(i)}return new Uint8Array(e)}const Tp=ci({prefix:"\u{1F680}",name:"base256emoji",encode:Ap,decode:Ip});var Cp=Object.freeze({__proto__:null,base256emoji:Tp}),Lp=Yo,ko=128,Np=127,Pp=~Np,Rp=Math.pow(2,31);function Yo(t,e,r){e=e||[],r=r||0;for(var i=r;t>=Rp;)e[r++]=t&255|ko,t/=128;for(;t&Pp;)e[r++]=t&255|ko,t>>>=7;return e[r]=t|0,Yo.bytes=r-i+1,e}var Fp=wn,Up=128,Jo=127;function wn(t,i){var r=0,i=i||0,n=0,s=i,c,u=t.length;do{if(s>=u)throw wn.bytes=0,new RangeError("Could not decode varint");c=t[s++],r+=n<28?(c&Jo)<<n:(c&Jo)*Math.pow(2,n),n+=7}while(c>=Up);return wn.bytes=s-i,r}var Mp=Math.pow(2,7),jp=Math.pow(2,14),$p=Math.pow(2,21),Bp=Math.pow(2,28),zp=Math.pow(2,35),Hp=Math.pow(2,42),Kp=Math.pow(2,49),qp=Math.pow(2,56),Vp=Math.pow(2,63),Gp=function(t){return t<Mp?1:t<jp?2:t<$p?3:t<Bp?4:t<zp?5:t<Hp?6:t<Kp?7:t<qp?8:t<Vp?9:10},Wp={encode:Lp,decode:Fp,encodingLength:Gp},Xo=Wp;const Zo=(t,e,r=0)=>(Xo.encode(t,e,r),e),Qo=t=>Xo.encodingLength(t),En=(t,e)=>{const r=e.byteLength,i=Qo(t),n=i+Qo(r),s=new Uint8Array(n+r);return Zo(t,s,0),Zo(r,s,i),s.set(e,n),new kp(t,r,e,s)};class kp{constructor(e,r,i,n){this.code=e,this.size=r,this.digest=i,this.bytes=n}}const ea=({name:t,code:e,encode:r})=>new Yp(t,e,r);class Yp{constructor(e,r,i){this.name=e,this.code=r,this.encode=i}digest(e){if(e instanceof Uint8Array){const r=this.encode(e);return r instanceof Uint8Array?En(this.code,r):r.then(i=>En(this.code,i))}else throw Error("Unknown type, must be binary type")}}const ta=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),Jp=ea({name:"sha2-256",code:18,encode:ta("SHA-256")}),Xp=ea({name:"sha2-512",code:19,encode:ta("SHA-512")});var Zp=Object.freeze({__proto__:null,sha256:Jp,sha512:Xp});const ra=0,Qp="identity",ia=Vo;var eg=Object.freeze({__proto__:null,identity:{code:ra,name:Qp,encode:ia,digest:t=>En(ra,ia(t))}});new TextEncoder,new TextDecoder;const na=ut(ut(ut(ut(ut(ut(ut(ut(ut(ut({},kd),Jd),Zd),ep),ip),dp),vp),bp),xp),Cp);ut(ut({},Zp),eg);function tg(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?globalThis.Buffer.allocUnsafe(t):new Uint8Array(t)}function sa(t,e,r,i){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:i}}}const oa=sa("utf8","u",t=>{const e=new TextDecoder("utf8");return"u"+e.decode(t)},t=>new TextEncoder().encode(t.substring(1))),Dn=sa("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);const e=tg(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),rg=ut({utf8:oa,"utf-8":oa,hex:na.base16,latin1:Dn,ascii:Dn,binary:Dn},na);function ig(t,e="utf8"){const r=rg[e];if(!r)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t,"utf8"):r.decoder.decode(`${r.prefix}${t}`)}const aa="wc",ng=2,xn="core",Ur=`${aa}@${2}:${xn}:`,sg={name:xn,logger:"error"},og={database:":memory:"},ag="crypto",ca="client_ed25519_seed",cg=Ie.ONE_DAY,ug="keychain",hg="0.3",fg="messages",lg="0.3",dg=Ie.SIX_HOURS,pg="publisher",ua="irn",gg="error",vg="wss://relay.walletconnect.com",yg="relayer",Mr={message:"relayer_message",connect:"relayer_connect",disconnect:"relayer_disconnect",error:"relayer_error"},_g="_subscription",dr={payload:"payload",connect:"connect",disconnect:"disconnect",error:"error"},bg=Ie.ONE_SECOND,mg="2.0.0-rc.1",wg="0.3",er={created:"subscription_created",deleted:"subscription_deleted",expired:"subscription_expired",disabled:"subscription_disabled",sync:"subscription_sync"},Eg="subscription",Dg="0.3",xg=Ie.FIVE_SECONDS*1e3;class Sg{constructor(e,r){this.core=e,this.logger=r,this.keychain=new Map,this.name=ug,this.version=hg,this.initialized=!1,this.storagePrefix=Ur,this.init=async()=>{if(!this.initialized){const i=await this.getKeyChain();typeof i<"u"&&(this.keychain=i),this.initialized=!0}},this.has=i=>(this.isInitialized(),this.keychain.has(i)),this.set=async(i,n)=>{this.isInitialized(),this.keychain.set(i,n),await this.persist()},this.get=i=>{this.isInitialized();const n=this.keychain.get(i);if(typeof n>"u"){const{message:s}=G("NO_MATCHING_KEY",`${this.name}: ${i}`);throw new Error(s)}return n},this.del=async i=>{this.isInitialized(),this.keychain.delete(i),await this.persist()},this.core=e,this.logger=Se.generateChildLogger(r,this.name)}get context(){return Se.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,io(e))}async getKeyChain(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?no(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){const{message:e}=G("NOT_INITIALIZED",this.name);throw new Error(e)}}}class Og{constructor(e,r,i){this.core=e,this.logger=r,this.name=ag,this.initialized=!1,this.init=async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)},this.hasKeys=n=>(this.isInitialized(),this.keychain.has(n)),this.getClientId=async()=>{this.isInitialized();const n=await this.getClientSeed(),s=Bo(n);return $o(s.publicKey)},this.generateKeyPair=()=>{this.isInitialized();const n=sf();return this.setPrivateKey(n.publicKey,n.privateKey)},this.signJWT=async n=>{this.isInitialized();const s=await this.getClientSeed(),c=Bo(s),u=Zi();return await Id(u,n,cg,c)},this.generateSharedKey=(n,s,c)=>{this.isInitialized();const u=this.getPrivateKey(n),h=of(u,s);return this.setSymKey(h,c)},this.setSymKey=async(n,s)=>{this.isInitialized();const c=s||af(n);return await this.keychain.set(c,n),c},this.deleteKeyPair=async n=>{this.isInitialized(),await this.keychain.del(n)},this.deleteSymKey=async n=>{this.isInitialized(),await this.keychain.del(n)},this.encode=async(n,s,c)=>{this.isInitialized();const u=Xs(c),h=_r(s);if(Zs(u)){const C=u.senderPublicKey,x=u.receiverPublicKey;n=await this.generateSharedKey(C,x)}const d=this.getSymKey(n),{type:g,senderPublicKey:D}=u;return uf({type:g,symKey:d,message:h,senderPublicKey:D})},this.decode=async(n,s,c)=>{this.isInitialized();const u=lf(s,c);if(Zs(u)){const g=u.receiverPublicKey,D=u.senderPublicKey;n=await this.generateSharedKey(g,D)}const h=this.getSymKey(n),d=hf({symKey:h,encoded:s});return Oi(d)},this.core=e,this.logger=Se.generateChildLogger(r,this.name),this.keychain=i||new Sg(this.core,this.logger)}get context(){return Se.getLoggerContext(this.logger)}async setPrivateKey(e,r){return await this.keychain.set(e,r),e}getPrivateKey(e){return this.keychain.get(e)}async getClientSeed(){let e="";try{e=this.keychain.get(ca)}catch{e=Zi(),await this.keychain.set(ca,e)}return ig(e,"base16")}getSymKey(e){return this.keychain.get(e)}isInitialized(){if(!this.initialized){const{message:e}=G("NOT_INITIALIZED",this.name);throw new Error(e)}}}class Ag extends sd{constructor(e,r){super(e,r),this.logger=e,this.core=r,this.messages=new Map,this.name=fg,this.version=lg,this.initialized=!1,this.storagePrefix=Ur,this.init=async()=>{if(!this.initialized){this.logger.trace("Initialized");try{const i=await this.getRelayerMessages();typeof i<"u"&&(this.messages=i),this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:"method",method:"restore",size:this.messages.size})}catch(i){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(i)}finally{this.initialized=!0}}},this.set=async(i,n)=>{this.isInitialized();const s=Zr(n);let c=this.messages.get(i);return typeof c>"u"&&(c={}),typeof c[s]<"u"||(c[s]=n,this.messages.set(i,c),await this.persist()),s},this.get=i=>{this.isInitialized();let n=this.messages.get(i);return typeof n>"u"&&(n={}),n},this.has=(i,n)=>{this.isInitialized();const s=this.get(i),c=Zr(n);return typeof s[c]<"u"},this.del=async i=>{this.isInitialized(),this.messages.delete(i),await this.persist()},this.logger=Se.generateChildLogger(e,this.name),this.core=r}get context(){return Se.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}async setRelayerMessages(e){await this.core.storage.setItem(this.storageKey,io(e))}async getRelayerMessages(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?no(e):void 0}async persist(){await this.setRelayerMessages(this.messages)}isInitialized(){if(!this.initialized){const{message:e}=G("NOT_INITIALIZED",this.name);throw new Error(e)}}}class Ig extends od{constructor(e,r){super(e,r),this.relayer=e,this.logger=r,this.events=new ai.EventEmitter,this.name=pg,this.queue=new Map,this.publish=async(i,n,s)=>{this.logger.debug("Publishing Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:i,message:n,opts:s}});try{const c=s?.ttl||dg,u=Qi(s),h=s?.prompt||!1,d=s?.tag||0,g={topic:i,message:n,opts:{ttl:c,relay:u,prompt:h,tag:d}},D=Zr(n);this.queue.set(D,g),await this.rpcPublish(i,n,c,u,h,d),this.onPublish(D,g),this.logger.debug("Successfully Published Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:i,message:n,opts:s}})}catch(c){throw this.logger.debug("Failed to Publish Payload"),this.logger.error(c),c}},this.on=(i,n)=>{this.events.on(i,n)},this.once=(i,n)=>{this.events.once(i,n)},this.off=(i,n)=>{this.events.off(i,n)},this.removeListener=(i,n)=>{this.events.removeListener(i,n)},this.relayer=e,this.logger=Se.generateChildLogger(r,this.name),this.registerEventListeners()}get context(){return Se.getLoggerContext(this.logger)}rpcPublish(e,r,i,n,s,c){var u,h,d,g;const D={method:en(n.protocol).publish,params:{topic:e,message:r,ttl:i,prompt:s,tag:c}};return yt((u=D.params)==null?void 0:u.prompt)&&((h=D.params)==null||delete h.prompt),yt((d=D.params)==null?void 0:d.tag)&&((g=D.params)==null||delete g.tag),this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"message",direction:"outgoing",request:D}),this.relayer.provider.request(D)}onPublish(e,r){this.queue.delete(e)}checkQueue(){this.queue.forEach(async e=>{const{topic:r,message:i,opts:{ttl:n,relay:s,prompt:c,tag:u}}=e,h=Zr(i);await this.rpcPublish(r,i,n,s,c,u),this.onPublish(h,e)})}registerEventListeners(){this.relayer.core.heartbeat.on(Nr.HEARTBEAT_EVENTS.pulse,()=>{this.checkQueue()})}}class Tg{constructor(){this.map=new Map,this.set=(e,r)=>{const i=this.get(e);this.exists(e,r)||this.map.set(e,[...i,r])},this.get=e=>this.map.get(e)||[],this.exists=(e,r)=>this.get(e).includes(r),this.delete=(e,r)=>{if(typeof r>"u"){this.map.delete(e);return}if(!this.map.has(e))return;const i=this.get(e);if(!this.exists(e,r))return;const n=i.filter(s=>s!==r);if(!n.length){this.map.delete(e);return}this.map.set(e,n)},this.clear=()=>{this.map.clear()}}get topics(){return Array.from(this.map.keys())}}var Cg=Object.defineProperty,Lg=Object.defineProperties,Ng=Object.getOwnPropertyDescriptors,ha=Object.getOwnPropertySymbols,Pg=Object.prototype.hasOwnProperty,Rg=Object.prototype.propertyIsEnumerable,fa=(t,e,r)=>e in t?Cg(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,ui=(t,e)=>{for(var r in e||(e={}))Pg.call(e,r)&&fa(t,r,e[r]);if(ha)for(var r of ha(e))Rg.call(e,r)&&fa(t,r,e[r]);return t},Sn=(t,e)=>Lg(t,Ng(e));class Fg extends ud{constructor(e,r){super(e,r),this.relayer=e,this.logger=r,this.subscriptions=new Map,this.topicMap=new Tg,this.events=new ai.EventEmitter,this.name=Eg,this.version=Dg,this.pending=new Map,this.cached=[],this.initialized=!1,this.pendingSubscriptionWatchLabel="pending_sub_watch_label",this.pendingSubInterval=20,this.storagePrefix=Ur,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),await this.reset(),this.registerEventListeners(),this.onEnable())},this.subscribe=async(i,n)=>{this.isInitialized(),this.logger.debug("Subscribing Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:i,opts:n}});try{const s=Qi(n),c={topic:i,relay:s};this.pending.set(i,c);const u=await this.rpcSubscribe(i,s);return this.onSubscribe(u,c),this.logger.debug("Successfully Subscribed Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:i,opts:n}}),u}catch(s){throw this.logger.debug("Failed to Subscribe Topic"),this.logger.error(s),s}},this.unsubscribe=async(i,n)=>{this.isInitialized(),typeof n?.id<"u"?await this.unsubscribeById(i,n.id,n):await this.unsubscribeByTopic(i,n)},this.isSubscribed=async i=>this.topics.includes(i)?!0:await new Promise((n,s)=>{const c=new Ie.Watch;c.start(this.pendingSubscriptionWatchLabel);const u=setInterval(()=>{!this.pending.has(i)&&this.topics.includes(i)&&(clearInterval(u),c.stop(this.pendingSubscriptionWatchLabel),n(!0)),c.elapsed(this.pendingSubscriptionWatchLabel)>=xg&&(clearInterval(u),c.stop(this.pendingSubscriptionWatchLabel),s(!1))},this.pendingSubInterval)}),this.on=(i,n)=>{this.events.on(i,n)},this.once=(i,n)=>{this.events.once(i,n)},this.off=(i,n)=>{this.events.off(i,n)},this.removeListener=(i,n)=>{this.events.removeListener(i,n)},this.relayer=e,this.logger=Se.generateChildLogger(r,this.name)}get context(){return Se.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}get length(){return this.subscriptions.size}get ids(){return Array.from(this.subscriptions.keys())}get values(){return Array.from(this.subscriptions.values())}get topics(){return this.topicMap.topics}hasSubscription(e,r){let i=!1;try{i=this.getSubscription(e).topic===r}catch{}return i}onEnable(){this.cached=[],this.initialized=!0}onDisable(){this.cached=this.values,this.subscriptions.clear(),this.topicMap.clear(),this.initialized=!1}async unsubscribeByTopic(e,r){const i=this.topicMap.get(e);await Promise.all(i.map(async n=>await this.unsubscribeById(e,n,r)))}async unsubscribeById(e,r,i){this.logger.debug("Unsubscribing Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:r,opts:i}});try{const n=Qi(i);await this.rpcUnsubscribe(e,r,n);const s=rt("USER_DISCONNECTED",`${this.name}, ${e}`);await this.onUnsubscribe(e,r,s),this.logger.debug("Successfully Unsubscribed Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:r,opts:i}})}catch(n){throw this.logger.debug("Failed to Unsubscribe Topic"),this.logger.error(n),n}}async rpcSubscribe(e,r){const i={method:en(r.protocol).subscribe,params:{topic:e}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:i}),await this.relayer.provider.request(i)}rpcUnsubscribe(e,r,i){const n={method:en(i.protocol).unsubscribe,params:{topic:e,id:r}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:n}),this.relayer.provider.request(n)}onSubscribe(e,r){this.setSubscription(e,Sn(ui({},r),{id:e})),this.pending.delete(r.topic)}onResubscribe(e,r){this.addSubscription(e,Sn(ui({},r),{id:e})),this.pending.delete(r.topic)}async onUnsubscribe(e,r,i){this.events.removeAllListeners(r),this.hasSubscription(r,e)&&this.deleteSubscription(r,i),await this.relayer.messages.del(e)}async setRelayerSubscriptions(e){await this.relayer.core.storage.setItem(this.storageKey,e)}async getRelayerSubscriptions(){return await this.relayer.core.storage.getItem(this.storageKey)}setSubscription(e,r){this.subscriptions.has(e)||(this.logger.debug("Setting subscription"),this.logger.trace({type:"method",method:"setSubscription",id:e,subscription:r}),this.addSubscription(e,r))}addSubscription(e,r){this.subscriptions.set(e,ui({},r)),this.topicMap.set(r.topic,e),this.events.emit(er.created,r)}getSubscription(e){this.logger.debug("Getting subscription"),this.logger.trace({type:"method",method:"getSubscription",id:e});const r=this.subscriptions.get(e);if(!r){const{message:i}=G("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(i)}return r}deleteSubscription(e,r){this.logger.debug("Deleting subscription"),this.logger.trace({type:"method",method:"deleteSubscription",id:e,reason:r});const i=this.getSubscription(e);this.subscriptions.delete(e),this.topicMap.delete(i.topic,e),this.events.emit(er.deleted,Sn(ui({},i),{reason:r}))}async persist(){await this.setRelayerSubscriptions(this.values),this.events.emit(er.sync)}async reset(){!this.cached.length||await Promise.all(this.cached.map(async e=>await this.resubscribe(e)))}async restore(){try{const e=await this.getRelayerSubscriptions();if(typeof e>"u"||!e.length)return;if(this.subscriptions.size){const{message:r}=G("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(r),new Error(r)}this.cached=e,this.logger.debug(`Successfully Restored subscriptions for ${this.name}`),this.logger.trace({type:"method",method:"restore",subscriptions:this.values})}catch(e){this.logger.debug(`Failed to Restore subscriptions for ${this.name}`),this.logger.error(e)}}async resubscribe(e){if(!this.ids.includes(e.id)){const{topic:r,relay:i}=e,n={topic:r,relay:i};this.pending.set(n.topic,n);const s=await this.rpcSubscribe(n.topic,n.relay);this.onResubscribe(s,n)}}async onConnect(){await this.reset(),this.onEnable()}onDisconnect(){this.onDisable()}checkPending(){this.pending.forEach(async e=>{const r=await this.rpcSubscribe(e.topic,e.relay);this.onSubscribe(r,e)})}registerEventListeners(){this.relayer.core.heartbeat.on(Nr.HEARTBEAT_EVENTS.pulse,()=>{this.checkPending()}),this.relayer.provider.on(dr.connect,async()=>{await this.onConnect()}),this.relayer.provider.on(dr.disconnect,()=>{this.onDisconnect()}),this.events.on(er.created,async e=>{const r=er.created;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,data:e}),await this.persist()}),this.events.on(er.deleted,async e=>{const r=er.deleted;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,data:e}),await this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=G("NOT_INITIALIZED",this.name);throw new Error(e)}}}var Ug=Object.defineProperty,la=Object.getOwnPropertySymbols,Mg=Object.prototype.hasOwnProperty,jg=Object.prototype.propertyIsEnumerable,da=(t,e,r)=>e in t?Ug(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,$g=(t,e)=>{for(var r in e||(e={}))Mg.call(e,r)&&da(t,r,e[r]);if(la)for(var r of la(e))jg.call(e,r)&&da(t,r,e[r]);return t};class Bg extends ad{constructor(e){super(e),this.protocol="wc",this.version=2,this.events=new ai.EventEmitter,this.name=yg,this.initialized=!1,this.core=e.core,this.logger=typeof e.logger<"u"&&typeof e.logger!="string"?Se.generateChildLogger(e.logger,this.name):sn(Se.getDefaultLoggerOptions({level:e.logger||gg})),this.messages=new Ag(this.logger,e.core),this.subscriber=new Fg(this,this.logger),this.publisher=new Ig(this,this.logger),this.relayUrl=e?.relayUrl||vg,this.projectId=e.projectId,this.provider={}}async init(){this.logger.trace("Initialized");const e=await this.core.crypto.signJWT(this.relayUrl);this.provider=this.createProvider(e),await Promise.all([this.messages.init(),this.provider.connect(),this.subscriber.init()]),this.registerEventListeners(),this.initialized=!0}get context(){return Se.getLoggerContext(this.logger)}get connected(){return this.provider.connection.connected}get connecting(){return this.provider.connection.connecting}async publish(e,r,i){this.isInitialized(),await this.publisher.publish(e,r,i),await this.recordMessageEvent({topic:e,message:r})}async subscribe(e,r){return this.isInitialized(),await this.subscriber.subscribe(e,r)}async unsubscribe(e,r){this.isInitialized(),await this.subscriber.unsubscribe(e,r)}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}off(e,r){this.events.off(e,r)}removeListener(e,r){this.events.removeListener(e,r)}createProvider(e){return new xi(new Cd(Of({sdkVersion:mg,protocol:this.protocol,version:this.version,relayUrl:this.relayUrl,projectId:this.projectId,auth:e})))}async recordMessageEvent(e){const{topic:r,message:i}=e;await this.messages.set(r,i)}async shouldIgnoreMessageEvent(e){const{topic:r,message:i}=e;return await this.subscriber.isSubscribed(r)?this.messages.has(r,i):!0}async onProviderPayload(e){if(this.logger.debug("Incoming Relay Payload"),this.logger.trace({type:"payload",direction:"incoming",payload:e}),Wn(e)){if(!e.method.endsWith(_g))return;const r=e.params,{topic:i,message:n}=r.data,s={topic:i,message:n};this.logger.debug("Emitting Relayer Payload"),this.logger.trace($g({type:"event",event:r.id},s)),this.events.emit(r.id,s),await this.acknowledgePayload(e),await this.onMessageEvent(s)}}async onMessageEvent(e){await this.shouldIgnoreMessageEvent(e)||(this.events.emit(Mr.message,e),await this.recordMessageEvent(e))}async acknowledgePayload(e){const r=Di(e.id,!0);await this.provider.connection.send(r)}registerEventListeners(){this.provider.on(dr.payload,e=>this.onProviderPayload(e)),this.provider.on(dr.connect,()=>{this.events.emit(Mr.connect)}),this.provider.on(dr.disconnect,()=>{this.events.emit(Mr.disconnect),setTimeout(()=>{this.provider.connect()},Ie.toMiliseconds(bg))}),this.provider.on(dr.error,e=>this.events.emit(Mr.error,e))}isInitialized(){if(!this.initialized){const{message:e}=G("NOT_INITIALIZED",this.name);throw new Error(e)}}}var zg=Object.defineProperty,pa=Object.getOwnPropertySymbols,Hg=Object.prototype.hasOwnProperty,Kg=Object.prototype.propertyIsEnumerable,ga=(t,e,r)=>e in t?zg(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,va=(t,e)=>{for(var r in e||(e={}))Hg.call(e,r)&&ga(t,r,e[r]);if(pa)for(var r of pa(e))Kg.call(e,r)&&ga(t,r,e[r]);return t};class On extends cd{constructor(e,r,i,n=Ur,s=void 0){super(e,r,i,n),this.core=e,this.logger=r,this.name=i,this.map=new Map,this.version=wg,this.cached=[],this.initialized=!1,this.storagePrefix=Ur,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(c=>{Wf(c)?this.map.set(c.id,c):kf(c)?this.map.set(c.topic,c):this.getKey&&c!==null&&!yt(c)&&this.map.set(this.getKey(c),c)}),this.cached=[],this.initialized=!0)},this.set=async(c,u)=>{this.isInitialized(),this.map.has(c)?await this.update(c,u):(this.logger.debug("Setting value"),this.logger.trace({type:"method",method:"set",key:c,value:u}),this.map.set(c,u),await this.persist())},this.get=c=>(this.isInitialized(),this.logger.debug("Getting value"),this.logger.trace({type:"method",method:"get",key:c}),this.getData(c)),this.getAll=c=>c?this.values.filter(u=>Object.keys(c).every(h=>Ld(u[h],c[h]))):this.values,this.update=async(c,u)=>{this.isInitialized(),this.logger.debug("Updating value"),this.logger.trace({type:"method",method:"update",key:c,update:u});const h=va(va({},this.getData(c)),u);this.map.set(c,h),await this.persist()},this.delete=async(c,u)=>{this.isInitialized(),this.map.has(c)&&(this.logger.debug("Deleting value"),this.logger.trace({type:"method",method:"delete",key:c,reason:u}),this.map.delete(c),await this.persist())},this.logger=Se.generateChildLogger(r,this.name),this.storagePrefix=n,this.getKey=s}get context(){return Se.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}get length(){return this.map.size}get keys(){return Array.from(this.map.keys())}get values(){return Array.from(this.map.values())}async setDataStore(e){await this.core.storage.setItem(this.storageKey,e)}async getDataStore(){return await this.core.storage.getItem(this.storageKey)}getData(e){const r=this.map.get(e);if(!r){const{message:i}=G("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(i),new Error(i)}return r}async persist(){await this.setDataStore(this.values)}async restore(){try{const e=await this.getDataStore();if(typeof e>"u"||!e.length)return;if(this.map.size){const{message:r}=G("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(r),new Error(r)}this.cached=e,this.logger.debug(`Successfully Restored value for ${this.name}`),this.logger.trace({type:"method",method:"restore",value:this.values})}catch(e){this.logger.debug(`Failed to Restore value for ${this.name}`),this.logger.error(e)}}isInitialized(){if(!this.initialized){const{message:e}=G("NOT_INITIALIZED",this.name);throw new Error(e)}}}var qg=Object.defineProperty,ya=Object.getOwnPropertySymbols,Vg=Object.prototype.hasOwnProperty,Gg=Object.prototype.propertyIsEnumerable,_a=(t,e,r)=>e in t?qg(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,ba=(t,e)=>{for(var r in e||(e={}))Vg.call(e,r)&&_a(t,r,e[r]);if(ya)for(var r of ya(e))Gg.call(e,r)&&_a(t,r,e[r]);return t};class An extends id{constructor(e){super(e),this.protocol=aa,this.version=ng,this.name=xn,this.events=new ai.EventEmitter,this.initialized=!1,this.on=(i,n)=>this.events.on(i,n),this.once=(i,n)=>this.events.once(i,n),this.off=(i,n)=>this.events.off(i,n),this.removeListener=(i,n)=>this.events.removeListener(i,n),this.projectId=e?.projectId;const r=typeof e?.logger<"u"&&typeof e?.logger!="string"?e.logger:sn(Se.getDefaultLoggerOptions({level:e?.logger||sg.logger}));this.logger=Se.generateChildLogger(r,this.name),this.heartbeat=new Nr.HeartBeat,this.crypto=new Og(this,this.logger,e?.keychain),this.storage=e!=null&&e.storage?e.storage:new Wl(ba(ba({},og),e?.storageOptions)),this.relayer=new Bg({core:this,logger:this.logger,relayUrl:e?.relayUrl,projectId:this.projectId})}static async init(e){const r=new An(e);return await r.initialize(),r}get context(){return Se.getLoggerContext(this.logger)}async start(){this.initialized||await this.initialize()}async initialize(){this.logger.trace("Initialized");try{await this.crypto.init(),await this.relayer.init(),await this.heartbeat.init(),this.initialized=!0,this.logger.info("Core Initilization Success")}catch(e){throw this.logger.info("Core Initilization Failure"),this.logger.error(e.message),e}}}const Wg=An;function Ve(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}var hi=Ve;Ve.EventEmitter=Ve,Ve.prototype._events=void 0,Ve.prototype._maxListeners=void 0,Ve.defaultMaxListeners=10,Ve.prototype.setMaxListeners=function(t){if(!kg(t)||t<0||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},Ve.prototype.emit=function(t){var e,r,i,n,s,c;if(this._events||(this._events={}),t==="error"&&(!this._events.error||jr(this._events.error)&&!this._events.error.length)){if(e=arguments[1],e instanceof Error)throw e;var u=new Error('Uncaught, unspecified "error" event. ('+e+")");throw u.context=e,u}if(r=this._events[t],ma(r))return!1;if(Mt(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:n=Array.prototype.slice.call(arguments,1),r.apply(this,n)}else if(jr(r))for(n=Array.prototype.slice.call(arguments,1),c=r.slice(),i=c.length,s=0;s<i;s++)c[s].apply(this,n);return!0},Ve.prototype.addListener=function(t,e){var r;if(!Mt(e))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",t,Mt(e.listener)?e.listener:e),this._events[t]?jr(this._events[t])?this._events[t].push(e):this._events[t]=[this._events[t],e]:this._events[t]=e,jr(this._events[t])&&!this._events[t].warned&&(ma(this._maxListeners)?r=Ve.defaultMaxListeners:r=this._maxListeners,r&&r>0&&this._events[t].length>r&&(this._events[t].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[t].length),typeof console.trace=="function"&&console.trace())),this},Ve.prototype.on=Ve.prototype.addListener,Ve.prototype.once=function(t,e){if(!Mt(e))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(t,i),r||(r=!0,e.apply(this,arguments))}return i.listener=e,this.on(t,i),this},Ve.prototype.removeListener=function(t,e){var r,i,n,s;if(!Mt(e))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(r=this._events[t],n=r.length,i=-1,r===e||Mt(r.listener)&&r.listener===e)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,e);else if(jr(r)){for(s=n;s-- >0;)if(r[s]===e||r[s].listener&&r[s].listener===e){i=s;break}if(i<0)return this;r.length===1?(r.length=0,delete this._events[t]):r.splice(i,1),this._events.removeListener&&this.emit("removeListener",t,e)}return this},Ve.prototype.removeAllListeners=function(t){var e,r;if(!this._events)return this;if(!this._events.removeListener)return arguments.length===0?this._events={}:this._events[t]&&delete this._events[t],this;if(arguments.length===0){for(e in this._events)e!=="removeListener"&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(r=this._events[t],Mt(r))this.removeListener(t,r);else if(r)for(;r.length;)this.removeListener(t,r[r.length-1]);return delete this._events[t],this},Ve.prototype.listeners=function(t){var e;return!this._events||!this._events[t]?e=[]:Mt(this._events[t])?e=[this._events[t]]:e=this._events[t].slice(),e},Ve.prototype.listenerCount=function(t){if(this._events){var e=this._events[t];if(Mt(e))return 1;if(e)return e.length}return 0},Ve.listenerCount=function(t,e){return t.listenerCount(e)};function Mt(t){return typeof t=="function"}function kg(t){return typeof t=="number"}function jr(t){return typeof t=="object"&&t!==null}function ma(t){return t===void 0}const wa="wc",Ea=2,Da="client",$r=`${wa}@${Ea}:${Da}:`,In={name:Da,logger:"error",controller:!1,relayUrl:"wss://relay.walletconnect.com"},Yg="expirer",Dt={created:"expirer_created",deleted:"expirer_deleted",expired:"expirer_expired",sync:"expirer_sync"},Jg="0.3",Tt={created:"history_created",updated:"history_updated",deleted:"history_deleted",sync:"history_sync"},Xg="history",Zg="0.3",Qg="pairing",e0="proposal",t0=Ie.THIRTY_DAYS,r0="session",fi=Ie.SEVEN_DAYS,i0="engine",Tn={wc_pairingDelete:{req:{prompt:!1,tag:1e3},res:{prompt:!1,tag:1001}},wc_pairingPing:{req:{prompt:!1,tag:1002},res:{prompt:!1,tag:1003}},wc_sessionPropose:{req:{prompt:!0,tag:1100},res:{prompt:!1,tag:1101}},wc_sessionSettle:{req:{prompt:!1,tag:1102},res:{prompt:!1,tag:1103}},wc_sessionUpdate:{req:{prompt:!1,tag:1104},res:{prompt:!1,tag:1105}},wc_sessionExtend:{req:{prompt:!1,tag:1106},res:{prompt:!1,tag:1107}},wc_sessionRequest:{req:{prompt:!0,tag:1108},res:{prompt:!1,tag:1109}},wc_sessionEvent:{req:{prompt:!0,tag:1110},res:{prompt:!1,tag:1111}},wc_sessionDelete:{req:{prompt:!1,tag:1112},res:{prompt:!1,tag:1113}},wc_sessionPing:{req:{prompt:!1,tag:1114},res:{prompt:!1,tag:1115}}};var n0=Object.defineProperty,s0=Object.defineProperties,o0=Object.getOwnPropertyDescriptors,xa=Object.getOwnPropertySymbols,a0=Object.prototype.hasOwnProperty,c0=Object.prototype.propertyIsEnumerable,Sa=(t,e,r)=>e in t?n0(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,qt=(t,e)=>{for(var r in e||(e={}))a0.call(e,r)&&Sa(t,r,e[r]);if(xa)for(var r of xa(e))c0.call(e,r)&&Sa(t,r,e[r]);return t},Oa=(t,e)=>s0(t,o0(e));class u0 extends dd{constructor(e){super(e),this.events=new hi,this.initialized=!1,this.name=i0,this.init=async()=>{this.initialized||(await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0)},this.connect=async r=>{this.isInitialized(),await this.isValidConnect(r);const{pairingTopic:i,requiredNamespaces:n,relays:s}=r;let c=i,u,h=!1;if(c&&(h=this.client.pairing.get(c).active),!c||!h){const{topic:L,uri:$}=await this.createPairing();c=L,u=$}const d=await this.client.core.crypto.generateKeyPair(),g={requiredNamespaces:n,relays:s??[{protocol:ua}],proposer:{publicKey:d,metadata:this.client.metadata}},{reject:D,resolve:C,done:x}=Xt();if(this.events.once(Re("session_connect"),async({error:L,session:$})=>{if(L)D(L);else if($){$.self.publicKey=d;const E=Oa(qt({},$),{requiredNamespaces:n});await this.client.session.set($.topic,E),await this.setExpiry($.topic,$.expiry),c&&await this.client.pairing.update(c,{peerMetadata:$.peer.metadata}),C(E)}}),!c){const{message:L}=G("NO_MATCHING_KEY",`connect() pairing topic: ${c}`);throw new Error(L)}const w=await this.sendRequest(c,"wc_sessionPropose",g),R=Rt(Ie.FIVE_MINUTES);return await this.setProposal(w,qt({id:w,expiry:R},g)),{uri:u,approval:x}},this.pair=async r=>{this.isInitialized(),this.isValidPair(r);const{topic:i,symKey:n,relay:s}=Uf(r.uri),c=Rt(Ie.FIVE_MINUTES),u={topic:i,relay:s,expiry:c,active:!1};return await this.client.pairing.set(i,u),await this.client.core.crypto.setSymKey(n,i),await this.client.core.relayer.subscribe(i,{relay:s}),await this.setExpiry(i,c),u},this.approve=async r=>{this.isInitialized(),await this.isValidApprove(r);const{id:i,relayProtocol:n,namespaces:s}=r,{pairingTopic:c,proposer:u,requiredNamespaces:h}=this.client.proposal.get(i),d=await this.client.core.crypto.generateKeyPair(),g=u.publicKey,D=await this.client.core.crypto.generateSharedKey(d,g),C={relay:{protocol:n??"irn"},namespaces:s,requiredNamespaces:h,controller:{publicKey:d,metadata:this.client.metadata},expiry:Rt(fi)};await this.client.core.relayer.subscribe(D);const x=await this.sendRequest(D,"wc_sessionSettle",C),{done:w,resolve:R,reject:L}=Xt();this.events.once(Re("session_approve",x),({error:E})=>{E?L(E):R(this.client.session.get(D))});const $=Oa(qt({},C),{topic:D,acknowledged:!1,self:C.controller,peer:{publicKey:u.publicKey,metadata:u.metadata},controller:d});return await this.client.session.set(D,$),await this.setExpiry(D,Rt(fi)),c&&await this.client.pairing.update(c,{peerMetadata:$.peer.metadata}),c&&i&&(await this.sendResult(i,c,{relay:{protocol:n??"irn"},responderPublicKey:d}),await this.client.proposal.delete(i,rt("USER_DISCONNECTED")),await this.activatePairing(c)),{topic:D,acknowledged:w}},this.reject=async r=>{this.isInitialized(),await this.isValidReject(r);const{id:i,reason:n}=r,{pairingTopic:s}=this.client.proposal.get(i);s&&(await this.sendError(i,s,n),await this.client.proposal.delete(i,rt("USER_DISCONNECTED")))},this.update=async r=>{this.isInitialized(),await this.isValidUpdate(r);const{topic:i,namespaces:n}=r,s=await this.sendRequest(i,"wc_sessionUpdate",{namespaces:n}),{done:c,resolve:u,reject:h}=Xt();return this.events.once(Re("session_update",s),({error:d})=>{d?h(d):u()}),await this.client.session.update(i,{namespaces:n}),{acknowledged:c}},this.extend=async r=>{this.isInitialized(),await this.isValidExtend(r);const{topic:i}=r,n=await this.sendRequest(i,"wc_sessionExtend",{}),{done:s,resolve:c,reject:u}=Xt();return this.events.once(Re("session_extend",n),({error:h})=>{h?u(h):c()}),await this.setExpiry(i,Rt(fi)),{acknowledged:s}},this.request=async r=>{this.isInitialized(),await this.isValidRequest(r);const{chainId:i,request:n,topic:s}=r,c=await this.sendRequest(s,"wc_sessionRequest",{request:n,chainId:i}),{done:u,resolve:h,reject:d}=Xt();return this.events.once(Re("session_request",c),({error:g,result:D})=>{g?d(g):h(D)}),await u()},this.respond=async r=>{this.isInitialized(),await this.isValidRespond(r);const{topic:i,response:n}=r,{id:s}=n;Pt(n)?await this.sendResult(s,i,n.result):Et(n)&&await this.sendError(s,i,n.error)},this.ping=async r=>{this.isInitialized(),await this.isValidPing(r);const{topic:i}=r;if(this.client.session.keys.includes(i)){const n=await this.sendRequest(i,"wc_sessionPing",{}),{done:s,resolve:c,reject:u}=Xt();this.events.once(Re("session_ping",n),({error:h})=>{h?u(h):c()}),await s()}else if(this.client.pairing.keys.includes(i)){const n=await this.sendRequest(i,"wc_pairingPing",{}),{done:s,resolve:c,reject:u}=Xt();this.events.once(Re("pairing_ping",n),({error:h})=>{h?u(h):c()}),await s()}},this.emit=async r=>{this.isInitialized(),await this.isValidEmit(r);const{topic:i,event:n,chainId:s}=r;await this.sendRequest(i,"wc_sessionEvent",{event:n,chainId:s})},this.disconnect=async r=>{this.isInitialized(),await this.isValidDisconnect(r);const{topic:i}=r;this.client.session.keys.includes(i)?(await this.sendRequest(i,"wc_sessionDelete",rt("USER_DISCONNECTED")),await this.deleteSession(i)):this.client.pairing.keys.includes(i)&&(await this.sendRequest(i,"wc_pairingDelete",rt("USER_DISCONNECTED")),await this.deletePairing(i))},this.find=r=>(this.isInitialized(),this.client.session.getAll().filter(i=>qf(i,r))),this.activatePairing=async r=>{const i=Rt(t0);await this.client.pairing.update(r,{active:!0,expiry:i}),await this.setExpiry(r,i)},this.deleteSession=async r=>{const{self:i}=this.client.session.get(r);await this.client.core.relayer.unsubscribe(r),await Promise.all([this.client.session.delete(r,rt("USER_DISCONNECTED")),this.client.core.crypto.deleteKeyPair(i.publicKey),this.client.core.crypto.deleteSymKey(r),this.client.expirer.del(r)])},this.deletePairing=async r=>{await this.client.core.relayer.unsubscribe(r),await Promise.all([this.client.pairing.delete(r,rt("USER_DISCONNECTED")),this.client.core.crypto.deleteSymKey(r),this.client.expirer.del(r)])},this.deleteProposal=async r=>{await Promise.all([this.client.proposal.delete(r,rt("USER_DISCONNECTED")),this.client.expirer.del(r)])},this.setExpiry=async(r,i)=>{this.client.pairing.keys.includes(r)?await this.client.pairing.update(r,{expiry:i}):this.client.session.keys.includes(r)&&await this.client.session.update(r,{expiry:i}),this.client.expirer.set(r,i)},this.setProposal=async(r,i)=>{await this.client.proposal.set(r,i),this.client.expirer.set(r,i.expiry)},this.sendRequest=async(r,i,n)=>{const s=Ei(i,n),c=await this.client.core.crypto.encode(r,s),u=Tn[i].req;return this.client.history.set(r,s),await this.client.core.relayer.publish(r,c,u),s.id},this.sendResult=async(r,i,n)=>{const s=Di(r,n),c=await this.client.core.crypto.encode(i,s),u=await this.client.history.get(i,r),h=Tn[u.request.method].res;await this.client.core.relayer.publish(i,c,h),await this.client.history.resolve(s)},this.sendError=async(r,i,n)=>{const s=qr(r,n),c=await this.client.core.crypto.encode(i,s),u=await this.client.history.get(i,r),h=Tn[u.request.method].res;await this.client.core.relayer.publish(i,c,h),await this.client.history.resolve(s)},this.cleanup=async()=>{const r=[],i=[],n=[];this.client.session.getAll().forEach(s=>{Jt(s.expiry)&&r.push(s.topic)}),this.client.pairing.getAll().forEach(s=>{Jt(s.expiry)&&i.push(s.topic)}),this.client.proposal.getAll().forEach(s=>{Jt(s.expiry)&&n.push(s.id)}),await Promise.all([...r.map(this.deleteSession),...i.map(this.deletePairing),...n.map(this.deleteProposal)])},this.onRelayEventRequest=r=>{const{topic:i,payload:n}=r,s=n.method;switch(s){case"wc_sessionPropose":return this.onSessionProposeRequest(i,n);case"wc_sessionSettle":return this.onSessionSettleRequest(i,n);case"wc_sessionUpdate":return this.onSessionUpdateRequest(i,n);case"wc_sessionExtend":return this.onSessionExtendRequest(i,n);case"wc_sessionPing":return this.onSessionPingRequest(i,n);case"wc_pairingPing":return this.onPairingPingRequest(i,n);case"wc_sessionDelete":return this.onSessionDeleteRequest(i,n);case"wc_pairingDelete":return this.onPairingDeleteRequest(i,n);case"wc_sessionRequest":return this.onSessionRequest(i,n);case"wc_sessionEvent":return this.onSessionEventRequest(i,n);default:return this.client.logger.info(`Unsupported request method ${s}`)}},this.onRelayEventResponse=async r=>{const{topic:i,payload:n}=r,s=(await this.client.history.get(i,n.id)).request.method;switch(s){case"wc_sessionPropose":return this.onSessionProposeResponse(i,n);case"wc_sessionSettle":return this.onSessionSettleResponse(i,n);case"wc_sessionUpdate":return this.onSessionUpdateResponse(i,n);case"wc_sessionExtend":return this.onSessionExtendResponse(i,n);case"wc_sessionPing":return this.onSessionPingResponse(i,n);case"wc_pairingPing":return this.onPairingPingResponse(i,n);case"wc_sessionRequest":return this.onSessionRequestResponse(i,n);default:return this.client.logger.info(`Unsupported response method ${s}`)}},this.onSessionProposeRequest=async(r,i)=>{const{params:n,id:s}=i;try{this.isValidConnect(qt({},i.params));const c=Rt(Ie.FIVE_MINUTES),u=qt({id:s,pairingTopic:r,expiry:c},n);await this.setProposal(s,u),this.client.events.emit("session_proposal",{id:s,params:u})}catch(c){await this.sendError(s,r,c),this.client.logger.error(c)}},this.onSessionProposeResponse=async(r,i)=>{const{id:n}=i;if(Pt(i)){const{result:s}=i;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",result:s});const c=this.client.proposal.get(n);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",proposal:c});const u=c.proposer.publicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",selfPublicKey:u});const h=s.responderPublicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",peerPublicKey:h});const d=await this.client.core.crypto.generateSharedKey(u,h);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",sessionTopic:d});const g=await this.client.core.relayer.subscribe(d);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",subscriptionId:g}),await this.activatePairing(r)}else Et(i)&&(await this.client.proposal.delete(n,rt("USER_DISCONNECTED")),this.events.emit(Re("session_connect"),{error:i.error}))},this.onSessionSettleRequest=async(r,i)=>{const{id:n,params:s}=i;try{this.isValidSessionSettleRequest(s);const{relay:c,controller:u,expiry:h,namespaces:d}=i.params,g={topic:r,relay:c,expiry:h,namespaces:d,acknowledged:!0,controller:u.publicKey,self:{publicKey:"",metadata:this.client.metadata},peer:{publicKey:u.publicKey,metadata:u.metadata}};await this.sendResult(i.id,r,!0),this.events.emit(Re("session_connect"),{session:g})}catch(c){await this.sendError(n,r,c),this.client.logger.error(c)}},this.onSessionSettleResponse=async(r,i)=>{const{id:n}=i;Pt(i)?(await this.client.session.update(r,{acknowledged:!0}),this.events.emit(Re("session_approve",n),{})):Et(i)&&(await this.client.session.delete(r,rt("USER_DISCONNECTED")),this.events.emit(Re("session_approve",n),{error:i.error}))},this.onSessionUpdateRequest=async(r,i)=>{const{params:n,id:s}=i;try{this.isValidUpdate(qt({topic:r},n)),await this.client.session.update(r,{namespaces:n.namespaces}),await this.sendResult(s,r,!0),this.client.events.emit("session_update",{id:s,topic:r,params:n})}catch(c){await this.sendError(s,r,c),this.client.logger.error(c)}},this.onSessionUpdateResponse=(r,i)=>{const{id:n}=i;Pt(i)?this.events.emit(Re("session_update",n),{}):Et(i)&&this.events.emit(Re("session_update",n),{error:i.error})},this.onSessionExtendRequest=async(r,i)=>{const{id:n}=i;try{this.isValidExtend({topic:r}),await this.setExpiry(r,Rt(fi)),await this.sendResult(n,r,!0),this.client.events.emit("session_extend",{id:n,topic:r})}catch(s){await this.sendError(n,r,s),this.client.logger.error(s)}},this.onSessionExtendResponse=(r,i)=>{const{id:n}=i;Pt(i)?this.events.emit(Re("session_extend",n),{}):Et(i)&&this.events.emit(Re("session_extend",n),{error:i.error})},this.onSessionPingRequest=async(r,i)=>{const{id:n}=i;try{this.isValidPing({topic:r}),await this.sendResult(n,r,!0),this.client.events.emit("session_ping",{id:n,topic:r})}catch(s){await this.sendError(n,r,s),this.client.logger.error(s)}},this.onSessionPingResponse=(r,i)=>{const{id:n}=i;Pt(i)?this.events.emit(Re("session_ping",n),{}):Et(i)&&this.events.emit(Re("session_ping",n),{error:i.error})},this.onPairingPingRequest=async(r,i)=>{const{id:n}=i;try{this.isValidPing({topic:r}),await this.sendResult(n,r,!0),this.client.events.emit("pairing_ping",{id:n,topic:r})}catch(s){await this.sendError(n,r,s),this.client.logger.error(s)}},this.onPairingPingResponse=(r,i)=>{const{id:n}=i;Pt(i)?this.events.emit(Re("pairing_ping",n),{}):Et(i)&&this.events.emit(Re("pairing_ping",n),{error:i.error})},this.onSessionDeleteRequest=async(r,i)=>{const{id:n}=i;try{this.isValidDisconnect({topic:r,reason:i.params}),await this.sendResult(n,r,!0),await this.deleteSession(r),this.client.events.emit("session_delete",{id:n,topic:r})}catch(s){await this.sendError(n,r,s),this.client.logger.error(s)}},this.onPairingDeleteRequest=async(r,i)=>{const{id:n}=i;try{this.isValidDisconnect({topic:r,reason:i.params}),await this.sendResult(n,r,!0),await this.deletePairing(r),this.client.events.emit("pairing_delete",{id:n,topic:r})}catch(s){await this.sendError(n,r,s),this.client.logger.error(s)}},this.onSessionRequest=async(r,i)=>{const{id:n,params:s}=i;try{this.isValidRequest(qt({topic:r},s)),this.client.events.emit("session_request",{id:n,topic:r,params:s})}catch(c){await this.sendError(n,r,c),this.client.logger.error(c)}},this.onSessionRequestResponse=(r,i)=>{const{id:n}=i;Pt(i)?this.events.emit(Re("session_request",n),{result:i.result}):Et(i)&&this.events.emit(Re("session_request",n),{error:i.error})},this.onSessionEventRequest=async(r,i)=>{const{id:n,params:s}=i;try{this.isValidEmit(qt({topic:r},s)),this.client.events.emit("session_event",{id:n,topic:r,params:s})}catch(c){await this.sendError(n,r,c),this.client.logger.error(c)}},this.isValidConnect=async r=>{if(!_t(r)){const{message:u}=G("MISSING_OR_INVALID",`connect() params: ${JSON.stringify(r)}`);throw new Error(u)}const{pairingTopic:i,requiredNamespaces:n,relays:s}=r;yt(i)||await this.isValidPairingTopic(i);const c=Zf(n,"connect()");if(c)throw new Error(c.message);if(!Qf(s,!0)){const{message:u}=G("MISSING_OR_INVALID",`connect() relays: ${s}`);throw new Error(u)}},this.isValidPair=r=>{if(!_t(r)){const{message:i}=G("MISSING_OR_INVALID",`pair() params: ${r}`);throw new Error(i)}if(!Gf(r.uri)){const{message:i}=G("MISSING_OR_INVALID",`pair() uri: ${r.uri}`);throw new Error(i)}},this.isValidApprove=async r=>{if(!_t(r))throw new Error(G("MISSING_OR_INVALID",`approve() params: ${r}`).message);const{id:i,namespaces:n,relayProtocol:s}=r;await this.isValidProposalId(i);const c=this.client.proposal.get(i),u=nn(n,"approve()");if(u)throw new Error(u.message);const h=_o(c.requiredNamespaces,n,"update()");if(h)throw new Error(h.message);if(!ot(s,!0)){const{message:d}=G("MISSING_OR_INVALID",`approve() relayProtocol: ${s}`);throw new Error(d)}},this.isValidReject=async r=>{if(!_t(r)){const{message:s}=G("MISSING_OR_INVALID",`reject() params: ${r}`);throw new Error(s)}const{id:i,reason:n}=r;if(await this.isValidProposalId(i),!tl(n)){const{message:s}=G("MISSING_OR_INVALID",`reject() reason: ${JSON.stringify(n)}`);throw new Error(s)}},this.isValidSessionSettleRequest=r=>{if(!_t(r)){const{message:d}=G("MISSING_OR_INVALID",`onSessionSettleRequest() params: ${r}`);throw new Error(d)}const{relay:i,controller:n,namespaces:s,expiry:c}=r;if(!vo(i)){const{message:d}=G("MISSING_OR_INVALID","onSessionSettleRequest() relay protocol should be a string");throw new Error(d)}const u=Yf(n,"onSessionSettleRequest()");if(u)throw new Error(u.message);const h=nn(s,"onSessionSettleRequest()");if(h)throw new Error(h.message);if(Jt(c)){const{message:d}=G("EXPIRED","onSessionSettleRequest()");throw new Error(d)}},this.isValidUpdate=async r=>{if(!_t(r)){const{message:h}=G("MISSING_OR_INVALID",`update() params: ${r}`);throw new Error(h)}const{topic:i,namespaces:n}=r;await this.isValidSessionTopic(i);const s=this.client.session.get(i),c=nn(n,"update()");if(c)throw new Error(c.message);const u=_o(s.requiredNamespaces,n,"update()");if(u)throw new Error(u.message)},this.isValidExtend=async r=>{if(!_t(r)){const{message:n}=G("MISSING_OR_INVALID",`extend() params: ${r}`);throw new Error(n)}const{topic:i}=r;await this.isValidSessionTopic(i)},this.isValidRequest=async r=>{if(!_t(r)){const{message:u}=G("MISSING_OR_INVALID",`request() params: ${r}`);throw new Error(u)}const{topic:i,request:n,chainId:s}=r;await this.isValidSessionTopic(i);const{namespaces:c}=this.client.session.get(i);if(!yo(c,s)){const{message:u}=G("MISSING_OR_INVALID",`request() chainId: ${s}`);throw new Error(u)}if(!rl(n)){const{message:u}=G("MISSING_OR_INVALID",`request() ${JSON.stringify(n)}`);throw new Error(u)}if(!sl(c,s,n.method)){const{message:u}=G("MISSING_OR_INVALID",`request() method: ${n.method}`);throw new Error(u)}},this.isValidRespond=async r=>{if(!_t(r)){const{message:s}=G("MISSING_OR_INVALID",`respond() params: ${r}`);throw new Error(s)}const{topic:i,response:n}=r;if(await this.isValidSessionTopic(i),!il(n)){const{message:s}=G("MISSING_OR_INVALID",`respond() response: ${JSON.stringify(n)}`);throw new Error(s)}},this.isValidPing=async r=>{if(!_t(r)){const{message:n}=G("MISSING_OR_INVALID",`ping() params: ${r}`);throw new Error(n)}const{topic:i}=r;await this.isValidSessionOrPairingTopic(i)},this.isValidEmit=async r=>{if(!_t(r)){const{message:u}=G("MISSING_OR_INVALID",`emit() params: ${r}`);throw new Error(u)}const{topic:i,event:n,chainId:s}=r;await this.isValidSessionTopic(i);const{namespaces:c}=this.client.session.get(i);if(!yo(c,s)){const{message:u}=G("MISSING_OR_INVALID",`emit() chainId: ${s}`);throw new Error(u)}if(!nl(n)){const{message:u}=G("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(n)}`);throw new Error(u)}if(!ol(c,s,n.name)){const{message:u}=G("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(n)}`);throw new Error(u)}},this.isValidDisconnect=async r=>{if(!_t(r)){const{message:n}=G("MISSING_OR_INVALID",`disconnect() params: ${r}`);throw new Error(n)}const{topic:i}=r;await this.isValidSessionOrPairingTopic(i)}}async createPairing(){const e=Zi(),r=await this.client.core.crypto.setSymKey(e),i=Rt(Ie.FIVE_MINUTES),n={protocol:ua},s={topic:r,expiry:i,relay:n,active:!1},c=jf({protocol:this.client.protocol,version:this.client.version,topic:r,symKey:e,relay:n});return await this.client.pairing.set(r,s),await this.client.core.relayer.subscribe(r),await this.setExpiry(r,i),{topic:r,uri:c}}isInitialized(){if(!this.initialized){const{message:e}=G("NOT_INITIALIZED",this.name);throw new Error(e)}}registerRelayerEvents(){this.client.core.relayer.on(Mr.message,async e=>{const{topic:r,message:i}=e,n=await this.client.core.crypto.decode(r,i);Wn(n)?(this.client.history.set(r,n),this.onRelayEventRequest({topic:r,payload:n})):kn(n)&&(await this.client.history.resolve(n),this.onRelayEventResponse({topic:r,payload:n}))})}registerExpirerEvents(){this.client.expirer.on(Dt.expired,async e=>{const{topic:r,id:i}=Tf(e.target);r?this.client.session.keys.includes(r)?(await this.deleteSession(r),this.client.events.emit("session_expire",{topic:r})):this.client.pairing.keys.includes(r)&&(await this.deletePairing(r),this.client.events.emit("pairing_expire",{topic:r})):i&&await this.deleteProposal(i)})}async isValidPairingTopic(e){if(!ot(e,!1)){const{message:r}=G("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw new Error(r)}if(!this.client.pairing.keys.includes(e)){const{message:r}=G("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw new Error(r)}if(Jt(this.client.pairing.get(e).expiry)){await this.deletePairing(e);const{message:r}=G("EXPIRED",`pairing topic: ${e}`);throw new Error(r)}}async isValidSessionTopic(e){if(!ot(e,!1)){const{message:r}=G("MISSING_OR_INVALID",`session topic should be a string: ${e}`);throw new Error(r)}if(!this.client.session.keys.includes(e)){const{message:r}=G("NO_MATCHING_KEY",`session topic doesn't exist: ${e}`);throw new Error(r)}if(Jt(this.client.session.get(e).expiry)){await this.deleteSession(e);const{message:r}=G("EXPIRED",`session topic: ${e}`);throw new Error(r)}}async isValidSessionOrPairingTopic(e){if(this.client.session.keys.includes(e))await this.isValidSessionTopic(e);else if(this.client.pairing.keys.includes(e))await this.isValidPairingTopic(e);else if(ot(e,!1)){const{message:r}=G("NO_MATCHING_KEY",`session or pairing topic doesn't exist: ${e}`);throw new Error(r)}else{const{message:r}=G("MISSING_OR_INVALID",`session or pairing topic should be a string: ${e}`);throw new Error(r)}}async isValidProposalId(e){if(!el(e)){const{message:r}=G("MISSING_OR_INVALID",`proposal id should be a number: ${e}`);throw new Error(r)}if(!this.client.proposal.keys.includes(e)){const{message:r}=G("NO_MATCHING_KEY",`proposal id doesn't exist: ${e}`);throw new Error(r)}if(Jt(this.client.proposal.get(e).expiry)){await this.deleteProposal(e);const{message:r}=G("EXPIRED",`proposal id: ${e}`);throw new Error(r)}}}class h0 extends pd{constructor(e,r){super(e,r),this.core=e,this.logger=r,this.expirations=new Map,this.events=new hi.EventEmitter,this.name=Yg,this.version=Jg,this.cached=[],this.initialized=!1,this.storagePrefix=$r,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(i=>this.expirations.set(i.target,i)),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.has=i=>{try{const n=this.formatTarget(i);return typeof this.getExpiration(n)<"u"}catch{return!1}},this.set=(i,n)=>{this.isInitialized();const s=this.formatTarget(i),c={target:s,expiry:n};this.expirations.set(s,c),this.checkExpiry(s,c),this.events.emit(Dt.created,{target:s,expiration:c})},this.get=i=>{this.isInitialized();const n=this.formatTarget(i);return this.getExpiration(n)},this.del=i=>{this.isInitialized();const n=this.formatTarget(i);if(this.has(n)){const s=this.getExpiration(n);this.expirations.delete(n),this.events.emit(Dt.deleted,{target:n,expiration:s})}},this.on=(i,n)=>{this.events.on(i,n)},this.once=(i,n)=>{this.events.once(i,n)},this.off=(i,n)=>{this.events.off(i,n)},this.removeListener=(i,n)=>{this.events.removeListener(i,n)},this.logger=Se.generateChildLogger(r,this.name)}get context(){return Se.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}get length(){return this.expirations.size}get keys(){return Array.from(this.expirations.keys())}get values(){return Array.from(this.expirations.values())}formatTarget(e){if(typeof e=="string")return Af(e);if(typeof e=="number")return If(e);const{message:r}=G("UNKNOWN_TYPE",`Target type: ${typeof e}`);throw new Error(r)}async setExpirations(e){await this.core.storage.setItem(this.storageKey,e)}async getExpirations(){return await this.core.storage.getItem(this.storageKey)}async persist(){await this.setExpirations(this.values),this.events.emit(Dt.sync)}async restore(){try{const e=await this.getExpirations();if(typeof e>"u"||!e.length)return;if(this.expirations.size){const{message:r}=G("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(r),new Error(r)}this.cached=e,this.logger.debug(`Successfully Restored expirations for ${this.name}`),this.logger.trace({type:"method",method:"restore",expirations:this.values})}catch(e){this.logger.debug(`Failed to Restore expirations for ${this.name}`),this.logger.error(e)}}getExpiration(e){const r=this.expirations.get(e);if(!r){const{message:i}=G("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(i),new Error(i)}return r}checkExpiry(e,r){const{expiry:i}=r;Ie.toMiliseconds(i)-Date.now()<=0&&this.expire(e,r)}expire(e,r){this.expirations.delete(e),this.events.emit(Dt.expired,{target:e,expiration:r})}checkExpirations(){this.expirations.forEach((e,r)=>this.checkExpiry(r,e))}registerEventListeners(){this.core.heartbeat.on(Nr.HEARTBEAT_EVENTS.pulse,()=>this.checkExpirations()),this.events.on(Dt.created,e=>{const r=Dt.created;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,data:e}),this.persist()}),this.events.on(Dt.expired,e=>{const r=Dt.expired;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,data:e}),this.persist()}),this.events.on(Dt.deleted,e=>{const r=Dt.deleted;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,data:e}),this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=G("NOT_INITIALIZED",this.name);throw new Error(e)}}}class f0 extends nd{constructor(e,r){super(e,r),this.core=e,this.logger=r,this.records=new Map,this.events=new hi.EventEmitter,this.name=Xg,this.version=Zg,this.cached=[],this.initialized=!1,this.storagePrefix=$r,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(i=>this.records.set(i.id,i)),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.set=(i,n,s)=>{if(this.isInitialized(),this.logger.debug("Setting JSON-RPC request history record"),this.logger.trace({type:"method",method:"set",topic:i,request:n,chainId:s}),this.records.has(n.id))return;const c={id:n.id,topic:i,request:{method:n.method,params:n.params||null},chainId:s};this.records.set(c.id,c),this.events.emit(Tt.created,c)},this.resolve=async i=>{if(this.isInitialized(),this.logger.debug("Updating JSON-RPC response history record"),this.logger.trace({type:"method",method:"update",response:i}),!this.records.has(i.id))return;const n=await this.getRecord(i.id);typeof n.response>"u"&&(n.response=Et(i)?{error:i.error}:{result:i.result},this.records.set(n.id,n),this.events.emit(Tt.updated,n))},this.get=async(i,n)=>{this.isInitialized(),this.logger.debug("Getting record"),this.logger.trace({type:"method",method:"get",topic:i,id:n});const s=await this.getRecord(n);if(s.topic!==i){const{message:c}=G("MISMATCHED_TOPIC",`${this.name}, ${n}`);throw this.logger.error(c),new Error(c)}return s},this.delete=(i,n)=>{this.isInitialized(),this.logger.debug("Deleting record"),this.logger.trace({type:"method",method:"delete",id:n}),this.values.forEach(s=>{if(s.topic===i){if(typeof n<"u"&&s.id!==n)return;this.records.delete(s.id),this.events.emit(Tt.deleted,s)}})},this.exists=async(i,n)=>(this.isInitialized(),this.records.has(n)?(await this.getRecord(n)).topic===i:!1),this.on=(i,n)=>{this.events.on(i,n)},this.once=(i,n)=>{this.events.once(i,n)},this.off=(i,n)=>{this.events.off(i,n)},this.removeListener=(i,n)=>{this.events.removeListener(i,n)},this.logger=Se.generateChildLogger(r,this.name)}get context(){return Se.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}get size(){return this.records.size}get keys(){return Array.from(this.records.keys())}get values(){return Array.from(this.records.values())}get pending(){const e=[];return this.values.forEach(r=>{if(typeof r.response<"u")return;const i={topic:r.topic,request:Ei(r.request.method,r.request.params,r.id),chainId:r.chainId};return e.push(i)}),e}async setJsonRpcRecords(e){await this.core.storage.setItem(this.storageKey,e)}async getJsonRpcRecords(){return await this.core.storage.getItem(this.storageKey)}getRecord(e){this.isInitialized();const r=this.records.get(e);if(!r){const{message:i}=G("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(i)}return r}async persist(){await this.setJsonRpcRecords(this.values),this.events.emit(Tt.sync)}async restore(){try{const e=await this.getJsonRpcRecords();if(typeof e>"u"||!e.length)return;if(this.records.size){const{message:r}=G("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(r),new Error(r)}this.cached=e,this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:"method",method:"restore",records:this.values})}catch(e){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(e)}}registerEventListeners(){this.events.on(Tt.created,e=>{const r=Tt.created;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,record:e}),this.persist()}),this.events.on(Tt.updated,e=>{const r=Tt.updated;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,record:e}),this.persist()}),this.events.on(Tt.deleted,e=>{const r=Tt.deleted;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,record:e}),this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=G("NOT_INITIALIZED",this.name);throw new Error(e)}}}class l0 extends On{constructor(e,r){super(e,r,Qg,$r),this.core=e,this.logger=r}}class d0 extends On{constructor(e,r){super(e,r,e0,$r),this.core=e,this.logger=r}}class p0 extends On{constructor(e,r){super(e,r,r0,$r),this.core=e,this.logger=r}}class Cn extends ld{constructor(e){super(e),this.protocol=wa,this.version=Ea,this.name=In.name,this.events=new hi.EventEmitter,this.on=(i,n)=>this.events.on(i,n),this.once=(i,n)=>this.events.once(i,n),this.off=(i,n)=>this.events.off(i,n),this.removeListener=(i,n)=>this.events.removeListener(i,n),this.connect=async i=>{try{return await this.engine.connect(i)}catch(n){throw this.logger.error(n.message),n}},this.pair=async i=>{try{return await this.engine.pair(i)}catch(n){throw this.logger.error(n.message),n}},this.approve=async i=>{try{return await this.engine.approve(i)}catch(n){throw this.logger.error(n.message),n}},this.reject=async i=>{try{return await this.engine.reject(i)}catch(n){throw this.logger.error(n.message),n}},this.update=async i=>{try{return await this.engine.update(i)}catch(n){throw this.logger.error(n.message),n}},this.extend=async i=>{try{return await this.engine.extend(i)}catch(n){throw this.logger.error(n.message),n}},this.request=async i=>{try{return await this.engine.request(i)}catch(n){throw this.logger.error(n.message),n}},this.respond=async i=>{try{return await this.engine.respond(i)}catch(n){throw this.logger.error(n.message),n}},this.ping=async i=>{try{return await this.engine.ping(i)}catch(n){throw this.logger.error(n.message),n}},this.emit=async i=>{try{return await this.engine.emit(i)}catch(n){throw this.logger.error(n.message),n}},this.disconnect=async i=>{try{return await this.engine.disconnect(i)}catch(n){throw this.logger.error(n.message),n}},this.find=i=>{try{return this.engine.find(i)}catch(n){throw this.logger.error(n.message),n}},this.name=e?.name||In.name,this.metadata=e?.metadata||Ef();const r=typeof e?.logger<"u"&&typeof e?.logger!="string"?e.logger:sn(Se.getDefaultLoggerOptions({level:e?.logger||In.logger}));this.core=e?.core||new Wg(e),this.logger=Se.generateChildLogger(r,this.name),this.pairing=new l0(this.core,this.logger),this.session=new p0(this.core,this.logger),this.proposal=new d0(this.core,this.logger),this.history=new f0(this.core,this.logger),this.expirer=new h0(this.core,this.logger),this.engine=new u0(this)}static async init(e){const r=new Cn(e);return await r.initialize(),r}get context(){return Se.getLoggerContext(this.logger)}async initialize(){this.logger.trace("Initialized");try{await this.core.start(),await this.pairing.init(),await this.session.init(),await this.proposal.init(),await this.history.init(),await this.expirer.init(),await this.engine.init(),this.logger.info("SignClient Initilization Success")}catch(e){throw this.logger.info("SignClient Initilization Failure"),this.logger.error(e.message),e}}}function Ge(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}var g0=Ge;Ge.EventEmitter=Ge,Ge.prototype._events=void 0,Ge.prototype._maxListeners=void 0,Ge.defaultMaxListeners=10,Ge.prototype.setMaxListeners=function(t){if(!v0(t)||t<0||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},Ge.prototype.emit=function(t){var e,r,i,n,s,c;if(this._events||(this._events={}),t==="error"&&(!this._events.error||Br(this._events.error)&&!this._events.error.length)){if(e=arguments[1],e instanceof Error)throw e;var u=new Error('Uncaught, unspecified "error" event. ('+e+")");throw u.context=e,u}if(r=this._events[t],Aa(r))return!1;if(jt(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:n=Array.prototype.slice.call(arguments,1),r.apply(this,n)}else if(Br(r))for(n=Array.prototype.slice.call(arguments,1),c=r.slice(),i=c.length,s=0;s<i;s++)c[s].apply(this,n);return!0},Ge.prototype.addListener=function(t,e){var r;if(!jt(e))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",t,jt(e.listener)?e.listener:e),this._events[t]?Br(this._events[t])?this._events[t].push(e):this._events[t]=[this._events[t],e]:this._events[t]=e,Br(this._events[t])&&!this._events[t].warned&&(Aa(this._maxListeners)?r=Ge.defaultMaxListeners:r=this._maxListeners,r&&r>0&&this._events[t].length>r&&(this._events[t].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[t].length),typeof console.trace=="function"&&console.trace())),this},Ge.prototype.on=Ge.prototype.addListener,Ge.prototype.once=function(t,e){if(!jt(e))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(t,i),r||(r=!0,e.apply(this,arguments))}return i.listener=e,this.on(t,i),this},Ge.prototype.removeListener=function(t,e){var r,i,n,s;if(!jt(e))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(r=this._events[t],n=r.length,i=-1,r===e||jt(r.listener)&&r.listener===e)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,e);else if(Br(r)){for(s=n;s-- >0;)if(r[s]===e||r[s].listener&&r[s].listener===e){i=s;break}if(i<0)return this;r.length===1?(r.length=0,delete this._events[t]):r.splice(i,1),this._events.removeListener&&this.emit("removeListener",t,e)}return this},Ge.prototype.removeAllListeners=function(t){var e,r;if(!this._events)return this;if(!this._events.removeListener)return arguments.length===0?this._events={}:this._events[t]&&delete this._events[t],this;if(arguments.length===0){for(e in this._events)e!=="removeListener"&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(r=this._events[t],jt(r))this.removeListener(t,r);else if(r)for(;r.length;)this.removeListener(t,r[r.length-1]);return delete this._events[t],this},Ge.prototype.listeners=function(t){var e;return!this._events||!this._events[t]?e=[]:jt(this._events[t])?e=[this._events[t]]:e=this._events[t].slice(),e},Ge.prototype.listenerCount=function(t){if(this._events){var e=this._events[t];if(jt(e))return 1;if(e)return e.length}return 0},Ge.listenerCount=function(t,e){return t.listenerCount(e)};function jt(t){return typeof t=="function"}function v0(t){return typeof t=="number"}function Br(t){return typeof t=="object"&&t!==null}function Aa(t){return t===void 0}function y0(t){return typeof t<"u"&&typeof t.context<"u"}const Ct={init:"signer_init",uri:"signer_uri",created:"signer_created",updated:"signer_updated",deleted:"signer_deleted",event:"signer_event"};class _0 extends Qa{constructor(e){super(),this.events=new g0.EventEmitter,this.pending=!1,this.initializing=!1,this.requiredNamespaces=e?.requiredNamespaces||{},this.opts=e?.client}get connected(){return typeof this.session<"u"}get connecting(){return this.pending}get chains(){return this.session?Wi(this.session.namespaces):rf(this.requiredNamespaces)}get accounts(){return this.session?Gi(this.session.namespaces):[]}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}off(e,r){this.events.off(e,r)}removeListener(e,r){this.events.removeListener(e,r)}async open(){if(this.pending)return new Promise((e,r)=>{this.events.once("open",()=>{if(this.events.once("open_error",i=>{r(i)}),typeof this.client>"u")return r(new Error("Sign Client not initialized"));e()})});try{this.pending=!0;const e=await this.register(),r=e.find({requiredNamespaces:this.requiredNamespaces});if(r.length)return this.onOpen(r[0]);const{uri:i,approval:n}=await e.connect({requiredNamespaces:this.requiredNamespaces});this.events.emit(Ct.uri,{uri:i}),this.session=await n(),this.events.emit(Ct.created,this.session),this.onOpen()}catch(e){throw this.events.emit("open_error",e),e}}async close(){typeof this.session>"u"||(await(await this.register()).disconnect({topic:this.session.topic,reason:rt("USER_DISCONNECTED")}),this.onClose())}async send(e,r){if(typeof this.client>"u"&&(this.client=await this.register(),this.connected||await this.open()),typeof this.session>"u")throw new Error("Signer connection is missing session");this.client.request({topic:this.session.topic,request:e,chainId:r?.chainId}).then(i=>this.events.emit("payload",Di(e.id,i))).catch(i=>this.events.emit("payload",qr(e.id,i.message)))}async register(e=this.opts){if(typeof this.client<"u")return this.client;if(this.initializing)return new Promise((r,i)=>{this.events.once("register_error",n=>{i(n)}),this.events.once(Ct.init,()=>{if(typeof this.client>"u")return i(new Error("Sign Client not initialized"));r(this.client)})});if(y0(e))return this.client=e,this.registerEventListeners(),this.client;try{return this.initializing=!0,this.client=await Cn.init(e),this.initializing=!1,this.registerEventListeners(),this.events.emit(Ct.init),this.client}catch(r){throw this.events.emit("register_error",r),r}}onOpen(e){this.pending=!1,e&&(this.session=e),this.events.emit("open")}onClose(){this.pending=!1,this.client&&(this.client=void 0),this.events.emit("close")}registerEventListeners(){typeof this.client<"u"&&(this.client.on("session_event",e=>{var r;this.session&&((r=this.session)==null?void 0:r.topic)!==e.topic||this.events.emit(Ct.event,e.params)}),this.client.on("session_update",e=>{var r;typeof this.client<"u"&&(this.session&&((r=this.session)==null?void 0:r.topic)!==e.topic||(this.session=this.client.session.get(e.topic),this.events.emit(Ct.updated,this.session)))}),this.client.on("session_delete",e=>{var r;!this.session||this.session&&((r=this.session)==null?void 0:r.topic)!==e.topic||(this.onClose(),this.events.emit(Ct.deleted,this.session),this.session=void 0)}))}}const b0=["eth_requestAccounts","eth_accounts","eth_chainId","eth_sendTransaction","eth_signTransaction","eth_sign","eth_signTypedData","personal_sign"],m0=["chainChanged","accountsChanged"];function Ia(t){return{chains:t!=null&&t.chainId?[`eip155:${t.chainId}`]:[],methods:t?.methods||[],events:t?.events||[],rpcMap:t?.rpcMap||void 0}}function Ta(t,e){let r;return e.rpcMap&&(r=e.rpcMap[Ln([t])]),r}function Ln(t){return Number(t[0].split(":")[1])}class w0{constructor(e){this.events=new gr.EventEmitter,this.namespace="eip155",this.accounts=[],this.rpc=Ia(e),this.signer=this.setSignerProvider(e?.client),this.chainId=Ln(this.rpc.chains),this.http=this.setHttpProvider(this.chainId),this.registerEventListeners()}async request(e){switch(e.method){case"eth_requestAccounts":return await this.connect(),this.accounts;case"eth_accounts":return this.accounts;case"eth_chainId":return this.chainId}if(e.method.startsWith("eth_signTypedData")||this.rpc.methods.includes(e.method))return this.signer.request(e,{chainId:this.formatChainId(this.chainId)});if(typeof this.http>"u")throw new Error(`Cannot request JSON-RPC method (${e.method}) without provided rpc url`);return this.http.request(e)}sendAsync(e,r){this.request(e).then(i=>r(null,i)).catch(i=>r(i,void 0))}get connected(){return this.signer.connection.connected}get connecting(){return this.signer.connection.connecting}async enable(){return await this.request({method:"eth_requestAccounts"})}async connect(){await this.signer.connect()}async disconnect(){await this.signer.disconnect()}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}removeListener(e,r){this.events.removeListener(e,r)}off(e,r){this.events.off(e,r)}get isWalletConnect(){return!0}registerEventListeners(){this.signer.on("connect",()=>{const e=this.signer.connection.chains;e&&e.length&&this.setChainIds(e);const r=this.signer.connection.accounts;r&&r.length&&this.setAccounts(r)}),this.signer.connection.on(Ct.created,e=>{const r=Wi(e.namespaces,[this.namespace]);this.setChainIds(r);const i=Gi(e.namespaces,[this.namespace]);this.setAccounts(i)}),this.signer.connection.on(Ct.updated,e=>{const r=Wi(e.namespaces,[this.namespace]);this.setChainIds(r);const i=Gi(e.namespaces,[this.namespace]);i!==this.accounts&&this.setAccounts(i)}),this.signer.connection.on(Ct.event,e=>{if(!this.rpc.chains.includes(e.chainId))return;const{event:r}=e;r.name==="accountsChanged"?(this.accounts=r.data,this.events.emit("accountsChanged",this.accounts)):r.name==="chainChanged"?this.setChainId(r.data):this.events.emit(r.name,r.data)}),this.signer.on("disconnect",()=>{this.events.emit("disconnect")}),this.events.on("chainChanged",e=>this.setHttpProvider(e))}setSignerProvider(e){const r=new _0({requiredNamespaces:{[this.namespace]:{chains:this.rpc.chains,methods:this.rpc.methods,events:this.rpc.events}},client:e});return new xi(r)}setHttpProvider(e){const r=Ta(`${this.namespace}:${e}`,this.rpc);return typeof r>"u"?void 0:new xi(new oc(r))}isCompatibleChainId(e){return typeof e=="string"?e.startsWith(`${this.namespace}:`):!1}formatChainId(e){return`${this.namespace}:${e}`}parseChainId(e){return Number(e.split(":")[1])}setChainIds(e){const r=e.filter(i=>this.isCompatibleChainId(i)).map(i=>this.parseChainId(i)).filter(i=>i!==this.chainId);r.length&&(this.chainId=r[0],this.events.emit("chainChanged",this.chainId))}setChainId(e){if(this.isCompatibleChainId(e)){const r=this.parseChainId(e);this.chainId=r,this.events.emit("chainChanged",this.chainId)}}parseAccountId(e){const[r,i,n]=e.split(":");return{chainId:`${r}:${i}`,address:n}}setAccounts(e){this.accounts=e.filter(r=>this.parseChainId(this.parseAccountId(r).chainId)===this.chainId).map(r=>this.parseAccountId(r).address),this.events.emit("accountsChanged",this.accounts)}}wt.default=w0,wt.getEthereumChainId=Ln,wt.getRpcConfig=Ia,wt.getRpcUrl=Ta,wt.signerEvents=m0,wt.signerMethods=b0,Object.defineProperty(wt,"__esModule",{value:!0})});
1
+ (function(Et,Z){typeof exports=="object"&&typeof module<"u"?Z(exports):typeof define=="function"&&define.amd?define(["exports"],Z):(Et=typeof globalThis<"u"?globalThis:Et||self,Z(Et["@walletconnect/ethereum-provider"]={}))})(this,function(Et){"use strict";var Z=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function ka(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}function Si(t){var e=t.default;if(typeof e=="function"){var r=function(){return e.apply(this,arguments)};r.prototype=e.prototype}else r={};return Object.defineProperty(r,"__esModule",{value:!0}),Object.keys(t).forEach(function(i){var n=Object.getOwnPropertyDescriptor(t,i);Object.defineProperty(r,i,n.get?n:{enumerable:!0,get:function(){return t[i]}})}),r}function Ke(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}var _r=Ke;Ke.EventEmitter=Ke,Ke.prototype._events=void 0,Ke.prototype._maxListeners=void 0,Ke.defaultMaxListeners=10,Ke.prototype.setMaxListeners=function(t){if(!Ja(t)||t<0||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},Ke.prototype.emit=function(t){var e,r,i,n,s,c;if(this._events||(this._events={}),t==="error"&&(!this._events.error||br(this._events.error)&&!this._events.error.length)){if(e=arguments[1],e instanceof Error)throw e;var h=new Error('Uncaught, unspecified "error" event. ('+e+")");throw h.context=e,h}if(r=this._events[t],jn(r))return!1;if(Lt(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:n=Array.prototype.slice.call(arguments,1),r.apply(this,n)}else if(br(r))for(n=Array.prototype.slice.call(arguments,1),c=r.slice(),i=c.length,s=0;s<i;s++)c[s].apply(this,n);return!0},Ke.prototype.addListener=function(t,e){var r;if(!Lt(e))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",t,Lt(e.listener)?e.listener:e),this._events[t]?br(this._events[t])?this._events[t].push(e):this._events[t]=[this._events[t],e]:this._events[t]=e,br(this._events[t])&&!this._events[t].warned&&(jn(this._maxListeners)?r=Ke.defaultMaxListeners:r=this._maxListeners,r&&r>0&&this._events[t].length>r&&(this._events[t].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[t].length),typeof console.trace=="function"&&console.trace())),this},Ke.prototype.on=Ke.prototype.addListener,Ke.prototype.once=function(t,e){if(!Lt(e))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(t,i),r||(r=!0,e.apply(this,arguments))}return i.listener=e,this.on(t,i),this},Ke.prototype.removeListener=function(t,e){var r,i,n,s;if(!Lt(e))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(r=this._events[t],n=r.length,i=-1,r===e||Lt(r.listener)&&r.listener===e)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,e);else if(br(r)){for(s=n;s-- >0;)if(r[s]===e||r[s].listener&&r[s].listener===e){i=s;break}if(i<0)return this;r.length===1?(r.length=0,delete this._events[t]):r.splice(i,1),this._events.removeListener&&this.emit("removeListener",t,e)}return this},Ke.prototype.removeAllListeners=function(t){var e,r;if(!this._events)return this;if(!this._events.removeListener)return arguments.length===0?this._events={}:this._events[t]&&delete this._events[t],this;if(arguments.length===0){for(e in this._events)e!=="removeListener"&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(r=this._events[t],Lt(r))this.removeListener(t,r);else if(r)for(;r.length;)this.removeListener(t,r[r.length-1]);return delete this._events[t],this},Ke.prototype.listeners=function(t){var e;return!this._events||!this._events[t]?e=[]:Lt(this._events[t])?e=[this._events[t]]:e=this._events[t].slice(),e},Ke.prototype.listenerCount=function(t){if(this._events){var e=this._events[t];if(Lt(e))return 1;if(e)return e.length}return 0},Ke.listenerCount=function(t,e){return t.listenerCount(e)};function Lt(t){return typeof t=="function"}function Ja(t){return typeof t=="number"}function br(t){return typeof t=="object"&&t!==null}function jn(t){return t===void 0}const Xa="PARSE_ERROR",Za="INVALID_REQUEST",Qa="METHOD_NOT_FOUND",ec="INVALID_PARAMS",$n="INTERNAL_ERROR",xi="SERVER_ERROR",tc=[-32700,-32600,-32601,-32602,-32603],mr={[Xa]:{code:-32700,message:"Parse error"},[Za]:{code:-32600,message:"Invalid Request"},[Qa]:{code:-32601,message:"Method not found"},[ec]:{code:-32602,message:"Invalid params"},[$n]:{code:-32603,message:"Internal error"},[xi]:{code:-32e3,message:"Server error"}},Bn=xi;function rc(t){return tc.includes(t)}function zn(t){return Object.keys(mr).includes(t)?mr[t]:mr[Bn]}function ic(t){const e=Object.values(mr).find(r=>r.code===t);return e||mr[Bn]}function Hn(t,e,r){return t.message.includes("getaddrinfo ENOTFOUND")||t.message.includes("connect ECONNREFUSED")?new Error(`Unavailable ${r} RPC url at ${e}`):t}var Kn={},zt={};Object.defineProperty(zt,"__esModule",{value:!0}),zt.isBrowserCryptoAvailable=zt.getSubtleCrypto=zt.getBrowerCrypto=void 0;function Oi(){return Z?.crypto||Z?.msCrypto||{}}zt.getBrowerCrypto=Oi;function qn(){const t=Oi();return t.subtle||t.webkitSubtle}zt.getSubtleCrypto=qn;function nc(){return!!Oi()&&!!qn()}zt.isBrowserCryptoAvailable=nc;var Ht={};Object.defineProperty(Ht,"__esModule",{value:!0}),Ht.isBrowser=Ht.isNode=Ht.isReactNative=void 0;function Vn(){return typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"}Ht.isReactNative=Vn;function Gn(){return typeof process<"u"&&typeof process.versions<"u"&&typeof process.versions.node<"u"}Ht.isNode=Gn;function sc(){return!Vn()&&!Gn()}Ht.isBrowser=sc,function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(zt,t),r(Ht,t)}(Kn);function oc(){const t=Date.now()*Math.pow(10,3),e=Math.floor(Math.random()*Math.pow(10,3));return t+e}function Wr(t,e,r){return{id:r||oc(),jsonrpc:"2.0",method:t,params:e}}function Yr(t,e){return{id:t,jsonrpc:"2.0",result:e}}function wr(t,e,r){return{id:t,jsonrpc:"2.0",error:ac(e,r)}}function ac(t,e){return typeof t>"u"?zn($n):(typeof t=="string"&&(t=Object.assign(Object.assign({},zn(xi)),{message:t})),typeof e<"u"&&(t.data=e),rc(t.code)&&(t=ic(t.code)),t)}class Wn{}class cc extends Wn{constructor(e){super()}}class hc extends Wn{constructor(){super()}}class uc extends hc{constructor(e){super()}}const fc="^https?:",lc="^wss?:";function dc(t){const e=t.match(new RegExp(/^\w+:/,"gi"));if(!(!e||!e.length))return e[0]}function Yn(t,e){const r=dc(t);return typeof r>"u"?!1:new RegExp(e).test(r)}function kn(t){return Yn(t,fc)}function Jn(t){return Yn(t,lc)}function pc(t){return new RegExp("wss?://localhost(:d{2,5})?").test(t)}function Xn(t){return typeof t=="object"&&"id"in t&&"jsonrpc"in t&&t.jsonrpc==="2.0"}function Ii(t){return Xn(t)&&"method"in t}function Ai(t){return Xn(t)&&(Rt(t)||Dt(t))}function Rt(t){return"result"in t}function Dt(t){return"error"in t}class Ti extends uc{constructor(e){super(e),this.events=new _r.EventEmitter,this.hasRegisteredEventListeners=!1,this.connection=this.setConnection(e),this.connection.connected&&this.registerEventListeners()}async connect(e=this.connection){await this.open(e)}async disconnect(){await this.close()}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}off(e,r){this.events.off(e,r)}removeListener(e,r){this.events.removeListener(e,r)}async request(e,r){return this.requestStrict(Wr(e.method,e.params||[]),r)}async requestStrict(e,r){return new Promise(async(i,n)=>{if(!this.connection.connected)try{await this.open()}catch(s){n(s)}this.events.on(`${e.id}`,s=>{Dt(s)?n(s.error):i(s.result)});try{await this.connection.send(e,r)}catch(s){n(s)}})}setConnection(e=this.connection){return e}onPayload(e){this.events.emit("payload",e),Ai(e)?this.events.emit(`${e.id}`,e):this.events.emit("message",{type:e.method,data:e.params})}async open(e=this.connection){this.connection===e&&this.connection.connected||(this.connection.connected&&this.close(),typeof e=="string"&&(await this.connection.open(e),e=this.connection),this.connection=this.setConnection(e),await this.connection.open(),this.registerEventListeners(),this.events.emit("connect"))}async close(){await this.connection.close()}registerEventListeners(){this.hasRegisteredEventListeners||(this.connection.on("payload",e=>this.onPayload(e)),this.connection.on("close",()=>this.events.emit("disconnect")),this.connection.on("error",e=>this.events.emit("error",e)),this.hasRegisteredEventListeners=!0)}}var Ci={exports:{}};(function(t,e){var r=typeof self<"u"?self:Z,i=function(){function s(){this.fetch=!1,this.DOMException=r.DOMException}return s.prototype=r,new s}();(function(s){(function(c){var h={searchParams:"URLSearchParams"in s,iterable:"Symbol"in s&&"iterator"in Symbol,blob:"FileReader"in s&&"Blob"in s&&function(){try{return new Blob,!0}catch{return!1}}(),formData:"FormData"in s,arrayBuffer:"ArrayBuffer"in s};function u(l){return l&&DataView.prototype.isPrototypeOf(l)}if(h.arrayBuffer)var f=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],g=ArrayBuffer.isView||function(l){return l&&f.indexOf(Object.prototype.toString.call(l))>-1};function D(l){if(typeof l!="string"&&(l=String(l)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(l))throw new TypeError("Invalid character in header field name");return l.toLowerCase()}function C(l){return typeof l!="string"&&(l=String(l)),l}function S(l){var v={next:function(){var U=l.shift();return{done:U===void 0,value:U}}};return h.iterable&&(v[Symbol.iterator]=function(){return v}),v}function w(l){this.map={},l instanceof w?l.forEach(function(v,U){this.append(U,v)},this):Array.isArray(l)?l.forEach(function(v){this.append(v[0],v[1])},this):l&&Object.getOwnPropertyNames(l).forEach(function(v){this.append(v,l[v])},this)}w.prototype.append=function(l,v){l=D(l),v=C(v);var U=this.map[l];this.map[l]=U?U+", "+v:v},w.prototype.delete=function(l){delete this.map[D(l)]},w.prototype.get=function(l){return l=D(l),this.has(l)?this.map[l]:null},w.prototype.has=function(l){return this.map.hasOwnProperty(D(l))},w.prototype.set=function(l,v){this.map[D(l)]=C(v)},w.prototype.forEach=function(l,v){for(var U in this.map)this.map.hasOwnProperty(U)&&l.call(v,this.map[U],U,this)},w.prototype.keys=function(){var l=[];return this.forEach(function(v,U){l.push(U)}),S(l)},w.prototype.values=function(){var l=[];return this.forEach(function(v){l.push(v)}),S(l)},w.prototype.entries=function(){var l=[];return this.forEach(function(v,U){l.push([U,v])}),S(l)},h.iterable&&(w.prototype[Symbol.iterator]=w.prototype.entries);function P(l){if(l.bodyUsed)return Promise.reject(new TypeError("Already read"));l.bodyUsed=!0}function N(l){return new Promise(function(v,U){l.onload=function(){v(l.result)},l.onerror=function(){U(l.error)}})}function j(l){var v=new FileReader,U=N(v);return v.readAsArrayBuffer(l),U}function E(l){var v=new FileReader,U=N(v);return v.readAsText(l),U}function I(l){for(var v=new Uint8Array(l),U=new Array(v.length),q=0;q<v.length;q++)U[q]=String.fromCharCode(v[q]);return U.join("")}function y(l){if(l.slice)return l.slice(0);var v=new Uint8Array(l.byteLength);return v.set(new Uint8Array(l)),v.buffer}function m(){return this.bodyUsed=!1,this._initBody=function(l){this._bodyInit=l,l?typeof l=="string"?this._bodyText=l:h.blob&&Blob.prototype.isPrototypeOf(l)?this._bodyBlob=l:h.formData&&FormData.prototype.isPrototypeOf(l)?this._bodyFormData=l:h.searchParams&&URLSearchParams.prototype.isPrototypeOf(l)?this._bodyText=l.toString():h.arrayBuffer&&h.blob&&u(l)?(this._bodyArrayBuffer=y(l.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):h.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(l)||g(l))?this._bodyArrayBuffer=y(l):this._bodyText=l=Object.prototype.toString.call(l):this._bodyText="",this.headers.get("content-type")||(typeof l=="string"?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):h.searchParams&&URLSearchParams.prototype.isPrototypeOf(l)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},h.blob&&(this.blob=function(){var l=P(this);if(l)return l;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?P(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(j)}),this.text=function(){var l=P(this);if(l)return l;if(this._bodyBlob)return E(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(I(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},h.formData&&(this.formData=function(){return this.text().then(M)}),this.json=function(){return this.text().then(JSON.parse)},this}var b=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function o(l){var v=l.toUpperCase();return b.indexOf(v)>-1?v:l}function d(l,v){v=v||{};var U=v.body;if(l instanceof d){if(l.bodyUsed)throw new TypeError("Already read");this.url=l.url,this.credentials=l.credentials,v.headers||(this.headers=new w(l.headers)),this.method=l.method,this.mode=l.mode,this.signal=l.signal,!U&&l._bodyInit!=null&&(U=l._bodyInit,l.bodyUsed=!0)}else this.url=String(l);if(this.credentials=v.credentials||this.credentials||"same-origin",(v.headers||!this.headers)&&(this.headers=new w(v.headers)),this.method=o(v.method||this.method||"GET"),this.mode=v.mode||this.mode||null,this.signal=v.signal||this.signal,this.referrer=null,(this.method==="GET"||this.method==="HEAD")&&U)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(U)}d.prototype.clone=function(){return new d(this,{body:this._bodyInit})};function M(l){var v=new FormData;return l.trim().split("&").forEach(function(U){if(U){var q=U.split("="),R=q.shift().replace(/\+/g," "),L=q.join("=").replace(/\+/g," ");v.append(decodeURIComponent(R),decodeURIComponent(L))}}),v}function K(l){var v=new w,U=l.replace(/\r?\n[\t ]+/g," ");return U.split(/\r?\n/).forEach(function(q){var R=q.split(":"),L=R.shift().trim();if(L){var $=R.join(":").trim();v.append(L,$)}}),v}m.call(d.prototype);function G(l,v){v||(v={}),this.type="default",this.status=v.status===void 0?200:v.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in v?v.statusText:"OK",this.headers=new w(v.headers),this.url=v.url||"",this._initBody(l)}m.call(G.prototype),G.prototype.clone=function(){return new G(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new w(this.headers),url:this.url})},G.error=function(){var l=new G(null,{status:0,statusText:""});return l.type="error",l};var J=[301,302,303,307,308];G.redirect=function(l,v){if(J.indexOf(v)===-1)throw new RangeError("Invalid status code");return new G(null,{status:v,headers:{location:l}})},c.DOMException=s.DOMException;try{new c.DOMException}catch{c.DOMException=function(v,U){this.message=v,this.name=U;var q=Error(v);this.stack=q.stack},c.DOMException.prototype=Object.create(Error.prototype),c.DOMException.prototype.constructor=c.DOMException}function X(l,v){return new Promise(function(U,q){var R=new d(l,v);if(R.signal&&R.signal.aborted)return q(new c.DOMException("Aborted","AbortError"));var L=new XMLHttpRequest;function $(){L.abort()}L.onload=function(){var B={status:L.status,statusText:L.statusText,headers:K(L.getAllResponseHeaders()||"")};B.url="responseURL"in L?L.responseURL:B.headers.get("X-Request-URL");var ee="response"in L?L.response:L.responseText;U(new G(ee,B))},L.onerror=function(){q(new TypeError("Network request failed"))},L.ontimeout=function(){q(new TypeError("Network request failed"))},L.onabort=function(){q(new c.DOMException("Aborted","AbortError"))},L.open(R.method,R.url,!0),R.credentials==="include"?L.withCredentials=!0:R.credentials==="omit"&&(L.withCredentials=!1),"responseType"in L&&h.blob&&(L.responseType="blob"),R.headers.forEach(function(B,ee){L.setRequestHeader(ee,B)}),R.signal&&(R.signal.addEventListener("abort",$),L.onreadystatechange=function(){L.readyState===4&&R.signal.removeEventListener("abort",$)}),L.send(typeof R._bodyInit>"u"?null:R._bodyInit)})}return X.polyfill=!0,s.fetch||(s.fetch=X,s.Headers=w,s.Request=d,s.Response=G),c.Headers=w,c.Request=d,c.Response=G,c.fetch=X,Object.defineProperty(c,"__esModule",{value:!0}),c})({})})(i),i.fetch.ponyfill=!0,delete i.fetch.polyfill;var n=i;e=n.fetch,e.default=n.fetch,e.fetch=n.fetch,e.Headers=n.Headers,e.Request=n.Request,e.Response=n.Response,t.exports=e})(Ci,Ci.exports);var Zn=ka(Ci.exports);function Ni(t){if(typeof t!="string")throw new Error(`Cannot safe json parse value of type ${typeof t}`);try{return JSON.parse(t)}catch{return t}}function Er(t){return typeof t=="string"?t:JSON.stringify(t)}const Qn={headers:{Accept:"application/json","Content-Type":"application/json"},method:"POST"},es=10;class gc{constructor(e){if(this.url=e,this.events=new _r.EventEmitter,this.isAvailable=!1,this.registering=!1,!kn(e))throw new Error(`Provided URL is not compatible with HTTP connection: ${e}`);this.url=e}get connected(){return this.isAvailable}get connecting(){return this.registering}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}off(e,r){this.events.off(e,r)}removeListener(e,r){this.events.removeListener(e,r)}async open(e=this.url){await this.register(e)}async close(){if(!this.isAvailable)throw new Error("Connection already closed");this.onClose()}async send(e,r){this.isAvailable||await this.register();try{const i=Er(e),s=await(await Zn(this.url,Object.assign(Object.assign({},Qn),{body:i}))).json();this.onPayload({data:s})}catch(i){this.onError(e.id,i)}}async register(e=this.url){if(!kn(e))throw new Error(`Provided URL is not compatible with HTTP connection: ${e}`);if(this.registering){const r=this.events.getMaxListeners();return(this.events.listenerCount("register_error")>=r||this.events.listenerCount("open")>=r)&&this.events.setMaxListeners(r+1),new Promise((i,n)=>{this.events.once("register_error",s=>{this.resetMaxListeners(),n(s)}),this.events.once("open",()=>{if(this.resetMaxListeners(),typeof this.isAvailable>"u")return n(new Error("HTTP connection is missing or invalid"));i()})})}this.url=e,this.registering=!0;try{const r=Er({id:1,jsonrpc:"2.0",method:"test",params:[]});await Zn(e,Object.assign(Object.assign({},Qn),{body:r})),this.onOpen()}catch(r){const i=this.parseError(r);throw this.events.emit("register_error",i),this.onClose(),i}}onOpen(){this.isAvailable=!0,this.registering=!1,this.events.emit("open")}onClose(){this.isAvailable=!1,this.registering=!1,this.events.emit("close")}onPayload(e){if(typeof e.data>"u")return;const r=typeof e.data=="string"?Ni(e.data):e.data;this.events.emit("payload",r)}onError(e,r){const i=this.parseError(r),n=i.message||i.toString(),s=wr(e,n);this.events.emit("payload",s)}parseError(e,r=this.url){return Hn(e,r,"HTTP")}resetMaxListeners(){this.events.getMaxListeners()>es&&this.events.setMaxListeners(es)}}var Li={},kr={},re={},ts={};(function(t){Object.defineProperty(t,"__esModule",{value:!0});function e(h,u){var f=h>>>16&65535,g=h&65535,D=u>>>16&65535,C=u&65535;return g*C+(f*C+g*D<<16>>>0)|0}t.mul=Math.imul||e;function r(h,u){return h+u|0}t.add=r;function i(h,u){return h-u|0}t.sub=i;function n(h,u){return h<<u|h>>>32-u}t.rotl=n;function s(h,u){return h<<32-u|h>>>u}t.rotr=s;function c(h){return typeof h=="number"&&isFinite(h)&&Math.floor(h)===h}t.isInteger=Number.isInteger||c,t.MAX_SAFE_INTEGER=9007199254740991,t.isSafeInteger=function(h){return t.isInteger(h)&&h>=-t.MAX_SAFE_INTEGER&&h<=t.MAX_SAFE_INTEGER}})(ts),Object.defineProperty(re,"__esModule",{value:!0});var rs=ts;function yc(t,e){return e===void 0&&(e=0),(t[e+0]<<8|t[e+1])<<16>>16}re.readInt16BE=yc;function vc(t,e){return e===void 0&&(e=0),(t[e+0]<<8|t[e+1])>>>0}re.readUint16BE=vc;function _c(t,e){return e===void 0&&(e=0),(t[e+1]<<8|t[e])<<16>>16}re.readInt16LE=_c;function bc(t,e){return e===void 0&&(e=0),(t[e+1]<<8|t[e])>>>0}re.readUint16LE=bc;function is(t,e,r){return e===void 0&&(e=new Uint8Array(2)),r===void 0&&(r=0),e[r+0]=t>>>8,e[r+1]=t>>>0,e}re.writeUint16BE=is,re.writeInt16BE=is;function ns(t,e,r){return e===void 0&&(e=new Uint8Array(2)),r===void 0&&(r=0),e[r+0]=t>>>0,e[r+1]=t>>>8,e}re.writeUint16LE=ns,re.writeInt16LE=ns;function Ri(t,e){return e===void 0&&(e=0),t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3]}re.readInt32BE=Ri;function Pi(t,e){return e===void 0&&(e=0),(t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3])>>>0}re.readUint32BE=Pi;function Fi(t,e){return e===void 0&&(e=0),t[e+3]<<24|t[e+2]<<16|t[e+1]<<8|t[e]}re.readInt32LE=Fi;function Ui(t,e){return e===void 0&&(e=0),(t[e+3]<<24|t[e+2]<<16|t[e+1]<<8|t[e])>>>0}re.readUint32LE=Ui;function Jr(t,e,r){return e===void 0&&(e=new Uint8Array(4)),r===void 0&&(r=0),e[r+0]=t>>>24,e[r+1]=t>>>16,e[r+2]=t>>>8,e[r+3]=t>>>0,e}re.writeUint32BE=Jr,re.writeInt32BE=Jr;function Xr(t,e,r){return e===void 0&&(e=new Uint8Array(4)),r===void 0&&(r=0),e[r+0]=t>>>0,e[r+1]=t>>>8,e[r+2]=t>>>16,e[r+3]=t>>>24,e}re.writeUint32LE=Xr,re.writeInt32LE=Xr;function mc(t,e){e===void 0&&(e=0);var r=Ri(t,e),i=Ri(t,e+4);return r*4294967296+i-(i>>31)*4294967296}re.readInt64BE=mc;function wc(t,e){e===void 0&&(e=0);var r=Pi(t,e),i=Pi(t,e+4);return r*4294967296+i}re.readUint64BE=wc;function Ec(t,e){e===void 0&&(e=0);var r=Fi(t,e),i=Fi(t,e+4);return i*4294967296+r-(r>>31)*4294967296}re.readInt64LE=Ec;function Dc(t,e){e===void 0&&(e=0);var r=Ui(t,e),i=Ui(t,e+4);return i*4294967296+r}re.readUint64LE=Dc;function ss(t,e,r){return e===void 0&&(e=new Uint8Array(8)),r===void 0&&(r=0),Jr(t/4294967296>>>0,e,r),Jr(t>>>0,e,r+4),e}re.writeUint64BE=ss,re.writeInt64BE=ss;function os(t,e,r){return e===void 0&&(e=new Uint8Array(8)),r===void 0&&(r=0),Xr(t>>>0,e,r),Xr(t/4294967296>>>0,e,r+4),e}re.writeUint64LE=os,re.writeInt64LE=os;function Sc(t,e,r){if(r===void 0&&(r=0),t%8!==0)throw new Error("readUintBE supports only bitLengths divisible by 8");if(t/8>e.length-r)throw new Error("readUintBE: array is too short for the given bitLength");for(var i=0,n=1,s=t/8+r-1;s>=r;s--)i+=e[s]*n,n*=256;return i}re.readUintBE=Sc;function xc(t,e,r){if(r===void 0&&(r=0),t%8!==0)throw new Error("readUintLE supports only bitLengths divisible by 8");if(t/8>e.length-r)throw new Error("readUintLE: array is too short for the given bitLength");for(var i=0,n=1,s=r;s<r+t/8;s++)i+=e[s]*n,n*=256;return i}re.readUintLE=xc;function Oc(t,e,r,i){if(r===void 0&&(r=new Uint8Array(t/8)),i===void 0&&(i=0),t%8!==0)throw new Error("writeUintBE supports only bitLengths divisible by 8");if(!rs.isSafeInteger(e))throw new Error("writeUintBE value must be an integer");for(var n=1,s=t/8+i-1;s>=i;s--)r[s]=e/n&255,n*=256;return r}re.writeUintBE=Oc;function Ic(t,e,r,i){if(r===void 0&&(r=new Uint8Array(t/8)),i===void 0&&(i=0),t%8!==0)throw new Error("writeUintLE supports only bitLengths divisible by 8");if(!rs.isSafeInteger(e))throw new Error("writeUintLE value must be an integer");for(var n=1,s=i;s<i+t/8;s++)r[s]=e/n&255,n*=256;return r}re.writeUintLE=Ic;function Ac(t,e){e===void 0&&(e=0);var r=new DataView(t.buffer,t.byteOffset,t.byteLength);return r.getFloat32(e)}re.readFloat32BE=Ac;function Tc(t,e){e===void 0&&(e=0);var r=new DataView(t.buffer,t.byteOffset,t.byteLength);return r.getFloat32(e,!0)}re.readFloat32LE=Tc;function Cc(t,e){e===void 0&&(e=0);var r=new DataView(t.buffer,t.byteOffset,t.byteLength);return r.getFloat64(e)}re.readFloat64BE=Cc;function Nc(t,e){e===void 0&&(e=0);var r=new DataView(t.buffer,t.byteOffset,t.byteLength);return r.getFloat64(e,!0)}re.readFloat64LE=Nc;function Lc(t,e,r){e===void 0&&(e=new Uint8Array(4)),r===void 0&&(r=0);var i=new DataView(e.buffer,e.byteOffset,e.byteLength);return i.setFloat32(r,t),e}re.writeFloat32BE=Lc;function Rc(t,e,r){e===void 0&&(e=new Uint8Array(4)),r===void 0&&(r=0);var i=new DataView(e.buffer,e.byteOffset,e.byteLength);return i.setFloat32(r,t,!0),e}re.writeFloat32LE=Rc;function Pc(t,e,r){e===void 0&&(e=new Uint8Array(8)),r===void 0&&(r=0);var i=new DataView(e.buffer,e.byteOffset,e.byteLength);return i.setFloat64(r,t),e}re.writeFloat64BE=Pc;function Fc(t,e,r){e===void 0&&(e=new Uint8Array(8)),r===void 0&&(r=0);var i=new DataView(e.buffer,e.byteOffset,e.byteLength);return i.setFloat64(r,t,!0),e}re.writeFloat64LE=Fc;var ct={};Object.defineProperty(ct,"__esModule",{value:!0});function Uc(t){for(var e=0;e<t.length;e++)t[e]=0;return t}ct.wipe=Uc,Object.defineProperty(kr,"__esModule",{value:!0});var ot=re,Mi=ct,Mc=20;function jc(t,e,r){for(var i=1634760805,n=857760878,s=2036477234,c=1797285236,h=r[3]<<24|r[2]<<16|r[1]<<8|r[0],u=r[7]<<24|r[6]<<16|r[5]<<8|r[4],f=r[11]<<24|r[10]<<16|r[9]<<8|r[8],g=r[15]<<24|r[14]<<16|r[13]<<8|r[12],D=r[19]<<24|r[18]<<16|r[17]<<8|r[16],C=r[23]<<24|r[22]<<16|r[21]<<8|r[20],S=r[27]<<24|r[26]<<16|r[25]<<8|r[24],w=r[31]<<24|r[30]<<16|r[29]<<8|r[28],P=e[3]<<24|e[2]<<16|e[1]<<8|e[0],N=e[7]<<24|e[6]<<16|e[5]<<8|e[4],j=e[11]<<24|e[10]<<16|e[9]<<8|e[8],E=e[15]<<24|e[14]<<16|e[13]<<8|e[12],I=i,y=n,m=s,b=c,o=h,d=u,M=f,K=g,G=D,J=C,X=S,l=w,v=P,U=N,q=j,R=E,L=0;L<Mc;L+=2)I=I+o|0,v^=I,v=v>>>32-16|v<<16,G=G+v|0,o^=G,o=o>>>32-12|o<<12,y=y+d|0,U^=y,U=U>>>32-16|U<<16,J=J+U|0,d^=J,d=d>>>32-12|d<<12,m=m+M|0,q^=m,q=q>>>32-16|q<<16,X=X+q|0,M^=X,M=M>>>32-12|M<<12,b=b+K|0,R^=b,R=R>>>32-16|R<<16,l=l+R|0,K^=l,K=K>>>32-12|K<<12,m=m+M|0,q^=m,q=q>>>32-8|q<<8,X=X+q|0,M^=X,M=M>>>32-7|M<<7,b=b+K|0,R^=b,R=R>>>32-8|R<<8,l=l+R|0,K^=l,K=K>>>32-7|K<<7,y=y+d|0,U^=y,U=U>>>32-8|U<<8,J=J+U|0,d^=J,d=d>>>32-7|d<<7,I=I+o|0,v^=I,v=v>>>32-8|v<<8,G=G+v|0,o^=G,o=o>>>32-7|o<<7,I=I+d|0,R^=I,R=R>>>32-16|R<<16,X=X+R|0,d^=X,d=d>>>32-12|d<<12,y=y+M|0,v^=y,v=v>>>32-16|v<<16,l=l+v|0,M^=l,M=M>>>32-12|M<<12,m=m+K|0,U^=m,U=U>>>32-16|U<<16,G=G+U|0,K^=G,K=K>>>32-12|K<<12,b=b+o|0,q^=b,q=q>>>32-16|q<<16,J=J+q|0,o^=J,o=o>>>32-12|o<<12,m=m+K|0,U^=m,U=U>>>32-8|U<<8,G=G+U|0,K^=G,K=K>>>32-7|K<<7,b=b+o|0,q^=b,q=q>>>32-8|q<<8,J=J+q|0,o^=J,o=o>>>32-7|o<<7,y=y+M|0,v^=y,v=v>>>32-8|v<<8,l=l+v|0,M^=l,M=M>>>32-7|M<<7,I=I+d|0,R^=I,R=R>>>32-8|R<<8,X=X+R|0,d^=X,d=d>>>32-7|d<<7;ot.writeUint32LE(I+i|0,t,0),ot.writeUint32LE(y+n|0,t,4),ot.writeUint32LE(m+s|0,t,8),ot.writeUint32LE(b+c|0,t,12),ot.writeUint32LE(o+h|0,t,16),ot.writeUint32LE(d+u|0,t,20),ot.writeUint32LE(M+f|0,t,24),ot.writeUint32LE(K+g|0,t,28),ot.writeUint32LE(G+D|0,t,32),ot.writeUint32LE(J+C|0,t,36),ot.writeUint32LE(X+S|0,t,40),ot.writeUint32LE(l+w|0,t,44),ot.writeUint32LE(v+P|0,t,48),ot.writeUint32LE(U+N|0,t,52),ot.writeUint32LE(q+j|0,t,56),ot.writeUint32LE(R+E|0,t,60)}function as(t,e,r,i,n){if(n===void 0&&(n=0),t.length!==32)throw new Error("ChaCha: key size must be 32 bytes");if(i.length<r.length)throw new Error("ChaCha: destination is shorter than source");var s,c;if(n===0){if(e.length!==8&&e.length!==12)throw new Error("ChaCha nonce must be 8 or 12 bytes");s=new Uint8Array(16),c=s.length-e.length,s.set(e,c)}else{if(e.length!==16)throw new Error("ChaCha nonce with counter must be 16 bytes");s=e,c=n}for(var h=new Uint8Array(64),u=0;u<r.length;u+=64){jc(h,s,t);for(var f=u;f<u+64&&f<r.length;f++)i[f]=r[f]^h[f-u];Bc(s,0,c)}return Mi.wipe(h),n===0&&Mi.wipe(s),i}kr.streamXOR=as;function $c(t,e,r,i){return i===void 0&&(i=0),Mi.wipe(r),as(t,e,r,r,i)}kr.stream=$c;function Bc(t,e,r){for(var i=1;r--;)i=i+(t[e]&255)|0,t[e]=i&255,i>>>=8,e++;if(i>0)throw new Error("ChaCha: counter overflow")}var cs={},Kt={};Object.defineProperty(Kt,"__esModule",{value:!0});function zc(t,e,r){return~(t-1)&e|t-1&r}Kt.select=zc;function Hc(t,e){return(t|0)-(e|0)-1>>>31&1}Kt.lessOrEqual=Hc;function hs(t,e){if(t.length!==e.length)return 0;for(var r=0,i=0;i<t.length;i++)r|=t[i]^e[i];return 1&r-1>>>8}Kt.compare=hs;function Kc(t,e){return t.length===0||e.length===0?!1:hs(t,e)!==0}Kt.equal=Kc,function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=Kt,r=ct;t.DIGEST_LENGTH=16;var i=function(){function c(h){this.digestLength=t.DIGEST_LENGTH,this._buffer=new Uint8Array(16),this._r=new Uint16Array(10),this._h=new Uint16Array(10),this._pad=new Uint16Array(8),this._leftover=0,this._fin=0,this._finished=!1;var u=h[0]|h[1]<<8;this._r[0]=u&8191;var f=h[2]|h[3]<<8;this._r[1]=(u>>>13|f<<3)&8191;var g=h[4]|h[5]<<8;this._r[2]=(f>>>10|g<<6)&7939;var D=h[6]|h[7]<<8;this._r[3]=(g>>>7|D<<9)&8191;var C=h[8]|h[9]<<8;this._r[4]=(D>>>4|C<<12)&255,this._r[5]=C>>>1&8190;var S=h[10]|h[11]<<8;this._r[6]=(C>>>14|S<<2)&8191;var w=h[12]|h[13]<<8;this._r[7]=(S>>>11|w<<5)&8065;var P=h[14]|h[15]<<8;this._r[8]=(w>>>8|P<<8)&8191,this._r[9]=P>>>5&127,this._pad[0]=h[16]|h[17]<<8,this._pad[1]=h[18]|h[19]<<8,this._pad[2]=h[20]|h[21]<<8,this._pad[3]=h[22]|h[23]<<8,this._pad[4]=h[24]|h[25]<<8,this._pad[5]=h[26]|h[27]<<8,this._pad[6]=h[28]|h[29]<<8,this._pad[7]=h[30]|h[31]<<8}return c.prototype._blocks=function(h,u,f){for(var g=this._fin?0:2048,D=this._h[0],C=this._h[1],S=this._h[2],w=this._h[3],P=this._h[4],N=this._h[5],j=this._h[6],E=this._h[7],I=this._h[8],y=this._h[9],m=this._r[0],b=this._r[1],o=this._r[2],d=this._r[3],M=this._r[4],K=this._r[5],G=this._r[6],J=this._r[7],X=this._r[8],l=this._r[9];f>=16;){var v=h[u+0]|h[u+1]<<8;D+=v&8191;var U=h[u+2]|h[u+3]<<8;C+=(v>>>13|U<<3)&8191;var q=h[u+4]|h[u+5]<<8;S+=(U>>>10|q<<6)&8191;var R=h[u+6]|h[u+7]<<8;w+=(q>>>7|R<<9)&8191;var L=h[u+8]|h[u+9]<<8;P+=(R>>>4|L<<12)&8191,N+=L>>>1&8191;var $=h[u+10]|h[u+11]<<8;j+=(L>>>14|$<<2)&8191;var B=h[u+12]|h[u+13]<<8;E+=($>>>11|B<<5)&8191;var ee=h[u+14]|h[u+15]<<8;I+=(B>>>8|ee<<8)&8191,y+=ee>>>5|g;var z=0,te=z;te+=D*m,te+=C*(5*l),te+=S*(5*X),te+=w*(5*J),te+=P*(5*G),z=te>>>13,te&=8191,te+=N*(5*K),te+=j*(5*M),te+=E*(5*d),te+=I*(5*o),te+=y*(5*b),z+=te>>>13,te&=8191;var k=z;k+=D*b,k+=C*m,k+=S*(5*l),k+=w*(5*X),k+=P*(5*J),z=k>>>13,k&=8191,k+=N*(5*G),k+=j*(5*K),k+=E*(5*M),k+=I*(5*d),k+=y*(5*o),z+=k>>>13,k&=8191;var ce=z;ce+=D*o,ce+=C*b,ce+=S*m,ce+=w*(5*l),ce+=P*(5*X),z=ce>>>13,ce&=8191,ce+=N*(5*J),ce+=j*(5*G),ce+=E*(5*K),ce+=I*(5*M),ce+=y*(5*d),z+=ce>>>13,ce&=8191;var T=z;T+=D*d,T+=C*o,T+=S*b,T+=w*m,T+=P*(5*l),z=T>>>13,T&=8191,T+=N*(5*X),T+=j*(5*J),T+=E*(5*G),T+=I*(5*K),T+=y*(5*M),z+=T>>>13,T&=8191;var A=z;A+=D*M,A+=C*d,A+=S*o,A+=w*b,A+=P*m,z=A>>>13,A&=8191,A+=N*(5*l),A+=j*(5*X),A+=E*(5*J),A+=I*(5*G),A+=y*(5*K),z+=A>>>13,A&=8191;var x=z;x+=D*K,x+=C*M,x+=S*d,x+=w*o,x+=P*b,z=x>>>13,x&=8191,x+=N*m,x+=j*(5*l),x+=E*(5*X),x+=I*(5*J),x+=y*(5*G),z+=x>>>13,x&=8191;var a=z;a+=D*G,a+=C*K,a+=S*M,a+=w*d,a+=P*o,z=a>>>13,a&=8191,a+=N*b,a+=j*m,a+=E*(5*l),a+=I*(5*X),a+=y*(5*J),z+=a>>>13,a&=8191;var _=z;_+=D*J,_+=C*G,_+=S*K,_+=w*M,_+=P*d,z=_>>>13,_&=8191,_+=N*o,_+=j*b,_+=E*m,_+=I*(5*l),_+=y*(5*X),z+=_>>>13,_&=8191;var H=z;H+=D*X,H+=C*J,H+=S*G,H+=w*K,H+=P*M,z=H>>>13,H&=8191,H+=N*d,H+=j*o,H+=E*b,H+=I*m,H+=y*(5*l),z+=H>>>13,H&=8191;var W=z;W+=D*l,W+=C*X,W+=S*J,W+=w*G,W+=P*K,z=W>>>13,W&=8191,W+=N*M,W+=j*d,W+=E*o,W+=I*b,W+=y*m,z+=W>>>13,W&=8191,z=(z<<2)+z|0,z=z+te|0,te=z&8191,z=z>>>13,k+=z,D=te,C=k,S=ce,w=T,P=A,N=x,j=a,E=_,I=H,y=W,u+=16,f-=16}this._h[0]=D,this._h[1]=C,this._h[2]=S,this._h[3]=w,this._h[4]=P,this._h[5]=N,this._h[6]=j,this._h[7]=E,this._h[8]=I,this._h[9]=y},c.prototype.finish=function(h,u){u===void 0&&(u=0);var f=new Uint16Array(10),g,D,C,S;if(this._leftover){for(S=this._leftover,this._buffer[S++]=1;S<16;S++)this._buffer[S]=0;this._fin=1,this._blocks(this._buffer,0,16)}for(g=this._h[1]>>>13,this._h[1]&=8191,S=2;S<10;S++)this._h[S]+=g,g=this._h[S]>>>13,this._h[S]&=8191;for(this._h[0]+=g*5,g=this._h[0]>>>13,this._h[0]&=8191,this._h[1]+=g,g=this._h[1]>>>13,this._h[1]&=8191,this._h[2]+=g,f[0]=this._h[0]+5,g=f[0]>>>13,f[0]&=8191,S=1;S<10;S++)f[S]=this._h[S]+g,g=f[S]>>>13,f[S]&=8191;for(f[9]-=1<<13,D=(g^1)-1,S=0;S<10;S++)f[S]&=D;for(D=~D,S=0;S<10;S++)this._h[S]=this._h[S]&D|f[S];for(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,C=this._h[0]+this._pad[0],this._h[0]=C&65535,S=1;S<8;S++)C=(this._h[S]+this._pad[S]|0)+(C>>>16)|0,this._h[S]=C&65535;return h[u+0]=this._h[0]>>>0,h[u+1]=this._h[0]>>>8,h[u+2]=this._h[1]>>>0,h[u+3]=this._h[1]>>>8,h[u+4]=this._h[2]>>>0,h[u+5]=this._h[2]>>>8,h[u+6]=this._h[3]>>>0,h[u+7]=this._h[3]>>>8,h[u+8]=this._h[4]>>>0,h[u+9]=this._h[4]>>>8,h[u+10]=this._h[5]>>>0,h[u+11]=this._h[5]>>>8,h[u+12]=this._h[6]>>>0,h[u+13]=this._h[6]>>>8,h[u+14]=this._h[7]>>>0,h[u+15]=this._h[7]>>>8,this._finished=!0,this},c.prototype.update=function(h){var u=0,f=h.length,g;if(this._leftover){g=16-this._leftover,g>f&&(g=f);for(var D=0;D<g;D++)this._buffer[this._leftover+D]=h[u+D];if(f-=g,u+=g,this._leftover+=g,this._leftover<16)return this;this._blocks(this._buffer,0,16),this._leftover=0}if(f>=16&&(g=f-f%16,this._blocks(h,u,g),u+=g,f-=g),f){for(var D=0;D<f;D++)this._buffer[this._leftover+D]=h[u+D];this._leftover+=f}return this},c.prototype.digest=function(){if(this._finished)throw new Error("Poly1305 was finished");var h=new Uint8Array(16);return this.finish(h),h},c.prototype.clean=function(){return r.wipe(this._buffer),r.wipe(this._r),r.wipe(this._h),r.wipe(this._pad),this._leftover=0,this._fin=0,this._finished=!0,this},c}();t.Poly1305=i;function n(c,h){var u=new i(c);u.update(h);var f=u.digest();return u.clean(),f}t.oneTimeAuth=n;function s(c,h){return c.length!==t.DIGEST_LENGTH||h.length!==t.DIGEST_LENGTH?!1:e.equal(c,h)}t.equal=s}(cs),function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=kr,r=cs,i=ct,n=re,s=Kt;t.KEY_LENGTH=32,t.NONCE_LENGTH=12,t.TAG_LENGTH=16;var c=new Uint8Array(16),h=function(){function u(f){if(this.nonceLength=t.NONCE_LENGTH,this.tagLength=t.TAG_LENGTH,f.length!==t.KEY_LENGTH)throw new Error("ChaCha20Poly1305 needs 32-byte key");this._key=new Uint8Array(f)}return u.prototype.seal=function(f,g,D,C){if(f.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");var S=new Uint8Array(16);S.set(f,S.length-f.length);var w=new Uint8Array(32);e.stream(this._key,S,w,4);var P=g.length+this.tagLength,N;if(C){if(C.length!==P)throw new Error("ChaCha20Poly1305: incorrect destination length");N=C}else N=new Uint8Array(P);return e.streamXOR(this._key,S,g,N,4),this._authenticate(N.subarray(N.length-this.tagLength,N.length),w,N.subarray(0,N.length-this.tagLength),D),i.wipe(S),N},u.prototype.open=function(f,g,D,C){if(f.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");if(g.length<this.tagLength)return null;var S=new Uint8Array(16);S.set(f,S.length-f.length);var w=new Uint8Array(32);e.stream(this._key,S,w,4);var P=new Uint8Array(this.tagLength);if(this._authenticate(P,w,g.subarray(0,g.length-this.tagLength),D),!s.equal(P,g.subarray(g.length-this.tagLength,g.length)))return null;var N=g.length-this.tagLength,j;if(C){if(C.length!==N)throw new Error("ChaCha20Poly1305: incorrect destination length");j=C}else j=new Uint8Array(N);return e.streamXOR(this._key,S,g.subarray(0,g.length-this.tagLength),j,4),i.wipe(S),j},u.prototype.clean=function(){return i.wipe(this._key),this},u.prototype._authenticate=function(f,g,D,C){var S=new r.Poly1305(g);C&&(S.update(C),C.length%16>0&&S.update(c.subarray(C.length%16))),S.update(D),D.length%16>0&&S.update(c.subarray(D.length%16));var w=new Uint8Array(8);C&&n.writeUint64LE(C.length,w),S.update(w),n.writeUint64LE(D.length,w),S.update(w);for(var P=S.digest(),N=0;N<P.length;N++)f[N]=P[N];S.clean(),i.wipe(P),i.wipe(w)},u}();t.ChaCha20Poly1305=h}(Li);var us={},Dr={},ji={};Object.defineProperty(ji,"__esModule",{value:!0});function qc(t){return typeof t.saveState<"u"&&typeof t.restoreState<"u"&&typeof t.cleanSavedState<"u"}ji.isSerializableHash=qc,Object.defineProperty(Dr,"__esModule",{value:!0});var Ot=ji,Vc=Kt,Gc=ct,fs=function(){function t(e,r){this._finished=!1,this._inner=new e,this._outer=new e,this.blockSize=this._outer.blockSize,this.digestLength=this._outer.digestLength;var i=new Uint8Array(this.blockSize);r.length>this.blockSize?this._inner.update(r).finish(i).clean():i.set(r);for(var n=0;n<i.length;n++)i[n]^=54;this._inner.update(i);for(var n=0;n<i.length;n++)i[n]^=106;this._outer.update(i),Ot.isSerializableHash(this._inner)&&Ot.isSerializableHash(this._outer)&&(this._innerKeyedState=this._inner.saveState(),this._outerKeyedState=this._outer.saveState()),Gc.wipe(i)}return t.prototype.reset=function(){if(!Ot.isSerializableHash(this._inner)||!Ot.isSerializableHash(this._outer))throw new Error("hmac: can't reset() because hash doesn't implement restoreState()");return this._inner.restoreState(this._innerKeyedState),this._outer.restoreState(this._outerKeyedState),this._finished=!1,this},t.prototype.clean=function(){Ot.isSerializableHash(this._inner)&&this._inner.cleanSavedState(this._innerKeyedState),Ot.isSerializableHash(this._outer)&&this._outer.cleanSavedState(this._outerKeyedState),this._inner.clean(),this._outer.clean()},t.prototype.update=function(e){return this._inner.update(e),this},t.prototype.finish=function(e){return this._finished?(this._outer.finish(e),this):(this._inner.finish(e),this._outer.update(e.subarray(0,this.digestLength)).finish(e),this._finished=!0,this)},t.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},t.prototype.saveState=function(){if(!Ot.isSerializableHash(this._inner))throw new Error("hmac: can't saveState() because hash doesn't implement it");return this._inner.saveState()},t.prototype.restoreState=function(e){if(!Ot.isSerializableHash(this._inner)||!Ot.isSerializableHash(this._outer))throw new Error("hmac: can't restoreState() because hash doesn't implement it");return this._inner.restoreState(e),this._outer.restoreState(this._outerKeyedState),this._finished=!1,this},t.prototype.cleanSavedState=function(e){if(!Ot.isSerializableHash(this._inner))throw new Error("hmac: can't cleanSavedState() because hash doesn't implement it");this._inner.cleanSavedState(e)},t}();Dr.HMAC=fs;function Wc(t,e,r){var i=new fs(t,e);i.update(r);var n=i.digest();return i.clean(),n}Dr.hmac=Wc,Dr.equal=Vc.equal,Object.defineProperty(us,"__esModule",{value:!0});var ls=Dr,ds=ct,Yc=function(){function t(e,r,i,n){i===void 0&&(i=new Uint8Array(0)),this._counter=new Uint8Array(1),this._hash=e,this._info=n;var s=ls.hmac(this._hash,i,r);this._hmac=new ls.HMAC(e,s),this._buffer=new Uint8Array(this._hmac.digestLength),this._bufpos=this._buffer.length}return t.prototype._fillBuffer=function(){this._counter[0]++;var e=this._counter[0];if(e===0)throw new Error("hkdf: cannot expand more");this._hmac.reset(),e>1&&this._hmac.update(this._buffer),this._info&&this._hmac.update(this._info),this._hmac.update(this._counter),this._hmac.finish(this._buffer),this._bufpos=0},t.prototype.expand=function(e){for(var r=new Uint8Array(e),i=0;i<r.length;i++)this._bufpos===this._buffer.length&&this._fillBuffer(),r[i]=this._buffer[this._bufpos++];return r},t.prototype.clean=function(){this._hmac.clean(),ds.wipe(this._buffer),ds.wipe(this._counter),this._bufpos=0},t}(),kc=us.HKDF=Yc,Sr={},$i={},Bi={};Object.defineProperty(Bi,"__esModule",{value:!0});var ps=65536,Jc=function(){function t(){this.isAvailable=!1,this.isInstantiated=!1;var e=typeof self<"u"?self.crypto||self.msCrypto:null;e&&e.getRandomValues&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}return t.prototype.randomBytes=function(e){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");for(var r=new Uint8Array(e),i=0;i<r.length;i+=ps)this._crypto.getRandomValues(r.subarray(i,i+Math.min(r.length-i,ps)));return r},t}();Bi.BrowserRandomSource=Jc;function gs(t){throw new Error('Could not dynamically require "'+t+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var zi={},Xc={},Zc=Object.freeze({__proto__:null,default:Xc}),ys=Si(Zc);Object.defineProperty(zi,"__esModule",{value:!0});var Qc=ct,eh=function(){function t(){if(this.isAvailable=!1,this.isInstantiated=!1,typeof gs<"u"){var e=ys;e&&e.randomBytes&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}}return t.prototype.randomBytes=function(e){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");var r=this._crypto.randomBytes(e);if(r.length!==e)throw new Error("NodeRandomSource: got fewer bytes than requested");for(var i=new Uint8Array(e),n=0;n<i.length;n++)i[n]=r[n];return Qc.wipe(r),i},t}();zi.NodeRandomSource=eh,Object.defineProperty($i,"__esModule",{value:!0});var th=Bi,rh=zi,ih=function(){function t(){if(this.isAvailable=!1,this.name="",this._source=new th.BrowserRandomSource,this._source.isAvailable){this.isAvailable=!0,this.name="Browser";return}if(this._source=new rh.NodeRandomSource,this._source.isAvailable){this.isAvailable=!0,this.name="Node";return}}return t.prototype.randomBytes=function(e){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(e)},t}();$i.SystemRandomSource=ih,function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=$i,r=re,i=ct;t.defaultRandomSource=new e.SystemRandomSource;function n(f,g){return g===void 0&&(g=t.defaultRandomSource),g.randomBytes(f)}t.randomBytes=n;function s(f){f===void 0&&(f=t.defaultRandomSource);var g=n(4,f),D=r.readUint32LE(g);return i.wipe(g),D}t.randomUint32=s;var c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function h(f,g,D){if(g===void 0&&(g=c),D===void 0&&(D=t.defaultRandomSource),g.length<2)throw new Error("randomString charset is too short");if(g.length>256)throw new Error("randomString charset is too long");for(var C="",S=g.length,w=256-256%S;f>0;){for(var P=n(Math.ceil(f*256/w),D),N=0;N<P.length&&f>0;N++){var j=P[N];j<w&&(C+=g.charAt(j%S),f--)}i.wipe(P)}return C}t.randomString=h;function u(f,g,D){g===void 0&&(g=c),D===void 0&&(D=t.defaultRandomSource);var C=Math.ceil(f/(Math.log(g.length)/Math.LN2));return h(C,g,D)}t.randomStringForEntropy=u}(Sr);var Zr={};(function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=re,r=ct;t.DIGEST_LENGTH=32,t.BLOCK_SIZE=64;var i=function(){function h(){this.digestLength=t.DIGEST_LENGTH,this.blockSize=t.BLOCK_SIZE,this._state=new Int32Array(8),this._temp=new Int32Array(64),this._buffer=new Uint8Array(128),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this.reset()}return h.prototype._initState=function(){this._state[0]=1779033703,this._state[1]=3144134277,this._state[2]=1013904242,this._state[3]=2773480762,this._state[4]=1359893119,this._state[5]=2600822924,this._state[6]=528734635,this._state[7]=1541459225},h.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},h.prototype.clean=function(){r.wipe(this._buffer),r.wipe(this._temp),this.reset()},h.prototype.update=function(u,f){if(f===void 0&&(f=u.length),this._finished)throw new Error("SHA256: can't update because hash was finished.");var g=0;if(this._bytesHashed+=f,this._bufferLength>0){for(;this._bufferLength<this.blockSize&&f>0;)this._buffer[this._bufferLength++]=u[g++],f--;this._bufferLength===this.blockSize&&(s(this._temp,this._state,this._buffer,0,this.blockSize),this._bufferLength=0)}for(f>=this.blockSize&&(g=s(this._temp,this._state,u,g,f),f%=this.blockSize);f>0;)this._buffer[this._bufferLength++]=u[g++],f--;return this},h.prototype.finish=function(u){if(!this._finished){var f=this._bytesHashed,g=this._bufferLength,D=f/536870912|0,C=f<<3,S=f%64<56?64:128;this._buffer[g]=128;for(var w=g+1;w<S-8;w++)this._buffer[w]=0;e.writeUint32BE(D,this._buffer,S-8),e.writeUint32BE(C,this._buffer,S-4),s(this._temp,this._state,this._buffer,0,S),this._finished=!0}for(var w=0;w<this.digestLength/4;w++)e.writeUint32BE(this._state[w],u,w*4);return this},h.prototype.digest=function(){var u=new Uint8Array(this.digestLength);return this.finish(u),u},h.prototype.saveState=function(){if(this._finished)throw new Error("SHA256: cannot save finished state");return{state:new Int32Array(this._state),buffer:this._bufferLength>0?new Uint8Array(this._buffer):void 0,bufferLength:this._bufferLength,bytesHashed:this._bytesHashed}},h.prototype.restoreState=function(u){return this._state.set(u.state),this._bufferLength=u.bufferLength,u.buffer&&this._buffer.set(u.buffer),this._bytesHashed=u.bytesHashed,this._finished=!1,this},h.prototype.cleanSavedState=function(u){r.wipe(u.state),u.buffer&&r.wipe(u.buffer),u.bufferLength=0,u.bytesHashed=0},h}();t.SHA256=i;var n=new Int32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);function s(h,u,f,g,D){for(;D>=64;){for(var C=u[0],S=u[1],w=u[2],P=u[3],N=u[4],j=u[5],E=u[6],I=u[7],y=0;y<16;y++){var m=g+y*4;h[y]=e.readUint32BE(f,m)}for(var y=16;y<64;y++){var b=h[y-2],o=(b>>>17|b<<32-17)^(b>>>19|b<<32-19)^b>>>10;b=h[y-15];var d=(b>>>7|b<<32-7)^(b>>>18|b<<32-18)^b>>>3;h[y]=(o+h[y-7]|0)+(d+h[y-16]|0)}for(var y=0;y<64;y++){var o=(((N>>>6|N<<26)^(N>>>11|N<<21)^(N>>>25|N<<7))+(N&j^~N&E)|0)+(I+(n[y]+h[y]|0)|0)|0,d=((C>>>2|C<<32-2)^(C>>>13|C<<32-13)^(C>>>22|C<<32-22))+(C&S^C&w^S&w)|0;I=E,E=j,j=N,N=P+o|0,P=w,w=S,S=C,C=o+d|0}u[0]+=C,u[1]+=S,u[2]+=w,u[3]+=P,u[4]+=N,u[5]+=j,u[6]+=E,u[7]+=I,g+=64,D-=64}return g}function c(h){var u=new i;u.update(h);var f=u.digest();return u.clean(),f}t.hash=c})(Zr);var Hi={};(function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=Sr,r=ct;t.PUBLIC_KEY_LENGTH=32,t.SECRET_KEY_LENGTH=32,t.SHARED_KEY_LENGTH=32;function i(y){var m=new Float64Array(16);if(y)for(var b=0;b<y.length;b++)m[b]=y[b];return m}var n=new Uint8Array(32);n[0]=9;var s=i([56129,1]);function c(y){for(var m=1,b=0;b<16;b++){var o=y[b]+m+65535;m=Math.floor(o/65536),y[b]=o-m*65536}y[0]+=m-1+37*(m-1)}function h(y,m,b){for(var o=~(b-1),d=0;d<16;d++){var M=o&(y[d]^m[d]);y[d]^=M,m[d]^=M}}function u(y,m){for(var b=i(),o=i(),d=0;d<16;d++)o[d]=m[d];c(o),c(o),c(o);for(var M=0;M<2;M++){b[0]=o[0]-65517;for(var d=1;d<15;d++)b[d]=o[d]-65535-(b[d-1]>>16&1),b[d-1]&=65535;b[15]=o[15]-32767-(b[14]>>16&1);var K=b[15]>>16&1;b[14]&=65535,h(o,b,1-K)}for(var d=0;d<16;d++)y[2*d]=o[d]&255,y[2*d+1]=o[d]>>8}function f(y,m){for(var b=0;b<16;b++)y[b]=m[2*b]+(m[2*b+1]<<8);y[15]&=32767}function g(y,m,b){for(var o=0;o<16;o++)y[o]=m[o]+b[o]}function D(y,m,b){for(var o=0;o<16;o++)y[o]=m[o]-b[o]}function C(y,m,b){var o,d,M=0,K=0,G=0,J=0,X=0,l=0,v=0,U=0,q=0,R=0,L=0,$=0,B=0,ee=0,z=0,te=0,k=0,ce=0,T=0,A=0,x=0,a=0,_=0,H=0,W=0,le=0,_e=0,pe=0,we=0,Fe=0,Ce=0,ve=b[0],ge=b[1],de=b[2],ue=b[3],he=b[4],ae=b[5],oe=b[6],ie=b[7],fe=b[8],ye=b[9],ne=b[10],be=b[11],me=b[12],De=b[13],Se=b[14],Ee=b[15];o=m[0],M+=o*ve,K+=o*ge,G+=o*de,J+=o*ue,X+=o*he,l+=o*ae,v+=o*oe,U+=o*ie,q+=o*fe,R+=o*ye,L+=o*ne,$+=o*be,B+=o*me,ee+=o*De,z+=o*Se,te+=o*Ee,o=m[1],K+=o*ve,G+=o*ge,J+=o*de,X+=o*ue,l+=o*he,v+=o*ae,U+=o*oe,q+=o*ie,R+=o*fe,L+=o*ye,$+=o*ne,B+=o*be,ee+=o*me,z+=o*De,te+=o*Se,k+=o*Ee,o=m[2],G+=o*ve,J+=o*ge,X+=o*de,l+=o*ue,v+=o*he,U+=o*ae,q+=o*oe,R+=o*ie,L+=o*fe,$+=o*ye,B+=o*ne,ee+=o*be,z+=o*me,te+=o*De,k+=o*Se,ce+=o*Ee,o=m[3],J+=o*ve,X+=o*ge,l+=o*de,v+=o*ue,U+=o*he,q+=o*ae,R+=o*oe,L+=o*ie,$+=o*fe,B+=o*ye,ee+=o*ne,z+=o*be,te+=o*me,k+=o*De,ce+=o*Se,T+=o*Ee,o=m[4],X+=o*ve,l+=o*ge,v+=o*de,U+=o*ue,q+=o*he,R+=o*ae,L+=o*oe,$+=o*ie,B+=o*fe,ee+=o*ye,z+=o*ne,te+=o*be,k+=o*me,ce+=o*De,T+=o*Se,A+=o*Ee,o=m[5],l+=o*ve,v+=o*ge,U+=o*de,q+=o*ue,R+=o*he,L+=o*ae,$+=o*oe,B+=o*ie,ee+=o*fe,z+=o*ye,te+=o*ne,k+=o*be,ce+=o*me,T+=o*De,A+=o*Se,x+=o*Ee,o=m[6],v+=o*ve,U+=o*ge,q+=o*de,R+=o*ue,L+=o*he,$+=o*ae,B+=o*oe,ee+=o*ie,z+=o*fe,te+=o*ye,k+=o*ne,ce+=o*be,T+=o*me,A+=o*De,x+=o*Se,a+=o*Ee,o=m[7],U+=o*ve,q+=o*ge,R+=o*de,L+=o*ue,$+=o*he,B+=o*ae,ee+=o*oe,z+=o*ie,te+=o*fe,k+=o*ye,ce+=o*ne,T+=o*be,A+=o*me,x+=o*De,a+=o*Se,_+=o*Ee,o=m[8],q+=o*ve,R+=o*ge,L+=o*de,$+=o*ue,B+=o*he,ee+=o*ae,z+=o*oe,te+=o*ie,k+=o*fe,ce+=o*ye,T+=o*ne,A+=o*be,x+=o*me,a+=o*De,_+=o*Se,H+=o*Ee,o=m[9],R+=o*ve,L+=o*ge,$+=o*de,B+=o*ue,ee+=o*he,z+=o*ae,te+=o*oe,k+=o*ie,ce+=o*fe,T+=o*ye,A+=o*ne,x+=o*be,a+=o*me,_+=o*De,H+=o*Se,W+=o*Ee,o=m[10],L+=o*ve,$+=o*ge,B+=o*de,ee+=o*ue,z+=o*he,te+=o*ae,k+=o*oe,ce+=o*ie,T+=o*fe,A+=o*ye,x+=o*ne,a+=o*be,_+=o*me,H+=o*De,W+=o*Se,le+=o*Ee,o=m[11],$+=o*ve,B+=o*ge,ee+=o*de,z+=o*ue,te+=o*he,k+=o*ae,ce+=o*oe,T+=o*ie,A+=o*fe,x+=o*ye,a+=o*ne,_+=o*be,H+=o*me,W+=o*De,le+=o*Se,_e+=o*Ee,o=m[12],B+=o*ve,ee+=o*ge,z+=o*de,te+=o*ue,k+=o*he,ce+=o*ae,T+=o*oe,A+=o*ie,x+=o*fe,a+=o*ye,_+=o*ne,H+=o*be,W+=o*me,le+=o*De,_e+=o*Se,pe+=o*Ee,o=m[13],ee+=o*ve,z+=o*ge,te+=o*de,k+=o*ue,ce+=o*he,T+=o*ae,A+=o*oe,x+=o*ie,a+=o*fe,_+=o*ye,H+=o*ne,W+=o*be,le+=o*me,_e+=o*De,pe+=o*Se,we+=o*Ee,o=m[14],z+=o*ve,te+=o*ge,k+=o*de,ce+=o*ue,T+=o*he,A+=o*ae,x+=o*oe,a+=o*ie,_+=o*fe,H+=o*ye,W+=o*ne,le+=o*be,_e+=o*me,pe+=o*De,we+=o*Se,Fe+=o*Ee,o=m[15],te+=o*ve,k+=o*ge,ce+=o*de,T+=o*ue,A+=o*he,x+=o*ae,a+=o*oe,_+=o*ie,H+=o*fe,W+=o*ye,le+=o*ne,_e+=o*be,pe+=o*me,we+=o*De,Fe+=o*Se,Ce+=o*Ee,M+=38*k,K+=38*ce,G+=38*T,J+=38*A,X+=38*x,l+=38*a,v+=38*_,U+=38*H,q+=38*W,R+=38*le,L+=38*_e,$+=38*pe,B+=38*we,ee+=38*Fe,z+=38*Ce,d=1,o=M+d+65535,d=Math.floor(o/65536),M=o-d*65536,o=K+d+65535,d=Math.floor(o/65536),K=o-d*65536,o=G+d+65535,d=Math.floor(o/65536),G=o-d*65536,o=J+d+65535,d=Math.floor(o/65536),J=o-d*65536,o=X+d+65535,d=Math.floor(o/65536),X=o-d*65536,o=l+d+65535,d=Math.floor(o/65536),l=o-d*65536,o=v+d+65535,d=Math.floor(o/65536),v=o-d*65536,o=U+d+65535,d=Math.floor(o/65536),U=o-d*65536,o=q+d+65535,d=Math.floor(o/65536),q=o-d*65536,o=R+d+65535,d=Math.floor(o/65536),R=o-d*65536,o=L+d+65535,d=Math.floor(o/65536),L=o-d*65536,o=$+d+65535,d=Math.floor(o/65536),$=o-d*65536,o=B+d+65535,d=Math.floor(o/65536),B=o-d*65536,o=ee+d+65535,d=Math.floor(o/65536),ee=o-d*65536,o=z+d+65535,d=Math.floor(o/65536),z=o-d*65536,o=te+d+65535,d=Math.floor(o/65536),te=o-d*65536,M+=d-1+37*(d-1),d=1,o=M+d+65535,d=Math.floor(o/65536),M=o-d*65536,o=K+d+65535,d=Math.floor(o/65536),K=o-d*65536,o=G+d+65535,d=Math.floor(o/65536),G=o-d*65536,o=J+d+65535,d=Math.floor(o/65536),J=o-d*65536,o=X+d+65535,d=Math.floor(o/65536),X=o-d*65536,o=l+d+65535,d=Math.floor(o/65536),l=o-d*65536,o=v+d+65535,d=Math.floor(o/65536),v=o-d*65536,o=U+d+65535,d=Math.floor(o/65536),U=o-d*65536,o=q+d+65535,d=Math.floor(o/65536),q=o-d*65536,o=R+d+65535,d=Math.floor(o/65536),R=o-d*65536,o=L+d+65535,d=Math.floor(o/65536),L=o-d*65536,o=$+d+65535,d=Math.floor(o/65536),$=o-d*65536,o=B+d+65535,d=Math.floor(o/65536),B=o-d*65536,o=ee+d+65535,d=Math.floor(o/65536),ee=o-d*65536,o=z+d+65535,d=Math.floor(o/65536),z=o-d*65536,o=te+d+65535,d=Math.floor(o/65536),te=o-d*65536,M+=d-1+37*(d-1),y[0]=M,y[1]=K,y[2]=G,y[3]=J,y[4]=X,y[5]=l,y[6]=v,y[7]=U,y[8]=q,y[9]=R,y[10]=L,y[11]=$,y[12]=B,y[13]=ee,y[14]=z,y[15]=te}function S(y,m){C(y,m,m)}function w(y,m){for(var b=i(),o=0;o<16;o++)b[o]=m[o];for(var o=253;o>=0;o--)S(b,b),o!==2&&o!==4&&C(b,b,m);for(var o=0;o<16;o++)y[o]=b[o]}function P(y,m){for(var b=new Uint8Array(32),o=new Float64Array(80),d=i(),M=i(),K=i(),G=i(),J=i(),X=i(),l=0;l<31;l++)b[l]=y[l];b[31]=y[31]&127|64,b[0]&=248,f(o,m);for(var l=0;l<16;l++)M[l]=o[l];d[0]=G[0]=1;for(var l=254;l>=0;--l){var v=b[l>>>3]>>>(l&7)&1;h(d,M,v),h(K,G,v),g(J,d,K),D(d,d,K),g(K,M,G),D(M,M,G),S(G,J),S(X,d),C(d,K,d),C(K,M,J),g(J,d,K),D(d,d,K),S(M,d),D(K,G,X),C(d,K,s),g(d,d,G),C(K,K,d),C(d,G,X),C(G,M,o),S(M,J),h(d,M,v),h(K,G,v)}for(var l=0;l<16;l++)o[l+16]=d[l],o[l+32]=K[l],o[l+48]=M[l],o[l+64]=G[l];var U=o.subarray(32),q=o.subarray(16);w(U,U),C(q,q,U);var R=new Uint8Array(32);return u(R,q),R}t.scalarMult=P;function N(y){return P(y,n)}t.scalarMultBase=N;function j(y){if(y.length!==t.SECRET_KEY_LENGTH)throw new Error("x25519: seed must be "+t.SECRET_KEY_LENGTH+" bytes");var m=new Uint8Array(y),b=N(m);return{publicKey:b,secretKey:m}}t.generateKeyPairFromSeed=j;function E(y){var m=e.randomBytes(32,y),b=j(m);return r.wipe(m),b}t.generateKeyPair=E;function I(y,m,b){if(b===void 0&&(b=!1),y.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect secret key length");if(m.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect public key length");var o=P(y,m);if(b){for(var d=0,M=0;M<o.length;M++)d|=o[M];if(d===0)throw new Error("X25519: invalid shared key")}return o}t.sharedKey=I})(Hi);function vs(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?globalThis.Buffer.allocUnsafe(t):new Uint8Array(t)}function Ki(t,e){e||(e=t.reduce((n,s)=>n+s.length,0));const r=vs(e);let i=0;for(const n of t)r.set(n,i),i+=n.length;return r}function nh(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),i=0;i<r.length;i++)r[i]=255;for(var n=0;n<t.length;n++){var s=t.charAt(n),c=s.charCodeAt(0);if(r[c]!==255)throw new TypeError(s+" is ambiguous");r[c]=n}var h=t.length,u=t.charAt(0),f=Math.log(h)/Math.log(256),g=Math.log(256)/Math.log(h);function D(w){if(w instanceof Uint8Array||(ArrayBuffer.isView(w)?w=new Uint8Array(w.buffer,w.byteOffset,w.byteLength):Array.isArray(w)&&(w=Uint8Array.from(w))),!(w instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(w.length===0)return"";for(var P=0,N=0,j=0,E=w.length;j!==E&&w[j]===0;)j++,P++;for(var I=(E-j)*g+1>>>0,y=new Uint8Array(I);j!==E;){for(var m=w[j],b=0,o=I-1;(m!==0||b<N)&&o!==-1;o--,b++)m+=256*y[o]>>>0,y[o]=m%h>>>0,m=m/h>>>0;if(m!==0)throw new Error("Non-zero carry");N=b,j++}for(var d=I-N;d!==I&&y[d]===0;)d++;for(var M=u.repeat(P);d<I;++d)M+=t.charAt(y[d]);return M}function C(w){if(typeof w!="string")throw new TypeError("Expected String");if(w.length===0)return new Uint8Array;var P=0;if(w[P]!==" "){for(var N=0,j=0;w[P]===u;)N++,P++;for(var E=(w.length-P)*f+1>>>0,I=new Uint8Array(E);w[P];){var y=r[w.charCodeAt(P)];if(y===255)return;for(var m=0,b=E-1;(y!==0||m<j)&&b!==-1;b--,m++)y+=h*I[b]>>>0,I[b]=y%256>>>0,y=y/256>>>0;if(y!==0)throw new Error("Non-zero carry");j=m,P++}if(w[P]!==" "){for(var o=E-j;o!==E&&I[o]===0;)o++;for(var d=new Uint8Array(N+(E-o)),M=N;o!==E;)d[M++]=I[o++];return d}}}function S(w){var P=C(w);if(P)return P;throw new Error(`Non-${e} character`)}return{encode:D,decodeUnsafe:C,decode:S}}var sh=nh,oh=sh;const _s=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")},ah=t=>new TextEncoder().encode(t),ch=t=>new TextDecoder().decode(t);class hh{constructor(e,r,i){this.name=e,this.prefix=r,this.baseEncode=i}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class uh{constructor(e,r,i){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=i}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return bs(this,e)}}class fh{constructor(e){this.decoders=e}or(e){return bs(this,e)}decode(e){const r=e[0],i=this.decoders[r];if(i)return i.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const bs=(t,e)=>new fh({...t.decoders||{[t.prefix]:t},...e.decoders||{[e.prefix]:e}});class lh{constructor(e,r,i,n){this.name=e,this.prefix=r,this.baseEncode=i,this.baseDecode=n,this.encoder=new hh(e,r,i),this.decoder=new uh(e,r,n)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const Qr=({name:t,prefix:e,encode:r,decode:i})=>new lh(t,e,r,i),xr=({prefix:t,name:e,alphabet:r})=>{const{encode:i,decode:n}=oh(r,e);return Qr({prefix:t,name:e,encode:i,decode:s=>_s(n(s))})},dh=(t,e,r,i)=>{const n={};for(let g=0;g<e.length;++g)n[e[g]]=g;let s=t.length;for(;t[s-1]==="=";)--s;const c=new Uint8Array(s*r/8|0);let h=0,u=0,f=0;for(let g=0;g<s;++g){const D=n[t[g]];if(D===void 0)throw new SyntaxError(`Non-${i} character`);u=u<<r|D,h+=r,h>=8&&(h-=8,c[f++]=255&u>>h)}if(h>=r||255&u<<8-h)throw new SyntaxError("Unexpected end of data");return c},ph=(t,e,r)=>{const i=e[e.length-1]==="=",n=(1<<r)-1;let s="",c=0,h=0;for(let u=0;u<t.length;++u)for(h=h<<8|t[u],c+=8;c>r;)c-=r,s+=e[n&h>>c];if(c&&(s+=e[n&h<<r-c]),i)for(;s.length*r&7;)s+="=";return s},rt=({name:t,prefix:e,bitsPerChar:r,alphabet:i})=>Qr({prefix:e,name:t,encode(n){return ph(n,i,r)},decode(n){return dh(n,i,r,t)}}),gh=Qr({prefix:"\0",name:"identity",encode:t=>ch(t),decode:t=>ah(t)});var yh=Object.freeze({__proto__:null,identity:gh});const vh=rt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var _h=Object.freeze({__proto__:null,base2:vh});const bh=rt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var mh=Object.freeze({__proto__:null,base8:bh});const wh=xr({prefix:"9",name:"base10",alphabet:"0123456789"});var Eh=Object.freeze({__proto__:null,base10:wh});const Dh=rt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),Sh=rt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var xh=Object.freeze({__proto__:null,base16:Dh,base16upper:Sh});const Oh=rt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Ih=rt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Ah=rt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Th=rt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Ch=rt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Nh=rt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Lh=rt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Rh=rt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Ph=rt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Fh=Object.freeze({__proto__:null,base32:Oh,base32upper:Ih,base32pad:Ah,base32padupper:Th,base32hex:Ch,base32hexupper:Nh,base32hexpad:Lh,base32hexpadupper:Rh,base32z:Ph});const Uh=xr({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Mh=xr({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var jh=Object.freeze({__proto__:null,base36:Uh,base36upper:Mh});const $h=xr({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Bh=xr({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var zh=Object.freeze({__proto__:null,base58btc:$h,base58flickr:Bh});const Hh=rt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Kh=rt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),qh=rt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Vh=rt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Gh=Object.freeze({__proto__:null,base64:Hh,base64pad:Kh,base64url:qh,base64urlpad:Vh});const ms=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),Wh=ms.reduce((t,e,r)=>(t[r]=e,t),[]),Yh=ms.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function kh(t){return t.reduce((e,r)=>(e+=Wh[r],e),"")}function Jh(t){const e=[];for(const r of t){const i=Yh[r.codePointAt(0)];if(i===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(i)}return new Uint8Array(e)}const Xh=Qr({prefix:"\u{1F680}",name:"base256emoji",encode:kh,decode:Jh});var Zh=Object.freeze({__proto__:null,base256emoji:Xh}),Qh=Es,ws=128,eu=127,tu=~eu,ru=Math.pow(2,31);function Es(t,e,r){e=e||[],r=r||0;for(var i=r;t>=ru;)e[r++]=t&255|ws,t/=128;for(;t&tu;)e[r++]=t&255|ws,t>>>=7;return e[r]=t|0,Es.bytes=r-i+1,e}var iu=qi,nu=128,Ds=127;function qi(t,i){var r=0,i=i||0,n=0,s=i,c,h=t.length;do{if(s>=h)throw qi.bytes=0,new RangeError("Could not decode varint");c=t[s++],r+=n<28?(c&Ds)<<n:(c&Ds)*Math.pow(2,n),n+=7}while(c>=nu);return qi.bytes=s-i,r}var su=Math.pow(2,7),ou=Math.pow(2,14),au=Math.pow(2,21),cu=Math.pow(2,28),hu=Math.pow(2,35),uu=Math.pow(2,42),fu=Math.pow(2,49),lu=Math.pow(2,56),du=Math.pow(2,63),pu=function(t){return t<su?1:t<ou?2:t<au?3:t<cu?4:t<hu?5:t<uu?6:t<fu?7:t<lu?8:t<du?9:10},gu={encode:Qh,decode:iu,encodingLength:pu},Ss=gu;const xs=(t,e,r=0)=>(Ss.encode(t,e,r),e),Os=t=>Ss.encodingLength(t),Vi=(t,e)=>{const r=e.byteLength,i=Os(t),n=i+Os(r),s=new Uint8Array(n+r);return xs(t,s,0),xs(r,s,i),s.set(e,n),new yu(t,r,e,s)};class yu{constructor(e,r,i,n){this.code=e,this.size=r,this.digest=i,this.bytes=n}}const Is=({name:t,code:e,encode:r})=>new vu(t,e,r);class vu{constructor(e,r,i){this.name=e,this.code=r,this.encode=i}digest(e){if(e instanceof Uint8Array){const r=this.encode(e);return r instanceof Uint8Array?Vi(this.code,r):r.then(i=>Vi(this.code,i))}else throw Error("Unknown type, must be binary type")}}const As=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),_u=Is({name:"sha2-256",code:18,encode:As("SHA-256")}),bu=Is({name:"sha2-512",code:19,encode:As("SHA-512")});var mu=Object.freeze({__proto__:null,sha256:_u,sha512:bu});const Ts=0,wu="identity",Cs=_s;var Eu=Object.freeze({__proto__:null,identity:{code:Ts,name:wu,encode:Cs,digest:t=>Vi(Ts,Cs(t))}});new TextEncoder,new TextDecoder;const Ns={...yh,..._h,...mh,...Eh,...xh,...Fh,...jh,...zh,...Gh,...Zh};({...mu,...Eu});function Ls(t,e,r,i){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:i}}}const Rs=Ls("utf8","u",t=>{const e=new TextDecoder("utf8");return"u"+e.decode(t)},t=>new TextEncoder().encode(t.substring(1))),Gi=Ls("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);const e=vs(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),Ps={utf8:Rs,"utf-8":Rs,hex:Ns.base16,latin1:Gi,ascii:Gi,binary:Gi,...Ns};function ft(t,e="utf8"){const r=Ps[e];if(!r)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t,"utf8"):r.decoder.decode(`${r.prefix}${t}`)}function lt(t,e="utf8"){const r=Ps[e];if(!r)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t.buffer,t.byteOffset,t.byteLength).toString("utf8"):r.encoder.encode(t).substring(1)}var Fs=function(t,e,r){if(r||arguments.length===2)for(var i=0,n=e.length,s;i<n;i++)(s||!(i in e))&&(s||(s=Array.prototype.slice.call(e,0,i)),s[i]=e[i]);return t.concat(s||Array.prototype.slice.call(e))},Du=function(){function t(e,r,i){this.name=e,this.version=r,this.os=i,this.type="browser"}return t}(),Su=function(){function t(e){this.version=e,this.type="node",this.name="node",this.os=process.platform}return t}(),xu=function(){function t(e,r,i,n){this.name=e,this.version=r,this.os=i,this.bot=n,this.type="bot-device"}return t}(),Ou=function(){function t(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null}return t}(),Iu=function(){function t(){this.type="react-native",this.name="react-native",this.version=null,this.os=null}return t}(),Au=/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/,Tu=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Us=3,Cu=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/EdgA?\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["pie",/^Microsoft Pocket Internet Explorer\/(\d+\.\d+)$/],["pie",/^Mozilla\/\d\.\d+\s\(compatible;\s(?:MSP?IE|MSInternet Explorer) (\d+\.\d+);.*Windows CE.*\)$/],["netfront",/^Mozilla\/\d\.\d+.*NetFront\/(\d.\d)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FB[AS]V\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["curl",/^curl\/([0-9\.]+)$/],["searchbot",Au]],Ms=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Windows CE",/Windows CE|WinCE|Microsoft Pocket Internet Explorer/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]];function Nu(t){return t?js(t):typeof document>"u"&&typeof navigator<"u"&&navigator.product==="ReactNative"?new Iu:typeof navigator<"u"?js(navigator.userAgent):Pu()}function Lu(t){return t!==""&&Cu.reduce(function(e,r){var i=r[0],n=r[1];if(e)return e;var s=n.exec(t);return!!s&&[i,s]},!1)}function js(t){var e=Lu(t);if(!e)return null;var r=e[0],i=e[1];if(r==="searchbot")return new Ou;var n=i[1]&&i[1].split(".").join("_").split("_").slice(0,3);n?n.length<Us&&(n=Fs(Fs([],n,!0),Fu(Us-n.length),!0)):n=[];var s=n.join("."),c=Ru(t),h=Tu.exec(t);return h&&h[1]?new xu(r,s,c,h[1]):new Du(r,s,c)}function Ru(t){for(var e=0,r=Ms.length;e<r;e++){var i=Ms[e],n=i[0],s=i[1],c=s.exec(t);if(c)return n}return null}function Pu(){var t=typeof process<"u"&&process.version;return t?new Su(process.version.slice(1)):null}function Fu(t){for(var e=[],r=0;r<t;r++)e.push("0");return e}var Q={},$s={},ei={};Object.defineProperty(ei,"__esModule",{value:!0}),ei.delay=void 0;function Uu(t){return new Promise(e=>{setTimeout(()=>{e(!0)},t)})}ei.delay=Uu;var cr={},Wi={},hr={};Object.defineProperty(hr,"__esModule",{value:!0}),hr.ONE_THOUSAND=hr.ONE_HUNDRED=void 0,hr.ONE_HUNDRED=100,hr.ONE_THOUSAND=1e3;var Bs={};(function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.ONE_YEAR=t.FOUR_WEEKS=t.THREE_WEEKS=t.TWO_WEEKS=t.ONE_WEEK=t.THIRTY_DAYS=t.SEVEN_DAYS=t.FIVE_DAYS=t.THREE_DAYS=t.ONE_DAY=t.TWENTY_FOUR_HOURS=t.TWELVE_HOURS=t.SIX_HOURS=t.THREE_HOURS=t.ONE_HOUR=t.SIXTY_MINUTES=t.THIRTY_MINUTES=t.TEN_MINUTES=t.FIVE_MINUTES=t.ONE_MINUTE=t.SIXTY_SECONDS=t.THIRTY_SECONDS=t.TEN_SECONDS=t.FIVE_SECONDS=t.ONE_SECOND=void 0,t.ONE_SECOND=1,t.FIVE_SECONDS=5,t.TEN_SECONDS=10,t.THIRTY_SECONDS=30,t.SIXTY_SECONDS=60,t.ONE_MINUTE=t.SIXTY_SECONDS,t.FIVE_MINUTES=t.ONE_MINUTE*5,t.TEN_MINUTES=t.ONE_MINUTE*10,t.THIRTY_MINUTES=t.ONE_MINUTE*30,t.SIXTY_MINUTES=t.ONE_MINUTE*60,t.ONE_HOUR=t.SIXTY_MINUTES,t.THREE_HOURS=t.ONE_HOUR*3,t.SIX_HOURS=t.ONE_HOUR*6,t.TWELVE_HOURS=t.ONE_HOUR*12,t.TWENTY_FOUR_HOURS=t.ONE_HOUR*24,t.ONE_DAY=t.TWENTY_FOUR_HOURS,t.THREE_DAYS=t.ONE_DAY*3,t.FIVE_DAYS=t.ONE_DAY*5,t.SEVEN_DAYS=t.ONE_DAY*7,t.THIRTY_DAYS=t.ONE_DAY*30,t.ONE_WEEK=t.SEVEN_DAYS,t.TWO_WEEKS=t.ONE_WEEK*2,t.THREE_WEEKS=t.ONE_WEEK*3,t.FOUR_WEEKS=t.ONE_WEEK*4,t.ONE_YEAR=t.ONE_DAY*365})(Bs),function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(hr,t),r(Bs,t)}(Wi),Object.defineProperty(cr,"__esModule",{value:!0}),cr.fromMiliseconds=cr.toMiliseconds=void 0;const zs=Wi;function Mu(t){return t*zs.ONE_THOUSAND}cr.toMiliseconds=Mu;function ju(t){return Math.floor(t/zs.ONE_THOUSAND)}cr.fromMiliseconds=ju,function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(ei,t),r(cr,t)}($s);var Or={};Object.defineProperty(Or,"__esModule",{value:!0}),Or.Watch=void 0;class Hs{constructor(){this.timestamps=new Map}start(e){if(this.timestamps.has(e))throw new Error(`Watch already started for label: ${e}`);this.timestamps.set(e,{started:Date.now()})}stop(e){const r=this.get(e);if(typeof r.elapsed<"u")throw new Error(`Watch already stopped for label: ${e}`);const i=Date.now()-r.started;this.timestamps.set(e,{started:r.started,elapsed:i})}get(e){const r=this.timestamps.get(e);if(typeof r>"u")throw new Error(`No timestamp found for label: ${e}`);return r}elapsed(e){const r=this.get(e);return r.elapsed||Date.now()-r.started}}Or.Watch=Hs,Or.default=Hs;var Ks={},ti={};Object.defineProperty(ti,"__esModule",{value:!0}),ti.IWatch=void 0;class $u{}ti.IWatch=$u,function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(ti,t)}(Ks),function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r($s,t),r(Or,t),r(Ks,t),r(Wi,t)}(Q);var Oe={};Object.defineProperty(Oe,"__esModule",{value:!0}),Oe.getLocalStorage=Oe.getLocalStorageOrThrow=Oe.getCrypto=Oe.getCryptoOrThrow=Vs=Oe.getLocation=Oe.getLocationOrThrow=Yi=Oe.getNavigator=Oe.getNavigatorOrThrow=qs=Oe.getDocument=Oe.getDocumentOrThrow=Oe.getFromWindowOrThrow=Oe.getFromWindow=void 0;function Xt(t){let e;return typeof window<"u"&&typeof window[t]<"u"&&(e=window[t]),e}Oe.getFromWindow=Xt;function ur(t){const e=Xt(t);if(!e)throw new Error(`${t} is not defined in Window`);return e}Oe.getFromWindowOrThrow=ur;function Bu(){return ur("document")}Oe.getDocumentOrThrow=Bu;function zu(){return Xt("document")}var qs=Oe.getDocument=zu;function Hu(){return ur("navigator")}Oe.getNavigatorOrThrow=Hu;function Ku(){return Xt("navigator")}var Yi=Oe.getNavigator=Ku;function qu(){return ur("location")}Oe.getLocationOrThrow=qu;function Vu(){return Xt("location")}var Vs=Oe.getLocation=Vu;function Gu(){return ur("crypto")}Oe.getCryptoOrThrow=Gu;function Wu(){return Xt("crypto")}Oe.getCrypto=Wu;function Yu(){return ur("localStorage")}Oe.getLocalStorageOrThrow=Yu;function ku(){return Xt("localStorage")}Oe.getLocalStorage=ku;var ki={};Object.defineProperty(ki,"__esModule",{value:!0});var Gs=ki.getWindowMetadata=void 0;const Ws=Oe;function Ju(){let t,e;try{t=Ws.getDocumentOrThrow(),e=Ws.getLocationOrThrow()}catch{return null}function r(){const D=t.getElementsByTagName("link"),C=[];for(let S=0;S<D.length;S++){const w=D[S],P=w.getAttribute("rel");if(P&&P.toLowerCase().indexOf("icon")>-1){const N=w.getAttribute("href");if(N)if(N.toLowerCase().indexOf("https:")===-1&&N.toLowerCase().indexOf("http:")===-1&&N.indexOf("//")!==0){let j=e.protocol+"//"+e.host;if(N.indexOf("/")===0)j+=N;else{const E=e.pathname.split("/");E.pop(),j+=E.join("/")+"/"+N}C.push(j)}else if(N.indexOf("//")===0){const j=e.protocol+N;C.push(j)}else C.push(N)}}return C}function i(...D){const C=t.getElementsByTagName("meta");for(let S=0;S<C.length;S++){const w=C[S],P=["itemprop","property","name"].map(N=>w.getAttribute(N)).filter(N=>N?D.includes(N):!1);if(P.length&&P){const N=w.getAttribute("content");if(N)return N}}return""}function n(){let D=i("name","og:site_name","og:title","twitter:title");return D||(D=t.title),D}function s(){return i("description","og:description","twitter:description","keywords")}const c=n(),h=s(),u=e.origin,f=r();return{description:h,url:u,icons:f,name:c}}Gs=ki.getWindowMetadata=Ju;var Ir={},Xu=t=>encodeURIComponent(t).replace(/[!'()*]/g,e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`),Ys="%[a-f0-9]{2}",ks=new RegExp(Ys,"gi"),Js=new RegExp("("+Ys+")+","gi");function Ji(t,e){try{return decodeURIComponent(t.join(""))}catch{}if(t.length===1)return t;e=e||1;var r=t.slice(0,e),i=t.slice(e);return Array.prototype.concat.call([],Ji(r),Ji(i))}function Zu(t){try{return decodeURIComponent(t)}catch{for(var e=t.match(ks),r=1;r<e.length;r++)t=Ji(e,r).join(""),e=t.match(ks);return t}}function Qu(t){for(var e={"%FE%FF":"\uFFFD\uFFFD","%FF%FE":"\uFFFD\uFFFD"},r=Js.exec(t);r;){try{e[r[0]]=decodeURIComponent(r[0])}catch{var i=Zu(r[0]);i!==r[0]&&(e[r[0]]=i)}r=Js.exec(t)}e["%C2"]="\uFFFD";for(var n=Object.keys(e),s=0;s<n.length;s++){var c=n[s];t=t.replace(new RegExp(c,"g"),e[c])}return t}var ef=function(t){if(typeof t!="string")throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof t+"`");try{return t=t.replace(/\+/g," "),decodeURIComponent(t)}catch{return Qu(t)}},tf=(t,e)=>{if(!(typeof t=="string"&&typeof e=="string"))throw new TypeError("Expected the arguments to be of type `string`");if(e==="")return[t];const r=t.indexOf(e);return r===-1?[t]:[t.slice(0,r),t.slice(r+e.length)]},rf=function(t,e){for(var r={},i=Object.keys(t),n=Array.isArray(e),s=0;s<i.length;s++){var c=i[s],h=t[c];(n?e.indexOf(c)!==-1:e(c,h,t))&&(r[c]=h)}return r};(function(t){const e=Xu,r=ef,i=tf,n=rf,s=E=>E==null,c=Symbol("encodeFragmentIdentifier");function h(E){switch(E.arrayFormat){case"index":return I=>(y,m)=>{const b=y.length;return m===void 0||E.skipNull&&m===null||E.skipEmptyString&&m===""?y:m===null?[...y,[g(I,E),"[",b,"]"].join("")]:[...y,[g(I,E),"[",g(b,E),"]=",g(m,E)].join("")]};case"bracket":return I=>(y,m)=>m===void 0||E.skipNull&&m===null||E.skipEmptyString&&m===""?y:m===null?[...y,[g(I,E),"[]"].join("")]:[...y,[g(I,E),"[]=",g(m,E)].join("")];case"colon-list-separator":return I=>(y,m)=>m===void 0||E.skipNull&&m===null||E.skipEmptyString&&m===""?y:m===null?[...y,[g(I,E),":list="].join("")]:[...y,[g(I,E),":list=",g(m,E)].join("")];case"comma":case"separator":case"bracket-separator":{const I=E.arrayFormat==="bracket-separator"?"[]=":"=";return y=>(m,b)=>b===void 0||E.skipNull&&b===null||E.skipEmptyString&&b===""?m:(b=b===null?"":b,m.length===0?[[g(y,E),I,g(b,E)].join("")]:[[m,g(b,E)].join(E.arrayFormatSeparator)])}default:return I=>(y,m)=>m===void 0||E.skipNull&&m===null||E.skipEmptyString&&m===""?y:m===null?[...y,g(I,E)]:[...y,[g(I,E),"=",g(m,E)].join("")]}}function u(E){let I;switch(E.arrayFormat){case"index":return(y,m,b)=>{if(I=/\[(\d*)\]$/.exec(y),y=y.replace(/\[\d*\]$/,""),!I){b[y]=m;return}b[y]===void 0&&(b[y]={}),b[y][I[1]]=m};case"bracket":return(y,m,b)=>{if(I=/(\[\])$/.exec(y),y=y.replace(/\[\]$/,""),!I){b[y]=m;return}if(b[y]===void 0){b[y]=[m];return}b[y]=[].concat(b[y],m)};case"colon-list-separator":return(y,m,b)=>{if(I=/(:list)$/.exec(y),y=y.replace(/:list$/,""),!I){b[y]=m;return}if(b[y]===void 0){b[y]=[m];return}b[y]=[].concat(b[y],m)};case"comma":case"separator":return(y,m,b)=>{const o=typeof m=="string"&&m.includes(E.arrayFormatSeparator),d=typeof m=="string"&&!o&&D(m,E).includes(E.arrayFormatSeparator);m=d?D(m,E):m;const M=o||d?m.split(E.arrayFormatSeparator).map(K=>D(K,E)):m===null?m:D(m,E);b[y]=M};case"bracket-separator":return(y,m,b)=>{const o=/(\[\])$/.test(y);if(y=y.replace(/\[\]$/,""),!o){b[y]=m&&D(m,E);return}const d=m===null?[]:m.split(E.arrayFormatSeparator).map(M=>D(M,E));if(b[y]===void 0){b[y]=d;return}b[y]=[].concat(b[y],d)};default:return(y,m,b)=>{if(b[y]===void 0){b[y]=m;return}b[y]=[].concat(b[y],m)}}}function f(E){if(typeof E!="string"||E.length!==1)throw new TypeError("arrayFormatSeparator must be single character string")}function g(E,I){return I.encode?I.strict?e(E):encodeURIComponent(E):E}function D(E,I){return I.decode?r(E):E}function C(E){return Array.isArray(E)?E.sort():typeof E=="object"?C(Object.keys(E)).sort((I,y)=>Number(I)-Number(y)).map(I=>E[I]):E}function S(E){const I=E.indexOf("#");return I!==-1&&(E=E.slice(0,I)),E}function w(E){let I="";const y=E.indexOf("#");return y!==-1&&(I=E.slice(y)),I}function P(E){E=S(E);const I=E.indexOf("?");return I===-1?"":E.slice(I+1)}function N(E,I){return I.parseNumbers&&!Number.isNaN(Number(E))&&typeof E=="string"&&E.trim()!==""?E=Number(E):I.parseBooleans&&E!==null&&(E.toLowerCase()==="true"||E.toLowerCase()==="false")&&(E=E.toLowerCase()==="true"),E}function j(E,I){I=Object.assign({decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1},I),f(I.arrayFormatSeparator);const y=u(I),m=Object.create(null);if(typeof E!="string"||(E=E.trim().replace(/^[?#&]/,""),!E))return m;for(const b of E.split("&")){if(b==="")continue;let[o,d]=i(I.decode?b.replace(/\+/g," "):b,"=");d=d===void 0?null:["comma","separator","bracket-separator"].includes(I.arrayFormat)?d:D(d,I),y(D(o,I),d,m)}for(const b of Object.keys(m)){const o=m[b];if(typeof o=="object"&&o!==null)for(const d of Object.keys(o))o[d]=N(o[d],I);else m[b]=N(o,I)}return I.sort===!1?m:(I.sort===!0?Object.keys(m).sort():Object.keys(m).sort(I.sort)).reduce((b,o)=>{const d=m[o];return Boolean(d)&&typeof d=="object"&&!Array.isArray(d)?b[o]=C(d):b[o]=d,b},Object.create(null))}t.extract=P,t.parse=j,t.stringify=(E,I)=>{if(!E)return"";I=Object.assign({encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:","},I),f(I.arrayFormatSeparator);const y=d=>I.skipNull&&s(E[d])||I.skipEmptyString&&E[d]==="",m=h(I),b={};for(const d of Object.keys(E))y(d)||(b[d]=E[d]);const o=Object.keys(b);return I.sort!==!1&&o.sort(I.sort),o.map(d=>{const M=E[d];return M===void 0?"":M===null?g(d,I):Array.isArray(M)?M.length===0&&I.arrayFormat==="bracket-separator"?g(d,I)+"[]":M.reduce(m(d),[]).join("&"):g(d,I)+"="+g(M,I)}).filter(d=>d.length>0).join("&")},t.parseUrl=(E,I)=>{I=Object.assign({decode:!0},I);const[y,m]=i(E,"#");return Object.assign({url:y.split("?")[0]||"",query:j(P(E),I)},I&&I.parseFragmentIdentifier&&m?{fragmentIdentifier:D(m,I)}:{})},t.stringifyUrl=(E,I)=>{I=Object.assign({encode:!0,strict:!0,[c]:!0},I);const y=S(E.url).split("?")[0]||"",m=t.extract(E.url),b=t.parse(m,{sort:!1}),o=Object.assign(b,E.query);let d=t.stringify(o,I);d&&(d=`?${d}`);let M=w(E.url);return E.fragmentIdentifier&&(M=`#${I[c]?g(E.fragmentIdentifier,I):E.fragmentIdentifier}`),`${y}${d}${M}`},t.pick=(E,I,y)=>{y=Object.assign({parseFragmentIdentifier:!0,[c]:!1},y);const{url:m,query:b,fragmentIdentifier:o}=t.parseUrl(E,y);return t.stringifyUrl({url:m,query:n(b,I),fragmentIdentifier:o},y)},t.exclude=(E,I,y)=>{const m=Array.isArray(I)?b=>!I.includes(b):(b,o)=>!I(b,o);return t.pick(E,m,y)}})(Ir);const nf={waku:{publish:"waku_publish",subscribe:"waku_subscribe",subscription:"waku_subscription",unsubscribe:"waku_unsubscribe"},irn:{publish:"irn_publish",subscribe:"irn_subscribe",subscription:"irn_subscription",unsubscribe:"irn_unsubscribe"},iridium:{publish:"iridium_publish",subscribe:"iridium_subscribe",subscription:"iridium_subscription",unsubscribe:"iridium_unsubscribe"}},Xs=":";function sf(t){const{namespace:e,reference:r}=t;return[e,r].join(Xs)}function of(t){const[e,r,i]=t.split(Xs);return{namespace:e,reference:r,address:i}}function af(t,e){const r=[];return t.forEach(i=>{const n=e(i);r.includes(n)||r.push(n)}),r}function cf(t){const{namespace:e,reference:r}=of(t);return sf({namespace:e,reference:r})}function hf(t){return af(t,cf)}function Xi(t,e=[]){const r=[];return Object.keys(t).forEach(i=>{if(e.length&&!e.includes(i))return;const n=t[i];r.push(...n.accounts)}),r}function Zi(t,e=[]){const r=[];return Object.keys(t).forEach(i=>{if(e.length&&!e.includes(i))return;const n=t[i];r.push(...hf(n.accounts))}),r}function uf(t,e=[]){const r=[];return Object.keys(t).forEach(i=>{if(e.length&&!e.includes(i))return;const n=t[i];r.push(...n.chains)}),r}const Zs="base10",dt="base16",Qi="base64pad",en="utf8",Qs=0,Zt=1,ff=0,eo=1,tn=12,rn=32;function lf(){const t=Hi.generateKeyPair();return{privateKey:lt(t.secretKey,dt),publicKey:lt(t.publicKey,dt)}}function nn(){const t=Sr.randomBytes(rn);return lt(t,dt)}function df(t,e){const r=Hi.sharedKey(ft(t,dt),ft(e,dt)),i=new kc(Zr.SHA256,r).expand(rn);return lt(i,dt)}function pf(t){const e=Zr.hash(ft(t,dt));return lt(e,dt)}function ri(t){const e=Zr.hash(ft(t,en));return lt(e,dt)}function gf(t){return ft(`${t}`,Zs)}function Ar(t){return Number(lt(t,Zs))}function yf(t){const e=gf(typeof t.type<"u"?t.type:Qs);if(Ar(e)===Zt&&typeof t.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");const r=typeof t.senderPublicKey<"u"?ft(t.senderPublicKey,dt):void 0,i=typeof t.iv<"u"?ft(t.iv,dt):Sr.randomBytes(tn),n=new Li.ChaCha20Poly1305(ft(t.symKey,dt)).seal(i,ft(t.message,en));return _f({type:e,sealed:n,iv:i,senderPublicKey:r})}function vf(t){const e=new Li.ChaCha20Poly1305(ft(t.symKey,dt)),{sealed:r,iv:i}=sn(t.encoded),n=e.open(i,r);if(n===null)throw new Error("Failed to decrypt");return lt(n,en)}function _f(t){if(Ar(t.type)===Zt){if(typeof t.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");return lt(Ki([t.type,t.senderPublicKey,t.iv,t.sealed]),Qi)}return lt(Ki([t.type,t.iv,t.sealed]),Qi)}function sn(t){const e=ft(t,Qi),r=e.slice(ff,eo),i=eo;if(Ar(r)===Zt){const h=i+rn,u=h+tn,f=e.slice(i,h),g=e.slice(h,u),D=e.slice(u);return{type:r,sealed:D,iv:g,senderPublicKey:f}}const n=i+tn,s=e.slice(i,n),c=e.slice(n);return{type:r,sealed:c,iv:s}}function bf(t,e){const r=sn(t);return to({type:Ar(r.type),senderPublicKey:typeof r.senderPublicKey<"u"?lt(r.senderPublicKey,dt):void 0,receiverPublicKey:e?.receiverPublicKey})}function to(t){const e=t?.type||Qs;if(e===Zt){if(typeof t?.senderPublicKey>"u")throw new Error("missing sender public key");if(typeof t?.receiverPublicKey>"u")throw new Error("missing receiver public key")}return{type:e,senderPublicKey:t?.senderPublicKey,receiverPublicKey:t?.receiverPublicKey}}function ro(t){return t.type===Zt&&typeof t.senderPublicKey=="string"&&typeof t.receiverPublicKey=="string"}var mf=Object.defineProperty,io=Object.getOwnPropertySymbols,wf=Object.prototype.hasOwnProperty,Ef=Object.prototype.propertyIsEnumerable,no=(t,e,r)=>e in t?mf(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,so=(t,e)=>{for(var r in e||(e={}))wf.call(e,r)&&no(t,r,e[r]);if(io)for(var r of io(e))Ef.call(e,r)&&no(t,r,e[r]);return t};const Df="ReactNative",Tr={reactNative:"react-native",node:"node",browser:"browser",unknown:"unknown"},Sf="js";function oo(){return typeof process<"u"&&typeof process.versions<"u"&&typeof process.versions.node<"u"}function xf(){return!qs()&&!!Yi()&&navigator.product===Df}function Of(){return!oo()&&!!Yi()}function If(){return xf()?Tr.reactNative:oo()?Tr.node:Of()?Tr.browser:Tr.unknown}function Af(t,e){let r=Ir.parse(t);return r=so(so({},r),e),t=Ir.stringify(r),t}function Tf(){return Gs()||{name:"",description:"",url:"",icons:[""]}}function Cf(){const t=Nu();if(t===null)return"unknown";const e=t.os?t.os.replace(" ","").toLowerCase():"unknown";return t.type==="browser"?[e,t.name,t.version].join("-"):[e,t.version].join("-")}function Nf(){var t;const e=If();return e===Tr.browser?[e,((t=Vs())==null?void 0:t.host)||"unknown"].join(":"):e}function Lf(t,e,r){const i=Cf(),n=Nf();return[[t,e].join("-"),[Sf,r].join("-"),i,n].join("/")}function Rf({protocol:t,version:e,relayUrl:r,sdkVersion:i,auth:n,projectId:s}){const c=r.split("?"),h=Lf(t,e,i),u={auth:n,ua:h,projectId:s},f=Af(c[1]||"",u);return c[0]+"?"+f}function pt(t,e){return t.filter(r=>e.includes(r)).length===t.length}function ao(t){return Object.fromEntries(t.entries())}function co(t){return new Map(Object.entries(t))}function Pt(t,e){return Q.fromMiliseconds((e||Date.now())+Q.toMiliseconds(t))}function qt(t){return Q.fromMiliseconds(Date.now())>=Q.toMiliseconds(t)}function Qt(){const t=Q.toMiliseconds(Q.FIVE_MINUTES);let e,r,i;return{resolve:n=>{i&&e&&(clearTimeout(i),e(n))},reject:n=>{i&&r&&(clearTimeout(i),r(n))},done:()=>new Promise((n,s)=>{i=setTimeout(s,t),e=n,r=s})}}function ho(t,e){if(typeof e=="string"&&e.startsWith(`${t}:`))return e;if(t.toLowerCase()==="topic"){if(typeof e!="string")throw new Error('Value must be "string" for expirer target type: topic');return`topic:${e}`}else if(t.toLowerCase()==="id"){if(typeof e!="number")throw new Error('Value must be "number" for expirer target type: id');return`id:${e}`}throw new Error(`Unknown expirer target type: ${t}`)}function Pf(t){return ho("topic",t)}function Ff(t){return ho("id",t)}function uo(t){const[e,r]=t.split(":"),i={id:void 0,topic:void 0};if(e==="topic"&&typeof r=="string")i.topic=r;else if(e==="id"&&Number.isInteger(Number(r)))i.id=Number(r);else throw new Error(`Invalid target, expected id:number or topic:string, got ${e}:${r}`);return i}function Pe(t,e){return`${t}${e?`:${e}`:""}`}const Uf="irn";function on(t){return t?.relay||{protocol:Uf}}function an(t){const e=nf[t];if(typeof e>"u")throw new Error(`Relay Protocol not supported: ${t}`);return e}var Mf=Object.defineProperty,fo=Object.getOwnPropertySymbols,jf=Object.prototype.hasOwnProperty,$f=Object.prototype.propertyIsEnumerable,lo=(t,e,r)=>e in t?Mf(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Bf=(t,e)=>{for(var r in e||(e={}))jf.call(e,r)&&lo(t,r,e[r]);if(fo)for(var r of fo(e))$f.call(e,r)&&lo(t,r,e[r]);return t};function zf(t,e="-"){const r={},i="relay"+e;return Object.keys(t).forEach(n=>{if(n.startsWith(i)){const s=n.replace(i,""),c=t[n];r[s]=c}}),r}function Hf(t){const e=t.indexOf(":"),r=t.indexOf("?")!==-1?t.indexOf("?"):void 0,i=t.substring(0,e),n=t.substring(e+1,r).split("@"),s=typeof r<"u"?t.substring(r):"",c=Ir.parse(s);return{protocol:i,topic:n[0],version:parseInt(n[1],10),symKey:c.symKey,relay:zf(c)}}function Kf(t,e="-"){const r="relay",i={};return Object.keys(t).forEach(n=>{const s=r+e+n;t[n]&&(i[s]=t[n])}),i}function qf(t){return`${t.protocol}:${t.topic}@${t.version}?`+Ir.stringify(Bf({symKey:t.symKey},Kf(t.relay)))}function It(t){const e=[];return t.forEach(r=>{const[i,n]=r.split(":");e.push(`${i}:${n}`)}),e}function Vf(t){const e=[];return Object.values(t).forEach(r=>{e.push(...It(r.accounts)),r.extension&&r.extension.forEach(i=>{e.push(...It(i.accounts))})}),e}function Gf(t,e){const r=[];return Object.values(t).forEach(i=>{It(i.accounts).includes(e)&&r.push(...i.methods),i.extension&&i.extension.forEach(n=>{It(n.accounts).includes(e)&&r.push(...n.methods)})}),r}function Wf(t,e){const r=[];return Object.values(t).forEach(i=>{It(i.accounts).includes(e)&&r.push(...i.events),i.extension&&i.extension.forEach(n=>{It(n.accounts).includes(e)&&r.push(...n.events)})}),r}const Yf={INVALID_METHOD:{message:"Invalid method.",code:1001},INVALID_EVENT:{message:"Invalid event.",code:1002},INVALID_UPDATE_REQUEST:{message:"Invalid update request.",code:1003},INVALID_EXTEND_REQUEST:{message:"Invalid extend request.",code:1004},INVALID_SESSION_SETTLE_REQUEST:{message:"Invalid session settle request.",code:1005},UNAUTHORIZED_METHOD:{message:"Unauthorized method.",code:3001},UNAUTHORIZED_EVENT:{message:"Unauthorized event.",code:3002},UNAUTHORIZED_UPDATE_REQUEST:{message:"Unauthorized update request.",code:3003},UNAUTHORIZED_EXTEND_REQUEST:{message:"Unauthorized extend request.",code:3004},USER_REJECTED:{message:"User rejected.",code:5e3},USER_REJECTED_CHAINS:{message:"User rejected chains.",code:5001},USER_REJECTED_METHODS:{message:"User rejected methods.",code:5002},USER_REJECTED_EVENTS:{message:"User rejected events.",code:5003},UNSUPPORTED_CHAINS:{message:"Unsupported chains.",code:5100},UNSUPPORTED_METHODS:{message:"Unsupported methods.",code:5101},UNSUPPORTED_EVENTS:{message:"Unsupported events.",code:5102},UNSUPPORTED_ACCOUNTS:{message:"Unsupported accounts.",code:5103},UNSUPPORTED_NAMESPACE_KEY:{message:"Unsupported namespace key.",code:5104},USER_DISCONNECTED:{message:"User disconnected.",code:6e3},SESSION_SETTLEMENT_FAILED:{message:"Session settlement failed.",code:7e3},WC_METHOD_UNSUPPORTED:{message:"Unsupported wc_ method.",code:10001}},kf={NOT_INITIALIZED:{message:"Not initialized.",code:1},NO_MATCHING_KEY:{message:"No matching key.",code:2},RESTORE_WILL_OVERRIDE:{message:"Restore will override.",code:3},RESUBSCRIBED:{message:"Resubscribed.",code:4},MISSING_OR_INVALID:{message:"Missing or invalid.",code:5},EXPIRED:{message:"Expired.",code:6},UNKNOWN_TYPE:{message:"Unknown type.",code:7},MISMATCHED_TOPIC:{message:"Mismatched topic.",code:8},NON_CONFORMING_NAMESPACES:{message:"Non conforming namespaces.",code:9}};function V(t,e){const{message:r,code:i}=kf[t];return{message:e?`${r} ${e}`:r,code:i}}function ze(t,e){const{message:r,code:i}=Yf[t];return{message:e?`${r} ${e}`:r,code:i}}function Cr(t,e){return Array.isArray(t)?typeof e<"u"&&t.length?t.every(e):!0:!1}function po(t){return Object.getPrototypeOf(t)===Object.prototype&&Object.keys(t).length}function _t(t){return typeof t>"u"}function it(t,e){return e&&_t(t)?!0:typeof t=="string"&&Boolean(t.trim().length)}function go(t,e){return e&&_t(t)?!0:typeof t=="number"&&!isNaN(t)}function Jf(t,e){const{requiredNamespaces:r}=e,i=Object.keys(t.namespaces),n=Object.keys(r);let s=!0;return pt(n,i)?(i.forEach(c=>{const{accounts:h,methods:u,events:f,extension:g}=t.namespaces[c],D=It(h),C=r[c];(!pt(C.chains,D)||!pt(C.methods,u)||!pt(C.events,f))&&(s=!1),s&&g&&g.forEach(S=>{var w;const{accounts:P,methods:N,events:j}=S,E=It(P);(w=C.extension)!=null&&w.find(I=>pt(I.chains,E)&&pt(I.methods,N)&&pt(I.events,j))||(s=!1)})}),s):!1}function cn(t){return it(t,!1)&&t.includes(":")?t.split(":").length===2:!1}function Xf(t){if(it(t,!1)&&t.includes(":")){const e=t.split(":");if(e.length===3){const r=e[0]+":"+e[1];return!!e[2]&&cn(r)}}return!1}function Zf(t){if(it(t,!1))try{return typeof new URL(t)<"u"}catch{return!1}return!1}function Qf(t){var e;return(e=t?.proposer)==null?void 0:e.publicKey}function el(t){return t?.topic}function tl(t,e){let r=null;return it(t?.publicKey,!1)||(r=V("MISSING_OR_INVALID",`${e} controller public key should be a string`)),r}function hn(t,e){let r=null;return _t(t?.extension)||(!Cr(t.extension)||!t.extension.length)&&(r=V("MISSING_OR_INVALID",`${e} extension should be an array of namespaces, or omitted`)),r}function yo(t){let e=!0;return Cr(t)?t.length&&(e=t.every(r=>it(r,!1))):e=!1,e}function vo(t,e,r){let i=null;return Cr(e)?e.forEach(n=>{i||(!cn(n)||!n.includes(t))&&(i=ze("UNSUPPORTED_CHAINS",`${r}, chain ${n} should be a string and conform to "namespace:chainId" format`))}):i=ze("UNSUPPORTED_CHAINS",`${r}, chains ${e} should be an array of strings conforming to "namespace:chainId" format`),i}function rl(t,e){let r=null;return Object.entries(t).forEach(([i,n])=>{if(r)return;const s=vo(i,n?.chains,`${e} requiredNamespace`),c=hn(n,e);s?r=s:c?r=c:n.extension&&n.extension.forEach(h=>{if(r)return;const u=vo(i,h.chains,`${e} extension`);u&&(r=u)})}),r}function _o(t,e){let r=null;return Cr(t)?t.forEach(i=>{r||Xf(i)||(r=ze("UNSUPPORTED_ACCOUNTS",`${e}, account ${i} should be a string and conform to "namespace:chainId:address" format`))}):r=ze("UNSUPPORTED_ACCOUNTS",`${e}, accounts should be an array of strings conforming to "namespace:chainId:address" format`),r}function il(t,e){let r=null;return Object.values(t).forEach(i=>{if(r)return;const n=_o(i?.accounts,`${e} namespace`),s=hn(i,e);n?r=n:s?r=s:i.extension&&i.extension.forEach(c=>{if(r)return;const h=_o(c.accounts,`${e} extension`);h&&(r=h)})}),r}function bo(t,e){let r=null;return yo(t?.methods)?yo(t?.events)||(r=ze("UNSUPPORTED_EVENTS",`${e}, events should be an array of strings or empty array for no events`)):r=ze("UNSUPPORTED_METHODS",`${e}, methods should be an array of strings or empty array for no methods`),r}function mo(t,e){let r=null;return Object.values(t).forEach(i=>{if(r)return;const n=bo(i,`${e}, namespace`),s=hn(i,e);n?r=n:s?r=s:i.extension&&i.extension.forEach(c=>{if(r)return;const h=bo(c,`${e}, extension`);h&&(r=h)})}),r}function nl(t,e){let r=null;if(t&&po(t)){const i=mo(t,e);i&&(r=i);const n=rl(t,e);n&&(r=n)}else r=V("MISSING_OR_INVALID",`${e}, requiredNamespaces should be an object with data`);return r}function un(t,e){let r=null;if(t&&po(t)){const i=mo(t,e);i&&(r=i);const n=il(t,e);n&&(r=n)}else r=V("MISSING_OR_INVALID",`${e}, namespaces should be an object with data`);return r}function wo(t){return it(t.protocol,!0)}function sl(t,e){let r=!1;return e&&!t?r=!0:t&&Cr(t)&&t.length&&t.forEach(i=>{r=wo(i)}),r}function ol(t){return typeof t=="number"}function gt(t){return typeof t<"u"&&typeof t!==null}function al(t){return!(!t||typeof t!="object"||!t.code||!go(t.code,!1)||!t.message||!it(t.message,!1))}function cl(t){return!(_t(t)||!it(t.method,!1))}function hl(t){return!(_t(t)||_t(t.result)&&_t(t.error)||!go(t.id,!1)||!it(t.jsonrpc,!1))}function ul(t){return!(_t(t)||!it(t.name,!1))}function Eo(t,e){return!(!cn(e)||!Vf(t).includes(e))}function fl(t,e,r){return it(r,!1)?Gf(t,e).includes(r):!1}function ll(t,e,r){return it(r,!1)?Wf(t,e).includes(r):!1}function Do(t,e,r){let i=null;const n=Object.keys(t),s=Object.keys(e);return pt(n,s)?n.forEach(c=>{var h;if(i)return;const u=t[c].chains,f=It(e[c].accounts);pt(u,f)?pt(t[c].methods,e[c].methods)?pt(t[c].events,e[c].events)?t[c].extension&&!e[c].extension?i=V("NON_CONFORMING_NAMESPACES",`${r} namespaces extension doesn't satisfy requiredNamespaces extension for ${c}`):t[c].extension&&e[c].extension&&((h=t[c].extension)==null||h.forEach(({methods:g,events:D,chains:C})=>{var S;i||(S=e[c].extension)!=null&&S.find(w=>{const P=It(w.accounts);return pt(C,P)&&pt(D,w.events)&&pt(g,w.methods)})||(i=V("NON_CONFORMING_NAMESPACES",`${r} namespaces extension doesn't satisfy requiredNamespaces extension for ${c}`))})):i=V("NON_CONFORMING_NAMESPACES",`${r} namespaces events don't satisfy requiredNamespaces events for ${c}`):i=V("NON_CONFORMING_NAMESPACES",`${r} namespaces methods don't satisfy requiredNamespaces methods for ${c}`):i=V("NON_CONFORMING_NAMESPACES",`${r} namespaces accounts don't satisfy requiredNamespaces chains for ${c}`)}):i=V("NON_CONFORMING_NAMESPACES",`${r} namespaces keys don't satisfy requiredNamespaces`),i}function dl(t){try{return JSON.stringify(t)}catch{return'"[Circular]"'}}var pl=gl;function gl(t,e,r){var i=r&&r.stringify||dl,n=1;if(typeof t=="object"&&t!==null){var s=e.length+n;if(s===1)return t;var c=new Array(s);c[0]=i(t);for(var h=1;h<s;h++)c[h]=i(e[h]);return c.join(" ")}if(typeof t!="string")return t;var u=e.length;if(u===0)return t;for(var f="",g=1-n,D=-1,C=t&&t.length||0,S=0;S<C;){if(t.charCodeAt(S)===37&&S+1<C){switch(D=D>-1?D:0,t.charCodeAt(S+1)){case 100:case 102:if(g>=u||e[g]==null)break;D<S&&(f+=t.slice(D,S)),f+=Number(e[g]),D=S+2,S++;break;case 105:if(g>=u||e[g]==null)break;D<S&&(f+=t.slice(D,S)),f+=Math.floor(Number(e[g])),D=S+2,S++;break;case 79:case 111:case 106:if(g>=u||e[g]===void 0)break;D<S&&(f+=t.slice(D,S));var w=typeof e[g];if(w==="string"){f+="'"+e[g]+"'",D=S+2,S++;break}if(w==="function"){f+=e[g].name||"<anonymous>",D=S+2,S++;break}f+=i(e[g]),D=S+2,S++;break;case 115:if(g>=u)break;D<S&&(f+=t.slice(D,S)),f+=String(e[g]),D=S+2,S++;break;case 37:D<S&&(f+=t.slice(D,S)),f+="%",D=S+2,S++,g--;break}++g}++S}return D===-1?t:(D<C&&(f+=t.slice(D)),f)}var So=pl,fn=At,Nr=Sl().console||{},yl={mapHttpRequest:ni,mapHttpResponse:ni,wrapRequestSerializer:dn,wrapResponseSerializer:dn,wrapErrorSerializer:dn,req:ni,res:ni,err:ml};function At(t){t=t||{},t.browser=t.browser||{};var e=t.browser.transmit;if(e&&typeof e.send!="function")throw Error("pino: transmit option must have a send function");var r=t.browser.write||Nr;t.browser.write&&(t.browser.asObject=!0);var i=t.serializers||{},n=Array.isArray(t.browser.serialize)?t.browser.serialize.filter(function(w){return w!=="!stdSerializers.err"}):t.browser.serialize===!0?Object.keys(i):!1,s=t.browser.serialize;Array.isArray(t.browser.serialize)&&t.browser.serialize.indexOf("!stdSerializers.err")>-1&&(s=!1);var c=["error","fatal","warn","info","debug","trace"];typeof r=="function"&&(r.error=r.fatal=r.warn=r.info=r.debug=r.trace=r),t.enabled===!1&&(t.level="silent");var h=t.level||"info",u=Object.create(r);u.log||(u.log=Lr),Object.defineProperty(u,"levelVal",{get:g}),Object.defineProperty(u,"level",{get:D,set:C});var f={transmit:e,serialize:n,asObject:t.browser.asObject,levels:c,timestamp:wl(t)};u.levels=At.levels,u.level=h,u.setMaxListeners=u.getMaxListeners=u.emit=u.addListener=u.on=u.prependListener=u.once=u.prependOnceListener=u.removeListener=u.removeAllListeners=u.listeners=u.listenerCount=u.eventNames=u.write=u.flush=Lr,u.serializers=i,u._serialize=n,u._stdErrSerialize=s,u.child=S,e&&(u._logEvent=ln());function g(){return this.level==="silent"?1/0:this.levels.values[this.level]}function D(){return this._level}function C(w){if(w!=="silent"&&!this.levels.values[w])throw Error("unknown level "+w);this._level=w,fr(f,u,"error","log"),fr(f,u,"fatal","error"),fr(f,u,"warn","error"),fr(f,u,"info","log"),fr(f,u,"debug","log"),fr(f,u,"trace","log")}function S(w){if(!w)throw new Error("missing bindings for child Pino");var P=w.serializers;if(n&&P){var N=Object.assign({},i,P),j=t.browser.serialize===!0?Object.keys(N):n;delete w.serializers,ii([w],j,N,this._stdErrSerialize)}function E(I){this._childLevel=(I._childLevel|0)+1,this.error=lr(I,w,"error"),this.fatal=lr(I,w,"fatal"),this.warn=lr(I,w,"warn"),this.info=lr(I,w,"info"),this.debug=lr(I,w,"debug"),this.trace=lr(I,w,"trace"),N&&(this.serializers=N,this._serialize=j),e&&(this._logEvent=ln([].concat(I._logEvent.bindings,w)))}return E.prototype=this,new E(this)}return u}At.levels={values:{fatal:60,error:50,warn:40,info:30,debug:20,trace:10},labels:{10:"trace",20:"debug",30:"info",40:"warn",50:"error",60:"fatal"}},At.stdSerializers=yl,At.stdTimeFunctions=Object.assign({},{nullTime:xo,epochTime:Oo,unixTime:El,isoTime:Dl});function fr(t,e,r,i){var n=Object.getPrototypeOf(e);e[r]=e.levelVal>e.levels.values[r]?Lr:n[r]?n[r]:Nr[r]||Nr[i]||Lr,vl(t,e,r)}function vl(t,e,r){!t.transmit&&e[r]===Lr||(e[r]=function(i){return function(){for(var s=t.timestamp(),c=new Array(arguments.length),h=Object.getPrototypeOf&&Object.getPrototypeOf(this)===Nr?Nr:this,u=0;u<c.length;u++)c[u]=arguments[u];if(t.serialize&&!t.asObject&&ii(c,this._serialize,this.serializers,this._stdErrSerialize),t.asObject?i.call(h,_l(this,r,c,s)):i.apply(h,c),t.transmit){var f=t.transmit.level||e.level,g=At.levels.values[f],D=At.levels.values[r];if(D<g)return;bl(this,{ts:s,methodLevel:r,methodValue:D,transmitLevel:f,transmitValue:At.levels.values[t.transmit.level||e.level],send:t.transmit.send,val:e.levelVal},c)}}}(e[r]))}function _l(t,e,r,i){t._serialize&&ii(r,t._serialize,t.serializers,t._stdErrSerialize);var n=r.slice(),s=n[0],c={};i&&(c.time=i),c.level=At.levels.values[e];var h=(t._childLevel|0)+1;if(h<1&&(h=1),s!==null&&typeof s=="object"){for(;h--&&typeof n[0]=="object";)Object.assign(c,n.shift());s=n.length?So(n.shift(),n):void 0}else typeof s=="string"&&(s=So(n.shift(),n));return s!==void 0&&(c.msg=s),c}function ii(t,e,r,i){for(var n in t)if(i&&t[n]instanceof Error)t[n]=At.stdSerializers.err(t[n]);else if(typeof t[n]=="object"&&!Array.isArray(t[n]))for(var s in t[n])e&&e.indexOf(s)>-1&&s in r&&(t[n][s]=r[s](t[n][s]))}function lr(t,e,r){return function(){var i=new Array(1+arguments.length);i[0]=e;for(var n=1;n<i.length;n++)i[n]=arguments[n-1];return t[r].apply(this,i)}}function bl(t,e,r){var i=e.send,n=e.ts,s=e.methodLevel,c=e.methodValue,h=e.val,u=t._logEvent.bindings;ii(r,t._serialize||Object.keys(t.serializers),t.serializers,t._stdErrSerialize===void 0?!0:t._stdErrSerialize),t._logEvent.ts=n,t._logEvent.messages=r.filter(function(f){return u.indexOf(f)===-1}),t._logEvent.level.label=s,t._logEvent.level.value=c,i(s,t._logEvent,h),t._logEvent=ln(u)}function ln(t){return{ts:0,messages:[],bindings:t||[],level:{label:"",value:0}}}function ml(t){var e={type:t.constructor.name,msg:t.message,stack:t.stack};for(var r in t)e[r]===void 0&&(e[r]=t[r]);return e}function wl(t){return typeof t.timestamp=="function"?t.timestamp:t.timestamp===!1?xo:Oo}function ni(){return{}}function dn(t){return t}function Lr(){}function xo(){return!1}function Oo(){return Date.now()}function El(){return Math.round(Date.now()/1e3)}function Dl(){return new Date(Date.now()).toISOString()}function Sl(){function t(e){return typeof e<"u"&&e}try{return typeof globalThis<"u"||Object.defineProperty(Object.prototype,"globalThis",{get:function(){return delete Object.prototype.globalThis,this.globalThis=this},configurable:!0}),globalThis}catch{return t(self)||t(window)||t(this)||{}}}var si={},pn=function(t,e){return pn=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,i){r.__proto__=i}||function(r,i){for(var n in i)Object.prototype.hasOwnProperty.call(i,n)&&(r[n]=i[n])},pn(t,e)};function xl(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");pn(t,e);function r(){this.constructor=t}t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}var gn=function(){return gn=Object.assign||function(e){for(var r,i=1,n=arguments.length;i<n;i++){r=arguments[i];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(e[s]=r[s])}return e},gn.apply(this,arguments)};function Ol(t,e){var r={};for(var i in t)Object.prototype.hasOwnProperty.call(t,i)&&e.indexOf(i)<0&&(r[i]=t[i]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var n=0,i=Object.getOwnPropertySymbols(t);n<i.length;n++)e.indexOf(i[n])<0&&Object.prototype.propertyIsEnumerable.call(t,i[n])&&(r[i[n]]=t[i[n]]);return r}function Il(t,e,r,i){var n=arguments.length,s=n<3?e:i===null?i=Object.getOwnPropertyDescriptor(e,r):i,c;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")s=Reflect.decorate(t,e,r,i);else for(var h=t.length-1;h>=0;h--)(c=t[h])&&(s=(n<3?c(s):n>3?c(e,r,s):c(e,r))||s);return n>3&&s&&Object.defineProperty(e,r,s),s}function Al(t,e){return function(r,i){e(r,i,t)}}function Tl(t,e){if(typeof Reflect=="object"&&typeof Reflect.metadata=="function")return Reflect.metadata(t,e)}function Cl(t,e,r,i){function n(s){return s instanceof r?s:new r(function(c){c(s)})}return new(r||(r=Promise))(function(s,c){function h(g){try{f(i.next(g))}catch(D){c(D)}}function u(g){try{f(i.throw(g))}catch(D){c(D)}}function f(g){g.done?s(g.value):n(g.value).then(h,u)}f((i=i.apply(t,e||[])).next())})}function Nl(t,e){var r={label:0,sent:function(){if(s[0]&1)throw s[1];return s[1]},trys:[],ops:[]},i,n,s,c;return c={next:h(0),throw:h(1),return:h(2)},typeof Symbol=="function"&&(c[Symbol.iterator]=function(){return this}),c;function h(f){return function(g){return u([f,g])}}function u(f){if(i)throw new TypeError("Generator is already executing.");for(;r;)try{if(i=1,n&&(s=f[0]&2?n.return:f[0]?n.throw||((s=n.return)&&s.call(n),0):n.next)&&!(s=s.call(n,f[1])).done)return s;switch(n=0,s&&(f=[f[0]&2,s.value]),f[0]){case 0:case 1:s=f;break;case 4:return r.label++,{value:f[1],done:!1};case 5:r.label++,n=f[1],f=[0];continue;case 7:f=r.ops.pop(),r.trys.pop();continue;default:if(s=r.trys,!(s=s.length>0&&s[s.length-1])&&(f[0]===6||f[0]===2)){r=0;continue}if(f[0]===3&&(!s||f[1]>s[0]&&f[1]<s[3])){r.label=f[1];break}if(f[0]===6&&r.label<s[1]){r.label=s[1],s=f;break}if(s&&r.label<s[2]){r.label=s[2],r.ops.push(f);break}s[2]&&r.ops.pop(),r.trys.pop();continue}f=e.call(t,r)}catch(g){f=[6,g],n=0}finally{i=s=0}if(f[0]&5)throw f[1];return{value:f[0]?f[1]:void 0,done:!0}}}var yn=Object.create?function(t,e,r,i){i===void 0&&(i=r);var n=Object.getOwnPropertyDescriptor(e,r);(!n||("get"in n?!e.__esModule:n.writable||n.configurable))&&(n={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,i,n)}:function(t,e,r,i){i===void 0&&(i=r),t[i]=e[r]};function Ll(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&yn(e,t,r)}function vn(t){var e=typeof Symbol=="function"&&Symbol.iterator,r=e&&t[e],i=0;if(r)return r.call(t);if(t&&typeof t.length=="number")return{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function Io(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var i=r.call(t),n,s=[],c;try{for(;(e===void 0||e-- >0)&&!(n=i.next()).done;)s.push(n.value)}catch(h){c={error:h}}finally{try{n&&!n.done&&(r=i.return)&&r.call(i)}finally{if(c)throw c.error}}return s}function Rl(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(Io(arguments[e]));return t}function Pl(){for(var t=0,e=0,r=arguments.length;e<r;e++)t+=arguments[e].length;for(var i=Array(t),n=0,e=0;e<r;e++)for(var s=arguments[e],c=0,h=s.length;c<h;c++,n++)i[n]=s[c];return i}function Fl(t,e,r){if(r||arguments.length===2)for(var i=0,n=e.length,s;i<n;i++)(s||!(i in e))&&(s||(s=Array.prototype.slice.call(e,0,i)),s[i]=e[i]);return t.concat(s||Array.prototype.slice.call(e))}function Rr(t){return this instanceof Rr?(this.v=t,this):new Rr(t)}function Ul(t,e,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var i=r.apply(t,e||[]),n,s=[];return n={},c("next"),c("throw"),c("return"),n[Symbol.asyncIterator]=function(){return this},n;function c(C){i[C]&&(n[C]=function(S){return new Promise(function(w,P){s.push([C,S,w,P])>1||h(C,S)})})}function h(C,S){try{u(i[C](S))}catch(w){D(s[0][3],w)}}function u(C){C.value instanceof Rr?Promise.resolve(C.value.v).then(f,g):D(s[0][2],C)}function f(C){h("next",C)}function g(C){h("throw",C)}function D(C,S){C(S),s.shift(),s.length&&h(s[0][0],s[0][1])}}function Ml(t){var e,r;return e={},i("next"),i("throw",function(n){throw n}),i("return"),e[Symbol.iterator]=function(){return this},e;function i(n,s){e[n]=t[n]?function(c){return(r=!r)?{value:Rr(t[n](c)),done:n==="return"}:s?s(c):c}:s}}function jl(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof vn=="function"?vn(t):t[Symbol.iterator](),r={},i("next"),i("throw"),i("return"),r[Symbol.asyncIterator]=function(){return this},r);function i(s){r[s]=t[s]&&function(c){return new Promise(function(h,u){c=t[s](c),n(h,u,c.done,c.value)})}}function n(s,c,h,u){Promise.resolve(u).then(function(f){s({value:f,done:h})},c)}}function $l(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}var Bl=Object.create?function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}:function(t,e){t.default=e};function zl(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&yn(e,t,r);return Bl(e,t),e}function Hl(t){return t&&t.__esModule?t:{default:t}}function Kl(t,e,r,i){if(r==="a"&&!i)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!i:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?i:r==="a"?i.call(t):i?i.value:e.get(t)}function ql(t,e,r,i,n){if(i==="m")throw new TypeError("Private method is not writable");if(i==="a"&&!n)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return i==="a"?n.call(t,r):n?n.value=r:e.set(t,r),r}function Vl(t,e){if(e===null||typeof e!="object"&&typeof e!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof t=="function"?e===t:t.has(e)}var Gl=Object.freeze({__proto__:null,__extends:xl,get __assign(){return gn},__rest:Ol,__decorate:Il,__param:Al,__metadata:Tl,__awaiter:Cl,__generator:Nl,__createBinding:yn,__exportStar:Ll,__values:vn,__read:Io,__spread:Rl,__spreadArrays:Pl,__spreadArray:Fl,__await:Rr,__asyncGenerator:Ul,__asyncDelegator:Ml,__asyncValues:jl,__makeTemplateObject:$l,__importStar:zl,__importDefault:Hl,__classPrivateFieldGet:Kl,__classPrivateFieldSet:ql,__classPrivateFieldIn:Vl}),_n=Si(Gl),oi={exports:{}},Ao;function Wl(){return Ao||(Ao=1,function(){var t;function e(){}t=e,t.prototype.getItem=function(r){return this.hasOwnProperty(r)?String(this[r]):null},t.prototype.setItem=function(r,i){this[r]=String(i)},t.prototype.removeItem=function(r){delete this[r]},t.prototype.clear=function(){var r=this;Object.keys(r).forEach(function(i){r[i]=void 0,delete r[i]})},t.prototype.key=function(r){return r=r||0,Object.keys(this)[r]},t.prototype.__defineGetter__("length",function(){return Object.keys(this).length}),Z.localStorage?oi.exports=localStorage:oi.exports=new e}()),oi.exports}var Pr={},To;function Co(){if(To)return Pr;To=1,Object.defineProperty(Pr,"__esModule",{value:!0});function t(r){if(typeof r!="string")throw new Error(`Cannot safe json parse value of type ${typeof r}`);try{return JSON.parse(r)}catch{return r}}Pr.safeJsonParse=t;function e(r){return typeof r=="string"?r:JSON.stringify(r,(i,n)=>typeof n>"u"?null:n)}return Pr.safeJsonStringify=e,Pr}var bn={},Fr={},No;function Yl(){if(No)return Fr;No=1,Object.defineProperty(Fr,"__esModule",{value:!0}),Fr.IKeyValueStorage=void 0;class t{}return Fr.IKeyValueStorage=t,Fr}var Ur={},Lo;function kl(){if(Lo)return Ur;Lo=1,Object.defineProperty(Ur,"__esModule",{value:!0}),Ur.parseEntry=void 0;const t=Co();function e(r){var i;return[r[0],t.safeJsonParse((i=r[1])!==null&&i!==void 0?i:"")]}return Ur.parseEntry=e,Ur}var Ro;function Jl(){return Ro||(Ro=1,function(t){Object.defineProperty(t,"__esModule",{value:!0});const e=_n;e.__exportStar(Yl(),t),e.__exportStar(kl(),t)}(bn)),bn}Object.defineProperty(si,"__esModule",{value:!0}),si.KeyValueStorage=void 0;const dr=_n,Xl=dr.__importDefault(Wl()),Po=Co(),Zl=Jl();class Fo{constructor(){this.localStorage=Xl.default}getKeys(){return dr.__awaiter(this,void 0,void 0,function*(){return Object.keys(this.localStorage)})}getEntries(){return dr.__awaiter(this,void 0,void 0,function*(){return Object.entries(this.localStorage).map(Zl.parseEntry)})}getItem(e){return dr.__awaiter(this,void 0,void 0,function*(){const r=this.localStorage.getItem(e);if(r!==null)return Po.safeJsonParse(r)})}setItem(e,r){return dr.__awaiter(this,void 0,void 0,function*(){this.localStorage.setItem(e,Po.safeJsonStringify(r))})}removeItem(e){return dr.__awaiter(this,void 0,void 0,function*(){this.localStorage.removeItem(e)})}}si.KeyValueStorage=Fo;var Ql=si.default=Fo,Mr={},ai={},mn={},ci={};class er{}var ed=Object.freeze({__proto__:null,IEvents:er}),td=Si(ed);Object.defineProperty(ci,"__esModule",{value:!0}),ci.IHeartBeat=void 0;const rd=td;class id extends rd.IEvents{constructor(e){super()}}ci.IHeartBeat=id,function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(ci,t)}(mn);var wn={},pr={};Object.defineProperty(pr,"__esModule",{value:!0}),pr.HEARTBEAT_EVENTS=pr.HEARTBEAT_INTERVAL=void 0;const nd=Q;pr.HEARTBEAT_INTERVAL=nd.FIVE_SECONDS,pr.HEARTBEAT_EVENTS={pulse:"heartbeat_pulse"},function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(pr,t)}(wn);var En=Z&&Z.__awaiter||function(t,e,r,i){function n(s){return s instanceof r?s:new r(function(c){c(s)})}return new(r||(r=Promise))(function(s,c){function h(g){try{f(i.next(g))}catch(D){c(D)}}function u(g){try{f(i.throw(g))}catch(D){c(D)}}function f(g){g.done?s(g.value):n(g.value).then(h,u)}f((i=i.apply(t,e||[])).next())})};Object.defineProperty(ai,"__esModule",{value:!0}),ai.HeartBeat=void 0;const sd=_r,od=Q,ad=mn,Dn=wn;class Sn extends ad.IHeartBeat{constructor(e){super(e),this.events=new sd.EventEmitter,this.interval=Dn.HEARTBEAT_INTERVAL,this.interval=e?.interval||Dn.HEARTBEAT_INTERVAL}static init(e){return En(this,void 0,void 0,function*(){const r=new Sn(e);return yield r.init(),r})}init(){return En(this,void 0,void 0,function*(){yield this.initialize()})}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}off(e,r){this.events.off(e,r)}removeListener(e,r){this.events.removeListener(e,r)}initialize(){return En(this,void 0,void 0,function*(){setInterval(()=>this.pulse(),od.toMiliseconds(this.interval))})}pulse(){this.events.emit(Dn.HEARTBEAT_EVENTS.pulse)}}ai.HeartBeat=Sn,function(t){var e=Z&&Z.__createBinding||(Object.create?function(i,n,s,c){c===void 0&&(c=s),Object.defineProperty(i,c,{enumerable:!0,get:function(){return n[s]}})}:function(i,n,s,c){c===void 0&&(c=s),i[c]=n[s]}),r=Z&&Z.__exportStar||function(i,n){for(var s in i)s!=="default"&&!n.hasOwnProperty(s)&&e(n,i,s)};Object.defineProperty(t,"__esModule",{value:!0}),r(ai,t),r(mn,t),r(wn,t)}(Mr);var xe={},tr={},Uo;function Mo(){return Uo||(Uo=1,Object.defineProperty(tr,"__esModule",{value:!0}),tr.PINO_CUSTOM_CONTEXT_KEY=tr.PINO_LOGGER_DEFAULTS=void 0,tr.PINO_LOGGER_DEFAULTS={level:"info"},tr.PINO_CUSTOM_CONTEXT_KEY="custom_context"),tr}var ht={},jo;function cd(){if(jo)return ht;jo=1,Object.defineProperty(ht,"__esModule",{value:!0}),ht.generateChildLogger=ht.formatChildLoggerContext=ht.getLoggerContext=ht.setBrowserLoggerContext=ht.getBrowserLoggerContext=ht.getDefaultLoggerOptions=void 0;const t=Mo();function e(h){return Object.assign(Object.assign({},h),{level:h?.level||t.PINO_LOGGER_DEFAULTS.level})}ht.getDefaultLoggerOptions=e;function r(h,u=t.PINO_CUSTOM_CONTEXT_KEY){return h[u]||""}ht.getBrowserLoggerContext=r;function i(h,u,f=t.PINO_CUSTOM_CONTEXT_KEY){return h[f]=u,h}ht.setBrowserLoggerContext=i;function n(h,u=t.PINO_CUSTOM_CONTEXT_KEY){let f="";return typeof h.bindings>"u"?f=r(h,u):f=h.bindings().context||"",f}ht.getLoggerContext=n;function s(h,u,f=t.PINO_CUSTOM_CONTEXT_KEY){const g=n(h,f);return g.trim()?`${g}/${u}`:u}ht.formatChildLoggerContext=s;function c(h,u,f=t.PINO_CUSTOM_CONTEXT_KEY){const g=s(h,u,f),D=h.child({context:g});return i(D,g,f)}return ht.generateChildLogger=c,ht}(function(t){Object.defineProperty(t,"__esModule",{value:!0});const e=_n;e.__exportStar(Mo(),t),e.__exportStar(cd(),t)})(xe);class hd extends er{constructor(e){super(),this.opts=e,this.protocol="wc",this.version=2}}class ud extends er{constructor(e,r){super(),this.core=e,this.logger=r,this.records=new Map}}class fd{constructor(e,r){this.logger=e,this.core=r}}class ld extends er{constructor(e,r){super(),this.relayer=e,this.logger=r}}class dd extends er{constructor(e){super()}}class pd{constructor(e,r,i,n){this.core=e,this.logger=r,this.name=i}}class gd extends er{constructor(e,r){super(),this.relayer=e,this.logger=r}}class yd extends er{constructor(e,r){super(),this.core=e,this.logger=r}}function qe(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}var vd=qe;qe.EventEmitter=qe,qe.prototype._events=void 0,qe.prototype._maxListeners=void 0,qe.defaultMaxListeners=10,qe.prototype.setMaxListeners=function(t){if(!_d(t)||t<0||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},qe.prototype.emit=function(t){var e,r,i,n,s,c;if(this._events||(this._events={}),t==="error"&&(!this._events.error||jr(this._events.error)&&!this._events.error.length)){if(e=arguments[1],e instanceof Error)throw e;var h=new Error('Uncaught, unspecified "error" event. ('+e+")");throw h.context=e,h}if(r=this._events[t],$o(r))return!1;if(Ft(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:n=Array.prototype.slice.call(arguments,1),r.apply(this,n)}else if(jr(r))for(n=Array.prototype.slice.call(arguments,1),c=r.slice(),i=c.length,s=0;s<i;s++)c[s].apply(this,n);return!0},qe.prototype.addListener=function(t,e){var r;if(!Ft(e))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",t,Ft(e.listener)?e.listener:e),this._events[t]?jr(this._events[t])?this._events[t].push(e):this._events[t]=[this._events[t],e]:this._events[t]=e,jr(this._events[t])&&!this._events[t].warned&&($o(this._maxListeners)?r=qe.defaultMaxListeners:r=this._maxListeners,r&&r>0&&this._events[t].length>r&&(this._events[t].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[t].length),typeof console.trace=="function"&&console.trace())),this},qe.prototype.on=qe.prototype.addListener,qe.prototype.once=function(t,e){if(!Ft(e))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(t,i),r||(r=!0,e.apply(this,arguments))}return i.listener=e,this.on(t,i),this},qe.prototype.removeListener=function(t,e){var r,i,n,s;if(!Ft(e))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(r=this._events[t],n=r.length,i=-1,r===e||Ft(r.listener)&&r.listener===e)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,e);else if(jr(r)){for(s=n;s-- >0;)if(r[s]===e||r[s].listener&&r[s].listener===e){i=s;break}if(i<0)return this;r.length===1?(r.length=0,delete this._events[t]):r.splice(i,1),this._events.removeListener&&this.emit("removeListener",t,e)}return this},qe.prototype.removeAllListeners=function(t){var e,r;if(!this._events)return this;if(!this._events.removeListener)return arguments.length===0?this._events={}:this._events[t]&&delete this._events[t],this;if(arguments.length===0){for(e in this._events)e!=="removeListener"&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(r=this._events[t],Ft(r))this.removeListener(t,r);else if(r)for(;r.length;)this.removeListener(t,r[r.length-1]);return delete this._events[t],this},qe.prototype.listeners=function(t){var e;return!this._events||!this._events[t]?e=[]:Ft(this._events[t])?e=[this._events[t]]:e=this._events[t].slice(),e},qe.prototype.listenerCount=function(t){if(this._events){var e=this._events[t];if(Ft(e))return 1;if(e)return e.length}return 0},qe.listenerCount=function(t,e){return t.listenerCount(e)};function Ft(t){return typeof t=="function"}function _d(t){return typeof t=="number"}function jr(t){return typeof t=="object"&&t!==null}function $o(t){return t===void 0}class bd{constructor(e){this.opts=e,this.protocol="wc",this.version=2}}class xy extends vd.EventEmitter{constructor(){super()}}class md{constructor(e){this.client=e}}var xn={},Bo={},hi={},ui={};Object.defineProperty(ui,"__esModule",{value:!0}),ui.BrowserRandomSource=void 0;const zo=65536;class wd{constructor(){this.isAvailable=!1,this.isInstantiated=!1;const e=typeof self<"u"?self.crypto||self.msCrypto:null;e&&e.getRandomValues!==void 0&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");const r=new Uint8Array(e);for(let i=0;i<r.length;i+=zo)this._crypto.getRandomValues(r.subarray(i,i+Math.min(r.length-i,zo)));return r}}ui.BrowserRandomSource=wd;var fi={};Object.defineProperty(fi,"__esModule",{value:!0}),fi.NodeRandomSource=void 0;const Ed=ct;class Dd{constructor(){if(this.isAvailable=!1,this.isInstantiated=!1,typeof gs<"u"){const e=ys;e&&e.randomBytes&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");let r=this._crypto.randomBytes(e);if(r.length!==e)throw new Error("NodeRandomSource: got fewer bytes than requested");const i=new Uint8Array(e);for(let n=0;n<i.length;n++)i[n]=r[n];return(0,Ed.wipe)(r),i}}fi.NodeRandomSource=Dd,Object.defineProperty(hi,"__esModule",{value:!0}),hi.SystemRandomSource=void 0;const Sd=ui,xd=fi;class Od{constructor(){if(this.isAvailable=!1,this.name="",this._source=new Sd.BrowserRandomSource,this._source.isAvailable){this.isAvailable=!0,this.name="Browser";return}if(this._source=new xd.NodeRandomSource,this._source.isAvailable){this.isAvailable=!0,this.name="Node";return}}randomBytes(e){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(e)}}hi.SystemRandomSource=Od,function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.randomStringForEntropy=t.randomString=t.randomUint32=t.randomBytes=t.defaultRandomSource=void 0;const e=hi,r=re,i=ct;t.defaultRandomSource=new e.SystemRandomSource;function n(f,g=t.defaultRandomSource){return g.randomBytes(f)}t.randomBytes=n;function s(f=t.defaultRandomSource){const g=n(4,f),D=(0,r.readUint32LE)(g);return(0,i.wipe)(g),D}t.randomUint32=s;const c="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function h(f,g=c,D=t.defaultRandomSource){if(g.length<2)throw new Error("randomString charset is too short");if(g.length>256)throw new Error("randomString charset is too long");let C="";const S=g.length,w=256-256%S;for(;f>0;){const P=n(Math.ceil(f*256/w),D);for(let N=0;N<P.length&&f>0;N++){const j=P[N];j<w&&(C+=g.charAt(j%S),f--)}(0,i.wipe)(P)}return C}t.randomString=h;function u(f,g=c,D=t.defaultRandomSource){const C=Math.ceil(f/(Math.log(g.length)/Math.LN2));return h(C,g,D)}t.randomStringForEntropy=u}(Bo);var Ho={};(function(t){Object.defineProperty(t,"__esModule",{value:!0});var e=re,r=ct;t.DIGEST_LENGTH=64,t.BLOCK_SIZE=128;var i=function(){function h(){this.digestLength=t.DIGEST_LENGTH,this.blockSize=t.BLOCK_SIZE,this._stateHi=new Int32Array(8),this._stateLo=new Int32Array(8),this._tempHi=new Int32Array(16),this._tempLo=new Int32Array(16),this._buffer=new Uint8Array(256),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this.reset()}return h.prototype._initState=function(){this._stateHi[0]=1779033703,this._stateHi[1]=3144134277,this._stateHi[2]=1013904242,this._stateHi[3]=2773480762,this._stateHi[4]=1359893119,this._stateHi[5]=2600822924,this._stateHi[6]=528734635,this._stateHi[7]=1541459225,this._stateLo[0]=4089235720,this._stateLo[1]=2227873595,this._stateLo[2]=4271175723,this._stateLo[3]=1595750129,this._stateLo[4]=2917565137,this._stateLo[5]=725511199,this._stateLo[6]=4215389547,this._stateLo[7]=327033209},h.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},h.prototype.clean=function(){r.wipe(this._buffer),r.wipe(this._tempHi),r.wipe(this._tempLo),this.reset()},h.prototype.update=function(u,f){if(f===void 0&&(f=u.length),this._finished)throw new Error("SHA512: can't update because hash was finished.");var g=0;if(this._bytesHashed+=f,this._bufferLength>0){for(;this._bufferLength<t.BLOCK_SIZE&&f>0;)this._buffer[this._bufferLength++]=u[g++],f--;this._bufferLength===this.blockSize&&(s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,this.blockSize),this._bufferLength=0)}for(f>=this.blockSize&&(g=s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,u,g,f),f%=this.blockSize);f>0;)this._buffer[this._bufferLength++]=u[g++],f--;return this},h.prototype.finish=function(u){if(!this._finished){var f=this._bytesHashed,g=this._bufferLength,D=f/536870912|0,C=f<<3,S=f%128<112?128:256;this._buffer[g]=128;for(var w=g+1;w<S-8;w++)this._buffer[w]=0;e.writeUint32BE(D,this._buffer,S-8),e.writeUint32BE(C,this._buffer,S-4),s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,S),this._finished=!0}for(var w=0;w<this.digestLength/8;w++)e.writeUint32BE(this._stateHi[w],u,w*8),e.writeUint32BE(this._stateLo[w],u,w*8+4);return this},h.prototype.digest=function(){var u=new Uint8Array(this.digestLength);return this.finish(u),u},h.prototype.saveState=function(){if(this._finished)throw new Error("SHA256: cannot save finished state");return{stateHi:new Int32Array(this._stateHi),stateLo:new Int32Array(this._stateLo),buffer:this._bufferLength>0?new Uint8Array(this._buffer):void 0,bufferLength:this._bufferLength,bytesHashed:this._bytesHashed}},h.prototype.restoreState=function(u){return this._stateHi.set(u.stateHi),this._stateLo.set(u.stateLo),this._bufferLength=u.bufferLength,u.buffer&&this._buffer.set(u.buffer),this._bytesHashed=u.bytesHashed,this._finished=!1,this},h.prototype.cleanSavedState=function(u){r.wipe(u.stateHi),r.wipe(u.stateLo),u.buffer&&r.wipe(u.buffer),u.bufferLength=0,u.bytesHashed=0},h}();t.SHA512=i;var n=new Int32Array([1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591]);function s(h,u,f,g,D,C,S){for(var w=f[0],P=f[1],N=f[2],j=f[3],E=f[4],I=f[5],y=f[6],m=f[7],b=g[0],o=g[1],d=g[2],M=g[3],K=g[4],G=g[5],J=g[6],X=g[7],l,v,U,q,R,L,$,B;S>=128;){for(var ee=0;ee<16;ee++){var z=8*ee+C;h[ee]=e.readUint32BE(D,z),u[ee]=e.readUint32BE(D,z+4)}for(var ee=0;ee<80;ee++){var te=w,k=P,ce=N,T=j,A=E,x=I,a=y,_=m,H=b,W=o,le=d,_e=M,pe=K,we=G,Fe=J,Ce=X;if(l=m,v=X,R=v&65535,L=v>>>16,$=l&65535,B=l>>>16,l=(E>>>14|K<<32-14)^(E>>>18|K<<32-18)^(K>>>41-32|E<<32-(41-32)),v=(K>>>14|E<<32-14)^(K>>>18|E<<32-18)^(E>>>41-32|K<<32-(41-32)),R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,l=E&I^~E&y,v=K&G^~K&J,R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,l=n[ee*2],v=n[ee*2+1],R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,l=h[ee%16],v=u[ee%16],R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,L+=R>>>16,$+=L>>>16,B+=$>>>16,U=$&65535|B<<16,q=R&65535|L<<16,l=U,v=q,R=v&65535,L=v>>>16,$=l&65535,B=l>>>16,l=(w>>>28|b<<32-28)^(b>>>34-32|w<<32-(34-32))^(b>>>39-32|w<<32-(39-32)),v=(b>>>28|w<<32-28)^(w>>>34-32|b<<32-(34-32))^(w>>>39-32|b<<32-(39-32)),R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,l=w&P^w&N^P&N,v=b&o^b&d^o&d,R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,L+=R>>>16,$+=L>>>16,B+=$>>>16,_=$&65535|B<<16,Ce=R&65535|L<<16,l=T,v=_e,R=v&65535,L=v>>>16,$=l&65535,B=l>>>16,l=U,v=q,R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,L+=R>>>16,$+=L>>>16,B+=$>>>16,T=$&65535|B<<16,_e=R&65535|L<<16,P=te,N=k,j=ce,E=T,I=A,y=x,m=a,w=_,o=H,d=W,M=le,K=_e,G=pe,J=we,X=Fe,b=Ce,ee%16===15)for(var z=0;z<16;z++)l=h[z],v=u[z],R=v&65535,L=v>>>16,$=l&65535,B=l>>>16,l=h[(z+9)%16],v=u[(z+9)%16],R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,U=h[(z+1)%16],q=u[(z+1)%16],l=(U>>>1|q<<32-1)^(U>>>8|q<<32-8)^U>>>7,v=(q>>>1|U<<32-1)^(q>>>8|U<<32-8)^(q>>>7|U<<32-7),R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,U=h[(z+14)%16],q=u[(z+14)%16],l=(U>>>19|q<<32-19)^(q>>>61-32|U<<32-(61-32))^U>>>6,v=(q>>>19|U<<32-19)^(U>>>61-32|q<<32-(61-32))^(q>>>6|U<<32-6),R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,L+=R>>>16,$+=L>>>16,B+=$>>>16,h[z]=$&65535|B<<16,u[z]=R&65535|L<<16}l=w,v=b,R=v&65535,L=v>>>16,$=l&65535,B=l>>>16,l=f[0],v=g[0],R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,L+=R>>>16,$+=L>>>16,B+=$>>>16,f[0]=w=$&65535|B<<16,g[0]=b=R&65535|L<<16,l=P,v=o,R=v&65535,L=v>>>16,$=l&65535,B=l>>>16,l=f[1],v=g[1],R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,L+=R>>>16,$+=L>>>16,B+=$>>>16,f[1]=P=$&65535|B<<16,g[1]=o=R&65535|L<<16,l=N,v=d,R=v&65535,L=v>>>16,$=l&65535,B=l>>>16,l=f[2],v=g[2],R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,L+=R>>>16,$+=L>>>16,B+=$>>>16,f[2]=N=$&65535|B<<16,g[2]=d=R&65535|L<<16,l=j,v=M,R=v&65535,L=v>>>16,$=l&65535,B=l>>>16,l=f[3],v=g[3],R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,L+=R>>>16,$+=L>>>16,B+=$>>>16,f[3]=j=$&65535|B<<16,g[3]=M=R&65535|L<<16,l=E,v=K,R=v&65535,L=v>>>16,$=l&65535,B=l>>>16,l=f[4],v=g[4],R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,L+=R>>>16,$+=L>>>16,B+=$>>>16,f[4]=E=$&65535|B<<16,g[4]=K=R&65535|L<<16,l=I,v=G,R=v&65535,L=v>>>16,$=l&65535,B=l>>>16,l=f[5],v=g[5],R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,L+=R>>>16,$+=L>>>16,B+=$>>>16,f[5]=I=$&65535|B<<16,g[5]=G=R&65535|L<<16,l=y,v=J,R=v&65535,L=v>>>16,$=l&65535,B=l>>>16,l=f[6],v=g[6],R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,L+=R>>>16,$+=L>>>16,B+=$>>>16,f[6]=y=$&65535|B<<16,g[6]=J=R&65535|L<<16,l=m,v=X,R=v&65535,L=v>>>16,$=l&65535,B=l>>>16,l=f[7],v=g[7],R+=v&65535,L+=v>>>16,$+=l&65535,B+=l>>>16,L+=R>>>16,$+=L>>>16,B+=$>>>16,f[7]=m=$&65535|B<<16,g[7]=X=R&65535|L<<16,C+=128,S-=128}return C}function c(h){var u=new i;u.update(h);var f=u.digest();return u.clean(),f}t.hash=c})(Ho),function(t){Object.defineProperty(t,"__esModule",{value:!0}),t.convertSecretKeyToX25519=t.convertPublicKeyToX25519=t.verify=t.sign=t.extractPublicKeyFromSecretKey=t.generateKeyPair=t.generateKeyPairFromSeed=t.SEED_LENGTH=t.SECRET_KEY_LENGTH=t.PUBLIC_KEY_LENGTH=t.SIGNATURE_LENGTH=void 0;const e=Bo,r=Ho,i=ct;t.SIGNATURE_LENGTH=64,t.PUBLIC_KEY_LENGTH=32,t.SECRET_KEY_LENGTH=64,t.SEED_LENGTH=32;function n(T){const A=new Float64Array(16);if(T)for(let x=0;x<T.length;x++)A[x]=T[x];return A}const s=new Uint8Array(32);s[0]=9;const c=n(),h=n([1]),u=n([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),f=n([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),g=n([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),D=n([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),C=n([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function S(T,A){for(let x=0;x<16;x++)T[x]=A[x]|0}function w(T){let A=1;for(let x=0;x<16;x++){let a=T[x]+A+65535;A=Math.floor(a/65536),T[x]=a-A*65536}T[0]+=A-1+37*(A-1)}function P(T,A,x){const a=~(x-1);for(let _=0;_<16;_++){const H=a&(T[_]^A[_]);T[_]^=H,A[_]^=H}}function N(T,A){const x=n(),a=n();for(let _=0;_<16;_++)a[_]=A[_];w(a),w(a),w(a);for(let _=0;_<2;_++){x[0]=a[0]-65517;for(let W=1;W<15;W++)x[W]=a[W]-65535-(x[W-1]>>16&1),x[W-1]&=65535;x[15]=a[15]-32767-(x[14]>>16&1);const H=x[15]>>16&1;x[14]&=65535,P(a,x,1-H)}for(let _=0;_<16;_++)T[2*_]=a[_]&255,T[2*_+1]=a[_]>>8}function j(T,A){let x=0;for(let a=0;a<32;a++)x|=T[a]^A[a];return(1&x-1>>>8)-1}function E(T,A){const x=new Uint8Array(32),a=new Uint8Array(32);return N(x,T),N(a,A),j(x,a)}function I(T){const A=new Uint8Array(32);return N(A,T),A[0]&1}function y(T,A){for(let x=0;x<16;x++)T[x]=A[2*x]+(A[2*x+1]<<8);T[15]&=32767}function m(T,A,x){for(let a=0;a<16;a++)T[a]=A[a]+x[a]}function b(T,A,x){for(let a=0;a<16;a++)T[a]=A[a]-x[a]}function o(T,A,x){let a,_,H=0,W=0,le=0,_e=0,pe=0,we=0,Fe=0,Ce=0,ve=0,ge=0,de=0,ue=0,he=0,ae=0,oe=0,ie=0,fe=0,ye=0,ne=0,be=0,me=0,De=0,Se=0,Ee=0,St=0,Nt=0,Wt=0,yt=0,nr=0,qr=0,vi=0,Ue=x[0],Ne=x[1],Me=x[2],je=x[3],$e=x[4],Le=x[5],Ye=x[6],ke=x[7],Je=x[8],Xe=x[9],Ze=x[10],He=x[11],Be=x[12],Ae=x[13],Qe=x[14],et=x[15];a=A[0],H+=a*Ue,W+=a*Ne,le+=a*Me,_e+=a*je,pe+=a*$e,we+=a*Le,Fe+=a*Ye,Ce+=a*ke,ve+=a*Je,ge+=a*Xe,de+=a*Ze,ue+=a*He,he+=a*Be,ae+=a*Ae,oe+=a*Qe,ie+=a*et,a=A[1],W+=a*Ue,le+=a*Ne,_e+=a*Me,pe+=a*je,we+=a*$e,Fe+=a*Le,Ce+=a*Ye,ve+=a*ke,ge+=a*Je,de+=a*Xe,ue+=a*Ze,he+=a*He,ae+=a*Be,oe+=a*Ae,ie+=a*Qe,fe+=a*et,a=A[2],le+=a*Ue,_e+=a*Ne,pe+=a*Me,we+=a*je,Fe+=a*$e,Ce+=a*Le,ve+=a*Ye,ge+=a*ke,de+=a*Je,ue+=a*Xe,he+=a*Ze,ae+=a*He,oe+=a*Be,ie+=a*Ae,fe+=a*Qe,ye+=a*et,a=A[3],_e+=a*Ue,pe+=a*Ne,we+=a*Me,Fe+=a*je,Ce+=a*$e,ve+=a*Le,ge+=a*Ye,de+=a*ke,ue+=a*Je,he+=a*Xe,ae+=a*Ze,oe+=a*He,ie+=a*Be,fe+=a*Ae,ye+=a*Qe,ne+=a*et,a=A[4],pe+=a*Ue,we+=a*Ne,Fe+=a*Me,Ce+=a*je,ve+=a*$e,ge+=a*Le,de+=a*Ye,ue+=a*ke,he+=a*Je,ae+=a*Xe,oe+=a*Ze,ie+=a*He,fe+=a*Be,ye+=a*Ae,ne+=a*Qe,be+=a*et,a=A[5],we+=a*Ue,Fe+=a*Ne,Ce+=a*Me,ve+=a*je,ge+=a*$e,de+=a*Le,ue+=a*Ye,he+=a*ke,ae+=a*Je,oe+=a*Xe,ie+=a*Ze,fe+=a*He,ye+=a*Be,ne+=a*Ae,be+=a*Qe,me+=a*et,a=A[6],Fe+=a*Ue,Ce+=a*Ne,ve+=a*Me,ge+=a*je,de+=a*$e,ue+=a*Le,he+=a*Ye,ae+=a*ke,oe+=a*Je,ie+=a*Xe,fe+=a*Ze,ye+=a*He,ne+=a*Be,be+=a*Ae,me+=a*Qe,De+=a*et,a=A[7],Ce+=a*Ue,ve+=a*Ne,ge+=a*Me,de+=a*je,ue+=a*$e,he+=a*Le,ae+=a*Ye,oe+=a*ke,ie+=a*Je,fe+=a*Xe,ye+=a*Ze,ne+=a*He,be+=a*Be,me+=a*Ae,De+=a*Qe,Se+=a*et,a=A[8],ve+=a*Ue,ge+=a*Ne,de+=a*Me,ue+=a*je,he+=a*$e,ae+=a*Le,oe+=a*Ye,ie+=a*ke,fe+=a*Je,ye+=a*Xe,ne+=a*Ze,be+=a*He,me+=a*Be,De+=a*Ae,Se+=a*Qe,Ee+=a*et,a=A[9],ge+=a*Ue,de+=a*Ne,ue+=a*Me,he+=a*je,ae+=a*$e,oe+=a*Le,ie+=a*Ye,fe+=a*ke,ye+=a*Je,ne+=a*Xe,be+=a*Ze,me+=a*He,De+=a*Be,Se+=a*Ae,Ee+=a*Qe,St+=a*et,a=A[10],de+=a*Ue,ue+=a*Ne,he+=a*Me,ae+=a*je,oe+=a*$e,ie+=a*Le,fe+=a*Ye,ye+=a*ke,ne+=a*Je,be+=a*Xe,me+=a*Ze,De+=a*He,Se+=a*Be,Ee+=a*Ae,St+=a*Qe,Nt+=a*et,a=A[11],ue+=a*Ue,he+=a*Ne,ae+=a*Me,oe+=a*je,ie+=a*$e,fe+=a*Le,ye+=a*Ye,ne+=a*ke,be+=a*Je,me+=a*Xe,De+=a*Ze,Se+=a*He,Ee+=a*Be,St+=a*Ae,Nt+=a*Qe,Wt+=a*et,a=A[12],he+=a*Ue,ae+=a*Ne,oe+=a*Me,ie+=a*je,fe+=a*$e,ye+=a*Le,ne+=a*Ye,be+=a*ke,me+=a*Je,De+=a*Xe,Se+=a*Ze,Ee+=a*He,St+=a*Be,Nt+=a*Ae,Wt+=a*Qe,yt+=a*et,a=A[13],ae+=a*Ue,oe+=a*Ne,ie+=a*Me,fe+=a*je,ye+=a*$e,ne+=a*Le,be+=a*Ye,me+=a*ke,De+=a*Je,Se+=a*Xe,Ee+=a*Ze,St+=a*He,Nt+=a*Be,Wt+=a*Ae,yt+=a*Qe,nr+=a*et,a=A[14],oe+=a*Ue,ie+=a*Ne,fe+=a*Me,ye+=a*je,ne+=a*$e,be+=a*Le,me+=a*Ye,De+=a*ke,Se+=a*Je,Ee+=a*Xe,St+=a*Ze,Nt+=a*He,Wt+=a*Be,yt+=a*Ae,nr+=a*Qe,qr+=a*et,a=A[15],ie+=a*Ue,fe+=a*Ne,ye+=a*Me,ne+=a*je,be+=a*$e,me+=a*Le,De+=a*Ye,Se+=a*ke,Ee+=a*Je,St+=a*Xe,Nt+=a*Ze,Wt+=a*He,yt+=a*Be,nr+=a*Ae,qr+=a*Qe,vi+=a*et,H+=38*fe,W+=38*ye,le+=38*ne,_e+=38*be,pe+=38*me,we+=38*De,Fe+=38*Se,Ce+=38*Ee,ve+=38*St,ge+=38*Nt,de+=38*Wt,ue+=38*yt,he+=38*nr,ae+=38*qr,oe+=38*vi,_=1,a=H+_+65535,_=Math.floor(a/65536),H=a-_*65536,a=W+_+65535,_=Math.floor(a/65536),W=a-_*65536,a=le+_+65535,_=Math.floor(a/65536),le=a-_*65536,a=_e+_+65535,_=Math.floor(a/65536),_e=a-_*65536,a=pe+_+65535,_=Math.floor(a/65536),pe=a-_*65536,a=we+_+65535,_=Math.floor(a/65536),we=a-_*65536,a=Fe+_+65535,_=Math.floor(a/65536),Fe=a-_*65536,a=Ce+_+65535,_=Math.floor(a/65536),Ce=a-_*65536,a=ve+_+65535,_=Math.floor(a/65536),ve=a-_*65536,a=ge+_+65535,_=Math.floor(a/65536),ge=a-_*65536,a=de+_+65535,_=Math.floor(a/65536),de=a-_*65536,a=ue+_+65535,_=Math.floor(a/65536),ue=a-_*65536,a=he+_+65535,_=Math.floor(a/65536),he=a-_*65536,a=ae+_+65535,_=Math.floor(a/65536),ae=a-_*65536,a=oe+_+65535,_=Math.floor(a/65536),oe=a-_*65536,a=ie+_+65535,_=Math.floor(a/65536),ie=a-_*65536,H+=_-1+37*(_-1),_=1,a=H+_+65535,_=Math.floor(a/65536),H=a-_*65536,a=W+_+65535,_=Math.floor(a/65536),W=a-_*65536,a=le+_+65535,_=Math.floor(a/65536),le=a-_*65536,a=_e+_+65535,_=Math.floor(a/65536),_e=a-_*65536,a=pe+_+65535,_=Math.floor(a/65536),pe=a-_*65536,a=we+_+65535,_=Math.floor(a/65536),we=a-_*65536,a=Fe+_+65535,_=Math.floor(a/65536),Fe=a-_*65536,a=Ce+_+65535,_=Math.floor(a/65536),Ce=a-_*65536,a=ve+_+65535,_=Math.floor(a/65536),ve=a-_*65536,a=ge+_+65535,_=Math.floor(a/65536),ge=a-_*65536,a=de+_+65535,_=Math.floor(a/65536),de=a-_*65536,a=ue+_+65535,_=Math.floor(a/65536),ue=a-_*65536,a=he+_+65535,_=Math.floor(a/65536),he=a-_*65536,a=ae+_+65535,_=Math.floor(a/65536),ae=a-_*65536,a=oe+_+65535,_=Math.floor(a/65536),oe=a-_*65536,a=ie+_+65535,_=Math.floor(a/65536),ie=a-_*65536,H+=_-1+37*(_-1),T[0]=H,T[1]=W,T[2]=le,T[3]=_e,T[4]=pe,T[5]=we,T[6]=Fe,T[7]=Ce,T[8]=ve,T[9]=ge,T[10]=de,T[11]=ue,T[12]=he,T[13]=ae,T[14]=oe,T[15]=ie}function d(T,A){o(T,A,A)}function M(T,A){const x=n();let a;for(a=0;a<16;a++)x[a]=A[a];for(a=253;a>=0;a--)d(x,x),a!==2&&a!==4&&o(x,x,A);for(a=0;a<16;a++)T[a]=x[a]}function K(T,A){const x=n();let a;for(a=0;a<16;a++)x[a]=A[a];for(a=250;a>=0;a--)d(x,x),a!==1&&o(x,x,A);for(a=0;a<16;a++)T[a]=x[a]}function G(T,A){const x=n(),a=n(),_=n(),H=n(),W=n(),le=n(),_e=n(),pe=n(),we=n();b(x,T[1],T[0]),b(we,A[1],A[0]),o(x,x,we),m(a,T[0],T[1]),m(we,A[0],A[1]),o(a,a,we),o(_,T[3],A[3]),o(_,_,f),o(H,T[2],A[2]),m(H,H,H),b(W,a,x),b(le,H,_),m(_e,H,_),m(pe,a,x),o(T[0],W,le),o(T[1],pe,_e),o(T[2],_e,le),o(T[3],W,pe)}function J(T,A,x){for(let a=0;a<4;a++)P(T[a],A[a],x)}function X(T,A){const x=n(),a=n(),_=n();M(_,A[2]),o(x,A[0],_),o(a,A[1],_),N(T,a),T[31]^=I(x)<<7}function l(T,A,x){S(T[0],c),S(T[1],h),S(T[2],h),S(T[3],c);for(let a=255;a>=0;--a){const _=x[a/8|0]>>(a&7)&1;J(T,A,_),G(A,T),G(T,T),J(T,A,_)}}function v(T,A){const x=[n(),n(),n(),n()];S(x[0],g),S(x[1],D),S(x[2],h),o(x[3],g,D),l(T,x,A)}function U(T){if(T.length!==t.SEED_LENGTH)throw new Error(`ed25519: seed must be ${t.SEED_LENGTH} bytes`);const A=(0,r.hash)(T);A[0]&=248,A[31]&=127,A[31]|=64;const x=new Uint8Array(32),a=[n(),n(),n(),n()];v(a,A),X(x,a);const _=new Uint8Array(64);return _.set(T),_.set(x,32),{publicKey:x,secretKey:_}}t.generateKeyPairFromSeed=U;function q(T){const A=(0,e.randomBytes)(32,T),x=U(A);return(0,i.wipe)(A),x}t.generateKeyPair=q;function R(T){if(T.length!==t.SECRET_KEY_LENGTH)throw new Error(`ed25519: secret key must be ${t.SECRET_KEY_LENGTH} bytes`);return new Uint8Array(T.subarray(32))}t.extractPublicKeyFromSecretKey=R;const L=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 $(T,A){let x,a,_,H;for(a=63;a>=32;--a){for(x=0,_=a-32,H=a-12;_<H;++_)A[_]+=x-16*A[a]*L[_-(a-32)],x=Math.floor((A[_]+128)/256),A[_]-=x*256;A[_]+=x,A[a]=0}for(x=0,_=0;_<32;_++)A[_]+=x-(A[31]>>4)*L[_],x=A[_]>>8,A[_]&=255;for(_=0;_<32;_++)A[_]-=x*L[_];for(a=0;a<32;a++)A[a+1]+=A[a]>>8,T[a]=A[a]&255}function B(T){const A=new Float64Array(64);for(let x=0;x<64;x++)A[x]=T[x];for(let x=0;x<64;x++)T[x]=0;$(T,A)}function ee(T,A){const x=new Float64Array(64),a=[n(),n(),n(),n()],_=(0,r.hash)(T.subarray(0,32));_[0]&=248,_[31]&=127,_[31]|=64;const H=new Uint8Array(64);H.set(_.subarray(32),32);const W=new r.SHA512;W.update(H.subarray(32)),W.update(A);const le=W.digest();W.clean(),B(le),v(a,le),X(H,a),W.reset(),W.update(H.subarray(0,32)),W.update(T.subarray(32)),W.update(A);const _e=W.digest();B(_e);for(let pe=0;pe<32;pe++)x[pe]=le[pe];for(let pe=0;pe<32;pe++)for(let we=0;we<32;we++)x[pe+we]+=_e[pe]*_[we];return $(H.subarray(32),x),H}t.sign=ee;function z(T,A){const x=n(),a=n(),_=n(),H=n(),W=n(),le=n(),_e=n();return S(T[2],h),y(T[1],A),d(_,T[1]),o(H,_,u),b(_,_,T[2]),m(H,T[2],H),d(W,H),d(le,W),o(_e,le,W),o(x,_e,_),o(x,x,H),K(x,x),o(x,x,_),o(x,x,H),o(x,x,H),o(T[0],x,H),d(a,T[0]),o(a,a,H),E(a,_)&&o(T[0],T[0],C),d(a,T[0]),o(a,a,H),E(a,_)?-1:(I(T[0])===A[31]>>7&&b(T[0],c,T[0]),o(T[3],T[0],T[1]),0)}function te(T,A,x){const a=new Uint8Array(32),_=[n(),n(),n(),n()],H=[n(),n(),n(),n()];if(x.length!==t.SIGNATURE_LENGTH)throw new Error(`ed25519: signature must be ${t.SIGNATURE_LENGTH} bytes`);if(z(H,T))return!1;const W=new r.SHA512;W.update(x.subarray(0,32)),W.update(T),W.update(A);const le=W.digest();return B(le),l(_,H,le),v(H,x.subarray(32)),G(_,H),X(a,_),!j(x,a)}t.verify=te;function k(T){let A=[n(),n(),n(),n()];if(z(A,T))throw new Error("Ed25519: invalid public key");let x=n(),a=n(),_=A[1];m(x,h,_),b(a,h,_),M(a,a),o(x,x,a);let H=new Uint8Array(32);return N(H,x),H}t.convertPublicKeyToX25519=k;function ce(T){const A=(0,r.hash)(T.subarray(0,32));A[0]&=248,A[31]&=127,A[31]|=64;const x=new Uint8Array(A.subarray(0,32));return(0,i.wipe)(A),x}t.convertSecretKeyToX25519=ce}(xn);const Id="EdDSA",Ad="JWT",Ko=".",qo="base64url",Td="utf8",Cd="utf8",Nd=":",Ld="did",Rd="key",Vo="base58btc",Pd="z",Fd="K36",Ud=32;function li(t){return lt(ft(Er(t),Td),qo)}function Go(t){const e=ft(Fd,Vo),r=Pd+lt(Ki([e,t]),Vo);return[Ld,Rd,r].join(Nd)}function Md(t){return lt(t,qo)}function jd(t){return ft([li(t.header),li(t.payload)].join(Ko),Cd)}function $d(t){return[li(t.header),li(t.payload),Md(t.signature)].join(Ko)}function Wo(t=Sr.randomBytes(Ud)){return xn.generateKeyPairFromSeed(t)}async function Bd(t,e,r,i,n=Q.fromMiliseconds(Date.now())){const s={alg:Id,typ:Ad},c=Go(i.publicKey),h=n+r,u={iss:c,sub:t,aud:e,iat:n,exp:h},f=jd({header:s,payload:u}),g=xn.sign(i.secretKey,f);return $d({header:s,payload:u,signature:g})}const Yo=10,zd=typeof global.WebSocket<"u"?global.WebSocket:require("ws");class Hd{constructor(e){if(this.url=e,this.events=new _r.EventEmitter,this.registering=!1,!Jn(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);this.url=e}get connected(){return typeof this.socket<"u"}get connecting(){return this.registering}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}off(e,r){this.events.off(e,r)}removeListener(e,r){this.events.removeListener(e,r)}async open(e=this.url){await this.register(e)}async close(){if(typeof this.socket>"u")throw new Error("Connection already closed");this.socket.close(),this.onClose()}async send(e,r){typeof this.socket>"u"&&(this.socket=await this.register());try{this.socket.send(Er(e))}catch(i){this.onError(e.id,i)}}register(e=this.url){if(!Jn(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);if(this.registering){const r=this.events.getMaxListeners();return(this.events.listenerCount("register_error")>=r||this.events.listenerCount("open")>=r)&&this.events.setMaxListeners(r+1),new Promise((i,n)=>{this.events.once("register_error",s=>{this.resetMaxListeners(),n(s)}),this.events.once("open",()=>{if(this.resetMaxListeners(),typeof this.socket>"u")return n(new Error("WebSocket connection is missing or invalid"));i(this.socket)})})}return this.url=e,this.registering=!0,new Promise((r,i)=>{const n=Kn.isReactNative()?void 0:{rejectUnauthorized:!pc(e)},s=new zd(e,[],n);s.onopen=()=>{this.onOpen(s),r(s)},s.onerror=c=>{const h=this.parseError(c.error);this.events.emit("register_error",h),this.onClose(),i(h)}})}onOpen(e){e.onmessage=r=>this.onPayload(r),e.onclose=()=>this.onClose(),e.onerror=r=>{const i=this.parseError(r.error);this.events.emit("error",i)},this.socket=e,this.registering=!1,this.events.emit("open")}onClose(){this.socket=void 0,this.registering=!1,this.events.emit("close")}onPayload(e){if(typeof e.data>"u")return;const r=typeof e.data=="string"?Ni(e.data):e.data;this.events.emit("payload",r)}onError(e,r){const i=this.parseError(r),n=i.message||i.toString(),s=wr(e,n);this.events.emit("payload",s)}parseError(e,r=this.url){return Hn(e,r,"WS")}resetMaxListeners(){this.events.getMaxListeners()>Yo&&this.events.setMaxListeners(Yo)}}var On={exports:{}};(function(t,e){var r=200,i="__lodash_hash_undefined__",n=1,s=2,c=9007199254740991,h="[object Arguments]",u="[object Array]",f="[object AsyncFunction]",g="[object Boolean]",D="[object Date]",C="[object Error]",S="[object Function]",w="[object GeneratorFunction]",P="[object Map]",N="[object Number]",j="[object Null]",E="[object Object]",I="[object Promise]",y="[object Proxy]",m="[object RegExp]",b="[object Set]",o="[object String]",d="[object Symbol]",M="[object Undefined]",K="[object WeakMap]",G="[object ArrayBuffer]",J="[object DataView]",X="[object Float32Array]",l="[object Float64Array]",v="[object Int8Array]",U="[object Int16Array]",q="[object Int32Array]",R="[object Uint8Array]",L="[object Uint8ClampedArray]",$="[object Uint16Array]",B="[object Uint32Array]",ee=/[\\^$.*+?()[\]{}|]/g,z=/^\[object .+?Constructor\]$/,te=/^(?:0|[1-9]\d*)$/,k={};k[X]=k[l]=k[v]=k[U]=k[q]=k[R]=k[L]=k[$]=k[B]=!0,k[h]=k[u]=k[G]=k[g]=k[J]=k[D]=k[C]=k[S]=k[P]=k[N]=k[E]=k[m]=k[b]=k[o]=k[K]=!1;var ce=typeof Z=="object"&&Z&&Z.Object===Object&&Z,T=typeof self=="object"&&self&&self.Object===Object&&self,A=ce||T||Function("return this")(),x=e&&!e.nodeType&&e,a=x&&!0&&t&&!t.nodeType&&t,_=a&&a.exports===x,H=_&&ce.process,W=function(){try{return H&&H.binding&&H.binding("util")}catch{}}(),le=W&&W.isTypedArray;function _e(p,O){for(var F=-1,Y=p==null?0:p.length,Ie=0,se=[];++F<Y;){var Re=p[F];O(Re,F,p)&&(se[Ie++]=Re)}return se}function pe(p,O){for(var F=-1,Y=O.length,Ie=p.length;++F<Y;)p[Ie+F]=O[F];return p}function we(p,O){for(var F=-1,Y=p==null?0:p.length;++F<Y;)if(O(p[F],F,p))return!0;return!1}function Fe(p,O){for(var F=-1,Y=Array(p);++F<p;)Y[F]=O(F);return Y}function Ce(p){return function(O){return p(O)}}function ve(p,O){return p.has(O)}function ge(p,O){return p?.[O]}function de(p){var O=-1,F=Array(p.size);return p.forEach(function(Y,Ie){F[++O]=[Ie,Y]}),F}function ue(p,O){return function(F){return p(O(F))}}function he(p){var O=-1,F=Array(p.size);return p.forEach(function(Y){F[++O]=Y}),F}var ae=Array.prototype,oe=Function.prototype,ie=Object.prototype,fe=A["__core-js_shared__"],ye=oe.toString,ne=ie.hasOwnProperty,be=function(){var p=/[^.]+$/.exec(fe&&fe.keys&&fe.keys.IE_PROTO||"");return p?"Symbol(src)_1."+p:""}(),me=ie.toString,De=RegExp("^"+ye.call(ne).replace(ee,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Se=_?A.Buffer:void 0,Ee=A.Symbol,St=A.Uint8Array,Nt=ie.propertyIsEnumerable,Wt=ae.splice,yt=Ee?Ee.toStringTag:void 0,nr=Object.getOwnPropertySymbols,qr=Se?Se.isBuffer:void 0,vi=ue(Object.keys,Object),Ue=vr(A,"DataView"),Ne=vr(A,"Map"),Me=vr(A,"Promise"),je=vr(A,"Set"),$e=vr(A,"WeakMap"),Le=vr(Object,"create"),Ye=or(Ue),ke=or(Ne),Je=or(Me),Xe=or(je),Ze=or($e),He=Ee?Ee.prototype:void 0,Be=He?He.valueOf:void 0;function Ae(p){var O=-1,F=p==null?0:p.length;for(this.clear();++O<F;){var Y=p[O];this.set(Y[0],Y[1])}}function Qe(){this.__data__=Le?Le(null):{},this.size=0}function et(p){var O=this.has(p)&&delete this.__data__[p];return this.size-=O?1:0,O}function P0(p){var O=this.__data__;if(Le){var F=O[p];return F===i?void 0:F}return ne.call(O,p)?O[p]:void 0}function F0(p){var O=this.__data__;return Le?O[p]!==void 0:ne.call(O,p)}function U0(p,O){var F=this.__data__;return this.size+=this.has(p)?0:1,F[p]=Le&&O===void 0?i:O,this}Ae.prototype.clear=Qe,Ae.prototype.delete=et,Ae.prototype.get=P0,Ae.prototype.has=F0,Ae.prototype.set=U0;function $t(p){var O=-1,F=p==null?0:p.length;for(this.clear();++O<F;){var Y=p[O];this.set(Y[0],Y[1])}}function M0(){this.__data__=[],this.size=0}function j0(p){var O=this.__data__,F=bi(O,p);if(F<0)return!1;var Y=O.length-1;return F==Y?O.pop():Wt.call(O,F,1),--this.size,!0}function $0(p){var O=this.__data__,F=bi(O,p);return F<0?void 0:O[F][1]}function B0(p){return bi(this.__data__,p)>-1}function z0(p,O){var F=this.__data__,Y=bi(F,p);return Y<0?(++this.size,F.push([p,O])):F[Y][1]=O,this}$t.prototype.clear=M0,$t.prototype.delete=j0,$t.prototype.get=$0,$t.prototype.has=B0,$t.prototype.set=z0;function sr(p){var O=-1,F=p==null?0:p.length;for(this.clear();++O<F;){var Y=p[O];this.set(Y[0],Y[1])}}function H0(){this.size=0,this.__data__={hash:new Ae,map:new(Ne||$t),string:new Ae}}function K0(p){var O=mi(this,p).delete(p);return this.size-=O?1:0,O}function q0(p){return mi(this,p).get(p)}function V0(p){return mi(this,p).has(p)}function G0(p,O){var F=mi(this,p),Y=F.size;return F.set(p,O),this.size+=F.size==Y?0:1,this}sr.prototype.clear=H0,sr.prototype.delete=K0,sr.prototype.get=q0,sr.prototype.has=V0,sr.prototype.set=G0;function _i(p){var O=-1,F=p==null?0:p.length;for(this.__data__=new sr;++O<F;)this.add(p[O])}function W0(p){return this.__data__.set(p,i),this}function Y0(p){return this.__data__.has(p)}_i.prototype.add=_i.prototype.push=W0,_i.prototype.has=Y0;function Yt(p){var O=this.__data__=new $t(p);this.size=O.size}function k0(){this.__data__=new $t,this.size=0}function J0(p){var O=this.__data__,F=O.delete(p);return this.size=O.size,F}function X0(p){return this.__data__.get(p)}function Z0(p){return this.__data__.has(p)}function Q0(p,O){var F=this.__data__;if(F instanceof $t){var Y=F.__data__;if(!Ne||Y.length<r-1)return Y.push([p,O]),this.size=++F.size,this;F=this.__data__=new sr(Y)}return F.set(p,O),this.size=F.size,this}Yt.prototype.clear=k0,Yt.prototype.delete=J0,Yt.prototype.get=X0,Yt.prototype.has=Z0,Yt.prototype.set=Q0;function ey(p,O){var F=wi(p),Y=!F&&gy(p),Ie=!F&&!Y&&Mn(p),se=!F&&!Y&&!Ie&&Wa(p),Re=F||Y||Ie||se,tt=Re?Fe(p.length,String):[],st=tt.length;for(var Te in p)(O||ne.call(p,Te))&&!(Re&&(Te=="length"||Ie&&(Te=="offset"||Te=="parent")||se&&(Te=="buffer"||Te=="byteLength"||Te=="byteOffset")||uy(Te,st)))&&tt.push(Te);return tt}function bi(p,O){for(var F=p.length;F--;)if(Ka(p[F][0],O))return F;return-1}function ty(p,O,F){var Y=O(p);return wi(p)?Y:pe(Y,F(p))}function Vr(p){return p==null?p===void 0?M:j:yt&&yt in Object(p)?cy(p):py(p)}function $a(p){return Gr(p)&&Vr(p)==h}function Ba(p,O,F,Y,Ie){return p===O?!0:p==null||O==null||!Gr(p)&&!Gr(O)?p!==p&&O!==O:ry(p,O,F,Y,Ba,Ie)}function ry(p,O,F,Y,Ie,se){var Re=wi(p),tt=wi(O),st=Re?u:kt(p),Te=tt?u:kt(O);st=st==h?E:st,Te=Te==h?E:Te;var vt=st==E,xt=Te==E,at=st==Te;if(at&&Mn(p)){if(!Mn(O))return!1;Re=!0,vt=!1}if(at&&!vt)return se||(se=new Yt),Re||Wa(p)?za(p,O,F,Y,Ie,se):oy(p,O,st,F,Y,Ie,se);if(!(F&n)){var mt=vt&&ne.call(p,"__wrapped__"),wt=xt&&ne.call(O,"__wrapped__");if(mt||wt){var Jt=mt?p.value():p,Bt=wt?O.value():O;return se||(se=new Yt),Ie(Jt,Bt,F,Y,se)}}return at?(se||(se=new Yt),ay(p,O,F,Y,Ie,se)):!1}function iy(p){if(!Ga(p)||ly(p))return!1;var O=qa(p)?De:z;return O.test(or(p))}function ny(p){return Gr(p)&&Va(p.length)&&!!k[Vr(p)]}function sy(p){if(!dy(p))return vi(p);var O=[];for(var F in Object(p))ne.call(p,F)&&F!="constructor"&&O.push(F);return O}function za(p,O,F,Y,Ie,se){var Re=F&n,tt=p.length,st=O.length;if(tt!=st&&!(Re&&st>tt))return!1;var Te=se.get(p);if(Te&&se.get(O))return Te==O;var vt=-1,xt=!0,at=F&s?new _i:void 0;for(se.set(p,O),se.set(O,p);++vt<tt;){var mt=p[vt],wt=O[vt];if(Y)var Jt=Re?Y(wt,mt,vt,O,p,se):Y(mt,wt,vt,p,O,se);if(Jt!==void 0){if(Jt)continue;xt=!1;break}if(at){if(!we(O,function(Bt,ar){if(!ve(at,ar)&&(mt===Bt||Ie(mt,Bt,F,Y,se)))return at.push(ar)})){xt=!1;break}}else if(!(mt===wt||Ie(mt,wt,F,Y,se))){xt=!1;break}}return se.delete(p),se.delete(O),xt}function oy(p,O,F,Y,Ie,se,Re){switch(F){case J:if(p.byteLength!=O.byteLength||p.byteOffset!=O.byteOffset)return!1;p=p.buffer,O=O.buffer;case G:return!(p.byteLength!=O.byteLength||!se(new St(p),new St(O)));case g:case D:case N:return Ka(+p,+O);case C:return p.name==O.name&&p.message==O.message;case m:case o:return p==O+"";case P:var tt=de;case b:var st=Y&n;if(tt||(tt=he),p.size!=O.size&&!st)return!1;var Te=Re.get(p);if(Te)return Te==O;Y|=s,Re.set(p,O);var vt=za(tt(p),tt(O),Y,Ie,se,Re);return Re.delete(p),vt;case d:if(Be)return Be.call(p)==Be.call(O)}return!1}function ay(p,O,F,Y,Ie,se){var Re=F&n,tt=Ha(p),st=tt.length,Te=Ha(O),vt=Te.length;if(st!=vt&&!Re)return!1;for(var xt=st;xt--;){var at=tt[xt];if(!(Re?at in O:ne.call(O,at)))return!1}var mt=se.get(p);if(mt&&se.get(O))return mt==O;var wt=!0;se.set(p,O),se.set(O,p);for(var Jt=Re;++xt<st;){at=tt[xt];var Bt=p[at],ar=O[at];if(Y)var Ya=Re?Y(ar,Bt,at,O,p,se):Y(Bt,ar,at,p,O,se);if(!(Ya===void 0?Bt===ar||Ie(Bt,ar,F,Y,se):Ya)){wt=!1;break}Jt||(Jt=at=="constructor")}if(wt&&!Jt){var Ei=p.constructor,Di=O.constructor;Ei!=Di&&"constructor"in p&&"constructor"in O&&!(typeof Ei=="function"&&Ei instanceof Ei&&typeof Di=="function"&&Di instanceof Di)&&(wt=!1)}return se.delete(p),se.delete(O),wt}function Ha(p){return ty(p,_y,hy)}function mi(p,O){var F=p.__data__;return fy(O)?F[typeof O=="string"?"string":"hash"]:F.map}function vr(p,O){var F=ge(p,O);return iy(F)?F:void 0}function cy(p){var O=ne.call(p,yt),F=p[yt];try{p[yt]=void 0;var Y=!0}catch{}var Ie=me.call(p);return Y&&(O?p[yt]=F:delete p[yt]),Ie}var hy=nr?function(p){return p==null?[]:(p=Object(p),_e(nr(p),function(O){return Nt.call(p,O)}))}:by,kt=Vr;(Ue&&kt(new Ue(new ArrayBuffer(1)))!=J||Ne&&kt(new Ne)!=P||Me&&kt(Me.resolve())!=I||je&&kt(new je)!=b||$e&&kt(new $e)!=K)&&(kt=function(p){var O=Vr(p),F=O==E?p.constructor:void 0,Y=F?or(F):"";if(Y)switch(Y){case Ye:return J;case ke:return P;case Je:return I;case Xe:return b;case Ze:return K}return O});function uy(p,O){return O=O??c,!!O&&(typeof p=="number"||te.test(p))&&p>-1&&p%1==0&&p<O}function fy(p){var O=typeof p;return O=="string"||O=="number"||O=="symbol"||O=="boolean"?p!=="__proto__":p===null}function ly(p){return!!be&&be in p}function dy(p){var O=p&&p.constructor,F=typeof O=="function"&&O.prototype||ie;return p===F}function py(p){return me.call(p)}function or(p){if(p!=null){try{return ye.call(p)}catch{}try{return p+""}catch{}}return""}function Ka(p,O){return p===O||p!==p&&O!==O}var gy=$a(function(){return arguments}())?$a:function(p){return Gr(p)&&ne.call(p,"callee")&&!Nt.call(p,"callee")},wi=Array.isArray;function yy(p){return p!=null&&Va(p.length)&&!qa(p)}var Mn=qr||my;function vy(p,O){return Ba(p,O)}function qa(p){if(!Ga(p))return!1;var O=Vr(p);return O==S||O==w||O==f||O==y}function Va(p){return typeof p=="number"&&p>-1&&p%1==0&&p<=c}function Ga(p){var O=typeof p;return p!=null&&(O=="object"||O=="function")}function Gr(p){return p!=null&&typeof p=="object"}var Wa=le?Ce(le):ny;function _y(p){return yy(p)?ey(p):sy(p)}function by(){return[]}function my(){return!1}t.exports=vy})(On,On.exports);var Kd=On.exports,qd=Object.defineProperty,ko=Object.getOwnPropertySymbols,Vd=Object.prototype.hasOwnProperty,Gd=Object.prototype.propertyIsEnumerable,Jo=(t,e,r)=>e in t?qd(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,ut=(t,e)=>{for(var r in e||(e={}))Vd.call(e,r)&&Jo(t,r,e[r]);if(ko)for(var r of ko(e))Gd.call(e,r)&&Jo(t,r,e[r]);return t};function Ve(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}var rr=Ve;Ve.EventEmitter=Ve,Ve.prototype._events=void 0,Ve.prototype._maxListeners=void 0,Ve.defaultMaxListeners=10,Ve.prototype.setMaxListeners=function(t){if(!Wd(t)||t<0||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},Ve.prototype.emit=function(t){var e,r,i,n,s,c;if(this._events||(this._events={}),t==="error"&&(!this._events.error||$r(this._events.error)&&!this._events.error.length)){if(e=arguments[1],e instanceof Error)throw e;var h=new Error('Uncaught, unspecified "error" event. ('+e+")");throw h.context=e,h}if(r=this._events[t],Xo(r))return!1;if(Ut(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:n=Array.prototype.slice.call(arguments,1),r.apply(this,n)}else if($r(r))for(n=Array.prototype.slice.call(arguments,1),c=r.slice(),i=c.length,s=0;s<i;s++)c[s].apply(this,n);return!0},Ve.prototype.addListener=function(t,e){var r;if(!Ut(e))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",t,Ut(e.listener)?e.listener:e),this._events[t]?$r(this._events[t])?this._events[t].push(e):this._events[t]=[this._events[t],e]:this._events[t]=e,$r(this._events[t])&&!this._events[t].warned&&(Xo(this._maxListeners)?r=Ve.defaultMaxListeners:r=this._maxListeners,r&&r>0&&this._events[t].length>r&&(this._events[t].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[t].length),typeof console.trace=="function"&&console.trace())),this},Ve.prototype.on=Ve.prototype.addListener,Ve.prototype.once=function(t,e){if(!Ut(e))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(t,i),r||(r=!0,e.apply(this,arguments))}return i.listener=e,this.on(t,i),this},Ve.prototype.removeListener=function(t,e){var r,i,n,s;if(!Ut(e))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(r=this._events[t],n=r.length,i=-1,r===e||Ut(r.listener)&&r.listener===e)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,e);else if($r(r)){for(s=n;s-- >0;)if(r[s]===e||r[s].listener&&r[s].listener===e){i=s;break}if(i<0)return this;r.length===1?(r.length=0,delete this._events[t]):r.splice(i,1),this._events.removeListener&&this.emit("removeListener",t,e)}return this},Ve.prototype.removeAllListeners=function(t){var e,r;if(!this._events)return this;if(!this._events.removeListener)return arguments.length===0?this._events={}:this._events[t]&&delete this._events[t],this;if(arguments.length===0){for(e in this._events)e!=="removeListener"&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(r=this._events[t],Ut(r))this.removeListener(t,r);else if(r)for(;r.length;)this.removeListener(t,r[r.length-1]);return delete this._events[t],this},Ve.prototype.listeners=function(t){var e;return!this._events||!this._events[t]?e=[]:Ut(this._events[t])?e=[this._events[t]]:e=this._events[t].slice(),e},Ve.prototype.listenerCount=function(t){if(this._events){var e=this._events[t];if(Ut(e))return 1;if(e)return e.length}return 0},Ve.listenerCount=function(t,e){return t.listenerCount(e)};function Ut(t){return typeof t=="function"}function Wd(t){return typeof t=="number"}function $r(t){return typeof t=="object"&&t!==null}function Xo(t){return t===void 0}function Yd(t,e){if(t.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),i=0;i<r.length;i++)r[i]=255;for(var n=0;n<t.length;n++){var s=t.charAt(n),c=s.charCodeAt(0);if(r[c]!==255)throw new TypeError(s+" is ambiguous");r[c]=n}var h=t.length,u=t.charAt(0),f=Math.log(h)/Math.log(256),g=Math.log(256)/Math.log(h);function D(w){if(w instanceof Uint8Array||(ArrayBuffer.isView(w)?w=new Uint8Array(w.buffer,w.byteOffset,w.byteLength):Array.isArray(w)&&(w=Uint8Array.from(w))),!(w instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(w.length===0)return"";for(var P=0,N=0,j=0,E=w.length;j!==E&&w[j]===0;)j++,P++;for(var I=(E-j)*g+1>>>0,y=new Uint8Array(I);j!==E;){for(var m=w[j],b=0,o=I-1;(m!==0||b<N)&&o!==-1;o--,b++)m+=256*y[o]>>>0,y[o]=m%h>>>0,m=m/h>>>0;if(m!==0)throw new Error("Non-zero carry");N=b,j++}for(var d=I-N;d!==I&&y[d]===0;)d++;for(var M=u.repeat(P);d<I;++d)M+=t.charAt(y[d]);return M}function C(w){if(typeof w!="string")throw new TypeError("Expected String");if(w.length===0)return new Uint8Array;var P=0;if(w[P]!==" "){for(var N=0,j=0;w[P]===u;)N++,P++;for(var E=(w.length-P)*f+1>>>0,I=new Uint8Array(E);w[P];){var y=r[w.charCodeAt(P)];if(y===255)return;for(var m=0,b=E-1;(y!==0||m<j)&&b!==-1;b--,m++)y+=h*I[b]>>>0,I[b]=y%256>>>0,y=y/256>>>0;if(y!==0)throw new Error("Non-zero carry");j=m,P++}if(w[P]!==" "){for(var o=E-j;o!==E&&I[o]===0;)o++;for(var d=new Uint8Array(N+(E-o)),M=N;o!==E;)d[M++]=I[o++];return d}}}function S(w){var P=C(w);if(P)return P;throw new Error(`Non-${e} character`)}return{encode:D,decodeUnsafe:C,decode:S}}var kd=Yd,Jd=kd;const Zo=t=>{if(t instanceof Uint8Array&&t.constructor.name==="Uint8Array")return t;if(t instanceof ArrayBuffer)return new Uint8Array(t);if(ArrayBuffer.isView(t))return new Uint8Array(t.buffer,t.byteOffset,t.byteLength);throw new Error("Unknown type, must be binary type")},Xd=t=>new TextEncoder().encode(t),Zd=t=>new TextDecoder().decode(t);class Qd{constructor(e,r,i){this.name=e,this.prefix=r,this.baseEncode=i}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class ep{constructor(e,r,i){if(this.name=e,this.prefix=r,r.codePointAt(0)===void 0)throw new Error("Invalid prefix character");this.prefixCodePoint=r.codePointAt(0),this.baseDecode=i}decode(e){if(typeof e=="string"){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}else throw Error("Can only multibase decode strings")}or(e){return Qo(this,e)}}class tp{constructor(e){this.decoders=e}or(e){return Qo(this,e)}decode(e){const r=e[0],i=this.decoders[r];if(i)return i.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const Qo=(t,e)=>new tp(ut(ut({},t.decoders||{[t.prefix]:t}),e.decoders||{[e.prefix]:e}));class rp{constructor(e,r,i,n){this.name=e,this.prefix=r,this.baseEncode=i,this.baseDecode=n,this.encoder=new Qd(e,r,i),this.decoder=new ep(e,r,n)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const di=({name:t,prefix:e,encode:r,decode:i})=>new rp(t,e,r,i),Br=({prefix:t,name:e,alphabet:r})=>{const{encode:i,decode:n}=Jd(r,e);return di({prefix:t,name:e,encode:i,decode:s=>Zo(n(s))})},ip=(t,e,r,i)=>{const n={};for(let g=0;g<e.length;++g)n[e[g]]=g;let s=t.length;for(;t[s-1]==="=";)--s;const c=new Uint8Array(s*r/8|0);let h=0,u=0,f=0;for(let g=0;g<s;++g){const D=n[t[g]];if(D===void 0)throw new SyntaxError(`Non-${i} character`);u=u<<r|D,h+=r,h>=8&&(h-=8,c[f++]=255&u>>h)}if(h>=r||255&u<<8-h)throw new SyntaxError("Unexpected end of data");return c},np=(t,e,r)=>{const i=e[e.length-1]==="=",n=(1<<r)-1;let s="",c=0,h=0;for(let u=0;u<t.length;++u)for(h=h<<8|t[u],c+=8;c>r;)c-=r,s+=e[n&h>>c];if(c&&(s+=e[n&h<<r-c]),i)for(;s.length*r&7;)s+="=";return s},nt=({name:t,prefix:e,bitsPerChar:r,alphabet:i})=>di({prefix:e,name:t,encode(n){return np(n,i,r)},decode(n){return ip(n,i,r,t)}}),sp=di({prefix:"\0",name:"identity",encode:t=>Zd(t),decode:t=>Xd(t)});var op=Object.freeze({__proto__:null,identity:sp});const ap=nt({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var cp=Object.freeze({__proto__:null,base2:ap});const hp=nt({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var up=Object.freeze({__proto__:null,base8:hp});const fp=Br({prefix:"9",name:"base10",alphabet:"0123456789"});var lp=Object.freeze({__proto__:null,base10:fp});const dp=nt({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),pp=nt({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var gp=Object.freeze({__proto__:null,base16:dp,base16upper:pp});const yp=nt({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),vp=nt({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),_p=nt({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),bp=nt({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),mp=nt({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),wp=nt({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Ep=nt({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Dp=nt({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Sp=nt({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var xp=Object.freeze({__proto__:null,base32:yp,base32upper:vp,base32pad:_p,base32padupper:bp,base32hex:mp,base32hexupper:wp,base32hexpad:Ep,base32hexpadupper:Dp,base32z:Sp});const Op=Br({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Ip=Br({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var Ap=Object.freeze({__proto__:null,base36:Op,base36upper:Ip});const Tp=Br({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Cp=Br({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Np=Object.freeze({__proto__:null,base58btc:Tp,base58flickr:Cp});const Lp=nt({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Rp=nt({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Pp=nt({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Fp=nt({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Up=Object.freeze({__proto__:null,base64:Lp,base64pad:Rp,base64url:Pp,base64urlpad:Fp});const ea=Array.from("\u{1F680}\u{1FA90}\u2604\u{1F6F0}\u{1F30C}\u{1F311}\u{1F312}\u{1F313}\u{1F314}\u{1F315}\u{1F316}\u{1F317}\u{1F318}\u{1F30D}\u{1F30F}\u{1F30E}\u{1F409}\u2600\u{1F4BB}\u{1F5A5}\u{1F4BE}\u{1F4BF}\u{1F602}\u2764\u{1F60D}\u{1F923}\u{1F60A}\u{1F64F}\u{1F495}\u{1F62D}\u{1F618}\u{1F44D}\u{1F605}\u{1F44F}\u{1F601}\u{1F525}\u{1F970}\u{1F494}\u{1F496}\u{1F499}\u{1F622}\u{1F914}\u{1F606}\u{1F644}\u{1F4AA}\u{1F609}\u263A\u{1F44C}\u{1F917}\u{1F49C}\u{1F614}\u{1F60E}\u{1F607}\u{1F339}\u{1F926}\u{1F389}\u{1F49E}\u270C\u2728\u{1F937}\u{1F631}\u{1F60C}\u{1F338}\u{1F64C}\u{1F60B}\u{1F497}\u{1F49A}\u{1F60F}\u{1F49B}\u{1F642}\u{1F493}\u{1F929}\u{1F604}\u{1F600}\u{1F5A4}\u{1F603}\u{1F4AF}\u{1F648}\u{1F447}\u{1F3B6}\u{1F612}\u{1F92D}\u2763\u{1F61C}\u{1F48B}\u{1F440}\u{1F62A}\u{1F611}\u{1F4A5}\u{1F64B}\u{1F61E}\u{1F629}\u{1F621}\u{1F92A}\u{1F44A}\u{1F973}\u{1F625}\u{1F924}\u{1F449}\u{1F483}\u{1F633}\u270B\u{1F61A}\u{1F61D}\u{1F634}\u{1F31F}\u{1F62C}\u{1F643}\u{1F340}\u{1F337}\u{1F63B}\u{1F613}\u2B50\u2705\u{1F97A}\u{1F308}\u{1F608}\u{1F918}\u{1F4A6}\u2714\u{1F623}\u{1F3C3}\u{1F490}\u2639\u{1F38A}\u{1F498}\u{1F620}\u261D\u{1F615}\u{1F33A}\u{1F382}\u{1F33B}\u{1F610}\u{1F595}\u{1F49D}\u{1F64A}\u{1F639}\u{1F5E3}\u{1F4AB}\u{1F480}\u{1F451}\u{1F3B5}\u{1F91E}\u{1F61B}\u{1F534}\u{1F624}\u{1F33C}\u{1F62B}\u26BD\u{1F919}\u2615\u{1F3C6}\u{1F92B}\u{1F448}\u{1F62E}\u{1F646}\u{1F37B}\u{1F343}\u{1F436}\u{1F481}\u{1F632}\u{1F33F}\u{1F9E1}\u{1F381}\u26A1\u{1F31E}\u{1F388}\u274C\u270A\u{1F44B}\u{1F630}\u{1F928}\u{1F636}\u{1F91D}\u{1F6B6}\u{1F4B0}\u{1F353}\u{1F4A2}\u{1F91F}\u{1F641}\u{1F6A8}\u{1F4A8}\u{1F92C}\u2708\u{1F380}\u{1F37A}\u{1F913}\u{1F619}\u{1F49F}\u{1F331}\u{1F616}\u{1F476}\u{1F974}\u25B6\u27A1\u2753\u{1F48E}\u{1F4B8}\u2B07\u{1F628}\u{1F31A}\u{1F98B}\u{1F637}\u{1F57A}\u26A0\u{1F645}\u{1F61F}\u{1F635}\u{1F44E}\u{1F932}\u{1F920}\u{1F927}\u{1F4CC}\u{1F535}\u{1F485}\u{1F9D0}\u{1F43E}\u{1F352}\u{1F617}\u{1F911}\u{1F30A}\u{1F92F}\u{1F437}\u260E\u{1F4A7}\u{1F62F}\u{1F486}\u{1F446}\u{1F3A4}\u{1F647}\u{1F351}\u2744\u{1F334}\u{1F4A3}\u{1F438}\u{1F48C}\u{1F4CD}\u{1F940}\u{1F922}\u{1F445}\u{1F4A1}\u{1F4A9}\u{1F450}\u{1F4F8}\u{1F47B}\u{1F910}\u{1F92E}\u{1F3BC}\u{1F975}\u{1F6A9}\u{1F34E}\u{1F34A}\u{1F47C}\u{1F48D}\u{1F4E3}\u{1F942}"),Mp=ea.reduce((t,e,r)=>(t[r]=e,t),[]),jp=ea.reduce((t,e,r)=>(t[e.codePointAt(0)]=r,t),[]);function $p(t){return t.reduce((e,r)=>(e+=Mp[r],e),"")}function Bp(t){const e=[];for(const r of t){const i=jp[r.codePointAt(0)];if(i===void 0)throw new Error(`Non-base256emoji character: ${r}`);e.push(i)}return new Uint8Array(e)}const zp=di({prefix:"\u{1F680}",name:"base256emoji",encode:$p,decode:Bp});var Hp=Object.freeze({__proto__:null,base256emoji:zp}),Kp=ra,ta=128,qp=127,Vp=~qp,Gp=Math.pow(2,31);function ra(t,e,r){e=e||[],r=r||0;for(var i=r;t>=Gp;)e[r++]=t&255|ta,t/=128;for(;t&Vp;)e[r++]=t&255|ta,t>>>=7;return e[r]=t|0,ra.bytes=r-i+1,e}var Wp=In,Yp=128,ia=127;function In(t,i){var r=0,i=i||0,n=0,s=i,c,h=t.length;do{if(s>=h)throw In.bytes=0,new RangeError("Could not decode varint");c=t[s++],r+=n<28?(c&ia)<<n:(c&ia)*Math.pow(2,n),n+=7}while(c>=Yp);return In.bytes=s-i,r}var kp=Math.pow(2,7),Jp=Math.pow(2,14),Xp=Math.pow(2,21),Zp=Math.pow(2,28),Qp=Math.pow(2,35),eg=Math.pow(2,42),tg=Math.pow(2,49),rg=Math.pow(2,56),ig=Math.pow(2,63),ng=function(t){return t<kp?1:t<Jp?2:t<Xp?3:t<Zp?4:t<Qp?5:t<eg?6:t<tg?7:t<rg?8:t<ig?9:10},sg={encode:Kp,decode:Wp,encodingLength:ng},na=sg;const sa=(t,e,r=0)=>(na.encode(t,e,r),e),oa=t=>na.encodingLength(t),An=(t,e)=>{const r=e.byteLength,i=oa(t),n=i+oa(r),s=new Uint8Array(n+r);return sa(t,s,0),sa(r,s,i),s.set(e,n),new og(t,r,e,s)};class og{constructor(e,r,i,n){this.code=e,this.size=r,this.digest=i,this.bytes=n}}const aa=({name:t,code:e,encode:r})=>new ag(t,e,r);class ag{constructor(e,r,i){this.name=e,this.code=r,this.encode=i}digest(e){if(e instanceof Uint8Array){const r=this.encode(e);return r instanceof Uint8Array?An(this.code,r):r.then(i=>An(this.code,i))}else throw Error("Unknown type, must be binary type")}}const ca=t=>async e=>new Uint8Array(await crypto.subtle.digest(t,e)),cg=aa({name:"sha2-256",code:18,encode:ca("SHA-256")}),hg=aa({name:"sha2-512",code:19,encode:ca("SHA-512")});var ug=Object.freeze({__proto__:null,sha256:cg,sha512:hg});const ha=0,fg="identity",ua=Zo;var lg=Object.freeze({__proto__:null,identity:{code:ha,name:fg,encode:ua,digest:t=>An(ha,ua(t))}});new TextEncoder,new TextDecoder;const fa=ut(ut(ut(ut(ut(ut(ut(ut(ut(ut({},op),cp),up),lp),gp),xp),Ap),Np),Up),Hp);ut(ut({},ug),lg);function dg(t=0){return globalThis.Buffer!=null&&globalThis.Buffer.allocUnsafe!=null?globalThis.Buffer.allocUnsafe(t):new Uint8Array(t)}function la(t,e,r,i){return{name:t,prefix:e,encoder:{name:t,prefix:e,encode:r},decoder:{decode:i}}}const da=la("utf8","u",t=>{const e=new TextDecoder("utf8");return"u"+e.decode(t)},t=>new TextEncoder().encode(t.substring(1))),Tn=la("ascii","a",t=>{let e="a";for(let r=0;r<t.length;r++)e+=String.fromCharCode(t[r]);return e},t=>{t=t.substring(1);const e=dg(t.length);for(let r=0;r<t.length;r++)e[r]=t.charCodeAt(r);return e}),pg=ut({utf8:da,"utf-8":da,hex:fa.base16,latin1:Tn,ascii:Tn,binary:Tn},fa);function gg(t,e="utf8"){const r=pg[e];if(!r)throw new Error(`Unsupported encoding "${e}"`);return(e==="utf8"||e==="utf-8")&&globalThis.Buffer!=null&&globalThis.Buffer.from!=null?globalThis.Buffer.from(t,"utf8"):r.decoder.decode(`${r.prefix}${t}`)}const pa="wc",yg=2,Cn="core",Vt=`${pa}@${2}:${Cn}:`,vg={name:Cn,logger:"error"},_g={database:":memory:"},bg="crypto",ga="client_ed25519_seed",mg=Q.ONE_DAY,wg="keychain",Eg="0.3",Dg="messages",Sg="0.3",xg=Q.SIX_HOURS,Og="publisher",ya="irn",Ig="error",Ag="wss://relay.walletconnect.com",Tg="relayer",gr={message:"relayer_message",connect:"relayer_connect",disconnect:"relayer_disconnect",error:"relayer_error"},Cg="_subscription",yr={payload:"payload",connect:"connect",disconnect:"disconnect",error:"error"},Ng=Q.ONE_SECOND,Lg="2.0.0",Rg="0.3",ir={created:"subscription_created",deleted:"subscription_deleted",expired:"subscription_expired",disabled:"subscription_disabled",sync:"subscription_sync"},Pg="subscription",Fg="0.3",Ug=Q.FIVE_SECONDS*1e3,Mg="pairing",jg="0.3",zr={wc_pairingDelete:{req:{ttl:Q.ONE_DAY,prompt:!1,tag:1e3},res:{ttl:Q.ONE_DAY,prompt:!1,tag:1001}},wc_pairingPing:{req:{ttl:Q.THIRTY_SECONDS,prompt:!1,tag:1002},res:{ttl:Q.THIRTY_SECONDS,prompt:!1,tag:1003}},unregistered_method:{req:{ttl:Q.ONE_DAY,prompt:!1,tag:0},res:{ttl:Q.ONE_DAY,prompt:!1,tag:0}}},Tt={created:"history_created",updated:"history_updated",deleted:"history_deleted",sync:"history_sync"},$g="history",Bg="0.3",zg="expirer",bt={created:"expirer_created",deleted:"expirer_deleted",expired:"expirer_expired",sync:"expirer_sync"},Hg="0.3";class Kg{constructor(e,r){this.core=e,this.logger=r,this.keychain=new Map,this.name=wg,this.version=Eg,this.initialized=!1,this.storagePrefix=Vt,this.init=async()=>{if(!this.initialized){const i=await this.getKeyChain();typeof i<"u"&&(this.keychain=i),this.initialized=!0}},this.has=i=>(this.isInitialized(),this.keychain.has(i)),this.set=async(i,n)=>{this.isInitialized(),this.keychain.set(i,n),await this.persist()},this.get=i=>{this.isInitialized();const n=this.keychain.get(i);if(typeof n>"u"){const{message:s}=V("NO_MATCHING_KEY",`${this.name}: ${i}`);throw new Error(s)}return n},this.del=async i=>{this.isInitialized(),this.keychain.delete(i),await this.persist()},this.core=e,this.logger=xe.generateChildLogger(r,this.name)}get context(){return xe.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,ao(e))}async getKeyChain(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?co(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){const{message:e}=V("NOT_INITIALIZED",this.name);throw new Error(e)}}}class qg{constructor(e,r,i){this.core=e,this.logger=r,this.name=bg,this.initialized=!1,this.init=async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)},this.hasKeys=n=>(this.isInitialized(),this.keychain.has(n)),this.getClientId=async()=>{this.isInitialized();const n=await this.getClientSeed(),s=Wo(n);return Go(s.publicKey)},this.generateKeyPair=()=>{this.isInitialized();const n=lf();return this.setPrivateKey(n.publicKey,n.privateKey)},this.signJWT=async n=>{this.isInitialized();const s=await this.getClientSeed(),c=Wo(s),h=nn();return await Bd(h,n,mg,c)},this.generateSharedKey=(n,s,c)=>{this.isInitialized();const h=this.getPrivateKey(n),u=df(h,s);return this.setSymKey(u,c)},this.setSymKey=async(n,s)=>{this.isInitialized();const c=s||pf(n);return await this.keychain.set(c,n),c},this.deleteKeyPair=async n=>{this.isInitialized(),await this.keychain.del(n)},this.deleteSymKey=async n=>{this.isInitialized(),await this.keychain.del(n)},this.encode=async(n,s,c)=>{this.isInitialized();const h=to(c),u=Er(s);if(ro(h)){const C=h.senderPublicKey,S=h.receiverPublicKey;n=await this.generateSharedKey(C,S)}const f=this.getSymKey(n),{type:g,senderPublicKey:D}=h;return yf({type:g,symKey:f,message:u,senderPublicKey:D})},this.decode=async(n,s,c)=>{this.isInitialized();const h=bf(s,c);if(ro(h)){const g=h.receiverPublicKey,D=h.senderPublicKey;n=await this.generateSharedKey(g,D)}const u=this.getSymKey(n),f=vf({symKey:u,encoded:s});return Ni(f)},this.core=e,this.logger=xe.generateChildLogger(r,this.name),this.keychain=i||new Kg(this.core,this.logger)}get context(){return xe.getLoggerContext(this.logger)}getPayloadType(e){const r=sn(e);return Ar(r.type)}async setPrivateKey(e,r){return await this.keychain.set(e,r),e}getPrivateKey(e){return this.keychain.get(e)}async getClientSeed(){let e="";try{e=this.keychain.get(ga)}catch{e=nn(),await this.keychain.set(ga,e)}return gg(e,"base16")}getSymKey(e){return this.keychain.get(e)}isInitialized(){if(!this.initialized){const{message:e}=V("NOT_INITIALIZED",this.name);throw new Error(e)}}}class Vg extends fd{constructor(e,r){super(e,r),this.logger=e,this.core=r,this.messages=new Map,this.name=Dg,this.version=Sg,this.initialized=!1,this.storagePrefix=Vt,this.init=async()=>{if(!this.initialized){this.logger.trace("Initialized");try{const i=await this.getRelayerMessages();typeof i<"u"&&(this.messages=i),this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:"method",method:"restore",size:this.messages.size})}catch(i){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(i)}finally{this.initialized=!0}}},this.set=async(i,n)=>{this.isInitialized();const s=ri(n);let c=this.messages.get(i);return typeof c>"u"&&(c={}),typeof c[s]<"u"||(c[s]=n,this.messages.set(i,c),await this.persist()),s},this.get=i=>{this.isInitialized();let n=this.messages.get(i);return typeof n>"u"&&(n={}),n},this.has=(i,n)=>{this.isInitialized();const s=this.get(i),c=ri(n);return typeof s[c]<"u"},this.del=async i=>{this.isInitialized(),this.messages.delete(i),await this.persist()},this.logger=xe.generateChildLogger(e,this.name),this.core=r}get context(){return xe.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}async setRelayerMessages(e){await this.core.storage.setItem(this.storageKey,ao(e))}async getRelayerMessages(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?co(e):void 0}async persist(){await this.setRelayerMessages(this.messages)}isInitialized(){if(!this.initialized){const{message:e}=V("NOT_INITIALIZED",this.name);throw new Error(e)}}}class Gg extends ld{constructor(e,r){super(e,r),this.relayer=e,this.logger=r,this.events=new rr.EventEmitter,this.name=Og,this.queue=new Map,this.publish=async(i,n,s)=>{this.logger.debug("Publishing Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:i,message:n,opts:s}});try{const c=s?.ttl||xg,h=on(s),u=s?.prompt||!1,f=s?.tag||0,g={topic:i,message:n,opts:{ttl:c,relay:h,prompt:u,tag:f}},D=ri(n);this.queue.set(D,g),await this.rpcPublish(i,n,c,h,u,f),this.onPublish(D,g),this.logger.debug("Successfully Published Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:i,message:n,opts:s}})}catch(c){throw this.logger.debug("Failed to Publish Payload"),this.logger.error(c),c}},this.on=(i,n)=>{this.events.on(i,n)},this.once=(i,n)=>{this.events.once(i,n)},this.off=(i,n)=>{this.events.off(i,n)},this.removeListener=(i,n)=>{this.events.removeListener(i,n)},this.relayer=e,this.logger=xe.generateChildLogger(r,this.name),this.registerEventListeners()}get context(){return xe.getLoggerContext(this.logger)}rpcPublish(e,r,i,n,s,c){var h,u,f,g;const D={method:an(n.protocol).publish,params:{topic:e,message:r,ttl:i,prompt:s,tag:c}};return _t((h=D.params)==null?void 0:h.prompt)&&((u=D.params)==null||delete u.prompt),_t((f=D.params)==null?void 0:f.tag)&&((g=D.params)==null||delete g.tag),this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"message",direction:"outgoing",request:D}),this.relayer.provider.request(D)}onPublish(e,r){this.queue.delete(e)}checkQueue(){this.queue.forEach(async e=>{const{topic:r,message:i,opts:{ttl:n,relay:s,prompt:c,tag:h}}=e,u=ri(i);await this.rpcPublish(r,i,n,s,c,h),this.onPublish(u,e)})}registerEventListeners(){this.relayer.core.heartbeat.on(Mr.HEARTBEAT_EVENTS.pulse,()=>{this.checkQueue()})}}class Wg{constructor(){this.map=new Map,this.set=(e,r)=>{const i=this.get(e);this.exists(e,r)||this.map.set(e,[...i,r])},this.get=e=>this.map.get(e)||[],this.exists=(e,r)=>this.get(e).includes(r),this.delete=(e,r)=>{if(typeof r>"u"){this.map.delete(e);return}if(!this.map.has(e))return;const i=this.get(e);if(!this.exists(e,r))return;const n=i.filter(s=>s!==r);if(!n.length){this.map.delete(e);return}this.map.set(e,n)},this.clear=()=>{this.map.clear()}}get topics(){return Array.from(this.map.keys())}}var Yg=Object.defineProperty,kg=Object.defineProperties,Jg=Object.getOwnPropertyDescriptors,va=Object.getOwnPropertySymbols,Xg=Object.prototype.hasOwnProperty,Zg=Object.prototype.propertyIsEnumerable,_a=(t,e,r)=>e in t?Yg(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,pi=(t,e)=>{for(var r in e||(e={}))Xg.call(e,r)&&_a(t,r,e[r]);if(va)for(var r of va(e))Zg.call(e,r)&&_a(t,r,e[r]);return t},Nn=(t,e)=>kg(t,Jg(e));class Qg extends gd{constructor(e,r){super(e,r),this.relayer=e,this.logger=r,this.subscriptions=new Map,this.topicMap=new Wg,this.events=new rr.EventEmitter,this.name=Pg,this.version=Fg,this.pending=new Map,this.cached=[],this.initialized=!1,this.pendingSubscriptionWatchLabel="pending_sub_watch_label",this.pendingSubInterval=20,this.storagePrefix=Vt,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),await this.reset(),this.registerEventListeners(),this.onEnable())},this.subscribe=async(i,n)=>{this.isInitialized(),this.logger.debug("Subscribing Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:i,opts:n}});try{const s=on(n),c={topic:i,relay:s};this.pending.set(i,c);const h=await this.rpcSubscribe(i,s);return this.onSubscribe(h,c),this.logger.debug("Successfully Subscribed Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:i,opts:n}}),h}catch(s){throw this.logger.debug("Failed to Subscribe Topic"),this.logger.error(s),s}},this.unsubscribe=async(i,n)=>{this.isInitialized(),typeof n?.id<"u"?await this.unsubscribeById(i,n.id,n):await this.unsubscribeByTopic(i,n)},this.isSubscribed=async i=>this.topics.includes(i)?!0:await new Promise((n,s)=>{const c=new Q.Watch;c.start(this.pendingSubscriptionWatchLabel);const h=setInterval(()=>{!this.pending.has(i)&&this.topics.includes(i)&&(clearInterval(h),c.stop(this.pendingSubscriptionWatchLabel),n(!0)),c.elapsed(this.pendingSubscriptionWatchLabel)>=Ug&&(clearInterval(h),c.stop(this.pendingSubscriptionWatchLabel),s(!1))},this.pendingSubInterval)}),this.on=(i,n)=>{this.events.on(i,n)},this.once=(i,n)=>{this.events.once(i,n)},this.off=(i,n)=>{this.events.off(i,n)},this.removeListener=(i,n)=>{this.events.removeListener(i,n)},this.relayer=e,this.logger=xe.generateChildLogger(r,this.name)}get context(){return xe.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}get length(){return this.subscriptions.size}get ids(){return Array.from(this.subscriptions.keys())}get values(){return Array.from(this.subscriptions.values())}get topics(){return this.topicMap.topics}hasSubscription(e,r){let i=!1;try{i=this.getSubscription(e).topic===r}catch{}return i}onEnable(){this.cached=[],this.initialized=!0}onDisable(){this.cached=this.values,this.subscriptions.clear(),this.topicMap.clear(),this.initialized=!1}async unsubscribeByTopic(e,r){const i=this.topicMap.get(e);await Promise.all(i.map(async n=>await this.unsubscribeById(e,n,r)))}async unsubscribeById(e,r,i){this.logger.debug("Unsubscribing Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:r,opts:i}});try{const n=on(i);await this.rpcUnsubscribe(e,r,n);const s=ze("USER_DISCONNECTED",`${this.name}, ${e}`);await this.onUnsubscribe(e,r,s),this.logger.debug("Successfully Unsubscribed Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:r,opts:i}})}catch(n){throw this.logger.debug("Failed to Unsubscribe Topic"),this.logger.error(n),n}}async rpcSubscribe(e,r){const i={method:an(r.protocol).subscribe,params:{topic:e}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:i}),await this.relayer.provider.request(i)}rpcUnsubscribe(e,r,i){const n={method:an(i.protocol).unsubscribe,params:{topic:e,id:r}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:n}),this.relayer.provider.request(n)}onSubscribe(e,r){this.setSubscription(e,Nn(pi({},r),{id:e})),this.pending.delete(r.topic)}onResubscribe(e,r){this.addSubscription(e,Nn(pi({},r),{id:e})),this.pending.delete(r.topic)}async onUnsubscribe(e,r,i){this.events.removeAllListeners(r),this.hasSubscription(r,e)&&this.deleteSubscription(r,i),await this.relayer.messages.del(e)}async setRelayerSubscriptions(e){await this.relayer.core.storage.setItem(this.storageKey,e)}async getRelayerSubscriptions(){return await this.relayer.core.storage.getItem(this.storageKey)}setSubscription(e,r){this.subscriptions.has(e)||(this.logger.debug("Setting subscription"),this.logger.trace({type:"method",method:"setSubscription",id:e,subscription:r}),this.addSubscription(e,r))}addSubscription(e,r){this.subscriptions.set(e,pi({},r)),this.topicMap.set(r.topic,e),this.events.emit(ir.created,r)}getSubscription(e){this.logger.debug("Getting subscription"),this.logger.trace({type:"method",method:"getSubscription",id:e});const r=this.subscriptions.get(e);if(!r){const{message:i}=V("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(i)}return r}deleteSubscription(e,r){this.logger.debug("Deleting subscription"),this.logger.trace({type:"method",method:"deleteSubscription",id:e,reason:r});const i=this.getSubscription(e);this.subscriptions.delete(e),this.topicMap.delete(i.topic,e),this.events.emit(ir.deleted,Nn(pi({},i),{reason:r}))}async persist(){await this.setRelayerSubscriptions(this.values),this.events.emit(ir.sync)}async reset(){!this.cached.length||await Promise.all(this.cached.map(async e=>await this.resubscribe(e)))}async restore(){try{const e=await this.getRelayerSubscriptions();if(typeof e>"u"||!e.length)return;if(this.subscriptions.size){const{message:r}=V("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(r),new Error(r)}this.cached=e,this.logger.debug(`Successfully Restored subscriptions for ${this.name}`),this.logger.trace({type:"method",method:"restore",subscriptions:this.values})}catch(e){this.logger.debug(`Failed to Restore subscriptions for ${this.name}`),this.logger.error(e)}}async resubscribe(e){if(!this.ids.includes(e.id)){const{topic:r,relay:i}=e,n={topic:r,relay:i};this.pending.set(n.topic,n);const s=await this.rpcSubscribe(n.topic,n.relay);this.onResubscribe(s,n)}}async onConnect(){await this.reset(),this.onEnable()}onDisconnect(){this.onDisable()}checkPending(){this.pending.forEach(async e=>{const r=await this.rpcSubscribe(e.topic,e.relay);this.onSubscribe(r,e)})}registerEventListeners(){this.relayer.core.heartbeat.on(Mr.HEARTBEAT_EVENTS.pulse,()=>{this.checkPending()}),this.relayer.provider.on(yr.connect,async()=>{await this.onConnect()}),this.relayer.provider.on(yr.disconnect,()=>{this.onDisconnect()}),this.events.on(ir.created,async e=>{const r=ir.created;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,data:e}),await this.persist()}),this.events.on(ir.deleted,async e=>{const r=ir.deleted;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,data:e}),await this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=V("NOT_INITIALIZED",this.name);throw new Error(e)}}}var e0=Object.defineProperty,ba=Object.getOwnPropertySymbols,t0=Object.prototype.hasOwnProperty,r0=Object.prototype.propertyIsEnumerable,ma=(t,e,r)=>e in t?e0(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,i0=(t,e)=>{for(var r in e||(e={}))t0.call(e,r)&&ma(t,r,e[r]);if(ba)for(var r of ba(e))r0.call(e,r)&&ma(t,r,e[r]);return t};class n0 extends dd{constructor(e){super(e),this.protocol="wc",this.version=2,this.events=new rr.EventEmitter,this.name=Tg,this.initialized=!1,this.core=e.core,this.logger=typeof e.logger<"u"&&typeof e.logger!="string"?xe.generateChildLogger(e.logger,this.name):fn(xe.getDefaultLoggerOptions({level:e.logger||Ig})),this.messages=new Vg(this.logger,e.core),this.subscriber=new Qg(this,this.logger),this.publisher=new Gg(this,this.logger),this.relayUrl=e?.relayUrl||Ag,this.projectId=e.projectId,this.provider={}}async init(){this.logger.trace("Initialized");const e=await this.core.crypto.signJWT(this.relayUrl);this.provider=this.createProvider(e),await Promise.all([this.messages.init(),this.provider.connect(),this.subscriber.init()]),this.registerEventListeners(),this.initialized=!0}get context(){return xe.getLoggerContext(this.logger)}get connected(){return this.provider.connection.connected}get connecting(){return this.provider.connection.connecting}async publish(e,r,i){this.isInitialized(),await this.publisher.publish(e,r,i),await this.recordMessageEvent({topic:e,message:r})}async subscribe(e,r){return this.isInitialized(),await this.subscriber.subscribe(e,r)}async unsubscribe(e,r){this.isInitialized(),await this.subscriber.unsubscribe(e,r)}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}off(e,r){this.events.off(e,r)}removeListener(e,r){this.events.removeListener(e,r)}createProvider(e){return new Ti(new Hd(Rf({sdkVersion:Lg,protocol:this.protocol,version:this.version,relayUrl:this.relayUrl,projectId:this.projectId,auth:e})))}async recordMessageEvent(e){const{topic:r,message:i}=e;await this.messages.set(r,i)}async shouldIgnoreMessageEvent(e){const{topic:r,message:i}=e;return await this.subscriber.isSubscribed(r)?this.messages.has(r,i):!0}async onProviderPayload(e){if(this.logger.debug("Incoming Relay Payload"),this.logger.trace({type:"payload",direction:"incoming",payload:e}),Ii(e)){if(!e.method.endsWith(Cg))return;const r=e.params,{topic:i,message:n}=r.data,s={topic:i,message:n};this.logger.debug("Emitting Relayer Payload"),this.logger.trace(i0({type:"event",event:r.id},s)),this.events.emit(r.id,s),await this.acknowledgePayload(e),await this.onMessageEvent(s)}}async onMessageEvent(e){await this.shouldIgnoreMessageEvent(e)||(this.events.emit(gr.message,e),await this.recordMessageEvent(e))}async acknowledgePayload(e){const r=Yr(e.id,!0);await this.provider.connection.send(r)}registerEventListeners(){this.provider.on(yr.payload,e=>this.onProviderPayload(e)),this.provider.on(yr.connect,()=>{this.events.emit(gr.connect)}),this.provider.on(yr.disconnect,()=>{this.events.emit(gr.disconnect),setTimeout(()=>{this.provider.connect()},Q.toMiliseconds(Ng))}),this.provider.on(yr.error,e=>this.events.emit(gr.error,e))}isInitialized(){if(!this.initialized){const{message:e}=V("NOT_INITIALIZED",this.name);throw new Error(e)}}}var s0=Object.defineProperty,wa=Object.getOwnPropertySymbols,o0=Object.prototype.hasOwnProperty,a0=Object.prototype.propertyIsEnumerable,Ea=(t,e,r)=>e in t?s0(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Da=(t,e)=>{for(var r in e||(e={}))o0.call(e,r)&&Ea(t,r,e[r]);if(wa)for(var r of wa(e))a0.call(e,r)&&Ea(t,r,e[r]);return t};class Ln extends pd{constructor(e,r,i,n=Vt,s=void 0){super(e,r,i,n),this.core=e,this.logger=r,this.name=i,this.map=new Map,this.version=Rg,this.cached=[],this.initialized=!1,this.storagePrefix=Vt,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(c=>{Qf(c)?this.map.set(c.id,c):el(c)?this.map.set(c.topic,c):this.getKey&&c!==null&&!_t(c)&&this.map.set(this.getKey(c),c)}),this.cached=[],this.initialized=!0)},this.set=async(c,h)=>{this.isInitialized(),this.map.has(c)?await this.update(c,h):(this.logger.debug("Setting value"),this.logger.trace({type:"method",method:"set",key:c,value:h}),this.map.set(c,h),await this.persist())},this.get=c=>(this.isInitialized(),this.logger.debug("Getting value"),this.logger.trace({type:"method",method:"get",key:c}),this.getData(c)),this.getAll=c=>(this.isInitialized(),c?this.values.filter(h=>Object.keys(c).every(u=>Kd(h[u],c[u]))):this.values),this.update=async(c,h)=>{this.isInitialized(),this.logger.debug("Updating value"),this.logger.trace({type:"method",method:"update",key:c,update:h});const u=Da(Da({},this.getData(c)),h);this.map.set(c,u),await this.persist()},this.delete=async(c,h)=>{this.isInitialized(),this.map.has(c)&&(this.logger.debug("Deleting value"),this.logger.trace({type:"method",method:"delete",key:c,reason:h}),this.map.delete(c),await this.persist())},this.logger=xe.generateChildLogger(r,this.name),this.storagePrefix=n,this.getKey=s}get context(){return xe.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}get length(){return this.map.size}get keys(){return Array.from(this.map.keys())}get values(){return Array.from(this.map.values())}async setDataStore(e){await this.core.storage.setItem(this.storageKey,e)}async getDataStore(){return await this.core.storage.getItem(this.storageKey)}getData(e){const r=this.map.get(e);if(!r){const{message:i}=V("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(i),new Error(i)}return r}async persist(){await this.setDataStore(this.values)}async restore(){try{const e=await this.getDataStore();if(typeof e>"u"||!e.length)return;if(this.map.size){const{message:r}=V("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(r),new Error(r)}this.cached=e,this.logger.debug(`Successfully Restored value for ${this.name}`),this.logger.trace({type:"method",method:"restore",value:this.values})}catch(e){this.logger.debug(`Failed to Restore value for ${this.name}`),this.logger.error(e)}}isInitialized(){if(!this.initialized){const{message:e}=V("NOT_INITIALIZED",this.name);throw new Error(e)}}}class c0{constructor(e,r){this.core=e,this.logger=r,this.name=Mg,this.version=jg,this.events=new rr,this.initialized=!1,this.storagePrefix=Vt,this.ignoredPayloadTypes=[Zt],this.registeredMethods=[],this.init=async()=>{this.initialized||(await this.pairings.init(),await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0,this.logger.trace("Initialized"))},this.register=({methods:i})=>{this.isInitialized(),this.registeredMethods=[...new Set([...this.registeredMethods,...i])]},this.create=async()=>{this.isInitialized();const i=nn(),n=await this.core.crypto.setSymKey(i),s=Pt(Q.FIVE_MINUTES),c={protocol:ya},h={topic:n,expiry:s,relay:c,active:!1},u=qf({protocol:this.core.protocol,version:this.core.version,topic:n,symKey:i,relay:c});return await this.pairings.set(n,h),await this.core.relayer.subscribe(n),this.core.expirer.set(n,s),{topic:n,uri:u}},this.pair=async i=>{this.isInitialized(),this.isValidPair(i);const{topic:n,symKey:s,relay:c}=Hf(i.uri),h=Pt(Q.FIVE_MINUTES),u={topic:n,relay:c,expiry:h,active:!1};return await this.pairings.set(n,u),await this.core.crypto.setSymKey(s,n),await this.core.relayer.subscribe(n,{relay:c}),this.core.expirer.set(n,h),i.activatePairing&&await this.activate({topic:n}),u},this.activate=async({topic:i})=>{this.isInitialized();const n=Pt(Q.THIRTY_DAYS);await this.pairings.update(i,{active:!0,expiry:n}),this.core.expirer.set(i,n)},this.ping=async i=>{this.isInitialized(),await this.isValidPing(i);const{topic:n}=i;if(this.pairings.keys.includes(n)){const s=await this.sendRequest(n,"wc_pairingPing",{}),{done:c,resolve:h,reject:u}=Qt();this.events.once(Pe("pairing_ping",s),({error:f})=>{f?u(f):h()}),await c()}},this.updateExpiry=async({topic:i,expiry:n})=>{this.isInitialized(),await this.pairings.update(i,{expiry:n})},this.updateMetadata=async({topic:i,metadata:n})=>{this.isInitialized(),await this.pairings.update(i,{peerMetadata:n})},this.getPairings=()=>(this.isInitialized(),this.pairings.values),this.disconnect=async i=>{this.isInitialized(),await this.isValidDisconnect(i);const{topic:n}=i;this.pairings.keys.includes(n)&&(await this.sendRequest(n,"wc_pairingDelete",ze("USER_DISCONNECTED")),await this.deletePairing(n))},this.sendRequest=async(i,n,s)=>{const c=Wr(n,s),h=await this.core.crypto.encode(i,c),u=zr[n].req;return this.core.history.set(i,c),await this.core.relayer.publish(i,h,u),c.id},this.sendResult=async(i,n,s)=>{const c=Yr(i,s),h=await this.core.crypto.encode(n,c),u=await this.core.history.get(n,i),f=zr[u.request.method].res;await this.core.relayer.publish(n,h,f),await this.core.history.resolve(c)},this.sendError=async(i,n,s)=>{const c=wr(i,s),h=await this.core.crypto.encode(n,c),u=await this.core.history.get(n,i),f=zr[u.request.method]?zr[u.request.method].res:zr.unregistered_method.res;await this.core.relayer.publish(n,h,f),await this.core.history.resolve(c)},this.deletePairing=async(i,n)=>{await this.core.relayer.unsubscribe(i),await Promise.all([this.pairings.delete(i,ze("USER_DISCONNECTED")),this.core.crypto.deleteSymKey(i),n?Promise.resolve():this.core.expirer.del(i)])},this.cleanup=async()=>{const i=this.pairings.getAll().filter(n=>qt(n.expiry));await Promise.all(i.map(n=>this.deletePairing(n.topic)))},this.onRelayEventRequest=i=>{const{topic:n,payload:s}=i;switch(s.method){case"wc_pairingPing":return this.onPairingPingRequest(n,s);case"wc_pairingDelete":return this.onPairingDeleteRequest(n,s);default:return this.onUnknownRpcMethodRequest(n,s)}},this.onRelayEventResponse=async i=>{const{topic:n,payload:s}=i,c=(await this.core.history.get(n,s.id)).request.method;switch(c){case"wc_pairingPing":return this.onPairingPingResponse(n,s);default:return this.onUnknownRpcMethodResponse(c)}},this.onPairingPingRequest=async(i,n)=>{const{id:s}=n;try{this.isValidPing({topic:i}),await this.sendResult(s,i,!0),this.events.emit("pairing_ping",{id:s,topic:i})}catch(c){await this.sendError(s,i,c),this.logger.error(c)}},this.onPairingPingResponse=(i,n)=>{const{id:s}=n;setTimeout(()=>{Rt(n)?this.events.emit(Pe("pairing_ping",s),{}):Dt(n)&&this.events.emit(Pe("pairing_ping",s),{error:n.error})},500)},this.onPairingDeleteRequest=async(i,n)=>{const{id:s}=n;try{this.isValidDisconnect({topic:i}),await this.sendResult(s,i,!0),await this.deletePairing(i),this.events.emit("pairing_delete",{id:s,topic:i})}catch(c){await this.sendError(s,i,c),this.logger.error(c)}},this.onUnknownRpcMethodRequest=async(i,n)=>{const{id:s,method:c}=n;try{if(this.registeredMethods.includes(c))return;const h=ze("WC_METHOD_UNSUPPORTED",c);await this.sendError(s,i,h),this.logger.error(h)}catch(h){await this.sendError(s,i,h),this.logger.error(h)}},this.onUnknownRpcMethodResponse=i=>{this.registeredMethods.includes(i)||this.logger.error(ze("WC_METHOD_UNSUPPORTED",i))},this.isValidPair=i=>{if(!gt(i)){const{message:n}=V("MISSING_OR_INVALID",`pair() params: ${i}`);throw new Error(n)}if(!Zf(i.uri)){const{message:n}=V("MISSING_OR_INVALID",`pair() uri: ${i.uri}`);throw new Error(n)}},this.isValidPing=async i=>{if(!gt(i)){const{message:s}=V("MISSING_OR_INVALID",`ping() params: ${i}`);throw new Error(s)}const{topic:n}=i;await this.isValidPairingTopic(n)},this.isValidDisconnect=async i=>{if(!gt(i)){const{message:s}=V("MISSING_OR_INVALID",`disconnect() params: ${i}`);throw new Error(s)}const{topic:n}=i;await this.isValidPairingTopic(n)},this.isValidPairingTopic=async i=>{if(!it(i,!1)){const{message:n}=V("MISSING_OR_INVALID",`pairing topic should be a string: ${i}`);throw new Error(n)}if(!this.pairings.keys.includes(i)){const{message:n}=V("NO_MATCHING_KEY",`pairing topic doesn't exist: ${i}`);throw new Error(n)}if(qt(this.pairings.get(i).expiry)){await this.deletePairing(i);const{message:n}=V("EXPIRED",`pairing topic: ${i}`);throw new Error(n)}},this.core=e,this.logger=xe.generateChildLogger(r,this.name),this.pairings=new Ln(this.core,this.logger,this.name,this.storagePrefix)}get context(){return xe.getLoggerContext(this.logger)}isInitialized(){if(!this.initialized){const{message:e}=V("NOT_INITIALIZED",this.name);throw new Error(e)}}registerRelayerEvents(){this.core.relayer.on(gr.message,async e=>{const{topic:r,message:i}=e;if(this.ignoredPayloadTypes.includes(this.core.crypto.getPayloadType(i)))return;const n=await this.core.crypto.decode(r,i);Ii(n)?(this.core.history.set(r,n),this.onRelayEventRequest({topic:r,payload:n})):Ai(n)&&(await this.core.history.resolve(n),this.onRelayEventResponse({topic:r,payload:n}))})}registerExpirerEvents(){this.core.expirer.on(bt.expired,async e=>{const{topic:r}=uo(e.target);r&&this.pairings.keys.includes(r)&&(await this.deletePairing(r,!0),this.events.emit("pairing_expire",{topic:r}))})}}class h0 extends ud{constructor(e,r){super(e,r),this.core=e,this.logger=r,this.records=new Map,this.events=new rr.EventEmitter,this.name=$g,this.version=Bg,this.cached=[],this.initialized=!1,this.storagePrefix=Vt,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(i=>this.records.set(i.id,i)),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.set=(i,n,s)=>{if(this.isInitialized(),this.logger.debug("Setting JSON-RPC request history record"),this.logger.trace({type:"method",method:"set",topic:i,request:n,chainId:s}),this.records.has(n.id))return;const c={id:n.id,topic:i,request:{method:n.method,params:n.params||null},chainId:s};this.records.set(c.id,c),this.events.emit(Tt.created,c)},this.resolve=async i=>{if(this.isInitialized(),this.logger.debug("Updating JSON-RPC response history record"),this.logger.trace({type:"method",method:"update",response:i}),!this.records.has(i.id))return;const n=await this.getRecord(i.id);typeof n.response>"u"&&(n.response=Dt(i)?{error:i.error}:{result:i.result},this.records.set(n.id,n),this.events.emit(Tt.updated,n))},this.get=async(i,n)=>(this.isInitialized(),this.logger.debug("Getting record"),this.logger.trace({type:"method",method:"get",topic:i,id:n}),await this.getRecord(n)),this.delete=(i,n)=>{this.isInitialized(),this.logger.debug("Deleting record"),this.logger.trace({type:"method",method:"delete",id:n}),this.values.forEach(s=>{if(s.topic===i){if(typeof n<"u"&&s.id!==n)return;this.records.delete(s.id),this.events.emit(Tt.deleted,s)}})},this.exists=async(i,n)=>(this.isInitialized(),this.records.has(n)?(await this.getRecord(n)).topic===i:!1),this.on=(i,n)=>{this.events.on(i,n)},this.once=(i,n)=>{this.events.once(i,n)},this.off=(i,n)=>{this.events.off(i,n)},this.removeListener=(i,n)=>{this.events.removeListener(i,n)},this.logger=xe.generateChildLogger(r,this.name)}get context(){return xe.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}get size(){return this.records.size}get keys(){return Array.from(this.records.keys())}get values(){return Array.from(this.records.values())}get pending(){const e=[];return this.values.forEach(r=>{if(typeof r.response<"u")return;const i={topic:r.topic,request:Wr(r.request.method,r.request.params,r.id),chainId:r.chainId};return e.push(i)}),e}async setJsonRpcRecords(e){await this.core.storage.setItem(this.storageKey,e)}async getJsonRpcRecords(){return await this.core.storage.getItem(this.storageKey)}getRecord(e){this.isInitialized();const r=this.records.get(e);if(!r){const{message:i}=V("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(i)}return r}async persist(){await this.setJsonRpcRecords(this.values),this.events.emit(Tt.sync)}async restore(){try{const e=await this.getJsonRpcRecords();if(typeof e>"u"||!e.length)return;if(this.records.size){const{message:r}=V("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(r),new Error(r)}this.cached=e,this.logger.debug(`Successfully Restored records for ${this.name}`),this.logger.trace({type:"method",method:"restore",records:this.values})}catch(e){this.logger.debug(`Failed to Restore records for ${this.name}`),this.logger.error(e)}}registerEventListeners(){this.events.on(Tt.created,e=>{const r=Tt.created;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,record:e}),this.persist()}),this.events.on(Tt.updated,e=>{const r=Tt.updated;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,record:e}),this.persist()}),this.events.on(Tt.deleted,e=>{const r=Tt.deleted;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,record:e}),this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=V("NOT_INITIALIZED",this.name);throw new Error(e)}}}class u0 extends yd{constructor(e,r){super(e,r),this.core=e,this.logger=r,this.expirations=new Map,this.events=new rr.EventEmitter,this.name=zg,this.version=Hg,this.cached=[],this.initialized=!1,this.storagePrefix=Vt,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(i=>this.expirations.set(i.target,i)),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.has=i=>{try{const n=this.formatTarget(i);return typeof this.getExpiration(n)<"u"}catch{return!1}},this.set=(i,n)=>{this.isInitialized();const s=this.formatTarget(i),c={target:s,expiry:n};this.expirations.set(s,c),this.checkExpiry(s,c),this.events.emit(bt.created,{target:s,expiration:c})},this.get=i=>{this.isInitialized();const n=this.formatTarget(i);return this.getExpiration(n)},this.del=i=>{this.isInitialized();const n=this.formatTarget(i);if(this.has(n)){const s=this.getExpiration(n);this.expirations.delete(n),this.events.emit(bt.deleted,{target:n,expiration:s})}},this.on=(i,n)=>{this.events.on(i,n)},this.once=(i,n)=>{this.events.once(i,n)},this.off=(i,n)=>{this.events.off(i,n)},this.removeListener=(i,n)=>{this.events.removeListener(i,n)},this.logger=xe.generateChildLogger(r,this.name)}get context(){return xe.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}get length(){return this.expirations.size}get keys(){return Array.from(this.expirations.keys())}get values(){return Array.from(this.expirations.values())}formatTarget(e){if(typeof e=="string")return Pf(e);if(typeof e=="number")return Ff(e);const{message:r}=V("UNKNOWN_TYPE",`Target type: ${typeof e}`);throw new Error(r)}async setExpirations(e){await this.core.storage.setItem(this.storageKey,e)}async getExpirations(){return await this.core.storage.getItem(this.storageKey)}async persist(){await this.setExpirations(this.values),this.events.emit(bt.sync)}async restore(){try{const e=await this.getExpirations();if(typeof e>"u"||!e.length)return;if(this.expirations.size){const{message:r}=V("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(r),new Error(r)}this.cached=e,this.logger.debug(`Successfully Restored expirations for ${this.name}`),this.logger.trace({type:"method",method:"restore",expirations:this.values})}catch(e){this.logger.debug(`Failed to Restore expirations for ${this.name}`),this.logger.error(e)}}getExpiration(e){const r=this.expirations.get(e);if(!r){const{message:i}=V("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(i),new Error(i)}return r}checkExpiry(e,r){const{expiry:i}=r;Q.toMiliseconds(i)-Date.now()<=0&&this.expire(e,r)}expire(e,r){this.expirations.delete(e),this.events.emit(bt.expired,{target:e,expiration:r})}checkExpirations(){this.expirations.forEach((e,r)=>this.checkExpiry(r,e))}registerEventListeners(){this.core.heartbeat.on(Mr.HEARTBEAT_EVENTS.pulse,()=>this.checkExpirations()),this.events.on(bt.created,e=>{const r=bt.created;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,data:e}),this.persist()}),this.events.on(bt.expired,e=>{const r=bt.expired;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,data:e}),this.persist()}),this.events.on(bt.deleted,e=>{const r=bt.deleted;this.logger.info(`Emitting ${r}`),this.logger.debug({type:"event",event:r,data:e}),this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=V("NOT_INITIALIZED",this.name);throw new Error(e)}}}var f0=Object.defineProperty,Sa=Object.getOwnPropertySymbols,l0=Object.prototype.hasOwnProperty,d0=Object.prototype.propertyIsEnumerable,xa=(t,e,r)=>e in t?f0(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Oa=(t,e)=>{for(var r in e||(e={}))l0.call(e,r)&&xa(t,r,e[r]);if(Sa)for(var r of Sa(e))d0.call(e,r)&&xa(t,r,e[r]);return t};class Rn extends hd{constructor(e){super(e),this.protocol=pa,this.version=yg,this.name=Cn,this.events=new rr.EventEmitter,this.initialized=!1,this.on=(i,n)=>this.events.on(i,n),this.once=(i,n)=>this.events.once(i,n),this.off=(i,n)=>this.events.off(i,n),this.removeListener=(i,n)=>this.events.removeListener(i,n),this.projectId=e?.projectId;const r=typeof e?.logger<"u"&&typeof e?.logger!="string"?e.logger:fn(xe.getDefaultLoggerOptions({level:e?.logger||vg.logger}));this.logger=xe.generateChildLogger(r,this.name),this.heartbeat=new Mr.HeartBeat,this.crypto=new qg(this,this.logger,e?.keychain),this.history=new h0(this,this.logger),this.expirer=new u0(this,this.logger),this.storage=e!=null&&e.storage?e.storage:new Ql(Oa(Oa({},_g),e?.storageOptions)),this.relayer=new n0({core:this,logger:this.logger,relayUrl:e?.relayUrl,projectId:this.projectId}),this.pairing=new c0(this,this.logger)}static async init(e){const r=new Rn(e);return await r.initialize(),r}get context(){return xe.getLoggerContext(this.logger)}async start(){this.initialized||await this.initialize()}async initialize(){this.logger.trace("Initialized");try{await this.crypto.init(),await this.history.init(),await this.expirer.init(),await this.relayer.init(),await this.heartbeat.init(),await this.pairing.init(),this.initialized=!0,this.logger.info("Core Initilization Success")}catch(e){throw this.logger.warn(`Core Initilization Failure at epoch ${Date.now()}`,e),this.logger.error(e.message),e}}}const p0=Rn;function Ge(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}var Ia=Ge;Ge.EventEmitter=Ge,Ge.prototype._events=void 0,Ge.prototype._maxListeners=void 0,Ge.defaultMaxListeners=10,Ge.prototype.setMaxListeners=function(t){if(!g0(t)||t<0||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},Ge.prototype.emit=function(t){var e,r,i,n,s,c;if(this._events||(this._events={}),t==="error"&&(!this._events.error||Hr(this._events.error)&&!this._events.error.length)){if(e=arguments[1],e instanceof Error)throw e;var h=new Error('Uncaught, unspecified "error" event. ('+e+")");throw h.context=e,h}if(r=this._events[t],Aa(r))return!1;if(Mt(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:n=Array.prototype.slice.call(arguments,1),r.apply(this,n)}else if(Hr(r))for(n=Array.prototype.slice.call(arguments,1),c=r.slice(),i=c.length,s=0;s<i;s++)c[s].apply(this,n);return!0},Ge.prototype.addListener=function(t,e){var r;if(!Mt(e))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",t,Mt(e.listener)?e.listener:e),this._events[t]?Hr(this._events[t])?this._events[t].push(e):this._events[t]=[this._events[t],e]:this._events[t]=e,Hr(this._events[t])&&!this._events[t].warned&&(Aa(this._maxListeners)?r=Ge.defaultMaxListeners:r=this._maxListeners,r&&r>0&&this._events[t].length>r&&(this._events[t].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[t].length),typeof console.trace=="function"&&console.trace())),this},Ge.prototype.on=Ge.prototype.addListener,Ge.prototype.once=function(t,e){if(!Mt(e))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(t,i),r||(r=!0,e.apply(this,arguments))}return i.listener=e,this.on(t,i),this},Ge.prototype.removeListener=function(t,e){var r,i,n,s;if(!Mt(e))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(r=this._events[t],n=r.length,i=-1,r===e||Mt(r.listener)&&r.listener===e)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,e);else if(Hr(r)){for(s=n;s-- >0;)if(r[s]===e||r[s].listener&&r[s].listener===e){i=s;break}if(i<0)return this;r.length===1?(r.length=0,delete this._events[t]):r.splice(i,1),this._events.removeListener&&this.emit("removeListener",t,e)}return this},Ge.prototype.removeAllListeners=function(t){var e,r;if(!this._events)return this;if(!this._events.removeListener)return arguments.length===0?this._events={}:this._events[t]&&delete this._events[t],this;if(arguments.length===0){for(e in this._events)e!=="removeListener"&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(r=this._events[t],Mt(r))this.removeListener(t,r);else if(r)for(;r.length;)this.removeListener(t,r[r.length-1]);return delete this._events[t],this},Ge.prototype.listeners=function(t){var e;return!this._events||!this._events[t]?e=[]:Mt(this._events[t])?e=[this._events[t]]:e=this._events[t].slice(),e},Ge.prototype.listenerCount=function(t){if(this._events){var e=this._events[t];if(Mt(e))return 1;if(e)return e.length}return 0},Ge.listenerCount=function(t,e){return t.listenerCount(e)};function Mt(t){return typeof t=="function"}function g0(t){return typeof t=="number"}function Hr(t){return typeof t=="object"&&t!==null}function Aa(t){return t===void 0}const Ta="wc",Ca=2,Na="client",La=`${Ta}@${Ca}:${Na}:`,Pn={name:Na,logger:"error",controller:!1,relayUrl:"wss://relay.walletconnect.com"},y0="proposal",v0="session",gi=Q.SEVEN_DAYS,_0="engine",yi={wc_sessionPropose:{req:{ttl:Q.FIVE_MINUTES,prompt:!0,tag:1100},res:{ttl:Q.FIVE_MINUTES,prompt:!1,tag:1101}},wc_sessionSettle:{req:{ttl:Q.FIVE_MINUTES,prompt:!1,tag:1102},res:{ttl:Q.FIVE_MINUTES,prompt:!1,tag:1103}},wc_sessionUpdate:{req:{ttl:Q.ONE_DAY,prompt:!1,tag:1104},res:{ttl:Q.ONE_DAY,prompt:!1,tag:1105}},wc_sessionExtend:{req:{ttl:Q.ONE_DAY,prompt:!1,tag:1106},res:{ttl:Q.ONE_DAY,prompt:!1,tag:1107}},wc_sessionRequest:{req:{ttl:Q.FIVE_MINUTES,prompt:!0,tag:1108},res:{ttl:Q.FIVE_MINUTES,prompt:!1,tag:1109}},wc_sessionEvent:{req:{ttl:Q.FIVE_MINUTES,prompt:!0,tag:1110},res:{ttl:Q.FIVE_MINUTES,prompt:!1,tag:1111}},wc_sessionDelete:{req:{ttl:Q.ONE_DAY,prompt:!1,tag:1112},res:{ttl:Q.ONE_DAY,prompt:!1,tag:1113}},wc_sessionPing:{req:{ttl:Q.THIRTY_SECONDS,prompt:!1,tag:1114},res:{ttl:Q.THIRTY_SECONDS,prompt:!1,tag:1115}}};var b0=Object.defineProperty,m0=Object.defineProperties,w0=Object.getOwnPropertyDescriptors,Ra=Object.getOwnPropertySymbols,E0=Object.prototype.hasOwnProperty,D0=Object.prototype.propertyIsEnumerable,Pa=(t,e,r)=>e in t?b0(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,Gt=(t,e)=>{for(var r in e||(e={}))E0.call(e,r)&&Pa(t,r,e[r]);if(Ra)for(var r of Ra(e))D0.call(e,r)&&Pa(t,r,e[r]);return t},Fa=(t,e)=>m0(t,w0(e));class S0 extends md{constructor(e){super(e),this.name=_0,this.events=new Ia,this.initialized=!1,this.ignoredPayloadTypes=[Zt],this.init=async()=>{this.initialized||(await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.client.core.pairing.register({methods:Object.keys(yi)}),this.initialized=!0)},this.connect=async r=>{this.isInitialized(),await this.isValidConnect(r);const{pairingTopic:i,requiredNamespaces:n,relays:s}=r;let c=i,h,u=!1;if(c&&(u=this.client.core.pairing.pairings.get(c).active),!c||!u){const{topic:N,uri:j}=await this.client.core.pairing.create();c=N,h=j}const f=await this.client.core.crypto.generateKeyPair(),g={requiredNamespaces:n,relays:s??[{protocol:ya}],proposer:{publicKey:f,metadata:this.client.metadata}},{reject:D,resolve:C,done:S}=Qt();if(this.events.once(Pe("session_connect"),async({error:N,session:j})=>{if(N)D(N);else if(j){j.self.publicKey=f;const E=Fa(Gt({},j),{requiredNamespaces:n});await this.client.session.set(j.topic,E),await this.setExpiry(j.topic,j.expiry),c&&await this.client.core.pairing.updateMetadata({topic:c,metadata:j.peer.metadata}),C(E)}}),!c){const{message:N}=V("NO_MATCHING_KEY",`connect() pairing topic: ${c}`);throw new Error(N)}const w=await this.sendRequest(c,"wc_sessionPropose",g),P=Pt(Q.FIVE_MINUTES);return await this.setProposal(w,Gt({id:w,expiry:P},g)),{uri:h,approval:S}},this.pair=async r=>(this.isInitialized(),await this.client.core.pairing.pair(r)),this.approve=async r=>{this.isInitialized(),await this.isValidApprove(r);const{id:i,relayProtocol:n,namespaces:s}=r,{pairingTopic:c,proposer:h,requiredNamespaces:u}=this.client.proposal.get(i),f=await this.client.core.crypto.generateKeyPair(),g=h.publicKey,D=await this.client.core.crypto.generateSharedKey(f,g),C={relay:{protocol:n??"irn"},namespaces:s,requiredNamespaces:u,controller:{publicKey:f,metadata:this.client.metadata},expiry:Pt(gi)};await this.client.core.relayer.subscribe(D);const S=await this.sendRequest(D,"wc_sessionSettle",C),{done:w,resolve:P,reject:N}=Qt();this.events.once(Pe("session_approve",S),({error:E})=>{E?N(E):P(this.client.session.get(D))});const j=Fa(Gt({},C),{topic:D,acknowledged:!1,self:C.controller,peer:{publicKey:h.publicKey,metadata:h.metadata},controller:f});return await this.client.session.set(D,j),await this.setExpiry(D,Pt(gi)),c&&await this.client.core.pairing.updateMetadata({topic:c,metadata:j.peer.metadata}),c&&i&&(await this.sendResult(i,c,{relay:{protocol:n??"irn"},responderPublicKey:f}),await this.client.proposal.delete(i,ze("USER_DISCONNECTED")),await this.client.core.pairing.activate({topic:c})),{topic:D,acknowledged:w}},this.reject=async r=>{this.isInitialized(),await this.isValidReject(r);const{id:i,reason:n}=r,{pairingTopic:s}=this.client.proposal.get(i);s&&(await this.sendError(i,s,n),await this.client.proposal.delete(i,ze("USER_DISCONNECTED")))},this.update=async r=>{this.isInitialized(),await this.isValidUpdate(r);const{topic:i,namespaces:n}=r,s=await this.sendRequest(i,"wc_sessionUpdate",{namespaces:n}),{done:c,resolve:h,reject:u}=Qt();return this.events.once(Pe("session_update",s),({error:f})=>{f?u(f):h()}),await this.client.session.update(i,{namespaces:n}),{acknowledged:c}},this.extend=async r=>{this.isInitialized(),await this.isValidExtend(r);const{topic:i}=r,n=await this.sendRequest(i,"wc_sessionExtend",{}),{done:s,resolve:c,reject:h}=Qt();return this.events.once(Pe("session_extend",n),({error:u})=>{u?h(u):c()}),await this.setExpiry(i,Pt(gi)),{acknowledged:s}},this.request=async r=>{this.isInitialized(),await this.isValidRequest(r);const{chainId:i,request:n,topic:s}=r,c=await this.sendRequest(s,"wc_sessionRequest",{request:n,chainId:i}),{done:h,resolve:u,reject:f}=Qt();return this.events.once(Pe("session_request",c),({error:g,result:D})=>{g?f(g):u(D)}),await h()},this.respond=async r=>{this.isInitialized(),await this.isValidRespond(r);const{topic:i,response:n}=r,{id:s}=n;Rt(n)?await this.sendResult(s,i,n.result):Dt(n)&&await this.sendError(s,i,n.error)},this.ping=async r=>{this.isInitialized(),await this.isValidPing(r);const{topic:i}=r;if(this.client.session.keys.includes(i)){const n=await this.sendRequest(i,"wc_sessionPing",{}),{done:s,resolve:c,reject:h}=Qt();this.events.once(Pe("session_ping",n),({error:u})=>{u?h(u):c()}),await s()}else this.client.core.pairing.pairings.keys.includes(i)&&await this.client.core.pairing.ping({topic:i})},this.emit=async r=>{this.isInitialized(),await this.isValidEmit(r);const{topic:i,event:n,chainId:s}=r;await this.sendRequest(i,"wc_sessionEvent",{event:n,chainId:s})},this.disconnect=async r=>{this.isInitialized(),await this.isValidDisconnect(r);const{topic:i}=r;this.client.session.keys.includes(i)?(await this.sendRequest(i,"wc_sessionDelete",ze("USER_DISCONNECTED")),await this.deleteSession(i)):await this.client.core.pairing.disconnect({topic:i})},this.find=r=>(this.isInitialized(),this.client.session.getAll().filter(i=>Jf(i,r))),this.deleteSession=async(r,i)=>{const{self:n}=this.client.session.get(r);await this.client.core.relayer.unsubscribe(r),await Promise.all([this.client.session.delete(r,ze("USER_DISCONNECTED")),this.client.core.crypto.deleteKeyPair(n.publicKey),this.client.core.crypto.deleteSymKey(r),i?Promise.resolve():this.client.core.expirer.del(r)])},this.deleteProposal=async(r,i)=>{await Promise.all([this.client.proposal.delete(r,ze("USER_DISCONNECTED")),i?Promise.resolve():this.client.core.expirer.del(r)])},this.setExpiry=async(r,i)=>{this.client.session.keys.includes(r)&&await this.client.session.update(r,{expiry:i}),this.client.core.expirer.set(r,i)},this.setProposal=async(r,i)=>{await this.client.proposal.set(r,i),this.client.core.expirer.set(r,i.expiry)},this.sendRequest=async(r,i,n)=>{const s=Wr(i,n),c=await this.client.core.crypto.encode(r,s),h=yi[i].req;return this.client.core.history.set(r,s),this.client.core.relayer.publish(r,c,h),s.id},this.sendResult=async(r,i,n)=>{const s=Yr(r,n),c=await this.client.core.crypto.encode(i,s),h=await this.client.core.history.get(i,r),u=yi[h.request.method].res;await this.client.core.relayer.publish(i,c,u),await this.client.core.history.resolve(s)},this.sendError=async(r,i,n)=>{const s=wr(r,n),c=await this.client.core.crypto.encode(i,s),h=await this.client.core.history.get(i,r),u=yi[h.request.method].res;await this.client.core.relayer.publish(i,c,u),await this.client.core.history.resolve(s)},this.cleanup=async()=>{const r=[],i=[];this.client.session.getAll().forEach(n=>{qt(n.expiry)&&r.push(n.topic)}),this.client.proposal.getAll().forEach(n=>{qt(n.expiry)&&i.push(n.id)}),await Promise.all([...r.map(n=>this.deleteSession(n)),...i.map(n=>this.deleteProposal(n))])},this.onRelayEventRequest=r=>{const{topic:i,payload:n}=r,s=n.method;switch(s){case"wc_sessionPropose":return this.onSessionProposeRequest(i,n);case"wc_sessionSettle":return this.onSessionSettleRequest(i,n);case"wc_sessionUpdate":return this.onSessionUpdateRequest(i,n);case"wc_sessionExtend":return this.onSessionExtendRequest(i,n);case"wc_sessionPing":return this.onSessionPingRequest(i,n);case"wc_sessionDelete":return this.onSessionDeleteRequest(i,n);case"wc_sessionRequest":return this.onSessionRequest(i,n);case"wc_sessionEvent":return this.onSessionEventRequest(i,n);default:return this.client.logger.info(`Unsupported request method ${s}`)}},this.onRelayEventResponse=async r=>{const{topic:i,payload:n}=r,s=(await this.client.core.history.get(i,n.id)).request.method;switch(s){case"wc_sessionPropose":return this.onSessionProposeResponse(i,n);case"wc_sessionSettle":return this.onSessionSettleResponse(i,n);case"wc_sessionUpdate":return this.onSessionUpdateResponse(i,n);case"wc_sessionExtend":return this.onSessionExtendResponse(i,n);case"wc_sessionPing":return this.onSessionPingResponse(i,n);case"wc_sessionRequest":return this.onSessionRequestResponse(i,n);default:return this.client.logger.info(`Unsupported response method ${s}`)}},this.onSessionProposeRequest=async(r,i)=>{const{params:n,id:s}=i;try{this.isValidConnect(Gt({},i.params));const c=Pt(Q.FIVE_MINUTES),h=Gt({id:s,pairingTopic:r,expiry:c},n);await this.setProposal(s,h),this.client.events.emit("session_proposal",{id:s,params:h})}catch(c){await this.sendError(s,r,c),this.client.logger.error(c)}},this.onSessionProposeResponse=async(r,i)=>{const{id:n}=i;if(Rt(i)){const{result:s}=i;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",result:s});const c=this.client.proposal.get(n);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",proposal:c});const h=c.proposer.publicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",selfPublicKey:h});const u=s.responderPublicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",peerPublicKey:u});const f=await this.client.core.crypto.generateSharedKey(h,u);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",sessionTopic:f});const g=await this.client.core.relayer.subscribe(f);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",subscriptionId:g}),await this.client.core.pairing.activate({topic:r})}else Dt(i)&&(await this.client.proposal.delete(n,ze("USER_DISCONNECTED")),this.events.emit(Pe("session_connect"),{error:i.error}))},this.onSessionSettleRequest=async(r,i)=>{const{id:n,params:s}=i;try{this.isValidSessionSettleRequest(s);const{relay:c,controller:h,expiry:u,namespaces:f}=i.params,g={topic:r,relay:c,expiry:u,namespaces:f,acknowledged:!0,controller:h.publicKey,self:{publicKey:"",metadata:this.client.metadata},peer:{publicKey:h.publicKey,metadata:h.metadata}};await this.sendResult(i.id,r,!0),this.events.emit(Pe("session_connect"),{session:g})}catch(c){await this.sendError(n,r,c),this.client.logger.error(c)}},this.onSessionSettleResponse=async(r,i)=>{const{id:n}=i;Rt(i)?(await this.client.session.update(r,{acknowledged:!0}),this.events.emit(Pe("session_approve",n),{})):Dt(i)&&(await this.client.session.delete(r,ze("USER_DISCONNECTED")),this.events.emit(Pe("session_approve",n),{error:i.error}))},this.onSessionUpdateRequest=async(r,i)=>{const{params:n,id:s}=i;try{this.isValidUpdate(Gt({topic:r},n)),await this.client.session.update(r,{namespaces:n.namespaces}),await this.sendResult(s,r,!0),this.client.events.emit("session_update",{id:s,topic:r,params:n})}catch(c){await this.sendError(s,r,c),this.client.logger.error(c)}},this.onSessionUpdateResponse=(r,i)=>{const{id:n}=i;Rt(i)?this.events.emit(Pe("session_update",n),{}):Dt(i)&&this.events.emit(Pe("session_update",n),{error:i.error})},this.onSessionExtendRequest=async(r,i)=>{const{id:n}=i;try{this.isValidExtend({topic:r}),await this.setExpiry(r,Pt(gi)),await this.sendResult(n,r,!0),this.client.events.emit("session_extend",{id:n,topic:r})}catch(s){await this.sendError(n,r,s),this.client.logger.error(s)}},this.onSessionExtendResponse=(r,i)=>{const{id:n}=i;Rt(i)?this.events.emit(Pe("session_extend",n),{}):Dt(i)&&this.events.emit(Pe("session_extend",n),{error:i.error})},this.onSessionPingRequest=async(r,i)=>{const{id:n}=i;try{this.isValidPing({topic:r}),await this.sendResult(n,r,!0),this.client.events.emit("session_ping",{id:n,topic:r})}catch(s){await this.sendError(n,r,s),this.client.logger.error(s)}},this.onSessionPingResponse=(r,i)=>{const{id:n}=i;setTimeout(()=>{Rt(i)?this.events.emit(Pe("session_ping",n),{}):Dt(i)&&this.events.emit(Pe("session_ping",n),{error:i.error})},500)},this.onSessionDeleteRequest=async(r,i)=>{const{id:n}=i;try{this.isValidDisconnect({topic:r,reason:i.params}),await this.sendResult(n,r,!0),await this.deleteSession(r),this.client.events.emit("session_delete",{id:n,topic:r})}catch(s){await this.sendError(n,r,s),this.client.logger.error(s)}},this.onSessionRequest=async(r,i)=>{const{id:n,params:s}=i;try{this.isValidRequest(Gt({topic:r},s)),this.client.events.emit("session_request",{id:n,topic:r,params:s})}catch(c){await this.sendError(n,r,c),this.client.logger.error(c)}},this.onSessionRequestResponse=(r,i)=>{const{id:n}=i;Rt(i)?this.events.emit(Pe("session_request",n),{result:i.result}):Dt(i)&&this.events.emit(Pe("session_request",n),{error:i.error})},this.onSessionEventRequest=async(r,i)=>{const{id:n,params:s}=i;try{this.isValidEmit(Gt({topic:r},s)),this.client.events.emit("session_event",{id:n,topic:r,params:s})}catch(c){await this.sendError(n,r,c),this.client.logger.error(c)}},this.isValidConnect=async r=>{if(!gt(r)){const{message:h}=V("MISSING_OR_INVALID",`connect() params: ${JSON.stringify(r)}`);throw new Error(h)}const{pairingTopic:i,requiredNamespaces:n,relays:s}=r;_t(i)||await this.isValidPairingTopic(i);const c=nl(n,"connect()");if(c)throw new Error(c.message);if(!sl(s,!0)){const{message:h}=V("MISSING_OR_INVALID",`connect() relays: ${s}`);throw new Error(h)}},this.isValidApprove=async r=>{if(!gt(r))throw new Error(V("MISSING_OR_INVALID",`approve() params: ${r}`).message);const{id:i,namespaces:n,relayProtocol:s}=r;await this.isValidProposalId(i);const c=this.client.proposal.get(i),h=un(n,"approve()");if(h)throw new Error(h.message);const u=Do(c.requiredNamespaces,n,"update()");if(u)throw new Error(u.message);if(!it(s,!0)){const{message:f}=V("MISSING_OR_INVALID",`approve() relayProtocol: ${s}`);throw new Error(f)}},this.isValidReject=async r=>{if(!gt(r)){const{message:s}=V("MISSING_OR_INVALID",`reject() params: ${r}`);throw new Error(s)}const{id:i,reason:n}=r;if(await this.isValidProposalId(i),!al(n)){const{message:s}=V("MISSING_OR_INVALID",`reject() reason: ${JSON.stringify(n)}`);throw new Error(s)}},this.isValidSessionSettleRequest=r=>{if(!gt(r)){const{message:f}=V("MISSING_OR_INVALID",`onSessionSettleRequest() params: ${r}`);throw new Error(f)}const{relay:i,controller:n,namespaces:s,expiry:c}=r;if(!wo(i)){const{message:f}=V("MISSING_OR_INVALID","onSessionSettleRequest() relay protocol should be a string");throw new Error(f)}const h=tl(n,"onSessionSettleRequest()");if(h)throw new Error(h.message);const u=un(s,"onSessionSettleRequest()");if(u)throw new Error(u.message);if(qt(c)){const{message:f}=V("EXPIRED","onSessionSettleRequest()");throw new Error(f)}},this.isValidUpdate=async r=>{if(!gt(r)){const{message:u}=V("MISSING_OR_INVALID",`update() params: ${r}`);throw new Error(u)}const{topic:i,namespaces:n}=r;await this.isValidSessionTopic(i);const s=this.client.session.get(i),c=un(n,"update()");if(c)throw new Error(c.message);const h=Do(s.requiredNamespaces,n,"update()");if(h)throw new Error(h.message)},this.isValidExtend=async r=>{if(!gt(r)){const{message:n}=V("MISSING_OR_INVALID",`extend() params: ${r}`);throw new Error(n)}const{topic:i}=r;await this.isValidSessionTopic(i)},this.isValidRequest=async r=>{if(!gt(r)){const{message:h}=V("MISSING_OR_INVALID",`request() params: ${r}`);throw new Error(h)}const{topic:i,request:n,chainId:s}=r;await this.isValidSessionTopic(i);const{namespaces:c}=this.client.session.get(i);if(!Eo(c,s)){const{message:h}=V("MISSING_OR_INVALID",`request() chainId: ${s}`);throw new Error(h)}if(!cl(n)){const{message:h}=V("MISSING_OR_INVALID",`request() ${JSON.stringify(n)}`);throw new Error(h)}if(!fl(c,s,n.method)){const{message:h}=V("MISSING_OR_INVALID",`request() method: ${n.method}`);throw new Error(h)}},this.isValidRespond=async r=>{if(!gt(r)){const{message:s}=V("MISSING_OR_INVALID",`respond() params: ${r}`);throw new Error(s)}const{topic:i,response:n}=r;if(await this.isValidSessionTopic(i),!hl(n)){const{message:s}=V("MISSING_OR_INVALID",`respond() response: ${JSON.stringify(n)}`);throw new Error(s)}},this.isValidPing=async r=>{if(!gt(r)){const{message:n}=V("MISSING_OR_INVALID",`ping() params: ${r}`);throw new Error(n)}const{topic:i}=r;await this.isValidSessionOrPairingTopic(i)},this.isValidEmit=async r=>{if(!gt(r)){const{message:h}=V("MISSING_OR_INVALID",`emit() params: ${r}`);throw new Error(h)}const{topic:i,event:n,chainId:s}=r;await this.isValidSessionTopic(i);const{namespaces:c}=this.client.session.get(i);if(!Eo(c,s)){const{message:h}=V("MISSING_OR_INVALID",`emit() chainId: ${s}`);throw new Error(h)}if(!ul(n)){const{message:h}=V("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(n)}`);throw new Error(h)}if(!ll(c,s,n.name)){const{message:h}=V("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(n)}`);throw new Error(h)}},this.isValidDisconnect=async r=>{if(!gt(r)){const{message:n}=V("MISSING_OR_INVALID",`disconnect() params: ${r}`);throw new Error(n)}const{topic:i}=r;await this.isValidSessionOrPairingTopic(i)}}isInitialized(){if(!this.initialized){const{message:e}=V("NOT_INITIALIZED",this.name);throw new Error(e)}}registerRelayerEvents(){this.client.core.relayer.on(gr.message,async e=>{const{topic:r,message:i}=e;if(this.ignoredPayloadTypes.includes(this.client.core.crypto.getPayloadType(i)))return;const n=await this.client.core.crypto.decode(r,i);Ii(n)?(this.client.core.history.set(r,n),this.onRelayEventRequest({topic:r,payload:n})):Ai(n)&&(await this.client.core.history.resolve(n),this.onRelayEventResponse({topic:r,payload:n}))})}registerExpirerEvents(){this.client.core.expirer.on(bt.expired,async e=>{const{topic:r,id:i}=uo(e.target);r?this.client.session.keys.includes(r)&&(await this.deleteSession(r,!0),this.client.events.emit("session_expire",{topic:r})):i&&await this.deleteProposal(i,!0)})}isValidPairingTopic(e){if(!it(e,!1)){const{message:r}=V("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw new Error(r)}if(!this.client.core.pairing.pairings.keys.includes(e)){const{message:r}=V("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw new Error(r)}if(qt(this.client.core.pairing.pairings.get(e).expiry)){const{message:r}=V("EXPIRED",`pairing topic: ${e}`);throw new Error(r)}}async isValidSessionTopic(e){if(!it(e,!1)){const{message:r}=V("MISSING_OR_INVALID",`session topic should be a string: ${e}`);throw new Error(r)}if(!this.client.session.keys.includes(e)){const{message:r}=V("NO_MATCHING_KEY",`session topic doesn't exist: ${e}`);throw new Error(r)}if(qt(this.client.session.get(e).expiry)){await this.deleteSession(e);const{message:r}=V("EXPIRED",`session topic: ${e}`);throw new Error(r)}}async isValidSessionOrPairingTopic(e){if(this.client.session.keys.includes(e))await this.isValidSessionTopic(e);else if(this.client.core.pairing.pairings.keys.includes(e))this.isValidPairingTopic(e);else if(it(e,!1)){const{message:r}=V("NO_MATCHING_KEY",`session or pairing topic doesn't exist: ${e}`);throw new Error(r)}else{const{message:r}=V("MISSING_OR_INVALID",`session or pairing topic should be a string: ${e}`);throw new Error(r)}}async isValidProposalId(e){if(!ol(e)){const{message:r}=V("MISSING_OR_INVALID",`proposal id should be a number: ${e}`);throw new Error(r)}if(!this.client.proposal.keys.includes(e)){const{message:r}=V("NO_MATCHING_KEY",`proposal id doesn't exist: ${e}`);throw new Error(r)}if(qt(this.client.proposal.get(e).expiry)){await this.deleteProposal(e);const{message:r}=V("EXPIRED",`proposal id: ${e}`);throw new Error(r)}}}class x0 extends Ln{constructor(e,r){super(e,r,y0,La),this.core=e,this.logger=r}}class O0 extends Ln{constructor(e,r){super(e,r,v0,La),this.core=e,this.logger=r}}class Fn extends bd{constructor(e){super(e),this.protocol=Ta,this.version=Ca,this.name=Pn.name,this.events=new Ia.EventEmitter,this.on=(i,n)=>this.events.on(i,n),this.once=(i,n)=>this.events.once(i,n),this.off=(i,n)=>this.events.off(i,n),this.removeListener=(i,n)=>this.events.removeListener(i,n),this.connect=async i=>{try{return await this.engine.connect(i)}catch(n){throw this.logger.error(n.message),n}},this.pair=async i=>{try{return await this.engine.pair(i)}catch(n){throw this.logger.error(n.message),n}},this.approve=async i=>{try{return await this.engine.approve(i)}catch(n){throw this.logger.error(n.message),n}},this.reject=async i=>{try{return await this.engine.reject(i)}catch(n){throw this.logger.error(n.message),n}},this.update=async i=>{try{return await this.engine.update(i)}catch(n){throw this.logger.error(n.message),n}},this.extend=async i=>{try{return await this.engine.extend(i)}catch(n){throw this.logger.error(n.message),n}},this.request=async i=>{try{return await this.engine.request(i)}catch(n){throw this.logger.error(n.message),n}},this.respond=async i=>{try{return await this.engine.respond(i)}catch(n){throw this.logger.error(n.message),n}},this.ping=async i=>{try{return await this.engine.ping(i)}catch(n){throw this.logger.error(n.message),n}},this.emit=async i=>{try{return await this.engine.emit(i)}catch(n){throw this.logger.error(n.message),n}},this.disconnect=async i=>{try{return await this.engine.disconnect(i)}catch(n){throw this.logger.error(n.message),n}},this.find=i=>{try{return this.engine.find(i)}catch(n){throw this.logger.error(n.message),n}},this.name=e?.name||Pn.name,this.metadata=e?.metadata||Tf();const r=typeof e?.logger<"u"&&typeof e?.logger!="string"?e.logger:fn(xe.getDefaultLoggerOptions({level:e?.logger||Pn.logger}));this.core=e?.core||new p0(e),this.logger=xe.generateChildLogger(r,this.name),this.session=new O0(this.core,this.logger),this.proposal=new x0(this.core,this.logger),this.engine=new S0(this)}static async init(e){const r=new Fn(e);return await r.initialize(),r}get context(){return xe.getLoggerContext(this.logger)}get pairing(){return this.core.pairing.pairings}async initialize(){this.logger.trace("Initialized");try{await this.core.start(),await this.session.init(),await this.proposal.init(),await this.engine.init(),this.logger.info("SignClient Initilization Success")}catch(e){throw this.logger.info("SignClient Initilization Failure"),this.logger.error(e.message),e}}}function We(){this._events=this._events||{},this._maxListeners=this._maxListeners||void 0}var I0=We;We.EventEmitter=We,We.prototype._events=void 0,We.prototype._maxListeners=void 0,We.defaultMaxListeners=10,We.prototype.setMaxListeners=function(t){if(!A0(t)||t<0||isNaN(t))throw TypeError("n must be a positive number");return this._maxListeners=t,this},We.prototype.emit=function(t){var e,r,i,n,s,c;if(this._events||(this._events={}),t==="error"&&(!this._events.error||Kr(this._events.error)&&!this._events.error.length)){if(e=arguments[1],e instanceof Error)throw e;var h=new Error('Uncaught, unspecified "error" event. ('+e+")");throw h.context=e,h}if(r=this._events[t],Ua(r))return!1;if(jt(r))switch(arguments.length){case 1:r.call(this);break;case 2:r.call(this,arguments[1]);break;case 3:r.call(this,arguments[1],arguments[2]);break;default:n=Array.prototype.slice.call(arguments,1),r.apply(this,n)}else if(Kr(r))for(n=Array.prototype.slice.call(arguments,1),c=r.slice(),i=c.length,s=0;s<i;s++)c[s].apply(this,n);return!0},We.prototype.addListener=function(t,e){var r;if(!jt(e))throw TypeError("listener must be a function");return this._events||(this._events={}),this._events.newListener&&this.emit("newListener",t,jt(e.listener)?e.listener:e),this._events[t]?Kr(this._events[t])?this._events[t].push(e):this._events[t]=[this._events[t],e]:this._events[t]=e,Kr(this._events[t])&&!this._events[t].warned&&(Ua(this._maxListeners)?r=We.defaultMaxListeners:r=this._maxListeners,r&&r>0&&this._events[t].length>r&&(this._events[t].warned=!0,console.error("(node) warning: possible EventEmitter memory leak detected. %d listeners added. Use emitter.setMaxListeners() to increase limit.",this._events[t].length),typeof console.trace=="function"&&console.trace())),this},We.prototype.on=We.prototype.addListener,We.prototype.once=function(t,e){if(!jt(e))throw TypeError("listener must be a function");var r=!1;function i(){this.removeListener(t,i),r||(r=!0,e.apply(this,arguments))}return i.listener=e,this.on(t,i),this},We.prototype.removeListener=function(t,e){var r,i,n,s;if(!jt(e))throw TypeError("listener must be a function");if(!this._events||!this._events[t])return this;if(r=this._events[t],n=r.length,i=-1,r===e||jt(r.listener)&&r.listener===e)delete this._events[t],this._events.removeListener&&this.emit("removeListener",t,e);else if(Kr(r)){for(s=n;s-- >0;)if(r[s]===e||r[s].listener&&r[s].listener===e){i=s;break}if(i<0)return this;r.length===1?(r.length=0,delete this._events[t]):r.splice(i,1),this._events.removeListener&&this.emit("removeListener",t,e)}return this},We.prototype.removeAllListeners=function(t){var e,r;if(!this._events)return this;if(!this._events.removeListener)return arguments.length===0?this._events={}:this._events[t]&&delete this._events[t],this;if(arguments.length===0){for(e in this._events)e!=="removeListener"&&this.removeAllListeners(e);return this.removeAllListeners("removeListener"),this._events={},this}if(r=this._events[t],jt(r))this.removeListener(t,r);else if(r)for(;r.length;)this.removeListener(t,r[r.length-1]);return delete this._events[t],this},We.prototype.listeners=function(t){var e;return!this._events||!this._events[t]?e=[]:jt(this._events[t])?e=[this._events[t]]:e=this._events[t].slice(),e},We.prototype.listenerCount=function(t){if(this._events){var e=this._events[t];if(jt(e))return 1;if(e)return e.length}return 0},We.listenerCount=function(t,e){return t.listenerCount(e)};function jt(t){return typeof t=="function"}function A0(t){return typeof t=="number"}function Kr(t){return typeof t=="object"&&t!==null}function Ua(t){return t===void 0}function T0(t){return typeof t<"u"&&typeof t.context<"u"}const Ct={init:"signer_init",uri:"signer_uri",created:"signer_created",updated:"signer_updated",deleted:"signer_deleted",event:"signer_event"};class C0 extends cc{constructor(e){super(),this.events=new I0.EventEmitter,this.pending=!1,this.initializing=!1,this.requiredNamespaces=e?.requiredNamespaces||{},this.opts=e?.client}get connected(){return typeof this.session<"u"}get connecting(){return this.pending}get chains(){return this.session?Zi(this.session.namespaces):uf(this.requiredNamespaces)}get accounts(){return this.session?Xi(this.session.namespaces):[]}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}off(e,r){this.events.off(e,r)}removeListener(e,r){this.events.removeListener(e,r)}async open(){if(this.pending)return new Promise((e,r)=>{this.events.once("open",()=>{if(this.events.once("open_error",i=>{r(i)}),typeof this.client>"u")return r(new Error("Sign Client not initialized"));e()})});try{this.pending=!0;const e=await this.register(),r=e.find({requiredNamespaces:this.requiredNamespaces});if(r.length)return this.onOpen(r[0]);const{uri:i,approval:n}=await e.connect({requiredNamespaces:this.requiredNamespaces});this.events.emit(Ct.uri,{uri:i}),this.session=await n(),this.events.emit(Ct.created,this.session),this.onOpen()}catch(e){throw this.events.emit("open_error",e),e}}async close(){typeof this.session>"u"||(await(await this.register()).disconnect({topic:this.session.topic,reason:ze("USER_DISCONNECTED")}),this.onClose())}async send(e,r){if(typeof this.client>"u"&&(this.client=await this.register(),this.connected||await this.open()),typeof this.session>"u")throw new Error("Signer connection is missing session");this.client.request({topic:this.session.topic,request:e,chainId:r?.chainId}).then(i=>this.events.emit("payload",Yr(e.id,i))).catch(i=>this.events.emit("payload",wr(e.id,i.message)))}async register(e=this.opts){if(typeof this.client<"u")return this.client;if(this.initializing)return new Promise((r,i)=>{this.events.once("register_error",n=>{i(n)}),this.events.once(Ct.init,()=>{if(typeof this.client>"u")return i(new Error("Sign Client not initialized"));r(this.client)})});if(T0(e))return this.client=e,this.registerEventListeners(),this.client;try{return this.initializing=!0,this.client=await Fn.init(e),this.initializing=!1,this.registerEventListeners(),this.events.emit(Ct.init),this.client}catch(r){throw this.events.emit("register_error",r),r}}onOpen(e){this.pending=!1,e&&(this.session=e),this.events.emit("open")}onClose(){this.pending=!1,this.client&&(this.client=void 0),this.events.emit("close")}registerEventListeners(){typeof this.client<"u"&&(this.client.on("session_event",e=>{var r;this.session&&((r=this.session)==null?void 0:r.topic)!==e.topic||this.events.emit(Ct.event,e.params)}),this.client.on("session_update",e=>{var r;typeof this.client<"u"&&(this.session&&((r=this.session)==null?void 0:r.topic)!==e.topic||(this.session=this.client.session.get(e.topic),this.events.emit(Ct.updated,this.session)))}),this.client.on("session_delete",e=>{var r;!this.session||this.session&&((r=this.session)==null?void 0:r.topic)!==e.topic||(this.onClose(),this.events.emit(Ct.deleted,this.session),this.session=void 0)}))}}const N0=["eth_requestAccounts","eth_accounts","eth_chainId","eth_sendTransaction","eth_signTransaction","eth_sign","eth_signTypedData","personal_sign"],L0=["chainChanged","accountsChanged"];function Ma(t){return{chains:t!=null&&t.chainId?[`eip155:${t.chainId}`]:[],methods:t?.methods||[],events:t?.events||[],rpcMap:t?.rpcMap||void 0}}function ja(t,e){let r;return e.rpcMap&&(r=e.rpcMap[Un([t])]),r}function Un(t){return Number(t[0].split(":")[1])}class R0{constructor(e){this.events=new _r.EventEmitter,this.namespace="eip155",this.accounts=[],this.rpc=Ma(e),this.signer=this.setSignerProvider(e?.client),this.chainId=Un(this.rpc.chains),this.http=this.setHttpProvider(this.chainId),this.registerEventListeners()}async request(e){switch(e.method){case"eth_requestAccounts":return await this.connect(),this.accounts;case"eth_accounts":return this.accounts;case"eth_chainId":return this.chainId}if(e.method.startsWith("eth_signTypedData")||this.rpc.methods.includes(e.method))return this.signer.request(e,{chainId:this.formatChainId(this.chainId)});if(typeof this.http>"u")throw new Error(`Cannot request JSON-RPC method (${e.method}) without provided rpc url`);return this.http.request(e)}sendAsync(e,r){this.request(e).then(i=>r(null,i)).catch(i=>r(i,void 0))}get connected(){return this.signer.connection.connected}get connecting(){return this.signer.connection.connecting}async enable(){return await this.request({method:"eth_requestAccounts"})}async connect(){await this.signer.connect()}async disconnect(){await this.signer.disconnect()}on(e,r){this.events.on(e,r)}once(e,r){this.events.once(e,r)}removeListener(e,r){this.events.removeListener(e,r)}off(e,r){this.events.off(e,r)}get isWalletConnect(){return!0}registerEventListeners(){this.signer.on("connect",()=>{const e=this.signer.connection.chains;e&&e.length&&this.setChainIds(e);const r=this.signer.connection.accounts;r&&r.length&&this.setAccounts(r)}),this.signer.connection.on(Ct.created,e=>{const r=Zi(e.namespaces,[this.namespace]);this.setChainIds(r);const i=Xi(e.namespaces,[this.namespace]);this.setAccounts(i)}),this.signer.connection.on(Ct.updated,e=>{const r=Zi(e.namespaces,[this.namespace]);this.setChainIds(r);const i=Xi(e.namespaces,[this.namespace]);i!==this.accounts&&this.setAccounts(i)}),this.signer.connection.on(Ct.event,e=>{if(!this.rpc.chains.includes(e.chainId))return;const{event:r}=e;r.name==="accountsChanged"?(this.accounts=r.data,this.events.emit("accountsChanged",this.accounts)):r.name==="chainChanged"?this.setChainId(r.data):this.events.emit(r.name,r.data)}),this.signer.on("disconnect",()=>{this.events.emit("disconnect")}),this.events.on("chainChanged",e=>this.setHttpProvider(e))}setSignerProvider(e){const r=new C0({requiredNamespaces:{[this.namespace]:{chains:this.rpc.chains,methods:this.rpc.methods,events:this.rpc.events}},client:e});return new Ti(r)}setHttpProvider(e){const r=ja(`${this.namespace}:${e}`,this.rpc);return typeof r>"u"?void 0:new Ti(new gc(r))}isCompatibleChainId(e){return typeof e=="string"?e.startsWith(`${this.namespace}:`):!1}formatChainId(e){return`${this.namespace}:${e}`}parseChainId(e){return Number(e.split(":")[1])}setChainIds(e){const r=e.filter(i=>this.isCompatibleChainId(i)).map(i=>this.parseChainId(i)).filter(i=>i!==this.chainId);r.length&&(this.chainId=r[0],this.events.emit("chainChanged",this.chainId))}setChainId(e){if(this.isCompatibleChainId(e)){const r=this.parseChainId(e);this.chainId=r,this.events.emit("chainChanged",this.chainId)}}parseAccountId(e){const[r,i,n]=e.split(":");return{chainId:`${r}:${i}`,address:n}}setAccounts(e){this.accounts=e.filter(r=>this.parseChainId(this.parseAccountId(r).chainId)===this.chainId).map(r=>this.parseAccountId(r).address),this.events.emit("accountsChanged",this.accounts)}}Et.default=R0,Et.getEthereumChainId=Un,Et.getRpcConfig=Ma,Et.getRpcUrl=ja,Et.signerEvents=L0,Et.signerMethods=N0,Object.defineProperty(Et,"__esModule",{value:!0})});
2
2
  //# sourceMappingURL=index.umd.js.map