@dodoex/wallet-web3 0.4.1 → 0.5.1

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.
Files changed (93) hide show
  1. package/dist/{alchemy-provider-5870b6fa-529a90a3.js → alchemy-provider-5870b6fa-344082e7.js} +1 -1
  2. package/dist/{alchemy-websocket-provider-213da986-759f6418.js → alchemy-websocket-provider-213da986-16d1de52.js} +1 -1
  3. package/dist/blocto-d6430f01.js +1 -0
  4. package/dist/{ccip-faf1002d.js → ccip-2609ed44.js} +1 -1
  5. package/dist/cjs/{alchemy-provider-5870b6fa-fe0a0266.cjs → alchemy-provider-5870b6fa-0062f56f.cjs} +1 -1
  6. package/dist/cjs/{alchemy-websocket-provider-213da986-21a1ca55.cjs → alchemy-websocket-provider-213da986-09aec27a.cjs} +1 -1
  7. package/dist/cjs/{blocto-6fe4bdb0.cjs → blocto-a73fcce0.cjs} +1 -1
  8. package/dist/cjs/{ccip-09ffbdf5.cjs → ccip-08f69062.cjs} +1 -1
  9. package/dist/cjs/controllers/ConnectController.d.ts +3 -3
  10. package/dist/cjs/{draggabilly-f3785214.cjs → draggabilly-fded5132.cjs} +1 -1
  11. package/dist/cjs/id-5c0edd93.cjs +1 -0
  12. package/dist/cjs/index-0bce296a.cjs +1 -0
  13. package/dist/cjs/{index-74a7d024.cjs → index-13708edc.cjs} +2 -2
  14. package/dist/cjs/index-4d5278ce.cjs +1 -0
  15. package/dist/cjs/{index-4fe81b7c.cjs → index-5380b1b2.cjs} +2 -2
  16. package/dist/cjs/{index-ffc6db3b.cjs → index-6a583dfa.cjs} +2 -2
  17. package/dist/cjs/index-73fcc0af.cjs +1 -0
  18. package/dist/cjs/{index-3adb2103.cjs → index-758649bf.cjs} +3 -3
  19. package/dist/cjs/{index-7e1160c2.cjs → index-771863cd.cjs} +1 -1
  20. package/dist/cjs/{index-c8520c00.cjs → index-7ecb5d0e.cjs} +1 -1
  21. package/dist/cjs/index-bcba1dc0.cjs +28 -0
  22. package/dist/cjs/index.cjs +1 -1
  23. package/dist/cjs/index.es-d550ff97.cjs +9 -0
  24. package/dist/cjs/{interface-420c6f54.cjs → interface-4e3a18e3.cjs} +1 -1
  25. package/dist/cjs/{lib-typedarrays-4d44edfd.cjs → lib-typedarrays-e6a8d4d9.cjs} +1 -1
  26. package/dist/cjs/{portis-33db03aa.cjs → portis-e17268f4.cjs} +2 -2
  27. package/dist/cjs/provider-e3b3781f.cjs +1 -0
  28. package/dist/cjs/providers/connector/alchemy/index.d.ts +12 -8
  29. package/dist/cjs/providers/connector/index.d.ts +12 -8
  30. package/dist/cjs/providers/wallets/index.d.ts +3 -0
  31. package/dist/cjs/rainbow-72bdb588.cjs +1 -0
  32. package/dist/cjs/{sha224-4ef7a67a.cjs → sha224-5442aa65.cjs} +1 -1
  33. package/dist/cjs/{sha256-bf11d5b9.cjs → sha256-9e27be55.cjs} +1 -1
  34. package/dist/cjs/{typed-data-8fabe1a4.cjs → typed-data-b7e9617e.cjs} +1 -1
  35. package/dist/cjs/{uAuth-3a06c00b.cjs → uAuth-efc566c6.cjs} +1 -1
  36. package/dist/cjs/walletConnect-5f5a0d26.cjs +1 -0
  37. package/dist/cjs/{walletLink-36f21f64.cjs → walletLink-6479277c.cjs} +2 -2
  38. package/dist/controllers/ConnectController.d.ts +3 -3
  39. package/dist/{draggabilly-3fa46d2e.js → draggabilly-a366a16f.js} +1 -1
  40. package/dist/id-56f6d32e.js +1 -0
  41. package/dist/index-0ec2588e.js +1 -0
  42. package/dist/index-176bccde.js +1 -0
  43. package/dist/index-179fc68d.js +9 -0
  44. package/dist/{index-29c53851.js → index-56cfb91e.js} +3 -3
  45. package/dist/index-56e691a9.js +1 -0
  46. package/dist/index-8ed34e2c.js +28 -0
  47. package/dist/{index-c01613a0.js → index-98d21a1d.js} +1 -1
  48. package/dist/{index-963ba8d6.js → index-cf83e495.js} +2 -2
  49. package/dist/index-d21d7af9.js +17 -0
  50. package/dist/index-d422a772.js +1 -0
  51. package/dist/index.es-741ac2a7.js +9 -0
  52. package/dist/index.js +1 -1
  53. package/dist/{interface-6e7170f0.js → interface-5a2b8c6d.js} +1 -1
  54. package/dist/lib-typedarrays-fe2fd10b.js +1 -0
  55. package/dist/{portis-2973f555.js → portis-e325f944.js} +2 -2
  56. package/dist/provider-037ebaad.js +1 -0
  57. package/dist/providers/connector/alchemy/index.d.ts +12 -8
  58. package/dist/providers/connector/index.d.ts +12 -8
  59. package/dist/providers/wallets/index.d.ts +3 -0
  60. package/dist/rainbow-f6997baf.js +1 -0
  61. package/dist/sha224-e5675fdf.js +1 -0
  62. package/dist/{sha256-1508dfb3.js → sha256-5bf4e11a.js} +1 -1
  63. package/dist/{typed-data-282a4cc5.js → typed-data-802bfa08.js} +1 -1
  64. package/dist/uAuth-6c28d203.js +1 -0
  65. package/dist/walletConnect-3b17ffd7.js +1 -0
  66. package/dist/walletLink-22997bb2.js +3 -0
  67. package/package.json +11 -3
  68. package/dist/blocto-93b5fc5f.js +0 -1
  69. package/dist/cjs/id-e4e53f1e.cjs +0 -1
  70. package/dist/cjs/index-3e22c60c.cjs +0 -1
  71. package/dist/cjs/index-5a91837f.cjs +0 -28
  72. package/dist/cjs/index-729f3021.cjs +0 -1
  73. package/dist/cjs/index-ed1986e9.cjs +0 -1
  74. package/dist/cjs/index.es-e15fde5c.cjs +0 -9
  75. package/dist/cjs/provider-8beaa665.cjs +0 -1
  76. package/dist/cjs/rainbow-be577e53.cjs +0 -1
  77. package/dist/cjs/walletConnect-ca05245c.cjs +0 -1
  78. package/dist/id-b95b60c1.js +0 -1
  79. package/dist/index-235cddea.js +0 -1
  80. package/dist/index-40c931bd.js +0 -17
  81. package/dist/index-816ddd07.js +0 -9
  82. package/dist/index-a24bac60.js +0 -1
  83. package/dist/index-b58aa407.js +0 -28
  84. package/dist/index-ce99c6e1.js +0 -1
  85. package/dist/index-e6045dea.js +0 -1
  86. package/dist/index.es-0000f8e2.js +0 -9
  87. package/dist/lib-typedarrays-7d2a82a7.js +0 -1
  88. package/dist/provider-368389e6.js +0 -1
  89. package/dist/rainbow-ec9dff26.js +0 -1
  90. package/dist/sha224-d1d7447d.js +0 -1
  91. package/dist/uAuth-7b4feb32.js +0 -1
  92. package/dist/walletConnect-f42045ea.js +0 -1
  93. package/dist/walletLink-7f12834a.js +0 -3
@@ -0,0 +1,9 @@
1
+ "use strict";var e=require("events"),t=require("./_commonjs-dynamic-modules-f09a98c7.cjs"),r=require("./index-bcba1dc0.cjs");function n(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}require("@ethersproject/providers"),require("zustand"),require("@ethersproject/bytes"),require("@ethersproject/properties"),require("@ethersproject/address"),require("@ethersproject/abstract-signer"),require("buffer"),require("@ethersproject/abstract-provider"),require("@ethersproject/contracts"),require("@ethersproject/constants"),require("@ethersproject/transactions");var i=n(e),s={},o={},a={},c={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.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},e.add=function(e,t){return e+t|0},e.sub=function(e,t){return e-t|0},e.rotl=function(e,t){return e<<t|e>>>32-t},e.rotr=function(e,t){return e<<32-t|e>>>t},e.isInteger=Number.isInteger||function(e){return"number"==typeof e&&isFinite(e)&&Math.floor(e)===e},e.MAX_SAFE_INTEGER=9007199254740991,e.isSafeInteger=function(t){return e.isInteger(t)&&t>=-e.MAX_SAFE_INTEGER&&t<=e.MAX_SAFE_INTEGER}}(c),Object.defineProperty(a,"__esModule",{value:!0});var u=c;function h(e,t,r){return void 0===t&&(t=new Uint8Array(2)),void 0===r&&(r=0),t[r+0]=e>>>8,t[r+1]=e>>>0,t}function l(e,t,r){return void 0===t&&(t=new Uint8Array(2)),void 0===r&&(r=0),t[r+0]=e>>>0,t[r+1]=e>>>8,t}function f(e,t){return void 0===t&&(t=0),e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]}function p(e,t){return void 0===t&&(t=0),(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}function d(e,t){return void 0===t&&(t=0),e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t]}function g(e,t){return void 0===t&&(t=0),(e[t+3]<<24|e[t+2]<<16|e[t+1]<<8|e[t])>>>0}function y(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),t[r+0]=e>>>24,t[r+1]=e>>>16,t[r+2]=e>>>8,t[r+3]=e>>>0,t}function v(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),t[r+0]=e>>>0,t[r+1]=e>>>8,t[r+2]=e>>>16,t[r+3]=e>>>24,t}function _(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),y(e/4294967296>>>0,t,r),y(e>>>0,t,r+4),t}function m(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),v(e>>>0,t,r),v(e/4294967296>>>0,t,r+4),t}a.readInt16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])<<16>>16},a.readUint16BE=function(e,t){return void 0===t&&(t=0),(e[t+0]<<8|e[t+1])>>>0},a.readInt16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])<<16>>16},a.readUint16LE=function(e,t){return void 0===t&&(t=0),(e[t+1]<<8|e[t])>>>0},a.writeUint16BE=h,a.writeInt16BE=h,a.writeUint16LE=l,a.writeInt16LE=l,a.readInt32BE=f,a.readUint32BE=p,a.readInt32LE=d,a.readUint32LE=g,a.writeUint32BE=y,a.writeInt32BE=y,a.writeUint32LE=v,a.writeInt32LE=v,a.readInt64BE=function(e,t){void 0===t&&(t=0);var r=f(e,t),n=f(e,t+4);return 4294967296*r+n-4294967296*(n>>31)},a.readUint64BE=function(e,t){return void 0===t&&(t=0),4294967296*p(e,t)+p(e,t+4)},a.readInt64LE=function(e,t){void 0===t&&(t=0);var r=d(e,t);return 4294967296*d(e,t+4)+r-4294967296*(r>>31)},a.readUint64LE=function(e,t){void 0===t&&(t=0);var r=g(e,t);return 4294967296*g(e,t+4)+r},a.writeUint64BE=_,a.writeInt64BE=_,a.writeUint64LE=m,a.writeInt64LE=m,a.readUintBE=function(e,t,r){if(void 0===r&&(r=0),e%8!=0)throw new Error("readUintBE supports only bitLengths divisible by 8");if(e/8>t.length-r)throw new Error("readUintBE: array is too short for the given bitLength");for(var n=0,i=1,s=e/8+r-1;s>=r;s--)n+=t[s]*i,i*=256;return n},a.readUintLE=function(e,t,r){if(void 0===r&&(r=0),e%8!=0)throw new Error("readUintLE supports only bitLengths divisible by 8");if(e/8>t.length-r)throw new Error("readUintLE: array is too short for the given bitLength");for(var n=0,i=1,s=r;s<r+e/8;s++)n+=t[s]*i,i*=256;return n},a.writeUintBE=function(e,t,r,n){if(void 0===r&&(r=new Uint8Array(e/8)),void 0===n&&(n=0),e%8!=0)throw new Error("writeUintBE supports only bitLengths divisible by 8");if(!u.isSafeInteger(t))throw new Error("writeUintBE value must be an integer");for(var i=1,s=e/8+n-1;s>=n;s--)r[s]=t/i&255,i*=256;return r},a.writeUintLE=function(e,t,r,n){if(void 0===r&&(r=new Uint8Array(e/8)),void 0===n&&(n=0),e%8!=0)throw new Error("writeUintLE supports only bitLengths divisible by 8");if(!u.isSafeInteger(t))throw new Error("writeUintLE value must be an integer");for(var i=1,s=n;s<n+e/8;s++)r[s]=t/i&255,i*=256;return r},a.readFloat32BE=function(e,t){return void 0===t&&(t=0),new DataView(e.buffer,e.byteOffset,e.byteLength).getFloat32(t)},a.readFloat32LE=function(e,t){return void 0===t&&(t=0),new DataView(e.buffer,e.byteOffset,e.byteLength).getFloat32(t,!0)},a.readFloat64BE=function(e,t){return void 0===t&&(t=0),new DataView(e.buffer,e.byteOffset,e.byteLength).getFloat64(t)},a.readFloat64LE=function(e,t){return void 0===t&&(t=0),new DataView(e.buffer,e.byteOffset,e.byteLength).getFloat64(t,!0)},a.writeFloat32BE=function(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),new DataView(t.buffer,t.byteOffset,t.byteLength).setFloat32(r,e),t},a.writeFloat32LE=function(e,t,r){return void 0===t&&(t=new Uint8Array(4)),void 0===r&&(r=0),new DataView(t.buffer,t.byteOffset,t.byteLength).setFloat32(r,e,!0),t},a.writeFloat64BE=function(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),new DataView(t.buffer,t.byteOffset,t.byteLength).setFloat64(r,e),t},a.writeFloat64LE=function(e,t,r){return void 0===t&&(t=new Uint8Array(8)),void 0===r&&(r=0),new DataView(t.buffer,t.byteOffset,t.byteLength).setFloat64(r,e,!0),t};var w={};Object.defineProperty(w,"__esModule",{value:!0}),w.wipe=function(e){for(var t=0;t<e.length;t++)e[t]=0;return e},Object.defineProperty(o,"__esModule",{value:!0});var b=a,E=w,S=20;function I(e,t,r){for(var n=1634760805,i=857760878,s=2036477234,o=1797285236,a=r[3]<<24|r[2]<<16|r[1]<<8|r[0],c=r[7]<<24|r[6]<<16|r[5]<<8|r[4],u=r[11]<<24|r[10]<<16|r[9]<<8|r[8],h=r[15]<<24|r[14]<<16|r[13]<<8|r[12],l=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],d=r[31]<<24|r[30]<<16|r[29]<<8|r[28],g=t[3]<<24|t[2]<<16|t[1]<<8|t[0],y=t[7]<<24|t[6]<<16|t[5]<<8|t[4],v=t[11]<<24|t[10]<<16|t[9]<<8|t[8],_=t[15]<<24|t[14]<<16|t[13]<<8|t[12],m=n,w=i,E=s,I=o,O=a,P=c,N=u,A=h,x=l,C=f,T=p,R=d,j=g,L=y,U=v,M=_,D=0;D<S;D+=2)O=(O^=x=x+(j=(j^=m=m+O|0)>>>16|j<<16)|0)>>>20|O<<12,P=(P^=C=C+(L=(L^=w=w+P|0)>>>16|L<<16)|0)>>>20|P<<12,N=(N^=T=T+(U=(U^=E=E+N|0)>>>16|U<<16)|0)>>>20|N<<12,A=(A^=R=R+(M=(M^=I=I+A|0)>>>16|M<<16)|0)>>>20|A<<12,N=(N^=T=T+(U=(U^=E=E+N|0)>>>24|U<<8)|0)>>>25|N<<7,A=(A^=R=R+(M=(M^=I=I+A|0)>>>24|M<<8)|0)>>>25|A<<7,P=(P^=C=C+(L=(L^=w=w+P|0)>>>24|L<<8)|0)>>>25|P<<7,O=(O^=x=x+(j=(j^=m=m+O|0)>>>24|j<<8)|0)>>>25|O<<7,P=(P^=T=T+(M=(M^=m=m+P|0)>>>16|M<<16)|0)>>>20|P<<12,N=(N^=R=R+(j=(j^=w=w+N|0)>>>16|j<<16)|0)>>>20|N<<12,A=(A^=x=x+(L=(L^=E=E+A|0)>>>16|L<<16)|0)>>>20|A<<12,O=(O^=C=C+(U=(U^=I=I+O|0)>>>16|U<<16)|0)>>>20|O<<12,A=(A^=x=x+(L=(L^=E=E+A|0)>>>24|L<<8)|0)>>>25|A<<7,O=(O^=C=C+(U=(U^=I=I+O|0)>>>24|U<<8)|0)>>>25|O<<7,N=(N^=R=R+(j=(j^=w=w+N|0)>>>24|j<<8)|0)>>>25|N<<7,P=(P^=T=T+(M=(M^=m=m+P|0)>>>24|M<<8)|0)>>>25|P<<7;b.writeUint32LE(m+n|0,e,0),b.writeUint32LE(w+i|0,e,4),b.writeUint32LE(E+s|0,e,8),b.writeUint32LE(I+o|0,e,12),b.writeUint32LE(O+a|0,e,16),b.writeUint32LE(P+c|0,e,20),b.writeUint32LE(N+u|0,e,24),b.writeUint32LE(A+h|0,e,28),b.writeUint32LE(x+l|0,e,32),b.writeUint32LE(C+f|0,e,36),b.writeUint32LE(T+p|0,e,40),b.writeUint32LE(R+d|0,e,44),b.writeUint32LE(j+g|0,e,48),b.writeUint32LE(L+y|0,e,52),b.writeUint32LE(U+v|0,e,56),b.writeUint32LE(M+_|0,e,60)}function O(e,t,r,n,i){if(void 0===i&&(i=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 s,o;if(0===i){if(8!==t.length&&12!==t.length)throw new Error("ChaCha nonce must be 8 or 12 bytes");o=(s=new Uint8Array(16)).length-t.length,s.set(t,o)}else{if(16!==t.length)throw new Error("ChaCha nonce with counter must be 16 bytes");s=t,o=i}for(var a=new Uint8Array(64),c=0;c<r.length;c+=64){I(a,s,e);for(var u=c;u<c+64&&u<r.length;u++)n[u]=r[u]^a[u-c];P(s,0,o)}return E.wipe(a),0===i&&E.wipe(s),n}function P(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")}o.streamXOR=O,o.stream=function(e,t,r,n){return void 0===n&&(n=0),E.wipe(r),O(e,t,r,r,n)};var N={},A={};function x(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(A,"__esModule",{value:!0}),A.select=function(e,t,r){return~(e-1)&t|e-1&r},A.lessOrEqual=function(e,t){return(0|e)-(0|t)-1>>>31&1},A.compare=x,A.equal=function(e,t){return 0!==e.length&&0!==t.length&&0!==x(e,t)},function(e){Object.defineProperty(e,"__esModule",{value:!0});var t=A,r=w;e.DIGEST_LENGTH=16;var n=function(){function t(t){this.digestLength=e.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=t[0]|t[1]<<8;this._r[0]=8191&r;var n=t[2]|t[3]<<8;this._r[1]=8191&(r>>>13|n<<3);var i=t[4]|t[5]<<8;this._r[2]=7939&(n>>>10|i<<6);var s=t[6]|t[7]<<8;this._r[3]=8191&(i>>>7|s<<9);var o=t[8]|t[9]<<8;this._r[4]=255&(s>>>4|o<<12),this._r[5]=o>>>1&8190;var a=t[10]|t[11]<<8;this._r[6]=8191&(o>>>14|a<<2);var c=t[12]|t[13]<<8;this._r[7]=8065&(a>>>11|c<<5);var u=t[14]|t[15]<<8;this._r[8]=8191&(c>>>8|u<<8),this._r[9]=u>>>5&127,this._pad[0]=t[16]|t[17]<<8,this._pad[1]=t[18]|t[19]<<8,this._pad[2]=t[20]|t[21]<<8,this._pad[3]=t[22]|t[23]<<8,this._pad[4]=t[24]|t[25]<<8,this._pad[5]=t[26]|t[27]<<8,this._pad[6]=t[28]|t[29]<<8,this._pad[7]=t[30]|t[31]<<8}return t.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],f=this._h[8],p=this._h[9],d=this._r[0],g=this._r[1],y=this._r[2],v=this._r[3],_=this._r[4],m=this._r[5],w=this._r[6],b=this._r[7],E=this._r[8],S=this._r[9];r>=16;){var I=e[t+0]|e[t+1]<<8;i+=8191&I;var O=e[t+2]|e[t+3]<<8;s+=8191&(I>>>13|O<<3);var P=e[t+4]|e[t+5]<<8;o+=8191&(O>>>10|P<<6);var N=e[t+6]|e[t+7]<<8;a+=8191&(P>>>7|N<<9);var A=e[t+8]|e[t+9]<<8;c+=8191&(N>>>4|A<<12),u+=A>>>1&8191;var x=e[t+10]|e[t+11]<<8;h+=8191&(A>>>14|x<<2);var C=e[t+12]|e[t+13]<<8;l+=8191&(x>>>11|C<<5);var T=e[t+14]|e[t+15]<<8,R=0,j=R;j+=i*d,j+=s*(5*S),j+=o*(5*E),j+=a*(5*b),R=(j+=c*(5*w))>>>13,j&=8191,j+=u*(5*m),j+=h*(5*_),j+=l*(5*v),j+=(f+=8191&(C>>>8|T<<8))*(5*y);var L=R+=(j+=(p+=T>>>5|n)*(5*g))>>>13;L+=i*g,L+=s*d,L+=o*(5*S),L+=a*(5*E),R=(L+=c*(5*b))>>>13,L&=8191,L+=u*(5*w),L+=h*(5*m),L+=l*(5*_),L+=f*(5*v),R+=(L+=p*(5*y))>>>13,L&=8191;var U=R;U+=i*y,U+=s*g,U+=o*d,U+=a*(5*S),R=(U+=c*(5*E))>>>13,U&=8191,U+=u*(5*b),U+=h*(5*w),U+=l*(5*m),U+=f*(5*_);var M=R+=(U+=p*(5*v))>>>13;M+=i*v,M+=s*y,M+=o*g,M+=a*d,R=(M+=c*(5*S))>>>13,M&=8191,M+=u*(5*E),M+=h*(5*b),M+=l*(5*w),M+=f*(5*m);var D=R+=(M+=p*(5*_))>>>13;D+=i*_,D+=s*v,D+=o*y,D+=a*g,R=(D+=c*d)>>>13,D&=8191,D+=u*(5*S),D+=h*(5*E),D+=l*(5*b),D+=f*(5*w);var k=R+=(D+=p*(5*m))>>>13;k+=i*m,k+=s*_,k+=o*v,k+=a*y,R=(k+=c*g)>>>13,k&=8191,k+=u*d,k+=h*(5*S),k+=l*(5*E),k+=f*(5*b);var z=R+=(k+=p*(5*w))>>>13;z+=i*w,z+=s*m,z+=o*_,z+=a*v,R=(z+=c*y)>>>13,z&=8191,z+=u*g,z+=h*d,z+=l*(5*S),z+=f*(5*E);var $=R+=(z+=p*(5*b))>>>13;$+=i*b,$+=s*w,$+=o*m,$+=a*_,R=($+=c*v)>>>13,$&=8191,$+=u*y,$+=h*g,$+=l*d,$+=f*(5*S);var q=R+=($+=p*(5*E))>>>13;q+=i*E,q+=s*b,q+=o*w,q+=a*m,R=(q+=c*_)>>>13,q&=8191,q+=u*v,q+=h*y,q+=l*g,q+=f*d;var H=R+=(q+=p*(5*S))>>>13;H+=i*S,H+=s*E,H+=o*b,H+=a*w,R=(H+=c*m)>>>13,H&=8191,H+=u*_,H+=h*v,H+=l*y,H+=f*g,i=j=8191&(R=(R=((R+=(H+=p*d)>>>13)<<2)+R|0)+(j&=8191)|0),s=L+=R>>>=13,o=U&=8191,a=M&=8191,c=D&=8191,u=k&=8191,h=z&=8191,l=$&=8191,f=q&=8191,p=H&=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]=f,this._h[9]=p},t.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},t.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},t.prototype.digest=function(){if(this._finished)throw new Error("Poly1305 was finished");var e=new Uint8Array(16);return this.finish(e),e},t.prototype.clean=function(){return r.wipe(this._buffer),r.wipe(this._r),r.wipe(this._h),r.wipe(this._pad),this._leftover=0,this._fin=0,this._finished=!0,this},t}();e.Poly1305=n,e.oneTimeAuth=function(e,t){var r=new n(e);r.update(t);var i=r.digest();return r.clean(),i},e.equal=function(r,n){return r.length===e.DIGEST_LENGTH&&n.length===e.DIGEST_LENGTH&&t.equal(r,n)}}(N),function(e){Object.defineProperty(e,"__esModule",{value:!0});var t=o,r=N,n=w,i=a,s=A;e.KEY_LENGTH=32,e.NONCE_LENGTH=12,e.TAG_LENGTH=16;var c=new Uint8Array(16),u=function(){function o(t){if(this.nonceLength=e.NONCE_LENGTH,this.tagLength=e.TAG_LENGTH,t.length!==e.KEY_LENGTH)throw new Error("ChaCha20Poly1305 needs 32-byte key");this._key=new Uint8Array(t)}return o.prototype.seal=function(e,r,i,s){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);t.stream(this._key,o,a,4);var c,u=r.length+this.tagLength;if(s){if(s.length!==u)throw new Error("ChaCha20Poly1305: incorrect destination length");c=s}else c=new Uint8Array(u);return t.streamXOR(this._key,o,r,c,4),this._authenticate(c.subarray(c.length-this.tagLength,c.length),a,c.subarray(0,c.length-this.tagLength),i),n.wipe(o),c},o.prototype.open=function(e,r,i,o){if(e.length>16)throw new Error("ChaCha20Poly1305: incorrect nonce length");if(r.length<this.tagLength)return null;var a=new Uint8Array(16);a.set(e,a.length-e.length);var c=new Uint8Array(32);t.stream(this._key,a,c,4);var u=new Uint8Array(this.tagLength);if(this._authenticate(u,c,r.subarray(0,r.length-this.tagLength),i),!s.equal(u,r.subarray(r.length-this.tagLength,r.length)))return null;var h,l=r.length-this.tagLength;if(o){if(o.length!==l)throw new Error("ChaCha20Poly1305: incorrect destination length");h=o}else h=new Uint8Array(l);return t.streamXOR(this._key,a,r.subarray(0,r.length-this.tagLength),h,4),n.wipe(a),h},o.prototype.clean=function(){return n.wipe(this._key),this},o.prototype._authenticate=function(e,t,s,o){var a=new r.Poly1305(t);o&&(a.update(o),o.length%16>0&&a.update(c.subarray(o.length%16))),a.update(s),s.length%16>0&&a.update(c.subarray(s.length%16));var u=new Uint8Array(8);o&&i.writeUint64LE(o.length,u),a.update(u),i.writeUint64LE(s.length,u),a.update(u);for(var h=a.digest(),l=0;l<h.length;l++)e[l]=h[l];a.clean(),n.wipe(h),n.wipe(u)},o}();e.ChaCha20Poly1305=u}(s);var C={},T={},R={};Object.defineProperty(R,"__esModule",{value:!0}),R.isSerializableHash=function(e){return void 0!==e.saveState&&void 0!==e.restoreState&&void 0!==e.cleanSavedState},Object.defineProperty(T,"__esModule",{value:!0});var j=R,L=A,U=w,M=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 n=0;n<r.length;n++)r[n]^=54;this._inner.update(r);for(n=0;n<r.length;n++)r[n]^=106;this._outer.update(r),j.isSerializableHash(this._inner)&&j.isSerializableHash(this._outer)&&(this._innerKeyedState=this._inner.saveState(),this._outerKeyedState=this._outer.saveState()),U.wipe(r)}return e.prototype.reset=function(){if(!j.isSerializableHash(this._inner)||!j.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(){j.isSerializableHash(this._inner)&&this._inner.cleanSavedState(this._innerKeyedState),j.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(!j.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(!j.isSerializableHash(this._inner)||!j.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(!j.isSerializableHash(this._inner))throw new Error("hmac: can't cleanSavedState() because hash doesn't implement it");this._inner.cleanSavedState(e)},e}();T.HMAC=M,T.hmac=function(e,t,r){var n=new M(e,t);n.update(r);var i=n.digest();return n.clean(),i},T.equal=L.equal,Object.defineProperty(C,"__esModule",{value:!0});var D=T,k=w,z=function(){function e(e,t,r,n){void 0===r&&(r=new Uint8Array(0)),this._counter=new Uint8Array(1),this._hash=e,this._info=n;var i=D.hmac(this._hash,r,t);this._hmac=new D.HMAC(e,i),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(),k.wipe(this._buffer),k.wipe(this._counter),this._bufpos=0},e}(),$=C.HKDF=z,q={},H={},K={};Object.defineProperty(K,"__esModule",{value:!0}),K.BrowserRandomSource=void 0;K.BrowserRandomSource=class{constructor(){this.isAvailable=!1,this.isInstantiated=!1;const e="undefined"!=typeof self?self.crypto||self.msCrypto:null;e&&void 0!==e.getRandomValues&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Browser random byte generator is not available.");const t=new Uint8Array(e);for(let e=0;e<t.length;e+=65536)this._crypto.getRandomValues(t.subarray(e,e+Math.min(t.length-e,65536)));return t}};var V={};Object.defineProperty(V,"__esModule",{value:!0}),V.NodeRandomSource=void 0;const B=w;V.NodeRandomSource=class{constructor(){if(this.isAvailable=!1,this.isInstantiated=!1,void 0!==t.commonjsRequire){const e=r.require$$1;e&&e.randomBytes&&(this._crypto=e,this.isAvailable=!0,this.isInstantiated=!0)}}randomBytes(e){if(!this.isAvailable||!this._crypto)throw new Error("Node.js random byte generator is not available.");let t=this._crypto.randomBytes(e);if(t.length!==e)throw new Error("NodeRandomSource: got fewer bytes than requested");const r=new Uint8Array(e);for(let e=0;e<r.length;e++)r[e]=t[e];return(0,B.wipe)(t),r}},Object.defineProperty(H,"__esModule",{value:!0}),H.SystemRandomSource=void 0;const F=K,G=V;H.SystemRandomSource=class{constructor(){return this.isAvailable=!1,this.name="",this._source=new F.BrowserRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Browser")):(this._source=new G.NodeRandomSource,this._source.isAvailable?(this.isAvailable=!0,void(this.name="Node")):void 0)}randomBytes(e){if(!this.isAvailable)throw new Error("System random byte generator is not available.");return this._source.randomBytes(e)}},function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.randomStringForEntropy=e.randomString=e.randomUint32=e.randomBytes=e.defaultRandomSource=void 0;const t=H,r=a,n=w;function i(t,r=e.defaultRandomSource){return r.randomBytes(t)}e.defaultRandomSource=new t.SystemRandomSource,e.randomBytes=i,e.randomUint32=function(t=e.defaultRandomSource){const s=i(4,t),o=(0,r.readUint32LE)(s);return(0,n.wipe)(s),o};const s="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";function o(t,r=s,o=e.defaultRandomSource){if(r.length<2)throw new Error("randomString charset is too short");if(r.length>256)throw new Error("randomString charset is too long");let a="";const c=r.length,u=256-256%c;for(;t>0;){const e=i(Math.ceil(256*t/u),o);for(let n=0;n<e.length&&t>0;n++){const i=e[n];i<u&&(a+=r.charAt(i%c),t--)}(0,n.wipe)(e)}return a}e.randomString=o,e.randomStringForEntropy=function(t,r=s,n=e.defaultRandomSource){return o(Math.ceil(t/(Math.log(r.length)/Math.LN2)),r,n)}}(q);var W={};!function(e){Object.defineProperty(e,"__esModule",{value:!0});var t=a,r=w;e.DIGEST_LENGTH=32,e.BLOCK_SIZE=64;var n=function(){function n(){this.digestLength=e.DIGEST_LENGTH,this.blockSize=e.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 n.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},n.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},n.prototype.clean=function(){r.wipe(this._buffer),r.wipe(this._temp),this.reset()},n.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&&(s(this._temp,this._state,this._buffer,0,this.blockSize),this._bufferLength=0)}for(t>=this.blockSize&&(r=s(this._temp,this._state,e,r,t),t%=this.blockSize);t>0;)this._buffer[this._bufferLength++]=e[r++],t--;return this},n.prototype.finish=function(e){if(!this._finished){var r=this._bytesHashed,n=this._bufferLength,i=r/536870912|0,o=r<<3,a=r%64<56?64:128;this._buffer[n]=128;for(var c=n+1;c<a-8;c++)this._buffer[c]=0;t.writeUint32BE(i,this._buffer,a-8),t.writeUint32BE(o,this._buffer,a-4),s(this._temp,this._state,this._buffer,0,a),this._finished=!0}for(c=0;c<this.digestLength/4;c++)t.writeUint32BE(this._state[c],e,4*c);return this},n.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},n.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}},n.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},n.prototype.cleanSavedState=function(e){r.wipe(e.state),e.buffer&&r.wipe(e.buffer),e.bufferLength=0,e.bytesHashed=0},n}();e.SHA256=n;var i=new Int32Array([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]);function s(e,r,n,s,o){for(;o>=64;){for(var a=r[0],c=r[1],u=r[2],h=r[3],l=r[4],f=r[5],p=r[6],d=r[7],g=0;g<16;g++){var y=s+4*g;e[g]=t.readUint32BE(n,y)}for(g=16;g<64;g++){var v=e[g-2],_=(v>>>17|v<<15)^(v>>>19|v<<13)^v>>>10,m=((v=e[g-15])>>>7|v<<25)^(v>>>18|v<<14)^v>>>3;e[g]=(_+e[g-7]|0)+(m+e[g-16]|0)}for(g=0;g<64;g++){_=(((l>>>6|l<<26)^(l>>>11|l<<21)^(l>>>25|l<<7))+(l&f^~l&p)|0)+(d+(i[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;d=p,p=f,f=l,l=h+_|0,h=u,u=c,c=a,a=_+m|0}r[0]+=a,r[1]+=c,r[2]+=u,r[3]+=h,r[4]+=l,r[5]+=f,r[6]+=p,r[7]+=d,s+=64,o-=64}return s}e.hash=function(e){var t=new n;t.update(e);var r=t.digest();return t.clean(),r}}(W);var Y={};function J(e){return null!=globalThis.Buffer?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function X(e=0){return null!=globalThis.Buffer&&null!=globalThis.Buffer.allocUnsafe?J(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function Z(e,t){t||(t=e.reduce(((e,t)=>e+t.length),0));const r=X(t);let n=0;for(const t of e)r.set(t,n),n+=t.length;return J(r)}!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.sharedKey=e.generateKeyPair=e.generateKeyPairFromSeed=e.scalarMultBase=e.scalarMult=e.SHARED_KEY_LENGTH=e.SECRET_KEY_LENGTH=e.PUBLIC_KEY_LENGTH=void 0;const t=q,r=w;function n(e){const t=new Float64Array(16);if(e)for(let r=0;r<e.length;r++)t[r]=e[r];return t}e.PUBLIC_KEY_LENGTH=32,e.SECRET_KEY_LENGTH=32,e.SHARED_KEY_LENGTH=32;const i=new Uint8Array(32);i[0]=9;const s=n([56129,1]);function o(e){let t=1;for(let r=0;r<16;r++){let n=e[r]+t+65535;t=Math.floor(n/65536),e[r]=n-65536*t}e[0]+=t-1+37*(t-1)}function a(e,t,r){const n=~(r-1);for(let r=0;r<16;r++){const i=n&(e[r]^t[r]);e[r]^=i,t[r]^=i}}function c(e,t,r){for(let n=0;n<16;n++)e[n]=t[n]+r[n]}function u(e,t,r){for(let n=0;n<16;n++)e[n]=t[n]-r[n]}function h(e,t,r){let n,i,s=0,o=0,a=0,c=0,u=0,h=0,l=0,f=0,p=0,d=0,g=0,y=0,v=0,_=0,m=0,w=0,b=0,E=0,S=0,I=0,O=0,P=0,N=0,A=0,x=0,C=0,T=0,R=0,j=0,L=0,U=0,M=r[0],D=r[1],k=r[2],z=r[3],$=r[4],q=r[5],H=r[6],K=r[7],V=r[8],B=r[9],F=r[10],G=r[11],W=r[12],Y=r[13],J=r[14],X=r[15];n=t[0],s+=n*M,o+=n*D,a+=n*k,c+=n*z,u+=n*$,h+=n*q,l+=n*H,f+=n*K,p+=n*V,d+=n*B,g+=n*F,y+=n*G,v+=n*W,_+=n*Y,m+=n*J,w+=n*X,n=t[1],o+=n*M,a+=n*D,c+=n*k,u+=n*z,h+=n*$,l+=n*q,f+=n*H,p+=n*K,d+=n*V,g+=n*B,y+=n*F,v+=n*G,_+=n*W,m+=n*Y,w+=n*J,b+=n*X,n=t[2],a+=n*M,c+=n*D,u+=n*k,h+=n*z,l+=n*$,f+=n*q,p+=n*H,d+=n*K,g+=n*V,y+=n*B,v+=n*F,_+=n*G,m+=n*W,w+=n*Y,b+=n*J,E+=n*X,n=t[3],c+=n*M,u+=n*D,h+=n*k,l+=n*z,f+=n*$,p+=n*q,d+=n*H,g+=n*K,y+=n*V,v+=n*B,_+=n*F,m+=n*G,w+=n*W,b+=n*Y,E+=n*J,S+=n*X,n=t[4],u+=n*M,h+=n*D,l+=n*k,f+=n*z,p+=n*$,d+=n*q,g+=n*H,y+=n*K,v+=n*V,_+=n*B,m+=n*F,w+=n*G,b+=n*W,E+=n*Y,S+=n*J,I+=n*X,n=t[5],h+=n*M,l+=n*D,f+=n*k,p+=n*z,d+=n*$,g+=n*q,y+=n*H,v+=n*K,_+=n*V,m+=n*B,w+=n*F,b+=n*G,E+=n*W,S+=n*Y,I+=n*J,O+=n*X,n=t[6],l+=n*M,f+=n*D,p+=n*k,d+=n*z,g+=n*$,y+=n*q,v+=n*H,_+=n*K,m+=n*V,w+=n*B,b+=n*F,E+=n*G,S+=n*W,I+=n*Y,O+=n*J,P+=n*X,n=t[7],f+=n*M,p+=n*D,d+=n*k,g+=n*z,y+=n*$,v+=n*q,_+=n*H,m+=n*K,w+=n*V,b+=n*B,E+=n*F,S+=n*G,I+=n*W,O+=n*Y,P+=n*J,N+=n*X,n=t[8],p+=n*M,d+=n*D,g+=n*k,y+=n*z,v+=n*$,_+=n*q,m+=n*H,w+=n*K,b+=n*V,E+=n*B,S+=n*F,I+=n*G,O+=n*W,P+=n*Y,N+=n*J,A+=n*X,n=t[9],d+=n*M,g+=n*D,y+=n*k,v+=n*z,_+=n*$,m+=n*q,w+=n*H,b+=n*K,E+=n*V,S+=n*B,I+=n*F,O+=n*G,P+=n*W,N+=n*Y,A+=n*J,x+=n*X,n=t[10],g+=n*M,y+=n*D,v+=n*k,_+=n*z,m+=n*$,w+=n*q,b+=n*H,E+=n*K,S+=n*V,I+=n*B,O+=n*F,P+=n*G,N+=n*W,A+=n*Y,x+=n*J,C+=n*X,n=t[11],y+=n*M,v+=n*D,_+=n*k,m+=n*z,w+=n*$,b+=n*q,E+=n*H,S+=n*K,I+=n*V,O+=n*B,P+=n*F,N+=n*G,A+=n*W,x+=n*Y,C+=n*J,T+=n*X,n=t[12],v+=n*M,_+=n*D,m+=n*k,w+=n*z,b+=n*$,E+=n*q,S+=n*H,I+=n*K,O+=n*V,P+=n*B,N+=n*F,A+=n*G,x+=n*W,C+=n*Y,T+=n*J,R+=n*X,n=t[13],_+=n*M,m+=n*D,w+=n*k,b+=n*z,E+=n*$,S+=n*q,I+=n*H,O+=n*K,P+=n*V,N+=n*B,A+=n*F,x+=n*G,C+=n*W,T+=n*Y,R+=n*J,j+=n*X,n=t[14],m+=n*M,w+=n*D,b+=n*k,E+=n*z,S+=n*$,I+=n*q,O+=n*H,P+=n*K,N+=n*V,A+=n*B,x+=n*F,C+=n*G,T+=n*W,R+=n*Y,j+=n*J,L+=n*X,n=t[15],w+=n*M,b+=n*D,E+=n*k,S+=n*z,I+=n*$,O+=n*q,P+=n*H,N+=n*K,A+=n*V,x+=n*B,C+=n*F,T+=n*G,R+=n*W,j+=n*Y,L+=n*J,U+=n*X,s+=38*b,o+=38*E,a+=38*S,c+=38*I,u+=38*O,h+=38*P,l+=38*N,f+=38*A,p+=38*x,d+=38*C,g+=38*T,y+=38*R,v+=38*j,_+=38*L,m+=38*U,i=1,n=s+i+65535,i=Math.floor(n/65536),s=n-65536*i,n=o+i+65535,i=Math.floor(n/65536),o=n-65536*i,n=a+i+65535,i=Math.floor(n/65536),a=n-65536*i,n=c+i+65535,i=Math.floor(n/65536),c=n-65536*i,n=u+i+65535,i=Math.floor(n/65536),u=n-65536*i,n=h+i+65535,i=Math.floor(n/65536),h=n-65536*i,n=l+i+65535,i=Math.floor(n/65536),l=n-65536*i,n=f+i+65535,i=Math.floor(n/65536),f=n-65536*i,n=p+i+65535,i=Math.floor(n/65536),p=n-65536*i,n=d+i+65535,i=Math.floor(n/65536),d=n-65536*i,n=g+i+65535,i=Math.floor(n/65536),g=n-65536*i,n=y+i+65535,i=Math.floor(n/65536),y=n-65536*i,n=v+i+65535,i=Math.floor(n/65536),v=n-65536*i,n=_+i+65535,i=Math.floor(n/65536),_=n-65536*i,n=m+i+65535,i=Math.floor(n/65536),m=n-65536*i,n=w+i+65535,i=Math.floor(n/65536),w=n-65536*i,s+=i-1+37*(i-1),i=1,n=s+i+65535,i=Math.floor(n/65536),s=n-65536*i,n=o+i+65535,i=Math.floor(n/65536),o=n-65536*i,n=a+i+65535,i=Math.floor(n/65536),a=n-65536*i,n=c+i+65535,i=Math.floor(n/65536),c=n-65536*i,n=u+i+65535,i=Math.floor(n/65536),u=n-65536*i,n=h+i+65535,i=Math.floor(n/65536),h=n-65536*i,n=l+i+65535,i=Math.floor(n/65536),l=n-65536*i,n=f+i+65535,i=Math.floor(n/65536),f=n-65536*i,n=p+i+65535,i=Math.floor(n/65536),p=n-65536*i,n=d+i+65535,i=Math.floor(n/65536),d=n-65536*i,n=g+i+65535,i=Math.floor(n/65536),g=n-65536*i,n=y+i+65535,i=Math.floor(n/65536),y=n-65536*i,n=v+i+65535,i=Math.floor(n/65536),v=n-65536*i,n=_+i+65535,i=Math.floor(n/65536),_=n-65536*i,n=m+i+65535,i=Math.floor(n/65536),m=n-65536*i,n=w+i+65535,i=Math.floor(n/65536),w=n-65536*i,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]=f,e[8]=p,e[9]=d,e[10]=g,e[11]=y,e[12]=v,e[13]=_,e[14]=m,e[15]=w}function l(e,t){h(e,t,t)}function f(e,t){const r=new Uint8Array(32),i=new Float64Array(80),f=n(),p=n(),d=n(),g=n(),y=n(),v=n();for(let t=0;t<31;t++)r[t]=e[t];r[31]=127&e[31]|64,r[0]&=248,function(e,t){for(let r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}(i,t);for(let e=0;e<16;e++)p[e]=i[e];f[0]=g[0]=1;for(let e=254;e>=0;--e){const t=r[e>>>3]>>>(7&e)&1;a(f,p,t),a(d,g,t),c(y,f,d),u(f,f,d),c(d,p,g),u(p,p,g),l(g,y),l(v,f),h(f,d,f),h(d,p,y),c(y,f,d),u(f,f,d),l(p,f),u(d,g,v),h(f,d,s),c(f,f,g),h(d,d,f),h(f,g,v),h(g,p,i),l(p,y),a(f,p,t),a(d,g,t)}for(let e=0;e<16;e++)i[e+16]=f[e],i[e+32]=d[e],i[e+48]=p[e],i[e+64]=g[e];const _=i.subarray(32),m=i.subarray(16);!function(e,t){const r=n();for(let e=0;e<16;e++)r[e]=t[e];for(let e=253;e>=0;e--)l(r,r),2!==e&&4!==e&&h(r,r,t);for(let t=0;t<16;t++)e[t]=r[t]}(_,_),h(m,m,_);const w=new Uint8Array(32);return function(e,t){const r=n(),i=n();for(let e=0;e<16;e++)i[e]=t[e];o(i),o(i),o(i);for(let e=0;e<2;e++){r[0]=i[0]-65517;for(let e=1;e<15;e++)r[e]=i[e]-65535-(r[e-1]>>16&1),r[e-1]&=65535;r[15]=i[15]-32767-(r[14]>>16&1);const e=r[15]>>16&1;r[14]&=65535,a(i,r,1-e)}for(let t=0;t<16;t++)e[2*t]=255&i[t],e[2*t+1]=i[t]>>8}(w,m),w}function p(e){return f(e,i)}function d(t){if(t.length!==e.SECRET_KEY_LENGTH)throw new Error(`x25519: seed must be ${e.SECRET_KEY_LENGTH} bytes`);const r=new Uint8Array(t);return{publicKey:p(r),secretKey:r}}e.scalarMult=f,e.scalarMultBase=p,e.generateKeyPairFromSeed=d,e.generateKeyPair=function(e){const n=(0,t.randomBytes)(32,e),i=d(n);return(0,r.wipe)(n),i},e.sharedKey=function(t,r,n=!1){if(t.length!==e.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect secret key length");if(r.length!==e.PUBLIC_KEY_LENGTH)throw new Error("X25519: incorrect public key length");const i=f(t,r);if(n){let e=0;for(let t=0;t<i.length;t++)e|=i[t];if(0===e)throw new Error("X25519: invalid shared key")}return i}}(Y);var Q=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,f=s-1;(0!==h||l<i)&&-1!==f;f--,l++)h+=a*o[f]>>>0,o[f]=h%256>>>0,h=h/256>>>0;if(0!==h)throw new Error("Non-zero carry");i=l,t++}if(" "!==e[t]){for(var p=s-i;p!==s&&0===o[p];)p++;for(var d=new Uint8Array(n+(s-p)),g=n;p!==s;)d[g++]=o[p++];return d}}}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],f=0,p=o-1;(0!==l||f<n)&&-1!==p;p--,f++)l+=256*u[p]>>>0,u[p]=l%a>>>0,l=l/a>>>0;if(0!==l)throw new Error("Non-zero carry");n=f,i++}for(var d=o-n;d!==o&&0===u[d];)d++;for(var g=c.repeat(r);d<o;++d)g+=e.charAt(u[d]);return g},decodeUnsafe:l,decode:function(e){var r=l(e);if(r)return r;throw new Error(`Non-${t} character`)}}},ee=Q;const te=e=>{if(e instanceof Uint8Array&&"Uint8Array"===e.constructor.name)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")};class re{constructor(e,t,r){this.name=e,this.prefix=t,this.baseEncode=r}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class ne{constructor(e,t,r){if(this.name=e,this.prefix=t,void 0===t.codePointAt(0))throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=r}decode(e){if("string"==typeof e){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}throw Error("Can only multibase decode strings")}or(e){return se(this,e)}}class ie{constructor(e){this.decoders=e}or(e){return se(this,e)}decode(e){const t=e[0],r=this.decoders[t];if(r)return r.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const se=(e,t)=>new ie({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}});class oe{constructor(e,t,r,n){this.name=e,this.prefix=t,this.baseEncode=r,this.baseDecode=n,this.encoder=new re(e,t,r),this.decoder=new ne(e,t,n)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const ae=({name:e,prefix:t,encode:r,decode:n})=>new oe(e,t,r,n),ce=({prefix:e,name:t,alphabet:r})=>{const{encode:n,decode:i}=ee(r,t);return ae({prefix:e,name:t,encode:n,decode:e=>te(i(e))})},ue=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>ae({prefix:t,name:e,encode:e=>((e,t,r)=>{const n="="===t[t.length-1],i=(1<<r)-1;let s="",o=0,a=0;for(let n=0;n<e.length;++n)for(a=a<<8|e[n],o+=8;o>r;)o-=r,s+=t[i&a>>o];if(o&&(s+=t[i&a<<r-o]),n)for(;s.length*r&7;)s+="=";return s})(e,n,r),decode:t=>((e,t,r,n)=>{const i={};for(let e=0;e<t.length;++e)i[t[e]]=e;let s=e.length;for(;"="===e[s-1];)--s;const o=new Uint8Array(s*r/8|0);let a=0,c=0,u=0;for(let t=0;t<s;++t){const s=i[e[t]];if(void 0===s)throw new SyntaxError(`Non-${n} character`);c=c<<r|s,a+=r,a>=8&&(a-=8,o[u++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return o})(t,n,r,e)}),he=ae({prefix:"\0",name:"identity",encode:e=>(e=>(new TextDecoder).decode(e))(e),decode:e=>(e=>(new TextEncoder).encode(e))(e)});var le=Object.freeze({__proto__:null,identity:he});const fe=ue({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var pe=Object.freeze({__proto__:null,base2:fe});const de=ue({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var ge=Object.freeze({__proto__:null,base8:de});const ye=ce({prefix:"9",name:"base10",alphabet:"0123456789"});var ve=Object.freeze({__proto__:null,base10:ye});const _e=ue({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),me=ue({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var we=Object.freeze({__proto__:null,base16:_e,base16upper:me});const be=ue({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Ee=ue({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),Se=ue({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Ie=ue({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),Oe=ue({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Pe=ue({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Ne=ue({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Ae=ue({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),xe=ue({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var Ce=Object.freeze({__proto__:null,base32:be,base32upper:Ee,base32pad:Se,base32padupper:Ie,base32hex:Oe,base32hexupper:Pe,base32hexpad:Ne,base32hexpadupper:Ae,base32z:xe});const Te=ce({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),Re=ce({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var je=Object.freeze({__proto__:null,base36:Te,base36upper:Re});const Le=ce({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Ue=ce({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Me=Object.freeze({__proto__:null,base58btc:Le,base58flickr:Ue});const De=ue({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),ke=ue({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),ze=ue({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),$e=ue({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var qe=Object.freeze({__proto__:null,base64:De,base64pad:ke,base64url:ze,base64urlpad:$e});const He=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),Ke=He.reduce(((e,t,r)=>(e[r]=t,e)),[]),Ve=He.reduce(((e,t,r)=>(e[t.codePointAt(0)]=r,e)),[]);const Be=ae({prefix:"🚀",name:"base256emoji",encode:function(e){return e.reduce(((e,t)=>e+=Ke[t]),"")},decode:function(e){const t=[];for(const r of e){const e=Ve[r.codePointAt(0)];if(void 0===e)throw new Error(`Non-base256emoji character: ${r}`);t.push(e)}return new Uint8Array(t)}});var Fe=Object.freeze({__proto__:null,base256emoji:Be}),Ge=function e(t,r,n){r=r||[];var i=n=n||0;for(;t>=Je;)r[n++]=255&t|We,t/=128;for(;t&Ye;)r[n++]=255&t|We,t>>>=7;return r[n]=0|t,e.bytes=n-i+1,r},We=128,Ye=-128,Je=Math.pow(2,31);var Xe=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?(n&Qe)<<s:(n&Qe)*Math.pow(2,s),s+=7}while(n>=Ze);return e.bytes=o-r,i},Ze=128,Qe=127;var et=Math.pow(2,7),tt=Math.pow(2,14),rt=Math.pow(2,21),nt=Math.pow(2,28),it=Math.pow(2,35),st=Math.pow(2,42),ot=Math.pow(2,49),at=Math.pow(2,56),ct=Math.pow(2,63),ut={encode:Ge,decode:Xe,encodingLength:function(e){return e<et?1:e<tt?2:e<rt?3:e<nt?4:e<it?5:e<st?6:e<ot?7:e<at?8:e<ct?9:10}};const ht=(e,t,r=0)=>(ut.encode(e,t,r),t),lt=e=>ut.encodingLength(e),ft=(e,t)=>{const r=t.byteLength,n=lt(e),i=n+lt(r),s=new Uint8Array(i+r);return ht(e,s,0),ht(r,s,n),s.set(t,i),new pt(e,r,t,s)};class pt{constructor(e,t,r,n){this.code=e,this.size=t,this.digest=r,this.bytes=n}}const dt=({name:e,code:t,encode:r})=>new gt(e,t,r);class gt{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?ft(this.code,t):t.then((e=>ft(this.code,e)))}throw Error("Unknown type, must be binary type")}}const yt=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t));dt({name:"sha2-256",code:18,encode:yt("SHA-256")}),dt({name:"sha2-512",code:19,encode:yt("SHA-512")});new TextEncoder,new TextDecoder;const vt={...le,...pe,...ge,...ve,...we,...Ce,...je,...Me,...qe,...Fe};function _t(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}const mt=_t("utf8","u",(e=>"u"+new TextDecoder("utf8").decode(e)),(e=>(new TextEncoder).encode(e.substring(1)))),wt=_t("ascii","a",(e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t}),(e=>{const t=X((e=e.substring(1)).length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t})),bt={utf8:mt,"utf-8":mt,hex:vt.base16,latin1:wt,ascii:wt,binary:wt,...vt};function Et(e,t="utf8"){const r=bt[t];if(!r)throw new Error(`Unsupported encoding "${t}"`);return"utf8"!==t&&"utf-8"!==t||null==globalThis.Buffer||null==globalThis.Buffer.from?r.decoder.decode(`${r.prefix}${e}`):J(globalThis.Buffer.from(e,"utf-8"))}function St(e,t="utf8"){const r=bt[t];if(!r)throw new Error(`Unsupported encoding "${t}"`);return"utf8"!==t&&"utf-8"!==t||null==globalThis.Buffer||null==globalThis.Buffer.from?r.encoder.encode(e).substring(1):globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8")}var It=function(e,t,r){if(r||2===arguments.length)for(var n,i=0,s=t.length;i<s;i++)!n&&i in t||(n||(n=Array.prototype.slice.call(t,0,i)),n[i]=t[i]);return e.concat(n||Array.prototype.slice.call(t))},Ot=function(e,t,r){this.name=e,this.version=t,this.os=r,this.type="browser"},Pt=function(e){this.version=e,this.type="node",this.name="node",this.os=process.platform},Nt=function(e,t,r,n){this.name=e,this.version=t,this.os=r,this.bot=n,this.type="bot-device"},At=function(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null},xt=function(){this.type="react-native",this.name="react-native",this.version=null,this.os=null},Ct=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,Tt=3,Rt=[["aol",/AOLShield\/([0-9\._]+)/],["edge",/Edge\/([0-9\._]+)/],["edge-ios",/EdgiOS\/([0-9\._]+)/],["yandexbrowser",/YaBrowser\/([0-9\._]+)/],["kakaotalk",/KAKAOTALK\s([0-9\.]+)/],["samsung",/SamsungBrowser\/([0-9\.]+)/],["silk",/\bSilk\/([0-9._-]+)\b/],["miui",/MiuiBrowser\/([0-9\.]+)$/],["beaker",/BeakerBrowser\/([0-9\.]+)/],["edge-chromium",/EdgA?\/([0-9\.]+)/],["chromium-webview",/(?!Chrom.*OPR)wv\).*Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["chrome",/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/],["phantomjs",/PhantomJS\/([0-9\.]+)(:?\s|$)/],["crios",/CriOS\/([0-9\.]+)(:?\s|$)/],["firefox",/Firefox\/([0-9\.]+)(?:\s|$)/],["fxios",/FxiOS\/([0-9\.]+)/],["opera-mini",/Opera Mini.*Version\/([0-9\.]+)/],["opera",/Opera\/([0-9\.]+)(?:\s|$)/],["opera",/OPR\/([0-9\.]+)(:?\s|$)/],["pie",/^Microsoft Pocket Internet Explorer\/(\d+\.\d+)$/],["pie",/^Mozilla\/\d\.\d+\s\(compatible;\s(?:MSP?IE|MSInternet Explorer) (\d+\.\d+);.*Windows CE.*\)$/],["netfront",/^Mozilla\/\d\.\d+.*NetFront\/(\d.\d)/],["ie",/Trident\/7\.0.*rv\:([0-9\.]+).*\).*Gecko$/],["ie",/MSIE\s([0-9\.]+);.*Trident\/[4-7].0/],["ie",/MSIE\s(7\.0)/],["bb10",/BB10;\sTouch.*Version\/([0-9\.]+)/],["android",/Android\s([0-9\.]+)/],["ios",/Version\/([0-9\._]+).*Mobile.*Safari.*/],["safari",/Version\/([0-9\._]+).*Safari/],["facebook",/FB[AS]V\/([0-9\.]+)/],["instagram",/Instagram\s([0-9\.]+)/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Mobile/],["ios-webview",/AppleWebKit\/([0-9\.]+).*Gecko\)$/],["curl",/^curl\/([0-9\.]+)$/],["searchbot",/alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/]],jt=[["iOS",/iP(hone|od|ad)/],["Android OS",/Android/],["BlackBerry OS",/BlackBerry|BB10/],["Windows Mobile",/IEMobile/],["Amazon OS",/Kindle/],["Windows 3.11",/Win16/],["Windows 95",/(Windows 95)|(Win95)|(Windows_95)/],["Windows 98",/(Windows 98)|(Win98)/],["Windows 2000",/(Windows NT 5.0)|(Windows 2000)/],["Windows XP",/(Windows NT 5.1)|(Windows XP)/],["Windows Server 2003",/(Windows NT 5.2)/],["Windows Vista",/(Windows NT 6.0)/],["Windows 7",/(Windows NT 6.1)/],["Windows 8",/(Windows NT 6.2)/],["Windows 8.1",/(Windows NT 6.3)/],["Windows 10",/(Windows NT 10.0)/],["Windows ME",/Windows ME/],["Windows CE",/Windows CE|WinCE|Microsoft Pocket Internet Explorer/],["Open BSD",/OpenBSD/],["Sun OS",/SunOS/],["Chrome OS",/CrOS/],["Linux",/(Linux)|(X11)/],["Mac OS",/(Mac_PowerPC)|(Macintosh)/],["QNX",/QNX/],["BeOS",/BeOS/],["OS/2",/OS\/2/]];function Lt(e){return e?Ut(e):"undefined"==typeof document&&"undefined"!=typeof navigator&&"ReactNative"===navigator.product?new xt:"undefined"!=typeof navigator?Ut(navigator.userAgent):"undefined"!=typeof process&&process.version?new Pt(process.version.slice(1)):null}function Ut(e){var t=function(e){return""!==e&&Rt.reduce((function(t,r){var n=r[0],i=r[1];if(t)return t;var s=i.exec(e);return!!s&&[n,s]}),!1)}(e);if(!t)return null;var r=t[0],n=t[1];if("searchbot"===r)return new At;var i=n[1]&&n[1].split(".").join("_").split("_").slice(0,3);i?i.length<Tt&&(i=It(It([],i,!0),function(e){for(var t=[],r=0;r<e;r++)t.push("0");return t}(Tt-i.length),!0)):i=[];var s=i.join("."),o=function(e){for(var t=0,r=jt.length;t<r;t++){var n=jt[t],i=n[0];if(n[1].exec(e))return i}return null}(e),a=Ct.exec(e);return a&&a[1]?new Nt(r,s,o,a[1]):new Ot(r,s,o)}var Mt={},Dt=function(e,t){return Dt=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])},Dt(e,t)};var kt=function(){return kt=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},kt.apply(this,arguments)};var zt=Object.create?function(e,t,r,n){void 0===n&&(n=r);var i=Object.getOwnPropertyDescriptor(t,r);i&&!("get"in i?!t.__esModule:i.writable||i.configurable)||(i={enumerable:!0,get:function(){return t[r]}}),Object.defineProperty(e,n,i)}:function(e,t,r,n){void 0===n&&(n=r),e[n]=t[r]};function $t(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 qt(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 Ht(e){return this instanceof Ht?(this.v=e,this):new Ht(e)}var Kt=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t};var Vt,Bt=Object.freeze({__proto__:null,__extends:function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function r(){this.constructor=e}Dt(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)},get __assign(){return kt},__rest:function(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},__decorate:function(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},__param:function(e,t){return function(r,n){t(r,n,e)}},__esDecorate:function(e,t,r,n,i,s){function o(e){if(void 0!==e&&"function"!=typeof e)throw new TypeError("Function expected");return e}for(var a,c=n.kind,u="getter"===c?"get":"setter"===c?"set":"value",h=!t&&e?n.static?e:e.prototype:null,l=t||(h?Object.getOwnPropertyDescriptor(h,n.name):{}),f=!1,p=r.length-1;p>=0;p--){var d={};for(var g in n)d[g]="access"===g?{}:n[g];for(var g in n.access)d.access[g]=n.access[g];d.addInitializer=function(e){if(f)throw new TypeError("Cannot add initializers after decoration has completed");s.push(o(e||null))};var y=(0,r[p])("accessor"===c?{get:l.get,set:l.set}:l[u],d);if("accessor"===c){if(void 0===y)continue;if(null===y||"object"!=typeof y)throw new TypeError("Object expected");(a=o(y.get))&&(l.get=a),(a=o(y.set))&&(l.set=a),(a=o(y.init))&&i.push(a)}else(a=o(y))&&("field"===c?i.push(a):l[u]=a)}h&&Object.defineProperty(h,n.name,l),f=!0},__runInitializers:function(e,t,r){for(var n=arguments.length>2,i=0;i<t.length;i++)r=n?t[i].call(e,r):t[i].call(e);return n?r:void 0},__propKey:function(e){return"symbol"==typeof e?e:"".concat(e)},__setFunctionName:function(e,t,r){return"symbol"==typeof t&&(t=t.description?"[".concat(t.description,"]"):""),Object.defineProperty(e,"name",{configurable:!0,value:r?"".concat(r," ",t):t})},__metadata:function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},__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())}))},__generator:function(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(a){return function(c){return function(a){if(r)throw new TypeError("Generator is already executing.");for(;s&&(s=0,a[0]&&(o=0)),o;)try{if(r=1,n&&(i=2&a[0]?n.return:a[0]?n.throw||((i=n.return)&&i.call(n),0):n.next)&&!(i=i.call(n,a[1])).done)return i;switch(n=0,i&&(a=[2&a[0],i.value]),a[0]){case 0:case 1:i=a;break;case 4:return o.label++,{value:a[1],done:!1};case 5:o.label++,n=a[1],a=[0];continue;case 7:a=o.ops.pop(),o.trys.pop();continue;default:if(!(i=o.trys,(i=i.length>0&&i[i.length-1])||6!==a[0]&&2!==a[0])){o=0;continue}if(3===a[0]&&(!i||a[1]>i[0]&&a[1]<i[3])){o.label=a[1];break}if(6===a[0]&&o.label<i[1]){o.label=i[1],i=a;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(a);break}i[2]&&o.ops.pop(),o.trys.pop();continue}a=t.call(e,o)}catch(e){a=[6,e],n=0}finally{r=i=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}},__createBinding:zt,__exportStar:function(e,t){for(var r in e)"default"===r||Object.prototype.hasOwnProperty.call(t,r)||zt(t,e,r)},__values:$t,__read:qt,__spread:function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(qt(arguments[t]));return e},__spreadArrays:function(){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},__spreadArray:function(e,t,r){if(r||2===arguments.length)for(var n,i=0,s=t.length;i<s;i++)!n&&i in t||(n||(n=Array.prototype.slice.call(t,0,i)),n[i]=t[i]);return e.concat(n||Array.prototype.slice.call(t))},__await:Ht,__asyncGenerator:function(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 Ht?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])}},__asyncDelegator: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:Ht(e[n](t)),done:!1}:i?i(t):t}:i}},__asyncValues:function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=$t(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)}))}}},__makeTemplateObject:function(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e},__importStar:function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)"default"!==r&&Object.prototype.hasOwnProperty.call(e,r)&&zt(t,e,r);return Kt(t,e),t},__importDefault:function(e){return e&&e.__esModule?e:{default:e}},__classPrivateFieldGet:function(e,t,r,n){if("a"===r&&!n)throw new TypeError("Private accessor was defined without a getter");if("function"==typeof t?e!==t||!n:!t.has(e))throw new TypeError("Cannot read private member from an object whose class did not declare it");return"m"===r?n:"a"===r?n.call(e):n?n.value:t.get(e)},__classPrivateFieldSet:function(e,t,r,n,i){if("m"===n)throw new TypeError("Private method is not writable");if("a"===n&&!i)throw new TypeError("Private accessor was defined without a setter");if("function"==typeof t?e!==t||!i:!t.has(e))throw new TypeError("Cannot write private member to an object whose class did not declare it");return"a"===n?i.call(e,r):i?i.value=r:t.set(e,r),r},__classPrivateFieldIn:function(e,t){if(null===t||"object"!=typeof t&&"function"!=typeof t)throw new TypeError("Cannot use 'in' operator on non-object");return"function"==typeof e?t===e:e.has(t)}}),Ft=r.getAugmentedNamespace(Bt),Gt={},Wt={};var Yt,Jt={},Xt={},Zt={};var Qt,er,tr,rr,nr={};function ir(){return er||(er=1,function(e){Object.defineProperty(e,"__esModule",{value:!0});const t=Ft;t.__exportStar((Yt||(Yt=1,Object.defineProperty(Zt,"__esModule",{value:!0}),Zt.ONE_THOUSAND=Zt.ONE_HUNDRED=void 0,Zt.ONE_HUNDRED=100,Zt.ONE_THOUSAND=1e3),Zt),e),t.__exportStar((Qt||(Qt=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ONE_YEAR=e.FOUR_WEEKS=e.THREE_WEEKS=e.TWO_WEEKS=e.ONE_WEEK=e.THIRTY_DAYS=e.SEVEN_DAYS=e.FIVE_DAYS=e.THREE_DAYS=e.ONE_DAY=e.TWENTY_FOUR_HOURS=e.TWELVE_HOURS=e.SIX_HOURS=e.THREE_HOURS=e.ONE_HOUR=e.SIXTY_MINUTES=e.THIRTY_MINUTES=e.TEN_MINUTES=e.FIVE_MINUTES=e.ONE_MINUTE=e.SIXTY_SECONDS=e.THIRTY_SECONDS=e.TEN_SECONDS=e.FIVE_SECONDS=e.ONE_SECOND=void 0,e.ONE_SECOND=1,e.FIVE_SECONDS=5,e.TEN_SECONDS=10,e.THIRTY_SECONDS=30,e.SIXTY_SECONDS=60,e.ONE_MINUTE=e.SIXTY_SECONDS,e.FIVE_MINUTES=5*e.ONE_MINUTE,e.TEN_MINUTES=10*e.ONE_MINUTE,e.THIRTY_MINUTES=30*e.ONE_MINUTE,e.SIXTY_MINUTES=60*e.ONE_MINUTE,e.ONE_HOUR=e.SIXTY_MINUTES,e.THREE_HOURS=3*e.ONE_HOUR,e.SIX_HOURS=6*e.ONE_HOUR,e.TWELVE_HOURS=12*e.ONE_HOUR,e.TWENTY_FOUR_HOURS=24*e.ONE_HOUR,e.ONE_DAY=e.TWENTY_FOUR_HOURS,e.THREE_DAYS=3*e.ONE_DAY,e.FIVE_DAYS=5*e.ONE_DAY,e.SEVEN_DAYS=7*e.ONE_DAY,e.THIRTY_DAYS=30*e.ONE_DAY,e.ONE_WEEK=e.SEVEN_DAYS,e.TWO_WEEKS=2*e.ONE_WEEK,e.THREE_WEEKS=3*e.ONE_WEEK,e.FOUR_WEEKS=4*e.ONE_WEEK,e.ONE_YEAR=365*e.ONE_DAY}(nr)),nr),e)}(Xt)),Xt}function sr(){return rr||(rr=1,function(e){Object.defineProperty(e,"__esModule",{value:!0});const t=Ft;t.__exportStar((Vt||(Vt=1,Object.defineProperty(Wt,"__esModule",{value:!0}),Wt.delay=void 0,Wt.delay=function(e){return new Promise((t=>{setTimeout((()=>{t(!0)}),e)}))}),Wt),e),t.__exportStar(function(){if(tr)return Jt;tr=1,Object.defineProperty(Jt,"__esModule",{value:!0}),Jt.fromMiliseconds=Jt.toMiliseconds=void 0;const e=ir();return Jt.toMiliseconds=function(t){return t*e.ONE_THOUSAND},Jt.fromMiliseconds=function(t){return Math.floor(t/e.ONE_THOUSAND)},Jt}(),e)}(Gt)),Gt}var or,ar={};var cr,ur,hr={},lr={};function fr(){return ur||(ur=1,function(e){Object.defineProperty(e,"__esModule",{value:!0});Ft.__exportStar((cr||(cr=1,Object.defineProperty(lr,"__esModule",{value:!0}),lr.IWatch=void 0,lr.IWatch=class{}),lr),e)}(hr)),hr}!function(e){Object.defineProperty(e,"__esModule",{value:!0});const t=Ft;t.__exportStar(sr(),e),t.__exportStar(function(){if(or)return ar;or=1,Object.defineProperty(ar,"__esModule",{value:!0}),ar.Watch=void 0;class e{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}}return ar.Watch=e,ar.default=e,ar}(),e),t.__exportStar(fr(),e),t.__exportStar(ir(),e)}(Mt);var pr={};function dr(e){let t;return"undefined"!=typeof window&&void 0!==window[e]&&(t=window[e]),t}function gr(e){const t=dr(e);if(!t)throw new Error(`${e} is not defined in Window`);return t}Object.defineProperty(pr,"__esModule",{value:!0}),pr.getLocalStorage=pr.getLocalStorageOrThrow=pr.getCrypto=pr.getCryptoOrThrow=_r=pr.getLocation=pr.getLocationOrThrow=vr=pr.getNavigator=pr.getNavigatorOrThrow=yr=pr.getDocument=pr.getDocumentOrThrow=pr.getFromWindowOrThrow=pr.getFromWindow=void 0,pr.getFromWindow=dr,pr.getFromWindowOrThrow=gr,pr.getDocumentOrThrow=function(){return gr("document")};var yr=pr.getDocument=function(){return dr("document")};pr.getNavigatorOrThrow=function(){return gr("navigator")};var vr=pr.getNavigator=function(){return dr("navigator")};pr.getLocationOrThrow=function(){return gr("location")};var _r=pr.getLocation=function(){return dr("location")};pr.getCryptoOrThrow=function(){return gr("crypto")},pr.getCrypto=function(){return dr("crypto")},pr.getLocalStorageOrThrow=function(){return gr("localStorage")},pr.getLocalStorage=function(){return dr("localStorage")};var mr={};Object.defineProperty(mr,"__esModule",{value:!0});var wr=mr.getWindowMetadata=void 0;const br=pr;wr=mr.getWindowMetadata=function(){let e,t;try{e=br.getDocumentOrThrow(),t=br.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 n=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:n}};var Er={},Sr=e=>encodeURIComponent(e).replace(/[!'()*]/g,(e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`)),Ir="%[a-f0-9]{2}",Or=new RegExp("("+Ir+")|([^%]+?)","gi"),Pr=new RegExp("("+Ir+")+","gi");function Nr(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([],Nr(r),Nr(n))}function Ar(e){try{return decodeURIComponent(e)}catch(n){for(var t=e.match(Or)||[],r=1;r<t.length;r++)t=(e=Nr(t,r).join("")).match(Or)||[];return e}}var xr=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=Pr.exec(e);r;){try{t[r[0]]=decodeURIComponent(r[0])}catch(e){var n=Ar(r[0]);n!==r[0]&&(t[r[0]]=n)}r=Pr.exec(e)}t["%C2"]="�";for(var i=Object.keys(t),s=0;s<i.length;s++){var o=i[s];e=e.replace(new RegExp(o,"g"),t[o])}return e}(e)}},Cr=(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)]},Tr=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){const t=Sr,r=xr,n=Cr,i=Tr,s=Symbol("encodeFragmentIdentifier");function o(e){if("string"!=typeof e||1!==e.length)throw new TypeError("arrayFormatSeparator must be single character string")}function a(e,r){return r.encode?r.strict?t(e):encodeURIComponent(e):e}function c(e,t){return t.decode?r(e):e}function u(e){return Array.isArray(e)?e.sort():"object"==typeof e?u(Object.keys(e)).sort(((e,t)=>Number(e)-Number(t))).map((t=>e[t])):e}function h(e){const t=e.indexOf("#");return-1!==t&&(e=e.slice(0,t)),e}function l(e){const t=(e=h(e)).indexOf("?");return-1===t?"":e.slice(t+1)}function f(e,t){return t.parseNumbers&&!Number.isNaN(Number(e))&&"string"==typeof e&&""!==e.trim()?e=Number(e):!t.parseBooleans||null===e||"true"!==e.toLowerCase()&&"false"!==e.toLowerCase()||(e="true"===e.toLowerCase()),e}function p(e,t){o((t=Object.assign({decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1},t)).arrayFormatSeparator);const r=function(e){let t;switch(e.arrayFormat){case"index":return(e,r,n)=>{t=/\[(\d*)\]$/.exec(e),e=e.replace(/\[\d*\]$/,""),t?(void 0===n[e]&&(n[e]={}),n[e][t[1]]=r):n[e]=r};case"bracket":return(e,r,n)=>{t=/(\[\])$/.exec(e),e=e.replace(/\[\]$/,""),t?void 0!==n[e]?n[e]=[].concat(n[e],r):n[e]=[r]:n[e]=r};case"colon-list-separator":return(e,r,n)=>{t=/(:list)$/.exec(e),e=e.replace(/:list$/,""),t?void 0!==n[e]?n[e]=[].concat(n[e],r):n[e]=[r]:n[e]=r};case"comma":case"separator":return(t,r,n)=>{const i="string"==typeof r&&r.includes(e.arrayFormatSeparator),s="string"==typeof r&&!i&&c(r,e).includes(e.arrayFormatSeparator);r=s?c(r,e):r;const o=i||s?r.split(e.arrayFormatSeparator).map((t=>c(t,e))):null===r?r:c(r,e);n[t]=o};case"bracket-separator":return(t,r,n)=>{const i=/(\[\])$/.test(t);if(t=t.replace(/\[\]$/,""),!i)return void(n[t]=r?c(r,e):r);const s=null===r?[]:r.split(e.arrayFormatSeparator).map((t=>c(t,e)));void 0!==n[t]?n[t]=[].concat(n[t],s):n[t]=s};default:return(e,t,r)=>{void 0!==r[e]?r[e]=[].concat(r[e],t):r[e]=t}}}(t),i=Object.create(null);if("string"!=typeof e)return i;if(!(e=e.trim().replace(/^[?#&]/,"")))return i;for(const s of e.split("&")){if(""===s)continue;let[e,o]=n(t.decode?s.replace(/\+/g," "):s,"=");o=void 0===o?null:["comma","separator","bracket-separator"].includes(t.arrayFormat)?o:c(o,t),r(c(e,t),o,i)}for(const e of Object.keys(i)){const r=i[e];if("object"==typeof r&&null!==r)for(const e of Object.keys(r))r[e]=f(r[e],t);else i[e]=f(r,t)}return!1===t.sort?i:(!0===t.sort?Object.keys(i).sort():Object.keys(i).sort(t.sort)).reduce(((e,t)=>{const r=i[t];return Boolean(r)&&"object"==typeof r&&!Array.isArray(r)?e[t]=u(r):e[t]=r,e}),Object.create(null))}e.extract=l,e.parse=p,e.stringify=(e,t)=>{if(!e)return"";o((t=Object.assign({encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:","},t)).arrayFormatSeparator);const r=r=>t.skipNull&&null==e[r]||t.skipEmptyString&&""===e[r],n=function(e){switch(e.arrayFormat){case"index":return t=>(r,n)=>{const i=r.length;return void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?r:null===n?[...r,[a(t,e),"[",i,"]"].join("")]:[...r,[a(t,e),"[",a(i,e),"]=",a(n,e)].join("")]};case"bracket":return t=>(r,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?r:null===n?[...r,[a(t,e),"[]"].join("")]:[...r,[a(t,e),"[]=",a(n,e)].join("")];case"colon-list-separator":return t=>(r,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?r:null===n?[...r,[a(t,e),":list="].join("")]:[...r,[a(t,e),":list=",a(n,e)].join("")];case"comma":case"separator":case"bracket-separator":{const t="bracket-separator"===e.arrayFormat?"[]=":"=";return r=>(n,i)=>void 0===i||e.skipNull&&null===i||e.skipEmptyString&&""===i?n:(i=null===i?"":i,0===n.length?[[a(r,e),t,a(i,e)].join("")]:[[n,a(i,e)].join(e.arrayFormatSeparator)])}default:return t=>(r,n)=>void 0===n||e.skipNull&&null===n||e.skipEmptyString&&""===n?r:null===n?[...r,a(t,e)]:[...r,[a(t,e),"=",a(n,e)].join("")]}}(t),i={};for(const t of Object.keys(e))r(t)||(i[t]=e[t]);const s=Object.keys(i);return!1!==t.sort&&s.sort(t.sort),s.map((r=>{const i=e[r];return void 0===i?"":null===i?a(r,t):Array.isArray(i)?0===i.length&&"bracket-separator"===t.arrayFormat?a(r,t)+"[]":i.reduce(n(r),[]).join("&"):a(r,t)+"="+a(i,t)})).filter((e=>e.length>0)).join("&")},e.parseUrl=(e,t)=>{t=Object.assign({decode:!0},t);const[r,i]=n(e,"#");return Object.assign({url:r.split("?")[0]||"",query:p(l(e),t)},t&&t.parseFragmentIdentifier&&i?{fragmentIdentifier:c(i,t)}:{})},e.stringifyUrl=(t,r)=>{r=Object.assign({encode:!0,strict:!0,[s]:!0},r);const n=h(t.url).split("?")[0]||"",i=e.extract(t.url),o=e.parse(i,{sort:!1}),c=Object.assign(o,t.query);let u=e.stringify(c,r);u&&(u=`?${u}`);let l=function(e){let t="";const r=e.indexOf("#");return-1!==r&&(t=e.slice(r)),t}(t.url);return t.fragmentIdentifier&&(l=`#${r[s]?a(t.fragmentIdentifier,r):t.fragmentIdentifier}`),`${n}${u}${l}`},e.pick=(t,r,n)=>{n=Object.assign({parseFragmentIdentifier:!0,[s]:!1},n);const{url:o,query:a,fragmentIdentifier:c}=e.parseUrl(t,n);return e.stringifyUrl({url:o,query:i(a,r),fragmentIdentifier:c},n)},e.exclude=(t,r,n)=>{const i=Array.isArray(r)?e=>!r.includes(e):(e,t)=>!r(e,t);return e.pick(t,i,n)}}(Er);const Rr={waku:{publish:"waku_publish",batchPublish:"waku_batchPublish",subscribe:"waku_subscribe",batchSubscribe:"waku_batchSubscribe",subscription:"waku_subscription",unsubscribe:"waku_unsubscribe",batchUnsubscribe:"waku_batchUnsubscribe"},irn:{publish:"irn_publish",batchPublish:"irn_batchPublish",subscribe:"irn_subscribe",batchSubscribe:"irn_batchSubscribe",subscription:"irn_subscription",unsubscribe:"irn_unsubscribe",batchUnsubscribe:"irn_batchUnsubscribe"},iridium:{publish:"iridium_publish",batchPublish:"iridium_batchPublish",subscribe:"iridium_subscribe",batchSubscribe:"iridium_batchSubscribe",subscription:"iridium_subscription",unsubscribe:"iridium_unsubscribe",batchUnsubscribe:"iridium_batchUnsubscribe"}};function jr(e,t){return e.includes(":")?[e]:t.chains||[]}const Lr="base10",Ur="base16",Mr="base64pad",Dr="utf8",kr=0,zr=1,$r=0,qr=1,Hr=12,Kr=32;function Vr(){return St(q.randomBytes(Kr),Ur)}function Br(e){return St(W.hash(Et(e,Dr)),Ur)}function Fr(e){return Number(St(e,Lr))}function Gr(e){const t=function(e){return Et(`${e}`,Lr)}(typeof e.type<"u"?e.type:kr);if(Fr(t)===zr&&typeof e.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");const r=typeof e.senderPublicKey<"u"?Et(e.senderPublicKey,Ur):void 0,n=typeof e.iv<"u"?Et(e.iv,Ur):q.randomBytes(Hr);return function(e){if(Fr(e.type)===zr){if(typeof e.senderPublicKey>"u")throw new Error("Missing sender public key for type 1 envelope");return St(Z([e.type,e.senderPublicKey,e.iv,e.sealed]),Mr)}return St(Z([e.type,e.iv,e.sealed]),Mr)}({type:t,sealed:new s.ChaCha20Poly1305(Et(e.symKey,Ur)).seal(n,Et(e.message,Dr)),iv:n,senderPublicKey:r})}function Wr(e){const t=Et(e,Mr),r=t.slice($r,qr),n=qr;if(Fr(r)===zr){const e=n+Kr,i=e+Hr,s=t.slice(n,e),o=t.slice(e,i);return{type:r,sealed:t.slice(i),iv:o,senderPublicKey:s}}const i=n+Hr,s=t.slice(n,i);return{type:r,sealed:t.slice(i),iv:s}}function Yr(e){const t=e?.type||kr;if(t===zr){if(typeof e?.senderPublicKey>"u")throw new Error("missing sender public key");if(typeof e?.receiverPublicKey>"u")throw new Error("missing receiver public key")}return{type:t,senderPublicKey:e?.senderPublicKey,receiverPublicKey:e?.receiverPublicKey}}function Jr(e){return e.type===zr&&"string"==typeof e.senderPublicKey&&"string"==typeof e.receiverPublicKey}var Xr=Object.defineProperty,Zr=Object.getOwnPropertySymbols,Qr=Object.prototype.hasOwnProperty,en=Object.prototype.propertyIsEnumerable,tn=(e,t,r)=>t in e?Xr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,rn=(e,t)=>{for(var r in t||(t={}))Qr.call(t,r)&&tn(e,r,t[r]);if(Zr)for(var r of Zr(t))en.call(t,r)&&tn(e,r,t[r]);return e};const nn="ReactNative",sn={reactNative:"react-native",node:"node",browser:"browser",unknown:"unknown"},on="js";function an(){return typeof process<"u"&&typeof process.versions<"u"&&typeof process.versions.node<"u"}function cn(){return!yr()&&!!vr()&&navigator.product===nn}function un(){return!an()&&!!vr()}function hn(){return cn()?sn.reactNative:an()?sn.node:un()?sn.browser:sn.unknown}function ln(e,t,r){const n=function(){if(hn()===sn.reactNative&&typeof global<"u"&&typeof(null==global?void 0:global.Platform)<"u"){const{OS:e,Version:t}=global.Platform;return[e,t].join("-")}const e=Lt();if(null===e)return"unknown";const t=e.os?e.os.replace(" ","").toLowerCase():"unknown";return"browser"===e.type?[t,e.name,e.version].join("-"):[t,e.version].join("-")}(),i=function(){var e;const t=hn();return t===sn.browser?[t,(null==(e=_r())?void 0:e.host)||"unknown"].join(":"):t}();return[[e,t].join("-"),[on,r].join("-"),n,i].join("/")}function fn({protocol:e,version:t,relayUrl:r,sdkVersion:n,auth:i,projectId:s,useOnCloseEvent:o}){const a=r.split("?"),c={auth:i,ua:ln(e,t,n),projectId:s,useOnCloseEvent:o||void 0},u=function(e,t){let r=Er.parse(e);return r=rn(rn({},r),t),Er.stringify(r)}(a[1]||"",c);return a[0]+"?"+u}function pn(e,t){return e.filter((e=>t.includes(e))).length===e.length}function dn(e){return Object.fromEntries(e.entries())}function gn(e){return new Map(Object.entries(e))}function yn(e=Mt.FIVE_MINUTES,t){const r=Mt.toMiliseconds(e||Mt.FIVE_MINUTES);let n,i,s;return{resolve:e=>{s&&n&&(clearTimeout(s),n(e))},reject:e=>{s&&i&&(clearTimeout(s),i(e))},done:()=>new Promise(((e,o)=>{s=setTimeout((()=>{o(new Error(t))}),r),n=e,i=o}))}}function vn(e,t,r){return new Promise((async(n,i)=>{const s=setTimeout((()=>i(new Error(r))),t);try{n(await e)}catch(e){i(e)}clearTimeout(s)}))}function _n(e,t){if("string"==typeof t&&t.startsWith(`${e}:`))return t;if("topic"===e.toLowerCase()){if("string"!=typeof t)throw new Error('Value must be "string" for expirer target type: topic');return`topic:${t}`}if("id"===e.toLowerCase()){if("number"!=typeof t)throw new Error('Value must be "number" for expirer target type: id');return`id:${t}`}throw new Error(`Unknown expirer target type: ${e}`)}function mn(e){const[t,r]=e.split(":"),n={id:void 0,topic:void 0};if("topic"===t&&"string"==typeof r)n.topic=r;else{if("id"!==t||!Number.isInteger(Number(r)))throw new Error(`Invalid target, expected id:number or topic:string, got ${t}:${r}`);n.id=Number(r)}return n}function wn(e,t){return Mt.fromMiliseconds((t||Date.now())+Mt.toMiliseconds(e))}function bn(e){return Date.now()>=Mt.toMiliseconds(e)}function En(e,t){return`${e}${t?`:${t}`:""}`}function Sn(e=[],t=[]){return[...new Set([...e,...t])]}function In(e){return e?.relay||{protocol:"irn"}}function On(e){const t=Rr[e];if(typeof t>"u")throw new Error(`Relay Protocol not supported: ${e}`);return t}var Pn=Object.defineProperty,Nn=Object.getOwnPropertySymbols,An=Object.prototype.hasOwnProperty,xn=Object.prototype.propertyIsEnumerable,Cn=(e,t,r)=>t in e?Pn(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;function Tn(e,t="-"){const r={},n="relay"+t;return Object.keys(e).forEach((t=>{if(t.startsWith(n)){const i=t.replace(n,""),s=e[t];r[i]=s}})),r}function Rn(e){return e.startsWith("//")?e.substring(2):e}function jn(e){return`${e.protocol}:${e.topic}@${e.version}?`+Er.stringify(((e,t)=>{for(var r in t||(t={}))An.call(t,r)&&Cn(e,r,t[r]);if(Nn)for(var r of Nn(t))xn.call(t,r)&&Cn(e,r,t[r]);return e})({symKey:e.symKey},function(e,t="-"){const r={};return Object.keys(e).forEach((n=>{const i="relay"+t+n;e[n]&&(r[i]=e[n])})),r}(e.relay)))}function Ln(e){const t=[];return e.forEach((e=>{const[r,n]=e.split(":");t.push(`${r}:${n}`)})),t}function Un(e){return e.includes(":")}function Mn(e){return Un(e)?e.split(":")[0]:e}const Dn={INVALID_METHOD:{message:"Invalid method.",code:1001},INVALID_EVENT:{message:"Invalid event.",code:1002},INVALID_UPDATE_REQUEST:{message:"Invalid update request.",code:1003},INVALID_EXTEND_REQUEST:{message:"Invalid extend request.",code:1004},INVALID_SESSION_SETTLE_REQUEST:{message:"Invalid session settle request.",code:1005},UNAUTHORIZED_METHOD:{message:"Unauthorized method.",code:3001},UNAUTHORIZED_EVENT:{message:"Unauthorized event.",code:3002},UNAUTHORIZED_UPDATE_REQUEST:{message:"Unauthorized update request.",code:3003},UNAUTHORIZED_EXTEND_REQUEST:{message:"Unauthorized extend request.",code:3004},USER_REJECTED:{message:"User rejected.",code:5e3},USER_REJECTED_CHAINS:{message:"User rejected chains.",code:5001},USER_REJECTED_METHODS:{message:"User rejected methods.",code:5002},USER_REJECTED_EVENTS:{message:"User rejected events.",code:5003},UNSUPPORTED_CHAINS:{message:"Unsupported chains.",code:5100},UNSUPPORTED_METHODS:{message:"Unsupported methods.",code:5101},UNSUPPORTED_EVENTS:{message:"Unsupported events.",code:5102},UNSUPPORTED_ACCOUNTS:{message:"Unsupported accounts.",code:5103},UNSUPPORTED_NAMESPACE_KEY:{message:"Unsupported namespace key.",code:5104},USER_DISCONNECTED:{message:"User disconnected.",code:6e3},SESSION_SETTLEMENT_FAILED:{message:"Session settlement failed.",code:7e3},WC_METHOD_UNSUPPORTED:{message:"Unsupported wc_ method.",code:10001}},kn={NOT_INITIALIZED:{message:"Not initialized.",code:1},NO_MATCHING_KEY:{message:"No matching key.",code:2},RESTORE_WILL_OVERRIDE:{message:"Restore will override.",code:3},RESUBSCRIBED:{message:"Resubscribed.",code:4},MISSING_OR_INVALID:{message:"Missing or invalid.",code:5},EXPIRED:{message:"Expired.",code:6},UNKNOWN_TYPE:{message:"Unknown type.",code:7},MISMATCHED_TOPIC:{message:"Mismatched topic.",code:8},NON_CONFORMING_NAMESPACES:{message:"Non conforming namespaces.",code:9}};function zn(e,t){const{message:r,code:n}=kn[e];return{message:t?`${r} ${t}`:r,code:n}}function $n(e,t){const{message:r,code:n}=Dn[e];return{message:t?`${r} ${t}`:r,code:n}}function qn(e,t){return!!Array.isArray(e)&&(!(typeof t<"u"&&e.length)||e.every(t))}function Hn(e){return Object.getPrototypeOf(e)===Object.prototype&&Object.keys(e).length}function Kn(e){return typeof e>"u"}function Vn(e,t){return!(!t||!Kn(e))||"string"==typeof e&&!!e.trim().length}function Bn(e,t){return!(!t||!Kn(e))||"number"==typeof e&&!isNaN(e)}function Fn(e){return!(!Vn(e,!1)||!e.includes(":"))&&2===e.split(":").length}function Gn(e){let t=!0;return qn(e)?e.length&&(t=e.every((e=>Vn(e,!1)))):t=!1,t}function Wn(e,t,r){let n=null;return Object.entries(e).forEach((([e,i])=>{if(n)return;const s=function(e,t,r){let n=null;return qn(t)&&t.length?t.forEach((e=>{n||Fn(e)||(n=$n("UNSUPPORTED_CHAINS",`${r}, chain ${e} should be a string and conform to "namespace:chainId" format`))})):Fn(e)||(n=$n("UNSUPPORTED_CHAINS",`${r}, chains must be defined as "namespace:chainId" e.g. "eip155:1": {...} in the namespace key OR as an array of CAIP-2 chainIds e.g. eip155: { chains: ["eip155:1", "eip155:5"] }`)),n}(e,jr(e,i),`${t} ${r}`);s&&(n=s)})),n}function Yn(e,t){let r=null;return qn(e)?e.forEach((e=>{r||function(e){if(Vn(e,!1)&&e.includes(":")){const t=e.split(":");if(3===t.length){const e=t[0]+":"+t[1];return!!t[2]&&Fn(e)}}return!1}(e)||(r=$n("UNSUPPORTED_ACCOUNTS",`${t}, account ${e} should be a string and conform to "namespace:chainId:address" format`))})):r=$n("UNSUPPORTED_ACCOUNTS",`${t}, accounts should be an array of strings conforming to "namespace:chainId:address" format`),r}function Jn(e,t){let r=null;return Object.values(e).forEach((e=>{if(r)return;const n=function(e,t){let r=null;return Gn(e?.methods)?Gn(e?.events)||(r=$n("UNSUPPORTED_EVENTS",`${t}, events should be an array of strings or empty array for no events`)):r=$n("UNSUPPORTED_METHODS",`${t}, methods should be an array of strings or empty array for no methods`),r}(e,`${t}, namespace`);n&&(r=n)})),r}function Xn(e,t){let r=null;if(e&&Hn(e)){const n=Jn(e,t);n&&(r=n);const i=function(e,t){let r=null;return Object.values(e).forEach((e=>{if(r)return;const n=Yn(e?.accounts,`${t} namespace`);n&&(r=n)})),r}(e,t);i&&(r=i)}else r=zn("MISSING_OR_INVALID",`${t}, namespaces should be an object with data`);return r}function Zn(e){return Vn(e.protocol,!0)}function Qn(e){return typeof e<"u"&&null!==typeof e}function ei(e,t){return!(!Fn(t)||!function(e){const t=[];return Object.values(e).forEach((e=>{t.push(...Ln(e.accounts))})),t}(e).includes(t))}function ti(e,t,r){return!!Vn(r,!1)&&function(e,t){const r=[];return Object.values(e).forEach((e=>{Ln(e.accounts).includes(t)&&r.push(...e.methods)})),r}(e,t).includes(r)}function ri(e,t,r){return!!Vn(r,!1)&&function(e,t){const r=[];return Object.values(e).forEach((e=>{Ln(e.accounts).includes(t)&&r.push(...e.events)})),r}(e,t).includes(r)}function ni(e,t,r){let n=null;const i=function(e){const t={};return Object.keys(e).forEach((r=>{var n;r.includes(":")?t[r]=e[r]:null==(n=e[r].chains)||n.forEach((n=>{t[n]={methods:e[r].methods,events:e[r].events}}))})),t}(e),s=function(e){const t={};return Object.keys(e).forEach((r=>{if(r.includes(":"))t[r]=e[r];else{const n=Ln(e[r].accounts);n?.forEach((n=>{t[n]={accounts:e[r].accounts.filter((e=>e.includes(`${n}:`))),methods:e[r].methods,events:e[r].events}}))}})),t}(t),o=Object.keys(i),a=Object.keys(s),c=ii(Object.keys(e)),u=ii(Object.keys(t)),h=c.filter((e=>!u.includes(e)));return h.length&&(n=zn("NON_CONFORMING_NAMESPACES",`${r} namespaces keys don't satisfy requiredNamespaces.\n Required: ${h.toString()}\n Received: ${Object.keys(t).toString()}`)),pn(o,a)||(n=zn("NON_CONFORMING_NAMESPACES",`${r} namespaces chains don't satisfy required namespaces.\n Required: ${o.toString()}\n Approved: ${a.toString()}`)),Object.keys(t).forEach((e=>{if(!e.includes(":")||n)return;const i=Ln(t[e].accounts);i.includes(e)||(n=zn("NON_CONFORMING_NAMESPACES",`${r} namespaces accounts don't satisfy namespace accounts for ${e}\n Required: ${e}\n Approved: ${i.toString()}`))})),o.forEach((e=>{n||(pn(i[e].methods,s[e].methods)?pn(i[e].events,s[e].events)||(n=zn("NON_CONFORMING_NAMESPACES",`${r} namespaces events don't satisfy namespace events for ${e}`)):n=zn("NON_CONFORMING_NAMESPACES",`${r} namespaces methods don't satisfy namespace methods for ${e}`))})),n}function ii(e){return[...new Set(e.map((e=>e.includes(":")?e.split(":")[0]:e)))]}var si={},oi={};Object.defineProperty(oi,"__esModule",{value:!0}),oi.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}},oi.safeJsonStringify=function(e){return"string"==typeof e?e:JSON.stringify(e,((e,t)=>void 0===t?null:t))};var ai,ci={exports:{}};var ui,hi={},li={};var fi,pi,di={};Object.defineProperty(si,"__esModule",{value:!0}),si.KeyValueStorage=void 0;const gi=Ft,yi=oi,vi=gi.__importDefault((ai||(ai=1,function(){let e;function t(){}e=t,e.prototype.getItem=function(e){return this.hasOwnProperty(e)?String(this[e]):null},e.prototype.setItem=function(e,t){this[e]=String(t)},e.prototype.removeItem=function(e){delete this[e]},e.prototype.clear=function(){const e=this;Object.keys(e).forEach((function(t){e[t]=void 0,delete e[t]}))},e.prototype.key=function(e){return e=e||0,Object.keys(this)[e]},e.prototype.__defineGetter__("length",(function(){return Object.keys(this).length})),void 0!==r.commonjsGlobal&&r.commonjsGlobal.localStorage?ci.exports=r.commonjsGlobal.localStorage:"undefined"!=typeof window&&window.localStorage?ci.exports=window.localStorage:ci.exports=new t}()),ci.exports)),_i=(pi||(pi=1,function(e){Object.defineProperty(e,"__esModule",{value:!0});const t=Ft;t.__exportStar((ui||(ui=1,Object.defineProperty(li,"__esModule",{value:!0}),li.IKeyValueStorage=void 0,li.IKeyValueStorage=class{}),li),e),t.__exportStar(function(){if(fi)return di;fi=1,Object.defineProperty(di,"__esModule",{value:!0}),di.parseEntry=void 0;const e=oi;return di.parseEntry=function(t){var r;return[t[0],e.safeJsonParse(null!==(r=t[1])&&void 0!==r?r:"")]},di}(),e)}(hi)),hi);class mi{constructor(){this.localStorage=vi.default}getKeys(){return gi.__awaiter(this,void 0,void 0,(function*(){return Object.keys(this.localStorage)}))}getEntries(){return gi.__awaiter(this,void 0,void 0,(function*(){return Object.entries(this.localStorage).map(_i.parseEntry)}))}getItem(e){return gi.__awaiter(this,void 0,void 0,(function*(){const t=this.localStorage.getItem(e);if(null!==t)return yi.safeJsonParse(t)}))}setItem(e,t){return gi.__awaiter(this,void 0,void 0,(function*(){this.localStorage.setItem(e,yi.safeJsonStringify(t))}))}removeItem(e){return gi.__awaiter(this,void 0,void 0,(function*(){this.localStorage.removeItem(e)}))}}si.KeyValueStorage=mi;var wi=si.default=mi,bi={},Ei={},Si={},Ii={};class Oi{}var Pi,Ni,Ai=Object.freeze({__proto__:null,IEvents:Oi}),xi=r.getAugmentedNamespace(Ai);function Ci(){return Ni||(Ni=1,function(e){Object.defineProperty(e,"__esModule",{value:!0});Ft.__exportStar(function(){if(Pi)return Ii;Pi=1,Object.defineProperty(Ii,"__esModule",{value:!0}),Ii.IHeartBeat=void 0;const e=xi;class t extends e.IEvents{constructor(e){super()}}return Ii.IHeartBeat=t,Ii}(),e)}(Si)),Si}var Ti,Ri,ji,Li={},Ui={};function Mi(){return Ri||(Ri=1,function(e){Object.defineProperty(e,"__esModule",{value:!0});Ft.__exportStar(function(){if(Ti)return Ui;Ti=1,Object.defineProperty(Ui,"__esModule",{value:!0}),Ui.HEARTBEAT_EVENTS=Ui.HEARTBEAT_INTERVAL=void 0;const e=Mt;return Ui.HEARTBEAT_INTERVAL=e.FIVE_SECONDS,Ui.HEARTBEAT_EVENTS={pulse:"heartbeat_pulse"},Ui}(),e)}(Li)),Li}!function(e){Object.defineProperty(e,"__esModule",{value:!0});const t=Ft;t.__exportStar(function(){if(ji)return Ei;ji=1,Object.defineProperty(Ei,"__esModule",{value:!0}),Ei.HeartBeat=void 0;const e=Ft,t=i.default,r=Mt,n=Ci(),s=Mi();class o extends n.IHeartBeat{constructor(e){super(e),this.events=new t.EventEmitter,this.interval=s.HEARTBEAT_INTERVAL,this.interval=(null==e?void 0:e.interval)||s.HEARTBEAT_INTERVAL}static init(t){return e.__awaiter(this,void 0,void 0,(function*(){const e=new o(t);return yield e.init(),e}))}init(){return e.__awaiter(this,void 0,void 0,(function*(){yield this.initialize()}))}stop(){clearInterval(this.intervalRef)}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 e.__awaiter(this,void 0,void 0,(function*(){this.intervalRef=setInterval((()=>this.pulse()),r.toMiliseconds(this.interval))}))}pulse(){this.events.emit(s.HEARTBEAT_EVENTS.pulse)}}return Ei.HeartBeat=o,Ei}(),e),t.__exportStar(Ci(),e),t.__exportStar(Mi(),e)}(bi);var Di,ki,zi,$i,qi={};function Hi(){if($i)return zi;$i=1;const e=function(){if(ki)return Di;function e(e){try{return JSON.stringify(e)}catch(e){return'"[Circular]"'}}return ki=1,Di=function(t,r,n){var i=n&&n.stringify||e;if("object"==typeof t&&null!==t){var s=r.length+1;if(1===s)return t;var o=new Array(s);o[0]=i(t);for(var a=1;a<s;a++)o[a]=i(r[a]);return o.join(" ")}if("string"!=typeof t)return t;var c=r.length;if(0===c)return t;for(var u="",h=0,l=-1,f=t&&t.length||0,p=0;p<f;){if(37===t.charCodeAt(p)&&p+1<f){switch(l=l>-1?l:0,t.charCodeAt(p+1)){case 100:case 102:if(h>=c)break;if(null==r[h])break;l<p&&(u+=t.slice(l,p)),u+=Number(r[h]),l=p+2,p++;break;case 105:if(h>=c)break;if(null==r[h])break;l<p&&(u+=t.slice(l,p)),u+=Math.floor(Number(r[h])),l=p+2,p++;break;case 79:case 111:case 106:if(h>=c)break;if(void 0===r[h])break;l<p&&(u+=t.slice(l,p));var d=typeof r[h];if("string"===d){u+="'"+r[h]+"'",l=p+2,p++;break}if("function"===d){u+=r[h].name||"<anonymous>",l=p+2,p++;break}u+=i(r[h]),l=p+2,p++;break;case 115:if(h>=c)break;l<p&&(u+=t.slice(l,p)),u+=String(r[h]),l=p+2,p++;break;case 37:l<p&&(u+=t.slice(l,p)),u+="%",l=p+2,p++,h--}++h}++p}return-1===l?t:(l<f&&(u+=t.slice(l)),u)},Di}();zi=n;const t=function(){function e(e){return void 0!==e&&e}try{return"undefined"!=typeof globalThis||Object.defineProperty(Object.prototype,"globalThis",{get:function(){return delete Object.prototype.globalThis,this.globalThis=this},configurable:!0}),globalThis}catch(t){return e(self)||e(window)||e(this)||{}}}().console||{},r={mapHttpRequest:u,mapHttpResponse:u,wrapRequestSerializer:h,wrapResponseSerializer:h,wrapErrorSerializer:h,req:u,res:u,err:function(e){const t={type:e.constructor.name,msg:e.message,stack:e.stack};for(const r in e)void 0===t[r]&&(t[r]=e[r]);return t}};function n(e){(e=e||{}).browser=e.browser||{};const r=e.browser.transmit;if(r&&"function"!=typeof r.send)throw Error("pino: transmit option must have a send function");const u=e.browser.write||t;e.browser.write&&(e.browser.asObject=!0);const h=e.serializers||{},f=function(e,t){if(Array.isArray(e)){const t=e.filter((function(e){return"!stdSerializers.err"!==e}));return t}return!0===e&&Object.keys(t)}(e.browser.serialize,h);let p=e.browser.serialize;Array.isArray(e.browser.serialize)&&e.browser.serialize.indexOf("!stdSerializers.err")>-1&&(p=!1);"function"==typeof u&&(u.error=u.fatal=u.warn=u.info=u.debug=u.trace=u),!1===e.enabled&&(e.level="silent");const d=e.level||"info",g=Object.create(u);g.log||(g.log=l),Object.defineProperty(g,"levelVal",{get:function(){return"silent"===this.level?1/0:this.levels.values[this.level]}}),Object.defineProperty(g,"level",{get:function(){return this._level},set:function(e){if("silent"!==e&&!this.levels.values[e])throw Error("unknown level "+e);this._level=e,i(y,g,"error","log"),i(y,g,"fatal","error"),i(y,g,"warn","error"),i(y,g,"info","log"),i(y,g,"debug","log"),i(y,g,"trace","log")}});const y={transmit:r,serialize:f,asObject:e.browser.asObject,levels:["error","fatal","warn","info","debug","trace"],timestamp:c(e)};return g.levels=n.levels,g.level=d,g.setMaxListeners=g.getMaxListeners=g.emit=g.addListener=g.on=g.prependListener=g.once=g.prependOnceListener=g.removeListener=g.removeAllListeners=g.listeners=g.listenerCount=g.eventNames=g.write=g.flush=l,g.serializers=h,g._serialize=f,g._stdErrSerialize=p,g.child=function(t,n){if(!t)throw new Error("missing bindings for child Pino");n=n||{},f&&t.serializers&&(n.serializers=t.serializers);const i=n.serializers;if(f&&i){var c=Object.assign({},h,i),u=!0===e.browser.serialize?Object.keys(c):f;delete t.serializers,s([t],u,c,this._stdErrSerialize)}function l(e){this._childLevel=1+(0|e._childLevel),this.error=o(e,t,"error"),this.fatal=o(e,t,"fatal"),this.warn=o(e,t,"warn"),this.info=o(e,t,"info"),this.debug=o(e,t,"debug"),this.trace=o(e,t,"trace"),c&&(this.serializers=c,this._serialize=u),r&&(this._logEvent=a([].concat(e._logEvent.bindings,t)))}return l.prototype=this,new l(this)},r&&(g._logEvent=a()),g}function i(r,i,o,c){const u=Object.getPrototypeOf(i);i[o]=i.levelVal>i.levels.values[o]?l:u[o]?u[o]:t[o]||t[c]||l,function(r,i,o){if(!r.transmit&&i[o]===l)return;i[o]=(c=i[o],function(){const u=r.timestamp(),h=new Array(arguments.length),l=Object.getPrototypeOf&&Object.getPrototypeOf(this)===t?t:this;for(var f=0;f<h.length;f++)h[f]=arguments[f];if(r.serialize&&!r.asObject&&s(h,this._serialize,this.serializers,this._stdErrSerialize),r.asObject?c.call(l,function(t,r,i,o){t._serialize&&s(i,t._serialize,t.serializers,t._stdErrSerialize);const a=i.slice();let c=a[0];const u={};o&&(u.time=o),u.level=n.levels.values[r];let h=1+(0|t._childLevel);if(h<1&&(h=1),null!==c&&"object"==typeof c){for(;h--&&"object"==typeof a[0];)Object.assign(u,a.shift());c=a.length?e(a.shift(),a):void 0}else"string"==typeof c&&(c=e(a.shift(),a));return void 0!==c&&(u.msg=c),u}(this,o,h,u)):c.apply(l,h),r.transmit){const e=r.transmit.level||i.level,t=n.levels.values[e],c=n.levels.values[o];if(c<t)return;!function(e,t,r){const n=t.send,i=t.ts,o=t.methodLevel,c=t.methodValue,u=t.val,h=e._logEvent.bindings;s(r,e._serialize||Object.keys(e.serializers),e.serializers,void 0===e._stdErrSerialize||e._stdErrSerialize),e._logEvent.ts=i,e._logEvent.messages=r.filter((function(e){return-1===h.indexOf(e)})),e._logEvent.level.label=o,e._logEvent.level.value=c,n(o,e._logEvent,u),e._logEvent=a(h)}(this,{ts:u,methodLevel:o,methodValue:c,transmitLevel:e,transmitValue:n.levels.values[r.transmit.level||i.level],send:r.transmit.send,val:i.levelVal},h)}});var c}(r,i,o)}function s(e,t,r,i){for(const s in e)if(i&&e[s]instanceof Error)e[s]=n.stdSerializers.err(e[s]);else if("object"==typeof e[s]&&!Array.isArray(e[s]))for(const n in e[s])t&&t.indexOf(n)>-1&&n in r&&(e[s][n]=r[n](e[s][n]))}function o(e,t,r){return function(){const n=new Array(1+arguments.length);n[0]=t;for(var i=1;i<n.length;i++)n[i]=arguments[i-1];return e[r].apply(this,n)}}function a(e){return{ts:0,messages:[],bindings:e||[],level:{label:"",value:0}}}function c(e){return"function"==typeof e.timestamp?e.timestamp:!1===e.timestamp?f:p}function u(){return{}}function h(e){return e}function l(){}function f(){return!1}function p(){return Date.now()}return n.levels={values:{fatal:60,error:50,warn:40,info:30,debug:20,trace:10},labels:{10:"trace",20:"debug",30:"info",40:"warn",50:"error",60:"fatal"}},n.stdSerializers=r,n.stdTimeFunctions=Object.assign({},{nullTime:f,epochTime:p,unixTime:function(){return Math.round(Date.now()/1e3)},isoTime:function(){return new Date(Date.now()).toISOString()}}),zi}var Ki,Vi={};function Bi(){return Ki||(Ki=1,Object.defineProperty(Vi,"__esModule",{value:!0}),Vi.PINO_CUSTOM_CONTEXT_KEY=Vi.PINO_LOGGER_DEFAULTS=void 0,Vi.PINO_LOGGER_DEFAULTS={level:"info"},Vi.PINO_CUSTOM_CONTEXT_KEY="custom_context"),Vi}var Fi,Gi={};!function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.pino=void 0;const t=Ft,r=t.__importDefault(Hi());Object.defineProperty(e,"pino",{enumerable:!0,get:function(){return r.default}}),t.__exportStar(Bi(),e),t.__exportStar(function(){if(Fi)return Gi;Fi=1,Object.defineProperty(Gi,"__esModule",{value:!0}),Gi.generateChildLogger=Gi.formatChildLoggerContext=Gi.getLoggerContext=Gi.setBrowserLoggerContext=Gi.getBrowserLoggerContext=Gi.getDefaultLoggerOptions=void 0;const e=Bi();function t(t,r=e.PINO_CUSTOM_CONTEXT_KEY){return t[r]||""}function r(t,r,n=e.PINO_CUSTOM_CONTEXT_KEY){return t[n]=r,t}function n(r,n=e.PINO_CUSTOM_CONTEXT_KEY){let i="";return i=void 0===r.bindings?t(r,n):r.bindings().context||"",i}function i(t,r,i=e.PINO_CUSTOM_CONTEXT_KEY){const s=n(t,i);return s.trim()?`${s}/${r}`:r}return Gi.getDefaultLoggerOptions=function(t){return Object.assign(Object.assign({},t),{level:(null==t?void 0:t.level)||e.PINO_LOGGER_DEFAULTS.level})},Gi.getBrowserLoggerContext=t,Gi.setBrowserLoggerContext=r,Gi.getLoggerContext=n,Gi.formatChildLoggerContext=i,Gi.generateChildLogger=function(t,n,s=e.PINO_CUSTOM_CONTEXT_KEY){const o=i(t,n,s);return r(t.child({context:o}),o,s)},Gi}(),e)}(qi);class Wi extends Oi{constructor(e){super(),this.opts=e,this.protocol="wc",this.version=2}}class Yi extends Oi{constructor(e,t){super(),this.core=e,this.logger=t,this.records=new Map}}class Ji{constructor(e,t){this.logger=e,this.core=t}}class Xi extends Oi{constructor(e,t){super(),this.relayer=e,this.logger=t}}class Zi extends Oi{constructor(e){super()}}class Qi{constructor(e,t,r,n){this.core=e,this.logger=t,this.name=r}}class es extends Oi{constructor(e,t){super(),this.relayer=e,this.logger=t}}class ts extends Oi{constructor(e,t){super(),this.core=e,this.logger=t}}class rs{constructor(e,t){this.projectId=e,this.logger=t}}class ns{constructor(e){this.opts=e,this.protocol="wc",this.version=2}}class is{constructor(e){this.client=e}}const ss=e=>JSON.stringify(e,((e,t)=>"bigint"==typeof t?t.toString()+"n":t));function os(e){if("string"!=typeof e)throw new Error("Cannot safe json parse value of type "+typeof e);try{return(e=>{const t=e.replace(/([\[:])?(\d{17,}|(?:[9](?:[1-9]07199254740991|0[1-9]7199254740991|00[8-9]199254740991|007[2-9]99254740991|007199[3-9]54740991|0071992[6-9]4740991|00719925[5-9]740991|007199254[8-9]40991|0071992547[5-9]0991|00719925474[1-9]991|00719925474099[2-9])))([,\}\]])/g,'$1"$2n"$3');return JSON.parse(t,((e,t)=>"string"==typeof t&&t.match(/^\d+n$/)?BigInt(t.substring(0,t.length-1)):t))})(e)}catch(t){return e}}function as(e){return"string"==typeof e?e:ss(e)||""}var cs={},us={};!function(e){Object.defineProperty(e,"__esModule",{value:!0});var t=a,r=w;e.DIGEST_LENGTH=64,e.BLOCK_SIZE=128;var n=function(){function n(){this.digestLength=e.DIGEST_LENGTH,this.blockSize=e.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 n.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},n.prototype.reset=function(){return this._initState(),this._bufferLength=0,this._bytesHashed=0,this._finished=!1,this},n.prototype.clean=function(){r.wipe(this._buffer),r.wipe(this._tempHi),r.wipe(this._tempLo),this.reset()},n.prototype.update=function(t,r){if(void 0===r&&(r=t.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<e.BLOCK_SIZE&&r>0;)this._buffer[this._bufferLength++]=t[n++],r--;this._bufferLength===this.blockSize&&(s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,this.blockSize),this._bufferLength=0)}for(r>=this.blockSize&&(n=s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,t,n,r),r%=this.blockSize);r>0;)this._buffer[this._bufferLength++]=t[n++],r--;return this},n.prototype.finish=function(e){if(!this._finished){var r=this._bytesHashed,n=this._bufferLength,i=r/536870912|0,o=r<<3,a=r%128<112?128:256;this._buffer[n]=128;for(var c=n+1;c<a-8;c++)this._buffer[c]=0;t.writeUint32BE(i,this._buffer,a-8),t.writeUint32BE(o,this._buffer,a-4),s(this._tempHi,this._tempLo,this._stateHi,this._stateLo,this._buffer,0,a),this._finished=!0}for(c=0;c<this.digestLength/8;c++)t.writeUint32BE(this._stateHi[c],e,8*c),t.writeUint32BE(this._stateLo[c],e,8*c+4);return this},n.prototype.digest=function(){var e=new Uint8Array(this.digestLength);return this.finish(e),e},n.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}},n.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},n.prototype.cleanSavedState=function(e){r.wipe(e.stateHi),r.wipe(e.stateLo),e.buffer&&r.wipe(e.buffer),e.bufferLength=0,e.bytesHashed=0},n}();e.SHA512=n;var i=new Int32Array([1116352408,3609767458,1899447441,602891725,3049323471,3964484399,3921009573,2173295548,961987163,4081628472,1508970993,3053834265,2453635748,2937671579,2870763221,3664609560,3624381080,2734883394,310598401,1164996542,607225278,1323610764,1426881987,3590304994,1925078388,4068182383,2162078206,991336113,2614888103,633803317,3248222580,3479774868,3835390401,2666613458,4022224774,944711139,264347078,2341262773,604807628,2007800933,770255983,1495990901,1249150122,1856431235,1555081692,3175218132,1996064986,2198950837,2554220882,3999719339,2821834349,766784016,2952996808,2566594879,3210313671,3203337956,3336571891,1034457026,3584528711,2466948901,113926993,3758326383,338241895,168717936,666307205,1188179964,773529912,1546045734,1294757372,1522805485,1396182291,2643833823,1695183700,2343527390,1986661051,1014477480,2177026350,1206759142,2456956037,344077627,2730485921,1290863460,2820302411,3158454273,3259730800,3505952657,3345764771,106217008,3516065817,3606008344,3600352804,1432725776,4094571909,1467031594,275423344,851169720,430227734,3100823752,506948616,1363258195,659060556,3750685593,883997877,3785050280,958139571,3318307427,1322822218,3812723403,1537002063,2003034995,1747873779,3602036899,1955562222,1575990012,2024104815,1125592928,2227730452,2716904306,2361852424,442776044,2428436474,593698344,2756734187,3733110249,3204031479,2999351573,3329325298,3815920427,3391569614,3928383900,3515267271,566280711,3940187606,3454069534,4118630271,4000239992,116418474,1914138554,174292421,2731055270,289380356,3203993006,460393269,320620315,685471733,587496836,852142971,1086792851,1017036298,365543100,1126000580,2618297676,1288033470,3409855158,1501505948,4234509866,1607167915,987167468,1816402316,1246189591]);function s(e,r,n,s,o,a,c){for(var u,h,l,f,p,d,g,y,v=n[0],_=n[1],m=n[2],w=n[3],b=n[4],E=n[5],S=n[6],I=n[7],O=s[0],P=s[1],N=s[2],A=s[3],x=s[4],C=s[5],T=s[6],R=s[7];c>=128;){for(var j=0;j<16;j++){var L=8*j+a;e[j]=t.readUint32BE(o,L),r[j]=t.readUint32BE(o,L+4)}for(j=0;j<80;j++){var U,M,D=v,k=_,z=m,$=w,q=b,H=E,K=S,V=O,B=P,F=N,G=A,W=x,Y=C,J=T;if(p=65535&(h=R),d=h>>>16,g=65535&(u=I),y=u>>>16,p+=65535&(h=(x>>>14|b<<18)^(x>>>18|b<<14)^(b>>>9|x<<23)),d+=h>>>16,g+=65535&(u=(b>>>14|x<<18)^(b>>>18|x<<14)^(x>>>9|b<<23)),y+=u>>>16,p+=65535&(h=x&C^~x&T),d+=h>>>16,g+=65535&(u=b&E^~b&S),y+=u>>>16,u=i[2*j],p+=65535&(h=i[2*j+1]),d+=h>>>16,g+=65535&u,y+=u>>>16,u=e[j%16],d+=(h=r[j%16])>>>16,g+=65535&u,y+=u>>>16,g+=(d+=(p+=65535&h)>>>16)>>>16,p=65535&(h=f=65535&p|d<<16),d=h>>>16,g=65535&(u=l=65535&g|(y+=g>>>16)<<16),y=u>>>16,p+=65535&(h=(O>>>28|v<<4)^(v>>>2|O<<30)^(v>>>7|O<<25)),d+=h>>>16,g+=65535&(u=(v>>>28|O<<4)^(O>>>2|v<<30)^(O>>>7|v<<25)),y+=u>>>16,d+=(h=O&P^O&N^P&N)>>>16,g+=65535&(u=v&_^v&m^_&m),y+=u>>>16,U=65535&(g+=(d+=(p+=65535&h)>>>16)>>>16)|(y+=g>>>16)<<16,M=65535&p|d<<16,p=65535&(h=G),d=h>>>16,g=65535&(u=$),y=u>>>16,d+=(h=f)>>>16,g+=65535&(u=l),y+=u>>>16,_=D,m=k,w=z,b=$=65535&(g+=(d+=(p+=65535&h)>>>16)>>>16)|(y+=g>>>16)<<16,E=q,S=H,I=K,v=U,P=V,N=B,A=F,x=G=65535&p|d<<16,C=W,T=Y,R=J,O=M,j%16==15)for(L=0;L<16;L++)u=e[L],p=65535&(h=r[L]),d=h>>>16,g=65535&u,y=u>>>16,u=e[(L+9)%16],p+=65535&(h=r[(L+9)%16]),d+=h>>>16,g+=65535&u,y+=u>>>16,l=e[(L+1)%16],p+=65535&(h=((f=r[(L+1)%16])>>>1|l<<31)^(f>>>8|l<<24)^(f>>>7|l<<25)),d+=h>>>16,g+=65535&(u=(l>>>1|f<<31)^(l>>>8|f<<24)^l>>>7),y+=u>>>16,l=e[(L+14)%16],d+=(h=((f=r[(L+14)%16])>>>19|l<<13)^(l>>>29|f<<3)^(f>>>6|l<<26))>>>16,g+=65535&(u=(l>>>19|f<<13)^(f>>>29|l<<3)^l>>>6),y+=u>>>16,y+=(g+=(d+=(p+=65535&h)>>>16)>>>16)>>>16,e[L]=65535&g|y<<16,r[L]=65535&p|d<<16}p=65535&(h=O),d=h>>>16,g=65535&(u=v),y=u>>>16,u=n[0],d+=(h=s[0])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(d+=(p+=65535&h)>>>16)>>>16)>>>16,n[0]=v=65535&g|y<<16,s[0]=O=65535&p|d<<16,p=65535&(h=P),d=h>>>16,g=65535&(u=_),y=u>>>16,u=n[1],d+=(h=s[1])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(d+=(p+=65535&h)>>>16)>>>16)>>>16,n[1]=_=65535&g|y<<16,s[1]=P=65535&p|d<<16,p=65535&(h=N),d=h>>>16,g=65535&(u=m),y=u>>>16,u=n[2],d+=(h=s[2])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(d+=(p+=65535&h)>>>16)>>>16)>>>16,n[2]=m=65535&g|y<<16,s[2]=N=65535&p|d<<16,p=65535&(h=A),d=h>>>16,g=65535&(u=w),y=u>>>16,u=n[3],d+=(h=s[3])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(d+=(p+=65535&h)>>>16)>>>16)>>>16,n[3]=w=65535&g|y<<16,s[3]=A=65535&p|d<<16,p=65535&(h=x),d=h>>>16,g=65535&(u=b),y=u>>>16,u=n[4],d+=(h=s[4])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(d+=(p+=65535&h)>>>16)>>>16)>>>16,n[4]=b=65535&g|y<<16,s[4]=x=65535&p|d<<16,p=65535&(h=C),d=h>>>16,g=65535&(u=E),y=u>>>16,u=n[5],d+=(h=s[5])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(d+=(p+=65535&h)>>>16)>>>16)>>>16,n[5]=E=65535&g|y<<16,s[5]=C=65535&p|d<<16,p=65535&(h=T),d=h>>>16,g=65535&(u=S),y=u>>>16,u=n[6],d+=(h=s[6])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(d+=(p+=65535&h)>>>16)>>>16)>>>16,n[6]=S=65535&g|y<<16,s[6]=T=65535&p|d<<16,p=65535&(h=R),d=h>>>16,g=65535&(u=I),y=u>>>16,u=n[7],d+=(h=s[7])>>>16,g+=65535&u,y+=u>>>16,y+=(g+=(d+=(p+=65535&h)>>>16)>>>16)>>>16,n[7]=I=65535&g|y<<16,s[7]=R=65535&p|d<<16,a+=128,c-=128}return a}e.hash=function(e){var t=new n;t.update(e);var r=t.digest();return t.clean(),r}}(us),function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.convertSecretKeyToX25519=e.convertPublicKeyToX25519=e.verify=e.sign=e.extractPublicKeyFromSecretKey=e.generateKeyPair=e.generateKeyPairFromSeed=e.SEED_LENGTH=e.SECRET_KEY_LENGTH=e.PUBLIC_KEY_LENGTH=e.SIGNATURE_LENGTH=void 0;const t=q,r=us,n=w;function i(e){const t=new Float64Array(16);if(e)for(let r=0;r<e.length;r++)t[r]=e[r];return t}e.SIGNATURE_LENGTH=64,e.PUBLIC_KEY_LENGTH=32,e.SECRET_KEY_LENGTH=64,e.SEED_LENGTH=32;new Uint8Array(32)[0]=9;const s=i(),o=i([1]),a=i([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),c=i([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),u=i([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),h=i([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),l=i([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function f(e,t){for(let r=0;r<16;r++)e[r]=0|t[r]}function p(e){let t=1;for(let r=0;r<16;r++){let n=e[r]+t+65535;t=Math.floor(n/65536),e[r]=n-65536*t}e[0]+=t-1+37*(t-1)}function d(e,t,r){const n=~(r-1);for(let r=0;r<16;r++){const i=n&(e[r]^t[r]);e[r]^=i,t[r]^=i}}function g(e,t){const r=i(),n=i();for(let e=0;e<16;e++)n[e]=t[e];p(n),p(n),p(n);for(let e=0;e<2;e++){r[0]=n[0]-65517;for(let e=1;e<15;e++)r[e]=n[e]-65535-(r[e-1]>>16&1),r[e-1]&=65535;r[15]=n[15]-32767-(r[14]>>16&1);const e=r[15]>>16&1;r[14]&=65535,d(n,r,1-e)}for(let t=0;t<16;t++)e[2*t]=255&n[t],e[2*t+1]=n[t]>>8}function y(e,t){let r=0;for(let n=0;n<32;n++)r|=e[n]^t[n];return(1&r-1>>>8)-1}function v(e,t){const r=new Uint8Array(32),n=new Uint8Array(32);return g(r,e),g(n,t),y(r,n)}function _(e){const t=new Uint8Array(32);return g(t,e),1&t[0]}function m(e,t,r){for(let n=0;n<16;n++)e[n]=t[n]+r[n]}function b(e,t,r){for(let n=0;n<16;n++)e[n]=t[n]-r[n]}function E(e,t,r){let n,i,s=0,o=0,a=0,c=0,u=0,h=0,l=0,f=0,p=0,d=0,g=0,y=0,v=0,_=0,m=0,w=0,b=0,E=0,S=0,I=0,O=0,P=0,N=0,A=0,x=0,C=0,T=0,R=0,j=0,L=0,U=0,M=r[0],D=r[1],k=r[2],z=r[3],$=r[4],q=r[5],H=r[6],K=r[7],V=r[8],B=r[9],F=r[10],G=r[11],W=r[12],Y=r[13],J=r[14],X=r[15];n=t[0],s+=n*M,o+=n*D,a+=n*k,c+=n*z,u+=n*$,h+=n*q,l+=n*H,f+=n*K,p+=n*V,d+=n*B,g+=n*F,y+=n*G,v+=n*W,_+=n*Y,m+=n*J,w+=n*X,n=t[1],o+=n*M,a+=n*D,c+=n*k,u+=n*z,h+=n*$,l+=n*q,f+=n*H,p+=n*K,d+=n*V,g+=n*B,y+=n*F,v+=n*G,_+=n*W,m+=n*Y,w+=n*J,b+=n*X,n=t[2],a+=n*M,c+=n*D,u+=n*k,h+=n*z,l+=n*$,f+=n*q,p+=n*H,d+=n*K,g+=n*V,y+=n*B,v+=n*F,_+=n*G,m+=n*W,w+=n*Y,b+=n*J,E+=n*X,n=t[3],c+=n*M,u+=n*D,h+=n*k,l+=n*z,f+=n*$,p+=n*q,d+=n*H,g+=n*K,y+=n*V,v+=n*B,_+=n*F,m+=n*G,w+=n*W,b+=n*Y,E+=n*J,S+=n*X,n=t[4],u+=n*M,h+=n*D,l+=n*k,f+=n*z,p+=n*$,d+=n*q,g+=n*H,y+=n*K,v+=n*V,_+=n*B,m+=n*F,w+=n*G,b+=n*W,E+=n*Y,S+=n*J,I+=n*X,n=t[5],h+=n*M,l+=n*D,f+=n*k,p+=n*z,d+=n*$,g+=n*q,y+=n*H,v+=n*K,_+=n*V,m+=n*B,w+=n*F,b+=n*G,E+=n*W,S+=n*Y,I+=n*J,O+=n*X,n=t[6],l+=n*M,f+=n*D,p+=n*k,d+=n*z,g+=n*$,y+=n*q,v+=n*H,_+=n*K,m+=n*V,w+=n*B,b+=n*F,E+=n*G,S+=n*W,I+=n*Y,O+=n*J,P+=n*X,n=t[7],f+=n*M,p+=n*D,d+=n*k,g+=n*z,y+=n*$,v+=n*q,_+=n*H,m+=n*K,w+=n*V,b+=n*B,E+=n*F,S+=n*G,I+=n*W,O+=n*Y,P+=n*J,N+=n*X,n=t[8],p+=n*M,d+=n*D,g+=n*k,y+=n*z,v+=n*$,_+=n*q,m+=n*H,w+=n*K,b+=n*V,E+=n*B,S+=n*F,I+=n*G,O+=n*W,P+=n*Y,N+=n*J,A+=n*X,n=t[9],d+=n*M,g+=n*D,y+=n*k,v+=n*z,_+=n*$,m+=n*q,w+=n*H,b+=n*K,E+=n*V,S+=n*B,I+=n*F,O+=n*G,P+=n*W,N+=n*Y,A+=n*J,x+=n*X,n=t[10],g+=n*M,y+=n*D,v+=n*k,_+=n*z,m+=n*$,w+=n*q,b+=n*H,E+=n*K,S+=n*V,I+=n*B,O+=n*F,P+=n*G,N+=n*W,A+=n*Y,x+=n*J,C+=n*X,n=t[11],y+=n*M,v+=n*D,_+=n*k,m+=n*z,w+=n*$,b+=n*q,E+=n*H,S+=n*K,I+=n*V,O+=n*B,P+=n*F,N+=n*G,A+=n*W,x+=n*Y,C+=n*J,T+=n*X,n=t[12],v+=n*M,_+=n*D,m+=n*k,w+=n*z,b+=n*$,E+=n*q,S+=n*H,I+=n*K,O+=n*V,P+=n*B,N+=n*F,A+=n*G,x+=n*W,C+=n*Y,T+=n*J,R+=n*X,n=t[13],_+=n*M,m+=n*D,w+=n*k,b+=n*z,E+=n*$,S+=n*q,I+=n*H,O+=n*K,P+=n*V,N+=n*B,A+=n*F,x+=n*G,C+=n*W,T+=n*Y,R+=n*J,j+=n*X,n=t[14],m+=n*M,w+=n*D,b+=n*k,E+=n*z,S+=n*$,I+=n*q,O+=n*H,P+=n*K,N+=n*V,A+=n*B,x+=n*F,C+=n*G,T+=n*W,R+=n*Y,j+=n*J,L+=n*X,n=t[15],w+=n*M,b+=n*D,E+=n*k,S+=n*z,I+=n*$,O+=n*q,P+=n*H,N+=n*K,A+=n*V,x+=n*B,C+=n*F,T+=n*G,R+=n*W,j+=n*Y,L+=n*J,U+=n*X,s+=38*b,o+=38*E,a+=38*S,c+=38*I,u+=38*O,h+=38*P,l+=38*N,f+=38*A,p+=38*x,d+=38*C,g+=38*T,y+=38*R,v+=38*j,_+=38*L,m+=38*U,i=1,n=s+i+65535,i=Math.floor(n/65536),s=n-65536*i,n=o+i+65535,i=Math.floor(n/65536),o=n-65536*i,n=a+i+65535,i=Math.floor(n/65536),a=n-65536*i,n=c+i+65535,i=Math.floor(n/65536),c=n-65536*i,n=u+i+65535,i=Math.floor(n/65536),u=n-65536*i,n=h+i+65535,i=Math.floor(n/65536),h=n-65536*i,n=l+i+65535,i=Math.floor(n/65536),l=n-65536*i,n=f+i+65535,i=Math.floor(n/65536),f=n-65536*i,n=p+i+65535,i=Math.floor(n/65536),p=n-65536*i,n=d+i+65535,i=Math.floor(n/65536),d=n-65536*i,n=g+i+65535,i=Math.floor(n/65536),g=n-65536*i,n=y+i+65535,i=Math.floor(n/65536),y=n-65536*i,n=v+i+65535,i=Math.floor(n/65536),v=n-65536*i,n=_+i+65535,i=Math.floor(n/65536),_=n-65536*i,n=m+i+65535,i=Math.floor(n/65536),m=n-65536*i,n=w+i+65535,i=Math.floor(n/65536),w=n-65536*i,s+=i-1+37*(i-1),i=1,n=s+i+65535,i=Math.floor(n/65536),s=n-65536*i,n=o+i+65535,i=Math.floor(n/65536),o=n-65536*i,n=a+i+65535,i=Math.floor(n/65536),a=n-65536*i,n=c+i+65535,i=Math.floor(n/65536),c=n-65536*i,n=u+i+65535,i=Math.floor(n/65536),u=n-65536*i,n=h+i+65535,i=Math.floor(n/65536),h=n-65536*i,n=l+i+65535,i=Math.floor(n/65536),l=n-65536*i,n=f+i+65535,i=Math.floor(n/65536),f=n-65536*i,n=p+i+65535,i=Math.floor(n/65536),p=n-65536*i,n=d+i+65535,i=Math.floor(n/65536),d=n-65536*i,n=g+i+65535,i=Math.floor(n/65536),g=n-65536*i,n=y+i+65535,i=Math.floor(n/65536),y=n-65536*i,n=v+i+65535,i=Math.floor(n/65536),v=n-65536*i,n=_+i+65535,i=Math.floor(n/65536),_=n-65536*i,n=m+i+65535,i=Math.floor(n/65536),m=n-65536*i,n=w+i+65535,i=Math.floor(n/65536),w=n-65536*i,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]=f,e[8]=p,e[9]=d,e[10]=g,e[11]=y,e[12]=v,e[13]=_,e[14]=m,e[15]=w}function S(e,t){E(e,t,t)}function I(e,t){const r=i();let n;for(n=0;n<16;n++)r[n]=t[n];for(n=253;n>=0;n--)S(r,r),2!==n&&4!==n&&E(r,r,t);for(n=0;n<16;n++)e[n]=r[n]}function O(e,t){const r=i(),n=i(),s=i(),o=i(),a=i(),u=i(),h=i(),l=i(),f=i();b(r,e[1],e[0]),b(f,t[1],t[0]),E(r,r,f),m(n,e[0],e[1]),m(f,t[0],t[1]),E(n,n,f),E(s,e[3],t[3]),E(s,s,c),E(o,e[2],t[2]),m(o,o,o),b(a,n,r),b(u,o,s),m(h,o,s),m(l,n,r),E(e[0],a,u),E(e[1],l,h),E(e[2],h,u),E(e[3],a,l)}function P(e,t,r){for(let n=0;n<4;n++)d(e[n],t[n],r)}function N(e,t){const r=i(),n=i(),s=i();I(s,t[2]),E(r,t[0],s),E(n,t[1],s),g(e,n),e[31]^=_(r)<<7}function A(e,t,r){f(e[0],s),f(e[1],o),f(e[2],o),f(e[3],s);for(let n=255;n>=0;--n){const i=r[n/8|0]>>(7&n)&1;P(e,t,i),O(t,e),O(e,e),P(e,t,i)}}function x(e,t){const r=[i(),i(),i(),i()];f(r[0],u),f(r[1],h),f(r[2],o),E(r[3],u,h),A(e,r,t)}function C(t){if(t.length!==e.SEED_LENGTH)throw new Error(`ed25519: seed must be ${e.SEED_LENGTH} bytes`);const n=(0,r.hash)(t);n[0]&=248,n[31]&=127,n[31]|=64;const s=new Uint8Array(32),o=[i(),i(),i(),i()];x(o,n),N(s,o);const a=new Uint8Array(64);return a.set(t),a.set(s,32),{publicKey:s,secretKey:a}}e.generateKeyPairFromSeed=C,e.generateKeyPair=function(e){const r=(0,t.randomBytes)(32,e),i=C(r);return(0,n.wipe)(r),i},e.extractPublicKeyFromSecretKey=function(t){if(t.length!==e.SECRET_KEY_LENGTH)throw new Error(`ed25519: secret key must be ${e.SECRET_KEY_LENGTH} bytes`);return new Uint8Array(t.subarray(32))};const T=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 R(e,t){let 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]*T[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)*T[i],r=t[i]>>8,t[i]&=255;for(i=0;i<32;i++)t[i]-=r*T[i];for(n=0;n<32;n++)t[n+1]+=t[n]>>8,e[n]=255&t[n]}function j(e){const t=new Float64Array(64);for(let r=0;r<64;r++)t[r]=e[r];for(let t=0;t<64;t++)e[t]=0;R(e,t)}function L(e,t){const r=i(),n=i(),c=i(),u=i(),h=i(),p=i(),d=i();return f(e[2],o),function(e,t){for(let r=0;r<16;r++)e[r]=t[2*r]+(t[2*r+1]<<8);e[15]&=32767}(e[1],t),S(c,e[1]),E(u,c,a),b(c,c,e[2]),m(u,e[2],u),S(h,u),S(p,h),E(d,p,h),E(r,d,c),E(r,r,u),function(e,t){const r=i();let n;for(n=0;n<16;n++)r[n]=t[n];for(n=250;n>=0;n--)S(r,r),1!==n&&E(r,r,t);for(n=0;n<16;n++)e[n]=r[n]}(r,r),E(r,r,c),E(r,r,u),E(r,r,u),E(e[0],r,u),S(n,e[0]),E(n,n,u),v(n,c)&&E(e[0],e[0],l),S(n,e[0]),E(n,n,u),v(n,c)?-1:(_(e[0])===t[31]>>7&&b(e[0],s,e[0]),E(e[3],e[0],e[1]),0)}e.sign=function(e,t){const n=new Float64Array(64),s=[i(),i(),i(),i()],o=(0,r.hash)(e.subarray(0,32));o[0]&=248,o[31]&=127,o[31]|=64;const a=new Uint8Array(64);a.set(o.subarray(32),32);const c=new r.SHA512;c.update(a.subarray(32)),c.update(t);const u=c.digest();c.clean(),j(u),x(s,u),N(a,s),c.reset(),c.update(a.subarray(0,32)),c.update(e.subarray(32)),c.update(t);const h=c.digest();j(h);for(let e=0;e<32;e++)n[e]=u[e];for(let e=0;e<32;e++)for(let t=0;t<32;t++)n[e+t]+=h[e]*o[t];return R(a.subarray(32),n),a},e.verify=function(t,n,s){const o=new Uint8Array(32),a=[i(),i(),i(),i()],c=[i(),i(),i(),i()];if(s.length!==e.SIGNATURE_LENGTH)throw new Error(`ed25519: signature must be ${e.SIGNATURE_LENGTH} bytes`);if(L(c,t))return!1;const u=new r.SHA512;u.update(s.subarray(0,32)),u.update(t),u.update(n);const h=u.digest();return j(h),A(a,c,h),x(c,s.subarray(32)),O(a,c),N(o,a),!y(s,o)},e.convertPublicKeyToX25519=function(e){let t=[i(),i(),i(),i()];if(L(t,e))throw new Error("Ed25519: invalid public key");let r=i(),n=i(),s=t[1];m(r,o,s),b(n,o,s),I(n,n),E(r,r,n);let a=new Uint8Array(32);return g(a,r),a},e.convertSecretKeyToX25519=function(e){const t=(0,r.hash)(e.subarray(0,32));t[0]&=248,t[31]&=127,t[31]|=64;const i=new Uint8Array(t.subarray(0,32));return(0,n.wipe)(t),i}}(cs);const hs=".",ls="base64url",fs="utf8",ps="utf8",ds=":",gs="did",ys="key",vs="base58btc",_s="z",ms="K36";function ws(e){return St(Et(as(e),fs),ls)}function bs(e){const t=Et(ms,vs),r=_s+St(Z([t,e]),vs);return[gs,ys,r].join(ds)}function Es(e=q.randomBytes(32)){return cs.generateKeyPairFromSeed(e)}async function Ss(e,t,r,n,i=Mt.fromMiliseconds(Date.now())){const s={alg:"EdDSA",typ:"JWT"},o={iss:bs(n.publicKey),sub:e,aud:t,iat:i,exp:i+r},a=Et([ws((c={header:s,payload:o}).header),ws(c.payload)].join(hs),ps);var c;return function(e){return[ws(e.header),ws(e.payload),(t=e.signature,St(t,ls))].join(hs);var t}({header:s,payload:o,signature:cs.sign(n.secretKey,a)})}const Is="INTERNAL_ERROR",Os="SERVER_ERROR",Ps=[-32700,-32600,-32601,-32602,-32603],Ns={PARSE_ERROR:{code:-32700,message:"Parse error"},INVALID_REQUEST:{code:-32600,message:"Invalid Request"},METHOD_NOT_FOUND:{code:-32601,message:"Method not found"},INVALID_PARAMS:{code:-32602,message:"Invalid params"},[Is]:{code:-32603,message:"Internal error"},[Os]:{code:-32e3,message:"Server error"}},As=Os;function xs(e){return Object.keys(Ns).includes(e)?Ns[e]:Ns[As]}function Cs(e,t,r){return e.message.includes("getaddrinfo ENOTFOUND")||e.message.includes("connect ECONNREFUSED")?new Error(`Unavailable ${r} RPC url at ${t}`):e}var Ts,Rs={},js={};var Ls,Us={};function Ms(e=3){return Date.now()*Math.pow(10,e)+Math.floor(Math.random()*Math.pow(10,e))}function Ds(e=6){return BigInt(Ms(e))}function ks(e,t,r){return{id:r||Ms(),jsonrpc:"2.0",method:e,params:t}}function zs(e,t){return{id:e,jsonrpc:"2.0",result:t}}function $s(e,t,r){return{id:e,jsonrpc:"2.0",error:qs(t,r)}}function qs(e,t){return void 0===e?xs(Is):("string"==typeof e&&(e=Object.assign(Object.assign({},xs(Os)),{message:e})),void 0!==t&&(e.data=t),function(e){return Ps.includes(e)}(e.code)&&(e=function(e){const t=Object.values(Ns).find((t=>t.code===e));return t||Ns[As]}(e.code)),e)}!function(e){Object.defineProperty(e,"__esModule",{value:!0});const t=Ft;t.__exportStar(function(){if(Ts)return js;function e(){return(null===r.commonjsGlobal||void 0===r.commonjsGlobal?void 0:r.commonjsGlobal.crypto)||(null===r.commonjsGlobal||void 0===r.commonjsGlobal?void 0:r.commonjsGlobal.msCrypto)||{}}function t(){const t=e();return t.subtle||t.webkitSubtle}return Ts=1,Object.defineProperty(js,"__esModule",{value:!0}),js.isBrowserCryptoAvailable=js.getSubtleCrypto=js.getBrowerCrypto=void 0,js.getBrowerCrypto=e,js.getSubtleCrypto=t,js.isBrowserCryptoAvailable=function(){return!!e()&&!!t()},js}(),e),t.__exportStar(function(){if(Ls)return Us;function e(){return"undefined"==typeof document&&"undefined"!=typeof navigator&&"ReactNative"===navigator.product}function t(){return"undefined"!=typeof process&&void 0!==process.versions&&void 0!==process.versions.node}return Ls=1,Object.defineProperty(Us,"__esModule",{value:!0}),Us.isBrowser=Us.isNode=Us.isReactNative=void 0,Us.isReactNative=e,Us.isNode=t,Us.isBrowser=function(){return!e()&&!t()},Us}(),e)}(Rs);class Hs{}class Ks extends Hs{constructor(){super()}}class Vs extends Ks{constructor(e){super()}}function Bs(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 Fs(e){return Bs(e,"^https?:")}function Gs(e){return Bs(e,"^wss?:")}function Ws(e){return new RegExp("wss?://localhost(:d{2,5})?").test(e)}function Ys(e){return"object"==typeof e&&"id"in e&&"jsonrpc"in e&&"2.0"===e.jsonrpc}function Js(e){return Ys(e)&&"method"in e}function Xs(e){return Ys(e)&&(Zs(e)||Qs(e))}function Zs(e){return"result"in e}function Qs(e){return"error"in e}class eo extends Vs{constructor(t){super(t),this.events=new e.EventEmitter,this.hasRegisteredEventListeners=!1,this.connection=this.setConnection(t),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(ks(e.method,e.params||[],e.id||Ds().toString()),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=>{Qs(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),Xs(e)?this.events.emit(`${e.id}`,e):this.events.emit("message",{type:e.method,data:e.params})}onClose(e){e&&3e3===e.code&&this.events.emit("error",new Error(`WebSocket connection closed abnormally with code: ${e.code} ${e.reason?`(${e.reason})`:""}`)),this.events.emit("disconnect")}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",(e=>this.onClose(e))),this.connection.on("error",(e=>this.events.emit("error",e))),this.connection.on("register_error",(e=>this.onClose())),this.hasRegisteredEventListeners=!0)}}const to=e=>e.split("?")[0],ro="undefined"!=typeof global&&void 0!==global.WebSocket?global.WebSocket:"undefined"!=typeof window&&void 0!==window.WebSocket?window.WebSocket:require("ws");class no{constructor(t){if(this.url=t,this.events=new e.EventEmitter,this.registering=!1,!Gs(t))throw new Error(`Provided URL is not compatible with WebSocket connection: ${t}`);this.url=t}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(){return new Promise(((e,t)=>{void 0!==this.socket?(this.socket.onclose=t=>{this.onClose(t),e()},this.socket.close()):t(new Error("Connection already closed"))}))}async send(e,t){void 0===this.socket&&(this.socket=await this.register());try{this.socket.send(as(e))}catch(t){this.onError(e.id,t)}}register(e=this.url){if(!Gs(e))throw new Error(`Provided URL is not compatible with WebSocket connection: ${e}`);if(this.registering){const e=this.events.getMaxListeners();return(this.events.listenerCount("register_error")>=e||this.events.listenerCount("open")>=e)&&this.events.setMaxListeners(e+1),new Promise(((e,t)=>{this.events.once("register_error",(e=>{this.resetMaxListeners(),t(e)})),this.events.once("open",(()=>{if(this.resetMaxListeners(),void 0===this.socket)return t(new Error("WebSocket connection is missing or invalid"));e(this.socket)}))}))}return this.url=e,this.registering=!0,new Promise(((t,r)=>{const n=Rs.isReactNative()?void 0:{rejectUnauthorized:!Ws(e)},i=new ro(e,[],n);"undefined"!=typeof window?i.onerror=e=>{const t=e;r(this.emitError(t.error))}:i.on("error",(e=>{r(this.emitError(e))})),i.onopen=()=>{this.onOpen(i),t(i)}}))}onOpen(e){e.onmessage=e=>this.onPayload(e),e.onclose=e=>this.onClose(e),this.socket=e,this.registering=!1,this.events.emit("open")}onClose(e){this.socket=void 0,this.registering=!1,this.events.emit("close",e)}onPayload(e){if(void 0===e.data)return;const t="string"==typeof e.data?os(e.data):e.data;this.events.emit("payload",t)}onError(e,t){const r=this.parseError(t),n=$s(e,r.message||r.toString());this.events.emit("payload",n)}parseError(e,t=this.url){return Cs(e,to(t),"WS")}resetMaxListeners(){this.events.getMaxListeners()>10&&this.events.setMaxListeners(10)}emitError(e){const t=this.parseError(new Error((null==e?void 0:e.message)||`WebSocket connection failed for host: ${to(this.url)}`));return this.events.emit("register_error",t),t}}var io={exports:{}};!function(e,t){var n="__lodash_hash_undefined__",i=1,s=2,o=9007199254740991,a="[object Arguments]",c="[object Array]",u="[object AsyncFunction]",h="[object Boolean]",l="[object Date]",f="[object Error]",p="[object Function]",d="[object GeneratorFunction]",g="[object Map]",y="[object Number]",v="[object Null]",_="[object Object]",m="[object Promise]",w="[object Proxy]",b="[object RegExp]",E="[object Set]",S="[object String]",I="[object Symbol]",O="[object Undefined]",P="[object WeakMap]",N="[object ArrayBuffer]",A="[object DataView]",x=/^\[object .+?Constructor\]$/,C=/^(?:0|[1-9]\d*)$/,T={};T["[object Float32Array]"]=T["[object Float64Array]"]=T["[object Int8Array]"]=T["[object Int16Array]"]=T["[object Int32Array]"]=T["[object Uint8Array]"]=T["[object Uint8ClampedArray]"]=T["[object Uint16Array]"]=T["[object Uint32Array]"]=!0,T[a]=T[c]=T[N]=T[h]=T[A]=T[l]=T[f]=T[p]=T[g]=T[y]=T[_]=T[b]=T[E]=T[S]=T[P]=!1;var R="object"==typeof r.commonjsGlobal&&r.commonjsGlobal&&r.commonjsGlobal.Object===Object&&r.commonjsGlobal,j="object"==typeof self&&self&&self.Object===Object&&self,L=R||j||Function("return this")(),U=t&&!t.nodeType&&t,M=U&&e&&!e.nodeType&&e,D=M&&M.exports===U,k=D&&R.process,z=function(){try{return k&&k.binding&&k.binding("util")}catch(e){}}(),$=z&&z.isTypedArray;function q(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 H(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function K(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}var V,B,F,G=Array.prototype,W=Function.prototype,Y=Object.prototype,J=L["__core-js_shared__"],X=W.toString,Z=Y.hasOwnProperty,Q=(V=/[^.]+$/.exec(J&&J.keys&&J.keys.IE_PROTO||""))?"Symbol(src)_1."+V:"",ee=Y.toString,te=RegExp("^"+X.call(Z).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),re=D?L.Buffer:void 0,ne=L.Symbol,ie=L.Uint8Array,se=Y.propertyIsEnumerable,oe=G.splice,ae=ne?ne.toStringTag:void 0,ce=Object.getOwnPropertySymbols,ue=re?re.isBuffer:void 0,he=(B=Object.keys,F=Object,function(e){return B(F(e))}),le=ze(L,"DataView"),fe=ze(L,"Map"),pe=ze(L,"Promise"),de=ze(L,"Set"),ge=ze(L,"WeakMap"),ye=ze(Object,"create"),ve=Ke(le),_e=Ke(fe),me=Ke(pe),we=Ke(de),be=Ke(ge),Ee=ne?ne.prototype:void 0,Se=Ee?Ee.valueOf:void 0;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 Oe(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 Pe(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.__data__=new Pe;++t<r;)this.add(e[t])}function Ae(e){var t=this.__data__=new Oe(e);this.size=t.size}function xe(e,t){var r=Fe(e),n=!r&&Be(e),i=!r&&!n&&Ge(e),s=!r&&!n&&!i&&Ze(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&&!Z.call(e,u)||o&&("length"==u||i&&("offset"==u||"parent"==u)||s&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||He(u,c))||a.push(u);return a}function Ce(e,t){for(var r=e.length;r--;)if(Ve(e[r][0],t))return r;return-1}function Te(e){return null==e?void 0===e?O:v:ae&&ae in Object(e)?function(e){var t=Z.call(e,ae),r=e[ae];try{e[ae]=void 0;var n=!0}catch(e){}var i=ee.call(e);n&&(t?e[ae]=r:delete e[ae]);return i}(e):function(e){return ee.call(e)}(e)}function Re(e){return Xe(e)&&Te(e)==a}function je(e,t,r,n,o){return e===t||(null==e||null==t||!Xe(e)&&!Xe(t)?e!=e&&t!=t:function(e,t,r,n,o,u){var p=Fe(e),d=Fe(t),v=p?c:qe(e),m=d?c:qe(t),w=(v=v==a?_:v)==_,O=(m=m==a?_:m)==_,P=v==m;if(P&&Ge(e)){if(!Ge(t))return!1;p=!0,w=!1}if(P&&!w)return u||(u=new Ae),p||Ze(e)?Me(e,t,r,n,o,u):function(e,t,r,n,o,a,c){switch(r){case A:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case N:return!(e.byteLength!=t.byteLength||!a(new ie(e),new ie(t)));case h:case l:case y:return Ve(+e,+t);case f:return e.name==t.name&&e.message==t.message;case b:case S:return e==t+"";case g:var u=H;case E:var p=n&i;if(u||(u=K),e.size!=t.size&&!p)return!1;var d=c.get(e);if(d)return d==t;n|=s,c.set(e,t);var v=Me(u(e),u(t),n,o,a,c);return c.delete(e),v;case I:if(Se)return Se.call(e)==Se.call(t)}return!1}(e,t,v,r,n,o,u);if(!(r&i)){var x=w&&Z.call(e,"__wrapped__"),C=O&&Z.call(t,"__wrapped__");if(x||C){var T=x?e.value():e,R=C?t.value():t;return u||(u=new Ae),o(T,R,r,n,u)}}if(!P)return!1;return u||(u=new Ae),function(e,t,r,n,s,o){var a=r&i,c=De(e),u=c.length,h=De(t),l=h.length;if(u!=l&&!a)return!1;var f=u;for(;f--;){var p=c[f];if(!(a?p in t:Z.call(t,p)))return!1}var d=o.get(e);if(d&&o.get(t))return d==t;var g=!0;o.set(e,t),o.set(t,e);var y=a;for(;++f<u;){var v=e[p=c[f]],_=t[p];if(n)var m=a?n(_,v,p,t,e,o):n(v,_,p,e,t,o);if(!(void 0===m?v===_||s(v,_,r,n,o):m)){g=!1;break}y||(y="constructor"==p)}if(g&&!y){var w=e.constructor,b=t.constructor;w==b||!("constructor"in e)||!("constructor"in t)||"function"==typeof w&&w instanceof w&&"function"==typeof b&&b instanceof b||(g=!1)}return o.delete(e),o.delete(t),g}(e,t,r,n,o,u)}(e,t,r,n,je,o))}function Le(e){return!(!Je(e)||function(e){return!!Q&&Q in e}(e))&&(We(e)?te:x).test(Ke(e))}function Ue(e){if(r=(t=e)&&t.constructor,n="function"==typeof r&&r.prototype||Y,t!==n)return he(e);var t,r,n,i=[];for(var s in Object(e))Z.call(e,s)&&"constructor"!=s&&i.push(s);return i}function Me(e,t,r,n,o,a){var c=r&i,u=e.length,h=t.length;if(u!=h&&!(c&&h>u))return!1;var l=a.get(e);if(l&&a.get(t))return l==t;var f=-1,p=!0,d=r&s?new Ne:void 0;for(a.set(e,t),a.set(t,e);++f<u;){var g=e[f],y=t[f];if(n)var v=c?n(y,g,f,t,e,a):n(g,y,f,e,t,a);if(void 0!==v){if(v)continue;p=!1;break}if(d){if(!q(t,(function(e,t){if(i=t,!d.has(i)&&(g===e||o(g,e,r,n,a)))return d.push(t);var i}))){p=!1;break}}else if(g!==y&&!o(g,y,r,n,a)){p=!1;break}}return a.delete(e),a.delete(t),p}function De(e){return function(e,t,r){var n=t(e);return Fe(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,Qe,$e)}function ke(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 ze(e,t){var r=function(e,t){return null==e?void 0:e[t]}(e,t);return Le(r)?r:void 0}Ie.prototype.clear=function(){this.__data__=ye?ye(null):{},this.size=0},Ie.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Ie.prototype.get=function(e){var t=this.__data__;if(ye){var r=t[e];return r===n?void 0:r}return Z.call(t,e)?t[e]:void 0},Ie.prototype.has=function(e){var t=this.__data__;return ye?void 0!==t[e]:Z.call(t,e)},Ie.prototype.set=function(e,t){var r=this.__data__;return this.size+=this.has(e)?0:1,r[e]=ye&&void 0===t?n:t,this},Oe.prototype.clear=function(){this.__data__=[],this.size=0},Oe.prototype.delete=function(e){var t=this.__data__,r=Ce(t,e);return!(r<0)&&(r==t.length-1?t.pop():oe.call(t,r,1),--this.size,!0)},Oe.prototype.get=function(e){var t=this.__data__,r=Ce(t,e);return r<0?void 0:t[r][1]},Oe.prototype.has=function(e){return Ce(this.__data__,e)>-1},Oe.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},Pe.prototype.clear=function(){this.size=0,this.__data__={hash:new Ie,map:new(fe||Oe),string:new Ie}},Pe.prototype.delete=function(e){var t=ke(this,e).delete(e);return this.size-=t?1:0,t},Pe.prototype.get=function(e){return ke(this,e).get(e)},Pe.prototype.has=function(e){return ke(this,e).has(e)},Pe.prototype.set=function(e,t){var r=ke(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Ne.prototype.add=Ne.prototype.push=function(e){return this.__data__.set(e,n),this},Ne.prototype.has=function(e){return this.__data__.has(e)},Ae.prototype.clear=function(){this.__data__=new Oe,this.size=0},Ae.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Ae.prototype.get=function(e){return this.__data__.get(e)},Ae.prototype.has=function(e){return this.__data__.has(e)},Ae.prototype.set=function(e,t){var r=this.__data__;if(r instanceof Oe){var n=r.__data__;if(!fe||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Pe(n)}return r.set(e,t),this.size=r.size,this};var $e=ce?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}(ce(e),(function(t){return se.call(e,t)})))}:function(){return[]},qe=Te;function He(e,t){return!!(t=null==t?o:t)&&("number"==typeof e||C.test(e))&&e>-1&&e%1==0&&e<t}function Ke(e){if(null!=e){try{return X.call(e)}catch(e){}try{return e+""}catch(e){}}return""}function Ve(e,t){return e===t||e!=e&&t!=t}(le&&qe(new le(new ArrayBuffer(1)))!=A||fe&&qe(new fe)!=g||pe&&qe(pe.resolve())!=m||de&&qe(new de)!=E||ge&&qe(new ge)!=P)&&(qe=function(e){var t=Te(e),r=t==_?e.constructor:void 0,n=r?Ke(r):"";if(n)switch(n){case ve:return A;case _e:return g;case me:return m;case we:return E;case be:return P}return t});var Be=Re(function(){return arguments}())?Re:function(e){return Xe(e)&&Z.call(e,"callee")&&!se.call(e,"callee")},Fe=Array.isArray;var Ge=ue||function(){return!1};function We(e){if(!Je(e))return!1;var t=Te(e);return t==p||t==d||t==u||t==w}function Ye(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=o}function Je(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function Xe(e){return null!=e&&"object"==typeof e}var Ze=$?function(e){return function(t){return e(t)}}($):function(e){return Xe(e)&&Ye(e.length)&&!!T[Te(e)]};function Qe(e){return null!=(t=e)&&Ye(t.length)&&!We(t)?xe(e):Ue(e);var t}e.exports=function(e,t){return je(e,t)}}(io,io.exports);var so=io.exports;var oo=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,f=s-1;(0!==h||l<i)&&-1!==f;f--,l++)h+=a*o[f]>>>0,o[f]=h%256>>>0,h=h/256>>>0;if(0!==h)throw new Error("Non-zero carry");i=l,t++}if(" "!==e[t]){for(var p=s-i;p!==s&&0===o[p];)p++;for(var d=new Uint8Array(n+(s-p)),g=n;p!==s;)d[g++]=o[p++];return d}}}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],f=0,p=o-1;(0!==l||f<n)&&-1!==p;p--,f++)l+=256*u[p]>>>0,u[p]=l%a>>>0,l=l/a>>>0;if(0!==l)throw new Error("Non-zero carry");n=f,i++}for(var d=o-n;d!==o&&0===u[d];)d++;for(var g=c.repeat(r);d<o;++d)g+=e.charAt(u[d]);return g},decodeUnsafe:l,decode:function(e){var r=l(e);if(r)return r;throw new Error(`Non-${t} character`)}}},ao=oo;const co=e=>{if(e instanceof Uint8Array&&"Uint8Array"===e.constructor.name)return e;if(e instanceof ArrayBuffer)return new Uint8Array(e);if(ArrayBuffer.isView(e))return new Uint8Array(e.buffer,e.byteOffset,e.byteLength);throw new Error("Unknown type, must be binary type")};class uo{constructor(e,t,r){this.name=e,this.prefix=t,this.baseEncode=r}encode(e){if(e instanceof Uint8Array)return`${this.prefix}${this.baseEncode(e)}`;throw Error("Unknown type, must be binary type")}}class ho{constructor(e,t,r){if(this.name=e,this.prefix=t,void 0===t.codePointAt(0))throw new Error("Invalid prefix character");this.prefixCodePoint=t.codePointAt(0),this.baseDecode=r}decode(e){if("string"==typeof e){if(e.codePointAt(0)!==this.prefixCodePoint)throw Error(`Unable to decode multibase string ${JSON.stringify(e)}, ${this.name} decoder only supports inputs prefixed with ${this.prefix}`);return this.baseDecode(e.slice(this.prefix.length))}throw Error("Can only multibase decode strings")}or(e){return fo(this,e)}}class lo{constructor(e){this.decoders=e}or(e){return fo(this,e)}decode(e){const t=e[0],r=this.decoders[t];if(r)return r.decode(e);throw RangeError(`Unable to decode multibase string ${JSON.stringify(e)}, only inputs prefixed with ${Object.keys(this.decoders)} are supported`)}}const fo=(e,t)=>new lo({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}});class po{constructor(e,t,r,n){this.name=e,this.prefix=t,this.baseEncode=r,this.baseDecode=n,this.encoder=new uo(e,t,r),this.decoder=new ho(e,t,n)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}const go=({name:e,prefix:t,encode:r,decode:n})=>new po(e,t,r,n),yo=({prefix:e,name:t,alphabet:r})=>{const{encode:n,decode:i}=ao(r,t);return go({prefix:e,name:t,encode:n,decode:e=>co(i(e))})},vo=({name:e,prefix:t,bitsPerChar:r,alphabet:n})=>go({prefix:t,name:e,encode:e=>((e,t,r)=>{const n="="===t[t.length-1],i=(1<<r)-1;let s="",o=0,a=0;for(let n=0;n<e.length;++n)for(a=a<<8|e[n],o+=8;o>r;)o-=r,s+=t[i&a>>o];if(o&&(s+=t[i&a<<r-o]),n)for(;s.length*r&7;)s+="=";return s})(e,n,r),decode:t=>((e,t,r,n)=>{const i={};for(let e=0;e<t.length;++e)i[t[e]]=e;let s=e.length;for(;"="===e[s-1];)--s;const o=new Uint8Array(s*r/8|0);let a=0,c=0,u=0;for(let t=0;t<s;++t){const s=i[e[t]];if(void 0===s)throw new SyntaxError(`Non-${n} character`);c=c<<r|s,a+=r,a>=8&&(a-=8,o[u++]=255&c>>a)}if(a>=r||255&c<<8-a)throw new SyntaxError("Unexpected end of data");return o})(t,n,r,e)}),_o=go({prefix:"\0",name:"identity",encode:e=>(e=>(new TextDecoder).decode(e))(e),decode:e=>(e=>(new TextEncoder).encode(e))(e)});var mo=Object.freeze({__proto__:null,identity:_o});const wo=vo({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});var bo=Object.freeze({__proto__:null,base2:wo});const Eo=vo({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});var So=Object.freeze({__proto__:null,base8:Eo});const Io=yo({prefix:"9",name:"base10",alphabet:"0123456789"});var Oo=Object.freeze({__proto__:null,base10:Io});const Po=vo({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),No=vo({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});var Ao=Object.freeze({__proto__:null,base16:Po,base16upper:No});const xo=vo({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),Co=vo({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),To=vo({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),Ro=vo({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),jo=vo({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),Lo=vo({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),Uo=vo({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),Mo=vo({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),Do=vo({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});var ko=Object.freeze({__proto__:null,base32:xo,base32upper:Co,base32pad:To,base32padupper:Ro,base32hex:jo,base32hexupper:Lo,base32hexpad:Uo,base32hexpadupper:Mo,base32z:Do});const zo=yo({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),$o=yo({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});var qo=Object.freeze({__proto__:null,base36:zo,base36upper:$o});const Ho=yo({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),Ko=yo({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});var Vo=Object.freeze({__proto__:null,base58btc:Ho,base58flickr:Ko});const Bo=vo({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),Fo=vo({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),Go=vo({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),Wo=vo({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});var Yo=Object.freeze({__proto__:null,base64:Bo,base64pad:Fo,base64url:Go,base64urlpad:Wo});const Jo=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈👇🎶😒🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),Xo=Jo.reduce(((e,t,r)=>(e[r]=t,e)),[]),Zo=Jo.reduce(((e,t,r)=>(e[t.codePointAt(0)]=r,e)),[]);const Qo=go({prefix:"🚀",name:"base256emoji",encode:function(e){return e.reduce(((e,t)=>e+=Xo[t]),"")},decode:function(e){const t=[];for(const r of e){const e=Zo[r.codePointAt(0)];if(void 0===e)throw new Error(`Non-base256emoji character: ${r}`);t.push(e)}return new Uint8Array(t)}});var ea=Object.freeze({__proto__:null,base256emoji:Qo}),ta=function e(t,r,n){r=r||[];for(var i=n=n||0;t>=ia;)r[n++]=255&t|ra,t/=128;for(;t&na;)r[n++]=255&t|ra,t>>>=7;return r[n]=0|t,e.bytes=n-i+1,r},ra=128,na=-128,ia=Math.pow(2,31);var sa=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?(n&aa)<<s:(n&aa)*Math.pow(2,s),s+=7}while(n>=oa);return e.bytes=o-r,i},oa=128,aa=127;var ca=Math.pow(2,7),ua=Math.pow(2,14),ha=Math.pow(2,21),la=Math.pow(2,28),fa=Math.pow(2,35),pa=Math.pow(2,42),da=Math.pow(2,49),ga=Math.pow(2,56),ya=Math.pow(2,63),va={encode:ta,decode:sa,encodingLength:function(e){return e<ca?1:e<ua?2:e<ha?3:e<la?4:e<fa?5:e<pa?6:e<da?7:e<ga?8:e<ya?9:10}};const _a=(e,t,r=0)=>(va.encode(e,t,r),t),ma=e=>va.encodingLength(e),wa=(e,t)=>{const r=t.byteLength,n=ma(e),i=n+ma(r),s=new Uint8Array(i+r);return _a(e,s,0),_a(r,s,n),s.set(t,i),new ba(e,r,t,s)};class ba{constructor(e,t,r,n){this.code=e,this.size=t,this.digest=r,this.bytes=n}}const Ea=({name:e,code:t,encode:r})=>new Sa(e,t,r);class Sa{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?wa(this.code,t):t.then((e=>wa(this.code,e)))}throw Error("Unknown type, must be binary type")}}const Ia=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),Oa=Ea({name:"sha2-256",code:18,encode:Ia("SHA-256")}),Pa=Ea({name:"sha2-512",code:19,encode:Ia("SHA-512")});Object.freeze({__proto__:null,sha256:Oa,sha512:Pa});const Na=co,Aa={code:0,name:"identity",encode:Na,digest:e=>wa(0,Na(e))};Object.freeze({__proto__:null,identity:Aa});new TextEncoder,new TextDecoder;const xa={...mo,...bo,...So,...Oo,...Ao,...ko,...qo,...Vo,...Yo,...ea};function Ca(e){return null!=globalThis.Buffer?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function Ta(e,t,r,n){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:n}}}const Ra=Ta("utf8","u",(e=>"u"+new TextDecoder("utf8").decode(e)),(e=>(new TextEncoder).encode(e.substring(1)))),ja=Ta("ascii","a",(e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t}),(e=>{const t=function(e=0){return null!=globalThis.Buffer&&null!=globalThis.Buffer.allocUnsafe?Ca(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}((e=e.substring(1)).length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t})),La={utf8:Ra,"utf-8":Ra,hex:xa.base16,latin1:ja,ascii:ja,binary:ja,...xa};const Ua="core",Ma=`wc@2:${Ua}:`,Da="error",ka={database:":memory:"},za="client_ed25519_seed",$a=Mt.ONE_DAY,qa=Mt.SIX_HOURS,Ha="wss://relay.walletconnect.com",Ka="wss://relay.walletconnect.org",Va="relayer_message",Ba="relayer_message_ack",Fa="relayer_connect",Ga="relayer_disconnect",Wa="relayer_error",Ya="relayer_connection_stalled",Ja="relayer_transport_closed",Xa="relayer_publish",Za="payload",Qa="connect",ec="disconnect",tc="error",rc=Mt.ONE_SECOND/2,nc="subscription_created",ic="subscription_deleted",sc="subscription_sync",oc="subscription_resubscribed",ac=1e3*Mt.FIVE_SECONDS,cc={wc_pairingDelete:{req:{ttl:Mt.ONE_DAY,prompt:!1,tag:1e3},res:{ttl:Mt.ONE_DAY,prompt:!1,tag:1001}},wc_pairingPing:{req:{ttl:Mt.THIRTY_SECONDS,prompt:!1,tag:1002},res:{ttl:Mt.THIRTY_SECONDS,prompt:!1,tag:1003}},unregistered_method:{req:{ttl:Mt.ONE_DAY,prompt:!1,tag:0},res:{ttl:Mt.ONE_DAY,prompt:!1,tag:0}}},uc="history_created",hc="history_updated",lc="history_deleted",fc="history_sync",pc="expirer_created",dc="expirer_deleted",gc="expirer_expired",yc="expirer_sync",vc="verify-api",_c="https://verify.walletconnect.com";class mc{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=Ma,this.init=async()=>{if(!this.initialized){const e=await this.getKeyChain();typeof e<"u"&&(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(typeof t>"u"){const{message:t}=zn("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=qi.generateChildLogger(t,this.name)}get context(){return qi.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,dn(e))}async getKeyChain(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?gn(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){const{message:e}=zn("NOT_INITIALIZED",this.name);throw new Error(e)}}}class wc{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();return bs(Es(await this.getClientSeed()).publicKey)},this.generateKeyPair=()=>{this.isInitialized();const e=function(){const e=Y.generateKeyPair();return{privateKey:St(e.secretKey,Ur),publicKey:St(e.publicKey,Ur)}}();return this.setPrivateKey(e.publicKey,e.privateKey)},this.signJWT=async e=>{this.isInitialized();const t=Es(await this.getClientSeed()),r=Vr(),n=$a;return await Ss(r,e,n,t)},this.generateSharedKey=(e,t,r)=>{this.isInitialized();const n=function(e,t){const r=Y.sharedKey(Et(e,Ur),Et(t,Ur));return St(new $(W.SHA256,r).expand(Kr),Ur)}(this.getPrivateKey(e),t);return this.setSymKey(n,r)},this.setSymKey=async(e,t)=>{this.isInitialized();const r=t||function(e){return St(W.hash(Et(e,Ur)),Ur)}(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=Yr(r),i=as(t);if(Jr(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 Gr({type:o,symKey:s,message:i,senderPublicKey:a})},this.decode=async(e,t,r)=>{this.isInitialized();const n=function(e,t){const r=Wr(e);return Yr({type:Fr(r.type),senderPublicKey:typeof r.senderPublicKey<"u"?St(r.senderPublicKey,Ur):void 0,receiverPublicKey:t?.receiverPublicKey})}(t,r);if(Jr(n)){const t=n.receiverPublicKey,r=n.senderPublicKey;e=await this.generateSharedKey(t,r)}const i=function(e){const t=new s.ChaCha20Poly1305(Et(e.symKey,Ur)),{sealed:r,iv:n}=Wr(e.encoded),i=t.open(n,r);if(null===i)throw new Error("Failed to decrypt");return St(i,Dr)}({symKey:this.getSymKey(e),encoded:t});return os(i)},this.getPayloadType=e=>Fr(Wr(e).type),this.getPayloadSenderPublicKey=e=>{const t=Wr(e);return t.senderPublicKey?St(t.senderPublicKey,Ur):void 0},this.core=e,this.logger=qi.generateChildLogger(t,this.name),this.keychain=r||new mc(this.core,this.logger)}get context(){return qi.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(za)}catch{e=Vr(),await this.keychain.set(za,e)}return function(e,t="utf8"){const r=La[t];if(!r)throw new Error(`Unsupported encoding "${t}"`);return"utf8"!==t&&"utf-8"!==t||null==globalThis.Buffer||null==globalThis.Buffer.from?r.decoder.decode(`${r.prefix}${e}`):Ca(globalThis.Buffer.from(e,"utf-8"))}(e,"base16")}getSymKey(e){return this.keychain.get(e)}isInitialized(){if(!this.initialized){const{message:e}=zn("NOT_INITIALIZED",this.name);throw new Error(e)}}}class bc extends Ji{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=Ma,this.init=async()=>{if(!this.initialized){this.logger.trace("Initialized");try{const e=await this.getRelayerMessages();typeof e<"u"&&(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=Br(t);let n=this.messages.get(e);return typeof n>"u"&&(n={}),typeof n[r]<"u"||(n[r]=t,this.messages.set(e,n),await this.persist()),r},this.get=e=>{this.isInitialized();let t=this.messages.get(e);return typeof t>"u"&&(t={}),t},this.has=(e,t)=>{this.isInitialized();return typeof this.get(e)[Br(t)]<"u"},this.del=async e=>{this.isInitialized(),this.messages.delete(e),await this.persist()},this.logger=qi.generateChildLogger(e,this.name),this.core=t}get context(){return qi.getLoggerContext(this.logger)}get storageKey(){return this.storagePrefix+this.version+"//"+this.name}async setRelayerMessages(e){await this.core.storage.setItem(this.storageKey,dn(e))}async getRelayerMessages(){const e=await this.core.storage.getItem(this.storageKey);return typeof e<"u"?gn(e):void 0}async persist(){await this.setRelayerMessages(this.messages)}isInitialized(){if(!this.initialized){const{message:e}=zn("NOT_INITIALIZED",this.name);throw new Error(e)}}}class Ec extends Xi{constructor(t,r){super(t,r),this.relayer=t,this.logger=r,this.events=new e.EventEmitter,this.name="publisher",this.queue=new Map,this.publishTimeout=Mt.toMiliseconds(Mt.TEN_SECONDS),this.queueTimeout=Mt.toMiliseconds(Mt.FIVE_SECONDS),this.needsTransportRestart=!1,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=r?.ttl||qa,i=In(r),s=r?.prompt||!1,o=r?.tag||0,a=r?.id||Ds().toString(),c={topic:e,message:t,opts:{ttl:n,relay:i,prompt:s,tag:o,id:a}},u=setTimeout((()=>this.queue.set(a,c)),this.queueTimeout);try{await await vn(this.rpcPublish(e,t,n,i,s,o,a),this.publishTimeout),clearTimeout(u),this.relayer.events.emit(Xa,c)}catch{return this.logger.debug("Publishing Payload stalled"),void(this.needsTransportRestart=!0)}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=t,this.logger=qi.generateChildLogger(r,this.name),this.registerEventListeners()}get context(){return qi.getLoggerContext(this.logger)}rpcPublish(e,t,r,n,i,s,o){var a,c,u,h;const l={method:On(n.protocol).publish,params:{topic:e,message:t,ttl:r,prompt:i,tag:s},id:o};return Kn(null==(a=l.params)?void 0:a.prompt)&&(null==(c=l.params)||delete c.prompt),Kn(null==(u=l.params)?void 0:u.tag)&&(null==(h=l.params)||delete h.tag),this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"message",direction:"outgoing",request:l}),this.relayer.request(l)}onPublish(e){this.queue.delete(e)}checkQueue(){this.queue.forEach((async e=>{const{topic:t,message:r,opts:n}=e;await this.publish(t,r,n)}))}registerEventListeners(){this.relayer.core.heartbeat.on(bi.HEARTBEAT_EVENTS.pulse,(()=>{if(this.needsTransportRestart)return this.needsTransportRestart=!1,void this.relayer.events.emit(Ya);this.checkQueue()})),this.relayer.on(Ba,(e=>{this.onPublish(e.id.toString())}))}}class Sc{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(typeof t>"u")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())}}var Ic=Object.defineProperty,Oc=Object.defineProperties,Pc=Object.getOwnPropertyDescriptors,Nc=Object.getOwnPropertySymbols,Ac=Object.prototype.hasOwnProperty,xc=Object.prototype.propertyIsEnumerable,Cc=(e,t,r)=>t in e?Ic(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Tc=(e,t)=>{for(var r in t||(t={}))Ac.call(t,r)&&Cc(e,r,t[r]);if(Nc)for(var r of Nc(t))xc.call(t,r)&&Cc(e,r,t[r]);return e},Rc=(e,t)=>Oc(e,Pc(t));class jc extends es{constructor(t,r){super(t,r),this.relayer=t,this.logger=r,this.subscriptions=new Map,this.topicMap=new Sc,this.events=new e.EventEmitter,this.name="subscription",this.version="0.3",this.pending=new Map,this.cached=[],this.initialized=!1,this.pendingSubscriptionWatchLabel="pending_sub_watch_label",this.pollingInterval=20,this.storagePrefix=Ma,this.subscribeTimeout=1e4,this.restartInProgress=!1,this.batchSubscribeTopicsLimit=500,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restart(),this.registerEventListeners(),this.onEnable(),this.clientId=await this.relayer.core.crypto.getClientId())},this.subscribe=async(e,t)=>{await this.restartToComplete(),this.isInitialized(),this.logger.debug("Subscribing Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:e,opts:t}});try{const r=In(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)=>{await this.restartToComplete(),this.isInitialized(),typeof t?.id<"u"?await this.unsubscribeById(e,t.id,t):await this.unsubscribeByTopic(e,t)},this.isSubscribed=async e=>!!this.topics.includes(e)||await new Promise(((t,r)=>{const n=new Mt.Watch;n.start(this.pendingSubscriptionWatchLabel);const i=setInterval((()=>{!this.pending.has(e)&&this.topics.includes(e)&&(clearInterval(i),n.stop(this.pendingSubscriptionWatchLabel),t(!0)),n.elapsed(this.pendingSubscriptionWatchLabel)>=ac&&(clearInterval(i),n.stop(this.pendingSubscriptionWatchLabel),r(new Error("Subscription resolution timeout")))}),this.pollingInterval)})).catch((()=>!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.restart=async()=>{this.restartInProgress=!0,await this.restore(),await this.reset(),this.restartInProgress=!1},this.relayer=t,this.logger=qi.generateChildLogger(r,this.name),this.clientId=""}get context(){return qi.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{}return r}onEnable(){this.cached=[],this.initialized=!0}onDisable(){this.cached=this.values,this.subscriptions.clear(),this.topicMap.clear()}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=In(r);await this.rpcUnsubscribe(e,t,n);const i=$n("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:On(t.protocol).subscribe,params:{topic:e}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:r});try{await await vn(this.relayer.request(r),this.subscribeTimeout)}catch{this.logger.debug("Outgoing Relay Subscribe Payload stalled"),this.relayer.events.emit(Ya)}return Br(e+this.clientId)}async rpcBatchSubscribe(e){if(!e.length)return;const t={method:On(e[0].relay.protocol).batchSubscribe,params:{topics:e.map((e=>e.topic))}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:t});try{return await await vn(this.relayer.request(t),this.subscribeTimeout)}catch{this.logger.debug("Outgoing Relay Payload stalled"),this.relayer.events.emit(Ya)}}rpcUnsubscribe(e,t,r){const n={method:On(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.request(n)}onSubscribe(e,t){this.setSubscription(e,Rc(Tc({},t),{id:e})),this.pending.delete(t.topic)}onBatchSubscribe(e){e.length&&e.forEach((e=>{this.setSubscription(e.id,Tc({},e)),this.pending.delete(e.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,Tc({},t)),this.topicMap.set(t.topic,e),this.events.emit(nc,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}=zn("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(ic,Rc(Tc({},r),{reason:t}))}async persist(){await this.setRelayerSubscriptions(this.values),this.events.emit(sc)}async reset(){if(this.cached.length){const e=Math.ceil(this.cached.length/this.batchSubscribeTopicsLimit);for(let t=0;t<e;t++){const e=this.cached.splice(0,this.batchSubscribeTopicsLimit);await this.batchSubscribe(e)}}this.events.emit(oc)}async restore(){try{const e=await this.getRelayerSubscriptions();if(typeof e>"u"||!e.length)return;if(this.subscriptions.size){const{message:e}=zn("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),this.logger.error(`${this.name}: ${JSON.stringify(this.values)}`),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 batchSubscribe(e){if(!e.length)return;const t=await this.rpcBatchSubscribe(e);qn(t)&&this.onBatchSubscribe(t.map(((t,r)=>Rc(Tc({},e[r]),{id:t}))))}async onConnect(){this.restartInProgress||(await this.restart(),this.onEnable())}onDisconnect(){this.onDisable()}async checkPending(){if(this.relayer.transportExplicitlyClosed)return;const e=[];this.pending.forEach((t=>{e.push(t)})),await this.batchSubscribe(e)}registerEventListeners(){this.relayer.core.heartbeat.on(bi.HEARTBEAT_EVENTS.pulse,(async()=>{await this.checkPending()})),this.relayer.on(Fa,(async()=>{await this.onConnect()})),this.relayer.on(Ga,(()=>{this.onDisconnect()})),this.events.on(nc,(async e=>{const t=nc;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),await this.persist()})),this.events.on(ic,(async e=>{const t=ic;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),await this.persist()}))}isInitialized(){if(!this.initialized){const{message:e}=zn("NOT_INITIALIZED",this.name);throw new Error(e)}}async restartToComplete(){this.restartInProgress&&await new Promise((e=>{const t=setInterval((()=>{this.restartInProgress||(clearInterval(t),e())}),this.pollingInterval)}))}}var Lc=Object.defineProperty,Uc=Object.getOwnPropertySymbols,Mc=Object.prototype.hasOwnProperty,Dc=Object.prototype.propertyIsEnumerable,kc=(e,t,r)=>t in e?Lc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;class zc extends Zi{constructor(t){super(t),this.protocol="wc",this.version=2,this.events=new e.EventEmitter,this.name="relayer",this.transportExplicitlyClosed=!1,this.initialized=!1,this.reconnecting=!1,this.connectionStatusPollingInterval=20,this.staleConnectionErrors=["socket hang up","socket stalled"],this.request=async e=>{this.logger.debug("Publishing Request Payload");try{return await this.toEstablishConnection(),await this.provider.request(e)}catch(e){throw this.logger.debug("Failed to Publish Request"),this.logger.error(e),e}},this.core=t.core,this.logger=typeof t.logger<"u"&&"string"!=typeof t.logger?qi.generateChildLogger(t.logger,this.name):qi.pino(qi.getDefaultLoggerOptions({level:t.logger||"error"})),this.messages=new bc(this.logger,t.core),this.subscriber=new jc(this,this.logger),this.publisher=new Ec(this,this.logger),this.relayUrl=t?.relayUrl||Ha,this.projectId=t.projectId,this.provider={}}async init(){this.logger.trace("Initialized"),await this.createProvider(),await Promise.all([this.messages.init(),this.subscriber.init()]);try{await this.transportOpen()}catch{this.logger.warn(`Connection via ${this.relayUrl} failed, attempting to connect via failover domain ${Ka}...`),await this.restartTransport(Ka)}this.registerEventListeners(),this.initialized=!0,setTimeout((async()=>{0===this.subscriber.topics.length&&(this.logger.info("No topics subscribed to after init, closing transport"),await this.transportClose(),this.transportExplicitlyClosed=!1)}),1e4)}get context(){return qi.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,publishedAt:Date.now()})}async subscribe(e,t){var r;this.isInitialized();let n=(null==(r=this.subscriber.topicMap.get(e))?void 0:r[0])||"";return n||(await Promise.all([new Promise((t=>{this.subscriber.once(nc,(r=>{r.topic===e&&t()}))})),new Promise((async r=>{n=await this.subscriber.subscribe(e,t),r()}))]),n)}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)}async transportClose(){this.transportExplicitlyClosed=!0,this.connected&&(await this.provider.disconnect(),this.events.emit(Ja))}async transportOpen(e){if(this.transportExplicitlyClosed=!1,!this.reconnecting){this.relayUrl=e||this.relayUrl,this.reconnecting=!0;try{await Promise.all([new Promise((e=>{this.initialized||e(),this.subscriber.once(oc,(()=>{e()}))})),await Promise.race([new Promise((async(e,t)=>{await vn(this.provider.connect(),5e3,`Socket stalled when trying to connect to ${this.relayUrl}`).catch((e=>t(e))).then((()=>e())).finally((()=>this.removeListener(Ja,this.rejectTransportOpen)))})),new Promise((e=>this.once(Ja,this.rejectTransportOpen)))])])}catch(e){this.logger.error(e);const t=e;if(!this.isConnectionStalled(t.message))throw e;this.events.emit(Ja)}finally{this.reconnecting=!1}}}async restartTransport(e){this.transportExplicitlyClosed||this.reconnecting||(this.relayUrl=e||this.relayUrl,this.connected&&await Promise.all([new Promise((e=>{this.provider.once(ec,(()=>{e()}))})),this.transportClose()]),await this.createProvider(),await this.transportOpen())}isConnectionStalled(e){return this.staleConnectionErrors.some((t=>e.includes(t)))}rejectTransportOpen(){throw new Error("Attempt to connect to relay via `transportOpen` has stalled. Retrying...")}async createProvider(){const e=await this.core.crypto.signJWT(this.relayUrl);this.provider=new eo(new no(fn({sdkVersion:"2.9.0",protocol:this.protocol,version:this.version,relayUrl:this.relayUrl,projectId:this.projectId,auth:e,useOnCloseEvent:!0}))),this.registerProviderListeners()}async recordMessageEvent(e){const{topic:t,message:r}=e;await this.messages.set(t,r)}async shouldIgnoreMessageEvent(e){const{topic:t,message:r}=e;return!await this.subscriber.isSubscribed(t)||this.messages.has(t,r)}async onProviderPayload(e){if(this.logger.debug("Incoming Relay Payload"),this.logger.trace({type:"payload",direction:"incoming",payload:e}),Js(e)){if(!e.method.endsWith("_subscription"))return;const t=e.params,{topic:r,message:n,publishedAt:i}=t.data,s={topic:r,message:n,publishedAt:i};this.logger.debug("Emitting Relayer Payload"),this.logger.trace(((e,t)=>{for(var r in t||(t={}))Mc.call(t,r)&&kc(e,r,t[r]);if(Uc)for(var r of Uc(t))Dc.call(t,r)&&kc(e,r,t[r]);return e})({type:"event",event:t.id},s)),this.events.emit(t.id,s),await this.acknowledgePayload(e),await this.onMessageEvent(s)}else Xs(e)&&this.events.emit(Ba,e)}async onMessageEvent(e){await this.shouldIgnoreMessageEvent(e)||(this.events.emit(Va,e),await this.recordMessageEvent(e))}async acknowledgePayload(e){const t=zs(e.id,!0);await this.provider.connection.send(t)}registerProviderListeners(){this.provider.on(Za,(e=>this.onProviderPayload(e))),this.provider.on(Qa,(()=>{this.events.emit(Fa)})),this.provider.on(ec,(()=>{this.onProviderDisconnect()})),this.provider.on(tc,(e=>{this.logger.error(e),this.events.emit(Wa,e)}))}registerEventListeners(){this.events.on(Ya,(async()=>{await this.restartTransport()}))}onProviderDisconnect(){this.events.emit(Ga),this.attemptToReconnect()}attemptToReconnect(){this.transportExplicitlyClosed||setTimeout((async()=>{await this.restartTransport()}),Mt.toMiliseconds(rc))}isInitialized(){if(!this.initialized){const{message:e}=zn("NOT_INITIALIZED",this.name);throw new Error(e)}}async toEstablishConnection(){if(!this.connected){if(this.connecting)return await new Promise((e=>{const t=setInterval((()=>{this.connected&&(clearInterval(t),e())}),this.connectionStatusPollingInterval)}));await this.restartTransport()}}}var $c=Object.defineProperty,qc=Object.getOwnPropertySymbols,Hc=Object.prototype.hasOwnProperty,Kc=Object.prototype.propertyIsEnumerable,Vc=(e,t,r)=>t in e?$c(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Bc=(e,t)=>{for(var r in t||(t={}))Hc.call(t,r)&&Vc(e,r,t[r]);if(qc)for(var r of qc(t))Kc.call(t,r)&&Vc(e,r,t[r]);return e};class Fc extends Qi{constructor(e,t,r,n=Ma,i=void 0){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=Ma,this.init=async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach((e=>{this.getKey&&null!==e&&!Kn(e)?this.map.set(this.getKey(e),e):function(e){var t;return null==(t=e?.proposer)?void 0:t.publicKey}(e)?this.map.set(e.id,e):function(e){return e?.topic}(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}),this.getData(e)),this.getAll=e=>(this.isInitialized(),e?this.values.filter((t=>Object.keys(e).every((r=>so(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=Bc(Bc({},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=qi.generateChildLogger(t,this.name),this.storagePrefix=n,this.getKey=i}get context(){return qi.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}=zn("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(typeof e>"u"||!e.length)return;if(this.map.size){const{message:e}=zn("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}=zn("NOT_INITIALIZED",this.name);throw new Error(e)}}}class Gc{constructor(e,t){this.core=e,this.logger=t,this.name="pairing",this.version="0.3",this.events=new i.default,this.initialized=!1,this.storagePrefix=Ma,this.ignoredPayloadTypes=[zr],this.registeredMethods=[],this.init=async()=>{this.initialized||(await this.pairings.init(),await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0,this.logger.trace("Initialized"))},this.register=({methods:e})=>{this.isInitialized(),this.registeredMethods=[...new Set([...this.registeredMethods,...e])]},this.create=async()=>{this.isInitialized();const e=Vr(),t=await this.core.crypto.setSymKey(e),r=wn(Mt.FIVE_MINUTES),n={protocol:"irn"},i={topic:t,expiry:r,relay:n,active:!1},s=jn({protocol:this.core.protocol,version:this.core.version,topic:t,symKey:e,relay:n});return await this.pairings.set(t,i),await this.core.relayer.subscribe(t),this.core.expirer.set(t,r),{topic:t,uri:s}},this.pair=async e=>{this.isInitialized(),this.isValidPair(e);const{topic:t,symKey:r,relay:n}=function(e){const t=e.indexOf(":"),r=-1!==e.indexOf("?")?e.indexOf("?"):void 0,n=e.substring(0,t),i=e.substring(t+1,r).split("@"),s=typeof r<"u"?e.substring(r):"",o=Er.parse(s);return{protocol:n,topic:Rn(i[0]),version:parseInt(i[1],10),symKey:o.symKey,relay:Tn(o)}}(e.uri);if(this.pairings.keys.includes(t))throw new Error(`Pairing already exists: ${t}`);if(this.core.crypto.hasKeys(t))throw new Error(`Keychain already exists: ${t}`);const i=wn(Mt.FIVE_MINUTES),s={topic:t,relay:n,expiry:i,active:!1};return await this.pairings.set(t,s),await this.core.crypto.setSymKey(r,t),await this.core.relayer.subscribe(t,{relay:n}),this.core.expirer.set(t,i),e.activatePairing&&await this.activate({topic:t}),s},this.activate=async({topic:e})=>{this.isInitialized();const t=wn(Mt.THIRTY_DAYS);await this.pairings.update(e,{active:!0,expiry:t}),this.core.expirer.set(e,t)},this.ping=async e=>{this.isInitialized(),await this.isValidPing(e);const{topic:t}=e;if(this.pairings.keys.includes(t)){const e=await this.sendRequest(t,"wc_pairingPing",{}),{done:r,resolve:n,reject:i}=yn();this.events.once(En("pairing_ping",e),(({error:e})=>{e?i(e):n()})),await r()}},this.updateExpiry=async({topic:e,expiry:t})=>{this.isInitialized(),await this.pairings.update(e,{expiry:t})},this.updateMetadata=async({topic:e,metadata:t})=>{this.isInitialized(),await this.pairings.update(e,{peerMetadata:t})},this.getPairings=()=>(this.isInitialized(),this.pairings.values),this.disconnect=async e=>{this.isInitialized(),await this.isValidDisconnect(e);const{topic:t}=e;this.pairings.keys.includes(t)&&(await this.sendRequest(t,"wc_pairingDelete",$n("USER_DISCONNECTED")),await this.deletePairing(t))},this.sendRequest=async(e,t,r)=>{const n=ks(t,r),i=await this.core.crypto.encode(e,n),s=cc[t].req;return this.core.history.set(e,n),this.core.relayer.publish(e,i,s),n.id},this.sendResult=async(e,t,r)=>{const n=zs(e,r),i=await this.core.crypto.encode(t,n),s=await this.core.history.get(t,e),o=cc[s.request.method].res;await this.core.relayer.publish(t,i,o),await this.core.history.resolve(n)},this.sendError=async(e,t,r)=>{const n=$s(e,r),i=await this.core.crypto.encode(t,n),s=await this.core.history.get(t,e),o=cc[s.request.method]?cc[s.request.method].res:cc.unregistered_method.res;await this.core.relayer.publish(t,i,o),await this.core.history.resolve(n)},this.deletePairing=async(e,t)=>{await this.core.relayer.unsubscribe(e),await Promise.all([this.pairings.delete(e,$n("USER_DISCONNECTED")),this.core.crypto.deleteSymKey(e),t?Promise.resolve():this.core.expirer.del(e)])},this.cleanup=async()=>{const e=this.pairings.getAll().filter((e=>bn(e.expiry)));await Promise.all(e.map((e=>this.deletePairing(e.topic))))},this.onRelayEventRequest=e=>{const{topic:t,payload:r}=e,n=r.method;if(this.pairings.keys.includes(t))switch(n){case"wc_pairingPing":return this.onPairingPingRequest(t,r);case"wc_pairingDelete":return this.onPairingDeleteRequest(t,r);default:return this.onUnknownRpcMethodRequest(t,r)}},this.onRelayEventResponse=async e=>{const{topic:t,payload:r}=e,n=(await this.core.history.get(t,r.id)).request.method;if(this.pairings.keys.includes(t)){if("wc_pairingPing"===n)return this.onPairingPingResponse(t,r);return this.onUnknownRpcMethodResponse(n)}},this.onPairingPingRequest=async(e,t)=>{const{id:r}=t;try{this.isValidPing({topic:e}),await this.sendResult(r,e,!0),this.events.emit("pairing_ping",{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.logger.error(t)}},this.onPairingPingResponse=(e,t)=>{const{id:r}=t;setTimeout((()=>{Zs(t)?this.events.emit(En("pairing_ping",r),{}):Qs(t)&&this.events.emit(En("pairing_ping",r),{error:t.error})}),500)},this.onPairingDeleteRequest=async(e,t)=>{const{id:r}=t;try{this.isValidDisconnect({topic:e}),await this.deletePairing(e),this.events.emit("pairing_delete",{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.logger.error(t)}},this.onUnknownRpcMethodRequest=async(e,t)=>{const{id:r,method:n}=t;try{if(this.registeredMethods.includes(n))return;const t=$n("WC_METHOD_UNSUPPORTED",n);await this.sendError(r,e,t),this.logger.error(t)}catch(t){await this.sendError(r,e,t),this.logger.error(t)}},this.onUnknownRpcMethodResponse=e=>{this.registeredMethods.includes(e)||this.logger.error($n("WC_METHOD_UNSUPPORTED",e))},this.isValidPair=e=>{if(!Qn(e)){const{message:t}=zn("MISSING_OR_INVALID",`pair() params: ${e}`);throw new Error(t)}if(!function(e){if(Vn(e,!1))try{return typeof new URL(e)<"u"}catch{return!1}return!1}(e.uri)){const{message:t}=zn("MISSING_OR_INVALID",`pair() uri: ${e.uri}`);throw new Error(t)}},this.isValidPing=async e=>{if(!Qn(e)){const{message:t}=zn("MISSING_OR_INVALID",`ping() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidPairingTopic(t)},this.isValidDisconnect=async e=>{if(!Qn(e)){const{message:t}=zn("MISSING_OR_INVALID",`disconnect() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidPairingTopic(t)},this.isValidPairingTopic=async e=>{if(!Vn(e,!1)){const{message:t}=zn("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw new Error(t)}if(!this.pairings.keys.includes(e)){const{message:t}=zn("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw new Error(t)}if(bn(this.pairings.get(e).expiry)){await this.deletePairing(e);const{message:t}=zn("EXPIRED",`pairing topic: ${e}`);throw new Error(t)}},this.core=e,this.logger=qi.generateChildLogger(t,this.name),this.pairings=new Fc(this.core,this.logger,this.name,this.storagePrefix)}get context(){return qi.getLoggerContext(this.logger)}isInitialized(){if(!this.initialized){const{message:e}=zn("NOT_INITIALIZED",this.name);throw new Error(e)}}registerRelayerEvents(){this.core.relayer.on(Va,(async e=>{const{topic:t,message:r}=e;if(this.ignoredPayloadTypes.includes(this.core.crypto.getPayloadType(r)))return;const n=await this.core.crypto.decode(t,r);Js(n)?(this.core.history.set(t,n),this.onRelayEventRequest({topic:t,payload:n})):Xs(n)&&(await this.core.history.resolve(n),await this.onRelayEventResponse({topic:t,payload:n}),this.core.history.delete(t,n.id))}))}registerExpirerEvents(){this.core.expirer.on(gc,(async e=>{const{topic:t}=mn(e.target);t&&this.pairings.keys.includes(t)&&(await this.deletePairing(t,!0),this.events.emit("pairing_expire",{topic:t}))}))}}class Wc extends Yi{constructor(t,r){super(t,r),this.core=t,this.logger=r,this.records=new Map,this.events=new e.EventEmitter,this.name="history",this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix=Ma,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,expiry:wn(Mt.THIRTY_DAYS)};this.records.set(n.id,n),this.events.emit(uc,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);typeof t.response>"u"&&(t.response=Qs(e)?{error:e.error}:{result:e.result},this.records.set(t.id,t),this.events.emit(hc,t))},this.get=async(e,t)=>(this.isInitialized(),this.logger.debug("Getting record"),this.logger.trace({type:"method",method:"get",topic:e,id:t}),await this.getRecord(t)),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(typeof t<"u"&&r.id!==t)return;this.records.delete(r.id),this.events.emit(lc,r)}}))},this.exists=async(e,t)=>(this.isInitialized(),!!this.records.has(t)&&(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=qi.generateChildLogger(r,this.name)}get context(){return qi.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(typeof t.response<"u")return;const r={topic:t.topic,request:ks(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}=zn("NO_MATCHING_KEY",`${this.name}: ${e}`);throw new Error(t)}return t}async persist(){await this.setJsonRpcRecords(this.values),this.events.emit(fc)}async restore(){try{const e=await this.getJsonRpcRecords();if(typeof e>"u"||!e.length)return;if(this.records.size){const{message:e}=zn("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(uc,(e=>{const t=uc;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e}),this.persist()})),this.events.on(hc,(e=>{const t=hc;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e}),this.persist()})),this.events.on(lc,(e=>{const t=lc;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,record:e}),this.persist()})),this.core.heartbeat.on(bi.HEARTBEAT_EVENTS.pulse,(()=>{this.cleanup()}))}cleanup(){try{this.records.forEach((e=>{Mt.toMiliseconds(e.expiry||0)-Date.now()<=0&&(this.logger.info(`Deleting expired history log: ${e.id}`),this.delete(e.topic,e.id))}))}catch(e){this.logger.warn(e)}}isInitialized(){if(!this.initialized){const{message:e}=zn("NOT_INITIALIZED",this.name);throw new Error(e)}}}class Yc extends ts{constructor(t,r){super(t,r),this.core=t,this.logger=r,this.expirations=new Map,this.events=new e.EventEmitter,this.name="expirer",this.version="0.3",this.cached=[],this.initialized=!1,this.storagePrefix=Ma,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 typeof this.getExpiration(t)<"u"}catch{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(pc,{target:r,expiration:n})},this.get=e=>{this.isInitialized();const t=this.formatTarget(e);return this.getExpiration(t)},this.del=e=>{if(this.isInitialized(),this.has(e)){const t=this.formatTarget(e),r=this.getExpiration(t);this.expirations.delete(t),this.events.emit(dc,{target:t,expiration:r})}},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=qi.generateChildLogger(r,this.name)}get context(){return qi.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 function(e){return _n("topic",e)}(e);if("number"==typeof e)return function(e){return _n("id",e)}(e);const{message:t}=zn("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(yc)}async restore(){try{const e=await this.getExpirations();if(typeof e>"u"||!e.length)return;if(this.expirations.size){const{message:e}=zn("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}=zn("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(t),new Error(t)}return t}checkExpiry(e,t){const{expiry:r}=t;Mt.toMiliseconds(r)-Date.now()<=0&&this.expire(e,t)}expire(e,t){this.expirations.delete(e),this.events.emit(gc,{target:e,expiration:t})}checkExpirations(){this.core.relayer.connected&&this.expirations.forEach(((e,t)=>this.checkExpiry(t,e)))}registerEventListeners(){this.core.heartbeat.on(bi.HEARTBEAT_EVENTS.pulse,(()=>this.checkExpirations())),this.events.on(pc,(e=>{const t=pc;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()})),this.events.on(gc,(e=>{const t=gc;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()})),this.events.on(dc,(e=>{const t=dc;this.logger.info(`Emitting ${t}`),this.logger.debug({type:"event",event:t,data:e}),this.persist()}))}isInitialized(){if(!this.initialized){const{message:e}=zn("NOT_INITIALIZED",this.name);throw new Error(e)}}}class Jc extends rs{constructor(e,t){super(e,t),this.projectId=e,this.logger=t,this.name=vc,this.initialized=!1,this.init=async e=>{cn()||!un()||(this.verifyUrl=e?.verifyUrl||_c,await this.createIframe())},this.register=async e=>{var t;if(this.initialized||await this.init(),this.iframe)try{null==(t=this.iframe.contentWindow)||t.postMessage(e.attestationId,this.verifyUrl),this.logger.info(`postMessage sent: ${e.attestationId} ${this.verifyUrl}`)}catch{}},this.resolve=async e=>{var t;if(this.isDevEnv)return"";this.logger.info(`resolving attestation: ${e.attestationId}`);const r=this.startAbortTimer(Mt.FIVE_SECONDS),n=await fetch(`${this.verifyUrl}/attestation/${e.attestationId}`,{signal:this.abortController.signal});return clearTimeout(r),200===n.status?null==(t=await n.json())?void 0:t.origin:""},this.createIframe=async()=>{try{await Promise.race([new Promise(((e,t)=>{if(document.getElementById(vc))return e();const r=document.createElement("iframe");r.setAttribute("id",vc),r.setAttribute("src",`${this.verifyUrl}/${this.projectId}`),r.style.display="none",r.addEventListener("load",(()=>{this.initialized=!0,e()})),r.addEventListener("error",(e=>{t(e)})),document.body.append(r),this.iframe=r})),new Promise((e=>{setTimeout((()=>e("iframe load timeout")),Mt.toMiliseconds(Mt.ONE_SECOND/2))}))])}catch(e){this.logger.error(`Verify iframe failed to load: ${this.verifyUrl}`),this.logger.error(e)}},this.logger=qi.generateChildLogger(t,this.name),this.verifyUrl=_c,this.abortController=new AbortController,this.isDevEnv=an()&&process.env.IS_VITEST}get context(){return qi.getLoggerContext(this.logger)}startAbortTimer(e){return setTimeout((()=>this.abortController.abort()),Mt.toMiliseconds(e))}}var Xc=Object.defineProperty,Zc=Object.getOwnPropertySymbols,Qc=Object.prototype.hasOwnProperty,eu=Object.prototype.propertyIsEnumerable,tu=(e,t,r)=>t in e?Xc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ru=(e,t)=>{for(var r in t||(t={}))Qc.call(t,r)&&tu(e,r,t[r]);if(Zc)for(var r of Zc(t))eu.call(t,r)&&tu(e,r,t[r]);return e};class nu extends Wi{constructor(t){super(t),this.protocol="wc",this.version=2,this.name=Ua,this.events=new e.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=t?.projectId,this.relayUrl=t?.relayUrl||Ha;const r=typeof t?.logger<"u"&&"string"!=typeof t?.logger?t.logger:qi.pino(qi.getDefaultLoggerOptions({level:t?.logger||Da}));this.logger=qi.generateChildLogger(r,this.name),this.heartbeat=new bi.HeartBeat,this.crypto=new wc(this,this.logger,t?.keychain),this.history=new Wc(this,this.logger),this.expirer=new Yc(this,this.logger),this.storage=null!=t&&t.storage?t.storage:new wi(ru(ru({},ka),t?.storageOptions)),this.relayer=new zc({core:this,logger:this.logger,relayUrl:this.relayUrl,projectId:this.projectId}),this.pairing=new Gc(this,this.logger),this.verify=new Jc(this.projectId||"",this.logger)}static async init(e){const t=new nu(e);await t.initialize();const r=await t.crypto.getClientId();return await t.storage.setItem("WALLETCONNECT_CLIENT_ID",r),t}get context(){return qi.getLoggerContext(this.logger)}async start(){this.initialized||await this.initialize()}async initialize(){this.logger.trace("Initialized");try{await this.crypto.init(),await this.history.init(),await this.expirer.init(),await this.relayer.init(),await this.heartbeat.init(),await this.pairing.init(),this.initialized=!0,this.logger.info("Core Initialization Success")}catch(e){throw this.logger.warn(`Core Initialization Failure at epoch ${Date.now()}`,e),this.logger.error(e.message),e}}}const iu=nu,su="client",ou=`wc@2:${su}:`,au=su,cu="error",uu="Proposal expired",hu=Mt.SEVEN_DAYS,lu={wc_sessionPropose:{req:{ttl:Mt.FIVE_MINUTES,prompt:!0,tag:1100},res:{ttl:Mt.FIVE_MINUTES,prompt:!1,tag:1101}},wc_sessionSettle:{req:{ttl:Mt.FIVE_MINUTES,prompt:!1,tag:1102},res:{ttl:Mt.FIVE_MINUTES,prompt:!1,tag:1103}},wc_sessionUpdate:{req:{ttl:Mt.ONE_DAY,prompt:!1,tag:1104},res:{ttl:Mt.ONE_DAY,prompt:!1,tag:1105}},wc_sessionExtend:{req:{ttl:Mt.ONE_DAY,prompt:!1,tag:1106},res:{ttl:Mt.ONE_DAY,prompt:!1,tag:1107}},wc_sessionRequest:{req:{ttl:Mt.FIVE_MINUTES,prompt:!0,tag:1108},res:{ttl:Mt.FIVE_MINUTES,prompt:!1,tag:1109}},wc_sessionEvent:{req:{ttl:Mt.FIVE_MINUTES,prompt:!0,tag:1110},res:{ttl:Mt.FIVE_MINUTES,prompt:!1,tag:1111}},wc_sessionDelete:{req:{ttl:Mt.ONE_DAY,prompt:!1,tag:1112},res:{ttl:Mt.ONE_DAY,prompt:!1,tag:1113}},wc_sessionPing:{req:{ttl:Mt.THIRTY_SECONDS,prompt:!1,tag:1114},res:{ttl:Mt.THIRTY_SECONDS,prompt:!1,tag:1115}}},fu={min:Mt.FIVE_MINUTES,max:Mt.SEVEN_DAYS},pu=["wc_sessionPropose","wc_sessionRequest","wc_authRequest"];var du=Object.defineProperty,gu=Object.defineProperties,yu=Object.getOwnPropertyDescriptors,vu=Object.getOwnPropertySymbols,_u=Object.prototype.hasOwnProperty,mu=Object.prototype.propertyIsEnumerable,wu=(e,t,r)=>t in e?du(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,bu=(e,t)=>{for(var r in t||(t={}))_u.call(t,r)&&wu(e,r,t[r]);if(vu)for(var r of vu(t))mu.call(t,r)&&wu(e,r,t[r]);return e},Eu=(e,t)=>gu(e,yu(t));class Su extends is{constructor(e){super(e),this.name="engine",this.events=new i.default,this.initialized=!1,this.ignoredPayloadTypes=[zr],this.init=async()=>{this.initialized||(await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.client.core.pairing.register({methods:Object.keys(lu)}),this.initialized=!0)},this.connect=async e=>{this.isInitialized();const t=Eu(bu({},e),{requiredNamespaces:e.requiredNamespaces||{},optionalNamespaces:e.optionalNamespaces||{}});await this.isValidConnect(t);const{pairingTopic:r,requiredNamespaces:n,optionalNamespaces:i,sessionProperties:s,relays:o}=t;let a,c=r,u=!1;if(c&&(u=this.client.core.pairing.pairings.get(c).active),!c||!u){const{topic:e,uri:t}=await this.client.core.pairing.create();c=e,a=t}const h=await this.client.core.crypto.generateKeyPair(),l=bu({requiredNamespaces:n,optionalNamespaces:i,relays:o??[{protocol:"irn"}],proposer:{publicKey:h,metadata:this.client.metadata}},s&&{sessionProperties:s}),{reject:f,resolve:p,done:d}=yn(Mt.FIVE_MINUTES,uu);if(this.events.once(En("session_connect"),(async({error:e,session:t})=>{if(e)f(e);else if(t){t.self.publicKey=h;const e=Eu(bu({},t),{requiredNamespaces:t.requiredNamespaces,optionalNamespaces:t.optionalNamespaces});await this.client.session.set(t.topic,e),await this.setExpiry(t.topic,t.expiry),c&&await this.client.core.pairing.updateMetadata({topic:c,metadata:t.peer.metadata}),p(e)}})),!c){const{message:e}=zn("NO_MATCHING_KEY",`connect() pairing topic: ${c}`);throw new Error(e)}const g=await this.sendRequest(c,"wc_sessionPropose",l),y=wn(Mt.FIVE_MINUTES);return await this.setProposal(g,bu({id:g,expiry:y},l)),{uri:a,approval:d}},this.pair=async e=>(this.isInitialized(),await this.client.core.pairing.pair(e)),this.approve=async e=>{this.isInitialized(),await this.isValidApprove(e);const{id:t,relayProtocol:r,namespaces:n,sessionProperties:i}=e,s=this.client.proposal.get(t);let{pairingTopic:o,proposer:a,requiredNamespaces:c,optionalNamespaces:u}=s;o=o||"",Hn(c)||(c=function(e,t){const r=Xn(e,t);if(r)throw new Error(r.message);const n={};for(const[t,r]of Object.entries(e))n[t]={methods:r.methods,events:r.events,chains:r.accounts.map((e=>`${e.split(":")[0]}:${e.split(":")[1]}`))};return n}(n,"approve()"));const h=await this.client.core.crypto.generateKeyPair(),l=a.publicKey,f=await this.client.core.crypto.generateSharedKey(h,l);o&&t&&(await this.client.core.pairing.updateMetadata({topic:o,metadata:a.metadata}),await this.sendResult(t,o,{relay:{protocol:r??"irn"},responderPublicKey:h}),await this.client.proposal.delete(t,$n("USER_DISCONNECTED")),await this.client.core.pairing.activate({topic:o}));const p=bu({relay:{protocol:r??"irn"},namespaces:n,requiredNamespaces:c,optionalNamespaces:u,pairingTopic:o,controller:{publicKey:h,metadata:this.client.metadata},expiry:wn(hu)},i&&{sessionProperties:i});await this.client.core.relayer.subscribe(f),await this.sendRequest(f,"wc_sessionSettle",p);const d=Eu(bu({},p),{topic:f,pairingTopic:o,acknowledged:!1,self:p.controller,peer:{publicKey:a.publicKey,metadata:a.metadata},controller:h});return await this.client.session.set(f,d),await this.setExpiry(f,wn(hu)),{topic:f,acknowledged:()=>new Promise((e=>setTimeout((()=>e(this.client.session.get(f))),500)))}},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,$n("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}=yn();return this.events.once(En("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}=yn();return this.events.once(En("session_extend",r),(({error:e})=>{e?s(e):i()})),await this.setExpiry(t,wn(hu)),{acknowledged:n}},this.request=async e=>{this.isInitialized(),await this.isValidRequest(e);const{chainId:t,request:r,topic:n,expiry:i}=e,s=await this.sendRequest(n,"wc_sessionRequest",{request:r,chainId:t},i),{done:o,resolve:a,reject:c}=yn(i);this.events.once(En("session_request",s),(({error:e,result:t})=>{e?c(e):a(t)})),this.client.events.emit("session_request_sent",{topic:n,request:r,chainId:t,id:s});return async function({id:e,topic:t,wcDeepLink:r}){try{if(!r)return;const n="string"==typeof r?JSON.parse(r):r;let i=n?.href;if("string"!=typeof i)return;i.endsWith("/")&&(i=i.slice(0,-1));const s=`${i}/wc?requestId=${e}&sessionTopic=${t}`,o=hn();o===sn.browser?s.startsWith("https://")?window.open(s,"_blank","noreferrer noopener"):window.open(s,"_self","noreferrer noopener"):o===sn.reactNative&&typeof(null==global?void 0:global.Linking)<"u"&&await global.Linking.openURL(s)}catch(e){console.error(e)}}({id:s,topic:n,wcDeepLink:await this.client.core.storage.getItem("WALLETCONNECT_DEEPLINK_CHOICE")}),await o()},this.respond=async e=>{this.isInitialized(),await this.isValidRespond(e);const{topic:t,response:r}=e,{id:n}=r;Zs(r)?await this.sendResult(n,t,r.result):Qs(r)&&await this.sendError(n,t,r.error),this.deletePendingSessionRequest(e.response.id,{message:"fulfilled",code:0})},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}=yn();this.events.once(En("session_ping",e),(({error:e})=>{e?i(e):n()})),await r()}else this.client.core.pairing.pairings.keys.includes(t)&&await this.client.core.pairing.ping({topic:t})},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;if(this.client.session.keys.includes(t)){const e=Ds().toString();let r;const n=t=>{t?.id.toString()===e&&(this.client.core.relayer.events.removeListener(Ba,n),r())};await Promise.all([new Promise((e=>{r=e,this.client.core.relayer.on(Ba,n)})),this.sendRequest(t,"wc_sessionDelete",$n("USER_DISCONNECTED"),void 0,e)]),await this.deleteSession(t)}else await this.client.core.pairing.disconnect({topic:t})},this.find=e=>(this.isInitialized(),this.client.session.getAll().filter((t=>function(e,t){const{requiredNamespaces:r}=t,n=Object.keys(e.namespaces),i=Object.keys(r);let s=!0;return!!pn(i,n)&&(n.forEach((t=>{const{accounts:n,methods:i,events:o}=e.namespaces[t],a=Ln(n),c=r[t];pn(jr(t,c),a)&&pn(c.methods,i)&&pn(c.events,o)||(s=!1)})),s)}(t,e)))),this.getPendingSessionRequests=()=>(this.isInitialized(),this.client.pendingRequest.getAll()),this.cleanupDuplicatePairings=async e=>{if(e.pairingTopic)try{const t=this.client.core.pairing.pairings.get(e.pairingTopic),r=this.client.core.pairing.pairings.getAll().filter((r=>{var n,i;return(null==(n=r.peerMetadata)?void 0:n.url)&&(null==(i=r.peerMetadata)?void 0:i.url)===e.peer.metadata.url&&r.topic&&r.topic!==t.topic}));if(0===r.length)return;this.client.logger.info(`Cleaning up ${r.length} duplicate pairing(s)`),await Promise.all(r.map((e=>this.client.core.pairing.disconnect({topic:e.topic})))),this.client.logger.info("Duplicate pairings clean up finished")}catch(e){this.client.logger.error(e)}},this.deleteSession=async(e,t)=>{const{self:r}=this.client.session.get(e);await this.client.core.relayer.unsubscribe(e),this.client.session.delete(e,$n("USER_DISCONNECTED")),this.client.core.crypto.keychain.has(r.publicKey)&&await this.client.core.crypto.deleteKeyPair(r.publicKey),this.client.core.crypto.keychain.has(e)&&await this.client.core.crypto.deleteSymKey(e),t||this.client.core.expirer.del(e)},this.deleteProposal=async(e,t)=>{await Promise.all([this.client.proposal.delete(e,$n("USER_DISCONNECTED")),t?Promise.resolve():this.client.core.expirer.del(e)])},this.deletePendingSessionRequest=async(e,t,r=!1)=>{await Promise.all([this.client.pendingRequest.delete(e,t),r?Promise.resolve():this.client.core.expirer.del(e)])},this.setExpiry=async(e,t)=>{this.client.session.keys.includes(e)&&await this.client.session.update(e,{expiry:t}),this.client.core.expirer.set(e,t)},this.setProposal=async(e,t)=>{await this.client.proposal.set(e,t),this.client.core.expirer.set(e,t.expiry)},this.setPendingSessionRequest=async e=>{const t=lu.wc_sessionRequest.req.ttl,{id:r,topic:n,params:i}=e;await this.client.pendingRequest.set(r,{id:r,topic:n,params:i}),t&&this.client.core.expirer.set(r,wn(t))},this.sendRequest=async(e,t,r,n,i)=>{const s=ks(t,r);if(un()&&pu.includes(t)){const e=Br(JSON.stringify(s));await this.client.core.verify.register({attestationId:e})}const o=await this.client.core.crypto.encode(e,s),a=lu[t].req;return n&&(a.ttl=n),i&&(a.id=i),this.client.core.history.set(e,s),this.client.core.relayer.publish(e,o,a),s.id},this.sendResult=async(e,t,r)=>{const n=zs(e,r),i=await this.client.core.crypto.encode(t,n),s=await this.client.core.history.get(t,e),o=lu[s.request.method].res;this.client.core.relayer.publish(t,i,o),await this.client.core.history.resolve(n)},this.sendError=async(e,t,r)=>{const n=$s(e,r),i=await this.client.core.crypto.encode(t,n),s=await this.client.core.history.get(t,e),o=lu[s.request.method].res;this.client.core.relayer.publish(t,i,o),await this.client.core.history.resolve(n)},this.cleanup=async()=>{const e=[],t=[];this.client.session.getAll().forEach((t=>{bn(t.expiry)&&e.push(t.topic)})),this.client.proposal.getAll().forEach((e=>{bn(e.expiry)&&t.push(e.id)})),await Promise.all([...e.map((e=>this.deleteSession(e))),...t.map((e=>this.deleteProposal(e)))])},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_sessionDelete":return this.onSessionDeleteRequest(t,r);case"wc_sessionRequest":return this.onSessionRequest(t,r);case"wc_sessionEvent":return this.onSessionEventRequest(t,r);default:return this.client.logger.info(`Unsupported request method ${n}`)}},this.onRelayEventResponse=async e=>{const{topic:t,payload:r}=e,n=(await this.client.core.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_sessionRequest":return this.onSessionRequestResponse(t,r);default:return this.client.logger.info(`Unsupported response method ${n}`)}},this.onRelayEventUnknownPayload=e=>{const{topic:t}=e,{message:r}=zn("MISSING_OR_INVALID",`Decoded payload on topic ${t} is not identifiable as a JSON-RPC request or a response.`);throw new Error(r)},this.onSessionProposeRequest=async(e,t)=>{const{params:r,id:n}=t;try{this.isValidConnect(bu({},t.params));const i=wn(Mt.FIVE_MINUTES),s=bu({id:n,pairingTopic:e,expiry:i},r);await this.setProposal(n,s);const o=Br(JSON.stringify(t)),a=await this.getVerifyContext(o,s.proposer.metadata);this.client.events.emit("session_proposal",{id:n,params:s,verifyContext:a})}catch(t){await this.sendError(n,e,t),this.client.logger.error(t)}},this.onSessionProposeResponse=async(e,t)=>{const{id:r}=t;if(Zs(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.client.core.pairing.activate({topic:e})}else Qs(t)&&(await this.client.proposal.delete(r,$n("USER_DISCONNECTED")),this.events.emit(En("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,requiredNamespaces:a,optionalNamespaces:c,sessionProperties:u,pairingTopic:h}=t.params,l=bu({topic:e,relay:r,expiry:s,namespaces:o,acknowledged:!0,pairingTopic:h,requiredNamespaces:a,optionalNamespaces:c,controller:i.publicKey,self:{publicKey:"",metadata:this.client.metadata},peer:{publicKey:i.publicKey,metadata:i.metadata}},u&&{sessionProperties:u});await this.sendResult(t.id,e,!0),this.events.emit(En("session_connect"),{session:l}),this.cleanupDuplicatePairings(l)}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onSessionSettleResponse=async(e,t)=>{const{id:r}=t;Zs(t)?(await this.client.session.update(e,{acknowledged:!0}),this.events.emit(En("session_approve",r),{})):Qs(t)&&(await this.client.session.delete(e,$n("USER_DISCONNECTED")),this.events.emit(En("session_approve",r),{error:t.error}))},this.onSessionUpdateRequest=async(e,t)=>{const{params:r,id:n}=t;try{this.isValidUpdate(bu({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;Zs(t)?this.events.emit(En("session_update",r),{}):Qs(t)&&this.events.emit(En("session_update",r),{error:t.error})},this.onSessionExtendRequest=async(e,t)=>{const{id:r}=t;try{this.isValidExtend({topic:e}),await this.setExpiry(e,wn(hu)),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;Zs(t)?this.events.emit(En("session_extend",r),{}):Qs(t)&&this.events.emit(En("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;setTimeout((()=>{Zs(t)?this.events.emit(En("session_ping",r),{}):Qs(t)&&this.events.emit(En("session_ping",r),{error:t.error})}),500)},this.onSessionDeleteRequest=async(e,t)=>{const{id:r}=t;try{this.isValidDisconnect({topic:e,reason:t.params}),await Promise.all([new Promise((t=>{this.client.core.relayer.once(Xa,(async()=>{t(await this.deleteSession(e))}))})),this.sendResult(r,e,!0)]),this.client.events.emit("session_delete",{id:r,topic:e})}catch(e){this.client.logger.error(e)}},this.onSessionRequest=async(e,t)=>{const{id:r,params:n}=t;try{this.isValidRequest(bu({topic:e},n)),await this.setPendingSessionRequest({id:r,topic:e,params:n});const i=Br(JSON.stringify(t)),s=this.client.session.get(e),o=await this.getVerifyContext(i,s.peer.metadata);this.client.events.emit("session_request",{id:r,topic:e,params:n,verifyContext:o})}catch(t){await this.sendError(r,e,t),this.client.logger.error(t)}},this.onSessionRequestResponse=(e,t)=>{const{id:r}=t;Zs(t)?this.events.emit(En("session_request",r),{result:t.result}):Qs(t)&&this.events.emit(En("session_request",r),{error:t.error})},this.onSessionEventRequest=async(e,t)=>{const{id:r,params:n}=t;try{this.isValidEmit(bu({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(!Qn(e)){const{message:t}=zn("MISSING_OR_INVALID",`connect() params: ${JSON.stringify(e)}`);throw new Error(t)}const{pairingTopic:t,requiredNamespaces:r,optionalNamespaces:n,sessionProperties:i,relays:s}=e;if(Kn(t)||await this.isValidPairingTopic(t),!function(e,t){let r=!1;return t&&!e?r=!0:e&&qn(e)&&e.length&&e.forEach((e=>{r=Zn(e)})),r}(s,!0)){const{message:e}=zn("MISSING_OR_INVALID",`connect() relays: ${s}`);throw new Error(e)}!Kn(r)&&0!==Hn(r)&&this.validateNamespaces(r,"requiredNamespaces"),!Kn(n)&&0!==Hn(n)&&this.validateNamespaces(n,"optionalNamespaces"),Kn(i)||this.validateSessionProps(i,"sessionProperties")},this.validateNamespaces=(e,t)=>{const r=function(e,t,r){let n=null;if(e&&Hn(e)){const i=Jn(e,t);i&&(n=i);const s=Wn(e,t,r);s&&(n=s)}else n=zn("MISSING_OR_INVALID",`${t}, ${r} should be an object with data`);return n}(e,"connect()",t);if(r)throw new Error(r.message)},this.isValidApprove=async e=>{if(!Qn(e))throw new Error(zn("MISSING_OR_INVALID",`approve() params: ${e}`).message);const{id:t,namespaces:r,relayProtocol:n,sessionProperties:i}=e;await this.isValidProposalId(t);const s=this.client.proposal.get(t),o=Xn(r,"approve()");if(o)throw new Error(o.message);const a=ni(s.requiredNamespaces,r,"approve()");if(a)throw new Error(a.message);if(!Vn(n,!0)){const{message:e}=zn("MISSING_OR_INVALID",`approve() relayProtocol: ${n}`);throw new Error(e)}Kn(i)||this.validateSessionProps(i,"sessionProperties")},this.isValidReject=async e=>{if(!Qn(e)){const{message:t}=zn("MISSING_OR_INVALID",`reject() params: ${e}`);throw new Error(t)}const{id:t,reason:r}=e;if(await this.isValidProposalId(t),!function(e){return!!(e&&"object"==typeof e&&e.code&&Bn(e.code,!1)&&e.message&&Vn(e.message,!1))}(r)){const{message:e}=zn("MISSING_OR_INVALID",`reject() reason: ${JSON.stringify(r)}`);throw new Error(e)}},this.isValidSessionSettleRequest=e=>{if(!Qn(e)){const{message:t}=zn("MISSING_OR_INVALID",`onSessionSettleRequest() params: ${e}`);throw new Error(t)}const{relay:t,controller:r,namespaces:n,expiry:i}=e;if(!Zn(t)){const{message:e}=zn("MISSING_OR_INVALID","onSessionSettleRequest() relay protocol should be a string");throw new Error(e)}const s=function(e,t){let r=null;return Vn(e?.publicKey,!1)||(r=zn("MISSING_OR_INVALID",`${t} controller public key should be a string`)),r}(r,"onSessionSettleRequest()");if(s)throw new Error(s.message);const o=Xn(n,"onSessionSettleRequest()");if(o)throw new Error(o.message);if(bn(i)){const{message:e}=zn("EXPIRED","onSessionSettleRequest()");throw new Error(e)}},this.isValidUpdate=async e=>{if(!Qn(e)){const{message:t}=zn("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=Xn(r,"update()");if(i)throw new Error(i.message);const s=ni(n.requiredNamespaces,r,"update()");if(s)throw new Error(s.message)},this.isValidExtend=async e=>{if(!Qn(e)){const{message:t}=zn("MISSING_OR_INVALID",`extend() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidSessionTopic(t)},this.isValidRequest=async e=>{if(!Qn(e)){const{message:t}=zn("MISSING_OR_INVALID",`request() params: ${e}`);throw new Error(t)}const{topic:t,request:r,chainId:n,expiry:i}=e;await this.isValidSessionTopic(t);const{namespaces:s}=this.client.session.get(t);if(!ei(s,n)){const{message:e}=zn("MISSING_OR_INVALID",`request() chainId: ${n}`);throw new Error(e)}if(!function(e){return!(Kn(e)||!Vn(e.method,!1))}(r)){const{message:e}=zn("MISSING_OR_INVALID",`request() ${JSON.stringify(r)}`);throw new Error(e)}if(!ti(s,n,r.method)){const{message:e}=zn("MISSING_OR_INVALID",`request() method: ${r.method}`);throw new Error(e)}if(i&&!function(e,t){return Bn(e,!1)&&e<=t.max&&e>=t.min}(i,fu)){const{message:e}=zn("MISSING_OR_INVALID",`request() expiry: ${i}. Expiry must be a number (in seconds) between ${fu.min} and ${fu.max}`);throw new Error(e)}},this.isValidRespond=async e=>{if(!Qn(e)){const{message:t}=zn("MISSING_OR_INVALID",`respond() params: ${e}`);throw new Error(t)}const{topic:t,response:r}=e;if(await this.isValidSessionTopic(t),!function(e){return!(Kn(e)||Kn(e.result)&&Kn(e.error)||!Bn(e.id,!1)||!Vn(e.jsonrpc,!1))}(r)){const{message:e}=zn("MISSING_OR_INVALID",`respond() response: ${JSON.stringify(r)}`);throw new Error(e)}},this.isValidPing=async e=>{if(!Qn(e)){const{message:t}=zn("MISSING_OR_INVALID",`ping() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidSessionOrPairingTopic(t)},this.isValidEmit=async e=>{if(!Qn(e)){const{message:t}=zn("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(!ei(i,n)){const{message:e}=zn("MISSING_OR_INVALID",`emit() chainId: ${n}`);throw new Error(e)}if(!function(e){return!(Kn(e)||!Vn(e.name,!1))}(r)){const{message:e}=zn("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(r)}`);throw new Error(e)}if(!ri(i,n,r.name)){const{message:e}=zn("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(r)}`);throw new Error(e)}},this.isValidDisconnect=async e=>{if(!Qn(e)){const{message:t}=zn("MISSING_OR_INVALID",`disconnect() params: ${e}`);throw new Error(t)}const{topic:t}=e;await this.isValidSessionOrPairingTopic(t)},this.getVerifyContext=async(e,t)=>{const r={verified:{verifyUrl:t.verifyUrl||"",validation:"UNKNOWN",origin:t.url||""}};try{const n=await this.client.core.verify.resolve({attestationId:e,verifyUrl:t.verifyUrl});n&&(r.verified.origin=n,r.verified.validation=n===t.url?"VALID":"INVALID")}catch(e){this.client.logger.error(e)}return this.client.logger.info(`Verify context: ${JSON.stringify(r)}`),r},this.validateSessionProps=(e,t)=>{Object.values(e).forEach((e=>{if(!Vn(e,!1)){const{message:r}=zn("MISSING_OR_INVALID",`${t} must be in Record<string, string> format. Received: ${JSON.stringify(e)}`);throw new Error(r)}}))}}isInitialized(){if(!this.initialized){const{message:e}=zn("NOT_INITIALIZED",this.name);throw new Error(e)}}registerRelayerEvents(){this.client.core.relayer.on(Va,(async e=>{const{topic:t,message:r}=e;if(this.ignoredPayloadTypes.includes(this.client.core.crypto.getPayloadType(r)))return;const n=await this.client.core.crypto.decode(t,r);Js(n)?(this.client.core.history.set(t,n),this.onRelayEventRequest({topic:t,payload:n})):Xs(n)?(await this.client.core.history.resolve(n),await this.onRelayEventResponse({topic:t,payload:n}),this.client.core.history.delete(t,n.id)):this.onRelayEventUnknownPayload({topic:t,payload:n})}))}registerExpirerEvents(){this.client.core.expirer.on(gc,(async e=>{const{topic:t,id:r}=mn(e.target);if(r&&this.client.pendingRequest.keys.includes(r))return await this.deletePendingSessionRequest(r,zn("EXPIRED"),!0);t?this.client.session.keys.includes(t)&&(await this.deleteSession(t,!0),this.client.events.emit("session_expire",{topic:t})):r&&(await this.deleteProposal(r,!0),this.client.events.emit("proposal_expire",{id:r}))}))}isValidPairingTopic(e){if(!Vn(e,!1)){const{message:t}=zn("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw new Error(t)}if(!this.client.core.pairing.pairings.keys.includes(e)){const{message:t}=zn("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw new Error(t)}if(bn(this.client.core.pairing.pairings.get(e).expiry)){const{message:t}=zn("EXPIRED",`pairing topic: ${e}`);throw new Error(t)}}async isValidSessionTopic(e){if(!Vn(e,!1)){const{message:t}=zn("MISSING_OR_INVALID",`session topic should be a string: ${e}`);throw new Error(t)}if(!this.client.session.keys.includes(e)){const{message:t}=zn("NO_MATCHING_KEY",`session topic doesn't exist: ${e}`);throw new Error(t)}if(bn(this.client.session.get(e).expiry)){await this.deleteSession(e);const{message:t}=zn("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.core.pairing.pairings.keys.includes(e)){if(Vn(e,!1)){const{message:t}=zn("NO_MATCHING_KEY",`session or pairing topic doesn't exist: ${e}`);throw new Error(t)}{const{message:t}=zn("MISSING_OR_INVALID",`session or pairing topic should be a string: ${e}`);throw new Error(t)}}this.isValidPairingTopic(e)}}async isValidProposalId(e){if("number"!=typeof e){const{message:t}=zn("MISSING_OR_INVALID",`proposal id should be a number: ${e}`);throw new Error(t)}if(!this.client.proposal.keys.includes(e)){const{message:t}=zn("NO_MATCHING_KEY",`proposal id doesn't exist: ${e}`);throw new Error(t)}if(bn(this.client.proposal.get(e).expiry)){await this.deleteProposal(e);const{message:t}=zn("EXPIRED",`proposal id: ${e}`);throw new Error(t)}}}class Iu extends Fc{constructor(e,t){super(e,t,"proposal",ou),this.core=e,this.logger=t}}class Ou extends Fc{constructor(e,t){super(e,t,"session",ou),this.core=e,this.logger=t}}class Pu extends Fc{constructor(e,t){super(e,t,"request",ou,(e=>e.id)),this.core=e,this.logger=t}}class Nu extends ns{constructor(t){super(t),this.protocol="wc",this.version=2,this.name=au,this.events=new e.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.removeAllListeners=e=>this.events.removeAllListeners(e),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.getPendingSessionRequests=()=>{try{return this.engine.getPendingSessionRequests()}catch(e){throw this.logger.error(e.message),e}},this.name=t?.name||au,this.metadata=t?.metadata||wr()||{name:"",description:"",url:"",icons:[""]};const r=typeof t?.logger<"u"&&"string"!=typeof t?.logger?t.logger:qi.pino(qi.getDefaultLoggerOptions({level:t?.logger||cu}));this.core=t?.core||new iu(t),this.logger=qi.generateChildLogger(r,this.name),this.session=new Ou(this.core,this.logger),this.proposal=new Iu(this.core,this.logger),this.pendingRequest=new Pu(this.core,this.logger),this.engine=new Su(this)}static async init(e){const t=new Nu(e);return await t.initialize(),t}get context(){return qi.getLoggerContext(this.logger)}get pairing(){return this.core.pairing.pairings}async initialize(){this.logger.trace("Initialized");try{await this.core.start(),await this.session.init(),await this.proposal.init(),await this.pendingRequest.init(),await this.engine.init(),this.core.verify.init({verifyUrl:this.metadata.verifyUrl}),this.logger.info("SignClient Initialization Success")}catch(e){throw this.logger.info("SignClient Initialization Failure"),this.logger.error(e.message),e}}}const Au={headers:{Accept:"application/json","Content-Type":"application/json"},method:"POST"};class xu{constructor(t,r=!1){if(this.url=t,this.disableProviderPing=r,this.events=new e.EventEmitter,this.isAvailable=!1,this.registering=!1,!Fs(t))throw new Error(`Provided URL is not compatible with HTTP connection: ${t}`);this.url=t,this.disableProviderPing=r}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=as(e),n=await r.m(this.url,Object.assign(Object.assign({},Au),{body:t})),i=await n.json();this.onPayload({data:i})}catch(t){this.onError(e.id,t)}}async register(e=this.url){if(!Fs(e))throw new Error(`Provided URL is not compatible with HTTP connection: ${e}`);if(this.registering){const e=this.events.getMaxListeners();return(this.events.listenerCount("register_error")>=e||this.events.listenerCount("open")>=e)&&this.events.setMaxListeners(e+1),new Promise(((e,t)=>{this.events.once("register_error",(e=>{this.resetMaxListeners(),t(e)})),this.events.once("open",(()=>{if(this.resetMaxListeners(),void 0===this.isAvailable)return t(new Error("HTTP connection is missing or invalid"));e()}))}))}this.url=e,this.registering=!0;try{if(!this.disableProviderPing){const t=as({id:1,jsonrpc:"2.0",method:"test",params:[]});await r.m(e,Object.assign(Object.assign({},Au),{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?os(e.data):e.data;this.events.emit("payload",t)}onError(e,t){const r=this.parseError(t),n=$s(e,r.message||r.toString());this.events.emit("payload",n)}parseError(e,t=this.url){return Cs(e,t,"HTTP")}resetMaxListeners(){this.events.getMaxListeners()>10&&this.events.setMaxListeners(10)}}const Cu="error",Tu="wc@2:universal_provider:",Ru="default_chain_changed";var ju=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Lu={exports:{}};
2
+ /**
3
+ * @license
4
+ * Lodash <https://lodash.com/>
5
+ * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
6
+ * Released under MIT license <https://lodash.com/license>
7
+ * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
8
+ * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
9
+ */!function(e,t){(function(){var r,n="Expected a function",i="__lodash_hash_undefined__",s="__lodash_placeholder__",o=16,a=32,c=64,u=128,h=256,l=1/0,f=9007199254740991,p=NaN,d=4294967295,g=[["ary",u],["bind",1],["bindKey",2],["curry",8],["curryRight",o],["flip",512],["partial",a],["partialRight",c],["rearg",h]],y="[object Arguments]",v="[object Array]",_="[object Boolean]",m="[object Date]",w="[object Error]",b="[object Function]",E="[object GeneratorFunction]",S="[object Map]",I="[object Number]",O="[object Object]",P="[object Promise]",N="[object RegExp]",A="[object Set]",x="[object String]",C="[object Symbol]",T="[object WeakMap]",R="[object ArrayBuffer]",j="[object DataView]",L="[object Float32Array]",U="[object Float64Array]",M="[object Int8Array]",D="[object Int16Array]",k="[object Int32Array]",z="[object Uint8Array]",$="[object Uint8ClampedArray]",q="[object Uint16Array]",H="[object Uint32Array]",K=/\b__p \+= '';/g,V=/\b(__p \+=) '' \+/g,B=/(__e\(.*?\)|\b__t\)) \+\n'';/g,F=/&(?:amp|lt|gt|quot|#39);/g,G=/[&<>"']/g,W=RegExp(F.source),Y=RegExp(G.source),J=/<%-([\s\S]+?)%>/g,X=/<%([\s\S]+?)%>/g,Z=/<%=([\s\S]+?)%>/g,Q=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ee=/^\w*$/,te=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,re=/[\\^$.*+?()[\]{}|]/g,ne=RegExp(re.source),ie=/^\s+/,se=/\s/,oe=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,ae=/\{\n\/\* \[wrapped with (.+)\] \*/,ce=/,? & /,ue=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,he=/[()=,{}\[\]\/\s]/,le=/\\(\\)?/g,fe=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,pe=/\w*$/,de=/^[-+]0x[0-9a-f]+$/i,ge=/^0b[01]+$/i,ye=/^\[object .+?Constructor\]$/,ve=/^0o[0-7]+$/i,_e=/^(?:0|[1-9]\d*)$/,me=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,we=/($^)/,be=/['\n\r\u2028\u2029\\]/g,Ee="\\ud800-\\udfff",Se="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",Ie="\\u2700-\\u27bf",Oe="a-z\\xdf-\\xf6\\xf8-\\xff",Pe="A-Z\\xc0-\\xd6\\xd8-\\xde",Ne="\\ufe0e\\ufe0f",Ae="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",xe="['’]",Ce="["+Ee+"]",Te="["+Ae+"]",Re="["+Se+"]",je="\\d+",Le="["+Ie+"]",Ue="["+Oe+"]",Me="[^"+Ee+Ae+je+Ie+Oe+Pe+"]",De="\\ud83c[\\udffb-\\udfff]",ke="[^"+Ee+"]",ze="(?:\\ud83c[\\udde6-\\uddff]){2}",$e="[\\ud800-\\udbff][\\udc00-\\udfff]",qe="["+Pe+"]",He="\\u200d",Ke="(?:"+Ue+"|"+Me+")",Ve="(?:"+qe+"|"+Me+")",Be="(?:['’](?:d|ll|m|re|s|t|ve))?",Fe="(?:['’](?:D|LL|M|RE|S|T|VE))?",Ge="(?:"+Re+"|"+De+")"+"?",We="["+Ne+"]?",Ye=We+Ge+("(?:"+He+"(?:"+[ke,ze,$e].join("|")+")"+We+Ge+")*"),Je="(?:"+[Le,ze,$e].join("|")+")"+Ye,Xe="(?:"+[ke+Re+"?",Re,ze,$e,Ce].join("|")+")",Ze=RegExp(xe,"g"),Qe=RegExp(Re,"g"),et=RegExp(De+"(?="+De+")|"+Xe+Ye,"g"),tt=RegExp([qe+"?"+Ue+"+"+Be+"(?="+[Te,qe,"$"].join("|")+")",Ve+"+"+Fe+"(?="+[Te,qe+Ke,"$"].join("|")+")",qe+"?"+Ke+"+"+Be,qe+"+"+Fe,"\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",je,Je].join("|"),"g"),rt=RegExp("["+He+Ee+Se+Ne+"]"),nt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,it=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],st=-1,ot={};ot[L]=ot[U]=ot[M]=ot[D]=ot[k]=ot[z]=ot[$]=ot[q]=ot[H]=!0,ot[y]=ot[v]=ot[R]=ot[_]=ot[j]=ot[m]=ot[w]=ot[b]=ot[S]=ot[I]=ot[O]=ot[N]=ot[A]=ot[x]=ot[T]=!1;var at={};at[y]=at[v]=at[R]=at[j]=at[_]=at[m]=at[L]=at[U]=at[M]=at[D]=at[k]=at[S]=at[I]=at[O]=at[N]=at[A]=at[x]=at[C]=at[z]=at[$]=at[q]=at[H]=!0,at[w]=at[b]=at[T]=!1;var ct={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},ut=parseFloat,ht=parseInt,lt="object"==typeof ju&&ju&&ju.Object===Object&&ju,ft="object"==typeof self&&self&&self.Object===Object&&self,pt=lt||ft||Function("return this")(),dt=t&&!t.nodeType&&t,gt=dt&&e&&!e.nodeType&&e,yt=gt&&gt.exports===dt,vt=yt&&lt.process,_t=function(){try{return gt&&gt.require&&gt.require("util").types||vt&&vt.binding&&vt.binding("util")}catch{}}(),mt=_t&&_t.isArrayBuffer,wt=_t&&_t.isDate,bt=_t&&_t.isMap,Et=_t&&_t.isRegExp,St=_t&&_t.isSet,It=_t&&_t.isTypedArray;function Ot(e,t,r){switch(r.length){case 0:return e.call(t);case 1:return e.call(t,r[0]);case 2:return e.call(t,r[0],r[1]);case 3:return e.call(t,r[0],r[1],r[2])}return e.apply(t,r)}function Pt(e,t,r,n){for(var i=-1,s=null==e?0:e.length;++i<s;){var o=e[i];t(n,o,r(o),e)}return n}function Nt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n&&!1!==t(e[r],r,e););return e}function At(e,t){for(var r=null==e?0:e.length;r--&&!1!==t(e[r],r,e););return e}function xt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(!t(e[r],r,e))return!1;return!0}function Ct(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}function Tt(e,t){return!!(null==e?0:e.length)&&qt(e,t,0)>-1}function Rt(e,t,r){for(var n=-1,i=null==e?0:e.length;++n<i;)if(r(t,e[n]))return!0;return!1}function jt(e,t){for(var r=-1,n=null==e?0:e.length,i=Array(n);++r<n;)i[r]=t(e[r],r,e);return i}function Lt(e,t){for(var r=-1,n=t.length,i=e.length;++r<n;)e[i+r]=t[r];return e}function Ut(e,t,r,n){var i=-1,s=null==e?0:e.length;for(n&&s&&(r=e[++i]);++i<s;)r=t(r,e[i],i,e);return r}function Mt(e,t,r,n){var i=null==e?0:e.length;for(n&&i&&(r=e[--i]);i--;)r=t(r,e[i],i,e);return r}function Dt(e,t){for(var r=-1,n=null==e?0:e.length;++r<n;)if(t(e[r],r,e))return!0;return!1}var kt=Bt("length");function zt(e,t,r){var n;return r(e,(function(e,r,i){if(t(e,r,i))return n=r,!1})),n}function $t(e,t,r,n){for(var i=e.length,s=r+(n?1:-1);n?s--:++s<i;)if(t(e[s],s,e))return s;return-1}function qt(e,t,r){return t==t?function(e,t,r){for(var n=r-1,i=e.length;++n<i;)if(e[n]===t)return n;return-1}(e,t,r):$t(e,Kt,r)}function Ht(e,t,r,n){for(var i=r-1,s=e.length;++i<s;)if(n(e[i],t))return i;return-1}function Kt(e){return e!=e}function Vt(e,t){var r=null==e?0:e.length;return r?Wt(e,t)/r:p}function Bt(e){return function(t){return null==t?r:t[e]}}function Ft(e){return function(t){return null==e?r:e[t]}}function Gt(e,t,r,n,i){return i(e,(function(e,i,s){r=n?(n=!1,e):t(r,e,i,s)})),r}function Wt(e,t){for(var n,i=-1,s=e.length;++i<s;){var o=t(e[i]);o!==r&&(n=n===r?o:n+o)}return n}function Yt(e,t){for(var r=-1,n=Array(e);++r<e;)n[r]=t(r);return n}function Jt(e){return e&&e.slice(0,fr(e)+1).replace(ie,"")}function Xt(e){return function(t){return e(t)}}function Zt(e,t){return jt(t,(function(t){return e[t]}))}function Qt(e,t){return e.has(t)}function er(e,t){for(var r=-1,n=e.length;++r<n&&qt(t,e[r],0)>-1;);return r}function tr(e,t){for(var r=e.length;r--&&qt(t,e[r],0)>-1;);return r}var rr=Ft({"À":"A","Á":"A","Â":"A","Ã":"A","Ä":"A","Å":"A","à":"a","á":"a","â":"a","ã":"a","ä":"a","å":"a","Ç":"C","ç":"c","Ð":"D","ð":"d","È":"E","É":"E","Ê":"E","Ë":"E","è":"e","é":"e","ê":"e","ë":"e","Ì":"I","Í":"I","Î":"I","Ï":"I","ì":"i","í":"i","î":"i","ï":"i","Ñ":"N","ñ":"n","Ò":"O","Ó":"O","Ô":"O","Õ":"O","Ö":"O","Ø":"O","ò":"o","ó":"o","ô":"o","õ":"o","ö":"o","ø":"o","Ù":"U","Ú":"U","Û":"U","Ü":"U","ù":"u","ú":"u","û":"u","ü":"u","Ý":"Y","ý":"y","ÿ":"y","Æ":"Ae","æ":"ae","Þ":"Th","þ":"th","ß":"ss","Ā":"A","Ă":"A","Ą":"A","ā":"a","ă":"a","ą":"a","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","ć":"c","ĉ":"c","ċ":"c","č":"c","Ď":"D","Đ":"D","ď":"d","đ":"d","Ē":"E","Ĕ":"E","Ė":"E","Ę":"E","Ě":"E","ē":"e","ĕ":"e","ė":"e","ę":"e","ě":"e","Ĝ":"G","Ğ":"G","Ġ":"G","Ģ":"G","ĝ":"g","ğ":"g","ġ":"g","ģ":"g","Ĥ":"H","Ħ":"H","ĥ":"h","ħ":"h","Ĩ":"I","Ī":"I","Ĭ":"I","Į":"I","İ":"I","ĩ":"i","ī":"i","ĭ":"i","į":"i","ı":"i","Ĵ":"J","ĵ":"j","Ķ":"K","ķ":"k","ĸ":"k","Ĺ":"L","Ļ":"L","Ľ":"L","Ŀ":"L","Ł":"L","ĺ":"l","ļ":"l","ľ":"l","ŀ":"l","ł":"l","Ń":"N","Ņ":"N","Ň":"N","Ŋ":"N","ń":"n","ņ":"n","ň":"n","ŋ":"n","Ō":"O","Ŏ":"O","Ő":"O","ō":"o","ŏ":"o","ő":"o","Ŕ":"R","Ŗ":"R","Ř":"R","ŕ":"r","ŗ":"r","ř":"r","Ś":"S","Ŝ":"S","Ş":"S","Š":"S","ś":"s","ŝ":"s","ş":"s","š":"s","Ţ":"T","Ť":"T","Ŧ":"T","ţ":"t","ť":"t","ŧ":"t","Ũ":"U","Ū":"U","Ŭ":"U","Ů":"U","Ű":"U","Ų":"U","ũ":"u","ū":"u","ŭ":"u","ů":"u","ű":"u","ų":"u","Ŵ":"W","ŵ":"w","Ŷ":"Y","ŷ":"y","Ÿ":"Y","Ź":"Z","Ż":"Z","Ž":"Z","ź":"z","ż":"z","ž":"z","IJ":"IJ","ij":"ij","Œ":"Oe","œ":"oe","ʼn":"'n","ſ":"s"}),nr=Ft({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"});function ir(e){return"\\"+ct[e]}function sr(e){return rt.test(e)}function or(e){var t=-1,r=Array(e.size);return e.forEach((function(e,n){r[++t]=[n,e]})),r}function ar(e,t){return function(r){return e(t(r))}}function cr(e,t){for(var r=-1,n=e.length,i=0,o=[];++r<n;){var a=e[r];(a===t||a===s)&&(e[r]=s,o[i++]=r)}return o}function ur(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=e})),r}function hr(e){return sr(e)?function(e){for(var t=et.lastIndex=0;et.test(e);)++t;return t}(e):kt(e)}function lr(e){return sr(e)?function(e){return e.match(et)||[]}(e):function(e){return e.split("")}(e)}function fr(e){for(var t=e.length;t--&&se.test(e.charAt(t)););return t}var pr=Ft({"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"});var dr=function e(t){var se=(t=null==t?pt:dr.defaults(pt.Object(),t,dr.pick(pt,it))).Array,Ee=t.Date,Se=t.Error,Ie=t.Function,Oe=t.Math,Pe=t.Object,Ne=t.RegExp,Ae=t.String,xe=t.TypeError,Ce=se.prototype,Te=Ie.prototype,Re=Pe.prototype,je=t["__core-js_shared__"],Le=Te.toString,Ue=Re.hasOwnProperty,Me=0,De=function(){var e=/[^.]+$/.exec(je&&je.keys&&je.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}(),ke=Re.toString,ze=Le.call(Pe),$e=pt._,qe=Ne("^"+Le.call(Ue).replace(re,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),He=yt?t.Buffer:r,Ke=t.Symbol,Ve=t.Uint8Array,Be=He?He.allocUnsafe:r,Fe=ar(Pe.getPrototypeOf,Pe),Ge=Pe.create,We=Re.propertyIsEnumerable,Ye=Ce.splice,Je=Ke?Ke.isConcatSpreadable:r,Xe=Ke?Ke.iterator:r,et=Ke?Ke.toStringTag:r,rt=function(){try{var e=hs(Pe,"defineProperty");return e({},"",{}),e}catch{}}(),ct=t.clearTimeout!==pt.clearTimeout&&t.clearTimeout,lt=Ee&&Ee.now!==pt.Date.now&&Ee.now,ft=t.setTimeout!==pt.setTimeout&&t.setTimeout,dt=Oe.ceil,gt=Oe.floor,vt=Pe.getOwnPropertySymbols,_t=He?He.isBuffer:r,kt=t.isFinite,Ft=Ce.join,gr=ar(Pe.keys,Pe),yr=Oe.max,vr=Oe.min,_r=Ee.now,mr=t.parseInt,wr=Oe.random,br=Ce.reverse,Er=hs(t,"DataView"),Sr=hs(t,"Map"),Ir=hs(t,"Promise"),Or=hs(t,"Set"),Pr=hs(t,"WeakMap"),Nr=hs(Pe,"create"),Ar=Pr&&new Pr,xr={},Cr=Ms(Er),Tr=Ms(Sr),Rr=Ms(Ir),jr=Ms(Or),Lr=Ms(Pr),Ur=Ke?Ke.prototype:r,Mr=Ur?Ur.valueOf:r,Dr=Ur?Ur.toString:r;function kr(e){if(ea(e)&&!Ko(e)&&!(e instanceof Hr)){if(e instanceof qr)return e;if(Ue.call(e,"__wrapped__"))return Ds(e)}return new qr(e)}var zr=function(){function e(){}return function(t){if(!Qo(t))return{};if(Ge)return Ge(t);e.prototype=t;var n=new e;return e.prototype=r,n}}();function $r(){}function qr(e,t){this.__wrapped__=e,this.__actions__=[],this.__chain__=!!t,this.__index__=0,this.__values__=r}function Hr(e){this.__wrapped__=e,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=d,this.__views__=[]}function Kr(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 Vr(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 Br(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 Fr(e){var t=-1,r=null==e?0:e.length;for(this.__data__=new Br;++t<r;)this.add(e[t])}function Gr(e){var t=this.__data__=new Vr(e);this.size=t.size}function Wr(e,t){var r=Ko(e),n=!r&&Ho(e),i=!r&&!n&&Go(e),s=!r&&!n&&!i&&ca(e),o=r||n||i||s,a=o?Yt(e.length,Ae):[],c=a.length;for(var u in e)(t||Ue.call(e,u))&&(!o||!("length"==u||i&&("offset"==u||"parent"==u)||s&&("buffer"==u||"byteLength"==u||"byteOffset"==u)||vs(u,c)))&&a.push(u);return a}function Yr(e){var t=e.length;return t?e[Gn(0,t-1)]:r}function Jr(e,t){return js(Ai(e),on(t,0,e.length))}function Xr(e){return js(Ai(e))}function Zr(e,t,n){(n!==r&&!zo(e[t],n)||n===r&&!(t in e))&&nn(e,t,n)}function Qr(e,t,n){var i=e[t];(!Ue.call(e,t)||!zo(i,n)||n===r&&!(t in e))&&nn(e,t,n)}function en(e,t){for(var r=e.length;r--;)if(zo(e[r][0],t))return r;return-1}function tn(e,t,r,n){return ln(e,(function(e,i,s){t(n,e,r(e),s)})),n}function rn(e,t){return e&&xi(t,Ca(t),e)}function nn(e,t,r){"__proto__"==t&&rt?rt(e,t,{configurable:!0,enumerable:!0,value:r,writable:!0}):e[t]=r}function sn(e,t){for(var n=-1,i=t.length,s=se(i),o=null==e;++n<i;)s[n]=o?r:Oa(e,t[n]);return s}function on(e,t,n){return e==e&&(n!==r&&(e=e<=n?e:n),t!==r&&(e=e>=t?e:t)),e}function an(e,t,n,i,s,o){var a,c=1&t,u=2&t,h=4&t;if(n&&(a=s?n(e,i,s,o):n(e)),a!==r)return a;if(!Qo(e))return e;var l=Ko(e);if(l){if(a=function(e){var t=e.length,r=new e.constructor(t);return t&&"string"==typeof e[0]&&Ue.call(e,"index")&&(r.index=e.index,r.input=e.input),r}(e),!c)return Ai(e,a)}else{var f=ps(e),p=f==b||f==E;if(Go(e))return Ei(e,c);if(f==O||f==y||p&&!s){if(a=u||p?{}:gs(e),!c)return u?function(e,t){return xi(e,fs(e),t)}(e,function(e,t){return e&&xi(t,Ta(t),e)}(a,e)):function(e,t){return xi(e,ls(e),t)}(e,rn(a,e))}else{if(!at[f])return s?e:{};a=function(e,t,r){var n=e.constructor;switch(t){case R:return Si(e);case _:case m:return new n(+e);case j:return function(e,t){var r=t?Si(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.byteLength)}(e,r);case L:case U:case M:case D:case k:case z:case $:case q:case H:return Ii(e,r);case S:return new n;case I:case x:return new n(e);case N:return function(e){var t=new e.constructor(e.source,pe.exec(e));return t.lastIndex=e.lastIndex,t}(e);case A:return new n;case C:return function(e){return Mr?Pe(Mr.call(e)):{}}(e)}}(e,f,c)}}o||(o=new Gr);var d=o.get(e);if(d)return d;o.set(e,a),sa(e)?e.forEach((function(r){a.add(an(r,t,n,r,e,o))})):ta(e)&&e.forEach((function(r,i){a.set(i,an(r,t,n,i,e,o))}));var g=l?r:(h?u?ns:rs:u?Ta:Ca)(e);return Nt(g||e,(function(r,i){g&&(r=e[i=r]),Qr(a,i,an(r,t,n,i,e,o))})),a}function cn(e,t,n){var i=n.length;if(null==e)return!i;for(e=Pe(e);i--;){var s=n[i],o=t[s],a=e[s];if(a===r&&!(s in e)||!o(a))return!1}return!0}function un(e,t,i){if("function"!=typeof e)throw new xe(n);return xs((function(){e.apply(r,i)}),t)}function hn(e,t,r,n){var i=-1,s=Tt,o=!0,a=e.length,c=[],u=t.length;if(!a)return c;r&&(t=jt(t,Xt(r))),n?(s=Rt,o=!1):t.length>=200&&(s=Qt,o=!1,t=new Fr(t));e:for(;++i<a;){var h=e[i],l=null==r?h:r(h);if(h=n||0!==h?h:0,o&&l==l){for(var f=u;f--;)if(t[f]===l)continue e;c.push(h)}else s(t,l,n)||c.push(h)}return c}kr.templateSettings={escape:J,evaluate:X,interpolate:Z,variable:"",imports:{_:kr}},kr.prototype=$r.prototype,kr.prototype.constructor=kr,qr.prototype=zr($r.prototype),qr.prototype.constructor=qr,Hr.prototype=zr($r.prototype),Hr.prototype.constructor=Hr,Kr.prototype.clear=function(){this.__data__=Nr?Nr(null):{},this.size=0},Kr.prototype.delete=function(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t},Kr.prototype.get=function(e){var t=this.__data__;if(Nr){var n=t[e];return n===i?r:n}return Ue.call(t,e)?t[e]:r},Kr.prototype.has=function(e){var t=this.__data__;return Nr?t[e]!==r:Ue.call(t,e)},Kr.prototype.set=function(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Nr&&t===r?i:t,this},Vr.prototype.clear=function(){this.__data__=[],this.size=0},Vr.prototype.delete=function(e){var t=this.__data__,r=en(t,e);return!(r<0)&&(r==t.length-1?t.pop():Ye.call(t,r,1),--this.size,!0)},Vr.prototype.get=function(e){var t=this.__data__,n=en(t,e);return n<0?r:t[n][1]},Vr.prototype.has=function(e){return en(this.__data__,e)>-1},Vr.prototype.set=function(e,t){var r=this.__data__,n=en(r,e);return n<0?(++this.size,r.push([e,t])):r[n][1]=t,this},Br.prototype.clear=function(){this.size=0,this.__data__={hash:new Kr,map:new(Sr||Vr),string:new Kr}},Br.prototype.delete=function(e){var t=cs(this,e).delete(e);return this.size-=t?1:0,t},Br.prototype.get=function(e){return cs(this,e).get(e)},Br.prototype.has=function(e){return cs(this,e).has(e)},Br.prototype.set=function(e,t){var r=cs(this,e),n=r.size;return r.set(e,t),this.size+=r.size==n?0:1,this},Fr.prototype.add=Fr.prototype.push=function(e){return this.__data__.set(e,i),this},Fr.prototype.has=function(e){return this.__data__.has(e)},Gr.prototype.clear=function(){this.__data__=new Vr,this.size=0},Gr.prototype.delete=function(e){var t=this.__data__,r=t.delete(e);return this.size=t.size,r},Gr.prototype.get=function(e){return this.__data__.get(e)},Gr.prototype.has=function(e){return this.__data__.has(e)},Gr.prototype.set=function(e,t){var r=this.__data__;if(r instanceof Vr){var n=r.__data__;if(!Sr||n.length<199)return n.push([e,t]),this.size=++r.size,this;r=this.__data__=new Br(n)}return r.set(e,t),this.size=r.size,this};var ln=Ri(mn),fn=Ri(wn,!0);function pn(e,t){var r=!0;return ln(e,(function(e,n,i){return r=!!t(e,n,i)})),r}function dn(e,t,n){for(var i=-1,s=e.length;++i<s;){var o=e[i],a=t(o);if(null!=a&&(c===r?a==a&&!aa(a):n(a,c)))var c=a,u=o}return u}function gn(e,t){var r=[];return ln(e,(function(e,n,i){t(e,n,i)&&r.push(e)})),r}function yn(e,t,r,n,i){var s=-1,o=e.length;for(r||(r=ys),i||(i=[]);++s<o;){var a=e[s];t>0&&r(a)?t>1?yn(a,t-1,r,n,i):Lt(i,a):n||(i[i.length]=a)}return i}var vn=ji(),_n=ji(!0);function mn(e,t){return e&&vn(e,t,Ca)}function wn(e,t){return e&&_n(e,t,Ca)}function bn(e,t){return Ct(t,(function(t){return Jo(e[t])}))}function En(e,t){for(var n=0,i=(t=_i(t,e)).length;null!=e&&n<i;)e=e[Us(t[n++])];return n&&n==i?e:r}function Sn(e,t,r){var n=t(e);return Ko(e)?n:Lt(n,r(e))}function In(e){return null==e?e===r?"[object Undefined]":"[object Null]":et&&et in Pe(e)?function(e){var t=Ue.call(e,et),n=e[et];try{e[et]=r;var i=!0}catch{}var s=ke.call(e);return i&&(t?e[et]=n:delete e[et]),s}(e):function(e){return ke.call(e)}(e)}function On(e,t){return e>t}function Pn(e,t){return null!=e&&Ue.call(e,t)}function Nn(e,t){return null!=e&&t in Pe(e)}function An(e,t,n){for(var i=n?Rt:Tt,s=e[0].length,o=e.length,a=o,c=se(o),u=1/0,h=[];a--;){var l=e[a];a&&t&&(l=jt(l,Xt(t))),u=vr(l.length,u),c[a]=!n&&(t||s>=120&&l.length>=120)?new Fr(a&&l):r}l=e[0];var f=-1,p=c[0];e:for(;++f<s&&h.length<u;){var d=l[f],g=t?t(d):d;if(d=n||0!==d?d:0,!(p?Qt(p,g):i(h,g,n))){for(a=o;--a;){var y=c[a];if(!(y?Qt(y,g):i(e[a],g,n)))continue e}p&&p.push(g),h.push(d)}}return h}function xn(e,t,n){var i=null==(e=Ps(e,t=_i(t,e)))?e:e[Us(Ws(t))];return null==i?r:Ot(i,e,n)}function Cn(e){return ea(e)&&In(e)==y}function Tn(e,t,n,i,s){return e===t||(null==e||null==t||!ea(e)&&!ea(t)?e!=e&&t!=t:function(e,t,n,i,s,o){var a=Ko(e),c=Ko(t),u=a?v:ps(e),h=c?v:ps(t);h=h==y?O:h;var l=(u=u==y?O:u)==O,f=h==O,p=u==h;if(p&&Go(e)){if(!Go(t))return!1;a=!0,l=!1}if(p&&!l)return o||(o=new Gr),a||ca(e)?es(e,t,n,i,s,o):function(e,t,r,n,i,s,o){switch(r){case j:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case R:return!(e.byteLength!=t.byteLength||!s(new Ve(e),new Ve(t)));case _:case m:case I:return zo(+e,+t);case w:return e.name==t.name&&e.message==t.message;case N:case x:return e==t+"";case S:var a=or;case A:var c=1&n;if(a||(a=ur),e.size!=t.size&&!c)return!1;var u=o.get(e);if(u)return u==t;n|=2,o.set(e,t);var h=es(a(e),a(t),n,i,s,o);return o.delete(e),h;case C:if(Mr)return Mr.call(e)==Mr.call(t)}return!1}(e,t,u,n,i,s,o);if(!(1&n)){var d=l&&Ue.call(e,"__wrapped__"),g=f&&Ue.call(t,"__wrapped__");if(d||g){var b=d?e.value():e,E=g?t.value():t;return o||(o=new Gr),s(b,E,n,i,o)}}return!!p&&(o||(o=new Gr),function(e,t,n,i,s,o){var a=1&n,c=rs(e),u=c.length,h=rs(t),l=h.length;if(u!=l&&!a)return!1;for(var f=u;f--;){var p=c[f];if(!(a?p in t:Ue.call(t,p)))return!1}var d=o.get(e),g=o.get(t);if(d&&g)return d==t&&g==e;var y=!0;o.set(e,t),o.set(t,e);for(var v=a;++f<u;){var _=e[p=c[f]],m=t[p];if(i)var w=a?i(m,_,p,t,e,o):i(_,m,p,e,t,o);if(!(w===r?_===m||s(_,m,n,i,o):w)){y=!1;break}v||(v="constructor"==p)}if(y&&!v){var b=e.constructor,E=t.constructor;b!=E&&"constructor"in e&&"constructor"in t&&!("function"==typeof b&&b instanceof b&&"function"==typeof E&&E instanceof E)&&(y=!1)}return o.delete(e),o.delete(t),y}(e,t,n,i,s,o))}(e,t,n,i,Tn,s))}function Rn(e,t,n,i){var s=n.length,o=s,a=!i;if(null==e)return!o;for(e=Pe(e);s--;){var c=n[s];if(a&&c[2]?c[1]!==e[c[0]]:!(c[0]in e))return!1}for(;++s<o;){var u=(c=n[s])[0],h=e[u],l=c[1];if(a&&c[2]){if(h===r&&!(u in e))return!1}else{var f=new Gr;if(i)var p=i(h,l,u,e,t,f);if(!(p===r?Tn(l,h,3,i,f):p))return!1}}return!0}function jn(e){return!(!Qo(e)||function(e){return!!De&&De in e}(e))&&(Jo(e)?qe:ye).test(Ms(e))}function Ln(e){return"function"==typeof e?e:null==e?rc:"object"==typeof e?Ko(e)?$n(e[0],e[1]):zn(e):lc(e)}function Un(e){if(!Es(e))return gr(e);var t=[];for(var r in Pe(e))Ue.call(e,r)&&"constructor"!=r&&t.push(r);return t}function Mn(e){if(!Qo(e))return function(e){var t=[];if(null!=e)for(var r in Pe(e))t.push(r);return t}(e);var t=Es(e),r=[];for(var n in e)"constructor"==n&&(t||!Ue.call(e,n))||r.push(n);return r}function Dn(e,t){return e<t}function kn(e,t){var r=-1,n=Bo(e)?se(e.length):[];return ln(e,(function(e,i,s){n[++r]=t(e,i,s)})),n}function zn(e){var t=us(e);return 1==t.length&&t[0][2]?Is(t[0][0],t[0][1]):function(r){return r===e||Rn(r,e,t)}}function $n(e,t){return ms(e)&&Ss(t)?Is(Us(e),t):function(n){var i=Oa(n,e);return i===r&&i===t?Pa(n,e):Tn(t,i,3)}}function qn(e,t,n,i,s){e!==t&&vn(t,(function(o,a){if(s||(s=new Gr),Qo(o))!function(e,t,n,i,s,o,a){var c=Ns(e,n),u=Ns(t,n),h=a.get(u);if(h)return void Zr(e,n,h);var l=o?o(c,u,n+"",e,t,a):r,f=l===r;if(f){var p=Ko(u),d=!p&&Go(u),g=!p&&!d&&ca(u);l=u,p||d||g?Ko(c)?l=c:Fo(c)?l=Ai(c):d?(f=!1,l=Ei(u,!0)):g?(f=!1,l=Ii(u,!0)):l=[]:na(u)||Ho(u)?(l=c,Ho(c)?l=ya(c):(!Qo(c)||Jo(c))&&(l=gs(u))):f=!1}f&&(a.set(u,l),s(l,u,i,o,a),a.delete(u)),Zr(e,n,l)}(e,t,a,n,qn,i,s);else{var c=i?i(Ns(e,a),o,a+"",e,t,s):r;c===r&&(c=o),Zr(e,a,c)}}),Ta)}function Hn(e,t){var n=e.length;if(n)return vs(t+=t<0?n:0,n)?e[t]:r}function Kn(e,t,r){t=t.length?jt(t,(function(e){return Ko(e)?function(t){return En(t,1===e.length?e[0]:e)}:e})):[rc];var n=-1;t=jt(t,Xt(as()));var i=kn(e,(function(e,r,i){var s=jt(t,(function(t){return t(e)}));return{criteria:s,index:++n,value:e}}));return function(e,t){var r=e.length;for(e.sort(t);r--;)e[r]=e[r].value;return e}(i,(function(e,t){return function(e,t,r){for(var n=-1,i=e.criteria,s=t.criteria,o=i.length,a=r.length;++n<o;){var c=Oi(i[n],s[n]);if(c)return n>=a?c:c*("desc"==r[n]?-1:1)}return e.index-t.index}(e,t,r)}))}function Vn(e,t,r){for(var n=-1,i=t.length,s={};++n<i;){var o=t[n],a=En(e,o);r(a,o)&&Zn(s,_i(o,e),a)}return s}function Bn(e,t,r,n){var i=n?Ht:qt,s=-1,o=t.length,a=e;for(e===t&&(t=Ai(t)),r&&(a=jt(e,Xt(r)));++s<o;)for(var c=0,u=t[s],h=r?r(u):u;(c=i(a,h,c,n))>-1;)a!==e&&Ye.call(a,c,1),Ye.call(e,c,1);return e}function Fn(e,t){for(var r=e?t.length:0,n=r-1;r--;){var i=t[r];if(r==n||i!==s){var s=i;vs(i)?Ye.call(e,i,1):hi(e,i)}}return e}function Gn(e,t){return e+gt(wr()*(t-e+1))}function Wn(e,t){var r="";if(!e||t<1||t>f)return r;do{t%2&&(r+=e),(t=gt(t/2))&&(e+=e)}while(t);return r}function Yn(e,t){return Cs(Os(e,t,rc),e+"")}function Jn(e){return Yr(za(e))}function Xn(e,t){var r=za(e);return js(r,on(t,0,r.length))}function Zn(e,t,n,i){if(!Qo(e))return e;for(var s=-1,o=(t=_i(t,e)).length,a=o-1,c=e;null!=c&&++s<o;){var u=Us(t[s]),h=n;if("__proto__"===u||"constructor"===u||"prototype"===u)return e;if(s!=a){var l=c[u];(h=i?i(l,u,c):r)===r&&(h=Qo(l)?l:vs(t[s+1])?[]:{})}Qr(c,u,h),c=c[u]}return e}var Qn=Ar?function(e,t){return Ar.set(e,t),e}:rc,ei=rt?function(e,t){return rt(e,"toString",{configurable:!0,enumerable:!1,value:Qa(t),writable:!0})}:rc;function ti(e){return js(za(e))}function ri(e,t,r){var n=-1,i=e.length;t<0&&(t=-t>i?0:i+t),(r=r>i?i:r)<0&&(r+=i),i=t>r?0:r-t>>>0,t>>>=0;for(var s=se(i);++n<i;)s[n]=e[n+t];return s}function ni(e,t){var r;return ln(e,(function(e,n,i){return!(r=t(e,n,i))})),!!r}function ii(e,t,r){var n=0,i=null==e?n:e.length;if("number"==typeof t&&t==t&&i<=2147483647){for(;n<i;){var s=n+i>>>1,o=e[s];null!==o&&!aa(o)&&(r?o<=t:o<t)?n=s+1:i=s}return i}return si(e,t,rc,r)}function si(e,t,n,i){var s=0,o=null==e?0:e.length;if(0===o)return 0;for(var a=(t=n(t))!=t,c=null===t,u=aa(t),h=t===r;s<o;){var l=gt((s+o)/2),f=n(e[l]),p=f!==r,d=null===f,g=f==f,y=aa(f);if(a)var v=i||g;else v=h?g&&(i||p):c?g&&p&&(i||!d):u?g&&p&&!d&&(i||!y):!d&&!y&&(i?f<=t:f<t);v?s=l+1:o=l}return vr(o,4294967294)}function oi(e,t){for(var r=-1,n=e.length,i=0,s=[];++r<n;){var o=e[r],a=t?t(o):o;if(!r||!zo(a,c)){var c=a;s[i++]=0===o?0:o}}return s}function ai(e){return"number"==typeof e?e:aa(e)?p:+e}function ci(e){if("string"==typeof e)return e;if(Ko(e))return jt(e,ci)+"";if(aa(e))return Dr?Dr.call(e):"";var t=e+"";return"0"==t&&1/e==-l?"-0":t}function ui(e,t,r){var n=-1,i=Tt,s=e.length,o=!0,a=[],c=a;if(r)o=!1,i=Rt;else if(s>=200){var u=t?null:Wi(e);if(u)return ur(u);o=!1,i=Qt,c=new Fr}else c=t?[]:a;e:for(;++n<s;){var h=e[n],l=t?t(h):h;if(h=r||0!==h?h:0,o&&l==l){for(var f=c.length;f--;)if(c[f]===l)continue e;t&&c.push(l),a.push(h)}else i(c,l,r)||(c!==a&&c.push(l),a.push(h))}return a}function hi(e,t){return null==(e=Ps(e,t=_i(t,e)))||delete e[Us(Ws(t))]}function li(e,t,r,n){return Zn(e,t,r(En(e,t)),n)}function fi(e,t,r,n){for(var i=e.length,s=n?i:-1;(n?s--:++s<i)&&t(e[s],s,e););return r?ri(e,n?0:s,n?s+1:i):ri(e,n?s+1:0,n?i:s)}function pi(e,t){var r=e;return r instanceof Hr&&(r=r.value()),Ut(t,(function(e,t){return t.func.apply(t.thisArg,Lt([e],t.args))}),r)}function di(e,t,r){var n=e.length;if(n<2)return n?ui(e[0]):[];for(var i=-1,s=se(n);++i<n;)for(var o=e[i],a=-1;++a<n;)a!=i&&(s[i]=hn(s[i]||o,e[a],t,r));return ui(yn(s,1),t,r)}function gi(e,t,n){for(var i=-1,s=e.length,o=t.length,a={};++i<s;){var c=i<o?t[i]:r;n(a,e[i],c)}return a}function yi(e){return Fo(e)?e:[]}function vi(e){return"function"==typeof e?e:rc}function _i(e,t){return Ko(e)?e:ms(e,t)?[e]:Ls(va(e))}var mi=Yn;function wi(e,t,n){var i=e.length;return n=n===r?i:n,!t&&n>=i?e:ri(e,t,n)}var bi=ct||function(e){return pt.clearTimeout(e)};function Ei(e,t){if(t)return e.slice();var r=e.length,n=Be?Be(r):new e.constructor(r);return e.copy(n),n}function Si(e){var t=new e.constructor(e.byteLength);return new Ve(t).set(new Ve(e)),t}function Ii(e,t){var r=t?Si(e.buffer):e.buffer;return new e.constructor(r,e.byteOffset,e.length)}function Oi(e,t){if(e!==t){var n=e!==r,i=null===e,s=e==e,o=aa(e),a=t!==r,c=null===t,u=t==t,h=aa(t);if(!c&&!h&&!o&&e>t||o&&a&&u&&!c&&!h||i&&a&&u||!n&&u||!s)return 1;if(!i&&!o&&!h&&e<t||h&&n&&s&&!i&&!o||c&&n&&s||!a&&s||!u)return-1}return 0}function Pi(e,t,r,n){for(var i=-1,s=e.length,o=r.length,a=-1,c=t.length,u=yr(s-o,0),h=se(c+u),l=!n;++a<c;)h[a]=t[a];for(;++i<o;)(l||i<s)&&(h[r[i]]=e[i]);for(;u--;)h[a++]=e[i++];return h}function Ni(e,t,r,n){for(var i=-1,s=e.length,o=-1,a=r.length,c=-1,u=t.length,h=yr(s-a,0),l=se(h+u),f=!n;++i<h;)l[i]=e[i];for(var p=i;++c<u;)l[p+c]=t[c];for(;++o<a;)(f||i<s)&&(l[p+r[o]]=e[i++]);return l}function Ai(e,t){var r=-1,n=e.length;for(t||(t=se(n));++r<n;)t[r]=e[r];return t}function xi(e,t,n,i){var s=!n;n||(n={});for(var o=-1,a=t.length;++o<a;){var c=t[o],u=i?i(n[c],e[c],c,n,e):r;u===r&&(u=e[c]),s?nn(n,c,u):Qr(n,c,u)}return n}function Ci(e,t){return function(r,n){var i=Ko(r)?Pt:tn,s=t?t():{};return i(r,e,as(n,2),s)}}function Ti(e){return Yn((function(t,n){var i=-1,s=n.length,o=s>1?n[s-1]:r,a=s>2?n[2]:r;for(o=e.length>3&&"function"==typeof o?(s--,o):r,a&&_s(n[0],n[1],a)&&(o=s<3?r:o,s=1),t=Pe(t);++i<s;){var c=n[i];c&&e(t,c,i,o)}return t}))}function Ri(e,t){return function(r,n){if(null==r)return r;if(!Bo(r))return e(r,n);for(var i=r.length,s=t?i:-1,o=Pe(r);(t?s--:++s<i)&&!1!==n(o[s],s,o););return r}}function ji(e){return function(t,r,n){for(var i=-1,s=Pe(t),o=n(t),a=o.length;a--;){var c=o[e?a:++i];if(!1===r(s[c],c,s))break}return t}}function Li(e){return function(t){var n=sr(t=va(t))?lr(t):r,i=n?n[0]:t.charAt(0),s=n?wi(n,1).join(""):t.slice(1);return i[e]()+s}}function Ui(e){return function(t){return Ut(Ja(Ha(t).replace(Ze,"")),e,"")}}function Mi(e){return function(){var t=arguments;switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3]);case 5:return new e(t[0],t[1],t[2],t[3],t[4]);case 6:return new e(t[0],t[1],t[2],t[3],t[4],t[5]);case 7:return new e(t[0],t[1],t[2],t[3],t[4],t[5],t[6])}var r=zr(e.prototype),n=e.apply(r,t);return Qo(n)?n:r}}function Di(e){return function(t,n,i){var s=Pe(t);if(!Bo(t)){var o=as(n,3);t=Ca(t),n=function(e){return o(s[e],e,s)}}var a=e(t,n,i);return a>-1?s[o?t[a]:a]:r}}function ki(e){return ts((function(t){var i=t.length,s=i,o=qr.prototype.thru;for(e&&t.reverse();s--;){var a=t[s];if("function"!=typeof a)throw new xe(n);if(o&&!c&&"wrapper"==ss(a))var c=new qr([],!0)}for(s=c?s:i;++s<i;){var u=ss(a=t[s]),h="wrapper"==u?is(a):r;c=h&&ws(h[0])&&424==h[1]&&!h[4].length&&1==h[9]?c[ss(h[0])].apply(c,h[3]):1==a.length&&ws(a)?c[u]():c.thru(a)}return function(){var e=arguments,r=e[0];if(c&&1==e.length&&Ko(r))return c.plant(r).value();for(var n=0,s=i?t[n].apply(this,e):r;++n<i;)s=t[n].call(this,s);return s}}))}function zi(e,t,n,i,s,o,a,c,h,l){var f=t&u,p=1&t,d=2&t,g=24&t,y=512&t,v=d?r:Mi(e);return function u(){for(var _=arguments.length,m=se(_),w=_;w--;)m[w]=arguments[w];if(g)var b=os(u),E=function(e,t){for(var r=e.length,n=0;r--;)e[r]===t&&++n;return n}(m,b);if(i&&(m=Pi(m,i,s,g)),o&&(m=Ni(m,o,a,g)),_-=E,g&&_<l){var S=cr(m,b);return Fi(e,t,zi,u.placeholder,n,m,S,c,h,l-_)}var I=p?n:this,O=d?I[e]:e;return _=m.length,c?m=function(e,t){for(var n=e.length,i=vr(t.length,n),s=Ai(e);i--;){var o=t[i];e[i]=vs(o,n)?s[o]:r}return e}(m,c):y&&_>1&&m.reverse(),f&&h<_&&(m.length=h),this&&this!==pt&&this instanceof u&&(O=v||Mi(O)),O.apply(I,m)}}function $i(e,t){return function(r,n){return function(e,t,r,n){return mn(e,(function(e,i,s){t(n,r(e),i,s)})),n}(r,e,t(n),{})}}function qi(e,t){return function(n,i){var s;if(n===r&&i===r)return t;if(n!==r&&(s=n),i!==r){if(s===r)return i;"string"==typeof n||"string"==typeof i?(n=ci(n),i=ci(i)):(n=ai(n),i=ai(i)),s=e(n,i)}return s}}function Hi(e){return ts((function(t){return t=jt(t,Xt(as())),Yn((function(r){var n=this;return e(t,(function(e){return Ot(e,n,r)}))}))}))}function Ki(e,t){var n=(t=t===r?" ":ci(t)).length;if(n<2)return n?Wn(t,e):t;var i=Wn(t,dt(e/hr(t)));return sr(t)?wi(lr(i),0,e).join(""):i.slice(0,e)}function Vi(e){return function(t,n,i){return i&&"number"!=typeof i&&_s(t,n,i)&&(n=i=r),t=fa(t),n===r?(n=t,t=0):n=fa(n),function(e,t,r,n){for(var i=-1,s=yr(dt((t-e)/(r||1)),0),o=se(s);s--;)o[n?s:++i]=e,e+=r;return o}(t,n,i=i===r?t<n?1:-1:fa(i),e)}}function Bi(e){return function(t,r){return"string"==typeof t&&"string"==typeof r||(t=ga(t),r=ga(r)),e(t,r)}}function Fi(e,t,n,i,s,o,u,h,l,f){var p=8&t;t|=p?a:c,4&(t&=~(p?c:a))||(t&=-4);var d=[e,t,s,p?o:r,p?u:r,p?r:o,p?r:u,h,l,f],g=n.apply(r,d);return ws(e)&&As(g,d),g.placeholder=i,Ts(g,e,t)}function Gi(e){var t=Oe[e];return function(e,r){if(e=ga(e),(r=null==r?0:vr(pa(r),292))&&kt(e)){var n=(va(e)+"e").split("e");return+((n=(va(t(n[0]+"e"+(+n[1]+r)))+"e").split("e"))[0]+"e"+(+n[1]-r))}return t(e)}}var Wi=Or&&1/ur(new Or([,-0]))[1]==l?function(e){return new Or(e)}:ac;function Yi(e){return function(t){var r=ps(t);return r==S?or(t):r==A?function(e){var t=-1,r=Array(e.size);return e.forEach((function(e){r[++t]=[e,e]})),r}(t):function(e,t){return jt(t,(function(t){return[t,e[t]]}))}(t,e(t))}}function Ji(e,t,i,l,f,p,d,g){var y=2&t;if(!y&&"function"!=typeof e)throw new xe(n);var v=l?l.length:0;if(v||(t&=-97,l=f=r),d=d===r?d:yr(pa(d),0),g=g===r?g:pa(g),v-=f?f.length:0,t&c){var _=l,m=f;l=f=r}var w=y?r:is(e),b=[e,t,i,l,f,_,m,p,d,g];if(w&&function(e,t){var r=e[1],n=t[1],i=r|n,o=i<131,a=n==u&&8==r||n==u&&r==h&&e[7].length<=t[8]||384==n&&t[7].length<=t[8]&&8==r;if(!o&&!a)return e;1&n&&(e[2]=t[2],i|=1&r?0:4);var c=t[3];if(c){var l=e[3];e[3]=l?Pi(l,c,t[4]):c,e[4]=l?cr(e[3],s):t[4]}c=t[5],c&&(l=e[5],e[5]=l?Ni(l,c,t[6]):c,e[6]=l?cr(e[5],s):t[6]),c=t[7],c&&(e[7]=c),n&u&&(e[8]=null==e[8]?t[8]:vr(e[8],t[8])),null==e[9]&&(e[9]=t[9]),e[0]=t[0],e[1]=i}(b,w),e=b[0],t=b[1],i=b[2],l=b[3],f=b[4],!(g=b[9]=b[9]===r?y?0:e.length:yr(b[9]-v,0))&&24&t&&(t&=-25),t&&1!=t)E=8==t||t==o?function(e,t,n){var i=Mi(e);return function s(){for(var o=arguments.length,a=se(o),c=o,u=os(s);c--;)a[c]=arguments[c];var h=o<3&&a[0]!==u&&a[o-1]!==u?[]:cr(a,u);return(o-=h.length)<n?Fi(e,t,zi,s.placeholder,r,a,h,r,r,n-o):Ot(this&&this!==pt&&this instanceof s?i:e,this,a)}}(e,t,g):t!=a&&33!=t||f.length?zi.apply(r,b):function(e,t,r,n){var i=1&t,s=Mi(e);return function t(){for(var o=-1,a=arguments.length,c=-1,u=n.length,h=se(u+a),l=this&&this!==pt&&this instanceof t?s:e;++c<u;)h[c]=n[c];for(;a--;)h[c++]=arguments[++o];return Ot(l,i?r:this,h)}}(e,t,i,l);else var E=function(e,t,r){var n=1&t,i=Mi(e);return function t(){return(this&&this!==pt&&this instanceof t?i:e).apply(n?r:this,arguments)}}(e,t,i);return Ts((w?Qn:As)(E,b),e,t)}function Xi(e,t,n,i){return e===r||zo(e,Re[n])&&!Ue.call(i,n)?t:e}function Zi(e,t,n,i,s,o){return Qo(e)&&Qo(t)&&(o.set(t,e),qn(e,t,r,Zi,o),o.delete(t)),e}function Qi(e){return na(e)?r:e}function es(e,t,n,i,s,o){var a=1&n,c=e.length,u=t.length;if(c!=u&&!(a&&u>c))return!1;var h=o.get(e),l=o.get(t);if(h&&l)return h==t&&l==e;var f=-1,p=!0,d=2&n?new Fr:r;for(o.set(e,t),o.set(t,e);++f<c;){var g=e[f],y=t[f];if(i)var v=a?i(y,g,f,t,e,o):i(g,y,f,e,t,o);if(v!==r){if(v)continue;p=!1;break}if(d){if(!Dt(t,(function(e,t){if(!Qt(d,t)&&(g===e||s(g,e,n,i,o)))return d.push(t)}))){p=!1;break}}else if(g!==y&&!s(g,y,n,i,o)){p=!1;break}}return o.delete(e),o.delete(t),p}function ts(e){return Cs(Os(e,r,Ks),e+"")}function rs(e){return Sn(e,Ca,ls)}function ns(e){return Sn(e,Ta,fs)}var is=Ar?function(e){return Ar.get(e)}:ac;function ss(e){for(var t=e.name+"",r=xr[t],n=Ue.call(xr,t)?r.length:0;n--;){var i=r[n],s=i.func;if(null==s||s==e)return i.name}return t}function os(e){return(Ue.call(kr,"placeholder")?kr:e).placeholder}function as(){var e=kr.iteratee||nc;return e=e===nc?Ln:e,arguments.length?e(arguments[0],arguments[1]):e}function cs(e,t){var r=e.__data__;return function(e){var t=typeof e;return"string"==t||"number"==t||"symbol"==t||"boolean"==t?"__proto__"!==e:null===e}(t)?r["string"==typeof t?"string":"hash"]:r.map}function us(e){for(var t=Ca(e),r=t.length;r--;){var n=t[r],i=e[n];t[r]=[n,i,Ss(i)]}return t}function hs(e,t){var n=function(e,t){return null==e?r:e[t]}(e,t);return jn(n)?n:r}var ls=vt?function(e){return null==e?[]:(e=Pe(e),Ct(vt(e),(function(t){return We.call(e,t)})))}:dc,fs=vt?function(e){for(var t=[];e;)Lt(t,ls(e)),e=Fe(e);return t}:dc,ps=In;function ds(e,t,r){for(var n=-1,i=(t=_i(t,e)).length,s=!1;++n<i;){var o=Us(t[n]);if(!(s=null!=e&&r(e,o)))break;e=e[o]}return s||++n!=i?s:!!(i=null==e?0:e.length)&&Zo(i)&&vs(o,i)&&(Ko(e)||Ho(e))}function gs(e){return"function"!=typeof e.constructor||Es(e)?{}:zr(Fe(e))}function ys(e){return Ko(e)||Ho(e)||!!(Je&&e&&e[Je])}function vs(e,t){var r=typeof e;return!!(t=t??f)&&("number"==r||"symbol"!=r&&_e.test(e))&&e>-1&&e%1==0&&e<t}function _s(e,t,r){if(!Qo(r))return!1;var n=typeof t;return!!("number"==n?Bo(r)&&vs(t,r.length):"string"==n&&t in r)&&zo(r[t],e)}function ms(e,t){if(Ko(e))return!1;var r=typeof e;return!("number"!=r&&"symbol"!=r&&"boolean"!=r&&null!=e&&!aa(e))||(ee.test(e)||!Q.test(e)||null!=t&&e in Pe(t))}function ws(e){var t=ss(e),r=kr[t];if("function"!=typeof r||!(t in Hr.prototype))return!1;if(e===r)return!0;var n=is(r);return!!n&&e===n[0]}(Er&&ps(new Er(new ArrayBuffer(1)))!=j||Sr&&ps(new Sr)!=S||Ir&&ps(Ir.resolve())!=P||Or&&ps(new Or)!=A||Pr&&ps(new Pr)!=T)&&(ps=function(e){var t=In(e),n=t==O?e.constructor:r,i=n?Ms(n):"";if(i)switch(i){case Cr:return j;case Tr:return S;case Rr:return P;case jr:return A;case Lr:return T}return t});var bs=je?Jo:gc;function Es(e){var t=e&&e.constructor;return e===("function"==typeof t&&t.prototype||Re)}function Ss(e){return e==e&&!Qo(e)}function Is(e,t){return function(n){return null!=n&&(n[e]===t&&(t!==r||e in Pe(n)))}}function Os(e,t,n){return t=yr(t===r?e.length-1:t,0),function(){for(var r=arguments,i=-1,s=yr(r.length-t,0),o=se(s);++i<s;)o[i]=r[t+i];i=-1;for(var a=se(t+1);++i<t;)a[i]=r[i];return a[t]=n(o),Ot(e,this,a)}}function Ps(e,t){return t.length<2?e:En(e,ri(t,0,-1))}function Ns(e,t){if(("constructor"!==t||"function"!=typeof e[t])&&"__proto__"!=t)return e[t]}var As=Rs(Qn),xs=ft||function(e,t){return pt.setTimeout(e,t)},Cs=Rs(ei);function Ts(e,t,r){var n=t+"";return Cs(e,function(e,t){var r=t.length;if(!r)return e;var n=r-1;return t[n]=(r>1?"& ":"")+t[n],t=t.join(r>2?", ":" "),e.replace(oe,"{\n/* [wrapped with "+t+"] */\n")}(n,function(e,t){return Nt(g,(function(r){var n="_."+r[0];t&r[1]&&!Tt(e,n)&&e.push(n)})),e.sort()}(function(e){var t=e.match(ae);return t?t[1].split(ce):[]}(n),r)))}function Rs(e){var t=0,n=0;return function(){var i=_r(),s=16-(i-n);if(n=i,s>0){if(++t>=800)return arguments[0]}else t=0;return e.apply(r,arguments)}}function js(e,t){var n=-1,i=e.length,s=i-1;for(t=t===r?i:t;++n<t;){var o=Gn(n,s),a=e[o];e[o]=e[n],e[n]=a}return e.length=t,e}var Ls=function(e){var t=jo(e,(function(e){return 500===r.size&&r.clear(),e})),r=t.cache;return t}((function(e){var t=[];return 46===e.charCodeAt(0)&&t.push(""),e.replace(te,(function(e,r,n,i){t.push(n?i.replace(le,"$1"):r||e)})),t}));function Us(e){if("string"==typeof e||aa(e))return e;var t=e+"";return"0"==t&&1/e==-l?"-0":t}function Ms(e){if(null!=e){try{return Le.call(e)}catch{}try{return e+""}catch{}}return""}function Ds(e){if(e instanceof Hr)return e.clone();var t=new qr(e.__wrapped__,e.__chain__);return t.__actions__=Ai(e.__actions__),t.__index__=e.__index__,t.__values__=e.__values__,t}var ks=Yn((function(e,t){return Fo(e)?hn(e,yn(t,1,Fo,!0)):[]})),zs=Yn((function(e,t){var n=Ws(t);return Fo(n)&&(n=r),Fo(e)?hn(e,yn(t,1,Fo,!0),as(n,2)):[]})),$s=Yn((function(e,t){var n=Ws(t);return Fo(n)&&(n=r),Fo(e)?hn(e,yn(t,1,Fo,!0),r,n):[]}));function qs(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var i=null==r?0:pa(r);return i<0&&(i=yr(n+i,0)),$t(e,as(t,3),i)}function Hs(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var s=i-1;return n!==r&&(s=pa(n),s=n<0?yr(i+s,0):vr(s,i-1)),$t(e,as(t,3),s,!0)}function Ks(e){return(null==e?0:e.length)?yn(e,1):[]}function Vs(e){return e&&e.length?e[0]:r}var Bs=Yn((function(e){var t=jt(e,yi);return t.length&&t[0]===e[0]?An(t):[]})),Fs=Yn((function(e){var t=Ws(e),n=jt(e,yi);return t===Ws(n)?t=r:n.pop(),n.length&&n[0]===e[0]?An(n,as(t,2)):[]})),Gs=Yn((function(e){var t=Ws(e),n=jt(e,yi);return(t="function"==typeof t?t:r)&&n.pop(),n.length&&n[0]===e[0]?An(n,r,t):[]}));function Ws(e){var t=null==e?0:e.length;return t?e[t-1]:r}var Ys=Yn(Js);function Js(e,t){return e&&e.length&&t&&t.length?Bn(e,t):e}var Xs=ts((function(e,t){var r=null==e?0:e.length,n=sn(e,t);return Fn(e,jt(t,(function(e){return vs(e,r)?+e:e})).sort(Oi)),n}));function Zs(e){return null==e?e:br.call(e)}var Qs=Yn((function(e){return ui(yn(e,1,Fo,!0))})),eo=Yn((function(e){var t=Ws(e);return Fo(t)&&(t=r),ui(yn(e,1,Fo,!0),as(t,2))})),to=Yn((function(e){var t=Ws(e);return t="function"==typeof t?t:r,ui(yn(e,1,Fo,!0),r,t)}));function ro(e){if(!e||!e.length)return[];var t=0;return e=Ct(e,(function(e){if(Fo(e))return t=yr(e.length,t),!0})),Yt(t,(function(t){return jt(e,Bt(t))}))}function no(e,t){if(!e||!e.length)return[];var n=ro(e);return null==t?n:jt(n,(function(e){return Ot(t,r,e)}))}var io=Yn((function(e,t){return Fo(e)?hn(e,t):[]})),so=Yn((function(e){return di(Ct(e,Fo))})),oo=Yn((function(e){var t=Ws(e);return Fo(t)&&(t=r),di(Ct(e,Fo),as(t,2))})),ao=Yn((function(e){var t=Ws(e);return t="function"==typeof t?t:r,di(Ct(e,Fo),r,t)})),co=Yn(ro);var uo=Yn((function(e){var t=e.length,n=t>1?e[t-1]:r;return n="function"==typeof n?(e.pop(),n):r,no(e,n)}));function ho(e){var t=kr(e);return t.__chain__=!0,t}function lo(e,t){return t(e)}var fo=ts((function(e){var t=e.length,n=t?e[0]:0,i=this.__wrapped__,s=function(t){return sn(t,e)};return!(t>1||this.__actions__.length)&&i instanceof Hr&&vs(n)?((i=i.slice(n,+n+(t?1:0))).__actions__.push({func:lo,args:[s],thisArg:r}),new qr(i,this.__chain__).thru((function(e){return t&&!e.length&&e.push(r),e}))):this.thru(s)}));var po=Ci((function(e,t,r){Ue.call(e,r)?++e[r]:nn(e,r,1)}));var go=Di(qs),yo=Di(Hs);function vo(e,t){return(Ko(e)?Nt:ln)(e,as(t,3))}function _o(e,t){return(Ko(e)?At:fn)(e,as(t,3))}var mo=Ci((function(e,t,r){Ue.call(e,r)?e[r].push(t):nn(e,r,[t])}));var wo=Yn((function(e,t,r){var n=-1,i="function"==typeof t,s=Bo(e)?se(e.length):[];return ln(e,(function(e){s[++n]=i?Ot(t,e,r):xn(e,t,r)})),s})),bo=Ci((function(e,t,r){nn(e,r,t)}));function Eo(e,t){return(Ko(e)?jt:kn)(e,as(t,3))}var So=Ci((function(e,t,r){e[r?0:1].push(t)}),(function(){return[[],[]]}));var Io=Yn((function(e,t){if(null==e)return[];var r=t.length;return r>1&&_s(e,t[0],t[1])?t=[]:r>2&&_s(t[0],t[1],t[2])&&(t=[t[0]]),Kn(e,yn(t,1),[])})),Oo=lt||function(){return pt.Date.now()};function Po(e,t,n){return t=n?r:t,t=e&&null==t?e.length:t,Ji(e,u,r,r,r,r,t)}function No(e,t){var i;if("function"!=typeof t)throw new xe(n);return e=pa(e),function(){return--e>0&&(i=t.apply(this,arguments)),e<=1&&(t=r),i}}var Ao=Yn((function(e,t,r){var n=1;if(r.length){var i=cr(r,os(Ao));n|=a}return Ji(e,n,t,r,i)})),xo=Yn((function(e,t,r){var n=3;if(r.length){var i=cr(r,os(xo));n|=a}return Ji(t,n,e,r,i)}));function Co(e,t,i){var s,o,a,c,u,h,l=0,f=!1,p=!1,d=!0;if("function"!=typeof e)throw new xe(n);function g(t){var n=s,i=o;return s=o=r,l=t,c=e.apply(i,n)}function y(e){var n=e-h;return h===r||n>=t||n<0||p&&e-l>=a}function v(){var e=Oo();if(y(e))return _(e);u=xs(v,function(e){var r=t-(e-h);return p?vr(r,a-(e-l)):r}(e))}function _(e){return u=r,d&&s?g(e):(s=o=r,c)}function m(){var e=Oo(),n=y(e);if(s=arguments,o=this,h=e,n){if(u===r)return function(e){return l=e,u=xs(v,t),f?g(e):c}(h);if(p)return bi(u),u=xs(v,t),g(h)}return u===r&&(u=xs(v,t)),c}return t=ga(t)||0,Qo(i)&&(f=!!i.leading,a=(p="maxWait"in i)?yr(ga(i.maxWait)||0,t):a,d="trailing"in i?!!i.trailing:d),m.cancel=function(){u!==r&&bi(u),l=0,s=h=o=u=r},m.flush=function(){return u===r?c:_(Oo())},m}var To=Yn((function(e,t){return un(e,1,t)})),Ro=Yn((function(e,t,r){return un(e,ga(t)||0,r)}));function jo(e,t){if("function"!=typeof e||null!=t&&"function"!=typeof t)throw new xe(n);var r=function(){var n=arguments,i=t?t.apply(this,n):n[0],s=r.cache;if(s.has(i))return s.get(i);var o=e.apply(this,n);return r.cache=s.set(i,o)||s,o};return r.cache=new(jo.Cache||Br),r}function Lo(e){if("function"!=typeof e)throw new xe(n);return function(){var t=arguments;switch(t.length){case 0:return!e.call(this);case 1:return!e.call(this,t[0]);case 2:return!e.call(this,t[0],t[1]);case 3:return!e.call(this,t[0],t[1],t[2])}return!e.apply(this,t)}}jo.Cache=Br;var Uo=mi((function(e,t){var r=(t=1==t.length&&Ko(t[0])?jt(t[0],Xt(as())):jt(yn(t,1),Xt(as()))).length;return Yn((function(n){for(var i=-1,s=vr(n.length,r);++i<s;)n[i]=t[i].call(this,n[i]);return Ot(e,this,n)}))})),Mo=Yn((function(e,t){var n=cr(t,os(Mo));return Ji(e,a,r,t,n)})),Do=Yn((function(e,t){var n=cr(t,os(Do));return Ji(e,c,r,t,n)})),ko=ts((function(e,t){return Ji(e,h,r,r,r,t)}));function zo(e,t){return e===t||e!=e&&t!=t}var $o=Bi(On),qo=Bi((function(e,t){return e>=t})),Ho=Cn(function(){return arguments}())?Cn:function(e){return ea(e)&&Ue.call(e,"callee")&&!We.call(e,"callee")},Ko=se.isArray,Vo=mt?Xt(mt):function(e){return ea(e)&&In(e)==R};function Bo(e){return null!=e&&Zo(e.length)&&!Jo(e)}function Fo(e){return ea(e)&&Bo(e)}var Go=_t||gc,Wo=wt?Xt(wt):function(e){return ea(e)&&In(e)==m};function Yo(e){if(!ea(e))return!1;var t=In(e);return t==w||"[object DOMException]"==t||"string"==typeof e.message&&"string"==typeof e.name&&!na(e)}function Jo(e){if(!Qo(e))return!1;var t=In(e);return t==b||t==E||"[object AsyncFunction]"==t||"[object Proxy]"==t}function Xo(e){return"number"==typeof e&&e==pa(e)}function Zo(e){return"number"==typeof e&&e>-1&&e%1==0&&e<=f}function Qo(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)}function ea(e){return null!=e&&"object"==typeof e}var ta=bt?Xt(bt):function(e){return ea(e)&&ps(e)==S};function ra(e){return"number"==typeof e||ea(e)&&In(e)==I}function na(e){if(!ea(e)||In(e)!=O)return!1;var t=Fe(e);if(null===t)return!0;var r=Ue.call(t,"constructor")&&t.constructor;return"function"==typeof r&&r instanceof r&&Le.call(r)==ze}var ia=Et?Xt(Et):function(e){return ea(e)&&In(e)==N};var sa=St?Xt(St):function(e){return ea(e)&&ps(e)==A};function oa(e){return"string"==typeof e||!Ko(e)&&ea(e)&&In(e)==x}function aa(e){return"symbol"==typeof e||ea(e)&&In(e)==C}var ca=It?Xt(It):function(e){return ea(e)&&Zo(e.length)&&!!ot[In(e)]};var ua=Bi(Dn),ha=Bi((function(e,t){return e<=t}));function la(e){if(!e)return[];if(Bo(e))return oa(e)?lr(e):Ai(e);if(Xe&&e[Xe])return function(e){for(var t,r=[];!(t=e.next()).done;)r.push(t.value);return r}(e[Xe]());var t=ps(e);return(t==S?or:t==A?ur:za)(e)}function fa(e){return e?(e=ga(e))===l||e===-l?17976931348623157e292*(e<0?-1:1):e==e?e:0:0===e?e:0}function pa(e){var t=fa(e),r=t%1;return t==t?r?t-r:t:0}function da(e){return e?on(pa(e),0,d):0}function ga(e){if("number"==typeof e)return e;if(aa(e))return p;if(Qo(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=Qo(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=Jt(e);var r=ge.test(e);return r||ve.test(e)?ht(e.slice(2),r?2:8):de.test(e)?p:+e}function ya(e){return xi(e,Ta(e))}function va(e){return null==e?"":ci(e)}var _a=Ti((function(e,t){if(Es(t)||Bo(t))xi(t,Ca(t),e);else for(var r in t)Ue.call(t,r)&&Qr(e,r,t[r])})),ma=Ti((function(e,t){xi(t,Ta(t),e)})),wa=Ti((function(e,t,r,n){xi(t,Ta(t),e,n)})),ba=Ti((function(e,t,r,n){xi(t,Ca(t),e,n)})),Ea=ts(sn);var Sa=Yn((function(e,t){e=Pe(e);var n=-1,i=t.length,s=i>2?t[2]:r;for(s&&_s(t[0],t[1],s)&&(i=1);++n<i;)for(var o=t[n],a=Ta(o),c=-1,u=a.length;++c<u;){var h=a[c],l=e[h];(l===r||zo(l,Re[h])&&!Ue.call(e,h))&&(e[h]=o[h])}return e})),Ia=Yn((function(e){return e.push(r,Zi),Ot(ja,r,e)}));function Oa(e,t,n){var i=null==e?r:En(e,t);return i===r?n:i}function Pa(e,t){return null!=e&&ds(e,t,Nn)}var Na=$i((function(e,t,r){null!=t&&"function"!=typeof t.toString&&(t=ke.call(t)),e[t]=r}),Qa(rc)),Aa=$i((function(e,t,r){null!=t&&"function"!=typeof t.toString&&(t=ke.call(t)),Ue.call(e,t)?e[t].push(r):e[t]=[r]}),as),xa=Yn(xn);function Ca(e){return Bo(e)?Wr(e):Un(e)}function Ta(e){return Bo(e)?Wr(e,!0):Mn(e)}var Ra=Ti((function(e,t,r){qn(e,t,r)})),ja=Ti((function(e,t,r,n){qn(e,t,r,n)})),La=ts((function(e,t){var r={};if(null==e)return r;var n=!1;t=jt(t,(function(t){return t=_i(t,e),n||(n=t.length>1),t})),xi(e,ns(e),r),n&&(r=an(r,7,Qi));for(var i=t.length;i--;)hi(r,t[i]);return r}));var Ua=ts((function(e,t){return null==e?{}:function(e,t){return Vn(e,t,(function(t,r){return Pa(e,r)}))}(e,t)}));function Ma(e,t){if(null==e)return{};var r=jt(ns(e),(function(e){return[e]}));return t=as(t),Vn(e,r,(function(e,r){return t(e,r[0])}))}var Da=Yi(Ca),ka=Yi(Ta);function za(e){return null==e?[]:Zt(e,Ca(e))}var $a=Ui((function(e,t,r){return t=t.toLowerCase(),e+(r?qa(t):t)}));function qa(e){return Ya(va(e).toLowerCase())}function Ha(e){return(e=va(e))&&e.replace(me,rr).replace(Qe,"")}var Ka=Ui((function(e,t,r){return e+(r?"-":"")+t.toLowerCase()})),Va=Ui((function(e,t,r){return e+(r?" ":"")+t.toLowerCase()})),Ba=Li("toLowerCase");var Fa=Ui((function(e,t,r){return e+(r?"_":"")+t.toLowerCase()}));var Ga=Ui((function(e,t,r){return e+(r?" ":"")+Ya(t)}));var Wa=Ui((function(e,t,r){return e+(r?" ":"")+t.toUpperCase()})),Ya=Li("toUpperCase");function Ja(e,t,n){return e=va(e),(t=n?r:t)===r?function(e){return nt.test(e)}(e)?function(e){return e.match(tt)||[]}(e):function(e){return e.match(ue)||[]}(e):e.match(t)||[]}var Xa=Yn((function(e,t){try{return Ot(e,r,t)}catch(e){return Yo(e)?e:new Se(e)}})),Za=ts((function(e,t){return Nt(t,(function(t){t=Us(t),nn(e,t,Ao(e[t],e))})),e}));function Qa(e){return function(){return e}}var ec=ki(),tc=ki(!0);function rc(e){return e}function nc(e){return Ln("function"==typeof e?e:an(e,1))}var ic=Yn((function(e,t){return function(r){return xn(r,e,t)}})),sc=Yn((function(e,t){return function(r){return xn(e,r,t)}}));function oc(e,t,r){var n=Ca(t),i=bn(t,n);null==r&&(!Qo(t)||!i.length&&n.length)&&(r=t,t=e,e=this,i=bn(t,Ca(t)));var s=!(Qo(r)&&"chain"in r&&!r.chain),o=Jo(e);return Nt(i,(function(r){var n=t[r];e[r]=n,o&&(e.prototype[r]=function(){var t=this.__chain__;if(s||t){var r=e(this.__wrapped__);return(r.__actions__=Ai(this.__actions__)).push({func:n,args:arguments,thisArg:e}),r.__chain__=t,r}return n.apply(e,Lt([this.value()],arguments))})})),e}function ac(){}var cc=Hi(jt),uc=Hi(xt),hc=Hi(Dt);function lc(e){return ms(e)?Bt(Us(e)):function(e){return function(t){return En(t,e)}}(e)}var fc=Vi(),pc=Vi(!0);function dc(){return[]}function gc(){return!1}var yc=qi((function(e,t){return e+t}),0),vc=Gi("ceil"),_c=qi((function(e,t){return e/t}),1),mc=Gi("floor");var wc=qi((function(e,t){return e*t}),1),bc=Gi("round"),Ec=qi((function(e,t){return e-t}),0);return kr.after=function(e,t){if("function"!=typeof t)throw new xe(n);return e=pa(e),function(){if(--e<1)return t.apply(this,arguments)}},kr.ary=Po,kr.assign=_a,kr.assignIn=ma,kr.assignInWith=wa,kr.assignWith=ba,kr.at=Ea,kr.before=No,kr.bind=Ao,kr.bindAll=Za,kr.bindKey=xo,kr.castArray=function(){if(!arguments.length)return[];var e=arguments[0];return Ko(e)?e:[e]},kr.chain=ho,kr.chunk=function(e,t,n){t=(n?_s(e,t,n):t===r)?1:yr(pa(t),0);var i=null==e?0:e.length;if(!i||t<1)return[];for(var s=0,o=0,a=se(dt(i/t));s<i;)a[o++]=ri(e,s,s+=t);return a},kr.compact=function(e){for(var t=-1,r=null==e?0:e.length,n=0,i=[];++t<r;){var s=e[t];s&&(i[n++]=s)}return i},kr.concat=function(){var e=arguments.length;if(!e)return[];for(var t=se(e-1),r=arguments[0],n=e;n--;)t[n-1]=arguments[n];return Lt(Ko(r)?Ai(r):[r],yn(t,1))},kr.cond=function(e){var t=null==e?0:e.length,r=as();return e=t?jt(e,(function(e){if("function"!=typeof e[1])throw new xe(n);return[r(e[0]),e[1]]})):[],Yn((function(r){for(var n=-1;++n<t;){var i=e[n];if(Ot(i[0],this,r))return Ot(i[1],this,r)}}))},kr.conforms=function(e){return function(e){var t=Ca(e);return function(r){return cn(r,e,t)}}(an(e,1))},kr.constant=Qa,kr.countBy=po,kr.create=function(e,t){var r=zr(e);return null==t?r:rn(r,t)},kr.curry=function e(t,n,i){var s=Ji(t,8,r,r,r,r,r,n=i?r:n);return s.placeholder=e.placeholder,s},kr.curryRight=function e(t,n,i){var s=Ji(t,o,r,r,r,r,r,n=i?r:n);return s.placeholder=e.placeholder,s},kr.debounce=Co,kr.defaults=Sa,kr.defaultsDeep=Ia,kr.defer=To,kr.delay=Ro,kr.difference=ks,kr.differenceBy=zs,kr.differenceWith=$s,kr.drop=function(e,t,n){var i=null==e?0:e.length;return i?ri(e,(t=n||t===r?1:pa(t))<0?0:t,i):[]},kr.dropRight=function(e,t,n){var i=null==e?0:e.length;return i?ri(e,0,(t=i-(t=n||t===r?1:pa(t)))<0?0:t):[]},kr.dropRightWhile=function(e,t){return e&&e.length?fi(e,as(t,3),!0,!0):[]},kr.dropWhile=function(e,t){return e&&e.length?fi(e,as(t,3),!0):[]},kr.fill=function(e,t,n,i){var s=null==e?0:e.length;return s?(n&&"number"!=typeof n&&_s(e,t,n)&&(n=0,i=s),function(e,t,n,i){var s=e.length;for((n=pa(n))<0&&(n=-n>s?0:s+n),(i=i===r||i>s?s:pa(i))<0&&(i+=s),i=n>i?0:da(i);n<i;)e[n++]=t;return e}(e,t,n,i)):[]},kr.filter=function(e,t){return(Ko(e)?Ct:gn)(e,as(t,3))},kr.flatMap=function(e,t){return yn(Eo(e,t),1)},kr.flatMapDeep=function(e,t){return yn(Eo(e,t),l)},kr.flatMapDepth=function(e,t,n){return n=n===r?1:pa(n),yn(Eo(e,t),n)},kr.flatten=Ks,kr.flattenDeep=function(e){return(null==e?0:e.length)?yn(e,l):[]},kr.flattenDepth=function(e,t){return(null==e?0:e.length)?yn(e,t=t===r?1:pa(t)):[]},kr.flip=function(e){return Ji(e,512)},kr.flow=ec,kr.flowRight=tc,kr.fromPairs=function(e){for(var t=-1,r=null==e?0:e.length,n={};++t<r;){var i=e[t];n[i[0]]=i[1]}return n},kr.functions=function(e){return null==e?[]:bn(e,Ca(e))},kr.functionsIn=function(e){return null==e?[]:bn(e,Ta(e))},kr.groupBy=mo,kr.initial=function(e){return(null==e?0:e.length)?ri(e,0,-1):[]},kr.intersection=Bs,kr.intersectionBy=Fs,kr.intersectionWith=Gs,kr.invert=Na,kr.invertBy=Aa,kr.invokeMap=wo,kr.iteratee=nc,kr.keyBy=bo,kr.keys=Ca,kr.keysIn=Ta,kr.map=Eo,kr.mapKeys=function(e,t){var r={};return t=as(t,3),mn(e,(function(e,n,i){nn(r,t(e,n,i),e)})),r},kr.mapValues=function(e,t){var r={};return t=as(t,3),mn(e,(function(e,n,i){nn(r,n,t(e,n,i))})),r},kr.matches=function(e){return zn(an(e,1))},kr.matchesProperty=function(e,t){return $n(e,an(t,1))},kr.memoize=jo,kr.merge=Ra,kr.mergeWith=ja,kr.method=ic,kr.methodOf=sc,kr.mixin=oc,kr.negate=Lo,kr.nthArg=function(e){return e=pa(e),Yn((function(t){return Hn(t,e)}))},kr.omit=La,kr.omitBy=function(e,t){return Ma(e,Lo(as(t)))},kr.once=function(e){return No(2,e)},kr.orderBy=function(e,t,n,i){return null==e?[]:(Ko(t)||(t=null==t?[]:[t]),Ko(n=i?r:n)||(n=null==n?[]:[n]),Kn(e,t,n))},kr.over=cc,kr.overArgs=Uo,kr.overEvery=uc,kr.overSome=hc,kr.partial=Mo,kr.partialRight=Do,kr.partition=So,kr.pick=Ua,kr.pickBy=Ma,kr.property=lc,kr.propertyOf=function(e){return function(t){return null==e?r:En(e,t)}},kr.pull=Ys,kr.pullAll=Js,kr.pullAllBy=function(e,t,r){return e&&e.length&&t&&t.length?Bn(e,t,as(r,2)):e},kr.pullAllWith=function(e,t,n){return e&&e.length&&t&&t.length?Bn(e,t,r,n):e},kr.pullAt=Xs,kr.range=fc,kr.rangeRight=pc,kr.rearg=ko,kr.reject=function(e,t){return(Ko(e)?Ct:gn)(e,Lo(as(t,3)))},kr.remove=function(e,t){var r=[];if(!e||!e.length)return r;var n=-1,i=[],s=e.length;for(t=as(t,3);++n<s;){var o=e[n];t(o,n,e)&&(r.push(o),i.push(n))}return Fn(e,i),r},kr.rest=function(e,t){if("function"!=typeof e)throw new xe(n);return Yn(e,t=t===r?t:pa(t))},kr.reverse=Zs,kr.sampleSize=function(e,t,n){return t=(n?_s(e,t,n):t===r)?1:pa(t),(Ko(e)?Jr:Xn)(e,t)},kr.set=function(e,t,r){return null==e?e:Zn(e,t,r)},kr.setWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:Zn(e,t,n,i)},kr.shuffle=function(e){return(Ko(e)?Xr:ti)(e)},kr.slice=function(e,t,n){var i=null==e?0:e.length;return i?(n&&"number"!=typeof n&&_s(e,t,n)?(t=0,n=i):(t=null==t?0:pa(t),n=n===r?i:pa(n)),ri(e,t,n)):[]},kr.sortBy=Io,kr.sortedUniq=function(e){return e&&e.length?oi(e):[]},kr.sortedUniqBy=function(e,t){return e&&e.length?oi(e,as(t,2)):[]},kr.split=function(e,t,n){return n&&"number"!=typeof n&&_s(e,t,n)&&(t=n=r),(n=n===r?d:n>>>0)?(e=va(e))&&("string"==typeof t||null!=t&&!ia(t))&&(!(t=ci(t))&&sr(e))?wi(lr(e),0,n):e.split(t,n):[]},kr.spread=function(e,t){if("function"!=typeof e)throw new xe(n);return t=null==t?0:yr(pa(t),0),Yn((function(r){var n=r[t],i=wi(r,0,t);return n&&Lt(i,n),Ot(e,this,i)}))},kr.tail=function(e){var t=null==e?0:e.length;return t?ri(e,1,t):[]},kr.take=function(e,t,n){return e&&e.length?ri(e,0,(t=n||t===r?1:pa(t))<0?0:t):[]},kr.takeRight=function(e,t,n){var i=null==e?0:e.length;return i?ri(e,(t=i-(t=n||t===r?1:pa(t)))<0?0:t,i):[]},kr.takeRightWhile=function(e,t){return e&&e.length?fi(e,as(t,3),!1,!0):[]},kr.takeWhile=function(e,t){return e&&e.length?fi(e,as(t,3)):[]},kr.tap=function(e,t){return t(e),e},kr.throttle=function(e,t,r){var i=!0,s=!0;if("function"!=typeof e)throw new xe(n);return Qo(r)&&(i="leading"in r?!!r.leading:i,s="trailing"in r?!!r.trailing:s),Co(e,t,{leading:i,maxWait:t,trailing:s})},kr.thru=lo,kr.toArray=la,kr.toPairs=Da,kr.toPairsIn=ka,kr.toPath=function(e){return Ko(e)?jt(e,Us):aa(e)?[e]:Ai(Ls(va(e)))},kr.toPlainObject=ya,kr.transform=function(e,t,r){var n=Ko(e),i=n||Go(e)||ca(e);if(t=as(t,4),null==r){var s=e&&e.constructor;r=i?n?new s:[]:Qo(e)&&Jo(s)?zr(Fe(e)):{}}return(i?Nt:mn)(e,(function(e,n,i){return t(r,e,n,i)})),r},kr.unary=function(e){return Po(e,1)},kr.union=Qs,kr.unionBy=eo,kr.unionWith=to,kr.uniq=function(e){return e&&e.length?ui(e):[]},kr.uniqBy=function(e,t){return e&&e.length?ui(e,as(t,2)):[]},kr.uniqWith=function(e,t){return t="function"==typeof t?t:r,e&&e.length?ui(e,r,t):[]},kr.unset=function(e,t){return null==e||hi(e,t)},kr.unzip=ro,kr.unzipWith=no,kr.update=function(e,t,r){return null==e?e:li(e,t,vi(r))},kr.updateWith=function(e,t,n,i){return i="function"==typeof i?i:r,null==e?e:li(e,t,vi(n),i)},kr.values=za,kr.valuesIn=function(e){return null==e?[]:Zt(e,Ta(e))},kr.without=io,kr.words=Ja,kr.wrap=function(e,t){return Mo(vi(t),e)},kr.xor=so,kr.xorBy=oo,kr.xorWith=ao,kr.zip=co,kr.zipObject=function(e,t){return gi(e||[],t||[],Qr)},kr.zipObjectDeep=function(e,t){return gi(e||[],t||[],Zn)},kr.zipWith=uo,kr.entries=Da,kr.entriesIn=ka,kr.extend=ma,kr.extendWith=wa,oc(kr,kr),kr.add=yc,kr.attempt=Xa,kr.camelCase=$a,kr.capitalize=qa,kr.ceil=vc,kr.clamp=function(e,t,n){return n===r&&(n=t,t=r),n!==r&&(n=(n=ga(n))==n?n:0),t!==r&&(t=(t=ga(t))==t?t:0),on(ga(e),t,n)},kr.clone=function(e){return an(e,4)},kr.cloneDeep=function(e){return an(e,5)},kr.cloneDeepWith=function(e,t){return an(e,5,t="function"==typeof t?t:r)},kr.cloneWith=function(e,t){return an(e,4,t="function"==typeof t?t:r)},kr.conformsTo=function(e,t){return null==t||cn(e,t,Ca(t))},kr.deburr=Ha,kr.defaultTo=function(e,t){return null==e||e!=e?t:e},kr.divide=_c,kr.endsWith=function(e,t,n){e=va(e),t=ci(t);var i=e.length,s=n=n===r?i:on(pa(n),0,i);return(n-=t.length)>=0&&e.slice(n,s)==t},kr.eq=zo,kr.escape=function(e){return(e=va(e))&&Y.test(e)?e.replace(G,nr):e},kr.escapeRegExp=function(e){return(e=va(e))&&ne.test(e)?e.replace(re,"\\$&"):e},kr.every=function(e,t,n){var i=Ko(e)?xt:pn;return n&&_s(e,t,n)&&(t=r),i(e,as(t,3))},kr.find=go,kr.findIndex=qs,kr.findKey=function(e,t){return zt(e,as(t,3),mn)},kr.findLast=yo,kr.findLastIndex=Hs,kr.findLastKey=function(e,t){return zt(e,as(t,3),wn)},kr.floor=mc,kr.forEach=vo,kr.forEachRight=_o,kr.forIn=function(e,t){return null==e?e:vn(e,as(t,3),Ta)},kr.forInRight=function(e,t){return null==e?e:_n(e,as(t,3),Ta)},kr.forOwn=function(e,t){return e&&mn(e,as(t,3))},kr.forOwnRight=function(e,t){return e&&wn(e,as(t,3))},kr.get=Oa,kr.gt=$o,kr.gte=qo,kr.has=function(e,t){return null!=e&&ds(e,t,Pn)},kr.hasIn=Pa,kr.head=Vs,kr.identity=rc,kr.includes=function(e,t,r,n){e=Bo(e)?e:za(e),r=r&&!n?pa(r):0;var i=e.length;return r<0&&(r=yr(i+r,0)),oa(e)?r<=i&&e.indexOf(t,r)>-1:!!i&&qt(e,t,r)>-1},kr.indexOf=function(e,t,r){var n=null==e?0:e.length;if(!n)return-1;var i=null==r?0:pa(r);return i<0&&(i=yr(n+i,0)),qt(e,t,i)},kr.inRange=function(e,t,n){return t=fa(t),n===r?(n=t,t=0):n=fa(n),function(e,t,r){return e>=vr(t,r)&&e<yr(t,r)}(e=ga(e),t,n)},kr.invoke=xa,kr.isArguments=Ho,kr.isArray=Ko,kr.isArrayBuffer=Vo,kr.isArrayLike=Bo,kr.isArrayLikeObject=Fo,kr.isBoolean=function(e){return!0===e||!1===e||ea(e)&&In(e)==_},kr.isBuffer=Go,kr.isDate=Wo,kr.isElement=function(e){return ea(e)&&1===e.nodeType&&!na(e)},kr.isEmpty=function(e){if(null==e)return!0;if(Bo(e)&&(Ko(e)||"string"==typeof e||"function"==typeof e.splice||Go(e)||ca(e)||Ho(e)))return!e.length;var t=ps(e);if(t==S||t==A)return!e.size;if(Es(e))return!Un(e).length;for(var r in e)if(Ue.call(e,r))return!1;return!0},kr.isEqual=function(e,t){return Tn(e,t)},kr.isEqualWith=function(e,t,n){var i=(n="function"==typeof n?n:r)?n(e,t):r;return i===r?Tn(e,t,r,n):!!i},kr.isError=Yo,kr.isFinite=function(e){return"number"==typeof e&&kt(e)},kr.isFunction=Jo,kr.isInteger=Xo,kr.isLength=Zo,kr.isMap=ta,kr.isMatch=function(e,t){return e===t||Rn(e,t,us(t))},kr.isMatchWith=function(e,t,n){return n="function"==typeof n?n:r,Rn(e,t,us(t),n)},kr.isNaN=function(e){return ra(e)&&e!=+e},kr.isNative=function(e){if(bs(e))throw new Se("Unsupported core-js use. Try https://npms.io/search?q=ponyfill.");return jn(e)},kr.isNil=function(e){return null==e},kr.isNull=function(e){return null===e},kr.isNumber=ra,kr.isObject=Qo,kr.isObjectLike=ea,kr.isPlainObject=na,kr.isRegExp=ia,kr.isSafeInteger=function(e){return Xo(e)&&e>=-f&&e<=f},kr.isSet=sa,kr.isString=oa,kr.isSymbol=aa,kr.isTypedArray=ca,kr.isUndefined=function(e){return e===r},kr.isWeakMap=function(e){return ea(e)&&ps(e)==T},kr.isWeakSet=function(e){return ea(e)&&"[object WeakSet]"==In(e)},kr.join=function(e,t){return null==e?"":Ft.call(e,t)},kr.kebabCase=Ka,kr.last=Ws,kr.lastIndexOf=function(e,t,n){var i=null==e?0:e.length;if(!i)return-1;var s=i;return n!==r&&(s=(s=pa(n))<0?yr(i+s,0):vr(s,i-1)),t==t?function(e,t,r){for(var n=r+1;n--;)if(e[n]===t)return n;return n}(e,t,s):$t(e,Kt,s,!0)},kr.lowerCase=Va,kr.lowerFirst=Ba,kr.lt=ua,kr.lte=ha,kr.max=function(e){return e&&e.length?dn(e,rc,On):r},kr.maxBy=function(e,t){return e&&e.length?dn(e,as(t,2),On):r},kr.mean=function(e){return Vt(e,rc)},kr.meanBy=function(e,t){return Vt(e,as(t,2))},kr.min=function(e){return e&&e.length?dn(e,rc,Dn):r},kr.minBy=function(e,t){return e&&e.length?dn(e,as(t,2),Dn):r},kr.stubArray=dc,kr.stubFalse=gc,kr.stubObject=function(){return{}},kr.stubString=function(){return""},kr.stubTrue=function(){return!0},kr.multiply=wc,kr.nth=function(e,t){return e&&e.length?Hn(e,pa(t)):r},kr.noConflict=function(){return pt._===this&&(pt._=$e),this},kr.noop=ac,kr.now=Oo,kr.pad=function(e,t,r){e=va(e);var n=(t=pa(t))?hr(e):0;if(!t||n>=t)return e;var i=(t-n)/2;return Ki(gt(i),r)+e+Ki(dt(i),r)},kr.padEnd=function(e,t,r){e=va(e);var n=(t=pa(t))?hr(e):0;return t&&n<t?e+Ki(t-n,r):e},kr.padStart=function(e,t,r){e=va(e);var n=(t=pa(t))?hr(e):0;return t&&n<t?Ki(t-n,r)+e:e},kr.parseInt=function(e,t,r){return r||null==t?t=0:t&&(t=+t),mr(va(e).replace(ie,""),t||0)},kr.random=function(e,t,n){if(n&&"boolean"!=typeof n&&_s(e,t,n)&&(t=n=r),n===r&&("boolean"==typeof t?(n=t,t=r):"boolean"==typeof e&&(n=e,e=r)),e===r&&t===r?(e=0,t=1):(e=fa(e),t===r?(t=e,e=0):t=fa(t)),e>t){var i=e;e=t,t=i}if(n||e%1||t%1){var s=wr();return vr(e+s*(t-e+ut("1e-"+((s+"").length-1))),t)}return Gn(e,t)},kr.reduce=function(e,t,r){var n=Ko(e)?Ut:Gt,i=arguments.length<3;return n(e,as(t,4),r,i,ln)},kr.reduceRight=function(e,t,r){var n=Ko(e)?Mt:Gt,i=arguments.length<3;return n(e,as(t,4),r,i,fn)},kr.repeat=function(e,t,n){return t=(n?_s(e,t,n):t===r)?1:pa(t),Wn(va(e),t)},kr.replace=function(){var e=arguments,t=va(e[0]);return e.length<3?t:t.replace(e[1],e[2])},kr.result=function(e,t,n){var i=-1,s=(t=_i(t,e)).length;for(s||(s=1,e=r);++i<s;){var o=null==e?r:e[Us(t[i])];o===r&&(i=s,o=n),e=Jo(o)?o.call(e):o}return e},kr.round=bc,kr.runInContext=e,kr.sample=function(e){return(Ko(e)?Yr:Jn)(e)},kr.size=function(e){if(null==e)return 0;if(Bo(e))return oa(e)?hr(e):e.length;var t=ps(e);return t==S||t==A?e.size:Un(e).length},kr.snakeCase=Fa,kr.some=function(e,t,n){var i=Ko(e)?Dt:ni;return n&&_s(e,t,n)&&(t=r),i(e,as(t,3))},kr.sortedIndex=function(e,t){return ii(e,t)},kr.sortedIndexBy=function(e,t,r){return si(e,t,as(r,2))},kr.sortedIndexOf=function(e,t){var r=null==e?0:e.length;if(r){var n=ii(e,t);if(n<r&&zo(e[n],t))return n}return-1},kr.sortedLastIndex=function(e,t){return ii(e,t,!0)},kr.sortedLastIndexBy=function(e,t,r){return si(e,t,as(r,2),!0)},kr.sortedLastIndexOf=function(e,t){if(null==e?0:e.length){var r=ii(e,t,!0)-1;if(zo(e[r],t))return r}return-1},kr.startCase=Ga,kr.startsWith=function(e,t,r){return e=va(e),r=null==r?0:on(pa(r),0,e.length),t=ci(t),e.slice(r,r+t.length)==t},kr.subtract=Ec,kr.sum=function(e){return e&&e.length?Wt(e,rc):0},kr.sumBy=function(e,t){return e&&e.length?Wt(e,as(t,2)):0},kr.template=function(e,t,n){var i=kr.templateSettings;n&&_s(e,t,n)&&(t=r),e=va(e),t=wa({},t,i,Xi);var s,o,a=wa({},t.imports,i.imports,Xi),c=Ca(a),u=Zt(a,c),h=0,l=t.interpolate||we,f="__p += '",p=Ne((t.escape||we).source+"|"+l.source+"|"+(l===Z?fe:we).source+"|"+(t.evaluate||we).source+"|$","g"),d="//# sourceURL="+(Ue.call(t,"sourceURL")?(t.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++st+"]")+"\n";e.replace(p,(function(t,r,n,i,a,c){return n||(n=i),f+=e.slice(h,c).replace(be,ir),r&&(s=!0,f+="' +\n__e("+r+") +\n'"),a&&(o=!0,f+="';\n"+a+";\n__p += '"),n&&(f+="' +\n((__t = ("+n+")) == null ? '' : __t) +\n'"),h=c+t.length,t})),f+="';\n";var g=Ue.call(t,"variable")&&t.variable;if(g){if(he.test(g))throw new Se("Invalid `variable` option passed into `_.template`")}else f="with (obj) {\n"+f+"\n}\n";f=(o?f.replace(K,""):f).replace(V,"$1").replace(B,"$1;"),f="function("+(g||"obj")+") {\n"+(g?"":"obj || (obj = {});\n")+"var __t, __p = ''"+(s?", __e = _.escape":"")+(o?", __j = Array.prototype.join;\nfunction print() { __p += __j.call(arguments, '') }\n":";\n")+f+"return __p\n}";var y=Xa((function(){return Ie(c,d+"return "+f).apply(r,u)}));if(y.source=f,Yo(y))throw y;return y},kr.times=function(e,t){if((e=pa(e))<1||e>f)return[];var r=d,n=vr(e,d);t=as(t),e-=d;for(var i=Yt(n,t);++r<e;)t(r);return i},kr.toFinite=fa,kr.toInteger=pa,kr.toLength=da,kr.toLower=function(e){return va(e).toLowerCase()},kr.toNumber=ga,kr.toSafeInteger=function(e){return e?on(pa(e),-f,f):0===e?e:0},kr.toString=va,kr.toUpper=function(e){return va(e).toUpperCase()},kr.trim=function(e,t,n){if((e=va(e))&&(n||t===r))return Jt(e);if(!e||!(t=ci(t)))return e;var i=lr(e),s=lr(t);return wi(i,er(i,s),tr(i,s)+1).join("")},kr.trimEnd=function(e,t,n){if((e=va(e))&&(n||t===r))return e.slice(0,fr(e)+1);if(!e||!(t=ci(t)))return e;var i=lr(e);return wi(i,0,tr(i,lr(t))+1).join("")},kr.trimStart=function(e,t,n){if((e=va(e))&&(n||t===r))return e.replace(ie,"");if(!e||!(t=ci(t)))return e;var i=lr(e);return wi(i,er(i,lr(t))).join("")},kr.truncate=function(e,t){var n=30,i="...";if(Qo(t)){var s="separator"in t?t.separator:s;n="length"in t?pa(t.length):n,i="omission"in t?ci(t.omission):i}var o=(e=va(e)).length;if(sr(e)){var a=lr(e);o=a.length}if(n>=o)return e;var c=n-hr(i);if(c<1)return i;var u=a?wi(a,0,c).join(""):e.slice(0,c);if(s===r)return u+i;if(a&&(c+=u.length-c),ia(s)){if(e.slice(c).search(s)){var h,l=u;for(s.global||(s=Ne(s.source,va(pe.exec(s))+"g")),s.lastIndex=0;h=s.exec(l);)var f=h.index;u=u.slice(0,f===r?c:f)}}else if(e.indexOf(ci(s),c)!=c){var p=u.lastIndexOf(s);p>-1&&(u=u.slice(0,p))}return u+i},kr.unescape=function(e){return(e=va(e))&&W.test(e)?e.replace(F,pr):e},kr.uniqueId=function(e){var t=++Me;return va(e)+t},kr.upperCase=Wa,kr.upperFirst=Ya,kr.each=vo,kr.eachRight=_o,kr.first=Vs,oc(kr,function(){var e={};return mn(kr,(function(t,r){Ue.call(kr.prototype,r)||(e[r]=t)})),e}(),{chain:!1}),kr.VERSION="4.17.21",Nt(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(e){kr[e].placeholder=kr})),Nt(["drop","take"],(function(e,t){Hr.prototype[e]=function(n){n=n===r?1:yr(pa(n),0);var i=this.__filtered__&&!t?new Hr(this):this.clone();return i.__filtered__?i.__takeCount__=vr(n,i.__takeCount__):i.__views__.push({size:vr(n,d),type:e+(i.__dir__<0?"Right":"")}),i},Hr.prototype[e+"Right"]=function(t){return this.reverse()[e](t).reverse()}})),Nt(["filter","map","takeWhile"],(function(e,t){var r=t+1,n=1==r||3==r;Hr.prototype[e]=function(e){var t=this.clone();return t.__iteratees__.push({iteratee:as(e,3),type:r}),t.__filtered__=t.__filtered__||n,t}})),Nt(["head","last"],(function(e,t){var r="take"+(t?"Right":"");Hr.prototype[e]=function(){return this[r](1).value()[0]}})),Nt(["initial","tail"],(function(e,t){var r="drop"+(t?"":"Right");Hr.prototype[e]=function(){return this.__filtered__?new Hr(this):this[r](1)}})),Hr.prototype.compact=function(){return this.filter(rc)},Hr.prototype.find=function(e){return this.filter(e).head()},Hr.prototype.findLast=function(e){return this.reverse().find(e)},Hr.prototype.invokeMap=Yn((function(e,t){return"function"==typeof e?new Hr(this):this.map((function(r){return xn(r,e,t)}))})),Hr.prototype.reject=function(e){return this.filter(Lo(as(e)))},Hr.prototype.slice=function(e,t){e=pa(e);var n=this;return n.__filtered__&&(e>0||t<0)?new Hr(n):(e<0?n=n.takeRight(-e):e&&(n=n.drop(e)),t!==r&&(n=(t=pa(t))<0?n.dropRight(-t):n.take(t-e)),n)},Hr.prototype.takeRightWhile=function(e){return this.reverse().takeWhile(e).reverse()},Hr.prototype.toArray=function(){return this.take(d)},mn(Hr.prototype,(function(e,t){var n=/^(?:filter|find|map|reject)|While$/.test(t),i=/^(?:head|last)$/.test(t),s=kr[i?"take"+("last"==t?"Right":""):t],o=i||/^find/.test(t);s&&(kr.prototype[t]=function(){var t=this.__wrapped__,a=i?[1]:arguments,c=t instanceof Hr,u=a[0],h=c||Ko(t),l=function(e){var t=s.apply(kr,Lt([e],a));return i&&f?t[0]:t};h&&n&&"function"==typeof u&&1!=u.length&&(c=h=!1);var f=this.__chain__,p=!!this.__actions__.length,d=o&&!f,g=c&&!p;if(!o&&h){t=g?t:new Hr(this);var y=e.apply(t,a);return y.__actions__.push({func:lo,args:[l],thisArg:r}),new qr(y,f)}return d&&g?e.apply(this,a):(y=this.thru(l),d?i?y.value()[0]:y.value():y)})})),Nt(["pop","push","shift","sort","splice","unshift"],(function(e){var t=Ce[e],r=/^(?:push|sort|unshift)$/.test(e)?"tap":"thru",n=/^(?:pop|shift)$/.test(e);kr.prototype[e]=function(){var e=arguments;if(n&&!this.__chain__){var i=this.value();return t.apply(Ko(i)?i:[],e)}return this[r]((function(r){return t.apply(Ko(r)?r:[],e)}))}})),mn(Hr.prototype,(function(e,t){var r=kr[t];if(r){var n=r.name+"";Ue.call(xr,n)||(xr[n]=[]),xr[n].push({name:t,func:r})}})),xr[zi(r,2).name]=[{name:"wrapper",func:r}],Hr.prototype.clone=function(){var e=new Hr(this.__wrapped__);return e.__actions__=Ai(this.__actions__),e.__dir__=this.__dir__,e.__filtered__=this.__filtered__,e.__iteratees__=Ai(this.__iteratees__),e.__takeCount__=this.__takeCount__,e.__views__=Ai(this.__views__),e},Hr.prototype.reverse=function(){if(this.__filtered__){var e=new Hr(this);e.__dir__=-1,e.__filtered__=!0}else(e=this.clone()).__dir__*=-1;return e},Hr.prototype.value=function(){var e=this.__wrapped__.value(),t=this.__dir__,r=Ko(e),n=t<0,i=r?e.length:0,s=function(e,t,r){for(var n=-1,i=r.length;++n<i;){var s=r[n],o=s.size;switch(s.type){case"drop":e+=o;break;case"dropRight":t-=o;break;case"take":t=vr(t,e+o);break;case"takeRight":e=yr(e,t-o)}}return{start:e,end:t}}(0,i,this.__views__),o=s.start,a=s.end,c=a-o,u=n?a:o-1,h=this.__iteratees__,l=h.length,f=0,p=vr(c,this.__takeCount__);if(!r||!n&&i==c&&p==c)return pi(e,this.__actions__);var d=[];e:for(;c--&&f<p;){for(var g=-1,y=e[u+=t];++g<l;){var v=h[g],_=v.iteratee,m=v.type,w=_(y);if(2==m)y=w;else if(!w){if(1==m)continue e;break e}}d[f++]=y}return d},kr.prototype.at=fo,kr.prototype.chain=function(){return ho(this)},kr.prototype.commit=function(){return new qr(this.value(),this.__chain__)},kr.prototype.next=function(){this.__values__===r&&(this.__values__=la(this.value()));var e=this.__index__>=this.__values__.length;return{done:e,value:e?r:this.__values__[this.__index__++]}},kr.prototype.plant=function(e){for(var t,n=this;n instanceof $r;){var i=Ds(n);i.__index__=0,i.__values__=r,t?s.__wrapped__=i:t=i;var s=i;n=n.__wrapped__}return s.__wrapped__=e,t},kr.prototype.reverse=function(){var e=this.__wrapped__;if(e instanceof Hr){var t=e;return this.__actions__.length&&(t=new Hr(this)),(t=t.reverse()).__actions__.push({func:lo,args:[Zs],thisArg:r}),new qr(t,this.__chain__)}return this.thru(Zs)},kr.prototype.toJSON=kr.prototype.valueOf=kr.prototype.value=function(){return pi(this.__wrapped__,this.__actions__)},kr.prototype.first=kr.prototype.head,Xe&&(kr.prototype[Xe]=function(){return this}),kr}();gt?((gt.exports=dr)._=dr,dt._=dr):pt._=dr}).call(ju)}(Lu,Lu.exports);var Uu=Object.defineProperty,Mu=Object.defineProperties,Du=Object.getOwnPropertyDescriptors,ku=Object.getOwnPropertySymbols,zu=Object.prototype.hasOwnProperty,$u=Object.prototype.propertyIsEnumerable,qu=(e,t,r)=>t in e?Uu(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Hu=(e,t)=>{for(var r in t||(t={}))zu.call(t,r)&&qu(e,r,t[r]);if(ku)for(var r of ku(t))$u.call(t,r)&&qu(e,r,t[r]);return e},Ku=(e,t)=>Mu(e,Du(t));function Vu(e,t,r){let n;const i=Bu(e);return t.rpcMap&&(n=t.rpcMap[i]),n||(n=`https://rpc.walletconnect.com/v1?chainId=eip155:${i}&projectId=${r}`),n}function Bu(e){return e.includes("eip155")?Number(e.split(":")[1]):Number(e)}function Fu(e){return e.map((e=>`${e.split(":")[0]}:${e.split(":")[1]}`))}function Gu(e){var t,r,n,i;const s={};if(!Hn(e))return s;for(const[o,a]of Object.entries(e)){const e=Un(o)?[o]:a.chains,c=a.methods||[],u=a.events||[],h=a.rpcMap||{},l=Mn(o);s[l]=Ku(Hu(Hu({},s[l]),a),{chains:Sn(e,null==(t=s[l])?void 0:t.chains),methods:Sn(c,null==(r=s[l])?void 0:r.methods),events:Sn(u,null==(n=s[l])?void 0:n.events),rpcMap:Hu(Hu({},h),null==(i=s[l])?void 0:i.rpcMap)})}return s}function Wu(e){return e.includes(":")?e.split(":")[2]:e}function Yu(e){const t={};for(const[r,n]of Object.entries(e)){const e=n.methods||[],i=n.events||[],s=n.accounts||[],o=Un(r)?[r]:n.chains?n.chains:Fu(n.accounts);t[r]={chains:o,methods:e,events:i,accounts:s}}return t}const Ju={},Xu=e=>Ju[e],Zu=(e,t)=>{Ju[e]=t};class Qu{constructor(e){this.name="polkadot",this.namespace=e.namespace,this.events=Xu("events"),this.client=Xu("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){if(this.chainId=e,!this.httpProviders[e]){const r=t||Vu(`${this.name}:${e}`,this.namespace);if(!r)throw new Error(`No RPC url provided for chainId: ${e}`);this.setHttpProvider(e,r)}this.events.emit(Ru,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e&&e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2]))||[]}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{var r;e[t]=this.createHttpProvider(t,null==(r=this.namespace.rpcMap)?void 0:r[t])})),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const r=this.createHttpProvider(e,t);r&&(this.httpProviders[e]=r)}createHttpProvider(e,t){const r=t||Vu(e,this.namespace);return typeof r>"u"?void 0:new eo(new xu(r,Xu("disableProviderPing")))}}class eh{constructor(e){this.name="eip155",this.namespace=e.namespace,this.events=Xu("events"),this.client=Xu("client"),this.httpProviders=this.createHttpProviders(),this.chainId=parseInt(this.getDefaultChain())}async request(e){switch(e.request.method){case"eth_requestAccounts":case"eth_accounts":return this.getAccounts();case"wallet_switchEthereumChain":return await this.handleSwitchChain(e);case"eth_chainId":return parseInt(this.getDefaultChain())}return this.namespace.methods.includes(e.request.method)?await this.client.request(e):this.getHttpProvider().request(e.request)}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}setDefaultChain(e,t){const r=Bu(e);if(!this.httpProviders[r]){const e=t||Vu(`${this.name}:${r}`,this.namespace,this.client.core.projectId);if(!e)throw new Error(`No RPC url provided for chainId: ${r}`);this.setHttpProvider(r,e)}this.chainId=r,this.events.emit(Ru,`${this.name}:${r}`)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId.toString();if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}createHttpProvider(e,t){const r=t||Vu(`${this.name}:${e}`,this.namespace,this.client.core.projectId);return typeof r>"u"?void 0:new eo(new xu(r,Xu("disableProviderPing")))}setHttpProvider(e,t){const r=this.createHttpProvider(e,t);r&&(this.httpProviders[e]=r)}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{var r;const n=Bu(t);e[n]=this.createHttpProvider(n,null==(r=this.namespace.rpcMap)?void 0:r[t])})),e}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2])))]:[]}getHttpProvider(){const e=this.chainId,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}async handleSwitchChain(e){var t,r;let n=e.request.params?null==(t=e.request.params[0])?void 0:t.chainId:"0x0";n=n.startsWith("0x")?n:`0x${n}`;const i=parseInt(n,16);if(this.isChainApproved(i))this.setDefaultChain(`${i}`);else{if(!this.namespace.methods.includes("wallet_switchEthereumChain"))throw new Error(`Failed to switch to chain 'eip155:${i}'. The chain is not approved or the wallet does not support 'wallet_switchEthereumChain' method.`);await this.client.request({topic:e.topic,request:{method:e.request.method,params:[{chainId:n}]},chainId:null==(r=this.namespace.chains)?void 0:r[0]}),this.setDefaultChain(`${i}`)}return null}isChainApproved(e){return this.namespace.chains.includes(`${this.name}:${e}`)}}class th{constructor(e){this.name="solana",this.namespace=e.namespace,this.events=Xu("events"),this.client=Xu("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){if(!this.httpProviders[e]){const r=t||Vu(`${this.name}:${e}`,this.namespace,this.client.core.projectId);if(!r)throw new Error(`No RPC url provided for chainId: ${e}`);this.setHttpProvider(e,r)}this.chainId=e,this.events.emit(Ru,`${this.name}:${this.chainId}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2])))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{var r;e[t]=this.createHttpProvider(t,null==(r=this.namespace.rpcMap)?void 0:r[t])})),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const r=this.createHttpProvider(e,t);r&&(this.httpProviders[e]=r)}createHttpProvider(e,t){const r=t||Vu(e,this.namespace,this.client.core.projectId);return typeof r>"u"?void 0:new eo(new xu(r,Xu("disableProviderPing")))}}class rh{constructor(e){this.name="cosmos",this.namespace=e.namespace,this.events=Xu("events"),this.client=Xu("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){if(this.chainId=e,!this.httpProviders[e]){const r=t||Vu(`${this.name}:${e}`,this.namespace,this.client.core.projectId);if(!r)throw new Error(`No RPC url provided for chainId: ${e}`);this.setHttpProvider(e,r)}this.events.emit(Ru,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2])))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{var r;e[t]=this.createHttpProvider(t,null==(r=this.namespace.rpcMap)?void 0:r[t])})),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const r=this.createHttpProvider(e,t);r&&(this.httpProviders[e]=r)}createHttpProvider(e,t){const r=t||Vu(e,this.namespace,this.client.core.projectId);return typeof r>"u"?void 0:new eo(new xu(r,Xu("disableProviderPing")))}}class nh{constructor(e){this.name="cip34",this.namespace=e.namespace,this.events=Xu("events"),this.client=Xu("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){if(this.chainId=e,!this.httpProviders[e]){const r=t||this.getCardanoRPCUrl(e);if(!r)throw new Error(`No RPC url provided for chainId: ${e}`);this.setHttpProvider(e,r)}this.events.emit(Ru,`${this.name}:${this.chainId}`)}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2])))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{const r=this.getCardanoRPCUrl(t);e[t]=this.createHttpProvider(t,r)})),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}getCardanoRPCUrl(e){const t=this.namespace.rpcMap;if(t)return t[e]}setHttpProvider(e,t){const r=this.createHttpProvider(e,t);r&&(this.httpProviders[e]=r)}createHttpProvider(e,t){const r=t||this.getCardanoRPCUrl(e);return typeof r>"u"?void 0:new eo(new xu(r,Xu("disableProviderPing")))}}class ih{constructor(e){this.name="elrond",this.namespace=e.namespace,this.events=Xu("events"),this.client=Xu("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){if(!this.httpProviders[e]){const r=t||Vu(`${this.name}:${e}`,this.namespace,this.client.core.projectId);if(!r)throw new Error(`No RPC url provided for chainId: ${e}`);this.setHttpProvider(e,r)}this.chainId=e,this.events.emit(Ru,`${this.name}:${this.chainId}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2])))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{var r;e[t]=this.createHttpProvider(t,null==(r=this.namespace.rpcMap)?void 0:r[t])})),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const r=this.createHttpProvider(e,t);r&&(this.httpProviders[e]=r)}createHttpProvider(e,t){const r=t||Vu(e,this.namespace,this.client.core.projectId);return typeof r>"u"?void 0:new eo(new xu(r,Xu("disableProviderPing")))}}class sh{constructor(e){this.name="multiversx",this.namespace=e.namespace,this.events=Xu("events"),this.client=Xu("client"),this.chainId=this.getDefaultChain(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider().request(e.request)}setDefaultChain(e,t){if(!this.httpProviders[e]){const r=t||Vu(`${this.name}:${e}`,this.namespace,this.client.core.projectId);if(!r)throw new Error(`No RPC url provided for chainId: ${e}`);this.setHttpProvider(e,r)}this.chainId=e,this.events.emit(Ru,`${this.name}:${this.chainId}`)}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;const e=this.namespace.chains[0];if(!e)throw new Error("ChainId not found");return e.split(":")[1]}getAccounts(){const e=this.namespace.accounts;return e?[...new Set(e.filter((e=>e.split(":")[1]===this.chainId.toString())).map((e=>e.split(":")[2])))]:[]}createHttpProviders(){const e={};return this.namespace.chains.forEach((t=>{var r;e[t]=this.createHttpProvider(t,null==(r=this.namespace.rpcMap)?void 0:r[t])})),e}getHttpProvider(){const e=`${this.name}:${this.chainId}`,t=this.httpProviders[e];if(typeof t>"u")throw new Error(`JSON-RPC provider for ${e} not found`);return t}setHttpProvider(e,t){const r=this.createHttpProvider(e,t);r&&(this.httpProviders[e]=r)}createHttpProvider(e,t){const r=t||Vu(e,this.namespace,this.client.core.projectId);return typeof r>"u"?void 0:new eo(new xu(r,Xu("disableProviderPing")))}}var oh=Object.defineProperty,ah=Object.defineProperties,ch=Object.getOwnPropertyDescriptors,uh=Object.getOwnPropertySymbols,hh=Object.prototype.hasOwnProperty,lh=Object.prototype.propertyIsEnumerable,fh=(e,t,r)=>t in e?oh(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,ph=(e,t)=>{for(var r in t||(t={}))hh.call(t,r)&&fh(e,r,t[r]);if(uh)for(var r of uh(t))lh.call(t,r)&&fh(e,r,t[r]);return e},dh=(e,t)=>ah(e,ch(t));class gh{constructor(e){this.events=new i.default,this.rpcProviders={},this.shouldAbortPairingAttempt=!1,this.maxPairingAttempts=10,this.disableProviderPing=!1,this.providerOpts=e,this.logger=typeof e?.logger<"u"&&"string"!=typeof e?.logger?e.logger:qi.pino(qi.getDefaultLoggerOptions({level:e?.logger||Cu})),this.disableProviderPing=e?.disableProviderPing||!1}static async init(e){const t=new gh(e);return await t.initialize(),t}async request(e,t){const[r,n]=this.validateChain(t);if(!this.session)throw new Error("Please call connect() before request()");return await this.getProvider(r).request({request:ph({},e),chainId:`${r}:${n}`,topic:this.session.topic})}sendAsync(e,t,r){this.request(e,r).then((e=>t(null,e))).catch((e=>t(e,void 0)))}async enable(){if(!this.client)throw new Error("Sign Client not initialized");return this.session||await this.connect({namespaces:this.namespaces,optionalNamespaces:this.optionalNamespaces,sessionProperties:this.sessionProperties}),await this.requestAccounts()}async disconnect(){var e;if(!this.session)throw new Error("Please call connect() before enable()");await this.client.disconnect({topic:null==(e=this.session)?void 0:e.topic,reason:$n("USER_DISCONNECTED")}),await this.cleanup()}async connect(e){if(!this.client)throw new Error("Sign Client not initialized");if(this.setNamespaces(e),await this.cleanupPendingPairings(),!e.skipPairing)return await this.pair(e.pairingTopic)}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}async pair(e){this.shouldAbortPairingAttempt=!1;let t=0;do{if(this.shouldAbortPairingAttempt)throw new Error("Pairing aborted");if(t>=this.maxPairingAttempts)throw new Error("Max auto pairing attempts reached");const{uri:r,approval:n}=await this.client.connect({pairingTopic:e,requiredNamespaces:this.namespaces,optionalNamespaces:this.optionalNamespaces,sessionProperties:this.sessionProperties});r&&(this.uri=r,this.events.emit("display_uri",r)),await n().then((e=>{this.session=e,this.namespaces||(this.namespaces=Yu(e.namespaces),this.persist("namespaces",this.namespaces))})).catch((e=>{if(e.message!==uu)throw e;t++}))}while(!this.session);return this.onConnect(),this.session}setDefaultChain(e,t){try{if(!this.session)return;const[r,n]=this.validateChain(e);this.getProvider(r).setDefaultChain(n,t)}catch(e){if(!/Please call connect/.test(e.message))throw e}}async cleanupPendingPairings(e={}){this.logger.info("Cleaning up inactive pairings...");const t=this.client.pairing.getAll();if(qn(t)){for(const r of t)e.deletePairings?this.client.core.expirer.set(r.topic,0):await this.client.core.relayer.subscriber.unsubscribe(r.topic);this.logger.info(`Inactive pairings cleared: ${t.length}`)}}abortPairingAttempt(){this.shouldAbortPairingAttempt=!0}async checkStorage(){if(this.namespaces=await this.getFromStore("namespaces"),this.optionalNamespaces=await this.getFromStore("optionalNamespaces")||{},this.client.session.length){const e=this.client.session.keys.length-1;this.session=this.client.session.get(this.client.session.keys[e]),this.createProviders()}}async initialize(){this.logger.trace("Initialized"),await this.createClient(),await this.checkStorage(),this.registerEventListeners()}async createClient(){this.client=this.providerOpts.client||await Nu.init({logger:this.providerOpts.logger||Cu,relayUrl:this.providerOpts.relayUrl||"wss://relay.walletconnect.com",projectId:this.providerOpts.projectId,metadata:this.providerOpts.metadata,storageOptions:this.providerOpts.storageOptions,name:this.providerOpts.name}),this.logger.trace("SignClient Initialized")}createProviders(){if(!this.client)throw new Error("Sign Client not initialized");if(!this.session)throw new Error("Session not initialized. Please call connect() before enable()");const e=[...new Set(Object.keys(this.session.namespaces).map((e=>Mn(e))))];Zu("client",this.client),Zu("events",this.events),Zu("disableProviderPing",this.disableProviderPing),e.forEach((e=>{if(!this.session)return;const t=function(e,t){const r=Object.keys(t.namespaces).filter((t=>t.includes(e)));if(!r.length)return[];const n=[];return r.forEach((e=>{const r=t.namespaces[e].accounts;n.push(...r)})),n}(e,this.session),r=Fu(t),n=function(e={},t={}){const r=Gu(e),n=Gu(t);return Lu.exports.merge(r,n)}(this.namespaces,this.optionalNamespaces),i=dh(ph({},n[e]),{accounts:t,chains:r});switch(e){case"eip155":this.rpcProviders[e]=new eh({namespace:i});break;case"solana":this.rpcProviders[e]=new th({namespace:i});break;case"cosmos":this.rpcProviders[e]=new rh({namespace:i});break;case"polkadot":this.rpcProviders[e]=new Qu({namespace:i});break;case"cip34":this.rpcProviders[e]=new nh({namespace:i});break;case"elrond":this.rpcProviders[e]=new ih({namespace:i});break;case"multiversx":this.rpcProviders[e]=new sh({namespace:i})}}))}registerEventListeners(){if(typeof this.client>"u")throw new Error("Sign Client is not initialized");this.client.on("session_ping",(e=>{this.events.emit("session_ping",e)})),this.client.on("session_event",(e=>{const{params:t}=e,{event:r}=t;if("accountsChanged"===r.name){const e=r.data;e&&qn(e)&&this.events.emit("accountsChanged",e.map(Wu))}else"chainChanged"===r.name?this.onChainChanged(t.chainId):this.events.emit(r.name,r.data);this.events.emit("session_event",e)})),this.client.on("session_update",(({topic:e,params:t})=>{var r;const{namespaces:n}=t,i=null==(r=this.client)?void 0:r.session.get(e);this.session=dh(ph({},i),{namespaces:n}),this.onSessionUpdate(),this.events.emit("session_update",{topic:e,params:t})})),this.client.on("session_delete",(async e=>{await this.cleanup(),this.events.emit("session_delete",e),this.events.emit("disconnect",dh(ph({},$n("USER_DISCONNECTED")),{data:e.topic}))})),this.on(Ru,(e=>{this.onChainChanged(e,!0)}))}getProvider(e){if(!this.rpcProviders[e])throw new Error(`Provider not found: ${e}`);return this.rpcProviders[e]}onSessionUpdate(){Object.keys(this.rpcProviders).forEach((e=>{var t;this.getProvider(e).updateNamespace(null==(t=this.session)?void 0:t.namespaces[e])}))}setNamespaces(e){const{namespaces:t,optionalNamespaces:r,sessionProperties:n}=e;t&&Object.keys(t).length&&(this.namespaces=t),r&&Object.keys(r).length&&(this.optionalNamespaces=r),this.sessionProperties=n,this.persist("namespaces",t),this.persist("optionalNamespaces",r)}validateChain(e){const[t,r]=e?.split(":")||["",""];if(!this.namespaces||!Object.keys(this.namespaces).length)return[t,r];if(t&&!Object.keys(this.namespaces||{}).map((e=>Mn(e))).includes(t))throw new Error(`Namespace '${t}' is not configured. Please call connect() first with namespace config.`);if(t&&r)return[t,r];const n=Mn(Object.keys(this.namespaces)[0]);return[n,this.rpcProviders[n].getDefaultChain()]}async requestAccounts(){const[e]=this.validateChain();return await this.getProvider(e).requestAccounts()}onChainChanged(e,t=!1){var r;if(!this.namespaces)return;const[n,i]=this.validateChain(e);t||this.getProvider(n).setDefaultChain(i),(null!=(r=this.namespaces[n])?r:this.namespaces[`${n}:${i}`]).defaultChain=i,this.persist("namespaces",this.namespaces),this.events.emit("chainChanged",i)}onConnect(){this.createProviders(),this.events.emit("connect",{session:this.session})}async cleanup(){this.session=void 0,this.namespaces=void 0,this.optionalNamespaces=void 0,this.sessionProperties=void 0,this.persist("namespaces",void 0),this.persist("optionalNamespaces",void 0),this.persist("sessionProperties",void 0),await this.cleanupPendingPairings({deletePairings:!0})}persist(e,t){this.client.core.storage.setItem(`${Tu}/${e}`,t)}async getFromStore(e){return await this.client.core.storage.getItem(`${Tu}/${e}`)}}const yh=gh,vh=["eth_sendTransaction","personal_sign"],_h=["eth_accounts","eth_requestAccounts","eth_sendRawTransaction","eth_sign","eth_signTransaction","eth_signTypedData","eth_signTypedData_v3","eth_signTypedData_v4","wallet_switchEthereumChain","wallet_addEthereumChain","wallet_getPermissions","wallet_requestPermissions","wallet_registerOnboarding","wallet_watchAsset","wallet_scanQRCode"],mh=["chainChanged","accountsChanged"],wh=["message","disconnect","connect"];var bh=Object.defineProperty,Eh=Object.defineProperties,Sh=Object.getOwnPropertyDescriptors,Ih=Object.getOwnPropertySymbols,Oh=Object.prototype.hasOwnProperty,Ph=Object.prototype.propertyIsEnumerable,Nh=(e,t,r)=>t in e?bh(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,Ah=(e,t)=>{for(var r in t||(t={}))Oh.call(t,r)&&Nh(e,r,t[r]);if(Ih)for(var r of Ih(t))Ph.call(t,r)&&Nh(e,r,t[r]);return e},xh=(e,t)=>Eh(e,Sh(t));function Ch(e){return Number(e[0].split(":")[1])}function Th(e){return`0x${e.toString(16)}`}class Rh{constructor(){this.events=new e.EventEmitter,this.namespace="eip155",this.accounts=[],this.chainId=1,this.STORAGE_KEY="wc@2:ethereum_provider:",this.on=(e,t)=>(this.events.on(e,t),this),this.once=(e,t)=>(this.events.once(e,t),this),this.removeListener=(e,t)=>(this.events.removeListener(e,t),this),this.off=(e,t)=>(this.events.off(e,t),this),this.parseAccount=e=>this.isCompatibleChainId(e)?this.parseAccountId(e).address:e,this.signer={},this.rpc={}}static async init(e){const t=new Rh;return await t.initialize(e),t}async request(e){return await this.signer.request(e,this.formatChainId(this.chainId))}sendAsync(e,t){this.signer.sendAsync(e,t,this.formatChainId(this.chainId))}get connected(){return!!this.signer.client&&this.signer.client.core.relayer.connected}get connecting(){return!!this.signer.client&&this.signer.client.core.relayer.connecting}async enable(){return this.session||await this.connect(),await this.request({method:"eth_requestAccounts"})}async connect(e){if(!this.signer.client)throw new Error("Provider not initialized. Call init() first");this.loadConnectOpts(e);const{required:t,optional:r}=function(e){const{chains:t,optionalChains:r,methods:n,optionalMethods:i,events:s,optionalEvents:o,rpcMap:a}=e;if(!qn(t))throw new Error("Invalid chains");const c={chains:t,methods:n||vh,events:s||mh,rpcMap:Ah({},t.length?{[Ch(t)]:a[Ch(t)]}:{})},u=s?.filter((e=>!mh.includes(e))),h=n?.filter((e=>!vh.includes(e)));if(!(r||o||i||null!=u&&u.length||null!=h&&h.length))return{required:t.length?c:void 0};const l={chains:[...new Set(u?.length&&h?.length||!r?c.chains.concat(r||[]):r)],methods:[...new Set(c.methods.concat(null!=i&&i.length?i:_h))],events:[...new Set(c.events.concat(o||wh))],rpcMap:a};return{required:t.length?c:void 0,optional:r.length?l:void 0}}(this.rpc);try{const n=await new Promise((async(n,i)=>{var s;this.rpc.showQrModal&&(null==(s=this.modal)||s.subscribeModal((e=>{!e.open&&!this.signer.session&&(this.signer.abortPairingAttempt(),i(new Error("Connection request reset. Please try again.")))}))),await this.signer.connect(xh(Ah({namespaces:Ah({},t&&{[this.namespace]:t})},r&&{optionalNamespaces:{[this.namespace]:r}}),{pairingTopic:e?.pairingTopic})).then((e=>{n(e)})).catch((e=>{i(new Error(e.message))}))}));if(!n)return;this.setChainIds(this.rpc.chains);const i=function(e,t=[]){const r=[];return Object.keys(e).forEach((n=>{if(t.length&&!t.includes(n))return;const i=e[n];r.push(...i.accounts)})),r}(n.namespaces,[this.namespace]);this.setAccounts(i),this.events.emit("connect",{chainId:Th(this.chainId)})}catch(e){throw this.signer.logger.error(e),e}finally{this.modal&&this.modal.closeModal()}}async disconnect(){this.session&&await this.signer.disconnect(),this.reset()}get isWalletConnect(){return!0}get session(){return this.signer.session}registerEventListeners(){this.signer.on("session_event",(e=>{const{params:t}=e,{event:r}=t;"accountsChanged"===r.name?(this.accounts=this.parseAccounts(r.data),this.events.emit("accountsChanged",this.accounts)):"chainChanged"===r.name?this.setChainId(this.formatChainId(r.data)):this.events.emit(r.name,r.data),this.events.emit("session_event",e)})),this.signer.on("chainChanged",(e=>{const t=parseInt(e);this.chainId=t,this.events.emit("chainChanged",Th(this.chainId)),this.persist()})),this.signer.on("session_update",(e=>{this.events.emit("session_update",e)})),this.signer.on("session_delete",(e=>{this.reset(),this.events.emit("session_delete",e),this.events.emit("disconnect",xh(Ah({},$n("USER_DISCONNECTED")),{data:e.topic,name:"USER_DISCONNECTED"}))})),this.signer.on("display_uri",(e=>{var t,r;this.rpc.showQrModal&&(null==(t=this.modal)||t.closeModal(),null==(r=this.modal)||r.openModal({uri:e})),this.events.emit("display_uri",e)}))}switchEthereumChain(e){this.request({method:"wallet_switchEthereumChain",params:[{chainId:e.toString(16)}]})}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)));t.length&&(this.chainId=t[0],this.events.emit("chainChanged",Th(this.chainId)),this.persist())}setChainId(e){if(this.isCompatibleChainId(e)){const t=this.parseChainId(e);this.chainId=t,this.switchEthereumChain(t)}}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)}getRpcConfig(e){var t,r;const n=null!=(t=e?.chains)?t:[],i=null!=(r=e?.optionalChains)?r:[],s=n.concat(i);if(!s.length)throw new Error("No chains specified in either `chains` or `optionalChains`");const o=n.length?e?.methods||vh:[],a=n.length?e?.events||mh:[],c=e?.optionalMethods||[],u=e?.optionalEvents||[],h=e?.rpcMap||this.buildRpcMap(s,e.projectId),l=e?.qrModalOptions||void 0;return{chains:n?.map((e=>this.formatChainId(e))),optionalChains:i.map((e=>this.formatChainId(e))),methods:o,events:a,optionalMethods:c,optionalEvents:u,rpcMap:h,showQrModal:!(null==e||!e.showQrModal),qrModalOptions:l,projectId:e.projectId,metadata:e.metadata}}buildRpcMap(e,t){const r={};return e.forEach((e=>{r[e]=this.getRpcUrl(e,t)})),r}async initialize(e){if(this.rpc=this.getRpcConfig(e),this.chainId=this.rpc.chains.length?Ch(this.rpc.chains):Ch(this.rpc.optionalChains),this.signer=await yh.init({projectId:this.rpc.projectId,metadata:this.rpc.metadata,disableProviderPing:e.disableProviderPing,relayUrl:e.relayUrl,storageOptions:e.storageOptions}),this.registerEventListeners(),await this.loadPersistedSession(),this.rpc.showQrModal){let e;try{const{WalletConnectModal:t}=await Promise.resolve().then((function(){return require("./index-9f2a69d5.cjs")})).then((function(e){return e.index}));e=t}catch{throw new Error("To use QR modal, please install @walletconnect/modal package")}if(e)try{this.modal=new e(Ah({walletConnectVersion:2,projectId:this.rpc.projectId,standaloneChains:this.rpc.chains},this.rpc.qrModalOptions))}catch(e){throw this.signer.logger.error(e),new Error("Could not generate WalletConnectModal Instance")}}}loadConnectOpts(e){if(!e)return;const{chains:t,optionalChains:r,rpcMap:n}=e;t&&qn(t)&&(this.rpc.chains=t.map((e=>this.formatChainId(e))),t.forEach((e=>{this.rpc.rpcMap[e]=n?.[e]||this.getRpcUrl(e)}))),r&&qn(r)&&(this.rpc.optionalChains=[],this.rpc.optionalChains=r?.map((e=>this.formatChainId(e))),r.forEach((e=>{this.rpc.rpcMap[e]=n?.[e]||this.getRpcUrl(e)})))}getRpcUrl(e,t){var r;return(null==(r=this.rpc.rpcMap)?void 0:r[e])||`https://rpc.walletconnect.com/v1/?chainId=eip155:${e}&projectId=${t||this.rpc.projectId}`}async loadPersistedSession(){if(!this.session)return;const e=await this.signer.client.core.storage.getItem(`${this.STORAGE_KEY}/chainId`),t=this.session.namespaces[`${this.namespace}:${e}`]?this.session.namespaces[`${this.namespace}:${e}`]:this.session.namespaces[this.namespace];this.setChainIds(e?[this.formatChainId(e)]:t?.accounts),this.setAccounts(t?.accounts)}reset(){this.chainId=1,this.accounts=[]}persist(){this.session&&this.signer.client.core.storage.setItem(`${this.STORAGE_KEY}/chainId`,this.chainId)}parseAccounts(e){return"string"==typeof e||e instanceof String?[this.parseAccount(e)]:e.map((e=>this.parseAccount(e)))}}const jh=Rh;exports.EthereumProvider=jh,exports.OPTIONAL_EVENTS=wh,exports.OPTIONAL_METHODS=_h,exports.REQUIRED_EVENTS=mh,exports.REQUIRED_METHODS=vh,exports.default=Rh;