PageSourceSearch

https://openenterprise.ai/_next/static/chunks/1261.e0863fb586d1cc98.js

js openenterprise.ai collected 2026-10-04 10:07:00 UTC 455,483 bytes, 24 lines download raw bytes

1(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1261],{383:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ONE_THOUSAND=t.ONE_HUNDRED=void 0,t.ONE_HUNDRED=100,t.ONE_THOUSAND=1e3},3536:(e,t,r)=>{"use strict";t.g=void 0;let i=r(57247);t.g=function(){let e,t,r;try{e=i.getDocumentOrThrow(),t=i.getLocationOrThrow()}catch(e){return null}function s(...t){let r=e.getElementsByTagName("meta");for(let e=0;e<r.length;e++){let i=r[e],s=["itemprop","property","name"].map(e=>i.getAttribute(e)).filter(e=>!!e&&t.includes(e));if(s.length&&s){let e=i.getAttribute("content");if(e)return e}}return""}let n=((r=s("name","og:site_name","og:title","twitter:title"))||(r=e.title),r),o=s("description","og:description","twitter:description","keywords"),a=t.origin;return{description:o,url:a,icons:function(){let r=e.getElementsByTagName("link"),i=[];for(let e=0;e<r.length;e++){let s=r[e],n=s.getAttribute("rel");if(n&&n.toLowerCase().indexOf("icon")>-1){let e=s.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{let i=t.pathname.split("/");i.pop(),r+=i.join("/")+"/"+e}i.push(r)}else if(0===e.indexOf("//")){let r=t.protocol+e;i.push(r)}else i.push(e)}}return i}(),name:n}}},3685:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});let i=r(83227);i.__exportStar(r(5498),t),i.__exportStar(r(34298),t)},5498:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.delay=void 0,t.delay=function(e){return new Promise(t=>{setTimeout(()=>{t(!0)},e)})}},12581:(e,t,r)=>{"use strict";function i(e,{dir:t="left"}={}){let r="string"==typeof e?e.replace("0x",""):e,s=0;for(let e=0;e<r.length-1;e++)if("0"===r["left"===t?e:r.length-e-1].toString())s++;else break;return(r="left"===t?r.slice(s):r.slice(0,r.length-s),"string"==typeof e)?(1===r.length&&"right"===t&&(r=`${r}0`),`0x${r.length%2==1?`0${r}`:r}`):r}r.d(t,{B:()=>i})},24393:(e,t,r)=>{"use strict";r.r(t),r.d(t,{__assign:()=>n,__asyncDelegator:()=>v,__asyncGenerator:()=>w,__asyncValues:()=>E,__await:()=>m,__awaiter:()=>h,__classPrivateFieldGet:()=>O,__classPrivateFieldSet:()=>_,__createBinding:()=>d,__decorate:()=>a,__exportStar:()=>f,__extends:()=>s,__generator:()=>u,__importDefault:()=>S,__importStar:()=>
1I,__makeTemplateObject:()=>x,__metadata:()=>c,__param:()=>l,__read:()=>g,__rest:()=>o,__spread:()=>y,__spreadArrays:()=>b,__values:()=>p});var i=function(e,t){return(i=Object.setPrototypeOf||({__proto__:[]})instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)};function s(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var n=function(){return(n=Object.assign||function(e){for(var t,r=1,i=arguments.length;r<i;r++)for(var s in t=arguments[r])Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s]);return e}).apply(this,arguments)};function o(e,t){var r={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&0>t.indexOf(i)&&(r[i]=e[i]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var s=0,i=Object.getOwnPropertySymbols(e);s<i.length;s++)0>t.indexOf(i[s])&&Object.prototype.propertyIsEnumerable.call(e,i[s])&&(r[i[s]]=e[i[s]]);return r}function a(e,t,r,i){var s,n=arguments.length,o=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(s=e[a])&&(o=(n<3?s(o):n>3?s(t,r,o):s(t,r))||o);return n>3&&o&&Object.defineProperty(t,r,o),o}function l(e,t){return function(r,i){t(r,i,e)}}function c(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function h(e,t,r,i){return new(r||(r=Promise))(function(s,n){function o(e){try{l(i.next(e))}catch(e){n(e)}}function a(e){try{l(i.throw(e))}catch(e){n(e)}}function l(e){var t;e.done?s(e.value):((t=e.value)instanceof r?t:new r(function(e){e(t)})).then(o,a)}l((i=i.apply(e,t||[])).next())})}function u(e,t){var r,i,s,n,o={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return n={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(n[Symbol.iterator]=function(){return this}),n;function a(n){return function(a){var l=[n,a];if(r)throw TypeError("Generator is already executing.");for(;o;)try{if(r=1,i&&(s=2&l[0]?i.return:l[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,l[1])).done)return s;switch(i=0,s&&(l=[2&l[0],s.value]),l[0]){case 0:case 1:s=l;break;case 4:return o.label++,{value:l[1],done:!1};case 5:o.label++,i=l[1],l=[0];continue;case 7:l=o.ops.pop(),o.trys.pop();continue;default:if(!(s=(s=o.trys).length>0&&s[s.length-1])&&(6===l[0]||2===l[0])){o=0;continue}if(3===l[0]&&(!s||l[1]>s[0]&&l[1]<s[3])){o.label=l[1];break}if(6===l[0]&&o.label<s[1]){o.label=s[1],s=l;break}if(s&&o.label<s[2]){o.label=s[2],o.ops.push(l);break}s[2]&&o.ops.pop(),o.trys.pop();continue}l=t.call(e,o)}catch(e){l=[6,e],i=0}finally{r=s=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}function d(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}function f(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||(t[r]=e[r])}function p(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],i=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&i>=e.length&&(e=void 0),{value:e&&e[i++],done:!e}}};throw TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function g(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var i,s,n=r.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(i=n.next()).done;)o.push(i.value)}catch(e){s={error:e}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return o}function y(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(g(arguments[t]));return e}function b(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;for(var i=Array(e),s=0,t=0;t<r;t++)for(var n=arguments[t],o=0,a=n.length;o<a;o++,s++)i[s]=n[o];return i}function m(e){return this instanceof m?(this.v=e,this):new m(e)}function w(e,t,r){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var i,s=r.apply(e,t||[]),n=[];return i={},o("next"),o("throw"),o("return"),i[Symbol.asyncIterator]=function(){return this},i;function o(e){s[e]&&(i[e]=function(t){return new Promise(function(r,i){n.push([e,t,r,i])>1||a(e,t)})})}function a(e,t){try{var r;(r=s[e](t)).value instanceof m?Promise.resolve(r.value.v).then(l,c):h(n[0][2],r)}catch(e){h(n[0][3],e)}}function l(e){a("next",e)}function c(e){a("throw",e)}function h(e,t){e(t),n.shift(),n.length&&a(n[0][0],n[0][1])}}function v(e){var t,r;return t={},i("next"),i("throw",function(e){throw e}),i("return"),t[Symbol.iterator]=function(){return this},t;function i(i,s){t[i]=e[i]?function(t){return(r=!r)?{value:m(e[i](t)),done:"return"===i}:s?s(t):t}:s}}function E(e){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=p(e),t={},i("next"),i("throw"),i("return"),t[Symbol.asyncIterator]=function(){return this},t);function i(r){t[r]=e[r]&&function(t){return new Promise(function(i,s){var n,o,a;n=i,o=s,a=(t=e[r](t)).done,Promise.resolve(t.value).then(function(e){n({value:e,done:a})},o)})}}}function x(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}
1function I(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function S(e){return e&&e.__esModule?e:{default:e}}function O(e,t){if(!t.has(e))throw TypeError("attempted to get private field on non-instance");return t.get(e)}function _(e,t,r){if(!t.has(e))throw TypeError("attempted to set private field on non-instance");return t.set(e,r),r}},27238:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ONE_YEAR=t.FOUR_WEEKS=t.THREE_WEEKS=t.TWO_WEEKS=t.ONE_WEEK=t.THIRTY_DAYS=t.SEVEN_DAYS=t.FIVE_DAYS=t.THREE_DAYS=t.ONE_DAY=t.TWENTY_FOUR_HOURS=t.TWELVE_HOURS=t.SIX_HOURS=t.THREE_HOURS=t.ONE_HOUR=t.SIXTY_MINUTES=t.THIRTY_MINUTES=t.TEN_MINUTES=t.FIVE_MINUTES=t.ONE_MINUTE=t.SIXTY_SECONDS=t.THIRTY_SECONDS=t.TEN_SECONDS=t.FIVE_SECONDS=t.ONE_SECOND=void 0,t.ONE_SECOND=1,t.FIVE_SECONDS=5,t.TEN_SECONDS=10,t.THIRTY_SECONDS=30,t.SIXTY_SECONDS=60,t.ONE_MINUTE=t.SIXTY_SECONDS,t.FIVE_MINUTES=5*t.ONE_MINUTE,t.TEN_MINUTES=10*t.ONE_MINUTE,t.THIRTY_MINUTES=30*t.ONE_MINUTE,t.SIXTY_MINUTES=60*t.ONE_MINUTE,t.ONE_HOUR=t.SIXTY_MINUTES,t.THREE_HOURS=3*t.ONE_HOUR,t.SIX_HOURS=6*t.ONE_HOUR,t.TWELVE_HOURS=12*t.ONE_HOUR,t.TWENTY_FOUR_HOURS=24*t.ONE_HOUR,t.ONE_DAY=t.TWENTY_FOUR_HOURS,t.THREE_DAYS=3*t.ONE_DAY,t.FIVE_DAYS=5*t.ONE_DAY,t.SEVEN_DAYS=7*t.ONE_DAY,t.THIRTY_DAYS=30*t.ONE_DAY,t.ONE_WEEK=t.SEVEN_DAYS,t.TWO_WEEKS=2*t.ONE_WEEK,t.THREE_WEEKS=3*t.ONE_WEEK,t.FOUR_WEEKS=4*t.ONE_WEEK,t.ONE_YEAR=365*t.ONE_DAY},29845:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});let i=r(83227);i.__exportStar(r(383),t),i.__exportStar(r(27238),t)},34298:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.fromMiliseconds=t.toMiliseconds=void 0;let i=r(29845);t.toMiliseconds=function(e){return e*i.ONE_THOUSAND},t.fromMiliseconds=function(e){return Math.floor(e/i.ONE_THOUSAND)}},44023:(e,t,r)=>{"use strict";r.d(t,{N9:()=>n,zZ:()=>o});var i=r(85566),s=r(52757);function n(e){let{chainId:t}=e;return(0,s.Vv)([(e,r,i,s)=>"solana_chainId"===e.method?(r.result=t,s()):i(),(t,r,i,s)=>"solana_provider_config"===t.method?(r.result=e,s()):i()])}function o(e){let{rpcTarget:t}=e,r=(0,i.N)({rpcTarget:t});return{networkMiddleware:(0,s.Vv)([n(e),r]),fetchMiddleware:r}}},44546:(e,t,r)=>{"use strict";r.d(t,{Fl:()=>n,NV:()=>o,ii:()=>s});var i=r(66568);class s extends i.C{constructor({offset:e,position:t,size:r}){super(`Slice ${"start"===t?"starting":"ending"} at offset "${e}" is out-of-bounds (size: ${r}).`,{name:"SliceOffsetOutOfBoundsError"})}}class n extends i.C{constructor({size:e,targetSize:t,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (${e}) exceeds padding size (${t}).`,{name:"SizeExceedsPaddingSizeError"})}}class o extends i.C{constructor({size:e,targetSize:t,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} is expected to be ${t} ${r} long, but is ${e} ${r} long.`,{name:"InvalidBytesLengthError"})}}},45082:(e,t,r)=>{"use strict";function i(){return(null===r.g||void 0===r.g?void 0:r.g.crypto)||(null===r.g||void 0===r.g?void 0:r.g.msCrypto)||{}}function s(){let e=i();return e.subtle||e.webkitSubtle}Object.defineProperty(t,"__esModule",{value:!0}),t.isBrowserCryptoAvailable=t.getSubtleCrypto=t.getBrowerCrypto=void 0,t.getBrowerCrypto=i,t.getSubtleCrypto=s,t.isBrowserCryptoAvailable=function(){return!!i()&&!!s()}},45199:(e,t,r)=>{let i=r(94762);function s(e,t,r){let i=e[t]+e[r],s=e[t+1]+e[r+1];i>=0x100000000&&s++,e[t]=i,e[t+1]=s}function n(e,t,r,i){let s=e[t]+r;r<0&&(s+=0x100000000);let n=e[t+1]+i;s>
1=0x100000000&&n++,e[t]=s,e[t+1]=n}function o(e,t){return e[t]^e[t+1]<<8^e[t+2]<<16^e[t+3]<<24}function a(e,t,r,i,o,a){let l=u[o],c=u[o+1],d=u[a],f=u[a+1];s(h,e,t),n(h,e,l,c);let p=h[i]^h[e],g=h[i+1]^h[e+1];h[i]=g,h[i+1]=p,s(h,r,i),p=h[t]^h[r],g=h[t+1]^h[r+1],h[t]=p>>>24^g<<8,h[t+1]=g>>>24^p<<8,s(h,e,t),n(h,e,d,f),p=h[i]^h[e],g=h[i+1]^h[e+1],h[i]=p>>>16^g<<16,h[i+1]=g>>>16^p<<16,s(h,r,i),p=h[t]^h[r],g=h[t+1]^h[r+1],h[t]=g>>>31^p<<1,h[t+1]=p>>>31^g<<1}let l=new Uint32Array([0xf3bcc908,0x6a09e667,0x84caa73b,0xbb67ae85,0xfe94f82b,0x3c6ef372,0x5f1d36f1,0xa54ff53a,0xade682d1,0x510e527f,0x2b3e6c1f,0x9b05688c,0xfb41bd6b,0x1f83d9ab,0x137e2179,0x5be0cd19]),c=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3].map(function(e){return 2*e})),h=new Uint32Array(32),u=new Uint32Array(32);function d(e,t){let r=0;for(r=0;r<16;r++)h[r]=e.h[r],h[r+16]=l[r];for(h[24]=h[24]^e.t,h[25]=h[25]^e.t/0x100000000,t&&(h[28]=~h[28],h[29]=~h[29]),r=0;r<32;r++)u[r]=o(e.b,4*r);for(r=0;r<12;r++)a(0,8,16,24,c[16*r+0],c[16*r+1]),a(2,10,18,26,c[16*r+2],c[16*r+3]),a(4,12,20,28,c[16*r+4],c[16*r+5]),a(6,14,22,30,c[16*r+6],c[16*r+7]),a(0,10,20,30,c[16*r+8],c[16*r+9]),a(2,12,22,24,c[16*r+10],c[16*r+11]),a(4,14,16,26,c[16*r+12],c[16*r+13]),a(6,8,18,28,c[16*r+14],c[16*r+15]);for(r=0;r<16;r++)e.h[r]=e.h[r]^h[r]^h[r+16]}let f=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function p(e,t,r,i){if(0===e||e>64)throw Error("Illegal output length, expected 0 < length <= 64");if(t&&t.length>64)throw Error("Illegal key, expected Uint8Array with 0 < length <= 64");if(r&&16!==r.length)throw Error("Illegal salt, expected Uint8Array with length is 16");if(i&&16!==i.length)throw Error("Illegal personal, expected Uint8Array with length is 16");let s={b:new Uint8Array(128),h:new Uint32Array(16),t:0,c:0,outlen:e};f.fill(0),f[0]=e,t&&(f[1]=t.length),f[2]=1,f[3]=1,r&&f.set(r,32),i&&f.set(i,48);for(let e=0;e<16;e++)s.h[e]=l[e]^o(f,4*e);return t&&(g(s,t),s.c=128),s}function g(e,t){for(let r=0;r<t.length;r++)128===e.c&&(e.t+=e.c,d(e,!1),e.c=0),e.b[e.c++]=t[r]}function y(e){for(e.t+=e.c;e.c<128;)e.b[e.c++]=0;d(e,!0);let t=new Uint8Array(e.outlen);for(let r=0;r<e.outlen;r++)t[r]=e.h[r>>2]>>8*(3&r);return t}function b(e,t,r,s,n){r=r||64,e=i.normalizeInput(e),s&&(s=i.normalizeInput(s)),n&&(n=i.normalizeInput(n));let o=p(r,t,s,n);return g(o,e),y(o)}e.exports={blake2b:b,blake2bHex:function(e,t,r,s,n){let o=b(e,t,r,s,n);return i.toHex(o)},blake2bInit:p,blake2bUpdate:g,blake2bFinal:y}},45696:(e,t,r)=>{"use strict";r.d(t,{E:()=>s});var i=r(89762);function s(e){return(0,i.q)(e,{strict:!1})?Math.ceil((e.length-2)/2):e.length}},52453:(e,t,r)=>{"use strict";r.d(t,{Fo:()=>a});var i=r(65803),s=r(52757),n=r(16749);function o(e,t){return(0,i.jg)(async(r,i,s)=>{let{method:n}=r;if(n!==e)return s();if(!t)throw Error(`WalletMiddleware - ${e} not provided`);i.result=await t(r)})}function a(e){let{getAccounts:t,requestAccounts:r,signTransaction:a,signAndSendTransaction:l,signAllTransactions:c,signMessage:h,getPrivateKey:u,getSecretKey:d,getPublicKey:f}=e;return(0,s.Vv)([function({requestAccounts:e}){return(0,i.jg)(async(t,r,i)=>{let{method:s}=t;if(s!==n.zl.SOLANA_REQUEST_ACCOUNTS)return i();if(!e)throw Error("WalletMiddleware - opts.requestAccounts not provided");r.result=await e(t)})}({requestAccounts:r}),function({getAccounts:e}){return(0,i.jg)(async(t,r,i)=>{let{method:s}=t;if(s!==n.zl.GET_ACCOUNTS)return i();if(!e)throw Error("WalletMiddleware - opts.getAccounts not provided");r.result=await e(t)})}({getAccounts:t}),o(n.zl.SIGN_TRANSACTION,a),o(n.zl.SEND_TRANSACTION,l),o(n.zl.SIGN_ALL_TRANSACTIONS,c),o(n.zl.SIGN_MESSAGE,h),o(n.zl.SOLANA_PRIVATE_KEY,u),o(n.zl.PRIVATE_KEY,u),o("public_key",f),o("solanaPublicKey",f),o("solanaSecretKey",d)])}},57247:(e,t)=>{"use strict";function r(e){let t;return"u">typeof window&&void 0!==window[e]&&(t=window[e]),t}function i(e){let t=r(e);if(!t)throw Error(`${e} is not defined in Window`);return t}
1Object.defineProperty(t,"__esModule",{value:!0}),t.getLocalStorage=t.getLocalStorageOrThrow=t.getCrypto=t.getCryptoOrThrow=t.getLocation=t.getLocationOrThrow=t.getNavigator=t.getNavigatorOrThrow=t.getDocument=t.getDocumentOrThrow=t.getFromWindowOrThrow=t.getFromWindow=void 0,t.getFromWindow=r,t.getFromWindowOrThrow=i,t.getDocumentOrThrow=function(){return i("document")},t.getDocument=function(){return r("document")},t.getNavigatorOrThrow=function(){return i("navigator")},t.getNavigator=function(){return r("navigator")},t.getLocationOrThrow=function(){return i("location")},t.getLocation=function(){return r("location")},t.getCryptoOrThrow=function(){return i("crypto")},t.getCrypto=function(){return r("crypto")},t.getLocalStorageOrThrow=function(){return i("localStorage")},t.getLocalStorage=function(){return r("localStorage")}},66347:(e,t,r)=>{"use strict";r.d(t,{H2:()=>o,Ty:()=>s,u:()=>a,xO:()=>n});var i=r(66568);class s extends i.C{constructor({max:e,min:t,signed:r,size:i,value:s}){super(`Number "${s}" is not in safe ${i?`${8*i}-bit ${r?"signed":"unsigned"} `:""}integer range ${e?`(${t} to ${e})`:`(above ${t})`}`,{name:"IntegerOutOfRangeError"})}}class n extends i.C{constructor(e){super(`Bytes value "${e}" is not a valid boolean. The bytes array must contain a single byte of either a 0 or 1 value.`,{name:"InvalidBytesBooleanError"})}}class o extends i.C{constructor(e){super(`Hex value "${e}" is not a valid boolean. The hex value must be "0x0" (false) or "0x1" (true).`,{name:"InvalidHexBooleanError"})}}i.C;class a extends i.C{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed ${t} bytes. Given size: ${e} bytes.`,{name:"SizeOverflowError"})}}},66568:(e,t,r)=>{"use strict";r.d(t,{C:()=>n});let i="2.46.3",s={getDocsUrl:({docsBaseUrl:e,docsPath:t="",docsSlug:r})=>t?`${e??"https://viem.sh"}${t}${r?`#${r}`:""}`:void 0,version:`viem@${i}`};class n extends Error{constructor(e,t={}){const r=t.cause instanceof n?t.cause.details:t.cause?.message?t.cause.message:t.details,o=t.cause instanceof n&&t.cause.docsPath||t.docsPath,a=s.getDocsUrl?.({...t,docsPath:o});super([e||"An error occurred.","",...t.metaMessages?[...t.metaMessages,""]:[],...a?[`Docs: ${a}`]:[],...r?[`Details: ${r}`]:[],...s.version?[`Version: ${s.version}`]:[]].join("\n"),t.cause?{cause:t.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"metaMessages",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),this.details=r,this.docsPath=o,this.metaMessages=t.metaMessages,this.name=t.name??this.name,this.shortMessage=e,this.version=i}walk(e){return function e(t,r){return r?.(t)?t:t&&"object"==typeof t&&"cause"in t&&void 0!==t.cause?e(t.cause,r):r?null:t}(this,e)}}},68939:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});let i=r(83227);i.__exportStar(r(3685),t),i.__exportStar(r(82940),t),i.__exportStar(r(78537),t),i.__exportStar(r(29845),t)},71594:(e,t,r)=>{let i=r(45199),s=r(83404);e.exports={blake2b:i.blake2b,blake2bHex:i.blake2bHex,blake2bInit:i.blake2bInit,blake2bUpdate:i.blake2bUpdate,blake2bFinal:i.blake2bFinal,blake2s:s.blake2s,blake2sHex:s.blake2sHex,blake2sInit:s.blake2sInit,blake2sUpdate:s.blake2sUpdate,blake2sFinal:s.blake2sFinal}},73636:e=>{"use strict";e.exports=function(){throw Error("ws does not work in the browser. Browser clients must use the native WebSocket object")}},77092:(e,t,r)=>{"use strict";r.d(t,{r:()=>i});let i=(e=>{if(e.length>=255)throw TypeError("Alphabet too long");let t=new Uint8Array(256);for(let e=0;e<t.length;e++)t[e]=255;for(let r=0;r<e.length;r++){let i=e.charAt(r),s=i.charCodeAt(0);if(255!==t[s])throw TypeError(`${i} is ambiguous`);t[s]=r}let r=e.length,i=e.charAt(0),s=Math.log(r)/Math.log(256),n=Math.log(256)/Math.log(r);function o(e){if("string"!=typeof e)throw TypeError("Expected String");if(0===e.length)return new Uint8Array;let n=0,o=0,a=0;for(;e[n]===i;)o++,n++;let l=(e.length-n)*s+1>>>0,c=new Uint8Array(l);for(;e[n];){let i=t[e.charCodeAt(n)];if(255===i)return;let s=0;for(let e=l-1;(0!==i||s<a)&&-1!==e;e--,s++)i+=r*c[e]>>>0,c[e]=i%256>>>0,i=i/256>>>0;if(0!==i)throw Error("Non-zero carry");a=s,n++}let h=l-a;for(;h!==l&&0===c[h];)h++;let u=new Uint8Array(o+(l-h)),d=o;for(;h!==l;)u[d++]=c[h++];return u}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 TypeError("Expected Uint8Array");if(0===t.length)return"";let s=0,o=0,a=0,l=t.length;for(;
1a!==l&&0===t[a];)a++,s++;let c=(l-a)*n+1>>>0,h=new Uint8Array(c);for(;a!==l;){let e=t[a],i=0;for(let t=c-1;(0!==e||i<o)&&-1!==t;t--,i++)e+=256*h[t]>>>0,h[t]=e%r>>>0,e=e/r>>>0;if(0!==e)throw Error("Non-zero carry");o=i,a++}let u=c-o;for(;u!==c&&0===h[u];)u++;let d=i.repeat(s);for(;u<c;++u)d+=e.charAt(h[u]);return d},decodeUnsafe:o,decode:function(e){let t=o(e);if(t)return t;throw Error(`Non-base${r} character`)}}})("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz")},78462:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.IWatch=void 0;class r{}t.IWatch=r},78537:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),r(83227).__exportStar(r(78462),t)},82940:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.Watch=void 0;class r{constructor(){this.timestamps=new Map}start(e){if(this.timestamps.has(e))throw Error(`Watch already started for label: ${e}`);this.timestamps.set(e,{started:Date.now()})}stop(e){let t=this.get(e);if(void 0!==t.elapsed)throw Error(`Watch already stopped for label: ${e}`);let r=Date.now()-t.started;this.timestamps.set(e,{started:t.started,elapsed:r})}get(e){let t=this.timestamps.get(e);if(void 0===t)throw Error(`No timestamp found for label: ${e}`);return t}elapsed(e){let t=this.get(e);return t.elapsed||Date.now()-t.started}}t.Watch=r,t.default=r},83227:(e,t,r)=>{"use strict";r.r(t),r.d(t,{__assign:()=>n,__asyncDelegator:()=>v,__asyncGenerator:()=>w,__asyncValues:()=>E,__await:()=>m,__awaiter:()=>h,__classPrivateFieldGet:()=>O,__classPrivateFieldSet:()=>_,__createBinding:()=>d,__decorate:()=>a,__exportStar:()=>f,__extends:()=>s,__generator:()=>u,__importDefault:()=>S,__importStar:()=>
1I,__makeTemplateObject:()=>x,__metadata:()=>c,__param:()=>l,__read:()=>g,__rest:()=>o,__spread:()=>y,__spreadArrays:()=>b,__values:()=>p});var i=function(e,t){return(i=Object.setPrototypeOf||({__proto__:[]})instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,t)};function s(e,t){function r(){this.constructor=e}i(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}var n=function(){return(n=Object.assign||function(e){for(var t,r=1,i=arguments.length;r<i;r++)for(var s in t=arguments[r])Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s]);return e}).apply(this,arguments)};function o(e,t){var r={};for(var i in e)Object.prototype.hasOwnProperty.call(e,i)&&0>t.indexOf(i)&&(r[i]=e[i]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols)for(var s=0,i=Object.getOwnPropertySymbols(e);s<i.length;s++)0>t.indexOf(i[s])&&Object.prototype.propertyIsEnumerable.call(e,i[s])&&(r[i[s]]=e[i[s]]);return r}function a(e,t,r,i){var s,n=arguments.length,o=n<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,r):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,r,i);else for(var a=e.length-1;a>=0;a--)(s=e[a])&&(o=(n<3?s(o):n>3?s(t,r,o):s(t,r))||o);return n>3&&o&&Object.defineProperty(t,r,o),o}function l(e,t){return function(r,i){t(r,i,e)}}function c(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)}function h(e,t,r,i){return new(r||(r=Promise))(function(s,n){function o(e){try{l(i.next(e))}catch(e){n(e)}}function a(e){try{l(i.throw(e))}catch(e){n(e)}}function l(e){var t;e.done?s(e.value):((t=e.value)instanceof r?t:new r(function(e){e(t)})).then(o,a)}l((i=i.apply(e,t||[])).next())})}function u(e,t){var r,i,s,n,o={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return n={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(n[Symbol.iterator]=function(){return this}),n;function a(n){return function(a){var l=[n,a];if(r)throw TypeError("Generator is already executing.");for(;o;)try{if(r=1,i&&(s=2&l[0]?i.return:l[0]?i.throw||((s=i.return)&&s.call(i),0):i.next)&&!(s=s.call(i,l[1])).done)return s;switch(i=0,s&&(l=[2&l[0],s.value]),l[0]){case 0:case 1:s=l;break;case 4:return o.label++,{value:l[1],done:!1};case 5:o.label++,i=l[1],l=[0];continue;case 7:l=o.ops.pop(),o.trys.pop();continue;default:if(!(s=(s=o.trys).length>0&&s[s.length-1])&&(6===l[0]||2===l[0])){o=0;continue}if(3===l[0]&&(!s||l[1]>s[0]&&l[1]<s[3])){o.label=l[1];break}if(6===l[0]&&o.label<s[1]){o.label=s[1],s=l;break}if(s&&o.label<s[2]){o.label=s[2],o.ops.push(l);break}s[2]&&o.ops.pop(),o.trys.pop();continue}l=t.call(e,o)}catch(e){l=[6,e],i=0}finally{r=s=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}function d(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]}function f(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||(t[r]=e[r])}function p(e){var t="function"==typeof Symbol&&Symbol.iterator,r=t&&e[t],i=0;if(r)return r.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&i>=e.length&&(e=void 0),{value:e&&e[i++],done:!e}}};throw TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function g(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var i,s,n=r.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(i=n.next()).done;)o.push(i.value)}catch(e){s={error:e}}finally{try{i&&!i.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return o}function y(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(g(arguments[t]));return e}function b(){for(var e=0,t=0,r=arguments.length;t<r;t++)e+=arguments[t].length;for(var i=Array(e),s=0,t=0;t<r;t++)for(var n=arguments[t],o=0,a=n.length;o<a;o++,s++)i[s]=n[o];return i}function m(e){return this instanceof m?(this.v=e,this):new m(e)}function w(e,t,r){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var i,s=r.apply(e,t||[]),n=[];return i={},o("next"),o("throw"),o("return"),i[Symbol.asyncIterator]=function(){return this},i;function o(e){s[e]&&(i[e]=function(t){return new Promise(function(r,i){n.push([e,t,r,i])>1||a(e,t)})})}function a(e,t){try{var r;(r=s[e](t)).value instanceof m?Promise.resolve(r.value.v).then(l,c):h(n[0][2],r)}catch(e){h(n[0][3],e)}}function l(e){a("next",e)}function c(e){a("throw",e)}function h(e,t){e(t),n.shift(),n.length&&a(n[0][0],n[0][1])}}function v(e){var t,r;return t={},i("next"),i("throw",function(e){throw e}),i("return"),t[Symbol.iterator]=function(){return this},t;function i(i,s){t[i]=e[i]?function(t){return(r=!r)?{value:m(e[i](t)),done:"return"===i}:s?s(t):t}:s}}function E(e){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=p(e),t={},i("next"),i("throw"),i("return"),t[Symbol.asyncIterator]=function(){return this},t);function i(r){t[r]=e[r]&&function(t){return new Promise(function(i,s){var n,o,a;n=i,o=s,a=(t=e[r](t)).done,Promise.resolve(t.value).then(function(e){n({value:e,done:a})},o)})}}}function x(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e}
1function I(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function S(e){return e&&e.__esModule?e:{default:e}}function O(e,t){if(!t.has(e))throw TypeError("attempted to get private field on non-instance");return t.get(e)}function _(e,t,r){if(!t.has(e))throw TypeError("attempted to set private field on non-instance");return t.set(e,r),r}},83404:(e,t,r)=>{let i=r(94762);function s(e,t,r,i,s,o){l[e]=l[e]+l[t]+s,l[i]=n(l[i]^l[e],16),l[r]=l[r]+l[i],l[t]=n(l[t]^l[r],12),l[e]=l[e]+l[t]+o,l[i]=n(l[i]^l[e],8),l[r]=l[r]+l[i],l[t]=n(l[t]^l[r],7)}function n(e,t){return e>>>t^e<<32-t}let o=new Uint32Array([0x6a09e667,0xbb67ae85,0x3c6ef372,0xa54ff53a,0x510e527f,0x9b05688c,0x1f83d9ab,0x5be0cd19]),a=new Uint8Array([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0]),l=new Uint32Array(16),c=new Uint32Array(16);function h(e,t){let r=0;for(r=0;r<8;r++)l[r]=e.h[r],l[r+8]=o[r];for(l[12]^=e.t,l[13]^=e.t/0x100000000,t&&(l[14]=~l[14]),r=0;r<16;r++){var i,n;c[r]=(i=e.b)[n=4*r]^i[n+1]<<8^i[n+2]<<16^i[n+3]<<24}for(r=0;r<10;r++)s(0,4,8,12,c[a[16*r+0]],c[a[16*r+1]]),s(1,5,9,13,c[a[16*r+2]],c[a[16*r+3]]),s(2,6,10,14,c[a[16*r+4]],c[a[16*r+5]]),s(3,7,11,15,c[a[16*r+6]],c[a[16*r+7]]),s(0,5,10,15,c[a[16*r+8]],c[a[16*r+9]]),s(1,6,11,12,c[a[16*r+10]],c[a[16*r+11]]),s(2,7,8,13,c[a[16*r+12]],c[a[16*r+13]]),s(3,4,9,14,c[a[16*r+14]],c[a[16*r+15]]);for(r=0;r<8;r++)e.h[r]^=l[r]^l[r+8]}function u(e,t){if(!(e>0&&e<=32))throw Error("Incorrect output length, should be in [1, 32]");let r=t?t.length:0;if(t&&!(r>0&&r<=32))throw Error("Incorrect key length, should be in [1, 32]");let i={h:new Uint32Array(o),b:new Uint8Array(64),c:0,t:0,outlen:e};return i.h[0]^=0x1010000^r<<8^e,r>0&&(d(i,t),i.c=64),i}function d(e,t){for(let r=0;r<t.length;r++)64===e.c&&(e.t+=e.c,h(e,!1),e.c=0),e.b[e.c++]=t[r]}function f(e){for(e.t+=e.c;e.c<64;)e.b[e.c++]=0;h(e,!0);let t=new Uint8Array(e.outlen);for(let r=0;r<e.outlen;r++)t[r]=e.h[r>>2]>>8*(3&r)&255;return t}function p(e,t,r){r=r||32,e=i.normalizeInput(e);let s=u(r,t);return d(s,e),f(s)}e.exports={blake2s:p,blake2sHex:function(e,t,r){let s=p(e,t,r);return i.toHex(s)},blake2sInit:u,blake2sUpdate:d,blake2sFinal:f}},84428:(e,t,r)=>{"use strict";r.d(t,{$P:()=>l,My:()=>c,cK:()=>h,i3:()=>d,nj:()=>a});var i=r(66347),s=r(89950),n=r(94747);let o=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function a(e,t={}){return"number"==typeof e||"bigint"==typeof e?h(e,t):"string"==typeof e?d(e,t):"boolean"==typeof e?l(e,t):c(e,t)}function l(e,t={}){let r=`0x${Number(e)}`;return"number"==typeof t.size?((0,n.Sl)(r,{size:t.size}),(0,s.eV)(r,{size:t.size})):r}function c(e,t={}){let r="";for(let t=0;t<e.length;t++)r+=o[e[t]];let i=`0x${r}`;return"number"==typeof t.size?((0,n.Sl)(i,{size:t.size}),(0,s.eV)(i,{dir:"right",size:t.size})):i}function h(e,t={}){let r,{signed:n,size:o}=t,a=BigInt(e);o?r=n?(1n<<8n*BigInt(o)-1n)-1n:2n**(8n*BigInt(o))-1n:"number"==typeof e&&(r=BigInt(Number.MAX_SAFE_INTEGER));let l="bigint"==typeof r&&n?-r-1n:0;if(r&&a>r||a<l){let t="bigint"==typeof e?"n":"";throw new i.Ty({max:r?`${r}${t}`:void 0,min:`${l}${t}`,signed:n,size:o,value:`${e}${t}`})}let c=`0x${(n&&a<0?(1n<<BigInt(8*o))+BigInt(a):a).toString(16)}`;return o?(0,s.eV)(c,{size:o}):c}let u=new TextEncoder;function d(e,t={}){return c(u.encode(e),t)}},89762:(e,t,r)=>{"use strict";function i(e,{strict:t=!0}={}){return!!e&&"string"==typeof e&&(t?/^0x[0-9a-fA-F]*$/.test(e):e.startsWith("0x"))}r.d(t,{q:()=>i})},89950:(e,t,r)=>{"use strict";r.d(t,{db:()=>n,eV:()=>s});var i=r(44546);function s(e,{dir:t,size:r=32}={}){return"string"==typeof e?n(e,{dir:t,size:r}):function(e,{dir:t,size:r=32}={}){if(null===r)return e;if(e.length>r)throw new i.Fl({size:e.length,targetSize:r,type:"bytes"});let s=new Uint8Array(r);for(let i=0;i<r;i++){let n="right"===t;s[n?i:r-i-1]=e[n?i:e.length-i-1]}return s}(e,{dir:t,size:r})}function n(e,{dir:t,size:r=32}={}){if(null===r)return e;let s=e.replace("0x","");if(s.length>2*r)throw new i.Fl({size:Math.ceil(s.length/2),targetSize:r,type:"hex"});return`0x${s["right"===t?"padEnd":"padStart"](2*r,"0")}`}}
1,91261:(e,t,r)=>{"use strict";let i,s,n,o,a,l,c,h,u;r.d(t,{walletConnectV2Connector:()=>y$});var d,f,p,g,y,b,m,w,v,E={};r.r(E),r.d(E,{identity:()=>or});var x={};r.r(x),r.d(x,{base2:()=>oi});var I={};r.r(I),r.d(I,{base8:()=>os});var S={};r.r(S),r.d(S,{base10:()=>on});var O={};r.r(O),r.d(O,{base16:()=>oo,base16upper:()=>oa});var _={};r.r(_),r.d(_,{base32:()=>ol,base32hex:()=>od,base32hexpad:()=>op,base32hexpadupper:()=>og,base32hexupper:()=>of,base32pad:()=>oh,base32padupper:()=>ou,base32upper:()=>oc,base32z:()=>oy});var A={};r.r(A),r.d(A,{base36:()=>ob,base36upper:()=>om});var P={};r.r(P),r.d(P,{base58btc:()=>ow,base58flickr:()=>ov});var T={};r.r(T),r.d(T,{base64:()=>oE,base64pad:()=>ox,base64url:()=>oI,base64urlpad:()=>oS});var N={};r.r(N),r.d(N,{base256emoji:()=>oP});var R={};r.r(R),r.d(R,{sha256:()=>oM,sha512:()=>oq});var C={};r.r(C),r.d(C,{identity:()=>o$});var B={};r.r(B),r.d(B,{code:()=>oV,decode:()=>oK,encode:()=>oF,name:()=>oz});var U={};r.r(U),r.d(U,{code:()=>oY,decode:()=>oJ,encode:()=>oZ,name:()=>oG});var k=r(2963),D=r(46997),L=r(19409),j=r(50713),M=r(42783),q=r(16096),$=r.n(q),z=r(68939);class V{}class F extends V{constructor(e){super()}}let K=z.FIVE_SECONDS,H="heartbeat_pulse";class W extends F{constructor(e){super(e),this.events=new q.EventEmitter,this.interval=K,this.interval=e?.interval||K}static async init(e){let t=new W(e);return await t.init(),t}async init(){await 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)}async initialize(){this.intervalRef=setInterval(()=>this.pulse(),(0,z.toMiliseconds)(this.interval))}pulse(){this.events.emit(H)}}let G=/"(?:_|\\u0{2}5[Ff]){2}(?:p|\\u0{2}70)(?:r|\\u0{2}72)(?:o|\\u0{2}6[Ff])(?:t|\\u0{2}74)(?:o|\\u0{2}6[Ff])(?:_|\\u0{2}5[Ff]){2}"\s*:/,Y=/"(?:c|\\u0063)(?:o|\\u006[Ff])(?:n|\\u006[Ee])(?:s|\\u0073)(?:t|\\u0074)(?:r|\\u0072)(?:u|\\u0075)(?:c|\\u0063)(?:t|\\u0074)(?:o|\\u006[Ff])(?:r|\\u0072)"\s*:/,Z=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;function J(e,t){var r;return"__proto__"===e||"constructor"===e&&t&&"object"==typeof t&&"prototype"in t?void(r=e,console.warn(`[destr] Dropping "${r}" key to prevent prototype pollution.`)):t}function Q(e,t={}){if("string"!=typeof e)return e;if('"'===e[0]&&'"'===e[e.length-1]&&-1===e.indexOf("\\"))return e.slice(1,-1);let r=e.trim();if(r.length<=9)switch(r.toLowerCase()){case"true":return!0;case"false":return!1;case"undefined":return;case"null":return null;case"nan":return NaN;case"infinity":return 1/0;case"-infinity":return-1/0}if(!Z.test(e)){if(t.strict)throw SyntaxError("[destr] Invalid JSON");return e}try{if(G.test(e)||Y.test(e)){if(t.strict)throw Error("[destr] Possible prototype pollution");return JSON.parse(e,J)}return JSON.parse(e)}catch(r){if(t.strict)throw r;return e}}var X=r(49304).Buffer;function ee(e,...t){try{var r;return(r=e(...t))&&"function"==typeof r.then?r:Promise.resolve(r)}catch(e){return Promise.reject(e)}}function et(e){let t,r;if(t=typeof e,null===e||"object"!==t&&"function"!==t)return String(e);if(!(r=Object.getPrototypeOf(e))||r.isPrototypeOf(Object)||Array.isArray(e))return JSON.stringify(e);if("function"==typeof e.toJSON)return et(e.toJSON());throw Error("[unstorage] Cannot stringify value!")}let er="base64:";function ei(e){return e&&e.split("?")[0]?.replace(/[/\\]/g,":").replace(/:+/g,":").replace(/^:|:$/g,"")||""}function es(e){return(e=ei(e))?e+":":""}function en(e,t,r){return e.watch?e.watch((e,i)=>t(e,r+i)):()=>{}}async function eo(e){"function"==typeof e.dispose&&await ee(e.dispose)}function ea(e){return new Promise((t,r)=>{e.oncomplete=e.onsuccess=()=>t(e.result),e.onabort=e.onerror=()=>r(e.error)})}function el(e,t){let r;return(i,s)=>(()=>{if(r)return r;let i=indexedDB.open(e);return i.onupgradeneeded=()=>i.result.createObjectStore(t),(r=ea(i)).then(e=>{e.onclose=()=>r=void 0},()=>{}),r})().then(e=>s(e.transaction(t,i).objectStore(t)))}function ec(){return i||(i=el("keyval-store","keyval")),i}function eh(e,t=ec()){return t("readonly",t=>ea(t.get(e)))}function eu(e){if("string"!=typeof e)throw Error(`Cannot safe json parse value of type ${typeof e}`);try{return JSON.parse(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'),(e,t)=>"string"==typeof t&&t.match(/^\d+n$/)?BigInt(t.substring(0,t.length-1)):t)}catch(t){return e}}function ed(e){return"string"==typeof e?e:JSON.stringify(e,(e,t)=>"bigint"==typeof t?t.toString()+"n":t)||""}class ef{constructor(){this.indexedDb=function(e={}){let t,r={mounts:{"":e.driver||(t=new Map,{name:"memory",getInstance:()=>t,hasItem:e=>t.has(e),getItem:e=>t.get(e)??null,getItemRaw:e=>t.get(e)??null,setItem(e,r){t.set(e,r)},setItemRaw(e,r){t.set(e,r)},removeItem(e){t.delete(e)},getKeys:()=>[...t.keys()],clear(){t.clear()},dispose(){t.clear()}})},mountpoints:[""],watching:!1,watchListeners:[],unwatch:{}}
1,i=e=>{for(let t of r.mountpoints)if(e.startsWith(t))return{base:t,relativeKey:e.slice(t.length),driver:r.mounts[t]};return{base:"",relativeKey:e,driver:r.mounts[""]}},s=(e,t)=>r.mountpoints.filter(r=>r.startsWith(e)||t&&e.startsWith(r)).map(t=>({relativeBase:e.length>t.length?e.slice(t.length):void 0,mountpoint:t,driver:r.mounts[t]})),n=(e,t)=>{if(r.watching)for(let i of(t=ei(t),r.watchListeners))i(e,t)},o=async()=>{if(!r.watching)for(let e in r.watching=!0,r.mounts)r.unwatch[e]=await en(r.mounts[e],n,e)},a=async()=>{if(r.watching){for(let e in r.unwatch)await r.unwatch[e]();r.unwatch={},r.watching=!1}},l=(e,t,r)=>{let s=new Map,n=e=>{let t=s.get(e.base);return t||(t={driver:e.driver,base:e.base,items:[]},s.set(e.base,t)),t};for(let r of e){let e="string"==typeof r,s=ei(e?r:r.key),o=e?void 0:r.value,a=e||!r.options?t:{...t,...r.options},l=i(s);n(l).items.push({key:s,value:o,relativeKey:l.relativeKey,options:a})}return Promise.all([...s.values()].map(e=>r(e))).then(e=>e.flat())},c={hasItem(e,t={}){let{relativeKey:r,driver:s}
1=i(e=ei(e));return ee(s.hasItem,r,t)},getItem(e,t={}){let{relativeKey:r,driver:s}=i(e=ei(e));return ee(s.getItem,r,t).then(e=>Q(e))},getItems:(e,t={})=>l(e,t,e=>e.driver.getItems?ee(e.driver.getItems,e.items.map(e=>({key:e.relativeKey,options:e.options})),t).then(t=>t.map(t=>({key:function(...e){return ei(e.join(":"))}(e.base,t.key),value:Q(t.value)}))):Promise.all(e.items.map(t=>ee(e.driver.getItem,t.relativeKey,t.options).then(e=>({key:t.key,value:Q(e)}))))),getItemRaw(e,t={}){let{relativeKey:r,driver:s}=i(e=ei(e));return s.getItemRaw?ee(s.getItemRaw,r,t):ee(s.getItem,r,t).then(e=>{var t;return"string"==typeof e&&e.startsWith(er)?(t=e.slice(er.length),globalThis.Buffer?X.from(t,"base64"):Uint8Array.from(globalThis.atob(t),e=>e.codePointAt(0))):e})},async setItem(e,t,r={}){if(void 0===t)return c.removeItem(e);let{relativeKey:s,driver:o}=i(e=ei(e));o.setItem&&(await ee(o.setItem,s,et(t),r),o.watch||n("update",e))},async setItems(e,t){await l(e,t,async e=>{if(e.driver.setItems)return ee(e.driver.setItems,e.items.map(e=>({key:e.relativeKey,value:et(e.value),options:e.options})),t);e.driver.setItem&&await Promise.all(e.items.map(t=>ee(e.driver.setItem,t.relativeKey,et(t.value),t.options)))})},async setItemRaw(e,t,r={}){if(void 0===t)return c.removeItem(e,r);let{relativeKey:s,driver:o}=i(e=ei(e));if(o.setItemRaw)await ee(o.setItemRaw,s,t,r);else{var a;if(!o.setItem)return;await ee(o.setItem,s,"string"==typeof t?t:er+(a=t,globalThis.Buffer?X.from(a).toString("base64"):globalThis.btoa(String.fromCodePoint(...a))),r)}o.watch||n("update",e)},async removeItem(e,t={}){"boolean"==typeof t&&(t={removeMeta:t});let{relativeKey:r,driver:s}
1=i(e=ei(e));s.removeItem&&(await ee(s.removeItem,r,t),(t.removeMeta||t.removeMata)&&await ee(s.removeItem,r+"$",t),s.watch||n("remove",e))},async getMeta(e,t={}){"boolean"==typeof t&&(t={nativeOnly:t});let{relativeKey:r,driver:s}=i(e=ei(e)),n=Object.create(null);if(s.getMeta&&Object.assign(n,await ee(s.getMeta,r,t)),!t.nativeOnly){let e=await ee(s.getItem,r+"$",t).then(e=>Q(e));e&&"object"==typeof e&&("string"==typeof e.atime&&(e.atime=new Date(e.atime)),"string"==typeof e.mtime&&(e.mtime=new Date(e.mtime)),Object.assign(n,e))}return n},setMeta(e,t,r={}){return this.setItem(e+"$",t,r)},removeMeta(e,t={}){return this.removeItem(e+"$",t)},async getKeys(e,t={}){let r=s(e=es(e),!0),i=[],n=[],o=!0;for(let e of r){for(let r of(e.driver.flags?.maxDepth||(o=!1),await ee(e.driver.getKeys,e.relativeBase,t))){let t=e.mountpoint+ei(r);i.some(e=>t.startsWith(e))||n.push(t)}i=[e.mountpoint,...i.filter(t=>!t.startsWith(e.mountpoint))]}let a=void 0!==t.maxDepth&&!o;return n.filter(r=>{var i;return(!a||function(e,t){if(void 0===t)return!0;let r=0,i=e.indexOf(":");for(;i>-1;)r++,i=e.indexOf(":",i+1);return r<=t}(r,t.maxDepth))&&((i=e)?r.startsWith(i)&&"$"!==r[r.length-1]:"$"!==r[r.length-1])})},async clear(e,t={}){e=es(e),await Promise.all(s(e,!1).map(async e=>e.driver.clear?ee(e.driver.clear,e.relativeBase,t):e.driver.removeItem?Promise.all((await e.driver.getKeys(e.relativeBase||"",t)).map(r=>e.driver.removeItem(r,t))):void 0))},async dispose(){await Promise.all(Object.values(r.mounts).map(e=>eo(e)))},watch:async e=>(await o(),r.watchListeners.push(e),async()=>{r.watchListeners=r.watchListeners.filter(t=>t!==e),0===r.watchListeners.length&&await a()}),async unwatch(){r.watchListeners=[],await a()},mount(e,t){if((e=es(e))&&r.mounts[e])throw Error(`already mounted at ${e}`);return e&&(r.mountpoints.push(e),r.mountpoints.sort((e,t)=>t.length-e.length)),r.mounts[e]=t,r.watching&&Promise.resolve(en(t,n,e)).then(t=>{r.unwatch[e]=t}).catch(console.error),c},async unmount(e,t=!0){(e=es(e))&&r.mounts[e]&&(r.watching&&e in r.unwatch&&(r.unwatch[e]?.(),delete r.unwatch[e]),t&&await eo(r.mounts[e]),r.mountpoints=r.mountpoints.filter(t=>t!==e),delete r.mounts[e])},getMount(e=""){let t=i(e=ei(e)+":");return{driver:t.driver,base:t.base}},getMounts:(e="",t={})=>s(e=ei(e),t.parents).map(e=>({driver:e.driver,base:e.mountpoint})),keys:(e,t={})=>c.getKeys(e,t),get:(e,t={})=>c.getItem(e,t),set:(e,t,r={})=>c.setItem(e,t,r),has:(e,t={})=>c.hasItem(e,t),del:(e,t={})=>c.removeItem(e,t),remove:(e,t={})=>c.removeItem(e,t)};return c}({driver:((e={})=>{let t,r=e.base&&e.base.length>0?`${e.base}:`:"";return e.dbName&&e.storeName&&(t=el(e.dbName,e.storeName)),{name:"idb-keyval",options:e,hasItem:async e=>!(typeof await eh(r+e,t)>"u"),getItem:async e=>await eh(r+e,t)??null,setItem:(e,i)=>(function(e,t,r=ec()){return r("readwrite",r=>(r.put(t,e),ea(r.transaction)))})(r+e,i,t),removeItem:e=>(function(e,t=ec()){return t("readwrite",t=>(t.delete(e),ea(t.transaction)))})(r+e,t),getKeys:()=>(function(e=ec()){return e("readonly",e=>{var t;if(e.getAllKeys)return ea(e.getAllKeys());let r=[];return(t=e=>r.push(e.key),e.openCursor().onsuccess=function(){this.result&&(t(this.result),this.result.continue())},ea(e.transaction)).then(()=>r)})})(t),clear:()=>(function(e=ec()){return e("readwrite",e=>(e.clear(),ea(e.transaction)))})(t)}})({dbName:"WALLET_CONNECT_V2_INDEXED_DB",storeName:"keyvaluestorage"})})}async getKeys(){return this.indexedDb.getKeys()}async getEntries(){return(await this.indexedDb.getItems(await this.indexedDb.getKeys())).map(e=>[e.key,e.value])}async getItem(e){let t=await this.indexedDb.getItem(e);if(null!==t)return t}async setItem(e,t){await this.indexedDb.setItem(e,ed(t))}async removeItem(e){await this.indexedDb.removeItem(e)}}var ep="u">typeof globalThis?globalThis:"u">typeof window?window:"u">typeof r.g?r.g:"u">typeof self?self:{},eg={exports:{}};function ey(e){var t;return[e[0],eu(null!=(t=e[1])?t:"")]}function eb(){}eb.prototype.getItem=function(e){return this.hasOwnProperty(e)?String(this[e]):null},eb.prototype.setItem=function(e,t){this[e]=String(t)},eb.prototype.removeItem=function(e){delete this[e]},eb.prototype.clear=function(){let e=this;Object.keys(e).forEach(function(t){e[t]=void 0,delete e[t]})},eb.prototype.key=function(e){return e=e||0,Object.keys(this)[e]},eb.prototype.__defineGetter__("length",function(){return Object.keys(this).length}),"u">
1typeof ep&&ep.localStorage?eg.exports=ep.localStorage:"u">typeof window&&window.localStorage?eg.exports=window.localStorage:eg.exports=new eb;class em{constructor(){this.localStorage=eg.exports}async getKeys(){return Object.keys(this.localStorage)}async getEntries(){return Object.entries(this.localStorage).map(ey)}async getItem(e){let t=this.localStorage.getItem(e);if(null!==t)return eu(t)}async setItem(e,t){this.localStorage.setItem(e,ed(t))}async removeItem(e){this.localStorage.removeItem(e)}}let ew=async(e,t,r)=>{let i="wc_storage_version",s=await t.getItem(i);if(s&&s>=1)return void r(t);let n=await e.getKeys();if(!n.length)return void r(t);let o=[];for(;n.length;){let r=n.shift();if(!r)continue;let i=r.toLowerCase();if(i.includes("wc@")||i.includes("walletconnect")||i.includes("wc_")||i.includes("wallet_connect")){let i=await e.getItem(r);await t.setItem(r,i),o.push(r)}}await t.setItem(i,1),r(t),ev(e,o)},ev=async(e,t)=>{t.length&&t.forEach(async t=>{await e.removeItem(t)})};class eE{constructor(){this.initialized=!1,this.setInitialized=e=>{this.storage=e,this.initialized=!0};const e=new em;this.storage=e;try{const t=new ef;ew(e,t,this.setInitialized)}catch{this.initialized=!0}}async getKeys(){return await this.initialize(),this.storage.getKeys()}async getEntries(){return await this.initialize(),this.storage.getEntries()}async getItem(e){return await this.initialize(),this.storage.getItem(e)}async setItem(e,t){return await this.initialize(),this.storage.setItem(e,t)}async removeItem(e){return await this.initialize(),this.storage.removeItem(e)}async initialize(){this.initialized||await new Promise(e=>{let t=setInterval(()=>{this.initialized&&(clearInterval(t),e())},20)})}}var ex={exports:{}};function eI(e){try{return JSON.stringify(e)}catch{return'"[Circular]"'}}let eS=function(e,t,r){var i=r&&r.stringify||eI;if("object"==typeof e&&null!==e){var s=t.length+1;if(1===s)return e;var n=Array(s);n[0]=i(e);for(var o=1;o<s;o++)n[o]=i(t[o]);return n.join(" ")}if("string"!=typeof e)return e;var a=t.length;if(0===a)return e;for(var l="",c=0,h=-1,u=e&&e.length||0,d=0;d<u;){if(37===e.charCodeAt(d)&&d+1<u){switch(h=h>-1?h:0,e.charCodeAt(d+1)){case 100:case 102:if(c>=a||null==t[c])break;h<d&&(l+=e.slice(h,d)),l+=Number(t[c]),h=d+2,d++;break;case 105:if(c>=a||null==t[c])break;h<d&&(l+=e.slice(h,d)),l+=Math.floor(Number(t[c])),h=d+2,d++;break;case 79:case 111:case 106:if(c>=a||void 0===t[c])break;h<d&&(l+=e.slice(h,d));var f=typeof t[c];if("string"===f){l+="'"+t[c]+"'",h=d+2,d++;break}if("function"===f){l+=t[c].name||"<anonymous>",h=d+2,d++;break}l+=i(t[c]),h=d+2,d++;break;case 115:if(c>=a)break;h<d&&(l+=e.slice(h,d)),l+=String(t[c]),h=d+2,d++;break;case 37:h<d&&(l+=e.slice(h,d)),l+="%",h=d+2,d++,c--}++c}++d}return -1===h?e:(h<u&&(l+=e.slice(h)),l)};ex.exports=eR;let eO=function(){function e(e){return"u">typeof e&&e}try{return"u">typeof globalThis||Object.defineProperty(Object.prototype,"globalThis",{get:function(){return delete Object.prototype.globalThis,this.globalThis=this},configurable:!0}),globalThis}catch{return e(self)||e(window)||e(this)||{}}}().console||{};function e_(e,t){return"silent"===e?1/0:t.levels.values[e]}let eA=Symbol("pino.logFuncs"),eP=Symbol("pino.hierarchy"),eT={error:"log",fatal:"error",warn:"error",info:"log",debug:"log",trace:"log"};function eN(e,t){let r={logger:t,parent:e[eP]};t[eP]=r}function eR(e){var t,r,i;let s,n,o;(e=e||{}).browser=e.browser||{};let a=e.browser.transmit;if(a&&"function"!=typeof a.send)throw Error("pino: transmit option must have a send function");let l=e.browser.write||eO;e.browser.write&&(e.browser.asObject=!0);let c=e.serializers||{},h=(t=e.browser.serialize,Array.isArray(t)?t.filter(function(e){return"!stdSerializers.err"!==e}):!0===t&&Object.keys(c)),u=e.browser.serialize;Array.isArray(e.browser.serialize)&&e.browser.serialize.indexOf("!stdSerializers.err")>-1&&(u=!1);let d=Object.keys(e.customLevels||{}),f=["error","fatal","warn","info","debug","trace"].concat(d);"function"==typeof l&&f.forEach(function(e){l[e]=l}),(!1===e.enabled||e.browser.disabled)&&(e.level="silent");let p=e.level||"info",g=Object.create(l);g.log||(g.log=ej),s={}
1,f.forEach(e=>{s[e]=l[e]?l[e]:eO[e]||eO[eT[e]||"log"]||ej}),g[eA]=s,eN({},g),Object.defineProperty(g,"levelVal",{get:function(){return e_(this.level,this)}}),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,eC(this,y,g,"error"),eC(this,y,g,"fatal"),eC(this,y,g,"warn"),eC(this,y,g,"info"),eC(this,y,g,"debug"),eC(this,y,g,"trace"),d.forEach(e=>{eC(this,y,g,e)})}});let y={transmit:a,serialize:h,asObject:e.browser.asObject,asObjectBindingsOnly:e.browser.asObjectBindingsOnly,formatters:e.browser.formatters,levels:f,timestamp:"function"==typeof(r=e).timestamp?r.timestamp:!1===r.timestamp?eM:eq,messageKey:e.messageKey||"msg",onChild:e.onChild||ej};function b(t,r,i){if(!r)throw Error("missing bindings for child Pino");i=i||{},h&&r.serializers&&(i.serializers=r.serializers);let s=i.serializers;if(h&&s){var n=Object.assign({},c,s),o=!0===e.browser.serialize?Object.keys(n):h;delete r.serializers,eB([r],o,n,this._stdErrSerialize)}function l(e){this._childLevel=(0|e._childLevel)+1,this.bindings=r,n&&(this.serializers=n,this._serialize=o),a&&(this._logEvent=eU([].concat(e._logEvent.bindings,r)))}l.prototype=this;let u=new l(this);return eN(this,u),u.child=function(...e){return b.call(this,t,...e)},u.level=i.level||this.level,t.onChild(u),u}return n=e.customLevels||{},g.levels={values:Object.assign({},eR.levels.values,n),labels:Object.assign({},eR.levels.labels,(o={},Object.keys(i=n).forEach(function(e){o[i[e]]=e}),o))},g.level=p,g.isLevelEnabled=function(e){return!!this.levels.values[e]&&this.levels.values[e]>=this.levels.values[this.level]},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=ej,g.serializers=c,g._serialize=h,g._stdErrSerialize=u,g.child=function(...e){return b.call(this,y,...e)},a&&(g._logEvent=eU()),g}function eC(e,t,r,i){var s,n,o,a,l,c,h;if(Object.defineProperty(e,i,{value:e_(e.level,r)>e_(i,r)?ej:r[eA][i],writable:!0,enumerable:!0,configurable:!0}),e[i]===ej){if(!t.transmit)return;let s=e_(t.transmit.level||e.level,r);if(e_(i,r)<s)return}e[i]=(s=e,n=t,o=r,a=i,l=s[eA][a],function(){let e=n.timestamp(),t=Array(arguments.length),r=Object.getPrototypeOf&&Object.getPrototypeOf(this)===eO?eO:this;for(var i=0;i<t.length;i++)t[i]=arguments[i];var c=!1;if(n.serialize&&(eB(t,this._serialize,this.serializers,this._stdErrSerialize),c=!0),n.asObject||n.formatters?l.call(r,...function(e,t,r,i,s){let{level:n,log:o=e=>e}=s.formatters||{},a=r.slice(),l=a[0],c={},h=(0|e._childLevel)+1;if((h<1&&(h=1),i&&(c.time=i),n)?Object.assign(c,n(t,e.levels.values[t])):c.level=e.levels.values[t],s.asObjectBindingsOnly){if(null!==l&&"object"==typeof l)for(;h--&&"object"==typeof a[0];)Object.assign(c,a.shift());return[o(c),...a]}if(null!==l&&"object"==typeof l){for(;h--&&"object"==typeof a[0];)Object.assign(c,a.shift());l=a.length?eS(a.shift(),a):void 0}else"string"==typeof l&&(l=eS(a.shift(),a));return void 0!==l&&(c[s.messageKey]=l),[o(c)]}(this,a,t,e,n)):l.apply(r,t),n.transmit){let r=n.transmit.level||s._level,i=e_(r,o),l=e_(a,o);if(l<i)return;!function(e,t,r,i=!1){let s=t.send,n=t.ts,o=t.methodLevel,a=t.methodValue,l=t.val,c=e._logEvent.bindings;i||eB(r,e._serialize||Object.keys(e.serializers),e.serializers,void 0===e._stdErrSerialize||e._stdErrSerialize),e._logEvent.ts=n,e._logEvent.messages=r.filter(function(e){return -1===c.indexOf(e)}),e._logEvent.level.label=o,e._logEvent.level.value=a,s(o,e._logEvent,l),e._logEvent=eU(c)}(this,{ts:e,methodLevel:a,methodValue:l,transmitLevel:r,transmitValue:o.levels.values[n.transmit.level||s._level],send:n.transmit.send,val:e_(s._level,o)},t,c)}});let u=function(e){let t=[];e.bindings&&t.push(e.bindings);let r=e[eP];for(;r.parent;)(r=r.parent).logger.bindings&&t.push(r.logger.bindings);return t.reverse()}(e);0!==u.length&&(e[i]=(c=u,h=e[i],function(){return h.apply(this,[...c,...arguments])}))}function eB(e,t,r,i){for(let s in e)if(i&&e[s]instanceof Error)e[s]=eR.stdSerializers.err(e[s]);else if("object"==typeof e[s]&&!Array.isArray(e[s])&&t)for(let i in e[s])t.indexOf(i)>-1&&i in r&&(e[s][i]=r[i](e[s][i]))}function eU(e){return{ts:0,messages:[],bindings:e||[],level:{label:"",value:0}}}function ek(e){let t={type:e.constructor.name,msg:e.message,stack:e.stack};for(let r in e)void 0===t[r]&&(t[r]=e[r]);return t}function eD(){return{}}function eL(e){return e}function ej(){}function eM(){return!1}function eq(){return Date.now()}eR.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"}},eR.stdSerializers={mapHttpRequest:eD,mapHttpResponse:eD,wrapRequestSerializer:eL,wrapResponseSerializer:eL,wrapErrorSerializer:eL,req:eD,res:eD,err:ek,errWithCause:ek},eR.stdTimeFunctions=Object.assign({},{nullTime:eM,epochTime:eq,unixTime:function(){return Math.round(Date.now()/1e3)},isoTime:function(){return new Date(Date.now()).toISOString()}}),ex.exports.default=eR,ex.exports.pino=eR;let e$="custom_context";var ez=Object.defineProperty,eV=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?ez(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class eF{constructor(e){eV(this,"nodeValue"),eV(this,"sizeInBytes"),eV(this,"next"),this.nodeValue=e,this.sizeInBytes=new TextEncoder().encode(this.nodeValue).length,this.next=null}get value(){return this.nodeValue}get size(){return this.sizeInBytes}}class eK{constructor(e){eV(this,"lengthInNodes"),eV(this,"sizeInBytes"),eV(this,"head"),eV(this,"tail"),eV(this,"maxSizeInBytes"),this.head=null,this.tail=null,this.lengthInNodes=0,this.maxSizeInBytes=e,this.sizeInBytes=0}append(e){let t=new eF(e);if(t.size>this.maxSizeInBytes)throw Error(`[LinkedList] Value too big to insert into list: ${e} with size ${t.size}`);for(;this.size+t.size>this.maxSizeInBytes;)this.shift();this.head?this.tail&&(this.tail.next=t):this.head=t,this.tail=t,this.lengthInNodes++,this.sizeInBytes+=t.size}shift(){if(!this.head)return;let e=this.head;this.head=this.head.next,this.head||(this.tail=null),this.lengthInNodes--,this.sizeInBytes-=e.size}toArray(){let e=[],t=this.head;for(;null!==t;)e.push(t.value),t=t.next;return e}get length(){return this.lengthInNodes}get size(){return this.sizeInBytes}toOrderedArray(){return Array.from(this)}[Symbol.iterator](){let e=this.head;return{next:()=>{if(!e)return{done:!0,value:null};let t=e.value;return e=e.next,{done:!1,value:t}}}}}function eH(e){return"string"==typeof e?e:JSON.stringify(e,(e,t)=>"bigint"==typeof t?t.toString()+"n":t)||""}var eW=Object.defineProperty,eG=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?eW(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class eY{constructor(e,t=1024e3){eG(this,"logs"),eG(this,"level"),eG(this,"levelValue"),eG(this,"MAX_LOG_SIZE_IN_BYTES"),this.level=e??"error",this.levelValue=ex.exports.levels.values[this.level],this.MAX_LOG_SIZE_IN_BYTES=t,this.logs=new eK(this.MAX_LOG_SIZE_IN_BYTES)}forwardToConsole(e,t){t===ex.exports.levels.values.error?console.error(e):t===ex.exports.levels.values.warn?console.warn(e):t===ex.exports.levels.values.debug?console.debug(e):t===ex.exports.levels.values.trace?console.trace(e):console.log(e)}appendToLogs(e){this.logs.append(eH({timestamp:new Date().toISOString(),log:e}));let t="string"==typeof e?JSON.parse(e).level:e.level;t>=this.levelValue&&this.forwardToConsole(e,t)}getLogs(){return this.logs}clearLogs(){this.logs=new eK(this.MAX_LOG_SIZE_IN_BYTES)}getLogArray(){return Array.from(this.logs)}logsToBlob(e){let t=this.getLogArray();return t.push(eH({extraMetadata:e})),new Blob(t,{type:"application/json"})}}var eZ=Object.defineProperty;class eJ{constructor(e,t=1024e3){((e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?eZ(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r})(this,"baseChunkLogger"),this.baseChunkLogger=new eY(e,t)}write(e){this.baseChunkLogger.appendToLogs(e)}getLogs(){return this.baseChunkLogger.getLogs()}clearLogs(){this.baseChunkLogger.clearLogs()}getLogArray(){return this.baseChunkLogger.getLogArray()}logsToBlob(e){return this.baseChunkLogger.logsToBlob(e)}downloadLogsBlobInBrowser(e){let t=URL.createObjectURL(this.logsToBlob(e)),r=document.createElement("a");r.href=t,r.download=`walletconnect-logs-${new Date().toISOString()}.txt`,document.body.appendChild(r),r.click(),document.body.removeChild(r),URL.revokeObjectURL(t)}}var eQ=Object.defineProperty;class eX{constructor(e,t=1024e3){((e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?eQ(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r})(this,"baseChunkLogger"),this.baseChunkLogger=new eY(e,t)}write(e){this.baseChunkLogger.appendToLogs(e)}getLogs(){return this.baseChunkLogger.getLogs()}clearLogs(){this.baseChunkLogger.clearLogs()}getLogArray(){return this.baseChunkLogger.getLogArray()}logsToBlob(e){return this.baseChunkLogger.logsToBlob(e)}}var e0=Object.defineProperty,e1=Object.defineProperties,e2=Object.getOwnPropertyDescriptors,e8=Object.getOwnPropertySymbols,e6=Object.prototype.hasOwnProperty,e3=Object.prototype.propertyIsEnumerable,e5=(e,t,r)=>t in e?e0(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,e4=(e,t)=>{for(var r in t||(t={}))e6.call(t,r)&&e5(e,r,t[r]);if(e8)for(var r of e8(t))e3.call(t,r)&&e5(e,r,t[r]);return e};function e9(e,t=e$){return e[t]||""}function e7(e,t,r=e$){let i=function(e,t,r=e$){let i=e9(e,r);return i.trim()?`${i}/${t}`:t}(e,t,r);return function(e,t,r=e$){return e[r]=t,e}(e.child({context:i}),i,r)}function te(e){var t,r,i,s,n,o,a;let l,c,h,u,d,f;if("u">typeof e.loggerOverride&&"string"!=typeof e.loggerOverride)return{logger:e.loggerOverride,chunkLoggerController:null};let p=e1(e4({},e.opts),e2({level:"string"==typeof e.loggerOverride?e.loggerOverride:null==(t=e.opts)?void 0:t.level}));return"u">typeof window?(h=new eJ(null==(i=(r=e1(e4({},e),e2({opts:p}))).opts)?void 0:i.level,r.maxSizeInBytes),{logger:ex.exports((l=e4({},r.opts),c={level:"trace",browser:e1(e4({},null==(s=r.opts)?void 0:s.browser),e2({write:e=>h.write(e)}))}
1,e1(l,e2(c)))),chunkLoggerController:h}):(f=new eX(null==(o=(n=e1(e4({},e),e2({opts:p}))).opts)?void 0:o.level,n.maxSizeInBytes),{logger:ex.exports((u=e4({},n.opts),d={level:"trace",browser:e1(e4({},null==(a=n.opts)?void 0:a.browser),e2({write:e=>f.write(e)}))},e1(u,e2(d))),f),chunkLoggerController:f})}var tt=Object.defineProperty,tr=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?tt(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class ti extends V{constructor(e){super(),this.opts=e,tr(this,"protocol","wc"),tr(this,"version",2)}}var ts=Object.defineProperty;class tn extends V{constructor(e,t){super(),this.core=e,this.logger=t,((e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?ts(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r})(this,"records",new Map)}}class to{constructor(e,t){this.logger=e,this.core=t}}class ta extends V{constructor(e,t){super(),this.relayer=e,this.logger=t}}class tl extends V{constructor(e){super()}}class tc{constructor(e,t,r,i){this.core=e,this.logger=t,this.name=r}}class th extends V{constructor(e,t){super(),this.relayer=e,this.logger=t}}class tu extends V{constructor(e,t){super(),this.core=e,this.logger=t}}class td{constructor(e,t,r){this.core=e,this.logger=t,this.store=r}}class tf{constructor(e,t){this.projectId=e,this.logger=t}}class tp{constructor(e,t,r){this.core=e,this.logger=t,this.telemetryEnabled=r}}var tg=Object.defineProperty,ty=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?tg(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};$();class tb{constructor(e){this.opts=e,ty(this,"protocol","wc"),ty(this,"version",2)}}q.EventEmitter;class tm{constructor(e){this.client=e}}function tw(e,...t){if(!(e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name))throw Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw Error("Uint8Array expected of length "+t+", got length="+e.length)}function tv(e,t=!0){if(e.destroyed)throw Error("Hash instance has been destroyed");if(t&&e.finished)throw Error("Hash#digest() has already been called")}let tE="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0,tx=e=>new DataView(e.buffer,e.byteOffset,e.byteLength);function tI(e){return"string"==typeof e&&(e=function(e){if("string"!=typeof e)throw Error("utf8ToBytes expected string, got "+typeof e);return new Uint8Array(new TextEncoder().encode(e))}(e)),tw(e),e}class tS{clone(){return this._cloneInto()}}function tO(e=32){if(tE&&"function"==typeof tE.getRandomValues)return tE.getRandomValues(new Uint8Array(e));if(tE&&"function"==typeof tE.randomBytes)return tE.randomBytes(e);throw Error("crypto.getRandomValues must be defined")}
1class t_ extends tS{constructor(e,t,r,i){super(),this.blockLen=e,this.outputLen=t,this.padOffset=r,this.isLE=i,this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.buffer=new Uint8Array(e),this.view=tx(this.buffer)}update(e){tv(this);let{view:t,buffer:r,blockLen:i}=this,s=(e=tI(e)).length;for(let n=0;n<s;){let o=Math.min(i-this.pos,s-n);if(o===i){let t=tx(e);for(;i<=s-n;n+=i)this.process(t,n);continue}r.set(e.subarray(n,n+o),this.pos),this.pos+=o,n+=o,this.pos===i&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){tv(this),function(e,t){tw(e);let r=t.outputLen;if(e.length<r)throw Error("digestInto() expects output buffer of length at least "+r)}(e,this),this.finished=!0;let{buffer:t,view:r,blockLen:i,isLE:s}=this,{pos:n}=this;t[n++]=128,this.buffer.subarray(n).fill(0),this.padOffset>i-n&&(this.process(r,0),n=0);for(let e=n;e<i;e++)t[e]=0;(function(e,t,r,i){if("function"==typeof e.setBigUint64)return e.setBigUint64(t,r,i);let s=BigInt(32),n=BigInt(0xffffffff),o=Number(r>>s&n),a=Number(r&n),l=4*!!i,c=4*!i;e.setUint32(t+l,o,i),e.setUint32(t+c,a,i)})(r,i-8,BigInt(8*this.length),s),this.process(r,0);let o=tx(e),a=this.outputLen;if(a%4)throw Error("_sha2: outputLen should be aligned to 32bit");let l=a/4,c=this.get();if(l>c.length)throw Error("_sha2: outputLen bigger than state");for(let e=0;e<l;e++)o.setUint32(4*e,c[e],s)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let r=e.slice(0,t);return this.destroy(),r}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:r,length:i,finished:s,destroyed:n,pos:o}=this;return e.length=i,e.pos=o,e.finished=s,e.destroyed=n,i%t&&e.buffer.set(r),e}}let tA=BigInt(0x100000000-1),tP=BigInt(32),tT=(e,t,r)=>e>>>r,tN=(e,t,r)=>e<<32-r|t>>>r,tR=(e,t,r)=>e>>>r|t<<32-r,tC=(e,t,r)=>e<<32-r|t>>>r,tB=(e,t,r)=>e<<64-r|t>>>r-32,tU=(e,t,r)=>e>>>r-32|t<<64-r,tk=function(e,t,r,i){let s=(t>>>0)+(i>>>0);return{h:e+r+(s/0x100000000|0)|0,l:0|s}},tD=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),tL=(e,t,r,i)=>t+r+i+(e/0x100000000|0)|0,tj=(e,t,r,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0),tM=(e,t,r,i,s)=>t+r+i+s+(e/0x100000000|0)|0,tq=(e,t,r,i,s,n)=>t+r+i+s+n+(e/0x100000000|0)|0,t$=(e,t,r,i,s)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0)+(s>>>0),[tz,tV]=function(e,t=!1){let r=new Uint32Array(e.length),i=new Uint32Array(e.length);for(let s=0;s<e.length;s++){let{h:n,l:o}=function(e,t=!1){return t?{h:Number(e&tA),l:Number(e>>tP&tA)}:{h:0|Number(e>>tP&tA),l:0|Number(e&tA)}}(e[s],t);[r[s],i[s]]=[n,o]}return[r,i]}(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b896f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e3585
15771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(e=>BigInt(e))),tF=new Uint32Array(80),tK=new Uint32Array(80);class tH extends t_{constructor(){super(128,64,16,!1),this.Ah=0x6a09e667,this.Al=-0xc4336f8,this.Bh=-0x4498517b,this.Bl=-0x7b3558c5,this.Ch=0x3c6ef372,this.Cl=-0x16b07d5,this.Dh=-0x5ab00ac6,this.Dl=0x5f1d36f1,this.Eh=0x510e527f,this.El=-0x52197d2f,this.Fh=-0x64fa9774,this.Fl=0x2b3e6c1f,this.Gh=0x1f83d9ab,this.Gl=-0x4be4295,this.Hh=0x5be0cd19,this.Hl=0x137e2179}get(){let{Ah:e,Al:t,Bh:r,Bl:i,Ch:s,Cl:n,Dh:o,Dl:a,Eh:l,El:c,Fh:h,Fl:u,Gh:d,Gl:f,Hh:p,Hl:g}=this;return[e,t,r,i,s,n,o,a,l,c,h,u,d,f,p,g]}set(e,t,r,i,s,n,o,a,l,c,h,u,d,f,p,g){this.Ah=0|e,this.Al=0|t,this.Bh=0|r,this.Bl=0|i,this.Ch=0|s,this.Cl=0|n,this.Dh=0|o,this.Dl=0|a,this.Eh=0|l,this.El=0|c,this.Fh=0|h,this.Fl=0|u,this.Gh=0|d,this.Gl=0|f,this.Hh=0|p,this.Hl=0|g}process(e,t){for(let r=0;r<16;r++,t+=4)tF[r]=e.getUint32(t),tK[r]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=0|tF[e-15],r=0|tK[e-15],i=tR(t,r,1)^tR(t,r,8)^tT(t,r,7),s=tC(t,r,1)^tC(t,r,8)^tN(t,r,7),n=0|tF[e-2],o=0|tK[e-2],a=tR(n,o,19)^tB(n,o,61)^tT(n,o,6),l=tj(s,tC(n,o,19)^tU(n,o,61)^tN(n,o,6),tK[e-7],tK[e-16]),c=tM(l,i,a,tF[e-7],tF[e-16]);tF[e]=0|c,tK[e]=0|l}let{Ah:r,Al:i,Bh:s,Bl:n,Ch:o,Cl:a,Dh:l,Dl:c,Eh:h,El:u,Fh:d,Fl:f,Gh:p,Gl:g,Hh:y,Hl:b}=this;for(let e=0;e<80;e++){let t=tR(h,u,14)^tR(h,u,18)^tB(h,u,41),m=tC(h,u,14)^tC(h,u,18)^tU(h,u,41),w=h&d^~h&p,v=t$(b,m,u&f^~u&g,tV[e],tK[e]),E=tq(v,y,t,w,tz[e],tF[e]),x=0|v,I=tR(r,i,28)^tB(r,i,34)^tB(r,i,39),S=tC(r,i,28)^tU(r,i,34)^tU(r,i,39),O=r&s^r&o^s&o,_=i&n^i&a^n&a;y=0|p,b=0|g,p=0|d,g=0|f,d=0|h,f=0|u,({h:h,l:u}=tk(0|l,0|c,0|E,0|x)),l=0|o,c=0|a,o=0|s,a=0|n,s=0|r,n=0|i;let A=tD(x,S,_);r=tL(A,E,I,O),i=0|A}({h:r,l:i}=tk(0|this.Ah,0|this.Al,0|r,0|i)),({h:s,l:n}=tk(0|this.Bh,0|this.Bl,0|s,0|n)),({h:o,l:a}=tk(0|this.Ch,0|this.Cl,0|o,0|a)),({h:l,l:c}=tk(0|this.Dh,0|this.Dl,0|l,0|c)),({h:h,l:u}=tk(0|this.Eh,0|this.El,0|h,0|u)),({h:d,l:f}=tk(0|this.Fh,0|this.Fl,0|d,0|f)),({h:p,l:g}=tk(0|this.Gh,0|this.Gl,0|p,0|g)),({h:y,l:b}=tk(0|this.Hh,0|this.Hl,0|y,0|b)),this.set(r,i,s,n,o,a,l,c,h,u,d,f,p,g,y,b)}roundClean(){tF.fill(0),tK.fill(0)}destroy(){this.buffer.fill(0),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}let tW=(d=()=>new tH,(s=e=>d().update(tI(e)).digest()).outputLen=(n=d()).outputLen,s.blockLen=n.blockLen,s.create=()=>d(),s),tG=BigInt(0),tY=BigInt(1),tZ=BigInt(2);function tJ(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function tQ(e){if(!tJ(e))throw Error("Uint8Array expected")}function tX(e,t){if("boolean"!=typeof t)throw Error(e+" boolean expected, got "+t)}let t0=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function t1(e){tQ(e);let t="";for(let r=0;r<e.length;r++)t+=t0[e[r]];return t}function t2(e){if("string"!=typeof e)throw Error("hex string expected, got "+typeof e);return""===e?tG:BigInt("0x"+e)}function t8(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:void 0}function t6(e){if("string"!=typeof e)throw Error("hex string expected, got "+typeof e);let t=e.length,r=t/2;if(t%2)throw Error("hex string expected, got unpadded hex of length "+t);let i=new Uint8Array(r);for(let t=0,s=0;t<r;t++,s+=2){let r=t8(e.charCodeAt(s)),n=t8(e.charCodeAt(s+1));if(void 0===r||void 0===n)throw Error('hex string expected, got non-hex character "'+(e[s]+e[s+1])+'" at index '+s);i[t]=16*r+n}return i}function t3(e){return tQ(e),t2(t1(Uint8Array.from(e).reverse()))}function t5(e,t){return t6(e.toString(16).padStart(2*t,"0"))}function t4(e,t){return t5(e,t).reverse()}function t9(e,t,r){let i;if("string"==typeof t)try{i=t6(t)}catch(t){throw Error(e+" must be hex string or Uint8Array, cause: "+t)}else if(tJ(t))i=Uint8Array.from(t);else throw Error(e+" must be hex string or Uint8Array");let s=i.length;if("number"==typeof r&&s!==r)throw Error(e+" of length "+r+" expected, got "+s);return i}function t7(...e){let t=0;for(let r=0;r<e.length;r++){let i=e[r];tQ(i),t+=i.length}let r=new Uint8Array(t);for(let t=0,i=0;t<e.length;t++){let s=e[t];r.set(s,i),i+=s.length}return r}let re=e=>"bigint"==typeof e&&tG<=e;
1function rt(e,t,r,i){if(!(re(t)&&re(r)&&re(i))||!(r<=t)||!(t<i))throw Error("expected valid "+e+": "+r+" <= n < "+i+", got "+t)}let rr={bigint:e=>"bigint"==typeof e,function:e=>"function"==typeof e,boolean:e=>"boolean"==typeof e,string:e=>"string"==typeof e,stringOrUint8Array:e=>"string"==typeof e||tJ(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>"function"==typeof e&&Number.isSafeInteger(e.outputLen)};function ri(e,t,r={}){let i=(t,r,i)=>{let s=rr[r];if("function"!=typeof s)throw Error("invalid validator function");let n=e[t];if(!(i&&void 0===n)&&!s(n,e))throw Error("param "+String(t)+" is invalid. Expected "+r+", got "+n)};for(let[e,r]of Object.entries(t))i(e,r,!1);for(let[e,t]of Object.entries(r))i(e,t,!0);return e}function rs(e){let t=new WeakMap;return(r,...i)=>{let s=t.get(r);if(void 0!==s)return s;let n=e(r,...i);return t.set(r,n),n}}let rn=BigInt(0),ro=BigInt(1),ra=BigInt(2),rl=BigInt(3),rc=BigInt(4),rh=BigInt(5),ru=BigInt(8);function rd(e,t){let r=e%t;return r>=rn?r:t+r}function rf(e,t,r){let i=e;for(;t-- >rn;)i*=i,i%=r;return i}function rp(e,t){if(e===rn)throw Error("invert: expected non-zero number");if(t<=rn)throw Error("invert: expected positive modulus, got "+t);let r=rd(e,t),i=t,s=rn,n=ro;for(;r!==rn;){let e=i/r,t=i%r,o=s-n*e;i=r,r=t,s=n,n=o}if(i!==ro)throw Error("invert: does not exist");return rd(s,t)}let rg=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function ry(e,t){let r=void 0!==t?t:e.toString(2).length,i=Math.ceil(r/8);return{nBitLength:r,nByteLength:i}}function rb(e,t,r=!1,i={}){let s;if(e<=rn)throw Error("invalid field: expected ORDER > 0, got "+e);let{nBitLength:n,nByteLength:o}=ry(e,t);if(o>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");let a=Object.freeze({ORDER:e,isLE:r,BITS:n,BYTES:o,MASK:(tZ<<BigInt(n-1))-tY,ZERO:rn,ONE:ro,create:t=>rd(t,e),isValid:t=>{if("bigint"!=typeof t)throw Error("invalid field element: expected bigint, got "+typeof t);return rn<=t&&t<e},is0:e=>e===rn,isOdd:e=>(e&ro)===ro,neg:t=>rd(-t,e),eql:(e,t)=>e===t,sqr:t=>rd(t*t,e),add:(t,r)=>rd(t+r,e),sub:(t,r)=>rd(t-r,e),mul:(t,r)=>rd(t*r,e),pow:(e,t)=>(function(e,t,r){if(r<rn)throw Error("invalid exponent, negatives unsupported");if(r===rn)return e.ONE;if(r===ro)return t;let i=e.ONE,s=t;for(;r>rn;)r&ro&&(i=e.mul(i,s)),s=e.sqr(s),r>>=ro;return i})(a,e,t),div:(t,r)=>rd(t*rp(r,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>rp(t,e),sqrt:i.sqrt||(t=>(s||(s=function(e){if(e%rc===rl){let t=(e+ro)/rc;return function(e,r){let i=e.pow(r,t);if(!e.eql(e.sqr(i),r))throw Error("Cannot find square root");return i}}if(e%ru===rh){let t=(e-rh)/ru;return function(e,r){let i=e.mul(r,ra),s=e.pow(i,t),n=e.mul(r,s),o=e.mul(e.mul(n,ra),s),a=e.mul(n,e.sub(o,e.ONE));if(!e.eql(e.sqr(a),r))throw Error("Cannot find square root");return a}}return function(e){let t,r,i,s=(e-ro)/ra;for(t=e-ro,r=0;t%ra===rn;t/=ra,r++);for(i=ra;i<e&&function(e,t,r){if(t<rn)throw Error("invalid exponent, negatives unsupported");if(r<=rn)throw Error("invalid modulus");if(r===ro)return rn;let i=ro;for(;t>rn;)t&ro&&(i=i*e%r),e=e*e%r,t>>=ro;return i}(i,s,e)!==e-ro;i++)if(i>1e3)throw Error("Cannot find square root: likely non-prime P");if(1===r){let t=(e+ro)/rc;return function(e,r){let i=e.pow(r,t);if(!e.eql(e.sqr(i),r))throw Error("Cannot find square root");return i}}let n=(t+ro)/ra;return function(e,o){if(e.pow(o,s)===e.neg(e.ONE))throw Error("Cannot find square root");let a=r,l=e.pow(e.mul(e.ONE,i),t),c=e.pow(o,n),h=e.pow(o,t);for(;!e.eql(h,e.ONE);){if(e.eql(h,e.ZERO))return e.ZERO;let t=1;for(let r=e.sqr(h);t<a&&!e.eql(r,e.ONE);t++)r=e.sqr(r);let r=e.pow(l,ro<<BigInt(a-t-1));l=e.sqr(r),c=e.mul(c,r),h=e.mul(h,l),a=t}return c}}(e)}(e)),s(a,t))),invertBatch:e=>{let t,r,i;return t=Array(e.length),r=e.reduce((e,r,i)=>a.is0(r)?e:(t[i]=e,a.mul(e,r)),a.ONE),i=a.inv(r),e.reduceRight((e,r,i)=>a.is0(r)?e:(t[i]=a.mul(e,t[i]),a.mul(e,r)),i),t},cmov:(e,t,r)=>r?t:e,toBytes:e=>r?t4(e,o):t5(e,o),fromBytes:e=>{if(e.length!==o)throw Error("Field.fromBytes: expected "+o+" bytes, got "+e.length);return r?t3(e):t2(t1(e))}});return Object.freeze(a)}let rm=BigInt(0),rw=BigInt(1);function rv(e,t){let r=t.negate();return e?r:t}function rE(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error("invalid window size, expected [1.."+t+"], got W="+e)}function rx(e,t){return rE(e,t),{windows:Math.ceil(t/e)+1,windowSize:2**(e-1)}}let rI=new WeakMap,rS=new WeakMap;function rO(e){return rS.get(e)||1}let r_=BigInt(0),rA=BigInt(1),rP=BigInt(2),rT=BigInt(8),rN={zip215:!0};BigInt(0),BigInt(1);let rR=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),rC=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");BigInt(0);let rB=BigInt(1),rU=BigInt(2);BigInt(3);let rk=BigInt(5),rD=BigInt(8),rL=rb(rR,void 0,!0),rj=function(e){var t;let r,i=(ri(e.Fp,rg.reduce((e,t)=>
1(e[t]="function",e),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"})),ri(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),r=Object.freeze({...ry(e.n,e.nBitLength),...e,p:e.Fp.ORDER}),ri(e,{hash:"function",a:"bigint",d:"bigint",randomBytes:"function"},{adjustScalarBytes:"function",domain:"function",uvRatio:"function",mapToCurve:"function"}),Object.freeze({...r})),{Fp:s,n:n,prehash:o,hash:a,randomBytes:l,nByteLength:c,h:h}=i,u=rP<<BigInt(8*c)-rA,d=s.create,f=rb(i.n,i.nBitLength),p=i.uvRatio||((e,t)=>{try{return{isValid:!0,value:s.sqrt(e*s.inv(t))}}catch{return{isValid:!1,value:r_}}}),g=i.adjustScalarBytes||(e=>e),y=i.domain||((e,t,r)=>{if(tX("phflag",r),t.length||r)throw Error("Contexts/pre-hash are not supported");return e});function b(e,t){rt("coordinate "+e,t,r_,u)}function m(e){if(!(e instanceof E))throw Error("ExtendedPoint expected")}let w=rs((e,t)=>{let{ex:r,ey:i,ez:n}=e,o=e.is0();null==t&&(t=o?rT:s.inv(n));let a=d(r*t),l=d(i*t),c=d(n*t);if(o)return{x:r_,y:rA};if(c!==rA)throw Error("invZ was invalid");return{x:a,y:l}}),v=rs(e=>{let{a:t,d:r}=i;if(e.is0())throw Error("bad point: ZERO");let{ex:s,ey:n,ez:o,et:a}=e,l=d(s*s),c=d(n*n),h=d(o*o),u=d(h*h),f=d(l*t);if(d(h*d(f+c))!==d(u+d(r*d(l*c))))throw Error("bad point: equation left != right (1)");if(d(s*n)!==d(o*a))throw Error("bad point: equation left != right (2)");return!0});
1class E{constructor(e,t,r,i){this.ex=e,this.ey=t,this.ez=r,this.et=i,b("x",e),b("y",t),b("z",r),b("t",i),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(e){if(e instanceof E)throw Error("extended point not allowed");let{x:t,y:r}=e||{};return b("x",t),b("y",r),new E(t,r,rA,d(t*r))}static normalizeZ(e){let t=s.invertBatch(e.map(e=>e.ez));return e.map((e,r)=>e.toAffine(t[r])).map(E.fromAffine)}static msm(e,t){return function(e,t,r,i){if(function(e,t){if(!Array.isArray(e))throw Error("array expected");e.forEach((e,r)=>{if(!(e instanceof t))throw Error("invalid point at index "+r)})}(r,e),function(e,t){if(!Array.isArray(e))throw Error("array of scalars expected");e.forEach((e,r)=>{if(!t.isValid(e))throw Error("invalid scalar at index "+r)})}(i,t),r.length!==i.length)throw Error("arrays of points and scalars must have equal length");let s=e.ZERO,n=function(e){let t;for(t=0;e>tG;e>>=tY,t+=1);return t}(BigInt(r.length)),o=n>12?n-3:n>4?n-2:n?2:1,a=(1<<o)-1,l=Array(a+1).fill(s),c=Math.floor((t.BITS-1)/o)*o,h=s;for(let e=c;e>=0;e-=o){l.fill(s);for(let t=0;t<i.length;t++){let s=Number(i[t]>>BigInt(e)&BigInt(a));l[s]=l[s].add(r[t])}let t=s;for(let e=l.length-1,r=s;e>0;e--)r=r.add(l[e]),t=t.add(r);if(h=h.add(t),0!==e)for(let e=0;e<o;e++)h=h.double()}return h}(E,f,e,t)}_setWindowSize(e){S.setWindowSize(this,e)}assertValidity(){v(this)}equals(e){m(e);let{ex:t,ey:r,ez:i}=this,{ex:s,ey:n,ez:o}=e,a=d(t*o),l=d(s*i),c=d(r*o),h=d(n*i);return a===l&&c===h}is0(){return this.equals(E.ZERO)}negate(){return new E(d(-this.ex),this.ey,this.ez,d(-this.et))}double(){let{a:e}=i,{ex:t,ey:r,ez:s}=this,n=d(t*t),o=d(r*r),a=d(rP*d(s*s)),l=d(e*n),c=t+r,h=d(d(c*c)-n-o),u=l+o,f=u-a,p=l-o,g=d(h*f),y=d(u*p),b=d(h*p);return new E(g,y,d(f*u),b)}add(e){m(e);let{a:t,d:r}=i,{ex:s,ey:n,ez:o,et:a}=this,{ex:l,ey:c,ez:h,et:u}=e;if(t===BigInt(-1)){let e=d((n-s)*(c+l)),t=d((n+s)*(c-l)),r=d(t-e);if(r===r_)return this.double();let i=d(o*rP*u),f=d(a*rP*h),p=f+i,g=t+e,y=f-i,b=d(p*r),m=d(g*y),w=d(p*y);return new E(b,m,d(r*g),w)}let f=d(s*l),p=d(n*c),g=d(a*r*u),y=d(o*h),b=d((s+n)*(l+c)-f-p),w=y-g,v=y+g,x=d(p-t*f),I=d(b*w),S=d(v*x),O=d(b*x);return new E(I,S,d(w*v),O)}subtract(e){return this.add(e.negate())}wNAF(e){return S.wNAFCached(this,e,E.normalizeZ)}multiply(e){rt("scalar",e,rA,n);let{p:t,f:r}=this.wNAF(e);return E.normalizeZ([t,r])[0]}multiplyUnsafe(e,t=E.ZERO){return rt("scalar",e,r_,n),e===r_?I:this.is0()||e===rA?this:S.wNAFCachedUnsafe(this,e,E.normalizeZ,t)}isSmallOrder(){return this.multiplyUnsafe(h).is0()}isTorsionFree(){return S.unsafeLadder(this,n).is0()}toAffine(e){return w(this,e)}clearCofactor(){let{h:e}=i;return e===rA?this:this.multiplyUnsafe(e)}static fromHex(e,t=!1){let{d:r,a:n}=i,o=s.BYTES;e=t9("pointHex",e,o),tX("zip215",t);let a=e.slice(),l=e[o-1];a[o-1]=-129&l;let c=t3(a);rt("pointHex.y",c,r_,t?u:s.ORDER);let h=d(c*c),{isValid:f,value:g}=p(d(h-rA),d(r*h-n));if(!f)throw Error("Point.fromHex: invalid y coordinate");let y=(g&rA)===rA,b=(128&l)!=0;if(!t&&g===r_&&b)throw Error("Point.fromHex: x=0 and x_0=1");return b!==y&&(g=d(-g)),E.fromAffine({x:g,y:c})}static fromPrivateKey(e){return O(e).point}toRawBytes(){let{x:e,y:t}=this.toAffine(),r=t4(t,s.BYTES);return r[r.length-1]|=e&rA?128:0,r}toHex(){return t1(this.toRawBytes())}}E.BASE=new E(i.Gx,i.Gy,rA,d(i.Gx*i.Gy)),E.ZERO=new E(r_,rA,rA,r_);let{BASE:x,ZERO:I}=E,S=(t=8*c,{constTimeNegate:rv,hasPrecomputes:e=>1!==rO(e),unsafeLadder(e,t,r=E.ZERO){let i=e;for(;t>rm;)t&rw&&(r=r.add(i)),i=i.double(),t>>=rw;return r},precomputeWindow(e,r){let{windows:i,windowSize:s}=rx(r,t),n=[],o=e,a=o;for(let e=0;e<i;e++){a=o,n.push(a);for(let e=1;e<s;e++)a=a.add(o),n.push(a);o=a.double()}return n},wNAF(e,r,i){let{windows:s,windowSize:n}=rx(e,t),o=E.ZERO,a=E.BASE,l=BigInt(2**e-1),c=2**e,h=BigInt(e);for(let e=0;e<s;e++){let t=e*n,s=Number(i&l);i>>=h,s>n&&(s-=c,i+=rw);let u=t+Math.abs(s)-1,d=e%2!=0,f=s<0;0===s?a=a.add(rv(d,r[t])):o=o.add(rv(f,r[u]))}return{p:o,f:a}},wNAFUnsafe(e,r,i,s=E.ZERO){let{windows:n,windowSize:o}=rx(e,t),a=BigInt(2**e-1),l=2**e,c=BigInt(e);for(let e=0;e<n;e++){let t=e*o;if(i===rm)break;let n=Number(i&a);if(i>>=c,n>o&&(n-=l,i+=rw),0===n)continue;let h=r[t+Math.abs(n)-1];n<0&&(h=h.negate()),s=s.add(h)}return s},getPrecomputes(e,t,r){let i=rI.get(t);
1return i||(i=this.precomputeWindow(t,e),1!==e&&rI.set(t,r(i))),i},wNAFCached(e,t,r){let i=rO(e);return this.wNAF(i,this.getPrecomputes(i,e,r),t)},wNAFCachedUnsafe(e,t,r,i){let s=rO(e);return 1===s?this.unsafeLadder(e,t,i):this.wNAFUnsafe(s,this.getPrecomputes(s,e,r),t,i)},setWindowSize(e,r){rE(r,t),rS.set(e,r),rI.delete(e)}});function O(e){let t=s.BYTES;e=t9("private key",e,t);let r=t9("hashed private key",a(e),2*t),i=g(r.slice(0,t)),o=r.slice(t,2*t),l=rd(t3(i),n),c=x.multiply(l),h=c.toRawBytes();return{head:i,prefix:o,scalar:l,point:c,pointBytes:h}}function _(e=new Uint8Array,...t){return rd(t3(a(y(t7(...t),t9("context",e),!!o))),n)}return x._setWindowSize(8),{CURVE:i,getPublicKey:function(e){return O(e).pointBytes},sign:function(e,t,r={}){e=t9("message",e),o&&(e=o(e));let{prefix:i,scalar:a,pointBytes:l}=O(t),c=_(r.context,i,e),h=x.multiply(c).toRawBytes(),u=rd(c+_(r.context,h,l,e)*a,n);return rt("signature.s",u,r_,n),t9("result",t7(h,t4(u,s.BYTES)),2*s.BYTES)},verify:function(e,t,r,i=rN){let n,a,l,{context:c,zip215:h}=i,u=s.BYTES;e=t9("signature",e,2*u),t=t9("message",t),r=t9("publicKey",r,u),void 0!==h&&tX("zip215",h),o&&(t=o(t));let d=t3(e.slice(u,2*u));try{n=E.fromHex(r,h),a=E.fromHex(e.slice(0,u),h),l=x.multiplyUnsafe(d)}catch{return!1}if(!h&&n.isSmallOrder())return!1;let f=_(c,a.toRawBytes(),n.toRawBytes(),t);return a.add(n.multiplyUnsafe(f)).subtract(l).clearCofactor().equals(E.ZERO)},ExtendedPoint:E,utils:{getExtendedPublicKey:O,randomPrivateKey:()=>l(s.BYTES),precompute:(e=8,t=E.BASE)=>(t._setWindowSize(e),t.multiply(BigInt(3)),t)}}}({a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:rL,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:rD,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:tW,randomBytes:tO,adjustScalarBytes:function(e){return e[0]&=248,e[31]&=127,e[31]|=64,e},uvRatio:function(e,t){var r;let i,s,n,o,a,l,c,h,u,d,f,p,g,y,b=rd(t*t*t,rR),m=(r=e*rd(b*b*t,rR),i=BigInt(10),s=BigInt(20),n=BigInt(40),o=BigInt(80),l=rf(a=r*r%rR*r%rR,rU,rR)*a%rR,c=rf(l,rB,rR)*r%rR,h=rf(c,rk,rR)*c%rR,u=rf(h,i,rR)*h%rR,d=rf(u,s,rR)*u%rR,f=rf(d,n,rR)*d%rR,p=rf(f,o,rR)*f%rR,g=rf(p,o,rR)*f%rR,y=rf(g,i,rR)*h%rR,{pow_p_5_8:rf(y,rU,rR)*r%rR,b2:a}).pow_p_5_8,w=rd(e*b*m,rR),v=rd(t*w*w,rR),E=w,x=rd(w*rC,rR),I=v===e,S=v===rd(-e,rR),O=v===rd(-e*rC,rR);return I&&(w=E),(S||O)&&(w=x),(rd(w,rR)&ro)===ro&&(w=rd(-w,rR)),{isValid:I||S,value:w}}}),rM="base64url",rq="utf8",r$="utf8",rz="base58btc";function rV(e){return null!=globalThis.Buffer?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function rF(e=0){return null!=globalThis.Buffer&&null!=globalThis.Buffer.allocUnsafe?rV(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function rK(e,t){t||(t=e.reduce((e,t)=>e+t.length,0));let r=rF(t),i=0;for(let t of e)r.set(t,i),i+=t.length;return rV(r)}var rH=function(e,t){if(e.length>=255)throw TypeError("Alphabet too long");for(var r=new Uint8Array(256),i=0;i<r.length;i++)r[i]=255;for(var s=0;s<e.length;s++){var n=e.charAt(s),o=n.charCodeAt(0);if(255!==r[o])throw TypeError(n+" is ambiguous");r[o]=s}var a=e.length,l=e.charAt(0),c=Math.log(a)/Math.log(256),h=Math.log(256)/Math.log(a);function u(e){if("string"!=typeof e)throw TypeError("Expected String");if(0===e.length)return new Uint8Array;var t=0;if(" "!==e[0]){for(var i=0,s=0;e[t]===l;)i++,t++;for(var n=(e.length-t)*c+1>>>0,o=new Uint8Array(n);e[t];){var h=r[e.charCodeAt(t)];if(255===h)return;for(var u=0,d=n-1;(0!==h||u<s)&&-1!==d;d--,u++)h+=a*o[d]>>>0,o[d]=h%256>>>0,h=h/256>>>0;if(0!==h)throw Error("Non-zero carry");s=u,t++}if(" "!==e[t]){for(var f=n-s;f!==n&&0===o[f];)f++;for(var p=new Uint8Array(i+(n-f)),g=i;f!==n;)p[g++]=o[f++];return p}}}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw TypeError("Expected Uint8Array");if(0===t.length)return"";for(var r=0,i=0,s=0,n=t.length;s!==n&&0===t[s];)s++,r++;for(var o=(n-s)*h+1>>>0,c=new Uint8Array(o);s!==n;){for(var u=t[s],d=0,f=o-1;(0!==u||d<i)&&-1!==f;f--,d++)u+=256*c[f]>>>0,c[f]=u%a>>>0,u=u/a>>>0;if(0!==u)throw Error("Non-zero carry");i=d,s++}for(var p=o-i;p!==o&&0===c[p];)p++;for(var g=l.repeat(r);p<o;++p)g+=e.charAt(c[p]);return g},decodeUnsafe:u,decode:function(e){var r=u(e);if(r)return r;throw Error(`Non-${t} character`)}}};let rW=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 Error("Unknown type, must be binary type")};class rG{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 rY{constructor(e,t,r){if(this.name=e,this.prefix=t,void 0===t.codePointAt(0))throw 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}
1 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 rJ(this,e)}}class rZ{constructor(e){this.decoders=e}or(e){return rJ(this,e)}decode(e){let 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`)}}let rJ=(e,t)=>new rZ({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}});class rQ{constructor(e,t,r,i){this.name=e,this.prefix=t,this.baseEncode=r,this.baseDecode=i,this.encoder=new rG(e,t,r),this.decoder=new rY(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}let rX=({name:e,prefix:t,encode:r,decode:i})=>new rQ(e,t,r,i),r0=({prefix:e,name:t,alphabet:r})=>{let{encode:i,decode:s}=rH(r,t);return rX({prefix:e,name:t,encode:i,decode:e=>rW(s(e))})},r1=({name:e,prefix:t,bitsPerChar:r,alphabet:i})=>rX({prefix:t,name:e,encode:e=>((e,t,r)=>{let i="="===t[t.length-1],s=(1<<r)-1,n="",o=0,a=0;for(let i=0;i<e.length;++i)for(a=a<<8|e[i],o+=8;o>r;)o-=r,n+=t[s&a>>o];if(o&&(n+=t[s&a<<r-o]),i)for(;n.length*r&7;)n+="=";return n})(e,i,r),decode:t=>((e,t,r,i)=>{let s={};for(let e=0;e<t.length;++e)s[t[e]]=e;let n=e.length;for(;"="===e[n-1];)--n;let o=new Uint8Array(n*r/8|0),a=0,l=0,c=0;for(let t=0;t<n;++t){let n=s[e[t]];if(void 0===n)throw SyntaxError(`Non-${i} character`);l=l<<r|n,(a+=r)>=8&&(a-=8,o[c++]=255&l>>a)}if(a>=r||255&l<<8-a)throw SyntaxError("Unexpected end of data");return o})(t,i,r,e)});var r2=Object.freeze({__proto__:null,identity:rX({prefix:"\0",name:"identity",encode:e=>new TextDecoder().decode(e),decode:e=>new TextEncoder().encode(e)})}),r8=Object.freeze({__proto__:null,base2:r1({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})}),r6=Object.freeze({__proto__:null,base8:r1({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})}),r3=Object.freeze({__proto__:null,base10:r0({prefix:"9",name:"base10",alphabet:"0123456789"})}),r5=Object.freeze({__proto__:null,base16:r1({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),base16upper:r1({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})}),r4=Object.freeze({__proto__:null,base32:r1({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),base32upper:r1({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),base32pad:r1({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),base32padupper:r1({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),base32hex:r1({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),base32hexupper:r1({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),base32hexpad:r1({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),base32hexpadupper:r1({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),base32z:r1({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})}),r9=Object.freeze({__proto__:null,base36:r0({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),base36upper:r0({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})}),r7=Object.freeze({__proto__:null,base58btc:r0({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),base58flickr:r0({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})}),ie=Object.freeze({__proto__:null,base64:r1({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),base64pad:r1({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),base64url:r1({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),base64urlpad:r1({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});let it=Array.from("\uD83D\uDE80\uD83E\uDE90☄\uD83D\uDEF0\uD83C\uDF0C\uD83C\uDF11\uD83C\uDF12\uD83C\uDF13\uD83C\uDF14\uD83C\uDF15\uD83C\uDF16\uD83C\uDF17\uD83C\uDF18\uD83C\uDF0D\uD83C\uDF0F\uD83C\uDF0E\uD83D\uDC09☀\uD83D\uDCBB\uD83D\uDDA5\uD83D\uDCBE\uD83D\uDCBF\uD83D\uDE02❤\uD83D\uDE0D\uD83E\uDD23\uD83D\uDE0A\uD83D\uDE4F\uD83D\uDC95\uD83D\uDE2D\uD83D\uDE18\uD83D\uDC4D\uD83D\uDE05\uD83D\uDC4F\uD83D\uDE01\uD83D\uDD25\uD83E\uDD70\uD83D\uDC94\uD83D\uDC96\uD83D\uDC99\uD83D\uDE22\uD83E\uDD14\uD83D\uDE06\uD83D\uDE44\uD83D\uDCAA\uD83D\uDE09☺\uD83D\uDC4C\uD83E\uDD17\uD83D\uDC9C\uD83D\uDE14\uD83D\uDE0E\uD83D\uDE07\uD83C\uDF39\uD83E\uDD26\uD83C\uDF89\uD83D\uDC9E✌✨\uD83E\uDD37\uD83D\uDE31\uD83D\uDE0C\uD83C\uDF38\uD83D\uDE4C\uD83D\uDE0B\uD83D\uDC97\uD83D\uDC9A\uD83D\uDE0F\uD83D\uDC9B\uD83D\uDE42\uD83D\uDC93\uD83E\uDD29\uD83D\uDE04\uD83D\uDE00\uD83D\uDDA4\uD83D\uDE03\uD83D\uDCAF\uD83D\uDE48\uD83D\uDC47\uD83C\uDFB6\uD83D\uDE12\uD83E\uDD2D❣\uD83D\uDE1C\uD83D\uDC8B\uD83D\uDC40\uD83D\uDE2A\uD83D\uDE11\uD83D\uDCA5\uD83D\uDE4B\uD83D\uDE1E\uD83D\uDE29\uD83D\uDE21\uD83E\uDD2A\uD83D\uDC4A\uD83E\uDD73\uD83D\uDE25\uD83E\uDD24\uD83D\uDC49\uD83D\uDC83\uD83D\uDE33✋\uD83D\uDE1A\uD83D\uDE1D\uD83D\uDE34\uD83C\uDF1F\uD83D\uDE2C\uD83D\uDE43\uD83C\uDF40\uD83C\uDF37\uD83D\uDE3B\uD83D\uDE13⭐✅\uD83E\uDD7A\uD83C\uDF08\uD83D\uDE08\uD83E\uDD18\uD83D\uDCA6✔\uD83D\uDE23\uD83C\uDFC3\uD83D\uDC90☹\uD83C\uDF8A\uD83D\uDC98\uD83D\uDE20☝\uD83D\uDE15\uD83C\uDF3A\uD83C\uDF82\uD83C\uDF3B\uD83D\uDE10\uD83D\uDD95\uD83D\uDC9D\uD83D\uDE4A\uD83D\uDE39\uD83D\uDDE3\uD83D\uDCAB\uD83D\uDC80\uD83D\uDC51\uD83C\uDFB5\uD83E\uDD1E\uD83D\uDE1B\uD83D\uDD34\uD83D\uDE24\uD83C\uDF3C\uD83D\uDE2B⚽\uD83E\uDD19☕\uD83C\uDFC6\uD83E\uDD2B\uD83D\uDC48\uD83D\uDE2E\uD83D\uDE46\uD83C\uDF7B\uD83C\uDF43\uD83D\uDC36\uD83D\uDC81\uD83D\uDE32\uD83C\uDF3F\uD83E\uDDE1\uD83C\uDF81⚡\uD83C\uDF1E\uD83C\uDF88❌✊\uD83D\uDC4B\uD83D\uDE30\uD83E\uDD28\uD83D\uDE36\uD83E\uDD1D\uD83D\uDEB6\uD83D\uDCB0\uD83C\uDF53\uD83D\uDCA2\uD83E\uDD1F\uD83D\uDE41\uD83D\uDEA8\uD83D\uDCA8\uD83E\uDD2C✈\uD83C\uDF80\uD83C\uDF7A\uD83E\uDD13\uD83D\uDE19\uD83D\uDC9F\uD83C\uDF31\uD83D\uDE16\uD83D\uDC76\uD83E\uDD74▶➡❓\uD83D\uDC8E\uD83D\uDCB8⬇\uD83D\uDE28\uD83C\uDF1A\uD83E\uDD8B\uD83D\uDE37\uD83D\uDD7A⚠\uD83D\uDE45\uD83D\uDE1F\uD83D\uDE35\uD83D\uDC4E\uD83E\uDD32\uD83E\uDD20\uD83E\uDD27\uD83D\uDCCC\uD83D\uDD35\uD83D\uDC85\uD83E\uDDD0\uD83D\uDC3E\uD83C\uDF52\uD83D\uDE17\uD83E\uDD11\uD83C\uDF0A\uD83E\uDD2F\uD83D\uDC37☎\uD83D\uDCA7\uD83D\uDE2F\uD83D\uDC86\uD83D\uDC46\uD83C\uDFA4\uD83D\uDE47\uD83C\uDF51❄\uD83C\uDF34\uD83D\uDCA3\uD83D\uDC38\uD83D\uDC8C\uD83D\uDCCD\uD83E\uDD40\uD83E\uDD22\uD83D\uDC45\uD83D\uDCA1\uD83D\uDCA9\uD83D\uDC50\uD83D\uDCF8\uD83D\uDC7B\uD83E\uDD10\uD83E\uDD2E\uD83C\uDFBC\uD83E\uDD75\uD83D\uDEA9\uD83C\uDF4E\uD83C\uDF4A\uD83D\uDC7C\uD83D\uDC8D\uD83D\uDCE3\uD83E\uDD42"),ir=it.reduce((e,t,r)=>(e[r]=t,e),[]),ii=it.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);var is=Object.freeze({__proto__:null,base256emoji:rX({prefix:"\uD83D\uDE80",name:"base256emoji",encode:function(e){return e.reduce((e,t)=>
1e+=ir[t],"")},decode:function(e){let t=[];for(let r of e){let e=ii[r.codePointAt(0)];if(void 0===e)throw Error(`Non-base256emoji character: ${r}`);t.push(e)}return new Uint8Array(t)}})});function io(e,t,r){t=t||[],r=r||0;for(var i=r;e>=0x80000000;)t[r++]=255&e|128,e/=128;for(;-128&e;)t[r++]=255&e|128,e>>>=7;return t[r]=0|e,io.bytes=r-i+1,t}var ia=function(e){return e<128?1:e<16384?2:e<2097152?3:e<0x10000000?4:e<0x800000000?5:e<0x40000000000?6:e<0x2000000000000?7:e<0x100000000000000?8:e<0x8000000000000000?9:10};let il=(e,t,r=0)=>(io(e,t,r),t),ic=(e,t)=>{let r=t.byteLength,i=ia(e),s=i+ia(r),n=new Uint8Array(s+r);return il(e,n,0),il(r,n,i),n.set(t,s),new ih(e,r,t,n)};class ih{constructor(e,t,r,i){this.code=e,this.size=t,this.digest=r,this.bytes=i}}let iu=({name:e,code:t,encode:r})=>new id(e,t,r);class id{constructor(e,t,r){this.name=e,this.code=t,this.encode=r}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?ic(this.code,t):t.then(e=>ic(this.code,e))}throw Error("Unknown type, must be binary type")}}let ip=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t));var ig=Object.freeze({__proto__:null,sha256:iu({name:"sha2-256",code:18,encode:ip("SHA-256")}),sha512:iu({name:"sha2-512",code:19,encode:ip("SHA-512")})}),iy=Object.freeze({__proto__:null,identity:{code:0,name:"identity",encode:rW,digest:e=>ic(0,rW(e))}});new TextEncoder,new TextDecoder;let ib={...r2,...r8,...r6,...r3,...r5,...r4,...r9,...r7,...ie,...is};function im(e,t,r,i){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:i}}}({...ig,...iy});let iw=im("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),iv=im("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{let t=rF((e=e.substring(1)).length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),iE={utf8:iw,"utf-8":iw,hex:ib.base16,latin1:iv,ascii:iv,binary:iv,...ib};function ix(e,t="utf8"){let r=iE[t];if(!r)throw Error(`Unsupported encoding "${t}"`);return("utf8"===t||"utf-8"===t)&&null!=globalThis.Buffer&&null!=globalThis.Buffer.from?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}function iI(e,t="utf8"){let r=iE[t];if(!r)throw Error(`Unsupported encoding "${t}"`);return("utf8"===t||"utf-8"===t)&&null!=globalThis.Buffer&&null!=globalThis.Buffer.from?rV(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function iS(e){return eu(ix(iI(e,rM),rq))}function iO(e){return ix(iI(ed(e),rq),rM)}function i_(e){return["did:key","z"+ix(rK([iI("K36",rz),e]),rz)].join(":")}function iA(e){let t=e.split(".");return{header:iS(t[0]),payload:iS(t[1]),signature:iI(t[2],rM),data:iI(t.slice(0,2).join("."),r$)}}function iP(e=tO(32)){let t=rj.getPublicKey(e);return{secretKey:rK([e,t]),publicKey:t}}async function iT(e,t,r,i,s=(0,z.fromMiliseconds)(Date.now())){let n={alg:"EdDSA",typ:"JWT"},o={iss:i_(i.publicKey),sub:e,aud:t,iat:s,exp:s+r},a=iI([iO((l={header:n,payload:o}).header),iO(l.payload)].join("."),r$);var l,c={header:n,payload:o,signature:rj.sign(a,i.secretKey.slice(0,32))};return[iO(c.header),iO(c.payload),ix(c.signature,rM)].join(".")}var iN=r(87358),iR=function(e,t,r){if(r||2==arguments.length)for(var i,s=0,n=t.length;s<n;s++)!i&&s in t||(i||(i=Array.prototype.slice.call(t,0,s)),i[s]=t[s]);return e.concat(i||Array.prototype.slice.call(t))},iC=function(e,t,r){this.name=e,this.version=t,this.os=r,this.type="browser"},iB=function(e){this.version=e,this.type="node",this.name="node",this.os=iN.platform},iU=function(e,t,r,i){this.name=e,this.version=t,this.os=r,this.bot=i,this.type="bot-device"},ik=function(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null},iD=function(){this.type="react-native",this.name="react-native",this.version=null,this.os=null},iL=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,ij=[["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;
vendor: 34,828 bytes, line 1
1\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/]],iM=[["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/]],iq=r(57247),i$=r(3536);class iz extends Error{constructor(e,t={}){const r=(()=>{if(t.cause instanceof iz){if(t.cause.details)return t.cause.details;if(t.cause.shortMessage)return t.cause.shortMessage}return t.cause&&"details"in t.cause&&"string"==typeof t.cause.details?t.cause.details:t.cause?.message?t.cause.message:t.details})(),i=t.cause instanceof iz&&t.cause.docsPath||t.docsPath,s=`https://oxlib.sh${i??""}`;super([e||"An error occurred.",...t.metaMessages?["",...t.metaMessages]:[],...r||i?["",r?`Details: ${r}`:void 0,i?`See: ${s}`:void 0]:[]].filter(e=>"string"==typeof e).join("\n"),t.cause?{cause:t.cause}:void 0),Object.defineProperty(this,"details",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docs",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"docsPath",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"shortMessage",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"cause",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"BaseError"}),Object.defineProperty(this,"version",{enumerable:!0,configurable:!0,writable:!0,value:"[email protected]"}),this.cause=t.cause,this.details=r,this.docs=s,this.docsPath=i,this.shortMessage=e}walk(e){return function e(t,r){return r?.(t)?t:t&&"object"==typeof t&&"cause"in t&&t.cause?e(t.cause,r):r?null:t}(this,e)}}function iV(e,t){if(iQ(e)>t)throw new i2({givenSize:iQ(e),maxSize:t})}function iF(e,t={}){let{dir:r,size:i=32}=t;if(0===i)return e;let s=e.replace("0x","");if(s.length>2*i)throw new i6({size:Math.ceil(s.length/2),targetSize:i,type:"Hex"});return`0x${s["right"===r?"padEnd":"padStart"](2*i,"0")}`}function iK(e,t,r){return JSON.stringify(e,(e,r)=>"function"==typeof t?t(e,r):"bigint"==typeof r?r.toString()+"#__bigint":r,r)}let iH=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function iW(e){return e instanceof Uint8Array?iG(e):Array.isArray(e)?iG(new Uint8Array(e)):e}function iG(e,t={}){let r="";for(let t=0;t<e.length;t++)r+=iH[e[t]];let i=`0x${r}`;return"number"==typeof t.size?(iV(i,t.size),iZ(i,t.size)):i}function iY(e,t={}){var r;let i,{signed:s,size:n}=t,o=BigInt(e);n?i=s?(1n<<8n*BigInt(n)-1n)-1n:2n**(8n*BigInt(n))-1n:"number"==typeof e&&(i=BigInt(Number.MAX_SAFE_INTEGER));let a="bigint"==typeof i&&s?-i-1n:0;if(i&&o>i||o<a){let t="bigint"==typeof e?"n":"";throw new iX({max:i?`${i}${t}`:void 0,min:`${a}${t}`,signed:s,size:n,value:`${e}${t}`})}let l=(s&&o<0?(1n<<BigInt(8*n))+BigInt(o):o).toString(16),c=`0x${l}`;return n?(r=c,iF(r,{dir:"left",size:n})):c}function iZ(e,t){return iF(e,{dir:"right",size:t})}function iJ(e,t,r,i={}){let{strict:s}=i;if("number"==typeof t&&t>0&&t>iQ(e)-1)throw new i8({offset:t,position:"start",size:iQ(e)});let n=`0x${e.replace("0x","").slice((t??0)*2,(r??e.length)*2)}`;return s&&function(e,t,r){if("number"==typeof t&&"number"==typeof r&&iQ(e)!==r-t)throw new i8({offset:r,position:"end",size:iQ(e)})}(n,t,r),n}function iQ(e){return Math.ceil((e.length-2)/2)}class iX extends iz{constructor({max:e,min:t,signed:r,size:i,value:s}){super(`Number \`${s}\` is not in safe${i?` ${8*i}-bit`:""}${r?" signed":" unsigned"} integer range ${e?`(\`${t}\` to \`${e}\`)`:`(above \`${t}\`)`}`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.IntegerOutOfRangeError"})}}class i0 extends iz{constructor(e){super(`Value \`${"object"==typeof e?iK(e):e}\` of type \`${typeof e}\` is an invalid hex type.`,{metaMessages:['Hex types must be represented as `"0x${string}"`.']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexTypeError"})}}class i1 extends iz{constructor(e){super(`Value \`${e}\` is an invalid hex value.`,{metaMessages:['Hex values must start with `"0x"` and contain only hexadecimal characters (0-9, a-f, A-F).']}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.InvalidHexValueError"})}}class i2 extends iz{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \`${t}\` bytes. Given size: \`${e}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeOverflowError"})}}class i8 extends iz{constructor({offset:e,position:t,size:r}){super(`Slice ${"start"===t?"starting":"ending"} at offset \`${e}\` is out-of-bounds (size: \`${r}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SliceOffsetOutOfBoundsError"})}}class i6 extends iz{constructor({size:e,targetSize:t,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\`${e}\`) exceeds padding size (\`${t}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Hex.SizeExceedsPaddingSizeError"})}}class i3 extends iz{constructor({signature:e}){super(`Value \`${e}\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${iQ(iW(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class i5 extends iz{constructor({value:e}){super(`Value \`${e}\` is an invalid y-parity value. Y-parity must be 0 or 1.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidYParityError"})}}class i4 extends iz{constructor({value:e}){super(`Value \`${e}\` is an invalid v value. v must be 27, 28 or >=35.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidVError"})}}var i9=r(64637),i7=r(20510),se=r(3013);let st=BigInt(0),sr=BigInt(1);function si(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function ss(e){if(!si(e))throw Error("Uint8Array expected")}function sn(e,t){if("boolean"!=typeof t)throw Error(e+" boolean expected, got "+t)}function so(e){let t=e.toString(16);return 1&t.length?"0"+t:t}function sa(e){if("string"!=typeof e)throw Error("hex string expected, got "+typeof e);return""===e?st:BigInt("0x"+e)}let sl="function"==typeof Uint8Array.from([]).toHex&&"function"==typeof Uint8Array.fromHex,sc=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function sh(e){if(ss(e),sl)return e.toHex();let t="";for(let r=0;r<e.length;r++)t+=sc[e[r]];return t}function su(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:void 0}function sd(e){if("string"!=typeof e)throw Error("hex string expected, got "+typeof e);if(sl)return Uint8Array.fromHex(e);let t=e.length,r=t/2;if(t%2)throw Error("hex string expected, got unpadded hex of length "+t);let i=new Uint8Array(r);for(let t=0,s=0;t<r;t++,s+=2){let r=su(e.charCodeAt(s)),n=su(e.charCodeAt(s+1));if(void 0===r||void 0===n)throw Error('hex string expected, got non-hex character "'+(e[s]+e[s+1])+'" at index '+s);i[t]=16*r+n}return i}function sf(e){return sa(sh(e))}function sp(e){return ss(e),sa(sh(Uint8Array.from(e).reverse()))}function sg(e,t){return sd(e.toString(16).padStart(2*t,"0"))}function sy(e,t){return sg(e,t).reverse()}function sb(e,t,r){let i;if("string"==typeof t)try{i=sd(t)}catch(t){throw Error(e+" must be hex string or Uint8Array, cause: "+t)}else if(si(t))i=Uint8Array.from(t);else throw Error(e+" must be hex string or Uint8Array");let s=i.length;if("number"==typeof r&&s!==r)throw Error(e+" of length "+r+" expected, got "+s);return i}function sm(...e){let t=0;for(let r=0;r<e.length;r++){let i=e[r];ss(i),t+=i.length}let r=new Uint8Array(t);for(let t=0,i=0;t<e.length;t++){let s=e[t];r.set(s,i),i+=s.length}return r}let sw=e=>"bigint"==typeof e&&st<=e;function sv(e,t,r){return sw(e)&&sw(t)&&sw(r)&&t<=e&&e<r}function sE(e,t,r,i){if(!sv(t,r,i))throw Error("expected valid "+e+": "+r+" <= n < "+i+", got "+t)}let sx=e=>(sr<<BigInt(e))-sr,sI=e=>new Uint8Array(e),sS={bigint:e=>"bigint"==typeof e,function:e=>"function"==typeof e,boolean:e=>"boolean"==typeof e,string:e=>"string"==typeof e,stringOrUint8Array:e=>"string"==typeof e||si(e),isSafeInteger:e=>Number.isSafeInteger(e),array:e=>Array.isArray(e),field:(e,t)=>t.Fp.isValid(e),hash:e=>"function"==typeof e&&Number.isSafeInteger(e.outputLen)};function sO(e,t,r={}){let i=(t,r,i)=>{let s=sS[r];if("function"!=typeof s)throw Error("invalid validator function");let n=e[t];if((!i||void 0!==n)&&!s(n,e))throw Error("param "+String(t)+" is invalid. Expected "+r+", got "+n)};for(let[e,r]of Object.entries(t))i(e,r,!1);for(let[e,t]of Object.entries(r))i(e,t,!0);return e}function s_(e){let t=new WeakMap;return(r,...i)=>{let s=t.get(r);if(void 0!==s)return s;let n=e(r,...i);return t.set(r,n),n}}let sA=BigInt(0),sP=BigInt(1),sT=BigInt(2),sN=BigInt(3),sR=BigInt(4),sC=BigInt(5),sB=BigInt(8);function sU(e,t){let r=e%t;return r>=sA?r:t+r}function sk(e,t,r){let i=e;for(;t-- >sA;)i*=i,i%=r;return i}function sD(e,t){if(e===sA)throw Error("invert: expected non-zero number");if(t<=sA)throw Error("invert: expected positive modulus, got "+t);let r=sU(e,t),i=t,s=sA,n=sP,o=sP,a=sA;for(;r!==sA;){let e=i/r,t=i%r,l=s-o*e,c=n-a*e;i=r,r=t,s=o,n=a,o=l,a=c}if(i!==sP)throw Error("invert: does not exist");return sU(s,t)}function sL(e,t){let r=(e.ORDER+sP)/sR,i=e.pow(t,r);if(!e.eql(e.sqr(i),t))throw Error("Cannot find square root");return i}function sj(e,t){let r=(e.ORDER-sC)/sB,i=e.mul(t,sT),s=e.pow(i,r),n=e.mul(t,s),o=e.mul(e.mul(n,sT),s),a=e.mul(n,e.sub(o,e.ONE));if(!e.eql(e.sqr(a),t))throw Error("Cannot find square root");return a}let sM=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function sq(e,t,r=!1){let i=Array(t.length).fill(r?e.ZERO:void 0),s=t.reduce((t,r,s)=>e.is0(r)?t:(i[s]=t,e.mul(t,r)),e.ONE),n=e.inv(s);return t.reduceRight((t,r,s)=>e.is0(r)?t:(i[s]=e.mul(t,i[s]),e.mul(t,r)),n),i}function s$(e,t){let r=(e.ORDER-sP)/sT,i=e.pow(t,r),s=e.eql(i,e.ONE),n=e.eql(i,e.ZERO),o=e.eql(i,e.neg(e.ONE));if(!s&&!n&&!o)throw Error("invalid Legendre symbol result");return s?1:n?0:-1}function sz(e,t){void 0!==t&&(0,se.Fe)(t);let r=void 0!==t?t:e.toString(2).length,i=Math.ceil(r/8);return{nBitLength:r,nByteLength:i}}function sV(e,t,r=!1,i={}){let s;if(e<=sA)throw Error("invalid field: expected ORDER > 0, got "+e);let{nBitLength:n,nByteLength:o}=sz(e,t);if(o>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");let a=Object.freeze({ORDER:e,isLE:r,BITS:n,BYTES:o,MASK:sx(n),ZERO:sA,ONE:sP,create:t=>sU(t,e),isValid:t=>{if("bigint"!=typeof t)throw Error("invalid field element: expected bigint, got "+typeof t);return sA<=t&&t<e},is0:e=>e===sA,isOdd:e=>(e&sP)===sP,neg:t=>sU(-t,e),eql:(e,t)=>e===t,sqr:t=>sU(t*t,e),add:(t,r)=>sU(t+r,e),sub:(t,r)=>sU(t-r,e),mul:(t,r)=>sU(t*r,e),pow:(e,t)=>(function(e,t,r){if(r<sA)throw Error("invalid exponent, negatives unsupported");if(r===sA)return e.ONE;if(r===sP)return t;let i=e.ONE,s=t;for(;r>sA;)r&sP&&(i=e.mul(i,s)),s=e.sqr(s),r>>=sP;return i})(a,e,t),div:(t,r)=>sU(t*sD(r,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>sD(t,e),sqrt:i.sqrt||(t=>(s||(s=e%sR===sN?sL:e%sB===sC?sj:function(e){if(e<BigInt(3))throw Error("sqrt is not defined for small field");let t=e-sP,r=0;for(;t%sT===sA;)t/=sT,r++;let i=sT,s=sV(e);for(;1===s$(s,i);)if(i++>1e3)throw Error("Cannot find square root: probably non-prime P");if(1===r)return sL;let n=s.pow(i,t),o=(t+sP)/sT;return function(e,i){if(e.is0(i))return i;if(1!==s$(e,i))throw Error("Cannot find square root");let s=r,a=e.mul(e.ONE,n),l=e.pow(i,t),c=e.pow(i,o);for(;!e.eql(l,e.ONE);){if(e.is0(l))return e.ZERO;let t=1,r=e.sqr(l);for(;!e.eql(r,e.ONE);)if(t++,r=e.sqr(r),t===s)throw Error("Cannot find square root");let i=sP<<BigInt(s-t-1),n=e.pow(a,i);s=t,a=e.sqr(n),l=e.mul(l,a),c=e.mul(c,n)}return c}}(e)),s(a,t))),toBytes:e=>r?sy(e,o):sg(e,o),fromBytes:e=>{if(e.length!==o)throw Error("Field.fromBytes: expected "+o+" bytes, got "+e.length);return r?sp(e):sf(e)},invertBatch:e=>sq(a,e),cmov:(e,t,r)=>r?t:e});return Object.freeze(a)}function sF(e){if("bigint"!=typeof e)throw Error("field order must be bigint");return Math.ceil(e.toString(2).length/8)}function sK(e){let t=sF(e);return t+Math.ceil(t/2)}let sH=BigInt(0),sW=BigInt(1);function sG(e,t){let r=t.negate();return e?r:t}function sY(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error("invalid window size, expected [1.."+t+"], got W="+e)}function sZ(e,t){sY(e,t);let r=Math.ceil(t/e)+1,i=2**(e-1),s=2**e;return{windows:r,windowSize:i,mask:sx(e),maxNumber:s,shiftBy:BigInt(e)}}function sJ(e,t,r){let{windowSize:i,mask:s,maxNumber:n,shiftBy:o}=r,a=Number(e&s),l=e>>o;a>i&&(a-=n,l+=sW);let c=t*i,h=c+Math.abs(a)-1,u=0===a;return{nextN:l,offset:h,isZero:u,isNeg:a<0,isNegF:t%2!=0,offsetF:c}}let sQ=new WeakMap,sX=new WeakMap;function s0(e){return sX.get(e)||1}function s1(e){return sO(e.Fp,sM.reduce((e,t)=>(e[t]="function",e),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"})),sO(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...sz(e.n,e.nBitLength),...e,...{p:e.Fp.ORDER}})}function s2(e){void 0!==e.lowS&&sn("lowS",e.lowS),void 0!==e.prehash&&sn("prehash",e.prehash)}class s8 extends Error{constructor(e=""){super(e)}}let s6={Err:s8,_tlv:{encode:(e,t)=>{let{Err:r}=s6;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(1&t.length)throw new r("tlv.encode: unpadded data");let i=t.length/2,s=so(i);if(s.length/2&128)throw new r("tlv.encode: long form length too big");let n=i>127?so(s.length/2|128):"";return so(e)+n+s+t},decode(e,t){let{Err:r}=s6,i=0;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(t.length<2||t[i++]!==e)throw new r("tlv.decode: wrong tlv");let s=t[i++],n=0;if(128&s){let e=127&s;if(!e)throw new r("tlv.decode(long): indefinite length not supported");if(e>4)throw new r("tlv.decode(long): byte length is too big");let o=t.subarray(i,i+e);if(o.length!==e)throw new r("tlv.decode: length bytes not complete");if(0===o[0])throw new r("tlv.decode(long): zero leftmost byte");for(let e of o)n=n<<8|e;if(i+=e,n<128)throw new r("tlv.decode(long): not minimal encoding")}else n=s;let o=t.subarray(i,i+n);if(o.length!==n)throw new r("tlv.decode: wrong value length");return{v:o,l:t.subarray(i+n)}}},_int:{encode(e){let{Err:t}=s6;if(e<s3)throw new t("integer: negative integers are not allowed");let r=so(e);if(8&Number.parseInt(r[0],16)&&(r="00"+r),1&r.length)throw new t("unexpected DER parsing assertion: unpadded hex");return r},decode(e){let{Err:t}=s6;if(128&e[0])throw new t("invalid signature integer: negative");if(0===e[0]&&!(128&e[1]))throw new t("invalid signature integer: unnecessary leading zero");return sf(e)}},toSig(e){let{Err:t,_int:r,_tlv:i}=s6,s=sb("signature",e),{v:n,l:o}=i.decode(48,s);if(o.length)throw new t("invalid signature: left bytes after parsing");let{v:a,l:l}=i.decode(2,n),{v:c,l:h}=i.decode(2,l);if(h.length)throw new t("invalid signature: left bytes after parsing");return{r:r.decode(a),s:r.decode(c)}},hexFromSig(e){let{_tlv:t,_int:r}=s6,i=t.encode(2,r.encode(e.r)),s=t.encode(2,r.encode(e.s));return t.encode(48,i+s)}},s3=BigInt(0),s5=BigInt(1),s4=(BigInt(2),BigInt(3)),s9=BigInt(4),s7=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),ne=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),nt=BigInt(0),nr=BigInt(1),ni=BigInt(2),ns=(e,t)=>(e+t/ni)/t,nn=sV(s7,void 0,void 0,{sqrt:function(e){let t=BigInt(3),r=BigInt(6),i=BigInt(11),s=BigInt(22),n=BigInt(23),o=BigInt(44),a=BigInt(88),l=e*e*e%s7,c=l*l*e%s7,h=sk(c,t,s7)*c%s7,u=sk(h,t,s7)*c%s7,d=sk(u,ni,s7)*l%s7,f=sk(d,i,s7)*d%s7,p=sk(f,s,s7)*f%s7,g=sk(p,o,s7)*p%s7,y=sk(g,a,s7)*g%s7,b=sk(y,o,s7)*p%s7,m=sk(b,t,s7)*c%s7,w=sk(m,n,s7)*f%s7,v=sk(w,r,s7)*l%s7,E=sk(v,ni,s7);if(!nn.eql(nn.sqr(E),e))throw Error("Cannot find square root");return E}}),no=(f={a:nt,b:BigInt(7),Fp:nn,n:ne,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-nr*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),s=BigInt("0x100000000000000000000000000000000"),n=ns(t*e,ne),o=ns(-r*e,ne),a=sU(e-n*t-o*i,ne),l=sU(-n*r-o*t,ne),c=a>s,h=l>s;if(c&&(a=ne-a),h&&(l=ne-l),a>s||l>s)throw Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:c,k1:a,k2neg:h,k2:l}}}},p=i9.sc,{...(o=e=>(function(e){let t,r=(sO(t=s1(e),{hash:"hash",hmac:"function",randomBytes:"function"},{bits2int:"function",bits2int_modN:"function",lowS:"boolean"}),Object.freeze({lowS:!0,...t})),{Fp:i,n:s,nByteLength:n,nBitLength:o}=r,a=i.BYTES+1,l=2*i.BYTES+1;function c(e){return sU(e,s)}let{ProjectivePoint:h,normPrivateKeyToScalar:u,weierstrassEquation:d,isWithinCurveOrder:f}=function(e){var t;let r=function(e){let t=s1(e);sO(t,{a:"field",b:"field"},{allowInfinityPoint:"boolean",allowedPrivateKeyLengths:"array",clearCofactor:"function",fromBytes:"function",isTorsionFree:"function",toBytes:"function",wrapPrivateKey:"boolean"});let{endo:r,Fp:i,a:s}=t;if(r){if(!i.eql(s,i.ZERO))throw Error("invalid endo: CURVE.a must be 0");if("object"!=typeof r||"bigint"!=typeof r.beta||"function"!=typeof r.splitScalar)throw Error('invalid endo: expected "beta": bigint and "splitScalar": function')}return Object.freeze({...t})}(e),{Fp:i}=r,s=sV(r.n,r.nBitLength),n=r.toBytes||((e,t,r)=>{let s=t.toAffine();return sm(Uint8Array.from([4]),i.toBytes(s.x),i.toBytes(s.y))}),o=r.fromBytes||(e=>{let t=e.subarray(1);return{x:i.fromBytes(t.subarray(0,i.BYTES)),y:i.fromBytes(t.subarray(i.BYTES,2*i.BYTES))}});function a(e){let{a:t,b:s}=r,n=i.sqr(e),o=i.mul(n,e);return i.add(i.add(o,i.mul(e,t)),s)}function l(e,t){let r=i.sqr(t),s=a(e);return i.eql(r,s)}if(!l(r.Gx,r.Gy))throw Error("bad curve params: generator point");let c=i.mul(i.pow(r.a,s4),s9),h=i.mul(i.sqr(r.b),BigInt(27));if(i.is0(i.add(c,h)))throw Error("bad curve params: a or b");function u(e){let t,{allowedPrivateKeyLengths:i,nByteLength:s,wrapPrivateKey:n,n:o}=r;if(i&&"bigint"!=typeof e){if(si(e)&&(e=sh(e)),"string"!=typeof e||!i.includes(e.length))throw Error("invalid private key");e=e.padStart(2*s,"0")}try{t="bigint"==typeof e?e:sf(sb("private key",e,s))}catch(t){throw Error("invalid private key, expected hex or "+s+" bytes, got "+typeof e)}return n&&(t=sU(t,o)),sE("private key",t,s5,o),t}function d(e){if(!(e instanceof g))throw Error("ProjectivePoint expected")}let f=s_((e,t)=>{let{px:r,py:s,pz:n}=e;if(i.eql(n,i.ONE))return{x:r,y:s};let o=e.is0();null==t&&(t=o?i.ONE:i.inv(n));let a=i.mul(r,t),l=i.mul(s,t),c=i.mul(n,t);if(o)return{x:i.ZERO,y:i.ZERO};if(!i.eql(c,i.ONE))throw Error("invZ was invalid");return{x:a,y:l}}),p=s_(e=>{if(e.is0()){if(r.allowInfinityPoint&&!i.is0(e.py))return;throw Error("bad point: ZERO")}let{x:t,y:s}=e.toAffine();if(!i.isValid(t)||!i.isValid(s))throw Error("bad point: x or y not FE");if(!l(t,s))throw Error("bad point: equation left != right");if(!e.isTorsionFree())throw Error("bad point: not in prime-order subgroup");return!0});class g{constructor(e,t,r){if(null==e||!i.isValid(e))throw Error("x required");if(null==t||!i.isValid(t)||i.is0(t))throw Error("y required");if(null==r||!i.isValid(r))throw Error("z required");this.px=e,this.py=t,this.pz=r,Object.freeze(this)}static fromAffine(e){let{x:t,y:r}=e||{};if(!e||!i.isValid(t)||!i.isValid(r))throw Error("invalid affine point");if(e instanceof g)throw Error("projective point not allowed");let s=e=>i.eql(e,i.ZERO);return s(t)&&s(r)?g.ZERO:new g(t,r,i.ONE)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static normalizeZ(e){let t=sq(i,e.map(e=>e.pz));return e.map((e,r)=>e.toAffine(t[r])).map(g.fromAffine)}static fromHex(e){let t=g.fromAffine(o(sb("pointHex",e)));return t.assertValidity(),t}static fromPrivateKey(e){return g.BASE.multiply(u(e))}static msm(e,t){return function(e,t,r,i){if(!Array.isArray(r))throw Error("array expected");r.forEach((t,r)=>{if(!(t instanceof e))throw Error("invalid point at index "+r)});if(!Array.isArray(i))throw Error("array of scalars expected");i.forEach((e,r)=>{if(!t.isValid(e))throw Error("invalid scalar at index "+r)});let s=r.length,n=i.length;if(s!==n)throw Error("arrays of points and scalars must have equal length");let o=e.ZERO,a=function(e){let t;for(t=0;e>st;e>>=sr,t+=1);return t}(BigInt(s)),l=1;a>12?l=a-3:a>4?l=a-2:a>0&&(l=2);let c=sx(l),h=Array(Number(c)+1).fill(o),u=Math.floor((t.BITS-1)/l)*l,d=o;for(let e=u;e>=0;e-=l){h.fill(o);for(let t=0;t<n;t++){let s=Number(i[t]>>BigInt(e)&c);h[s]=h[s].add(r[t])}let t=o;for(let e=h.length-1,r=o;e>0;e--)r=r.add(h[e]),t=t.add(r);if(d=d.add(t),0!==e)for(let e=0;e<l;e++)d=d.double()}return d}(g,s,e,t)}_setWindowSize(e){m.setWindowSize(this,e)}assertValidity(){p(this)}hasEvenY(){let{y:e}=this.toAffine();if(i.isOdd)return!i.isOdd(e);throw Error("Field doesn't support isOdd")}equals(e){d(e);let{px:t,py:r,pz:s}=this,{px:n,py:o,pz:a}=e,l=i.eql(i.mul(t,a),i.mul(n,s)),c=i.eql(i.mul(r,a),i.mul(o,s));return l&&c}negate(){return new g(this.px,i.neg(this.py),this.pz)}double(){let{a:e,b:t}=r,s=i.mul(t,s4),{px:n,py:o,pz:a}=this,l=i.ZERO,c=i.ZERO,h=i.ZERO,u=i.mul(n,n),d=i.mul(o,o),f=i.mul(a,a),p=i.mul(n,o);return p=i.add(p,p),h=i.mul(n,a),h=i.add(h,h),l=i.mul(e,h),c=i.mul(s,f),c=i.add(l,c),l=i.sub(d,c),c=i.add(d,c),c=i.mul(l,c),l=i.mul(p,l),h=i.mul(s,h),f=i.mul(e,f),p=i.sub(u,f),p=i.mul(e,p),p=i.add(p,h),h=i.add(u,u),u=i.add(h,u),u=i.add(u,f),u=i.mul(u,p),c=i.add(c,u),f=i.mul(o,a),f=i.add(f,f),u=i.mul(f,p),l=i.sub(l,u),h=i.mul(f,d),h=i.add(h,h),new g(l,c,h=i.add(h,h))}add(e){d(e);let{px:t,py:s,pz:n}=this,{px:o,py:a,pz:l}=e,c=i.ZERO,h=i.ZERO,u=i.ZERO,f=r.a,p=i.mul(r.b,s4),y=i.mul(t,o),b=i.mul(s,a),m=i.mul(n,l),w=i.add(t,s),v=i.add(o,a);w=i.mul(w,v),v=i.add(y,b),w=i.sub(w,v),v=i.add(t,n);let E=i.add(o,l);return v=i.mul(v,E),E=i.add(y,m),v=i.sub(v,E),E=i.add(s,n),c=i.add(a,l),E=i.mul(E,c),c=i.add(b,m),E=i.sub(E,c),u=i.mul(f,v),c=i.mul(p,m),u=i.add(c,u),c=i.sub(b,u),u=i.add(b,u),h=i.mul(c,u),b=i.add(y,y),b=i.add(b,y),m=i.mul(f,m),v=i.mul(p,v),b=i.add(b,m),m=i.sub(y,m),m=i.mul(f,m),v=i.add(v,m),y=i.mul(b,v),h=i.add(h,y),y=i.mul(E,v),c=i.mul(w,c),c=i.sub(c,y),y=i.mul(w,b),u=i.mul(E,u),new g(c,h,u=i.add(u,y))}subtract(e){return this.add(e.negate())}is0(){return this.equals(g.ZERO)}wNAF(e){return m.wNAFCached(this,e,g.normalizeZ)}multiplyUnsafe(e){let{endo:t,n:s}=r;sE("scalar",e,s3,s);let n=g.ZERO;if(e===s3)return n;if(this.is0()||e===s5)return this;if(!t||m.hasPrecomputes(this))return m.wNAFCachedUnsafe(this,e,g.normalizeZ);let{k1neg:o,k1:a,k2neg:l,k2:c}=t.splitScalar(e),h=n,u=n,d=this;for(;a>s3||c>s3;)a&s5&&(h=h.add(d)),c&s5&&(u=u.add(d)),d=d.double(),a>>=s5,c>>=s5;return o&&(h=h.negate()),l&&(u=u.negate()),u=new g(i.mul(u.px,t.beta),u.py,u.pz),h.add(u)}multiply(e){let t,s,{endo:n,n:o}=r;if(sE("scalar",e,s5,o),n){let{k1neg:r,k1:o,k2neg:a,k2:l}=n.splitScalar(e),{p:c,f:h}=this.wNAF(o),{p:u,f:d}=this.wNAF(l);c=m.constTimeNegate(r,c),u=m.constTimeNegate(a,u),u=new g(i.mul(u.px,n.beta),u.py,u.pz),t=c.add(u),s=h.add(d)}else{let{p:r,f:i}=this.wNAF(e);t=r,s=i}return g.normalizeZ([t,s])[0]}multiplyAndAddUnsafe(e,t,r){let i=g.BASE,s=(e,t)=>t!==s3&&t!==s5&&e.equals(i)?e.multiply(t):e.multiplyUnsafe(t),n=s(this,t).add(s(e,r));return n.is0()?void 0:n}toAffine(e){return f(this,e)}isTorsionFree(){let{h:e,isTorsionFree:t}=r;if(e===s5)return!0;if(t)return t(g,this);throw Error("isTorsionFree() has not been declared for the elliptic curve")}clearCofactor(){let{h:e,clearCofactor:t}=r;return e===s5?this:t?t(g,this):this.multiplyUnsafe(r.h)}toRawBytes(e=!0){return sn("isCompressed",e),this.assertValidity(),n(g,this,e)}toHex(e=!0){return sn("isCompressed",e),sh(this.toRawBytes(e))}}g.BASE=new g(r.Gx,r.Gy,i.ONE),g.ZERO=new g(i.ZERO,i.ONE,i.ZERO);let{endo:y,nBitLength:b}=r,m=(t=y?Math.ceil(b/2):b,{constTimeNegate:sG,hasPrecomputes:e=>1!==s0(e),unsafeLadder(e,t,r=g.ZERO){let i=e;for(;t>sH;)t&sW&&(r=r.add(i)),i=i.double(),t>>=sW;return r},precomputeWindow(e,r){let{windows:i,windowSize:s}=sZ(r,t),n=[],o=e,a=o;for(let e=0;e<i;e++){a=o,n.push(a);for(let e=1;e<s;e++)a=a.add(o),n.push(a);o=a.double()}return n},wNAF(e,r,i){let s=g.ZERO,n=g.BASE,o=sZ(e,t);for(let e=0;e<o.windows;e++){let{nextN:t,offset:a,isZero:l,isNeg:c,isNegF:h,offsetF:u}=sJ(i,e,o);i=t,l?n=n.add(sG(h,r[u])):s=s.add(sG(c,r[a]))}return{p:s,f:n}},wNAFUnsafe(e,r,i,s=g.ZERO){let n=sZ(e,t);for(let e=0;e<n.windows&&i!==sH;e++){let{nextN:t,offset:o,isZero:a,isNeg:l}=sJ(i,e,n);if(i=t,!a){let e=r[o];s=s.add(l?e.negate():e)}}return s},getPrecomputes(e,t,r){let i=sQ.get(t);return i||(i=this.precomputeWindow(t,e),1!==e&&sQ.set(t,r(i))),i},wNAFCached(e,t,r){let i=s0(e);return this.wNAF(i,this.getPrecomputes(i,e,r),t)},wNAFCachedUnsafe(e,t,r,i){let s=s0(e);return 1===s?this.unsafeLadder(e,t,i):this.wNAFUnsafe(s,this.getPrecomputes(s,e,r),t,i)},setWindowSize(e,r){sY(r,t),sX.set(e,r),sQ.delete(e)}});return{CURVE:r,ProjectivePoint:g,normPrivateKeyToScalar:u,weierstrassEquation:a,isWithinCurveOrder:function(e){return sv(e,s5,r.n)}}}({...r,toBytes(e,t,r){let s=t.toAffine(),n=i.toBytes(s.x);return(sn("isCompressed",r),r)?sm(Uint8Array.from([t.hasEvenY()?2:3]),n):sm(Uint8Array.from([4]),n,i.toBytes(s.y))},fromBytes(e){let t=e.length,r=e[0],s=e.subarray(1);if(t===a&&(2===r||3===r)){let e,t=sf(s);if(!sv(t,s5,i.ORDER))throw Error("Point is not on curve");let n=d(t);try{e=i.sqrt(n)}catch(e){throw Error("Point is not on curve"+(e instanceof Error?": "+e.message:""))}return(1&r)==1!=((e&s5)===s5)&&(e=i.neg(e)),{x:t,y:e}}if(t===l&&4===r)return{x:i.fromBytes(s.subarray(0,i.BYTES)),y:i.fromBytes(s.subarray(i.BYTES,2*i.BYTES))};throw Error("invalid Point, expected length of "+a+", or uncompressed "+l+", got "+t)}}),p=(e,t,r)=>sf(e.slice(t,r));class g{constructor(e,t,r){sE("r",e,s5,s),sE("s",t,s5,s),this.r=e,this.s=t,null!=r&&(this.recovery=r),Object.freeze(this)}static fromCompact(e){return new g(p(e=sb("compactSignature",e,2*n),0,n),p(e,n,2*n))}static fromDER(e){let{r:t,s:r}=s6.toSig(sb("DER",e));return new g(t,r)}assertValidity(){}addRecoveryBit(e){return new g(this.r,this.s,e)}recoverPublicKey(e){let{r:t,s:n,recovery:o}=this,a=m(sb("msgHash",e));if(null==o||![0,1,2,3].includes(o))throw Error("recovery id invalid");let l=2===o||3===o?t+r.n:t;if(l>=i.ORDER)throw Error("recovery id 2 or 3 invalid");let u=(1&o)==0?"02":"03",d=h.fromHex(u+sh(sg(l,i.BYTES))),f=sD(l,s),p=c(-a*f),g=c(n*f),y=h.BASE.multiplyAndAddUnsafe(d,p,g);if(!y)throw Error("point at infinify");return y.assertValidity(),y}hasHighS(){return this.s>s>>s5}normalizeS(){return this.hasHighS()?new g(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return sd(this.toDERHex())}toDERHex(){return s6.hexFromSig(this)}toCompactRawBytes(){return sd(this.toCompactHex())}toCompactHex(){return sh(sg(this.r,n))+sh(sg(this.s,n))}}function y(e){if("bigint"==typeof e)return!1;if(e instanceof h)return!0;let t=sb("key",e).length,s=i.BYTES,o=s+1;if(!r.allowedPrivateKeyLengths&&n!==o)return t===o||t===2*s+1}let b=r.bits2int||function(e){if(e.length>8192)throw Error("input is too large");let t=sf(e),r=8*e.length-o;return r>0?t>>BigInt(r):t},m=r.bits2int_modN||function(e){return c(b(e))},w=sx(o);function v(e){return sE("num < 2^"+o,e,s3,w),sg(e,n)}let E={lowS:r.lowS,prehash:!1},x={lowS:r.lowS,prehash:!1};return h.BASE._setWindowSize(8),{CURVE:r,getPublicKey:function(e,t=!0){return h.fromPrivateKey(e).toRawBytes(t)},getSharedSecret:function(e,t,r=!0){if(!0===y(e))throw Error("first arg must be private key");if(!1===y(t))throw Error("second arg must be public key");return h.fromHex(t).multiply(u(e)).toRawBytes(r)},sign:function(e,t,n=E){let{seed:o,k2sig:a}=function(e,t,n=E){if(["recovered","canonical"].some(e=>e in n))throw Error("sign() legacy options not supported");let{hash:o,randomBytes:a}=r,{lowS:l,prehash:d,extraEntropy:p}=n;null==l&&(l=!0),e=sb("msgHash",e),s2(n),d&&(e=sb("prehashed msgHash",o(e)));let y=m(e),w=u(t),x=[v(w),v(y)];if(null!=p&&!1!==p){let e=!0===p?a(i.BYTES):p;x.push(sb("extraEntropy",e))}return{seed:sm(...x),k2sig:function(e){var t;let r=b(e);if(!f(r))return;let i=sD(r,s),n=h.BASE.multiply(r).toAffine(),o=c(n.x);if(o===s3)return;let a=c(i*c(y+o*w));if(a===s3)return;let u=2*(n.x!==o)|Number(n.y&s5),d=a;return l&&a>s>>s5&&(d=(t=a)>s>>s5?c(-t):t,u^=1),new g(o,d,u)}}}(e,t,n);return(function(e,t,r){if("number"!=typeof e||e<2)throw Error("hashLen must be a number");if("number"!=typeof t||t<2)throw Error("qByteLen must be a number");if("function"!=typeof r)throw Error("hmacFn must be a function");let i=sI(e),s=sI(e),n=0,o=()=>{i.fill(1),s.fill(0),n=0},a=(...e)=>r(s,i,...e),l=(e=sI(0))=>{let t;if(s=a((t=[0],Uint8Array.from(t)),e),i=a(),0!==e.length){let t;s=a((t=[1],Uint8Array.from(t)),e),i=a()}},c=()=>{if(n++>=1e3)throw Error("drbg: tried 1000 values");let e=0,r=[];for(;e<t;){let t=(i=a()).slice();r.push(t),e+=i.length}return sm(...r)};return(e,t)=>{let r;for(o(),l(e);!(r=t(c()));)l();return o(),r}})(r.hash.outputLen,r.nByteLength,r.hmac)(o,a)},verify:function(e,t,i,n=x){let o,a;t=sb("msgHash",t),i=sb("publicKey",i);let{lowS:l,prehash:u,format:d}=n;if(s2(n),"strict"in n)throw Error("options.strict was renamed to lowS");if(void 0!==d&&"compact"!==d&&"der"!==d)throw Error("format must be compact or der");let f="string"==typeof e||si(e),p=!f&&!d&&"object"==typeof e&&null!==e&&"bigint"==typeof e.r&&"bigint"==typeof e.s;if(!f&&!p)throw Error("invalid signature, expected Uint8Array, hex string or Signature instance");try{if(p&&(a=new g(e.r,e.s)),f){try{"compact"!==d&&(a=g.fromDER(e))}catch(e){if(!(e instanceof s6.Err))throw e}a||"der"===d||(a=g.fromCompact(e))}o=h.fromHex(i)}catch(e){return!1}if(!a||l&&a.hasHighS())return!1;u&&(t=r.hash(t));let{r:y,s:b}=a,w=m(t),v=sD(b,s),E=c(w*v),I=c(y*v),S=h.BASE.multiplyAndAddUnsafe(o,E,I)?.toAffine();return!!S&&c(S.x)===y},ProjectivePoint:h,Signature:g,utils:{isValidPrivateKey(e){try{return u(e),!0}catch(e){return!1}},normPrivateKeyToScalar:u,randomPrivateKey:()=>{let e=sK(r.n);return function(e,t,r=!1){let i=e.length,s=sF(t),n=sK(t);if(i<16||i<n||i>1024)throw Error("expected "+n+"-1024 bytes of input, got "+i);let o=sU(r?sp(e):sf(e),t-sP)+sP;return r?sy(o,s):sg(o,s)}(r.randomBytes(e),r.n)},precompute:(e=8,t=h.BASE)=>(t._setWindowSize(e),t.multiply(BigInt(3)),t)}}})({...f,...{hash:e,hmac:(t,...r)=>(0,i7.w)(e,t,(0,se.Id)(...r)),randomBytes:se.po}}))(p),create:o});function na(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:void 0}let nl=new TextEncoder;class nc extends iz{constructor(e){super(`Value \`${"object"==typeof e?iK(e):e}\` of type \`${typeof e}\` is an invalid Bytes value.`,{metaMessages:["Bytes values must be of type `Bytes`."]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.InvalidBytesTypeError"})}}class nh extends iz{constructor({givenSize:e,maxSize:t}){super(`Size cannot exceed \`${t}\` bytes. Given size: \`${e}\` bytes.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeOverflowError"})}}class nu extends iz{constructor({size:e,targetSize:t,type:r}){super(`${r.charAt(0).toUpperCase()}${r.slice(1).toLowerCase()} size (\`${e}\`) exceeds padding size (\`${t}\`).`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Bytes.SizeExceedsPaddingSizeError"})}}class nd extends Map{constructor(e){super(),Object.defineProperty(this,"maxSize",{enumerable:!0,configurable:!0,writable:!0,value:void 0}),this.maxSize=e}get(e){let t=super.get(e);return super.has(e)&&void 0!==t&&(this.delete(e),super.set(e,t)),t}set(e,t){if(super.set(e,t),this.maxSize&&this.size>this.maxSize){let e=this.keys().next().value;e&&this.delete(e)}return this}}let nf={checksum:new nd(8192)}.checksum;var np=r(95042);function ng(e,t={}){var r;let{as:i="string"==typeof e?"Hex":"Bytes"}=t,s=(0,np.lY)(e instanceof Uint8Array?e:"string"==typeof e?function(e,t={}){let{size:r}=t,i=e;r&&(iV(e,r),i=iZ(e,r));let s=i.slice(2);s.length%2&&(s=`0${s}`);let n=s.length/2,o=new Uint8Array(n);for(let e=0,t=0;e<n;e++){let r=na(s.charCodeAt(t++)),i=na(s.charCodeAt(t++));if(void 0===r||void 0===i)throw new iz(`Invalid byte sequence ("${s[t-2]}${s[t-1]}" in "${s}").`);o[e]=16*r+i}return o}(e):(r=e)instanceof Uint8Array?r:new Uint8Array(r));return"Bytes"===i?s:iG(s)}function ny(e,t={}){let{compressed:r}=t,{prefix:i,x:s,y:n}=e;if(!1===r||"bigint"==typeof s&&"bigint"==typeof n){if(4!==i)throw new nw({prefix:i,cause:new nE});return}if(!0===r||"bigint"==typeof s&&void 0===n){if(3!==i&&2!==i)throw new nw({prefix:i,cause:new nv});return}throw new nm({publicKey:e})}function nb(e){if(132!==e.length&&130!==e.length&&68!==e.length)throw new nx({publicKey:e});if(130===e.length)return{prefix:4,x:BigInt(iJ(e,0,32)),y:BigInt(iJ(e,32,64))};if(132===e.length){let t=Number(iJ(e,0,1));return{prefix:t,x:BigInt(iJ(e,1,33)),y:BigInt(iJ(e,33,65))}}return{prefix:Number(iJ(e,0,1)),x:BigInt(iJ(e,1,33))}}class nm extends iz{constructor({publicKey:e}){super(`Value \`${iK(e)}\` is not a valid public key.`,{metaMessages:["Public key must contain:","- an `x` and `prefix` value (compressed)","- an `x`, `y`, and `prefix` value (uncompressed)"]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidError"})}}class nw extends iz{constructor({prefix:e,cause:t}){super(`Prefix "${e}
1" is invalid.`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidPrefixError"})}}class nv extends iz{constructor(){super("Prefix must be 2 or 3 for compressed public keys."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidCompressedPrefixError"})}}class nE extends iz{constructor(){super("Prefix must be 4 for uncompressed public keys."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidUncompressedPrefixError"})}}class nx extends iz{constructor({publicKey:e}){super(`Value \`${e}\` is an invalid public key size.`,{metaMessages:["Expected: 33 bytes (compressed + prefix), 64 bytes (uncompressed) or 65 bytes (uncompressed + prefix).",`Received ${iQ(iW(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidSerializedSizeError"})}}let nI=/^0x[a-fA-F0-9]{40}$/;function nS(e,t={}){let{strict:r=!0}=t;if(!nI.test(e))throw new n_({address:e,cause:new nA});if(r){if(e.toLowerCase()===e)return;if(nO(e)!==e)throw new n_({address:e,cause:new nP})}}function nO(e){if(nf.has(e))return nf.get(e);nS(e,{strict:!1});let t=e.substring(2).toLowerCase(),r=ng(function(e,t={}){let{size:r}=t,i=nl.encode(e);if("number"==typeof r){var s;if(i.length>r)throw new nh({givenSize:i.length,maxSize:r});return s=i,function(e,t={}){let{dir:r,size:i=32}=t;if(0===i)return e;if(e.length>i)throw new nu({size:e.length,targetSize:i,type:"Bytes"});let s=new Uint8Array(i);for(let t=0;t<i;t++){let n="right"===r;s[n?t:i-t-1]=e[n?t:e.length-t-1]}return s}(s,{dir:"right",size:r})}return i}(t),{as:"Bytes"}),i=t.split("");for(let e=0;e<40;e+=2)r[e>>1]>>4>=8&&i[e]&&(i[e]=i[e].toUpperCase()),(15&r[e>>1])>
1=8&&i[e+1]&&(i[e+1]=i[e+1].toUpperCase());let s=`0x${i.join("")}`;return nf.set(e,s),s}class n_ extends iz{constructor({address:e,cause:t}){super(`Address "${e}" is invalid.`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidAddressError"})}}class nA extends iz{constructor(){super("Address is not a 20 byte (40 hexadecimal character) value."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidInputError"})}}class nP extends iz{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}function nT(e){return`${e<0?"-":""}0x${Math.abs(e).toString(16).padStart(2,"0")}`}class nN{type;data;constructor(e,t){this.type=e,this.data=t}}class nR extends Error{constructor(e){super(e),Object.setPrototypeOf(this,Object.create(nR.prototype)),Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:nR.name})}}function nC(e,t,r){let i=Math.floor(r/0x100000000);e.setUint32(t,i),e.setUint32(t+4,r)}function nB(e,t){return 0x100000000*e.getInt32(t)+e.getUint32(t+4)}let nU={type:-1,encode:function(e){if(!(e instanceof Date))return null;{let t,r,i,s;return function({sec:e,nsec:t}){if(e>=0&&t>=0&&e<=0x3ffffffff)if(0===t&&e<=0xffffffff){let t=new Uint8Array(4);return new DataView(t.buffer).setUint32(0,e),t}else{let r=e/0x100000000,i=new Uint8Array(8),s=new DataView(i.buffer);return s.setUint32(0,t<<2|3&r),s.setUint32(4,0|e),i}{let r=new Uint8Array(12),i=new DataView(r.buffer);return i.setUint32(0,t),nC(i,4,e),r}}((r=Math.floor((t=e.getTime())/1e3),s=Math.floor((i=(t-1e3*r)*1e6)/1e9),{sec:r+s,nsec:i-1e9*s}))}},decode:function(e){let t=function(e){let t=new DataView(e.buffer,e.byteOffset,e.byteLength);switch(e.byteLength){case 4:return{sec:t.getUint32(0),nsec:0};case 8:{let e=t.getUint32(0);return{sec:(3&e)*0x100000000+t.getUint32(4),nsec:e>>>2}}case 12:return{sec:nB(t,4),nsec:t.getUint32(0)};default:throw new nR(`Unrecognized data size for timestamp (expected 4, 8, or 12): ${e.length}`)}}(e);return new Date(1e3*t.sec+t.nsec/1e6)}};class nk{static defaultCodec=new nk;__brand;builtInEncoders=[];builtInDecoders=[];encoders=[];decoders=[];constructor(){this.register(nU)}register({type:e,encode:t,decode:r}){if(e>=0)this.encoders[e]=t,this.decoders[e]=r;else{let i=-1-e;this.builtInEncoders[i]=t,this.builtInDecoders[i]=r}}tryToEncode(e,t){for(let r=0;r<this.builtInEncoders.length;r++){let i=this.builtInEncoders[r];if(null!=i){let s=i(e,t);if(null!=s)return new nN(-1-r,s)}}for(let r=0;r<this.encoders.length;r++){let i=this.encoders[r];if(null!=i){let s=i(e,t);if(null!=s)return new nN(r,s)}}return e instanceof nN?e:null}decode(e,t,r){let i=t<0?this.builtInDecoders[-1-t]:this.decoders[t];return i?i(e,t,r):new nN(t,e)}}let nD=new TextEncoder;function nL(e,t,r){let i=t,s=i+r,n=[],o="";for(;i<s;){let t=e[i++];if((128&t)==0)n.push(t);else if((224&t)==192){let r=63&e[i++];n.push((31&t)<<6|r)}else if((240&t)==224){let r=63&e[i++],s=63&e[i++];n.push((31&t)<<12|r<<6|s)}else if((248&t)==240){let r=(7&t)<<18|(63&e[i++])<<12|(63&e[i++])<<6|63&e[i++];r>65535&&(r-=65536,n.push(r>>>10&1023|55296),r=56320|1023&r),n.push(r)}else n.push(t);n.length>=4096&&(o+=String.fromCharCode(...n),n.length=0)}return n.length>0&&(o+=String.fromCharCode(...n)),o}let nj=new TextDecoder;function nM(e){return e instanceof Uint8Array?e:ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e instanceof ArrayBuffer||"u">typeof SharedArrayBuffer&&e instanceof SharedArrayBuffer?new Uint8Array(e):Uint8Array.from(e)}class nq{hit=0;miss=0;caches;maxKeyLength;maxLengthPerKey;constructor(e=16,t=16){this.maxKeyLength=e,this.maxLengthPerKey=t,this.caches=[];for(let e=0;e<this.maxKeyLength;e++)this.caches.push([])}canBeCached(e){return e>0&&e<=this.maxKeyLength}find(e,t,r){let i=this.caches[r-1];e:for(let s of i){let i=s.bytes;for(let s=0;s<r;s++)if(i[s]!==e[t+s])continue e;return s.str}return null}store(e,t){let r=this.caches[e.length-1],i={bytes:e,str:t};r.length>=this.maxLengthPerKey?r[Math.random()*r.length|0]=i:r.push(i)}decode(e,t,r){let i=this.find(e,t,r);if(null!=i)return this.hit++,i;this.miss++;let s=nL(e,t,r),n=Uint8Array.prototype.slice.call(e,t,t+r);return this.store(n,s),s}}let n$="array",nz="map_key",nV="map_value",nF=e=>{if("string"==typeof e||"number"==typeof e)return e;throw new nR("The type of key must be string or number but "+typeof e)};
1class nK{stack=[];stackHeadPosition=-1;get length(){return this.stackHeadPosition+1}top(){return this.stack[this.stackHeadPosition]}pushArrayState(e){let t=this.getUninitializedStateFromPool();t.type=n$,t.position=0,t.size=e,t.array=Array(e)}pushMapState(e){let t=this.getUninitializedStateFromPool();t.type=nz,t.readCount=0,t.size=e,t.map={}}getUninitializedStateFromPool(){return this.stackHeadPosition++,this.stackHeadPosition===this.stack.length&&this.stack.push({type:void 0,size:0,array:void 0,position:0,readCount:0,map:void 0,key:null}),this.stack[this.stackHeadPosition]}release(e){if(this.stack[this.stackHeadPosition]!==e)throw Error("Invalid stack state. Released state is not on top of the stack.");e.type===n$&&(e.size=0,e.array=void 0,e.position=0,e.type=void 0),(e.type===nz||e.type===nV)&&(e.size=0,e.map=void 0,e.readCount=0,e.type=void 0),this.stackHeadPosition--}reset(){this.stack.length=0,this.stackHeadPosition=-1}}let nH=new DataView(new ArrayBuffer(0)),nW=new Uint8Array(nH.buffer);try{nH.getInt8(0)}catch(e){if(!(e instanceof RangeError))throw Error("This module is not supported in the current JavaScript engine because DataView does not throw RangeError on out-of-bounds access")}let nG=RangeError("Insufficient data"),nY=new nq;class nZ{extensionCodec;context;useBigInt64;rawStrings;maxStrLength;maxBinLength;maxArrayLength;maxMapLength;maxExtLength;keyDecoder;mapKeyConverter;totalPos=0;pos=0;view=nH;bytes=nW;headByte=-1;stack=new nK;entered=!1;constructor(e){this.extensionCodec=e?.extensionCodec??nk.defaultCodec,this.context=e?.context,this.useBigInt64=e?.useBigInt64??!1,this.rawStrings=e?.rawStrings??!1,this.maxStrLength=e?.maxStrLength??0xffffffff,this.maxBinLength=e?.maxBinLength??0xffffffff,this.maxArrayLength=e?.maxArrayLength??0xffffffff,this.maxMapLength=e?.maxMapLength??0xffffffff,this.maxExtLength=e?.maxExtLength??0xffffffff,this.keyDecoder=e?.keyDecoder!==void 0?e.keyDecoder:nY,this.mapKeyConverter=e?.mapKeyConverter??nF}clone(){return new nZ({extensionCodec:this.extensionCodec,context:this.context,useBigInt64:this.useBigInt64,rawStrings:this.rawStrings,maxStrLength:this.maxStrLength,maxBinLength:this.maxBinLength,maxArrayLength:this.maxArrayLength,maxMapLength:this.maxMapLength,maxExtLength:this.maxExtLength,keyDecoder:this.keyDecoder})}reinitializeState(){this.totalPos=0,this.headByte=-1,this.stack.reset()}setBuffer(e){let t=nM(e);this.bytes=t,this.view=new DataView(t.buffer,t.byteOffset,t.byteLength),this.pos=0}appendBuffer(e){if(-1!==this.headByte||this.hasRemaining(1)){let t=this.bytes.subarray(this.pos),r=nM(e),i=new Uint8Array(t.length+r.length);i.set(t),i.set(r,t.length),this.setBuffer(i)}else this.setBuffer(e)}hasRemaining(e){return this.view.byteLength-this.pos>=e}createExtraByteError(e){let{view:t,pos:r}=this;return RangeError(`Extra ${t.byteLength-r} of ${t.byteLength} byte(s) found at buffer[${e}]`)}decode(e){if(this.entered)return this.clone().decode(e);try{this.entered=!0,this.reinitializeState(),this.setBuffer(e);let t=this.doDecodeSync();if(this.hasRemaining(1))throw this.createExtraByteError(this.pos);return t}finally{this.entered=!1}}*decodeMulti(e){if(this.entered){let t=this.clone();yield*t.decodeMulti(e);return}try{for(this.entered=!0,this.reinitializeState(),this.setBuffer(e);this.hasRemaining(1);)yield this.doDecodeSync()}finally{this.entered=!1}}async decodeAsync(e){if(this.entered)return this.clone().decodeAsync(e);try{let t;this.entered=!0;let r=!1;for await(let i of e){if(r)throw this.entered=!1,this.createExtraByteError(this.totalPos);this.appendBuffer(i);try{t=this.doDecodeSync(),r=!0}catch(e){if(!(e instanceof RangeError))throw e}this.totalPos+=this.pos}if(r){if(this.hasRemaining(1))throw this.createExtraByteError(this.totalPos);return t}let{headByte:i,pos:s,totalPos:n}=this;throw RangeError(`Insufficient data in parsing ${nT(i)} at ${n} (${s} in the current buffer)`)}finally{this.entered=!1}}decodeArrayStream(e){return this.decodeMultiAsync(e,!0)}decodeStream(e){return this.decodeMultiAsync(e,!1)}async *decodeMultiAsync(e,t){if(this.entered){let r=this.clone();yield*r.decodeMultiAsync(e,t);return}try{this.entered=!0;let r=t,i=-1;for await(let s of e){if(t&&0===i)throw this.createExtraByteError(this.totalPos);this.appendBuffer(s),r&&(i=this.readArraySize(),r=!1,this.complete());try{for(;yield this.doDecodeSync(),0!=--i;);}catch(e){if(!(e instanceof RangeError))throw e}this.totalPos+=this.pos}}finally{this.entered=!1}}doDecodeSync(){t:for(;;){let e,t=this.readHeadByte();if(t>=224)e=t-256;else if(t<192)if(t<128)e=t;else if(t<144){let r=t-128;if(0!==r){this.pushMapState(r),this.complete();continue}e={}}else if(t<160){let r=t-144;if(0!==r){this.pushArrayState(r),this.complete();continue}e=[]}else{let r=t-160;e=this.decodeString(r,0)}else if(192===t)e=null;else if(194===t)e=!1;else if(195===t)e=!0;else if(202===t)e=this.readF32();else if(203===t)e=this.readF64();else if(204===t)e=this.readU8();else if(205===t)e=this.readU16();else if(206===t)e=this.readU32();else if(207===t)e=this.useBigInt64?this.readU64AsBigInt():this.readU64();else if(208===t)e=this.readI8();else if(209===t)e=this.readI16();else if(210===t)e=this.readI32();else if(211===t)e=this.useBigInt64?this.readI64AsBigInt():this.readI64();else if(217===t){let t=this.lookU8();e=this.decodeString(t,1)}else if(218===t){let t=this.lookU16();e=this.decodeString(t,2)}else if(219===t){let t=this.lookU32();e=this.decodeString(t,4)}else if(220===t){let t=this.readU16();if(0!==t){this.pushArrayState(t),this.complete();continue}e=[]}else if(221===t){let t=this.readU32();if(0!==t){this.pushArrayState(t),this.complete();continue}e=[]}else if(222===t){let t=this.readU16();if(0!==t){this.pushMapState(t),this.complete();continue}e={}}else if(223===t){let t=this.readU32();if(0!==t){this.pushMapState(t),this.complete();continue}e={}}else if(196===t){let t=this.lookU8();e=this.decodeBinary(t,1)}else if(197===t){let t=this.lookU16();e=this.decodeBinary(t,2)}else if(198===t){let t=this.lookU32();e=this.decodeBinary(t,4)}else if(212===t)e=this.decodeExtension(1,0);else if(213===t)e=this.decodeExtension(2,0);else if(214===t)e=this.decodeExtension(4,0);else if(215===t)e=this.decodeExtension(8,0);else if(216===t)e=this.decodeExtension(16,0);else if(199===t){let t=this.lookU8();e=this.decodeExtension(t,1)}else if(200===t){let t=this.lookU16();e=this.decodeExtension(t,2)}else if(201===t){let t=this.lookU32();e=this.decodeExtension(t,4)}else throw new nR(`Unrecognized type byte: ${nT(t)}`);this.complete();let r=this.stack;for(;r.length>0;){let t=r.top();if(t.type===n$)if(t.array[t.position]=e,t.position++,t.position===t.size)e=t.array,r.release(t);else continue t;else if(t.type===nz){if("__proto__"===e)throw new nR("The key __proto__ is not allowed");t.key=this.mapKeyConverter(e),t.type=nV;continue t}else if(t.map[t.key]=e,t.readCount++,t.readCount===t.size)e=t.map,r.release(t);else{t.key=null,t.type=nz;continue t}}return e}}readHeadByte(){return -1===this.headByte&&(this.headByte=this.readU8()),this.headByte}complete(){this.headByte=-1}readArraySize(){let e=this.readHeadByte();switch(e){case 220:return this.readU16();case 221:return this.readU32();default:if(e<160)return e-144;throw new nR(`Unrecognized array type byte: ${nT(e)}`)}}pushMapState(e){if(e>this.maxMapLength)throw new nR(`Max length exceeded: map length (${e}) > maxMapLengthLength (${this.maxMapLength})`);this.stack.pushMapState(e)}pushArrayState(e){if(e>this.maxArrayLength)throw new nR(`Max length exceeded: array length (${e}) > maxArrayLength (${this.maxArrayLength})`);this.stack.pushArrayState(e)}decodeString(e,t){return!this.rawStrings||this.stateIsMapKey()?this.decodeUtf8String(e,t):this.decodeBinary(e,t)}decodeUtf8String(e,t){let r;if(e>this.maxStrLength)throw new nR(`Max length exceeded: UTF-8 byte length (${e}) > maxStrLength (${this.maxStrLength})`);if(this.bytes.byteLength<this.pos+t+e)throw nG;let i=this.pos+t;return r=this.stateIsMapKey()&&this.keyDecoder?.canBeCached(e)?this.keyDecoder.decode(this.bytes,i,e):function(e,t,r){let i;if(!(r>200))return nL(e,t,r);return i=e.subarray(t,t+r),nj.decode(i)}(this.bytes,i,e),this.pos+=t+e,r}stateIsMapKey(){return this.stack.length>0&&this.stack.top().type===nz}decodeBinary(e,t){if(e>this.maxBinLength)throw new nR(`Max length exceeded: bin length (${e}) > maxBinLength (${this.maxBinLength})`);if(!this.hasRemaining(e+t))throw nG;let r=this.pos+t,i=this.bytes.subarray(r,r+e);return this.pos+=t+e,i}decodeExtension(e,t){if(e>this.maxExtLength)throw new nR(`Max length exceeded: ext length (${e}) > maxExtLength (${this.maxExtLength})`);let r=this.view.getInt8(this.pos+t),i=this.decodeBinary(e,t+1);return this.extensionCodec.decode(i,r,this.context)}lookU8(){return this.view.getUint8(this.pos)}lookU16(){return this.view.getUint16(this.pos)}lookU32(){return this.view.getUint32(this.pos)}readU8(){let e=this.view.getUint8(this.pos);return this.pos++,e}readI8(){let e=this.view.getInt8(this.pos);return this.pos++,e}readU16(){let e=this.view.getUint16(this.pos);return this.pos+=2,e}readI16(){let e=this.view.getInt16(this.pos);return this.pos+=2,e}readU32(){let e=this.view.getUint32(this.pos);return this.pos+=4,e}readI32(){let e=this.view.getInt32(this.pos);return this.pos+=4,e}readU64(){var e,t;let r=(e=this.view,t=this.pos,0x100000000*e.getUint32(t)+e.getUint32(t+4));return this.pos+=8,r}readI64(){let e=nB(this.view,this.pos);return this.pos+=8,e}readU64AsBigInt(){let e=this.view.getBigUint64(this.pos);return this.pos+=8,e}readI64AsBigInt(){let e=this.view.getBigInt64(this.pos);return this.pos+=8,e}readF32(){let e=this.view.getFloat32(this.pos);return this.pos+=4,e}readF64(){let e=this.view.getFloat64(this.pos);return this.pos+=8,e}}class nJ{extensionCodec;context;useBigInt64;maxDepth;initialBufferSize;sortKeys;forceFloat32;ignoreUndefined;forceIntegerToFloat;pos;view;bytes;entered=!1;constructor(e){this.extensionCodec=e?.extensionCodec??nk.defaultCodec,this.context=e?.context,this.useBigInt64=e?.useBigInt64??!1,this.maxDepth=e?.maxDepth??100,this.initialBufferSize=e?.initialBufferSize??2048,this.sortKeys=e?.sortKeys??!1,this.forceFloat32=e?.forceFloat32??!1,this.ignoreUndefined=e?.ignoreUndefined??!1,this.forceIntegerToFloat=e?.forceIntegerToFloat??!1,this.pos=0,this.view=new DataView(new ArrayBuffer(this.initialBufferSize)),this.bytes=new Uint8Array(this.view.buffer)}clone(){return new nJ({extensionCodec:this.extensionCodec,context:this.context,useBigInt64:this.useBigInt64,maxDepth:this.maxDepth,initialBufferSize:this.initialBufferSize,sortKeys:this.sortKeys,forceFloat32:this.forceFloat32,ignoreUndefined:this.ignoreUndefined,forceIntegerToFloat:this.forceIntegerToFloat})}reinitializeState(){this.pos=0}encodeSharedRef(e){if(this.entered)return this.clone().encodeSharedRef(e);try{return this.entered=!0,this.reinitializeState(),this.doEncode(e,1),this.bytes.subarray(0,this.pos)}finally{this.entered=!1}}encode(e){if(this.entered)return this.clone().encode(e);try{return this.entered=!0,this.reinitializeState(),this.doEncode(e,1),this.bytes.slice(0,this.pos)}finally{this.entered=!1}}doEncode(e,t){if(t>this.maxDepth)throw Error(`Too deep objects in depth ${t}`);null==e?this.encodeNil():"boolean"==typeof e?this.encodeBoolean(e):"number"==typeof e?this.forceIntegerToFloat?this.encodeNumberAsFloat(e):this.encodeNumber(e):"str
1ing"==typeof e?this.encodeString(e):this.useBigInt64&&"bigint"==typeof e?this.encodeBigInt64(e):this.encodeObject(e,t)}ensureBufferSizeToWrite(e){let t=this.pos+e;this.view.byteLength<t&&this.resizeBuffer(2*t)}resizeBuffer(e){let t=new ArrayBuffer(e),r=new Uint8Array(t),i=new DataView(t);r.set(this.bytes),this.view=i,this.bytes=r}encodeNil(){this.writeU8(192)}encodeBoolean(e){!1===e?this.writeU8(194):this.writeU8(195)}encodeNumber(e){!this.forceIntegerToFloat&&Number.isSafeInteger(e)?e>=0?e<128?this.writeU8(e):e<256?(this.writeU8(204),this.writeU8(e)):e<65536?(this.writeU8(205),this.writeU16(e)):e<0x100000000?(this.writeU8(206),this.writeU32(e)):this.useBigInt64?this.encodeNumberAsFloat(e):(this.writeU8(207),this.writeU64(e)):e>=-32?this.writeU8(224|e+32):e>=-128?(this.writeU8(208),this.writeI8(e)):e>=-32768?(this.writeU8(209),this.writeI16(e)):e>=-0x80000000?(this.writeU8(210),this.writeI32(e)):this.useBigInt64?this.encodeNumberAsFloat(e):(this.writeU8(211),this.writeI64(e)):this.encodeNumberAsFloat(e)}encodeNumberAsFloat(e){this.forceFloat32?(this.writeU8(202),this.writeF32(e)):(this.writeU8(203),this.writeF64(e))}encodeBigInt64(e){e>=BigInt(0)?(this.writeU8(207),this.writeBigUint64(e)):(this.writeU8(211),this.writeBigInt64(e))}writeStringHeader(e){if(e<32)this.writeU8(160+e);else if(e<256)this.writeU8(217),this.writeU8(e);else if(e<65536)this.writeU8(218),this.writeU16(e);else if(e<0x100000000)this.writeU8(219),this.writeU32(e);else throw Error(`Too long string: ${e} bytes in UTF-8`)}encodeString(e){let t=function(e){let t=e.length,r=0,i=0;for(;i<t;){let s=e.charCodeAt(i++);if((0xffffff80&s)==0){r++;continue}if((0xfffff800&s)==0)r+=2;else{if(s>=55296&&s<=56319&&i<t){let t=e.charCodeAt(i);(64512&t)==56320&&(++i,s=((1023&s)<<10)+(1023&t)+65536)}(0xffff0000&s)==0?r+=3:r+=4}}return r}(e);this.ensureBufferSizeToWrite(5+t),this.writeStringHeader(t),function(e,t,r){if(e.length>50)nD.encodeInto(e,t.subarray(r));else!function(e,t,r){let i=e.length,s=r,n=0;for(;n<i;){let r=e.charCodeAt(n++);if((0xffffff80&r)==0){t[s++]=r;continue}if((0xfffff800&r)==0)t[s++]=r>>6&31|192;else{if(r>=55296&&r<=56319&&n<i){let t=e.charCodeAt(n);(64512&t)==56320&&(++n,r=((1023&r)<<10)+(1023&t)+65536)}(0xffff0000&r)==0?t[s++]=r>>12&15|224:(t[s++]=r>>18&7|240,t[s++]=r>>12&63|128),t[s++]=r>>6&63|128}t[s++]=63&r|128}}(e,t,r)}(e,this.bytes,this.pos),this.pos+=t}encodeObject(e,t){let r=this.extensionCodec.tryToEncode(e,this.context);if(null!=r)this.encodeExtension(r);else if(Array.isArray(e))this.encodeArray(e,t);else if(ArrayBuffer.isView(e))this.encodeBinary(e);else if("object"==typeof e)this.encodeMap(e,t);else throw Error(`Unrecognized object: ${Object.prototype.toString.apply(e)}`)}encodeBinary(e){let t=e.byteLength;if(t<256)this.writeU8(196),this.writeU8(t);else if(t<65536)this.writeU8(197),this.writeU16(t);else if(t<0x100000000)this.writeU8(198),this.writeU32(t);else throw Error(`Too large binary: ${t}`);let r=nM(e);this.writeU8a(r)}encodeArray(e,t){let r=e.length;if(r<16)this.writeU8(144+r);else if(r<65536)this.writeU8(220),this.writeU16(r);else if(r<0x100000000)this.writeU8(221),this.writeU32(r);else throw Error(`Too large array: ${r}`);for(let r of e)this.doEncode(r,t+1)}countWithoutUndefined(e,t){let r=0;for(let i of t)void 0!==e[i]&&r++;return r}encodeMap(e,t){let r=Object.keys(e);this.sortKeys&&r.sort();let i=this.ignoreUndefined?this.countWithoutUndefined(e,r):r.length;if(i<16)this.writeU8(128+i);else if(i<65536)this.writeU8(222),this.writeU16(i);else if(i<0x100000000)this.writeU8(223),this.writeU32(i);else throw Error(`Too large map object: ${i}`);for(let i of r){let r=e[i];this.ignoreUndefined&&void 0===r||(this.encodeString(i),this.doEncode(r,t+1))}}encodeExtension(e){if("function"==typeof e.data){let t=e.data(this.pos+6),r=t.length;if(r>=0x100000000)throw Error(`Too large extension object: ${r}`);this.writeU8(201),this.writeU32(r),this.writeI8(e.type),this.writeU8a(t);return}let t=e.data.length;if(1===t)this.writeU8(212);else if(2===t)this.writeU8(213);else if(4===t)this.writeU8(214);else if(8===t)this.writeU8(215);else if(16===t)this.writeU8(216);else if(t<256)this.writeU8(199),this.writeU8(t);else if(t<65536)this.writeU8(200),this.writeU16(t);else if(t<0x100000000)this.writeU8(201),this.writeU32(t);else throw Error(`Too large extension object: ${t}`);this.writeI8(e.type),this.writeU8a(e.data)}writeU8(e){this.ensureBufferSizeToWrite(1),this.view.setUint8(this.pos,e),this.pos++}writeU8a(e){let t=e.length;this.ensureBufferSizeToWrite(t),this.bytes.set(e,this.pos),this.pos+=t}writeI8(e){this.ensureBufferSizeToWrite(1),this.view.setInt8(this.pos,e),this.pos++}writeU16(e){this.ensureBufferSizeToWrite(2),this.view.setUint16(this.pos,e),this.pos+=2}writeI16(e){this.ensureBufferSizeToWrite(2),this.view.setInt16(this.pos,e),this.pos+=2}writeU32(e){this.ensureBufferSizeToWrite(4),this.view.setUint32(this.pos,e),this.pos+=4}writeI32(e){this.ensureBufferSizeToWrite(4),this.view.setInt32(this.pos,e),this.pos+=4}writeF32(e){this.ensureBufferSizeToWrite(4),this.view.setFloat32(this.pos,e),this.pos+=4}writeF64(e){this.ensureBufferSizeToWrite(8),this.view.setFloat64(this.pos,e),this.pos+=8}writeU64(e){var t,r;this.ensureBufferSizeToWrite(8),t=this.view,r=this.pos,t.setUint32(r,e/0x100000000),t.setUint32(r+4,e),this.pos+=8}writeI64(e){this.ensureBufferSizeToWrite(8),nC(this.view,this.pos,e),this.pos+=8}writeBigUint64(e){this.ensureBufferSizeToWrite(8),this.view.setBigUint64(this.pos,e),this.pos+=8}writeBigInt64(e){this.ensureBufferSizeToWrite(8),this.view.setBigInt64(this.pos,e),this.pos+=8}}var nQ=r(70786);function nX(e){return null!=globalThis.Buffer?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function n0(e=0){return null!=globalThis.Buffer&&null!=globalThis.Buffer.allocUnsafe?nX(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function n1(e,t){t||(t=e.reduce((e,t)=>
1e+t.length,0));let r=n0(t),i=0;for(let t of e)r.set(t,i),i+=t.length;return nX(r)}let n2=function(e,t){if(e.length>=255)throw TypeError("Alphabet too long");for(var r=new Uint8Array(256),i=0;i<r.length;i++)r[i]=255;for(var s=0;s<e.length;s++){var n=e.charAt(s),o=n.charCodeAt(0);if(255!==r[o])throw TypeError(n+" is ambiguous");r[o]=s}var a=e.length,l=e.charAt(0),c=Math.log(a)/Math.log(256),h=Math.log(256)/Math.log(a);function u(e){if("string"!=typeof e)throw TypeError("Expected String");if(0===e.length)return new Uint8Array;var t=0;if(" "!==e[0]){for(var i=0,s=0;e[t]===l;)i++,t++;for(var n=(e.length-t)*c+1>>>0,o=new Uint8Array(n);e[t];){var h=r[e.charCodeAt(t)];if(255===h)return;for(var u=0,d=n-1;(0!==h||u<s)&&-1!==d;d--,u++)h+=a*o[d]>>>0,o[d]=h%256>>>0,h=h/256>>>0;if(0!==h)throw Error("Non-zero carry");s=u,t++}if(" "!==e[t]){for(var f=n-s;f!==n&&0===o[f];)f++;for(var p=new Uint8Array(i+(n-f)),g=i;f!==n;)p[g++]=o[f++];return p}}}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw TypeError("Expected Uint8Array");if(0===t.length)return"";for(var r=0,i=0,s=0,n=t.length;s!==n&&0===t[s];)s++,r++;for(var o=(n-s)*h+1>>>0,c=new Uint8Array(o);s!==n;){for(var u=t[s],d=0,f=o-1;(0!==u||d<i)&&-1!==f;f--,d++)u+=256*c[f]>>>0,c[f]=u%a>>>0,u=u/a>>>0;if(0!==u)throw Error("Non-zero carry");i=d,s++}for(var p=o-i;p!==o&&0===c[p];)p++;for(var g=l.repeat(r);p<o;++p)g+=e.charAt(c[p]);return g},decodeUnsafe:u,decode:function(e){var r=u(e);if(r)return r;throw Error(`Non-${t} character`)}}};new Uint8Array(0);let n8=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 Error("Unknown type, must be binary type")};class n6{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 n3{constructor(e,t,r){if(this.name=e,this.prefix=t,void 0===t.codePointAt(0))throw 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 n4(this,e)}}class n5{constructor(e){this.decoders=e}or(e){return n4(this,e)}decode(e){let 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`)}}let n4=(e,t)=>new n5({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}});
1class n9{constructor(e,t,r,i){this.name=e,this.prefix=t,this.baseEncode=r,this.baseDecode=i,this.encoder=new n6(e,t,r),this.decoder=new n3(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}let n7=({name:e,prefix:t,encode:r,decode:i})=>new n9(e,t,r,i),oe=({prefix:e,name:t,alphabet:r})=>{let{encode:i,decode:s}=n2(r,t);return n7({prefix:e,name:t,encode:i,decode:e=>n8(s(e))})},ot=({name:e,prefix:t,bitsPerChar:r,alphabet:i})=>n7({prefix:t,name:e,encode:e=>((e,t,r)=>{let i="="===t[t.length-1],s=(1<<r)-1,n="",o=0,a=0;for(let i=0;i<e.length;++i)for(a=a<<8|e[i],o+=8;o>r;)o-=r,n+=t[s&a>>o];if(o&&(n+=t[s&a<<r-o]),i)for(;n.length*r&7;)n+="=";return n})(e,i,r),decode:t=>((e,t,r,i)=>{let s={};for(let e=0;e<t.length;++e)s[t[e]]=e;let n=e.length;for(;"="===e[n-1];)--n;let o=new Uint8Array(n*r/8|0),a=0,l=0,c=0;for(let t=0;t<n;++t){let n=s[e[t]];if(void 0===n)throw SyntaxError(`Non-${i} character`);l=l<<r|n,(a+=r)>=8&&(a-=8,o[c++]=255&l>>a)}if(a>=r||255&l<<8-a)throw SyntaxError("Unexpected end of data");return o})(t,i,r,e)}),or=n7({prefix:"\0",name:"identity",encode:e=>new TextDecoder().decode(e),decode:e=>new TextEncoder().encode(e)}),oi=ot({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1}),os=ot({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3}),on=oe({prefix:"9",name:"base10",alphabet:"0123456789"}),oo=ot({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),oa=ot({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4}),ol=ot({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),oc=ot({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),oh=ot({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),ou=ot({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),od=ot({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),of=ot({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),op=ot({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),og=ot({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),oy=ot({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5}),ob=oe({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),om=oe({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"}),ow=oe({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),ov=oe({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"}),oE=ot({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),ox=ot({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),oI=ot({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),oS=ot({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6}),oO=Array.from("\uD83D\uDE80\uD83E\uDE90☄\uD83D\uDEF0\uD83C\uDF0C\uD83C\uDF11\uD83C\uDF12\uD83C\uDF13\uD83C\uDF14\uD83C\uDF15\uD83C\uDF16\uD83C\uDF17\uD83C\uDF18\uD83C\uDF0D\uD83C\uDF0F\uD83C\uDF0E\uD83D\uDC09☀\uD83D\uDCBB\uD83D\uDDA5\uD83D\uDCBE\uD83D\uDCBF\uD83D\uDE02❤\uD83D\uDE0D\uD83E\uDD23\uD83D\uDE0A\uD83D\uDE4F\uD83D\uDC95\uD83D\uDE2D\uD83D\uDE18\uD83D\uDC4D\uD83D\uDE05\uD83D\uDC4F\uD83D\uDE01\uD83D\uDD25\uD83E\uDD70\uD83D\uDC94\uD83D\uDC96\uD83D\uDC99\uD83D\uDE22\uD83E\uDD14\uD83D\uDE06\uD83D\uDE44\uD83D\uDCAA\uD83D\uDE09☺\uD83D\uDC4C\uD83E\uDD17\uD83D\uDC9C\uD83D\uDE14\uD83D\uDE0E\uD83D\uDE07\uD83C\uDF39\uD83E\uDD26\uD83C\uDF89\uD83D\uDC9E✌✨\uD83E\uDD37\uD83D\uDE31\uD83D\uDE0C\uD83C\uDF38\uD83D\uDE4C\uD83D\uDE0B\uD83D\uDC97\uD83D\uDC9A\uD83D\uDE0F\uD83D\uDC9B\uD83D\uDE42\uD83D\uDC93\uD83E\uDD29\uD83D\uDE04\uD83D\uDE00\uD83D\uDDA4\uD83D\uDE03\uD83D\uDCAF\uD83D\uDE48\uD83D\uDC47\uD83C\uDFB6\uD83D\uDE12\uD83E\uDD2D❣\uD83D\uDE1C\uD83D\uDC8B\uD83D\uDC40\uD83D\uDE2A\uD83D\uDE11\uD83D\uDCA5\uD83D\uDE4B\uD83D\uDE1E\uD83D\uDE29\uD83D\uDE21\uD83E\uDD2A\uD83D\uDC4A\uD83E\uDD73\uD83D\uDE25\uD83E\uDD24\uD83D\uDC49\uD83D\uDC83\uD83D\uDE33✋\uD83D\uDE1A\uD83D\uDE1D\uD83D\uDE34\uD83C\uDF1F\uD83D\uDE2C\uD83D\uDE43\uD83C\uDF40\uD83C\uDF37\uD83D\uDE3B\uD83D\uDE13⭐✅\uD83E\uDD7A\uD83C\uDF08\uD83D\uDE08\uD83E\uDD18\uD83D\uDCA6✔\uD83D\uDE23\uD83C\uDFC3\uD83D\uDC90☹\uD83C\uDF8A\uD83D\uDC98\uD83D\uDE20☝\uD83D\uDE15\uD83C\uDF3A\uD83C\uDF82\uD83C\uDF3B\uD83D\uDE10\uD83D\uDD95\uD83D\uDC9D\uD83D\uDE4A\uD83D\uDE39\uD83D\uDDE3\uD83D\uDCAB\uD83D\uDC80\uD83D\uDC51\uD83C\uDFB5\uD83E\uDD1E\uD83D\uDE1B\uD83D\uDD34\uD83D\uDE24\uD83C\uDF3C\uD83D\uDE2B⚽\uD83E\uDD19☕\uD83C\uDFC6\uD83E\uDD2B\uD83D\uDC48\uD83D\uDE2E\uD83D\uDE46\uD83C\uDF7B\uD83C\uDF43\uD83D\uDC36\uD83D\uDC81\uD83D\uDE32\uD83C\uDF3F\uD83E\uDDE1\uD83C\uDF81⚡\uD83C\uDF1E\uD83C\uDF88❌✊\uD83D\uDC4B\uD83D\uDE30\uD83E\uDD28\uD83D\uDE36\uD83E\uDD1D\uD83D\uDEB6\uD83D\uDCB0\uD83C\uDF53\uD83D\uDCA2\uD83E\uDD1F\uD83D\uDE41\uD83D\uDEA8\uD83D\uDCA8\uD83E\uDD2C✈\uD83C\uDF80\uD83C\uDF7A\uD83E\uDD13\uD83D\uDE19\uD83D\uDC9F\uD83C\uDF31\uD83D\uDE16\uD83D\uDC76\uD83E\uDD74▶➡❓\uD83D\uDC8E\uD83D\uDCB8⬇\uD83D\uDE28\uD83C\uDF1A\uD83E\uDD8B\uD83D\uDE37\uD83D\uDD7A⚠\uD83D\uDE45\uD83D\uDE1F\uD83D\uDE35\uD83D\uDC4E\uD83E\uDD32\uD83E\uDD20\uD83E\uDD27\uD83D\uDCCC\uD83D\uDD35\uD83D\uDC85\uD83E\uDDD0\uD83D\uDC3E\uD83C\uDF52\uD83D\uDE17\uD83E\uDD11\uD83C\uDF0A\uD83E\uDD2F\uD83D\uDC37☎\uD83D\uDCA7\uD83D\uDE2F\uD83D\uDC86\uD83D\uDC46\uD83C\uDFA4\uD83D\uDE47\uD83C\uDF51❄\uD83C\uDF34\uD83D\uDCA3\uD83D\uDC38\uD83D\uDC8C\uD83D\uDCCD\uD83E\uDD40\uD83E\uDD22\uD83D\uDC45\uD83D\uDCA1\uD83D\uDCA9\uD83D\uDC50\uD83D\uDCF8\uD83D\uDC7B\uD83E\uDD10\uD83E\uDD2E\uD83C\uDFBC\uD83E\uDD75\uD83D\uDEA9\uD83C\uDF4E\uD83C\uDF4A\uD83D\uDC7C\uD83D\uDC8D\uD83D\uDCE3\uD83E\uDD42"),o_=oO.reduce((e,t,r)=>(e[r]=t,e),[]),oA=oO.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]),oP=n7({prefix:"\uD83D\uDE80",name:"base256emoji",encode:function(e){return e.reduce((e,t)=>
1e+=o_[t],"")},decode:function(e){let t=[];for(let r of e){let e=oA[r.codePointAt(0)];if(void 0===e)throw Error(`Non-base256emoji character: ${r}`);t.push(e)}return new Uint8Array(t)}});function oT(e,t,r){t=t||[];for(var i=r=r||0;e>=0x80000000;)t[r++]=255&e|128,e/=128;for(;-128&e;)t[r++]=255&e|128,e>>>=7;return t[r]=0|e,oT.bytes=r-i+1,t}function oN(e,t){var r,i=0,t=t||0,s=0,n=t,o=e.length;do{if(n>=o)throw oN.bytes=0,RangeError("Could not decode varint");r=e[n++],i+=s<28?(127&r)<<s:(127&r)*Math.pow(2,s),s+=7}while(r>=128);return oN.bytes=n-t,i}let oR=function(e){return e<128?1:e<16384?2:e<2097152?3:e<0x10000000?4:e<0x800000000?5:e<0x40000000000?6:e<0x2000000000000?7:e<0x100000000000000?8:e<0x8000000000000000?9:10},oC=(e,t=0)=>[oN(e,t),oN.bytes],oB=(e,t,r=0)=>(oT(e,t,r),t),oU=(e,t)=>{let r=t.byteLength,i=oR(e),s=i+oR(r),n=new Uint8Array(s+r);return oB(e,n,0),oB(r,n,i),n.set(t,s),new ok(e,r,t,n)};class ok{constructor(e,t,r,i){this.code=e,this.size=t,this.digest=r,this.bytes=i}}let oD=({name:e,code:t,encode:r})=>new oL(e,t,r);class oL{constructor(e,t,r){this.name=e,this.code=t,this.encode=r}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?oU(this.code,t):t.then(e=>oU(this.code,e))}throw Error("Unknown type, must be binary type")}}let oj=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),oM=oD({name:"sha2-256",code:18,encode:oj("SHA-256")}),oq=oD({name:"sha2-512",code:19,encode:oj("SHA-512")}),o$={code:0,name:"identity",encode:n8,digest:e=>oU(0,n8(e))},oz="raw",oV=85,oF=e=>n8(e),oK=e=>n8(e),oH=new TextEncoder,oW=new TextDecoder,oG="json",oY=512,oZ=e=>oH.encode(JSON.stringify(e)),oJ=e=>JSON.parse(oW.decode(e));
1class oQ{constructor(e,t,r,i){this.code=t,this.version=e,this.multihash=r,this.bytes=i,this.byteOffset=i.byteOffset,this.byteLength=i.byteLength,this.asCID=this,this._baseCache=new Map,Object.defineProperties(this,{byteOffset:o4,byteLength:o4,code:o5,version:o5,multihash:o5,bytes:o5,_baseCache:o4,asCID:o4})}toV0(){if(0===this.version)return this;{let{code:e,multihash:t}=this;if(e!==o2)throw Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==o8)throw Error("Cannot convert non sha2-256 multihash CID to CIDv0");return oQ.createV0(t)}}toV1(){switch(this.version){case 0:{let{code:e,digest:t}=this.multihash,r=oU(e,t);return oQ.createV1(this.code,r)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}equals(e){var t,r;return e&&this.code===e.code&&this.version===e.version&&((t=this.multihash)===(r=e.multihash)||t.code===r.code&&t.size===r.size&&((e,t)=>{if(e===t)return!0;if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0})(t.bytes,r.bytes))}toString(e){let{bytes:t,version:r,_baseCache:i}=this;return 0===r?o0(t,i,e||ow.encoder):o1(t,i,e||ol.encoder)}toJSON(){return{code:this.code,version:this.version,hash:this.multihash.bytes}}get[Symbol.toStringTag](){return"CID"}[Symbol.for("nodejs.util.inspect.custom")](){return"CID("+this.toString()+")"}static isCID(e){return o9(/^0\.0/,o7),!!(e&&(e[o3]||e.asCID===e))}get toBaseEncodedString(){throw Error("Deprecated, use .toString()")}get codec(){throw Error('"codec" property is deprecated, use integer "code" property instead')}get buffer(){throw Error("Deprecated .buffer property, use .bytes to get Uint8Array instead")}get multibaseName(){throw Error('"multibaseName" property is deprecated')}get prefix(){throw Error('"prefix" property is deprecated')}static asCID(e){if(e instanceof oQ)return e;if(null!=e&&e.asCID===e){let{version:t,code:r,multihash:i,bytes:s}=e;return new oQ(t,r,i,s||o6(t,r,i.bytes))}if(null==e||!0!==e[o3])return null;{let{version:t,multihash:r,code:i}=e,s=(e=>{let t=n8(e),[r,i]=oC(t),[s,n]=oC(t.subarray(i)),o=t.subarray(i+n);if(o.byteLength!==s)throw Error("Incorrect length");return new ok(r,s,o,t)})(r);return oQ.create(t,i,s)}}static create(e,t,r){if("number"!=typeof t)throw Error("String codecs are no longer supported");switch(e){case 0:if(t===o2)return new oQ(e,t,r,r.bytes);throw Error(`Version 0 CID must use dag-pb (code: ${o2}) block encoding`);case 1:{let i=o6(e,t,r.bytes);return new oQ(e,t,r,i)}default:throw Error("Invalid version")}}static createV0(e){return oQ.create(0,o2,e)}static createV1(e,t){return oQ.create(1,e,t)}static decode(e){let[t,r]=oQ.decodeFirst(e);if(r.length)throw Error("Incorrect length");return t}static decodeFirst(e){let t=oQ.inspectBytes(e),r=t.size-t.multihashSize,i=n8(e.subarray(r,r+t.multihashSize));if(i.byteLength!==t.multihashSize)throw Error("Incorrect length");let s=i.subarray(t.multihashSize-t.digestSize),n=new ok(t.multihashCode,t.digestSize,s,i);return[0===t.version?oQ.createV0(n):oQ.createV1(t.codec,n),e.subarray(t.size)]}static inspectBytes(e){let t=0,r=()=>{let[r,i]=oC(e.subarray(t));return t+=i,r},i=r(),s=o2;if(18===i?(i=0,t=0):1===i&&(s=r()),0!==i&&1!==i)throw RangeError(`Invalid CID version ${i}`);let n=t,o=r(),a=r(),l=t+a;return{version:i,codec:s,multihashCode:o,digestSize:a,multihashSize:l-n,size:l}}static parse(e,t){let[r,i]=oX(e,t),s=oQ.decode(i);return s._baseCache.set(r,e),s}}let oX=(e,t)=>{switch(e[0]){case"Q":{let r=t||ow;return[ow.prefix,r.decode(`${ow.prefix}${e}`)]}case ow.prefix:{let r=t||ow;return[ow.prefix,r.decode(e)]}case ol.prefix:{let r=t||ol;return[ol.prefix,r.decode(e)]}default:if(null==t)throw Error("To parse non base32 or base58btc encoded CID multibase decoder must be provided");return[e[0],t.decode(e)]}},o0=(e,t,r)=>{let{prefix:i}=r;if(i!==ow.prefix)throw Error(`Cannot string encode V0 in ${r.name} encoding`);let s=t.get(i);if(null!=s)return s;{let s=r.encode(e).slice(1);return t.set(i,s),s}},o1=(e,t,r)=>{let{prefix:i}=r,s=t.get(i);if(null!=s)return s;{let s=r.encode(e);return t.set(i,s),s}},o2=112,o8=18,o6=(e,t,r)=>{let i=oR(e),s=i+oR(t),n=new Uint8Array(s+r.byteLength);return oB(e,n,0),oB(t,n,i),n.set(r,s),n}
1,o3=Symbol.for("@ipld/js-cid/CID"),o5={writable:!1,configurable:!1,enumerable:!0},o4={writable:!1,enumerable:!1,configurable:!1},o9=(e,t)=>{if(e.test("0.0.0-dev"))console.warn(t);else throw Error(t)},o7=`CID.isCID(v) is deprecated and will be removed in the next major release.
2Following code pattern:
3
4if (CID.isCID(value)) {
5  doSomethingWithCID(value)
6}
7
8Is replaced with:
9
10const cid = CID.asCID(value)
11if (cid) {
12  // Make sure to use cid instead of value
13  doSomethingWithCID(cid)
14}
15`,ae={...E,...x,...I,...S,...O,..._,...A,...P,...T,...N};function at(e,t,r,i){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:i}}}({...R,...C});let ar=at("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),ai=at("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{let t=n0((e=e.substring(1)).length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),as={utf8:ar,"utf-8":ar,hex:ae.base16,latin1:ai,ascii:ai,binary:ai,...ae};function an(e,t="utf8"){let r=as[t];if(!r)throw Error(`Unsupported encoding "${t}"`);return("utf8"===t||"utf-8"===t)&&null!=globalThis.Buffer&&null!=globalThis.Buffer.from?nX(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function ao(e,t="utf8"){let r=as[t];if(!r)throw Error(`Unsupported encoding "${t}"`);return("utf8"===t||"utf-8"===t)&&null!=globalThis.Buffer&&null!=globalThis.Buffer.from?globalThis.Buffer.from(e.buffer,e.byteOffset,e.byteLength).toString("utf8"):r.encoder.encode(e).substring(1)}let aa={waku:{publish:"waku_publish",batchPublish:"waku_batchPublish",subscribe:"waku_subscribe",batchSubscribe:"waku_batchSubscribe",subscription:"waku_subscription",unsubscribe:"waku_unsubscribe",batchUnsubscribe:"waku_batchUnsubscribe",batchFetchMessages:"waku_batchFetchMessages"},irn:{publish:"irn_publish",batchPublish:"irn_batchPublish",subscribe:"irn_subscribe",batchSubscribe:"irn_batchSubscribe",subscription:"irn_subscription",unsubscribe:"irn_unsubscribe",batchUnsubscribe:"irn_batchUnsubscribe",batchFetchMessages:"irn_batchFetchMessages"},iridium:{publish:"iridium_publish",batchPublish:"iridium_batchPublish",subscribe:"iridium_subscribe",batchSubscribe:"iridium_batchSubscribe",subscription:"iridium_subscription",unsubscribe:"iridium_unsubscribe",batchUnsubscribe:"iridium_batchUnsubscribe",batchFetchMessages:"iridium_batchFetchMessages"}};var al=r(71594),ac=r(87358),ah=r(49304).Buffer;function au(e){let[t,r]=e.split(":");return{namespace:t,reference:r}}function ad(e){let[t,r,i]=e.split(":");return{namespace:t,reference:r,address:i}}function af(e,t=[]){let r=[];return Object.keys(e).forEach(i=>{if(t.length&&!t.includes(i))return;let s=e[i];r.push(...s.accounts)}),r}function ap(e,t){return e.includes(":")?[e]:t.chains||[]}let ag={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}},ay={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 ab(e,t){let{message:r,code:i}=ay[e];return{message:t?`${r} ${t}`:r,code:i}}function am(e,t){let{message:r,code:i}=ag[e];return{message:t?`${r} ${t}`:r,code:i}}var aw=Object.defineProperty,av=Object.defineProperties,aE=Object.getOwnPropertyDescriptors,ax=Object.getOwnPropertySymbols,aI=Object.prototype.hasOwnProperty,aS=Object.prototype.propertyIsEnumerable,aO=(e,t,r)=>t in e?aw(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,a_=(e,t)=>{for(var r in t||(t={}))aI.call(t,r)&&aO(e,r,t[r]);
15if(ax)for(var r of ax(t))aS.call(t,r)&&aO(e,r,t[r]);return e},aA=(e,t,r)=>aO(e,"symbol"!=typeof t?t+"":t,r);let aP="react-native",aT="node",aN="browser";function aR(){return"u">typeof ac&&"u">typeof ac.versions&&"u">typeof ac.versions.node}function aC(){return!(0,iq.getDocument)()&&!!(0,iq.getNavigator)()&&"ReactNative"===navigator.product}function aB(){return!aR()&&!!(0,iq.getNavigator)()&&!!(0,iq.getDocument)()}function aU(){return aC()?aP:aR()?aT:aB()?aN:"unknown"}function ak(){var e;try{return aC()&&"u">typeof global&&"u">typeof(null==global?void 0:global.Application)?null==(e=global.Application)?void 0:e.applicationId:void 0}catch{return}}function aD(){return(0,i$.g)()||{name:"",description:"",url:"",icons:[""]}}function aL(e,t,r){var i;let s,n=function(){if(aU()===aP&&"u">typeof global&&"u">typeof(null==global?void 0:global.Platform)){let{OS:e,Version:t}=global.Platform;return[e,t].join("-")}let e="u"<typeof document&&"u">typeof navigator&&"ReactNative"===navigator.product?new iD:"u">typeof navigator?function(e){var t=""!==e&&ij.reduce(function(t,r){var i=r[0],s=r[1];if(t)return t;var n=s.exec(e);return!!n&&[i,n]},!1);if(!t)return null;var r=t[0],i=t[1];if("searchbot"===r)return new ik;var s=i[1]&&i[1].split(".").join("_").split("_").slice(0,3);s?s.length<3&&(s=iR(iR([],s,!0),function(e){for(var t=[],r=0;r<e;r++)t.push("0");return t}(3-s.length),!0)):s=[];var n=s.join("."),o=function(e){for(var t=0,r=iM.length;t<r;t++){var i=iM[t],s=i[0];if(i[1].exec(e))return s}return null}(e),a=iL.exec(e);return a&&a[1]?new iU(r,n,o,a[1]):new iC(r,n,o)}(navigator.userAgent):void 0!==iN&&iN.version?new iB(iN.version.slice(1)):null;if(null===e)return"unknown";let t=e.os?e.os.replace(" ","").toLowerCase():"unknown";return"browser"===e.type?[t,e.name,e.version].join("-"):[t,e.version].join("-")}(),o=(s=aU())===aN?[s,(null==(i=(0,iq.getLocation)())?void 0:i.host)||"unknown"].join(":"):s;return[[e,t].join("-"),["js",r].join("-"),n,o].join("/")}function aj(e,t){return e.filter(e=>t.includes(e)).length===e.length}function aM(e){return Object.fromEntries(e.entries())}function aq(e){return new Map(Object.entries(e))}function a$(e=z.FIVE_MINUTES,t){let r,i,s,n,o=(0,z.toMiliseconds)(e||z.FIVE_MINUTES);return{resolve:e=>{s&&r&&(clearTimeout(s),r(e),n=Promise.resolve(e))},reject:e=>{s&&i&&(clearTimeout(s),i(e))},done:()=>new Promise((e,a)=>{if(n)return e(n);s=setTimeout(()=>{let e=ab("EXPIRED"),r=Error(t||e.message);r.code=e.code,a(r)},o),r=e,i=a})}}function az(e,t,r){return new Promise(async(i,s)=>{let n=setTimeout(()=>s(Error(r)),t);try{let t=await e;i(t)}catch(e){s(e)}clearTimeout(n)})}function aV(e,t){if("string"==typeof t&&t.startsWith(`${e}:`))return t;if("topic"===e.toLowerCase()){if("string"!=typeof t)throw Error('Value must be "string" for expirer target type: topic');return`topic:${t}`}if("id"===e.toLowerCase()){if("number"!=typeof t)throw Error('Value must be "number" for expirer target type: id');return`id:${t}`}throw Error(`Unknown expirer target type: ${e}`)}function aF(e){let[t,r]=e.split(":"),i={id:void 0,topic:void 0};if("topic"===t&&"string"==typeof r)i.topic=r;else if("id"===t&&Number.isInteger(Number(r)))i.id=Number(r);else throw Error(`Invalid target, expected id:number or topic:string, got ${t}:${r}`);return i}function aK(e,t){return(0,z.fromMiliseconds)((t||Date.now())+(0,z.toMiliseconds)(e))}function aH(e){return Date.now()>=(0,z.toMiliseconds)(e)}function aW(e,t){return`${e}${t?`:${t}`:""}`}function aG(e=[],t=[]){return[...new Set([...e,...t])]}async function aY({id:e,topic:t,wcDeepLink:r}){var i,s;try{if(!r)return;let n="string"==typeof r?JSON.parse(r):r,o=n?.href;if("string"!=typeof o)return;let a=function(e,t,r){let i=`requestId=${t}&sessionTopic=${r}`;e.endsWith("/")&&(e=e.slice(0,-1));let s=`${e}`;if(e.startsWith("https://t.me")){let t=e.includes("?")?"&startapp=":"?startapp=";s=`${s}${t}${function(e,t=!1){let r=ah.from(e).toString("base64");return t?r.replace(/[=]/g,""):r}(i,!0)}`}else s=`${s}/wc?${i}`;return s}(o,e,t),l=aU();if(l===aN){let e;if(!(null!=(i=(0,iq.getDocument)())&&i.hasFocus()))return void console.warn("Document does not have focus, skipping deeplink.");s=a,e="_self",!function(){try{return window.self!==window.top}catch{return!1}}()?("u">typeof window&&(window.TelegramWebviewProxy||window.Telegram||window.TelegramWebviewProxyProto)||s.startsWith("https://")||s.startsWith("http://"))&&(e="_blank"):e="_top",window.open(s,e,"noreferrer noopener")}else l===aP&&"u">typeof(null==global?void 0:global.Linking)&&await global.Linking.openURL(a)}catch(e){console.error(e)}}async function aZ(e,t){let r="";try{if(aB()&&(r=localStorage.getItem(t)))return r;r=await e.getItem(t)}catch(e){console.error(e)}return r}function aJ(e,t){if(!e.includes(t))return null;let r=e.split(/([&,?,=])/),i=r.indexOf(t);return r[i+2]}function aQ(){return"u">typeof crypto&&null!=crypto&&crypto.randomUUID?crypto.randomUUID():"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/gu,e=>{let t=16*Math.random()|0;return("x"===e?t:3&t|8).toString(16)})}function aX(){return"u">typeof ac&&"true"===ac.env.IS_VITEST}function a0(e){return ah.from(e,"base64").toString("utf-8")}class a1{constructor({limit:e}){aA(this,"limit"),aA(this,"set"),this.limit=e,this.set=new Set}
15add(e){if(!this.set.has(e)){if(this.set.size>=this.limit){let e=this.set.values().next().value;e&&this.set.delete(e)}this.set.add(e)}}has(e){return this.set.has(e)}}let a2=BigInt(0x100000000-1),a8=BigInt(32);function a6(e,t=!1){return t?{h:Number(e&a2),l:Number(e>>a8&a2)}:{h:0|Number(e>>a8&a2),l:0|Number(e&a2)}}function a3(e,t=!1){let r=e.length,i=new Uint32Array(r),s=new Uint32Array(r);for(let n=0;n<r;n++){let{h:r,l:o}=a6(e[n],t);[i[n],s[n]]=[r,o]}return[i,s]}let a5=(e,t,r)=>e>>>r,a4=(e,t,r)=>e<<32-r|t>>>r,a9=(e,t,r)=>e>>>r|t<<32-r,a7=(e,t,r)=>e<<32-r|t>>>r,le=(e,t,r)=>e<<64-r|t>>>r-32,lt=(e,t,r)=>e>>>r-32|t<<64-r;function lr(e,t,r,i){let s=(t>>>0)+(i>>>0);return{h:e+r+(s/0x100000000|0)|0,l:0|s}}let li=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),ls=(e,t,r,i)=>t+r+i+(e/0x100000000|0)|0,ln=(e,t,r,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0),lo=(e,t,r,i,s)=>t+r+i+s+(e/0x100000000|0)|0,la=(e,t,r,i,s)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0)+(s>>>0),ll=(e,t,r,i,s,n)=>t+r+i+s+n+(e/0x100000000|0)|0,lc="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0;function lh(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function lu(e){if(!Number.isSafeInteger(e)||e<0)throw Error("positive integer expected, got "+e)}function ld(e,...t){if(!lh(e))throw Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw Error("Uint8Array expected of length "+t+", got length="+e.length)}function lf(e){if("function"!=typeof e||"function"!=typeof e.create)throw Error("Hash should be wrapped by utils.createHasher");lu(e.outputLen),lu(e.blockLen)}function lp(e,t=!0){if(e.destroyed)throw Error("Hash instance has been destroyed");if(t&&e.finished)throw Error("Hash#digest() has already been called")}function lg(e,t){ld(e);let r=t.outputLen;if(e.length<r)throw Error("digestInto() expects output buffer of length at least "+r)}function ly(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function lb(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function lm(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function lw(e,t){return e<<32-t|e>>>t}let lv=68===new Uint8Array(new Uint32Array([0x11223344]).buffer)[0];function lE(e){return e<<24&0xff000000|e<<8&0xff0000|e>>>8&65280|e>>>24&255}let lx=lv?e=>e:e=>lE(e),lI=lv?e=>e:function(e){for(let t=0;t<e.length;t++)e[t]=lE(e[t]);return e},lS="function"==typeof Uint8Array.from([]).toHex&&"function"==typeof Uint8Array.fromHex,lO=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function l_(e){if(ld(e),lS)return e.toHex();let t="";for(let r=0;r<e.length;r++)t+=lO[e[r]];return t}function lA(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:void 0}function lP(e){if("string"!=typeof e)throw Error("hex string expected, got "+typeof e);if(lS)return Uint8Array.fromHex(e);let t=e.length,r=t/2;if(t%2)throw Error("hex string expected, got unpadded hex of length "+t);let i=new Uint8Array(r);for(let t=0,s=0;t<r;t++,s+=2){let r=lA(e.charCodeAt(s)),n=lA(e.charCodeAt(s+1));if(void 0===r||void 0===n)throw Error('hex string expected, got non-hex character "'+(e[s]+e[s+1])+'" at index '+s);i[t]=16*r+n}return i}function lT(e){if("string"!=typeof e)throw Error("string expected");return new Uint8Array(new TextEncoder().encode(e))}function lN(e){return"string"==typeof e&&(e=lT(e)),ld(e),e}function lR(...e){let t=0;for(let r=0;r<e.length;r++){let i=e[r];ld(i),t+=i.length}let r=new Uint8Array(t);for(let t=0,i=0;t<e.length;t++){let s=e[t];r.set(s,i),i+=s.length}return r}class lC{}function lB(e){let t=t=>e().update(lN(t)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function lU(e=32){if(lc&&"function"==typeof lc.getRandomValues)return lc.getRandomValues(new Uint8Array(e));if(lc&&"function"==typeof lc.randomBytes)return Uint8Array.from(lc.randomBytes(e));throw Error("crypto.getRandomValues must be defined")}let lk=BigInt(0),lD=BigInt(1),lL=BigInt(2),lj=BigInt(7),lM=BigInt(256),lq=BigInt(113),l$=[],lz=[],lV=[];for(let e=0,t=lD,r=1,i=0;e<24;e++){[r,i]=[i,(2*r+3*i)%5],l$.push(2*(5*i+r)),lz.push((e+1)*(e+2)/2%64);let s=lk;for(let e=0;e<7;e++)(t=(t<<lD^(t>>lj)*lq)%lM)&lL&&(s^=lD<<(lD<<BigInt(e))-lD);lV.push(s)}let lF=a3(lV,!0),lK=lF[0],lH=lF[1],lW=(e,t,r)=>r>32?t<<r-32|e>>>64-r:e<<r|t>>>32-r,lG=(e,t,r)=>r>32?e<<r-32|t>>>64-r:t<<r|e>>>32-r;class lY extends lC{constructor(e,t,r,i=!1,s=24){if(super(),this.pos=0,this.posOut=0,this.finished=!1,this.destroyed=!1,this.enableXOF=!1,this.blockLen=e,this.suffix=t,this.outputLen=r,this.enableXOF=i,this.rounds=s,lu(r),!(0<e&&e<200))throw Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=ly(this.state)}clone(){return this._cloneInto()}keccak(){lI(this.state32),function(e,t=24){let r=new Uint32Array(10);for(let i=24-t;i<24;i++){for(let t=0;t<10;t++)r[t]=e[t]^e[t+10]^e[t+20]^e[t+30]^e[t+40];for(let t=0;t<10;t+=2){let i=(t+8)%10,s=(t+2)%10,n=r[s],o=r[s+1],a=lW(n,o,1)^r[i],l=lG(n,o,1)^r[i+1];for(let r=0;r<50;r+=10)e[t+r]^=a,e[t+r+1]^=l}let t=e[2],s=e[3];for(let r=0;r<24;r++){let i=lz[r],n=lW(t,s,i),o=lG(t,s,i),a=l$[r];t=e[a],s=e[a+1],e[a]=n,e[a+1]=o}for(let t=0;t<50;t+=10){for(let i=0;i<10;i++)r[i]=e[t+i];for(let i=0;i<10;i++)e[t+i]^=~r[(i+2)%10]&r[(i+4)%10]}e[0]^=lK[i],e[1]^=lH[i]}lb(r)}(this.state32,this.rounds),lI(this.state32),this.posOut=0,this.pos=0}update(e){lp(this),ld(e=lN(e));let{blockLen:t,state:r}=this,i=e.length;for(let s=0;s<i;){let n=Math.min(t-this.pos,i-s);for(let t=0;t<n;t++)r[this.pos++]^=e[s++];this.pos===t&&this.keccak()}return this}finish(){if(this.finished)return;this.finished=!0;let{state:e,suffix:t,pos:r,blockLen:i}=this;e[r]^=t,(128&t)!=0&&r===i-1&&this.keccak(),e[i-1]^=128,this.keccak()}writeInto(e){lp(this,!1),ld(e),this.finish();let t=this.state,{blockLen:r}=this;for(let i=0,s=e.length;i<s;){this.posOut>=r&&this.keccak();let n=Math.min(r-this.posOut,s-i);e.set(t.subarray(this.posOut,this.posOut+n),i),this.posOut+=n,i+=n}return e}xofInto(e){if(!this.enableXOF)throw Error("XOF is not possible for this instance");return this.writeInto(e)}xof(e){return lu(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(lg(e,this),this.finished)throw Error("digest() was already called");return this.writeInto(e),this.destroy(),e}digest(){return this.digestInto(new Uint8Array(this.outputLen))}destroy(){this.destroyed=!0,lb(this.state)}_cloneInto(e){let{blockLen:t,suffix:r,outputLen:i,rounds:s,enableXOF:n}=this;return e||(e=new lY(t,r,i,n,s)),e.state32.set(this.state32),e.pos=this.pos,e.posOut=this.posOut,e.finished=this.finished,e.rounds=s,e.suffix=r,e.outputLen=i,e.enableXOF=n,e.destroyed=this.destroyed,e}}let lZ=lB(()=>new lY(136,1,32));
15class lJ extends lC{constructor(e,t,r,i){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=r,this.isLE=i,this.buffer=new Uint8Array(e),this.view=lm(this.buffer)}update(e){lp(this),ld(e=lN(e));let{view:t,buffer:r,blockLen:i}=this,s=e.length;for(let n=0;n<s;){let o=Math.min(i-this.pos,s-n);if(o===i){let t=lm(e);for(;i<=s-n;n+=i)this.process(t,n);continue}r.set(e.subarray(n,n+o),this.pos),this.pos+=o,n+=o,this.pos===i&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){lp(this),lg(e,this),this.finished=!0;let{buffer:t,view:r,blockLen:i,isLE:s}=this,{pos:n}=this;t[n++]=128,lb(this.buffer.subarray(n)),this.padOffset>i-n&&(this.process(r,0),n=0);for(let e=n;e<i;e++)t[e]=0;(function(e,t,r,i){if("function"==typeof e.setBigUint64)return e.setBigUint64(t,r,i);let s=BigInt(32),n=BigInt(0xffffffff),o=Number(r>>s&n),a=Number(r&n),l=4*!!i,c=4*!i;e.setUint32(t+l,o,i),e.setUint32(t+c,a,i)})(r,i-8,BigInt(8*this.length),s),this.process(r,0);let o=lm(e),a=this.outputLen;if(a%4)throw Error("_sha2: outputLen should be aligned to 32bit");let l=a/4,c=this.get();if(l>c.length)throw Error("_sha2: outputLen bigger than state");for(let e=0;e<l;e++)o.setUint32(4*e,c[e],s)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let r=e.slice(0,t);return this.destroy(),r}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:r,length:i,finished:s,destroyed:n,pos:o}=this;return e.destroyed=n,e.finished=s,e.length=i,e.pos=o,i%t&&e.buffer.set(r),e}clone(){return this._cloneInto()}}let lQ=Uint32Array.from([0x6a09e667,0xbb67ae85,0x3c6ef372,0xa54ff53a,0x510e527f,0x9b05688c,0x1f83d9ab,0x5be0cd19]),lX=Uint32Array.from([0xcbbb9d5d,0xc1059ed8,0x629a292a,0x367cd507,0x9159015a,0x3070dd17,0x152fecd8,0xf70e5939,0x67332667,0xffc00b31,0x8eb44a87,0x68581511,0xdb0c2e0d,0x64f98fa7,0x47b5481d,0xbefa4fa4]),l0=Uint32Array.from([0x6a09e667,0xf3bcc908,0xbb67ae85,0x84caa73b,0x3c6ef372,0xfe94f82b,0xa54ff53a,0x5f1d36f1,0x510e527f,0xade682d1,0x9b05688c,0x2b3e6c1f,0x1f83d9ab,0xfb41bd6b,0x5be0cd19,0x137e2179]),l1=Uint32Array.from([0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5,0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5,0xd807aa98,0x12835b01,0x243185be,0x550c7dc3,0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174,0xe49b69c1,0xefbe4786,0xfc19dc6,0x240ca1cc,0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da,0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7,0xc6e00bf3,0xd5a79147,0x6ca6351,0x14292967,0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13,0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85,0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3,0xd192e819,0xd6990624,0xf40e3585,0x106aa070,0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5,0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3,0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208,0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2]),l2=new Uint32Array(64);class l8 extends lJ{constructor(e=32){super(64,e,8,!1),this.A=0|lQ[0],this.B=0|lQ[1],this.C=0|lQ[2],this.D=0|lQ[3],this.E=0|lQ[4],this.F=0|lQ[5],this.G=0|lQ[6],this.H=0|lQ[7]}get(){let{A:e,B:t,C:r,D:i,E:s,F:n,G:o,H:a}=this;return[e,t,r,i,s,n,o,a]}set(e,t,r,i,s,n,o,a){this.A=0|e,this.B=0|t,this.C=0|r,this.D=0|i,this.E=0|s,this.F=0|n,this.G=0|o,this.H=0|a}process(e,t){for(let r=0;r<16;r++,t+=4)l2[r]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=l2[e-15],r=l2[e-2],i=lw(t,7)^lw(t,18)^t>>>3,s=lw(r,17)^lw(r,19)^r>>>10;l2[e]=s+l2[e-7]+i+l2[e-16]|0}let{A:r,B:i,C:s,D:n,E:o,F:a,G:l,H:c}=this;for(let e=0;e<64;e++){var h,u,d,f;let t=c+(lw(o,6)^lw(o,11)^lw(o,25))+((h=o)&a^~h&l)+l1[e]+l2[e]|0,p=(lw(r,2)^lw(r,13)^lw(r,22))+((u=r)&(d=i)^u&(f=s)^d&f)|0;c=l,l=a,a=o,o=n+t|0,n=s,s=i,i=r,r=t+p|0}r=r+this.A|0,i=i+this.B|0,s=s+this.C|0,n=n+this.D|0,o=o+this.E|0,a=a+this.F|0,l=l+this.G|0,c=c+this.H|0,this.set(r,i,s,n,o,a,l,c)}roundClean(){lb(l2)}destroy(){this.set(0,0,0,0,0,0,0,0),lb(this.buffer)}}let l6=a3(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b89
156f","0x80deb1fe3b1696b1","0x9bdc06a725c71235","0xc19bf174cf692694","0xe49b69c19ef14ad2","0xefbe4786384f25e3","0x0fc19dc68b8cd5b5","0x240ca1cc77ac9c65","0x2de92c6f592b0275","0x4a7484aa6ea6e483","0x5cb0a9dcbd41fbd4","0x76f988da831153b5","0x983e5152ee66dfab","0xa831c66d2db43210","0xb00327c898fb213f","0xbf597fc7beef0ee4","0xc6e00bf33da88fc2","0xd5a79147930aa725","0x06ca6351e003826f","0x142929670a0e6e70","0x27b70a8546d22ffc","0x2e1b21385c26c926","0x4d2c6dfc5ac42aed","0x53380d139d95b3df","0x650a73548baf63de","0x766a0abb3c77b2a8","0x81c2c92e47edaee6","0x92722c851482353b","0xa2bfe8a14cf10364","0xa81a664bbc423001","0xc24b8b70d0f89791","0xc76c51a30654be30","0xd192e819d6ef5218","0xd69906245565a910","0xf40e35855771202a","0x106aa07032bbd1b8","0x19a4c116b8d2d0c8","0x1e376c085141ab53","0x2748774cdf8eeb99","0x34b0bcb5e19b48a8","0x391c0cb3c5c95a63","0x4ed8aa4ae3418acb","0x5b9cca4f7763e373","0x682e6ff3d6b2b8a3","0x748f82ee5defb2fc","0x78a5636f43172f60","0x84c87814a1f0ab72","0x8cc702081a6439ec","0x90befffa23631e28","0xa4506cebde82bde9","0xbef9a3f7b2c67915","0xc67178f2e372532b","0xca273eceea26619c","0xd186b8c721c0c207","0xeada7dd6cde0eb1e","0xf57d4f7fee6ed178","0x06f067aa72176fba","0x0a637dc5a2c898a6","0x113f9804bef90dae","0x1b710b35131c471b","0x28db77f523047d84","0x32caab7b40c72493","0x3c9ebe0a15c9bebc","0x431d67c49c100d4c","0x4cc5d4becb3e42b6","0x597f299cfc657e2a","0x5fcb6fab3ad6faec","0x6c44198c4a475817"].map(e=>BigInt(e))),l3=l6[0],l5=l6[1],l4=new Uint32Array(80),l9=new Uint32Array(80);class l7 extends lJ{constructor(e=64){super(128,e,16,!1),this.Ah=0|l0[0],this.Al=0|l0[1],this.Bh=0|l0[2],this.Bl=0|l0[3],this.Ch=0|l0[4],this.Cl=0|l0[5],this.Dh=0|l0[6],this.Dl=0|l0[7],this.Eh=0|l0[8],this.El=0|l0[9],this.Fh=0|l0[10],this.Fl=0|l0[11],this.Gh=0|l0[12],this.Gl=0|l0[13],this.Hh=0|l0[14],this.Hl=0|l0[15]}get(){let{Ah:e,Al:t,Bh:r,Bl:i,Ch:s,Cl:n,Dh:o,Dl:a,Eh:l,El:c,Fh:h,Fl:u,Gh:d,Gl:f,Hh:p,Hl:g}=this;return[e,t,r,i,s,n,o,a,l,c,h,u,d,f,p,g]}set(e,t,r,i,s,n,o,a,l,c,h,u,d,f,p,g){this.Ah=0|e,this.Al=0|t,this.Bh=0|r,this.Bl=0|i,this.Ch=0|s,this.Cl=0|n,this.Dh=0|o,this.Dl=0|a,this.Eh=0|l,this.El=0|c,this.Fh=0|h,this.Fl=0|u,this.Gh=0|d,this.Gl=0|f,this.Hh=0|p,this.Hl=0|g}process(e,t){for(let r=0;r<16;r++,t+=4)l4[r]=e.getUint32(t),l9[r]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=0|l4[e-15],r=0|l9[e-15],i=a9(t,r,1)^a9(t,r,8)^a5(t,r,7),s=a7(t,r,1)^a7(t,r,8)^a4(t,r,7),n=0|l4[e-2],o=0|l9[e-2],a=a9(n,o,19)^le(n,o,61)^a5(n,o,6),l=ln(s,a7(n,o,19)^lt(n,o,61)^a4(n,o,6),l9[e-7],l9[e-16]),c=lo(l,i,a,l4[e-7],l4[e-16]);l4[e]=0|c,l9[e]=0|l}let{Ah:r,Al:i,Bh:s,Bl:n,Ch:o,Cl:a,Dh:l,Dl:c,Eh:h,El:u,Fh:d,Fl:f,Gh:p,Gl:g,Hh:y,Hl:b}=this;for(let e=0;e<80;e++){let t=a9(h,u,14)^a9(h,u,18)^le(h,u,41),m=a7(h,u,14)^a7(h,u,18)^lt(h,u,41),w=h&d^~h&p,v=la(b,m,u&f^~u&g,l5[e],l9[e]),E=ll(v,y,t,w,l3[e],l4[e]),x=0|v,I=a9(r,i,28)^le(r,i,34)^le(r,i,39),S=a7(r,i,28)^lt(r,i,34)^lt(r,i,39),O=r&s^r&o^s&o,_=i&n^i&a^n&a;y=0|p,b=0|g,p=0|d,g=0|f,d=0|h,f=0|u,({h:h,l:u}=lr(0|l,0|c,0|E,0|x)),l=0|o,c=0|a,o=0|s,a=0|n,s=0|r,n=0|i;let A=li(x,S,_);r=ls(A,E,I,O),i=0|A}({h:r,l:i}=lr(0|this.Ah,0|this.Al,0|r,0|i)),({h:s,l:n}=lr(0|this.Bh,0|this.Bl,0|s,0|n)),({h:o,l:a}=lr(0|this.Ch,0|this.Cl,0|o,0|a)),({h:l,l:c}=lr(0|this.Dh,0|this.Dl,0|l,0|c)),({h:h,l:u}=lr(0|this.Eh,0|this.El,0|h,0|u)),({h:d,l:f}=lr(0|this.Fh,0|this.Fl,0|d,0|f)),({h:p,l:g}=lr(0|this.Gh,0|this.Gl,0|p,0|g)),({h:y,l:b}=lr(0|this.Hh,0|this.Hl,0|y,0|b)),this.set(r,i,s,n,o,a,l,c,h,u,d,f,p,g,y,b)}roundClean(){lb(l4,l9)}destroy(){lb(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}class ce extends l7{constructor(){super(48),this.Ah=0|lX[0],this.Al=0|lX[1],this.Bh=0|lX[2],this.Bl=0|lX[3],this.Ch=0|lX[4],this.Cl=0|lX[5],this.Dh=0|lX[6],this.Dl=0|lX[7],this.Eh=0|lX[8],this.El=0|lX[9],this.Fh=0|lX[10],this.Fl=0|lX[11],this.Gh=0|lX[12],this.Gl=0|lX[13],this.Hh=0|lX[14],this.Hl=0|lX[15]}}let ct=Uint32Array.from([0x22312194,0xfc2bf72c,0x9f555fa3,0xc84c64c2,0x2393b86b,0x6f53b151,0x96387719,0x5940eabd,0x96283ee2,0xa88effe3,0xbe5e1e25,0x53863992,0x2b0199fc,0x2c85b8aa,0xeb72ddc,0x81c52ca2]);class cr extends l7{constructor(){super(32),this.Ah=0|ct[0],this.Al=0|ct[1],this.Bh=0|ct[2],this.Bl=0|ct[3],this.Ch=0|ct[4],this.Cl=0|ct[5],this.Dh=0|ct[6],this.Dl=0|ct[7],this.Eh=0|ct[8],this.El=0|ct[9],this.Fh=0|ct[10],this.Fl=0|ct[11
15],this.Gh=0|ct[12],this.Gl=0|ct[13],this.Hh=0|ct[14],this.Hl=0|ct[15]}}let ci=lB(()=>new l8),cs=lB(()=>new l7),cn=lB(()=>new ce),co=lB(()=>new cr),ca=Uint8Array.from([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9,12,5,1,15,14,13,4,10,0,7,6,3,9,2,8,11,13,11,7,14,12,1,3,9,5,0,15,4,8,6,2,10,6,15,14,9,11,3,0,8,12,2,13,7,1,4,10,5,10,2,8,4,7,6,1,5,15,11,9,14,3,12,13,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,14,10,4,8,9,15,13,6,1,12,0,2,11,7,5,3,11,8,12,0,5,2,15,13,10,14,3,6,7,1,9,4,7,9,3,1,13,12,11,14,2,6,5,10,4,0,15,8,9,0,5,7,2,4,10,15,14,1,11,12,6,8,3,13,2,12,6,10,0,11,8,3,4,13,7,5,15,14,1,9]),cl=Uint32Array.from([0xf3bcc908,0x6a09e667,0x84caa73b,0xbb67ae85,0xfe94f82b,0x3c6ef372,0x5f1d36f1,0xa54ff53a,0xade682d1,0x510e527f,0x2b3e6c1f,0x9b05688c,0xfb41bd6b,0x1f83d9ab,0x137e2179,0x5be0cd19]),cc=new Uint32Array(32);function ch(e,t,r,i,s,n){let o=s[n],a=s[n+1],l=cc[2*e],c=cc[2*e+1],h=cc[2*t],u=cc[2*t+1],d=cc[2*r],f=cc[2*r+1],p=cc[2*i],g=cc[2*i+1],y=li(l,h,o);c=ls(y,c,u,a),l=0|y,({Dh:g,Dl:p}={Dh:g^c,Dl:p^l}),({Dh:g,Dl:p}={Dh:p,Dl:g}),({h:f,l:d}=lr(f,d,g,p)),({Bh:u,Bl:h}={Bh:u^f,Bl:h^d}),({Bh:u,Bl:h}={Bh:a9(u,h,24),Bl:a7(u,h,24)}),cc[2*e]=l,cc[2*e+1]=c,cc[2*t]=h,cc[2*t+1]=u,cc[2*r]=d,cc[2*r+1]=f,cc[2*i]=p,cc[2*i+1]=g}function cu(e,t,r,i,s,n){let o=s[n],a=s[n+1],l=cc[2*e],c=cc[2*e+1],h=cc[2*t],u=cc[2*t+1],d=cc[2*r],f=cc[2*r+1],p=cc[2*i],g=cc[2*i+1],y=li(l,h,o);c=ls(y,c,u,a),l=0|y,({Dh:g,Dl:p}={Dh:g^c,Dl:p^l}),({Dh:g,Dl:p}={Dh:a9(g,p,16),Dl:a7(g,p,16)}),({h:f,l:d}=lr(f,d,g,p)),({Bh:u,Bl:h}={Bh:u^f,Bl:h^d}),({Bh:u,Bl:h}={Bh:le(u,h,63),Bl:lt(u,h,63)}),cc[2*e]=l,cc[2*e+1]=c,cc[2*t]=h,cc[2*t+1]=u,cc[2*r]=d,cc[2*r+1]=f,cc[2*i]=p,cc[2*i+1]=g}class cd extends lC{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,this.length=0,this.pos=0,lu(e),lu(t),this.blockLen=e,this.outputLen=t,this.buffer=new Uint8Array(e),this.buffer32=ly(this.buffer)}update(e){lp(this),ld(e=lN(e));let{blockLen:t,buffer:r,buffer32:i}=this,s=e.length,n=e.byteOffset,o=e.buffer;for(let a=0;a<s;){this.pos===t&&(lI(i),this.compress(i,0,!1),lI(i),this.pos=0);let l=Math.min(t-this.pos,s-a),c=n+a;if(l===t&&!(c%4)&&a+l<s){let e=new Uint32Array(o,c,Math.floor((s-a)/4));lI(e);for(let r=0;a+t<s;r+=i.length,a+=t)this.length+=t,this.compress(e,r,!1);lI(e);continue}r.set(e.subarray(a,a+l),this.pos),this.pos+=l,this.length+=l,a+=l}return this}digestInto(e){lp(this),lg(e,this);let{pos:t,buffer32:r}=this;this.finished=!0,lb(this.buffer.subarray(t)),lI(r),this.compress(r,0,!0),lI(r);let i=ly(e);this.get().forEach((e,t)=>i[t]=lx(e))}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let r=e.slice(0,t);return this.destroy(),r}_cloneInto(e){let{buffer:t,length:r,finished:i,destroyed:s,outputLen:n,pos:o}=this;return e||(e=new this.constructor({dkLen:n})),e.set(...this.get()),e.buffer.set(t),e.destroyed=s,e.finished=i,e.length=r,e.pos=o,e.outputLen=n,e}clone(){return this._cloneInto()}}class cf extends cd{constructor(e={}){const t=void 0===e.dkLen?64:e.dkLen;super(128,t),this.v0l=0|cl[0],this.v0h=0|cl[1],this.v1l=0|cl[2],this.v1h=0|cl[3],this.v2l=0|cl[4],this.v2h=0|cl[5],this.v3l=0|cl[6],this.v3h=0|cl[7],this.v4l=0|cl[8],this.v4h=0|cl[9],this.v5l=0|cl[10],this.v5h=0|cl[11],this.v6l=0|cl[12],this.v6h=0|cl[13],this.v7l=0|cl[14],this.v7h=0|cl[15],function(e,t={},r,i,s){if(lu(64),e<0||e>64)throw Error("outputLen bigger than keyLen");let{key:n,salt:o,personalization:a}=t;if(void 0!==n&&(n.length<1||n.length>64))throw Error("key length must be undefined or 1..64");if(void 0!==o&&16!==o.length)throw Error("salt must be undefined or 16");if(void 0!==a&&16!==a.length)throw Error("personalization must be undefined or 16")}(t,e,0,0,0);let{key:r,personalization:i,salt:s}=e,n=0;if(void 0!==r&&(n=(r=lN(r)).length),this.v0l^=this.outputLen|n<<8|0x1010000,void 0!==s){const e=ly(s=lN(s));this.v4l^=lx(e[0]),this.v4h^=lx(e[1]),this.v5l^=lx(e[2]),this.v5h^=lx(e[3])}if(void 0!==i){const e=ly(i=lN(i));this.v6l^=lx(e[0]),this.v6h^=lx(e[1]),this.v7l^=lx(e[2]),this.v7h^=lx(e[3])}if(void 0!==r){const e=new Uint8Array(this.blockLen);e.set(r),this.update(e)}}
15get(){let{v0l:e,v0h:t,v1l:r,v1h:i,v2l:s,v2h:n,v3l:o,v3h:a,v4l:l,v4h:c,v5l:h,v5h:u,v6l:d,v6h:f,v7l:p,v7h:g}=this;return[e,t,r,i,s,n,o,a,l,c,h,u,d,f,p,g]}set(e,t,r,i,s,n,o,a,l,c,h,u,d,f,p,g){this.v0l=0|e,this.v0h=0|t,this.v1l=0|r,this.v1h=0|i,this.v2l=0|s,this.v2h=0|n,this.v3l=0|o,this.v3h=0|a,this.v4l=0|l,this.v4h=0|c,this.v5l=0|h,this.v5h=0|u,this.v6l=0|d,this.v6h=0|f,this.v7l=0|p,this.v7h=0|g}compress(e,t,r){this.get().forEach((e,t)=>cc[t]=e),cc.set(cl,16);let{h:i,l:s}=a6(BigInt(this.length));cc[24]=cl[8]^s,cc[25]=cl[9]^i,r&&(cc[28]=~cc[28],cc[29]=~cc[29]);let n=0;for(let r=0;r<12;r++)ch(0,4,8,12,e,t+2*ca[n++]),cu(0,4,8,12,e,t+2*ca[n++]),ch(1,5,9,13,e,t+2*ca[n++]),cu(1,5,9,13,e,t+2*ca[n++]),ch(2,6,10,14,e,t+2*ca[n++]),cu(2,6,10,14,e,t+2*ca[n++]),ch(3,7,11,15,e,t+2*ca[n++]),cu(3,7,11,15,e,t+2*ca[n++]),ch(0,5,10,15,e,t+2*ca[n++]),cu(0,5,10,15,e,t+2*ca[n++]),ch(1,6,11,12,e,t+2*ca[n++]),cu(1,6,11,12,e,t+2*ca[n++]),ch(2,7,8,13,e,t+2*ca[n++]),cu(2,7,8,13,e,t+2*ca[n++]),ch(3,4,9,14,e,t+2*ca[n++]),cu(3,4,9,14,e,t+2*ca[n++]);this.v0l^=cc[0]^cc[16],this.v0h^=cc[1]^cc[17],this.v1l^=cc[2]^cc[18],this.v1h^=cc[3]^cc[19],this.v2l^=cc[4]^cc[20],this.v2h^=cc[5]^cc[21],this.v3l^=cc[6]^cc[22],this.v3h^=cc[7]^cc[23],this.v4l^=cc[8]^cc[24],this.v4h^=cc[9]^cc[25],this.v5l^=cc[10]^cc[26],this.v5h^=cc[11]^cc[27],this.v6l^=cc[12]^cc[28],this.v6h^=cc[13]^cc[29],this.v7l^=cc[14]^cc[30],this.v7h^=cc[15]^cc[31],lb(cc)}destroy(){this.destroyed=!0,lb(this.buffer32),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}let cp=(g=e=>new cf(e),(a=(e,t)=>g(t).update(lN(e)).digest()).outputLen=(l=g({})).outputLen,a.blockLen=l.blockLen,a.create=e=>g(e),a);function cg(e){let t=`�Ethereum Signed Message:
16${e.length}`,r=new TextEncoder().encode(t+e);return"0x"+ah.from(lZ(r)).toString("hex")}async function cy(e,t,r,i,s,n){switch(r.t){case"eip191":var o,a;let l;return await (o=e,a=t,l=function(e){if(130!==e.length&&132!==e.length)throw new i3({signature:e});let t=BigInt(iJ(e,0,32)),r=BigInt(iJ(e,32,64)),i=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{var r=t;if(0===r||27===r)return 0;if(1===r||28===r)return 1;if(r>=35)return+(r%2==0);throw new i4({value:r})}catch{throw new i5({value:t})}})();return void 0===i?{r:t,s:r}:{r:t,s:r,yParity:i}}(r.s),(function(e,t={}){let r=ng(`0x${(function(e,t={}){ny(e);let{prefix:r,x:i,y:s}=e,{includePrefix:n=!0}=t;return function(...e){return`0x${e.reduce((e,t)=>e+t.replace("0x",""),"")}`}(n?iY(r,{size:1}):"0x",iY(i,{size:32}),"bigint"==typeof s?iY(s,{size:32}):"0x")})(e).slice(4)}`).substring(26);return function(e,t={}){let{checksum:r=!1}=t;return(nS(e),r)?nO(e):e}(`0x${r}`,t)})(function(e){var t;let r,{payload:i,signature:s}=e,{r:n,s:o,yParity:a}=s;return t=new no.Signature(BigInt(n),BigInt(o)).addRecoveryBit(a).recoverPublicKey(iW(i).substring(2)),ny(r=(()=>{if(function(e,t={}){let{strict:r=!1}=t;try{return!function(e,t={}){let{strict:r=!1}=t;if(!e||"string"!=typeof e)throw new i0(e);if(r&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith("0x"))throw new i1(e)}(e,{strict:r}),!0}catch{return!1}}(t))return nb(t);if(function(e){try{if(!(e instanceof Uint8Array)&&(!e||"object"!=typeof e||!("BYTES_PER_ELEMENT"in e)||1!==e.BYTES_PER_ELEMENT||"Uint8Array"!==e.constructor.name))throw new nc(e);return!0}catch{return!1}}(t))return nb(iG(t));let{prefix:e,x:r,y:i}=t;return"bigint"==typeof r&&"bigint"==typeof i?{prefix:e??4,x:r,y:i}:{prefix:e,x:r}})()),r}({payload:cg(a),signature:l})).toLowerCase()===o.toLowerCase());case"eip1271":return await cb(e,t,r.s,i,s,n);default:throw Error(`verifySignature failed: Attempted to verify CacaoSignature with unknown type: ${r.t}`)}}async function cb(e,t,r,i,s,n){let o=au(i);if(!o.namespace||!o.reference)throw Error(`isValidEip1271Signature failed: chainId must be in CAIP-2 format, received: ${i}`);try{let o="0x1626ba7e",a=r.substring(2),l=(a.length/2).toString(16).padStart(64,"0"),c=(t.startsWith("0x")?t:cg(t)).substring(2),h=o+c+"0000000000000000000000000000000000000000000000000000000000000040"+l+a,u=await fetch(`${n||"https://rpc.walletconnect.org/v1"}/?chainId=${i}&projectId=${s}`,{headers:{"Content-Type":"application/json"},method:"POST",body:JSON.stringify({id:Date.now()+Math.floor(1e3*Math.random()),jsonrpc:"2.0",method:"eth_call",params:[{to:e,data:h},"latest"]})}),{result:d}=await u.json();return!!d&&d.slice(0,o.length).toLowerCase()===o.toLowerCase()}catch(e){return console.error("isValidEip1271Signature: ",e),!1}}function cm(e){let t=new Uint8Array(ci(function(e){if(e instanceof Uint8Array)return e;if(Array.isArray(e))return new Uint8Array(e);if("object"==typeof e&&null!=e&&e.data)return new Uint8Array(Object.values(e.data));if("object"==typeof e&&e)return new Uint8Array(Object.values(e));throw Error("getNearUint8ArrayFromBytes: Unexpected result type from bytes array")}(e)));return nQ.tw.encode(t)}function cw(e){var t;let r=(t=ah.from(e,"base64"),new nZ(void 0).decode(t)).txn;if(!r)throw Error("Invalid signed transaction: missing 'txn' field");let i=new nJ(void 0).encodeSharedRef(r),s=ah.from("TX"),n=co(ah.concat([s,ah.from(i)]));return nQ.RG.encode(n).replace(/=+$/,"")}function cv(e){let t=[],r=BigInt(e);for(;r>=BigInt(128);)t.push(Number(r&BigInt(127)|BigInt(128))),r>>=BigInt(7);return t.push(Number(r)),ah.from(t)}var cE=Object.defineProperty,cx=Object.defineProperties,cI=Object.getOwnPropertyDescriptors,cS=Object.getOwnPropertySymbols,cO=Object.prototype.hasOwnProperty,c_=Object.prototype.propertyIsEnumerable,cA=(e,t,r)=>t in e?cE(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;let cP="did:pkh:",cT={eip155:"Ethereum",solana:"Solana",bip122:"Bitcoin"},cN=e=>e?.split(":"),cR=e=>{let t=e&&cN(e);if(t)return t[2]+":"+t[3]},cC=e=>{let t=e&&cN(e);if(t)return t.pop()};async function cB(e){let{cacao:t,projectId:r}=e,{s:i,p:s}=t,n=cU(s,s.iss),o=cC(s.iss);return await cy(o,n,i,cR(s.iss),r)}let cU=(e,t)=>{let r=(e=>{let t=e&&cN(e);if(t)return e.includes(cP)?t[2]:t[0]})(t);if(!r)throw Error("Invalid issuer: "+t);let i=`${e.domain} wants you to sign in with your ${r?cT[r]||r:""} account:`,s=cC(t);if(!e.aud&&!e.uri)throw Error("Either `aud` or `uri` is required to construct the message");let n=e.statement||void 0,o=`URI: ${e.aud||e.uri}
16`,a=`Version: ${e.version}`,l=`Chain ID: ${(e=>{let t=e&&cN(e);if(t)return e.includes(cP)?t[3]:t[1]})(t)}`,c=`Nonce: ${e.nonce}`,h=`Issued At: ${e.iat}`,u=e.exp?`Expiration Time: ${e.exp}`:void 0,d=e.nbf?`Not Before: ${e.nbf}`:void 0,f=e.requestId?`Request ID: ${e.requestId}`:void 0,p=e.resources?`Resources:${e.resources.map(e=>`
17- ${e}`).join("")}`:void 0,g=cq(e.resources);return g&&(n=function(e="",t){ck(t);let r="I further authorize the stated URI to perform the following actions on my behalf: ";if(e.includes(r))return e;let i=[],s=0;Object.keys(t.att).forEach(e=>{let r=Object.keys(t.att[e]).map(e=>({ability:e.split("/")[0],action:e.split("/")[1]}));r.sort((e,t)=>e.action.localeCompare(t.action));let n={};r.forEach(e=>{n[e.ability]||(n[e.ability]=[]),n[e.ability].push(e.action)});let o=Object.keys(n).map(t=>(s++,`(${s}) '${t}': '${n[t].join("', '")}' for '${e}'.`));i.push(o.join(", ").replace(".,","."))});let n=i.join(" "),o=`${r}${n}`;return`${e?e+" ":""}${o}`}(n,cL(g))),[i,s,"",n,"",o,a,l,c,h,u,d,f,p].filter(e=>null!=e).join(`
18`)};function ck(e){if(!e)throw Error("No recap provided, value is undefined");if(!e.att)throw Error("No `att` property found");let t=Object.keys(e.att);if(!(null!=t&&t.length))throw Error("No resources found in `att` property");t.forEach(t=>{let r=e.att[t];if(Array.isArray(r)||"object"!=typeof r)throw Error(`Resource must be an object: ${t}`);if(!Object.keys(r).length)throw Error(`Resource object is empty: ${t}`);Object.keys(r).forEach(e=>{let t=r[e];if(!Array.isArray(t))throw Error(`Ability limits ${e} must be an array of objects, found: ${t}`);if(!t.length)throw Error(`Value of ${e} is empty array, must be an array with objects`);t.forEach(t=>{if("object"!=typeof t)throw Error(`Ability limits (${e}) must be an array of objects, found: ${t}`)})})})}function cD(e){return ck(e),`urn:recap:${ah.from(JSON.stringify(e)).toString("base64").replace(/=/g,"")}`}function cL(e){var t;let r=(t=e.replace("urn:recap:",""),JSON.parse(ah.from(t,"base64").toString("utf-8")));return ck(r),r}function cj(e){var t;let r=cL(e);ck(r);let i=null==(t=r.att)?void 0:t.eip155;return i?Object.keys(i).map(e=>e.split("/")[1]):[]}function cM(e){let t=cL(e);ck(t);let r=[];return Object.values(t.att).forEach(e=>{Object.values(e).forEach(e=>{var t;null!=(t=e?.[0])&&t.chains&&r.push(e[0].chains)})}),[...new Set(r.flat())]}function cq(e){if(!e)return;let t=e?.[e.length-1];return t&&t.includes("urn:recap:")?t:void 0}function c$(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function cz(e){if("boolean"!=typeof e)throw Error(`boolean expected, not ${e}`)}function cV(e){if(!Number.isSafeInteger(e)||e<0)throw Error("positive integer expected, got "+e)}function cF(e,...t){if(!c$(e))throw Error("Uint8Array expected");if(t.length>0&&!t.includes(e.length))throw Error("Uint8Array expected of length "+t+", got length="+e.length)}function cK(e,t=!0){if(e.destroyed)throw Error("Hash instance has been destroyed");if(t&&e.finished)throw Error("Hash#digest() has already been called")}function cH(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function cW(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}let cG=68===new Uint8Array(new Uint32Array([0x11223344]).buffer)[0];function cY(e){if("string"==typeof e)e=function(e){if("string"!=typeof e)throw Error("string expected");return new Uint8Array(new TextEncoder().encode(e))}(e);else if(c$(e))e=cQ(e);else throw Error("Uint8Array expected, got "+typeof e);return e}function cZ(e,t,r=!0){if(void 0===t)return new Uint8Array(e);if(t.length!==e)throw Error("invalid output length, expected "+e+", got: "+t.length);if(r&&t.byteOffset%4!=0)throw Error("invalid output, must be aligned");return t}function cJ(e,t,r,i){if("function"==typeof e.setBigUint64)return e.setBigUint64(t,r,i);let s=BigInt(32),n=BigInt(0xffffffff),o=Number(r>>s&n),a=Number(r&n),l=4*!!i,c=4*!i;e.setUint32(t+l,o,i),e.setUint32(t+c,a,i)}function cQ(e){return Uint8Array.from(e)}let cX=e=>Uint8Array.from(e.split("").map(e=>e.charCodeAt(0))),c0=cX("expand 16-byte k"),c1=cX("expand 32-byte k"),c2=cH(c0),c8=cH(c1);function c6(e,t){return e<<t|e>>>32-t}function c3(e){return e.byteOffset%4==0}let c5=0x100000000-1,c4=new Uint32Array,c9=(e,t)=>255&e[t++]|(255&e[t++])<<8;class c7{constructor(e){this.blockLen=16,this.outputLen=16,this.buffer=new Uint8Array(16),this.r=new Uint16Array(10),this.h=new Uint16Array(10),this.pad=new Uint16Array(8),this.pos=0,this.finished=!1,cF(e=cY(e),32);const t=c9(e,0),r=c9(e,2),i=c9(e,4),s=c9(e,6),n=c9(e,8),o=c9(e,10),a=c9(e,12),l=c9(e,14);this.r[0]=8191&t,this.r[1]=(t>>>13|r<<3)&8191,this.r[2]=(r>>>10|i<<6)&7939,this.r[3]=(i>>>7|s<<9)&8191,this.r[4]=(s>>>4|n<<12)&255,this.r[5]=n>>>1&8190,this.r[6]=(n>>>14|o<<2)&8191,this.r[7]=(o>>>11|a<<5)&8065,this.r[8]=(a>>>8|l<<8)&8191,this.r[9]=l>>>5&127;for(let t=0;t<8;t++)this.pad[t]=c9(e,16+2*t)}process(e,t,r=!1){let{h:i,r:s}=this,n=s[0],o=s[1],a=s[2],l=s[3],c=s[4],h=s[5],u=s[6],d=s[7],f=s[8],p=s[9],g=c9(e,t+0),y=c9(e,t+2),b=c9(e,t+4),m=c9(e,t+6),w=c9(e,t+8),v=c9(e,t+10),E=c9(e,t+12),x=c9(e,t+14),I=i[0]+(8191&g),S=i[1]+((g>>>13|y<<3)&8191),O=i[2]+((y>>>10|b<<6)&8191),_=i[3]+((b>>>7|m<<9)&8191),A=i[4]+((m>>>4|w<<12)&8191),P=i[5]+(w>>>1&8191),T=i[6]+((w>>>14|v<<2)&8191),N=i[7]+((v>>>11|E<<5)&8191),R=i[8]+((E>>>8|x<<8)&8191),C=i[9]+(x>>>5|2048*!r),B=0,U=0+I*n+5*p*S+5*f*O+5*d*_+5*u*A;B=U>>>13,U&=8191,U+=5*h*P+5*c*T+5*l*N+5*a*R+5*o*C,B+=U>>>13,U&=8191;let k=B+I*o+S*n+5*p*O+5*f*_+5*d*A;B=k>>>
1813,k&=8191,k+=5*u*P+5*h*T+5*c*N+5*l*R+5*a*C,B+=k>>>13,k&=8191;let D=B+I*a+S*o+O*n+5*p*_+5*f*A;B=D>>>13,D&=8191,D+=5*d*P+5*u*T+5*h*N+5*c*R+5*l*C,B+=D>>>13,D&=8191;let L=B+I*l+S*a+O*o+_*n+5*p*A;B=L>>>13,L&=8191,L+=5*f*P+5*d*T+5*u*N+5*h*R+5*c*C,B+=L>>>13,L&=8191;let j=B+I*c+S*l+O*a+_*o+A*n;B=j>>>13,j&=8191,j+=5*p*P+5*f*T+5*d*N+5*u*R+5*h*C,B+=j>>>13,j&=8191;let M=B+I*h+S*c+O*l+_*a+A*o;B=M>>>13,M&=8191,M+=P*n+5*p*T+5*f*N+5*d*R+5*u*C,B+=M>>>13,M&=8191;let q=B+I*u+S*h+O*c+_*l+A*a;B=q>>>13,q&=8191,q+=P*o+T*n+5*p*N+5*f*R+5*d*C,B+=q>>>13,q&=8191;let $=B+I*d+S*u+O*h+_*c+A*l;B=$>>>13,$&=8191,$+=P*a+T*o+N*n+5*p*R+5*f*C,B+=$>>>13,$&=8191;let z=B+I*f+S*d+O*u+_*h+A*c;B=z>>>13,z&=8191,z+=P*l+T*a+N*o+R*n+5*p*C,B+=z>>>13,z&=8191;let V=B+I*p+S*f+O*d+_*u+A*h;B=V>>>13,V&=8191,V+=P*c+T*l+N*a+R*o+C*n,B+=V>>>13,V&=8191,U=8191&(B=(B=(B<<2)+B|0)+U|0),B>>>=13,k+=B,i[0]=U,i[1]=k,i[2]=D,i[3]=L,i[4]=j,i[5]=M,i[6]=q,i[7]=$,i[8]=z,i[9]=V}finalize(){let{h:e,pad:t}=this,r=new Uint16Array(10),i=e[1]>>>13;e[1]&=8191;for(let t=2;t<10;t++)e[t]+=i,i=e[t]>>>13,e[t]&=8191;e[0]+=5*i,i=e[0]>>>13,e[0]&=8191,e[1]+=i,i=e[1]>>>13,e[1]&=8191,e[2]+=i,r[0]=e[0]+5,i=r[0]>>>13,r[0]&=8191;for(let t=1;t<10;t++)r[t]=e[t]+i,i=r[t]>>>13,r[t]&=8191;r[9]-=8192;let s=(1^i)-1;for(let e=0;e<10;e++)r[e]&=s;s=~s;for(let t=0;t<10;t++)e[t]=e[t]&s|r[t];e[0]=(e[0]|e[1]<<13)&65535,e[1]=(e[1]>>>3|e[2]<<10)&65535,e[2]=(e[2]>>>6|e[3]<<7)&65535,e[3]=(e[3]>>>9|e[4]<<4)&65535,e[4]=(e[4]>>>12|e[5]<<1|e[6]<<14)&65535,e[5]=(e[6]>>>2|e[7]<<11)&65535,e[6]=(e[7]>>>5|e[8]<<8)&65535,e[7]=(e[8]>>>8|e[9]<<5)&65535;let n=e[0]+t[0];e[0]=65535&n;for(let r=1;r<8;r++)n=(e[r]+t[r]|0)+(n>>>16)|0,e[r]=65535&n;cW(r)}update(e){cK(this),cF(e=cY(e));let{buffer:t,blockLen:r}=this,i=e.length;for(let s=0;s<i;){let n=Math.min(r-this.pos,i-s);if(n===r){for(;r<=i-s;s+=r)this.process(e,s);continue}t.set(e.subarray(s,s+n),this.pos),this.pos+=n,s+=n,this.pos===r&&(this.process(t,0,!1),this.pos=0)}return this}destroy(){cW(this.h,this.r,this.buffer,this.pad)}digestInto(e){cK(this),function(e,t){cF(e);let r=t.outputLen;if(e.length<r)throw Error("digestInto() expects output buffer of length at least "+r)}(e,this),this.finished=!0;let{buffer:t,h:r}=this,{pos:i}=this;if(i){for(t[i++]=1;i<16;i++)t[i]=0;this.process(t,0,!0)}this.finalize();let s=0;for(let t=0;t<8;t++)e[s++]=r[t]>>>0,e[s++]=r[t]>>>8;return e}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let r=e.slice(0,t);return this.destroy(),r}}let he=(y=e=>new c7(e),(c=(e,t)=>y(t).update(cY(e)).digest()).outputLen=(h=y(new Uint8Array(32))).outputLen,c.blockLen=h.blockLen,c.create=e=>y(e),c),ht=function(e,t){let{allowShortKeys:r,extendNonceFn:i,counterLength:s,counterRight:n,rounds:o}=function(e,t){if(null==t||"object"!=typeof t)throw Error("options must be defined");return Object.assign(e,t)}({allowShortKeys:!1,counterLength:8,counterRight:!1,rounds:20},t);if("function"!=typeof e)throw Error("core must be a function");return cV(s),cV(o),cz(n),cz(r),(t,a,l,c,h=0)=>{cF(t),cF(a),cF(l);let u=l.length;if(void 0===c&&(c=new Uint8Array(u)),cF(c),cV(h),h<0||h>=c5)throw Error("arx: counter overflow");if(c.length<u)throw Error(`arx: output (${c.length}) is shorter than data (${u})`);let d=[],f=t.length,p,g;if(32===f)d.push(p=cQ(t)),g=c8;else if(16===f&&r)(p=new Uint8Array(32)).set(t),p.set(t,16),g=c2,d.push(p);else throw Error(`arx: invalid 32-byte key, got length=${f}`);c3(a)||d.push(a=cQ(a));let y=cH(p);if(i){if(24!==a.length)throw Error("arx: extended nonce must be 24 bytes");i(g,y,cH(a.subarray(0,16)),y),a=a.subarray(16)}let b=16-s;if(b!==a.length)throw Error(`arx: nonce must be ${b} or 16 bytes`);if(12!==b){let e=new Uint8Array(12);e.set(a,n?0:12-a.length),a=e,d.push(a)}return function(e,t,r,i,s,n,o,a){let l=s.length,c=new Uint8Array(64),h=cH(c),u=c3(s)&&c3(n),d=u?cH(s):c4,f=u?cH(n):c4;for(let p=0;p<l;o++){if(e(t,r,i,h,o,a),o>=c5)throw Error("arx: counter overflow");let g=Math.min(64,l-p);if(u&&64===g){let e=p/4;if(p%4!=0)throw Error("arx: invalid block position");for(let t=0,r;t<16;t++)f[r=e+t]=d[r]^h[t];p+=64;continue}for(let e=0,t;e<g;e++)n[t=p+e]=s[t]^c[e];p+=g}}(e,g,y,cH(a),l,c,h,o),cW(...d),c}}(function(e,t,r,i,s,n=20){let o=e[0],a=e[1],l=e[2],c=e[3],h=t[0],u=t[1],d=t[2],f=t[3],p=t[4],g=t[5],y=t[6],b=t[7],m=r[0],w=r[1],v=r[2],E=o,x=a,I=l,S=c,O=h,_=u,A=d,P=f,T=p,N=g,R=y,C=b,B=s,U=m,k=w,D=v;for(let e=0;e<n;e+=2)T=T+(B=c6(B^(E=E+O|0),16))|0,E=E+(O=c6(O^T,12))|0,T=T+(B=c6(B^E,8))|0,O=c6(O^T,7),N=N+(U=c6(U^(x=x+_|0),16))|0,x=x+(_=c6(_^N,12))|0,N=N+(U=c6(U^x,8))|0,_=c6(_^N,7),R=R+(k=c6(k^(I=I+A|0),16))|0,I=I+(A=c6(A^R,12))|0,R=R+(k=c6(k^I,8))|0,A=c6(A^R,7),C=C+(D=c6(D^(S=S+P|0),16))|0,S=S+(P=c6(P^C,12))|0,C=C+(D=c6(D^S,8))|0,P=c6(P^C,7),R=R+(D=c6(D^(E=E+_|0),16))|0,E=E+(_=c6(_^R,12))|0,R=R+(D=c6(D^E,8))|0,_=c6(_^R,7),C=C+(B=c6(B^(x=x+A|0),16))|0,x=x+(A=c6(A^C,12))|0,C=C+(B=c6(B^x,8))|0,A=c6(A^C,7),T=T+(U=c6(U^(I=I+P|0),16))|0,I=I+(P=c6(P^T,12))|0,T=T+(U=c6(U^I,8))|0,P=c6(P^T,7),N=N+(k=c6(k^(S=S+O|0),16))|0,S=S+(O=c6(O^N,12))|0,N=N+(k=c6(k^S,8))|0,O=c6(O^N,7);let L=0;i[L++]=o+E|0,i[L++]=a+x|0,i[L++]=l+I|0,i[L++]=c+S|0,i[L++]=h+O|0,i[L++]=u+_|0,i[L++]=d+A|
180,i[L++]=f+P|0,i[L++]=p+T|0,i[L++]=g+N|0,i[L++]=y+R|0,i[L++]=b+C|0,i[L++]=s+B|0,i[L++]=m+U|0,i[L++]=w+k|0,i[L++]=v+D|0},{counterRight:!1,counterLength:4,allowShortKeys:!1}),hr=new Uint8Array(16),hi=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(hr.subarray(r))},hs=new Uint8Array(32);function hn(e,t,r,i,s){var n,o;let a,l,c=e(t,r,hs),h=he.create(c);s&&hi(h,s),hi(h,i);let u=(n=i.length,o=s?s.length:0,cz(!0),cJ(l=new DataView((a=new Uint8Array(16)).buffer,a.byteOffset,a.byteLength),0,BigInt(o),!0),cJ(l,8,BigInt(n),!0),a);h.update(u);let d=h.digest();return cW(c,u),d}let ho=((e,t)=>{function r(i,...s){if(cF(i),!cG)throw Error("Non little-endian hardware is not yet supported");if(void 0!==e.nonceLength){let t=s[0];if(!t)throw Error("nonce / iv required");e.varSizeNonce?cF(t):cF(t,e.nonceLength)}let n=e.tagLength;n&&void 0!==s[1]&&cF(s[1]);let o=t(i,...s),a=(e,t)=>{if(void 0!==t){if(2!==e)throw Error("cipher output not supported");cF(t)}},l=!1;return{encrypt(e,t){if(l)throw Error("cannot encrypt() twice with same key + nonce");return l=!0,cF(e),a(o.encrypt.length,t),o.encrypt(e,t)},decrypt(e,t){if(cF(e),n&&e.length<n)throw Error("invalid ciphertext length: smaller than tagLength="+n);return a(o.decrypt.length,t),o.decrypt(e,t)}}}return Object.assign(r,e),r})({blockSize:64,nonceLength:12,tagLength:16},(e,t,r)=>({encrypt(i,s){let n=i.length;(s=cZ(n+16,s,!1)).set(i);let o=s.subarray(0,-16);ht(e,t,o,o,1);let a=hn(ht,e,t,o,r);return s.set(a,n),cW(a),s},decrypt(i,s){s=cZ(i.length-16,s,!1);let n=i.subarray(0,-16),o=i.subarray(-16),a=hn(ht,e,t,n,r);if(!function(e,t){if(e.length!==t.length)return!1;let r=0;for(let i=0;i<e.length;i++)r|=e[i]^t[i];return 0===r}(o,a))throw Error("invalid tag");return s.set(i.subarray(0,-16)),ht(e,t,s,s,1),cW(a),s}}));class ha extends lC{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,lf(e);const r=lN(t);if(this.iHash=e.create(),"function"!=typeof this.iHash.update)throw Error("Expected instance of class which extends utils.Hash");this.blockLen=this.iHash.blockLen,this.outputLen=this.iHash.outputLen;const i=this.blockLen,s=new Uint8Array(i);s.set(r.length>i?e.create().update(r).digest():r);for(let e=0;e<s.length;e++)s[e]^=54;this.iHash.update(s),this.oHash=e.create();for(let e=0;e<s.length;e++)s[e]^=106;this.oHash.update(s),lb(s)}update(e){return lp(this),this.iHash.update(e),this}digestInto(e){lp(this),ld(e,this.outputLen),this.finished=!0,this.iHash.digestInto(e),this.oHash.update(e),this.oHash.digestInto(e),this.destroy()}digest(){let e=new Uint8Array(this.oHash.outputLen);return this.digestInto(e),e}_cloneInto(e){e||(e=Object.create(Object.getPrototypeOf(this),{}));let{oHash:t,iHash:r,finished:i,destroyed:s,blockLen:n,outputLen:o}=this;return e.finished=i,e.destroyed=s,e.blockLen=n,e.outputLen=o,e.oHash=t._cloneInto(e.oHash),e.iHash=r._cloneInto(e.iHash),e}clone(){return this._cloneInto()}destroy(){this.destroyed=!0,this.oHash.destroy(),this.iHash.destroy()}}let hl=(e,t,r)=>new ha(e,t).update(r).digest();hl.create=(e,t)=>new ha(e,t);let hc=Uint8Array.from([0]),hh=Uint8Array.of(),hu=BigInt(0),hd=BigInt(1);function hf(e,t=""){if("boolean"!=typeof e)throw Error((t&&`"${t}"`)+"expected boolean, got type="+typeof e);return e}function hp(e,t,r=""){let i=lh(e),s=e?.length,n=void 0!==t;if(!i||n&&s!==t)throw Error((r&&`"${r}" `)+"expected Uint8Array"+(n?` of length ${t}`:"")+", got "+(i?`length=${s}`:`type=${typeof e}`));return e}function hg(e){let t=e.toString(16);return 1&t.length?"0"+t:t}function hy(e){if("string"!=typeof e)throw Error("hex string expected, got "+typeof e);return""===e?hu:BigInt("0x"+e)}function hb(e){return ld(e),hy(l_(Uint8Array.from(e).reverse()))}function hm(e,t){return lP(e.toString(16).padStart(2*t,"0"))}function hw(e,t){return hm(e,t).reverse()}function hv(e,t,r){let i;if("string"==typeof t)try{i=lP(t)}catch(t){throw Error(e+" must be hex string or Uint8Array, cause: "+t)}else if(lh(t))i=Uint8Array.from(t);else throw Error(e+" must be hex string or Uint8Array");let s=i.length;if("number"==typeof r&&s!==r)throw Error(e+" of length "+r+" expected, got "+s);return i}let hE=e=>"bigint"==typeof e&&hu<=e;function hx(e,t,r,i){if(!(hE(t)&&hE(r)&&hE(i))||!(r<=t)||!(t<i))throw Error("expected valid "+e+": "+r+" <= n < "+i+", got "+t)}function hI(e){let t;for(t=0;e>hu;e>>=hd,t+=1);return t}let hS=e=>(hd<<BigInt(e))-hd;function hO(e,t,r={}){if(!e||"object"!=typeof e)throw Error("expected valid options object");function i(t,r,i){let s=e[t];if(i&&void 0===s)return;let n=typeof s;if(n!==r||null===s)throw Error(`param "${t}
18" is invalid: expected ${r}, got ${n}`)}Object.entries(t).forEach(([e,t])=>i(e,t,!1)),Object.entries(r).forEach(([e,t])=>i(e,t,!0))}function h_(e){let t=new WeakMap;return(r,...i)=>{let s=t.get(r);if(void 0!==s)return s;let n=e(r,...i);return t.set(r,n),n}}let hA=BigInt(0),hP=BigInt(1),hT=BigInt(2),hN=BigInt(3),hR=BigInt(4),hC=BigInt(5),hB=BigInt(7),hU=BigInt(8),hk=BigInt(9),hD=BigInt(16);function hL(e,t){let r=e%t;return r>=hA?r:t+r}function hj(e,t,r){let i=e;for(;t-- >hA;)i*=i,i%=r;return i}function hM(e,t){if(e===hA)throw Error("invert: expected non-zero number");if(t<=hA)throw Error("invert: expected positive modulus, got "+t);let r=hL(e,t),i=t,s=hA,n=hP;for(;r!==hA;){let e=i/r,t=i%r,o=s-n*e;i=r,r=t,s=n,n=o}if(i!==hP)throw Error("invert: does not exist");return hL(s,t)}function hq(e,t,r){if(!e.eql(e.sqr(t),r))throw Error("Cannot find square root")}function h$(e,t){let r=(e.ORDER+hP)/hR,i=e.pow(t,r);return hq(e,i,t),i}function hz(e,t){let r=(e.ORDER-hC)/hU,i=e.mul(t,hT),s=e.pow(i,r),n=e.mul(t,s),o=e.mul(e.mul(n,hT),s),a=e.mul(n,e.sub(o,e.ONE));return hq(e,a,t),a}function hV(e){if(e<hN)throw Error("sqrt is not defined for small field");let t=e-hP,r=0;for(;t%hT===hA;)t/=hT,r++;let i=hT,s=hG(e);for(;1===hH(s,i);)if(i++>1e3)throw Error("Cannot find square root: probably non-prime P");if(1===r)return h$;let n=s.pow(i,t),o=(t+hP)/hT;return function(e,i){if(e.is0(i))return i;if(1!==hH(e,i))throw Error("Cannot find square root");let s=r,a=e.mul(e.ONE,n),l=e.pow(i,t),c=e.pow(i,o);for(;!e.eql(l,e.ONE);){if(e.is0(l))return e.ZERO;let t=1,r=e.sqr(l);for(;!e.eql(r,e.ONE);)if(t++,r=e.sqr(r),t===s)throw Error("Cannot find square root");let i=hP<<BigInt(s-t-1),n=e.pow(a,i);s=t,a=e.sqr(n),l=e.mul(l,a),c=e.mul(c,n)}return c}}let hF=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function hK(e,t,r=!1){let i=Array(t.length).fill(r?e.ZERO:void 0),s=t.reduce((t,r,s)=>e.is0(r)?t:(i[s]=t,e.mul(t,r)),e.ONE),n=e.inv(s);return t.reduceRight((t,r,s)=>e.is0(r)?t:(i[s]=e.mul(t,i[s]),e.mul(t,r)),n),i}function hH(e,t){let r=(e.ORDER-hP)/hT,i=e.pow(t,r),s=e.eql(i,e.ONE),n=e.eql(i,e.ZERO),o=e.eql(i,e.neg(e.ONE));if(!s&&!n&&!o)throw Error("invalid Legendre symbol result");return s?1:n?0:-1}function hW(e,t){void 0!==t&&lu(t);let r=void 0!==t?t:e.toString(2).length,i=Math.ceil(r/8);return{nBitLength:r,nByteLength:i}}function hG(e,t,r=!1,i={}){let s;if(e<=hA)throw Error("invalid field: expected ORDER > 0, got "+e);let n,o,a=!1,l;if("object"==typeof t&&null!=t){if(i.sqrt||r)throw Error("cannot specify opts in two arguments");t.BITS&&(n=t.BITS),t.sqrt&&(o=t.sqrt),"boolean"==typeof t.isLE&&(r=t.isLE),"boolean"==typeof t.modFromBytes&&(a=t.modFromBytes),l=t.allowedLengths}else"number"==typeof t&&(n=t),i.sqrt&&(o=i.sqrt);let{nBitLength:c,nByteLength:h}=hW(e,n);if(h>2048)throw Error("invalid field: expected ORDER of <= 2048 bytes");let u=Object.freeze({ORDER:e,isLE:r,BITS:c,BYTES:h,MASK:hS(c),ZERO:hA,ONE:hP,allowedLengths:l,create:t=>hL(t,e),isValid:t=>{if("bigint"!=typeof t)throw Error("invalid field element: expected bigint, got "+typeof t);return hA<=t&&t<e},is0:e=>e===hA,isValidNot0:e=>!u.is0(e)&&u.isValid(e),isOdd:e=>(e&hP)===hP,neg:t=>hL(-t,e),eql:(e,t)=>e===t,sqr:t=>hL(t*t,e),add:(t,r)=>hL(t+r,e),sub:(t,r)=>hL(t-r,e),mul:(t,r)=>hL(t*r,e),pow:(e,t)=>(function(e,t,r){if(r<hA)throw Error("invalid exponent, negatives unsupported");if(r===hA)return e.ONE;if(r===hP)return t;let i=e.ONE,s=t;for(;r>hA;)r&hP&&(i=e.mul(i,s)),s=e.sqr(s),r>>=hP;return i})(u,e,t),div:(t,r)=>hL(t*hM(r,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>hM(t,e),sqrt:o||(t=>{let r,i,n,o,a,l;return s||(s=e%hR===hN?h$:e%hU===hC?hz:e%hD===hk?(r=hG(e),n=(i=hV(e))(r,r.neg(r.ONE)),o=i(r,n),a=i(r,r.neg(n)),l=(e+hB)/hD,(e,t)=>{let r=e.pow(t,l),i=e.mul(r,n),s=e.mul(r,o),c=e.mul(r,a),h=e.eql(e.sqr(i),t),u=e.eql(e.sqr(s),t);r=e.cmov(r,i,h),i=e.cmov(c,s,u);let d=e.eql(e.sqr(i),t),f=e.cmov(r,i,d);return hq(e,f,t),f}):hV(e)),s(u,t)}),toBytes:e=>r?hw(e,h):hm(e,h),fromBytes:(t,i=!0)=>{if(l){if(!l.includes(t.length)||t.length>h)throw Error("Field.fromBytes: expected "+l+" bytes, got "+t.length);let e=new Uint8Array(h);e.set(t,r?0:e.length-t.length),t=e}if(t.length!==h)throw Error("Field.fromBytes: expected "+h+" bytes, got "+t.length);let s=r?hb(t):hy(l_(t));if(a&&(s=hL(s,e)),!i&&!u.isValid(s))throw Error("invalid field element: outside of range 0..ORDER");return s},invertBatch:e=>hK(u,e),cmov:(e,t,r)=>r?t:e});return Object.freeze(u)}function hY(e){if("bigint"!=typeof e)throw Error("field order must be bigint");return Math.ceil(e.toString(2).length/8)}function hZ(e){let t=hY(e);return t+Math.ceil(t/2)}let hJ=BigInt(0),hQ=BigInt(1);function hX(e,t){let r=t.negate();return e?r:t}function h0(e,t){let r=hK(e.Fp,t.map(e=>e.Z));return t.map((t,i)=>e.fromAffine(t.toAffine(r[i])))}function h1(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error("invalid window size, expected [1.."+t+"], got W="+e)}function h2(e,t){h1(e,t);let r=Math.ceil(t/e)+1,i=2**(e-1),s=2**e;return{windows:r,windowSize:i,mask:hS(e),maxNumber:s,shiftBy:BigInt(e)}}function h8(e,t,r){let{windowSize:i,mask:s,maxNumber:n,shiftBy:o}=r,a=Number(e&s),l=e>>o;a>i&&(a-=n,l+=hQ);let c=t*i;return{nextN:l,offset:c+Math.abs(a)-1,isZero:0===a,isNeg:a<0,isNegF:t%2!=0,offsetF:c}}let h6=new WeakMap,h3=new WeakMap;function h5(e){return h3.get(e)||1}function h4(e){if(e!==hJ)throw Error("invalid wNAF")}class h9{constructor(e,t){this.BASE=e.BASE,this.ZERO=e.ZERO,this.Fn=e.Fn,this.bits=t}_unsafeLadder(e,t,r=this.ZERO){let i=e;for(;t>hJ;)t&hQ&&(r=r.add(i)),i=i.double(),t>>=hQ;return r}precomputeWindow(e,t){let{windows:r,windowSize:i}=h2(t,this.bits),s=[],n=e,o=n;for(let e=0;e<r;e++){o=n,s.push(o);for(let e=1;e<i;e++)o=o.add(n),s.push(o);n=o.double()}return s}wNAF(e,t,r){if(!this.Fn.isValid(r))throw Error("invalid scalar");let i=this.ZERO,s=this.BASE,n=h2(e,this.bits);for(let e=0;e<n.windows;e++){let{nextN:o,offset:a,isZero:l,isNeg:c,isNegF:h,offsetF:u}=h8(r,e,n);r=o,l?s=s.add(hX(h,t[u])):i=i.add(hX(c,t[a]))}
18return h4(r),{p:i,f:s}}wNAFUnsafe(e,t,r,i=this.ZERO){let s=h2(e,this.bits);for(let e=0;e<s.windows&&r!==hJ;e++){let{nextN:n,offset:o,isZero:a,isNeg:l}=h8(r,e,s);if(r=n,!a){let e=t[o];i=i.add(l?e.negate():e)}}return h4(r),i}getPrecomputes(e,t,r){let i=h6.get(t);return i||(i=this.precomputeWindow(t,e),1!==e&&("function"==typeof r&&(i=r(i)),h6.set(t,i))),i}cached(e,t,r){let i=h5(e);return this.wNAF(i,this.getPrecomputes(i,e,r),t)}unsafe(e,t,r,i){let s=h5(e);return 1===s?this._unsafeLadder(e,t,i):this.wNAFUnsafe(s,this.getPrecomputes(s,e,r),t,i)}createCache(e,t){h1(t,this.bits),h3.set(e,t),h6.delete(e)}hasCache(e){return 1!==h5(e)}}function h7(e,t,r){if(!t)return hG(e,{isLE:r});if(t.ORDER!==e)throw Error("Field.ORDER must match order: Fp == p, Fn == n");return hO(t,hF.reduce((e,t)=>(e[t]="function",e),{ORDER:"bigint",MASK:"bigint",BYTES:"number",BITS:"number"})),t}BigInt(0),BigInt(1),BigInt(2),BigInt(8),lT("HashToScalar-");let ue=BigInt(0),ut=BigInt(1),ur=BigInt(2),ui=BigInt(1),us=BigInt(2),un=BigInt(3),uo=BigInt(5),ua=BigInt(8),ul=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed"),uc={p:ul,n:BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),h:ua,a:BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec"),d:BigInt("0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3"),Gx:BigInt("0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a"),Gy:BigInt("0x6666666666666666666666666666666666666666666666666666666666666658")},uh=function(e){let{P:t,type:r,adjustScalarBytes:i,powPminus2:s,randomBytes:n}=(hO(e,{adjustScalarBytes:"function",powPminus2:"function"}),Object.freeze({...e})),o="x25519"===r;if(!o&&"x448"!==r)throw Error("invalid type");let a=n||lU,l=o?255:448,c=o?32:56,h=BigInt(o?9:5),u=BigInt(o?121665:39081),d=o?ur**BigInt(254):ur**BigInt(447),f=d+(o?BigInt(8)*ur**BigInt(251)-ut:BigInt(4)*ur**BigInt(445)-ut)+ut,p=e=>hL(e,t),g=hw(p(h),c);function y(e,r){let n,a=function(e,r){hx("u",e,ue,t),hx("scalar",r,d,f);let i=ut,n=ue,o=e,a=ut,c=ue;for(let t=BigInt(l-1);t>=ue;t--){let s=r>>t&ut;c^=s,({x_2:i,x_3:o}=m(c,i,o)),({x_2:n,x_3:a}=m(c,n,a)),c=s;let l=i+n,h=p(l*l),d=i-n,f=p(d*d),g=h-f,y=o+a,b=p((o-a)*l),w=p(y*d),v=b+w,E=b-w;o=p(v*v),a=p(e*p(E*E)),i=p(h*f),n=p(g*(h+p(u*g)))}return{x_2:i,x_3:o}=m(c,i,o),{x_2:n,x_3:a}=m(c,n,a),p(i*s(n))}((n=hv("u coordinate",r,c),o&&(n[31]&=127),p(hb(n))),hb(i(hv("scalar",e,c))));if(a===ue)throw Error("invalid private or public key received");return hw(p(a),c)}function b(e){return y(e,g)}function m(e,t,r){let i=p(e*(t-r));return{x_2:t=p(t-i),x_3:r=p(r+i)}}let w={secretKey:c,publicKey:c,seed:c},v=(e=a(c))=>(ld(e,w.seed),e);return{keygen:function(e){let t=v(e);return{secretKey:t,publicKey:b(t)}},getSharedSecret:(e,t)=>y(e,t),getPublicKey:e=>b(e),scalarMult:y,scalarMultBase:b,utils:{randomSecretKey:v,randomPrivateKey:v},GuBytes:g.slice(),lengths:w}}({P:u=hG(uc.p,{isLE:!0}).ORDER,type:"x25519",powPminus2:e=>{let t,r,i,s,n,o,a,l,c,h,d,f,p,g,{pow_p_5_8:y,b2:b}=(t=BigInt(10),r=BigInt(20),i=BigInt(40),s=BigInt(80),o=hj(n=e*e%ul*e%ul,us,ul)*n%ul,a=hj(o,ui,ul)*e%ul,l=hj(a,uo,ul)*a%ul,c=hj(l,t,ul)*l%ul,h=hj(c,r,ul)*c%ul,d=hj(h,i,ul)*h%ul,f=hj(d,s,ul)*d%ul,p=hj(f,s,ul)*d%ul,g=hj(p,t,ul)*l%ul,{pow_p_5_8:hj(g,us,ul)*e%ul,b2:n});return hL(hj(y,un,u)*b,u)},adjustScalarBytes:function(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}}),uu=(e,t)=>(e+(e>=0?t:-t)/um)/t;function ud(e){if(!["compact","recovered","der"].includes(e))throw Error('Signature format must be "compact", "recovered", or "der"');return e}function uf(e,t){let r={};for(let i of Object.keys(t))r[i]=void 0===e[i]?t[i]:e[i];return hf(r.lowS,"lowS"),hf(r.prehash,"prehash"),void 0!==r.format&&ud(r.format),r}class up extends Error{constructor(e=""){super(e)}}let ug={Err:up,_tlv:{encode:(e,t)=>{let{Err:r}=ug;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(1&t.length)throw new r("tlv.encode: unpadded data");let i=t.length/2,s=hg(i);if(s.length/2&128)throw new r("tlv.encode: long form length too big");let n=i>127?hg(s.length/2|128):"";return hg(e)+n+s+t},decode(e,t){let{Err:r}=ug,i=0;if(e<0||e>256)throw new r("tlv.encode: wrong tag");if(t.length<2||t[i++]!==e)throw new r("tlv.decode: wrong tlv");let s=t[i++],n=0;if(128&s){let e=127&s;if(!e)throw new r("tlv.decode(long): indefinite length not supported");if(e>4)throw new r("tlv.decode(long): byte length is too big");let o=t.subarray(i,i+e);
18if(o.length!==e)throw new r("tlv.decode: length bytes not complete");if(0===o[0])throw new r("tlv.decode(long): zero leftmost byte");for(let e of o)n=n<<8|e;if(i+=e,n<128)throw new r("tlv.decode(long): not minimal encoding")}else n=s;let o=t.subarray(i,i+n);if(o.length!==n)throw new r("tlv.decode: wrong value length");return{v:o,l:t.subarray(i+n)}}},_int:{encode(e){let{Err:t}=ug;if(e<uy)throw new t("integer: negative integers are not allowed");let r=hg(e);if(8&Number.parseInt(r[0],16)&&(r="00"+r),1&r.length)throw new t("unexpected DER parsing assertion: unpadded hex");return r},decode(e){let{Err:t}=ug;if(128&e[0])throw new t("invalid signature integer: negative");if(0===e[0]&&!(128&e[1]))throw new t("invalid signature integer: unnecessary leading zero");return hy(l_(e))}},toSig(e){let{Err:t,_int:r,_tlv:i}=ug,s=hv("signature",e),{v:n,l:o}=i.decode(48,s);if(o.length)throw new t("invalid signature: left bytes after parsing");let{v:a,l:l}=i.decode(2,n),{v:c,l:h}=i.decode(2,l);if(h.length)throw new t("invalid signature: left bytes after parsing");return{r:r.decode(a),s:r.decode(c)}},hexFromSig(e){let{_tlv:t,_int:r}=ug,i=t.encode(2,r.encode(e.r)),s=t.encode(2,r.encode(e.s));return t.encode(48,i+s)}},uy=BigInt(0),ub=BigInt(1),um=BigInt(2),uw=BigInt(3),uv=BigInt(4);function uE(e,t){let r,{BYTES:i}=e;if("bigint"==typeof t)r=t;else{let s=hv("private key",t);try{r=e.fromBytes(s)}catch{throw Error(`invalid private key: expected ui8a of size ${i}, got ${typeof t}`)}}if(!e.isValidNot0(r))throw Error("invalid private key: out of range [1..N-1]");return r}function ux(e){return Uint8Array.of(e?2:3)}function uI(e,t){return{secretKey:t.BYTES,publicKey:1+e.BYTES,publicKeyUncompressed:1+2*e.BYTES,publicKeyHasPrefix:!0,signature:2*t.BYTES}}function uS(e,t){let r=t=>(function(e){let t,{CURVE:r,curveOpts:i,hash:s,ecdsaOpts:n}=function(e){let t,r,i,s,{CURVE:n,curveOpts:o}=(t={a:e.a,b:e.b,p:e.Fp.ORDER,n:e.n,h:e.h,Gx:e.Gx,Gy:e.Gy},r=e.Fp,i=e.allowedPrivateKeyLengths?Array.from(new Set(e.allowedPrivateKeyLengths.map(e=>Math.ceil(e/2)))):void 0,s={Fp:r,Fn:hG(t.n,{BITS:e.nBitLength,allowedLengths:i,modFromBytes:e.wrapPrivateKey}),allowInfinityPoint:e.allowInfinityPoint,endo:e.endo,isTorsionFree:e.isTorsionFree,clearCofactor:e.clearCofactor,fromBytes:e.fromBytes,toBytes:e.toBytes},{CURVE:t,curveOpts:s}),a={hmac:e.hmac,randomBytes:e.randomBytes,lowS:e.lowS,bits2int:e.bits2int,bits2int_modN:e.bits2int_modN};return{CURVE:n,curveOpts:o,hash:e.hash,ecdsaOpts:a}}(e),o=function(e,t,r={}){lf(t),hO(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});let i=r.randomBytes||lU,s=r.hmac||((e,...r)=>hl(t,e,lR(...r))),{Fp:n,Fn:o}=e,{ORDER:a,BITS:l}=o,{keygen:c,getPublicKey:h,getSharedSecret:u,utils:d,lengths:f}=function(e,t={}){let{Fn:r}=e,i=t.randomBytes||lU,s=Object.assign(uI(e.Fp,r),{seed:hZ(r.ORDER)});function n(e){try{return!!uE(r,e)}catch{return!1}}function o(e=i(s.seed)){return function(e,t,r=!1){let i=e.length,s=hY(t),n=hZ(t);if(i<16||i<n||i>1024)throw Error("expected "+n+"-1024 bytes of input, got "+i);let o=hL(r?hb(e):hy(l_(e)),t-hP)+hP;return r?hw(o,s):hm(o,s)}(hp(e,s.seed,"seed"),r.ORDER)}function a(t,i=!0){return e.BASE.multiply(uE(r,t)).toBytes(i)}function l(t){if("bigint"==typeof t)return!1;if(t instanceof e)return!0;let{secretKey:i,publicKey:n,publicKeyUncompressed:o}=s;if(r.allowedLengths||i===n)return;let a=hv("key",t).length;return a===n||a===o}return Object.freeze({getPublicKey:a,getSharedSecret:function(t,i,s=!0){if(!0===l(t))throw Error("first arg must be private key");if(!1===l(i))throw Error("second arg must be public key");let n=uE(r,t);return e.fromHex(i).multiply(n).toBytes(s)},keygen:function(e){let t=o(e);return{secretKey:t,publicKey:a(t)}},Point:e,utils:{isValidSecretKey:n,isValidPublicKey:function(t,r){let{publicKey:i,publicKeyUncompressed:n}=s;try{let s=t.length;return(!0!==r||s===i)&&(!1!==r||s===n)&&!!e.fromBytes(t)}catch{return!1}},randomSecretKey:o,isValidPrivateKey:n,randomPrivateKey:o,normPrivateKeyToScalar:e=>uE(r,e),precompute:(t=8,r=e.BASE)=>r.precompute(t,!1)},lengths:s})}(e,r),p={prehash:!1,lowS:"boolean"==typeof r.lowS&&r.lowS,format:void 0,extraEntropy:!1},g="compact";function y(e,t){if(!o.isValidNot0(t))throw Error(`invalid signature ${e}: out of range 1..Point.Fn.ORDER`);return t}class b{constructor(e,t,r){this.r=y("r",e),this.s=y("s",t),null!=r&&(this.recovery=r),Object.freeze(this)}static fromBytes(e,t=g){var r,i;let s,n;if(r=e,ud(i=t),n=f.signature,hp(r,"compact"===i?n:"recovered"===i?n+1:void 0,`${i}
18 signature`),"der"===t){let{r:t,s:r}=ug.toSig(hp(e));return new b(t,r)}"recovered"===t&&(s=e[0],t="compact",e=e.subarray(1));let a=o.BYTES,l=e.subarray(0,a),c=e.subarray(a,2*a);return new b(o.fromBytes(l),o.fromBytes(c),s)}static fromHex(e,t){return this.fromBytes(lP(e),t)}addRecoveryBit(e){return new b(this.r,this.s,e)}recoverPublicKey(t){let r=n.ORDER,{r:i,s:s,recovery:l}=this;if(null==l||![0,1,2,3].includes(l))throw Error("recovery id invalid");if(a*um<r&&l>1)throw Error("recovery id is ambiguous for h>1 curve");let c=2===l||3===l?i+a:i;if(!n.isValid(c))throw Error("recovery id 2 or 3 invalid");let h=n.toBytes(c),u=e.fromBytes(lR(ux((1&l)==0),h)),d=o.inv(c),f=w(hv("msgHash",t)),p=o.create(-f*d),g=o.create(s*d),y=e.BASE.multiplyUnsafe(p).add(u.multiplyUnsafe(g));if(y.is0())throw Error("point at infinify");return y.assertValidity(),y}hasHighS(){return this.s>a>>ub}toBytes(e=g){if(ud(e),"der"===e)return lP(ug.hexFromSig(this));let t=o.toBytes(this.r),r=o.toBytes(this.s);if("recovered"===e){if(null==this.recovery)throw Error("recovery bit must be present");return lR(Uint8Array.of(this.recovery),t,r)}return lR(t,r)}toHex(e){return l_(this.toBytes(e))}assertValidity(){}static fromCompact(e){return b.fromBytes(hv("sig",e),"compact")}static fromDER(e){return b.fromBytes(hv("sig",e),"der")}normalizeS(){return this.hasHighS()?new b(this.r,o.neg(this.s),this.recovery):this}toDERRawBytes(){return this.toBytes("der")}toDERHex(){return l_(this.toBytes("der"))}toCompactRawBytes(){return this.toBytes("compact")}toCompactHex(){return l_(this.toBytes("compact"))}}let m=r.bits2int||function(e){if(e.length>8192)throw Error("input is too large");let t=hy(l_(e)),r=8*e.length-l;return r>0?t>>BigInt(r):t},w=r.bits2int_modN||function(e){return o.create(m(e))},v=hS(l);function E(e){return hx("num < 2^"+l,e,uy,v),o.toBytes(e)}function x(e,r){return hp(e,void 0,"message"),r?hp(t(e),void 0,"prehashed message"):e}return Object.freeze({keygen:c,getPublicKey:h,getSharedSecret:u,utils:d,lengths:f,Point:e,sign:function(r,n,l={}){let{seed:c,k2sig:h}=function(t,r,s){if(["recovered","canonical"].some(e=>e in s))throw Error("sign() legacy options not supported");let{lowS:n,prehash:l,extraEntropy:c}
vendor: 4,250 bytes, line 18
18=uf(s,p),h=w(t=x(t,l)),u=uE(o,r),d=[E(u),E(h)];if(null!=c&&!1!==c){let e=!0===c?i(f.secretKey):c;d.push(hv("extraEntropy",e))}return{seed:lR(...d),k2sig:function(t){let r=m(t);if(!o.isValidNot0(r))return;let i=o.inv(r),s=e.BASE.multiply(r).toAffine(),l=o.create(s.x);if(l===uy)return;let c=o.create(i*o.create(h+l*u));if(c===uy)return;let d=2*(s.x!==l)|Number(s.y&ub),f=c;return n&&c>a>>ub&&(f=o.neg(c),d^=1),new b(l,f,d)}}}(r=hv("message",r),n,l);return(function(e,t,r){if("number"!=typeof e||e<2)throw Error("hashLen must be a number");if("number"!=typeof t||t<2)throw Error("qByteLen must be a number");if("function"!=typeof r)throw Error("hmacFn must be a function");let i=e=>new Uint8Array(e),s=i(e),n=i(e),o=0,a=()=>{s.fill(1),n.fill(0),o=0},l=(...e)=>r(n,s,...e),c=(e=i(0))=>{n=l(Uint8Array.of(0),e),s=l(),0!==e.length&&(n=l(Uint8Array.of(1),e),s=l())},h=()=>{if(o++>=1e3)throw Error("drbg: tried 1000 values");let e=0,r=[];for(;e<t;){let t=(s=l()).slice();r.push(t),e+=s.length}return lR(...r)};return(e,t)=>{let r;for(a(),c(e);!(r=t(h()));)c();return a(),r}})(t.outputLen,o.BYTES,s)(c,h)},verify:function(t,r,i,s={}){let{lowS:n,prehash:a,format:l}=uf(s,p);if(i=hv("publicKey",i),r=x(hv("message",r),a),"strict"in s)throw Error("options.strict was renamed to lowS");let c=void 0===l?function(e){let t,r="string"==typeof e||lh(e),i=!r&&null!==e&&"object"==typeof e&&"bigint"==typeof e.r&&"bigint"==typeof e.s;if(!r&&!i)throw Error("invalid signature, expected Uint8Array, hex string or Signature instance");if(i)t=new b(e.r,e.s);else if(r){try{t=b.fromBytes(hv("sig",e),"der")}catch(e){if(!(e instanceof ug.Err))throw e}if(!t)try{t=b.fromBytes(hv("sig",e),"compact")}catch{return!1}}return t||!1}(t):b.fromBytes(hv("sig",t),l);if(!1===c)return!1;try{let t=e.fromBytes(i);if(n&&c.hasHighS())return!1;let{r:s,s:a}=c,l=w(r),h=o.inv(a),u=o.create(l*h),d=o.create(s*h),f=e.BASE.multiplyUnsafe(u).add(t.multiplyUnsafe(d));return!f.is0()&&o.create(f.x)===s}catch{return!1}},recoverPublicKey:function(e,t,r={}){let{prehash:i}=uf(r,p);return t=x(t,i),b.fromBytes(e,"recovered").recoverPublicKey(t).toBytes()},Signature:b,hash:t})}(function(e,t={}){let r=function(e,t,r={},i){if(void 0===i&&(i="edwards"===e),!t||"object"!=typeof t)throw Error(`expected valid ${e} CURVE object`);for(let e of["p","n","h"]){let r=t[e];if(!("bigint"==typeof r&&r>hJ))throw Error(`CURVE.${e} must be positive bigint`)}let s=h7(t.p,r.Fp,i),n=h7(t.n,r.Fn,i);for(let r of["Gx","Gy","a","weierstrass"===e?"b":"d"])if(!s.isValid(t[r]))throw Error(`CURVE.${r} must be valid field element of CURVE.Fp`);return{CURVE:t=Object.freeze(Object.assign({},t)),Fp:s,Fn:n}}("weierstrass",e,t),{Fp:i,Fn:s}=r,n=r.CURVE,{h:o,n:a}=n;hO(t,{},{allowInfinityPoint:"boolean",clearCofactor:"function",isTorsionFree:"function",fromBytes:"function",toBytes:"function",endo:"object",wrapPrivateKey:"boolean"});let{endo:l}=t;if(l&&(!i.is0(n.a)||"bigint"!=typeof l.beta||!Array.isArray(l.basises)))throw Error('invalid endo: expected "beta": bigint and "basises": array');let c=uI(i,s);function h(){if(!i.isOdd)throw Error("compression is not supported: Field does not have .isOdd()")}let u=t.toBytes||function(e,t,r){let{x:s,y:n}=t.toAffine(),o=i.toBytes(s);return(hf(r,"isCompressed"),r)?(h(),lR(ux(!i.isOdd(n)),o)):lR(Uint8Array.of(4),o,i.toBytes(n))},d=t.fromBytes||function(e){hp(e,void 0,"Point");let{publicKey:t,publicKeyUncompressed:r}=c,s=e.length,n=e[0],o=e.subarray(1);if(s===t&&(2===n||3===n)){let e,t=i.fromBytes(o);if(!i.isValid(t))throw Error("bad point: is not on curve, wrong x");let r=f(t);try{e=i.sqrt(r)}catch(e){throw Error("bad point: is not on curve, sqrt error"+(e instanceof Error?": "+e.message:""))}return h(),(1&n)==1!==i.isOdd(e)&&(e=i.neg(e)),{x:t,y:e}}if(s===r&&4===n){let e=i.BYTES,t=i.fromBytes(o.subarray(0,e)),r=i.fromBytes(o.subarray(e,2*e));if(!p(t,r))throw Error("bad point: is not on curve");return{x:t,y:r}}throw Error(`bad point: got length ${s}, expected compressed=${t} or uncompressed=${r}`)};function f(e){let t=i.sqr(e),r=i.mul(t,e);return i.add(i.add(r,i.mul(e,n.a)),n.b)}function p(e,t){let r=i.sqr(t),s=f(e);return i.eql(r,s)}if(!p(n.Gx,n.Gy))throw Error("bad curve params: generator point");let g=i.mul(i.pow(n.a,uw),uv),y=i.mul(i.sqr(n.b),BigInt(27));
vendor: 3,221 bytes, line 18
18if(i.is0(i.add(g,y)))throw Error("bad curve params: a or b");function b(e,t,r=!1){if(!i.isValid(t)||r&&i.is0(t))throw Error(`bad point coordinate ${e}`);return t}function m(e){if(!(e instanceof I))throw Error("ProjectivePoint expected")}function w(e){if(!l||!l.basises)throw Error("no endo");return function(e,t,r){let[[i,s],[n,o]]=t,a=uu(o*e,r),l=uu(-s*e,r),c=e-a*i-l*n,h=-a*s-l*o,u=c<uy,d=h<uy;u&&(c=-c),d&&(h=-h);let f=hS(Math.ceil(hI(r)/2))+ub;if(c<uy||c>=f||h<uy||h>=f)throw Error("splitScalar (endomorphism): failed, k="+e);return{k1neg:u,k1:c,k2neg:d,k2:h}}(e,l.basises,s.ORDER)}let v=h_((e,t)=>{let{X:r,Y:s,Z:n}=e;if(i.eql(n,i.ONE))return{x:r,y:s};let o=e.is0();null==t&&(t=o?i.ONE:i.inv(n));let a=i.mul(r,t),l=i.mul(s,t),c=i.mul(n,t);if(o)return{x:i.ZERO,y:i.ZERO};if(!i.eql(c,i.ONE))throw Error("invZ was invalid");return{x:a,y:l}}),E=h_(e=>{if(e.is0()){if(t.allowInfinityPoint&&!i.is0(e.Y))return;throw Error("bad point: ZERO")}let{x:r,y:s}=e.toAffine();if(!i.isValid(r)||!i.isValid(s))throw Error("bad point: x or y not field elements");if(!p(r,s))throw Error("bad point: equation left != right");if(!e.isTorsionFree())throw Error("bad point: not in prime-order subgroup");return!0});function x(e,t,r,s,n){return r=new I(i.mul(r.X,e),r.Y,r.Z),t=hX(s,t),r=hX(n,r),t.add(r)}class I{constructor(e,t,r){this.X=b("x",e),this.Y=b("y",t,!0),this.Z=b("z",r),Object.freeze(this)}static CURVE(){return n}static fromAffine(e){let{x:t,y:r}=e||{};if(!e||!i.isValid(t)||!i.isValid(r))throw Error("invalid affine point");if(e instanceof I)throw Error("projective point not allowed");return i.is0(t)&&i.is0(r)?I.ZERO:new I(t,r,i.ONE)}static fromBytes(e){let t=I.fromAffine(d(hp(e,void 0,"point")));return t.assertValidity(),t}static fromHex(e){return I.fromBytes(hv("pointHex",e))}get x(){return this.toAffine().x}get y(){return this.toAffine().y}precompute(e=8,t=!0){return O.createCache(this,e),t||this.multiply(uw),this}assertValidity(){E(this)}hasEvenY(){let{y:e}=this.toAffine();if(!i.isOdd)throw Error("Field doesn't support isOdd");return!i.isOdd(e)}equals(e){m(e);let{X:t,Y:r,Z:s}=this,{X:n,Y:o,Z:a}=e,l=i.eql(i.mul(t,a),i.mul(n,s)),c=i.eql(i.mul(r,a),i.mul(o,s));return l&&c}negate(){return new I(this.X,i.neg(this.Y),this.Z)}double(){let{a:e,b:t}=n,r=i.mul(t,uw),{X:s,Y:o,Z:a}=this,l=i.ZERO,c=i.ZERO,h=i.ZERO,u=i.mul(s,s),d=i.mul(o,o),f=i.mul(a,a),p=i.mul(s,o);return p=i.add(p,p),h=i.mul(s,a),h=i.add(h,h),l=i.mul(e,h),c=i.mul(r,f),c=i.add(l,c),l=i.sub(d,c),c=i.add(d,c),c=i.mul(l,c),l=i.mul(p,l),h=i.mul(r,h),f=i.mul(e,f),p=i.sub(u,f),p=i.mul(e,p),p=i.add(p,h),h=i.add(u,u),u=i.add(h,u),u=i.add(u,f),u=i.mul(u,p),c=i.add(c,u),f=i.mul(o,a),f=i.add(f,f),u=i.mul(f,p),l=i.sub(l,u),h=i.mul(f,d),h=i.add(h,h),new I(l,c,h=i.add(h,h))}add(e){m(e);let{X:t,Y:r,Z:s}=this,{X:o,Y:a,Z:l}=e,c=i.ZERO,h=i.ZERO,u=i.ZERO,d=n.a,f=i.mul(n.b,uw),p=i.mul(t,o),g=i.mul(r,a),y=i.mul(s,l),b=i.add(t,r),w=i.add(o,a);b=i.mul(b,w),w=i.add(p,g),b=i.sub(b,w),w=i.add(t,s);let v=i.add(o,l);return w=i.mul(w,v),v=i.add(p,y),w=i.sub(w,v),v=i.add(r,s),c=i.add(a,l),v=i.mul(v,c),c=i.add(g,y),v=i.sub(v,c),u=i.mul(d,w),c=i.mul(f,y),u=i.add(c,u),c=i.sub(g,u),u=i.add(g,u),h=i.mul(c,u),g=i.add(p,p),g=i.add(g,p),y=i.mul(d,y),w=i.mul(f,w),g=i.add(g,y
18),y=i.sub(p,y),y=i.mul(d,y),w=i.add(w,y),p=i.mul(g,w),h=i.add(h,p),p=i.mul(v,w),c=i.mul(b,c),c=i.sub(c,p),p=i.mul(b,g),u=i.mul(v,u),new I(c,h,u=i.add(u,p))}subtract(e){return this.add(e.negate())}is0(){return this.equals(I.ZERO)}multiply(e){let r,i,{endo:n}=t;if(!s.isValidNot0(e))throw Error("invalid scalar: out of range");let o=e=>O.cached(this,e,e=>h0(I,e));if(n){let{k1neg:t,k1:s,k2neg:a,k2:l}=w(e),{p:c,f:h}=o(s),{p:u,f:d}=o(l);i=h.add(d),r=x(n.beta,c,u,t,a)}else{let{p:t,f:s}=o(e);r=t,i=s}return h0(I,[r,i])[0]}multiplyUnsafe(e){let{endo:r}=t;if(!s.isValid(e))throw Error("invalid scalar: out of range");if(e===uy||this.is0())return I.ZERO;if(e===ub)return this;if(O.hasCache(this))return this.multiply(e);if(!r)return O.unsafe(this,e);{let{k1neg:t,k1:i,k2neg:s,k2:n}=w(e),{p1:o,p2:a}=function(e,t,r,i){let s=t,n=e.ZERO,o=e.ZERO;for(;r>hJ||i>hJ;)r&hQ&&(n=n.add(s)),i&hQ&&(o=o.add(s)),s=s.double(),r>>=hQ,i>>=hQ;return{p1:n,p2:o}}(I,this,i,n);return x(r.beta,o,a,t,s)}}multiplyAndAddUnsafe(e,t,r){let i=this.multiplyUnsafe(t).add(e.multiplyUnsafe(r));return i.is0()?void 0:i}toAffine(e){return v(this,e)}isTorsionFree(){let{isTorsionFree:e}=t;return o===ub||(e?e(I,this):O.unsafe(this,a).is0())}clearCofactor(){let{clearCofactor:e}=t;return o===ub?this:e?e(I,this):this.multiplyUnsafe(o)}isSmallOrder(){return this.multiplyUnsafe(o).is0()}toBytes(e=!0){return hf(e,"isCompressed"),this.assertValidity(),u(I,this,e)}toHex(e=!0){return l_(this.toBytes(e))}toString(){return`<Point ${this.is0()?"ZERO":this.toHex()}>`}get px(){return this.X}get py(){return this.X}get pz(){return this.Z}toRawBytes(e=!0){return this.toBytes(e)}_setWindowSize(e){this.precompute(e)}static normalizeZ(e){return h0(I,e)}static msm(e,t){return function(e,t,r,i){(function(e,t){if(!Array.isArray(e))throw Error("array expected");e.forEach((e,r)=>{if(!(e instanceof t))throw Error("invalid point at index "+r)})})(r,e),function(e,t){if(!Array.isArray(e))throw Error("array of scalars expected");e.forEach((e,r)=>{if(!t.isValid(e))throw Error("invalid scalar at index "+r)})}(i,t);let s=r.length,n=i.length;if(s!==n)throw Error("arrays of points and scalars must have equal length");let o=e.ZERO,a=hI(BigInt(s)),l=1;a>12?l=a-3:a>4?l=a-2:a>0&&(l=2);let c=hS(l),h=Array(Number(c)+1).fill(o),u=Math.floor((t.BITS-1)/l)*l,d=o;for(let e=u;e>=0;e-=l){h.fill(o);for(let t=0;t<n;t++){let s=Number(i[t]>>BigInt(e)&c);h[s]=h[s].add(r[t])}let t=o;for(let e=h.length-1,r=o;e>0;e--)r=r.add(h[e]),t=t.add(r);if(d=d.add(t),0!==e)for(let e=0;e<l;e++)d=d.double()}return d}(I,s,e,t)}static fromPrivateKey(e){return I.BASE.multiply(uE(s,e))}}I.BASE=new I(n.Gx,n.Gy,i.ONE),I.ZERO=new I(i.ZERO,i.ONE,i.ZERO),I.Fp=i,I.Fn=s;let S=s.BITS,O=new h9(I,t.endo?Math.ceil(S/2):S);return I.BASE.precompute(8),I}(r,i),s,n);return t=o.Point,Object.assign({},o,{ProjectivePoint:t,CURVE:Object.assign({},e,hW(t.Fn.ORDER,t.Fn.BITS))})})({...e,hash:t});return{...r(t),create:r}}let uO={p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")},u_={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),n:BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),h:BigInt(1),a:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc"),b:BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),Gx:BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),Gy:BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f")},uA={p:BigInt("0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),n:BigInt("0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409"),h:BigInt(1),a:BigInt("0x1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc"),b:BigInt("0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00"),Gx:BigInt("0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66"),Gy:BigInt("0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650")},uP=hG(uO.p),uT=hG(u_.p),uN=hG(uA.p),uR=uS({...uO,Fp:uP,lowS:!1},ci);uS({...u_,Fp:uT,lowS:!1},cn),uS({...uA,Fp:uN,lowS:!1,allowedPrivateKeyLengths:[130,131,132]},cs);let uC="base10",uB="base16",uU="base64pad",uk="base64url",uD="utf8";function uL(){return ao(lU(32),uB)}function uj(e){return ao(ci(an(e,uB)),uB)}function uM(e){return ao(ci(an(e,uD)),uB)}function uq(e){return Number(ao(e,uC))}function u$(e){return e.replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function uz(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r=(4-t.length%4)%4;return t+"=".repeat(r)}function uV(e){if(2===uq(e.type))return ao(n1([e.type,e.sealed]),uU);if(1===uq(e.type)){if(typeof e.senderPublicKey>"u")throw Error("Missing sender public key for type 1 envelope");
18return ao(n1([e.type,e.senderPublicKey,e.iv,e.sealed]),uU)}return ao(n1([e.type,e.iv,e.sealed]),uU)}function uF(e){let t=an((e.encoding||uU)===uk?uz(e.encoded):e.encoded,uU),r=t.slice(0,1);if(1===uq(r)){let e=t.slice(1,33),i=t.slice(33,45);return{type:r,sealed:t.slice(45),iv:i,senderPublicKey:e}}if(2===uq(r))return{type:r,sealed:t.slice(1),iv:lU(12)};let i=t.slice(1,13);return{type:r,sealed:t.slice(13),iv:i}}function uK(e){let t=e?.type||0;if(1===t){if(typeof e?.senderPublicKey>"u")throw Error("missing sender public key");if(typeof e?.receiverPublicKey>"u")throw Error("missing receiver public key")}return{type:t,senderPublicKey:e?.senderPublicKey,receiverPublicKey:e?.receiverPublicKey}}function uH(e){return 1===e.type&&"string"==typeof e.senderPublicKey&&"string"==typeof e.receiverPublicKey}function uW(e){return e?.relay||{protocol:"irn"}}function uG(e){let t=aa[e];if(typeof t>"u")throw Error(`Relay Protocol not supported: ${e}`);return t}var uY=Object.defineProperty,uZ=Object.defineProperties,uJ=Object.getOwnPropertyDescriptors,uQ=Object.getOwnPropertySymbols,uX=Object.prototype.hasOwnProperty,u0=Object.prototype.propertyIsEnumerable,u1=(e,t,r)=>t in e?uY(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,u2=(e,t)=>{for(var r in t||(t={}))uX.call(t,r)&&u1(e,r,t[r]);if(uQ)for(var r of uQ(t))u0.call(t,r)&&u1(e,r,t[r]);return e};function u8(e){var t;if(!e.includes("wc:")){let t=a0(e);null!=t&&t.includes("wc:")&&(e=t)}let r=(e=(e=e.includes("wc://")?e.replace("wc://",""):e).includes("wc:")?e.replace("wc:",""):e).indexOf(":"),i=-1!==e.indexOf("?")?e.indexOf("?"):void 0,s=e.substring(0,r),n=e.substring(r+1,i).split("@"),o=Object.fromEntries(new URLSearchParams("u">typeof i?e.substring(i):"").entries()),a="string"==typeof o.methods?o.methods.split(","):void 0;return{protocol:s,topic:(t=n[0]).startsWith("//")?t.substring(2):t,version:parseInt(n[1],10),symKey:o.symKey,relay:function(e,t="-"){let r={},i="relay"+t;return Object.keys(e).forEach(t=>{if(t.startsWith(i)){let s=t.replace(i,""),n=e[t];r[s]=n}}),r}(o),methods:a,expiryTimestamp:o.expiryTimestamp?parseInt(o.expiryTimestamp,10):void 0}}function u6(e){let t=new URLSearchParams;return Object.entries(u2(u2(uZ(u2({},function(e,t="-"){let r={};return Object.keys(e).forEach(i=>{e[i]&&(r["relay"+t+i]=e[i])}),r}(e.relay)),uJ({symKey:e.symKey})),e.expiryTimestamp&&{expiryTimestamp:e.expiryTimestamp.toString()}),e.methods&&{methods:e.methods.join(",")})).sort(([e],[t])=>e.localeCompare(t)).forEach(([e,r])=>{void 0!==r&&t.append(e,String(r))}),`${e.protocol}:${e.topic}@${e.version}?${t}`}function u3(e,t,r){return`${e}?wc_ev=${r}&topic=${t}`}var u5=Object.defineProperty,u4=Object.defineProperties,u9=Object.getOwnPropertyDescriptors,u7=Object.getOwnPropertySymbols,de=Object.prototype.hasOwnProperty,dt=Object.prototype.propertyIsEnumerable,dr=(e,t,r)=>t in e?u5(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,di=(e,t)=>{for(var r in t||(t={}))de.call(t,r)&&dr(e,r,t[r]);if(u7)for(var r of u7(t))dt.call(t,r)&&dr(e,r,t[r]);return e},ds=(e,t)=>u4(e,u9(t));function dn(e){let t=[];return e.forEach(e=>{let[r,i]=e.split(":");t.push(`${r}:${i}`)}),t}function da(e){let t=[];return Object.values(e).forEach(e=>{t.push(...dn(e.accounts))}),[...new Set(t)]}function dl(e){return e.includes(":")}function dc(e){var t,r,i;let s={};if(!dd(e))return s;for(let[n,o]of Object.entries(e)){let e=dl(n)?[n]:o.chains,a=o.methods||[],l=o.events||[],c=dl(n)?n.split(":")[0]:n;s[c]=ds(di({},s[c]),{chains:aG(e,null==(t=s[c])?void 0:t.chains),methods:aG(a,null==(r=s[c])?void 0:r.methods),events:aG(l,null==(i=s[c])?void 0:i.events)})}return s}function dh(e,t){var r;let i,s=(r=t=t.map(e=>e.replace("did:pkh:","")),i={},r?.forEach(e=>{var t;let[r,s]=e.split(":");i[r]||(i[r]={accounts:[],chains:[],events:[],methods:[]}),i[r].accounts.push(e),null==(t=i[r].chains)||t.push(`${r}:${s}`)}),i);for(let[t,r]of Object.entries(s))r.methods?r.methods=aG(r.methods,e):r.methods=e,r.events=["chainChanged","accountsChanged"];return s}function du(e,t){return!!Array.isArray(e)&&(!("u">typeof t)||!e.length||e.every(t))}function dd(e){return Object.getPrototypeOf(e)===Object.prototype&&Object.keys(e).length}function df(e){return typeof e>"u"}function dp(e,t){return!!(t&&df(e))||"string"==typeof e&&!!e.trim().length}function dg(e,t){return!!(t&&df(e))||"number"==typeof e&&!isNaN(e)}function dy(e){return!!(dp(e,!1)&&e.includes(":"))&&2===e.split(":").length}function db(e){let t=!0;return du(e)?e.length&&(t=e.every(e=>dp(e,!1))):t=!1,t}function dm(e,t){let r=null;
18return Object.values(e).forEach(e=>{var i;let s;if(r)return;let n=(i=`${t}, namespace`,s=null,db(e?.methods)?db(e?.events)||(s=am("UNSUPPORTED_EVENTS",`${i}, events should be an array of strings or empty array for no events`)):s=am("UNSUPPORTED_METHODS",`${i}, methods should be an array of strings or empty array for no methods`),s);n&&(r=n)}),r}function dw(e,t){let r=null;if(e&&dd(e)){let i,s=dm(e,t);s&&(r=s);let n=(i=null,Object.values(e).forEach(e=>{var r,s;let n;if(i)return;let o=(r=e?.accounts,s=`${t} namespace`,n=null,du(r)?r.forEach(e=>{n||function(e){if(dp(e,!1)&&e.includes(":")){let t=e.split(":");if(3===t.length){let e=t[0]+":"+t[1];return!!t[2]&&dy(e)}}return!1}(e)||(n=am("UNSUPPORTED_ACCOUNTS",`${s}, account ${e} should be a string and conform to "namespace:chainId:address" format`))}):n=am("UNSUPPORTED_ACCOUNTS",`${s}, accounts should be an array of strings conforming to "namespace:chainId:address" format`),n);o&&(i=o)}),i);n&&(r=n)}else r=ab("MISSING_OR_INVALID",`${t}, namespaces should be an object with data`);return r}function dv(e){return dp(e.protocol,!0)}function dE(e){return"u">typeof e}function dx(e,t){return!(!dy(t)||!da(e).includes(t))}function dI(e,t,r){var i,s;let n,o,a=null,l=(n={},Object.keys(i=e).forEach(e=>{var t;e.includes(":")?n[e]=i[e]:null==(t=i[e].chains)||t.forEach(t=>{n[t]={methods:i[e].methods,events:i[e].events}})}),n),c=(o={},Object.keys(s=t).forEach(e=>{if(e.includes(":"))o[e]=s[e];else{let t=dn(s[e].accounts);t?.forEach(t=>{o[t]={accounts:s[e].accounts.filter(e=>e.includes(`${t}:`)),methods:s[e].methods,events:s[e].events}})}}),o),h=Object.keys(l),u=Object.keys(c),d=dS(Object.keys(e)),f=dS(Object.keys(t)),p=d.filter(e=>!f.includes(e));return p.length&&(a=ab("NON_CONFORMING_NAMESPACES",`${r} namespaces keys don't satisfy requiredNamespaces.
19      Required: ${p.toString()}
20      Received: ${Object.keys(t).toString()}`)),aj(h,u)||(a=ab("NON_CONFORMING_NAMESPACES",`${r} namespaces chains don't satisfy required namespaces.
21      Required: ${h.toString()}
22      Approved: ${u.toString()}`)),Object.keys(t).forEach(e=>{if(!e.includes(":")||a)return;let i=dn(t[e].accounts);i.includes(e)||(a=ab("NON_CONFORMING_NAMESPACES",`${r} namespaces accounts don't satisfy namespace accounts for ${e}
23        Required: ${e}
24        Approved: ${i.toString()}`))}),h.forEach(e=>{a||(aj(l[e].methods,c[e].methods)?aj(l[e].events,c[e].events)||(a=ab("NON_CONFORMING_NAMESPACES",`${r} namespaces events don't satisfy namespace events for ${e}`)):a=ab("NON_CONFORMING_NAMESPACES",`${r} namespaces methods don't satisfy namespace methods for ${e}`))}),a}function dS(e){return[...new Set(e.map(e=>e.includes(":")?e.split(":")[0]:e))]}function dO(){let e=aU();return new Promise(t=>{switch(e){case aN:t(aB()&&navigator?.onLine);break;case aP:t(d_());break;default:t(!0)}})}async function d_(){if(aC()&&"u">typeof global&&null!=global&&global.NetInfo){let e=await (null==global?void 0:global.NetInfo.fetch());return e?.isConnected}return!0}let dA={};class dP{static get(e){return dA[e]}static set(e,t){dA[e]=t}static delete(e){delete dA[e]}}function dT(e){return new Uint8Array(e.replace(/^0x/,"").match(/.{1,2}/g).map(e=>parseInt(e,16)))}function dN({logger:e,name:t}){let r="string"==typeof e?te({opts:{level:e,name:t}}).logger:e;return r.level="string"==typeof e?e:e.level,r}let dR="INTERNAL_ERROR",dC="SERVER_ERROR",dB=[-32700,-32600,-32601,-32602,-32603],dU={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"},[dR]:{code:-32603,message:"Internal error"},[dC]:{code:-32e3,message:"Server error"}};function dk(e){return Object.keys(dU).includes(e)?dU[e]:dU[dC]}var dD=r(99405);
24function dL(e=3){return Date.now()*Math.pow(10,e)+Math.floor(Math.random()*Math.pow(10,e))}function dj(e=6){return BigInt(dL(e))}function dM(e,t,r){return{id:r||dL(),jsonrpc:"2.0",method:e,params:t}}function dq(e,t){return{id:e,jsonrpc:"2.0",result:t}}function d$(e,t,r){var i,s,n,o;let a;return{id:e,jsonrpc:"2.0",error:(i=t,s=r,void 0===i?dk(dR):("string"==typeof i&&(i=Object.assign(Object.assign({},dk(dC)),{message:i})),void 0!==s&&(i.data=s),n=i.code,dB.includes(n)&&(o=i.code,i=(a=Object.values(dU).find(e=>e.code===o))||dU[dC]),i))}}class dz{}class dV extends dz{constructor(){super()}}class dF extends dV{constructor(e){super()}}function dK(e){let t;return void 0!==(t=function(e){let t=e.match(RegExp(/^\w+:/,"gi"));if(t&&t.length)return t[0]}(e))&&RegExp("^wss?:").test(t)}function dH(e){return"object"==typeof e&&"id"in e&&"jsonrpc"in e&&"2.0"===e.jsonrpc}function dW(e){return dH(e)&&"method"in e}function dG(e){return dH(e)&&(dY(e)||dZ(e))}function dY(e){return"result"in e}function dZ(e){return"error"in e}class dJ extends dF{constructor(e){super(e),this.events=new q.EventEmitter,this.hasRegisteredEventListeners=!1,this.connection=this.setConnection(e),this.connection.connected&&this.registerEventListeners()}async connect(e=this.connection){await this.open(e)}async disconnect(){await this.close()}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async request(e,t){return this.requestStrict(dM(e.method,e.params||[],e.id||dj().toString()),t)}async requestStrict(e,t){return new Promise(async(r,i)=>{if(!this.connection.connected)try{await this.open()}catch(e){i(e)}this.events.on(`${e.id}`,e=>{dZ(e)?i(e.error):r(e.result)});try{await this.connection.send(e,t)}catch(e){i(e)}})}setConnection(e=this.connection){return e}onPayload(e){this.events.emit("payload",e),dG(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",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)}}let dQ=e=>e.split("?")[0],dX="u">typeof WebSocket?WebSocket:"u">typeof r.g&&"u">typeof r.g.WebSocket?r.g.WebSocket:"u">typeof window&&"u">typeof window.WebSocket?window.WebSocket:"u">typeof self&&"u">typeof self.WebSocket?self.WebSocket:r(73636);class d0{constructor(e){if(this.url=e,this.events=new q.EventEmitter,this.registering=!1,!dK(e))throw Error(`Provided URL is not compatible with WebSocket connection: ${e}`);this.url=e}get connected(){return"u">typeof 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)=>{typeof this.socket>"u"?t(Error("Connection already closed")):(this.socket.onclose=t=>{this.onClose(t),e()},this.socket.close())})}async send(e){typeof this.socket>"u"&&(this.socket=await this.register());try{this.socket.send(ed(e))}catch(t){this.onError(e.id,t)}}register(e=this.url){if(!dK(e))throw Error(`Provided URL is not compatible with WebSocket connection: ${e}`);if(this.registering){let 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)=>
24{this.events.once("register_error",e=>{this.resetMaxListeners(),t(e)}),this.events.once("open",()=>{if(this.resetMaxListeners(),typeof this.socket>"u")return t(Error("WebSocket connection is missing or invalid"));e(this.socket)})})}return this.url=e,this.registering=!0,new Promise((t,i)=>{let s=(0,dD.isReactNative)()?void 0:{rejectUnauthorized:!RegExp("wss?://localhost(:d{2,5})?").test(e)},n=new dX(e,[],s);"u">typeof WebSocket||"u">typeof r.g&&"u">typeof r.g.WebSocket||"u">typeof window&&"u">typeof window.WebSocket||"u">typeof self&&"u">typeof self.WebSocket?n.onerror=e=>{i(this.emitError(e.error))}:n.on("error",e=>{i(this.emitError(e))}),n.onopen=()=>{this.onOpen(n),t(n)}})}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(typeof e.data>"u")return;let t="string"==typeof e.data?eu(e.data):e.data;this.events.emit("payload",t)}onError(e,t){let r=this.parseError(t),i=d$(e,r.message||r.toString());this.events.emit("payload",i)}parseError(e,t=this.url){var r;return r=dQ(t),e.message.includes("getaddrinfo ENOTFOUND")||e.message.includes("connect ECONNREFUSED")?Error(`Unavailable WS RPC url at ${r}`):e}resetMaxListeners(){this.events.getMaxListeners()>10&&this.events.setMaxListeners(10)}emitError(e){let t=this.parseError(Error(e?.message||`WebSocket connection failed for host: ${dQ(this.url)}`));return this.events.emit("register_error",t),t}}var d1=r(49304).Buffer,d2=r(87358);let d8="core",d6=`wc@2:${d8}:`,d3={database:":memory:"},d5="client_ed25519_seed",d4=z.ONE_DAY,d9=z.SIX_HOURS,d7="wss://relay.walletconnect.org",fe="relayer_message",ft="relayer_message_ack",fr="relayer_connection_stalled",fi="relayer_publish",fs="payload",fn="connect",fo="disconnect",fa="error",fl="2.23.7",fc="link_mode",fh="relay",fu="inbound",fd="WALLETCONNECT_LINK_MODE_APPS",ff="subscription_created",fp="subscription_deleted",fg=(z.FIVE_SECONDS,{wc_pairingDelete:{req:{ttl:z.ONE_DAY,prompt:!1,tag:1e3},res:{ttl:z.ONE_DAY,prompt:!1,tag:1001}},wc_pairingPing:{req:{ttl:z.THIRTY_SECONDS,prompt:!1,tag:1002},res:{ttl:z.THIRTY_SECONDS,prompt:!1,tag:1003}},unregistered_method:{req:{ttl:z.ONE_DAY,prompt:!1,tag:0},res:{ttl:z.ONE_DAY,prompt:!1,tag:0}}}),fy="pairing_create",fb="pairing_delete",fm="history_created",fw="history_updated",fv="history_deleted",fE="expirer_created",fx="expirer_deleted",fI="expirer_expired",fS="https://verify.walletconnect.org",fO=`${fS}/v3`,f_=["https://verify.walletconnect.com",fS],fA="malformed_pairing_uri",fP="session_approve_started";var fT=function(e,t){if(e.length>=255)throw TypeError("Alphabet too long");for(var r=new Uint8Array(256),i=0;i<r.length;i++)r[i]=255;for(var s=0;s<e.length;s++){var n=e.charAt(s),o=n.charCodeAt(0);if(255!==r[o])throw TypeError(n+" is ambiguous");r[o]=s}var a=e.length,l=e.charAt(0),c=Math.log(a)/Math.log(256),h=Math.log(256)/Math.log(a);function u(e){if("string"!=typeof e)throw TypeError("Expected String");if(0===e.length)return new Uint8Array;var t=0;if(" "!==e[0]){for(var i=0,s=0;e[t]===l;)i++,t++;for(var n=(e.length-t)*c+1>>>0,o=new Uint8Array(n);e[t];){var h=r[e.charCodeAt(t)];if(255===h)return;for(var u=0,d=n-1;(0!==h||u<s)&&-1!==d;d--,u++)h+=a*o[d]>>>0,o[d]=h%256>>>0,h=h/256>>>0;if(0!==h)throw Error("Non-zero carry");s=u,t++}if(" "!==e[t]){for(var f=n-s;f!==n&&0===o[f];)f++;for(var p=new Uint8Array(i+(n-f)),g=i;f!==n;)p[g++]=o[f++];return p}}}return{encode:function(t){if(t instanceof Uint8Array||(ArrayBuffer.isView(t)?t=new Uint8Array(t.buffer,t.byteOffset,t.byteLength):Array.isArray(t)&&(t=Uint8Array.from(t))),!(t instanceof Uint8Array))throw TypeError("Expected Uint8Array");if(0===t.length)return"";for(var r=0,i=0,s=0,n=t.length;s!==n&&0===t[s];)s++,r++;for(var o=(n-s)*h+1>>>0,c=new Uint8Array(o);s!==n;){for(var u=t[s],d=0,f=o-1;(0!==u||d<i)&&-1!==f;f--,d++)u+=256*c[f]>>>0,c[f]=u%a>>>0,u=u/a>>>0;if(0!==u)throw Error("Non-zero carry");i=d,s++}for(var p=o-i;p!==o&&0===c[p];)p++;for(var g=l.repeat(r);p<o;++p)g+=e.charAt(c[p]);return g},decodeUnsafe:u,decode:function(e){var r=u(e);if(r)return r;throw Error(`Non-${t} character`)}}};let fN=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 Error("Unknown type, must be binary type")};class fR{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 fC{constructor(e,t,r){if(this.name=e,this.prefix=t,void 0===t.codePointAt(0))throw 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}
24 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 fU(this,e)}}class fB{constructor(e){this.decoders=e}or(e){return fU(this,e)}decode(e){let 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`)}}let fU=(e,t)=>new fB({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}});class fk{constructor(e,t,r,i){this.name=e,this.prefix=t,this.baseEncode=r,this.baseDecode=i,this.encoder=new fR(e,t,r),this.decoder=new fC(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}let fD=({name:e,prefix:t,encode:r,decode:i})=>new fk(e,t,r,i),fL=({prefix:e,name:t,alphabet:r})=>{let{encode:i,decode:s}=fT(r,t);return fD({prefix:e,name:t,encode:i,decode:e=>fN(s(e))})},fj=({name:e,prefix:t,bitsPerChar:r,alphabet:i})=>fD({prefix:t,name:e,encode:e=>((e,t,r)=>{let i="="===t[t.length-1],s=(1<<r)-1,n="",o=0,a=0;for(let i=0;i<e.length;++i)for(a=a<<8|e[i],o+=8;o>r;)o-=r,n+=t[s&a>>o];if(o&&(n+=t[s&a<<r-o]),i)for(;n.length*r&7;)n+="=";return n})(e,i,r),decode:t=>((e,t,r,i)=>{let s={};for(let e=0;e<t.length;++e)s[t[e]]=e;let n=e.length;for(;"="===e[n-1];)--n;let o=new Uint8Array(n*r/8|0),a=0,l=0,c=0;for(let t=0;t<n;++t){let n=s[e[t]];if(void 0===n)throw SyntaxError(`Non-${i} character`);l=l<<r|n,(a+=r)>=8&&(a-=8,o[c++]=255&l>>a)}if(a>=r||255&l<<8-a)throw SyntaxError("Unexpected end of data");return o})(t,i,r,e)});var fM=Object.freeze({__proto__:null,identity:fD({prefix:"\0",name:"identity",encode:e=>new TextDecoder().decode(e),decode:e=>new TextEncoder().encode(e)})}),fq=Object.freeze({__proto__:null,base2:fj({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})}),f$=Object.freeze({__proto__:null,base8:fj({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})}),fz=Object.freeze({__proto__:null,base10:fL({prefix:"9",name:"base10",alphabet:"0123456789"})}),fV=Object.freeze({__proto__:null,base16:fj({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),base16upper:fj({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})}),fF=Object.freeze({__proto__:null,base32:fj({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),base32upper:fj({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),base32pad:fj({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),base32padupper:fj({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),base32hex:fj({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),base32hexupper:fj({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),base32hexpad:fj({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),base32hexpadupper:fj({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),base32z:fj({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})}),fK=Object.freeze({__proto__:null,base36:fL({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),base36upper:fL({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})}),fH=Object.freeze({__proto__:null,base58btc:fL({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),base58flickr:fL({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})}),fW=Object.freeze({__proto__:null,base64:fj({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),base64pad:fj({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),base64url:fj({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),base64urlpad:fj({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});let fG=Array.from("\uD83D\uDE80\uD83E\uDE90☄\uD83D\uDEF0\uD83C\uDF0C\uD83C\uDF11\uD83C\uDF12\uD83C\uDF13\uD83C\uDF14\uD83C\uDF15\uD83C\uDF16\uD83C\uDF17\uD83C\uDF18\uD83C\uDF0D\uD83C\uDF0F\uD83C\uDF0E\uD83D\uDC09☀\uD83D\uDCBB\uD83D\uDDA5\uD83D\uDCBE\uD83D\uDCBF\uD83D\uDE02❤\uD83D\uDE0D\uD83E\uDD23\uD83D\uDE0A\uD83D\uDE4F\uD83D\uDC95\uD83D\uDE2D\uD83D\uDE18\uD83D\uDC4D\uD83D\uDE05\uD83D\uDC4F\uD83D\uDE01\uD83D\uDD25\uD83E\uDD70\uD83D\uDC94\uD83D\uDC96\uD83D\uDC99\uD83D\uDE22\uD83E\uDD14\uD83D\uDE06\uD83D\uDE44\uD83D\uDCAA\uD83D\uDE09☺\uD83D\uDC4C\uD83E\uDD17\uD83D\uDC9C\uD83D\uDE14\uD83D\uDE0E\uD83D\uDE07\uD83C\uDF39\uD83E\uDD26\uD83C\uDF89\uD83D\uDC9E✌✨\uD83E\uDD37\uD83D\uDE31\uD83D\uDE0C\uD83C\uDF38\uD83D\uDE4C\uD83D\uDE0B\uD83D\uDC97\uD83D\uDC9A\uD83D\uDE0F\uD83D\uDC9B\uD83D\uDE42\uD83D\uDC93\uD83E\uDD29\uD83D\uDE04\uD83D\uDE00\uD83D\uDDA4\uD83D\uDE03\uD83D\uDCAF\uD83D\uDE48\uD83D\uDC47\uD83C\uDFB6\uD83D\uDE12\uD83E\uDD2D❣\uD83D\uDE1C\uD83D\uDC8B\uD83D\uDC40\uD83D\uDE2A\uD83D\uDE11\uD83D\uDCA5\uD83D\uDE4B\uD83D\uDE1E\uD83D\uDE29\uD83D\uDE21\uD83E\uDD2A\uD83D\uDC4A\uD83E\uDD73\uD83D\uDE25\uD83E\uDD24\uD83D\uDC49\uD83D\uDC83\uD83D\uDE33✋\uD83D\uDE1A\uD83D\uDE1D\uD83D\uDE34\uD83C\uDF1F\uD83D\uDE2C\uD83D\uDE43\uD83C\uDF40\uD83C\uDF37\uD83D\uDE3B\uD83D\uDE13⭐✅\uD83E\uDD7A\uD83C\uDF08\uD83D\uDE08\uD83E\uDD18\uD83D\uDCA6✔\uD83D\uDE23\uD83C\uDFC3\uD83D\uDC90☹\uD83C\uDF8A\uD83D\uDC98\uD83D\uDE20☝\uD83D\uDE15\uD83C\uDF3A\uD83C\uDF82\uD83C\uDF3B\uD83D\uDE10\uD83D\uDD95\uD83D\uDC9D\uD83D\uDE4A\uD83D\uDE39\uD83D\uDDE3\uD83D\uDCAB\uD83D\uDC80\uD83D\uDC51\uD83C\uDFB5\uD83E\uDD1E\uD83D\uDE1B\uD83D\uDD34\uD83D\uDE24\uD83C\uDF3C\uD83D\uDE2B⚽\uD83E\uDD19☕\uD83C\uDFC6\uD83E\uDD2B\uD83D\uDC48\uD83D\uDE2E\uD83D\uDE46\uD83C\uDF7B\uD83C\uDF43\uD83D\uDC36\uD83D\uDC81\uD83D\uDE32\uD83C\uDF3F\uD83E\uDDE1\uD83C\uDF81⚡\uD83C\uDF1E\uD83C\uDF88❌✊\uD83D\uDC4B\uD83D\uDE30\uD83E\uDD28\uD83D\uDE36\uD83E\uDD1D\uD83D\uDEB6\uD83D\uDCB0\uD83C\uDF53\uD83D\uDCA2\uD83E\uDD1F\uD83D\uDE41\uD83D\uDEA8\uD83D\uDCA8\uD83E\uDD2C✈\uD83C\uDF80\uD83C\uDF7A\uD83E\uDD13\uD83D\uDE19\uD83D\uDC9F\uD83C\uDF31\uD83D\uDE16\uD83D\uDC76\uD83E\uDD74▶➡❓\uD83D\uDC8E\uD83D\uDCB8⬇\uD83D\uDE28\uD83C\uDF1A\uD83E\uDD8B\uD83D\uDE37\uD83D\uDD7A⚠\uD83D\uDE45\uD83D\uDE1F\uD83D\uDE35\uD83D\uDC4E\uD83E\uDD32\uD83E\uDD20\uD83E\uDD27\uD83D\uDCCC\uD83D\uDD35\uD83D\uDC85\uD83E\uDDD0\uD83D\uDC3E\uD83C\uDF52\uD83D\uDE17\uD83E\uDD11\uD83C\uDF0A\uD83E\uDD2F\uD83D\uDC37☎\uD83D\uDCA7\uD83D\uDE2F\uD83D\uDC86\uD83D\uDC46\uD83C\uDFA4\uD83D\uDE47\uD83C\uDF51❄\uD83C\uDF34\uD83D\uDCA3\uD83D\uDC38\uD83D\uDC8C\uD83D\uDCCD\uD83E\uDD40\uD83E\uDD22\uD83D\uDC45\uD83D\uDCA1\uD83D\uDCA9\uD83D\uDC50\uD83D\uDCF8\uD83D\uDC7B\uD83E\uDD10\uD83E\uDD2E\uD83C\uDFBC\uD83E\uDD75\uD83D\uDEA9\uD83C\uDF4E\uD83C\uDF4A\uD83D\uDC7C\uD83D\uDC8D\uD83D\uDCE3\uD83E\uDD42"),fY=fG.reduce((e,t,r)=>(e[r]=t,e),[]),fZ=fG.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);var fJ=Object.freeze({__proto__:null,base256emoji:fD({prefix:"\uD83D\uDE80",name:"base256emoji",encode:function(e){return e.reduce((e,t)=>
24e+=fY[t],"")},decode:function(e){let t=[];for(let r of e){let e=fZ[r.codePointAt(0)];if(void 0===e)throw Error(`Non-base256emoji character: ${r}`);t.push(e)}return new Uint8Array(t)}})});function fQ(e,t,r){t=t||[],r=r||0;for(var i=r;e>=0x80000000;)t[r++]=255&e|128,e/=128;for(;-128&e;)t[r++]=255&e|128,e>>>=7;return t[r]=0|e,fQ.bytes=r-i+1,t}var fX=function(e){return e<128?1:e<16384?2:e<2097152?3:e<0x10000000?4:e<0x800000000?5:e<0x40000000000?6:e<0x2000000000000?7:e<0x100000000000000?8:e<0x8000000000000000?9:10};let f0=(e,t,r=0)=>(fQ(e,t,r),t),f1=(e,t)=>{let r=t.byteLength,i=fX(e),s=i+fX(r),n=new Uint8Array(s+r);return f0(e,n,0),f0(r,n,i),n.set(t,s),new f2(e,r,t,n)};class f2{constructor(e,t,r,i){this.code=e,this.size=t,this.digest=r,this.bytes=i}}let f8=({name:e,code:t,encode:r})=>new f6(e,t,r);class f6{constructor(e,t,r){this.name=e,this.code=t,this.encode=r}digest(e){if(e instanceof Uint8Array){let t=this.encode(e);return t instanceof Uint8Array?f1(this.code,t):t.then(e=>f1(this.code,e))}throw Error("Unknown type, must be binary type")}}let f3=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t));var f5=Object.freeze({__proto__:null,sha256:f8({name:"sha2-256",code:18,encode:f3("SHA-256")}),sha512:f8({name:"sha2-512",code:19,encode:f3("SHA-512")})}),f4=Object.freeze({__proto__:null,identity:{code:0,name:"identity",encode:fN,digest:e=>f1(0,fN(e))}});new TextEncoder,new TextDecoder;let f9={...fM,...fq,...f$,...fz,...fV,...fF,...fK,...fH,...fW,...fJ};function f7(e){return null!=globalThis.Buffer?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function pe(e,t,r,i){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:i}}}({...f5,...f4});let pt=pe("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),pr=pe("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{let t=function(e=0){return null!=globalThis.Buffer&&null!=globalThis.Buffer.allocUnsafe?f7(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}),pi={utf8:pt,"utf-8":pt,hex:f9.base16,latin1:pr,ascii:pr,binary:pr,...f9};var ps=Object.defineProperty,pn=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?ps(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class po{constructor(e,t){this.core=e,this.logger=t,pn(this,"keychain",new Map),pn(this,"name","keychain"),pn(this,"version","0.3"),pn(this,"initialized",!1),pn(this,"storagePrefix",d6),pn(this,"init",async()=>{if(!this.initialized){let e=await this.getKeyChain();"u">typeof e&&(this.keychain=e),this.initialized=!0}}),pn(this,"has",e=>(this.isInitialized(),this.keychain.has(e))),pn(this,"set",async(e,t)=>{this.isInitialized(),this.keychain.set(e,t),await this.persist()}),pn(this,"get",e=>{this.isInitialized();let t=this.keychain.get(e);if(typeof t>"u"){let{message:t}=ab("NO_MATCHING_KEY",`${this.name}: ${e}`);throw Error(t)}return t}),pn(this,"del",async e=>{this.isInitialized(),this.keychain.delete(e),await this.persist()}),this.core=e,this.logger=e7(t,this.name)}get context(){return e9(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,aM(e))}async getKeyChain(){let e=await this.core.storage.getItem(this.storageKey);return"u">typeof e?aq(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){let{message:e}=ab("NOT_INITIALIZED",this.name);throw Error(e)}}}var pa=Object.defineProperty,pl=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?pa(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class pc{constructor(e,t,r){this.core=e,this.logger=t,pl(this,"name","crypto"),pl(this,"keychain"),pl(this,"randomSessionIdentifier",uL()),pl(this,"initialized",!1),pl(this,"clientId"),pl(this,"init",async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)}),pl(this,"hasKeys",e=>(this.isInitialized(),this.keychain.has(e))),pl(this,"getClientId",async()=>
24{if(this.isInitialized(),this.clientId)return this.clientId;let e=i_(iP(await this.getClientSeed()).publicKey);return this.clientId=e,e}),pl(this,"generateKeyPair",()=>{let e,t;this.isInitialized();let r=(e=uh.utils.randomPrivateKey(),t=uh.getPublicKey(e),{privateKey:ao(e,uB),publicKey:ao(t,uB)});return this.setPrivateKey(r.publicKey,r.privateKey)}),pl(this,"signJWT",async e=>{this.isInitialized();let t=iP(await this.getClientSeed()),r=this.randomSessionIdentifier;return await iT(r,e,d4,t)}),pl(this,"generateSharedKey",(e,t,r)=>{var i,s,n;let o;this.isInitialized();let a=(i=this.getPrivateKey(e),ao((o=uh.getSharedSecret(an(i,uB),an(t,uB)),s=void 0,function(e,t,r,i=32){lf(e),lu(i);let s=e.outputLen;if(i>255*s)throw Error("Length should be <= 255*HashLen");let n=Math.ceil(i/s);void 0===r&&(r=hh);let o=new Uint8Array(n*s),a=hl.create(e,t),l=a._cloneInto(),c=new Uint8Array(a.outputLen);for(let e=0;e<n;e++)hc[0]=e+1,l.update(0===e?hh:c).update(r).update(hc).digestInto(c),o.set(c,s*e),a._cloneInto(l);return a.destroy(),l.destroy(),lb(c,hc),o.slice(0,i)}(ci,(n=void 0,lf(ci),void 0===n&&(n=new Uint8Array(ci.outputLen)),hl(ci,lN(n),lN(o))),s,32)),uB));return this.setSymKey(a,r)}),pl(this,"setSymKey",async(e,t)=>{this.isInitialized();let r=t||uj(e);return await this.keychain.set(r,e),r}),pl(this,"deleteKeyPair",async e=>{this.isInitialized(),await this.keychain.del(e)}),pl(this,"deleteSymKey",async e=>{this.isInitialized(),await this.keychain.del(e)}),pl(this,"encode",async(e,t,r)=>{this.isInitialized();let i=uK(r),s=ed(t);if(2===i.type){var n;let e,t,i;return n=r?.encoding,e=an("2",uC),t=lU(12),i=uV({type:e,sealed:an(s,uD),iv:t}),n===uk?u$(i):i}if(uH(i)){let t=i.senderPublicKey,r=i.receiverPublicKey;e=await this.generateSharedKey(t,r)}let o=this.getSymKey(e),{type:a,senderPublicKey:l}=i;return function(e){var t;let r=(t="u">typeof e.type?e.type:0,an(`${t}`,uC));if(1===uq(r)&&typeof e.senderPublicKey>"u")throw Error("Missing sender public key for type 1 envelope");let i="u">typeof e.senderPublicKey?an(e.senderPublicKey,uB):void 0,s="u">typeof e.iv?an(e.iv,uB):lU(12),n=uV({type:r,sealed:ho(an(e.symKey,uB),s).encrypt(an(e.message,uD)),iv:s,senderPublicKey:i});return e.encoding===uk?u$(n):n}({type:a,symKey:o,message:s,senderPublicKey:l,encoding:r?.encoding})}),pl(this,"decode",async(e,t,r)=>{let i;this.isInitialized();let s=uK({type:uq((i=uF({encoded:t,encoding:r?.encoding})).type),senderPublicKey:"u">typeof i.senderPublicKey?ao(i.senderPublicKey,uB):void 0,receiverPublicKey:r?.receiverPublicKey});if(2===s.type)return eu(function(e,t){let{sealed:r}=uF({encoded:e,encoding:t});return ao(r,uD)}(t,r?.encoding));if(uH(s)){let t=s.receiverPublicKey,r=s.senderPublicKey;e=await this.generateSharedKey(t,r)}try{let i=this.getSymKey(e),s=function(e){let t=an(e.symKey,uB),{sealed:r,iv:i}=uF({encoded:e.encoded,encoding:e.encoding}),s=ho(t,i).decrypt(r);if(null===s)throw Error("Failed to decrypt");return ao(s,uD)}({symKey:i,encoded:t,encoding:r?.encoding});return eu(s)}catch(t){this.logger.error(`Failed to decode message from topic: '${e}', clientId: '${await this.getClientId()}'`),this.logger.error(t)}}),pl(this,"getPayloadType",(e,t=uU)=>uq(uF({encoded:e,encoding:t}).type)),pl(this,"getPayloadSenderPublicKey",(e,t=uU)=>{let r=uF({encoded:e,encoding:t});return r.senderPublicKey?ao(r.senderPublicKey,uB):void 0}),this.core=e,this.logger=e7(t,this.name),this.keychain=r||new po(this.core,this.logger)}get context(){return e9(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(d5)}catch{e=uL(),await this.keychain.set(d5,e)}return function(e,t="utf8"){let r=pi[t];if(!r)throw Error(`Unsupported encoding "${t}"`);return("utf8"===t||"utf-8"===t)&&null!=globalThis.Buffer&&null!=globalThis.Buffer.from?f7(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}(e,"base16")}getSymKey(e){return this.keychain.get(e)}isInitialized(){if(!this.initialized){let{message:e}=ab("NOT_INITIALIZED",this.name);throw Error(e)}}}var ph=Object.defineProperty,pu=Object.defineProperties,pd=Object.getOwnPropertyDescriptors,pf=Object.getOwnPropertySymbols,pp=Object.prototype.hasOwnProperty,pg=Object.prototype.propertyIsEnumerable,py=(e,t,r)=>t in e?ph(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,pb=(e,t,r)=>py(e,"symbol"!=typeof t?t+"":t,r);class pm extends to{constructor(e,t){super(e,t),this.logger=e,this.core=t,pb(this,"messages",new Map),pb(this,"messagesWithoutClientAck",new Map),pb(this,"name","messages"),pb(this,"version","0.3"),pb(this,"initialized",!1),pb(this,"storagePrefix",d6),pb(this,"init",async()=>
24{if(!this.initialized){this.logger.trace("Initialized");try{let e=await this.getRelayerMessages();"u">typeof e&&(this.messages=e);let t=await this.getRelayerMessagesWithoutClientAck();"u">typeof t&&(this.messagesWithoutClientAck=t),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}}}),pb(this,"set",async(e,t,r)=>{this.isInitialized();let i=uM(t),s=this.messages.get(e);if(typeof s>"u"&&(s={}),"u">typeof s[i])return i;if(s[i]=t,this.messages.set(e,s),r===fu){let r=this.messagesWithoutClientAck.get(e)||{};this.messagesWithoutClientAck.set(e,pu(((e,t)=>{for(var r in t||(t={}))pp.call(t,r)&&py(e,r,t[r]);if(pf)for(var r of pf(t))pg.call(t,r)&&py(e,r,t[r]);return e})({},r),pd({[i]:t})))}return await this.persist(),i}),pb(this,"get",e=>{this.isInitialized();let t=this.messages.get(e);return typeof t>"u"&&(t={}),t}),pb(this,"getWithoutAck",e=>{this.isInitialized();let t={};for(let r of e){let e=this.messagesWithoutClientAck.get(r)||{};t[r]=Object.values(e)}return t}),pb(this,"has",(e,t)=>(this.isInitialized(),"u">typeof this.get(e)[uM(t)])),pb(this,"ack",async(e,t)=>{this.isInitialized();let r=this.messagesWithoutClientAck.get(e);if(typeof r>"u")return;let i=uM(t);delete r[i],0===Object.keys(r).length?this.messagesWithoutClientAck.delete(e):this.messagesWithoutClientAck.set(e,r),await this.persist()}),pb(this,"del",async e=>{this.isInitialized(),this.messages.delete(e),this.messagesWithoutClientAck.delete(e),await this.persist()}),this.logger=e7(e,this.name),this.core=t}get context(){return e9(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get storageKeyWithoutClientAck(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name+"_withoutClientAck"}async setRelayerMessages(e){await this.core.storage.setItem(this.storageKey,aM(e))}async setRelayerMessagesWithoutClientAck(e){await this.core.storage.setItem(this.storageKeyWithoutClientAck,aM(e))}async getRelayerMessages(){let e=await this.core.storage.getItem(this.storageKey);return"u">typeof e?aq(e):void 0}async getRelayerMessagesWithoutClientAck(){let e=await this.core.storage.getItem(this.storageKeyWithoutClientAck);return"u">typeof e?aq(e):void 0}async persist(){await this.setRelayerMessages(this.messages),await this.setRelayerMessagesWithoutClientAck(this.messagesWithoutClientAck)}isInitialized(){if(!this.initialized){let{message:e}=ab("NOT_INITIALIZED",this.name);throw Error(e)}}}var pw=Object.defineProperty,pv=Object.defineProperties,pE=Object.getOwnPropertyDescriptors,px=Object.getOwnPropertySymbols,pI=Object.prototype.hasOwnProperty,pS=Object.prototype.propertyIsEnumerable,pO=(e,t,r)=>t in e?pw(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,p_=(e,t)=>{for(var r in t||(t={}))pI.call(t,r)&&pO(e,r,t[r]);if(px)for(var r of px(t))pS.call(t,r)&&pO(e,r,t[r]);return e},pA=(e,t,r)=>pO(e,"symbol"!=typeof t?t+"":t,r);class pP extends ta{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,pA(this,"events",new q.EventEmitter),pA(this,"name","publisher"),pA(this,"queue",new Map),pA(this,"publishTimeout",(0,z.toMiliseconds)(z.ONE_MINUTE)),pA(this,"initialPublishTimeout",(0,z.toMiliseconds)(15*z.ONE_SECOND)),pA(this,"needsTransportRestart",!1),pA(this,"publish",async(e,t,r)=>{var i,s,n,o,a;this.logger.debug("Publishing Payload"),this.logger.trace({type:"method",method:"publish",params:{topic:e,message:t,opts:r}});let l=r?.ttl||d9,c=r?.prompt||!1,h=r?.tag||0,u=r?.id||dj().toString(),d=uG(uW().protocol),f={id:u,method:r?.publishMethod||d.publish,params:p_({topic:e,message:t,ttl:l,prompt:c,tag:h,attestation:r?.attestation},r?.tvf)},p=`Failed to publish payload, please try again. id:${u} tag:${h}`;try{df(null==(i=f.params)?void 0:i.prompt)&&(null==(s=f.params)||delete s.prompt),df(null==(n=f.params)?void 0:n.tag)&&(null==(o=f.params)||delete o.tag);let a=new Promise(async e=>{let t=({id:r})=>{var i;(null==(i=f.id)?void 0:i.toString())===r.toString()&&(this.removeRequestFromQueue(r),this.relayer.events.removeListener(fi,t),e())};this.relayer.events.on(fi,t);let i=az(new Promise((e,t)=>
24{this.rpcPublish(f,r).then(e).catch(e=>{this.logger.warn(e,e?.message),t(e)})}),this.initialPublishTimeout,`Failed initial publish, retrying.... id:${u} tag:${h}`);try{await i,this.events.removeListener(fi,t)}catch(e){this.queue.set(u,{request:f,opts:r,attempt:1}),this.logger.warn(e,e?.message)}});this.logger.trace({type:"method",method:"publish",params:{id:u,topic:e,message:t,opts:r}}),await az(a,this.publishTimeout,p)}catch(e){if(this.logger.debug("Failed to Publish Payload"),this.logger.error(e),null!=(a=r?.internal)&&a.throwOnFailedPublish)throw e}finally{this.queue.delete(u)}}),pA(this,"publishCustom",async e=>{var t,r,i,s,n;this.logger.debug("Publishing custom payload"),this.logger.trace({type:"method",method:"publishCustom",params:e});let{payload:o,opts:a={}}=e,{attestation:l,tvf:c,publishMethod:h,prompt:u,tag:d,ttl:f=z.FIVE_MINUTES}=a,p=a.id||dj().toString(),g=uG(uW().protocol),y=h||g.publish,b={id:p,method:y,params:p_(pv(p_({},o),pE({ttl:f,prompt:u,tag:d,attestation:l})),c)},m=`Failed to publish custom payload, please try again. id:${p} tag:${d}`;try{df(null==(t=b.params)?void 0:t.prompt)&&(null==(r=b.params)||delete r.prompt),df(null==(i=b.params)?void 0:i.tag)&&(null==(s=b.params)||delete s.tag);let e=new Promise(async e=>{let t=({id:r})=>{var i;(null==(i=b.id)?void 0:i.toString())===r.toString()&&(this.removeRequestFromQueue(r),this.relayer.events.removeListener(fi,t),e())};this.relayer.events.on(fi,t);let r=az(new Promise((e,t)=>{this.rpcPublish(b,a).then(e).catch(e=>{this.logger.warn(e,e?.message),t(e)})}),this.initialPublishTimeout,`Failed initial custom payload publish, retrying.... method:${y} id:${p} tag:${d}`);try{await r,this.events.removeListener(fi,t)}catch(e){this.queue.set(p,{request:b,opts:a,attempt:1}),this.logger.warn(e,e?.message)}});this.logger.trace({type:"method",method:"publish",params:{id:p,payload:o,opts:a}}),await az(e,this.publishTimeout,m)}catch(e){if(this.logger.debug("Failed to Publish Payload"),this.logger.error(e),null!=(n=a?.internal)&&n.throwOnFailedPublish)throw e}finally{this.queue.delete(p)}}),pA(this,"on",(e,t)=>{this.events.on(e,t)}),pA(this,"once",(e,t)=>{this.events.once(e,t)}),pA(this,"off",(e,t)=>{this.events.off(e,t)}),pA(this,"removeListener",(e,t)=>{this.events.removeListener(e,t)}),this.relayer=e,this.logger=e7(t,this.name),this.registerEventListeners()}get context(){return e9(this.logger)}async rpcPublish(e,t){this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"message",direction:"outgoing",request:e});let r=await this.relayer.request(e);return this.relayer.events.emit(fi,p_(p_({},e),t)),this.logger.debug("Successfully Published Payload"),r}removeRequestFromQueue(e){this.queue.delete(e)}checkQueue(){this.queue.forEach(async(e,t)=>{var r;let i=e.attempt+1;this.queue.set(t,pv(p_({},e),pE({attempt:i}))),this.logger.warn({},`Publisher: queue->publishing: ${e.request.id}, tag: ${null==(r=e.request.params)?void 0:r.tag}, attempt: ${i}`),await this.rpcPublish(e.request,e.opts),this.logger.warn({},`Publisher: queue->published: ${e.request.id}`)})}registerEventListeners(){this.relayer.core.heartbeat.on(H,()=>{if(this.needsTransportRestart){this.needsTransportRestart=!1,this.relayer.events.emit(fr);return}this.checkQueue()}),this.relayer.on(ft,e=>{this.removeRequestFromQueue(e.id.toString())})}}var pT=Object.defineProperty,pN=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?pT(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class pR{constructor(){pN(this,"map",new Map),pN(this,"set",(e,t)=>{let r=this.get(e);this.exists(e,t)||this.map.set(e,[...r,t])}),pN(this,"get",e=>this.map.get(e)||[]),pN(this,"exists",(e,t)=>this.get(e).includes(t)),pN(this,"delete",(e,t)=>{if(typeof t>"u")return void this.map.delete(e);if(!this.map.has(e))return;let r=this.get(e);if(!this.exists(e,t))return;let i=r.filter(e=>e!==t);i.length?this.map.set(e,i):this.map.delete(e)}),pN(this,"clear",()=>{this.map.clear()})}get topics(){return Array.from(this.map.keys())}}var pC=Object.defineProperty,pB=Object.defineProperties,pU=Object.getOwnPropertyDescriptors,pk=Object.getOwnPropertySymbols,pD=Object.prototype.hasOwnProperty,pL=Object.prototype.propertyIsEnumerable,pj=(e,t,r)=>t in e?pC(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,pM=(e,t)=>{for(var r in t||(t={}))pD.call(t,r)&&pj(e,r,t[r]);if(pk)for(var r of pk(t))pL.call(t,r)&&pj(e,r,t[r]);return e},pq=(e,t,r)=>pj(e,"symbol"!=typeof t?t+"":t,r);class p$ extends th{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,pq(this,"subscriptions",new Map),pq(this,"topicMap",new pR),pq(this,"events",new q.EventEmitter),pq(this,"name","subscription"),pq(this,"version","0.3"),pq(this,"pending",new Map),pq(this,"cac
24hed",[]),pq(this,"initialized",!1),pq(this,"storagePrefix",d6),pq(this,"subscribeTimeout",(0,z.toMiliseconds)(z.ONE_MINUTE)),pq(this,"initialSubscribeTimeout",(0,z.toMiliseconds)(15*z.ONE_SECOND)),pq(this,"clientId"),pq(this,"batchSubscribeTopicsLimit",500),pq(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),this.registerEventListeners(),await this.restore()),this.initialized=!0}),pq(this,"subscribe",async(e,t)=>{var r;this.isInitialized(),this.logger.debug("Subscribing Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:e,opts:t}});try{let i=uW(t),s={topic:e,relay:i,transportType:t?.transportType};null!=(r=t?.internal)&&r.skipSubscribe||this.pending.set(e,s);let n=await this.rpcSubscribe(e,i,t);return"string"==typeof n&&(this.onSubscribe(n,s),this.logger.debug("Successfully Subscribed Topic"),this.logger.trace({type:"method",method:"subscribe",params:{topic:e,opts:t}})),n}catch(e){throw this.logger.debug("Failed to Subscribe Topic"),this.logger.error(e),e}}),pq(this,"unsubscribe",async(e,t)=>{this.isInitialized(),"u">typeof t?.id?await this.unsubscribeById(e,t.id,t):await this.unsubscribeByTopic(e,t)}),pq(this,"isSubscribed",e=>new Promise(t=>{t(this.topicMap.topics.includes(e))})),pq(this,"isKnownTopic",e=>new Promise(t=>{t(this.topicMap.topics.includes(e)||this.pending.has(e)||this.cached.some(t=>t.topic===e))})),pq(this,"on",(e,t)=>{this.events.on(e,t)}),pq(this,"once",(e,t)=>{this.events.once(e,t)}),pq(this,"off",(e,t)=>{this.events.off(e,t)}),pq(this,"removeListener",(e,t)=>{this.events.removeListener(e,t)}),pq(this,"start",async()=>{await this.onConnect()}),pq(this,"stop",async()=>{await this.onDisconnect()}),pq(this,"restart",async()=>{await this.restore(),await this.onRestart()}),pq(this,"checkPending",async()=>{if(0===this.pending.size&&(!this.initialized||!this.relayer.connected))return;let e=[];this.pending.forEach(t=>{e.push(t)}),await this.batchSubscribe(e)}),pq(this,"registerEventListeners",()=>{this.relayer.core.heartbeat.on(H,async()=>{await this.checkPending()}),this.events.on(ff,async e=>{this.logger.info(`Emitting ${ff}`),this.logger.debug({type:"event",event:ff,data:e}),await this.persist()}),this.events.on(fp,async e=>{this.logger.info(`Emitting ${fp}`),this.logger.debug({type:"event",event:fp,data:e}),await this.persist()})}),this.relayer=e,this.logger=e7(t,this.name),this.clientId=""}get context(){return e9(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.relayer.core.customStoragePrefix+"//"+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}get hasAnyTopics(){return this.topicMap.topics.length>0||this.pending.size>0||this.cached.length>0||this.subscriptions.size>0}hasSubscription(e,t){let r=!1;try{r=this.getSubscription(e).topic===t}catch{}return r}reset(){this.cached=[],this.initialized=!0}onDisable(){this.values.length>0&&(this.cached=this.values),this.subscriptions.clear(),this.topicMap.clear()}async unsubscribeByTopic(e,t){let 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{let i=uW(r);await this.restartToComplete({topic:e,id:t,relay:i}),await this.rpcUnsubscribe(e,t,i);let s=am("USER_DISCONNECTED",`${this.name}, ${e}`);await this.onUnsubscribe(e,t,s),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,r){var i,s;
24let n=await this.getSubscriptionId(e);if(null!=(i=r?.internal)&&i.skipSubscribe)return n;r&&r?.transportType!==fh||await this.restartToComplete({topic:e,id:e,relay:t});let o={method:uG(t.protocol).subscribe,params:{topic:e}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:o});let a=null==(s=r?.internal)?void 0:s.throwOnFailedPublish;try{if(r?.transportType===fc)return setTimeout(()=>{(this.relayer.connected||this.relayer.connecting)&&this.relayer.request(o).catch(e=>this.logger.warn(e))},(0,z.toMiliseconds)(z.ONE_SECOND)),n;let t=new Promise(async t=>{let r=i=>{i.topic===e&&(this.events.removeListener(ff,r),t(i.id))};this.events.on(ff,r);try{let i=await az(new Promise((e,t)=>{this.relayer.request(o).catch(e=>{this.logger.warn(e,e?.message),t(e)}).then(e)}),this.initialSubscribeTimeout,`Subscribing to ${e} failed, please try again`);this.events.removeListener(ff,r),t(i)}catch{}}),i=await az(t,this.subscribeTimeout,`Subscribing to ${e} failed, please try again`);if(!i&&a)throw Error(`Subscribing to ${e} failed, please try again`);return i?n:null}catch(e){if(this.logger.debug("Outgoing Relay Subscribe Payload stalled"),this.relayer.events.emit(fr),a)throw e}return null}async rpcBatchSubscribe(e){if(!e.length)return!0;let t={method:uG(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 az(new Promise((e,r)=>{this.relayer.request(t).then(e).catch(e=>{this.logger.warn(e),r(e)})}),this.subscribeTimeout,"rpcBatchSubscribe failed, please try again"),!0}catch{return this.relayer.events.emit(fr),!1}}async rpcBatchFetchMessages(e){let t;if(!e.length)return;let r={method:uG(e[0].relay.protocol).batchFetchMessages,params:{topics:e.map(e=>e.topic)}};this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:r});try{t=await await az(new Promise((e,t)=>{this.relayer.request(r).catch(e=>{this.logger.warn(e),t(e)}).then(e)}),this.subscribeTimeout,"rpcBatchFetchMessages failed, please try again")}catch{this.relayer.events.emit(fr)}return t}rpcUnsubscribe(e,t,r){let i={method:uG(r.protocol).unsubscribe,params:{topic:e,id:t}};return this.logger.debug("Outgoing Relay Payload"),this.logger.trace({type:"payload",direction:"outgoing",request:i}),this.relayer.request(i)}onSubscribe(e,t){this.setSubscription(e,pB(pM({},t),pU({id:e}))),this.pending.delete(t.topic)}onBatchSubscribe(e){e.length&&e.forEach(e=>{this.setSubscription(e.id,pM({},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.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,pM({},t)),this.topicMap.set(t.topic,e),this.events.emit(ff,t)}getSubscription(e){this.logger.debug("Getting subscription"),this.logger.trace({type:"method",method:"getSubscription",id:e});let t=this.subscriptions.get(e);if(!t){let{message:t}=ab("NO_MATCHING_KEY",`${this.name}: ${e}`);throw Error(t)}return t}deleteSubscription(e,t){this.logger.debug("Deleting subscription"),this.logger.trace({type:"method",method:"deleteSubscription",id:e,reason:t});let r=this.getSubscription(e);this.subscriptions.delete(e),this.topicMap.delete(r.topic,e),this.events.emit(fp,pB(pM({},r),pU({reason:t})))}async persist(){await this.setRelayerSubscriptions(this.values),this.events.emit("subscription_sync")}async onRestart(){if(this.cached.length){let e=[...this.cached],t=Math.ceil(this.cached.length/this.batchSubscribeTopicsLimit);for(let r=0;r<t;r++){let t=e.splice(0,this.batchSubscribeTopicsLimit);await this.batchSubscribe(t)}}this.events.emit("subscription_resubscribed")}
24async restore(){try{let e=await this.getRelayerSubscriptions();if(typeof e>"u"||!e.length)return;if(this.subscriptions.size&&!e.every(e=>{var t;return e.topic===(null==(t=this.subscriptions.get(e.id))?void 0:t.topic)})){let{message:e}=ab("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),this.logger.error(`${this.name}: ${JSON.stringify(this.values)}`),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){if(!await this.rpcBatchSubscribe(e)){this.logger.warn(`Batch subscribe failed for ${e.length} topics, adding to pending for retry`),e.forEach(e=>{this.pending.set(e.topic,e)});return}this.onBatchSubscribe(await Promise.all(e.map(async e=>pB(pM({},e),pU({id:await this.getSubscriptionId(e.topic)})))))}}async batchFetchMessages(e){var t;if(!e.length)return;this.logger.trace(`Fetching batch messages for ${e.length} subscriptions`);let r=await this.rpcBatchFetchMessages(e);r&&r.messages&&(await (t=(0,z.toMiliseconds)(z.ONE_SECOND),new Promise(e=>setTimeout(e,t))),await this.relayer.handleBatchMessageEvents(r.messages))}async onConnect(){await this.restart(),this.reset()}onDisconnect(){this.onDisable()}isInitialized(){if(!this.initialized){let{message:e}=ab("NOT_INITIALIZED",this.name);throw Error(e)}}async restartToComplete(e){this.relayer.connected||this.relayer.connecting||(this.cached.push(e),await this.relayer.transportOpen())}async getClientId(){return this.clientId||(this.clientId=await this.relayer.core.crypto.getClientId()),this.clientId}async getSubscriptionId(e){return uM(e+await this.getClientId())}}var pz=Object.defineProperty,pV=Object.getOwnPropertySymbols,pF=Object.prototype.hasOwnProperty,pK=Object.prototype.propertyIsEnumerable,pH=(e,t,r)=>t in e?pz(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,pW=(e,t)=>{for(var r in t||(t={}))pF.call(t,r)&&pH(e,r,t[r]);if(pV)for(var r of pV(t))pK.call(t,r)&&pH(e,r,t[r]);return e},pG=(e,t,r)=>pH(e,"symbol"!=typeof t?t+"":t,r);class pY extends tl{constructor(e){var t;super(e),pG(this,"protocol","wc"),pG(this,"version",2),pG(this,"core"),pG(this,"logger"),pG(this,"events",new q.EventEmitter),pG(this,"provider"),pG(this,"messages"),pG(this,"subscriber"),pG(this,"publisher"),pG(this,"name","relayer"),pG(this,"transportExplicitlyClosed",!1),pG(this,"initialized",!1),pG(this,"connectionAttemptInProgress",!1),pG(this,"relayUrl"),pG(this,"projectId"),pG(this,"packageName"),pG(this,"bundleId"),pG(this,"hasExperiencedNetworkDisruption",!1),pG(this,"pingTimeout"),pG(this,"heartBeatTimeout",(0,z.toMiliseconds)(z.THIRTY_SECONDS+z.FIVE_SECONDS)),pG(this,"reconnectTimeout"),pG(this,"connectPromise"),pG(this,"reconnectInProgress",!1),pG(this,"requestsInFlight",[]),pG(this,"connectTimeout",(0,z.toMiliseconds)(15*z.ONE_SECOND)),pG(this,"stalledRestartInProgress",!1),pG(this,"stalledRestartTimeout"),pG(this,"stalledRestartBackoff",0),pG(this,"stalledRestartBaseInterval",(0,z.toMiliseconds)(2*z.ONE_SECOND)),pG(this,"stalledRestartMaxInterval",(0,z.toMiliseconds)(z.THIRTY_SECONDS)),pG(this,"request",async e=>{var t,r;this.logger.debug("Publishing Request Payload");let i=e.id||dj().toString();await this.toEstablishConnection();try{this.logger.trace({id:i,method:e.method,topic:null==(t=e.params)?void 0:t.topic},"relayer.request - publishing...");let s=`${i}:${(null==(r=e.params)?void 0:r.tag)||""}`;this.requestsInFlight.push(s);let n=await this.provider.request(e);return this.requestsInFlight=this.requestsInFlight.filter(e=>e!==s),n}catch(e){throw this.logger.debug(`Failed to Publish Request: ${i}`),e}}),pG(this,"resetPingTimeout",()=>{aR()&&(clearTimeout(this.pingTimeout),this.pingTimeout=setTimeout(()=>{var e,t,r,i;try{this.logger.debug({},"pingTimeout: Connection stalled, terminating..."),null==(i=null==(r=null==(t=null==(e=this.provider)?void 0:e.connection)?void 0:t.socket)?void 0:r.terminate)||i.call(r)}catch(e){this.logger.warn(e,e?.message)}},this.heartBeatTimeout))}),pG(this,"onPayloadHandler",e=>{this.onProviderPayload(e),this.resetPingTimeout()}),pG(this,"onConnectHandler",()=>{this.logger.warn({},"Relayer connected \uD83D\uDEDC"),this.startPingTimeout(),this.events.emit("relayer_connect")}),pG(this,"onDisconnectHandler",()=>{this.logger.warn({},"Relayer disconnected \uD83D\uDED1"),this.requestsInFlight=[],this.onProviderDisconnect()}),pG(this,"onProviderErrorHandler",e=>{this.logger.fatal(`Fatal socket error: ${e.message}`),this.events.emit("relayer_error",e),this.logger.fatal("Fatal socket error received, closing transport"),this.transportExplicitlyClosed=!0,clearTimeout(this.reconnectTimeout),this.reconnectTimeout=void 0,this.reconnectInProgress=!1,this.transportClose().catch(e=>this.logger.warn(e))}),pG(this,"registerProviderListeners",()=>{this.provider.on(fs,this.onPayloadHandler),this.provider.on(fn,this.onConnectHandler),this.provider.on(fo,this.onDisconnectHandler),this.provider.on(fa,this.onProviderErrorHandler)}
24),this.core=e.core,this.logger=dN({logger:null!=(t=e.logger)?t:"error",name:this.name}),this.messages=new pm(this.logger,e.core),this.subscriber=new p$(this,this.logger),this.publisher=new pP(this,this.logger),this.projectId=e?.projectId,this.relayUrl=e?.relayUrl||d7,aC()&&"u">typeof global&&"u">typeof(null==global?void 0:global.Platform)&&(null==global?void 0:global.Platform.OS)==="android"?this.packageName=ak():aC()&&"u">typeof global&&"u">typeof(null==global?void 0:global.Platform)&&(null==global?void 0:global.Platform.OS)==="ios"&&(this.bundleId=ak()),this.provider={}}async init(){this.logger.trace("Initialized"),this.registerEventListeners(),await Promise.all([this.messages.init(),this.subscriber.init()]),this.initialized=!0,this.transportOpen().catch(e=>this.logger.warn(e,e?.message))}get context(){return e9(this.logger)}get connected(){var e,t,r;return(null==(r=null==(t=null==(e=this.provider)?void 0:e.connection)?void 0:t.socket)?void 0:r.readyState)===1}get connecting(){var e,t,r;return(null==(r=null==(t=null==(e=this.provider)?void 0:e.connection)?void 0:t.socket)?void 0:r.readyState)===0||void 0!==this.connectPromise}async publish(e,t,r){this.isInitialized(),await this.publisher.publish(e,t,r),await this.recordMessageEvent({topic:e,message:t,publishedAt:Date.now(),transportType:fh},"outbound")}async publishCustom(e){this.isInitialized(),await this.publisher.publishCustom(e)}async subscribe(e,t){var r,i,s;this.isInitialized(),null!=t&&t.transportType&&t?.transportType!=="relay"||await this.toEstablishConnection();let n=typeof(null==(r=t?.internal)?void 0:r.throwOnFailedPublish)>"u"||(null==(i=t?.internal)?void 0:i.throwOnFailedPublish),o=(null==(s=this.subscriber.topicMap.get(e))?void 0:s[0])||"",a,l=t=>{t.topic===e&&(this.subscriber.off(ff,l),a())};return await Promise.all([new Promise(e=>{a=e,this.subscriber.on(ff,l)}),new Promise(async(r,i)=>{o=await this.subscriber.subscribe(e,pW({internal:{throwOnFailedPublish:n}},t)).catch(e=>{n&&i(e)})||o,r()})]),o}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 transportDisconnect(){this.provider.disconnect&&(this.hasExperiencedNetworkDisruption||this.connected)?await az(this.provider.disconnect(),2e3,"provider.disconnect()").catch(()=>this.onProviderDisconnect()):this.onProviderDisconnect()}async transportClose(){this.transportExplicitlyClosed=!0,clearTimeout(this.stalledRestartTimeout),this.stalledRestartInProgress=!1,this.stalledRestartBackoff=0,await this.resetTransport()}async transportOpen(e){if(!this.subscriber.hasAnyTopics)return void this.logger.info("Starting WS connection skipped because the client has no topics to work with.");if(this.connectPromise?(this.logger.debug({},"Waiting for existing connection attempt to resolve..."),await this.connectPromise,this.logger.debug({},"Existing connection attempt resolved")):(this.connectPromise=new Promise(async(t,r)=>{await this.connect(e).then(t).catch(r).finally(()=>{this.connectPromise=void 0})}),await this.connectPromise),!this.connected)throw Error(`Couldn't establish socket connection to the relay server: ${this.relayUrl}`)}async restartTransport(e){this.logger.debug({},"Restarting transport..."),this.connectionAttemptInProgress||(this.relayUrl=e||this.relayUrl,await this.confirmOnlineStateOrThrow(),await this.resetTransport(),await this.transportOpen())}async resetTransport(){this.reconnectInProgress=!0,clearTimeout(this.reconnectTimeout),this.reconnectTimeout=void 0,await this.transportDisconnect(),await this.subscriber.stop(),this.reconnectInProgress=!1}async confirmOnlineStateOrThrow(){if(!await dO())throw Error("No internet connection detected. Please restart your network and try again.")}async handleBatchMessageEvents(e){if(e?.length===0)return void this.logger.trace("Batch message events is empty. Ignoring...");let t=e.sort((e,t)=>e.publishedAt-t.publishedAt);for(let e of(this.logger.debug(`Batch of ${t.length} message events sorted`),t))try{await this.onMessageEvent(e)}catch(e){this.logger.warn(e,"Error while processing batch message event: "+e?.message)}this.logger.trace(`Batch of ${t.length} message events processed`)}async onLinkMessageEvent(e,t){let{topic:r}=e;if(!t.sessionExists){let e=aK(z.FIVE_MINUTES);await this.core.pairing.pairings.set(r,{topic:r,expiry:e,relay:{protocol:"irn"},active:!1})}this.events.emit(fe,e),await this.recordMessageEvent(e,fu)}async connect(e){await this.confirmOnlineStateOrThrow(),e&&e!==this.relayUrl&&(this.relayUrl=e,await this.transportDisconnect()),this.connectionAttemptInProgress=!0,this.transportExplicitlyClosed=!1;let t=1;for(;t<6;){try{if(this.transportExplicitlyClosed)break;this.logger.debug({},`Connecting to ${this.relayUrl}, attempt: ${t}...`),await this.createProvider(),await new Promise(async(e,t)=>{let r=()=>
24{t(Error("Connection interrupted while trying to connect"))};this.provider.once(fo,r),await az(new Promise((e,t)=>{this.provider.connect().then(e).catch(t)}),this.connectTimeout,`Socket stalled when trying to connect to ${this.relayUrl}`).catch(e=>{t(e)}).finally(()=>{this.provider.off(fo,r),clearTimeout(this.reconnectTimeout)}),await new Promise(async(e,r)=>{let i=()=>{t(Error("Connection interrupted while trying to subscribe"))};this.provider.once(fo,i),await this.subscriber.start().then(e).catch(r).finally(()=>{this.provider.off(fo,i)})}),this.hasExperiencedNetworkDisruption=!1,e()})}catch(e){await this.subscriber.stop(),this.logger.warn({},e.message),this.hasExperiencedNetworkDisruption=!0}finally{this.connectionAttemptInProgress=!1}if(this.connected){this.logger.debug({},`Connected to ${this.relayUrl} successfully on attempt: ${t}`);break}await new Promise(e=>setTimeout(e,(0,z.toMiliseconds)(+t))),t++}}startPingTimeout(){var e,t,r,i,s;if(aR())try{null!=(t=null==(e=this.provider)?void 0:e.connection)&&t.socket&&(null==(s=null==(i=null==(r=this.provider)?void 0:r.connection)?void 0:i.socket)||s.on("ping",()=>{this.resetPingTimeout()})),this.resetPingTimeout()}catch(e){this.logger.warn(e,e?.message)}}async createProvider(){this.provider.connection&&this.unregisterProviderListeners();let e=await this.core.crypto.signJWT(this.relayUrl);this.provider=new dJ(new d0(function({protocol:e,version:t,relayUrl:r,sdkVersion:i,auth:s,projectId:n,useOnCloseEvent:o,bundleId:a,packageName:l}){var c,h;let u,d=r.split("?"),f=aL(e,t,i),p=(c=d[1]||"",h={auth:s,ua:f,projectId:n,useOnCloseEvent:o||void 0,packageName:l||void 0,bundleId:a||void 0},u=new URLSearchParams(c),Object.entries(h).sort(([e],[t])=>e.localeCompare(t)).forEach(([e,t])=>{null!=t&&u.set(e,String(t))}),u.toString());return d[0]+"?"+p}({sdkVersion:fl,protocol:this.protocol,version:this.version,relayUrl:this.relayUrl,projectId:this.projectId,auth:e,useOnCloseEvent:!0,bundleId:this.bundleId,packageName:this.packageName}))),this.registerProviderListeners()}async recordMessageEvent(e,t){let{topic:r,message:i}=e;await this.messages.set(r,i,t)}async shouldIgnoreMessageEvent(e){let{topic:t,message:r}=e;if(!r||0===r.length)return this.logger.warn(`Ignoring invalid/empty message: ${r}`),!0;if(!await this.subscriber.isKnownTopic(t))return this.logger.warn(`Ignoring message for unknown topic ${t}`),!0;let i=this.messages.has(t,r);return i&&this.logger.warn(`Ignoring duplicate message: ${r}`),i}async onProviderPayload(e){if(this.logger.debug("Incoming Relay Payload"),this.logger.trace({type:"payload",direction:"incoming",payload:e}),dW(e)){if(!e.method.endsWith("_subscription"))return;let t=e.params,{topic:r,message:i,publishedAt:s,attestation:n}=t.data,o={topic:r,message:i,publishedAt:s,transportType:fh,attestation:n};this.logger.debug("Emitting Relayer Payload"),this.logger.trace(pW({type:"event",event:t.id},o)),this.events.emit(t.id,o),await this.acknowledgePayload(e),await this.onMessageEvent(o)}else dG(e)&&this.events.emit(ft,e)}async onMessageEvent(e){await this.shouldIgnoreMessageEvent(e)||(await this.recordMessageEvent(e,fu),this.events.emit(fe,e))}async acknowledgePayload(e){let t=dq(e.id,!0);await this.provider.connection.send(t)}unregisterProviderListeners(){this.provider.off(fs,this.onPayloadHandler),this.provider.off(fn,this.onConnectHandler),this.provider.off(fo,this.onDisconnectHandler),this.provider.off(fa,this.onProviderErrorHandler),clearTimeout(this.pingTimeout)}async registerEventListeners(){let e=await dO();(function(e){var t,r;switch(aU()){case aN:t=e,!aC()&&aB()&&(window.addEventListener("online",()=>t(!0)),window.addEventListener("offline",()=>t(!1)));break;case aP:r=e,aC()&&"u">typeof global&&null!=global&&global.NetInfo&&global?.NetInfo.addEventListener(e=>r(e?.isConnected))}})(async t=>{e!==t&&(e=t,t?await this.transportOpen().catch(e=>this.logger.error(e,e?.message)):(this.hasExperiencedNetworkDisruption=!0,await this.transportDisconnect(),this.transportExplicitlyClosed=!1))}),this.core.heartbeat.on(H,async()=>{var e;if(!this.transportExplicitlyClosed&&!this.connected&&(!(aB()&&(0,iq.getDocument)())||
24(null==(e=(0,iq.getDocument)())?void 0:e.visibilityState)==="visible"))try{await this.confirmOnlineStateOrThrow(),await this.transportOpen()}catch(e){this.logger.warn(e,e?.message)}}),this.events.on(fr,()=>{if(this.transportExplicitlyClosed||this.stalledRestartInProgress)return;this.stalledRestartInProgress=!0;let e=0===this.stalledRestartBackoff?0:Math.min(Math.pow(2,this.stalledRestartBackoff-1)*this.stalledRestartBaseInterval,this.stalledRestartMaxInterval);this.stalledRestartBackoff++,this.logger.warn(`Connection stalled, restarting transport${e?` in ${e}ms`:""}...`),this.stalledRestartTimeout=setTimeout(async()=>{try{if(this.transportExplicitlyClosed)return;await this.restartTransport()}catch(e){this.logger.error(e,e?.message)}finally{this.stalledRestartInProgress=!1}},e)})}async onProviderDisconnect(){clearTimeout(this.pingTimeout),this.events.emit("relayer_disconnect"),this.connectionAttemptInProgress=!1,!this.reconnectInProgress&&(this.reconnectInProgress=!0,await this.subscriber.stop(),this.subscriber.hasAnyTopics&&(this.transportExplicitlyClosed||(this.reconnectTimeout=setTimeout(async()=>{await this.transportOpen().catch(e=>this.logger.error(e,e?.message)),this.reconnectTimeout=void 0,this.reconnectInProgress=!1},(0,z.toMiliseconds)(.1)))))}isInitialized(){if(!this.initialized){let{message:e}=ab("NOT_INITIALIZED",this.name);throw Error(e)}}async toEstablishConnection(){if(await this.confirmOnlineStateOrThrow(),!this.connected){if(this.connectPromise)return void await this.connectPromise;await this.connect()}}}function pZ(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}function pJ(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}let pQ="[object Arguments]",pX="[object Object]";function p0(e){if(!e||"object"!=typeof e)return!1;let t=Object.getPrototypeOf(e);return(null===t||t===Object.prototype||null===Object.getPrototypeOf(t))&&"[object Object]"===Object.prototype.toString.call(e)}function p1(){}var p2=Object.defineProperty,p8=Object.getOwnPropertySymbols,p6=Object.prototype.hasOwnProperty,p3=Object.prototype.propertyIsEnumerable,p5=(e,t,r)=>t in e?p2(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,p4=(e,t)=>{for(var r in t||(t={}))p6.call(t,r)&&p5(e,r,t[r]);if(p8)for(var r of p8(t))p3.call(t,r)&&p5(e,r,t[r]);return e},p9=(e,t,r)=>p5(e,"symbol"!=typeof t?t+"":t,r);class p7 extends tc{constructor(e,t,r,i=d6,s){super(e,t,r,i),this.core=e,this.logger=t,this.name=r,p9(this,"map",new Map),p9(this,"version","0.3"),p9(this,"cached",[]),p9(this,"initialized",!1),p9(this,"getKey"),p9(this,"storagePrefix",d6),p9(this,"recentlyDeleted",[]),p9(this,"recentlyDeletedLimit",200),p9(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(e=>{var t;this.getKey&&null!==e&&!df(e)?this.map.set(this.getKey(e),e):(null==(t=e?.proposer)?void 0:t.publicKey)?this.map.set(e.id,e):e?.topic&&this.map.set(e.topic,e)}),this.cached=[],this.initialized=!0)}),p9(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())}),p9(this,"get",e=>(this.isInitialized(),this.logger.debug("Getting value"),this.logger.trace({type:"method",method:"get",key:e}),this.getData(e))),p9(this,"getAll",e=>(this.isInitialized(),e?this.values.filter(t=>Object.keys(e).every(r=>{var i;return i=t[r],function e(t,r,i,s,n,o,a){let l=a(t,r,i,s,n,o);if(void 0!==l)return l;if(typeof t==typeof r)switch(typeof t){case"bigint":case"string":case"boolean":case"symbol":case"undefined":case"function":return t===r;case"number":return t===r||Object.is(t,r)}return function t(r,i,s,n){if(Object.is(r,i))return!0;let o=pJ(r),a=pJ(i);if(o===pQ&&(o=pX),a===pQ&&(a=pX),o!==a)return!1;switch(o){case"[object String]":return r.toString()===i.toString();case"[object Number]":{let e=r.valueOf(),t=i.valueOf();return e===t||Number.isNaN(e)&&Number.isNaN(t)}case"[object Boolean]":case"[object Date]":case"[object Symbol]":return Object.is(r.valueOf(),i.valueOf());case"[object RegExp]":return r.source===i.source&&r.flags===i.flags;case"[object Function]":return r===i}let l=(s=s??new Map).get(r),c=s.get(i);if(null!=l&&null!=c)return l===i;s.set(r,i),s.set(i,r);try{switch(o){case"[object Map]":if(r.size!==i.size)return!1;for(let[t,o]of r.entries())if(!i.has(t)||!e(o,i.get(t),t,r,i,s,n))return!1;return!0;case"[object Set]":{if(r.size!==i.size)return!1;let t=Array.from(r.values()),o=Array.from(i.values());for(let a=0;a<t.length;a++){let l=t[a],c=o.findIndex(t=>e(l,t,void 0,r,i,s,n));if(-1===c)return!1;o.splice(c,1)}return!0}case"[object Array]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":case"[object BigUint64Array
24]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object BigInt64Array]":case"[object Float32Array]":case"[object Float64Array]":if("u">typeof d1&&d1.isBuffer(r)!==d1.isBuffer(i)||r.length!==i.length)return!1;for(let t=0;t<r.length;t++)if(!e(r[t],i[t],t,r,i,s,n))return!1;return!0;case"[object ArrayBuffer]":return r.byteLength===i.byteLength&&t(new Uint8Array(r),new Uint8Array(i),s,n);case"[object DataView]":return r.byteLength===i.byteLength&&r.byteOffset===i.byteOffset&&t(new Uint8Array(r),new Uint8Array(i),s,n);case"[object Error]":return r.name===i.name&&r.message===i.message;case pX:{if(!(t(r.constructor,i.constructor,s,n)||p0(r)&&p0(i)))return!1;let o=[...Object.keys(r),...pZ(r)],a=[...Object.keys(i),...pZ(i)];if(o.length!==a.length)return!1;for(let t=0;t<o.length;t++){let a=o[t],l=r[a];if(!Object.hasOwn(i,a))return!1;let c=i[a];if(!e(l,c,a,r,i,s,n))return!1}return!0}default:return!1}}finally{s.delete(r),s.delete(i)}}(t,r,o,a)}(i,e[r],void 0,void 0,void 0,void 0,p1)})):this.values)),p9(this,"update",async(e,t)=>{this.isInitialized(),this.logger.debug("Updating value"),this.logger.trace({type:"method",method:"update",key:e,update:t});let r=p4(p4({},this.getData(e)),t);this.map.set(e,r),await this.persist()}),p9(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),this.addToRecentlyDeleted(e),await this.persist())}),this.logger=e7(t,this.name),this.storagePrefix=i,this.getKey=s}get context(){return e9(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}get length(){return this.map.size}get keys(){return Array.from(this.map.keys())}get values(){return Array.from(this.map.values())}addToRecentlyDeleted(e){this.recentlyDeleted.push(e),this.recentlyDeleted.length>=this.recentlyDeletedLimit&&this.recentlyDeleted.splice(0,this.recentlyDeletedLimit/2)}async setDataStore(e){await this.core.storage.setItem(this.storageKey,e)}async getDataStore(){return await this.core.storage.getItem(this.storageKey)}getData(e){let t=this.map.get(e);if(!t){if(this.recentlyDeleted.includes(e)){let{message:t}=ab("MISSING_OR_INVALID",`Record was recently deleted - ${this.name}: ${e}`);throw this.logger.error(t),Error(t)}let{message:t}=ab("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.error(t),Error(t)}return t}async persist(){await this.setDataStore(this.values)}async restore(){try{let e=await this.getDataStore();if(typeof e>"u"||!e.length)return;if(this.map.size){let{message:e}=ab("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),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){let{message:e}=ab("NOT_INITIALIZED",this.name);throw Error(e)}}}var ge=Object.defineProperty,gt=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?ge(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class gr{constructor(e,t){this.core=e,this.logger=t,gt(this,"name","pairing"),gt(this,"version","0.3"),gt(this,"events",new q),gt(this,"pairings"),gt(this,"initialized",!1),gt(this,"storagePrefix",d6),gt(this,"ignoredPayloadTypes",[1]),gt(this,"registeredMethods",[]),gt(this,"init",async()=>{this.initialized||(await this.pairings.init(),await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0,this.logger.trace("Initialized"))}),gt(this,"register",({methods:e})=>{this.isInitialized(),this.registeredMethods=[...new Set([...this.registeredMethods,...e])]}),gt(this,"create",async e=>{this.isInitialized();let t=uL(),r=await this.core.crypto.setSymKey(t),i=aK(z.FIVE_MINUTES),s={protocol:"irn"},n={topic:r,expiry:i,relay:s,active:!1,methods:e?.methods},o=u6({protocol:this.core.protocol,version:this.core.version,topic:r,symKey:t,relay:s,expiryTimestamp:i,methods:e?.methods});return this.events.emit(fy,n),this.core.expirer.set(r,i),await this.pairings.set(r,n),await this.core.relayer.subscribe(r,{transportType:e?.transportType,internal:e?.internal}),{topic:r,uri:o}}),gt(this,"pair",async e=>{let t;this.isInitialized();let r=this.core.eventClient.createEvent({properties:{topic:e?.uri,trace:["pairing_started"]}});this.isValidPair(e,r);let{topic:i,symKey:s,relay:n,expiryTimestamp:o,methods:a}=u8(e.uri);if(r.props.properties.topic=i,r.addTrace("pairing_uri_validation_success"),r.addTrace("pairing_uri_not_expired"),this.pairings.keys.includes(i)){if(t=this.pairings.get(i),r.addTrace("existing_pairing"),t.active)throw r.setError("active_pairing_already_exists"),Error(`Pairing already exists: ${i}. Please try again with a new connection URI.`);r.addTrace("pairing_not_expired")}let l=o||aK(z.FIVE_MINUTES),c={topic:i,relay:n,expiry:l,active:!1,methods:a};this.core.expirer.set(i,l),await this.pairings.set(i,c),r.addTrace("store_new_pairing"),e.activatePairing&&await this.activate({topic:i}),this.events.emit(fy,c),r.addTrace("emit_inactive_pairing"),this.core.crypto.keychain.has(i)||await this.core.crypto.setSymKey(s,i),r.addTrace("subscribing_pairing_topic");try{await this.core.relayer.confirmOnlineStateOrThrow()}catch{r.setError("no_internet_connection")}try{await this.core.relayer.subscribe(i,{relay:n})}catch(e){throw r.setError("subscribe_pairing_topic_failure"),e}return r.addTrace("subscribe_pairing_topic_success"),c}),gt(this,"activate",async({topic:e})=>{this.isInitialized();let t=aK(z.FIVE_MINUTES);this.core.expirer.set(e,t),await this.pairings.update(e,{active:!0,expiry:t})}),gt(this,"ping",async e=>{this.isInitialized(),await this.isValidPing(e),this.logger.warn("ping() is deprecated and will be removed in the next major release.");let{topic:t}=e;if(this.pairings.keys.includes(t)){let e=await this.sendRequest(t,"wc_pairingPing",{}),{done:r,resolve:i,reject:s}=a$();this.events.once(aW("pairing_ping",e),({error:e})=>{e?s(e):i()}),await r()}}),gt(this,"updateExpiry",async({topic:e,expiry:t})=>{this.isInitialized(),await this.pairings.update(e,{expiry:t})}),gt(this,"updateMetadata",async({topic:e,metadata:t})=>{this.isInitialized(),await this.pairings.update(e,{peerMetadata:t})}),gt(this,"getPairings",()=>(this.isInitialized(),this.pairings.values)),gt(this,"disconnect",async e=>{this.isInitialized(),await this.isValidDisconnect(e);let{topic:t}=e;this.pairings.keys.includes(t)&&(await this.sendRequest(t,"wc_pairingDelete",am("USER_DISCONNECTED")),await this.deletePairing(t))}),gt(this,"formatUriFromPairing",e=>{this.isInitialized();let{topic:t,relay:r,expiry:i,methods:s}=e,n=this.core.crypto.keychain.get(t);return u6({protocol:this.core.protocol,version:this.core.version,topic:t,symKey:n,relay:r,expiryTimestamp:i,methods:s})}),gt(this,"sendRequest",async(e,t,r)=>{let i=dM(t,r),s=await this.core.crypto.encode(e,i),n=fg[t].req;return this.core.history.set(e,i),this.core.relayer.publish(e,s,n),i.id}),gt(this,"sendResult",async(e,t,r)=>{let i=dq(e,r),s=await this.core.crypto.encode(t,i),n=fg[(await this.core.history.get(t,e)).request.method].res;await this.core.relayer.publish(t,s,n),await this.core.history.resolve(i)}),gt(this,"sendError",async(e,t,r)=>{let i=d$(e,r),s=await this.core.crypto.encode(t,i),n=(await this.core.history.get(t,e)).request.method,o=fg[n]?fg[n].res:fg.unregistered_method.res;await this.core.relayer.publish(t,s,o),await this.core.history.resolve(i)}),gt(this,"deletePairing",async(e,t)=>{await this.core.relayer.unsubscribe(e),await Promise.all([this.pairings.delete(e,am("USER_DISCONNECTED")),this.core.crypto.deleteSymKey(e),t?Promise.resolve():this.core.expirer.del(e)])}),gt(this,"cleanup",async()=>{let e=this.pairings.getAll().filter(e=>aH(e.expiry));await Promise.all(e.map(e=>this.deletePairing(e.topic)))}),gt(this,"onRelayEventRequest",async e=>{let{topic:t,payload:r}=e;switch(r.method){case"wc_pairingPing":return await this.onPairingPingRequest(t,r);case"wc_pairingDelete":return await this.onPairingDeleteRequest(t,r);default:return await this.onUnknownRpcMethodRequest(t,r)}}),gt(this,"onRelayEventResponse",async e=>{let{topic:t,payload:r}=e,i=(await this.core.history.get(t,r.id)).request.method;return"wc_pairingPing"===i?this.onPairingPingResponse(t,r):this.onUnknownRpcMethodResponse(i)}),gt(this,"onPairingPingRequest",async(e,t)=>{let{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)}}),gt(this,"onPairingPingResponse",(e,t)=>{let{id:r}=t;setTimeout(()=>{dY(t)?this.events.emit(aW("pairing_ping",r),{}):dZ(t)&&this.events.emit(aW("pairing_ping",r),{error:t.error})},500)}),gt(this,"onPairingDeleteRequest",async(e,t)=>{let{id:r}=t;try{this.isValidDisconnect({topic:e}),await this.deletePairing(e),this.events.emit(fb,{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.logger.error(t)}}),gt(this,"onUnknownRpcMethodRequest",async(e,t)=>{let{id:r,method:i}=t;try{if(this.registeredMethods.includes(i))return;let t=am("WC_METHOD_UNSUPPORTED",i);await this.sendError(r,e,t),this.logger.error(t)}catch(t){await this.sendError(r,e,t),this.logger.error(t)}}),gt(this,"onUnknownRpcMethodResponse",e=>{this.registeredMethods.includes(e)||this.logger.error(am("WC_METHOD_UNSUPPORTED",e))}),gt(this,"isValidPair",(e,t)=>{var r;if(!dE(e)){let{message:r}=ab("MISSING_OR_INVALID",`pair() params: ${e}`);throw t.setError(fA),Error(r)}if(!function(e){function t(e){try{return"u">typeof new URL(e)}catch{return!1}}try{if(dp(e,!1)){if(t(e))return!0;let r=a0(e);return t(r)}}catch{}return!1}(e.uri)){let{message:r}=ab("MISSING_OR_INVALID",`pair() uri: ${e.uri}`);throw t.setError(fA),Error(r)}let i=u8(e?.uri);if(!(null!=(r=i?.relay)&&r.protocol)){let{message:e}=ab("MISSING_OR_INVALID","pair() uri#relay-protocol");throw t.setError(fA),Error(e)}if(!(null!=i&&i.symKey)){let{message:e}=ab("MISSING_OR_INVALID","pair() uri#symKey");throw t.setError(fA),Error(e)}if(null!=i&&i.expiryTimestamp&&(0,z.toMiliseconds)(i?.expiryTimestamp)<Date.now()){t.setError("pairing_expired");let{message:e}=ab("EXPIRED","pair() URI has expired. Please try again with a new connection URI.");throw Error(e)}}),gt(this,"isValidPing",async e=>{if(!dE(e)){let{message:t}=ab("MISSING_OR_INVALID",`ping() params: ${e}`);throw Error(t)}let{topic:t}=e;await this.isValidPairingTopic(t)}),gt(this,"isValidDisconnect",async e=>{if(!dE(e)){let{message:t}=ab("MISSING_OR_INVALID",`disconnect() params: ${e}`);throw Error(t)}let{topic:t}=e;await this.isValidPairingTopic(t)}),gt(this,"isValidPairingTopic",async e=>{if(!dp(e,!1)){let{message:t}=ab("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw Error(t)}if(!this.pairings.keys.includes(e)){let{message:t}=ab("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw Error(t)}if(aH(this.pairings.get(e).expiry)){await this.deletePairing(e);let{message:t}=ab("EXPIRED",`pairing topic: ${e}`);throw Error(t)}}),this.core=e,this.logger=e7(t,this.name),this.pairings=new p7(this.core,this.logger,this.name,this.storagePrefix)}get context(){return e9(this.logger)}isInitialized(){if(!this.initialized){let{message:e}=ab("NOT_INITIALIZED",this.name);throw Error(e)}}registerRelayerEvents(){this.core.relayer.on(fe,async e=>{let{topic:t,message:r,transportType:i}=e;if(this.pairings.keys.includes(t)&&i!==fc&&!this.ignoredPayloadTypes.includes(this.core.crypto.getPayloadType(r)))try{let e=await this.core.crypto.decode(t,r);dW(e)?(this.core.history.set(t,e),await this.onRelayEventRequest({topic:t,payload:e})):dG(e)&&(await this.core.history.resolve(e),await this.onRelayEventResponse({topic:t,payload:e}),this.core.history.delete(t,e.id)),await this.core.relayer.messages.ack(t,r)}catch(e){this.logger.error(e)}})}registerExpirerEvents(){this.core.expirer.on(fI,async e=>{let{topic:t}=aF(e.target);t&&this.pairings.keys.includes(t)&&(await this.deletePairing(t,!0),this.events.emit("pairing_expire",{topic:t}))})}}var gi=Object.defineProperty,gs=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?gi(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class gn extends tn{constructor(e,t){super(e,t),this.core=e,this.logger=t,gs(this,"records",new Map),gs(this,"events",new q.EventEmitter),gs(this,"name","history"),gs(this,"version","0.3"),gs(this,"cac
24hed",[]),gs(this,"initialized",!1),gs(this,"storagePrefix",d6),gs(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)}),gs(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;let i={id:t.id,topic:e,request:{method:t.method,params:t.params||null},chainId:r,expiry:aK(z.THIRTY_DAYS)};this.records.set(i.id,i),this.persist(),this.events.emit(fm,i)}),gs(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;let t=await this.getRecord(e.id);typeof t.response>"u"&&(t.response=dZ(e)?{error:e.error}:{result:e.result},this.records.set(t.id,t),this.persist(),this.events.emit(fw,t))}),gs(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))),gs(this,"delete",(e,t)=>{this.isInitialized(),this.logger.debug("Deleting record"),this.logger.trace({type:"method",method:"delete",id:t}),this.values.forEach(r=>{r.topic===e&&("u">typeof t&&r.id!==t||(this.records.delete(r.id),this.events.emit(fv,r)))}),this.persist()}),gs(this,"exists",async(e,t)=>(this.isInitialized(),!!this.records.has(t)&&(await this.getRecord(t)).topic===e)),gs(this,"on",(e,t)=>{this.events.on(e,t)}),gs(this,"once",(e,t)=>{this.events.once(e,t)}),gs(this,"off",(e,t)=>{this.events.off(e,t)}),gs(this,"removeListener",(e,t)=>{this.events.removeListener(e,t)}),this.logger=e7(t,this.name)}get context(){return e9(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+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(){let e=[];return this.values.forEach(t=>{if("u">typeof t.response)return;let r={topic:t.topic,request:dM(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();let t=this.records.get(e);if(!t){let{message:t}=ab("NO_MATCHING_KEY",`${this.name}: ${e}`);throw Error(t)}return t}async persist(){await this.setJsonRpcRecords(this.values),this.events.emit("history_sync")}async restore(){try{let e=await this.getJsonRpcRecords();if(typeof e>"u"||!e.length)return;if(this.records.size){let{message:e}=ab("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),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(fm,e=>{this.logger.info(`Emitting ${fm}`),this.logger.debug({type:"event",event:fm,record:e})}),this.events.on(fw,e=>{this.logger.info(`Emitting ${fw}`),this.logger.debug({type:"event",event:fw,record:e})}),this.events.on(fv,e=>{this.logger.info(`Emitting ${fv}`),this.logger.debug({type:"event",event:fv,record:e})}),this.core.heartbeat.on(H,()=>{this.cleanup()})}cleanup(){try{this.isInitialized();let e=!1;this.records.forEach(t=>{(0,z.toMiliseconds)(t.expiry||0)-Date.now()<=0&&(this.logger.info(`Deleting expired history log: ${t.id}`),this.records.delete(t.id),this.events.emit(fv,t,!1),e=!0)}),e&&this.persist()}catch(e){this.logger.warn(e)}}isInitialized(){if(!this.initialized){let{message:e}=ab("NOT_INITIALIZED",this.name);throw Error(e)}}}var go=Object.defineProperty,ga=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?go(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class gl extends tu{constructor(e,t){super(e,t),this.core=e,this.logger=t,ga(this,"expirations",new Map),ga(this,"events",new q.EventEmitter),ga(this,"name","expirer"),ga(this,"version","0.3"),ga(this,"cac
24hed",[]),ga(this,"initialized",!1),ga(this,"storagePrefix",d6),ga(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)}),ga(this,"has",e=>{try{let t=this.formatTarget(e);return"u">typeof this.getExpiration(t)}catch{return!1}}),ga(this,"set",(e,t)=>{this.isInitialized();let r=this.formatTarget(e),i={target:r,expiry:t};this.expirations.set(r,i),this.checkExpiry(r,i),this.events.emit(fE,{target:r,expiration:i})}),ga(this,"get",e=>{this.isInitialized();let t=this.formatTarget(e);return this.getExpiration(t)}),ga(this,"del",e=>{if(this.isInitialized(),this.has(e)){let t=this.formatTarget(e),r=this.getExpiration(t);this.expirations.delete(t),this.events.emit(fx,{target:t,expiration:r})}}),ga(this,"on",(e,t)=>{this.events.on(e,t)}),ga(this,"once",(e,t)=>{this.events.once(e,t)}),ga(this,"off",(e,t)=>{this.events.off(e,t)}),ga(this,"removeListener",(e,t)=>{this.events.removeListener(e,t)}),this.logger=e7(t,this.name)}get context(){return e9(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+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 aV("topic",e);if("number"==typeof e)return aV("id",e);let{message:t}=ab("UNKNOWN_TYPE",`Target type: ${typeof e}`);throw 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("expirer_sync")}async restore(){try{let e=await this.getExpirations();if(typeof e>"u"||!e.length)return;if(this.expirations.size){let{message:e}=ab("RESTORE_WILL_OVERRIDE",this.name);throw this.logger.error(e),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){let t=this.expirations.get(e);if(!t){let{message:t}=ab("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.warn(t),Error(t)}return t}checkExpiry(e,t){let{expiry:r}=t;(0,z.toMiliseconds)(r)-Date.now()<=0&&this.expire(e,t)}expire(e,t){this.expirations.delete(e),this.events.emit(fI,{target:e,expiration:t})}checkExpirations(){this.core.relayer.connected&&this.expirations.forEach((e,t)=>this.checkExpiry(t,e))}registerEventListeners(){this.core.heartbeat.on(H,()=>this.checkExpirations()),this.events.on(fE,e=>{this.logger.info(`Emitting ${fE}`),this.logger.debug({type:"event",event:fE,data:e}),this.persist()}),this.events.on(fI,e=>{this.logger.info(`Emitting ${fI}`),this.logger.debug({type:"event",event:fI,data:e}),this.persist()}),this.events.on(fx,e=>{this.logger.info(`Emitting ${fx}`),this.logger.debug({type:"event",event:fx,data:e}),this.persist()})}isInitialized(){if(!this.initialized){let{message:e}=ab("NOT_INITIALIZED",this.name);throw Error(e)}}}var gc=Object.defineProperty,gh=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?gc(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class gu extends td{constructor(e,t,r){super(e,t,r),this.core=e,this.logger=t,this.store=r,gh(this,"name","verify-api"),gh(this,"abortController"),gh(this,"isDevEnv"),gh(this,"verifyUrlV3",fO),gh(this,"storagePrefix",d6),gh(this,"version",2),gh(this,"publicKey"),gh(this,"fetchPromise"),gh(this,"init",async()=>{var e;this.isDevEnv||(this.publicKey=await this.store.getItem(this.storeKey),this.publicKey&&(0,z.toMiliseconds)(null==(e=this.publicKey)?void 0:e.expiresAt)<Date.now()&&(this.logger.debug("verify v2 public key expired"),await this.removePublicKey()))}),gh(this,"register",async e=>{if(!aB()||this.isDevEnv)return;let t=window.location.origin,{id:r,decryptedId:i}=e,s=`${this.verifyUrlV3}/attestation?projectId=${this.core.projectId}&origin=${t}&id=${r}&decryptedId=${i}`;try{let e=(0,iq.getDocument)(),t=this.startAbortTimer(5*z.ONE_SECOND),i=await new Promise((i,n)=>{let o=()=>{window.removeEventListener("message",l),e.body.removeChild(a),n("attestation aborted")};this.abortController.signal.addEventListener("abort",o);let a=e.createElement("iframe");a.src=s,a.style.display="none",a.addEventListener("error",o,{signal:this.abortController.signal});let l=s=>{if(s.data&&"string"==typeof s.data)try{let n=JSON.parse(s.data);if("verify_attestation"===n.type){if(iA(n.attestation).payload.id!==r)return;clearInterval(t),e.body.removeChild(a),this.abortController.signal.removeEventListener("abort",o),window.removeEventListener("message",l),i(null===n.attestation?"":n.attestation)}}catch(e){this.logger.warn(e)}};e.body.appendChild(a),window.addEventListener("message",l,{signal:this.abortController.signal})});return this.logger.debug(i,"jwt attestation"),i}catch(e){this.logger.warn(e)}return""}),gh(this,"resolve",async e=>{if(this.isDevEnv)return"";let{attestationId:t,hash:r,encryptedId:i}=e;if(""===t)return void this.logger.debug("resolve: attestationId is empty, skipping");if(t){if(iA(t).payload.id!==i)return;let e=await this.isValidJwtAttestation(t);
24if(e)return e.isVerified?e:void this.logger.warn("resolve: jwt attestation: origin url not verified")}if(!r)return;let s=this.getVerifyUrl(e?.verifyUrl);return this.fetchAttestation(r,s)}),gh(this,"fetchAttestation",async(e,t)=>{this.logger.debug(`resolving attestation: ${e} from url: ${t}`);let r=this.startAbortTimer(5*z.ONE_SECOND),i=await fetch(`${t}/attestation/${e}?v2Supported=true`,{signal:this.abortController.signal});return clearTimeout(r),200===i.status?await i.json():void 0}),gh(this,"getVerifyUrl",e=>{let t=e||fS;return f_.includes(t)||(this.logger.info(`verify url: ${t}, not included in trusted list, assigning default: ${fS}`),t=fS),t}),gh(this,"fetchPublicKey",async()=>{try{this.logger.debug(`fetching public key from: ${this.verifyUrlV3}`);let e=this.startAbortTimer(z.FIVE_SECONDS),t=await fetch(`${this.verifyUrlV3}/public-key`,{signal:this.abortController.signal});return clearTimeout(e),await t.json()}catch(e){this.logger.warn(e)}}),gh(this,"persistPublicKey",async e=>{this.logger.debug(e,"persisting public key to local storage"),await this.store.setItem(this.storeKey,e),this.publicKey=e}),gh(this,"removePublicKey",async()=>{this.logger.debug("removing verify v2 public key from storage"),await this.store.removeItem(this.storeKey),this.publicKey=void 0}),gh(this,"isValidJwtAttestation",async e=>{let t=await this.getPublicKey();try{if(t)return this.validateAttestation(e,t)}catch(e){this.logger.error(e),this.logger.warn("error validating attestation")}let r=await this.fetchAndPersistPublicKey();try{if(r)return this.validateAttestation(e,r)}catch(e){this.logger.error(e),this.logger.warn("error validating attestation")}}),gh(this,"getPublicKey",async()=>this.publicKey?this.publicKey:await this.fetchAndPersistPublicKey()),gh(this,"fetchAndPersistPublicKey",async()=>{if(this.fetchPromise)return await this.fetchPromise,this.publicKey;this.fetchPromise=new Promise(async e=>{let t=await this.fetchPublicKey();t&&(await this.persistPublicKey(t),e(t))});let e=await this.fetchPromise;return this.fetchPromise=void 0,e}),gh(this,"validateAttestation",(e,t)=>{let r=function(e,t){let r,i,[s,n,o]=e.split("."),a=ah.from(uz(o),"base64");if(64!==a.length)throw Error("Invalid signature length");let l=a.slice(0,32),c=a.slice(32,64),h=ci(`${s}.${n}`),u=(r=ah.from(t.x,"base64"),i=ah.from(t.y,"base64"),n1([new Uint8Array([4]),r,i]));if(!uR.verify(n1([l,c]),h,u))throw Error("Invalid signature");return iA(e).payload}(e,t.publicKey),i={hasExpired:(0,z.toMiliseconds)(r.exp)<Date.now(),payload:r};if(i.hasExpired)throw this.logger.warn("resolve: jwt attestation expired"),Error("JWT attestation expired");return{origin:i.payload.origin,isScam:i.payload.isScam,isVerified:i.payload.isVerified}}),this.logger=e7(t,this.name),this.abortController=new AbortController,this.isDevEnv=aX(),this.init()}get storeKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//verify:public:key"}get context(){return e9(this.logger)}startAbortTimer(e){return this.abortController=new AbortController,setTimeout(()=>this.abortController.abort(),(0,z.toMiliseconds)(e))}}var gd=Object.defineProperty,gf=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?gd(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class gp extends tf{constructor(e,t){super(e,t),this.projectId=e,this.logger=t,gf(this,"context","echo"),gf(this,"registerDeviceToken",async e=>{let{clientId:t,token:r,notificationType:i,enableEncrypted:s=!1}=e,n=`https://echo.walletconnect.com/${this.projectId}/clients`;await fetch(n,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({client_id:t,type:i,token:r,always_raw:s})})}),this.logger=e7(t,this.context)}}var gg=Object.defineProperty,gy=Object.getOwnPropertySymbols,gb=Object.prototype.hasOwnProperty,gm=Object.prototype.propertyIsEnumerable,gw=(e,t,r)=>t in e?gg(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,gv=(e,t)=>{for(var r in t||(t={}))gb.call(t,r)&&gw(e,r,t[r]);if(gy)for(var r of gy(t))gm.call(t,r)&&gw(e,r,t[r]);return e},gE=(e,t,r)=>gw(e,"symbol"!=typeof t?t+"":t,r);class gx extends tp{constructor(e,t,r=!0){super(e,t,r),this.core=e,this.logger=t,gE(this,"context","event-client"),gE(this,"storagePrefix",d6),gE(this,"storageVersion",.1),gE(this,"events",new Map),gE(this,"shouldPersist",!1),gE(this,"init",async()=>
24{if(!aX())try{let e={eventId:aQ(),timestamp:Date.now(),domain:this.getAppDomain(),props:{event:"INIT",type:"",properties:{client_id:await this.core.crypto.getClientId(),user_agent:aL(this.core.relayer.protocol,this.core.relayer.version,fl)}}};await this.sendEvent([e])}catch(e){this.logger.warn(e)}}),gE(this,"createEvent",e=>{let{event:t="ERROR",type:r="",properties:{topic:i,trace:s}}=e,n=aQ(),o=this.core.projectId||"",a=gv({eventId:n,timestamp:Date.now(),props:{event:t,type:r,properties:{topic:i,trace:s}},bundleId:o,domain:this.getAppDomain()},this.setMethods(n));return this.telemetryEnabled&&(this.events.set(n,a),this.shouldPersist=!0),a}),gE(this,"getEvent",e=>{let{eventId:t,topic:r}=e;if(t)return this.events.get(t);let i=Array.from(this.events.values()).find(e=>e.props.properties.topic===r);if(i)return gv(gv({},i),this.setMethods(i.eventId))}),gE(this,"deleteEvent",e=>{let{eventId:t}=e;this.events.delete(t),this.shouldPersist=!0}),gE(this,"setEventListeners",()=>{this.core.heartbeat.on(H,async()=>{this.shouldPersist&&await this.persist(),this.events.forEach(e=>{(0,z.fromMiliseconds)(Date.now())-(0,z.fromMiliseconds)(e.timestamp)>86400&&(this.events.delete(e.eventId),this.shouldPersist=!0)})})}),gE(this,"setMethods",e=>({addTrace:t=>this.addTrace(e,t),setError:t=>this.setError(e,t)})),gE(this,"addTrace",(e,t)=>{let r=this.events.get(e);r&&(r.props.properties.trace.push(t),this.events.set(e,r),this.shouldPersist=!0)}),gE(this,"setError",(e,t)=>{let r=this.events.get(e);r&&(r.props.type=t,r.timestamp=Date.now(),this.events.set(e,r),this.shouldPersist=!0)}),gE(this,"persist",async()=>{await this.core.storage.setItem(this.storageKey,Array.from(this.events.values())),this.shouldPersist=!1}),gE(this,"restore",async()=>{try{let e=await this.core.storage.getItem(this.storageKey)||[];if(!e.length)return;e.forEach(e=>{this.events.set(e.eventId,gv(gv({},e),this.setMethods(e.eventId)))})}catch(e){this.logger.warn(e)}}),gE(this,"submit",async()=>{if(!this.telemetryEnabled||0===this.events.size)return;let e=[];for(let[t,r]of this.events)r.props.type&&e.push(r);if(0!==e.length)try{if((await this.sendEvent(e)).ok)for(let t of e)this.events.delete(t.eventId),this.shouldPersist=!0}catch(e){this.logger.warn(e)}}),gE(this,"sendEvent",async e=>{let t=this.getAppDomain()?"":"&sp=desktop";return await fetch(`https://pulse.walletconnect.org/batch?projectId=${this.core.projectId}&st=events_sdk&sv=js-${fl}${t}`,{method:"POST",body:JSON.stringify(e)})}),gE(this,"getAppDomain",()=>aD().url),this.logger=e7(t,this.context),this.telemetryEnabled=r,r?this.restore().then(async()=>{await this.submit(),this.setEventListeners()}):this.persist()}get storageKey(){return this.storagePrefix+this.storageVersion+this.core.customStoragePrefix+"//"+this.context}}var gI=Object.defineProperty,gS=Object.getOwnPropertySymbols,gO=Object.prototype.hasOwnProperty,g_=Object.prototype.propertyIsEnumerable,gA=(e,t,r)=>t in e?gI(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,gP=(e,t)=>{for(var r in t||(t={}))gO.call(t,r)&&gA(e,r,t[r]);if(gS)for(var r of gS(t))g_.call(t,r)&&gA(e,r,t[r]);return e},gT=(e,t,r)=>gA(e,"symbol"!=typeof t?t+"":t,r);class gN extends ti{constructor(e){var t;super(e),gT(this,"protocol","wc"),gT(this,"version",2),gT(this,"name",d8),gT(this,"relayUrl"),gT(this,"projectId"),gT(this,"customStoragePrefix"),gT(this,"events",new q.EventEmitter),gT(this,"logger"),gT(this,"heartbeat"),gT(this,"relayer"),gT(this,"crypto"),gT(this,"storage"),gT(this,"history"),gT(this,"expirer"),gT(this,"pairing"),gT(this,"verify"),gT(this,"echoClient"),gT(this,"linkModeSupportedApps"),gT(this,"eventClient"),gT(this,"initialized",!1),gT(this,"logChunkController"),gT(this,"on",(e,t)=>this.events.on(e,t)),gT(this,"once",(e,t)=>this.events.once(e,t)),gT(this,"off",(e,t)=>this.events.off(e,t)),gT(this,"removeListener",(e,t)=>this.events.removeListener(e,t)),gT(this,"dispatchEnvelope",({topic:e,message:t,sessionExists:r})=>{if(!e||!t)return;let i={topic:e,message:t,publishedAt:Date.now(),transportType:fc};this.relayer.onLinkMessageEvent(i,{sessionExists:r})});const r=this.getGlobalCore(e?.customStoragePrefix);if(r)try{return this.customStoragePrefix=r.customStoragePrefix,this.logger=r.logger,this.heartbeat=r.heartbeat,this.crypto=r.crypto,this.history=r.history,this.expirer=r.expirer,this.storage=r.storage,this.relayer=r.relayer,this.pairing=r.pairing,this.verify=r.verify,this.echoClient=r.echoClient,this.linkModeSupportedApps=r.linkModeSupportedApps,this.eventClient=r.eventClient,this.initialized=r.initialized,this.logChunkController=r.logChunkController,r}catch(e){console.warn("Failed to copy global core",e)}this.projectId=e?.projectId,this.relayUrl=e?.relayUrl||d7,this.customStoragePrefix=null!=e&&e.customStoragePrefix?`:${e.customStoragePrefix}`:"";const{logger:i,chunkLoggerController:s}=te({opts:function(e){return e1(e4({},e),e2({level:e?.level||"info"}))}({level:"string"==typeof e?.logger&&e.logger?e.logger:"error",name:d8}),maxSizeInBytes:e?.maxLogBlobSizeInBytes,loggerOverride:e?.logger});this.logChunkController=s,null!=(t=this.logChunkController)&&t.downloadLogsBlobInBrowser&&(window.downloadLogsBlobInBrowser=async()=>{var e,t;null!=(e=this.logChunkController)&&e.downloadLogsBlobInBrowser&&(null==(t=this.logChunkController)||t.downloadLogsBlobInBrowser({clientId:await this.crypto.getClientId()}))}),this.logger=e7(i,this.name),this.heartbeat=new W,this.crypto=new pc(this,this.logger,e?.keychain),this.history=new gn(this,this.logger),this.expirer=new gl(this,this.logger),this.storage=null!=e&&e.storage?e.storage:new eE(gP(gP({},d3),e?.storageOptions)),this.relayer=new pY({core:this,logger:this.logger,relayUrl:this.relayUrl,projectId:this.projectId}),this.pairing=new gr(this,this.logger),this.verify=new gu(this,this.logger,this.storage),this.echoClient=new gp(this.projectId||"",this.logger),this.linkModeSupportedApps=[],this.eventClient=new gx(this,this.logger,e?.telemetryEnabled),this.setGlobalCore(this)}static async init(e){let t=new gN(e);await t.initialize();let r=await t.crypto.getClientId();return await t.storage.setItem("WALLETCONNECT_CLIENT_ID",r),t}get context(){return e9(this.logger)}async start(){this.initialized||await this.initialize()}async getLogsBlob(){var e;return null==(e=this.logChunkController)?void 0:e.logsToBlob({clientId:await this.crypto.getClientId()})}async addLinkModeSupportedApp(e){this.linkModeSupportedApps.includes(e)||(this.linkModeSupportedApps.push(e),await this.storage.setItem(fd,this.linkModeSupportedApps))}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(
24),await this.pairing.init(),this.linkModeSupportedApps=await this.storage.getItem(fd)||[],this.initialized=!0,this.logger.info("Core Initialization Success")}catch(e){throw this.logger.warn(e,`Core Initialization Failure at epoch ${Date.now()}`),this.logger.error(e.message),e}}getGlobalCore(e=""){try{if(this.isGlobalCoreDisabled())return;let t=`_walletConnectCore_${e}`,r=`${t}_count`;return globalThis[r]=(globalThis[r]||0)+1,globalThis[r]>1&&console.warn(`WalletConnect Core is already initialized. This is probably a mistake and can lead to unexpected behavior. Init() was called ${globalThis[r]} times.`),globalThis[t]}catch(e){console.warn("Failed to get global WalletConnect core",e);return}}setGlobalCore(e){var t;try{if(this.isGlobalCoreDisabled())return;let r=`_walletConnectCore_${(null==(t=e.opts)?void 0:t.customStoragePrefix)||""}`;globalThis[r]=e}catch(e){console.warn("Failed to set global WalletConnect core",e)}}isGlobalCoreDisabled(){try{return"u">typeof d2&&"true"===d2.env.DISABLE_GLOBAL_CORE}catch{return!0}}}let gR="client",gC=`wc@2:${gR}:`,gB="WALLETCONNECT_DEEPLINK_CHOICE",gU="Proposal expired",gk=z.SEVEN_DAYS,gD={wc_sessionPropose:{req:{ttl:z.FIVE_MINUTES,prompt:!0,tag:1100},res:{ttl:z.FIVE_MINUTES,prompt:!1,tag:1101},reject:{ttl:z.FIVE_MINUTES,prompt:!1,tag:1120},autoReject:{ttl:z.FIVE_MINUTES,prompt:!1,tag:1121}},wc_sessionSettle:{req:{ttl:z.FIVE_MINUTES,prompt:!1,tag:1102},res:{ttl:z.FIVE_MINUTES,prompt:!1,tag:1103}},wc_sessionUpdate:{req:{ttl:z.ONE_DAY,prompt:!1,tag:1104},res:{ttl:z.ONE_DAY,prompt:!1,tag:1105}},wc_sessionExtend:{req:{ttl:z.ONE_DAY,prompt:!1,tag:1106},res:{ttl:z.ONE_DAY,prompt:!1,tag:1107}},wc_sessionRequest:{req:{ttl:3*z.FIVE_MINUTES,prompt:!0,tag:1108},res:{ttl:3*z.FIVE_MINUTES,prompt:!1,tag:1109}},wc_sessionEvent:{req:{ttl:z.FIVE_MINUTES,prompt:!0,tag:1110},res:{ttl:z.FIVE_MINUTES,prompt:!1,tag:1111}},wc_sessionDelete:{req:{ttl:z.ONE_DAY,prompt:!1,tag:1112},res:{ttl:z.ONE_DAY,prompt:!1,tag:1113}},wc_sessionPing:{req:{ttl:z.ONE_DAY,prompt:!1,tag:1114},res:{ttl:z.ONE_DAY,prompt:!1,tag:1115}},wc_sessionAuthenticate:{req:{ttl:z.ONE_HOUR,prompt:!0,tag:1116},res:{ttl:z.ONE_HOUR,prompt:!1,tag:1117},reject:{ttl:z.FIVE_MINUTES,prompt:!1,tag:1118},autoReject:{ttl:z.FIVE_MINUTES,prompt:!1,tag:1119}}},gL={min:z.FIVE_MINUTES,max:z.SEVEN_DAYS},gj="IDLE",gM="ACTIVE",gq={eth_sendTransaction:{key:""},eth_sendRawTransaction:{key:""},wallet_sendCalls:{key:""},solana_signTransaction:{key:"signature"},solana_signAllTransactions:{key:"transactions"},solana_signAndSendTransaction:{key:"signature"},sui_signAndExecuteTransaction:{key:"digest"},sui_signTransaction:{key:""},hedera_signAndExecuteTransaction:{key:"transactionId"},hedera_executeTransaction:{key:"transactionId"},near_signTransaction:{key:""},near_signTransactions:{key:""},tron_signTransaction:{key:"txID"},xrpl_signTransaction:{key:""},xrpl_signTransactionFor:{key:""},algo_signTxn:{key:""},sendTransfer:{key:"txid"},stacks_stxTransfer:{key:"txId"},polkadot_signTransaction:{key:""},cosmos_signDirect:{key:""}},g$=["wc_sessionPropose","wc_sessionRequest","wc_authRequest","wc_sessionAuthenticate"],gz="[email protected]:auth:",gV=`${gz}:PUB_KEY`;var gF=Object.defineProperty,gK=Object.defineProperties,gH=Object.getOwnPropertyDescriptors,gW=Object.getOwnPropertySymbols,gG=Object.prototype.hasOwnProperty,gY=Object.prototype.propertyIsEnumerable,gZ=(e,t,r)=>t in e?gF(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,gJ=(e,t)=>{for(var r in t||(t={}))gG.call(t,r)&&gZ(e,r,t[r]);if(gW)for(var r of gW(t))gY.call(t,r)&&gZ(e,r,t[r]);return e},gQ=(e,t,r)=>gZ(e,"symbol"!=typeof t?t+"":t,r);class gX extends tm{constructor(e){super(e),gQ(this,"name","engine"),gQ(this,"events",new q),gQ(this,"initialized",!1),gQ(this,"requestQueue",{state:gj,queue:[]}),gQ(this,"sessionRequestQueue",{state:gj,queue:[]}),gQ(this,"emittedSessionRequests",new a1({limit:500})),gQ(this,"requestQueueDelay",z.ONE_SECOND),gQ(this,"expectedPairingMethodMap",new Map),gQ(this,"recentlyDeletedMap",new Map),gQ(this,"recentlyDeletedLimit",200),gQ(this,"relayMessageCache",[]),gQ(this,"pendingSessions",new Map),gQ(this,"init",async()=>{this.initialized||(await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.registerPairingEvents(),await this.registerLinkModeListeners(),this.client.core.pairing.register({methods:Object.keys(gD)}),this.initialized=!0,setTimeout(async()=>{await this.processPendingMessageEvents(),this.sessionRequestQueue.queue=this.getPendingSessionRequests(),this.processSessionRequestQueue()},(0,z.toMiliseconds)(this.requestQueueDelay)))}),gQ(this,"connect",async e=>{var t;this.isInitialized(),await this.confirmOnlineStateOrThrow();let r=gK(gJ({},e),gH({requiredNamespaces:e.requiredNamespaces||{},optionalNamespaces:e.optionalNamespaces||{}}));await this.isValidConnect(r),r.optionalNamespaces=function(e,t){var r,i,s,n,o,a;let l=dc(e),c=dc(t),h={};for(let e of Object.keys(l).concat(Object.keys(c)))h[e]={chains:aG(null==(r=l[e])?void 0:r.chains,null==(i=c[e])?void 0:i.chains),methods:aG(null==(s=l[e])?void 0:s.methods,null==(n=c[e])?void 0:n.methods),events:aG(null==(o=l[e])?void 0:o.events,null==(a=c[e])?void 0:a.events)};return h}(r.requiredNamespaces,r.optionalNamespaces),r.requiredNamespaces={};let{pairingTopic:i,requiredNamespaces:s,optionalNamespaces:n,sessionProperties:o,scopedProperties:a,relays:l,authentication:c,walletPay:h}=r,u=(null==(t=c?.[0])?void 0:t.ttl)||gD.wc_sessionPropose.req.ttl||z.FIVE_MINUTES;this.validateRequestExpiry(u);let d=i,f,p=!1;try{if(d){let e=this.client.core.pairing.pairings.get(d);this.client.logger.warn("connect() with existing pairing topic is deprecated and will be removed in the next major release."),p=e.active}}catch(e){throw this.client.logger.error(`connect() -> pairing.get(${d}) failed`),e}if(!d||!p){let{topic:e,uri:t}=await this.client.core.pairing.create({internal:{skipSubscribe:!0}});d=e,f=t}if(!d){let{message:e}=ab("NO_MATCHING_KEY",`connect() pairing topic: ${d}`);throw Error(e)}let g=await this.client.core.crypto.generateKeyPair(),y=aK(u),b=gJ(gK(gJ(gJ({requiredNamespaces:s,optionalNamespaces:n,relays:l??[{protocol:"irn"}],proposer:{publicKey:g,metadata:this.client.metadata},expiryTimestamp:y,pairingTopic:d},o&&{sessionProperties:o}),a&&{scopedProperties:a}),gH({id:dL()})),(c||h)&&{requests:{authentication:c?.map(e=>{let{domain:t,chains:r,nonce:i,uri:s,exp:n,nbf:o,type:a,statement:l,requestId:c,resources:h,signatureTypes:u}=e;return{domain:t,chains:r,nonce:i,type:a??"caip122",aud:s,version:"1",iat:new Date().toISOString(),exp:n,nbf:o,statement:l,requestId:c,resources:h,signatureTypes:u}}),walletPay:h}}),m=aW("session_connect",b.id),{reject:w,resolve:v,done:E}
24=a$(u,gU),x=({id:e})=>{e===b.id&&(this.client.events.off("proposal_expire",x),this.pendingSessions.delete(b.id),this.events.emit(m,{error:{message:gU,code:0}}))};return this.client.events.on("proposal_expire",x),this.events.once(m,({error:e,session:t})=>{this.client.events.off("proposal_expire",x),e?w(e):t&&v(t)}),await this.setProposal(b.id,b),await this.sendProposeSession({proposal:b,publishOpts:{internal:{throwOnFailedPublish:!0},tvf:{correlationId:b.id}}}).catch(e=>{throw this.deleteProposal(b.id),e}),{uri:f,approval:E}}),gQ(this,"pair",async e=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{return await this.client.core.pairing.pair(e)}catch(e){throw this.client.logger.error("pair() failed"),e}}),gQ(this,"approve",async e=>{var t,r,i;let s=this.client.core.eventClient.createEvent({properties:{topic:null==(t=e?.id)?void 0:t.toString(),trace:[fP]}});try{this.isInitialized(),await this.confirmOnlineStateOrThrow()}catch(e){throw s.setError("no_internet_connection"),e}try{await this.isValidProposalId(e?.id)}catch(t){throw this.client.logger.error(`approve() -> proposal.get(${e?.id}) failed`),s.setError("proposal_not_found"),t}try{await this.isValidApprove(e)}catch(e){throw this.client.logger.error("approve() -> isValidApprove() failed"),s.setError("session_approve_namespace_validation_failure"),e}let{id:n,relayProtocol:o,namespaces:a,sessionProperties:l,scopedProperties:c,sessionConfig:h,proposalRequestsResponses:u}=e,d=this.client.proposal.get(n);this.client.core.eventClient.deleteEvent({eventId:s.eventId});let{pairingTopic:f,proposer:p,requiredNamespaces:g,optionalNamespaces:y}=d,b=null==(r=this.client.core.eventClient)?void 0:r.getEvent({topic:f});b||(b=null==(i=this.client.core.eventClient)?void 0:i.createEvent({type:fP,properties:{topic:f,trace:[fP,"session_namespaces_validation_success"]}}));let m=await this.client.core.crypto.generateKeyPair(),w=p.publicKey,v=await this.client.core.crypto.generateSharedKey(m,w),E=gK(gJ(gJ(gJ({relay:{protocol:o??"irn"},namespaces:a,controller:{publicKey:m,metadata:this.client.metadata},expiry:aK(gk)},l&&{sessionProperties:l}),c&&{scopedProperties:c}),h&&{sessionConfig:h}),gH({proposalRequestsResponses:u}));b.addTrace("subscribing_session_topic");try{await this.client.core.relayer.subscribe(v,{transportType:fh,internal:{skipSubscribe:!0}})}catch(e){throw b.setError("subscribe_session_topic_failure"),e}b.addTrace("subscribe_session_topic_success");let x=gK(gJ({},E),gH({topic:v,requiredNamespaces:g,optionalNamespaces:y,pairingTopic:f,acknowledged:!1,self:E.controller,peer:{publicKey:p.publicKey,metadata:p.metadata},controller:m,transportType:fh,authentication:u?.authentication,walletPayResult:u?.walletPay}));await this.client.session.set(v,x),b.addTrace("store_session");try{await this.sendApproveSession({sessionTopic:v,proposal:d,pairingProposalResponse:{relay:{protocol:o??"irn"},responderPublicKey:m},sessionSettleRequest:E,publishOpts:{internal:{throwOnFailedPublish:!0},tvf:gJ({correlationId:n},this.getTVFApproveParams(x))}}),b.addTrace("session_approve_publish_success")}catch(e){throw this.client.logger.error(e),this.client.session.delete(v,am("USER_DISCONNECTED")),await this.client.core.relayer.unsubscribe(v),e}return this.client.core.eventClient.deleteEvent({eventId:b.eventId}),await this.client.core.pairing.updateMetadata({topic:f,metadata:p.metadata}),await this.deleteProposal(n),await this.client.core.pairing.activate({topic:f}),await this.setExpiry(v,aK(gk)),{topic:v,acknowledged:()=>Promise.resolve(this.client.session.get(v))}}),gQ(this,"reject",async e=>{let t;this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidReject(e)}catch(e){throw this.client.logger.error("reject() -> isValidReject() failed"),e}let{id:r,reason:i}=e;try{t=this.client.proposal.get(r).pairingTopic}catch(e){throw this.client.logger.error(`reject() -> proposal.get(${r}) failed`),e}t&&await this.sendError({id:r,topic:t,error:i,rpcOpts:gD.wc_sessionPropose.reject}),await this.deleteProposal(r)}),gQ(this,"update",async e=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidUpdate(e)}catch(e){throw this.client.logger.error("update() -> isValidUpdate() failed"),e}let{topic:t,namespaces:r}=e,{done:i,resolve:s,reject:n}=a$(z.FIVE_MINUTES,"Session update request expired without receiving any acknowledgement"),o=dL(),a=dj().toString(),l=this.client.session.get(t).namespaces;return this.events.once(aW("session_update",o),({error:e})=>{e?n(e):s()}),await this.client.session.update(t,{namespaces:r}),await this.sendRequest({topic:t,method:"wc_sessionUpdate",params:{namespaces:r},throwOnFailedPublish:!0,clientRpcId:o,relayRpcId:a}).catch(e=>{this.client.logger.error(e),this.client.session.update(t,{namespaces:l}),n(e)}),{acknowledged:i}}),gQ(this,"extend",async e=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidExtend(e)}catch(e){throw this.client.logger.error("extend() -> isValidExtend() failed"),e}let{topic:t}=e,r=dL(),{done:i,resolve:s,reject:n}=a$(z.FIVE_MINUTES,"Session extend request expired without receiving any acknowledgement");return this.events.once(aW("session_extend",r),({error:e})=>{e?n(e):s()}),await this.setExpiry(t,aK(gk)),this.sendRequest({topic:t,method:"wc_sessionExtend",params:{},clientRpcId:r,throwOnFailedPublish:!0}).catch(e=>{n(e)}),{acknowledged:i}}),gQ(this,"request",async e=>{this.isInitialized();try{await this.isValidRequest(e)}catch(e){throw this.client.logger.error("request() -> isValidRequest() failed"),e}let{chainId:t,request:r,topic:i,expiry:s=gD.wc_sessionRequest.req.ttl}=e,n=this.client.session.get(i);n?.transportType===fh&&await this.confirmOnlineStateOrThrow();let o=dL(),a=dj().toString(),{done:l,resolve:c,reject:h}=a$(s,"Request expired. Please try again.");this.events.once(aW("session_request",o),({error:e,result:t})=>{e?h(e):c(t)});let u="wc_sessionRequest",d=this.getAppLinkIfEnabled(n.peer.metadata,n.transportType);if(d)return await this.sendRequest({clientRpcId:o,relayRpcId:a,topic:i,method:u,params:{request:gK(gJ({},r),gH({expiryTimestamp:aK(s)})),chainId:t},expiry:s,throwOnFailedPublish:!0,appLink:d}).catch(e=>h(e)),this.client.events.emit("session_request_sent",{topic:i,request:r,chainId:t,id:o}),await l();let f={request:gK(gJ({},r),gH({expiryTimestamp:aK(s)})),chainId:t};return await Promise.all([new Promise(async e=>{await this.sendRequest({clientRpcId:o,relayRpcId:a,topic:i,method:u,params:f,expiry:s,throwOnFailedPublish:!0,tvf:this.getTVFParams(o,f)}).catch(e=>h(e)),this.client.events.emit("session_request_sent",{topic:i,request:r,chainId:t,id:o}),e()}),new Promise(async e=>{var t;if(!(null!=(t=n.sessionConfig)&&t.disableDeepLink)){let e=await aZ(this.client.core.storage,gB);await aY({id:o,topic:i,wcDeepLink:e})}e()}),l()]).then(e=>e[2])}),gQ(this,"respond",async e=>{var t,r;this.isInitialized();let i=this.client.core.eventClient.createEvent({properties:{topic:e?.topic||(null==(r=null==(t=e?.response)?void 0:t.id)?void 0:r.toString()),trace:["session_request_response_started"]}});try{await this.isValidRespond(e)}catch(e){throw i.addTrace(e?.message),i.setError("session_request_response_validation_failure"),e}i.addTrace("session_request_response_validation_success");let{topic:s,response:n}=e,{id:o}=n,a=this.client.session.get(s);a.transportType===fh&&await this.confirmOnlineStateOrThrow();let l=this.getAppLinkIfEnabled(a.peer.metadata,a.transportType);try{i.addTrace("session_request_response_publish_started"),dY(n)?await this.sendResult({id:o,topic:s,result:n.result,throwOnFailedPublish:!0,appLink:l}
24):dZ(n)&&await this.sendError({id:o,topic:s,error:n.error,appLink:l}),this.cleanupAfterResponse(e)}catch(e){throw i.addTrace(e?.message),i.setError("session_request_response_publish_failure"),e}}),gQ(this,"ping",async e=>{this.isInitialized(),await this.confirmOnlineStateOrThrow();try{await this.isValidPing(e)}catch(e){throw this.client.logger.error("ping() -> isValidPing() failed"),e}let{topic:t}=e;if(this.client.session.keys.includes(t)){let e=dL(),r=dj().toString(),{done:i,resolve:s,reject:n}=a$(z.FIVE_MINUTES,"Ping request expired without receiving any acknowledgement");this.events.once(aW("session_ping",e),({error:e})=>{e?n(e):s()}),await Promise.all([this.sendRequest({topic:t,method:"wc_sessionPing",params:{},throwOnFailedPublish:!0,clientRpcId:e,relayRpcId:r}),i()])}else this.client.core.pairing.pairings.keys.includes(t)&&(this.client.logger.warn("ping() on pairing topic is deprecated and will be removed in the next major release."),await this.client.core.pairing.ping({topic:t}))}),gQ(this,"emit",async e=>{this.isInitialized(),await this.confirmOnlineStateOrThrow(),await this.isValidEmit(e);let{topic:t,event:r,chainId:i}=e,s=dj().toString(),n=dL();await this.sendRequest({topic:t,method:"wc_sessionEvent",params:{event:r,chainId:i},throwOnFailedPublish:!0,relayRpcId:s,clientRpcId:n})}),gQ(this,"disconnect",async e=>{this.isInitialized(),await this.confirmOnlineStateOrThrow(),await this.isValidDisconnect(e);let{topic:t}=e;if(this.client.session.keys.includes(t))await this.sendRequest({topic:t,method:"wc_sessionDelete",params:am("USER_DISCONNECTED"),throwOnFailedPublish:!0}),await this.deleteSession({topic:t,emitEvent:!1});else if(this.client.core.pairing.pairings.keys.includes(t))await this.client.core.pairing.disconnect({topic:t});else{let{message:e}=ab("MISMATCHED_TOPIC",`Session or pairing topic not found: ${t}`);throw Error(e)}}),gQ(this,"find",e=>(this.isInitialized(),this.client.session.getAll().filter(t=>(function(e,t){let{requiredNamespaces:r}=t,i=Object.keys(e.namespaces),s=Object.keys(r),n=!0;return!!aj(s,i)&&(i.forEach(t=>{let{accounts:i,methods:s,events:o}=e.namespaces[t],a=dn(i),l=r[t];aj(ap(t,l),a)&&aj(l.methods,s)&&aj(l.events,o)||(n=!1)}),n)})(t,e)))),gQ(this,"getPendingSessionRequests",()=>this.client.pendingRequest.getAll()),gQ(this,"authenticate",async(e,t)=>{var r,i,s,n,o;let a;this.isInitialized(),this.isValidAuthenticate(e);let l=t&&this.client.core.linkModeSupportedApps.includes(t)&&(null==(r=this.client.metadata.redirect)?void 0:r.linkMode),c=l?fc:fh;c===fh&&await this.confirmOnlineStateOrThrow();let{chains:h,statement:u="",uri:d,domain:f,nonce:p,type:g,exp:y,nbf:b,methods:m=[],expiry:w}=e,v=[...e.resources||[]],{topic:E,uri:x}=await this.client.core.pairing.create({methods:["wc_sessionAuthenticate"],transportType:c});this.client.logger.info({message:"Generated new pairing",pairing:{topic:E,uri:x}});let I=await this.client.core.crypto.generateKeyPair(),S=uj(I);if(await Promise.all([this.client.auth.authKeys.set(gV,{responseTopic:S,publicKey:I}),this.client.auth.pairingTopics.set(S,{topic:S,pairingTopic:E})]),await this.client.core.relayer.subscribe(S,{transportType:c}),this.client.logger.info(`sending request to new pairing topic: ${E}`),m.length>0){let e,t,{namespace:r}=au(h[0]),a=cD(function(e,t,r,i={}){return r?.sort((e,t)=>e.localeCompare(t)),{att:{[e]:function(e,t,r={}){return Object.assign({},...(t=t?.sort((e,t)=>e.localeCompare(t))).map(t=>({[`${e}/${t}`]:[r]})))}(t,r,i)}}}(r,"request",m));cq(v)&&(i=a,s=v.pop(),a=cD((n=cL(i),o=cL(s),ck(n),ck(o),e=Object.keys(n.att).concat(Object.keys(o.att)).sort((e,t)=>e.localeCompare(t)),t={att:{}},e.forEach(e=>{var r,i;Object.keys((null==(r=n.att)?void 0:r[e])||{}).concat(Object.keys((null==(i=o.att)?void 0:i[e])||{})).sort((e,t)=>e.localeCompare(t)).forEach(r=>{var i,s;t.att[e]=cx(((e,t)=>{for(var r in t||(t={}))cO.call(t,r)&&cA(e,r,t[r]);if(cS)for(var r of cS(t))c_.call(t,r)&&cA(e,r,t[r]);return e})({},t.att[e]),cI({[r]:(null==(i=n.att[e])?void 0:i[r])||(null==(s=o.att[e])?void 0:s[r])}))})}),t))),v.push(a)}let O=w&&w>gD.wc_sessionAuthenticate.req.ttl?w:gD.wc_sessionAuthenticate.req.ttl,_={authPayload:{type:g??"caip122",chains:h,statement:u,aud:d,domain:f,version:"1",nonce:p,iat:new Date().toISOString(),exp:y,nbf:b,resources:v},requester:{publicKey:I,metadata:this.client.metadata},expiryTimestamp:aK(O)},A={requiredNamespaces:{},optionalNamespaces:{eip155:{chains:h,methods:[...new Set(["personal_sign",...m])],events:["chainChanged","accountsChanged"]}},relays:[{protocol:"irn"}],pairingTopic:E,proposer:{publicKey:I,metadata:this.client.metadata},expiryTimestamp:aK(gD.wc_sessionPropose.req.ttl),id:dL()},{done:P,resolve:T,reject:N}=a$(O,"Request expired"),R=dL(),C=aW("session_connect",A.id),B=aW("session_request",R),U=async({error:e,session:t})=>{this.events.off(B,k),e?N(e):t&&T({session:t})},k=async e=>{var r,i,s;let n;if(await this.deletePendingAuthRequest(R,{message:"fulfilled",code:0}),e.error){let t=am("WC_METHOD_UNSUPPORTED","wc_sessionAuthenticate");return e.error.code===t.code?void 0:(this.events.off(C,U),N(e.error.message))}await this.deleteProposal(A.id),this.events.off(C,U);let{cacaos:o,responder:a}=e.result,l=[],h=[];for(let e of o){await cB({cacao:e,projectId:this.client.core.projectId})||(this.client.logger.error(e,"Signature verification failed"),N(am("SESSION_SETTLEMENT_FAILED","Signature verification failed")));let{p:t}=e,r=cq(t.resources),i=[cR(t.iss)],s=cC(t.iss);if(r){let e=cj(r),t=cM(r);l.push(...e),i.push(...t)}for(let e of i)h.push(`${e}:${s}`)}let u=await this.client.core.crypto.generateSharedKey(I,a.publicKey);l.length>0&&(n={topic:u,acknowledged:!0,self:{publicKey:I,metadata:this.client.metadata},peer:a,controller:a.publicKey,expiry:aK(gk),requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:E,namespaces:dh([...new Set(l)],[...new Set(h)]),transportType:c},await this.client.core.relayer.subscribe(u,{transportType:c}),await this.client.session.set(u,n),E&&await this.client.core.pairing.updateMetadata({topic:E,metadata:a.metadata}),n=this.client.session.get(u)),null!=(r=this.client.metadata.redirect)&&r.linkMode&&null!=(i=a.metadata.redirect)&&i.linkMode&&null!=(s=a.metadata.redirect)&&s.universal&&t&&(this.client.core.addLinkModeSupportedApp(a.metadata.redirect.universal),this.client.session.update(u,{transportType:fc})),T({auths:o,session:n})};this.events.once(C,U),this.events.once(B,k);try{if(l){let e=dM("wc_sessionAuthenticate",_,R);this.client.core.history.set(E,e);let r=await this.client.core.crypto.encode("",e,{type:2,encoding:uk});
24a=u3(t,E,r)}else await Promise.all([this.sendRequest({topic:E,method:"wc_sessionAuthenticate",params:_,expiry:e.expiry,throwOnFailedPublish:!0,clientRpcId:R}),this.sendRequest({topic:E,method:"wc_sessionPropose",params:A,expiry:gD.wc_sessionPropose.req.ttl,throwOnFailedPublish:!0,clientRpcId:A.id})])}catch(e){throw this.events.off(C,U),this.events.off(B,k),e}return await this.setProposal(A.id,A),await this.setAuthRequest(R,{request:gK(gJ({},_),gH({verifyContext:{}})),pairingTopic:E,transportType:c}),{uri:a??x,response:P}}),gQ(this,"approveSessionAuthenticate",async e=>{let t,{id:r,auths:i}=e,s=this.client.core.eventClient.createEvent({properties:{topic:r.toString(),trace:["authenticated_session_approve_started"]}});try{this.isInitialized()}catch(e){throw s.setError("no_internet_connection"),e}let n=this.getPendingAuthRequest(r);if(!n)throw s.setError("authenticated_session_pending_request_not_found"),Error(`Could not find pending auth request with id ${r}`);let o=n.transportType||fh;o===fh&&await this.confirmOnlineStateOrThrow();let a=n.requester.publicKey,l=await this.client.core.crypto.generateKeyPair(),c=uj(a),h={type:1,receiverPublicKey:a,senderPublicKey:l},u=[],d=[];for(let e of i){if(!await cB({cacao:e,projectId:this.client.core.projectId})){s.setError("invalid_cacao");let e=am("SESSION_SETTLEMENT_FAILED","Signature verification failed");throw await this.sendError({id:r,topic:c,error:e,encodeOpts:h}),Error(e.message)}s.addTrace("cacaos_verified");let{p:t}=e,i=cq(t.resources),n=[cR(t.iss)],o=cC(t.iss);if(i){let e=cj(i),t=cM(i);u.push(...e),n.push(...t)}for(let e of n)d.push(`${e}:${o}`)}let f=await this.client.core.crypto.generateSharedKey(l,a);if(s.addTrace("create_authenticated_session_topic"),u?.length>0){t={topic:f,acknowledged:!0,self:{publicKey:l,metadata:this.client.metadata},peer:{publicKey:a,metadata:n.requester.metadata},controller:a,expiry:aK(gk),authentication:i,requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:n.pairingTopic,namespaces:dh([...new Set(u)],[...new Set(d)]),transportType:o},s.addTrace("subscribing_authenticated_session_topic");try{await this.client.core.relayer.subscribe(f,{transportType:o})}catch(e){throw s.setError("subscribe_authenticated_session_topic_failure"),e}s.addTrace("subscribe_authenticated_session_topic_success"),await this.client.session.set(f,t),s.addTrace("store_authenticated_session"),await this.client.core.pairing.updateMetadata({topic:n.pairingTopic,metadata:n.requester.metadata})}s.addTrace("publishing_authenticated_session_approve");try{await this.sendResult({topic:c,id:r,result:{cacaos:i,responder:{publicKey:l,metadata:this.client.metadata}},encodeOpts:h,throwOnFailedPublish:!0,appLink:this.getAppLinkIfEnabled(n.requester.metadata,o)})}catch(e){throw s.setError("authenticated_session_approve_publish_failure"),e}return await this.client.auth.requests.delete(r,{message:"fulfilled",code:0}),await this.client.core.pairing.activate({topic:n.pairingTopic}),this.client.core.eventClient.deleteEvent({eventId:s.eventId}),{session:t}}),gQ(this,"rejectSessionAuthenticate",async e=>{this.isInitialized();let{id:t,reason:r}=e,i=this.getPendingAuthRequest(t);if(!i)throw Error(`Could not find pending auth request with id ${t}`);i.transportType===fh&&await this.confirmOnlineStateOrThrow();let s=i.requester.publicKey,n=await this.client.core.crypto.generateKeyPair(),o=uj(s);await this.sendError({id:t,topic:o,error:r,encodeOpts:{type:1,receiverPublicKey:s,senderPublicKey:n},rpcOpts:gD.wc_sessionAuthenticate.reject,appLink:this.getAppLinkIfEnabled(i.requester.metadata,i.transportType)}),await this.client.auth.requests.delete(t,{message:"rejected",code:0}),await this.deleteProposal(t)}),gQ(this,"formatAuthMessage",e=>{this.isInitialized();let{request:t,iss:r}=e;return cU(t,r)}),gQ(this,"processRelayMessageCache",()=>{setTimeout(async()=>{if(0!==this.relayMessageCache.length)for(;this.relayMessageCache.length>0;)try{let e=this.relayMessageCache.shift();e&&await this.onRelayMessage(e)}catch(e){this.client.logger.error(e)}},50)}),gQ(this,"cleanupDuplicatePairings",async e=>{if(e.pairingTopic)try{let t=this.client.core.pairing.pairings.get(e.pairingTopic),r=this.client.core.pairing.pairings.getAll().filter(r=>{var i,s;return(null==(i=r.peerMetadata)?void 0:i.url)&&(null==(s=r.peerMetadata)?void 0:s.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)}}),gQ(this,"deleteSession",async e=>{var t;let{topic:r,expirerHasDeleted:i=!1,emitEvent:s=!0,id:n=0}=e,{self:o}=this.client.session.get(r);await this.client.core.relayer.unsubscribe(r),await this.client.session.delete(r,am("USER_DISCONNECTED")),this.addToRecentlyDeleted(r,"session"),this.client.core.crypto.keychain.has(o.publicKey)&&await this.client.core.crypto.deleteKeyPair(o.publicKey),this.client.core.crypto.keychain.has(r)&&await this.client.core.crypto.deleteSymKey(r),i||this.client.core.expirer.del(r),this.client.core.storage.removeItem(gB).catch(e=>this.client.logger.warn(e)),r===(null==(t=this.sessionRequestQueue.queue[0])?void 0:t.topic)&&(this.sessionRequestQueue.state=gj),await Promise.all(this.getPendingSessionRequests().filter(e=>e.topic===r).map(e=>this.deletePendingSessionRequest(e.id,am("USER_DISCONNECTED")))),s&&this.client.events.emit("session_delete",{id:n,topic:r})}),gQ(this,"deleteProposal",async(e,t)=>{if(t)try{let t=this.client.proposal.get(e),r=this.client.core.eventClient.getEvent({topic:t.pairingTopic});r?.setError("proposal_expired")}catch{}await Promise.all([this.client.proposal.delete(e,am("USER_DISCONNECTED")),t?Promise.resolve():this.client.core.expirer.del(e)]),this.addToRecentlyDeleted(e,"proposal")}),gQ(this,"deletePendingSessionRequest",async(e,t,r=!1)=>
24{await Promise.all([this.client.pendingRequest.delete(e,t),r?Promise.resolve():this.client.core.expirer.del(e)]),this.addToRecentlyDeleted(e,"request"),this.sessionRequestQueue.queue=this.sessionRequestQueue.queue.filter(t=>t.id!==e),r&&(this.sessionRequestQueue.state=gj,this.client.events.emit("session_request_expire",{id:e}))}),gQ(this,"deletePendingAuthRequest",async(e,t,r=!1)=>{await Promise.all([this.client.auth.requests.delete(e,t),r?Promise.resolve():this.client.core.expirer.del(e)])}),gQ(this,"setExpiry",async(e,t)=>{this.client.session.keys.includes(e)&&(this.client.core.expirer.set(e,t),await this.client.session.update(e,{expiry:t}))}),gQ(this,"setProposal",async(e,t)=>{this.client.core.expirer.set(e,aK(gD.wc_sessionPropose.req.ttl)),await this.client.proposal.set(e,t)}),gQ(this,"setAuthRequest",async(e,t)=>{let{request:r,pairingTopic:i,transportType:s=fh}=t;this.client.core.expirer.set(e,r.expiryTimestamp),await this.client.auth.requests.set(e,{authPayload:r.authPayload,requester:r.requester,expiryTimestamp:r.expiryTimestamp,id:e,pairingTopic:i,verifyContext:r.verifyContext,transportType:s})}),gQ(this,"setPendingSessionRequest",async e=>{let{id:t,topic:r,params:i,verifyContext:s}=e,n=i.request.expiryTimestamp||aK(gD.wc_sessionRequest.req.ttl);this.client.core.expirer.set(t,n),await this.client.pendingRequest.set(t,{id:t,topic:r,params:i,verifyContext:s})}),gQ(this,"sendRequest",async e=>{let t,r,{topic:i,method:s,params:n,expiry:o,relayRpcId:a,clientRpcId:l,throwOnFailedPublish:c,appLink:h,tvf:u,publishOpts:d={}}=e,f=dM(s,n,l),p=!!h;try{let e=p?uk:uU;t=await this.client.core.crypto.encode(i,f,{encoding:e})}catch(e){throw await this.cleanup(),this.client.logger.error(`sendRequest() -> core.crypto.encode() for topic ${i} failed`),e}if(g$.includes(s)){let e=uM(JSON.stringify(f)),i=uM(t);r=await this.client.core.verify.register({id:i,decryptedId:e})}let g=gJ(gJ({},gD[s].req),d);if(g.attestation=r,o&&(g.ttl=o),a&&(g.id=a),this.client.core.history.set(i,f),p){let e=u3(h,i,t);await global.Linking.openURL(e,this.client.name)}else{let e;g.tvf=gK(gJ({},u),gH({correlationId:f.id})),c?(e=gJ({},g.internal),g.internal=gK(e,gH({throwOnFailedPublish:!0})),await this.client.core.relayer.publish(i,t,g)):this.client.core.relayer.publish(i,t,g).catch(e=>this.client.logger.error(e))}return f.id}),gQ(this,"sendProposeSession",async e=>{let{proposal:t,publishOpts:r}=e,i=dM("wc_sessionPropose",t,t.id);this.client.core.history.set(t.pairingTopic,i);let s=await this.client.core.crypto.encode(t.pairingTopic,i,{encoding:uU}),n=uM(JSON.stringify(i)),o=uM(s),a=await this.client.core.verify.register({id:o,decryptedId:n});await this.client.core.relayer.publishCustom({payload:{pairingTopic:t.pairingTopic,sessionProposal:s},opts:gK(gJ({},r),gH({publishMethod:"wc_proposeSession",attestation:a}))})}),gQ(this,"sendApproveSession",async e=>{let{sessionTopic:t,pairingProposalResponse:r,proposal:i,sessionSettleRequest:s,publishOpts:n}=e,o=dq(i.id,r),a=await this.client.core.crypto.encode(i.pairingTopic,o,{encoding:uU}),l=dM("wc_sessionSettle",s,n?.id),c=await this.client.core.crypto.encode(t,l,{encoding:uU});this.client.core.history.set(t,l),await this.client.core.relayer.publishCustom({payload:{sessionTopic:t,pairingTopic:i.pairingTopic,sessionProposalResponse:a,sessionSettlementRequest:c},opts:gK(gJ({},n),gH({publishMethod:"wc_approveSession"}))})}),gQ(this,"sendResult",async e=>{let t,r,i,{id:s,topic:n,result:o,throwOnFailedPublish:a,encodeOpts:l,appLink:c}=e,h=dq(s,o),u=c&&"u">typeof(null==global?void 0:global.Linking);try{let e,r,i=u?uk:uU;t=await this.client.core.crypto.encode(n,h,(e=gJ({},l||{}),r={encoding:i},gK(e,gH(r))))}catch(e){throw await this.cleanup(),this.client.logger.error(`sendResult() -> core.crypto.encode() for topic ${n} failed`),e}try{let e=(r=await this.client.core.history.get(n,s)).request;try{i=this.getTVFParams(s,e.params,o)}catch(e){this.client.logger.warn(`sendResult() -> getTVFParams() failed: ${e?.message}`)}}catch(e){throw this.client.logger.error(`sendResult() -> history.get(${n}, ${s}) failed`),e}if(u){let e=u3(c,n,t);await global.Linking.openURL(e,this.client.name)}else{let e,o=gD[r.request.method].res;o.tvf=gK(gJ({},i),gH({correlationId:s})),a?(e=gJ({},o.internal),o.internal=gK(e,gH({throwOnFailedPublish:!0})),await this.client.core.relayer.publish(n,t,o)):this.client.core.relayer.publish(n,t,o).catch(e=>this.client.logger.error(e))}await this.client.core.history.resolve(h)}),gQ(this,"sendError",async e=>{let t,r,{id:i,topic:s,error:n,encodeOpts:o,rpcOpts:a,appLink:l}=e,c=d$(i,n),h=l&&"u">typeof(null==global?void 0:global.Linking);try{let e,r,i=h?uk:uU;t=await this.client.core.crypto.encode(s,c,(e=gJ({},o||{}),r={encoding:i},gK(e,gH(r))))}catch(e){throw await this.cleanup(),this.client.logger.error(`sendError() -> core.crypto.encode() for topic ${s} failed`),e}try{r=await this.client.core.history.get(s,i)}catch(e){throw this.client.logger.error(`sendError() -> history.get(${s}, ${i}) failed`),e}if(h){let e=u3(l,s,t);await global.Linking.openURL(e,this.client.name)}else{let e=r.request.method,i=a||gD[e].res;this.client.core.relayer.publish(s,t,i)}await this.client.core.history.resolve(c)}),gQ(this,"cleanup",async()=>{let e=[],t=[];
24this.client.session.getAll().forEach(t=>{let r=!1;aH(t.expiry)&&(r=!0),this.client.core.crypto.keychain.has(t.topic)||(r=!0),r&&e.push(t.topic)}),this.client.proposal.getAll().forEach(e=>{aH(e.expiryTimestamp)&&t.push(e.id)}),await Promise.all([...e.map(e=>this.deleteSession({topic:e})),...t.map(e=>this.deleteProposal(e))])}),gQ(this,"onProviderMessageEvent",async e=>{!this.initialized||this.relayMessageCache.length>0?this.relayMessageCache.push(e):await this.onRelayMessage(e)}),gQ(this,"onRelayEventRequest",async e=>{this.requestQueue.queue.push(e),await this.processRequestsQueue()}),gQ(this,"processRequestsQueue",async()=>{if(this.requestQueue.state===gM)return void this.client.logger.info("Request queue already active, skipping...");for(this.client.logger.info(`Request queue starting with ${this.requestQueue.queue.length} requests`);this.requestQueue.queue.length>0;){this.requestQueue.state=gM;let e=this.requestQueue.queue.shift();if(e)try{await this.processRequest(e)}catch(e){this.client.logger.warn(e)}}this.requestQueue.state=gj}),gQ(this,"processRequest",async e=>{let{topic:t,payload:r,attestation:i,transportType:s,encryptedId:n}=e,o=r.method;if(!this.shouldIgnorePairingRequest({topic:t,requestMethod:o}))switch(o){case"wc_sessionPropose":return await this.onSessionProposeRequest
24({topic:t,payload:r,attestation:i,encryptedId:n});case"wc_sessionSettle":return await this.onSessionSettleRequest(t,r);case"wc_sessionUpdate":return await this.onSessionUpdateRequest(t,r);case"wc_sessionExtend":return await this.onSessionExtendRequest(t,r);case"wc_sessionPing":return await this.onSessionPingRequest(t,r);case"wc_sessionDelete":return await this.onSessionDeleteRequest(t,r);case"wc_sessionRequest":return await this.onSessionRequest({topic:t,payload:r,attestation:i,encryptedId:n,transportType:s});case"wc_sessionEvent":return await this.onSessionEventRequest(t,r);case"wc_sessionAuthenticate":return await this.onSessionAuthenticateRequest({topic:t,payload:r,attestation:i,encryptedId:n,transportType:s});default:return this.client.logger.info(`Unsupported request method ${o}`)}}),gQ(this,"onRelayEventResponse",async e=>{let{topic:t,payload:r,transportType:i}=e,s=(await this.client.core.history.get(t,r.id)).request.method;switch(s){case"wc_sessionPropose":return this.onSessionProposeResponse(t,r,i);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);case"wc_sessionAuthenticate":return this.onSessionAuthenticateResponse(t,r);default:return this.client.logger.info(`Unsupported response method ${s}`)}}),gQ(this,"onRelayEventUnknownPayload",e=>{let{topic:t}=e,{message:r}=ab("MISSING_OR_INVALID",`Decoded payload on topic ${t} is not identifiable as a JSON-RPC request or a response.`);throw Error(r)}),gQ(this,"shouldIgnorePairingRequest",e=>{let{topic:t,requestMethod:r}=e,i=this.expectedPairingMethodMap.get(t);return!(!i||i.includes(r))&&!!(i.includes("wc_sessionAuthenticate")&&this.client.events.listenerCount("session_authenticate")>0)}),gQ(this,"onSessionProposeRequest",async e=>{let{topic:t,payload:r,attestation:i,encryptedId:s}=e,{params:n,id:o}=r;try{let e=this.client.core.eventClient.getEvent({topic:t});0===this.client.events.listenerCount("session_proposal")&&(console.warn("No listener for session_proposal event"),e?.setError("proposal_listener_not_found")),this.isValidConnect(gJ({},r.params));let a=n.expiryTimestamp||aK(gD.wc_sessionPropose.req.ttl),l=gJ({id:o,pairingTopic:t,expiryTimestamp:a,attestation:i,encryptedId:s},n);await this.setProposal(o,l);let c=await this.getVerifyContext({attestationId:i,hash:uM(JSON.stringify(r)),encryptedId:s,metadata:l.proposer.metadata});e?.addTrace("emit_session_proposal"),this.client.events.emit("session_proposal",{id:o,params:l,verifyContext:c})}catch(e){await this.sendError({id:o,topic:t,error:e,rpcOpts:gD.wc_sessionPropose.autoReject}),this.client.logger.error(e)}}),gQ(this,"onSessionProposeResponse",async(e,t,r)=>{let{id:i}=t;if(dY(t)){let{result:s}=t;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",result:s});let n=this.client.proposal.get(i);this.client.logger.trace({type:"method",method:"onSessionProposeResponse",proposal:n});let o=n.proposer.publicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",selfPublicKey:o});let a=s.responderPublicKey;this.client.logger.trace({type:"method",method:"onSessionProposeResponse",peerPublicKey:a});let l=await this.client.core.crypto.generateSharedKey(o,a);this.pendingSessions.set(i,{sessionTopic:l,pairingTopic:e,proposalId:i,publicKey:o});let c=await this.client.core.relayer.subscribe(l,{transportType:r});this.client.logger.trace({type:"method",method:"onSessionProposeResponse",subscriptionId:c}),await this.client.core.pairing.activate({topic:e})}else if(dZ(t)){await this.deleteProposal(i);let e=aW("session_connect",i);if(0===this.events.listenerCount(e))throw Error(`emitting ${e} without any listeners, 954`);this.events.emit(e,{error:t.error})}}),gQ(this,"onSessionSettleRequest",async(e,t)=>{let{id:r,params:i}=t;try{let r,s;this.isValidSessionSettleRequest(i);let{relay:n,controller:o,expiry:a,namespaces:l,sessionProperties:c,scopedProperties:h,sessionConfig:u,proposalRequestsResponses:d}=t.params,f=[...this.pendingSessions.values()].find(t=>t.sessionTopic===e);if(!f)return this.client.logger.error(`Pending session not found for topic ${e}`);let p=this.client.proposal.get(f.proposalId),g=(r=gJ(gJ(gJ({topic:e,relay:n,expiry:a,namespaces:l,acknowledged:!0,pairingTopic:f.pairingTopic,requiredNamespaces:p.requiredNamespaces,optionalNamespaces:p.optionalNamespaces,controller:o.publicKey,self:{publicKey:f.publicKey,metadata:this.client.metadata},peer:{publicKey:o.publicKey,metadata:o.metadata}},c&&{sessionProperties:c}),h&&{scopedProperties:h}),u&&{sessionConfig:u}),s={transportType:fh,authentication:d?.authentication,walletPayResult:d?.walletPay},gK(r,gH(s)));await this.client.session.set(g.topic,g),await this.setExpiry(g.topic,g.expiry),await this.client.core.pairing.updateMetadata({topic:f.pairingTopic,metadata:g.peer.metadata}),this.pendingSessions.delete(f.proposalId),this.deleteProposal(f.proposalId,!1),this.cleanupDupl
24icatePairings(g),await this.sendResult({id:t.id,topic:e,throwOnFailedPublish:!0,result:!0}),this.client.events.emit("session_connect",{session:g}),this.events.emit(aW("session_connect",f.proposalId),{session:g})}catch(t){await this.sendError({id:r,topic:e,error:t}),this.client.logger.error(t)}}),gQ(this,"onSessionSettleResponse",async(e,t)=>{let{id:r}=t;dY(t)?(await this.client.session.update(e,{acknowledged:!0}),this.events.emit(aW("session_approve",r),{})):dZ(t)&&(await this.client.session.delete(e,am("USER_DISCONNECTED")),this.events.emit(aW("session_approve",r),{error:t.error}))}),gQ(this,"onSessionUpdateRequest",async(e,t)=>{let{params:r,id:i}=t;try{let t=`${e}_session_update`,s=dP.get(t);if(s&&this.isRequestOutOfSync(s,i)){this.client.logger.warn(`Discarding out of sync request - ${i}`),this.sendError({id:i,topic:e,error:am("INVALID_UPDATE_REQUEST")});return}this.isValidUpdate(gJ({topic:e},r));try{dP.set(t,i),await this.client.session.update(e,{namespaces:r.namespaces}),await this.sendResult({id:i,topic:e,result:!0})}catch(e){throw dP.delete(t),e}this.client.events.emit("session_update",{id:i,topic:e,params:r})}catch(t){await this.sendError({id:i,topic:e,error:t}),this.client.logger.error(t)}}),gQ(this,"isRequestOutOfSync",(e,t)=>t.toString().slice(0,-3)<e.toString().slice(0,-3)),gQ(this,"onSessionUpdateResponse",(e,t)=>{let{id:r}=t,i=aW("session_update",r);if(0===this.events.listenerCount(i))throw Error(`emitting ${i} without any listeners`);dY(t)?this.events.emit(aW("session_update",r),{}):dZ(t)&&this.events.emit(aW("session_update",r),{error:t.error})}),gQ(this,"onSessionExtendRequest",async(e,t)=>{let{id:r}=t;try{this.isValidExtend({topic:e}),await this.setExpiry(e,aK(gk)),await this.sendResult({id:r,topic:e,result:!0}),this.client.events.emit("session_extend",{id:r,topic:e})}catch(t){await this.sendError({id:r,topic:e,error:t}),this.client.logger.error(t)}}),gQ(this,"onSessionExtendResponse",(e,t)=>{let{id:r}=t,i=aW("session_extend",r);if(0===this.events.listenerCount(i))throw Error(`emitting ${i} without any listeners`);dY(t)?this.events.emit(aW("session_extend",r),{}):dZ(t)&&this.events.emit(aW("session_extend",r),{error:t.error})}),gQ(this,"onSessionPingRequest",async(e,t)=>{let{id:r}=t;try{this.isValidPing({topic:e}),await this.sendResult({id:r,topic:e,result:!0,throwOnFailedPublish:!0}),this.client.events.emit("session_ping",{id:r,topic:e})}catch(t){await this.sendError({id:r,topic:e,error:t}),this.client.logger.error(t)}}),gQ(this,"onSessionPingResponse",(e,t)=>{let{id:r}=t,i=aW("session_ping",r);setTimeout(()=>{if(0===this.events.listenerCount(i))throw Error(`emitting ${i} without any listeners 2176`);dY(t)?this.events.emit(aW("session_ping",r),{}):dZ(t)&&this.events.emit(aW("session_ping",r),{error:t.error})},500)}),gQ(this,"onSessionDeleteRequest",async(e,t)=>{let{id:r}=t;try{await this.isValidDisconnect({topic:e,reason:t.params}),this.cleanupPendingSentRequestsForTopic({topic:e,error:am("USER_DISCONNECTED")}),await this.deleteSession({topic:e,id:r})}catch(e){this.client.logger.error(e)}}),gQ(this,"onSessionRequest",async e=>{var t,r,i;let{topic:s,payload:n,attestation:o,encryptedId:a,transportType:l}=e,{id:c,params:h}=n;try{await this.isValidRequest(gJ({topic:s},h));let e=this.client.session.get(s),n=await this.getVerifyContext({attestationId:o,hash:uM(JSON.stringify(dM("wc_sessionRequest",h,c))),encryptedId:a,metadata:e.peer.metadata,transportType:l}),u={id:c,topic:s,params:h,verifyContext:n};await this.setPendingSessionRequest(u),l===fc&&null!=(t=e.peer.metadata.redirect)&&t.universal&&this.client.core.addLinkModeSupportedApp(null==(r=e.peer.metadata.redirect)?void 0:r.universal),null!=(i=this.client.signConfig)&&i.disableRequestQueue?this.emitSessionRequest(u):(this.addSessionRequestToSessionRequestQueue(u),this.processSessionRequestQueue())}catch(e){await this.sendError({id:c,topic:s,error:e}),this.client.logger.error(e)}}),gQ(this,"onSessionRequestResponse",(e,t)=>{let{id:r}=t,i=aW("session_request",r);if(0===this.events.listenerCount(i))throw Error(`emitting ${i} without any listeners`);dY(t)?this.events.emit(aW("session_request",r),{result:t.result}):dZ(t)&&this.events.emit(aW("session_request",r),{error:t.error})}),gQ(this,"onSessionEventRequest",async(e,t)=>{let{id:r,params:i}=t;try{let t=`${e}_session_event_${i.event.name}`,s=dP.get(t);if(s&&this.isRequestOutOfSync(s,r))return void this.client.logger.info(`Discarding out of sync request - ${r}`);this.isValidEmit(gJ({topic:e},i)),this.client.events.emit("session_event",{id:r,topic:e,params:i}),dP.set(t,r)}
24catch(t){await this.sendError({id:r,topic:e,error:t}),this.client.logger.error(t)}}),gQ(this,"onSessionAuthenticateResponse",(e,t)=>{let{id:r}=t;this.client.logger.trace({type:"method",method:"onSessionAuthenticateResponse",topic:e,payload:t}),dY(t)?this.events.emit(aW("session_request",r),{result:t.result}):dZ(t)&&this.events.emit(aW("session_request",r),{error:t.error})}),gQ(this,"onSessionAuthenticateRequest",async e=>{var t;let{topic:r,payload:i,attestation:s,encryptedId:n,transportType:o}=e;try{let{requester:e,authPayload:a,expiryTimestamp:l}=i.params,c=await this.getVerifyContext({attestationId:s,hash:uM(JSON.stringify(i)),encryptedId:n,metadata:e.metadata,transportType:o}),h={requester:e,pairingTopic:r,id:i.id,authPayload:a,verifyContext:c,expiryTimestamp:l};await this.setAuthRequest(i.id,{request:h,pairingTopic:r,transportType:o}),o===fc&&null!=(t=e.metadata.redirect)&&t.universal&&this.client.core.addLinkModeSupportedApp(e.metadata.redirect.universal),this.client.events.emit("session_authenticate",{topic:r,params:i.params,id:i.id,verifyContext:c})}catch(n){this.client.logger.error(n);let e=i.params.requester.publicKey,t=await this.client.core.crypto.generateKeyPair(),s=this.getAppLinkIfEnabled(i.params.requester.metadata,o);await this.sendError({id:i.id,topic:r,error:n,encodeOpts:{type:1,receiverPublicKey:e,senderPublicKey:t},rpcOpts:gD.wc_sessionAuthenticate.autoReject,appLink:s})}}),gQ(this,"addSessionRequestToSessionRequestQueue",e=>{this.sessionRequestQueue.queue.push(e)}),gQ(this,"cleanupAfterResponse",e=>{this.deletePendingSessionRequest(e.response.id,{message:"fulfilled",code:0}),setTimeout(()=>{this.sessionRequestQueue.state=gj,this.processSessionRequestQueue()},(0,z.toMiliseconds)(this.requestQueueDelay))}),gQ(this,"cleanupPendingSentRequestsForTopic",({topic:e,error:t})=>{let r=this.client.core.history.pending;r.length>0&&r.filter(t=>t.topic===e&&"wc_sessionRequest"===t.request.method).forEach(e=>{this.events.emit(aW("session_request",e.request.id),{error:t})})}),gQ(this,"processSessionRequestQueue",()=>{if(this.sessionRequestQueue.state===gM)return void this.client.logger.info("session request queue is already active.");let e=this.sessionRequestQueue.queue[0];if(!e)return void this.client.logger.info("session request queue is empty.");try{this.emitSessionRequest(e)}catch(e){this.client.logger.error(e)}}),gQ(this,"emitSessionRequest",e=>{this.emittedSessionRequests.has(e.id)?this.client.logger.warn({id:e.id},`Skipping emitting \`session_request\` event for duplicate request. id: ${e.id}`):(this.sessionRequestQueue.state=gM,this.emittedSessionRequests.add(e.id),this.client.events.emit("session_request",e))}),gQ(this,"onPairingCreated",e=>{if(e.methods&&this.expectedPairingMethodMap.set(e.topic,e.methods),e.active)return;let t=this.client.proposal.getAll().find(t=>t.pairingTopic===e.topic);
24t&&this.onSessionProposeRequest({topic:e.topic,payload:dM("wc_sessionPropose",gK(gJ({},t),gH({requiredNamespaces:t.requiredNamespaces,optionalNamespaces:t.optionalNamespaces,relays:t.relays,proposer:t.proposer,sessionProperties:t.sessionProperties,scopedProperties:t.scopedProperties})),t.id),attestation:t.attestation,encryptedId:t.encryptedId})}),gQ(this,"isValidConnect",async e=>{let t;if(!dE(e)){let{message:t}=ab("MISSING_OR_INVALID",`connect() params: ${JSON.stringify(e)}`);throw Error(t)}let{pairingTopic:r,requiredNamespaces:i,optionalNamespaces:s,sessionProperties:n,scopedProperties:o,relays:a}=e;if(df(r)||await this.isValidPairingTopic(r),t=!1,a?a&&du(a)&&a.length&&a.forEach(e=>{t=dv(e)}):t=!0,!t){let{message:e}=ab("MISSING_OR_INVALID",`connect() relays: ${a}`);throw Error(e)}if(i&&!df(i)&&0!==dd(i)){let e="requiredNamespaces are deprecated and are automatically assigned to optionalNamespaces";["fatal","error","silent"].includes(this.client.logger.level)?console.warn(e):this.client.logger.warn(e),this.validateNamespaces(i,"requiredNamespaces")}if(s&&!df(s)&&0!==dd(s)&&this.validateNamespaces(s,"optionalNamespaces"),n&&!df(n)&&this.validateSessionProps(n,"sessionProperties"),o&&!df(o)){this.validateSessionProps(o,"scopedProperties");let e=Object.keys(i||{}).concat(Object.keys(s||{}));if(!Object.keys(o).every(t=>e.includes(t.split(":")[0])))throw Error(`Scoped properties must be a subset of required/optional namespaces, received: ${JSON.stringify(o)}, required/optional namespaces: ${JSON.stringify(e)}`)}}),gQ(this,"validateNamespaces",(e,t)=>{let r=function(e,t,r){let i=null;if(e&&dd(e)){let s,n=dm(e,t);n&&(i=n);let o=(s=null,Object.entries(e).forEach(([e,i])=>{var n,o;let a;if(s)return;let l=(n=ap(e,i),o=`${t} ${r}`,a=null,du(n)&&n.length?n.forEach(e=>{a||dy(e)||(a=am("UNSUPPORTED_CHAINS",`${o}, chain ${e} should be a string and conform to "namespace:chainId" format`))}):dy(e)||(a=am("UNSUPPORTED_CHAINS",`${o}, 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"] }`)),a);l&&(s=l)}),s);o&&(i=o)}else i=ab("MISSING_OR_INVALID",`${t}, ${r} should be an object with data`);return i}(e,"connect()",t);if(r)throw Error(r.message)}),gQ(this,"isValidApprove",async e=>{if(!dE(e))throw Error(ab("MISSING_OR_INVALID",`approve() params: ${e}`).message);let{id:t,namespaces:r,relayProtocol:i,sessionProperties:s,scopedProperties:n}=e;this.checkRecentlyDeleted(t),await this.isValidProposalId(t);let o=this.client.proposal.get(t),a=dw(r,"approve()");if(a)throw Error(a.message);let l=dI(o.requiredNamespaces,r,"approve()");if(l)throw Error(l.message);if(!dp(i,!0)){let{message:e}=ab("MISSING_OR_INVALID",`approve() relayProtocol: ${i}`);throw Error(e)}if(s&&!df(s)&&this.validateSessionProps(s,"sessionProperties"),n&&!df(n)){this.validateSessionProps(n,"scopedProperties");let e=new Set(Object.keys(r));if(!Object.keys(n).every(t=>e.has(t.split(":")[0])))throw Error(`Scoped properties must be a subset of approved namespaces, received: ${JSON.stringify(n)}, approved namespaces: ${Array.from(e).join(", ")}`)}}),gQ(this,"isValidReject",async e=>{if(!dE(e)){let{message:t}=ab("MISSING_OR_INVALID",`reject() params: ${e}`);throw Error(t)}let{id:t,reason:r}=e;if(this.checkRecentlyDeleted(t),await this.isValidProposalId(t),!r||"object"!=typeof r||!r.code||!dg(r.code,!1)||!r.message||!dp(r.message,!1)){let{message:e}=ab("MISSING_OR_INVALID",`reject() reason: ${JSON.stringify(r)}`);throw Error(e)}}),gQ(this,"isValidSessionSettleRequest",e=>{let t;if(!dE(e)){let{message:t}=ab("MISSING_OR_INVALID",`onSessionSettleRequest() params: ${e}`);throw Error(t)}let{relay:r,controller:i,namespaces:s,expiry:n}=e;if(!dv(r)){let{message:e}=ab("MISSING_OR_INVALID","onSessionSettleRequest() relay protocol should be a string");throw Error(e)}let o=(t=null,dp(i?.publicKey,!1)||(t=ab("MISSING_OR_INVALID","onSessionSettleRequest() controller public key should be a string")),t);if(o)throw Error(o.message);let a=dw(s,"onSessionSettleRequest()");if(a)throw Error(a.message);if(aH(n)){let{message:e}=ab("EXPIRED","onSessionSettleRequest()");throw Error(e)}}),gQ(this,"isValidUpdate",async e=>{if(!dE(e)){let{message:t}=ab("MISSING_OR_INVALID",`update() params: ${e}`);throw Error(t)}let{topic:t,namespaces:r}=e;this.checkRecentlyDeleted(t),await this.isValidSessionTopic(t);
24let i=this.client.session.get(t),s=dw(r,"update()");if(s)throw Error(s.message);let n=dI(i.requiredNamespaces,r,"update()");if(n)throw Error(n.message)}),gQ(this,"isValidExtend",async e=>{if(!dE(e)){let{message:t}=ab("MISSING_OR_INVALID",`extend() params: ${e}`);throw Error(t)}let{topic:t}=e;this.checkRecentlyDeleted(t),await this.isValidSessionTopic(t)}),gQ(this,"isValidRequest",async e=>{var t;let r;if(!dE(e)){let{message:t}=ab("MISSING_OR_INVALID",`request() params: ${e}`);throw Error(t)}let{topic:i,request:s,chainId:n,expiry:o}=e;this.checkRecentlyDeleted(i),await this.isValidSessionTopic(i);let{namespaces:a}=this.client.session.get(i);if(!dx(a,n)){let{message:e}=ab("MISSING_OR_INVALID",`request() chainId: ${n}`);throw Error(e)}if(df(s)||!dp(s.method,!1)){let{message:e}=ab("MISSING_OR_INVALID",`request() ${JSON.stringify(s)}`);throw Error(e)}if(!(dp(t=s.method,!1)&&(r=[],Object.values(a).forEach(e=>{dn(e.accounts).includes(n)&&r.push(...e.methods)}),r).includes(t))){let{message:e}=ab("MISSING_OR_INVALID",`request() method: ${s.method}`);throw Error(e)}this.validateRequestExpiry(o)}),gQ(this,"isValidRespond",async e=>{var t;if(!dE(e)){let{message:t}=ab("MISSING_OR_INVALID",`respond() params: ${e}`);throw Error(t)}let{topic:r,response:i}=e;try{await this.isValidSessionTopic(r)}catch(r){throw null!=(t=e?.response)&&t.id&&this.cleanupAfterResponse(e),r}if(df(i)||df(i.result)&&df(i.error)||!dg(i.id,!1)||!dp(i.jsonrpc,!1)){let{message:e}=ab("MISSING_OR_INVALID",`respond() response: ${JSON.stringify(i)}`);throw Error(e)}let s=this.client.pendingRequest.get(i.id);if(s.topic!==r){let{message:e}=ab("MISMATCHED_TOPIC",`Request response topic mismatch. reqId: ${i.id}, expected topic: ${s.topic}, received topic: ${r}`);throw Error(e)}}),gQ(this,"isValidPing",async e=>{if(!dE(e)){let{message:t}=ab("MISSING_OR_INVALID",`ping() params: ${e}`);throw Error(t)}let{topic:t}=e;await this.isValidSessionOrPairingTopic(t)}),gQ(this,"isValidEmit",async e=>{var t;let r;if(!dE(e)){let{message:t}=ab("MISSING_OR_INVALID",`emit() params: ${e}`);throw Error(t)}let{topic:i,event:s,chainId:n}=e;await this.isValidSessionTopic(i);let{namespaces:o}=this.client.session.get(i);if(!dx(o,n)){let{message:e}=ab("MISSING_OR_INVALID",`emit() chainId: ${n}`);throw Error(e)}if(df(s)||!dp(s.name,!1)||!(dp(t=s.name,!1)&&(r=[],Object.values(o).forEach(e=>{dn(e.accounts).includes(n)&&r.push(...e.events)}),r).includes(t))){let{message:e}=ab("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(s)}`);throw Error(e)}}),gQ(this,"isValidDisconnect",async e=>{if(!dE(e)){let{message:t}=ab("MISSING_OR_INVALID",`disconnect() params: ${e}`);throw Error(t)}let{topic:t}=e;await this.isValidSessionOrPairingTopic(t)}),gQ(this,"isValidAuthenticate",e=>{let{chains:t,uri:r,domain:i,nonce:s}=e;if(!Array.isArray(t)||0===t.length)throw Error("chains is required and must be a non-empty array");if(!dp(r,!1))throw Error("uri is required parameter");if(!dp(i,!1))throw Error("domain is required parameter");if(!dp(s,!1))throw Error("nonce is required parameter");if([...new Set(t.map(e=>au(e).namespace))].length>1)throw Error("Multi-namespace requests are not supported. Please request single namespace only.");let{namespace:n}=au(t[0]);if("eip155"!==n)throw Error("Only eip155 namespace is supported for authenticated sessions. Please use .connect() for non-eip155 chains.")}),gQ(this,"getVerifyContext",async e=>{let{attestationId:t,hash:r,encryptedId:i,metadata:s,transportType:n}=e,o={verified:{verifyUrl:s.verifyUrl||fS,validation:"UNKNOWN",origin:s.url||""}};try{if(n===fc){let e=this.getAppLinkIfEnabled(s,n);return o.verified.validation=e&&new URL(e).origin===new URL(s.url).origin?"VALID":"INVALID",o}let e=await this.client.core.verify.resolve({attestationId:t,hash:r,encryptedId:i,verifyUrl:s.verifyUrl});e&&(o.verified.origin=e.origin,o.verified.isScam=e.isScam,o.verified.validation=e.origin===new URL(s.url).origin?"VALID":"INVALID")}catch(e){this.client.logger.warn(e)}return this.client.logger.debug(`Verify context: ${JSON.stringify(o)}`),o}),gQ(this,"validateSessionProps",(e,t)=>{Object.values(e).forEach((r,i)=>{if(null==r){let{message:s}=ab("MISSING_OR_INVALID",`${t} must contain an existing value for each key. Received: ${r} for key ${Object.keys(e)[i]}`);throw Error(s)}})}),gQ(this,"getPendingAuthRequest",e=>{let t=this.client.auth.requests.get(e);return"object"==typeof t?t:void 0}),gQ(this,"addToRecentlyDeleted",(e,t)=>{if(this.recentlyDeletedMap.set(e,t),this.recentlyDeletedMap.size>=this.recentlyDeletedLimit){let e=0,t=this.recentlyDeletedLimit/2;
24for(let r of this.recentlyDeletedMap.keys()){if(e++>=t)break;this.recentlyDeletedMap.delete(r)}}}),gQ(this,"checkRecentlyDeleted",e=>{let t=this.recentlyDeletedMap.get(e);if(t){let{message:r}=ab("MISSING_OR_INVALID",`Record was recently deleted - ${t}: ${e}`);throw Error(r)}}),gQ(this,"isLinkModeEnabled",(e,t)=>{var r,i,s,n,o,a,l,c,h;return!!e&&t===fc&&(null==(i=null==(r=this.client.metadata)?void 0:r.redirect)?void 0:i.linkMode)===!0&&(null==(n=null==(s=this.client.metadata)?void 0:s.redirect)?void 0:n.universal)!==void 0&&(null==(a=null==(o=this.client.metadata)?void 0:o.redirect)?void 0:a.universal)!==""&&(null==(l=e?.redirect)?void 0:l.universal)!==void 0&&(null==(c=e?.redirect)?void 0:c.universal)!==""&&(null==(h=e?.redirect)?void 0:h.linkMode)===!0&&this.client.core.linkModeSupportedApps.includes(e.redirect.universal)&&"u">typeof(null==global?void 0:global.Linking)}),gQ(this,"getAppLinkIfEnabled",(e,t)=>{var r;return this.isLinkModeEnabled(e,t)?null==(r=e?.redirect)?void 0:r.universal:void 0}),gQ(this,"handleLinkModeMessage",({url:e})=>{if(!e||!e.includes("wc_ev")||!e.includes("topic"))return;let t=aJ(e,"topic")||"",r=decodeURIComponent(aJ(e,"wc_ev")||""),i=this.client.session.keys.includes(t);i&&this.client.session.update(t,{transportType:fc}),this.client.core.dispatchEnvelope({topic:t,message:r,sessionExists:i})}),gQ(this,"registerLinkModeListeners",async()=>{var e;if(aX()||aC()&&null!=(e=this.client.metadata.redirect)&&e.linkMode){let e=null==global?void 0:global.Linking;if("u">typeof e){e.addEventListener("url",this.handleLinkModeMessage,this.client.name);let t=await e.getInitialURL();t&&setTimeout(()=>{this.handleLinkModeMessage({url:t})},50)}}}),gQ(this,"getTVFApproveParams",e=>{try{var t,r;let i,s,n=da(e.namespaces),o=(t=e.namespaces,i=[],Object.values(t).forEach(e=>{i.push(...e.methods)}),[...new Set(i)]),a=(r=e.namespaces,s=[],Object.values(r).forEach(e=>{s.push(...e.events)}),[...new Set(s)]),l=e.sessionProperties,c=e.scopedProperties;return{approvedChains:n,approvedMethods:o,approvedEvents:a,sessionProperties:l,scopedProperties:c}}catch(e){return this.client.logger.warn(e,"Error getting TVF approve params"),{}}}),gQ(this,"getTVFParams",(e,t,r)=>{var i,s,n;if(!(null!=(i=t.request)&&i.method))return{};let o={correlationId:e,rpcMethods:[t.request.method],chainId:t.chainId};try{o.txHashes=this.extractTxHashesFromResult(t.request,r),o.contractAddresses=this.isValidContractData(t.request.params)?[null==(n=null==(s=t.request.params)?void 0:s[0])?void 0:n.to]:[]}catch(e){this.client.logger.warn(e,"Error getting TVF params")}return o}),gQ(this,"isValidContractData",e=>{var t;if(!e)return!1;try{let r=e?.data||(null==(t=e?.[0])?void 0:t.data);if(!r.startsWith("0x"))return!1;let i=r.slice(2);return!!/^[0-9a-fA-F]*$/.test(i)&&i.length%2==0}catch{}return!1}),gQ(this,"extractTxHashesFromResult",(e,t)=>{var r,i,s,n,o;try{if(!t)return[];let a=e.method,l=gq[a];if("sui_signTransaction"===a){let e,r,i,n;return[(s=t.transactionBytes,e=new Uint8Array(ah.from(s,"base64")),r=Array.from("TransactionData::").map(e=>e.charCodeAt(0)),(i=new Uint8Array(r.length+e.length)).set(r),i.set(e,r.length),n=cp(i,{dkLen:32}),nQ.tw.encode(n))]}if("near_signTransaction"===a)return[cm(t)];if("near_signTransactions"===a)return t.map(e=>cm(e));if("xrpl_signTransactionFor"===a||"xrpl_signTransaction"===a)return[null==(r=t.tx_json)?void 0:r.hash];if("polkadot_signTransaction"===a){let r,s,n,o;return[(i={transaction:e.params.transactionPayload,signature:t.signature},n=Uint8Array.from(ah.from(i.signature,"hex")),o=function({publicKey:e,signature:t,payload:r}){var i,s,n;let o,a=dT(r.method),l=128|parseInt((null==(i=r.version)?void 0:i.toString())||"4"),c=(s=r.address,o=nQ.tw.decode(s)[0],42===o?0:60===o?2:1),h="00"===r.era?new Uint8Array([0]):dT(r.era);if(1!==h.length&&2!==h.length)throw Error("Invalid era length");let u=parseInt(r.nonce,16),d=new Uint8Array([255&u,u>>8&255]),f=new Uint8Array([0,...e,c,...t,...h,...d,...function(e){if(e<BigInt(1)<<BigInt(6))return new Uint8Array([Number(e<<BigInt(2))]);if(e<BigInt(1)<<BigInt(14)){let t=e<<BigInt(2)|BigInt(1);return new Uint8Array([Number(t&BigInt(255)),Number(t>>BigInt(8)&BigInt(255))])}if(e<BigInt(1)<<BigInt(30)){let t=e<<BigInt(2)|BigInt(2);return new Uint8Array([Number(t&BigInt(255)),Number(t>>BigInt(8)&BigInt(255)),Number(t>>BigInt(16)&BigInt(255)),Number(t>>BigInt(24)&BigInt(255))])}throw Error("BigInt compact encoding not supported > 2^30")}(BigInt(`0x${(n=r.tip).startsWith("0x")?n.slice(2):n}`)),...a]);return new Uint8Array([...function(e){if(e<64)return new Uint8Array([e<<2]);if(e<16384){let t=e<<2|1;return new Uint8Array([255&t,t>>8&255])}if(e<0x40000000){let t=e<<2|2;return new Uint8Array([255&t,t>>8&255,t>>16&255,t>>24&255])}throw Error("Compact encoding > 2^30 not supported")}(f.length+1),l,...f])}({publicKey:function(e){let t=nQ.tw.decode(e);if(t.length<33)throw Error("Too short to contain a public key");return t.slice(1,33)}(i.transaction.address),signature:n,payload:i.transaction}),r=dT(ah.from(o).toString("hex")),s=(0,al.blake2b)(r,void 0,32),"0x"+ah.from(s).toString("hex"))]}if("algo_signTxn"===a)return du(t)?t.map(e=>cw(e)):[cw(t)];
24if("cosmos_signDirect"===a){let e,r,i,s,n;return[(e=ah.from(t.signed.bodyBytes,"base64"),r=ah.from(t.signed.authInfoBytes,"base64"),i=ah.from(t.signature.signature,"base64"),(s=[]).push(ah.from([10])),s.push(cv(e.length)),s.push(e),s.push(ah.from([18])),s.push(cv(r.length)),s.push(r),s.push(ah.from([26])),s.push(cv(i.length)),s.push(i),n=ci(ah.concat(s)),ah.from(n).toString("hex").toUpperCase())]}if("wallet_sendCalls"===a){let e=[];try{if("string"==typeof t)return e.push(t),e;if("object"!=typeof t)return e;null!=t&&t.id&&e.push(t.id);let r=null==(o=null==(n=t?.capabilities)?void 0:n.caip345)?void 0:o.transactionHashes;r&&e.push(...r)}catch(e){console.warn("getWalletSendCallsHashes failed: ",e)}return e}if("string"==typeof t)return[t];let c=t[l.key];if(du(c))return"solana_signAllTransactions"===a?c.map(e=>(function(e){let t=atob(e),r=new Uint8Array(t.length);for(let e=0;e<t.length;e++)r[e]=t.charCodeAt(e);let i=r[0];if(0===i)throw Error("No signatures found");if(r.length<1+64*i)throw Error("Transaction data too short for claimed signature count");if(r.length<100)throw Error("Transaction too short");let s=ah.from(e,"base64").slice(1,65);return nQ.tw.encode(s)})(e)):c;if("string"==typeof c)return[c]}catch(e){this.client.logger.warn(e,"Error extracting tx hashes from result")}return[]})}async processPendingMessageEvents(){try{let e=this.client.session.keys,t=this.client.core.relayer.messages.getWithoutAck(e);for(let[e,r]of Object.entries(t))for(let t of r)try{await this.onProviderMessageEvent({topic:e,message:t,publishedAt:Date.now()})}catch{this.client.logger.warn(`Error processing pending message event for topic: ${e}, message: ${t}`)}}catch(e){this.client.logger.warn(e,"processPendingMessageEvents failed")}}isInitialized(){if(!this.initialized){let{message:e}=ab("NOT_INITIALIZED",this.name);throw Error(e)}}async confirmOnlineStateOrThrow(){await this.client.core.relayer.confirmOnlineStateOrThrow()}registerRelayerEvents(){this.client.core.relayer.on(fe,e=>{this.onProviderMessageEvent(e)})}async onRelayMessage(e){let{topic:t,message:r,attestation:i,transportType:s}=e,{publicKey:n}=this.client.auth.authKeys.keys.includes(gV)?this.client.auth.authKeys.get(gV):{responseTopic:void 0,publicKey:void 0};try{let e=await this.client.core.crypto.decode(t,r,{receiverPublicKey:n,encoding:s===fc?uk:uU});dW(e)?(this.client.core.history.set(t,e),await this.onRelayEventRequest({topic:t,payload:e,attestation:i,transportType:s,encryptedId:uM(r)})):dG(e)?(await this.client.core.history.resolve(e),await this.onRelayEventResponse({topic:t,payload:e,transportType:s}),this.client.core.history.delete(t,e.id)):(this.client.logger.error(`onRelayMessage() -> unknown payload: ${JSON.stringify(e)}`),await this.onRelayEventUnknownPayload({topic:t,payload:e,transportType:s})),await this.client.core.relayer.messages.ack(t,r)}catch(e){this.client.logger.error(`onRelayMessage() -> failed to process an inbound message: ${r}`),this.client.logger.error(e)}}registerExpirerEvents(){this.client.core.expirer.on(fI,async e=>{let{topic:t,id:r}=aF(e.target);return r&&this.client.pendingRequest.keys.includes(r)?await this.deletePendingSessionRequest(r,ab("EXPIRED"),!0):r&&this.client.auth.requests.keys.includes(r)?await this.deletePendingAuthRequest(r,ab("EXPIRED"),!0):void(t?this.client.session.keys.includes(t)&&(await this.deleteSession({topic:t,expirerHasDeleted:!0}),this.client.events.emit("session_expire",{topic:t})):r&&(await this.deleteProposal(r,!0),this.client.events.emit("proposal_expire",{id:r})))})}registerPairingEvents(){this.client.core.pairing.events.on(fy,e=>this.onPairingCreated(e)),this.client.core.pairing.events.on(fb,e=>{this.addToRecentlyDeleted(e.topic,"pairing")})}isValidPairingTopic(e){if(!dp(e,!1)){let{message:t}=ab("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw Error(t)}if(!this.client.core.pairing.pairings.keys.includes(e)){let{message:t}=ab("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw Error(t)}if(aH(this.client.core.pairing.pairings.get(e).expiry)){let{message:t}=ab("EXPIRED",`pairing topic: ${e}`);throw Error(t)}}async isValidSessionTopic(e){if(!dp(e,!1)){let{message:t}=ab("MISSING_OR_INVALID",`session topic should be a string: ${e}`);throw Error(t)}if(this.checkRecentlyDeleted(e),!this.client.session.keys.includes(e)){let{message:t}=ab("NO_MATCHING_KEY",`session topic doesn't exist: ${e}`);throw Error(t)}if(aH(this.client.session.get(e).expiry)){await this.deleteSession({topic:e});let{message:t}=ab("EXPIRED",`session topic: ${e}`);throw Error(t)}if(!this.client.core.crypto.keychain.has(e)){let{message:t}=ab("MISSING_OR_INVALID",`session topic does not exist in keychain: ${e}`);throw await this.deleteSession({topic:e}),Error(t)}}async isValidSessionOrPairingTopic(e){if(this.checkRecentlyDeleted(e),this.client.session.keys.includes(e))await this.isValidSessionTopic(e);else if(this.client.core.pairing.pairings.keys.includes(e))this.isValidPairingTopic(e);else if(dp(e,!1)){let{message:t}=ab("NO_MATCHING_KEY",`session or pairing topic doesn't exist: ${e}`);throw Error(t)}else{let{message:t}=ab("MISSING_OR_INVALID",`session or pairing topic should be a string: ${e}`);throw Error(t)}}async isValidProposalId(e){if("number"!=typeof e){let{message:t}=ab("MISSING_OR_INVALID",`proposal id should be a number: ${e}`);throw Error(t)}if(!this.client.proposal.keys.includes(e)){let{message:t}=ab("NO_MATCHING_KEY",`proposal id doesn't exist: ${e}`);throw Error(t)}if(aH(this.client.proposal.get(e).expiryTimestamp)){await this.deleteProposal(e);let{message:t}=ab("EXPIRED",`proposal id: ${e}`);throw Error(t)}}
24validateRequestExpiry(e){if(e&&(!dg(e,!1)||!(e<=gL.max)||!(e>=gL.min))){let{message:t}=ab("MISSING_OR_INVALID",`request() expiry: ${e}. Expiry must be a number (in seconds) between ${gL.min} and ${gL.max}`);throw Error(t)}}}class g0 extends p7{constructor(e,t){super(e,t,"proposal",gC),this.core=e,this.logger=t}}class g1 extends p7{constructor(e,t){super(e,t,"session",gC),this.core=e,this.logger=t}}class g2 extends p7{constructor(e,t){super(e,t,"request",gC,e=>e.id),this.core=e,this.logger=t}}class g8 extends p7{constructor(e,t){super(e,t,"authKeys",gz,()=>gV),this.core=e,this.logger=t}}class g6 extends p7{constructor(e,t){super(e,t,"pairingTopics",gz),this.core=e,this.logger=t}}class g3 extends p7{constructor(e,t){super(e,t,"requests",gz,e=>e.id),this.core=e,this.logger=t}}var g5=Object.defineProperty,g4=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?g5(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class g9{constructor(e,t){this.core=e,this.logger=t,g4(this,"authKeys"),g4(this,"pairingTopics"),g4(this,"requests"),this.authKeys=new g8(this.core,this.logger),this.pairingTopics=new g6(this.core,this.logger),this.requests=new g3(this.core,this.logger)}
24async init(){await this.authKeys.init(),await this.pairingTopics.init(),await this.requests.init()}}var g7=Object.defineProperty,ye=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?g7(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class yt extends tb{constructor(e){super(e),ye(this,"protocol","wc"),ye(this,"version",2),ye(this,"name",gR),ye(this,"metadata"),ye(this,"core"),ye(this,"logger"),ye(this,"events",new q.EventEmitter),ye(this,"engine"),ye(this,"session"),ye(this,"proposal"),ye(this,"pendingRequest"),ye(this,"auth"),ye(this,"signConfig"),ye(this,"on",(e,t)=>this.events.on(e,t)),ye(this,"once",(e,t)=>this.events.once(e,t)),ye(this,"off",(e,t)=>this.events.off(e,t)),ye(this,"removeListener",(e,t)=>this.events.removeListener(e,t)),ye(this,"removeAllListeners",e=>this.events.removeAllListeners(e)),ye(this,"connect",async e=>{try{return await this.engine.connect(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"pair",async e=>{try{return await this.engine.pair(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"approve",async e=>{try{return await this.engine.approve(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"reject",async e=>{try{return await this.engine.reject(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"update",async e=>{try{return await this.engine.update(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"extend",async e=>{try{return await this.engine.extend(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"request",async e=>{try{return await this.engine.request(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"respond",async e=>{try{return await this.engine.respond(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"ping",async e=>{try{return await this.engine.ping(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"emit",async e=>{try{return await this.engine.emit(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"disconnect",async e=>{try{return await this.engine.disconnect(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"find",e=>{try{return this.engine.find(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"getPendingSessionRequests",()=>{try{return this.engine.getPendingSessionRequests()}catch(e){throw this.logger.error(e.message),e}}),ye(this,"authenticate",async(e,t)=>{try{return await this.engine.authenticate(e,t)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"formatAuthMessage",e=>{try{return this.engine.formatAuthMessage(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"approveSessionAuthenticate",async e=>{try{return await this.engine.approveSessionAuthenticate(e)}catch(e){throw this.logger.error(e.message),e}}),ye(this,"rejectSessionAuthenticate",async e=>{try{return await this.engine.rejectSessionAuthenticate(e)}catch(e){throw this.logger.error(e.message),e}}),this.name=e?.name||gR,this.metadata=function(e){var t,r;let i=aD();try{let s,n;return null!=e&&e.url&&i.url&&new URL(e.url).host!==new URL(i.url).host&&(console.warn(`The configured WalletConnect 'metadata.url':${e.url} differs from the actual page url:${i.url}. This is probably unintended and can lead to issues.`),e.url=i.url),null!=(t=e?.icons)&&t.length&&e.icons.length>0&&(e.icons=e.icons.filter(e=>""!==e)),s=a_(a_({},i),e),n={url:e?.url||i.url,name:e?.name||i.name,description:e?.description||i.description,icons:null!=(r=e?.icons)&&r.length&&e.icons.length>0?e.icons:i.icons},av(s,aE(n))}catch(t){return console.warn("Error populating app metadata",t),e||i}}(e?.metadata),this.signConfig=e?.signConfig;const t=dN({logger:e?.logger||"error",name:this.name});this.logger=t,this.core=e?.core||new gN(e),this.session=new g1(this.core,this.logger),this.proposal=new g0(this.core,this.logger),this.pendingRequest=new g2(this.core,this.logger),this.engine=new gX(this),this.auth=new g9(this.core,this.logger)}static async init(e){let t=new yt(e);return await t.initialize(),t}get context(){return e9(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.auth.init(),await this.engine.init(),this.logger.info("SignClient Initialization Success")}catch(e){throw this.logger.info("SignClient Initialization Failure"),this.logger.error(e.message),e}}}
24var yr=r(16749),yi=r(51419),ys=r.n(yi),yn=r(38559),yo=r(40426);let ya=((b={}).ETH_SEND_TRANSACTION="eth_sendTransaction",b.ETH_SIGN_TRANSACTION="eth_signTransaction",b.ETH_SIGN="eth_sign",b.PERSONAL_SIGN="personal_sign",b.ETH_SIGN_TYPED_DATA="eth_signTypedData",b.ETH_SIGN_TYPED_DATA_V3="eth_signTypedData_v3",b.ETH_SIGN_TYPED_DATA_V4="eth_signTypedData_v4",b.ADD_ETHEREUM_CHAIN="wallet_addEthereumChain",b.SWITCH_ETHEREUM_CHAIN="wallet_switchEthereumChain",b),yl=((m={}).SIGN_TRANSACTION="solana_signTransaction",m.SIGN_MESSAGE="solana_signMessage",m),yc=((w={}).ETH_CHAIN_CHANGED="chainChanged",w.ETH_ACCOUNTS_CHANGED="accountsChanged",w),yh=((v={}).SOL_CHAIN_CHANGED="chainChanged",v.SOL_ACCOUNTS_CHANGED="accountsChanged",v),yu=async()=>({name:(0,yn.Lq)(window),icon:await (0,yn.ZE)(window)}),yd=async(e,t)=>{var r;let i,s=await yu();return{connectorSettings:{walletConnectInitOptions:{projectId:t,relayUrl:"wss://relay.walletconnect.com",metadata:{name:s.name,description:s.name,url:window.location.origin,icons:[s.icon||""]}}},loginSettings:{optionalNamespaces:Object.fromEntries((i=[],(r=e.map(e=>{if(e.chainNamespace===L.l.SOLANA)return`${e.chainNamespace}:${yo.Ah[e.chainId]}`;if(e.chainNamespace===L.l.EIP155)return`${e.chainNamespace}:${parseInt(e.chainId,16)}`;throw Error(`Unsupported chain namespace: ${e.chainNamespace}`)})).forEach(e=>{let[t]=e.split(":");i.includes(t)||i.push(t)}),i).map(e=>[e,{methods:(e=>{switch(e){case L.l.EIP155:return Object.values(ya);case L.l.SOLANA:return Object.values(yl);default:throw Error(`No default methods for namespace: ${e}`)}})(e),chains:r.filter(t=>t.startsWith(e)),events:(e=>{switch(e){case L.l.EIP155:return Object.values(yc);case L.l.SOLANA:return Object.values(yh);default:throw Error(`No default events for namespace: ${e}`)}})(e)}]))}}};var yf=r(75801),yp=r(52757);let yg=e=>{if("number"==typeof e)return`0x${e.toString(16)}`;if("string"==typeof e)return e.startsWith("0x")?e:`0x${parseInt(e,10).toString(16)}`;throw Error(`Invalid chainId: ${e}`)};var yy=r(77092),yb=r(21513),ym=r(49304).Buffer;async function yw(e){if(e.session.length){let t=e.session.keys.length-1;return e.session.get(e.session.keys[t])}return null}async function yv(e,t,r,i){let s=await yw(e);if(!s)throw yf.P.disconnected();return"u">typeof window&&/Mobi|Android|iPhone|iPad|iPod|Opera Mini|IEMobile|WPDesktop/i.test(window.navigator.userAgent)&&s.peer.metadata.redirect&&s.peer.metadata.redirect.native&&window.open(s.peer.metadata.redirect.native,"_blank"),e.request({topic:s.topic,chainId:t,request:{method:r,params:t.startsWith("solana:")?(0,k.A)((0,k.A)({},i),{},{pubkey:s.self.publicKey}):i}})}async function yE(e){let t=await yw(e);if(!t)throw yf.P.disconnected();let r=af(t.namespaces);if(r&&r.length)return[...new Set(r.map(e=>ad(e).address))];throw yb.T7.connectionError("Failed to get accounts")}async function yx({connector:e,chainId:t,newChainId:r}){await yv(e,`eip155:${t}`,"wallet_switchEthereumChain",[{chainId:r}])}async function yI({connector:e,chainId:t,chainConfig:r}){if(!r)throw yf.P.custom({message:"Chain config is required",code:4902});let i=yg(r.chainId),s=(0,k.A)((0,k.A)({},r),{},{chainId:i});await yv(e,`eip155:${t}`,"wallet_addEthereumChain",[s])}var yS=r(65803),yO=r(89762),y_=r(84428),yA=r(85566),yP=r(52453),yT=r(44023),yN=r(76308),yR=r(64016);class yC extends yN.D{constructor({config:e,state:t,connector:r}){super({config:{chain:e.chain,chains:e.chains,skipLookupNetwork:!!e.skipLookupNetwork},state:(0,k.A)((0,k.A)({},t||{}),{},{chainId:"loading",accounts:[]})}),(0,D.A)(this,"connector",null),this.connector=r||null}async enable(){if(!this.connector)throw yf.P.custom({message:"Connector is not initialized, pass wallet connect connector in constructor",code:4902});return await this.setupProvider(this.connector),this._providerEngineProxy.request({method:"eth_accounts"})}async setupProvider(e){this.onConnectorStateUpdate(e),await this.setupEngine(e,this.config.chain.chainId)}async switchChain({chainId:e}){if(!this.connector)throw yf.P.custom({message:"Connector is not initialized, pass wallet connect connector in constructor",code:4902});if(!this.getChain(e))throw yb.T7.connectionError("Chain config is not available");let t=parseInt(this.getCurrentChainId(),16);await yx({connector:this.connector,chainId:t,newChainId:e}),await this.setupEngine(this.connector,e),this.lookupNetwork(this.connector,e),this.update({chainId:e})}async addChain(e){if(!this.connector)throw yf.P.custom({message:"Connector is not initialized, pass wallet connect connector in constructor",code:4902});let t=parseInt(this.getCurrentChainId(),16);await yI({connector:this.connector,chainId:t,chainConfig:e})}async lookupNetwork(e,t){return t}async setupEngine(e,t){let r=this.getChain(t);if(r.chainNamespace===L.l.EIP155)await this.setupEthEngine(e,t);else if(r.chainNamespace===L.l.SOLANA)await this.setupSolEngine(e,t);else throw Error(`Unsupported chainNamespace: ${r.chainNamespace}`);
24this.emit("chainChanged",t),this.emit("connect",{chainId:t}),this.update({chainId:t})}async setupEthEngine(e,t){let r=this.getChain(t),i=function({connector:e,chainId:t}){return{getPrivateKey:async()=>{throw yf.r.methodNotSupported()},getPublicKey:async()=>{throw yf.r.methodNotSupported()},getAccounts:async t=>yE(e),processTransaction:async(r,i)=>await yv(e,`eip155:${t}`,yr.zb.ETH_TRANSACTION,[r]),processSignTransaction:async(r,i)=>await yv(e,`eip155:${t}`,"eth_signTransaction",[r]),processEthSignMessage:async(r,i)=>await yv(e,`eip155:${t}`,yr.zb.ETH_SIGN,[r.from,r.data]),processPersonalMessage:async(r,i)=>await yv(e,`eip155:${t}`,yr.zb.PERSONAL_SIGN,[r.data,r.from]),processTypedMessageV4:async r=>await yv(e,`eip155:${t}`,yr.zb.ETH_SIGN_TYPED_DATA_V4,[r.from,r.data]),processGetCapabilities:async r=>await yv(e,`eip155:${t}`,"wallet_getCapabilities",r),processSendCalls:async r=>await yv(e,`eip155:${t}`,"wallet_sendCalls",[r]),processGetCallsStatus:async r=>await yv(e,`eip155:${t}`,"wallet_getCallsStatus",[r]),processShowCallsStatus:async r=>{await yv(e,`eip155:${t}`,"wallet_showCallsStatus",[r])}}}({connector:e,chainId:parseInt(t,16)}),s=await yE(e);this.update({accounts:s||[]});let n=function(e){let{getAccounts:t,getPrivateKey:r,getPublicKey:i,processTransaction:s,processSignTransaction:n,processEthSignMessage:o,processTypedMessageV4:a,processPersonalMessage:l,processGetCapabilities:c,processSendCalls:h,processGetCallsStatus:u,processShowCallsStatus:d}=e;return(0,yp.Vv)([(0,yS.ld)({eth_syncing:!1}),function({getAccounts:e,getPrivateKey:t,getPublicKey:r,processEthSignMessage:i,processPersonalMessage:s,processTransaction:n,processSignTransaction:o,processTypedMessageV4:a,processGetCapabilities:l,processSendCalls:c,processGetCallsStatus:h,processShowCallsStatus:u}){if(!e)throw Error("opts.getAccounts is required");async function d(t,r){if("string"==typeof t&&t.length>0){let i=(await e(r)).map(e=>e.toLowerCase()),s=t.toLowerCase();if(i.includes(s))return s}throw yf.r.invalidParams({message:"Invalid parameters: must provide an Ethereum address."})}async function f(t,r){r.result=await e(t)}async function p(e,t){if(!n)throw yf.r.methodNotSupported();let r=e.params[0]||{from:""};r.from=await d(r.from,e),t.result=await n(r,e)}async function g(e,t){if(!o)throw yf.r.methodNotSupported();let r=e.params[0]||{from:""};r.from=await d(r.from,e),t.result=await o(r,e)}async function y(e,t){if(!i)throw yf.r.methodNotSupported();let r=e.params,s=e.params[2]||{};if(Array.isArray(e.params)){if(2!==e.params.length)throw Error(`WalletMiddleware - incorrect params for ${e.method} method. expected [address, message]`);let t=e.params;r={from:t[0],data:t[1]}}r=(0,k.A)((0,k.A)({},s),r),t.result=await i(r,e)}async function b(e,t){if(!a)throw yf.r.methodNotSupported();if(!(null!=e&&e.params))throw Error("WalletMiddleware - missing params");let r=e.params;if(Array.isArray(e.params)){if(2!==e.params.length)throw Error(`WalletMiddleware - incorrect params for ${e.method} method. expected [address, typedData]`);let t=e.params;r={from:t[0],data:t[1]}}t.result=await a(r,e)}async function m(e,t){if(!s)throw yf.r.methodNotSupported();let r=e.params,i=e.params[2]||{};if(Array.isArray(e.params)){if(!(e.params.length>=2))throw Error(`WalletMiddleware - incorrect params for ${e.method} method. expected [message, address]`);let t=e.params;if("object"==typeof t[0]){let{challenge:e,address:i}=t[0];r={from:i,data:e}}else{let e=t[0];r={from:t[1],data:e}}}r=(0,k.A)((0,k.A)({},i),r),t.result=await s(r,e)}async function w(e,r){if(!t)throw yf.r.methodNotSupported();r.result=await t(e)}async function v(e,t){if(!r)throw yf.r.methodNotSupported();t.result=await r(e)}async function E(e,t){if(!l)throw yf.r.methodNotSupported();if(!Array.isArray(e.params)||0===e.params.length)throw yf.r.invalidParams("Invalid parameters");let r=e.params[0];if(!(0,yO.q)(r))throw yf.r.invalidParams("Invalid account address");let i=e.params[1]||[];if(!Array.isArray(i))throw yf.r.invalidParams(`Invalid params, received: ${i}. expected: Array`);let s=[r,i=i.map(e=>(0,yO.q)(e)?e:(0,y_.nj)(e))];t.result=await l(s)}async function x(e,t){if(!c)throw yf.r.methodNotSupported();let r=Array.isArray(e.params)?e.params[0]:e.params;if(!r||"object"!=typeof r)throw yf.r.invalidParams("Missing or invalid params for wallet_sendCalls");if(!r.version||"string"!=typeof r.version)throw yf.r.invalidParams(`Invalid version: expected string, got "${r.version||"undefined"}"`);
24if(!r.chainId)throw yf.r.invalidParams("Missing required field: chainId");if(!Array.isArray(r.calls)||0===r.calls.length)throw yf.r.invalidParams("calls must be a non-empty array");let i=r.from;i&&await d(i,e);let s=(0,k.A)((0,k.A)({},r),{},{chainId:(0,yO.q)(r.chainId)?r.chainId:(0,y_.nj)(r.chainId)});t.result=await c(s)}async function I(e,t){if(!h)throw yf.r.methodNotSupported();let r=Array.isArray(e.params)?e.params[0]:e.params;if(!r||"string"!=typeof r)throw yf.r.invalidParams("Missing or invalid batchId");t.result=await h(r)}async function S(e,t){if(!u)throw yf.r.methodNotSupported();let r=Array.isArray(e.params)?e.params[0]:e.params;if(!r||"string"!=typeof r)throw yf.r.invalidParams("Missing or invalid batchId");await u(r),t.result=!0}return(0,yS.ld)({eth_accounts:(0,yS.jg)(f),eth_requestAccounts:(0,yS.jg)(f),eth_private_key:(0,yS.jg)(w),eth_public_key:(0,yS.jg)(v),public_key:(0,yS.jg)(v),private_key:(0,yS.jg)(w),eth_sendTransaction:(0,yS.jg)(p),eth_signTransaction:(0,yS.jg)(g),eth_sign:(0,yS.jg)(y),eth_signTypedData_v4:(0,yS.jg)(b),personal_sign:(0,yS.jg)(m),wallet_getCapabilities:(0,yS.jg)(E),wallet_sendCalls:(0,yS.jg)(x),wallet_getCallsStatus:(0,yS.jg)(I),wallet_showCallsStatus:(0,yS.jg)(S)})}({getAccounts:t,getPrivateKey:r,getPublicKey:i,processTransaction:s,processEthSignMessage:o,processSignTransaction:n,processTypedMessageV4:a,processPersonalMessage:l,processGetCapabilities:c,processSendCalls:h,processGetCallsStatus:u,processShowCallsStatus:d})])}(i),o=this.getEthChainSwitchMiddleware(),a=new yp.WJ,{networkMiddleware:l}=function(e){let{chainId:t,rpcTarget:r}=e,i=(0,yA.N)({rpcTarget:r});return{networkMiddleware:(0,yp.Vv)([(e,r,i,s)=>"eth_chainId"===e.method?(r.result=t,s()):i(),(t,r,i,s)=>"eth_provider_config"===t.method?(r.result=e,s()):i(),i]),fetchMiddleware:i}}(r);a.push(n),a.push(o),a.push(l);let c=(0,yp.iR)(a);this.updateProviderEngineProxy(c)}async setupSolEngine(e,t){let r=this.getChain(t),i=function({connector:e,chainId:t}){return{requestAccounts:async t=>yE(e),getPrivateKey:async()=>{throw yf.r.methodNotSupported()},getSecretKey:async()=>{throw yf.r.methodNotSupported()},getPublicKey:async()=>{throw yf.r.methodNotSupported()},getAccounts:async t=>yE(e),signAllTransactions:async e=>{throw yf.r.methodNotSupported()},signAndSendTransaction:async e=>{throw yf.r.methodNotSupported()},signMessage:async r=>(await yv(e,`solana:${yo.Ah[t]}`,yr.zl.SIGN_MESSAGE,{message:yy.r.encode(ym.from(r.params.data,"utf-8"))})).signature,signTransaction:async r=>{if(0===(await yE(e)).length)throw yf.P.disconnected();return(await yv(e,`solana:${yo.Ah[t]}`,yr.zl.SIGN_TRANSACTION,{transaction:r.params.message})).signature}}}({connector:e,chainId:t}),s=await yE(e);this.update({accounts:s||[]});let n=(0,yP.Fo)(i),o=new yp.WJ,{networkMiddleware:a}=(0,yT.zZ)(r);o.push(n),o.push(a);let l=(0,yp.iR)(o);this.updateProviderEngineProxy(l)}getEthChainSwitchMiddleware(){return function({switchChain:e,addChain:t}){async function r(t,r){var i;let s=null!=(i=t.params)&&i.length?t.params[0]:void 0;if(!s)throw yf.r.invalidParams("Missing chainId");r.result=await e(s)}async function i(e,r){var i;let s=null!=(i=e.params)&&i.length?e.params[0]:void 0;if(!s)throw yf.r.invalidParams("Missing chainConfig");r.result=await t(s)}return(0,yS.ld)({wallet_switchEthereumChain:(0,yS.jg)(r),wallet_addEthereumChain:(0,yS.jg)(i)})}({switchChain:async e=>{let{chainId:t}=e;await this.switchChain({chainId:t})},addChain:async e=>{await this.addChain(e)}})}connectedTopic(){var e,t;if(!this.connector)throw yb.T7.notConnectedError("Wallet connect connector is not connected");if(null!=(e=this.connector)&&null!=(e=e.session)&&e.length){let e=this.connector.session.keys.length-1;return null==(t=this.connector.session.get(this.connector.session.keys[e]))?void 0:t.topic}}checkIfAccountAllowed(e){if(!this.connector||!this.connectedTopic())return!1;let t=af(this.connector.session.get(this.connectedTopic()).namespaces),r=!1;for(let s of t){var i;if((null==(i=ad(s).address)?void 0:i.toLowerCase())===(null==e?void 0:e.toLowerCase())){r=!0;break}}return r}async onConnectorStateUpdate(e){e.events.on("session_event",async t=>{if(yR.R.debug("session_event data",t),!this.provider)throw yb.T7.notConnectedError("Wallet connect connector is not connected");let{event:r}=t.params,{name:i,data:s}=r||{};if("accountsChanged"===i&&null!=s&&s.length&&this.state.accounts[0]!==s[0]&&this.checkIfAccountAllowed(s[0])&&(this.update({accounts:s}
24),this.emit("accountsChanged",s)),"chainChanged"===r.name){if(!s)return;let t=yg(s),{currentChain:r}=this;t&&r.chainId!==t&&await this.setupEngine(e,t)}})}getCurrentChainId(){let e=this.state.chainId;return e&&"loading"!==e?e:this.config.chains[0].chainId}}(0,D.A)(yC,"getProviderInstance",async e=>{let t=new yC({config:{chain:e.chain,chains:e.chains,skipLookupNetwork:e.skipLookupNetwork}});return await t.setupProvider(e.connector),t});var yB=r(54019),yU=r(70019),yk=r(62174),yD=r(10154),yL=r(92698),yj=r(36271),yM=r(66668);class yq extends yB.x{constructor(e){var t,r,i,s,n;super(e),(0,D.A)(this,"name",yU.LZ.WALLET_CONNECT_V2),(0,D.A)(this,"connectorNamespace",yk.R.MULTICHAIN),(0,D.A)(this,"currentChainNamespace",L.l.OTHER),(0,D.A)(this,"type",yD.rp.EXTERNAL),(0,D.A)(this,"connectorOptions",void 0),(0,D.A)(this,"status",yD.bo.NOT_READY),(0,D.A)(this,"connectorData",{uri:""}),(0,D.A)(this,"connector",null),(0,D.A)(this,"activeSession",null),(0,D.A)(this,"wcProvider",null),(0,D.A)(this,"analytics",void 0),this.connectorOptions=(0,k.A)({},e);const{qrcodeModal:o,walletConnectInitOptions:a}=(null==e?void 0:e.connectorSettings)||{};this.connectorOptions=(0,k.A)((0,k.A)({},this.connectorOptions),{},{connectorSettings:null!=(t=null==(r=this.connectorOptions)?void 0:r.connectorSettings)?t:{},loginSettings:null!=(i=null==(s=this.connectorOptions)?void 0:s.loginSettings)?i:{}}),this.analytics=e.analytics,o&&(this.connectorOptions.connectorSettings.qrcodeModal=o),a&&(this.connectorOptions.connectorSettings.walletConnectInitOptions=(0,k.A)((0,k.A)({},null!=(n=this.connectorOptions.connectorSettings.walletConnectInitOptions)?n:{}),a));const{loginSettings:l}=e;l&&(this.connectorOptions.loginSettings=(0,k.A)((0,k.A)({},this.connectorOptions.loginSettings||{}),l))}get connected(){return!!this.activeSession}get provider(){return this.status!==yD.bo.NOT_READY&&this.wcProvider?this.wcProvider:null}set provider(e){throw Error("Not implemented")}async init(e){var t;let r=this.coreOptions.chains.find(t=>t.chainId===e.chainId);super.checkInitializationRequirements({chainConfig:r});let i=null==(t=this.connectorOptions.connectorSettings)||null==(t=t.walletConnectInitOptions)?void 0:t.projectId,s=this.coreOptions.chains.filter(e=>e.chainNamespace===L.l.EIP155||e.chainNamespace===L.l.SOLANA);if(0===s.length)throw yb.il.invalidParams("No supported chains found");let n=await yd(s,i);this.connectorOptions.loginSettings&&0!==Object.keys(this.connectorOptions.loginSettings).length||(this.connectorOptions.loginSettings=n.loginSettings),this.connectorOptions.connectorSettings=ys()(n.connectorSettings||{},this.connectorOptions.connectorSettings||{});let{connectorSettings:o}=this.connectorOptions;if(this.connector=await yt.init(null==o?void 0:o.walletConnectInitOptions),this.wcProvider=new yC({config:{chain:r,chains:this.coreOptions.chains},connector:this.connector}),this.emit(yD.qM.READY,yU.LZ.WALLET_CONNECT_V2),this.status=yD.bo.READY,yR.R.debug("initializing wallet connect v2 connector"),e.autoConnect)if(await this.checkForPersistedSession(),this.connected){this.rehydrated=!0;try{await this.onConnectHandler({chain:r,getIdentityToken:e.getIdentityToken})}catch(e){yR.R.error("wallet auto connect",e),this.emit(yD.qM.REHYDRATION_ERROR,e)}}else this.status=yD.bo.NOT_READY,this.emit(yD.qM.CACHE_CLEAR)}async connect({chainId:e,getIdentityToken:t}){super.checkConnectionRequirements();let r=this.coreOptions.chains.find(t=>t.chainId===e);if(!r)throw yb.T7.connectionError("Chain config is not available");if(!this.connector)throw yb.il.notReady("Wallet connector is not ready yet");let i=!this.connected&&!this.rehydrated,s=Date.now(),n={connector:this.name,connector_type:this.t
24ype,is_injected:this.isInjected,is_wallet_connect:!0,chain_id:(0,yL.Eo)(r),chain_name:null==r?void 0:r.displayName,chain_namespace:null==r?void 0:r.chainNamespace};try{let e=()=>{if(i){var e,t,r;let{name:i,url:o,redirect:a}=(null==(e=this.activeSession)||null==(e=e.peer)?void 0:e.metadata)||{},{native:l,universal:c,linkMode:h}=a||{};n=(0,k.A)((0,k.A)({},n),{},{connector:i||this.name,wallet_url:o,redirect_native:l,redirect_universal:c,redirect_link_mode_enabled:h}),null==(t=this.analytics)||t.track(yj.R2.CONNECTION_STARTED,n),null==(r=this.analytics)||r.track(yj.R2.CONNECTION_COMPLETED,(0,k.A)((0,k.A)({},n),{},{duration:Date.now()-s}))}};if(this.connected)return await this.onConnectHandler({chain:r,getIdentityToken:t}),this.provider;return this.status!==yD.bo.CONNECTING&&await this.createNewSession({chainConfig:r,trackCompletionEvents:e,getIdentityToken:t}),this.provider}catch(e){if(yR.R.error("Wallet connect v2 connector error while connecting",e),this.status=yD.bo.READY,this.rehydrated=!0,this.emit(yD.qM.ERRORED,e),i){var o,a;null==(o=this.analytics)||o.track(yj.R2.CONNECTION_STARTED,n),null==(a=this.analytics)||a.track(yj.R2.CONNECTION_FAILED,(0,k.A)((0,k.A)((0,k.A)({},n),(0,j.is)(e)),{},{duration:Date.now()-s}))}throw e instanceof yb.uF?e:yb.T7.connectionError(`Failed to login with wallet connect: ${(null==e?void 0:e.message)||""}`,e)}}async switchChain(e,t=!1){if(super.checkSwitchChainRequirements(e,t),!this.wcProvider)throw yb.il.notReady("Wallet Connect provider is not ready yet");try{await this.wcProvider.switchChain({chainId:e.chainId})}catch(e){throw yR.R.error("error while switching chain",e),e}}async getUserInfo(){if(!this.canAuthorize)throw yb.T7.notConnectedError("Not connected with wallet, Please login/connect first");return{}}async disconnect(e={cleanup:!1,sessionRemovedByWallet:!1}){var t,r;let{cleanup:i}=e;if(!this.connector||!this.connected||!(null!=(t=this.activeSession)&&t.topic))throw yb.T7.notConnectedError("Not connected with wallet");e.sessionRemovedByWallet||await this.connector.disconnect({topic:null==(r=this.activeSession)?void 0:r.topic,reason:am("USER_DISCONNECTED")}),this.rehydrated=!1,i?(this.connector=null,this.status=yD.bo.NOT_READY,this.wcProvider=null):this.status=yD.bo.READY,this.activeSession=null,this.emit(yD.qM.DISCONNECTED)}async getIdentityToken(){if(!this.provider||!this.canAuthorize)throw yb.T7.notConnectedError();this.status=yD.bo.AUTHORIZING,this.emit(yD.qM.AUTHORIZING,{connector:yU.LZ.WALLET_CONNECT_V2});let{chainId:e}=this.provider,t=this.coreOptions.chains.find(t=>t.chainId===e);if(!t)throw yb.T7.connectionError("Chain config is not available");let{chainNamespace:r}=t,i=await this.provider.request({method:r===L.l.EIP155?yr.zb.GET_ACCOUNTS:yr.zl.GET_ACCOUNTS});if(i&&i.length>0){let t=(0,yM.Ly)(i[0],this.name);if(t&&!(0,yM._P)(t))return this.status=yD.bo.AUTHORIZED,this.emit(yD.qM.AUTHORIZED,{connector:yU.LZ.WALLET_CONNECT_V2,identityTokenInfo:{idToken:t}}),{idToken:t};let s={domain:window.location.origin,uri:window.location.href,address:i[0],chainId:parseInt(e,16),version:"1",nonce:Math.random().toString(36).slice(2),issuedAt:new Date().toISOString()},n=await (0,M.$p)(s,r),o=await this._getSignedMessage(n,i,r),a=await (0,M.lA)(r,o,n,this.name,this.coreOptions.sessionTime,this.coreOptions.clientId,this.coreOptions.web3AuthNetwork);return(0,yM.f7)(i[0],this.name,a),this.status=yD.bo.AUTHORIZED,this.emit(yD.qM.AUTHORIZED,{connector:yU.LZ.WALLET_CONNECT_V2,identityTokenInfo:{idToken:a}}),{idToken:a}}throw yb.T7.notConnectedError("Not connected with wallet, Please login/connect first")}async enableMFA(){throw Error("Method Not implemented")}async manageMFA(){throw Error("Method Not implemented")}cleanupPendingPairings(){if(!this.connector)throw yb.il.notReady("Wallet connector is not ready yet");let e=this.connector.pairing.getAll({active:!1});du(e)&&e.forEach(e=>{this.connector&&this.connector.pairing.delete(e.topic,am("USER_DISCONNECTED"))})}async checkForPersistedSession(){if(!this.connector)throw yb.il.notReady("Wallet connector is not ready yet");if(this.connector.session.length){let e=this.connector.session.keys.length-1;this.activeSession=this.connector.session.get(this.connector.session.keys[e])}return this.activeSession}async createNewSession({forceNewSession:e=!1,chainConfig:t,trackCompletionEvents:r,getIdentityToken:i}){var s,n,o,a;try{if(!this.connector)throw yb.il.notReady("Wallet connector is not ready yet");if(!this.connectorOptions.loginSettings||0===Object.keys(this.connectorOptions.loginSettings).length)throw yb.il.notReady("login settings are not set yet");
24this.status=yD.bo.CONNECTING,this.emit(yD.qM.CONNECTING,{connector:yU.LZ.WALLET_CONNECT_V2}),e&&null!=(s=this.activeSession)&&s.topic&&await this.connector.disconnect({topic:null==(o=this.activeSession)?void 0:o.topic,reason:am("USER_DISCONNECTED")});let{uri:a,approval:l}=await this.connector.connect(this.connectorOptions.loginSettings),c=null==(n=this.connectorOptions)||null==(n=n.connectorSettings)?void 0:n.qrcodeModal;if(a)if(c)try{await c.openModal({uri:a}),yR.R.debug("EVENT","QR Code Modal closed"),this.status=yD.bo.READY,this.emit(yD.qM.READY,yU.LZ.WALLET_CONNECT_V2)}catch(e){yR.R.error("unable to open qr code modal",e)}else this.updateConnectorData({uri:a});yR.R.info("awaiting session approval from wallet");let h=await l();this.activeSession=h,await this.onConnectHandler({chain:t,trackCompletionEvents:r,getIdentityToken:i}),c&&c.closeModal()}catch(e){if(null!=(a=e.message)&&a.toLowerCase().includes("proposal expired")){if(yR.R.info("current connector status: ",this.status),this.status===yD.bo.CONNECTING)return yR.R.info("retrying to create new wallet connect session since proposal expired"),this.createNewSession({forceNewSession:!0,chainConfig:t,getIdentityToken:i});if(this.status===yD.bo.READY)return void yR.R.info("ignoring proposal expired error since some other connector is connected")}throw yR.R.error("error while creating new wallet connect session",e),this.emit(yD.qM.ERRORED,e),e}}async onConnectHandler({chain:e,trackCompletionEvents:t,getIdentityToken:r}){var i;let s;if(!this.connector||!this.wcProvider)throw yb.il.notReady("Wallet connect connector is not ready yet");this.subscribeEvents(),null!=(i=this.connectorOptions.connectorSettings)&&i.qrcodeModal&&(this.wcProvider=new yC({config:{chain:e,chains:this.coreOptions.chains,skipLookupNetwork:!0},connector:this.connector})),await this.wcProvider.setupProvider(this.connector),this.cleanupPendingPairings(),this.status=yD.bo.CONNECTED,t&&t(),this.emit(yD.qM.CONNECTED,{connector:yU.LZ.WALLET_CONNECT_V2,reconnected:this.rehydrated,provider:this.provider,identityTokenInfo:s}),r&&(s=await this.getIdentityToken())}subscribeEvents(){if(!this.connector)throw yb.il.notReady("Wallet connector is not ready yet");this.connector.events.on("session_update",({topic:e,params:t})=>{if(!this.connector)return;let{namespaces:r}=t,i=this.connector.session.get(e),s=(0,k.A)((0,k.A)({},i),{},{namespaces:r});this.activeSession=s}),this.connector.events.on("session_delete",()=>{this.disconnect({sessionRemovedByWallet:!0})}),this.connector.events.on("session_expire",({topic:e})=>{var t;yR.R.info("Session expired event received for topic:",e),(null==(t=this.activeSession)?void 0:t.topic)===e&&this.disconnect({sessionRemovedByWallet:!0}).catch(e=>{yR.R.error("Failed to disconnect expired session",e)})})}async _getSignedMessage(e,t,r){return await this.provider.request({method:r===L.l.EIP155?yr.zb.PERSONAL_SIGN:yr.zl.SIGN_MESSAGE,params:r===L.l.EIP155?[e,t[0]]:{data:e}})}}let y$=e=>({coreOptions:t,projectConfig:r,analytics:i})=>{var s;let n=(null==e||null==(s=e.walletConnectInitOptions)?void 0:s.projectId)||(null==r?void 0:r.walletConnectProjectId);return new yq({connectorSettings:(0,k.A)((0,k.A)({},e),{},{walletConnectInitOptions:(0,k.A)((0,k.A)({},null==e?void 0:e.walletConnectInitOptions),{},{projectId:n})}),coreOptions:t,analytics:i})}},94326:(e,t,r)=>{"use strict";var i=r(87358);function s(){return"u"<typeof document&&"u">typeof navigator&&"ReactNative"===navigator.product}function n(){return void 0!==i&&void 0!==i.versions&&void 0!==i.versions.node}Object.defineProperty(t,"__esModule",{value:!0}),t.isBrowser=t.isNode=t.isReactNative=void 0,t.isReactNative=s,t.isNode=n,t.isBrowser=function(){return!s()&&!n()}},94747:(e,t,r)=>{"use strict";r.d(t,{ME:()=>c,Nx:()=>l,Sl:()=>o,uU:()=>a});var i=r(66347),s=r(45696),n=r(12581);function o(e,{size:t}){if((0,s.E)(e)>t)throw new i.u({givenSize:(0,s.E)(e),maxSize:t})}function a(e,t={}){let{signed:r}=t;t.size&&o(e,{size:t.size});let i=BigInt(e);if(!r)return i;let s=(e.length-2)/2;return i<=(1n<<8n*BigInt(s)-1n)-1n?i:i-BigInt(`0x${"f".padStart(2*s,"f")}`)-1n}function l(e,t={}){let r=e;if(t.size&&(o(r,{size:t.size}),r=(0,n.B)(r)),"0x00"===(0,n.B)(r))return!1;if("0x01"===(0,n.B)(r))return!0;throw new i.H2(r)}function c(e,t={}){let r=a(e,t),s=Number(r);
24if(!Number.isSafeInteger(s))throw new i.Ty({max:`${Number.MAX_SAFE_INTEGER}`,min:`${Number.MIN_SAFE_INTEGER}`,signed:t.signed,size:t.size,value:`${r}n`});return s}},94762:e=>{function t(e){return(0x100000000+e).toString(16).substring(1)}e.exports={normalizeInput:function(e){let t;if(e instanceof Uint8Array)t=e;else if("string"==typeof e)t=new TextEncoder().encode(e);else throw Error("Input must be an string, Buffer or Uint8Array");return t},toHex:function(e){return Array.prototype.map.call(e,function(e){return(e<16?"0":"")+e.toString(16)}).join("")},debugPrint:function(e,r,i){let s="\n"+e+" = ";for(let n=0;n<r.length;n+=2){if(32===i)s+=t(r[n]).toUpperCase(),s+=" ",s+=t(r[n+1]).toUpperCase();else if(64===i)s+=t(r[n+1]).toUpperCase(),s+=t(r[n]).toUpperCase();else throw Error("Invalid size "+i);n%6==4?s+="\n"+Array(e.length+4).join(" "):n<r.length-2&&(s+=" ")}console.log(s)},testSpeed:function(e,t,r){let i=new Date().getTime(),s=new Uint8Array(t);for(let e=0;e<t;e++)s[e]=e%256;let n=new Date().getTime();console.log("Generated random input in "+(n-i)+"ms"),i=n;for(let n=0;n<r;n++){let r=e(s),n=new Date().getTime(),o=n-i;i=n,console.log("Hashed in "+o+"ms: "+r.substring(0,20)+"..."),console.log(Math.round(t/1048576/(o/1e3)*100)/100+" MB PER SECOND")}}}},99405:(e,t,r)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});let i=r(24393);i.__exportStar(r(45082),t),i.__exportStar(r(94326),t)}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.