@walletconnect/ethereum-provider 2.0.0-beta.101.5 → 2.0.0-beta.102
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/umd/index.min.js +1 -1
- package/package.json +5 -5
package/dist/umd/index.min.js
CHANGED
|
@@ -13,4 +13,4 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
|
|
|
13
13
|
OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
|
|
14
14
|
PERFORMANCE OF THIS SOFTWARE.
|
|
15
15
|
***************************************************************************** */
|
|
16
|
-
var n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)};function i(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var s=function(){return(s=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var i in t=arguments[r])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)};function o(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r}function a(e,t,r,n){var i,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,r,n);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(o=(s<3?i(o):s>3?i(t,r,o):i(t,r))||o);return s>3&&o&&Object.defineProperty(t,r,o),o}function c(e,t){return function(r,n){t(r,n,e)}}function u(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function h(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))}function l(e,t){var r,n,i,s,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(s){return function(a){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;o;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,n=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){o.label=s[1];break}if(6===s[0]&&o.label<i[1]){o.label=i[1],i=s;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(s);break}i[2]&&o.ops.pop(),o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}}function d(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}function f(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||(t[r]=e[r])}function p(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function g(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,i,s=r.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(n=s.next()).done;)o.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(r=s.return)&&r.call(s)}finally{if(i)throw i.error}}return o}function y(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(g(arguments[t]));return e}function b(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;var n=Array(e),i=0;for(t=0;t<r;t++)for(var s=arguments[t],o=0,a=s.length;o<a;o++,i++)n[i]=s[o];return n}function v(e){return this instanceof v?(this.v=e,this):new v(e)}function m(e,t,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,i=r.apply(e,t||[]),s=[];return n={},o("next"),o("throw"),o("return"),n[Symbol.asyncIterator]=function(){return this},n;function o(e){i[e]&&(n[e]=function(t){return new Promise((function(r,n){s.push([e,t,r,n])>1||a(e,t)}))})}function a(e,t){try{(r=i[e](t)).value instanceof v?Promise.resolve(r.value.v).then(c,u):h(s[0][2],r)}catch(e){h(s[0][3],e)}var r}function c(e){a("next",e)}function u(e){a("throw",e)}function h(e,t){e(t),s.shift(),s.length&&a(s[0][0],s[0][1])}}function _(e){var t,r;return t={},n("next"),n("throw",(function(e){throw e})),n("return"),t[Symbol.iterator]=function(){return this},t;function n(n,i){t[n]=e[n]?function(t){return(r=!r)?{value:v(e[n](t)),done:"return"===n}:i?i(t):t}:i}}function w(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=p(e),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,i){(function(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)})(n,i,(t=e[r](t)).done,t.value)}))}}}function E(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function O(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function S(e){return e&&e.__esModule?e:{default:e}}function I(e,t){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return t.get(e)}function j(e,t,r){if(!t.has(e))throw new TypeError("attempted to set private field on non-instance");return t.set(e,r),r}},function(e,t){var r;r=function(){return this}();try{r=r||new Function("return this")()}catch(e){"object"==typeof window&&(r=window)}e.exports=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(105);t.decode=e=>[n.decode(e),n.decode.bytes],t.encodeTo=(e,t,r=0)=>(n.encode(e,t,r),t),t.encodingLength=e=>n.encodingLength(e)},function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(83),t),i(r(84),t)},function(e,t,r){"use strict";var n=r(49);r.o(n,"IJsonRpcConnection")&&r.d(t,"IJsonRpcConnection",(function(){return n.IJsonRpcConnection})),r.o(n,"IJsonRpcProvider")&&r.d(t,"IJsonRpcProvider",(function(){return n.IJsonRpcProvider})),r.o(n,"isHttpUrl")&&r.d(t,"isHttpUrl",(function(){return n.isHttpUrl})),r.o(n,"isJsonRpcError")&&r.d(t,"isJsonRpcError",(function(){return n.isJsonRpcError})),r.o(n,"isJsonRpcRequest")&&r.d(t,"isJsonRpcRequest",(function(){return n.isJsonRpcRequest})),r.o(n,"isJsonRpcResponse")&&r.d(t,"isJsonRpcResponse",(function(){return n.isJsonRpcResponse})),r.o(n,"isJsonRpcResult")&&r.d(t,"isJsonRpcResult",(function(){return n.isJsonRpcResult})),r.o(n,"isLocalhostUrl")&&r.d(t,"isLocalhostUrl",(function(){return n.isLocalhostUrl})),r.o(n,"isReactNative")&&r.d(t,"isReactNative",(function(){return n.isReactNative})),r.o(n,"isWsUrl")&&r.d(t,"isWsUrl",(function(){return n.isWsUrl}));r(27);var i=r(50);r.d(t,"IJsonRpcConnection",(function(){return i.a})),r.d(t,"IJsonRpcProvider",(function(){return i.b}));var s=r(51);r.o(s,"isHttpUrl")&&r.d(t,"isHttpUrl",(function(){return s.isHttpUrl})),r.o(s,"isJsonRpcError")&&r.d(t,"isJsonRpcError",(function(){return s.isJsonRpcError})),r.o(s,"isJsonRpcRequest")&&r.d(t,"isJsonRpcRequest",(function(){return s.isJsonRpcRequest})),r.o(s,"isJsonRpcResponse")&&r.d(t,"isJsonRpcResponse",(function(){return s.isJsonRpcResponse})),r.o(s,"isJsonRpcResult")&&r.d(t,"isJsonRpcResult",(function(){return s.isJsonRpcResult})),r.o(s,"isLocalhostUrl")&&r.d(t,"isLocalhostUrl",(function(){return s.isLocalhostUrl})),r.o(s,"isReactNative")&&r.d(t,"isReactNative",(function(){return s.isReactNative})),r.o(s,"isWsUrl")&&r.d(t,"isWsUrl",(function(){return s.isWsUrl}))},function(e,t,r){"use strict";(function(e){var n=r(5),i=r(13),s=r(1);const o=void 0!==e.WebSocket?e.WebSocket:r(132);t.a=class{constructor(e){if(this.url=e,this.events=new n.EventEmitter,this.registering=!1,!Object(s.isWsUrl)(e))throw new Error("Provided URL is not compatible with WebSocket connection: "+e);this.url=e}get connected(){return void 0!==this.socket}get connecting(){return this.registering}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async open(e=this.url){await this.register(e)}async close(){if(void 0===this.socket)throw new Error("Connection already closed");this.socket.close(),this.onClose()}async send(e,t){void 0===this.socket&&(this.socket=await this.register());try{this.socket.send(Object(i.b)(e))}catch(t){this.onError(e.id,t)}}register(e=this.url){if(!Object(s.isWsUrl)(e))throw new Error("Provided URL is not compatible with WebSocket connection: "+e);return this.registering?new Promise((e,t)=>{this.events.once("register_error",e=>{t(e)}),this.events.once("open",()=>{if(void 0===this.socket)return t(new Error("WebSocket connection is missing or invalid"));e(this.socket)})}):(this.url=e,this.registering=!0,new Promise((t,r)=>{const n=Object(s.isReactNative)()?void 0:{rejectUnauthorized:!Object(s.isLocalhostUrl)(e)},i=new o(e,[],n);i.onopen=()=>{this.onOpen(i),t(i)},i.onerror=e=>{const t=this.parseError(e.error);this.events.emit("register_error",t),this.onClose(),r(t)}}))}onOpen(e){e.onmessage=e=>this.onPayload(e),e.onclose=()=>this.onClose(),e.onerror=e=>{const t=this.parseError(e.error);this.events.emit("error",t)},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(void 0===e.data)return;const t="string"==typeof e.data?Object(i.a)(e.data):e.data;this.events.emit("payload",t)}onError(e,t){const r=this.parseError(t),n=r.message||r.toString(),i=Object(s.formatJsonRpcError)(e,n);this.events.emit("payload",i)}parseError(e,t=this.url){return Object(s.parseConnectionError)(e,t,"WS")}}}).call(this,r(31))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(25),i=r(14);t.DIGEST_LENGTH=32,t.BLOCK_SIZE=64;var s=function(){function e(){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 e.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},e.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},e.prototype.clean=function(){i.wipe(this._buffer),i.wipe(this._temp),this.reset()},e.prototype.update=function(e,t){if(void 0===t&&(t=e.length),this._finished)throw new Error("SHA256: can't update because hash was finished.");var r=0;if(this._bytesHashed+=t,this._bufferLength>0){for(;this._bufferLength<this.blockSize&&t>0;)this._buffer[this._bufferLength++]=e[r++],t--;this._bufferLength===this.blockSize&&(a(this._temp,this._state,this._buffer,0,this.blockSize),this._bufferLength=0)}for(t>=this.blockSize&&(r=a(this._temp,this._state,e,r,t),t%=this.blockSize);t>0;)this._buffer[this._bufferLength++]=e[r++],t--;return this},e.prototype.finish=function(e){if(!this._finished){var t=this._bytesHashed,r=this._bufferLength,i=t/536870912|0,s=t<<3,o=t%64<56?64:128;this._buffer[r]=128;for(var c=r+1;c<o-8;c++)this._buffer[c]=0;n.writeUint32BE(i,this._buffer,o-8),n.writeUint32BE(s,this._buffer,o-4),a(this._temp,this._state,this._buffer,0,o),this._finished=!0}for(c=0;c<this.digestLength/4;c++)n.writeUint32BE(this._state[c],e,4*c);return this},e.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},e.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}},e.prototype.restoreState=function(e){return this._state.set(e.state),this._bufferLength=e.bufferLength,e.buffer&&this._buffer.set(e.buffer),this._bytesHashed=e.bytesHashed,this._finished=!1,this},e.prototype.cleanSavedState=function(e){i.wipe(e.state),e.buffer&&i.wipe(e.buffer),e.bufferLength=0,e.bytesHashed=0},e}();t.SHA256=s;var o=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 a(e,t,r,i,s){for(;s>=64;){for(var a=t[0],c=t[1],u=t[2],h=t[3],l=t[4],d=t[5],f=t[6],p=t[7],g=0;g<16;g++){var y=i+4*g;e[g]=n.readUint32BE(r,y)}for(g=16;g<64;g++){var b=e[g-2],v=(b>>>17|b<<15)^(b>>>19|b<<13)^b>>>10,m=((b=e[g-15])>>>7|b<<25)^(b>>>18|b<<14)^b>>>3;e[g]=(v+e[g-7]|0)+(m+e[g-16]|0)}for(g=0;g<64;g++){v=(((l>>>6|l<<26)^(l>>>11|l<<21)^(l>>>25|l<<7))+(l&d^~l&f)|0)+(p+(o[g]+e[g]|0)|0)|0,m=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+(a&c^a&u^c&u)|0;p=f,f=d,d=l,l=h+v|0,h=u,u=c,c=a,a=v+m|0}t[0]+=a,t[1]+=c,t[2]+=u,t[3]+=h,t[4]+=l,t[5]+=d,t[6]+=f,t[7]+=p,i+=64,s-=64}return i}t.hash=function(e){var t=new s;t.update(e);var r=t.digest();return t.clean(),r}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(20),i=r(131),s=r(14);function o(e){var t=new Float64Array(16);if(e)for(var r=0;r<e.length;r++)t[r]=e[r];return t}t.SIGNATURE_LENGTH=64,t.PUBLIC_KEY_LENGTH=32,t.SECRET_KEY_LENGTH=64,t.SEED_LENGTH=32,new Uint8Array(32)[0]=9;var a=o(),c=o([1]),u=o([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),h=o([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),l=o([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),d=o([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),f=o([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function p(e,t){for(var r=0;r<16;r++)e[r]=0|t[r]}function g(e){for(var t=1,r=0;r<16;r++){var n=e[r]+t+65535;t=Math.floor(n/65536),e[r]=n-65536*t}e[0]+=t-1+37*(t-1)}function y(e,t,r){for(var n=~(r-1),i=0;i<16;i++){var s=n&(e[i]^t[i]);e[i]^=s,t[i]^=s}}function b(e,t){for(var r=o(),n=o(),i=0;i<16;i++)n[i]=t[i];g(n),g(n),g(n);for(var s=0;s<2;s++){r[0]=n[0]-65517;for(i=1;i<15;i++)r[i]=n[i]-65535-(r[i-1]>>16&1),r[i-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);var a=r[15]>>16&1;r[14]&=65535,y(n,r,1-a)}for(i=0;i<16;i++)e[2*i]=255&n[i],e[2*i+1]=n[i]>>8}function v(e,t){for(var r=0,n=0;n<32;n++)r|=e[n]^t[n];return(1&r-1>>>8)-1}function m(e,t){var r=new Uint8Array(32),n=new Uint8Array(32);return b(r,e),b(n,t),v(r,n)}function _(e){var t=new Uint8Array(32);return b(t,e),1&t[0]}function w(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]+r[n]}function E(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]-r[n]}function O(e,t,r){var n,i,s=0,o=0,a=0,c=0,u=0,h=0,l=0,d=0,f=0,p=0,g=0,y=0,b=0,v=0,m=0,_=0,w=0,E=0,O=0,S=0,I=0,j=0,R=0,N=0,P=0,A=0,T=0,L=0,x=0,U=0,C=0,M=r[0],D=r[1],z=r[2],k=r[3],V=r[4],H=r[5],K=r[6],J=r[7],q=r[8],B=r[9],F=r[10],G=r[11],W=r[12],Y=r[13],$=r[14],X=r[15];s+=(n=t[0])*M,o+=n*D,a+=n*z,c+=n*k,u+=n*V,h+=n*H,l+=n*K,d+=n*J,f+=n*q,p+=n*B,g+=n*F,y+=n*G,b+=n*W,v+=n*Y,m+=n*$,_+=n*X,o+=(n=t[1])*M,a+=n*D,c+=n*z,u+=n*k,h+=n*V,l+=n*H,d+=n*K,f+=n*J,p+=n*q,g+=n*B,y+=n*F,b+=n*G,v+=n*W,m+=n*Y,_+=n*$,w+=n*X,a+=(n=t[2])*M,c+=n*D,u+=n*z,h+=n*k,l+=n*V,d+=n*H,f+=n*K,p+=n*J,g+=n*q,y+=n*B,b+=n*F,v+=n*G,m+=n*W,_+=n*Y,w+=n*$,E+=n*X,c+=(n=t[3])*M,u+=n*D,h+=n*z,l+=n*k,d+=n*V,f+=n*H,p+=n*K,g+=n*J,y+=n*q,b+=n*B,v+=n*F,m+=n*G,_+=n*W,w+=n*Y,E+=n*$,O+=n*X,u+=(n=t[4])*M,h+=n*D,l+=n*z,d+=n*k,f+=n*V,p+=n*H,g+=n*K,y+=n*J,b+=n*q,v+=n*B,m+=n*F,_+=n*G,w+=n*W,E+=n*Y,O+=n*$,S+=n*X,h+=(n=t[5])*M,l+=n*D,d+=n*z,f+=n*k,p+=n*V,g+=n*H,y+=n*K,b+=n*J,v+=n*q,m+=n*B,_+=n*F,w+=n*G,E+=n*W,O+=n*Y,S+=n*$,I+=n*X,l+=(n=t[6])*M,d+=n*D,f+=n*z,p+=n*k,g+=n*V,y+=n*H,b+=n*K,v+=n*J,m+=n*q,_+=n*B,w+=n*F,E+=n*G,O+=n*W,S+=n*Y,I+=n*$,j+=n*X,d+=(n=t[7])*M,f+=n*D,p+=n*z,g+=n*k,y+=n*V,b+=n*H,v+=n*K,m+=n*J,_+=n*q,w+=n*B,E+=n*F,O+=n*G,S+=n*W,I+=n*Y,j+=n*$,R+=n*X,f+=(n=t[8])*M,p+=n*D,g+=n*z,y+=n*k,b+=n*V,v+=n*H,m+=n*K,_+=n*J,w+=n*q,E+=n*B,O+=n*F,S+=n*G,I+=n*W,j+=n*Y,R+=n*$,N+=n*X,p+=(n=t[9])*M,g+=n*D,y+=n*z,b+=n*k,v+=n*V,m+=n*H,_+=n*K,w+=n*J,E+=n*q,O+=n*B,S+=n*F,I+=n*G,j+=n*W,R+=n*Y,N+=n*$,P+=n*X,g+=(n=t[10])*M,y+=n*D,b+=n*z,v+=n*k,m+=n*V,_+=n*H,w+=n*K,E+=n*J,O+=n*q,S+=n*B,I+=n*F,j+=n*G,R+=n*W,N+=n*Y,P+=n*$,A+=n*X,y+=(n=t[11])*M,b+=n*D,v+=n*z,m+=n*k,_+=n*V,w+=n*H,E+=n*K,O+=n*J,S+=n*q,I+=n*B,j+=n*F,R+=n*G,N+=n*W,P+=n*Y,A+=n*$,T+=n*X,b+=(n=t[12])*M,v+=n*D,m+=n*z,_+=n*k,w+=n*V,E+=n*H,O+=n*K,S+=n*J,I+=n*q,j+=n*B,R+=n*F,N+=n*G,P+=n*W,A+=n*Y,T+=n*$,L+=n*X,v+=(n=t[13])*M,m+=n*D,_+=n*z,w+=n*k,E+=n*V,O+=n*H,S+=n*K,I+=n*J,j+=n*q,R+=n*B,N+=n*F,P+=n*G,A+=n*W,T+=n*Y,L+=n*$,x+=n*X,m+=(n=t[14])*M,_+=n*D,w+=n*z,E+=n*k,O+=n*V,S+=n*H,I+=n*K,j+=n*J,R+=n*q,N+=n*B,P+=n*F,A+=n*G,T+=n*W,L+=n*Y,x+=n*$,U+=n*X,_+=(n=t[15])*M,o+=38*(E+=n*z),a+=38*(O+=n*k),c+=38*(S+=n*V),u+=38*(I+=n*H),h+=38*(j+=n*K),l+=38*(R+=n*J),d+=38*(N+=n*q),f+=38*(P+=n*B),p+=38*(A+=n*F),g+=38*(T+=n*G),y+=38*(L+=n*W),b+=38*(x+=n*Y),v+=38*(U+=n*$),m+=38*(C+=n*X),s=(n=(s+=38*(w+=n*D))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),o=(n=o+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=a+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),_=(n=_+i+65535)-65536*(i=Math.floor(n/65536)),s=(n=(s+=i-1+37*(i-1))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),o=(n=o+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=a+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),_=(n=_+i+65535)-65536*(i=Math.floor(n/65536)),s+=i-1+37*(i-1),e[0]=s,e[1]=o,e[2]=a,e[3]=c,e[4]=u,e[5]=h,e[6]=l,e[7]=d,e[8]=f,e[9]=p,e[10]=g,e[11]=y,e[12]=b,e[13]=v,e[14]=m,e[15]=_}function S(e,t){O(e,t,t)}function I(e,t){var r,n=o();for(r=0;r<16;r++)n[r]=t[r];for(r=253;r>=0;r--)S(n,n),2!==r&&4!==r&&O(n,n,t);for(r=0;r<16;r++)e[r]=n[r]}function j(e,t){var r=o(),n=o(),i=o(),s=o(),a=o(),c=o(),u=o(),l=o(),d=o();E(r,e[1],e[0]),E(d,t[1],t[0]),O(r,r,d),w(n,e[0],e[1]),w(d,t[0],t[1]),O(n,n,d),O(i,e[3],t[3]),O(i,i,h),O(s,e[2],t[2]),w(s,s,s),E(a,n,r),E(c,s,i),w(u,s,i),w(l,n,r),O(e[0],a,c),O(e[1],l,u),O(e[2],u,c),O(e[3],a,l)}function R(e,t,r){for(var n=0;n<4;n++)y(e[n],t[n],r)}function N(e,t){var r=o(),n=o(),i=o();I(i,t[2]),O(r,t[0],i),O(n,t[1],i),b(e,n),e[31]^=_(r)<<7}function P(e,t,r){p(e[0],a),p(e[1],c),p(e[2],c),p(e[3],a);for(var n=255;n>=0;--n){var i=r[n/8|0]>>(7&n)&1;R(e,t,i),j(t,e),j(e,e),R(e,t,i)}}function A(e,t){var r=[o(),o(),o(),o()];p(r[0],l),p(r[1],d),p(r[2],c),O(r[3],l,d),P(e,r,t)}function T(e){if(e.length!==t.SEED_LENGTH)throw new Error("ed25519: seed must be "+t.SEED_LENGTH+" bytes");var r=i.hash(e);r[0]&=248,r[31]&=127,r[31]|=64;var n=new Uint8Array(32),s=[o(),o(),o(),o()];A(s,r),N(n,s);var a=new Uint8Array(64);return a.set(e),a.set(n,32),{publicKey:n,secretKey:a}}t.generateKeyPairFromSeed=T,t.generateKeyPair=function(e){var t=n.randomBytes(32,e),r=T(t);return s.wipe(t),r},t.extractPublicKeyFromSecretKey=function(e){if(e.length!==t.SECRET_KEY_LENGTH)throw new Error("ed25519: secret key must be "+t.SECRET_KEY_LENGTH+" bytes");return new Uint8Array(e.subarray(32))};var 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 x(e,t){var r,n,i,s;for(n=63;n>=32;--n){for(r=0,i=n-32,s=n-12;i<s;++i)t[i]+=r-16*t[n]*L[i-(n-32)],r=Math.floor((t[i]+128)/256),t[i]-=256*r;t[i]+=r,t[n]=0}for(r=0,i=0;i<32;i++)t[i]+=r-(t[31]>>4)*L[i],r=t[i]>>8,t[i]&=255;for(i=0;i<32;i++)t[i]-=r*L[i];for(n=0;n<32;n++)t[n+1]+=t[n]>>8,e[n]=255&t[n]}function U(e){for(var t=new Float64Array(64),r=0;r<64;r++)t[r]=e[r];for(r=0;r<64;r++)e[r]=0;x(e,t)}function C(e,t){var r=o(),n=o(),i=o(),s=o(),h=o(),l=o(),d=o();return p(e[2],c),function(e,t){for(var r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}(e[1],t),S(i,e[1]),O(s,i,u),E(i,i,e[2]),w(s,e[2],s),S(h,s),S(l,h),O(d,l,h),O(r,d,i),O(r,r,s),function(e,t){var r,n=o();for(r=0;r<16;r++)n[r]=t[r];for(r=250;r>=0;r--)S(n,n),1!==r&&O(n,n,t);for(r=0;r<16;r++)e[r]=n[r]}(r,r),O(r,r,i),O(r,r,s),O(r,r,s),O(e[0],r,s),S(n,e[0]),O(n,n,s),m(n,i)&&O(e[0],e[0],f),S(n,e[0]),O(n,n,s),m(n,i)?-1:(_(e[0])===t[31]>>7&&E(e[0],a,e[0]),O(e[3],e[0],e[1]),0)}t.sign=function(e,t){var r=new Float64Array(64),n=[o(),o(),o(),o()],s=i.hash(e.subarray(0,32));s[0]&=248,s[31]&=127,s[31]|=64;var a=new Uint8Array(64);a.set(s.subarray(32),32);var c=new i.SHA512;c.update(a.subarray(32)),c.update(t);var u=c.digest();c.clean(),U(u),A(n,u),N(a,n),c.reset(),c.update(a.subarray(0,32)),c.update(e.subarray(32)),c.update(t);var h=c.digest();U(h);for(var l=0;l<32;l++)r[l]=u[l];for(l=0;l<32;l++)for(var d=0;d<32;d++)r[l+d]+=h[l]*s[d];return x(a.subarray(32),r),a},t.verify=function(e,r,n){var s=new Uint8Array(32),a=[o(),o(),o(),o()],c=[o(),o(),o(),o()];if(n.length!==t.SIGNATURE_LENGTH)throw new Error("ed25519: signature must be "+t.SIGNATURE_LENGTH+" bytes");if(C(c,e))return!1;var u=new i.SHA512;u.update(n.subarray(0,32)),u.update(e),u.update(r);var h=u.digest();return U(h),P(a,c,h),A(c,n.subarray(32)),j(a,c),N(s,a),!v(n,s)},t.convertPublicKeyToX25519=function(e){var t=[o(),o(),o(),o()];if(C(t,e))throw new Error("Ed25519: invalid public key");var r=o(),n=o(),i=t[1];w(r,c,i),E(n,c,i),I(n,n),O(r,r,n);var s=new Uint8Array(32);return b(s,r),s},t.convertSecretKeyToX25519=function(e){var t=i.hash(e.subarray(0,32));t[0]&=248,t[31]&=127,t[31]|=64;var r=new Uint8Array(t.subarray(0,32));return s.wipe(t),r}},function(e,t,r){"use strict";function n(e,t){if(e.length!==t.length)return 0;for(var r=0,n=0;n<e.length;n++)r|=e[n]^t[n];return 1&r-1>>>8}Object.defineProperty(t,"__esModule",{value:!0}),t.select=function(e,t,r){return~(e-1)&t|e-1&r},t.lessOrEqual=function(e,t){return(0|e)-(0|t)-1>>>31&1},t.compare=n,t.equal=function(e,t){return 0!==e.length&&0!==t.length&&0!==n(e,t)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(26);class i{constructor(e,t,r){this.name=e,this.code=t,this.encode=r}digest(e){if(e instanceof Uint8Array){const t=this.encode(e);return t instanceof Uint8Array?n.create(this.code,t):t.then(e=>n.create(this.code,e))}throw Error("Unknown type, must be binary type")}}t.Hasher=i,t.from=({name:e,code:t,encode:r})=>new i(e,t,r)},function(e,t,r){"use strict";r.r(t),r.d(t,"JsonRpcProvider",(function(){return s}));var n=r(5),i=r(1);class s extends i.IJsonRpcProvider{constructor(e){super(e),this.events=new n.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,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async request(e,t){return this.requestStrict(Object(i.formatJsonRpcRequest)(e.method,e.params||[]),t)}async requestStrict(e,t){return new Promise(async(r,n)=>{if(!this.connection.connected)try{await this.open()}catch(e){n(e)}this.events.on(""+e.id,e=>{Object(i.isJsonRpcError)(e)?n(e.error):r(e.result)});try{await this.connection.send(e,t)}catch(e){n(e)}})}setConnection(e=this.connection){return e}onPayload(e){this.events.emit("payload",e),Object(i.isJsonRpcResponse)(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(),"string"==typeof e&&(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 o=s;t.default=o},function(e,t){var r="undefined"!=typeof self?self:this,n=function(){function e(){this.fetch=!1,this.DOMException=r.DOMException}return e.prototype=r,new e}();!function(e){!function(t){var r="URLSearchParams"in e,n="Symbol"in e&&"iterator"in Symbol,i="FileReader"in e&&"Blob"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),s="FormData"in e,o="ArrayBuffer"in e;if(o)var a=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],c=ArrayBuffer.isView||function(e){return e&&a.indexOf(Object.prototype.toString.call(e))>-1};function u(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(e))throw new TypeError("Invalid character in header field name");return e.toLowerCase()}function h(e){return"string"!=typeof e&&(e=String(e)),e}function l(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return n&&(t[Symbol.iterator]=function(){return t}),t}function d(e){this.map={},e instanceof d?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function f(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function p(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function g(e){var t=new FileReader,r=p(t);return t.readAsArrayBuffer(e),r}function y(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function b(){return this.bodyUsed=!1,this._initBody=function(e){var t;this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:i&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:s&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():o&&i&&((t=e)&&DataView.prototype.isPrototypeOf(t))?(this._bodyArrayBuffer=y(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o&&(ArrayBuffer.prototype.isPrototypeOf(e)||c(e))?this._bodyArrayBuffer=y(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var e=f(this);if(e)return e;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?f(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(g)}),this.text=function(){var e,t,r,n=f(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,t=new FileReader,r=p(t),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n<t.length;n++)r[n]=String.fromCharCode(t[n]);return r.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},s&&(this.formData=function(){return this.text().then(_)}),this.json=function(){return this.text().then(JSON.parse)},this}d.prototype.append=function(e,t){e=u(e),t=h(t);var r=this.map[e];this.map[e]=r?r+", "+t:t},d.prototype.delete=function(e){delete this.map[u(e)]},d.prototype.get=function(e){return e=u(e),this.has(e)?this.map[e]:null},d.prototype.has=function(e){return this.map.hasOwnProperty(u(e))},d.prototype.set=function(e,t){this.map[u(e)]=h(t)},d.prototype.forEach=function(e,t){for(var r in this.map)this.map.hasOwnProperty(r)&&e.call(t,this.map[r],r,this)},d.prototype.keys=function(){var e=[];return this.forEach((function(t,r){e.push(r)})),l(e)},d.prototype.values=function(){var e=[];return this.forEach((function(t){e.push(t)})),l(e)},d.prototype.entries=function(){var e=[];return this.forEach((function(t,r){e.push([r,t])})),l(e)},n&&(d.prototype[Symbol.iterator]=d.prototype.entries);var v=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function m(e,t){var r,n,i=(t=t||{}).body;if(e instanceof m){if(e.bodyUsed)throw new TypeError("Already read");this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new d(e.headers)),this.method=e.method,this.mode=e.mode,this.signal=e.signal,i||null==e._bodyInit||(i=e._bodyInit,e.bodyUsed=!0)}else this.url=String(e);if(this.credentials=t.credentials||this.credentials||"same-origin",!t.headers&&this.headers||(this.headers=new d(t.headers)),this.method=(r=t.method||this.method||"GET",n=r.toUpperCase(),v.indexOf(n)>-1?n:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(i)}function _(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function w(e,t){t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in t?t.statusText:"OK",this.headers=new d(t.headers),this.url=t.url||"",this._initBody(e)}m.prototype.clone=function(){return new m(this,{body:this._bodyInit})},b.call(m.prototype),b.call(w.prototype),w.prototype.clone=function(){return new w(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new d(this.headers),url:this.url})},w.error=function(){var e=new w(null,{status:0,statusText:""});return e.type="error",e};var E=[301,302,303,307,308];w.redirect=function(e,t){if(-1===E.indexOf(t))throw new RangeError("Invalid status code");return new w(null,{status:t,headers:{location:e}})},t.DOMException=e.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function O(e,r){return new Promise((function(n,s){var o=new m(e,r);if(o.signal&&o.signal.aborted)return s(new t.DOMException("Aborted","AbortError"));var a=new XMLHttpRequest;function c(){a.abort()}a.onload=function(){var e,t,r={status:a.status,statusText:a.statusText,headers:(e=a.getAllResponseHeaders()||"",t=new d,e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(e){var r=e.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();t.append(n,i)}})),t)};r.url="responseURL"in a?a.responseURL:r.headers.get("X-Request-URL");var i="response"in a?a.response:a.responseText;n(new w(i,r))},a.onerror=function(){s(new TypeError("Network request failed"))},a.ontimeout=function(){s(new TypeError("Network request failed"))},a.onabort=function(){s(new t.DOMException("Aborted","AbortError"))},a.open(o.method,o.url,!0),"include"===o.credentials?a.withCredentials=!0:"omit"===o.credentials&&(a.withCredentials=!1),"responseType"in a&&i&&(a.responseType="blob"),o.headers.forEach((function(e,t){a.setRequestHeader(t,e)})),o.signal&&(o.signal.addEventListener("abort",c),a.onreadystatechange=function(){4===a.readyState&&o.signal.removeEventListener("abort",c)}),a.send(void 0===o._bodyInit?null:o._bodyInit)}))}O.polyfill=!0,e.fetch||(e.fetch=O,e.Headers=d,e.Request=m,e.Response=w),t.Headers=d,t.Request=m,t.Response=w,t.fetch=O,Object.defineProperty(t,"__esModule",{value:!0})}({})}(n),n.fetch.ponyfill=!0,delete n.fetch.polyfill;var i=n;(t=i.fetch).default=i.fetch,t.fetch=i.fetch,t.Headers=i.Headers,t.Request=i.Request,t.Response=i.Response,e.exports=t},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(85),i=r(87),s=r(14),o=r(25),a=r(38);t.KEY_LENGTH=32,t.NONCE_LENGTH=12,t.TAG_LENGTH=16;var c=new Uint8Array(16),u=function(){function e(e){if(this.nonceLength=t.NONCE_LENGTH,this.tagLength=t.TAG_LENGTH,e.length!==t.KEY_LENGTH)throw new Error("ChaCha20Poly1305 needs 32-byte key");this._key=new Uint8Array(e)}return e.prototype.seal=function(e,t,r,i){if(e.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");var o=new Uint8Array(16);o.set(e,o.length-e.length);var a=new Uint8Array(32);n.stream(this._key,o,a,4);var c,u=t.length+this.tagLength;if(i){if(i.length!==u)throw new Error("ChaCha20Poly1305: incorrect destination length");c=i}else c=new Uint8Array(u);return n.streamXOR(this._key,o,t,c,4),this._authenticate(c.subarray(c.length-this.tagLength,c.length),a,c.subarray(0,c.length-this.tagLength),r),s.wipe(o),c},e.prototype.open=function(e,t,r,i){if(e.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");if(t.length<this.tagLength)return null;var o=new Uint8Array(16);o.set(e,o.length-e.length);var c=new Uint8Array(32);n.stream(this._key,o,c,4);var u=new Uint8Array(this.tagLength);if(this._authenticate(u,c,t.subarray(0,t.length-this.tagLength),r),!a.equal(u,t.subarray(t.length-this.tagLength,t.length)))return null;var h,l=t.length-this.tagLength;if(i){if(i.length!==l)throw new Error("ChaCha20Poly1305: incorrect destination length");h=i}else h=new Uint8Array(l);return n.streamXOR(this._key,o,t.subarray(0,t.length-this.tagLength),h,4),s.wipe(o),h},e.prototype.clean=function(){return s.wipe(this._key),this},e.prototype._authenticate=function(e,t,r,n){var a=new i.Poly1305(t);n&&(a.update(n),n.length%16>0&&a.update(c.subarray(n.length%16))),a.update(r),r.length%16>0&&a.update(c.subarray(r.length%16));var u=new Uint8Array(8);n&&o.writeUint64LE(n.length,u),a.update(u),o.writeUint64LE(r.length,u),a.update(u);for(var h=a.digest(),l=0;l<h.length;l++)e[l]=h[l];a.clean(),s.wipe(h),s.wipe(u)},e}();t.ChaCha20Poly1305=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(20),i=r(14);function s(e){var t=new Float64Array(16);if(e)for(var r=0;r<e.length;r++)t[r]=e[r];return t}t.PUBLIC_KEY_LENGTH=32,t.SECRET_KEY_LENGTH=32,t.SHARED_KEY_LENGTH=32;var o=new Uint8Array(32);o[0]=9;var a=s([56129,1]);function c(e){for(var t=1,r=0;r<16;r++){var n=e[r]+t+65535;t=Math.floor(n/65536),e[r]=n-65536*t}e[0]+=t-1+37*(t-1)}function u(e,t,r){for(var n=~(r-1),i=0;i<16;i++){var s=n&(e[i]^t[i]);e[i]^=s,t[i]^=s}}function h(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]+r[n]}function l(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]-r[n]}function d(e,t,r){var n,i,s=0,o=0,a=0,c=0,u=0,h=0,l=0,d=0,f=0,p=0,g=0,y=0,b=0,v=0,m=0,_=0,w=0,E=0,O=0,S=0,I=0,j=0,R=0,N=0,P=0,A=0,T=0,L=0,x=0,U=0,C=0,M=r[0],D=r[1],z=r[2],k=r[3],V=r[4],H=r[5],K=r[6],J=r[7],q=r[8],B=r[9],F=r[10],G=r[11],W=r[12],Y=r[13],$=r[14],X=r[15];s+=(n=t[0])*M,o+=n*D,a+=n*z,c+=n*k,u+=n*V,h+=n*H,l+=n*K,d+=n*J,f+=n*q,p+=n*B,g+=n*F,y+=n*G,b+=n*W,v+=n*Y,m+=n*$,_+=n*X,o+=(n=t[1])*M,a+=n*D,c+=n*z,u+=n*k,h+=n*V,l+=n*H,d+=n*K,f+=n*J,p+=n*q,g+=n*B,y+=n*F,b+=n*G,v+=n*W,m+=n*Y,_+=n*$,w+=n*X,a+=(n=t[2])*M,c+=n*D,u+=n*z,h+=n*k,l+=n*V,d+=n*H,f+=n*K,p+=n*J,g+=n*q,y+=n*B,b+=n*F,v+=n*G,m+=n*W,_+=n*Y,w+=n*$,E+=n*X,c+=(n=t[3])*M,u+=n*D,h+=n*z,l+=n*k,d+=n*V,f+=n*H,p+=n*K,g+=n*J,y+=n*q,b+=n*B,v+=n*F,m+=n*G,_+=n*W,w+=n*Y,E+=n*$,O+=n*X,u+=(n=t[4])*M,h+=n*D,l+=n*z,d+=n*k,f+=n*V,p+=n*H,g+=n*K,y+=n*J,b+=n*q,v+=n*B,m+=n*F,_+=n*G,w+=n*W,E+=n*Y,O+=n*$,S+=n*X,h+=(n=t[5])*M,l+=n*D,d+=n*z,f+=n*k,p+=n*V,g+=n*H,y+=n*K,b+=n*J,v+=n*q,m+=n*B,_+=n*F,w+=n*G,E+=n*W,O+=n*Y,S+=n*$,I+=n*X,l+=(n=t[6])*M,d+=n*D,f+=n*z,p+=n*k,g+=n*V,y+=n*H,b+=n*K,v+=n*J,m+=n*q,_+=n*B,w+=n*F,E+=n*G,O+=n*W,S+=n*Y,I+=n*$,j+=n*X,d+=(n=t[7])*M,f+=n*D,p+=n*z,g+=n*k,y+=n*V,b+=n*H,v+=n*K,m+=n*J,_+=n*q,w+=n*B,E+=n*F,O+=n*G,S+=n*W,I+=n*Y,j+=n*$,R+=n*X,f+=(n=t[8])*M,p+=n*D,g+=n*z,y+=n*k,b+=n*V,v+=n*H,m+=n*K,_+=n*J,w+=n*q,E+=n*B,O+=n*F,S+=n*G,I+=n*W,j+=n*Y,R+=n*$,N+=n*X,p+=(n=t[9])*M,g+=n*D,y+=n*z,b+=n*k,v+=n*V,m+=n*H,_+=n*K,w+=n*J,E+=n*q,O+=n*B,S+=n*F,I+=n*G,j+=n*W,R+=n*Y,N+=n*$,P+=n*X,g+=(n=t[10])*M,y+=n*D,b+=n*z,v+=n*k,m+=n*V,_+=n*H,w+=n*K,E+=n*J,O+=n*q,S+=n*B,I+=n*F,j+=n*G,R+=n*W,N+=n*Y,P+=n*$,A+=n*X,y+=(n=t[11])*M,b+=n*D,v+=n*z,m+=n*k,_+=n*V,w+=n*H,E+=n*K,O+=n*J,S+=n*q,I+=n*B,j+=n*F,R+=n*G,N+=n*W,P+=n*Y,A+=n*$,T+=n*X,b+=(n=t[12])*M,v+=n*D,m+=n*z,_+=n*k,w+=n*V,E+=n*H,O+=n*K,S+=n*J,I+=n*q,j+=n*B,R+=n*F,N+=n*G,P+=n*W,A+=n*Y,T+=n*$,L+=n*X,v+=(n=t[13])*M,m+=n*D,_+=n*z,w+=n*k,E+=n*V,O+=n*H,S+=n*K,I+=n*J,j+=n*q,R+=n*B,N+=n*F,P+=n*G,A+=n*W,T+=n*Y,L+=n*$,x+=n*X,m+=(n=t[14])*M,_+=n*D,w+=n*z,E+=n*k,O+=n*V,S+=n*H,I+=n*K,j+=n*J,R+=n*q,N+=n*B,P+=n*F,A+=n*G,T+=n*W,L+=n*Y,x+=n*$,U+=n*X,_+=(n=t[15])*M,o+=38*(E+=n*z),a+=38*(O+=n*k),c+=38*(S+=n*V),u+=38*(I+=n*H),h+=38*(j+=n*K),l+=38*(R+=n*J),d+=38*(N+=n*q),f+=38*(P+=n*B),p+=38*(A+=n*F),g+=38*(T+=n*G),y+=38*(L+=n*W),b+=38*(x+=n*Y),v+=38*(U+=n*$),m+=38*(C+=n*X),s=(n=(s+=38*(w+=n*D))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),o=(n=o+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=a+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),_=(n=_+i+65535)-65536*(i=Math.floor(n/65536)),s=(n=(s+=i-1+37*(i-1))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),o=(n=o+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=a+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),_=(n=_+i+65535)-65536*(i=Math.floor(n/65536)),s+=i-1+37*(i-1),e[0]=s,e[1]=o,e[2]=a,e[3]=c,e[4]=u,e[5]=h,e[6]=l,e[7]=d,e[8]=f,e[9]=p,e[10]=g,e[11]=y,e[12]=b,e[13]=v,e[14]=m,e[15]=_}function f(e,t){d(e,t,t)}function p(e,t){for(var r=new Uint8Array(32),n=new Float64Array(80),i=s(),o=s(),p=s(),g=s(),y=s(),b=s(),v=0;v<31;v++)r[v]=e[v];r[31]=127&e[31]|64,r[0]&=248,function(e,t){for(var r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}(n,t);for(v=0;v<16;v++)o[v]=n[v];i[0]=g[0]=1;for(v=254;v>=0;--v){var m=r[v>>>3]>>>(7&v)&1;u(i,o,m),u(p,g,m),h(y,i,p),l(i,i,p),h(p,o,g),l(o,o,g),f(g,y),f(b,i),d(i,p,i),d(p,o,y),h(y,i,p),l(i,i,p),f(o,i),l(p,g,b),d(i,p,a),h(i,i,g),d(p,p,i),d(i,g,b),d(g,o,n),f(o,y),u(i,o,m),u(p,g,m)}for(v=0;v<16;v++)n[v+16]=i[v],n[v+32]=p[v],n[v+48]=o[v],n[v+64]=g[v];var _=n.subarray(32),w=n.subarray(16);!function(e,t){for(var r=s(),n=0;n<16;n++)r[n]=t[n];for(n=253;n>=0;n--)f(r,r),2!==n&&4!==n&&d(r,r,t);for(n=0;n<16;n++)e[n]=r[n]}(_,_),d(w,w,_);var E=new Uint8Array(32);return function(e,t){for(var r=s(),n=s(),i=0;i<16;i++)n[i]=t[i];c(n),c(n),c(n);for(var o=0;o<2;o++){r[0]=n[0]-65517;for(i=1;i<15;i++)r[i]=n[i]-65535-(r[i-1]>>16&1),r[i-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);var a=r[15]>>16&1;r[14]&=65535,u(n,r,1-a)}for(i=0;i<16;i++)e[2*i]=255&n[i],e[2*i+1]=n[i]>>8}(E,w),E}function g(e){return p(e,o)}function y(e){if(e.length!==t.SECRET_KEY_LENGTH)throw new Error("x25519: seed must be "+t.SECRET_KEY_LENGTH+" bytes");var r=new Uint8Array(e);return{publicKey:g(r),secretKey:r}}t.scalarMult=p,t.scalarMultBase=g,t.generateKeyPairFromSeed=y,t.generateKeyPair=function(e){var t=n.randomBytes(32,e),r=y(t);return i.wipe(t),r},t.sharedKey=function(e,r,n){if(void 0===n&&(n=!1),e.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect secret key length");if(r.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect public key length");var i=p(e,r);if(n){for(var s=0,o=0;o<i.length;o++)s|=i[o];if(0===s)throw new Error("X25519: invalid shared key")}return i}},function(e,t,r){"use strict";var n=r(33);r.o(n,"IJsonRpcProvider")&&r.d(t,"IJsonRpcProvider",(function(){return n.IJsonRpcProvider})),r.o(n,"formatJsonRpcError")&&r.d(t,"formatJsonRpcError",(function(){return n.formatJsonRpcError})),r.o(n,"formatJsonRpcRequest")&&r.d(t,"formatJsonRpcRequest",(function(){return n.formatJsonRpcRequest})),r.o(n,"formatJsonRpcResult")&&r.d(t,"formatJsonRpcResult",(function(){return n.formatJsonRpcResult})),r.o(n,"isHttpUrl")&&r.d(t,"isHttpUrl",(function(){return n.isHttpUrl})),r.o(n,"isJsonRpcError")&&r.d(t,"isJsonRpcError",(function(){return n.isJsonRpcError})),r.o(n,"isJsonRpcRequest")&&r.d(t,"isJsonRpcRequest",(function(){return n.isJsonRpcRequest})),r.o(n,"isJsonRpcResponse")&&r.d(t,"isJsonRpcResponse",(function(){return n.isJsonRpcResponse})),r.o(n,"isJsonRpcResult")&&r.d(t,"isJsonRpcResult",(function(){return n.isJsonRpcResult})),r.o(n,"isLocalhostUrl")&&r.d(t,"isLocalhostUrl",(function(){return n.isLocalhostUrl})),r.o(n,"isReactNative")&&r.d(t,"isReactNative",(function(){return n.isReactNative})),r.o(n,"isWsUrl")&&r.d(t,"isWsUrl",(function(){return n.isWsUrl}));n.isNode},function(e,t){var r,n,i=e.exports={};function s(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function a(e){if(r===setTimeout)return setTimeout(e,0);if((r===s||!r)&&setTimeout)return r=setTimeout,setTimeout(e,0);try{return r(e,0)}catch(t){try{return r.call(null,e,0)}catch(t){return r.call(this,e,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:s}catch(e){r=s}try{n="function"==typeof clearTimeout?clearTimeout:o}catch(e){n=o}}();var c,u=[],h=!1,l=-1;function d(){h&&c&&(h=!1,c.length?u=c.concat(u):l=-1,u.length&&f())}function f(){if(!h){var e=a(d);h=!0;for(var t=u.length;t;){for(c=u,u=[];++l<t;)c&&c[l].run();l=-1,t=u.length}c=null,h=!1,function(e){if(n===clearTimeout)return clearTimeout(e);if((n===o||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(e);try{n(e)}catch(t){try{return n.call(null,e)}catch(t){return n.call(this,e)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function g(){}i.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];u.push(new p(e,t)),1!==u.length||h||a(f)},p.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={},i.on=g,i.addListener=g,i.once=g,i.off=g,i.removeListener=g,i.removeAllListeners=g,i.emit=g,i.prependListener=g,i.prependOnceListener=g,i.listeners=function(e){return[]},i.binding=function(e){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(e){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},function(e,t,r){"use strict";r.d(t,"b",(function(){return s})),r.d(t,"c",(function(){return o})),r.d(t,"a",(function(){return a}));var n=r(21),i=r(9);function s(e,t,r){return{id:r||Date.now()*Math.pow(10,3)+Math.floor(Math.random()*Math.pow(10,3)),jsonrpc:"2.0",method:e,params:t}}function o(e,t){return{id:e,jsonrpc:"2.0",result:t}}function a(e,t,r){return{id:e,jsonrpc:"2.0",error:c(t,r)}}function c(e,t){return void 0===e?Object(n.a)(i.b):("string"==typeof e&&(e=Object.assign(Object.assign({},Object(n.a)(i.d)),{message:e})),void 0!==t&&(e.data=t),Object(n.c)(e.code)&&(e=Object(n.b)(e.code)),e)}},function(e,t,r){"use strict"},function(e,t,r){"use strict";var n=r(34);r.o(n,"IJsonRpcProvider")&&r.d(t,"IJsonRpcProvider",(function(){return n.IJsonRpcProvider})),r.o(n,"isHttpUrl")&&r.d(t,"isHttpUrl",(function(){return n.isHttpUrl})),r.o(n,"isJsonRpcError")&&r.d(t,"isJsonRpcError",(function(){return n.isJsonRpcError})),r.o(n,"isJsonRpcRequest")&&r.d(t,"isJsonRpcRequest",(function(){return n.isJsonRpcRequest})),r.o(n,"isJsonRpcResponse")&&r.d(t,"isJsonRpcResponse",(function(){return n.isJsonRpcResponse})),r.o(n,"isJsonRpcResult")&&r.d(t,"isJsonRpcResult",(function(){return n.isJsonRpcResult})),r.o(n,"isLocalhostUrl")&&r.d(t,"isLocalhostUrl",(function(){return n.isLocalhostUrl})),r.o(n,"isReactNative")&&r.d(t,"isReactNative",(function(){return n.isReactNative})),r.o(n,"isWsUrl")&&r.d(t,"isWsUrl",(function(){return n.isWsUrl}))},function(e,t){},function(e,t,r){"use strict";r.d(t,"a",(function(){return i})),r.d(t,"b",(function(){return o}));var n=r(27);class i extends n.a{constructor(e){super()}}class s extends n.a{constructor(){super()}}class o extends s{constructor(e){super()}}},function(e,t){},function(e,t,r){"use strict";r.d(t,"a",(function(){return i})),r.d(t,"c",(function(){return s})),r.d(t,"b",(function(){return o}));function n(e,t){const r=function(e){const t=e.match(new RegExp(/^\w+:/,"gi"));if(t&&t.length)return t[0]}(e);return void 0!==r&&new RegExp(t).test(r)}function i(e){return n(e,"^https?:")}function s(e){return n(e,"^wss?:")}function o(e){return new RegExp("wss?://localhost(:d{2,5})?").test(e)}},function(e,t,r){"use strict";function n(e){return"object"==typeof e&&"id"in e&&"jsonrpc"in e&&"2.0"===e.jsonrpc}function i(e){return n(e)&&"method"in e}function s(e){return n(e)&&(o(e)||a(e))}function o(e){return"result"in e}function a(e){return"error"in e}r.d(t,"b",(function(){return i})),r.d(t,"c",(function(){return s})),r.d(t,"d",(function(){return o})),r.d(t,"a",(function(){return a}))},function(e,t,r){"use strict";var n=r(94);function i(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}const s=i("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>(new TextEncoder).encode(e.substring(1))),o=i("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);const t=new Uint8Array(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),a={utf8:s,"utf-8":s,hex:n.bases.base16,latin1:o,ascii:o,binary:o,...n.bases};e.exports=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16);const i=n.rfc4648({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),s=n.rfc4648({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),o=n.rfc4648({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),a=n.rfc4648({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),c=n.rfc4648({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),u=n.rfc4648({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),h=n.rfc4648({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),l=n.rfc4648({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),d=n.rfc4648({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});t.base32=i,t.base32hex=c,t.base32hexpad=h,t.base32hexpadupper=l,t.base32hexupper=u,t.base32pad=o,t.base32padupper=a,t.base32upper=s,t.base32z=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16);const i=n.baseX({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),s=n.baseX({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});t.base58btc=i,t.base58flickr=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(32),i=r(26),s=r(56),o=r(55),a=r(18);class c{constructor(e,t,r,n){this.code=t,this.version=e,this.multihash=r,this.bytes=n,this.byteOffset=n.byteOffset,this.byteLength=n.byteLength,this.asCID=this,this._baseCache=new Map,Object.defineProperties(this,{byteOffset:b,byteLength:b,code:y,version:y,multihash:y,bytes:y,_baseCache:b,asCID:b})}toV0(){switch(this.version){case 0:return this;default:{const{code:e,multihash:t}=this;if(e!==d)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==f)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return c.createV0(t)}}}toV1(){switch(this.version){case 0:{const{code:e,digest:t}=this.multihash,r=i.create(e,t);return c.createV1(this.code,r)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}equals(e){return e&&this.code===e.code&&this.version===e.version&&i.equals(this.multihash,e.multihash)}toString(e){const{bytes:t,version:r,_baseCache:n}=this;switch(r){case 0:return h(t,n,e||s.base58btc.encoder);default:return l(t,n,e||o.base32.encoder)}}toJSON(){return{code:this.code,version:this.version,hash:this.multihash.bytes}}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return"CID("+this.toString()+")"}static isCID(e){return v(/^0\.0/,m),!(!e||!e[g]&&e.asCID!==e)}get toBaseEncodedString(){throw new Error("Deprecated, use .toString()")}get codec(){throw new Error('"codec" property is deprecated, use integer "code" property instead')}get buffer(){throw new Error("Deprecated .buffer property, use .bytes to get Uint8Array instead")}get multibaseName(){throw new Error('"multibaseName" property is deprecated')}get prefix(){throw new Error('"prefix" property is deprecated')}static asCID(e){if(e instanceof c)return e;if(null!=e&&e.asCID===e){const{version:t,code:r,multihash:n,bytes:i}=e;return new c(t,r,n,i||p(t,r,n.bytes))}if(null!=e&&!0===e[g]){const{version:t,multihash:r,code:n}=e,s=i.decode(r);return c.create(t,n,s)}return null}static create(e,t,r){if("number"!=typeof t)throw new Error("String codecs are no longer supported");switch(e){case 0:if(t!==d)throw new Error(`Version 0 CID must use dag-pb (code: ${d}) block encoding`);return new c(e,t,r,r.bytes);case 1:{const n=p(e,t,r.bytes);return new c(e,t,r,n)}default:throw new Error("Invalid version")}}static createV0(e){return c.create(0,d,e)}static createV1(e,t){return c.create(1,e,t)}static decode(e){const[t,r]=c.decodeFirst(e);if(r.length)throw new Error("Incorrect length");return t}static decodeFirst(e){const t=c.inspectBytes(e),r=t.size-t.multihashSize,n=a.coerce(e.subarray(r,r+t.multihashSize));if(n.byteLength!==t.multihashSize)throw new Error("Incorrect length");const s=n.subarray(t.multihashSize-t.digestSize),o=new i.Digest(t.multihashCode,t.digestSize,s,n);return[0===t.version?c.createV0(o):c.createV1(t.codec,o),e.subarray(t.size)]}static inspectBytes(e){let t=0;const r=()=>{const[r,i]=n.decode(e.subarray(t));return t+=i,r};let i=r(),s=d;if(18===i?(i=0,t=0):1===i&&(s=r()),0!==i&&1!==i)throw new RangeError("Invalid CID version "+i);const o=t,a=r(),c=r(),u=t+c;return{version:i,codec:s,multihashCode:a,digestSize:c,multihashSize:u-o,size:u}}static parse(e,t){const[r,n]=u(e,t),i=c.decode(n);return i._baseCache.set(r,e),i}}const u=(e,t)=>{switch(e[0]){case"Q":{const r=t||s.base58btc;return[s.base58btc.prefix,r.decode(`${s.base58btc.prefix}${e}`)]}case s.base58btc.prefix:{const r=t||s.base58btc;return[s.base58btc.prefix,r.decode(e)]}case o.base32.prefix:{const r=t||o.base32;return[o.base32.prefix,r.decode(e)]}default:if(null==t)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}},h=(e,t,r)=>{const{prefix:n}=r;if(n!==s.base58btc.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);const i=t.get(n);if(null==i){const i=r.encode(e).slice(1);return t.set(n,i),i}return i},l=(e,t,r)=>{const{prefix:n}=r,i=t.get(n);if(null==i){const i=r.encode(e);return t.set(n,i),i}return i},d=112,f=18,p=(e,t,r)=>{const i=n.encodingLength(e),s=i+n.encodingLength(t),o=new Uint8Array(s+r.byteLength);return n.encodeTo(e,o,0),n.encodeTo(t,o,i),o.set(r,s),o},g=Symbol.for("@ipld/js-cid/CID"),y={writable:!1,configurable:!1,enumerable:!0},b={writable:!1,enumerable:!1,configurable:!1},v=(e,t)=>{if(!e.test("0.0.0-dev"))throw new Error(t);console.warn(t)},m="CID.isCID(v) is deprecated and will be removed in the next major release.\nFollowing code pattern:\n\nif (CID.isCID(value)) {\n doSomethingWithCID(value)\n}\n\nIs replaced with:\n\nconst cid = CID.asCID(value)\nif (cid) {\n // Make sure to use cid instead of value\n doSomethingWithCID(cid)\n}\n";t.CID=c},function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(113),t),i(r(114),t)},function(e,t){},function(e,t,r){"use strict";r(11),r(15)},function(e,t,r){"use strict";r.d(t,"a",(function(){return n}));const n={waku:{publish:"waku_publish",subscribe:"waku_subscribe",subscription:"waku_subscription",unsubscribe:"waku_unsubscribe"},iridium:{publish:"iridium_publish",subscribe:"iridium_subscribe",subscription:"iridium_subscription",unsubscribe:"iridium_unsubscribe"}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.safeJsonParse=function(e){if("string"!=typeof e)throw new Error("Cannot safe json parse value of type "+typeof e);try{return JSON.parse(e)}catch(t){return e}},t.safeJsonStringify=function(e){return"string"==typeof e?e:JSON.stringify(e,(e,t)=>void 0===t?null:t)}},function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(128),t)},function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(129),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PINO_CUSTOM_CONTEXT_KEY=t.PINO_LOGGER_DEFAULTS=void 0,t.PINO_LOGGER_DEFAULTS={level:"info"},t.PINO_CUSTOM_CONTEXT_KEY="custom_context"},function(e,t,r){"use strict";var n=r(67);r.d(t,"ISignClient",(function(){return n.a}));var i=r(68);r.d(t,"IEngine",(function(){return i.a}));var s=r(69);r.d(t,"IExpirer",(function(){return s.a}));r(70),r(71),r(72),r(73)},function(e,t,r){"use strict";r.d(t,"a",(function(){return s}));var n=r(5),i=r.n(n);i.a;class s{constructor(e){this.opts=e,this.protocol="wc",this.version=2}}},function(e,t,r){"use strict";r.d(t,"a",(function(){return i}));var n=r(5);n.EventEmitter;class i{constructor(e){this.client=e}}},function(e,t,r){"use strict";r.d(t,"a",(function(){return i}));var n=r(12);class i extends n.IEvents{constructor(e,t){super(),this.core=e,this.logger=t}}},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t,r){"use strict";r.d(t,"a",(function(){return c})),r.d(t,"b",(function(){return u}));var n=r(37),i=r(20),s=r(2),o=r(4),a=r(17);function c(e=Object(i.randomBytes)(o.j)){return n.generateKeyPairFromSeed(e)}async function u(e,t,r,i,c=Object(s.fromMiliseconds)(Date.now())){const u={alg:o.h,typ:o.i},h={iss:Object(a.d)(i.publicKey),sub:e,aud:t,iat:c,exp:c+r},l=Object(a.c)({header:u,payload:h}),d=n.sign(i.secretKey,l);return Object(a.e)({header:u,payload:h,signature:d})}},function(e,t){},function(e,t,r){"use strict";r.d(t,"a",(function(){return i})),r.d(t,"b",(function(){return s})),r.d(t,"c",(function(){return o})),r.d(t,"d",(function(){return a})),r.d(t,"e",(function(){return c})),r.d(t,"f",(function(){return u})),r.d(t,"g",(function(){return h}));var n=r(12);class i extends n.IEvents{constructor(e){super(),this.opts=e,this.protocol="wc",this.version=2}}class s extends n.IEvents{constructor(e,t){super(),this.core=e,this.logger=t,this.records=new Map}}class o{constructor(e,t){this.logger=e,this.core=t}}class a extends n.IEvents{constructor(e,t){super(),this.relayer=e,this.logger=t}}class c extends n.IEvents{constructor(e){super()}}class u{constructor(e,t,r,n){this.core=e,this.logger=t,this.name=r}}class h extends n.IEvents{constructor(e,t){super(),this.relayer=e,this.logger=t}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(88),i=r(14),s=function(){function e(e,t,r,i){void 0===r&&(r=new Uint8Array(0)),this._counter=new Uint8Array(1),this._hash=e,this._info=i;var s=n.hmac(this._hash,r,t);this._hmac=new n.HMAC(e,s),this._buffer=new Uint8Array(this._hmac.digestLength),this._bufpos=this._buffer.length}return e.prototype._fillBuffer=function(){this._counter[0]++;var e=this._counter[0];if(0===e)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},e.prototype.expand=function(e){for(var t=new Uint8Array(e),r=0;r<t.length;r++)this._bufpos===this._buffer.length&&this._fillBuffer(),t[r]=this._buffer[this._bufpos++];return t},e.prototype.clean=function(){this._hmac.clean(),i.wipe(this._buffer),i.wipe(this._counter),this._bufpos=0},e}();t.HKDF=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getWindowMetadata=void 0;const n=r(23);t.getWindowMetadata=function(){let e,t;try{e=n.getDocumentOrThrow(),t=n.getLocationOrThrow()}catch(e){return null}function r(...t){const r=e.getElementsByTagName("meta");for(let e=0;e<r.length;e++){const n=r[e],i=["itemprop","property","name"].map(e=>n.getAttribute(e)).filter(e=>!!e&&t.includes(e));if(i.length&&i){const e=n.getAttribute("content");if(e)return e}}return""}const i=function(){let t=r("name","og:site_name","og:title","twitter:title");return t||(t=e.title),t}();return{description:r("description","og:description","twitter:description","keywords"),url:t.origin,icons:function(){const r=e.getElementsByTagName("link"),n=[];for(let e=0;e<r.length;e++){const i=r[e],s=i.getAttribute("rel");if(s&&s.toLowerCase().indexOf("icon")>-1){const e=i.getAttribute("href");if(e)if(-1===e.toLowerCase().indexOf("https:")&&-1===e.toLowerCase().indexOf("http:")&&0!==e.indexOf("//")){let r=t.protocol+"//"+t.host;if(0===e.indexOf("/"))r+=e;else{const n=t.pathname.split("/");n.pop();r+=n.join("/")+"/"+e}n.push(r)}else if(0===e.indexOf("//")){const r=t.protocol+e;n.push(r)}else n.push(e)}}return n}(),name:i}}},function(e,t,r){"use strict";var n=r(59);r.o(n,"RELAY_JSONRPC")&&r.d(t,"RELAY_JSONRPC",(function(){return n.RELAY_JSONRPC}));r(60);var i=r(61);r.d(t,"RELAY_JSONRPC",(function(){return i.a}));r(15)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.KeyValueStorage=void 0;const n=r(30),i=n.__importDefault(r(123)),s=r(62),o=r(124);class a{constructor(){this.localStorage=i.default}getKeys(){return n.__awaiter(this,void 0,void 0,(function*(){return Object.keys(this.localStorage)}))}getEntries(){return n.__awaiter(this,void 0,void 0,(function*(){return Object.entries(this.localStorage).map(o.parseEntry)}))}getItem(e){return n.__awaiter(this,void 0,void 0,(function*(){const t=this.localStorage.getItem(e);if(null!==t)return s.safeJsonParse(t)}))}setItem(e,t){return n.__awaiter(this,void 0,void 0,(function*(){this.localStorage.setItem(e,s.safeJsonStringify(t))}))}removeItem(e){return n.__awaiter(this,void 0,void 0,(function*(){this.localStorage.removeItem(e)}))}}t.KeyValueStorage=a,t.default=a},function(e,t,r){(function(e,r){var n="[object Arguments]",i="[object Map]",s="[object Object]",o="[object Set]",a=/^\[object .+?Constructor\]$/,c=/^(?:0|[1-9]\d*)$/,u={};u["[object Float32Array]"]=u["[object Float64Array]"]=u["[object Int8Array]"]=u["[object Int16Array]"]=u["[object Int32Array]"]=u["[object Uint8Array]"]=u["[object Uint8ClampedArray]"]=u["[object Uint16Array]"]=u["[object Uint32Array]"]=!0,u[n]=u["[object Array]"]=u["[object ArrayBuffer]"]=u["[object Boolean]"]=u["[object DataView]"]=u["[object Date]"]=u["[object Error]"]=u["[object Function]"]=u[i]=u["[object Number]"]=u[s]=u["[object RegExp]"]=u[o]=u["[object String]"]=u["[object WeakMap]"]=!1;var h="object"==typeof e&&e&&e.Object===Object&&e,l="object"==typeof self&&self&&self.Object===Object&&self,d=h||l||Function("return this")(),f=t&&!t.nodeType&&t,p=f&&"object"==typeof r&&r&&!r.nodeType&&r,g=p&&p.exports===f,y=g&&h.process,b=function(){try{return y&&y.binding&&y.binding("util")}catch(e){}}(),v=b&&b.isTypedArray;function m(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}function _(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function w(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var E,O,S,I=Array.prototype,j=Function.prototype,R=Object.prototype,N=d["__core-js_shared__"],P=j.toString,A=R.hasOwnProperty,T=(E=/[^.]+$/.exec(N&&N.keys&&N.keys.IE_PROTO||""))?"Symbol(src)_1."+E:"",L=R.toString,x=RegExp("^"+P.call(A).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),U=g?d.Buffer:void 0,C=d.Symbol,M=d.Uint8Array,D=R.propertyIsEnumerable,z=I.splice,k=C?C.toStringTag:void 0,V=Object.getOwnPropertySymbols,H=U?U.isBuffer:void 0,K=(O=Object.keys,S=Object,function(e){return O(S(e))}),J=be(d,"DataView"),q=be(d,"Map"),B=be(d,"Promise"),F=be(d,"Set"),G=be(d,"WeakMap"),W=be(Object,"create"),Y=we(J),$=we(q),X=we(B),Z=we(F),Q=we(G),ee=C?C.prototype:void 0,te=ee?ee.valueOf:void 0;function re(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function ne(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function ie(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function se(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new ie;++t<r;)this.add(e[t])}function oe(e){var t=this.__data__=new ne(e);this.size=t.size}function ae(e,t){var r=Se(e),n=!r&&Oe(e),i=!r&&!n&&Ie(e),s=!r&&!n&&!i&&Ae(e),o=r||n||i||s,a=o?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],c=a.length;for(var u in e)!t&&!A.call(e,u)||o&&("length"==u||i&&("offset"==u||"parent"==u)||s&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||_e(u,c))||a.push(u);return a}function ce(e,t){for(var r=e.length;r--;)if(Ee(e[r][0],t))return r;return-1}function ue(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":k&&k in Object(e)?function(e){var t=A.call(e,k),r=e[k];try{e[k]=void 0;var n=!0}catch(e){}var i=L.call(e);n&&(t?e[k]=r:delete e[k]);return i}(e):function(e){return L.call(e)}(e)}function he(e){return Pe(e)&&ue(e)==n}function le(e,t,r,a,c){return e===t||(null==e||null==t||!Pe(e)&&!Pe(t)?e!=e&&t!=t:function(e,t,r,a,c,u){var h=Se(e),l=Se(t),d=h?"[object Array]":me(e),f=l?"[object Array]":me(t),p=(d=d==n?s:d)==s,g=(f=f==n?s:f)==s,y=d==f;if(y&&Ie(e)){if(!Ie(t))return!1;h=!0,p=!1}if(y&&!p)return u||(u=new oe),h||Ae(e)?pe(e,t,r,a,c,u):function(e,t,r,n,s,a,c){switch(r){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!a(new M(e),new M(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return Ee(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case i:var u=_;case o:var h=1&n;if(u||(u=w),e.size!=t.size&&!h)return!1;var l=c.get(e);if(l)return l==t;n|=2,c.set(e,t);var d=pe(u(e),u(t),n,s,a,c);return c.delete(e),d;case"[object Symbol]":if(te)return te.call(e)==te.call(t)}return!1}(e,t,d,r,a,c,u);if(!(1&r)){var b=p&&A.call(e,"__wrapped__"),v=g&&A.call(t,"__wrapped__");if(b||v){var m=b?e.value():e,E=v?t.value():t;return u||(u=new oe),c(m,E,r,a,u)}}if(!y)return!1;return u||(u=new oe),function(e,t,r,n,i,s){var o=1&r,a=ge(e),c=a.length,u=ge(t).length;if(c!=u&&!o)return!1;var h=c;for(;h--;){var l=a[h];if(!(o?l in t:A.call(t,l)))return!1}var d=s.get(e);if(d&&s.get(t))return d==t;var f=!0;s.set(e,t),s.set(t,e);var p=o;for(;++h<c;){l=a[h];var g=e[l],y=t[l];if(n)var b=o?n(y,g,l,t,e,s):n(g,y,l,e,t,s);if(!(void 0===b?g===y||i(g,y,r,n,s):b)){f=!1;break}p||(p="constructor"==l)}if(f&&!p){var v=e.constructor,m=t.constructor;v==m||!("constructor"in e)||!("constructor"in t)||"function"==typeof v&&v instanceof v&&"function"==typeof m&&m instanceof m||(f=!1)}return s.delete(e),s.delete(t),f}(e,t,r,a,c,u)}(e,t,r,a,le,c))}function de(e){return!(!Ne(e)||function(e){return!!T&&T in e}(e))&&(je(e)?x:a).test(we(e))}function fe(e){if(r=(t=e)&&t.constructor,n="function"==typeof r&&r.prototype||R,t!==n)return K(e);var t,r,n,i=[];for(var s in Object(e))A.call(e,s)&&"constructor"!=s&&i.push(s);return i}function pe(e,t,r,n,i,s){var o=1&r,a=e.length,c=t.length;if(a!=c&&!(o&&c>a))return!1;var u=s.get(e);if(u&&s.get(t))return u==t;var h=-1,l=!0,d=2&r?new se:void 0;for(s.set(e,t),s.set(t,e);++h<a;){var f=e[h],p=t[h];if(n)var g=o?n(p,f,h,t,e,s):n(f,p,h,e,t,s);if(void 0!==g){if(g)continue;l=!1;break}if(d){if(!m(t,(function(e,t){if(o=t,!d.has(o)&&(f===e||i(f,e,r,n,s)))return d.push(t);var o}))){l=!1;break}}else if(f!==p&&!i(f,p,r,n,s)){l=!1;break}}return s.delete(e),s.delete(t),l}function ge(e){return function(e,t,r){var n=t(e);return Se(e)?n:function(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}(n,r(e))}(e,Te,ve)}function ye(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function be(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return de(r)?r:void 0}re.prototype.clear=function(){this.__data__=W?W(null):{},this.size=0},re.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},re.prototype.get=function(e){var t=this.__data__;if(W){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return A.call(t,e)?t[e]:void 0},re.prototype.has=function(e){var t=this.__data__;return W?void 0!==t[e]:A.call(t,e)},re.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=W&&void 0===t?"__lodash_hash_undefined__":t,this},ne.prototype.clear=function(){this.__data__=[],this.size=0},ne.prototype.delete=function(e){var t=this.__data__,r=ce(t,e);return!(r<0)&&(r==t.length-1?t.pop():z.call(t,r,1),--this.size,!0)},ne.prototype.get=function(e){var t=this.__data__,r=ce(t,e);return r<0?void 0:t[r][1]},ne.prototype.has=function(e){return ce(this.__data__,e)>-1},ne.prototype.set=function(e,t){var r=this.__data__,n=ce(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},ie.prototype.clear=function(){this.size=0,this.__data__={hash:new re,map:new(q||ne),string:new re}},ie.prototype.delete=function(e){var t=ye(this,e).delete(e);return this.size-=t?1:0,t},ie.prototype.get=function(e){return ye(this,e).get(e)},ie.prototype.has=function(e){return ye(this,e).has(e)},ie.prototype.set=function(e,t){var r=ye(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},se.prototype.add=se.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},se.prototype.has=function(e){return this.__data__.has(e)},oe.prototype.clear=function(){this.__data__=new ne,this.size=0},oe.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},oe.prototype.get=function(e){return this.__data__.get(e)},oe.prototype.has=function(e){return this.__data__.has(e)},oe.prototype.set=function(e,t){var r=this.__data__;if(r instanceof ne){var n=r.__data__;if(!q||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new ie(n)}return r.set(e,t),this.size=r.size,this};var ve=V?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,n=null==e?0:e.length,i=0,s=[];++r<n;){var o=e[r];t(o,r,e)&&(s[i++]=o)}return s}(V(e),(function(t){return D.call(e,t)})))}:function(){return[]},me=ue;function _e(e,t){return!!(t=null==t?9007199254740991:t)&&("number"==typeof e||c.test(e))&&e>-1&&e%1==0&&e<t}function we(e){if(null!=e){try{return P.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Ee(e,t){return e===t||e!=e&&t!=t}(J&&"[object DataView]"!=me(new J(new ArrayBuffer(1)))||q&&me(new q)!=i||B&&"[object Promise]"!=me(B.resolve())||F&&me(new F)!=o||G&&"[object WeakMap]"!=me(new G))&&(me=function(e){var t=ue(e),r=t==s?e.constructor:void 0,n=r?we(r):"";if(n)switch(n){case Y:return"[object DataView]";case $:return i;case X:return"[object Promise]";case Z:return o;case Q:return"[object WeakMap]"}return t});var Oe=he(function(){return arguments}())?he:function(e){return Pe(e)&&A.call(e,"callee")&&!D.call(e,"callee")},Se=Array.isArray;var Ie=H||function(){return!1};function je(e){if(!Ne(e))return!1;var t=ue(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Re(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}function Ne(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Pe(e){return null!=e&&"object"==typeof e}var Ae=v?function(e){return function(t){return e(t)}}(v):function(e){return Pe(e)&&Re(e.length)&&!!u[ue(e)]};function Te(e){return null!=(t=e)&&Re(t.length)&&!je(t)?ae(e):fe(e);var t}r.exports=function(e,t){return le(e,t)}}).call(this,r(31),r(133)(e))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getEthereumChainId=t.getRpcUrl=t.getRpcConfig=t.signerEvents=t.signerMethods=void 0;const n=r(30),i=r(5),s=r(40),o=r(135),a=r(0),c=r(134);function u(e){return{chains:(null==e?void 0:e.chainId)?["eip155:"+e.chainId]:[],methods:(null==e?void 0:e.methods)||[],events:(null==e?void 0:e.events)||[],rpcMap:(null==e?void 0:e.rpcMap)||void 0}}function h(e,t){let r;return t.rpcMap&&(r=t.rpcMap[l([e])]),r}function l(e){return Number(e[0].split(":")[1])}t.signerMethods=["eth_requestAccounts","eth_accounts","eth_chainId","eth_sendTransaction","eth_signTransaction","eth_sign","eth_signTypedData","personal_sign"],t.signerEvents=["chainChanged","accountsChanged"],t.getRpcConfig=u,t.getRpcUrl=h,t.getEthereumChainId=l;t.default=class{constructor(e){this.events=new i.EventEmitter,this.namespace="eip155",this.accounts=[],this.rpc=u(e),this.signer=this.setSignerProvider(null==e?void 0:e.client),this.chainId=l(this.rpc.chains),this.http=this.setHttpProvider(this.chainId),this.registerEventListeners()}request(e){return n.__awaiter(this,void 0,void 0,(function*(){switch(e.method){case"eth_requestAccounts":return yield 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(void 0===this.http)throw new Error(`Cannot request JSON-RPC method (${e.method}) without provided rpc url`);return this.http.request(e)}))}sendAsync(e,t){this.request(e).then(e=>t(null,e)).catch(e=>t(e,void 0))}get connected(){return this.signer.connection.connected}get connecting(){return this.signer.connection.connecting}enable(){return n.__awaiter(this,void 0,void 0,(function*(){return yield this.request({method:"eth_requestAccounts"})}))}connect(){return n.__awaiter(this,void 0,void 0,(function*(){yield this.signer.connect()}))}disconnect(){return n.__awaiter(this,void 0,void 0,(function*(){yield this.signer.disconnect()}))}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}removeListener(e,t){this.events.removeListener(e,t)}off(e,t){this.events.off(e,t)}get isWalletConnect(){return!0}registerEventListeners(){this.signer.on("connect",()=>{const e=this.signer.connection.chains;e&&e.length&&this.setChainIds(e);const t=this.signer.connection.accounts;t&&t.length&&this.setAccounts(t)}),this.signer.connection.on(c.SIGNER_EVENTS.created,e=>{const t=a.getChainsFromNamespaces(e.namespaces,[this.namespace]);this.setChainIds(t);const r=a.getAccountsFromNamespaces(e.namespaces,[this.namespace]);this.setAccounts(r)}),this.signer.connection.on(c.SIGNER_EVENTS.updated,e=>{const t=a.getChainsFromNamespaces(e.namespaces,[this.namespace]);this.setChainIds(t);const r=a.getAccountsFromNamespaces(e.namespaces,[this.namespace]);r!==this.accounts&&this.setAccounts(r)}),this.signer.connection.on(c.SIGNER_EVENTS.event,e=>{if(!this.rpc.chains.includes(e.chainId))return;const{event:t}=e;"accountsChanged"===t.name?(this.accounts=t.data,this.events.emit("accountsChanged",this.accounts)):"chainChanged"===t.name?this.setChainId(t.data):this.events.emit(t.name,t.data)}),this.signer.on("disconnect",()=>{this.events.emit("disconnect")}),this.events.on("chainChanged",e=>this.setHttpProvider(e))}setSignerProvider(e){const t=new c.SignerConnection({requiredNamespaces:{[this.namespace]:{chains:this.rpc.chains,methods:this.rpc.methods,events:this.rpc.events}},client:e});return new s.JsonRpcProvider(t)}setHttpProvider(e){const t=h(`${this.namespace}:${e}`,this.rpc);if(void 0===t)return;return new s.JsonRpcProvider(new o.HttpConnection(t))}isCompatibleChainId(e){return"string"==typeof e&&e.startsWith(this.namespace+":")}formatChainId(e){return`${this.namespace}:${e}`}parseChainId(e){return Number(e.split(":")[1])}setChainIds(e){const t=e.filter(e=>this.isCompatibleChainId(e)).map(e=>this.parseChainId(e)).filter(e=>e!==this.chainId);t.length&&(this.chainId=t[0],this.events.emit("chainChanged",this.chainId))}setChainId(e){if(this.isCompatibleChainId(e)){const t=this.parseChainId(e);this.chainId=t,this.events.emit("chainChanged",this.chainId)}}parseAccountId(e){const[t,r,n]=e.split(":");return{chainId:`${t}:${r}`,address:n}}setAccounts(e){this.accounts=e.filter(e=>this.parseChainId(this.parseAccountId(e).chainId)===this.chainId).map(e=>this.parseAccountId(e).address),this.events.emit("accountsChanged",this.accounts)}}},function(e,t,r){"use strict";(function(e){function r(){return(null==e?void 0:e.crypto)||(null==e?void 0:e.msCrypto)||{}}function n(){const e=r();return e.subtle||e.webkitSubtle}Object.defineProperty(t,"__esModule",{value:!0}),t.isBrowserCryptoAvailable=t.getSubtleCrypto=t.getBrowerCrypto=void 0,t.getBrowerCrypto=r,t.getSubtleCrypto=n,t.isBrowserCryptoAvailable=function(){return!!r()&&!!n()}}).call(this,r(31))},function(e,t,r){"use strict";(function(e){function r(){return"undefined"==typeof document&&"undefined"!=typeof navigator&&"ReactNative"===navigator.product}function n(){return void 0!==e&&void 0!==e.versions&&void 0!==e.versions.node}Object.defineProperty(t,"__esModule",{value:!0}),t.isBrowser=t.isNode=t.isReactNative=void 0,t.isReactNative=r,t.isNode=n,t.isBrowser=function(){return!r()&&!n()}}).call(this,r(45))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(25),i=r(14);function s(e,t,r){for(var i=1634760805,s=857760878,o=2036477234,a=1797285236,c=r[3]<<24|r[2]<<16|r[1]<<8|r[0],u=r[7]<<24|r[6]<<16|r[5]<<8|r[4],h=r[11]<<24|r[10]<<16|r[9]<<8|r[8],l=r[15]<<24|r[14]<<16|r[13]<<8|r[12],d=r[19]<<24|r[18]<<16|r[17]<<8|r[16],f=r[23]<<24|r[22]<<16|r[21]<<8|r[20],p=r[27]<<24|r[26]<<16|r[25]<<8|r[24],g=r[31]<<24|r[30]<<16|r[29]<<8|r[28],y=t[3]<<24|t[2]<<16|t[1]<<8|t[0],b=t[7]<<24|t[6]<<16|t[5]<<8|t[4],v=t[11]<<24|t[10]<<16|t[9]<<8|t[8],m=t[15]<<24|t[14]<<16|t[13]<<8|t[12],_=i,w=s,E=o,O=a,S=c,I=u,j=h,R=l,N=d,P=f,A=p,T=g,L=y,x=b,U=v,C=m,M=0;M<20;M+=2)S=(S^=N=N+(L=(L^=_=_+S|0)>>>16|L<<16)|0)>>>20|S<<12,I=(I^=P=P+(x=(x^=w=w+I|0)>>>16|x<<16)|0)>>>20|I<<12,j=(j^=A=A+(U=(U^=E=E+j|0)>>>16|U<<16)|0)>>>20|j<<12,R=(R^=T=T+(C=(C^=O=O+R|0)>>>16|C<<16)|0)>>>20|R<<12,j=(j^=A=A+(U=(U^=E=E+j|0)>>>24|U<<8)|0)>>>25|j<<7,R=(R^=T=T+(C=(C^=O=O+R|0)>>>24|C<<8)|0)>>>25|R<<7,I=(I^=P=P+(x=(x^=w=w+I|0)>>>24|x<<8)|0)>>>25|I<<7,S=(S^=N=N+(L=(L^=_=_+S|0)>>>24|L<<8)|0)>>>25|S<<7,I=(I^=A=A+(C=(C^=_=_+I|0)>>>16|C<<16)|0)>>>20|I<<12,j=(j^=T=T+(L=(L^=w=w+j|0)>>>16|L<<16)|0)>>>20|j<<12,R=(R^=N=N+(x=(x^=E=E+R|0)>>>16|x<<16)|0)>>>20|R<<12,S=(S^=P=P+(U=(U^=O=O+S|0)>>>16|U<<16)|0)>>>20|S<<12,R=(R^=N=N+(x=(x^=E=E+R|0)>>>24|x<<8)|0)>>>25|R<<7,S=(S^=P=P+(U=(U^=O=O+S|0)>>>24|U<<8)|0)>>>25|S<<7,j=(j^=T=T+(L=(L^=w=w+j|0)>>>24|L<<8)|0)>>>25|j<<7,I=(I^=A=A+(C=(C^=_=_+I|0)>>>24|C<<8)|0)>>>25|I<<7;n.writeUint32LE(_+i|0,e,0),n.writeUint32LE(w+s|0,e,4),n.writeUint32LE(E+o|0,e,8),n.writeUint32LE(O+a|0,e,12),n.writeUint32LE(S+c|0,e,16),n.writeUint32LE(I+u|0,e,20),n.writeUint32LE(j+h|0,e,24),n.writeUint32LE(R+l|0,e,28),n.writeUint32LE(N+d|0,e,32),n.writeUint32LE(P+f|0,e,36),n.writeUint32LE(A+p|0,e,40),n.writeUint32LE(T+g|0,e,44),n.writeUint32LE(L+y|0,e,48),n.writeUint32LE(x+b|0,e,52),n.writeUint32LE(U+v|0,e,56),n.writeUint32LE(C+m|0,e,60)}function o(e,t,r,n,o){if(void 0===o&&(o=0),32!==e.length)throw new Error("ChaCha: key size must be 32 bytes");if(n.length<r.length)throw new Error("ChaCha: destination is shorter than source");var c,u;if(0===o){if(8!==t.length&&12!==t.length)throw new Error("ChaCha nonce must be 8 or 12 bytes");u=(c=new Uint8Array(16)).length-t.length,c.set(t,u)}else{if(16!==t.length)throw new Error("ChaCha nonce with counter must be 16 bytes");c=t,u=o}for(var h=new Uint8Array(64),l=0;l<r.length;l+=64){s(h,c,e);for(var d=l;d<l+64&&d<r.length;d++)n[d]=r[d]^h[d-l];a(c,0,u)}return i.wipe(h),0===o&&i.wipe(c),n}function a(e,t,r){for(var n=1;r--;)n=n+(255&e[t])|0,e[t]=255&n,n>>>=8,t++;if(n>0)throw new Error("ChaCha: counter overflow")}t.streamXOR=o,t.stream=function(e,t,r,n){return void 0===n&&(n=0),i.wipe(r),o(e,t,r,r,n)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mul=Math.imul||function(e,t){var r=65535&e,n=65535&t;return r*n+((e>>>16&65535)*n+r*(t>>>16&65535)<<16>>>0)|0},t.add=function(e,t){return e+t|0},t.sub=function(e,t){return e-t|0},t.rotl=function(e,t){return e<<t|e>>>32-t},t.rotr=function(e,t){return e<<32-t|e>>>t},t.isInteger=Number.isInteger||function(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e},t.MAX_SAFE_INTEGER=9007199254740991,t.isSafeInteger=function(e){return t.isInteger(e)&&e>=-t.MAX_SAFE_INTEGER&&e<=t.MAX_SAFE_INTEGER}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(38),i=r(14);t.DIGEST_LENGTH=16;var s=function(){function e(e){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 r=e[0]|e[1]<<8;this._r[0]=8191&r;var n=e[2]|e[3]<<8;this._r[1]=8191&(r>>>13|n<<3);var i=e[4]|e[5]<<8;this._r[2]=7939&(n>>>10|i<<6);var s=e[6]|e[7]<<8;this._r[3]=8191&(i>>>7|s<<9);var o=e[8]|e[9]<<8;this._r[4]=255&(s>>>4|o<<12),this._r[5]=o>>>1&8190;var a=e[10]|e[11]<<8;this._r[6]=8191&(o>>>14|a<<2);var c=e[12]|e[13]<<8;this._r[7]=8065&(a>>>11|c<<5);var u=e[14]|e[15]<<8;this._r[8]=8191&(c>>>8|u<<8),this._r[9]=u>>>5&127,this._pad[0]=e[16]|e[17]<<8,this._pad[1]=e[18]|e[19]<<8,this._pad[2]=e[20]|e[21]<<8,this._pad[3]=e[22]|e[23]<<8,this._pad[4]=e[24]|e[25]<<8,this._pad[5]=e[26]|e[27]<<8,this._pad[6]=e[28]|e[29]<<8,this._pad[7]=e[30]|e[31]<<8}return e.prototype._blocks=function(e,t,r){for(var n=this._fin?0:2048,i=this._h[0],s=this._h[1],o=this._h[2],a=this._h[3],c=this._h[4],u=this._h[5],h=this._h[6],l=this._h[7],d=this._h[8],f=this._h[9],p=this._r[0],g=this._r[1],y=this._r[2],b=this._r[3],v=this._r[4],m=this._r[5],_=this._r[6],w=this._r[7],E=this._r[8],O=this._r[9];r>=16;){var S=e[t+0]|e[t+1]<<8;i+=8191&S;var I=e[t+2]|e[t+3]<<8;s+=8191&(S>>>13|I<<3);var j=e[t+4]|e[t+5]<<8;o+=8191&(I>>>10|j<<6);var R=e[t+6]|e[t+7]<<8;a+=8191&(j>>>7|R<<9);var N=e[t+8]|e[t+9]<<8;c+=8191&(R>>>4|N<<12),u+=N>>>1&8191;var P=e[t+10]|e[t+11]<<8;h+=8191&(N>>>14|P<<2);var A=e[t+12]|e[t+13]<<8;l+=8191&(P>>>11|A<<5);var T=e[t+14]|e[t+15]<<8,L=0,x=L;x+=i*p,x+=s*(5*O),x+=o*(5*E),x+=a*(5*w),L=(x+=c*(5*_))>>>13,x&=8191,x+=u*(5*m),x+=h*(5*v),x+=l*(5*b),x+=(d+=8191&(A>>>8|T<<8))*(5*y);var U=L+=(x+=(f+=T>>>5|n)*(5*g))>>>13;U+=i*g,U+=s*p,U+=o*(5*O),U+=a*(5*E),L=(U+=c*(5*w))>>>13,U&=8191,U+=u*(5*_),U+=h*(5*m),U+=l*(5*v),U+=d*(5*b),L+=(U+=f*(5*y))>>>13,U&=8191;var C=L;C+=i*y,C+=s*g,C+=o*p,C+=a*(5*O),L=(C+=c*(5*E))>>>13,C&=8191,C+=u*(5*w),C+=h*(5*_),C+=l*(5*m),C+=d*(5*v);var M=L+=(C+=f*(5*b))>>>13;M+=i*b,M+=s*y,M+=o*g,M+=a*p,L=(M+=c*(5*O))>>>13,M&=8191,M+=u*(5*E),M+=h*(5*w),M+=l*(5*_),M+=d*(5*m);var D=L+=(M+=f*(5*v))>>>13;D+=i*v,D+=s*b,D+=o*y,D+=a*g,L=(D+=c*p)>>>13,D&=8191,D+=u*(5*O),D+=h*(5*E),D+=l*(5*w),D+=d*(5*_);var z=L+=(D+=f*(5*m))>>>13;z+=i*m,z+=s*v,z+=o*b,z+=a*y,L=(z+=c*g)>>>13,z&=8191,z+=u*p,z+=h*(5*O),z+=l*(5*E),z+=d*(5*w);var k=L+=(z+=f*(5*_))>>>13;k+=i*_,k+=s*m,k+=o*v,k+=a*b,L=(k+=c*y)>>>13,k&=8191,k+=u*g,k+=h*p,k+=l*(5*O),k+=d*(5*E);var V=L+=(k+=f*(5*w))>>>13;V+=i*w,V+=s*_,V+=o*m,V+=a*v,L=(V+=c*b)>>>13,V&=8191,V+=u*y,V+=h*g,V+=l*p,V+=d*(5*O);var H=L+=(V+=f*(5*E))>>>13;H+=i*E,H+=s*w,H+=o*_,H+=a*m,L=(H+=c*v)>>>13,H&=8191,H+=u*b,H+=h*y,H+=l*g,H+=d*p;var K=L+=(H+=f*(5*O))>>>13;K+=i*O,K+=s*E,K+=o*w,K+=a*_,L=(K+=c*m)>>>13,K&=8191,K+=u*v,K+=h*b,K+=l*y,K+=d*g,i=x=8191&(L=(L=((L+=(K+=f*p)>>>13)<<2)+L|0)+(x&=8191)|0),s=U+=L>>>=13,o=C&=8191,a=M&=8191,c=D&=8191,u=z&=8191,h=k&=8191,l=V&=8191,d=H&=8191,f=K&=8191,t+=16,r-=16}this._h[0]=i,this._h[1]=s,this._h[2]=o,this._h[3]=a,this._h[4]=c,this._h[5]=u,this._h[6]=h,this._h[7]=l,this._h[8]=d,this._h[9]=f},e.prototype.finish=function(e,t){void 0===t&&(t=0);var r,n,i,s,o=new Uint16Array(10);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(r=this._h[1]>>>13,this._h[1]&=8191,s=2;s<10;s++)this._h[s]+=r,r=this._h[s]>>>13,this._h[s]&=8191;for(this._h[0]+=5*r,r=this._h[0]>>>13,this._h[0]&=8191,this._h[1]+=r,r=this._h[1]>>>13,this._h[1]&=8191,this._h[2]+=r,o[0]=this._h[0]+5,r=o[0]>>>13,o[0]&=8191,s=1;s<10;s++)o[s]=this._h[s]+r,r=o[s]>>>13,o[s]&=8191;for(o[9]-=8192,n=(1^r)-1,s=0;s<10;s++)o[s]&=n;for(n=~n,s=0;s<10;s++)this._h[s]=this._h[s]&n|o[s];for(this._h[0]=65535&(this._h[0]|this._h[1]<<13),this._h[1]=65535&(this._h[1]>>>3|this._h[2]<<10),this._h[2]=65535&(this._h[2]>>>6|this._h[3]<<7),this._h[3]=65535&(this._h[3]>>>9|this._h[4]<<4),this._h[4]=65535&(this._h[4]>>>12|this._h[5]<<1|this._h[6]<<14),this._h[5]=65535&(this._h[6]>>>2|this._h[7]<<11),this._h[6]=65535&(this._h[7]>>>5|this._h[8]<<8),this._h[7]=65535&(this._h[8]>>>8|this._h[9]<<5),i=this._h[0]+this._pad[0],this._h[0]=65535&i,s=1;s<8;s++)i=(this._h[s]+this._pad[s]|0)+(i>>>16)|0,this._h[s]=65535&i;return e[t+0]=this._h[0]>>>0,e[t+1]=this._h[0]>>>8,e[t+2]=this._h[1]>>>0,e[t+3]=this._h[1]>>>8,e[t+4]=this._h[2]>>>0,e[t+5]=this._h[2]>>>8,e[t+6]=this._h[3]>>>0,e[t+7]=this._h[3]>>>8,e[t+8]=this._h[4]>>>0,e[t+9]=this._h[4]>>>8,e[t+10]=this._h[5]>>>0,e[t+11]=this._h[5]>>>8,e[t+12]=this._h[6]>>>0,e[t+13]=this._h[6]>>>8,e[t+14]=this._h[7]>>>0,e[t+15]=this._h[7]>>>8,this._finished=!0,this},e.prototype.update=function(e){var t,r=0,n=e.length;if(this._leftover){(t=16-this._leftover)>n&&(t=n);for(var i=0;i<t;i++)this._buffer[this._leftover+i]=e[r+i];if(n-=t,r+=t,this._leftover+=t,this._leftover<16)return this;this._blocks(this._buffer,0,16),this._leftover=0}if(n>=16&&(t=n-n%16,this._blocks(e,r,t),r+=t,n-=t),n){for(i=0;i<n;i++)this._buffer[this._leftover+i]=e[r+i];this._leftover+=n}return this},e.prototype.digest=function(){if(this._finished)throw new Error("Poly1305 was finished");var e=new Uint8Array(16);return this.finish(e),e},e.prototype.clean=function(){return i.wipe(this._buffer),i.wipe(this._r),i.wipe(this._h),i.wipe(this._pad),this._leftover=0,this._fin=0,this._finished=!0,this},e}();t.Poly1305=s,t.oneTimeAuth=function(e,t){var r=new s(e);r.update(t);var n=r.digest();return r.clean(),n},t.equal=function(e,r){return e.length===t.DIGEST_LENGTH&&r.length===t.DIGEST_LENGTH&&n.equal(e,r)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(89),i=r(38),s=r(14),o=function(){function e(e,t){this._finished=!1,this._inner=new e,this._outer=new e,this.blockSize=this._outer.blockSize,this.digestLength=this._outer.digestLength;var r=new Uint8Array(this.blockSize);t.length>this.blockSize?this._inner.update(t).finish(r).clean():r.set(t);for(var i=0;i<r.length;i++)r[i]^=54;this._inner.update(r);for(i=0;i<r.length;i++)r[i]^=106;this._outer.update(r),n.isSerializableHash(this._inner)&&n.isSerializableHash(this._outer)&&(this._innerKeyedState=this._inner.saveState(),this._outerKeyedState=this._outer.saveState()),s.wipe(r)}return e.prototype.reset=function(){if(!n.isSerializableHash(this._inner)||!n.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},e.prototype.clean=function(){n.isSerializableHash(this._inner)&&this._inner.cleanSavedState(this._innerKeyedState),n.isSerializableHash(this._outer)&&this._outer.cleanSavedState(this._outerKeyedState),this._inner.clean(),this._outer.clean()},e.prototype.update=function(e){return this._inner.update(e),this},e.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)},e.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},e.prototype.saveState=function(){if(!n.isSerializableHash(this._inner))throw new Error("hmac: can't saveState() because hash doesn't implement it");return this._inner.saveState()},e.prototype.restoreState=function(e){if(!n.isSerializableHash(this._inner)||!n.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},e.prototype.cleanSavedState=function(e){if(!n.isSerializableHash(this._inner))throw new Error("hmac: can't cleanSavedState() because hash doesn't implement it");this._inner.cleanSavedState(e)},e}();t.HMAC=o,t.hmac=function(e,t,r){var n=new o(e,t);n.update(r);var i=n.digest();return n.clean(),i},t.equal=i.equal},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSerializableHash=function(e){return void 0!==e.saveState&&void 0!==e.restoreState&&void 0!==e.cleanSavedState}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(91),i=r(92),s=function(){function e(){return this.isAvailable=!1,this.name="",this._source=new n.BrowserRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Browser")):(this._source=new i.NodeRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Node")):void 0)}return e.prototype.randomBytes=function(e){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(e)},e}();t.SystemRandomSource=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(){this.isAvailable=!1,this.isInstantiated=!1;var e="undefined"!=typeof self?self.crypto||self.msCrypto:null;e&&e.getRandomValues&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}return e.prototype.randomBytes=function(e){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");for(var t=new Uint8Array(e),r=0;r<t.length;r+=65536)this._crypto.getRandomValues(t.subarray(r,r+Math.min(t.length-r,65536)));return t},e}();t.BrowserRandomSource=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(14),i=function(){function e(){this.isAvailable=!1,this.isInstantiated=!1;var e=r(93);e&&e.randomBytes&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}return e.prototype.randomBytes=function(e){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");var t=this._crypto.randomBytes(e);if(t.length!==e)throw new Error("NodeRandomSource: got fewer bytes than requested");for(var r=new Uint8Array(e),i=0;i<r.length;i++)r[i]=t[i];return n.wipe(t),r},e}();t.NodeRandomSource=i},function(e,t){},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(95),i=r(97),s=r(98),o=r(99),a=r(100),c=r(55),u=r(101),h=r(56),l=r(102),d=r(103),f=r(104),p=r(106),g=r(107),y=r(108);r(109);var b=r(57),v=r(39),m=r(26),_=r(32),w=r(18);const E={...n,...i,...s,...o,...a,...c,...u,...h,...l,...d},O={...f,...p},S={raw:g,json:y};t.CID=b.CID,t.hasher=v,t.digest=m,t.varint=_,t.bytes=w,t.bases=E,t.codecs=S,t.hashes=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16),i=r(18);const s=n.from({prefix:"\0",name:"identity",encode:e=>i.toString(e),decode:e=>i.fromString(e)});t.identity=s},function(e,t,r){"use strict";var n=function(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<e.length;i++){var s=e.charAt(i),o=s.charCodeAt(0);if(255!==r[o])throw new TypeError(s+" is ambiguous");r[o]=i}var a=e.length,c=e.charAt(0),u=Math.log(a)/Math.log(256),h=Math.log(256)/Math.log(a);function l(e){if("string"!=typeof e)throw new TypeError("Expected String");if(0===e.length)return new Uint8Array;var t=0;if(" "!==e[t]){for(var n=0,i=0;e[t]===c;)n++,t++;for(var s=(e.length-t)*u+1>>>0,o=new Uint8Array(s);e[t];){var h=r[e.charCodeAt(t)];if(255===h)return;for(var l=0,d=s-1;(0!==h||l<i)&&-1!==d;d--,l++)h+=a*o[d]>>>0,o[d]=h%256>>>0,h=h/256>>>0;if(0!==h)throw new Error("Non-zero carry");i=l,t++}if(" "!==e[t]){for(var f=s-i;f!==s&&0===o[f];)f++;for(var p=new Uint8Array(n+(s-f)),g=n;f!==s;)p[g++]=o[f++];return p}}}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(0===t.length)return"";for(var r=0,n=0,i=0,s=t.length;i!==s&&0===t[i];)i++,r++;for(var o=(s-i)*h+1>>>0,u=new Uint8Array(o);i!==s;){for(var l=t[i],d=0,f=o-1;(0!==l||d<n)&&-1!==f;f--,d++)l+=256*u[f]>>>0,u[f]=l%a>>>0,l=l/a>>>0;if(0!==l)throw new Error("Non-zero carry");n=d,i++}for(var p=o-n;p!==o&&0===u[p];)p++;for(var g=c.repeat(r);p<o;++p)g+=e.charAt(u[p]);return g},decodeUnsafe:l,decode:function(e){var r=l(e);if(r)return r;throw new Error(`Non-${t} character`)}}};e.exports=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(16).rfc4648({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});t.base2=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(16).rfc4648({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});t.base8=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(16).baseX({prefix:"9",name:"base10",alphabet:"0123456789"});t.base10=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16);const i=n.rfc4648({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),s=n.rfc4648({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});t.base16=i,t.base16upper=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16);const i=n.baseX({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),s=n.baseX({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});t.base36=i,t.base36upper=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16);const i=n.rfc4648({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),s=n.rfc4648({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),o=n.rfc4648({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),a=n.rfc4648({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});t.base64=i,t.base64pad=s,t.base64url=o,t.base64urlpad=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16);const i=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),s=i.reduce((e,t,r)=>(e[r]=t,e),[]),o=i.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);const a=n.from({prefix:"🚀",name:"base256emoji",encode:function(e){return e.reduce((e,t)=>e+=s[t],"")},decode:function(e){const t=[];for(const r of e){const e=o[r.codePointAt(0)];if(void 0===e)throw new Error("Non-base256emoji character: "+r);t.push(e)}return new Uint8Array(t)}});t.base256emoji=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(39);const i=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),s=n.from({name:"sha2-256",code:18,encode:i("SHA-256")}),o=n.from({name:"sha2-512",code:19,encode:i("SHA-512")});t.sha256=s,t.sha512=o},function(e,t,r){"use strict";var n=function e(t,r,n){r=r||[];var s=n=n||0;for(;t>=i;)r[n++]=255&t|128,t/=128;for(;-128&t;)r[n++]=255&t|128,t>>>=7;return r[n]=0|t,e.bytes=n-s+1,r},i=Math.pow(2,31);var s=function e(t,r){var n,i=0,s=0,o=r=r||0,a=t.length;do{if(o>=a)throw e.bytes=0,new RangeError("Could not decode varint");n=t[o++],i+=s<28?(127&n)<<s:(127&n)*Math.pow(2,s),s+=7}while(n>=128);return e.bytes=o-r,i};var o=Math.pow(2,7),a=Math.pow(2,14),c=Math.pow(2,21),u=Math.pow(2,28),h=Math.pow(2,35),l=Math.pow(2,42),d=Math.pow(2,49),f=Math.pow(2,56),p=Math.pow(2,63),g={encode:n,decode:s,encodingLength:function(e){return e<o?1:e<a?2:e<c?3:e<u?4:e<h?5:e<l?6:e<d?7:e<f?8:e<p?9:10}};e.exports=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(18),i=r(26);const s=n.coerce,o={code:0,name:"identity",encode:s,digest:e=>i.create(0,s(e))};t.identity=o},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(18);t.code=85,t.decode=e=>n.coerce(e),t.encode=e=>n.coerce(e),t.name="raw"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=new TextEncoder,i=new TextDecoder;t.code=512,t.decode=e=>JSON.parse(i.decode(e)),t.encode=e=>n.encode(JSON.stringify(e)),t.name="json"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(57),i=r(32),s=r(18),o=r(39),a=r(26);t.CID=n.CID,t.varint=i,t.bytes=s,t.hasher=o,t.digest=a},function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(111),t),i(r(112),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.delay=void 0,t.delay=function(e){return new Promise(t=>{setTimeout(()=>{t(!0)},e)})}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fromMiliseconds=t.toMiliseconds=void 0;const n=r(58);t.toMiliseconds=function(e){return e*n.ONE_THOUSAND},t.fromMiliseconds=function(e){return Math.floor(e/n.ONE_THOUSAND)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ONE_THOUSAND=t.ONE_HUNDRED=void 0,t.ONE_HUNDRED=100,t.ONE_THOUSAND=1e3},function(e,t,r){"use strict";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=5*t.ONE_MINUTE,t.TEN_MINUTES=10*t.ONE_MINUTE,t.THIRTY_MINUTES=30*t.ONE_MINUTE,t.SIXTY_MINUTES=60*t.ONE_MINUTE,t.ONE_HOUR=t.SIXTY_MINUTES,t.THREE_HOURS=3*t.ONE_HOUR,t.SIX_HOURS=6*t.ONE_HOUR,t.TWELVE_HOURS=12*t.ONE_HOUR,t.TWENTY_FOUR_HOURS=24*t.ONE_HOUR,t.ONE_DAY=t.TWENTY_FOUR_HOURS,t.THREE_DAYS=3*t.ONE_DAY,t.FIVE_DAYS=5*t.ONE_DAY,t.SEVEN_DAYS=7*t.ONE_DAY,t.THIRTY_DAYS=30*t.ONE_DAY,t.ONE_WEEK=t.SEVEN_DAYS,t.TWO_WEEKS=2*t.ONE_WEEK,t.THREE_WEEKS=3*t.ONE_WEEK,t.FOUR_WEEKS=4*t.ONE_WEEK,t.ONE_YEAR=365*t.ONE_DAY},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Watch=void 0;class n{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 t=this.get(e);if(void 0!==t.elapsed)throw new Error("Watch already stopped for label: "+e);const r=Date.now()-t.started;this.timestamps.set(e,{started:t.started,elapsed:r})}get(e){const t=this.timestamps.get(e);if(void 0===t)throw new Error("No timestamp found for label: "+e);return t}elapsed(e){const t=this.get(e);return t.elapsed||Date.now()-t.started}}t.Watch=n,t.default=n},function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(117),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IWatch=void 0;t.IWatch=class{}},function(e,t,r){"use strict";e.exports=e=>encodeURIComponent(e).replace(/[!'()*]/g,e=>"%"+e.charCodeAt(0).toString(16).toUpperCase())},function(e,t,r){"use strict";var n=new RegExp("%[a-f0-9]{2}","gi"),i=new RegExp("(%[a-f0-9]{2})+","gi");function s(e,t){try{return decodeURIComponent(e.join(""))}catch(e){}if(1===e.length)return e;t=t||1;var r=e.slice(0,t),n=e.slice(t);return Array.prototype.concat.call([],s(r),s(n))}function o(e){try{return decodeURIComponent(e)}catch(i){for(var t=e.match(n),r=1;r<t.length;r++)t=(e=s(t,r).join("")).match(n);return e}}e.exports=function(e){if("string"!=typeof e)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof e+"`");try{return e=e.replace(/\+/g," "),decodeURIComponent(e)}catch(t){return function(e){for(var t={"%FE%FF":"��","%FF%FE":"��"},r=i.exec(e);r;){try{t[r[0]]=decodeURIComponent(r[0])}catch(e){var n=o(r[0]);n!==r[0]&&(t[r[0]]=n)}r=i.exec(e)}t["%C2"]="�";for(var s=Object.keys(t),a=0;a<s.length;a++){var c=s[a];e=e.replace(new RegExp(c,"g"),t[c])}return e}(e)}}},function(e,t,r){"use strict";e.exports=(e,t)=>{if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Expected the arguments to be of type `string`");if(""===t)return[e];const r=e.indexOf(t);return-1===r?[e]:[e.slice(0,r),e.slice(r+t.length)]}},function(e,t,r){"use strict";e.exports=function(e,t){for(var r={},n=Object.keys(e),i=Array.isArray(t),s=0;s<n.length;s++){var o=n[s],a=e[o];(i?-1!==t.indexOf(o):t(o,a,e))&&(r[o]=a)}return r}},function(e,t,r){"use strict";function n(e){try{return JSON.stringify(e)}catch(e){return'"[Circular]"'}}e.exports=function(e,t,r){var i=r&&r.stringify||n;if("object"==typeof e&&null!==e){var s=t.length+1;if(1===s)return e;var o=new Array(s);o[0]=i(e);for(var a=1;a<s;a++)o[a]=i(t[a]);return o.join(" ")}if("string"!=typeof e)return e;var c=t.length;if(0===c)return e;for(var u="",h=0,l=-1,d=e&&e.length||0,f=0;f<d;){if(37===e.charCodeAt(f)&&f+1<d){switch(l=l>-1?l:0,e.charCodeAt(f+1)){case 100:case 102:if(h>=c)break;if(null==t[h])break;l<f&&(u+=e.slice(l,f)),u+=Number(t[h]),l=f+2,f++;break;case 105:if(h>=c)break;if(null==t[h])break;l<f&&(u+=e.slice(l,f)),u+=Math.floor(Number(t[h])),l=f+2,f++;break;case 79:case 111:case 106:if(h>=c)break;if(void 0===t[h])break;l<f&&(u+=e.slice(l,f));var p=typeof t[h];if("string"===p){u+="'"+t[h]+"'",l=f+2,f++;break}if("function"===p){u+=t[h].name||"<anonymous>",l=f+2,f++;break}u+=i(t[h]),l=f+2,f++;break;case 115:if(h>=c)break;l<f&&(u+=e.slice(l,f)),u+=String(t[h]),l=f+2,f++;break;case 37:l<f&&(u+=e.slice(l,f)),u+="%",l=f+2,f++,h--}++h}++f}if(-1===l)return e;l<d&&(u+=e.slice(l));return u}},function(e,t,r){(function(t){!function(){"use strict";var r;function n(){}(r=n).prototype.getItem=function(e){return this.hasOwnProperty(e)?String(this[e]):null},r.prototype.setItem=function(e,t){this[e]=String(t)},r.prototype.removeItem=function(e){delete this[e]},r.prototype.clear=function(){var e=this;Object.keys(e).forEach((function(t){e[t]=void 0,delete e[t]}))},r.prototype.key=function(e){return e=e||0,Object.keys(this)[e]},r.prototype.__defineGetter__("length",(function(){return Object.keys(this).length})),t.localStorage?e.exports=localStorage:e.exports=new n}()}).call(this,r(31))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(30);n.__exportStar(r(125),t),n.__exportStar(r(126),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IKeyValueStorage=void 0;t.IKeyValueStorage=class{}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.parseEntry=void 0;const n=r(62);t.parseEntry=function(e){var t;return[e[0],n.safeJsonParse(null!==(t=e[1])&&void 0!==t?t:"")]}},function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.HeartBeat=void 0;const i=r(5),s=r(2),o=r(63),a=r(64);class c extends o.IHeartBeat{constructor(e){super(e),this.events=new i.EventEmitter,this.interval=a.HEARTBEAT_INTERVAL,this.interval=(null==e?void 0:e.interval)||a.HEARTBEAT_INTERVAL}static init(e){return n(this,void 0,void 0,(function*(){const t=new c(e);return yield t.init(),t}))}init(){return n(this,void 0,void 0,(function*(){yield this.initialize()}))}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}initialize(){return n(this,void 0,void 0,(function*(){setInterval(()=>this.pulse(),s.toMiliseconds(this.interval))}))}pulse(){this.events.emit(a.HEARTBEAT_EVENTS.pulse)}}t.HeartBeat=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IHeartBeat=void 0;const n=r(12);class i extends n.IEvents{constructor(e){super()}}t.IHeartBeat=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HEARTBEAT_EVENTS=t.HEARTBEAT_INTERVAL=void 0;const n=r(2);t.HEARTBEAT_INTERVAL=n.FIVE_SECONDS,t.HEARTBEAT_EVENTS={pulse:"heartbeat_pulse"}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.generateChildLogger=t.formatChildLoggerContext=t.getLoggerContext=t.setBrowserLoggerContext=t.getBrowserLoggerContext=t.getDefaultLoggerOptions=void 0;const n=r(65);function i(e,t=n.PINO_CUSTOM_CONTEXT_KEY){return e[t]||""}function s(e,t,r=n.PINO_CUSTOM_CONTEXT_KEY){return e[r]=t,e}function o(e,t=n.PINO_CUSTOM_CONTEXT_KEY){let r="";return r=void 0===e.bindings?i(e,t):e.bindings().context||"",r}function a(e,t,r=n.PINO_CUSTOM_CONTEXT_KEY){const i=o(e,r);return i.trim()?`${i}/${t}`:t}t.getDefaultLoggerOptions=function(e){return Object.assign(Object.assign({},e),{level:(null==e?void 0:e.level)||n.PINO_LOGGER_DEFAULTS.level})},t.getBrowserLoggerContext=i,t.setBrowserLoggerContext=s,t.getLoggerContext=o,t.formatChildLoggerContext=a,t.generateChildLogger=function(e,t,r=n.PINO_CUSTOM_CONTEXT_KEY){const i=a(e,t,r);return s(e.child({context:i}),i,r)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(25),i=r(14);t.DIGEST_LENGTH=64,t.BLOCK_SIZE=128;var s=function(){function e(){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 e.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},e.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},e.prototype.clean=function(){i.wipe(this._buffer),i.wipe(this._tempHi),i.wipe(this._tempLo),this.reset()},e.prototype.update=function(e,r){if(void 0===r&&(r=e.length),this._finished)throw new Error("SHA512: can't update because hash was finished.");var n=0;if(this._bytesHashed+=r,this._bufferLength>0){for(;this._bufferLength<t.BLOCK_SIZE&&r>0;)this._buffer[this._bufferLength++]=e[n++],r--;this._bufferLength===this.blockSize&&(a(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,this.blockSize),this._bufferLength=0)}for(r>=this.blockSize&&(n=a(this._tempHi,this._tempLo,this._stateHi,this._stateLo,e,n,r),r%=this.blockSize);r>0;)this._buffer[this._bufferLength++]=e[n++],r--;return this},e.prototype.finish=function(e){if(!this._finished){var t=this._bytesHashed,r=this._bufferLength,i=t/536870912|0,s=t<<3,o=t%128<112?128:256;this._buffer[r]=128;for(var c=r+1;c<o-8;c++)this._buffer[c]=0;n.writeUint32BE(i,this._buffer,o-8),n.writeUint32BE(s,this._buffer,o-4),a(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,o),this._finished=!0}for(c=0;c<this.digestLength/8;c++)n.writeUint32BE(this._stateHi[c],e,8*c),n.writeUint32BE(this._stateLo[c],e,8*c+4);return this},e.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},e.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}},e.prototype.restoreState=function(e){return this._stateHi.set(e.stateHi),this._stateLo.set(e.stateLo),this._bufferLength=e.bufferLength,e.buffer&&this._buffer.set(e.buffer),this._bytesHashed=e.bytesHashed,this._finished=!1,this},e.prototype.cleanSavedState=function(e){i.wipe(e.stateHi),i.wipe(e.stateLo),e.buffer&&i.wipe(e.buffer),e.bufferLength=0,e.bytesHashed=0},e}();t.SHA512=s;var o=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 a(e,t,r,i,s,a,c){for(var u,h,l,d,f,p,g,y,b=r[0],v=r[1],m=r[2],_=r[3],w=r[4],E=r[5],O=r[6],S=r[7],I=i[0],j=i[1],R=i[2],N=i[3],P=i[4],A=i[5],T=i[6],L=i[7];c>=128;){for(var x=0;x<16;x++){var U=8*x+a;e[x]=n.readUint32BE(s,U),t[x]=n.readUint32BE(s,U+4)}for(x=0;x<80;x++){var C,M,D=b,z=v,k=m,V=_,H=w,K=E,J=O,q=I,B=j,F=R,G=N,W=P,Y=A,$=T;if(f=65535&(h=L),p=h>>>16,g=65535&(u=S),y=u>>>16,f+=65535&(h=(P>>>14|w<<18)^(P>>>18|w<<14)^(w>>>9|P<<23)),p+=h>>>16,g+=65535&(u=(w>>>14|P<<18)^(w>>>18|P<<14)^(P>>>9|w<<23)),y+=u>>>16,f+=65535&(h=P&A^~P&T),p+=h>>>16,g+=65535&(u=w&E^~w&O),y+=u>>>16,u=o[2*x],f+=65535&(h=o[2*x+1]),p+=h>>>16,g+=65535&u,y+=u>>>16,u=e[x%16],p+=(h=t[x%16])>>>16,g+=65535&u,y+=u>>>16,g+=(p+=(f+=65535&h)>>>16)>>>16,f=65535&(h=d=65535&f|p<<16),p=h>>>16,g=65535&(u=l=65535&g|(y+=g>>>16)<<16),y=u>>>16,f+=65535&(h=(I>>>28|b<<4)^(b>>>2|I<<30)^(b>>>7|I<<25)),p+=h>>>16,g+=65535&(u=(b>>>28|I<<4)^(I>>>2|b<<30)^(I>>>7|b<<25)),y+=u>>>16,p+=(h=I&j^I&R^j&R)>>>16,g+=65535&(u=b&v^b&m^v&m),y+=u>>>16,C=65535&(g+=(p+=(f+=65535&h)>>>16)>>>16)|(y+=g>>>16)<<16,M=65535&f|p<<16,f=65535&(h=G),p=h>>>16,g=65535&(u=V),y=u>>>16,p+=(h=d)>>>16,g+=65535&(u=l),y+=u>>>16,v=D,m=z,_=k,w=V=65535&(g+=(p+=(f+=65535&h)>>>16)>>>16)|(y+=g>>>16)<<16,E=H,O=K,S=J,b=C,j=q,R=B,N=F,P=G=65535&f|p<<16,A=W,T=Y,L=$,I=M,x%16==15)for(U=0;U<16;U++)u=e[U],f=65535&(h=t[U]),p=h>>>16,g=65535&u,y=u>>>16,u=e[(U+9)%16],f+=65535&(h=t[(U+9)%16]),p+=h>>>16,g+=65535&u,y+=u>>>16,l=e[(U+1)%16],f+=65535&(h=((d=t[(U+1)%16])>>>1|l<<31)^(d>>>8|l<<24)^(d>>>7|l<<25)),p+=h>>>16,g+=65535&(u=(l>>>1|d<<31)^(l>>>8|d<<24)^l>>>7),y+=u>>>16,l=e[(U+14)%16],p+=(h=((d=t[(U+14)%16])>>>19|l<<13)^(l>>>29|d<<3)^(d>>>6|l<<26))>>>16,g+=65535&(u=(l>>>19|d<<13)^(d>>>29|l<<3)^l>>>6),y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,e[U]=65535&g|y<<16,t[U]=65535&f|p<<16}f=65535&(h=I),p=h>>>16,g=65535&(u=b),y=u>>>16,u=r[0],p+=(h=i[0])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[0]=b=65535&g|y<<16,i[0]=I=65535&f|p<<16,f=65535&(h=j),p=h>>>16,g=65535&(u=v),y=u>>>16,u=r[1],p+=(h=i[1])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[1]=v=65535&g|y<<16,i[1]=j=65535&f|p<<16,f=65535&(h=R),p=h>>>16,g=65535&(u=m),y=u>>>16,u=r[2],p+=(h=i[2])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[2]=m=65535&g|y<<16,i[2]=R=65535&f|p<<16,f=65535&(h=N),p=h>>>16,g=65535&(u=_),y=u>>>16,u=r[3],p+=(h=i[3])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[3]=_=65535&g|y<<16,i[3]=N=65535&f|p<<16,f=65535&(h=P),p=h>>>16,g=65535&(u=w),y=u>>>16,u=r[4],p+=(h=i[4])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[4]=w=65535&g|y<<16,i[4]=P=65535&f|p<<16,f=65535&(h=A),p=h>>>16,g=65535&(u=E),y=u>>>16,u=r[5],p+=(h=i[5])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[5]=E=65535&g|y<<16,i[5]=A=65535&f|p<<16,f=65535&(h=T),p=h>>>16,g=65535&(u=O),y=u>>>16,u=r[6],p+=(h=i[6])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[6]=O=65535&g|y<<16,i[6]=T=65535&f|p<<16,f=65535&(h=L),p=h>>>16,g=65535&(u=S),y=u>>>16,u=r[7],p+=(h=i[7])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[7]=S=65535&g|y<<16,i[7]=L=65535&f|p<<16,a+=128,c-=128}return a}t.hash=function(e){var t=new s;t.update(e);var r=t.digest();return t.clean(),r}},function(e,t,r){"use strict";e.exports=function(){throw new Error("ws does not work in the browser. Browser clients must use the native WebSocket object")}},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,r){"use strict";r.r(t),r.d(t,"SIGNER_EVENTS",(function(){return ye})),r.d(t,"SignerConnection",(function(){return be}));var n=r(22),i=r.n(n),s=r(5),o=r.n(s),a=r(80),c=r.n(a),u=r(19),h=r(3),l=r(7),d=r(13),f=r(29),p=r(6),g=r(0);const y="error",b={database:":memory:"};var v=r(2);const m=v.ONE_DAY,_=v.SIX_HOURS,w="relayer_message",E="relayer_connect",O="relayer_disconnect",S="relayer_error",I="payload",j="connect",R="disconnect",N="error",P=v.ONE_SECOND,A="subscription_created",T="subscription_deleted",L="subscription_sync";v.THIRTY_DAYS;class x{constructor(e,t){this.core=e,this.logger=t,this.keychain=new Map,this.name="keychain",this.version="0.3",this.initialized=!1,this.storagePrefix="wc@2:core:",this.init=async()=>{if(!this.initialized){const e=await this.getKeyChain();void 0!==e&&(this.keychain=e),this.initialized=!0}},this.has=e=>(this.isInitialized(),this.keychain.has(e)),this.set=async(e,t)=>{this.isInitialized(),this.keychain.set(e,t),await this.persist()},this.get=e=>{this.isInitialized();const t=this.keychain.get(e);if(void 0===t){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(t)}return t},this.del=async e=>{this.isInitialized(),this.keychain.delete(e),await this.persist()},this.core=e,this.logger=Object(h.generateChildLogger)(t,this.name)}get context(){return Object(h.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,Object(g.mapToObj)(e))}async getKeyChain(){const e=await this.core.storage.getItem(this.storageKey);return void 0!==e?Object(g.objToMap)(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class U{constructor(e,t,r){this.core=e,this.logger=t,this.name="crypto",this.initialized=!1,this.init=async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)},this.hasKeys=e=>(this.isInitialized(),this.keychain.has(e)),this.getClientId=async()=>{this.isInitialized();const e=await this.getClientSeed(),t=f.generateKeyPair(e);return f.encodeIss(t.publicKey)},this.generateKeyPair=()=>{this.isInitialized();const e=Object(g.generateKeyPair)();return this.setPrivateKey(e.publicKey,e.privateKey)},this.signJWT=async e=>{this.isInitialized();const t=await this.getClientSeed(),r=f.generateKeyPair(t),n=Object(g.generateRandomBytes32)(),i=m;return await f.signJWT(n,e,i,r)},this.generateSharedKey=(e,t,r)=>{this.isInitialized();const n=this.getPrivateKey(e),i=Object(g.deriveSymKey)(n,t);return this.setSymKey(i,r)},this.setSymKey=async(e,t)=>{this.isInitialized();const r=t||Object(g.hashKey)(e);return await this.keychain.set(r,e),r},this.deleteKeyPair=async e=>{this.isInitialized(),await this.keychain.del(e)},this.deleteSymKey=async e=>{this.isInitialized(),await this.keychain.del(e)},this.encode=async(e,t,r)=>{this.isInitialized();const n=Object(g.validateEncoding)(r),i=Object(d.b)(t);Object(g.isTypeOneEnvelope)(n)&&(e=await this.generateSharedKey(n.senderPublicKey,n.receiverPublicKey));const s=this.getSymKey(e),{type:o,senderPublicKey:a}=n;return Object(g.encrypt)({type:o,symKey:s,message:i,senderPublicKey:a})},this.decode=async(e,t,r)=>{this.isInitialized();const n=Object(g.validateDecoding)(t,r);Object(g.isTypeOneEnvelope)(n)&&(e=await this.generateSharedKey(n.senderPublicKey,n.receiverPublicKey));const i=this.getSymKey(e),s=Object(g.decrypt)({symKey:i,encoded:t});return Object(d.a)(s)},this.core=e,this.logger=Object(h.generateChildLogger)(t,this.name),this.keychain=r||new x(this.core,this.logger)}get context(){return Object(h.getLoggerContext)(this.logger)}async setPrivateKey(e,t){return await this.keychain.set(e,t),e}getPrivateKey(e){return this.keychain.get(e)}async getClientSeed(){let e="";try{e=this.keychain.get("client_ed25519_seed")}catch(t){e=Object(g.generateRandomBytes32)(),await this.keychain.set("client_ed25519_seed",e)}return Object(p.fromString)(e,"base16")}getSymKey(e){return this.keychain.get(e)}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class C extends l.IMessageTracker{constructor(e,t){super(e,t),this.logger=e,this.core=t,this.messages=new Map,this.name="messages",this.version="0.3",this.initialized=!1,this.storagePrefix="wc@2:core:",this.init=async()=>{if(!this.initialized){this.logger.trace("Initialized");try{const e=await this.getRelayerMessages();void 0!==e&&(this.messages=e),this.logger.debug("Successfully Restored records for "+this.name),this.logger.trace({type:"method",method:"restore",size:this.messages.size})}catch(e){this.logger.debug("Failed to Restore records for "+this.name),this.logger.error(e)}finally{this.initialized=!0}}},this.set=async(e,t)=>{this.isInitialized();const r=Object(g.hashMessage)(t);let n=this.messages.get(e);return void 0===n&&(n={}),void 0!==n[r]||(n[r]=t,this.messages.set(e,n),await this.persist()),r},this.get=e=>{this.isInitialized();let t=this.messages.get(e);return void 0===t&&(t={}),t},this.has=(e,t)=>{this.isInitialized();return void 0!==this.get(e)[Object(g.hashMessage)(t)]},this.del=async e=>{this.isInitialized(),this.messages.delete(e),await this.persist()},this.logger=Object(h.generateChildLogger)(e,this.name),this.core=t}get context(){return Object(h.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}async setRelayerMessages(e){await this.core.storage.setItem(this.storageKey,Object(g.mapToObj)(e))}async getRelayerMessages(){const e=await this.core.storage.getItem(this.storageKey);return void 0!==e?Object(g.objToMap)(e):void 0}async persist(){await this.setRelayerMessages(this.messages)}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}var M=r(40),D=r(1),z=r(35).a;class k extends l.IPublisher{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,this.events=new s.EventEmitter,this.name="publisher",this.queue=new Map,this.publish=async(e,t,r)=>{this.logger.debug("Publishing Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:e,message:t,opts:r}});try{const n=(null==r?void 0:r.ttl)||_,i=Object(g.getRelayProtocolName)(r),s=(null==r?void 0:r.prompt)||!1,o={topic:e,message:t,opts:{ttl:n,relay:i,prompt:s,tag:(null==r?void 0:r.tag)||0}},a=Object(g.hashMessage)(t);this.queue.set(a,o),await this.rpcPublish(e,t,n,i,s),this.onPublish(a,o),this.logger.debug("Successfully Published Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:e,message:t,opts:r}})}catch(e){throw this.logger.debug("Failed to Publish Payload"),this.logger.error(e),e}},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.relayer=e,this.logger=Object(h.generateChildLogger)(t,this.name),this.registerEventListeners()}get context(){return Object(h.getLoggerContext)(this.logger)}rpcPublish(e,t,r,n,i,s){var o,a,c,u;const h={method:Object(g.getRelayProtocolApi)(n.protocol).publish,params:{topic:e,message:t,ttl:r,prompt:i,tag:s}};return Object(g.isUndefined)(null===(o=h.params)||void 0===o?void 0:o.prompt)&&(null===(a=h.params)||void 0===a||delete a.prompt),Object(g.isUndefined)(null===(c=h.params)||void 0===c?void 0:c.tag)&&(null===(u=h.params)||void 0===u||delete u.tag),this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"message",direction:"outgoing",request:h}),this.relayer.provider.request(h)}onPublish(e,t){this.queue.delete(e)}checkQueue(){this.queue.forEach(async e=>{const{topic:t,message:r,opts:{ttl:n,relay:i}}=e,s=Object(g.hashMessage)(r);await this.rpcPublish(t,r,n,i),this.onPublish(s,e)})}registerEventListeners(){this.relayer.core.heartbeat.on(u.HEARTBEAT_EVENTS.pulse,()=>{this.checkQueue()})}}class V{constructor(){this.map=new Map,this.set=(e,t)=>{const r=this.get(e);this.exists(e,t)||this.map.set(e,[...r,t])},this.get=e=>this.map.get(e)||[],this.exists=(e,t)=>this.get(e).includes(t),this.delete=(e,t)=>{if(void 0===t)return void this.map.delete(e);if(!this.map.has(e))return;const r=this.get(e);if(!this.exists(e,t))return;const n=r.filter(e=>e!==t);n.length?this.map.set(e,n):this.map.delete(e)},this.clear=()=>{this.map.clear()}}get topics(){return Array.from(this.map.keys())}}class H extends l.ISubscriber{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,this.subscriptions=new Map,this.topicMap=new V,this.events=new s.EventEmitter,this.name="subscription",this.version="0.3",this.pending=new Map,this.cached=[],this.initialized=!1,this.storagePrefix="wc@2:core:",this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),await this.reset(),this.registerEventListeners(),this.onEnable())},this.subscribe=async(e,t)=>{this.isInitialized(),this.logger.debug("Subscribing Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:e,opts:t}});try{const r=Object(g.getRelayProtocolName)(t),n={topic:e,relay:r};this.pending.set(e,n);const i=await this.rpcSubscribe(e,r);return this.onSubscribe(i,n),this.logger.debug("Successfully Subscribed Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:e,opts:t}}),i}catch(e){throw this.logger.debug("Failed to Subscribe Topic"),this.logger.error(e),e}},this.unsubscribe=async(e,t)=>{this.isInitialized(),void 0!==(null==t?void 0:t.id)?await this.unsubscribeById(e,t.id,t):await this.unsubscribeByTopic(e,t)},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.relayer=e,this.logger=Object(h.generateChildLogger)(t,this.name)}get context(){return Object(h.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,t){let r=!1;try{r=this.getSubscription(e).topic===t}catch(e){}return r}onEnable(){this.cached=[],this.initialized=!0}onDisable(){this.cached=this.values,this.subscriptions.clear(),this.topicMap.clear(),this.initialized=!1}async unsubscribeByTopic(e,t){const r=this.topicMap.get(e);await Promise.all(r.map(async r=>await this.unsubscribeById(e,r,t)))}async unsubscribeById(e,t,r){this.logger.debug("Unsubscribing Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:t,opts:r}});try{const n=Object(g.getRelayProtocolName)(r);await this.rpcUnsubscribe(e,t,n);const i=Object(g.getSdkError)("USER_DISCONNECTED",`${this.name}, ${e}`);await this.onUnsubscribe(e,t,i),this.logger.debug("Successfully Unsubscribed Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:t,opts:r}})}catch(e){throw this.logger.debug("Failed to Unsubscribe Topic"),this.logger.error(e),e}}async rpcSubscribe(e,t){const r={method:Object(g.getRelayProtocolApi)(t.protocol).subscribe,params:{topic:e}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:r}),await this.relayer.provider.request(r)}rpcUnsubscribe(e,t,r){const n={method:Object(g.getRelayProtocolApi)(r.protocol).unsubscribe,params:{topic:e,id:t}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:n}),this.relayer.provider.request(n)}onSubscribe(e,t){this.setSubscription(e,Object.assign(Object.assign({},t),{id:e})),this.pending.delete(t.topic)}onResubscribe(e,t){this.addSubscription(e,Object.assign(Object.assign({},t),{id:e})),this.pending.delete(t.topic)}async onUnsubscribe(e,t,r){this.events.removeAllListeners(t),this.hasSubscription(t,e)&&this.deleteSubscription(t,r),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,t){this.subscriptions.has(e)||(this.logger.debug("Setting subscription"),this.logger.trace({type:"method",method:"setSubscription",id:e,subscription:t}),this.addSubscription(e,t))}addSubscription(e,t){this.subscriptions.set(e,Object.assign({},t)),this.topicMap.set(t.topic,e),this.events.emit(A,t)}getSubscription(e){this.logger.debug("Getting subscription"),this.logger.trace({type:"method",method:"getSubscription",id:e});const t=this.subscriptions.get(e);if(!t){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(t)}return t}deleteSubscription(e,t){this.logger.debug("Deleting subscription"),this.logger.trace({type:"method",method:"deleteSubscription",id:e,reason:t});const r=this.getSubscription(e);this.subscriptions.delete(e),this.topicMap.delete(r.topic,e),this.events.emit(T,Object.assign(Object.assign({},r),{reason:t}))}async persist(){await this.setRelayerSubscriptions(this.values),this.events.emit(L)}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(void 0===e)return;if(!e.length)return;if(this.subscriptions.size){const{message:e}=Object(g.getInternalError)("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}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:t,relay:r}=e,n={topic:t,relay:r};this.pending.set(n.topic,n);const i=await this.rpcSubscribe(n.topic,n.relay);this.onResubscribe(i,n)}}async onConnect(){await this.reset(),this.onEnable()}onDisconnect(){this.onDisable()}checkPending(){this.pending.forEach(async e=>{const t=await this.rpcSubscribe(e.topic,e.relay);this.onSubscribe(t,e)})}registerEventListeners(){this.relayer.core.heartbeat.on(u.HEARTBEAT_EVENTS.pulse,()=>{this.checkPending()}),this.relayer.provider.on(j,async()=>{await this.onConnect()}),this.relayer.provider.on(R,()=>{this.onDisconnect()}),this.events.on(A,async e=>{const t=A;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,data:e}),await this.persist()}),this.events.on(T,async e=>{const t=T;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,data:e}),await this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class K extends l.IRelayer{constructor(e){super(e),this.protocol="wc",this.version=2,this.events=new s.EventEmitter,this.name="relayer",this.initialized=!1,this.core=e.core,this.logger=void 0!==e.logger&&"string"!=typeof e.logger?Object(h.generateChildLogger)(e.logger,this.name):i()(Object(h.getDefaultLoggerOptions)({level:e.logger||"error"})),this.messages=new C(this.logger,e.core),this.subscriber=new H(this,this.logger),this.publisher=new k(this,this.logger),this.relayUrl=(null==e?void 0:e.relayUrl)||"wss://relay.walletconnect.com",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 Object(h.getLoggerContext)(this.logger)}get connected(){return this.provider.connection.connected}get connecting(){return this.provider.connection.connecting}async publish(e,t,r){this.isInitialized(),await this.publisher.publish(e,t,r),await this.recordMessageEvent({topic:e,message:t})}async subscribe(e,t){this.isInitialized();return await this.subscriber.subscribe(e,t)}async unsubscribe(e,t){this.isInitialized(),await this.subscriber.unsubscribe(e,t)}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}createProvider(e){return new M.JsonRpcProvider(new z(Object(g.formatRelayRpcUrl)({protocol:this.protocol,version:this.version,relayUrl:this.relayUrl,projectId:this.projectId,auth:e})))}async recordMessageEvent(e){const{topic:t,message:r}=e;await this.messages.set(t,r)}shouldIgnoreMessageEvent(e){const{topic:t,message:r}=e;if(!this.subscriber.topics.includes(t))return!0;return this.messages.has(t,r)}async onProviderPayload(e){if(this.logger.debug("Incoming Relay Payload"),this.logger.trace({type:"payload",direction:"incoming",payload:e}),Object(D.isJsonRpcRequest)(e)){if(!e.method.endsWith("_subscription"))return;const t=e.params,{topic:r,message:n}=t.data,i={topic:r,message:n};this.logger.debug("Emitting Relayer Payload"),this.logger.trace(Object.assign({type:"event",event:t.id},i)),this.events.emit(t.id,i),await this.acknowledgePayload(e),await this.onMessageEvent(i)}}async onMessageEvent(e){this.shouldIgnoreMessageEvent(e)||(this.events.emit(w,e),await this.recordMessageEvent(e))}async acknowledgePayload(e){const t=Object(D.formatJsonRpcResult)(e.id,!0);await this.provider.connection.send(t)}registerEventListeners(){this.provider.on(I,e=>this.onProviderPayload(e)),this.provider.on(j,()=>{this.events.emit(E)}),this.provider.on(R,()=>{this.events.emit(O),setTimeout(()=>{this.provider.connect()},Object(v.toMiliseconds)(P))}),this.provider.on(N,e=>this.events.emit(S,e))}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}var J=r(81),q=r.n(J);class B extends l.IStore{constructor(e,t,r,n="wc@2:core:"){super(e,t,r,n),this.core=e,this.logger=t,this.name=r,this.map=new Map,this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix="wc@2:core:",this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(e=>{Object(g.isProposalStruct)(e)?this.map.set(e.id,e):Object(g.isSessionStruct)(e)&&this.map.set(e.topic,e)}),this.cached=[],this.initialized=!0)},this.set=async(e,t)=>{this.isInitialized(),this.map.has(e)?await this.update(e,t):(this.logger.debug("Setting value"),this.logger.trace({type:"method",method:"set",key:e,value:t}),this.map.set(e,t),await this.persist())},this.get=e=>{this.isInitialized(),this.logger.debug("Getting value"),this.logger.trace({type:"method",method:"get",key:e});return this.getData(e)},this.getAll=e=>e?this.values.filter(t=>Object.keys(e).every(r=>q()(t[r],e[r]))):this.values,this.update=async(e,t)=>{this.isInitialized(),this.logger.debug("Updating value"),this.logger.trace({type:"method",method:"update",key:e,update:t});const r=Object.assign(Object.assign({},this.getData(e)),t);this.map.set(e,r),await this.persist()},this.delete=async(e,t)=>{this.isInitialized(),this.map.has(e)&&(this.logger.debug("Deleting value"),this.logger.trace({type:"method",method:"delete",key:e,reason:t}),this.map.delete(e),await this.persist())},this.logger=Object(h.generateChildLogger)(t,this.name),this.storagePrefix=n}get context(){return Object(h.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 t=this.map.get(e);if(!t){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(t),new Error(t)}return t}async persist(){await this.setDataStore(this.values)}async restore(){try{const e=await this.getDataStore();if(void 0===e)return;if(!e.length)return;if(this.map.size){const{message:e}=Object(g.getInternalError)("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}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}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class F extends l.ICore{constructor(e){super(e),this.protocol="wc",this.version=2,this.name="core",this.events=new s.EventEmitter,this.initialized=!1,this.on=(e,t)=>this.events.on(e,t),this.once=(e,t)=>this.events.once(e,t),this.off=(e,t)=>this.events.off(e,t),this.removeListener=(e,t)=>this.events.removeListener(e,t),this.projectId=null==e?void 0:e.projectId;const t=void 0!==(null==e?void 0:e.logger)&&"string"!=typeof(null==e?void 0:e.logger)?e.logger:i()(Object(h.getDefaultLoggerOptions)({level:(null==e?void 0:e.logger)||y}));this.logger=Object(h.generateChildLogger)(t,this.name),this.heartbeat=new u.HeartBeat,this.crypto=new U(this,this.logger,null==e?void 0:e.keychain),this.storage=(null==e?void 0:e.storage)?e.storage:new c.a(Object.assign(Object.assign({},b),null==e?void 0:e.storageOptions)),this.relayer=new K({core:this,logger:this.logger,relayUrl:null==e?void 0:e.relayUrl,projectId:this.projectId})}static async init(e){const t=new F(e);return await t.initialize(),t}get context(){return Object(h.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 G=F;const W="client",Y="error",$="expirer_created",X="expirer_deleted",Z="expirer_expired",Q="expirer_sync",ee=(v.ONE_DAY,"history_created"),te="history_updated",re="history_deleted",ne="history_sync",ie=(v.THIRTY_DAYS,Object(g.calcExpiry)(v.THIRTY_DAYS)),se=v.SEVEN_DAYS,oe=Object(g.calcExpiry)(se);class ae extends l.IEngine{constructor(e){super(e),this.events=new o.a,this.initialized=!1,this.name="engine",this.init=async()=>{this.initialized||(await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0)},this.connect=async e=>{this.isInitialized(),await this.isValidConnect(e);const{pairingTopic:t,requiredNamespaces:r,relays:n}=e;let i=t,s=void 0,o=!1;if(i){o=this.client.pairing.get(i).active}if(!i||!o){const{topic:e,uri:t}=await this.createPairing();i=e,s=t}const a=await this.client.core.crypto.generateKeyPair(),c={requiredNamespaces:r,relays:null!=n?n:[{protocol:"iridium"}],proposer:{publicKey:a,metadata:this.client.metadata}},{reject:u,resolve:h,done:l}=Object(g.createDelayedPromise)();if(this.events.once(Object(g.engineEvent)("session_connect"),async({error:e,session:t})=>{if(e)u(e);else if(t){t.self.publicKey=a;const e=Object.assign(Object.assign({},t),{requiredNamespaces:r});await this.client.session.set(t.topic,e),await this.setExpiry(t.topic,t.expiry),i&&await this.client.pairing.update(i,{peerMetadata:t.peer.metadata}),h(e)}}),!i){const{message:e}=Object(g.getInternalError)("NO_MATCHING_KEY","connect() pairing topic: "+i);throw new Error(e)}const d=await this.sendRequest(i,"wc_sessionPropose",c),f=Object(g.calcExpiry)(v.FIVE_MINUTES);return await this.setProposal(d,Object.assign({id:d,expiry:f},c)),{uri:s,approval:l}},this.pair=async e=>{this.isInitialized(),this.isValidPair(e);const{topic:t,symKey:r,relay:n}=Object(g.parseUri)(e.uri),i=Object(g.calcExpiry)(v.FIVE_MINUTES),s={topic:t,relay:n,expiry:i,active:!1};return await this.client.pairing.set(t,s),await this.client.core.crypto.setSymKey(r,t),await this.client.core.relayer.subscribe(t,{relay:n}),await this.setExpiry(t,i),s},this.approve=async e=>{this.isInitialized(),await this.isValidApprove(e);const{id:t,relayProtocol:r,namespaces:n}=e,{pairingTopic:i,proposer:s,requiredNamespaces:o}=this.client.proposal.get(t),a=await this.client.core.crypto.generateKeyPair(),c=s.publicKey,u=await this.client.core.crypto.generateSharedKey(a,c),h={relay:{protocol:null!=r?r:"iridium"},namespaces:n,requiredNamespaces:o,controller:{publicKey:a,metadata:this.client.metadata},expiry:oe};await this.client.core.relayer.subscribe(u);const l=await this.sendRequest(u,"wc_sessionSettle",h),{done:d,resolve:f,reject:p}=Object(g.createDelayedPromise)();this.events.once(Object(g.engineEvent)("session_approve",l),({error:e})=>{e?p(e):f(this.client.session.get(u))});const y=Object.assign(Object.assign({},h),{topic:u,acknowledged:!1,self:h.controller,peer:{publicKey:s.publicKey,metadata:s.metadata},controller:a});return await this.client.session.set(u,y),await this.setExpiry(u,oe),i&&await this.client.pairing.update(i,{peerMetadata:y.peer.metadata}),i&&t&&(await this.sendResult(t,i,{relay:{protocol:null!=r?r:"iridium"},responderPublicKey:a}),await this.client.proposal.delete(t,Object(g.getSdkError)("USER_DISCONNECTED")),await this.activatePairing(i)),{topic:u,acknowledged:d}},this.reject=async e=>{this.isInitialized(),await this.isValidReject(e);const{id:t,reason:r}=e,{pairingTopic:n}=this.client.proposal.get(t);n&&(await this.sendError(t,n,r),await this.client.proposal.delete(t,Object(g.getSdkError)("USER_DISCONNECTED")))},this.update=async e=>{this.isInitialized(),await this.isValidUpdate(e);const{topic:t,namespaces:r}=e,n=await this.sendRequest(t,"wc_sessionUpdate",{namespaces:r}),{done:i,resolve:s,reject:o}=Object(g.createDelayedPromise)();return this.events.once(Object(g.engineEvent)("session_update",n),({error:e})=>{e?o(e):s()}),await this.client.session.update(t,{namespaces:r}),{acknowledged:i}},this.extend=async e=>{this.isInitialized(),await this.isValidExtend(e);const{topic:t}=e,r=await this.sendRequest(t,"wc_sessionExtend",{}),{done:n,resolve:i,reject:s}=Object(g.createDelayedPromise)();return this.events.once(Object(g.engineEvent)("session_extend",r),({error:e})=>{e?s(e):i()}),await this.setExpiry(t,oe),{acknowledged:n}},this.request=async e=>{this.isInitialized(),await this.isValidRequest(e);const{chainId:t,request:r,topic:n}=e,i=await this.sendRequest(n,"wc_sessionRequest",{request:r,chainId:t}),{done:s,resolve:o,reject:a}=Object(g.createDelayedPromise)();return this.events.once(Object(g.engineEvent)("session_request",i),({error:e,result:t})=>{e?a(e):o(t)}),await s()},this.respond=async e=>{this.isInitialized(),await this.isValidRespond(e);const{topic:t,response:r}=e,{id:n}=r;Object(D.isJsonRpcResult)(r)?await this.sendResult(n,t,r.result):Object(D.isJsonRpcError)(r)&&await this.sendError(n,t,r.error)},this.ping=async e=>{this.isInitialized(),await this.isValidPing(e);const{topic:t}=e;if(this.client.session.keys.includes(t)){const e=await this.sendRequest(t,"wc_sessionPing",{}),{done:r,resolve:n,reject:i}=Object(g.createDelayedPromise)();this.events.once(Object(g.engineEvent)("session_ping",e),({error:e})=>{e?i(e):n()}),await r()}else if(this.client.pairing.keys.includes(t)){const e=await this.sendRequest(t,"wc_pairingPing",{}),{done:r,resolve:n,reject:i}=Object(g.createDelayedPromise)();this.events.once(Object(g.engineEvent)("pairing_ping",e),({error:e})=>{e?i(e):n()}),await r()}},this.emit=async e=>{this.isInitialized(),await this.isValidEmit(e);const{topic:t,event:r,chainId:n}=e;await this.sendRequest(t,"wc_sessionEvent",{event:r,chainId:n})},this.disconnect=async e=>{this.isInitialized(),await this.isValidDisconnect(e);const{topic:t}=e;this.client.session.keys.includes(t)?(await this.sendRequest(t,"wc_sessionDelete",Object(g.getSdkError)("USER_DISCONNECTED")),await this.deleteSession(t)):this.client.pairing.keys.includes(t)&&(await this.sendRequest(t,"wc_pairingDelete",Object(g.getSdkError)("USER_DISCONNECTED")),await this.deletePairing(t))},this.find=e=>(this.isInitialized(),this.client.session.getAll().filter(t=>Object(g.isSessionCompatible)(t,e))),this.activatePairing=async e=>{await this.client.pairing.update(e,{active:!0,expiry:ie}),await this.setExpiry(e,ie)},this.deleteSession=async e=>{const{self:t}=this.client.session.get(e);await Promise.all([this.client.core.relayer.unsubscribe(e),this.client.session.delete(e,Object(g.getSdkError)("USER_DISCONNECTED")),this.client.core.crypto.deleteKeyPair(t.publicKey),this.client.core.crypto.deleteSymKey(e),this.client.expirer.del(e)])},this.deletePairing=async e=>{await Promise.all([this.client.core.relayer.unsubscribe(e),this.client.pairing.delete(e,Object(g.getSdkError)("USER_DISCONNECTED")),this.client.core.crypto.deleteSymKey(e),this.client.expirer.del(e)])},this.deleteProposal=async e=>{await Promise.all([this.client.proposal.delete(e,Object(g.getSdkError)("USER_DISCONNECTED")),this.client.expirer.del(e)])},this.setExpiry=async(e,t)=>{this.client.pairing.keys.includes(e)?await this.client.pairing.update(e,{expiry:t}):this.client.session.keys.includes(e)&&await this.client.session.update(e,{expiry:t}),this.client.expirer.set(e,t)},this.setProposal=async(e,t)=>{await this.client.proposal.set(e,t),this.client.expirer.set(e,t.expiry)},this.sendRequest=async(e,t,r)=>{const n=Object(D.formatJsonRpcRequest)(t,r),i=await this.client.core.crypto.encode(e,n),s={tag:1};return await this.client.core.relayer.publish(e,i,s),this.client.history.set(e,n),n.id},this.sendResult=async(e,t,r)=>{const n=Object(D.formatJsonRpcResult)(e,r),i=await this.client.core.crypto.encode(t,n),s={tag:1};await this.client.core.relayer.publish(t,i,s),await this.client.history.resolve(n)},this.sendError=async(e,t,r)=>{const n=Object(D.formatJsonRpcError)(e,r),i=await this.client.core.crypto.encode(t,n),s={tag:1};await this.client.core.relayer.publish(t,i,s),await this.client.history.resolve(n)},this.cleanup=async()=>{const e=[],t=[],r=[];this.client.session.getAll().forEach(t=>{Object(g.isExpired)(t.expiry)&&e.push(t.topic)}),this.client.pairing.getAll().forEach(e=>{Object(g.isExpired)(e.expiry)&&t.push(e.topic)}),this.client.proposal.getAll().forEach(e=>{Object(g.isExpired)(e.expiry)&&r.push(e.id)}),await Promise.all([...e.map(this.deleteSession),...t.map(this.deletePairing),...r.map(this.deleteProposal)])},this.onRelayEventRequest=e=>{const{topic:t,payload:r}=e,n=r.method;switch(n){case"wc_sessionPropose":return this.onSessionProposeRequest(t,r);case"wc_sessionSettle":return this.onSessionSettleRequest(t,r);case"wc_sessionUpdate":return this.onSessionUpdateRequest(t,r);case"wc_sessionExtend":return this.onSessionExtendRequest(t,r);case"wc_sessionPing":return this.onSessionPingRequest(t,r);case"wc_pairingPing":return this.onPairingPingRequest(t,r);case"wc_sessionDelete":return this.onSessionDeleteRequest(t,r);case"wc_pairingDelete":return this.onPairingDeleteRequest(t,r);case"wc_sessionRequest":return this.onSessionRequest(t,r);case"wc_sessionEvent":return this.onSessionEventRequest(t,r);default:return void this.client.logger.info("Unsupported request method "+n)}},this.onRelayEventResponse=async e=>{const{topic:t,payload:r}=e,n=(await this.client.history.get(t,r.id)).request.method;switch(n){case"wc_sessionPropose":return this.onSessionProposeResponse(t,r);case"wc_sessionSettle":return this.onSessionSettleResponse(t,r);case"wc_sessionUpdate":return this.onSessionUpdateResponse(t,r);case"wc_sessionExtend":return this.onSessionExtendResponse(t,r);case"wc_sessionPing":return this.onSessionPingResponse(t,r);case"wc_pairingPing":return this.onPairingPingResponse(t,r);case"wc_sessionRequest":return this.onSessionRequestResponse(t,r);default:return void this.client.logger.info("Unsupported response method "+n)}},this.onSessionProposeRequest=async(e,t)=>{const{params:r,id:n}=t;try{this.isValidConnect(Object.assign({},t.params));const i=Object(g.calcExpiry)(v.FIVE_MINUTES),s=Object.assign({id:n,pairingTopic:e,expiry:i},r);await this.setProposal(n,s),this.client.events.emit("session_proposal",{id:n,params:s})}catch(t){await this.sendError(n,e,t),this.client.logger.error(t)}},this.onSessionProposeResponse=async(e,t)=>{const{id:r}=t;if(Object(D.isJsonRpcResult)(t)){const{result:n}=t;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",result:n});const i=this.client.proposal.get(r);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",proposal:i});const s=i.proposer.publicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",selfPublicKey:s});const o=n.responderPublicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",peerPublicKey:o});const a=await this.client.core.crypto.generateSharedKey(s,o);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",sessionTopic:a});const c=await this.client.core.relayer.subscribe(a);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",subscriptionId:c}),await this.activatePairing(e)}else Object(D.isJsonRpcError)(t)&&(await this.client.proposal.delete(r,Object(g.getSdkError)("USER_DISCONNECTED")),this.events.emit(Object(g.engineEvent)("session_connect"),{error:t.error}))},this.onSessionSettleRequest=async(e,t)=>{const{id:r,params:n}=t;try{this.isValidSessionSettleRequest(n);const{relay:r,controller:i,expiry:s,namespaces:o}=t.params,a={topic:e,relay:r,expiry:s,namespaces:o,acknowledged:!0,controller:i.publicKey,self:{publicKey:"",metadata:this.client.metadata},peer:{publicKey:i.publicKey,metadata:i.metadata}};await this.sendResult(t.id,e,!0),this.events.emit(Object(g.engineEvent)("session_connect"),{session:a})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onSessionSettleResponse=async(e,t)=>{const{id:r}=t;Object(D.isJsonRpcResult)(t)?(await this.client.session.update(e,{acknowledged:!0}),this.events.emit(Object(g.engineEvent)("session_approve",r),{})):Object(D.isJsonRpcError)(t)&&(await this.client.session.delete(e,Object(g.getSdkError)("USER_DISCONNECTED")),this.events.emit(Object(g.engineEvent)("session_approve",r),{error:t.error}))},this.onSessionUpdateRequest=async(e,t)=>{const{params:r,id:n}=t;try{this.isValidUpdate(Object.assign({topic:e},r)),await this.client.session.update(e,{namespaces:r.namespaces}),await this.sendResult(n,e,!0),this.client.events.emit("session_update",{id:n,topic:e,params:r})}catch(t){await this.sendError(n,e,t),this.client.logger.error(t)}},this.onSessionUpdateResponse=(e,t)=>{const{id:r}=t;Object(D.isJsonRpcResult)(t)?this.events.emit(Object(g.engineEvent)("session_update",r),{}):Object(D.isJsonRpcError)(t)&&this.events.emit(Object(g.engineEvent)("session_update",r),{error:t.error})},this.onSessionExtendRequest=async(e,t)=>{const{id:r}=t;try{this.isValidExtend({topic:e}),await this.setExpiry(e,oe),await this.sendResult(r,e,!0),this.client.events.emit("session_extend",{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onSessionExtendResponse=(e,t)=>{const{id:r}=t;Object(D.isJsonRpcResult)(t)?this.events.emit(Object(g.engineEvent)("session_extend",r),{}):Object(D.isJsonRpcError)(t)&&this.events.emit(Object(g.engineEvent)("session_extend",r),{error:t.error})},this.onSessionPingRequest=async(e,t)=>{const{id:r}=t;try{this.isValidPing({topic:e}),await this.sendResult(r,e,!0),this.client.events.emit("session_ping",{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onSessionPingResponse=(e,t)=>{const{id:r}=t;Object(D.isJsonRpcResult)(t)?this.events.emit(Object(g.engineEvent)("session_ping",r),{}):Object(D.isJsonRpcError)(t)&&this.events.emit(Object(g.engineEvent)("session_ping",r),{error:t.error})},this.onPairingPingRequest=async(e,t)=>{const{id:r}=t;try{this.isValidPing({topic:e}),await this.sendResult(r,e,!0),this.client.events.emit("pairing_ping",{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onPairingPingResponse=(e,t)=>{const{id:r}=t;Object(D.isJsonRpcResult)(t)?this.events.emit(Object(g.engineEvent)("pairing_ping",r),{}):Object(D.isJsonRpcError)(t)&&this.events.emit(Object(g.engineEvent)("pairing_ping",r),{error:t.error})},this.onSessionDeleteRequest=async(e,t)=>{const{id:r}=t;try{this.isValidDisconnect({topic:e,reason:t.params}),await this.sendResult(r,e,!0),await this.deleteSession(e),this.client.events.emit("session_delete",{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onPairingDeleteRequest=async(e,t)=>{const{id:r}=t;try{this.isValidDisconnect({topic:e,reason:t.params}),await this.sendResult(r,e,!0),await this.deletePairing(e),this.client.events.emit("pairing_delete",{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onSessionRequest=async(e,t)=>{const{id:r,params:n}=t;try{this.isValidRequest(Object.assign({topic:e},n)),this.client.events.emit("session_request",{id:r,topic:e,params:n})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onSessionRequestResponse=(e,t)=>{const{id:r}=t;Object(D.isJsonRpcResult)(t)?this.events.emit(Object(g.engineEvent)("session_request",r),{result:t.result}):Object(D.isJsonRpcError)(t)&&this.events.emit(Object(g.engineEvent)("session_request",r),{error:t.error})},this.onSessionEventRequest=async(e,t)=>{const{id:r,params:n}=t;try{this.isValidEmit(Object.assign({topic:e},n)),this.client.events.emit("session_event",{id:r,topic:e,params:n})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.isValidConnect=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","connect() params: "+JSON.stringify(e));throw new Error(t)}const{pairingTopic:t,requiredNamespaces:r,relays:n}=e;Object(g.isUndefined)(t)||await this.isValidPairingTopic(t);const i=Object(g.isValidRequiredNamespaces)(r,"connect()");if(i)throw new Error(i.message);if(!Object(g.isValidRelays)(n,!0)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","connect() relays: "+n);throw new Error(e)}},this.isValidPair=e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","pair() params: "+e);throw new Error(t)}if(!Object(g.isValidUrl)(e.uri)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","pair() uri: "+e.uri);throw new Error(t)}},this.isValidApprove=async e=>{if(!Object(g.isValidParams)(e))throw new Error(Object(g.getInternalError)("MISSING_OR_INVALID","approve() params: "+e).message);const{id:t,namespaces:r,relayProtocol:n}=e;await this.isValidProposalId(t);const i=this.client.proposal.get(t),s=Object(g.isValidNamespaces)(r,"approve()");if(s)throw new Error(s.message);const o=Object(g.isConformingNamespaces)(i.requiredNamespaces,r,"update()");if(o)throw new Error(o.message);if(!Object(g.isValidString)(n,!0)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","approve() relayProtocol: "+n);throw new Error(e)}},this.isValidReject=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","reject() params: "+e);throw new Error(t)}const{id:t,reason:r}=e;if(await this.isValidProposalId(t),!Object(g.isValidErrorReason)(r)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","reject() reason: "+JSON.stringify(r));throw new Error(e)}},this.isValidSessionSettleRequest=e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","onSessionSettleRequest() params: "+e);throw new Error(t)}const{relay:t,controller:r,namespaces:n,expiry:i}=e;if(!Object(g.isValidRelay)(t)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","onSessionSettleRequest() relay protocol should be a string");throw new Error(e)}const s=Object(g.isValidController)(r,"onSessionSettleRequest()");if(s)throw new Error(s.message);const o=Object(g.isValidNamespaces)(n,"onSessionSettleRequest()");if(o)throw new Error(o.message);if(Object(g.isExpired)(i)){const{message:e}=Object(g.getInternalError)("EXPIRED","onSessionSettleRequest()");throw new Error(e)}},this.isValidUpdate=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","update() params: "+e);throw new Error(t)}const{topic:t,namespaces:r}=e;await this.isValidSessionTopic(t);const n=this.client.session.get(t),i=Object(g.isValidNamespaces)(r,"update()");if(i)throw new Error(i.message);const s=Object(g.isConformingNamespaces)(n.requiredNamespaces,r,"update()");if(s)throw new Error(s.message)},this.isValidExtend=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","extend() params: "+e);throw new Error(t)}const{topic:t}=e;await this.isValidSessionTopic(t)},this.isValidRequest=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","request() params: "+e);throw new Error(t)}const{topic:t,request:r,chainId:n}=e;await this.isValidSessionTopic(t);const{namespaces:i}=this.client.session.get(t);if(!Object(g.isValidNamespacesChainId)(i,n)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","request() chainId: "+n);throw new Error(e)}if(!Object(g.isValidRequest)(r)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","request() "+JSON.stringify(r));throw new Error(e)}if(!Object(g.isValidNamespacesRequest)(i,n,r.method)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","request() method: "+r.method);throw new Error(e)}},this.isValidRespond=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","respond() params: "+e);throw new Error(t)}const{topic:t,response:r}=e;if(await this.isValidSessionTopic(t),!Object(g.isValidResponse)(r)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","respond() response: "+JSON.stringify(r));throw new Error(e)}},this.isValidPing=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","ping() params: "+e);throw new Error(t)}const{topic:t}=e;await this.isValidSessionOrPairingTopic(t)},this.isValidEmit=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","emit() params: "+e);throw new Error(t)}const{topic:t,event:r,chainId:n}=e;await this.isValidSessionTopic(t);const{namespaces:i}=this.client.session.get(t);if(!Object(g.isValidNamespacesChainId)(i,n)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","emit() chainId: "+n);throw new Error(e)}if(!Object(g.isValidEvent)(r)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","emit() event: "+JSON.stringify(r));throw new Error(e)}if(!Object(g.isValidNamespacesEvent)(i,n,r.name)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","emit() event: "+JSON.stringify(r));throw new Error(e)}},this.isValidDisconnect=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","disconnect() params: "+e);throw new Error(t)}const{topic:t}=e;await this.isValidSessionOrPairingTopic(t)}}async createPairing(){const e=Object(g.generateRandomBytes32)(),t=await this.client.core.crypto.setSymKey(e),r=Object(g.calcExpiry)(v.FIVE_MINUTES),n={protocol:"iridium"},i={topic:t,expiry:r,relay:n,active:!1},s=Object(g.formatUri)({protocol:this.client.protocol,version:this.client.version,topic:t,symKey:e,relay:n});return await this.client.pairing.set(t,i),await this.client.core.relayer.subscribe(t),await this.setExpiry(t,r),{topic:t,uri:s}}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}registerRelayerEvents(){this.client.core.relayer.on(w,async e=>{const{topic:t,message:r}=e,n=await this.client.core.crypto.decode(t,r);Object(D.isJsonRpcRequest)(n)?(this.client.history.set(t,n),this.onRelayEventRequest({topic:t,payload:n})):Object(D.isJsonRpcResponse)(n)&&(await this.client.history.resolve(n),this.onRelayEventResponse({topic:t,payload:n}))})}registerExpirerEvents(){this.client.expirer.on(Z,async e=>{const{topic:t,id:r}=Object(g.parseExpirerTarget)(e.target);t?this.client.session.keys.includes(t)?(await this.deleteSession(t),this.client.events.emit("session_expire",{topic:t})):this.client.pairing.keys.includes(t)&&(await this.deletePairing(t),this.client.events.emit("pairing_expire",{topic:t})):r&&await this.deleteProposal(r)})}async isValidPairingTopic(e){if(!Object(g.isValidString)(e,!1)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","pairing topic should be a string: "+e);throw new Error(t)}if(!this.client.pairing.keys.includes(e)){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY","pairing topic doesn't exist: "+e);throw new Error(t)}if(Object(g.isExpired)(this.client.pairing.get(e).expiry)){await this.deletePairing(e);const{message:t}=Object(g.getInternalError)("EXPIRED","pairing topic: "+e);throw new Error(t)}}async isValidSessionTopic(e){if(!Object(g.isValidString)(e,!1)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","session topic should be a string: "+e);throw new Error(t)}if(!this.client.session.keys.includes(e)){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY","session topic doesn't exist: "+e);throw new Error(t)}if(Object(g.isExpired)(this.client.session.get(e).expiry)){await this.deleteSession(e);const{message:t}=Object(g.getInternalError)("EXPIRED","session topic: "+e);throw new Error(t)}}async isValidSessionOrPairingTopic(e){if(this.client.session.keys.includes(e))await this.isValidSessionTopic(e);else{if(!this.client.pairing.keys.includes(e)){if(Object(g.isValidString)(e,!1)){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY","session or pairing topic doesn't exist: "+e);throw new Error(t)}{const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","session or pairing topic should be a string: "+e);throw new Error(t)}}await this.isValidPairingTopic(e)}}async isValidProposalId(e){if(!Object(g.isValidId)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","proposal id should be a number: "+e);throw new Error(t)}if(!this.client.proposal.keys.includes(e)){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY","proposal id doesn't exist: "+e);throw new Error(t)}if(Object(g.isExpired)(this.client.proposal.get(e).expiry)){await this.deleteProposal(e);const{message:t}=Object(g.getInternalError)("EXPIRED","proposal id: "+e);throw new Error(t)}}}class ce extends l.IExpirer{constructor(e,t){super(e,t),this.core=e,this.logger=t,this.expirations=new Map,this.events=new s.EventEmitter,this.name="expirer",this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix="wc@2:client:",this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(e=>this.expirations.set(e.target,e)),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.has=e=>{try{const t=this.formatTarget(e);return void 0!==this.getExpiration(t)}catch(e){return!1}},this.set=(e,t)=>{this.isInitialized();const r=this.formatTarget(e),n={target:r,expiry:t};this.expirations.set(r,n),this.checkExpiry(r,n),this.events.emit($,{target:r,expiration:n})},this.get=e=>{this.isInitialized();const t=this.formatTarget(e);return this.getExpiration(t)},this.del=e=>{this.isInitialized();const t=this.formatTarget(e);if(this.has(t)){const e=this.getExpiration(t);this.expirations.delete(t),this.events.emit(X,{target:t,expiration:e})}},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.core,this.logger=Object(h.generateChildLogger)(t,this.name)}get context(){return Object(h.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("string"==typeof e)return Object(g.formatTopicTarget)(e);if("number"==typeof e)return Object(g.formatIdTarget)(e);const{message:t}=Object(g.getInternalError)("UNKNOWN_TYPE","Target type: "+typeof e);throw new Error(t)}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(Q)}async restore(){try{const e=await this.getExpirations();if(void 0===e)return;if(!e.length)return;if(this.expirations.size){const{message:e}=Object(g.getInternalError)("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}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 t=this.expirations.get(e);if(!t){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(t),new Error(t)}return t}checkExpiry(e,t){const{expiry:r}=t;Object(v.toMiliseconds)(r)-Date.now()<=0&&this.expire(e,t)}expire(e,t){this.expirations.delete(e),this.events.emit(Z,{target:e,expiration:t})}checkExpirations(){this.expirations.forEach((e,t)=>this.checkExpiry(t,e))}registerEventListeners(){this.core.heartbeat.on(u.HEARTBEAT_EVENTS.pulse,()=>this.checkExpirations()),this.events.on($,e=>{const t=$;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,data:e}),this.persist()}),this.events.on(Z,e=>{const t=Z;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,data:e}),this.persist()}),this.events.on(X,e=>{const t=X;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,data:e}),this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class ue extends l.IJsonRpcHistory{constructor(e,t){super(e,t),this.core=e,this.logger=t,this.records=new Map,this.events=new s.EventEmitter,this.name="history",this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix="wc@2:client:",this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(e=>this.records.set(e.id,e)),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.set=(e,t,r)=>{if(this.isInitialized(),this.logger.debug("Setting JSON-RPC request history record"),this.logger.trace({type:"method",method:"set",topic:e,request:t,chainId:r}),this.records.has(t.id))return;const n={id:t.id,topic:e,request:{method:t.method,params:t.params||null},chainId:r};this.records.set(n.id,n),this.events.emit(ee,n)},this.resolve=async e=>{if(this.isInitialized(),this.logger.debug("Updating JSON-RPC response history record"),this.logger.trace({type:"method",method:"update",response:e}),!this.records.has(e.id))return;const t=await this.getRecord(e.id);void 0===t.response&&(t.response=Object(D.isJsonRpcError)(e)?{error:e.error}:{result:e.result},this.records.set(t.id,t),this.events.emit(te,t))},this.get=async(e,t)=>{this.isInitialized(),this.logger.debug("Getting record"),this.logger.trace({type:"method",method:"get",topic:e,id:t});const r=await this.getRecord(t);if(r.topic!==e){const{message:e}=Object(g.getInternalError)("MISMATCHED_TOPIC",`${this.name}, ${t}`);throw this.logger.error(e),new Error(e)}return r},this.delete=(e,t)=>{this.isInitialized(),this.logger.debug("Deleting record"),this.logger.trace({type:"method",method:"delete",id:t}),this.values.forEach(r=>{if(r.topic===e){if(void 0!==t&&r.id!==t)return;this.records.delete(r.id),this.events.emit(re,r)}})},this.exists=async(e,t)=>{if(this.isInitialized(),!this.records.has(t))return!1;return(await this.getRecord(t)).topic===e},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.logger=Object(h.generateChildLogger)(t,this.name)}get context(){return Object(h.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(t=>{if(void 0!==t.response)return;const r={topic:t.topic,request:Object(D.formatJsonRpcRequest)(t.request.method,t.request.params,t.id),chainId:t.chainId};return e.push(r)}),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 t=this.records.get(e);if(!t){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(t)}return t}async persist(){await this.setJsonRpcRecords(this.values),this.events.emit(ne)}async restore(){try{const e=await this.getJsonRpcRecords();if(void 0===e)return;if(!e.length)return;if(this.records.size){const{message:e}=Object(g.getInternalError)("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}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(ee,e=>{const t=ee;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,record:e}),this.persist()}),this.events.on(te,e=>{const t=te;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,record:e}),this.persist()}),this.events.on(re,e=>{const t=re;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,record:e}),this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class he extends B{constructor(e,t){super(e,t,"pairing","wc@2:client:"),this.core=e,this.logger=t}}class le extends B{constructor(e,t){super(e,t,"proposal","wc@2:client:"),this.core=e,this.logger=t}}class de extends B{constructor(e,t){super(e,t,"session","wc@2:client:"),this.core=e,this.logger=t}}class fe extends l.ISignClient{constructor(e){super(e),this.protocol="wc",this.version=2,this.name=W,this.events=new s.EventEmitter,this.on=(e,t)=>this.events.on(e,t),this.once=(e,t)=>this.events.once(e,t),this.off=(e,t)=>this.events.off(e,t),this.removeListener=(e,t)=>this.events.removeListener(e,t),this.connect=async e=>{try{return await this.engine.connect(e)}catch(e){throw this.logger.error(e.message),e}},this.pair=async e=>{try{return await this.engine.pair(e)}catch(e){throw this.logger.error(e.message),e}},this.approve=async e=>{try{return await this.engine.approve(e)}catch(e){throw this.logger.error(e.message),e}},this.reject=async e=>{try{return await this.engine.reject(e)}catch(e){throw this.logger.error(e.message),e}},this.update=async e=>{try{return await this.engine.update(e)}catch(e){throw this.logger.error(e.message),e}},this.extend=async e=>{try{return await this.engine.extend(e)}catch(e){throw this.logger.error(e.message),e}},this.request=async e=>{try{return await this.engine.request(e)}catch(e){throw this.logger.error(e.message),e}},this.respond=async e=>{try{return await this.engine.respond(e)}catch(e){throw this.logger.error(e.message),e}},this.ping=async e=>{try{return await this.engine.ping(e)}catch(e){throw this.logger.error(e.message),e}},this.emit=async e=>{try{return await this.engine.emit(e)}catch(e){throw this.logger.error(e.message),e}},this.disconnect=async e=>{try{return await this.engine.disconnect(e)}catch(e){throw this.logger.error(e.message),e}},this.find=e=>{try{return this.engine.find(e)}catch(e){throw this.logger.error(e.message),e}},this.name=(null==e?void 0:e.name)||W,this.metadata=(null==e?void 0:e.metadata)||Object(g.getAppMetadata)();const t=void 0!==(null==e?void 0:e.logger)&&"string"!=typeof(null==e?void 0:e.logger)?e.logger:i()(Object(h.getDefaultLoggerOptions)({level:(null==e?void 0:e.logger)||Y}));this.core=(null==e?void 0:e.core)||new G(e),this.logger=Object(h.generateChildLogger)(t,this.name),this.pairing=new he(this.core,this.logger),this.session=new de(this.core,this.logger),this.proposal=new le(this.core,this.logger),this.history=new ue(this.core,this.logger),this.expirer=new ce(this.core,this.logger),this.engine=new ae(this)}static async init(e){const t=new fe(e);return await t.initialize(),t}get context(){return Object(h.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}}}var pe=fe,ge=r(34);const ye={init:"signer_init",uri:"signer_uri",created:"signer_created",updated:"signer_updated",deleted:"signer_deleted",event:"signer_event"};class be extends ge.IJsonRpcConnection{constructor(e){super(),this.events=new s.EventEmitter,this.pending=!1,this.initializing=!1,this.requiredNamespaces=(null==e?void 0:e.requiredNamespaces)||{},this.opts=null==e?void 0:e.client}get connected(){return void 0!==this.session}get connecting(){return this.pending}get chains(){return this.session?Object(g.getChainsFromNamespaces)(this.session.namespaces):Object(g.getChainsFromRequiredNamespaces)(this.requiredNamespaces)}get accounts(){return this.session?Object(g.getAccountsFromNamespaces)(this.session.namespaces):[]}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async open(){if(this.pending)return new Promise((e,t)=>{this.events.once("open",()=>{if(this.events.once("open_error",e=>{t(e)}),void 0===this.client)return t(new Error("Sign Client not initialized"));e()})});try{this.pending=!0;const e=await this.register(),t=e.find({requiredNamespaces:this.requiredNamespaces});if(t.length)return this.onOpen(t[0]);const{uri:r,approval:n}=await e.connect({requiredNamespaces:this.requiredNamespaces});this.events.emit(ye.uri,{uri:r}),this.session=await n(),this.events.emit(ye.created,this.session),this.onOpen()}catch(e){throw this.events.emit("open_error",e),e}}async close(){if(void 0===this.session)return;const e=await this.register();await e.disconnect({topic:this.session.topic,reason:Object(g.getSdkError)("USER_DISCONNECTED")}),this.onClose()}async send(e,t){if(void 0===this.client&&(this.client=await this.register(),this.connected||await this.open()),void 0===this.session)throw new Error("Signer connection is missing session");this.client.request({topic:this.session.topic,request:e,chainId:null==t?void 0:t.chainId}).then(t=>this.events.emit("payload",Object(D.formatJsonRpcResult)(e.id,t))).catch(t=>this.events.emit("payload",Object(D.formatJsonRpcError)(e.id,t.message)))}async register(e=this.opts){if(void 0!==this.client)return this.client;if(this.initializing)return new Promise((e,t)=>{this.events.once("register_error",e=>{t(e)}),this.events.once(ye.init,()=>{if(void 0===this.client)return t(new Error("Sign Client not initialized"));e(this.client)})});if(function(e){return void 0!==e&&void 0!==e.context}(e))return this.client=e,this.registerEventListeners(),this.client;try{return this.initializing=!0,this.client=await pe.init(e),this.initializing=!1,this.registerEventListeners(),this.events.emit(ye.init),this.client}catch(e){throw this.events.emit("register_error",e),e}}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(){void 0!==this.client&&(this.client.on("session_event",e=>{var t;this.session&&(null===(t=this.session)||void 0===t?void 0:t.topic)!==e.topic||this.events.emit(ye.event,e.params)}),this.client.on("session_update",e=>{var t;void 0!==this.client&&(this.session&&(null===(t=this.session)||void 0===t?void 0:t.topic)!==e.topic||(this.session=this.client.session.get(e.topic),this.events.emit(ye.updated,this.session)))}),this.client.on("session_delete",e=>{var t;this.session&&(this.session&&(null===(t=this.session)||void 0===t?void 0:t.topic)!==e.topic||(this.onClose(),this.events.emit(ye.deleted,this.session),this.session=void 0))}))}}t.default=be},function(e,t,r){"use strict";r.r(t),r.d(t,"HttpConnection",(function(){return u}));var n=r(5),i=r(41),s=r.n(i),o=r(13),a=r(1);const c={headers:{Accept:"application/json","Content-Type":"application/json"},method:"POST"};class u{constructor(e){if(this.url=e,this.events=new n.EventEmitter,this.isAvailable=!1,this.registering=!1,!Object(a.isHttpUrl)(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,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}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,t){this.isAvailable||await this.register();try{const t=Object(o.b)(e),r=await s()(this.url,Object.assign(Object.assign({},c),{body:t})),n=await r.json();this.onPayload({data:n})}catch(t){this.onError(e.id,t)}}async register(e=this.url){if(!Object(a.isHttpUrl)(e))throw new Error("Provided URL is not compatible with HTTP connection: "+e);if(this.registering)return new Promise((e,t)=>{this.events.once("register_error",e=>{t(e)}),this.events.once("open",()=>{if(void 0===this.isAvailable)return t(new Error("HTTP connection is missing or invalid"));e()})});this.url=e,this.registering=!0;try{const t=Object(o.b)({id:1,jsonrpc:"2.0",method:"test",params:[]});await s()(e,Object.assign(Object.assign({},c),{body:t})),this.onOpen()}catch(e){const t=this.parseError(e);throw this.events.emit("register_error",t),this.onClose(),t}}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(void 0===e.data)return;const t="string"==typeof e.data?Object(o.a)(e.data):e.data;this.events.emit("payload",t)}onError(e,t){const r=this.parseError(t),n=r.message||r.toString(),i=Object(a.formatJsonRpcError)(e,n);this.events.emit("payload",i)}parseError(e,t=this.url){return Object(a.parseConnectionError)(e,t,"HTTP")}}var h=u;t.default=h}])}));
|
|
16
|
+
var n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)};function i(e,t){function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var s=function(){return(s=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var i in t=arguments[r])Object.prototype.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e}).apply(this,arguments)};function o(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var i=0;for(n=Object.getOwnPropertySymbols(e);i<n.length;i++)t.indexOf(n[i])<0&&Object.prototype.propertyIsEnumerable.call(e,n[i])&&(r[n[i]]=e[n[i]])}return r}function a(e,t,r,n){var i,s=arguments.length,o=s<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,r,n);else for(var a=e.length-1;a>=0;a--)(i=e[a])&&(o=(s<3?i(o):s>3?i(t,r,o):i(t,r))||o);return s>3&&o&&Object.defineProperty(t,r,o),o}function c(e,t){return function(r,n){t(r,n,e)}}function u(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function h(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))}function l(e,t){var r,n,i,s,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]};return s={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(s[Symbol.iterator]=function(){return this}),s;function a(s){return function(a){return function(s){if(r)throw new TypeError("Generator is already executing.");for(;o;)try{if(r=1,n&&(i=2&s[0]?n.return:s[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,s[1])).done)return i;switch(n=0,i&&(s=[2&s[0],i.value]),s[0]){case 0:case 1:i=s;break;case 4:return o.label++,{value:s[1],done:!1};case 5:o.label++,n=s[1],s=[0];continue;case 7:s=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==s[0]&&2!==s[0])){o=0;continue}if(3===s[0]&&(!i||s[1]>i[0]&&s[1]<i[3])){o.label=s[1];break}if(6===s[0]&&o.label<i[1]){o.label=i[1],i=s;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(s);break}i[2]&&o.ops.pop(),o.trys.pop();continue}s=t.call(e,o)}catch(e){s=[6,e],n=0}finally{r=i=0}if(5&s[0])throw s[1];return{value:s[0]?s[1]:void 0,done:!0}}([s,a])}}}function d(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}function f(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||(t[r]=e[r])}function p(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],n=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&n>=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function g(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,i,s=r.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(n=s.next()).done;)o.push(n.value)}catch(e){i={error:e}}finally{try{n&&!n.done&&(r=s.return)&&r.call(s)}finally{if(i)throw i.error}}return o}function y(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(g(arguments[t]));return e}function b(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;var n=Array(e),i=0;for(t=0;t<r;t++)for(var s=arguments[t],o=0,a=s.length;o<a;o++,i++)n[i]=s[o];return n}function v(e){return this instanceof v?(this.v=e,this):new v(e)}function m(e,t,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n,i=r.apply(e,t||[]),s=[];return n={},o("next"),o("throw"),o("return"),n[Symbol.asyncIterator]=function(){return this},n;function o(e){i[e]&&(n[e]=function(t){return new Promise((function(r,n){s.push([e,t,r,n])>1||a(e,t)}))})}function a(e,t){try{(r=i[e](t)).value instanceof v?Promise.resolve(r.value.v).then(c,u):h(s[0][2],r)}catch(e){h(s[0][3],e)}var r}function c(e){a("next",e)}function u(e){a("throw",e)}function h(e,t){e(t),s.shift(),s.length&&a(s[0][0],s[0][1])}}function _(e){var t,r;return t={},n("next"),n("throw",(function(e){throw e})),n("return"),t[Symbol.iterator]=function(){return this},t;function n(n,i){t[n]=e[n]?function(t){return(r=!r)?{value:v(e[n](t)),done:"return"===n}:i?i(t):t}:i}}function w(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=p(e),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,i){(function(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)})(n,i,(t=e[r](t)).done,t.value)}))}}}function E(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}function O(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function S(e){return e&&e.__esModule?e:{default:e}}function I(e,t){if(!t.has(e))throw new TypeError("attempted to get private field on non-instance");return t.get(e)}function j(e,t,r){if(!t.has(e))throw new TypeError("attempted to set private field on non-instance");return t.set(e,r),r}},function(e,t){var r;r=function(){return this}();try{r=r||new Function("return this")()}catch(e){"object"==typeof window&&(r=window)}e.exports=r},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(105);t.decode=e=>[n.decode(e),n.decode.bytes],t.encodeTo=(e,t,r=0)=>(n.encode(e,t,r),t),t.encodingLength=e=>n.encodingLength(e)},function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(83),t),i(r(84),t)},function(e,t,r){"use strict";var n=r(49);r.o(n,"IJsonRpcConnection")&&r.d(t,"IJsonRpcConnection",(function(){return n.IJsonRpcConnection})),r.o(n,"IJsonRpcProvider")&&r.d(t,"IJsonRpcProvider",(function(){return n.IJsonRpcProvider})),r.o(n,"isHttpUrl")&&r.d(t,"isHttpUrl",(function(){return n.isHttpUrl})),r.o(n,"isJsonRpcError")&&r.d(t,"isJsonRpcError",(function(){return n.isJsonRpcError})),r.o(n,"isJsonRpcRequest")&&r.d(t,"isJsonRpcRequest",(function(){return n.isJsonRpcRequest})),r.o(n,"isJsonRpcResponse")&&r.d(t,"isJsonRpcResponse",(function(){return n.isJsonRpcResponse})),r.o(n,"isJsonRpcResult")&&r.d(t,"isJsonRpcResult",(function(){return n.isJsonRpcResult})),r.o(n,"isLocalhostUrl")&&r.d(t,"isLocalhostUrl",(function(){return n.isLocalhostUrl})),r.o(n,"isReactNative")&&r.d(t,"isReactNative",(function(){return n.isReactNative})),r.o(n,"isWsUrl")&&r.d(t,"isWsUrl",(function(){return n.isWsUrl}));r(27);var i=r(50);r.d(t,"IJsonRpcConnection",(function(){return i.a})),r.d(t,"IJsonRpcProvider",(function(){return i.b}));var s=r(51);r.o(s,"isHttpUrl")&&r.d(t,"isHttpUrl",(function(){return s.isHttpUrl})),r.o(s,"isJsonRpcError")&&r.d(t,"isJsonRpcError",(function(){return s.isJsonRpcError})),r.o(s,"isJsonRpcRequest")&&r.d(t,"isJsonRpcRequest",(function(){return s.isJsonRpcRequest})),r.o(s,"isJsonRpcResponse")&&r.d(t,"isJsonRpcResponse",(function(){return s.isJsonRpcResponse})),r.o(s,"isJsonRpcResult")&&r.d(t,"isJsonRpcResult",(function(){return s.isJsonRpcResult})),r.o(s,"isLocalhostUrl")&&r.d(t,"isLocalhostUrl",(function(){return s.isLocalhostUrl})),r.o(s,"isReactNative")&&r.d(t,"isReactNative",(function(){return s.isReactNative})),r.o(s,"isWsUrl")&&r.d(t,"isWsUrl",(function(){return s.isWsUrl}))},function(e,t,r){"use strict";(function(e){var n=r(5),i=r(13),s=r(1);const o=void 0!==e.WebSocket?e.WebSocket:r(132);t.a=class{constructor(e){if(this.url=e,this.events=new n.EventEmitter,this.registering=!1,!Object(s.isWsUrl)(e))throw new Error("Provided URL is not compatible with WebSocket connection: "+e);this.url=e}get connected(){return void 0!==this.socket}get connecting(){return this.registering}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async open(e=this.url){await this.register(e)}async close(){if(void 0===this.socket)throw new Error("Connection already closed");this.socket.close(),this.onClose()}async send(e,t){void 0===this.socket&&(this.socket=await this.register());try{this.socket.send(Object(i.b)(e))}catch(t){this.onError(e.id,t)}}register(e=this.url){if(!Object(s.isWsUrl)(e))throw new Error("Provided URL is not compatible with WebSocket connection: "+e);return this.registering?new Promise((e,t)=>{this.events.once("register_error",e=>{t(e)}),this.events.once("open",()=>{if(void 0===this.socket)return t(new Error("WebSocket connection is missing or invalid"));e(this.socket)})}):(this.url=e,this.registering=!0,new Promise((t,r)=>{const n=Object(s.isReactNative)()?void 0:{rejectUnauthorized:!Object(s.isLocalhostUrl)(e)},i=new o(e,[],n);i.onopen=()=>{this.onOpen(i),t(i)},i.onerror=e=>{const t=this.parseError(e.error);this.events.emit("register_error",t),this.onClose(),r(t)}}))}onOpen(e){e.onmessage=e=>this.onPayload(e),e.onclose=()=>this.onClose(),e.onerror=e=>{const t=this.parseError(e.error);this.events.emit("error",t)},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(void 0===e.data)return;const t="string"==typeof e.data?Object(i.a)(e.data):e.data;this.events.emit("payload",t)}onError(e,t){const r=this.parseError(t),n=r.message||r.toString(),i=Object(s.formatJsonRpcError)(e,n);this.events.emit("payload",i)}parseError(e,t=this.url){return Object(s.parseConnectionError)(e,t,"WS")}}}).call(this,r(31))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(25),i=r(14);t.DIGEST_LENGTH=32,t.BLOCK_SIZE=64;var s=function(){function e(){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 e.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},e.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},e.prototype.clean=function(){i.wipe(this._buffer),i.wipe(this._temp),this.reset()},e.prototype.update=function(e,t){if(void 0===t&&(t=e.length),this._finished)throw new Error("SHA256: can't update because hash was finished.");var r=0;if(this._bytesHashed+=t,this._bufferLength>0){for(;this._bufferLength<this.blockSize&&t>0;)this._buffer[this._bufferLength++]=e[r++],t--;this._bufferLength===this.blockSize&&(a(this._temp,this._state,this._buffer,0,this.blockSize),this._bufferLength=0)}for(t>=this.blockSize&&(r=a(this._temp,this._state,e,r,t),t%=this.blockSize);t>0;)this._buffer[this._bufferLength++]=e[r++],t--;return this},e.prototype.finish=function(e){if(!this._finished){var t=this._bytesHashed,r=this._bufferLength,i=t/536870912|0,s=t<<3,o=t%64<56?64:128;this._buffer[r]=128;for(var c=r+1;c<o-8;c++)this._buffer[c]=0;n.writeUint32BE(i,this._buffer,o-8),n.writeUint32BE(s,this._buffer,o-4),a(this._temp,this._state,this._buffer,0,o),this._finished=!0}for(c=0;c<this.digestLength/4;c++)n.writeUint32BE(this._state[c],e,4*c);return this},e.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},e.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}},e.prototype.restoreState=function(e){return this._state.set(e.state),this._bufferLength=e.bufferLength,e.buffer&&this._buffer.set(e.buffer),this._bytesHashed=e.bytesHashed,this._finished=!1,this},e.prototype.cleanSavedState=function(e){i.wipe(e.state),e.buffer&&i.wipe(e.buffer),e.bufferLength=0,e.bytesHashed=0},e}();t.SHA256=s;var o=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 a(e,t,r,i,s){for(;s>=64;){for(var a=t[0],c=t[1],u=t[2],h=t[3],l=t[4],d=t[5],f=t[6],p=t[7],g=0;g<16;g++){var y=i+4*g;e[g]=n.readUint32BE(r,y)}for(g=16;g<64;g++){var b=e[g-2],v=(b>>>17|b<<15)^(b>>>19|b<<13)^b>>>10,m=((b=e[g-15])>>>7|b<<25)^(b>>>18|b<<14)^b>>>3;e[g]=(v+e[g-7]|0)+(m+e[g-16]|0)}for(g=0;g<64;g++){v=(((l>>>6|l<<26)^(l>>>11|l<<21)^(l>>>25|l<<7))+(l&d^~l&f)|0)+(p+(o[g]+e[g]|0)|0)|0,m=((a>>>2|a<<30)^(a>>>13|a<<19)^(a>>>22|a<<10))+(a&c^a&u^c&u)|0;p=f,f=d,d=l,l=h+v|0,h=u,u=c,c=a,a=v+m|0}t[0]+=a,t[1]+=c,t[2]+=u,t[3]+=h,t[4]+=l,t[5]+=d,t[6]+=f,t[7]+=p,i+=64,s-=64}return i}t.hash=function(e){var t=new s;t.update(e);var r=t.digest();return t.clean(),r}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(20),i=r(131),s=r(14);function o(e){var t=new Float64Array(16);if(e)for(var r=0;r<e.length;r++)t[r]=e[r];return t}t.SIGNATURE_LENGTH=64,t.PUBLIC_KEY_LENGTH=32,t.SECRET_KEY_LENGTH=64,t.SEED_LENGTH=32,new Uint8Array(32)[0]=9;var a=o(),c=o([1]),u=o([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),h=o([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),l=o([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),d=o([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),f=o([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function p(e,t){for(var r=0;r<16;r++)e[r]=0|t[r]}function g(e){for(var t=1,r=0;r<16;r++){var n=e[r]+t+65535;t=Math.floor(n/65536),e[r]=n-65536*t}e[0]+=t-1+37*(t-1)}function y(e,t,r){for(var n=~(r-1),i=0;i<16;i++){var s=n&(e[i]^t[i]);e[i]^=s,t[i]^=s}}function b(e,t){for(var r=o(),n=o(),i=0;i<16;i++)n[i]=t[i];g(n),g(n),g(n);for(var s=0;s<2;s++){r[0]=n[0]-65517;for(i=1;i<15;i++)r[i]=n[i]-65535-(r[i-1]>>16&1),r[i-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);var a=r[15]>>16&1;r[14]&=65535,y(n,r,1-a)}for(i=0;i<16;i++)e[2*i]=255&n[i],e[2*i+1]=n[i]>>8}function v(e,t){for(var r=0,n=0;n<32;n++)r|=e[n]^t[n];return(1&r-1>>>8)-1}function m(e,t){var r=new Uint8Array(32),n=new Uint8Array(32);return b(r,e),b(n,t),v(r,n)}function _(e){var t=new Uint8Array(32);return b(t,e),1&t[0]}function w(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]+r[n]}function E(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]-r[n]}function O(e,t,r){var n,i,s=0,o=0,a=0,c=0,u=0,h=0,l=0,d=0,f=0,p=0,g=0,y=0,b=0,v=0,m=0,_=0,w=0,E=0,O=0,S=0,I=0,j=0,R=0,N=0,P=0,A=0,T=0,L=0,x=0,U=0,C=0,M=r[0],D=r[1],z=r[2],k=r[3],V=r[4],H=r[5],K=r[6],J=r[7],q=r[8],B=r[9],F=r[10],G=r[11],W=r[12],Y=r[13],$=r[14],X=r[15];s+=(n=t[0])*M,o+=n*D,a+=n*z,c+=n*k,u+=n*V,h+=n*H,l+=n*K,d+=n*J,f+=n*q,p+=n*B,g+=n*F,y+=n*G,b+=n*W,v+=n*Y,m+=n*$,_+=n*X,o+=(n=t[1])*M,a+=n*D,c+=n*z,u+=n*k,h+=n*V,l+=n*H,d+=n*K,f+=n*J,p+=n*q,g+=n*B,y+=n*F,b+=n*G,v+=n*W,m+=n*Y,_+=n*$,w+=n*X,a+=(n=t[2])*M,c+=n*D,u+=n*z,h+=n*k,l+=n*V,d+=n*H,f+=n*K,p+=n*J,g+=n*q,y+=n*B,b+=n*F,v+=n*G,m+=n*W,_+=n*Y,w+=n*$,E+=n*X,c+=(n=t[3])*M,u+=n*D,h+=n*z,l+=n*k,d+=n*V,f+=n*H,p+=n*K,g+=n*J,y+=n*q,b+=n*B,v+=n*F,m+=n*G,_+=n*W,w+=n*Y,E+=n*$,O+=n*X,u+=(n=t[4])*M,h+=n*D,l+=n*z,d+=n*k,f+=n*V,p+=n*H,g+=n*K,y+=n*J,b+=n*q,v+=n*B,m+=n*F,_+=n*G,w+=n*W,E+=n*Y,O+=n*$,S+=n*X,h+=(n=t[5])*M,l+=n*D,d+=n*z,f+=n*k,p+=n*V,g+=n*H,y+=n*K,b+=n*J,v+=n*q,m+=n*B,_+=n*F,w+=n*G,E+=n*W,O+=n*Y,S+=n*$,I+=n*X,l+=(n=t[6])*M,d+=n*D,f+=n*z,p+=n*k,g+=n*V,y+=n*H,b+=n*K,v+=n*J,m+=n*q,_+=n*B,w+=n*F,E+=n*G,O+=n*W,S+=n*Y,I+=n*$,j+=n*X,d+=(n=t[7])*M,f+=n*D,p+=n*z,g+=n*k,y+=n*V,b+=n*H,v+=n*K,m+=n*J,_+=n*q,w+=n*B,E+=n*F,O+=n*G,S+=n*W,I+=n*Y,j+=n*$,R+=n*X,f+=(n=t[8])*M,p+=n*D,g+=n*z,y+=n*k,b+=n*V,v+=n*H,m+=n*K,_+=n*J,w+=n*q,E+=n*B,O+=n*F,S+=n*G,I+=n*W,j+=n*Y,R+=n*$,N+=n*X,p+=(n=t[9])*M,g+=n*D,y+=n*z,b+=n*k,v+=n*V,m+=n*H,_+=n*K,w+=n*J,E+=n*q,O+=n*B,S+=n*F,I+=n*G,j+=n*W,R+=n*Y,N+=n*$,P+=n*X,g+=(n=t[10])*M,y+=n*D,b+=n*z,v+=n*k,m+=n*V,_+=n*H,w+=n*K,E+=n*J,O+=n*q,S+=n*B,I+=n*F,j+=n*G,R+=n*W,N+=n*Y,P+=n*$,A+=n*X,y+=(n=t[11])*M,b+=n*D,v+=n*z,m+=n*k,_+=n*V,w+=n*H,E+=n*K,O+=n*J,S+=n*q,I+=n*B,j+=n*F,R+=n*G,N+=n*W,P+=n*Y,A+=n*$,T+=n*X,b+=(n=t[12])*M,v+=n*D,m+=n*z,_+=n*k,w+=n*V,E+=n*H,O+=n*K,S+=n*J,I+=n*q,j+=n*B,R+=n*F,N+=n*G,P+=n*W,A+=n*Y,T+=n*$,L+=n*X,v+=(n=t[13])*M,m+=n*D,_+=n*z,w+=n*k,E+=n*V,O+=n*H,S+=n*K,I+=n*J,j+=n*q,R+=n*B,N+=n*F,P+=n*G,A+=n*W,T+=n*Y,L+=n*$,x+=n*X,m+=(n=t[14])*M,_+=n*D,w+=n*z,E+=n*k,O+=n*V,S+=n*H,I+=n*K,j+=n*J,R+=n*q,N+=n*B,P+=n*F,A+=n*G,T+=n*W,L+=n*Y,x+=n*$,U+=n*X,_+=(n=t[15])*M,o+=38*(E+=n*z),a+=38*(O+=n*k),c+=38*(S+=n*V),u+=38*(I+=n*H),h+=38*(j+=n*K),l+=38*(R+=n*J),d+=38*(N+=n*q),f+=38*(P+=n*B),p+=38*(A+=n*F),g+=38*(T+=n*G),y+=38*(L+=n*W),b+=38*(x+=n*Y),v+=38*(U+=n*$),m+=38*(C+=n*X),s=(n=(s+=38*(w+=n*D))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),o=(n=o+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=a+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),_=(n=_+i+65535)-65536*(i=Math.floor(n/65536)),s=(n=(s+=i-1+37*(i-1))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),o=(n=o+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=a+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),_=(n=_+i+65535)-65536*(i=Math.floor(n/65536)),s+=i-1+37*(i-1),e[0]=s,e[1]=o,e[2]=a,e[3]=c,e[4]=u,e[5]=h,e[6]=l,e[7]=d,e[8]=f,e[9]=p,e[10]=g,e[11]=y,e[12]=b,e[13]=v,e[14]=m,e[15]=_}function S(e,t){O(e,t,t)}function I(e,t){var r,n=o();for(r=0;r<16;r++)n[r]=t[r];for(r=253;r>=0;r--)S(n,n),2!==r&&4!==r&&O(n,n,t);for(r=0;r<16;r++)e[r]=n[r]}function j(e,t){var r=o(),n=o(),i=o(),s=o(),a=o(),c=o(),u=o(),l=o(),d=o();E(r,e[1],e[0]),E(d,t[1],t[0]),O(r,r,d),w(n,e[0],e[1]),w(d,t[0],t[1]),O(n,n,d),O(i,e[3],t[3]),O(i,i,h),O(s,e[2],t[2]),w(s,s,s),E(a,n,r),E(c,s,i),w(u,s,i),w(l,n,r),O(e[0],a,c),O(e[1],l,u),O(e[2],u,c),O(e[3],a,l)}function R(e,t,r){for(var n=0;n<4;n++)y(e[n],t[n],r)}function N(e,t){var r=o(),n=o(),i=o();I(i,t[2]),O(r,t[0],i),O(n,t[1],i),b(e,n),e[31]^=_(r)<<7}function P(e,t,r){p(e[0],a),p(e[1],c),p(e[2],c),p(e[3],a);for(var n=255;n>=0;--n){var i=r[n/8|0]>>(7&n)&1;R(e,t,i),j(t,e),j(e,e),R(e,t,i)}}function A(e,t){var r=[o(),o(),o(),o()];p(r[0],l),p(r[1],d),p(r[2],c),O(r[3],l,d),P(e,r,t)}function T(e){if(e.length!==t.SEED_LENGTH)throw new Error("ed25519: seed must be "+t.SEED_LENGTH+" bytes");var r=i.hash(e);r[0]&=248,r[31]&=127,r[31]|=64;var n=new Uint8Array(32),s=[o(),o(),o(),o()];A(s,r),N(n,s);var a=new Uint8Array(64);return a.set(e),a.set(n,32),{publicKey:n,secretKey:a}}t.generateKeyPairFromSeed=T,t.generateKeyPair=function(e){var t=n.randomBytes(32,e),r=T(t);return s.wipe(t),r},t.extractPublicKeyFromSecretKey=function(e){if(e.length!==t.SECRET_KEY_LENGTH)throw new Error("ed25519: secret key must be "+t.SECRET_KEY_LENGTH+" bytes");return new Uint8Array(e.subarray(32))};var 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 x(e,t){var r,n,i,s;for(n=63;n>=32;--n){for(r=0,i=n-32,s=n-12;i<s;++i)t[i]+=r-16*t[n]*L[i-(n-32)],r=Math.floor((t[i]+128)/256),t[i]-=256*r;t[i]+=r,t[n]=0}for(r=0,i=0;i<32;i++)t[i]+=r-(t[31]>>4)*L[i],r=t[i]>>8,t[i]&=255;for(i=0;i<32;i++)t[i]-=r*L[i];for(n=0;n<32;n++)t[n+1]+=t[n]>>8,e[n]=255&t[n]}function U(e){for(var t=new Float64Array(64),r=0;r<64;r++)t[r]=e[r];for(r=0;r<64;r++)e[r]=0;x(e,t)}function C(e,t){var r=o(),n=o(),i=o(),s=o(),h=o(),l=o(),d=o();return p(e[2],c),function(e,t){for(var r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}(e[1],t),S(i,e[1]),O(s,i,u),E(i,i,e[2]),w(s,e[2],s),S(h,s),S(l,h),O(d,l,h),O(r,d,i),O(r,r,s),function(e,t){var r,n=o();for(r=0;r<16;r++)n[r]=t[r];for(r=250;r>=0;r--)S(n,n),1!==r&&O(n,n,t);for(r=0;r<16;r++)e[r]=n[r]}(r,r),O(r,r,i),O(r,r,s),O(r,r,s),O(e[0],r,s),S(n,e[0]),O(n,n,s),m(n,i)&&O(e[0],e[0],f),S(n,e[0]),O(n,n,s),m(n,i)?-1:(_(e[0])===t[31]>>7&&E(e[0],a,e[0]),O(e[3],e[0],e[1]),0)}t.sign=function(e,t){var r=new Float64Array(64),n=[o(),o(),o(),o()],s=i.hash(e.subarray(0,32));s[0]&=248,s[31]&=127,s[31]|=64;var a=new Uint8Array(64);a.set(s.subarray(32),32);var c=new i.SHA512;c.update(a.subarray(32)),c.update(t);var u=c.digest();c.clean(),U(u),A(n,u),N(a,n),c.reset(),c.update(a.subarray(0,32)),c.update(e.subarray(32)),c.update(t);var h=c.digest();U(h);for(var l=0;l<32;l++)r[l]=u[l];for(l=0;l<32;l++)for(var d=0;d<32;d++)r[l+d]+=h[l]*s[d];return x(a.subarray(32),r),a},t.verify=function(e,r,n){var s=new Uint8Array(32),a=[o(),o(),o(),o()],c=[o(),o(),o(),o()];if(n.length!==t.SIGNATURE_LENGTH)throw new Error("ed25519: signature must be "+t.SIGNATURE_LENGTH+" bytes");if(C(c,e))return!1;var u=new i.SHA512;u.update(n.subarray(0,32)),u.update(e),u.update(r);var h=u.digest();return U(h),P(a,c,h),A(c,n.subarray(32)),j(a,c),N(s,a),!v(n,s)},t.convertPublicKeyToX25519=function(e){var t=[o(),o(),o(),o()];if(C(t,e))throw new Error("Ed25519: invalid public key");var r=o(),n=o(),i=t[1];w(r,c,i),E(n,c,i),I(n,n),O(r,r,n);var s=new Uint8Array(32);return b(s,r),s},t.convertSecretKeyToX25519=function(e){var t=i.hash(e.subarray(0,32));t[0]&=248,t[31]&=127,t[31]|=64;var r=new Uint8Array(t.subarray(0,32));return s.wipe(t),r}},function(e,t,r){"use strict";function n(e,t){if(e.length!==t.length)return 0;for(var r=0,n=0;n<e.length;n++)r|=e[n]^t[n];return 1&r-1>>>8}Object.defineProperty(t,"__esModule",{value:!0}),t.select=function(e,t,r){return~(e-1)&t|e-1&r},t.lessOrEqual=function(e,t){return(0|e)-(0|t)-1>>>31&1},t.compare=n,t.equal=function(e,t){return 0!==e.length&&0!==t.length&&0!==n(e,t)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(26);class i{constructor(e,t,r){this.name=e,this.code=t,this.encode=r}digest(e){if(e instanceof Uint8Array){const t=this.encode(e);return t instanceof Uint8Array?n.create(this.code,t):t.then(e=>n.create(this.code,e))}throw Error("Unknown type, must be binary type")}}t.Hasher=i,t.from=({name:e,code:t,encode:r})=>new i(e,t,r)},function(e,t,r){"use strict";r.r(t),r.d(t,"JsonRpcProvider",(function(){return s}));var n=r(5),i=r(1);class s extends i.IJsonRpcProvider{constructor(e){super(e),this.events=new n.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,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async request(e,t){return this.requestStrict(Object(i.formatJsonRpcRequest)(e.method,e.params||[]),t)}async requestStrict(e,t){return new Promise(async(r,n)=>{if(!this.connection.connected)try{await this.open()}catch(e){n(e)}this.events.on(""+e.id,e=>{Object(i.isJsonRpcError)(e)?n(e.error):r(e.result)});try{await this.connection.send(e,t)}catch(e){n(e)}})}setConnection(e=this.connection){return e}onPayload(e){this.events.emit("payload",e),Object(i.isJsonRpcResponse)(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(),"string"==typeof e&&(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 o=s;t.default=o},function(e,t){var r="undefined"!=typeof self?self:this,n=function(){function e(){this.fetch=!1,this.DOMException=r.DOMException}return e.prototype=r,new e}();!function(e){!function(t){var r="URLSearchParams"in e,n="Symbol"in e&&"iterator"in Symbol,i="FileReader"in e&&"Blob"in e&&function(){try{return new Blob,!0}catch(e){return!1}}(),s="FormData"in e,o="ArrayBuffer"in e;if(o)var a=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],c=ArrayBuffer.isView||function(e){return e&&a.indexOf(Object.prototype.toString.call(e))>-1};function u(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(e))throw new TypeError("Invalid character in header field name");return e.toLowerCase()}function h(e){return"string"!=typeof e&&(e=String(e)),e}function l(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return n&&(t[Symbol.iterator]=function(){return t}),t}function d(e){this.map={},e instanceof d?e.forEach((function(e,t){this.append(t,e)}),this):Array.isArray(e)?e.forEach((function(e){this.append(e[0],e[1])}),this):e&&Object.getOwnPropertyNames(e).forEach((function(t){this.append(t,e[t])}),this)}function f(e){if(e.bodyUsed)return Promise.reject(new TypeError("Already read"));e.bodyUsed=!0}function p(e){return new Promise((function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}}))}function g(e){var t=new FileReader,r=p(t);return t.readAsArrayBuffer(e),r}function y(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function b(){return this.bodyUsed=!1,this._initBody=function(e){var t;this._bodyInit=e,e?"string"==typeof e?this._bodyText=e:i&&Blob.prototype.isPrototypeOf(e)?this._bodyBlob=e:s&&FormData.prototype.isPrototypeOf(e)?this._bodyFormData=e:r&&URLSearchParams.prototype.isPrototypeOf(e)?this._bodyText=e.toString():o&&i&&((t=e)&&DataView.prototype.isPrototypeOf(t))?(this._bodyArrayBuffer=y(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):o&&(ArrayBuffer.prototype.isPrototypeOf(e)||c(e))?this._bodyArrayBuffer=y(e):this._bodyText=e=Object.prototype.toString.call(e):this._bodyText="",this.headers.get("content-type")||("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):r&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i&&(this.blob=function(){var e=f(this);if(e)return e;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?f(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(g)}),this.text=function(){var e,t,r,n=f(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,t=new FileReader,r=p(t),t.readAsText(e),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=new Array(t.length),n=0;n<t.length;n++)r[n]=String.fromCharCode(t[n]);return r.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},s&&(this.formData=function(){return this.text().then(_)}),this.json=function(){return this.text().then(JSON.parse)},this}d.prototype.append=function(e,t){e=u(e),t=h(t);var r=this.map[e];this.map[e]=r?r+", "+t:t},d.prototype.delete=function(e){delete this.map[u(e)]},d.prototype.get=function(e){return e=u(e),this.has(e)?this.map[e]:null},d.prototype.has=function(e){return this.map.hasOwnProperty(u(e))},d.prototype.set=function(e,t){this.map[u(e)]=h(t)},d.prototype.forEach=function(e,t){for(var r in this.map)this.map.hasOwnProperty(r)&&e.call(t,this.map[r],r,this)},d.prototype.keys=function(){var e=[];return this.forEach((function(t,r){e.push(r)})),l(e)},d.prototype.values=function(){var e=[];return this.forEach((function(t){e.push(t)})),l(e)},d.prototype.entries=function(){var e=[];return this.forEach((function(t,r){e.push([r,t])})),l(e)},n&&(d.prototype[Symbol.iterator]=d.prototype.entries);var v=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function m(e,t){var r,n,i=(t=t||{}).body;if(e instanceof m){if(e.bodyUsed)throw new TypeError("Already read");this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new d(e.headers)),this.method=e.method,this.mode=e.mode,this.signal=e.signal,i||null==e._bodyInit||(i=e._bodyInit,e.bodyUsed=!0)}else this.url=String(e);if(this.credentials=t.credentials||this.credentials||"same-origin",!t.headers&&this.headers||(this.headers=new d(t.headers)),this.method=(r=t.method||this.method||"GET",n=r.toUpperCase(),v.indexOf(n)>-1?n:r),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&i)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(i)}function _(e){var t=new FormData;return e.trim().split("&").forEach((function(e){if(e){var r=e.split("="),n=r.shift().replace(/\+/g," "),i=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(n),decodeURIComponent(i))}})),t}function w(e,t){t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in t?t.statusText:"OK",this.headers=new d(t.headers),this.url=t.url||"",this._initBody(e)}m.prototype.clone=function(){return new m(this,{body:this._bodyInit})},b.call(m.prototype),b.call(w.prototype),w.prototype.clone=function(){return new w(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new d(this.headers),url:this.url})},w.error=function(){var e=new w(null,{status:0,statusText:""});return e.type="error",e};var E=[301,302,303,307,308];w.redirect=function(e,t){if(-1===E.indexOf(t))throw new RangeError("Invalid status code");return new w(null,{status:t,headers:{location:e}})},t.DOMException=e.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function O(e,r){return new Promise((function(n,s){var o=new m(e,r);if(o.signal&&o.signal.aborted)return s(new t.DOMException("Aborted","AbortError"));var a=new XMLHttpRequest;function c(){a.abort()}a.onload=function(){var e,t,r={status:a.status,statusText:a.statusText,headers:(e=a.getAllResponseHeaders()||"",t=new d,e.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(e){var r=e.split(":"),n=r.shift().trim();if(n){var i=r.join(":").trim();t.append(n,i)}})),t)};r.url="responseURL"in a?a.responseURL:r.headers.get("X-Request-URL");var i="response"in a?a.response:a.responseText;n(new w(i,r))},a.onerror=function(){s(new TypeError("Network request failed"))},a.ontimeout=function(){s(new TypeError("Network request failed"))},a.onabort=function(){s(new t.DOMException("Aborted","AbortError"))},a.open(o.method,o.url,!0),"include"===o.credentials?a.withCredentials=!0:"omit"===o.credentials&&(a.withCredentials=!1),"responseType"in a&&i&&(a.responseType="blob"),o.headers.forEach((function(e,t){a.setRequestHeader(t,e)})),o.signal&&(o.signal.addEventListener("abort",c),a.onreadystatechange=function(){4===a.readyState&&o.signal.removeEventListener("abort",c)}),a.send(void 0===o._bodyInit?null:o._bodyInit)}))}O.polyfill=!0,e.fetch||(e.fetch=O,e.Headers=d,e.Request=m,e.Response=w),t.Headers=d,t.Request=m,t.Response=w,t.fetch=O,Object.defineProperty(t,"__esModule",{value:!0})}({})}(n),n.fetch.ponyfill=!0,delete n.fetch.polyfill;var i=n;(t=i.fetch).default=i.fetch,t.fetch=i.fetch,t.Headers=i.Headers,t.Request=i.Request,t.Response=i.Response,e.exports=t},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(85),i=r(87),s=r(14),o=r(25),a=r(38);t.KEY_LENGTH=32,t.NONCE_LENGTH=12,t.TAG_LENGTH=16;var c=new Uint8Array(16),u=function(){function e(e){if(this.nonceLength=t.NONCE_LENGTH,this.tagLength=t.TAG_LENGTH,e.length!==t.KEY_LENGTH)throw new Error("ChaCha20Poly1305 needs 32-byte key");this._key=new Uint8Array(e)}return e.prototype.seal=function(e,t,r,i){if(e.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");var o=new Uint8Array(16);o.set(e,o.length-e.length);var a=new Uint8Array(32);n.stream(this._key,o,a,4);var c,u=t.length+this.tagLength;if(i){if(i.length!==u)throw new Error("ChaCha20Poly1305: incorrect destination length");c=i}else c=new Uint8Array(u);return n.streamXOR(this._key,o,t,c,4),this._authenticate(c.subarray(c.length-this.tagLength,c.length),a,c.subarray(0,c.length-this.tagLength),r),s.wipe(o),c},e.prototype.open=function(e,t,r,i){if(e.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");if(t.length<this.tagLength)return null;var o=new Uint8Array(16);o.set(e,o.length-e.length);var c=new Uint8Array(32);n.stream(this._key,o,c,4);var u=new Uint8Array(this.tagLength);if(this._authenticate(u,c,t.subarray(0,t.length-this.tagLength),r),!a.equal(u,t.subarray(t.length-this.tagLength,t.length)))return null;var h,l=t.length-this.tagLength;if(i){if(i.length!==l)throw new Error("ChaCha20Poly1305: incorrect destination length");h=i}else h=new Uint8Array(l);return n.streamXOR(this._key,o,t.subarray(0,t.length-this.tagLength),h,4),s.wipe(o),h},e.prototype.clean=function(){return s.wipe(this._key),this},e.prototype._authenticate=function(e,t,r,n){var a=new i.Poly1305(t);n&&(a.update(n),n.length%16>0&&a.update(c.subarray(n.length%16))),a.update(r),r.length%16>0&&a.update(c.subarray(r.length%16));var u=new Uint8Array(8);n&&o.writeUint64LE(n.length,u),a.update(u),o.writeUint64LE(r.length,u),a.update(u);for(var h=a.digest(),l=0;l<h.length;l++)e[l]=h[l];a.clean(),s.wipe(h),s.wipe(u)},e}();t.ChaCha20Poly1305=u},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(20),i=r(14);function s(e){var t=new Float64Array(16);if(e)for(var r=0;r<e.length;r++)t[r]=e[r];return t}t.PUBLIC_KEY_LENGTH=32,t.SECRET_KEY_LENGTH=32,t.SHARED_KEY_LENGTH=32;var o=new Uint8Array(32);o[0]=9;var a=s([56129,1]);function c(e){for(var t=1,r=0;r<16;r++){var n=e[r]+t+65535;t=Math.floor(n/65536),e[r]=n-65536*t}e[0]+=t-1+37*(t-1)}function u(e,t,r){for(var n=~(r-1),i=0;i<16;i++){var s=n&(e[i]^t[i]);e[i]^=s,t[i]^=s}}function h(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]+r[n]}function l(e,t,r){for(var n=0;n<16;n++)e[n]=t[n]-r[n]}function d(e,t,r){var n,i,s=0,o=0,a=0,c=0,u=0,h=0,l=0,d=0,f=0,p=0,g=0,y=0,b=0,v=0,m=0,_=0,w=0,E=0,O=0,S=0,I=0,j=0,R=0,N=0,P=0,A=0,T=0,L=0,x=0,U=0,C=0,M=r[0],D=r[1],z=r[2],k=r[3],V=r[4],H=r[5],K=r[6],J=r[7],q=r[8],B=r[9],F=r[10],G=r[11],W=r[12],Y=r[13],$=r[14],X=r[15];s+=(n=t[0])*M,o+=n*D,a+=n*z,c+=n*k,u+=n*V,h+=n*H,l+=n*K,d+=n*J,f+=n*q,p+=n*B,g+=n*F,y+=n*G,b+=n*W,v+=n*Y,m+=n*$,_+=n*X,o+=(n=t[1])*M,a+=n*D,c+=n*z,u+=n*k,h+=n*V,l+=n*H,d+=n*K,f+=n*J,p+=n*q,g+=n*B,y+=n*F,b+=n*G,v+=n*W,m+=n*Y,_+=n*$,w+=n*X,a+=(n=t[2])*M,c+=n*D,u+=n*z,h+=n*k,l+=n*V,d+=n*H,f+=n*K,p+=n*J,g+=n*q,y+=n*B,b+=n*F,v+=n*G,m+=n*W,_+=n*Y,w+=n*$,E+=n*X,c+=(n=t[3])*M,u+=n*D,h+=n*z,l+=n*k,d+=n*V,f+=n*H,p+=n*K,g+=n*J,y+=n*q,b+=n*B,v+=n*F,m+=n*G,_+=n*W,w+=n*Y,E+=n*$,O+=n*X,u+=(n=t[4])*M,h+=n*D,l+=n*z,d+=n*k,f+=n*V,p+=n*H,g+=n*K,y+=n*J,b+=n*q,v+=n*B,m+=n*F,_+=n*G,w+=n*W,E+=n*Y,O+=n*$,S+=n*X,h+=(n=t[5])*M,l+=n*D,d+=n*z,f+=n*k,p+=n*V,g+=n*H,y+=n*K,b+=n*J,v+=n*q,m+=n*B,_+=n*F,w+=n*G,E+=n*W,O+=n*Y,S+=n*$,I+=n*X,l+=(n=t[6])*M,d+=n*D,f+=n*z,p+=n*k,g+=n*V,y+=n*H,b+=n*K,v+=n*J,m+=n*q,_+=n*B,w+=n*F,E+=n*G,O+=n*W,S+=n*Y,I+=n*$,j+=n*X,d+=(n=t[7])*M,f+=n*D,p+=n*z,g+=n*k,y+=n*V,b+=n*H,v+=n*K,m+=n*J,_+=n*q,w+=n*B,E+=n*F,O+=n*G,S+=n*W,I+=n*Y,j+=n*$,R+=n*X,f+=(n=t[8])*M,p+=n*D,g+=n*z,y+=n*k,b+=n*V,v+=n*H,m+=n*K,_+=n*J,w+=n*q,E+=n*B,O+=n*F,S+=n*G,I+=n*W,j+=n*Y,R+=n*$,N+=n*X,p+=(n=t[9])*M,g+=n*D,y+=n*z,b+=n*k,v+=n*V,m+=n*H,_+=n*K,w+=n*J,E+=n*q,O+=n*B,S+=n*F,I+=n*G,j+=n*W,R+=n*Y,N+=n*$,P+=n*X,g+=(n=t[10])*M,y+=n*D,b+=n*z,v+=n*k,m+=n*V,_+=n*H,w+=n*K,E+=n*J,O+=n*q,S+=n*B,I+=n*F,j+=n*G,R+=n*W,N+=n*Y,P+=n*$,A+=n*X,y+=(n=t[11])*M,b+=n*D,v+=n*z,m+=n*k,_+=n*V,w+=n*H,E+=n*K,O+=n*J,S+=n*q,I+=n*B,j+=n*F,R+=n*G,N+=n*W,P+=n*Y,A+=n*$,T+=n*X,b+=(n=t[12])*M,v+=n*D,m+=n*z,_+=n*k,w+=n*V,E+=n*H,O+=n*K,S+=n*J,I+=n*q,j+=n*B,R+=n*F,N+=n*G,P+=n*W,A+=n*Y,T+=n*$,L+=n*X,v+=(n=t[13])*M,m+=n*D,_+=n*z,w+=n*k,E+=n*V,O+=n*H,S+=n*K,I+=n*J,j+=n*q,R+=n*B,N+=n*F,P+=n*G,A+=n*W,T+=n*Y,L+=n*$,x+=n*X,m+=(n=t[14])*M,_+=n*D,w+=n*z,E+=n*k,O+=n*V,S+=n*H,I+=n*K,j+=n*J,R+=n*q,N+=n*B,P+=n*F,A+=n*G,T+=n*W,L+=n*Y,x+=n*$,U+=n*X,_+=(n=t[15])*M,o+=38*(E+=n*z),a+=38*(O+=n*k),c+=38*(S+=n*V),u+=38*(I+=n*H),h+=38*(j+=n*K),l+=38*(R+=n*J),d+=38*(N+=n*q),f+=38*(P+=n*B),p+=38*(A+=n*F),g+=38*(T+=n*G),y+=38*(L+=n*W),b+=38*(x+=n*Y),v+=38*(U+=n*$),m+=38*(C+=n*X),s=(n=(s+=38*(w+=n*D))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),o=(n=o+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=a+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),_=(n=_+i+65535)-65536*(i=Math.floor(n/65536)),s=(n=(s+=i-1+37*(i-1))+(i=1)+65535)-65536*(i=Math.floor(n/65536)),o=(n=o+i+65535)-65536*(i=Math.floor(n/65536)),a=(n=a+i+65535)-65536*(i=Math.floor(n/65536)),c=(n=c+i+65535)-65536*(i=Math.floor(n/65536)),u=(n=u+i+65535)-65536*(i=Math.floor(n/65536)),h=(n=h+i+65535)-65536*(i=Math.floor(n/65536)),l=(n=l+i+65535)-65536*(i=Math.floor(n/65536)),d=(n=d+i+65535)-65536*(i=Math.floor(n/65536)),f=(n=f+i+65535)-65536*(i=Math.floor(n/65536)),p=(n=p+i+65535)-65536*(i=Math.floor(n/65536)),g=(n=g+i+65535)-65536*(i=Math.floor(n/65536)),y=(n=y+i+65535)-65536*(i=Math.floor(n/65536)),b=(n=b+i+65535)-65536*(i=Math.floor(n/65536)),v=(n=v+i+65535)-65536*(i=Math.floor(n/65536)),m=(n=m+i+65535)-65536*(i=Math.floor(n/65536)),_=(n=_+i+65535)-65536*(i=Math.floor(n/65536)),s+=i-1+37*(i-1),e[0]=s,e[1]=o,e[2]=a,e[3]=c,e[4]=u,e[5]=h,e[6]=l,e[7]=d,e[8]=f,e[9]=p,e[10]=g,e[11]=y,e[12]=b,e[13]=v,e[14]=m,e[15]=_}function f(e,t){d(e,t,t)}function p(e,t){for(var r=new Uint8Array(32),n=new Float64Array(80),i=s(),o=s(),p=s(),g=s(),y=s(),b=s(),v=0;v<31;v++)r[v]=e[v];r[31]=127&e[31]|64,r[0]&=248,function(e,t){for(var r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}(n,t);for(v=0;v<16;v++)o[v]=n[v];i[0]=g[0]=1;for(v=254;v>=0;--v){var m=r[v>>>3]>>>(7&v)&1;u(i,o,m),u(p,g,m),h(y,i,p),l(i,i,p),h(p,o,g),l(o,o,g),f(g,y),f(b,i),d(i,p,i),d(p,o,y),h(y,i,p),l(i,i,p),f(o,i),l(p,g,b),d(i,p,a),h(i,i,g),d(p,p,i),d(i,g,b),d(g,o,n),f(o,y),u(i,o,m),u(p,g,m)}for(v=0;v<16;v++)n[v+16]=i[v],n[v+32]=p[v],n[v+48]=o[v],n[v+64]=g[v];var _=n.subarray(32),w=n.subarray(16);!function(e,t){for(var r=s(),n=0;n<16;n++)r[n]=t[n];for(n=253;n>=0;n--)f(r,r),2!==n&&4!==n&&d(r,r,t);for(n=0;n<16;n++)e[n]=r[n]}(_,_),d(w,w,_);var E=new Uint8Array(32);return function(e,t){for(var r=s(),n=s(),i=0;i<16;i++)n[i]=t[i];c(n),c(n),c(n);for(var o=0;o<2;o++){r[0]=n[0]-65517;for(i=1;i<15;i++)r[i]=n[i]-65535-(r[i-1]>>16&1),r[i-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);var a=r[15]>>16&1;r[14]&=65535,u(n,r,1-a)}for(i=0;i<16;i++)e[2*i]=255&n[i],e[2*i+1]=n[i]>>8}(E,w),E}function g(e){return p(e,o)}function y(e){if(e.length!==t.SECRET_KEY_LENGTH)throw new Error("x25519: seed must be "+t.SECRET_KEY_LENGTH+" bytes");var r=new Uint8Array(e);return{publicKey:g(r),secretKey:r}}t.scalarMult=p,t.scalarMultBase=g,t.generateKeyPairFromSeed=y,t.generateKeyPair=function(e){var t=n.randomBytes(32,e),r=y(t);return i.wipe(t),r},t.sharedKey=function(e,r,n){if(void 0===n&&(n=!1),e.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect secret key length");if(r.length!==t.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect public key length");var i=p(e,r);if(n){for(var s=0,o=0;o<i.length;o++)s|=i[o];if(0===s)throw new Error("X25519: invalid shared key")}return i}},function(e,t,r){"use strict";var n=r(33);r.o(n,"IJsonRpcProvider")&&r.d(t,"IJsonRpcProvider",(function(){return n.IJsonRpcProvider})),r.o(n,"formatJsonRpcError")&&r.d(t,"formatJsonRpcError",(function(){return n.formatJsonRpcError})),r.o(n,"formatJsonRpcRequest")&&r.d(t,"formatJsonRpcRequest",(function(){return n.formatJsonRpcRequest})),r.o(n,"formatJsonRpcResult")&&r.d(t,"formatJsonRpcResult",(function(){return n.formatJsonRpcResult})),r.o(n,"isHttpUrl")&&r.d(t,"isHttpUrl",(function(){return n.isHttpUrl})),r.o(n,"isJsonRpcError")&&r.d(t,"isJsonRpcError",(function(){return n.isJsonRpcError})),r.o(n,"isJsonRpcRequest")&&r.d(t,"isJsonRpcRequest",(function(){return n.isJsonRpcRequest})),r.o(n,"isJsonRpcResponse")&&r.d(t,"isJsonRpcResponse",(function(){return n.isJsonRpcResponse})),r.o(n,"isJsonRpcResult")&&r.d(t,"isJsonRpcResult",(function(){return n.isJsonRpcResult})),r.o(n,"isLocalhostUrl")&&r.d(t,"isLocalhostUrl",(function(){return n.isLocalhostUrl})),r.o(n,"isReactNative")&&r.d(t,"isReactNative",(function(){return n.isReactNative})),r.o(n,"isWsUrl")&&r.d(t,"isWsUrl",(function(){return n.isWsUrl}));n.isNode},function(e,t){var r,n,i=e.exports={};function s(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function a(e){if(r===setTimeout)return setTimeout(e,0);if((r===s||!r)&&setTimeout)return r=setTimeout,setTimeout(e,0);try{return r(e,0)}catch(t){try{return r.call(null,e,0)}catch(t){return r.call(this,e,0)}}}!function(){try{r="function"==typeof setTimeout?setTimeout:s}catch(e){r=s}try{n="function"==typeof clearTimeout?clearTimeout:o}catch(e){n=o}}();var c,u=[],h=!1,l=-1;function d(){h&&c&&(h=!1,c.length?u=c.concat(u):l=-1,u.length&&f())}function f(){if(!h){var e=a(d);h=!0;for(var t=u.length;t;){for(c=u,u=[];++l<t;)c&&c[l].run();l=-1,t=u.length}c=null,h=!1,function(e){if(n===clearTimeout)return clearTimeout(e);if((n===o||!n)&&clearTimeout)return n=clearTimeout,clearTimeout(e);try{n(e)}catch(t){try{return n.call(null,e)}catch(t){return n.call(this,e)}}}(e)}}function p(e,t){this.fun=e,this.array=t}function g(){}i.nextTick=function(e){var t=new Array(arguments.length-1);if(arguments.length>1)for(var r=1;r<arguments.length;r++)t[r-1]=arguments[r];u.push(new p(e,t)),1!==u.length||h||a(f)},p.prototype.run=function(){this.fun.apply(null,this.array)},i.title="browser",i.browser=!0,i.env={},i.argv=[],i.version="",i.versions={},i.on=g,i.addListener=g,i.once=g,i.off=g,i.removeListener=g,i.removeAllListeners=g,i.emit=g,i.prependListener=g,i.prependOnceListener=g,i.listeners=function(e){return[]},i.binding=function(e){throw new Error("process.binding is not supported")},i.cwd=function(){return"/"},i.chdir=function(e){throw new Error("process.chdir is not supported")},i.umask=function(){return 0}},function(e,t,r){"use strict";r.d(t,"b",(function(){return s})),r.d(t,"c",(function(){return o})),r.d(t,"a",(function(){return a}));var n=r(21),i=r(9);function s(e,t,r){return{id:r||Date.now()*Math.pow(10,3)+Math.floor(Math.random()*Math.pow(10,3)),jsonrpc:"2.0",method:e,params:t}}function o(e,t){return{id:e,jsonrpc:"2.0",result:t}}function a(e,t,r){return{id:e,jsonrpc:"2.0",error:c(t,r)}}function c(e,t){return void 0===e?Object(n.a)(i.b):("string"==typeof e&&(e=Object.assign(Object.assign({},Object(n.a)(i.d)),{message:e})),void 0!==t&&(e.data=t),Object(n.c)(e.code)&&(e=Object(n.b)(e.code)),e)}},function(e,t,r){"use strict"},function(e,t,r){"use strict";var n=r(34);r.o(n,"IJsonRpcProvider")&&r.d(t,"IJsonRpcProvider",(function(){return n.IJsonRpcProvider})),r.o(n,"isHttpUrl")&&r.d(t,"isHttpUrl",(function(){return n.isHttpUrl})),r.o(n,"isJsonRpcError")&&r.d(t,"isJsonRpcError",(function(){return n.isJsonRpcError})),r.o(n,"isJsonRpcRequest")&&r.d(t,"isJsonRpcRequest",(function(){return n.isJsonRpcRequest})),r.o(n,"isJsonRpcResponse")&&r.d(t,"isJsonRpcResponse",(function(){return n.isJsonRpcResponse})),r.o(n,"isJsonRpcResult")&&r.d(t,"isJsonRpcResult",(function(){return n.isJsonRpcResult})),r.o(n,"isLocalhostUrl")&&r.d(t,"isLocalhostUrl",(function(){return n.isLocalhostUrl})),r.o(n,"isReactNative")&&r.d(t,"isReactNative",(function(){return n.isReactNative})),r.o(n,"isWsUrl")&&r.d(t,"isWsUrl",(function(){return n.isWsUrl}))},function(e,t){},function(e,t,r){"use strict";r.d(t,"a",(function(){return i})),r.d(t,"b",(function(){return o}));var n=r(27);class i extends n.a{constructor(e){super()}}class s extends n.a{constructor(){super()}}class o extends s{constructor(e){super()}}},function(e,t){},function(e,t,r){"use strict";r.d(t,"a",(function(){return i})),r.d(t,"c",(function(){return s})),r.d(t,"b",(function(){return o}));function n(e,t){const r=function(e){const t=e.match(new RegExp(/^\w+:/,"gi"));if(t&&t.length)return t[0]}(e);return void 0!==r&&new RegExp(t).test(r)}function i(e){return n(e,"^https?:")}function s(e){return n(e,"^wss?:")}function o(e){return new RegExp("wss?://localhost(:d{2,5})?").test(e)}},function(e,t,r){"use strict";function n(e){return"object"==typeof e&&"id"in e&&"jsonrpc"in e&&"2.0"===e.jsonrpc}function i(e){return n(e)&&"method"in e}function s(e){return n(e)&&(o(e)||a(e))}function o(e){return"result"in e}function a(e){return"error"in e}r.d(t,"b",(function(){return i})),r.d(t,"c",(function(){return s})),r.d(t,"d",(function(){return o})),r.d(t,"a",(function(){return a}))},function(e,t,r){"use strict";var n=r(94);function i(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}const s=i("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>(new TextEncoder).encode(e.substring(1))),o=i("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{e=e.substring(1);const t=new Uint8Array(e.length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),a={utf8:s,"utf-8":s,hex:n.bases.base16,latin1:o,ascii:o,binary:o,...n.bases};e.exports=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16);const i=n.rfc4648({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),s=n.rfc4648({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),o=n.rfc4648({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),a=n.rfc4648({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),c=n.rfc4648({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),u=n.rfc4648({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),h=n.rfc4648({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),l=n.rfc4648({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),d=n.rfc4648({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});t.base32=i,t.base32hex=c,t.base32hexpad=h,t.base32hexpadupper=l,t.base32hexupper=u,t.base32pad=o,t.base32padupper=a,t.base32upper=s,t.base32z=d},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16);const i=n.baseX({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),s=n.baseX({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});t.base58btc=i,t.base58flickr=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(32),i=r(26),s=r(56),o=r(55),a=r(18);class c{constructor(e,t,r,n){this.code=t,this.version=e,this.multihash=r,this.bytes=n,this.byteOffset=n.byteOffset,this.byteLength=n.byteLength,this.asCID=this,this._baseCache=new Map,Object.defineProperties(this,{byteOffset:b,byteLength:b,code:y,version:y,multihash:y,bytes:y,_baseCache:b,asCID:b})}toV0(){switch(this.version){case 0:return this;default:{const{code:e,multihash:t}=this;if(e!==d)throw new Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==f)throw new Error("Cannot convert non sha2-256 multihash CID to CIDv0");return c.createV0(t)}}}toV1(){switch(this.version){case 0:{const{code:e,digest:t}=this.multihash,r=i.create(e,t);return c.createV1(this.code,r)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}equals(e){return e&&this.code===e.code&&this.version===e.version&&i.equals(this.multihash,e.multihash)}toString(e){const{bytes:t,version:r,_baseCache:n}=this;switch(r){case 0:return h(t,n,e||s.base58btc.encoder);default:return l(t,n,e||o.base32.encoder)}}toJSON(){return{code:this.code,version:this.version,hash:this.multihash.bytes}}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return"CID("+this.toString()+")"}static isCID(e){return v(/^0\.0/,m),!(!e||!e[g]&&e.asCID!==e)}get toBaseEncodedString(){throw new Error("Deprecated, use .toString()")}get codec(){throw new Error('"codec" property is deprecated, use integer "code" property instead')}get buffer(){throw new Error("Deprecated .buffer property, use .bytes to get Uint8Array instead")}get multibaseName(){throw new Error('"multibaseName" property is deprecated')}get prefix(){throw new Error('"prefix" property is deprecated')}static asCID(e){if(e instanceof c)return e;if(null!=e&&e.asCID===e){const{version:t,code:r,multihash:n,bytes:i}=e;return new c(t,r,n,i||p(t,r,n.bytes))}if(null!=e&&!0===e[g]){const{version:t,multihash:r,code:n}=e,s=i.decode(r);return c.create(t,n,s)}return null}static create(e,t,r){if("number"!=typeof t)throw new Error("String codecs are no longer supported");switch(e){case 0:if(t!==d)throw new Error(`Version 0 CID must use dag-pb (code: ${d}) block encoding`);return new c(e,t,r,r.bytes);case 1:{const n=p(e,t,r.bytes);return new c(e,t,r,n)}default:throw new Error("Invalid version")}}static createV0(e){return c.create(0,d,e)}static createV1(e,t){return c.create(1,e,t)}static decode(e){const[t,r]=c.decodeFirst(e);if(r.length)throw new Error("Incorrect length");return t}static decodeFirst(e){const t=c.inspectBytes(e),r=t.size-t.multihashSize,n=a.coerce(e.subarray(r,r+t.multihashSize));if(n.byteLength!==t.multihashSize)throw new Error("Incorrect length");const s=n.subarray(t.multihashSize-t.digestSize),o=new i.Digest(t.multihashCode,t.digestSize,s,n);return[0===t.version?c.createV0(o):c.createV1(t.codec,o),e.subarray(t.size)]}static inspectBytes(e){let t=0;const r=()=>{const[r,i]=n.decode(e.subarray(t));return t+=i,r};let i=r(),s=d;if(18===i?(i=0,t=0):1===i&&(s=r()),0!==i&&1!==i)throw new RangeError("Invalid CID version "+i);const o=t,a=r(),c=r(),u=t+c;return{version:i,codec:s,multihashCode:a,digestSize:c,multihashSize:u-o,size:u}}static parse(e,t){const[r,n]=u(e,t),i=c.decode(n);return i._baseCache.set(r,e),i}}const u=(e,t)=>{switch(e[0]){case"Q":{const r=t||s.base58btc;return[s.base58btc.prefix,r.decode(`${s.base58btc.prefix}${e}`)]}case s.base58btc.prefix:{const r=t||s.base58btc;return[s.base58btc.prefix,r.decode(e)]}case o.base32.prefix:{const r=t||o.base32;return[o.base32.prefix,r.decode(e)]}default:if(null==t)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}},h=(e,t,r)=>{const{prefix:n}=r;if(n!==s.base58btc.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);const i=t.get(n);if(null==i){const i=r.encode(e).slice(1);return t.set(n,i),i}return i},l=(e,t,r)=>{const{prefix:n}=r,i=t.get(n);if(null==i){const i=r.encode(e);return t.set(n,i),i}return i},d=112,f=18,p=(e,t,r)=>{const i=n.encodingLength(e),s=i+n.encodingLength(t),o=new Uint8Array(s+r.byteLength);return n.encodeTo(e,o,0),n.encodeTo(t,o,i),o.set(r,s),o},g=Symbol.for("@ipld/js-cid/CID"),y={writable:!1,configurable:!1,enumerable:!0},b={writable:!1,enumerable:!1,configurable:!1},v=(e,t)=>{if(!e.test("0.0.0-dev"))throw new Error(t);console.warn(t)},m="CID.isCID(v) is deprecated and will be removed in the next major release.\nFollowing code pattern:\n\nif (CID.isCID(value)) {\n doSomethingWithCID(value)\n}\n\nIs replaced with:\n\nconst cid = CID.asCID(value)\nif (cid) {\n // Make sure to use cid instead of value\n doSomethingWithCID(cid)\n}\n";t.CID=c},function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(113),t),i(r(114),t)},function(e,t){},function(e,t,r){"use strict";r(11),r(15)},function(e,t,r){"use strict";r.d(t,"a",(function(){return n}));const n={waku:{publish:"waku_publish",subscribe:"waku_subscribe",subscription:"waku_subscription",unsubscribe:"waku_unsubscribe"},iridium:{publish:"iridium_publish",subscribe:"iridium_subscribe",subscription:"iridium_subscription",unsubscribe:"iridium_unsubscribe"}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.safeJsonParse=function(e){if("string"!=typeof e)throw new Error("Cannot safe json parse value of type "+typeof e);try{return JSON.parse(e)}catch(t){return e}},t.safeJsonStringify=function(e){return"string"==typeof e?e:JSON.stringify(e,(e,t)=>void 0===t?null:t)}},function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(128),t)},function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(129),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.PINO_CUSTOM_CONTEXT_KEY=t.PINO_LOGGER_DEFAULTS=void 0,t.PINO_LOGGER_DEFAULTS={level:"info"},t.PINO_CUSTOM_CONTEXT_KEY="custom_context"},function(e,t,r){"use strict";var n=r(67);r.d(t,"ISignClient",(function(){return n.a}));var i=r(68);r.d(t,"IEngine",(function(){return i.a}));var s=r(69);r.d(t,"IExpirer",(function(){return s.a}));r(70),r(71),r(72),r(73)},function(e,t,r){"use strict";r.d(t,"a",(function(){return s}));var n=r(5),i=r.n(n);i.a;class s{constructor(e){this.opts=e,this.protocol="wc",this.version=2}}},function(e,t,r){"use strict";r.d(t,"a",(function(){return i}));var n=r(5);n.EventEmitter;class i{constructor(e){this.client=e}}},function(e,t,r){"use strict";r.d(t,"a",(function(){return i}));var n=r(12);class i extends n.IEvents{constructor(e,t){super(),this.core=e,this.logger=t}}},function(e,t){},function(e,t){},function(e,t){},function(e,t){},function(e,t,r){"use strict";r.d(t,"a",(function(){return c})),r.d(t,"b",(function(){return u}));var n=r(37),i=r(20),s=r(2),o=r(4),a=r(17);function c(e=Object(i.randomBytes)(o.j)){return n.generateKeyPairFromSeed(e)}async function u(e,t,r,i,c=Object(s.fromMiliseconds)(Date.now())){const u={alg:o.h,typ:o.i},h={iss:Object(a.d)(i.publicKey),sub:e,aud:t,iat:c,exp:c+r},l=Object(a.c)({header:u,payload:h}),d=n.sign(i.secretKey,l);return Object(a.e)({header:u,payload:h,signature:d})}},function(e,t){},function(e,t,r){"use strict";r.d(t,"a",(function(){return i})),r.d(t,"b",(function(){return s})),r.d(t,"c",(function(){return o})),r.d(t,"d",(function(){return a})),r.d(t,"e",(function(){return c})),r.d(t,"f",(function(){return u})),r.d(t,"g",(function(){return h}));var n=r(12);class i extends n.IEvents{constructor(e){super(),this.opts=e,this.protocol="wc",this.version=2}}class s extends n.IEvents{constructor(e,t){super(),this.core=e,this.logger=t,this.records=new Map}}class o{constructor(e,t){this.logger=e,this.core=t}}class a extends n.IEvents{constructor(e,t){super(),this.relayer=e,this.logger=t}}class c extends n.IEvents{constructor(e){super()}}class u{constructor(e,t,r,n){this.core=e,this.logger=t,this.name=r}}class h extends n.IEvents{constructor(e,t){super(),this.relayer=e,this.logger=t}}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(88),i=r(14),s=function(){function e(e,t,r,i){void 0===r&&(r=new Uint8Array(0)),this._counter=new Uint8Array(1),this._hash=e,this._info=i;var s=n.hmac(this._hash,r,t);this._hmac=new n.HMAC(e,s),this._buffer=new Uint8Array(this._hmac.digestLength),this._bufpos=this._buffer.length}return e.prototype._fillBuffer=function(){this._counter[0]++;var e=this._counter[0];if(0===e)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},e.prototype.expand=function(e){for(var t=new Uint8Array(e),r=0;r<t.length;r++)this._bufpos===this._buffer.length&&this._fillBuffer(),t[r]=this._buffer[this._bufpos++];return t},e.prototype.clean=function(){this._hmac.clean(),i.wipe(this._buffer),i.wipe(this._counter),this._bufpos=0},e}();t.HKDF=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getWindowMetadata=void 0;const n=r(23);t.getWindowMetadata=function(){let e,t;try{e=n.getDocumentOrThrow(),t=n.getLocationOrThrow()}catch(e){return null}function r(...t){const r=e.getElementsByTagName("meta");for(let e=0;e<r.length;e++){const n=r[e],i=["itemprop","property","name"].map(e=>n.getAttribute(e)).filter(e=>!!e&&t.includes(e));if(i.length&&i){const e=n.getAttribute("content");if(e)return e}}return""}const i=function(){let t=r("name","og:site_name","og:title","twitter:title");return t||(t=e.title),t}();return{description:r("description","og:description","twitter:description","keywords"),url:t.origin,icons:function(){const r=e.getElementsByTagName("link"),n=[];for(let e=0;e<r.length;e++){const i=r[e],s=i.getAttribute("rel");if(s&&s.toLowerCase().indexOf("icon")>-1){const e=i.getAttribute("href");if(e)if(-1===e.toLowerCase().indexOf("https:")&&-1===e.toLowerCase().indexOf("http:")&&0!==e.indexOf("//")){let r=t.protocol+"//"+t.host;if(0===e.indexOf("/"))r+=e;else{const n=t.pathname.split("/");n.pop();r+=n.join("/")+"/"+e}n.push(r)}else if(0===e.indexOf("//")){const r=t.protocol+e;n.push(r)}else n.push(e)}}return n}(),name:i}}},function(e,t,r){"use strict";var n=r(59);r.o(n,"RELAY_JSONRPC")&&r.d(t,"RELAY_JSONRPC",(function(){return n.RELAY_JSONRPC}));r(60);var i=r(61);r.d(t,"RELAY_JSONRPC",(function(){return i.a}));r(15)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.KeyValueStorage=void 0;const n=r(30),i=n.__importDefault(r(123)),s=r(62),o=r(124);class a{constructor(){this.localStorage=i.default}getKeys(){return n.__awaiter(this,void 0,void 0,(function*(){return Object.keys(this.localStorage)}))}getEntries(){return n.__awaiter(this,void 0,void 0,(function*(){return Object.entries(this.localStorage).map(o.parseEntry)}))}getItem(e){return n.__awaiter(this,void 0,void 0,(function*(){const t=this.localStorage.getItem(e);if(null!==t)return s.safeJsonParse(t)}))}setItem(e,t){return n.__awaiter(this,void 0,void 0,(function*(){this.localStorage.setItem(e,s.safeJsonStringify(t))}))}removeItem(e){return n.__awaiter(this,void 0,void 0,(function*(){this.localStorage.removeItem(e)}))}}t.KeyValueStorage=a,t.default=a},function(e,t,r){(function(e,r){var n="[object Arguments]",i="[object Map]",s="[object Object]",o="[object Set]",a=/^\[object .+?Constructor\]$/,c=/^(?:0|[1-9]\d*)$/,u={};u["[object Float32Array]"]=u["[object Float64Array]"]=u["[object Int8Array]"]=u["[object Int16Array]"]=u["[object Int32Array]"]=u["[object Uint8Array]"]=u["[object Uint8ClampedArray]"]=u["[object Uint16Array]"]=u["[object Uint32Array]"]=!0,u[n]=u["[object Array]"]=u["[object ArrayBuffer]"]=u["[object Boolean]"]=u["[object DataView]"]=u["[object Date]"]=u["[object Error]"]=u["[object Function]"]=u[i]=u["[object Number]"]=u[s]=u["[object RegExp]"]=u[o]=u["[object String]"]=u["[object WeakMap]"]=!1;var h="object"==typeof e&&e&&e.Object===Object&&e,l="object"==typeof self&&self&&self.Object===Object&&self,d=h||l||Function("return this")(),f=t&&!t.nodeType&&t,p=f&&"object"==typeof r&&r&&!r.nodeType&&r,g=p&&p.exports===f,y=g&&h.process,b=function(){try{return y&&y.binding&&y.binding("util")}catch(e){}}(),v=b&&b.isTypedArray;function m(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}function _(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function w(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var E,O,S,I=Array.prototype,j=Function.prototype,R=Object.prototype,N=d["__core-js_shared__"],P=j.toString,A=R.hasOwnProperty,T=(E=/[^.]+$/.exec(N&&N.keys&&N.keys.IE_PROTO||""))?"Symbol(src)_1."+E:"",L=R.toString,x=RegExp("^"+P.call(A).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),U=g?d.Buffer:void 0,C=d.Symbol,M=d.Uint8Array,D=R.propertyIsEnumerable,z=I.splice,k=C?C.toStringTag:void 0,V=Object.getOwnPropertySymbols,H=U?U.isBuffer:void 0,K=(O=Object.keys,S=Object,function(e){return O(S(e))}),J=be(d,"DataView"),q=be(d,"Map"),B=be(d,"Promise"),F=be(d,"Set"),G=be(d,"WeakMap"),W=be(Object,"create"),Y=we(J),$=we(q),X=we(B),Z=we(F),Q=we(G),ee=C?C.prototype:void 0,te=ee?ee.valueOf:void 0;function re(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function ne(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function ie(e){var t=-1,r=null==e?0:e.length;for(this.clear();++t<r;){var n=e[t];this.set(n[0],n[1])}}function se(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new ie;++t<r;)this.add(e[t])}function oe(e){var t=this.__data__=new ne(e);this.size=t.size}function ae(e,t){var r=Se(e),n=!r&&Oe(e),i=!r&&!n&&Ie(e),s=!r&&!n&&!i&&Ae(e),o=r||n||i||s,a=o?function(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}(e.length,String):[],c=a.length;for(var u in e)!t&&!A.call(e,u)||o&&("length"==u||i&&("offset"==u||"parent"==u)||s&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||_e(u,c))||a.push(u);return a}function ce(e,t){for(var r=e.length;r--;)if(Ee(e[r][0],t))return r;return-1}function ue(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":k&&k in Object(e)?function(e){var t=A.call(e,k),r=e[k];try{e[k]=void 0;var n=!0}catch(e){}var i=L.call(e);n&&(t?e[k]=r:delete e[k]);return i}(e):function(e){return L.call(e)}(e)}function he(e){return Pe(e)&&ue(e)==n}function le(e,t,r,a,c){return e===t||(null==e||null==t||!Pe(e)&&!Pe(t)?e!=e&&t!=t:function(e,t,r,a,c,u){var h=Se(e),l=Se(t),d=h?"[object Array]":me(e),f=l?"[object Array]":me(t),p=(d=d==n?s:d)==s,g=(f=f==n?s:f)==s,y=d==f;if(y&&Ie(e)){if(!Ie(t))return!1;h=!0,p=!1}if(y&&!p)return u||(u=new oe),h||Ae(e)?pe(e,t,r,a,c,u):function(e,t,r,n,s,a,c){switch(r){case"[object DataView]":if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case"[object ArrayBuffer]":return!(e.byteLength!=t.byteLength||!a(new M(e),new M(t)));case"[object Boolean]":case"[object Date]":case"[object Number]":return Ee(+e,+t);case"[object Error]":return e.name==t.name&&e.message==t.message;case"[object RegExp]":case"[object String]":return e==t+"";case i:var u=_;case o:var h=1&n;if(u||(u=w),e.size!=t.size&&!h)return!1;var l=c.get(e);if(l)return l==t;n|=2,c.set(e,t);var d=pe(u(e),u(t),n,s,a,c);return c.delete(e),d;case"[object Symbol]":if(te)return te.call(e)==te.call(t)}return!1}(e,t,d,r,a,c,u);if(!(1&r)){var b=p&&A.call(e,"__wrapped__"),v=g&&A.call(t,"__wrapped__");if(b||v){var m=b?e.value():e,E=v?t.value():t;return u||(u=new oe),c(m,E,r,a,u)}}if(!y)return!1;return u||(u=new oe),function(e,t,r,n,i,s){var o=1&r,a=ge(e),c=a.length,u=ge(t).length;if(c!=u&&!o)return!1;var h=c;for(;h--;){var l=a[h];if(!(o?l in t:A.call(t,l)))return!1}var d=s.get(e);if(d&&s.get(t))return d==t;var f=!0;s.set(e,t),s.set(t,e);var p=o;for(;++h<c;){l=a[h];var g=e[l],y=t[l];if(n)var b=o?n(y,g,l,t,e,s):n(g,y,l,e,t,s);if(!(void 0===b?g===y||i(g,y,r,n,s):b)){f=!1;break}p||(p="constructor"==l)}if(f&&!p){var v=e.constructor,m=t.constructor;v==m||!("constructor"in e)||!("constructor"in t)||"function"==typeof v&&v instanceof v&&"function"==typeof m&&m instanceof m||(f=!1)}return s.delete(e),s.delete(t),f}(e,t,r,a,c,u)}(e,t,r,a,le,c))}function de(e){return!(!Ne(e)||function(e){return!!T&&T in e}(e))&&(je(e)?x:a).test(we(e))}function fe(e){if(r=(t=e)&&t.constructor,n="function"==typeof r&&r.prototype||R,t!==n)return K(e);var t,r,n,i=[];for(var s in Object(e))A.call(e,s)&&"constructor"!=s&&i.push(s);return i}function pe(e,t,r,n,i,s){var o=1&r,a=e.length,c=t.length;if(a!=c&&!(o&&c>a))return!1;var u=s.get(e);if(u&&s.get(t))return u==t;var h=-1,l=!0,d=2&r?new se:void 0;for(s.set(e,t),s.set(t,e);++h<a;){var f=e[h],p=t[h];if(n)var g=o?n(p,f,h,t,e,s):n(f,p,h,e,t,s);if(void 0!==g){if(g)continue;l=!1;break}if(d){if(!m(t,(function(e,t){if(o=t,!d.has(o)&&(f===e||i(f,e,r,n,s)))return d.push(t);var o}))){l=!1;break}}else if(f!==p&&!i(f,p,r,n,s)){l=!1;break}}return s.delete(e),s.delete(t),l}function ge(e){return function(e,t,r){var n=t(e);return Se(e)?n:function(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}(n,r(e))}(e,Te,ve)}function ye(e,t){var r,n,i=e.__data__;return("string"==(n=typeof(r=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==r:null===r)?i["string"==typeof t?"string":"hash"]:i.map}function be(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return de(r)?r:void 0}re.prototype.clear=function(){this.__data__=W?W(null):{},this.size=0},re.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},re.prototype.get=function(e){var t=this.__data__;if(W){var r=t[e];return"__lodash_hash_undefined__"===r?void 0:r}return A.call(t,e)?t[e]:void 0},re.prototype.has=function(e){var t=this.__data__;return W?void 0!==t[e]:A.call(t,e)},re.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=W&&void 0===t?"__lodash_hash_undefined__":t,this},ne.prototype.clear=function(){this.__data__=[],this.size=0},ne.prototype.delete=function(e){var t=this.__data__,r=ce(t,e);return!(r<0)&&(r==t.length-1?t.pop():z.call(t,r,1),--this.size,!0)},ne.prototype.get=function(e){var t=this.__data__,r=ce(t,e);return r<0?void 0:t[r][1]},ne.prototype.has=function(e){return ce(this.__data__,e)>-1},ne.prototype.set=function(e,t){var r=this.__data__,n=ce(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},ie.prototype.clear=function(){this.size=0,this.__data__={hash:new re,map:new(q||ne),string:new re}},ie.prototype.delete=function(e){var t=ye(this,e).delete(e);return this.size-=t?1:0,t},ie.prototype.get=function(e){return ye(this,e).get(e)},ie.prototype.has=function(e){return ye(this,e).has(e)},ie.prototype.set=function(e,t){var r=ye(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},se.prototype.add=se.prototype.push=function(e){return this.__data__.set(e,"__lodash_hash_undefined__"),this},se.prototype.has=function(e){return this.__data__.has(e)},oe.prototype.clear=function(){this.__data__=new ne,this.size=0},oe.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},oe.prototype.get=function(e){return this.__data__.get(e)},oe.prototype.has=function(e){return this.__data__.has(e)},oe.prototype.set=function(e,t){var r=this.__data__;if(r instanceof ne){var n=r.__data__;if(!q||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new ie(n)}return r.set(e,t),this.size=r.size,this};var ve=V?function(e){return null==e?[]:(e=Object(e),function(e,t){for(var r=-1,n=null==e?0:e.length,i=0,s=[];++r<n;){var o=e[r];t(o,r,e)&&(s[i++]=o)}return s}(V(e),(function(t){return D.call(e,t)})))}:function(){return[]},me=ue;function _e(e,t){return!!(t=null==t?9007199254740991:t)&&("number"==typeof e||c.test(e))&&e>-1&&e%1==0&&e<t}function we(e){if(null!=e){try{return P.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Ee(e,t){return e===t||e!=e&&t!=t}(J&&"[object DataView]"!=me(new J(new ArrayBuffer(1)))||q&&me(new q)!=i||B&&"[object Promise]"!=me(B.resolve())||F&&me(new F)!=o||G&&"[object WeakMap]"!=me(new G))&&(me=function(e){var t=ue(e),r=t==s?e.constructor:void 0,n=r?we(r):"";if(n)switch(n){case Y:return"[object DataView]";case $:return i;case X:return"[object Promise]";case Z:return o;case Q:return"[object WeakMap]"}return t});var Oe=he(function(){return arguments}())?he:function(e){return Pe(e)&&A.call(e,"callee")&&!D.call(e,"callee")},Se=Array.isArray;var Ie=H||function(){return!1};function je(e){if(!Ne(e))return!1;var t=ue(e);return"[object Function]"==t||"[object GeneratorFunction]"==t||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Re(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=9007199254740991}function Ne(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Pe(e){return null!=e&&"object"==typeof e}var Ae=v?function(e){return function(t){return e(t)}}(v):function(e){return Pe(e)&&Re(e.length)&&!!u[ue(e)]};function Te(e){return null!=(t=e)&&Re(t.length)&&!je(t)?ae(e):fe(e);var t}r.exports=function(e,t){return le(e,t)}}).call(this,r(31),r(133)(e))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getEthereumChainId=t.getRpcUrl=t.getRpcConfig=t.signerEvents=t.signerMethods=void 0;const n=r(30),i=r(5),s=r(40),o=r(135),a=r(0),c=r(134);function u(e){return{chains:(null==e?void 0:e.chainId)?["eip155:"+e.chainId]:[],methods:(null==e?void 0:e.methods)||[],events:(null==e?void 0:e.events)||[],rpcMap:(null==e?void 0:e.rpcMap)||void 0}}function h(e,t){let r;return t.rpcMap&&(r=t.rpcMap[l([e])]),r}function l(e){return Number(e[0].split(":")[1])}t.signerMethods=["eth_requestAccounts","eth_accounts","eth_chainId","eth_sendTransaction","eth_signTransaction","eth_sign","eth_signTypedData","personal_sign"],t.signerEvents=["chainChanged","accountsChanged"],t.getRpcConfig=u,t.getRpcUrl=h,t.getEthereumChainId=l;t.default=class{constructor(e){this.events=new i.EventEmitter,this.namespace="eip155",this.accounts=[],this.rpc=u(e),this.signer=this.setSignerProvider(null==e?void 0:e.client),this.chainId=l(this.rpc.chains),this.http=this.setHttpProvider(this.chainId),this.registerEventListeners()}request(e){return n.__awaiter(this,void 0,void 0,(function*(){switch(e.method){case"eth_requestAccounts":return yield 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(void 0===this.http)throw new Error(`Cannot request JSON-RPC method (${e.method}) without provided rpc url`);return this.http.request(e)}))}sendAsync(e,t){this.request(e).then(e=>t(null,e)).catch(e=>t(e,void 0))}get connected(){return this.signer.connection.connected}get connecting(){return this.signer.connection.connecting}enable(){return n.__awaiter(this,void 0,void 0,(function*(){return yield this.request({method:"eth_requestAccounts"})}))}connect(){return n.__awaiter(this,void 0,void 0,(function*(){yield this.signer.connect()}))}disconnect(){return n.__awaiter(this,void 0,void 0,(function*(){yield this.signer.disconnect()}))}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}removeListener(e,t){this.events.removeListener(e,t)}off(e,t){this.events.off(e,t)}get isWalletConnect(){return!0}registerEventListeners(){this.signer.on("connect",()=>{const e=this.signer.connection.chains;e&&e.length&&this.setChainIds(e);const t=this.signer.connection.accounts;t&&t.length&&this.setAccounts(t)}),this.signer.connection.on(c.SIGNER_EVENTS.created,e=>{const t=a.getChainsFromNamespaces(e.namespaces,[this.namespace]);this.setChainIds(t);const r=a.getAccountsFromNamespaces(e.namespaces,[this.namespace]);this.setAccounts(r)}),this.signer.connection.on(c.SIGNER_EVENTS.updated,e=>{const t=a.getChainsFromNamespaces(e.namespaces,[this.namespace]);this.setChainIds(t);const r=a.getAccountsFromNamespaces(e.namespaces,[this.namespace]);r!==this.accounts&&this.setAccounts(r)}),this.signer.connection.on(c.SIGNER_EVENTS.event,e=>{if(!this.rpc.chains.includes(e.chainId))return;const{event:t}=e;"accountsChanged"===t.name?(this.accounts=t.data,this.events.emit("accountsChanged",this.accounts)):"chainChanged"===t.name?this.setChainId(t.data):this.events.emit(t.name,t.data)}),this.signer.on("disconnect",()=>{this.events.emit("disconnect")}),this.events.on("chainChanged",e=>this.setHttpProvider(e))}setSignerProvider(e){const t=new c.SignerConnection({requiredNamespaces:{[this.namespace]:{chains:this.rpc.chains,methods:this.rpc.methods,events:this.rpc.events}},client:e});return new s.JsonRpcProvider(t)}setHttpProvider(e){const t=h(`${this.namespace}:${e}`,this.rpc);if(void 0===t)return;return new s.JsonRpcProvider(new o.HttpConnection(t))}isCompatibleChainId(e){return"string"==typeof e&&e.startsWith(this.namespace+":")}formatChainId(e){return`${this.namespace}:${e}`}parseChainId(e){return Number(e.split(":")[1])}setChainIds(e){const t=e.filter(e=>this.isCompatibleChainId(e)).map(e=>this.parseChainId(e)).filter(e=>e!==this.chainId);t.length&&(this.chainId=t[0],this.events.emit("chainChanged",this.chainId))}setChainId(e){if(this.isCompatibleChainId(e)){const t=this.parseChainId(e);this.chainId=t,this.events.emit("chainChanged",this.chainId)}}parseAccountId(e){const[t,r,n]=e.split(":");return{chainId:`${t}:${r}`,address:n}}setAccounts(e){this.accounts=e.filter(e=>this.parseChainId(this.parseAccountId(e).chainId)===this.chainId).map(e=>this.parseAccountId(e).address),this.events.emit("accountsChanged",this.accounts)}}},function(e,t,r){"use strict";(function(e){function r(){return(null==e?void 0:e.crypto)||(null==e?void 0:e.msCrypto)||{}}function n(){const e=r();return e.subtle||e.webkitSubtle}Object.defineProperty(t,"__esModule",{value:!0}),t.isBrowserCryptoAvailable=t.getSubtleCrypto=t.getBrowerCrypto=void 0,t.getBrowerCrypto=r,t.getSubtleCrypto=n,t.isBrowserCryptoAvailable=function(){return!!r()&&!!n()}}).call(this,r(31))},function(e,t,r){"use strict";(function(e){function r(){return"undefined"==typeof document&&"undefined"!=typeof navigator&&"ReactNative"===navigator.product}function n(){return void 0!==e&&void 0!==e.versions&&void 0!==e.versions.node}Object.defineProperty(t,"__esModule",{value:!0}),t.isBrowser=t.isNode=t.isReactNative=void 0,t.isReactNative=r,t.isNode=n,t.isBrowser=function(){return!r()&&!n()}}).call(this,r(45))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(25),i=r(14);function s(e,t,r){for(var i=1634760805,s=857760878,o=2036477234,a=1797285236,c=r[3]<<24|r[2]<<16|r[1]<<8|r[0],u=r[7]<<24|r[6]<<16|r[5]<<8|r[4],h=r[11]<<24|r[10]<<16|r[9]<<8|r[8],l=r[15]<<24|r[14]<<16|r[13]<<8|r[12],d=r[19]<<24|r[18]<<16|r[17]<<8|r[16],f=r[23]<<24|r[22]<<16|r[21]<<8|r[20],p=r[27]<<24|r[26]<<16|r[25]<<8|r[24],g=r[31]<<24|r[30]<<16|r[29]<<8|r[28],y=t[3]<<24|t[2]<<16|t[1]<<8|t[0],b=t[7]<<24|t[6]<<16|t[5]<<8|t[4],v=t[11]<<24|t[10]<<16|t[9]<<8|t[8],m=t[15]<<24|t[14]<<16|t[13]<<8|t[12],_=i,w=s,E=o,O=a,S=c,I=u,j=h,R=l,N=d,P=f,A=p,T=g,L=y,x=b,U=v,C=m,M=0;M<20;M+=2)S=(S^=N=N+(L=(L^=_=_+S|0)>>>16|L<<16)|0)>>>20|S<<12,I=(I^=P=P+(x=(x^=w=w+I|0)>>>16|x<<16)|0)>>>20|I<<12,j=(j^=A=A+(U=(U^=E=E+j|0)>>>16|U<<16)|0)>>>20|j<<12,R=(R^=T=T+(C=(C^=O=O+R|0)>>>16|C<<16)|0)>>>20|R<<12,j=(j^=A=A+(U=(U^=E=E+j|0)>>>24|U<<8)|0)>>>25|j<<7,R=(R^=T=T+(C=(C^=O=O+R|0)>>>24|C<<8)|0)>>>25|R<<7,I=(I^=P=P+(x=(x^=w=w+I|0)>>>24|x<<8)|0)>>>25|I<<7,S=(S^=N=N+(L=(L^=_=_+S|0)>>>24|L<<8)|0)>>>25|S<<7,I=(I^=A=A+(C=(C^=_=_+I|0)>>>16|C<<16)|0)>>>20|I<<12,j=(j^=T=T+(L=(L^=w=w+j|0)>>>16|L<<16)|0)>>>20|j<<12,R=(R^=N=N+(x=(x^=E=E+R|0)>>>16|x<<16)|0)>>>20|R<<12,S=(S^=P=P+(U=(U^=O=O+S|0)>>>16|U<<16)|0)>>>20|S<<12,R=(R^=N=N+(x=(x^=E=E+R|0)>>>24|x<<8)|0)>>>25|R<<7,S=(S^=P=P+(U=(U^=O=O+S|0)>>>24|U<<8)|0)>>>25|S<<7,j=(j^=T=T+(L=(L^=w=w+j|0)>>>24|L<<8)|0)>>>25|j<<7,I=(I^=A=A+(C=(C^=_=_+I|0)>>>24|C<<8)|0)>>>25|I<<7;n.writeUint32LE(_+i|0,e,0),n.writeUint32LE(w+s|0,e,4),n.writeUint32LE(E+o|0,e,8),n.writeUint32LE(O+a|0,e,12),n.writeUint32LE(S+c|0,e,16),n.writeUint32LE(I+u|0,e,20),n.writeUint32LE(j+h|0,e,24),n.writeUint32LE(R+l|0,e,28),n.writeUint32LE(N+d|0,e,32),n.writeUint32LE(P+f|0,e,36),n.writeUint32LE(A+p|0,e,40),n.writeUint32LE(T+g|0,e,44),n.writeUint32LE(L+y|0,e,48),n.writeUint32LE(x+b|0,e,52),n.writeUint32LE(U+v|0,e,56),n.writeUint32LE(C+m|0,e,60)}function o(e,t,r,n,o){if(void 0===o&&(o=0),32!==e.length)throw new Error("ChaCha: key size must be 32 bytes");if(n.length<r.length)throw new Error("ChaCha: destination is shorter than source");var c,u;if(0===o){if(8!==t.length&&12!==t.length)throw new Error("ChaCha nonce must be 8 or 12 bytes");u=(c=new Uint8Array(16)).length-t.length,c.set(t,u)}else{if(16!==t.length)throw new Error("ChaCha nonce with counter must be 16 bytes");c=t,u=o}for(var h=new Uint8Array(64),l=0;l<r.length;l+=64){s(h,c,e);for(var d=l;d<l+64&&d<r.length;d++)n[d]=r[d]^h[d-l];a(c,0,u)}return i.wipe(h),0===o&&i.wipe(c),n}function a(e,t,r){for(var n=1;r--;)n=n+(255&e[t])|0,e[t]=255&n,n>>>=8,t++;if(n>0)throw new Error("ChaCha: counter overflow")}t.streamXOR=o,t.stream=function(e,t,r,n){return void 0===n&&(n=0),i.wipe(r),o(e,t,r,r,n)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.mul=Math.imul||function(e,t){var r=65535&e,n=65535&t;return r*n+((e>>>16&65535)*n+r*(t>>>16&65535)<<16>>>0)|0},t.add=function(e,t){return e+t|0},t.sub=function(e,t){return e-t|0},t.rotl=function(e,t){return e<<t|e>>>32-t},t.rotr=function(e,t){return e<<32-t|e>>>t},t.isInteger=Number.isInteger||function(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e},t.MAX_SAFE_INTEGER=9007199254740991,t.isSafeInteger=function(e){return t.isInteger(e)&&e>=-t.MAX_SAFE_INTEGER&&e<=t.MAX_SAFE_INTEGER}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(38),i=r(14);t.DIGEST_LENGTH=16;var s=function(){function e(e){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 r=e[0]|e[1]<<8;this._r[0]=8191&r;var n=e[2]|e[3]<<8;this._r[1]=8191&(r>>>13|n<<3);var i=e[4]|e[5]<<8;this._r[2]=7939&(n>>>10|i<<6);var s=e[6]|e[7]<<8;this._r[3]=8191&(i>>>7|s<<9);var o=e[8]|e[9]<<8;this._r[4]=255&(s>>>4|o<<12),this._r[5]=o>>>1&8190;var a=e[10]|e[11]<<8;this._r[6]=8191&(o>>>14|a<<2);var c=e[12]|e[13]<<8;this._r[7]=8065&(a>>>11|c<<5);var u=e[14]|e[15]<<8;this._r[8]=8191&(c>>>8|u<<8),this._r[9]=u>>>5&127,this._pad[0]=e[16]|e[17]<<8,this._pad[1]=e[18]|e[19]<<8,this._pad[2]=e[20]|e[21]<<8,this._pad[3]=e[22]|e[23]<<8,this._pad[4]=e[24]|e[25]<<8,this._pad[5]=e[26]|e[27]<<8,this._pad[6]=e[28]|e[29]<<8,this._pad[7]=e[30]|e[31]<<8}return e.prototype._blocks=function(e,t,r){for(var n=this._fin?0:2048,i=this._h[0],s=this._h[1],o=this._h[2],a=this._h[3],c=this._h[4],u=this._h[5],h=this._h[6],l=this._h[7],d=this._h[8],f=this._h[9],p=this._r[0],g=this._r[1],y=this._r[2],b=this._r[3],v=this._r[4],m=this._r[5],_=this._r[6],w=this._r[7],E=this._r[8],O=this._r[9];r>=16;){var S=e[t+0]|e[t+1]<<8;i+=8191&S;var I=e[t+2]|e[t+3]<<8;s+=8191&(S>>>13|I<<3);var j=e[t+4]|e[t+5]<<8;o+=8191&(I>>>10|j<<6);var R=e[t+6]|e[t+7]<<8;a+=8191&(j>>>7|R<<9);var N=e[t+8]|e[t+9]<<8;c+=8191&(R>>>4|N<<12),u+=N>>>1&8191;var P=e[t+10]|e[t+11]<<8;h+=8191&(N>>>14|P<<2);var A=e[t+12]|e[t+13]<<8;l+=8191&(P>>>11|A<<5);var T=e[t+14]|e[t+15]<<8,L=0,x=L;x+=i*p,x+=s*(5*O),x+=o*(5*E),x+=a*(5*w),L=(x+=c*(5*_))>>>13,x&=8191,x+=u*(5*m),x+=h*(5*v),x+=l*(5*b),x+=(d+=8191&(A>>>8|T<<8))*(5*y);var U=L+=(x+=(f+=T>>>5|n)*(5*g))>>>13;U+=i*g,U+=s*p,U+=o*(5*O),U+=a*(5*E),L=(U+=c*(5*w))>>>13,U&=8191,U+=u*(5*_),U+=h*(5*m),U+=l*(5*v),U+=d*(5*b),L+=(U+=f*(5*y))>>>13,U&=8191;var C=L;C+=i*y,C+=s*g,C+=o*p,C+=a*(5*O),L=(C+=c*(5*E))>>>13,C&=8191,C+=u*(5*w),C+=h*(5*_),C+=l*(5*m),C+=d*(5*v);var M=L+=(C+=f*(5*b))>>>13;M+=i*b,M+=s*y,M+=o*g,M+=a*p,L=(M+=c*(5*O))>>>13,M&=8191,M+=u*(5*E),M+=h*(5*w),M+=l*(5*_),M+=d*(5*m);var D=L+=(M+=f*(5*v))>>>13;D+=i*v,D+=s*b,D+=o*y,D+=a*g,L=(D+=c*p)>>>13,D&=8191,D+=u*(5*O),D+=h*(5*E),D+=l*(5*w),D+=d*(5*_);var z=L+=(D+=f*(5*m))>>>13;z+=i*m,z+=s*v,z+=o*b,z+=a*y,L=(z+=c*g)>>>13,z&=8191,z+=u*p,z+=h*(5*O),z+=l*(5*E),z+=d*(5*w);var k=L+=(z+=f*(5*_))>>>13;k+=i*_,k+=s*m,k+=o*v,k+=a*b,L=(k+=c*y)>>>13,k&=8191,k+=u*g,k+=h*p,k+=l*(5*O),k+=d*(5*E);var V=L+=(k+=f*(5*w))>>>13;V+=i*w,V+=s*_,V+=o*m,V+=a*v,L=(V+=c*b)>>>13,V&=8191,V+=u*y,V+=h*g,V+=l*p,V+=d*(5*O);var H=L+=(V+=f*(5*E))>>>13;H+=i*E,H+=s*w,H+=o*_,H+=a*m,L=(H+=c*v)>>>13,H&=8191,H+=u*b,H+=h*y,H+=l*g,H+=d*p;var K=L+=(H+=f*(5*O))>>>13;K+=i*O,K+=s*E,K+=o*w,K+=a*_,L=(K+=c*m)>>>13,K&=8191,K+=u*v,K+=h*b,K+=l*y,K+=d*g,i=x=8191&(L=(L=((L+=(K+=f*p)>>>13)<<2)+L|0)+(x&=8191)|0),s=U+=L>>>=13,o=C&=8191,a=M&=8191,c=D&=8191,u=z&=8191,h=k&=8191,l=V&=8191,d=H&=8191,f=K&=8191,t+=16,r-=16}this._h[0]=i,this._h[1]=s,this._h[2]=o,this._h[3]=a,this._h[4]=c,this._h[5]=u,this._h[6]=h,this._h[7]=l,this._h[8]=d,this._h[9]=f},e.prototype.finish=function(e,t){void 0===t&&(t=0);var r,n,i,s,o=new Uint16Array(10);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(r=this._h[1]>>>13,this._h[1]&=8191,s=2;s<10;s++)this._h[s]+=r,r=this._h[s]>>>13,this._h[s]&=8191;for(this._h[0]+=5*r,r=this._h[0]>>>13,this._h[0]&=8191,this._h[1]+=r,r=this._h[1]>>>13,this._h[1]&=8191,this._h[2]+=r,o[0]=this._h[0]+5,r=o[0]>>>13,o[0]&=8191,s=1;s<10;s++)o[s]=this._h[s]+r,r=o[s]>>>13,o[s]&=8191;for(o[9]-=8192,n=(1^r)-1,s=0;s<10;s++)o[s]&=n;for(n=~n,s=0;s<10;s++)this._h[s]=this._h[s]&n|o[s];for(this._h[0]=65535&(this._h[0]|this._h[1]<<13),this._h[1]=65535&(this._h[1]>>>3|this._h[2]<<10),this._h[2]=65535&(this._h[2]>>>6|this._h[3]<<7),this._h[3]=65535&(this._h[3]>>>9|this._h[4]<<4),this._h[4]=65535&(this._h[4]>>>12|this._h[5]<<1|this._h[6]<<14),this._h[5]=65535&(this._h[6]>>>2|this._h[7]<<11),this._h[6]=65535&(this._h[7]>>>5|this._h[8]<<8),this._h[7]=65535&(this._h[8]>>>8|this._h[9]<<5),i=this._h[0]+this._pad[0],this._h[0]=65535&i,s=1;s<8;s++)i=(this._h[s]+this._pad[s]|0)+(i>>>16)|0,this._h[s]=65535&i;return e[t+0]=this._h[0]>>>0,e[t+1]=this._h[0]>>>8,e[t+2]=this._h[1]>>>0,e[t+3]=this._h[1]>>>8,e[t+4]=this._h[2]>>>0,e[t+5]=this._h[2]>>>8,e[t+6]=this._h[3]>>>0,e[t+7]=this._h[3]>>>8,e[t+8]=this._h[4]>>>0,e[t+9]=this._h[4]>>>8,e[t+10]=this._h[5]>>>0,e[t+11]=this._h[5]>>>8,e[t+12]=this._h[6]>>>0,e[t+13]=this._h[6]>>>8,e[t+14]=this._h[7]>>>0,e[t+15]=this._h[7]>>>8,this._finished=!0,this},e.prototype.update=function(e){var t,r=0,n=e.length;if(this._leftover){(t=16-this._leftover)>n&&(t=n);for(var i=0;i<t;i++)this._buffer[this._leftover+i]=e[r+i];if(n-=t,r+=t,this._leftover+=t,this._leftover<16)return this;this._blocks(this._buffer,0,16),this._leftover=0}if(n>=16&&(t=n-n%16,this._blocks(e,r,t),r+=t,n-=t),n){for(i=0;i<n;i++)this._buffer[this._leftover+i]=e[r+i];this._leftover+=n}return this},e.prototype.digest=function(){if(this._finished)throw new Error("Poly1305 was finished");var e=new Uint8Array(16);return this.finish(e),e},e.prototype.clean=function(){return i.wipe(this._buffer),i.wipe(this._r),i.wipe(this._h),i.wipe(this._pad),this._leftover=0,this._fin=0,this._finished=!0,this},e}();t.Poly1305=s,t.oneTimeAuth=function(e,t){var r=new s(e);r.update(t);var n=r.digest();return r.clean(),n},t.equal=function(e,r){return e.length===t.DIGEST_LENGTH&&r.length===t.DIGEST_LENGTH&&n.equal(e,r)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(89),i=r(38),s=r(14),o=function(){function e(e,t){this._finished=!1,this._inner=new e,this._outer=new e,this.blockSize=this._outer.blockSize,this.digestLength=this._outer.digestLength;var r=new Uint8Array(this.blockSize);t.length>this.blockSize?this._inner.update(t).finish(r).clean():r.set(t);for(var i=0;i<r.length;i++)r[i]^=54;this._inner.update(r);for(i=0;i<r.length;i++)r[i]^=106;this._outer.update(r),n.isSerializableHash(this._inner)&&n.isSerializableHash(this._outer)&&(this._innerKeyedState=this._inner.saveState(),this._outerKeyedState=this._outer.saveState()),s.wipe(r)}return e.prototype.reset=function(){if(!n.isSerializableHash(this._inner)||!n.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},e.prototype.clean=function(){n.isSerializableHash(this._inner)&&this._inner.cleanSavedState(this._innerKeyedState),n.isSerializableHash(this._outer)&&this._outer.cleanSavedState(this._outerKeyedState),this._inner.clean(),this._outer.clean()},e.prototype.update=function(e){return this._inner.update(e),this},e.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)},e.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},e.prototype.saveState=function(){if(!n.isSerializableHash(this._inner))throw new Error("hmac: can't saveState() because hash doesn't implement it");return this._inner.saveState()},e.prototype.restoreState=function(e){if(!n.isSerializableHash(this._inner)||!n.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},e.prototype.cleanSavedState=function(e){if(!n.isSerializableHash(this._inner))throw new Error("hmac: can't cleanSavedState() because hash doesn't implement it");this._inner.cleanSavedState(e)},e}();t.HMAC=o,t.hmac=function(e,t,r){var n=new o(e,t);n.update(r);var i=n.digest();return n.clean(),i},t.equal=i.equal},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isSerializableHash=function(e){return void 0!==e.saveState&&void 0!==e.restoreState&&void 0!==e.cleanSavedState}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(91),i=r(92),s=function(){function e(){return this.isAvailable=!1,this.name="",this._source=new n.BrowserRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Browser")):(this._source=new i.NodeRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Node")):void 0)}return e.prototype.randomBytes=function(e){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(e)},e}();t.SystemRandomSource=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=function(){function e(){this.isAvailable=!1,this.isInstantiated=!1;var e="undefined"!=typeof self?self.crypto||self.msCrypto:null;e&&e.getRandomValues&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}return e.prototype.randomBytes=function(e){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");for(var t=new Uint8Array(e),r=0;r<t.length;r+=65536)this._crypto.getRandomValues(t.subarray(r,r+Math.min(t.length-r,65536)));return t},e}();t.BrowserRandomSource=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(14),i=function(){function e(){this.isAvailable=!1,this.isInstantiated=!1;var e=r(93);e&&e.randomBytes&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}return e.prototype.randomBytes=function(e){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");var t=this._crypto.randomBytes(e);if(t.length!==e)throw new Error("NodeRandomSource: got fewer bytes than requested");for(var r=new Uint8Array(e),i=0;i<r.length;i++)r[i]=t[i];return n.wipe(t),r},e}();t.NodeRandomSource=i},function(e,t){},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(95),i=r(97),s=r(98),o=r(99),a=r(100),c=r(55),u=r(101),h=r(56),l=r(102),d=r(103),f=r(104),p=r(106),g=r(107),y=r(108);r(109);var b=r(57),v=r(39),m=r(26),_=r(32),w=r(18);const E={...n,...i,...s,...o,...a,...c,...u,...h,...l,...d},O={...f,...p},S={raw:g,json:y};t.CID=b.CID,t.hasher=v,t.digest=m,t.varint=_,t.bytes=w,t.bases=E,t.codecs=S,t.hashes=O},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16),i=r(18);const s=n.from({prefix:"\0",name:"identity",encode:e=>i.toString(e),decode:e=>i.fromString(e)});t.identity=s},function(e,t,r){"use strict";var n=function(e,t){if(e.length>=255)throw new TypeError("Alphabet too long");for(var r=new Uint8Array(256),n=0;n<r.length;n++)r[n]=255;for(var i=0;i<e.length;i++){var s=e.charAt(i),o=s.charCodeAt(0);if(255!==r[o])throw new TypeError(s+" is ambiguous");r[o]=i}var a=e.length,c=e.charAt(0),u=Math.log(a)/Math.log(256),h=Math.log(256)/Math.log(a);function l(e){if("string"!=typeof e)throw new TypeError("Expected String");if(0===e.length)return new Uint8Array;var t=0;if(" "!==e[t]){for(var n=0,i=0;e[t]===c;)n++,t++;for(var s=(e.length-t)*u+1>>>0,o=new Uint8Array(s);e[t];){var h=r[e.charCodeAt(t)];if(255===h)return;for(var l=0,d=s-1;(0!==h||l<i)&&-1!==d;d--,l++)h+=a*o[d]>>>0,o[d]=h%256>>>0,h=h/256>>>0;if(0!==h)throw new Error("Non-zero carry");i=l,t++}if(" "!==e[t]){for(var f=s-i;f!==s&&0===o[f];)f++;for(var p=new Uint8Array(n+(s-f)),g=n;f!==s;)p[g++]=o[f++];return p}}}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw new TypeError("Expected Uint8Array");if(0===t.length)return"";for(var r=0,n=0,i=0,s=t.length;i!==s&&0===t[i];)i++,r++;for(var o=(s-i)*h+1>>>0,u=new Uint8Array(o);i!==s;){for(var l=t[i],d=0,f=o-1;(0!==l||d<n)&&-1!==f;f--,d++)l+=256*u[f]>>>0,u[f]=l%a>>>0,l=l/a>>>0;if(0!==l)throw new Error("Non-zero carry");n=d,i++}for(var p=o-n;p!==o&&0===u[p];)p++;for(var g=c.repeat(r);p<o;++p)g+=e.charAt(u[p]);return g},decodeUnsafe:l,decode:function(e){var r=l(e);if(r)return r;throw new Error(`Non-${t} character`)}}};e.exports=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(16).rfc4648({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});t.base2=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(16).rfc4648({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});t.base8=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(16).baseX({prefix:"9",name:"base10",alphabet:"0123456789"});t.base10=n},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16);const i=n.rfc4648({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),s=n.rfc4648({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});t.base16=i,t.base16upper=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16);const i=n.baseX({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),s=n.baseX({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});t.base36=i,t.base36upper=s},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16);const i=n.rfc4648({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),s=n.rfc4648({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),o=n.rfc4648({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),a=n.rfc4648({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});t.base64=i,t.base64pad=s,t.base64url=o,t.base64urlpad=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(16);const i=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),s=i.reduce((e,t,r)=>(e[r]=t,e),[]),o=i.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);const a=n.from({prefix:"🚀",name:"base256emoji",encode:function(e){return e.reduce((e,t)=>e+=s[t],"")},decode:function(e){const t=[];for(const r of e){const e=o[r.codePointAt(0)];if(void 0===e)throw new Error("Non-base256emoji character: "+r);t.push(e)}return new Uint8Array(t)}});t.base256emoji=a},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(39);const i=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),s=n.from({name:"sha2-256",code:18,encode:i("SHA-256")}),o=n.from({name:"sha2-512",code:19,encode:i("SHA-512")});t.sha256=s,t.sha512=o},function(e,t,r){"use strict";var n=function e(t,r,n){r=r||[];var s=n=n||0;for(;t>=i;)r[n++]=255&t|128,t/=128;for(;-128&t;)r[n++]=255&t|128,t>>>=7;return r[n]=0|t,e.bytes=n-s+1,r},i=Math.pow(2,31);var s=function e(t,r){var n,i=0,s=0,o=r=r||0,a=t.length;do{if(o>=a)throw e.bytes=0,new RangeError("Could not decode varint");n=t[o++],i+=s<28?(127&n)<<s:(127&n)*Math.pow(2,s),s+=7}while(n>=128);return e.bytes=o-r,i};var o=Math.pow(2,7),a=Math.pow(2,14),c=Math.pow(2,21),u=Math.pow(2,28),h=Math.pow(2,35),l=Math.pow(2,42),d=Math.pow(2,49),f=Math.pow(2,56),p=Math.pow(2,63),g={encode:n,decode:s,encodingLength:function(e){return e<o?1:e<a?2:e<c?3:e<u?4:e<h?5:e<l?6:e<d?7:e<f?8:e<p?9:10}};e.exports=g},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(18),i=r(26);const s=n.coerce,o={code:0,name:"identity",encode:s,digest:e=>i.create(0,s(e))};t.identity=o},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(18);t.code=85,t.decode=e=>n.coerce(e),t.encode=e=>n.coerce(e),t.name="raw"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=new TextEncoder,i=new TextDecoder;t.code=512,t.decode=e=>JSON.parse(i.decode(e)),t.encode=e=>n.encode(JSON.stringify(e)),t.name="json"},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(57),i=r(32),s=r(18),o=r(39),a=r(26);t.CID=n.CID,t.varint=i,t.bytes=s,t.hasher=o,t.digest=a},function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(111),t),i(r(112),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.delay=void 0,t.delay=function(e){return new Promise(t=>{setTimeout(()=>{t(!0)},e)})}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fromMiliseconds=t.toMiliseconds=void 0;const n=r(58);t.toMiliseconds=function(e){return e*n.ONE_THOUSAND},t.fromMiliseconds=function(e){return Math.floor(e/n.ONE_THOUSAND)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ONE_THOUSAND=t.ONE_HUNDRED=void 0,t.ONE_HUNDRED=100,t.ONE_THOUSAND=1e3},function(e,t,r){"use strict";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=5*t.ONE_MINUTE,t.TEN_MINUTES=10*t.ONE_MINUTE,t.THIRTY_MINUTES=30*t.ONE_MINUTE,t.SIXTY_MINUTES=60*t.ONE_MINUTE,t.ONE_HOUR=t.SIXTY_MINUTES,t.THREE_HOURS=3*t.ONE_HOUR,t.SIX_HOURS=6*t.ONE_HOUR,t.TWELVE_HOURS=12*t.ONE_HOUR,t.TWENTY_FOUR_HOURS=24*t.ONE_HOUR,t.ONE_DAY=t.TWENTY_FOUR_HOURS,t.THREE_DAYS=3*t.ONE_DAY,t.FIVE_DAYS=5*t.ONE_DAY,t.SEVEN_DAYS=7*t.ONE_DAY,t.THIRTY_DAYS=30*t.ONE_DAY,t.ONE_WEEK=t.SEVEN_DAYS,t.TWO_WEEKS=2*t.ONE_WEEK,t.THREE_WEEKS=3*t.ONE_WEEK,t.FOUR_WEEKS=4*t.ONE_WEEK,t.ONE_YEAR=365*t.ONE_DAY},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Watch=void 0;class n{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 t=this.get(e);if(void 0!==t.elapsed)throw new Error("Watch already stopped for label: "+e);const r=Date.now()-t.started;this.timestamps.set(e,{started:t.started,elapsed:r})}get(e){const t=this.timestamps.get(e);if(void 0===t)throw new Error("No timestamp found for label: "+e);return t}elapsed(e){const t=this.get(e);return t.elapsed||Date.now()-t.started}}t.Watch=n,t.default=n},function(e,t,r){"use strict";var n=this&&this.__createBinding||(Object.create?function(e,t,r,n){void 0===n&&(n=r),Object.defineProperty(e,n,{enumerable:!0,get:function(){return t[r]}})}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]}),i=this&&this.__exportStar||function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||n(t,e,r)};Object.defineProperty(t,"__esModule",{value:!0}),i(r(117),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IWatch=void 0;t.IWatch=class{}},function(e,t,r){"use strict";e.exports=e=>encodeURIComponent(e).replace(/[!'()*]/g,e=>"%"+e.charCodeAt(0).toString(16).toUpperCase())},function(e,t,r){"use strict";var n=new RegExp("%[a-f0-9]{2}","gi"),i=new RegExp("(%[a-f0-9]{2})+","gi");function s(e,t){try{return decodeURIComponent(e.join(""))}catch(e){}if(1===e.length)return e;t=t||1;var r=e.slice(0,t),n=e.slice(t);return Array.prototype.concat.call([],s(r),s(n))}function o(e){try{return decodeURIComponent(e)}catch(i){for(var t=e.match(n),r=1;r<t.length;r++)t=(e=s(t,r).join("")).match(n);return e}}e.exports=function(e){if("string"!=typeof e)throw new TypeError("Expected `encodedURI` to be of type `string`, got `"+typeof e+"`");try{return e=e.replace(/\+/g," "),decodeURIComponent(e)}catch(t){return function(e){for(var t={"%FE%FF":"��","%FF%FE":"��"},r=i.exec(e);r;){try{t[r[0]]=decodeURIComponent(r[0])}catch(e){var n=o(r[0]);n!==r[0]&&(t[r[0]]=n)}r=i.exec(e)}t["%C2"]="�";for(var s=Object.keys(t),a=0;a<s.length;a++){var c=s[a];e=e.replace(new RegExp(c,"g"),t[c])}return e}(e)}}},function(e,t,r){"use strict";e.exports=(e,t)=>{if("string"!=typeof e||"string"!=typeof t)throw new TypeError("Expected the arguments to be of type `string`");if(""===t)return[e];const r=e.indexOf(t);return-1===r?[e]:[e.slice(0,r),e.slice(r+t.length)]}},function(e,t,r){"use strict";e.exports=function(e,t){for(var r={},n=Object.keys(e),i=Array.isArray(t),s=0;s<n.length;s++){var o=n[s],a=e[o];(i?-1!==t.indexOf(o):t(o,a,e))&&(r[o]=a)}return r}},function(e,t,r){"use strict";function n(e){try{return JSON.stringify(e)}catch(e){return'"[Circular]"'}}e.exports=function(e,t,r){var i=r&&r.stringify||n;if("object"==typeof e&&null!==e){var s=t.length+1;if(1===s)return e;var o=new Array(s);o[0]=i(e);for(var a=1;a<s;a++)o[a]=i(t[a]);return o.join(" ")}if("string"!=typeof e)return e;var c=t.length;if(0===c)return e;for(var u="",h=0,l=-1,d=e&&e.length||0,f=0;f<d;){if(37===e.charCodeAt(f)&&f+1<d){switch(l=l>-1?l:0,e.charCodeAt(f+1)){case 100:case 102:if(h>=c)break;if(null==t[h])break;l<f&&(u+=e.slice(l,f)),u+=Number(t[h]),l=f+2,f++;break;case 105:if(h>=c)break;if(null==t[h])break;l<f&&(u+=e.slice(l,f)),u+=Math.floor(Number(t[h])),l=f+2,f++;break;case 79:case 111:case 106:if(h>=c)break;if(void 0===t[h])break;l<f&&(u+=e.slice(l,f));var p=typeof t[h];if("string"===p){u+="'"+t[h]+"'",l=f+2,f++;break}if("function"===p){u+=t[h].name||"<anonymous>",l=f+2,f++;break}u+=i(t[h]),l=f+2,f++;break;case 115:if(h>=c)break;l<f&&(u+=e.slice(l,f)),u+=String(t[h]),l=f+2,f++;break;case 37:l<f&&(u+=e.slice(l,f)),u+="%",l=f+2,f++,h--}++h}++f}if(-1===l)return e;l<d&&(u+=e.slice(l));return u}},function(e,t,r){(function(t){!function(){"use strict";var r;function n(){}(r=n).prototype.getItem=function(e){return this.hasOwnProperty(e)?String(this[e]):null},r.prototype.setItem=function(e,t){this[e]=String(t)},r.prototype.removeItem=function(e){delete this[e]},r.prototype.clear=function(){var e=this;Object.keys(e).forEach((function(t){e[t]=void 0,delete e[t]}))},r.prototype.key=function(e){return e=e||0,Object.keys(this)[e]},r.prototype.__defineGetter__("length",(function(){return Object.keys(this).length})),t.localStorage?e.exports=localStorage:e.exports=new n}()}).call(this,r(31))},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});const n=r(30);n.__exportStar(r(125),t),n.__exportStar(r(126),t)},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IKeyValueStorage=void 0;t.IKeyValueStorage=class{}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.parseEntry=void 0;const n=r(62);t.parseEntry=function(e){var t;return[e[0],n.safeJsonParse(null!==(t=e[1])&&void 0!==t?t:"")]}},function(e,t,r){"use strict";var n=this&&this.__awaiter||function(e,t,r,n){return new(r||(r=Promise))((function(i,s){function o(e){try{c(n.next(e))}catch(e){s(e)}}function a(e){try{c(n.throw(e))}catch(e){s(e)}}function c(e){var t;e.done?i(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(o,a)}c((n=n.apply(e,t||[])).next())}))};Object.defineProperty(t,"__esModule",{value:!0}),t.HeartBeat=void 0;const i=r(5),s=r(2),o=r(63),a=r(64);class c extends o.IHeartBeat{constructor(e){super(e),this.events=new i.EventEmitter,this.interval=a.HEARTBEAT_INTERVAL,this.interval=(null==e?void 0:e.interval)||a.HEARTBEAT_INTERVAL}static init(e){return n(this,void 0,void 0,(function*(){const t=new c(e);return yield t.init(),t}))}init(){return n(this,void 0,void 0,(function*(){yield this.initialize()}))}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}initialize(){return n(this,void 0,void 0,(function*(){setInterval(()=>this.pulse(),s.toMiliseconds(this.interval))}))}pulse(){this.events.emit(a.HEARTBEAT_EVENTS.pulse)}}t.HeartBeat=c},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IHeartBeat=void 0;const n=r(12);class i extends n.IEvents{constructor(e){super()}}t.IHeartBeat=i},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HEARTBEAT_EVENTS=t.HEARTBEAT_INTERVAL=void 0;const n=r(2);t.HEARTBEAT_INTERVAL=n.FIVE_SECONDS,t.HEARTBEAT_EVENTS={pulse:"heartbeat_pulse"}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.generateChildLogger=t.formatChildLoggerContext=t.getLoggerContext=t.setBrowserLoggerContext=t.getBrowserLoggerContext=t.getDefaultLoggerOptions=void 0;const n=r(65);function i(e,t=n.PINO_CUSTOM_CONTEXT_KEY){return e[t]||""}function s(e,t,r=n.PINO_CUSTOM_CONTEXT_KEY){return e[r]=t,e}function o(e,t=n.PINO_CUSTOM_CONTEXT_KEY){let r="";return r=void 0===e.bindings?i(e,t):e.bindings().context||"",r}function a(e,t,r=n.PINO_CUSTOM_CONTEXT_KEY){const i=o(e,r);return i.trim()?`${i}/${t}`:t}t.getDefaultLoggerOptions=function(e){return Object.assign(Object.assign({},e),{level:(null==e?void 0:e.level)||n.PINO_LOGGER_DEFAULTS.level})},t.getBrowserLoggerContext=i,t.setBrowserLoggerContext=s,t.getLoggerContext=o,t.formatChildLoggerContext=a,t.generateChildLogger=function(e,t,r=n.PINO_CUSTOM_CONTEXT_KEY){const i=a(e,t,r);return s(e.child({context:i}),i,r)}},function(e,t,r){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var n=r(25),i=r(14);t.DIGEST_LENGTH=64,t.BLOCK_SIZE=128;var s=function(){function e(){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 e.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},e.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},e.prototype.clean=function(){i.wipe(this._buffer),i.wipe(this._tempHi),i.wipe(this._tempLo),this.reset()},e.prototype.update=function(e,r){if(void 0===r&&(r=e.length),this._finished)throw new Error("SHA512: can't update because hash was finished.");var n=0;if(this._bytesHashed+=r,this._bufferLength>0){for(;this._bufferLength<t.BLOCK_SIZE&&r>0;)this._buffer[this._bufferLength++]=e[n++],r--;this._bufferLength===this.blockSize&&(a(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,this.blockSize),this._bufferLength=0)}for(r>=this.blockSize&&(n=a(this._tempHi,this._tempLo,this._stateHi,this._stateLo,e,n,r),r%=this.blockSize);r>0;)this._buffer[this._bufferLength++]=e[n++],r--;return this},e.prototype.finish=function(e){if(!this._finished){var t=this._bytesHashed,r=this._bufferLength,i=t/536870912|0,s=t<<3,o=t%128<112?128:256;this._buffer[r]=128;for(var c=r+1;c<o-8;c++)this._buffer[c]=0;n.writeUint32BE(i,this._buffer,o-8),n.writeUint32BE(s,this._buffer,o-4),a(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,o),this._finished=!0}for(c=0;c<this.digestLength/8;c++)n.writeUint32BE(this._stateHi[c],e,8*c),n.writeUint32BE(this._stateLo[c],e,8*c+4);return this},e.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},e.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}},e.prototype.restoreState=function(e){return this._stateHi.set(e.stateHi),this._stateLo.set(e.stateLo),this._bufferLength=e.bufferLength,e.buffer&&this._buffer.set(e.buffer),this._bytesHashed=e.bytesHashed,this._finished=!1,this},e.prototype.cleanSavedState=function(e){i.wipe(e.stateHi),i.wipe(e.stateLo),e.buffer&&i.wipe(e.buffer),e.bufferLength=0,e.bytesHashed=0},e}();t.SHA512=s;var o=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 a(e,t,r,i,s,a,c){for(var u,h,l,d,f,p,g,y,b=r[0],v=r[1],m=r[2],_=r[3],w=r[4],E=r[5],O=r[6],S=r[7],I=i[0],j=i[1],R=i[2],N=i[3],P=i[4],A=i[5],T=i[6],L=i[7];c>=128;){for(var x=0;x<16;x++){var U=8*x+a;e[x]=n.readUint32BE(s,U),t[x]=n.readUint32BE(s,U+4)}for(x=0;x<80;x++){var C,M,D=b,z=v,k=m,V=_,H=w,K=E,J=O,q=I,B=j,F=R,G=N,W=P,Y=A,$=T;if(f=65535&(h=L),p=h>>>16,g=65535&(u=S),y=u>>>16,f+=65535&(h=(P>>>14|w<<18)^(P>>>18|w<<14)^(w>>>9|P<<23)),p+=h>>>16,g+=65535&(u=(w>>>14|P<<18)^(w>>>18|P<<14)^(P>>>9|w<<23)),y+=u>>>16,f+=65535&(h=P&A^~P&T),p+=h>>>16,g+=65535&(u=w&E^~w&O),y+=u>>>16,u=o[2*x],f+=65535&(h=o[2*x+1]),p+=h>>>16,g+=65535&u,y+=u>>>16,u=e[x%16],p+=(h=t[x%16])>>>16,g+=65535&u,y+=u>>>16,g+=(p+=(f+=65535&h)>>>16)>>>16,f=65535&(h=d=65535&f|p<<16),p=h>>>16,g=65535&(u=l=65535&g|(y+=g>>>16)<<16),y=u>>>16,f+=65535&(h=(I>>>28|b<<4)^(b>>>2|I<<30)^(b>>>7|I<<25)),p+=h>>>16,g+=65535&(u=(b>>>28|I<<4)^(I>>>2|b<<30)^(I>>>7|b<<25)),y+=u>>>16,p+=(h=I&j^I&R^j&R)>>>16,g+=65535&(u=b&v^b&m^v&m),y+=u>>>16,C=65535&(g+=(p+=(f+=65535&h)>>>16)>>>16)|(y+=g>>>16)<<16,M=65535&f|p<<16,f=65535&(h=G),p=h>>>16,g=65535&(u=V),y=u>>>16,p+=(h=d)>>>16,g+=65535&(u=l),y+=u>>>16,v=D,m=z,_=k,w=V=65535&(g+=(p+=(f+=65535&h)>>>16)>>>16)|(y+=g>>>16)<<16,E=H,O=K,S=J,b=C,j=q,R=B,N=F,P=G=65535&f|p<<16,A=W,T=Y,L=$,I=M,x%16==15)for(U=0;U<16;U++)u=e[U],f=65535&(h=t[U]),p=h>>>16,g=65535&u,y=u>>>16,u=e[(U+9)%16],f+=65535&(h=t[(U+9)%16]),p+=h>>>16,g+=65535&u,y+=u>>>16,l=e[(U+1)%16],f+=65535&(h=((d=t[(U+1)%16])>>>1|l<<31)^(d>>>8|l<<24)^(d>>>7|l<<25)),p+=h>>>16,g+=65535&(u=(l>>>1|d<<31)^(l>>>8|d<<24)^l>>>7),y+=u>>>16,l=e[(U+14)%16],p+=(h=((d=t[(U+14)%16])>>>19|l<<13)^(l>>>29|d<<3)^(d>>>6|l<<26))>>>16,g+=65535&(u=(l>>>19|d<<13)^(d>>>29|l<<3)^l>>>6),y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,e[U]=65535&g|y<<16,t[U]=65535&f|p<<16}f=65535&(h=I),p=h>>>16,g=65535&(u=b),y=u>>>16,u=r[0],p+=(h=i[0])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[0]=b=65535&g|y<<16,i[0]=I=65535&f|p<<16,f=65535&(h=j),p=h>>>16,g=65535&(u=v),y=u>>>16,u=r[1],p+=(h=i[1])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[1]=v=65535&g|y<<16,i[1]=j=65535&f|p<<16,f=65535&(h=R),p=h>>>16,g=65535&(u=m),y=u>>>16,u=r[2],p+=(h=i[2])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[2]=m=65535&g|y<<16,i[2]=R=65535&f|p<<16,f=65535&(h=N),p=h>>>16,g=65535&(u=_),y=u>>>16,u=r[3],p+=(h=i[3])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[3]=_=65535&g|y<<16,i[3]=N=65535&f|p<<16,f=65535&(h=P),p=h>>>16,g=65535&(u=w),y=u>>>16,u=r[4],p+=(h=i[4])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[4]=w=65535&g|y<<16,i[4]=P=65535&f|p<<16,f=65535&(h=A),p=h>>>16,g=65535&(u=E),y=u>>>16,u=r[5],p+=(h=i[5])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[5]=E=65535&g|y<<16,i[5]=A=65535&f|p<<16,f=65535&(h=T),p=h>>>16,g=65535&(u=O),y=u>>>16,u=r[6],p+=(h=i[6])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[6]=O=65535&g|y<<16,i[6]=T=65535&f|p<<16,f=65535&(h=L),p=h>>>16,g=65535&(u=S),y=u>>>16,u=r[7],p+=(h=i[7])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(p+=(f+=65535&h)>>>16)>>>16)>>>16,r[7]=S=65535&g|y<<16,i[7]=L=65535&f|p<<16,a+=128,c-=128}return a}t.hash=function(e){var t=new s;t.update(e);var r=t.digest();return t.clean(),r}},function(e,t,r){"use strict";e.exports=function(){throw new Error("ws does not work in the browser. Browser clients must use the native WebSocket object")}},function(e,t){e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children||(e.children=[]),Object.defineProperty(e,"loaded",{enumerable:!0,get:function(){return e.l}}),Object.defineProperty(e,"id",{enumerable:!0,get:function(){return e.i}}),e.webpackPolyfill=1),e}},function(e,t,r){"use strict";r.r(t),r.d(t,"SIGNER_EVENTS",(function(){return ye})),r.d(t,"SignerConnection",(function(){return be}));var n=r(22),i=r.n(n),s=r(5),o=r.n(s),a=r(80),c=r.n(a),u=r(19),h=r(3),l=r(7),d=r(13),f=r(29),p=r(6),g=r(0);const y="error",b={database:":memory:"};var v=r(2);const m=v.ONE_DAY,_=v.SIX_HOURS,w="relayer_message",E="relayer_connect",O="relayer_disconnect",S="relayer_error",I="payload",j="connect",R="disconnect",N="error",P=v.ONE_SECOND,A="subscription_created",T="subscription_deleted",L="subscription_sync";v.THIRTY_DAYS;class x{constructor(e,t){this.core=e,this.logger=t,this.keychain=new Map,this.name="keychain",this.version="0.3",this.initialized=!1,this.storagePrefix="wc@2:core:",this.init=async()=>{if(!this.initialized){const e=await this.getKeyChain();void 0!==e&&(this.keychain=e),this.initialized=!0}},this.has=e=>(this.isInitialized(),this.keychain.has(e)),this.set=async(e,t)=>{this.isInitialized(),this.keychain.set(e,t),await this.persist()},this.get=e=>{this.isInitialized();const t=this.keychain.get(e);if(void 0===t){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(t)}return t},this.del=async e=>{this.isInitialized(),this.keychain.delete(e),await this.persist()},this.core=e,this.logger=Object(h.generateChildLogger)(t,this.name)}get context(){return Object(h.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,Object(g.mapToObj)(e))}async getKeyChain(){const e=await this.core.storage.getItem(this.storageKey);return void 0!==e?Object(g.objToMap)(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class U{constructor(e,t,r){this.core=e,this.logger=t,this.name="crypto",this.initialized=!1,this.init=async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)},this.hasKeys=e=>(this.isInitialized(),this.keychain.has(e)),this.getClientId=async()=>{this.isInitialized();const e=await this.getClientSeed(),t=f.generateKeyPair(e);return f.encodeIss(t.publicKey)},this.generateKeyPair=()=>{this.isInitialized();const e=Object(g.generateKeyPair)();return this.setPrivateKey(e.publicKey,e.privateKey)},this.signJWT=async e=>{this.isInitialized();const t=await this.getClientSeed(),r=f.generateKeyPair(t),n=Object(g.generateRandomBytes32)(),i=m;return await f.signJWT(n,e,i,r)},this.generateSharedKey=(e,t,r)=>{this.isInitialized();const n=this.getPrivateKey(e),i=Object(g.deriveSymKey)(n,t);return this.setSymKey(i,r)},this.setSymKey=async(e,t)=>{this.isInitialized();const r=t||Object(g.hashKey)(e);return await this.keychain.set(r,e),r},this.deleteKeyPair=async e=>{this.isInitialized(),await this.keychain.del(e)},this.deleteSymKey=async e=>{this.isInitialized(),await this.keychain.del(e)},this.encode=async(e,t,r)=>{this.isInitialized();const n=Object(g.validateEncoding)(r),i=Object(d.b)(t);if(Object(g.isTypeOneEnvelope)(n)){const t=n.senderPublicKey,r=n.receiverPublicKey;e=await this.generateSharedKey(t,r)}const s=this.getSymKey(e),{type:o,senderPublicKey:a}=n;return Object(g.encrypt)({type:o,symKey:s,message:i,senderPublicKey:a})},this.decode=async(e,t,r)=>{this.isInitialized();const n=Object(g.validateDecoding)(t,r);if(Object(g.isTypeOneEnvelope)(n)){const t=n.receiverPublicKey,r=n.senderPublicKey;e=await this.generateSharedKey(t,r)}const i=this.getSymKey(e),s=Object(g.decrypt)({symKey:i,encoded:t});return Object(d.a)(s)},this.core=e,this.logger=Object(h.generateChildLogger)(t,this.name),this.keychain=r||new x(this.core,this.logger)}get context(){return Object(h.getLoggerContext)(this.logger)}async setPrivateKey(e,t){return await this.keychain.set(e,t),e}getPrivateKey(e){return this.keychain.get(e)}async getClientSeed(){let e="";try{e=this.keychain.get("client_ed25519_seed")}catch(t){e=Object(g.generateRandomBytes32)(),await this.keychain.set("client_ed25519_seed",e)}return Object(p.fromString)(e,"base16")}getSymKey(e){return this.keychain.get(e)}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class C extends l.IMessageTracker{constructor(e,t){super(e,t),this.logger=e,this.core=t,this.messages=new Map,this.name="messages",this.version="0.3",this.initialized=!1,this.storagePrefix="wc@2:core:",this.init=async()=>{if(!this.initialized){this.logger.trace("Initialized");try{const e=await this.getRelayerMessages();void 0!==e&&(this.messages=e),this.logger.debug("Successfully Restored records for "+this.name),this.logger.trace({type:"method",method:"restore",size:this.messages.size})}catch(e){this.logger.debug("Failed to Restore records for "+this.name),this.logger.error(e)}finally{this.initialized=!0}}},this.set=async(e,t)=>{this.isInitialized();const r=Object(g.hashMessage)(t);let n=this.messages.get(e);return void 0===n&&(n={}),void 0!==n[r]||(n[r]=t,this.messages.set(e,n),await this.persist()),r},this.get=e=>{this.isInitialized();let t=this.messages.get(e);return void 0===t&&(t={}),t},this.has=(e,t)=>{this.isInitialized();return void 0!==this.get(e)[Object(g.hashMessage)(t)]},this.del=async e=>{this.isInitialized(),this.messages.delete(e),await this.persist()},this.logger=Object(h.generateChildLogger)(e,this.name),this.core=t}get context(){return Object(h.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}async setRelayerMessages(e){await this.core.storage.setItem(this.storageKey,Object(g.mapToObj)(e))}async getRelayerMessages(){const e=await this.core.storage.getItem(this.storageKey);return void 0!==e?Object(g.objToMap)(e):void 0}async persist(){await this.setRelayerMessages(this.messages)}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}var M=r(40),D=r(1),z=r(35).a;class k extends l.IPublisher{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,this.events=new s.EventEmitter,this.name="publisher",this.queue=new Map,this.publish=async(e,t,r)=>{this.logger.debug("Publishing Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:e,message:t,opts:r}});try{const n=(null==r?void 0:r.ttl)||_,i=Object(g.getRelayProtocolName)(r),s=(null==r?void 0:r.prompt)||!1,o={topic:e,message:t,opts:{ttl:n,relay:i,prompt:s,tag:(null==r?void 0:r.tag)||0}},a=Object(g.hashMessage)(t);this.queue.set(a,o),await this.rpcPublish(e,t,n,i,s),this.onPublish(a,o),this.logger.debug("Successfully Published Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:e,message:t,opts:r}})}catch(e){throw this.logger.debug("Failed to Publish Payload"),this.logger.error(e),e}},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.relayer=e,this.logger=Object(h.generateChildLogger)(t,this.name),this.registerEventListeners()}get context(){return Object(h.getLoggerContext)(this.logger)}rpcPublish(e,t,r,n,i,s){var o,a,c,u;const h={method:Object(g.getRelayProtocolApi)(n.protocol).publish,params:{topic:e,message:t,ttl:r,prompt:i,tag:s}};return Object(g.isUndefined)(null===(o=h.params)||void 0===o?void 0:o.prompt)&&(null===(a=h.params)||void 0===a||delete a.prompt),Object(g.isUndefined)(null===(c=h.params)||void 0===c?void 0:c.tag)&&(null===(u=h.params)||void 0===u||delete u.tag),this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"message",direction:"outgoing",request:h}),this.relayer.provider.request(h)}onPublish(e,t){this.queue.delete(e)}checkQueue(){this.queue.forEach(async e=>{const{topic:t,message:r,opts:{ttl:n,relay:i}}=e,s=Object(g.hashMessage)(r);await this.rpcPublish(t,r,n,i),this.onPublish(s,e)})}registerEventListeners(){this.relayer.core.heartbeat.on(u.HEARTBEAT_EVENTS.pulse,()=>{this.checkQueue()})}}class V{constructor(){this.map=new Map,this.set=(e,t)=>{const r=this.get(e);this.exists(e,t)||this.map.set(e,[...r,t])},this.get=e=>this.map.get(e)||[],this.exists=(e,t)=>this.get(e).includes(t),this.delete=(e,t)=>{if(void 0===t)return void this.map.delete(e);if(!this.map.has(e))return;const r=this.get(e);if(!this.exists(e,t))return;const n=r.filter(e=>e!==t);n.length?this.map.set(e,n):this.map.delete(e)},this.clear=()=>{this.map.clear()}}get topics(){return Array.from(this.map.keys())}}class H extends l.ISubscriber{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,this.subscriptions=new Map,this.topicMap=new V,this.events=new s.EventEmitter,this.name="subscription",this.version="0.3",this.pending=new Map,this.cached=[],this.initialized=!1,this.storagePrefix="wc@2:core:",this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),await this.reset(),this.registerEventListeners(),this.onEnable())},this.subscribe=async(e,t)=>{this.isInitialized(),this.logger.debug("Subscribing Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:e,opts:t}});try{const r=Object(g.getRelayProtocolName)(t),n={topic:e,relay:r};this.pending.set(e,n);const i=await this.rpcSubscribe(e,r);return this.onSubscribe(i,n),this.logger.debug("Successfully Subscribed Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:e,opts:t}}),i}catch(e){throw this.logger.debug("Failed to Subscribe Topic"),this.logger.error(e),e}},this.unsubscribe=async(e,t)=>{this.isInitialized(),void 0!==(null==t?void 0:t.id)?await this.unsubscribeById(e,t.id,t):await this.unsubscribeByTopic(e,t)},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.relayer=e,this.logger=Object(h.generateChildLogger)(t,this.name)}get context(){return Object(h.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,t){let r=!1;try{r=this.getSubscription(e).topic===t}catch(e){}return r}onEnable(){this.cached=[],this.initialized=!0}onDisable(){this.cached=this.values,this.subscriptions.clear(),this.topicMap.clear(),this.initialized=!1}async unsubscribeByTopic(e,t){const r=this.topicMap.get(e);await Promise.all(r.map(async r=>await this.unsubscribeById(e,r,t)))}async unsubscribeById(e,t,r){this.logger.debug("Unsubscribing Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:t,opts:r}});try{const n=Object(g.getRelayProtocolName)(r);await this.rpcUnsubscribe(e,t,n);const i=Object(g.getSdkError)("USER_DISCONNECTED",`${this.name}, ${e}`);await this.onUnsubscribe(e,t,i),this.logger.debug("Successfully Unsubscribed Topic"),this.logger.trace({type:"method",method:"unsubscribe",params:{topic:e,id:t,opts:r}})}catch(e){throw this.logger.debug("Failed to Unsubscribe Topic"),this.logger.error(e),e}}async rpcSubscribe(e,t){const r={method:Object(g.getRelayProtocolApi)(t.protocol).subscribe,params:{topic:e}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:r}),await this.relayer.provider.request(r)}rpcUnsubscribe(e,t,r){const n={method:Object(g.getRelayProtocolApi)(r.protocol).unsubscribe,params:{topic:e,id:t}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:n}),this.relayer.provider.request(n)}onSubscribe(e,t){this.setSubscription(e,Object.assign(Object.assign({},t),{id:e})),this.pending.delete(t.topic)}onResubscribe(e,t){this.addSubscription(e,Object.assign(Object.assign({},t),{id:e})),this.pending.delete(t.topic)}async onUnsubscribe(e,t,r){this.events.removeAllListeners(t),this.hasSubscription(t,e)&&this.deleteSubscription(t,r),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,t){this.subscriptions.has(e)||(this.logger.debug("Setting subscription"),this.logger.trace({type:"method",method:"setSubscription",id:e,subscription:t}),this.addSubscription(e,t))}addSubscription(e,t){this.subscriptions.set(e,Object.assign({},t)),this.topicMap.set(t.topic,e),this.events.emit(A,t)}getSubscription(e){this.logger.debug("Getting subscription"),this.logger.trace({type:"method",method:"getSubscription",id:e});const t=this.subscriptions.get(e);if(!t){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(t)}return t}deleteSubscription(e,t){this.logger.debug("Deleting subscription"),this.logger.trace({type:"method",method:"deleteSubscription",id:e,reason:t});const r=this.getSubscription(e);this.subscriptions.delete(e),this.topicMap.delete(r.topic,e),this.events.emit(T,Object.assign(Object.assign({},r),{reason:t}))}async persist(){await this.setRelayerSubscriptions(this.values),this.events.emit(L)}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(void 0===e)return;if(!e.length)return;if(this.subscriptions.size){const{message:e}=Object(g.getInternalError)("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}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:t,relay:r}=e,n={topic:t,relay:r};this.pending.set(n.topic,n);const i=await this.rpcSubscribe(n.topic,n.relay);this.onResubscribe(i,n)}}async onConnect(){await this.reset(),this.onEnable()}onDisconnect(){this.onDisable()}checkPending(){this.pending.forEach(async e=>{const t=await this.rpcSubscribe(e.topic,e.relay);this.onSubscribe(t,e)})}registerEventListeners(){this.relayer.core.heartbeat.on(u.HEARTBEAT_EVENTS.pulse,()=>{this.checkPending()}),this.relayer.provider.on(j,async()=>{await this.onConnect()}),this.relayer.provider.on(R,()=>{this.onDisconnect()}),this.events.on(A,async e=>{const t=A;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,data:e}),await this.persist()}),this.events.on(T,async e=>{const t=T;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,data:e}),await this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class K extends l.IRelayer{constructor(e){super(e),this.protocol="wc",this.version=2,this.events=new s.EventEmitter,this.name="relayer",this.initialized=!1,this.core=e.core,this.logger=void 0!==e.logger&&"string"!=typeof e.logger?Object(h.generateChildLogger)(e.logger,this.name):i()(Object(h.getDefaultLoggerOptions)({level:e.logger||"error"})),this.messages=new C(this.logger,e.core),this.subscriber=new H(this,this.logger),this.publisher=new k(this,this.logger),this.relayUrl=(null==e?void 0:e.relayUrl)||"wss://relay.walletconnect.com",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 Object(h.getLoggerContext)(this.logger)}get connected(){return this.provider.connection.connected}get connecting(){return this.provider.connection.connecting}async publish(e,t,r){this.isInitialized(),await this.publisher.publish(e,t,r),await this.recordMessageEvent({topic:e,message:t})}async subscribe(e,t){this.isInitialized();return await this.subscriber.subscribe(e,t)}async unsubscribe(e,t){this.isInitialized(),await this.subscriber.unsubscribe(e,t)}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}createProvider(e){return new M.JsonRpcProvider(new z(Object(g.formatRelayRpcUrl)({protocol:this.protocol,version:this.version,relayUrl:this.relayUrl,projectId:this.projectId,auth:e})))}async recordMessageEvent(e){const{topic:t,message:r}=e;await this.messages.set(t,r)}shouldIgnoreMessageEvent(e){const{topic:t,message:r}=e;if(!this.subscriber.topics.includes(t))return!0;return this.messages.has(t,r)}async onProviderPayload(e){if(this.logger.debug("Incoming Relay Payload"),this.logger.trace({type:"payload",direction:"incoming",payload:e}),Object(D.isJsonRpcRequest)(e)){if(!e.method.endsWith("_subscription"))return;const t=e.params,{topic:r,message:n}=t.data,i={topic:r,message:n};this.logger.debug("Emitting Relayer Payload"),this.logger.trace(Object.assign({type:"event",event:t.id},i)),this.events.emit(t.id,i),await this.acknowledgePayload(e),await this.onMessageEvent(i)}}async onMessageEvent(e){this.shouldIgnoreMessageEvent(e)||(this.events.emit(w,e),await this.recordMessageEvent(e))}async acknowledgePayload(e){const t=Object(D.formatJsonRpcResult)(e.id,!0);await this.provider.connection.send(t)}registerEventListeners(){this.provider.on(I,e=>this.onProviderPayload(e)),this.provider.on(j,()=>{this.events.emit(E)}),this.provider.on(R,()=>{this.events.emit(O),setTimeout(()=>{this.provider.connect()},Object(v.toMiliseconds)(P))}),this.provider.on(N,e=>this.events.emit(S,e))}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}var J=r(81),q=r.n(J);class B extends l.IStore{constructor(e,t,r,n="wc@2:core:"){super(e,t,r,n),this.core=e,this.logger=t,this.name=r,this.map=new Map,this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix="wc@2:core:",this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(e=>{Object(g.isProposalStruct)(e)?this.map.set(e.id,e):Object(g.isSessionStruct)(e)&&this.map.set(e.topic,e)}),this.cached=[],this.initialized=!0)},this.set=async(e,t)=>{this.isInitialized(),this.map.has(e)?await this.update(e,t):(this.logger.debug("Setting value"),this.logger.trace({type:"method",method:"set",key:e,value:t}),this.map.set(e,t),await this.persist())},this.get=e=>{this.isInitialized(),this.logger.debug("Getting value"),this.logger.trace({type:"method",method:"get",key:e});return this.getData(e)},this.getAll=e=>e?this.values.filter(t=>Object.keys(e).every(r=>q()(t[r],e[r]))):this.values,this.update=async(e,t)=>{this.isInitialized(),this.logger.debug("Updating value"),this.logger.trace({type:"method",method:"update",key:e,update:t});const r=Object.assign(Object.assign({},this.getData(e)),t);this.map.set(e,r),await this.persist()},this.delete=async(e,t)=>{this.isInitialized(),this.map.has(e)&&(this.logger.debug("Deleting value"),this.logger.trace({type:"method",method:"delete",key:e,reason:t}),this.map.delete(e),await this.persist())},this.logger=Object(h.generateChildLogger)(t,this.name),this.storagePrefix=n}get context(){return Object(h.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 t=this.map.get(e);if(!t){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(t),new Error(t)}return t}async persist(){await this.setDataStore(this.values)}async restore(){try{const e=await this.getDataStore();if(void 0===e)return;if(!e.length)return;if(this.map.size){const{message:e}=Object(g.getInternalError)("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}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}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class F extends l.ICore{constructor(e){super(e),this.protocol="wc",this.version=2,this.name="core",this.events=new s.EventEmitter,this.initialized=!1,this.on=(e,t)=>this.events.on(e,t),this.once=(e,t)=>this.events.once(e,t),this.off=(e,t)=>this.events.off(e,t),this.removeListener=(e,t)=>this.events.removeListener(e,t),this.projectId=null==e?void 0:e.projectId;const t=void 0!==(null==e?void 0:e.logger)&&"string"!=typeof(null==e?void 0:e.logger)?e.logger:i()(Object(h.getDefaultLoggerOptions)({level:(null==e?void 0:e.logger)||y}));this.logger=Object(h.generateChildLogger)(t,this.name),this.heartbeat=new u.HeartBeat,this.crypto=new U(this,this.logger,null==e?void 0:e.keychain),this.storage=(null==e?void 0:e.storage)?e.storage:new c.a(Object.assign(Object.assign({},b),null==e?void 0:e.storageOptions)),this.relayer=new K({core:this,logger:this.logger,relayUrl:null==e?void 0:e.relayUrl,projectId:this.projectId})}static async init(e){const t=new F(e);return await t.initialize(),t}get context(){return Object(h.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 G=F;const W="client",Y="error",$="expirer_created",X="expirer_deleted",Z="expirer_expired",Q="expirer_sync",ee=(v.ONE_DAY,"history_created"),te="history_updated",re="history_deleted",ne="history_sync",ie=(v.THIRTY_DAYS,Object(g.calcExpiry)(v.THIRTY_DAYS)),se=v.SEVEN_DAYS,oe=Object(g.calcExpiry)(se);class ae extends l.IEngine{constructor(e){super(e),this.events=new o.a,this.initialized=!1,this.name="engine",this.init=async()=>{this.initialized||(await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0)},this.connect=async e=>{this.isInitialized(),await this.isValidConnect(e);const{pairingTopic:t,requiredNamespaces:r,relays:n}=e;let i=t,s=void 0,o=!1;if(i){o=this.client.pairing.get(i).active}if(!i||!o){const{topic:e,uri:t}=await this.createPairing();i=e,s=t}const a=await this.client.core.crypto.generateKeyPair(),c={requiredNamespaces:r,relays:null!=n?n:[{protocol:"iridium"}],proposer:{publicKey:a,metadata:this.client.metadata}},{reject:u,resolve:h,done:l}=Object(g.createDelayedPromise)();if(this.events.once(Object(g.engineEvent)("session_connect"),async({error:e,session:t})=>{if(e)u(e);else if(t){t.self.publicKey=a;const e=Object.assign(Object.assign({},t),{requiredNamespaces:r});await this.client.session.set(t.topic,e),await this.setExpiry(t.topic,t.expiry),i&&await this.client.pairing.update(i,{peerMetadata:t.peer.metadata}),h(e)}}),!i){const{message:e}=Object(g.getInternalError)("NO_MATCHING_KEY","connect() pairing topic: "+i);throw new Error(e)}const d=await this.sendRequest(i,"wc_sessionPropose",c),f=Object(g.calcExpiry)(v.FIVE_MINUTES);return await this.setProposal(d,Object.assign({id:d,expiry:f},c)),{uri:s,approval:l}},this.pair=async e=>{this.isInitialized(),this.isValidPair(e);const{topic:t,symKey:r,relay:n}=Object(g.parseUri)(e.uri),i=Object(g.calcExpiry)(v.FIVE_MINUTES),s={topic:t,relay:n,expiry:i,active:!1};return await this.client.pairing.set(t,s),await this.client.core.crypto.setSymKey(r,t),await this.client.core.relayer.subscribe(t,{relay:n}),await this.setExpiry(t,i),s},this.approve=async e=>{this.isInitialized(),await this.isValidApprove(e);const{id:t,relayProtocol:r,namespaces:n}=e,{pairingTopic:i,proposer:s,requiredNamespaces:o}=this.client.proposal.get(t),a=await this.client.core.crypto.generateKeyPair(),c=s.publicKey,u=await this.client.core.crypto.generateSharedKey(a,c),h={relay:{protocol:null!=r?r:"iridium"},namespaces:n,requiredNamespaces:o,controller:{publicKey:a,metadata:this.client.metadata},expiry:oe};await this.client.core.relayer.subscribe(u);const l=await this.sendRequest(u,"wc_sessionSettle",h),{done:d,resolve:f,reject:p}=Object(g.createDelayedPromise)();this.events.once(Object(g.engineEvent)("session_approve",l),({error:e})=>{e?p(e):f(this.client.session.get(u))});const y=Object.assign(Object.assign({},h),{topic:u,acknowledged:!1,self:h.controller,peer:{publicKey:s.publicKey,metadata:s.metadata},controller:a});return await this.client.session.set(u,y),await this.setExpiry(u,oe),i&&await this.client.pairing.update(i,{peerMetadata:y.peer.metadata}),i&&t&&(await this.sendResult(t,i,{relay:{protocol:null!=r?r:"iridium"},responderPublicKey:a}),await this.client.proposal.delete(t,Object(g.getSdkError)("USER_DISCONNECTED")),await this.activatePairing(i)),{topic:u,acknowledged:d}},this.reject=async e=>{this.isInitialized(),await this.isValidReject(e);const{id:t,reason:r}=e,{pairingTopic:n}=this.client.proposal.get(t);n&&(await this.sendError(t,n,r),await this.client.proposal.delete(t,Object(g.getSdkError)("USER_DISCONNECTED")))},this.update=async e=>{this.isInitialized(),await this.isValidUpdate(e);const{topic:t,namespaces:r}=e,n=await this.sendRequest(t,"wc_sessionUpdate",{namespaces:r}),{done:i,resolve:s,reject:o}=Object(g.createDelayedPromise)();return this.events.once(Object(g.engineEvent)("session_update",n),({error:e})=>{e?o(e):s()}),await this.client.session.update(t,{namespaces:r}),{acknowledged:i}},this.extend=async e=>{this.isInitialized(),await this.isValidExtend(e);const{topic:t}=e,r=await this.sendRequest(t,"wc_sessionExtend",{}),{done:n,resolve:i,reject:s}=Object(g.createDelayedPromise)();return this.events.once(Object(g.engineEvent)("session_extend",r),({error:e})=>{e?s(e):i()}),await this.setExpiry(t,oe),{acknowledged:n}},this.request=async e=>{this.isInitialized(),await this.isValidRequest(e);const{chainId:t,request:r,topic:n}=e,i=await this.sendRequest(n,"wc_sessionRequest",{request:r,chainId:t}),{done:s,resolve:o,reject:a}=Object(g.createDelayedPromise)();return this.events.once(Object(g.engineEvent)("session_request",i),({error:e,result:t})=>{e?a(e):o(t)}),await s()},this.respond=async e=>{this.isInitialized(),await this.isValidRespond(e);const{topic:t,response:r}=e,{id:n}=r;Object(D.isJsonRpcResult)(r)?await this.sendResult(n,t,r.result):Object(D.isJsonRpcError)(r)&&await this.sendError(n,t,r.error)},this.ping=async e=>{this.isInitialized(),await this.isValidPing(e);const{topic:t}=e;if(this.client.session.keys.includes(t)){const e=await this.sendRequest(t,"wc_sessionPing",{}),{done:r,resolve:n,reject:i}=Object(g.createDelayedPromise)();this.events.once(Object(g.engineEvent)("session_ping",e),({error:e})=>{e?i(e):n()}),await r()}else if(this.client.pairing.keys.includes(t)){const e=await this.sendRequest(t,"wc_pairingPing",{}),{done:r,resolve:n,reject:i}=Object(g.createDelayedPromise)();this.events.once(Object(g.engineEvent)("pairing_ping",e),({error:e})=>{e?i(e):n()}),await r()}},this.emit=async e=>{this.isInitialized(),await this.isValidEmit(e);const{topic:t,event:r,chainId:n}=e;await this.sendRequest(t,"wc_sessionEvent",{event:r,chainId:n})},this.disconnect=async e=>{this.isInitialized(),await this.isValidDisconnect(e);const{topic:t}=e;this.client.session.keys.includes(t)?(await this.sendRequest(t,"wc_sessionDelete",Object(g.getSdkError)("USER_DISCONNECTED")),await this.deleteSession(t)):this.client.pairing.keys.includes(t)&&(await this.sendRequest(t,"wc_pairingDelete",Object(g.getSdkError)("USER_DISCONNECTED")),await this.deletePairing(t))},this.find=e=>(this.isInitialized(),this.client.session.getAll().filter(t=>Object(g.isSessionCompatible)(t,e))),this.activatePairing=async e=>{await this.client.pairing.update(e,{active:!0,expiry:ie}),await this.setExpiry(e,ie)},this.deleteSession=async e=>{const{self:t}=this.client.session.get(e);await Promise.all([this.client.core.relayer.unsubscribe(e),this.client.session.delete(e,Object(g.getSdkError)("USER_DISCONNECTED")),this.client.core.crypto.deleteKeyPair(t.publicKey),this.client.core.crypto.deleteSymKey(e),this.client.expirer.del(e)])},this.deletePairing=async e=>{await Promise.all([this.client.core.relayer.unsubscribe(e),this.client.pairing.delete(e,Object(g.getSdkError)("USER_DISCONNECTED")),this.client.core.crypto.deleteSymKey(e),this.client.expirer.del(e)])},this.deleteProposal=async e=>{await Promise.all([this.client.proposal.delete(e,Object(g.getSdkError)("USER_DISCONNECTED")),this.client.expirer.del(e)])},this.setExpiry=async(e,t)=>{this.client.pairing.keys.includes(e)?await this.client.pairing.update(e,{expiry:t}):this.client.session.keys.includes(e)&&await this.client.session.update(e,{expiry:t}),this.client.expirer.set(e,t)},this.setProposal=async(e,t)=>{await this.client.proposal.set(e,t),this.client.expirer.set(e,t.expiry)},this.sendRequest=async(e,t,r)=>{const n=Object(D.formatJsonRpcRequest)(t,r),i=await this.client.core.crypto.encode(e,n),s={tag:1};return await this.client.core.relayer.publish(e,i,s),this.client.history.set(e,n),n.id},this.sendResult=async(e,t,r)=>{const n=Object(D.formatJsonRpcResult)(e,r),i=await this.client.core.crypto.encode(t,n),s={tag:1};await this.client.core.relayer.publish(t,i,s),await this.client.history.resolve(n)},this.sendError=async(e,t,r)=>{const n=Object(D.formatJsonRpcError)(e,r),i=await this.client.core.crypto.encode(t,n),s={tag:1};await this.client.core.relayer.publish(t,i,s),await this.client.history.resolve(n)},this.cleanup=async()=>{const e=[],t=[],r=[];this.client.session.getAll().forEach(t=>{Object(g.isExpired)(t.expiry)&&e.push(t.topic)}),this.client.pairing.getAll().forEach(e=>{Object(g.isExpired)(e.expiry)&&t.push(e.topic)}),this.client.proposal.getAll().forEach(e=>{Object(g.isExpired)(e.expiry)&&r.push(e.id)}),await Promise.all([...e.map(this.deleteSession),...t.map(this.deletePairing),...r.map(this.deleteProposal)])},this.onRelayEventRequest=e=>{const{topic:t,payload:r}=e,n=r.method;switch(n){case"wc_sessionPropose":return this.onSessionProposeRequest(t,r);case"wc_sessionSettle":return this.onSessionSettleRequest(t,r);case"wc_sessionUpdate":return this.onSessionUpdateRequest(t,r);case"wc_sessionExtend":return this.onSessionExtendRequest(t,r);case"wc_sessionPing":return this.onSessionPingRequest(t,r);case"wc_pairingPing":return this.onPairingPingRequest(t,r);case"wc_sessionDelete":return this.onSessionDeleteRequest(t,r);case"wc_pairingDelete":return this.onPairingDeleteRequest(t,r);case"wc_sessionRequest":return this.onSessionRequest(t,r);case"wc_sessionEvent":return this.onSessionEventRequest(t,r);default:return void this.client.logger.info("Unsupported request method "+n)}},this.onRelayEventResponse=async e=>{const{topic:t,payload:r}=e,n=(await this.client.history.get(t,r.id)).request.method;switch(n){case"wc_sessionPropose":return this.onSessionProposeResponse(t,r);case"wc_sessionSettle":return this.onSessionSettleResponse(t,r);case"wc_sessionUpdate":return this.onSessionUpdateResponse(t,r);case"wc_sessionExtend":return this.onSessionExtendResponse(t,r);case"wc_sessionPing":return this.onSessionPingResponse(t,r);case"wc_pairingPing":return this.onPairingPingResponse(t,r);case"wc_sessionRequest":return this.onSessionRequestResponse(t,r);default:return void this.client.logger.info("Unsupported response method "+n)}},this.onSessionProposeRequest=async(e,t)=>{const{params:r,id:n}=t;try{this.isValidConnect(Object.assign({},t.params));const i=Object(g.calcExpiry)(v.FIVE_MINUTES),s=Object.assign({id:n,pairingTopic:e,expiry:i},r);await this.setProposal(n,s),this.client.events.emit("session_proposal",{id:n,params:s})}catch(t){await this.sendError(n,e,t),this.client.logger.error(t)}},this.onSessionProposeResponse=async(e,t)=>{const{id:r}=t;if(Object(D.isJsonRpcResult)(t)){const{result:n}=t;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",result:n});const i=this.client.proposal.get(r);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",proposal:i});const s=i.proposer.publicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",selfPublicKey:s});const o=n.responderPublicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",peerPublicKey:o});const a=await this.client.core.crypto.generateSharedKey(s,o);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",sessionTopic:a});const c=await this.client.core.relayer.subscribe(a);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",subscriptionId:c}),await this.activatePairing(e)}else Object(D.isJsonRpcError)(t)&&(await this.client.proposal.delete(r,Object(g.getSdkError)("USER_DISCONNECTED")),this.events.emit(Object(g.engineEvent)("session_connect"),{error:t.error}))},this.onSessionSettleRequest=async(e,t)=>{const{id:r,params:n}=t;try{this.isValidSessionSettleRequest(n);const{relay:r,controller:i,expiry:s,namespaces:o}=t.params,a={topic:e,relay:r,expiry:s,namespaces:o,acknowledged:!0,controller:i.publicKey,self:{publicKey:"",metadata:this.client.metadata},peer:{publicKey:i.publicKey,metadata:i.metadata}};await this.sendResult(t.id,e,!0),this.events.emit(Object(g.engineEvent)("session_connect"),{session:a})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onSessionSettleResponse=async(e,t)=>{const{id:r}=t;Object(D.isJsonRpcResult)(t)?(await this.client.session.update(e,{acknowledged:!0}),this.events.emit(Object(g.engineEvent)("session_approve",r),{})):Object(D.isJsonRpcError)(t)&&(await this.client.session.delete(e,Object(g.getSdkError)("USER_DISCONNECTED")),this.events.emit(Object(g.engineEvent)("session_approve",r),{error:t.error}))},this.onSessionUpdateRequest=async(e,t)=>{const{params:r,id:n}=t;try{this.isValidUpdate(Object.assign({topic:e},r)),await this.client.session.update(e,{namespaces:r.namespaces}),await this.sendResult(n,e,!0),this.client.events.emit("session_update",{id:n,topic:e,params:r})}catch(t){await this.sendError(n,e,t),this.client.logger.error(t)}},this.onSessionUpdateResponse=(e,t)=>{const{id:r}=t;Object(D.isJsonRpcResult)(t)?this.events.emit(Object(g.engineEvent)("session_update",r),{}):Object(D.isJsonRpcError)(t)&&this.events.emit(Object(g.engineEvent)("session_update",r),{error:t.error})},this.onSessionExtendRequest=async(e,t)=>{const{id:r}=t;try{this.isValidExtend({topic:e}),await this.setExpiry(e,oe),await this.sendResult(r,e,!0),this.client.events.emit("session_extend",{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onSessionExtendResponse=(e,t)=>{const{id:r}=t;Object(D.isJsonRpcResult)(t)?this.events.emit(Object(g.engineEvent)("session_extend",r),{}):Object(D.isJsonRpcError)(t)&&this.events.emit(Object(g.engineEvent)("session_extend",r),{error:t.error})},this.onSessionPingRequest=async(e,t)=>{const{id:r}=t;try{this.isValidPing({topic:e}),await this.sendResult(r,e,!0),this.client.events.emit("session_ping",{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onSessionPingResponse=(e,t)=>{const{id:r}=t;Object(D.isJsonRpcResult)(t)?this.events.emit(Object(g.engineEvent)("session_ping",r),{}):Object(D.isJsonRpcError)(t)&&this.events.emit(Object(g.engineEvent)("session_ping",r),{error:t.error})},this.onPairingPingRequest=async(e,t)=>{const{id:r}=t;try{this.isValidPing({topic:e}),await this.sendResult(r,e,!0),this.client.events.emit("pairing_ping",{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onPairingPingResponse=(e,t)=>{const{id:r}=t;Object(D.isJsonRpcResult)(t)?this.events.emit(Object(g.engineEvent)("pairing_ping",r),{}):Object(D.isJsonRpcError)(t)&&this.events.emit(Object(g.engineEvent)("pairing_ping",r),{error:t.error})},this.onSessionDeleteRequest=async(e,t)=>{const{id:r}=t;try{this.isValidDisconnect({topic:e,reason:t.params}),await this.sendResult(r,e,!0),await this.deleteSession(e),this.client.events.emit("session_delete",{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onPairingDeleteRequest=async(e,t)=>{const{id:r}=t;try{this.isValidDisconnect({topic:e,reason:t.params}),await this.sendResult(r,e,!0),await this.deletePairing(e),this.client.events.emit("pairing_delete",{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onSessionRequest=async(e,t)=>{const{id:r,params:n}=t;try{this.isValidRequest(Object.assign({topic:e},n)),this.client.events.emit("session_request",{id:r,topic:e,params:n})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onSessionRequestResponse=(e,t)=>{const{id:r}=t;Object(D.isJsonRpcResult)(t)?this.events.emit(Object(g.engineEvent)("session_request",r),{result:t.result}):Object(D.isJsonRpcError)(t)&&this.events.emit(Object(g.engineEvent)("session_request",r),{error:t.error})},this.onSessionEventRequest=async(e,t)=>{const{id:r,params:n}=t;try{this.isValidEmit(Object.assign({topic:e},n)),this.client.events.emit("session_event",{id:r,topic:e,params:n})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.isValidConnect=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","connect() params: "+JSON.stringify(e));throw new Error(t)}const{pairingTopic:t,requiredNamespaces:r,relays:n}=e;Object(g.isUndefined)(t)||await this.isValidPairingTopic(t);const i=Object(g.isValidRequiredNamespaces)(r,"connect()");if(i)throw new Error(i.message);if(!Object(g.isValidRelays)(n,!0)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","connect() relays: "+n);throw new Error(e)}},this.isValidPair=e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","pair() params: "+e);throw new Error(t)}if(!Object(g.isValidUrl)(e.uri)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","pair() uri: "+e.uri);throw new Error(t)}},this.isValidApprove=async e=>{if(!Object(g.isValidParams)(e))throw new Error(Object(g.getInternalError)("MISSING_OR_INVALID","approve() params: "+e).message);const{id:t,namespaces:r,relayProtocol:n}=e;await this.isValidProposalId(t);const i=this.client.proposal.get(t),s=Object(g.isValidNamespaces)(r,"approve()");if(s)throw new Error(s.message);const o=Object(g.isConformingNamespaces)(i.requiredNamespaces,r,"update()");if(o)throw new Error(o.message);if(!Object(g.isValidString)(n,!0)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","approve() relayProtocol: "+n);throw new Error(e)}},this.isValidReject=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","reject() params: "+e);throw new Error(t)}const{id:t,reason:r}=e;if(await this.isValidProposalId(t),!Object(g.isValidErrorReason)(r)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","reject() reason: "+JSON.stringify(r));throw new Error(e)}},this.isValidSessionSettleRequest=e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","onSessionSettleRequest() params: "+e);throw new Error(t)}const{relay:t,controller:r,namespaces:n,expiry:i}=e;if(!Object(g.isValidRelay)(t)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","onSessionSettleRequest() relay protocol should be a string");throw new Error(e)}const s=Object(g.isValidController)(r,"onSessionSettleRequest()");if(s)throw new Error(s.message);const o=Object(g.isValidNamespaces)(n,"onSessionSettleRequest()");if(o)throw new Error(o.message);if(Object(g.isExpired)(i)){const{message:e}=Object(g.getInternalError)("EXPIRED","onSessionSettleRequest()");throw new Error(e)}},this.isValidUpdate=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","update() params: "+e);throw new Error(t)}const{topic:t,namespaces:r}=e;await this.isValidSessionTopic(t);const n=this.client.session.get(t),i=Object(g.isValidNamespaces)(r,"update()");if(i)throw new Error(i.message);const s=Object(g.isConformingNamespaces)(n.requiredNamespaces,r,"update()");if(s)throw new Error(s.message)},this.isValidExtend=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","extend() params: "+e);throw new Error(t)}const{topic:t}=e;await this.isValidSessionTopic(t)},this.isValidRequest=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","request() params: "+e);throw new Error(t)}const{topic:t,request:r,chainId:n}=e;await this.isValidSessionTopic(t);const{namespaces:i}=this.client.session.get(t);if(!Object(g.isValidNamespacesChainId)(i,n)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","request() chainId: "+n);throw new Error(e)}if(!Object(g.isValidRequest)(r)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","request() "+JSON.stringify(r));throw new Error(e)}if(!Object(g.isValidNamespacesRequest)(i,n,r.method)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","request() method: "+r.method);throw new Error(e)}},this.isValidRespond=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","respond() params: "+e);throw new Error(t)}const{topic:t,response:r}=e;if(await this.isValidSessionTopic(t),!Object(g.isValidResponse)(r)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","respond() response: "+JSON.stringify(r));throw new Error(e)}},this.isValidPing=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","ping() params: "+e);throw new Error(t)}const{topic:t}=e;await this.isValidSessionOrPairingTopic(t)},this.isValidEmit=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","emit() params: "+e);throw new Error(t)}const{topic:t,event:r,chainId:n}=e;await this.isValidSessionTopic(t);const{namespaces:i}=this.client.session.get(t);if(!Object(g.isValidNamespacesChainId)(i,n)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","emit() chainId: "+n);throw new Error(e)}if(!Object(g.isValidEvent)(r)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","emit() event: "+JSON.stringify(r));throw new Error(e)}if(!Object(g.isValidNamespacesEvent)(i,n,r.name)){const{message:e}=Object(g.getInternalError)("MISSING_OR_INVALID","emit() event: "+JSON.stringify(r));throw new Error(e)}},this.isValidDisconnect=async e=>{if(!Object(g.isValidParams)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","disconnect() params: "+e);throw new Error(t)}const{topic:t}=e;await this.isValidSessionOrPairingTopic(t)}}async createPairing(){const e=Object(g.generateRandomBytes32)(),t=await this.client.core.crypto.setSymKey(e),r=Object(g.calcExpiry)(v.FIVE_MINUTES),n={protocol:"iridium"},i={topic:t,expiry:r,relay:n,active:!1},s=Object(g.formatUri)({protocol:this.client.protocol,version:this.client.version,topic:t,symKey:e,relay:n});return await this.client.pairing.set(t,i),await this.client.core.relayer.subscribe(t),await this.setExpiry(t,r),{topic:t,uri:s}}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}registerRelayerEvents(){this.client.core.relayer.on(w,async e=>{const{topic:t,message:r}=e,n=await this.client.core.crypto.decode(t,r);Object(D.isJsonRpcRequest)(n)?(this.client.history.set(t,n),this.onRelayEventRequest({topic:t,payload:n})):Object(D.isJsonRpcResponse)(n)&&(await this.client.history.resolve(n),this.onRelayEventResponse({topic:t,payload:n}))})}registerExpirerEvents(){this.client.expirer.on(Z,async e=>{const{topic:t,id:r}=Object(g.parseExpirerTarget)(e.target);t?this.client.session.keys.includes(t)?(await this.deleteSession(t),this.client.events.emit("session_expire",{topic:t})):this.client.pairing.keys.includes(t)&&(await this.deletePairing(t),this.client.events.emit("pairing_expire",{topic:t})):r&&await this.deleteProposal(r)})}async isValidPairingTopic(e){if(!Object(g.isValidString)(e,!1)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","pairing topic should be a string: "+e);throw new Error(t)}if(!this.client.pairing.keys.includes(e)){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY","pairing topic doesn't exist: "+e);throw new Error(t)}if(Object(g.isExpired)(this.client.pairing.get(e).expiry)){await this.deletePairing(e);const{message:t}=Object(g.getInternalError)("EXPIRED","pairing topic: "+e);throw new Error(t)}}async isValidSessionTopic(e){if(!Object(g.isValidString)(e,!1)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","session topic should be a string: "+e);throw new Error(t)}if(!this.client.session.keys.includes(e)){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY","session topic doesn't exist: "+e);throw new Error(t)}if(Object(g.isExpired)(this.client.session.get(e).expiry)){await this.deleteSession(e);const{message:t}=Object(g.getInternalError)("EXPIRED","session topic: "+e);throw new Error(t)}}async isValidSessionOrPairingTopic(e){if(this.client.session.keys.includes(e))await this.isValidSessionTopic(e);else{if(!this.client.pairing.keys.includes(e)){if(Object(g.isValidString)(e,!1)){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY","session or pairing topic doesn't exist: "+e);throw new Error(t)}{const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","session or pairing topic should be a string: "+e);throw new Error(t)}}await this.isValidPairingTopic(e)}}async isValidProposalId(e){if(!Object(g.isValidId)(e)){const{message:t}=Object(g.getInternalError)("MISSING_OR_INVALID","proposal id should be a number: "+e);throw new Error(t)}if(!this.client.proposal.keys.includes(e)){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY","proposal id doesn't exist: "+e);throw new Error(t)}if(Object(g.isExpired)(this.client.proposal.get(e).expiry)){await this.deleteProposal(e);const{message:t}=Object(g.getInternalError)("EXPIRED","proposal id: "+e);throw new Error(t)}}}class ce extends l.IExpirer{constructor(e,t){super(e,t),this.core=e,this.logger=t,this.expirations=new Map,this.events=new s.EventEmitter,this.name="expirer",this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix="wc@2:client:",this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(e=>this.expirations.set(e.target,e)),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.has=e=>{try{const t=this.formatTarget(e);return void 0!==this.getExpiration(t)}catch(e){return!1}},this.set=(e,t)=>{this.isInitialized();const r=this.formatTarget(e),n={target:r,expiry:t};this.expirations.set(r,n),this.checkExpiry(r,n),this.events.emit($,{target:r,expiration:n})},this.get=e=>{this.isInitialized();const t=this.formatTarget(e);return this.getExpiration(t)},this.del=e=>{this.isInitialized();const t=this.formatTarget(e);if(this.has(t)){const e=this.getExpiration(t);this.expirations.delete(t),this.events.emit(X,{target:t,expiration:e})}},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.core,this.logger=Object(h.generateChildLogger)(t,this.name)}get context(){return Object(h.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("string"==typeof e)return Object(g.formatTopicTarget)(e);if("number"==typeof e)return Object(g.formatIdTarget)(e);const{message:t}=Object(g.getInternalError)("UNKNOWN_TYPE","Target type: "+typeof e);throw new Error(t)}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(Q)}async restore(){try{const e=await this.getExpirations();if(void 0===e)return;if(!e.length)return;if(this.expirations.size){const{message:e}=Object(g.getInternalError)("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}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 t=this.expirations.get(e);if(!t){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(t),new Error(t)}return t}checkExpiry(e,t){const{expiry:r}=t;Object(v.toMiliseconds)(r)-Date.now()<=0&&this.expire(e,t)}expire(e,t){this.expirations.delete(e),this.events.emit(Z,{target:e,expiration:t})}checkExpirations(){this.expirations.forEach((e,t)=>this.checkExpiry(t,e))}registerEventListeners(){this.core.heartbeat.on(u.HEARTBEAT_EVENTS.pulse,()=>this.checkExpirations()),this.events.on($,e=>{const t=$;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,data:e}),this.persist()}),this.events.on(Z,e=>{const t=Z;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,data:e}),this.persist()}),this.events.on(X,e=>{const t=X;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,data:e}),this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class ue extends l.IJsonRpcHistory{constructor(e,t){super(e,t),this.core=e,this.logger=t,this.records=new Map,this.events=new s.EventEmitter,this.name="history",this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix="wc@2:client:",this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(e=>this.records.set(e.id,e)),this.cached=[],this.registerEventListeners(),this.initialized=!0)},this.set=(e,t,r)=>{if(this.isInitialized(),this.logger.debug("Setting JSON-RPC request history record"),this.logger.trace({type:"method",method:"set",topic:e,request:t,chainId:r}),this.records.has(t.id))return;const n={id:t.id,topic:e,request:{method:t.method,params:t.params||null},chainId:r};this.records.set(n.id,n),this.events.emit(ee,n)},this.resolve=async e=>{if(this.isInitialized(),this.logger.debug("Updating JSON-RPC response history record"),this.logger.trace({type:"method",method:"update",response:e}),!this.records.has(e.id))return;const t=await this.getRecord(e.id);void 0===t.response&&(t.response=Object(D.isJsonRpcError)(e)?{error:e.error}:{result:e.result},this.records.set(t.id,t),this.events.emit(te,t))},this.get=async(e,t)=>{this.isInitialized(),this.logger.debug("Getting record"),this.logger.trace({type:"method",method:"get",topic:e,id:t});const r=await this.getRecord(t);if(r.topic!==e){const{message:e}=Object(g.getInternalError)("MISMATCHED_TOPIC",`${this.name}, ${t}`);throw this.logger.error(e),new Error(e)}return r},this.delete=(e,t)=>{this.isInitialized(),this.logger.debug("Deleting record"),this.logger.trace({type:"method",method:"delete",id:t}),this.values.forEach(r=>{if(r.topic===e){if(void 0!==t&&r.id!==t)return;this.records.delete(r.id),this.events.emit(re,r)}})},this.exists=async(e,t)=>{if(this.isInitialized(),!this.records.has(t))return!1;return(await this.getRecord(t)).topic===e},this.on=(e,t)=>{this.events.on(e,t)},this.once=(e,t)=>{this.events.once(e,t)},this.off=(e,t)=>{this.events.off(e,t)},this.removeListener=(e,t)=>{this.events.removeListener(e,t)},this.logger=Object(h.generateChildLogger)(t,this.name)}get context(){return Object(h.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(t=>{if(void 0!==t.response)return;const r={topic:t.topic,request:Object(D.formatJsonRpcRequest)(t.request.method,t.request.params,t.id),chainId:t.chainId};return e.push(r)}),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 t=this.records.get(e);if(!t){const{message:t}=Object(g.getInternalError)("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(t)}return t}async persist(){await this.setJsonRpcRecords(this.values),this.events.emit(ne)}async restore(){try{const e=await this.getJsonRpcRecords();if(void 0===e)return;if(!e.length)return;if(this.records.size){const{message:e}=Object(g.getInternalError)("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),new Error(e)}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(ee,e=>{const t=ee;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,record:e}),this.persist()}),this.events.on(te,e=>{const t=te;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,record:e}),this.persist()}),this.events.on(re,e=>{const t=re;this.logger.info("Emitting "+t),this.logger.debug({type:"event",event:t,record:e}),this.persist()})}isInitialized(){if(!this.initialized){const{message:e}=Object(g.getInternalError)("NOT_INITIALIZED",this.name);throw new Error(e)}}}class he extends B{constructor(e,t){super(e,t,"pairing","wc@2:client:"),this.core=e,this.logger=t}}class le extends B{constructor(e,t){super(e,t,"proposal","wc@2:client:"),this.core=e,this.logger=t}}class de extends B{constructor(e,t){super(e,t,"session","wc@2:client:"),this.core=e,this.logger=t}}class fe extends l.ISignClient{constructor(e){super(e),this.protocol="wc",this.version=2,this.name=W,this.events=new s.EventEmitter,this.on=(e,t)=>this.events.on(e,t),this.once=(e,t)=>this.events.once(e,t),this.off=(e,t)=>this.events.off(e,t),this.removeListener=(e,t)=>this.events.removeListener(e,t),this.connect=async e=>{try{return await this.engine.connect(e)}catch(e){throw this.logger.error(e.message),e}},this.pair=async e=>{try{return await this.engine.pair(e)}catch(e){throw this.logger.error(e.message),e}},this.approve=async e=>{try{return await this.engine.approve(e)}catch(e){throw this.logger.error(e.message),e}},this.reject=async e=>{try{return await this.engine.reject(e)}catch(e){throw this.logger.error(e.message),e}},this.update=async e=>{try{return await this.engine.update(e)}catch(e){throw this.logger.error(e.message),e}},this.extend=async e=>{try{return await this.engine.extend(e)}catch(e){throw this.logger.error(e.message),e}},this.request=async e=>{try{return await this.engine.request(e)}catch(e){throw this.logger.error(e.message),e}},this.respond=async e=>{try{return await this.engine.respond(e)}catch(e){throw this.logger.error(e.message),e}},this.ping=async e=>{try{return await this.engine.ping(e)}catch(e){throw this.logger.error(e.message),e}},this.emit=async e=>{try{return await this.engine.emit(e)}catch(e){throw this.logger.error(e.message),e}},this.disconnect=async e=>{try{return await this.engine.disconnect(e)}catch(e){throw this.logger.error(e.message),e}},this.find=e=>{try{return this.engine.find(e)}catch(e){throw this.logger.error(e.message),e}},this.name=(null==e?void 0:e.name)||W,this.metadata=(null==e?void 0:e.metadata)||Object(g.getAppMetadata)();const t=void 0!==(null==e?void 0:e.logger)&&"string"!=typeof(null==e?void 0:e.logger)?e.logger:i()(Object(h.getDefaultLoggerOptions)({level:(null==e?void 0:e.logger)||Y}));this.core=(null==e?void 0:e.core)||new G(e),this.logger=Object(h.generateChildLogger)(t,this.name),this.pairing=new he(this.core,this.logger),this.session=new de(this.core,this.logger),this.proposal=new le(this.core,this.logger),this.history=new ue(this.core,this.logger),this.expirer=new ce(this.core,this.logger),this.engine=new ae(this)}static async init(e){const t=new fe(e);return await t.initialize(),t}get context(){return Object(h.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}}}var pe=fe,ge=r(34);const ye={init:"signer_init",uri:"signer_uri",created:"signer_created",updated:"signer_updated",deleted:"signer_deleted",event:"signer_event"};class be extends ge.IJsonRpcConnection{constructor(e){super(),this.events=new s.EventEmitter,this.pending=!1,this.initializing=!1,this.requiredNamespaces=(null==e?void 0:e.requiredNamespaces)||{},this.opts=null==e?void 0:e.client}get connected(){return void 0!==this.session}get connecting(){return this.pending}get chains(){return this.session?Object(g.getChainsFromNamespaces)(this.session.namespaces):Object(g.getChainsFromRequiredNamespaces)(this.requiredNamespaces)}get accounts(){return this.session?Object(g.getAccountsFromNamespaces)(this.session.namespaces):[]}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async open(){if(this.pending)return new Promise((e,t)=>{this.events.once("open",()=>{if(this.events.once("open_error",e=>{t(e)}),void 0===this.client)return t(new Error("Sign Client not initialized"));e()})});try{this.pending=!0;const e=await this.register(),t=e.find({requiredNamespaces:this.requiredNamespaces});if(t.length)return this.onOpen(t[0]);const{uri:r,approval:n}=await e.connect({requiredNamespaces:this.requiredNamespaces});this.events.emit(ye.uri,{uri:r}),this.session=await n(),this.events.emit(ye.created,this.session),this.onOpen()}catch(e){throw this.events.emit("open_error",e),e}}async close(){if(void 0===this.session)return;const e=await this.register();await e.disconnect({topic:this.session.topic,reason:Object(g.getSdkError)("USER_DISCONNECTED")}),this.onClose()}async send(e,t){if(void 0===this.client&&(this.client=await this.register(),this.connected||await this.open()),void 0===this.session)throw new Error("Signer connection is missing session");this.client.request({topic:this.session.topic,request:e,chainId:null==t?void 0:t.chainId}).then(t=>this.events.emit("payload",Object(D.formatJsonRpcResult)(e.id,t))).catch(t=>this.events.emit("payload",Object(D.formatJsonRpcError)(e.id,t.message)))}async register(e=this.opts){if(void 0!==this.client)return this.client;if(this.initializing)return new Promise((e,t)=>{this.events.once("register_error",e=>{t(e)}),this.events.once(ye.init,()=>{if(void 0===this.client)return t(new Error("Sign Client not initialized"));e(this.client)})});if(function(e){return void 0!==e&&void 0!==e.context}(e))return this.client=e,this.registerEventListeners(),this.client;try{return this.initializing=!0,this.client=await pe.init(e),this.initializing=!1,this.registerEventListeners(),this.events.emit(ye.init),this.client}catch(e){throw this.events.emit("register_error",e),e}}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(){void 0!==this.client&&(this.client.on("session_event",e=>{var t;this.session&&(null===(t=this.session)||void 0===t?void 0:t.topic)!==e.topic||this.events.emit(ye.event,e.params)}),this.client.on("session_update",e=>{var t;void 0!==this.client&&(this.session&&(null===(t=this.session)||void 0===t?void 0:t.topic)!==e.topic||(this.session=this.client.session.get(e.topic),this.events.emit(ye.updated,this.session)))}),this.client.on("session_delete",e=>{var t;this.session&&(this.session&&(null===(t=this.session)||void 0===t?void 0:t.topic)!==e.topic||(this.onClose(),this.events.emit(ye.deleted,this.session),this.session=void 0))}))}}t.default=be},function(e,t,r){"use strict";r.r(t),r.d(t,"HttpConnection",(function(){return u}));var n=r(5),i=r(41),s=r.n(i),o=r(13),a=r(1);const c={headers:{Accept:"application/json","Content-Type":"application/json"},method:"POST"};class u{constructor(e){if(this.url=e,this.events=new n.EventEmitter,this.isAvailable=!1,this.registering=!1,!Object(a.isHttpUrl)(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,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}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,t){this.isAvailable||await this.register();try{const t=Object(o.b)(e),r=await s()(this.url,Object.assign(Object.assign({},c),{body:t})),n=await r.json();this.onPayload({data:n})}catch(t){this.onError(e.id,t)}}async register(e=this.url){if(!Object(a.isHttpUrl)(e))throw new Error("Provided URL is not compatible with HTTP connection: "+e);if(this.registering)return new Promise((e,t)=>{this.events.once("register_error",e=>{t(e)}),this.events.once("open",()=>{if(void 0===this.isAvailable)return t(new Error("HTTP connection is missing or invalid"));e()})});this.url=e,this.registering=!0;try{const t=Object(o.b)({id:1,jsonrpc:"2.0",method:"test",params:[]});await s()(e,Object.assign(Object.assign({},c),{body:t})),this.onOpen()}catch(e){const t=this.parseError(e);throw this.events.emit("register_error",t),this.onClose(),t}}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(void 0===e.data)return;const t="string"==typeof e.data?Object(o.a)(e.data):e.data;this.events.emit("payload",t)}onError(e,t){const r=this.parseError(t),n=r.message||r.toString(),i=Object(a.formatJsonRpcError)(e,n);this.events.emit("payload",i)}parseError(e,t=this.url){return Object(a.parseConnectionError)(e,t,"HTTP")}}var h=u;t.default=h}])}));
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@walletconnect/ethereum-provider",
|
|
3
3
|
"description": "Ethereum Provider for WalletConnect Protocol",
|
|
4
|
-
"version": "2.0.0-beta.
|
|
4
|
+
"version": "2.0.0-beta.102",
|
|
5
5
|
"author": "WalletConnect, Inc. <walletconnect.com>",
|
|
6
6
|
"homepage": "https://github.com/walletconnect/walletconnect-monorepo/",
|
|
7
7
|
"repository": {
|
|
@@ -38,10 +38,10 @@
|
|
|
38
38
|
"@walletconnect/jsonrpc-provider": "^1.0.3",
|
|
39
39
|
"@walletconnect/jsonrpc-types": "1.0.1",
|
|
40
40
|
"@walletconnect/jsonrpc-utils": "1.0.3",
|
|
41
|
-
"@walletconnect/sign-client": "^2.0.0-beta.
|
|
42
|
-
"@walletconnect/signer-connection": "^2.0.0-beta.
|
|
43
|
-
"@walletconnect/types": "^2.0.0-beta.
|
|
44
|
-
"@walletconnect/utils": "^2.0.0-beta.
|
|
41
|
+
"@walletconnect/sign-client": "^2.0.0-beta.102",
|
|
42
|
+
"@walletconnect/signer-connection": "^2.0.0-beta.102",
|
|
43
|
+
"@walletconnect/types": "^2.0.0-beta.102",
|
|
44
|
+
"@walletconnect/utils": "^2.0.0-beta.102",
|
|
45
45
|
"eip1193-provider": "^1.0.1"
|
|
46
46
|
},
|
|
47
47
|
"devDependencies": {
|