PageSourceSearch

https://securitynet.ai/_next/static/chunks/0nwfdi1b0smhi.js

js securitynet.ai collected 2026-10-05 12:36:23 UTC 501,541 bytes, 233 lines download raw bytes

1(globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,219298,(e,t,r)=>{"use strict";var i,s="object"==typeof Reflect?Reflect:null,n=s&&"function"==typeof s.apply?s.apply:function(e,t,r){return Function.prototype.apply.call(e,t,r)};i=s&&"function"==typeof s.ownKeys?s.ownKeys:Object.getOwnPropertySymbols?function(e){return Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e))}:function(e){return Object.getOwnPropertyNames(e)};var o=Number.isNaN||function(e){return e!=e};function a(){a.init.call(this)}t.exports=a,t.exports.once=function(e,t){return new Promise(function(r,i){var s,n,o;function a(r){e.removeListener(t,l),i(r)}function l(){"function"==typeof e.removeListener&&e.removeListener("error",a),r([].slice.call(arguments))}m(e,t,l,{once:!0}),"error"!==t&&(s=e,n=a,o={once:!0},"function"==typeof s.on&&m(s,"error",n,o))})},a.EventEmitter=a,a.prototype._events=void 0,a.prototype._eventsCount=0,a.prototype._maxListeners=void 0;var l=10;function c(e){if("function"!=typeof e)throw TypeError('The "listener" argument must be of type Function. Received type '+typeof e)}function h(e){return void 0===e._maxListeners?a.defaultMaxListeners:e._maxListeners}
1function u(e,t,r,i){if(c(r),void 0===(n=e._events)?(n=e._events=Object.create(null),e._eventsCount=0):(void 0!==n.newListener&&(e.emit("newListener",t,r.listener?r.listener:r),n=e._events),o=n[t]),void 0===o)o=n[t]=r,++e._eventsCount;else if("function"==typeof o?o=n[t]=i?[r,o]:[o,r]:i?o.unshift(r):o.push(r),(s=h(e))>0&&o.length>s&&!o.warned){o.warned=!0;var s,n,o,a=Error("Possible EventEmitter memory leak detected. "+o.length+" "+String(t)+" listeners added. Use emitter.setMaxListeners() to increase limit");a.name="MaxListenersExceededWarning",a.emitter=e,a.type=t,a.count=o.length,console&&console.warn&&console.warn(a)}return e}function f(){if(!this.fired)return(this.target.removeListener(this.type,this.wrapFn),this.fired=!0,0==arguments.length)?this.listener.call(this.target):this.listener.apply(this.target,arguments)}function d(e,t,r){var i={fired:!1,wrapFn:void 0,target:e,type:t,listener:r},s=f.bind(i);return s.listener=r,i.wrapFn=s,s}function p(e,t,r){var i=e._events;if(void 0===i)return[];var s=i[t];return void 0===s?[]:"function"==typeof s?r?[s.listener||s]:[s]:r?function(e){for(var t=Array(e.length),r=0;r<t.length;++r)t[r]=e[r].listener||e[r];return t}(s):y(s,s.length)}function g(e){var t=this._events;if(void 0!==t){var r=t[e];if("function"==typeof r)return 1;if(void 0!==r)return r.length}return 0}function y(e,t){for(var r=Array(t),i=0;i<t;++i)r[i]=e[i];return r}function m(e,t,r,i){if("function"==typeof e.on)i.once?e.once(t,r):e.on(t,r);else if("function"==typeof e.addEventListener)e.addEventListener(t,function s(n){i.once&&e.removeEventListener(t,s),r(n)});else throw TypeError('The "emitter" argument must be of type EventEmitter. Received type '+typeof e)}Object.defineProperty(a,"defaultMaxListeners",{enumerable:!0,get:function(){return l},set:function(e){if("number"!=typeof e||e<0||o(e))throw RangeError('The value of "defaultMaxListeners" is out of range. It must be a non-negative number. Received '+e+".");l=e}}),a.init=function(){(void 0===this._events||this._events===Object.getPrototypeOf(this)._events)&&(this._events=Object.create(null),this._eventsCount=0),this._maxListeners=this._maxListeners||void 0},a.prototype.setMaxListeners=function(e){if("number"!=typeof e||e<0||o(e))throw RangeError('The value of "n" is out of range. It must be a non-negative number. Received '+e+".");return this._maxListeners=e,this},a.prototype.getMaxListeners=function(){return h(this)},a.prototype.emit=function(e){for(var t=[],r=1;r<arguments.length;r++)t.push(arguments[r]);var i="error"===e,s=this._events;if(void 0!==s)i=i&&void 0===s.error;else if(!i)return!1;if(i){if(t.length>0&&(o=t[0]),o instanceof Error)throw o;var o,a=Error("Unhandled error."+(o?" ("+o.message+")":""));throw a.context=o,a}var l=s[e];if(void 0===l)return!1;if("function"==typeof l)n(l,this,t);else for(var c=l.length,h=y(l,c),r=0;r<c;++r)n(h[r],this,t);return!0},a.prototype.addListener=function(e,t){return u(this,e,t,!1)},a.prototype.on=a.prototype.addListener,a.prototype.prependListener=function(e,t){return u(this,e,t,!0)},a.prototype.once=function(e,t){return c(t),this.on(e,d(this,e,t)),this},a.prototype.prependOnceListener=function(e,t){return c(t),this.prependListener(e,d(this,e,t)),this},a.prototype.removeListener=function(e,t){var r,i,s,n,o;if(c(t),void 0===(i=this._events)||void 0===(r=i[e]))return this;if(r===t||r.listener===t)0==--this._eventsCount?this._events=Object.create(null):(delete i[e],i.removeListener&&this.emit("removeListener",e,r.listener||t));else if("function"!=typeof r){for(s=-1,n=r.length-1;n>=0;n--)if(r[n]===t||r[n].listener===t){o=r[n].listener,s=n;break}if(s<0)return this;0===s?r.shift():function(e,t){for(;t+1<e.length;t++)e[t]=e[t+1];e.pop()}(r,s),1===r.length&&(i[e]=r[0]),void 0!==i.removeListener&&this.emit("removeListener",e,o||t)}return this},a.prototype.off=a.prototype.removeListener,a.prototype.removeAllListeners=function(e){var t,r,i;if(void 0===(r=this._events))return this;if(void 0===r.removeListener)return 0==arguments.length?(this._events=Object.create(null),this._eventsCount=0):void 0!==r[e]&&(0==--this._eventsCount?this._events=Object.create(null):delete r[e]),this;if(0==arguments.length){var s,n=Object.keys(r);for(i=0;i<n.length;++i)"removeListener"!==(s=n[i])&&this.removeAllListeners(s);return this.removeAllListeners("removeListener"),this._events=Object.create(null),this._eventsCount=0,this}if("function"==typeof(t=r[e]))this.removeListener(e,t);else if(void 0!==t)for(i=t.length-1;i>=0;i--)this.removeListener(e,t[i]);return this},a.prototype.listeners=function(e){return p(this,e,!0)},a.prototype.rawListeners=function(e){return p(this,e,!1)},a.listenerCount=function(e,t){return"function"==typeof e.listenerCount?e.listenerCount(t):g.call(e,t)},a.prototype.listenerCount=g,a.prototype.eventNames=function(){return this._eventsCount>0?i(this._events):[]}},787267,e=>{"use strict";var t=function(e,r){return(t=Object.setPrototypeOf||({__proto__:[]}
1)instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)t.hasOwnProperty(r)&&(e[r]=t[r])})(e,r)},r=function(){return(r=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 i(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 s(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 n(e){return this instanceof n?(this.v=e,this):new n(e)}e.s(["__assign",()=>r,"__asyncDelegator",0,function(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:n(e[i](t)),done:"return"===i}:s?s(t):t}:s}},"__asyncGenerator",0,function(e,t,r){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var i,s=r.apply(e,t||[]),o=[];return i={},a("next"),a("throw"),a("return"),i[Symbol.asyncIterator]=function(){return this},i;function a(e){s[e]&&(i[e]=function(t){return new Promise(function(r,i){o.push([e,t,r,i])>1||l(e,t)})})}function l(e,t){try{var r;(r=s[e](t)).value instanceof n?Promise.resolve(r.value.v).then(c,h):u(o[0][2],r)}catch(e){u(o[0][3],e)}}function c(e){l("next",e)}function h(e){l("throw",e)}function u(e,t){e(t),o.shift(),o.length&&l(o[0][0],o[0][1])}},"__asyncValues",0,function(e){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=i(e),t={},s("next"),s("throw"),s("return"),t[Symbol.asyncIterator]=function(){return this},t);function s(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)})}}},"__await",0,n,"__awaiter",0,function(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())})},"__classPrivateFieldGet",0,function(e,t){if(!t.has(e))throw TypeError("attempted to get private field on non-instance");return t.get(e)},"__classPrivateFieldSet",0,function(e,t,r){if(!t.has(e))throw TypeError("attempted to set private field on non-instance");return t.set(e,r),r},"__createBinding",0,function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]},"__decorate",0,function(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},"__exportStar",0,function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||(t[r]=e[r])},"__extends",0,function(e,r){function i(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(i.prototype=r.prototype,new i)},"__generator",0,function(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}}}}
1,"__importDefault",0,function(e){return e&&e.__esModule?e:{default:e}},"__importStar",0,function(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},"__makeTemplateObject",0,function(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e},"__metadata",0,function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},"__param",0,function(e,t){return function(r,i){t(r,i,e)}},"__read",0,s,"__rest",0,function(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},"__spread",0,function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(s(arguments[t]));return e},"__spreadArrays",0,function(){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},"__values",0,i])},417459,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.delay=void 0,r.delay=function(e){return new Promise(t=>{setTimeout(()=>{t(!0)},e)})}},945011,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.ONE_THOUSAND=r.ONE_HUNDRED=void 0,r.ONE_HUNDRED=100,r.ONE_THOUSAND=1e3},964194,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.ONE_YEAR=r.FOUR_WEEKS=r.THREE_WEEKS=r.TWO_WEEKS=r.ONE_WEEK=r.THIRTY_DAYS=r.SEVEN_DAYS=r.FIVE_DAYS=r.THREE_DAYS=r.ONE_DAY=r.TWENTY_FOUR_HOURS=r.TWELVE_HOURS=r.SIX_HOURS=r.THREE_HOURS=r.ONE_HOUR=r.SIXTY_MINUTES=r.THIRTY_MINUTES=r.TEN_MINUTES=r.FIVE_MINUTES=r.ONE_MINUTE=r.SIXTY_SECONDS=r.THIRTY_SECONDS=r.TEN_SECONDS=r.FIVE_SECONDS=r.ONE_SECOND=void 0,r.ONE_SECOND=1,r.FIVE_SECONDS=5,r.TEN_SECONDS=10,r.THIRTY_SECONDS=30,r.SIXTY_SECONDS=60,r.ONE_MINUTE=r.SIXTY_SECONDS,r.FIVE_MINUTES=5*r.ONE_MINUTE,r.TEN_MINUTES=10*r.ONE_MINUTE,r.THIRTY_MINUTES=30*r.ONE_MINUTE,r.SIXTY_MINUTES=60*r.ONE_MINUTE,r.ONE_HOUR=r.SIXTY_MINUTES,r.THREE_HOURS=3*r.ONE_HOUR,r.SIX_HOURS=6*r.ONE_HOUR,r.TWELVE_HOURS=12*r.ONE_HOUR,r.TWENTY_FOUR_HOURS=24*r.ONE_HOUR,r.ONE_DAY=r.TWENTY_FOUR_HOURS,r.THREE_DAYS=3*r.ONE_DAY,r.FIVE_DAYS=5*r.ONE_DAY,r.SEVEN_DAYS=7*r.ONE_DAY,r.THIRTY_DAYS=30*r.ONE_DAY,r.ONE_WEEK=r.SEVEN_DAYS,r.TWO_WEEKS=2*r.ONE_WEEK,r.THREE_WEEKS=3*r.ONE_WEEK,r.FOUR_WEEKS=4*r.ONE_WEEK,r.ONE_YEAR=365*r.ONE_DAY},881927,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});let i=e.r(787267);i.__exportStar(e.r(945011),r),i.__exportStar(e.r(964194),r)},652969,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.fromMiliseconds=r.toMiliseconds=void 0;let i=e.r(881927);r.toMiliseconds=function(e){return e*i.ONE_THOUSAND},r.fromMiliseconds=function(e){return Math.floor(e/i.ONE_THOUSAND)}},497525,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});let i=e.r(787267);i.__exportStar(e.r(417459),r),i.__exportStar(e.r(652969),r)},104200,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.Watch=void 0;class i{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}}r.Watch=i,r.default=i},208055,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.IWatch=void 0,r.IWatch=class{}},663134,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),e.r(787267).__exportStar(e.r(208055),r)},648512,(e,t,r)=>{"use strict";
1Object.defineProperty(r,"__esModule",{value:!0});let i=e.r(787267);i.__exportStar(e.r(497525),r),i.__exportStar(e.r(104200),r),i.__exportStar(e.r(663134),r),i.__exportStar(e.r(881927),r)},36610,(e,t,r)=>{"use strict";function i(e){let t;return"u">typeof window&&void 0!==window[e]&&(t=window[e]),t}function s(e){let t=i(e);if(!t)throw Error(`${e} is not defined in Window`);return t}Object.defineProperty(r,"__esModule",{value:!0}),r.getLocalStorage=r.getLocalStorageOrThrow=r.getCrypto=r.getCryptoOrThrow=r.getLocation=r.getLocationOrThrow=r.getNavigator=r.getNavigatorOrThrow=r.getDocument=r.getDocumentOrThrow=r.getFromWindowOrThrow=r.getFromWindow=void 0,r.getFromWindow=i,r.getFromWindowOrThrow=s,r.getDocumentOrThrow=function(){return s("document")},r.getDocument=function(){return i("document")},r.getNavigatorOrThrow=function(){return s("navigator")},r.getNavigator=function(){return i("navigator")},r.getLocationOrThrow=function(){return s("location")},r.getLocation=function(){return i("location")},r.getCryptoOrThrow=function(){return s("crypto")},r.getCrypto=function(){return i("crypto")},r.getLocalStorageOrThrow=function(){return s("localStorage")},r.getLocalStorage=function(){return i("localStorage")}},275221,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0}),r.getWindowMetadata=void 0;let i=e.r(36610);r.getWindowMetadata=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}}},352618,(e,t,r)=>{function i(e){return(0x100000000+e).toString(16).substring(1)}t.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,t,r){let s="\n"+e+" = ";for(let n=0;n<t.length;n+=2){if(32===r)s+=i(t[n]).toUpperCase(),s+=" ",s+=i(t[n+1]).toUpperCase();else if(64===r)s+=i(t[n+1]).toUpperCase(),s+=i(t[n]).toUpperCase();else throw Error("Invalid size "+r);n%6==4?s+="\n"+Array(e.length+4).join(" "):n<t.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")}}}},453832,(e,t,r)=>{let i=e.r(352618);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],f=u[a],d=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,f,d),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 f(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 d=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};d.fill(0),d[0]=e,t&&(d[1]=t.length),d[2]=1,d[3]=1,r&&d.set(r,32),i&&d.set(i,48);for(let e=0;e<16;e++)s.h[e]=l[e]^o(d,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,f(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;f(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 m(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)}t.exports={blake2b:m,blake2bHex:function(e,t,r,s,n){let o=m(e,t,r,s,n);return i.toHex(o)},blake2bInit:p,blake2bUpdate:g,blake2bFinal:y}},758443,(e,t,r)=>{let i=e.r(352618);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}
1let 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&&(f(i,t),i.c=64),i}function f(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 d(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 f(s,e),d(s)}t.exports={blake2s:p,blake2sHex:function(e,t,r){let s=p(e,t,r);return i.toHex(s)},blake2sInit:u,blake2sUpdate:f,blake2sFinal:d}},5625,(e,t,r)=>{let i=e.r(453832),s=e.r(758443);t.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}},952439,e=>{"use strict";var t=function(e,r){return(t=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,r)},r=function(){return(r=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 i(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 s(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 n(e){return this instanceof n?(this.v=e,this):new n(e)}e.s(["__assign",()=>r,"__asyncDelegator",0,function(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:n(e[i](t)),done:"return"===i}:s?s(t):t}:s}},"__asyncGenerator",0,function(e,t,r){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var i,s=r.apply(e,t||[]),o=[];return i={},a("next"),a("throw"),a("return"),i[Symbol.asyncIterator]=function(){return this},i;function a(e){s[e]&&(i[e]=function(t){return new Promise(function(r,i){o.push([e,t,r,i])>1||l(e,t)})})}function l(e,t){try{var r;(r=s[e](t)).value instanceof n?Promise.resolve(r.value.v).then(c,h):u(o[0][2],r)}catch(e){u(o[0][3],e)}}function c(e){l("next",e)}function h(e){l("throw",e)}function u(e,t){e(t),o.shift(),o.length&&l(o[0][0],o[0][1])}},"__asyncValues",0,function(e){if(!Symbol.asyncIterator)throw TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e=i(e),t={},s("next"),s("throw"),s("return"),t[Symbol.asyncIterator]=function(){return this},t);function s(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)})}}},"__await",0,n,"__awaiter",0,function(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())})},"__classPrivateFieldGet",0,function(e,t){if(!t.has(e))throw TypeError("attempted to get private field on non-instance");return t.get(e)},"__classPrivateFieldSet",0,function(e,t,r){if(!t.has(e))throw TypeError("attempted to set private field on non-instance");return t.set(e,r),r},"__createBinding",0,function(e,t,r,i){void 0===i&&(i=r),e[i]=t[r]},"__decorate",0,function(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
1);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},"__exportStar",0,function(e,t){for(var r in e)"default"===r||t.hasOwnProperty(r)||(t[r]=e[r])},"__extends",0,function(e,r){function i(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(i.prototype=r.prototype,new i)},"__generator",0,function(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}}}},"__importDefault",0,function(e){return e&&e.__esModule?e:{default:e}},"__importStar",0,function(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}
1,"__makeTemplateObject",0,function(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e},"__metadata",0,function(e,t){if("object"==typeof Reflect&&"function"==typeof Reflect.metadata)return Reflect.metadata(e,t)},"__param",0,function(e,t){return function(r,i){t(r,i,e)}},"__read",0,s,"__rest",0,function(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},"__spread",0,function(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(s(arguments[t]));return e},"__spreadArrays",0,function(){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},"__values",0,i])},493599,(e,t,r)=>{"use strict";function i(){return(null===e.g||void 0===e.g?void 0:e.g.crypto)||(null===e.g||void 0===e.g?void 0:e.g.msCrypto)||{}}function s(){let e=i();return e.subtle||e.webkitSubtle}Object.defineProperty(r,"__esModule",{value:!0}),r.isBrowserCryptoAvailable=r.getSubtleCrypto=r.getBrowerCrypto=void 0,r.getBrowerCrypto=i,r.getSubtleCrypto=s,r.isBrowserCryptoAvailable=function(){return!!i()&&!!s()}},431443,(e,t,r)=>{"use strict";var i=e.i(247167);function s(){return"u"<typeof document&&"u">typeof navigator&&"ReactNative"===navigator.product}function n(){return void 0!==i.default&&void 0!==i.default.versions&&void 0!==i.default.versions.node}Object.defineProperty(r,"__esModule",{value:!0}),r.isBrowser=r.isNode=r.isReactNative=void 0,r.isReactNative=s,r.isNode=n,r.isBrowser=function(){return!s()&&!n()}},438005,(e,t,r)=>{"use strict";Object.defineProperty(r,"__esModule",{value:!0});let i=e.r(952439);i.__exportStar(e.r(493599),r),i.__exportStar(e.r(431443),r)},756823,(e,t,r)=>{"use strict";t.exports=function(){throw Error("ws does not work in the browser. Browser clients must use the native WebSocket object")}},320502,(e,t,r)=>{var i="u">typeof globalThis&&globalThis||"u">typeof self&&self||e.g,s=function(){function e(){this.fetch=!1,this.DOMException=i.DOMException}return e.prototype=i,new e}();(function(t){var r=void 0!==s&&s||"u">typeof self&&self||e.g||{},i={searchParams:"URLSearchParams"in r,iterable:"Symbol"in r&&"iterator"in Symbol,blob:"FileReader"in r&&"Blob"in r&&function(){try{return new Blob,!0}catch(e){return!1}}(),formData:"FormData"in r,arrayBuffer:"ArrayBuffer"in r};if(i.arrayBuffer)var n=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],o=ArrayBuffer.isView||function(e){return e&&n.indexOf(Object.prototype.toString.call(e))>-1};function a(e){if("string"!=typeof e&&(e=String(e)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(e)||""===e)throw TypeError('Invalid character in header field name: "'+e+'"');return e.toLowerCase()}function l(e){return"string"!=typeof e&&(e=String(e)),e}function c(e){var t={next:function(){var t=e.shift();return{done:void 0===t,value:t}}};return i.iterable&&(t[Symbol.iterator]=function(){return t}),t}function h(e){this.map={},e instanceof h?e.forEach(function(e,t){this.append(t,e)},this):Array.isArray(e)?e.forEach(function(e){if(2!=e.length)throw TypeError("Headers constructor: expected name/value pair to be length 2, found"+e.length);this.append(e[0],e[1])},this):e&&Object.getOwnPropertyNames(e).forEach(function(t){this.append(t,e[t])},this)}function u(e){if(!e._noBody){if(e.bodyUsed)return Promise.reject(TypeError("Already read"));e.bodyUsed=!0}}function f(e){return new Promise(function(t,r){e.onload=function(){t(e.result)},e.onerror=function(){r(e.error)}})}function d(e){var t=new FileReader,r=f(t);return t.readAsArrayBuffer(e),r}function p(e){if(e.slice)return e.slice(0);var t=new Uint8Array(e.byteLength);return t.set(new Uint8Array(e)),t.buffer}function g(){return this.bodyUsed=!1,this._initBody=function(e){if(this.bodyUsed=this.bodyUsed,this._bodyInit=e,e)if("string"==typeof e)this._bodyText=e;else if(i.blob&&Blob.prototype.isPrototypeOf(e))this._bodyBlob=e;else if(i.formData&&FormData.prototype.isPrototypeOf(e))this._bodyFormData=e;else if(i.searchParams&&URLSearchParams.prototype.isPrototypeOf(e))this._bodyText=e.toString();else{var t;i.arrayBuffer&&i.blob&&(t=e)&&DataView.prototype.isPrototypeOf(t)?(this._bodyArrayBuffer=p(e.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):i.arrayBuffer&&(ArrayBuffer.prototype.isPrototypeOf(e)||o(e))?this._bodyArrayBuffer=p(e):this._bodyText=e=Object.prototype.toString.call(e)}else this._noBody=!0,this._bodyText="";!this.headers.get("content-type")&&("string"==typeof e?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):i.searchParams&&URLSearchParams.prototype.isPrototypeOf(e)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},i.blob&&(this.blob=function(){var e=u(this);if(e)return e;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(!this._bodyFormData)return Promise.resolve(new Blob([this._bodyText]));throw Error("could not read FormData body as blob")}),this.arrayBuffer=function(){if(this._bodyArrayBuffer){var e=u(this);return e||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer))}if(i.blob)return this.blob().then(d);throw Error("could not read as ArrayBuffer")},this.text=function(){var e,t,r,i,s,n=u(this);if(n)return n;if(this._bodyBlob)return e=this._bodyBlob,r=f(t=new FileReader),s=(i=/charset=([A-Za-z0-9_-]+)/.exec(e.type))?i[1]:"utf-8",t.readAsText(e,s),r;if(this._bodyArrayBuffer)return Promise.resolve(function(e){for(var t=new Uint8Array(e),r=Array(t.length),i=0;i<t.length;i++)r[i]=String.fromCharCode(t[i]);return r.join("")}(this._bodyArrayBuffer));if(!this._bodyFormData)return Promise.resolve(this._bodyText);throw Error("could not read FormData body as text")},i.formData&&(this.formData=function(){return this.text().then(b)}),this.json=function(){return this.text().then(JSON.parse)},this}h.prototype.append=function(e,t){e=a(e),t=l(t);var r=this.map[e];this.map[e]=r?r+", "+t:t},h.prototype.delete=function(e){delete this.map[a(e)]},h.prototype.get=function(e){return e=a(e),this.has(e)?this.map[e]:null},h.prototype.has=function(e){return this.map.hasOwnProperty(a(e))},h.prototype.set=function(e,t){this.map[a(e)]=l(t)},h.prototype.forEach=function(e,t){for(var r in this.map)this.map.hasOwnProperty(r)&&e.call(t,this.map[r],r,this)},h.prototype.keys=function(){var e=[];return this.forEach(function(t,r){e.push(r)}),c(e)},h.prototype.values=function(){var e=[];return this.forEach(function(t){e.push(t)}),c(e)},h.prototype.entries=function(){var e=[];return this.forEach(function(t,r){e.push([r,t])}),c(e)},i.iterable&&(h.prototype[Symbol.iterator]=h.prototype.entries);var y=["CONNECT","DELETE","GET","HEAD","OPTIONS","PATCH","POST","PUT","TRACE"];function m(e,t){if(!(this instanceof m))throw TypeError('Please use the "new" operator, this DOM object c
1onstructor cannot be called as a function.');var i,s,n=(t=t||{}).body;if(e instanceof m){if(e.bodyUsed)throw TypeError("Already read");this.url=e.url,this.credentials=e.credentials,t.headers||(this.headers=new h(e.headers)),this.method=e.method,this.mode=e.mode,this.signal=e.signal,n||null==e._bodyInit||(n=e._bodyInit,e.bodyUsed=!0)}else this.url=String(e);if(this.credentials=t.credentials||this.credentials||"same-origin",(t.headers||!this.headers)&&(this.headers=new h(t.headers)),this.method=(s=(i=t.method||this.method||"GET").toUpperCase(),y.indexOf(s)>-1?s:i),this.mode=t.mode||this.mode||null,this.signal=t.signal||this.signal||function(){if("AbortController"in r)return new AbortController().signal}(),this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&n)throw TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(n),("GET"===this.method||"HEAD"===this.method)&&("no-store"===t.cache||"no-cache"===t.cache)){var o=/([?&])_=[^&]*/;o.test(this.url)?this.url=this.url.replace(o,"$1_="+new Date().getTime()):this.url+=(/\?/.test(this.url)?"&":"?")+"_="+new Date().getTime()}}function b(e){var t=new FormData;return e.trim().split("&").forEach(function(e){if(e){var r=e.split("="),i=r.shift().replace(/\+/g," "),s=r.join("=").replace(/\+/g," ");t.append(decodeURIComponent(i),decodeURIComponent(s))}}),t}function w(e,t){if(!(this instanceof w))throw TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');if(t||(t={}),this.type="default",this.status=void 0===t.status?200:t.status,this.status<200||this.status>599)throw RangeError("Failed to construct 'Response': The status provided (0) is outside the range [200, 599].");this.ok=this.status>=200&&this.status<300,this.statusText=void 0===t.statusText?"":""+t.statusText,this.headers=new h(t.headers),this.url=t.url||"",this._initBody(e)}m.prototype.clone=function(){return new m(this,{body:this._bodyInit})},g.call(m.prototype),g.call(w.prototype),w.prototype.clone=function(){return new w(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new h(this.headers),url:this.url})},w.error=function(){var e=new w(null,{status:200,statusText:""});return e.ok=!1,e.status=0,e.type="error",e};var v=[301,302,303,307,308];w.redirect=function(e,t){if(-1===v.indexOf(t))throw RangeError("Invalid status code");return new w(null,{status:t,headers:{location:e}})},t.DOMException=r.DOMException;try{new t.DOMException}catch(e){t.DOMException=function(e,t){this.message=e,this.name=t;var r=Error(e);this.stack=r.stack},t.DOMException.prototype=Object.create(Error.prototype),t.DOMException.prototype.constructor=t.DOMException}function x(e,s){return new Promise(function(n,o){var c=new m(e,s);if(c.signal&&c.signal.aborted)return o(new t.DOMException("Aborted","AbortError"));var u=new XMLHttpRequest;function f(){u.abort()}if(u.onload=function(){var e,t,r={statusText:u.statusText,headers:(e=u.getAllResponseHeaders()||"",t=new h,e.replace(/\r?\n[\t ]+/g," ").split("\r").map(function(e){return 0===e.indexOf("\n")?e.substr(1,e.length):e}).forEach(function(e){var r=e.split(":"),i=r.shift().trim();if(i){var s=r.join(":").trim();try{t.append(i,s)}catch(e){console.warn("Response "+e.message)}}}),t)};0===c.url.indexOf("file://")&&(u.status<200||u.status>599)?r.status=200:r.status=u.status,r.url="responseURL"in u?u.responseURL:r.headers.get("X-Request-URL");var i="response"in u?u.response:u.responseText;setTimeout(function(){n(new w(i,r))},0)},u.onerror=function(){setTimeout(function(){o(TypeError("Network request failed"))},0)},u.ontimeout=function(){setTimeout(function(){o(TypeError("Network request timed out"))},0)},u.onabort=function(){setTimeout(function(){o(new t.DOMException("Aborted","AbortError"))},0)},u.open(c.method,function(e){try{return""===e&&r.location.href?r.location.href:e}catch(t){return e}}(c.url),!0),"include"===c.credentials?u.withCredentials=!0:"omit"===c.credentials&&(u.withCredentials=!1),"responseType"in u&&(i.blob?u.responseType="blob":i.arrayBuffer&&(u.responseType="arraybuffer")),s&&"object"==typeof s.headers&&!(s.headers instanceof h||r.Headers&&s.headers instanceof r.Headers)){var d=[];
1Object.getOwnPropertyNames(s.headers).forEach(function(e){d.push(a(e)),u.setRequestHeader(e,l(s.headers[e]))}),c.headers.forEach(function(e,t){-1===d.indexOf(t)&&u.setRequestHeader(t,e)})}else c.headers.forEach(function(e,t){u.setRequestHeader(t,e)});c.signal&&(c.signal.addEventListener("abort",f),u.onreadystatechange=function(){4===u.readyState&&c.signal.removeEventListener("abort",f)}),u.send(void 0===c._bodyInit?null:c._bodyInit)})}x.polyfill=!0,r.fetch||(r.fetch=x,r.Headers=h,r.Request=m,r.Response=w),t.Headers=h,t.Request=m,t.Response=w,t.fetch=x,Object.defineProperty(t,"__esModule",{value:!0})})({}),s.fetch.ponyfill=!0,delete s.fetch.polyfill;var n=i.fetch?i:s;(r=n.fetch).default=n.fetch,r.fetch=n.fetch,r.Headers=n.Headers,r.Request=n.Request,r.Response=n.Response,t.exports=r},218454,971342,e=>{"use strict";let t,r,i,s,n,o,a,l,c,h;var u,f,d,p,g=e.i(467034),y=e.i(219298),m=e.i(247167),b=e.i(648512);class w{}class v extends w{constructor(e){super()}}let x=b.FIVE_SECONDS,E="heartbeat_pulse";class I extends v{constructor(e){super(e),this.events=new y.EventEmitter,this.interval=x,this.interval=e?.interval||x}static async init(e){let t=new I(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,b.toMiliseconds)(this.interval))}pulse(){this.events.emit(E)}}let S=/"(?:_|\\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*:/,O=/"(?: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*:/,P=/^\s*["[{]|^\s*-?\d{1,16}(\.\d{1,17})?([Ee][+-]?\d+)?\s*$/;function A(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 _(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(!P.test(e)){if(t.strict)throw SyntaxError("[destr] Invalid JSON");return e}try{if(S.test(e)||O.test(e)){if(t.strict)throw Error("[destr] Possible prototype pollution");return JSON.parse(e,A)}return JSON.parse(e)}catch(r){if(t.strict)throw r;return e}}function C(e,...t){try{var r;return(r=e(...t))&&"function"==typeof r.then?r:Promise.resolve(r)}catch(e){return Promise.reject(e)}}function T(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 T(e.toJSON());throw Error("[unstorage] Cannot stringify value!")}let R="base64:";function B(e){return e&&e.split("?")[0]?.replace(/[/\\]/g,":").replace(/:+/g,":").replace(/^:|:$/g,"")||""}function U(e){return(e=B(e))?e+":":""}function N(e,t,r){return e.watch?e.watch((e,i)=>t(e,r+i)):()=>{}}async function k(e){"function"==typeof e.dispose&&await C(e.dispose)}var j=e.i(168679);function D(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 L(e){return"string"==typeof e?e:JSON.stringify(e,(e,t)=>"bigint"==typeof t?t.toString()+"n":t)||""}class ${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=B(t),r.watchListeners))i(e,t)},o=async()=>{if(!r.watching)for(let e in r.watching=!0,r.mounts)r.unwatch[e]=await N(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=B(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}=i(e=B(e));return C(s.hasItem,r,t)},getItem(e,t={}){let{relativeKey:r,driver:s}
1=i(e=B(e));return C(s.getItem,r,t).then(e=>_(e))},getItems:(e,t={})=>l(e,t,e=>e.driver.getItems?C(e.driver.getItems,e.items.map(e=>({key:e.relativeKey,options:e.options})),t).then(t=>t.map(t=>({key:function(...e){return B(e.join(":"))}(e.base,t.key),value:_(t.value)}))):Promise.all(e.items.map(t=>C(e.driver.getItem,t.relativeKey,t.options).then(e=>({key:t.key,value:_(e)}))))),getItemRaw(e,t={}){let{relativeKey:r,driver:s}=i(e=B(e));return s.getItemRaw?C(s.getItemRaw,r,t):C(s.getItem,r,t).then(e=>{var t;return"string"==typeof e&&e.startsWith(R)?(t=e.slice(R.length),globalThis.Buffer?g.Buffer.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=B(e));o.setItem&&(await C(o.setItem,s,T(t),r),o.watch||n("update",e))},async setItems(e,t){await l(e,t,async e=>{if(e.driver.setItems)return C(e.driver.setItems,e.items.map(e=>({key:e.relativeKey,value:T(e.value),options:e.options})),t);e.driver.setItem&&await Promise.all(e.items.map(t=>C(e.driver.setItem,t.relativeKey,T(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=B(e));if(o.setItemRaw)await C(o.setItemRaw,s,t,r);else{var a;if(!o.setItem)return;await C(o.setItem,s,"string"==typeof t?t:R+(a=t,globalThis.Buffer?g.Buffer.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=B(e));s.removeItem&&(await C(s.removeItem,r,t),(t.removeMeta||t.removeMata)&&await C(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=B(e)),n=Object.create(null);if(s.getMeta&&Object.assign(n,await C(s.getMeta,r,t)),!t.nativeOnly){let e=await C(s.getItem,r+"$",t).then(e=>_(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=U(e),!0),i=[],n=[],o=!0;for(let e of r){for(let r of(e.driver.flags?.maxDepth||(o=!1),await C(e.driver.getKeys,e.relativeBase,t))){let t=e.mountpoint+B(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=U(e),await Promise.all(s(e,!1).map(async e=>e.driver.clear?C(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=>k(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=U(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(N(t,n,e)).then(t=>{r.unwatch[e]=t}).catch(console.error),c},async unmount(e,t=!0){(e=U(e))&&r.mounts[e]&&(r.watching&&e in r.unwatch&&(r.unwatch[e]?.(),delete r.unwatch[e]),t&&await k(r.mounts[e]),r.mountpoints=r.mountpoints.filter(t=>t!==e),delete r.mounts[e])},getMount(e=""){let t=i(e=B(e)+":");return{driver:t.driver,base:t.base}},getMounts:(e="",t={})=>s(e=B(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=(0,j.createStore)(e.dbName,e.storeName)),{name:"idb-keyval",options:e,hasItem:async e=>!(typeof await (0,j.get)(r+e,t)>"u"),getItem:async e=>await (0,j.get)(r+e,t)??null,setItem:(e,i)=>(0,j.set)(r+e,i,t),removeItem:e=>(0,j.del)(r+e,t),getKeys:()=>(0,j.keys)(t),clear:()=>(0,j.clear)(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,L(t))}async removeItem(e){await this.indexedDb.removeItem(e)}}var q="u">typeof globalThis?globalThis:"u">typeof window?window:e.g,M={exports:{}};function z(e){var t;return[e[0],D(null!=(t=e[1])?t:"")]}function F(){}F.prototype.getItem=function(e){return this.hasOwnProperty(e)?String(this[e]):null},F.prototype.setItem=function(e,t){this[e]=String(t)},F.prototype.removeItem=function(e){delete this[e]},F.prototype.clear=function(){let e=this;Object.keys(e).forEach(function(t){e[t]=void 0,delete e[t]})},F.prototype.key=function(e){return e=e||0,Object.keys(this)[e]},F.prototype.__defineGetter__("length",function(){return Object.keys(this).length}),"u">typeof q&&q.localStorage?M.exports=q.localStorage:"u">typeof window&&window.localStorage?M.exports=window.localStorage:M.exports=new F;class V{constructor(){this.localStorage=M.exports}async getKeys(){return Object.keys(this.localStorage)}async getEntries(){return Object.entries(this.localStorage).map(z)}async getItem(e){let t=this.localStorage.getItem(e);if(null!==t)return D(t)}async setItem(e,t){this.localStorage.setItem(e,L(t))}async removeItem(e){this.localStorage.removeItem(e)}}let K=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),H(e,o)},H=async(e,t)=>{t.length&&t.forEach(async t=>{await e.removeItem(t)})};class W{constructor(){this.initialized=!1,this.setInitialized=e=>{this.storage=e,this.initialized=!0};const e=new V;this.storage=e;try{const t=new $;K(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 G=e.i(366350),Y=Object.defineProperty,Z=(e,t,r)=>{let i;
1return(i="symbol"!=typeof t?t+"":t)in e?Y(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class X extends w{constructor(e){super(),this.opts=e,Z(this,"protocol","wc"),Z(this,"version",2)}}var J=Object.defineProperty;class Q extends w{constructor(e,t){super(),this.core=e,this.logger=t,((e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?J(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r})(this,"records",new Map)}}class ee{constructor(e,t){this.logger=e,this.core=t}}class et extends w{constructor(e,t){super(),this.relayer=e,this.logger=t}}class er extends w{constructor(e){super()}}class ei{constructor(e,t,r,i){this.core=e,this.logger=t,this.name=r}}class es extends w{constructor(e,t){super(),this.relayer=e,this.logger=t}}class en extends w{constructor(e,t){super(),this.core=e,this.logger=t}}class eo{constructor(e,t,r){this.core=e,this.logger=t,this.store=r}}class ea{constructor(e,t){this.projectId=e,this.logger=t}}class el{constructor(e,t,r){this.core=e,this.logger=t,this.telemetryEnabled=r}}var ec=Object.defineProperty,eh=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?ec(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};y.default;class eu{constructor(e){this.opts=e,eh(this,"protocol","wc"),eh(this,"version",2)}}y.EventEmitter;class ef{constructor(e){this.client=e}}function ed(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 ep(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 eg="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0,ey=e=>new DataView(e.buffer,e.byteOffset,e.byteLength);function em(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)),ed(e),e}class eb{clone(){return this._cloneInto()}}function ew(e=32){if(eg&&"function"==typeof eg.getRandomValues)return eg.getRandomValues(new Uint8Array(e));if(eg&&"function"==typeof eg.randomBytes)return eg.randomBytes(e);throw Error("crypto.getRandomValues must be defined")}
1class ev extends eb{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=ey(this.buffer)}update(e){ep(this);let{view:t,buffer:r,blockLen:i}=this,s=(e=em(e)).length;for(let n=0;n<s;){let o=Math.min(i-this.pos,s-n);if(o===i){let t=ey(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){ep(this),function(e,t){ed(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=ey(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 ex=BigInt(0x100000000-1),eE=BigInt(32),eI=(e,t,r)=>e>>>r,eS=(e,t,r)=>e<<32-r|t>>>r,eO=(e,t,r)=>e>>>r|t<<32-r,eP=(e,t,r)=>e<<32-r|t>>>r,eA=(e,t,r)=>e<<64-r|t>>>r-32,e_=(e,t,r)=>e>>>r-32|t<<64-r,eC=function(e,t,r,i){let s=(t>>>0)+(i>>>0);return{h:e+r+(s/0x100000000|0)|0,l:0|s}},eT=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),eR=(e,t,r,i)=>t+r+i+(e/0x100000000|0)|0,eB=(e,t,r,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0),eU=(e,t,r,i,s)=>t+r+i+s+(e/0x100000000|0)|0,eN=(e,t,r,i,s,n)=>t+r+i+s+n+(e/0x100000000|0)|0,ek=(e,t,r,i,s)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0)+(s>>>0),[ej,eD]=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&ex),l:Number(e>>eE&ex)}:{h:0|Number(e>>eE&ex),l:0|Number(e&ex)}}(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))),eL=new Uint32Array(80),e$=new Uint32Array(80);class eq extends ev{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:f,Gl:d,Hh:p,Hl:g}=this;return[e,t,r,i,s,n,o,a,l,c,h,u,f,d,p,g]}set(e,t,r,i,s,n,o,a,l,c,h,u,f,d,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|f,this.Gl=0|d,this.Hh=0|p,this.Hl=0|g}process(e,t){for(let r=0;r<16;r++,t+=4)eL[r]=e.getUint32(t),e$[r]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=0|eL[e-15],r=0|e$[e-15],i=eO(t,r,1)^eO(t,r,8)^eI(t,r,7),s=eP(t,r,1)^eP(t,r,8)^eS(t,r,7),n=0|eL[e-2],o=0|e$[e-2],a=eO(n,o,19)^eA(n,o,61)^eI(n,o,6),l=eB(s,eP(n,o,19)^e_(n,o,61)^eS(n,o,6),e$[e-7],e$[e-16]),c=eU(l,i,a,eL[e-7],eL[e-16]);eL[e]=0|c,e$[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:f,Fl:d,Gh:p,Gl:g,Hh:y,Hl:m}=this;for(let e=0;e<80;e++){let t=eO(h,u,14)^eO(h,u,18)^eA(h,u,41),b=eP(h,u,14)^eP(h,u,18)^e_(h,u,41),w=h&f^~h&p,v=ek(m,b,u&d^~u&g,eD[e],e$[e]),x=eN(v,y,t,w,ej[e],eL[e]),E=0|v,I=eO(r,i,28)^eA(r,i,34)^eA(r,i,39),S=eP(r,i,28)^e_(r,i,34)^e_(r,i,39),O=r&s^r&o^s&o,P=i&n^i&a^n&a;y=0|p,m=0|g,p=0|f,g=0|d,f=0|h,d=0|u,({h:h,l:u}=eC(0|l,0|c,0|x,0|E)),l=0|o,c=0|a,o=0|s,a=0|n,s=0|r,n=0|i;let A=eT(E,S,P);r=eR(A,x,I,O),i=0|A}({h:r,l:i}=eC(0|this.Ah,0|this.Al,0|r,0|i)),({h:s,l:n}=eC(0|this.Bh,0|this.Bl,0|s,0|n)),({h:o,l:a}=eC(0|this.Ch,0|this.Cl,0|o,0|a)),({h:l,l:c}=eC(0|this.Dh,0|this.Dl,0|l,0|c)),({h:h,l:u}=eC(0|this.Eh,0|this.El,0|h,0|u)),({h:f,l:d}=eC(0|this.Fh,0|this.Fl,0|f,0|d)),({h:p,l:g}=eC(0|this.Gh,0|this.Gl,0|p,0|g)),({h:y,l:m}=eC(0|this.Hh,0|this.Hl,0|y,0|m)),this.set(r,i,s,n,o,a,l,c,h,u,f,d,p,g,y,m)}roundClean(){eL.fill(0),e$.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 eM=(u=()=>new eq,(r=e=>u().update(em(e)).digest()).outputLen=(i=u()).outputLen,r.blockLen=i.blockLen,r.create=()=>u(),r),ez=BigInt(0),eF=BigInt(1),eV=BigInt(2);function eK(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function eH(e){if(!eK(e))throw Error("Uint8Array expected")}function eW(e,t){if("boolean"!=typeof t)throw Error(e+" boolean expected, got "+t)}let eG=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function eY(e){eH(e);let t="";for(let r=0;r<e.length;r++)t+=eG[e[r]];return t}function eZ(e){if("string"!=typeof e)throw Error("hex string expected, got "+typeof e);return""===e?ez:BigInt("0x"+e)}function eX(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:void 0}function eJ(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=eX(e.charCodeAt(s)),n=eX(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 eQ(e){return eH(e),eZ(eY(Uint8Array.from(e).reverse()))}function e0(e,t){return eJ(e.toString(16).padStart(2*t,"0"))}function e1(e,t){return e0(e,t).reverse()}function e2(e,t,r){let i;if("string"==typeof t)try{i=eJ(t)}catch(t){throw Error(e+" must be hex string or Uint8Array, cause: "+t)}else if(eK(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 e3(...e){let t=0;for(let r=0;r<e.length;r++){let i=e[r];eH(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 e8=e=>"bigint"==typeof e&&ez<=e;function e6(e,t,r,i){if(!(e8(t)&&e8(r)&&e8(i))||!(r<=t)||!(t<i))throw Error("expected valid "+e+": "+r+" <= n < "+i+", got "+t)}let e5={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||eK(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 e4(e,t,r={}){let i=(t,r,i)=>{let s=e5[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 invali
1d. 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 e9(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 e7=BigInt(0),te=BigInt(1),tt=BigInt(2),tr=BigInt(3),ti=BigInt(4),ts=BigInt(5),tn=BigInt(8);function to(e,t){let r=e%t;return r>=e7?r:t+r}function ta(e,t,r){let i=e;for(;t-- >e7;)i*=i,i%=r;return i}function tl(e,t){if(e===e7)throw Error("invert: expected non-zero number");if(t<=e7)throw Error("invert: expected positive modulus, got "+t);let r=to(e,t),i=t,s=e7,n=te;for(;r!==e7;){let e=i/r,t=i%r,o=s-n*e;i=r,r=t,s=n,n=o}if(i!==te)throw Error("invert: does not exist");return to(s,t)}let tc=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function th(e,t){let r=void 0!==t?t:e.toString(2).length,i=Math.ceil(r/8);return{nBitLength:r,nByteLength:i}}function tu(e,t,r=!1,i={}){let s;if(e<=e7)throw Error("invalid field: expected ORDER > 0, got "+e);let{nBitLength:n,nByteLength:o}=th(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:(eV<<BigInt(n-1))-eF,ZERO:e7,ONE:te,create:t=>to(t,e),isValid:t=>{if("bigint"!=typeof t)throw Error("invalid field element: expected bigint, got "+typeof t);return e7<=t&&t<e},is0:e=>e===e7,isOdd:e=>(e&te)===te,neg:t=>to(-t,e),eql:(e,t)=>e===t,sqr:t=>to(t*t,e),add:(t,r)=>to(t+r,e),sub:(t,r)=>to(t-r,e),mul:(t,r)=>to(t*r,e),pow:(e,t)=>(function(e,t,r){if(r<e7)throw Error("invalid exponent, negatives unsupported");if(r===e7)return e.ONE;if(r===te)return t;let i=e.ONE,s=t;for(;r>e7;)r&te&&(i=e.mul(i,s)),s=e.sqr(s),r>>=te;return i})(a,e,t),div:(t,r)=>to(t*tl(r,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>tl(t,e),sqrt:i.sqrt||(t=>(s||(s=function(e){if(e%ti===tr){let t=(e+te)/ti;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%tn===ts){let t=(e-ts)/tn;return function(e,r){let i=e.mul(r,tt),s=e.pow(i,t),n=e.mul(r,s),o=e.mul(e.mul(n,tt),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-te)/tt;for(t=e-te,r=0;t%tt===e7;t/=tt,r++);for(i=tt;i<e&&function(e,t,r){if(t<e7)throw Error("invalid exponent, negatives unsupported");if(r<=e7)throw Error("invalid modulus");if(r===te)return e7;let i=te;for(;t>e7;)t&te&&(i=i*e%r),e=e*e%r,t>>=te;return i}(i,s,e)!==e-te;i++)if(i>1e3)throw Error("Cannot find square root: likely non-prime P");if(1===r){let t=(e+te)/ti;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+te)/tt;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,te<<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?e1(e,o):e0(e,o),fromBytes:e=>{if(e.length!==o)throw Error("Field.fromBytes: expected "+o+" bytes, got "+e.length);return r?eQ(e):eZ(eY(e))}});return Object.freeze(a)}let tf=BigInt(0),td=BigInt(1);function tp(e,t){let r=t.negate();return e?r:t}function tg(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error("invalid window size, expected [1.."+t+"], got W="+e)}function ty(e,t){return tg(e,t),{windows:Math.ceil(t/e)+1,windowSize:2**(e-1)}}let tm=new WeakMap,tb=new WeakMap;function tw(e){return tb.get(e)||1}let tv=BigInt(0),tx=BigInt(1),tE=BigInt(2),tI=BigInt(8),tS={zip215:!0};BigInt(0),BigInt(1);let tO=BigInt("57896044618658097711785492504343953926634992332820282019728792003956564819949"),tP=BigInt("19681161376707505956807079304988542015446066515923890162744021073123829784752");BigInt(0);let tA=BigInt(1),t_=BigInt(2);BigInt(3);let tC=BigInt(5),tT=BigInt(8),tR=tu(tO,void 0,!0),tB=function(e){var t;let r,i=(e4(e.Fp,tc.reduce((e,t)=>
1(e[t]="function",e),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"})),e4(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),r=Object.freeze({...th(e.n,e.nBitLength),...e,p:e.Fp.ORDER}),e4(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=tE<<BigInt(8*c)-tx,f=s.create,d=tu(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:tv}}}),g=i.adjustScalarBytes||(e=>e),y=i.domain||((e,t,r)=>{if(eW("phflag",r),t.length||r)throw Error("Contexts/pre-hash are not supported");return e});function m(e,t){e6("coordinate "+e,t,tv,u)}function b(e){if(!(e instanceof x))throw Error("ExtendedPoint expected")}let w=e9((e,t)=>{let{ex:r,ey:i,ez:n}=e,o=e.is0();null==t&&(t=o?tI:s.inv(n));let a=f(r*t),l=f(i*t),c=f(n*t);if(o)return{x:tv,y:tx};if(c!==tx)throw Error("invZ was invalid");return{x:a,y:l}}),v=e9(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=f(s*s),c=f(n*n),h=f(o*o),u=f(h*h),d=f(l*t);if(f(h*f(d+c))!==f(u+f(r*f(l*c))))throw Error("bad point: equation left != right (1)");if(f(s*n)!==f(o*a))throw Error("bad point: equation left != right (2)");return!0});
1class x{constructor(e,t,r,i){this.ex=e,this.ey=t,this.ez=r,this.et=i,m("x",e),m("y",t),m("z",r),m("t",i),Object.freeze(this)}get x(){return this.toAffine().x}get y(){return this.toAffine().y}static fromAffine(e){if(e instanceof x)throw Error("extended point not allowed");let{x:t,y:r}=e||{};return m("x",t),m("y",r),new x(t,r,tx,f(t*r))}static normalizeZ(e){let t=s.invertBatch(e.map(e=>e.ez));return e.map((e,r)=>e.toAffine(t[r])).map(x.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>ez;e>>=eF,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}(x,d,e,t)}_setWindowSize(e){S.setWindowSize(this,e)}assertValidity(){v(this)}equals(e){b(e);let{ex:t,ey:r,ez:i}=this,{ex:s,ey:n,ez:o}=e,a=f(t*o),l=f(s*i),c=f(r*o),h=f(n*i);return a===l&&c===h}is0(){return this.equals(x.ZERO)}negate(){return new x(f(-this.ex),this.ey,this.ez,f(-this.et))}double(){let{a:e}=i,{ex:t,ey:r,ez:s}=this,n=f(t*t),o=f(r*r),a=f(tE*f(s*s)),l=f(e*n),c=t+r,h=f(f(c*c)-n-o),u=l+o,d=u-a,p=l-o,g=f(h*d),y=f(u*p),m=f(h*p);return new x(g,y,f(d*u),m)}add(e){b(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=f((n-s)*(c+l)),t=f((n+s)*(c-l)),r=f(t-e);if(r===tv)return this.double();let i=f(o*tE*u),d=f(a*tE*h),p=d+i,g=t+e,y=d-i,m=f(p*r),b=f(g*y),w=f(p*y);return new x(m,b,f(r*g),w)}let d=f(s*l),p=f(n*c),g=f(a*r*u),y=f(o*h),m=f((s+n)*(l+c)-d-p),w=y-g,v=y+g,E=f(p-t*d),I=f(m*w),S=f(v*E),O=f(m*E);return new x(I,S,f(w*v),O)}subtract(e){return this.add(e.negate())}wNAF(e){return S.wNAFCached(this,e,x.normalizeZ)}multiply(e){e6("scalar",e,tx,n);let{p:t,f:r}=this.wNAF(e);return x.normalizeZ([t,r])[0]}multiplyUnsafe(e,t=x.ZERO){return e6("scalar",e,tv,n),e===tv?I:this.is0()||e===tx?this:S.wNAFCachedUnsafe(this,e,x.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===tx?this:this.multiplyUnsafe(e)}static fromHex(e,t=!1){let{d:r,a:n}=i,o=s.BYTES;e=e2("pointHex",e,o),eW("zip215",t);let a=e.slice(),l=e[o-1];a[o-1]=-129&l;let c=eQ(a);e6("pointHex.y",c,tv,t?u:s.ORDER);let h=f(c*c),{isValid:d,value:g}=p(f(h-tx),f(r*h-n));if(!d)throw Error("Point.fromHex: invalid y coordinate");let y=(g&tx)===tx,m=(128&l)!=0;if(!t&&g===tv&&m)throw Error("Point.fromHex: x=0 and x_0=1");return m!==y&&(g=f(-g)),x.fromAffine({x:g,y:c})}static fromPrivateKey(e){return O(e).point}toRawBytes(){let{x:e,y:t}=this.toAffine(),r=e1(t,s.BYTES);return r[r.length-1]|=e&tx?128:0,r}toHex(){return eY(this.toRawBytes())}}x.BASE=new x(i.Gx,i.Gy,tx,f(i.Gx*i.Gy)),x.ZERO=new x(tv,tx,tx,tv);let{BASE:E,ZERO:I}=x,S=(t=8*c,{constTimeNegate:tp,hasPrecomputes:e=>1!==tw(e),unsafeLadder(e,t,r=x.ZERO){let i=e;for(;t>tf;)t&td&&(r=r.add(i)),i=i.double(),t>>=td;return r},precomputeWindow(e,r){let{windows:i,windowSize:s}=ty(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}=ty(e,t),o=x.ZERO,a=x.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+=td);let u=t+Math.abs(s)-1,f=e%2!=0,d=s<0;0===s?a=a.add(tp(f,r[t])):o=o.add(tp(d,r[u]))}return{p:o,f:a}},wNAFUnsafe(e,r,i,s=x.ZERO){let{windows:n,windowSize:o}=ty(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===tf)break;let n=Number(i&a);if(i>>=c,n>o&&(n-=l,i+=td),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=tm.get(t);
1return i||(i=this.precomputeWindow(t,e),1!==e&&tm.set(t,r(i))),i},wNAFCached(e,t,r){let i=tw(e);return this.wNAF(i,this.getPrecomputes(i,e,r),t)},wNAFCachedUnsafe(e,t,r,i){let s=tw(e);return 1===s?this.unsafeLadder(e,t,i):this.wNAFUnsafe(s,this.getPrecomputes(s,e,r),t,i)},setWindowSize(e,r){tg(r,t),tb.set(e,r),tm.delete(e)}});function O(e){let t=s.BYTES;e=e2("private key",e,t);let r=e2("hashed private key",a(e),2*t),i=g(r.slice(0,t)),o=r.slice(t,2*t),l=to(eQ(i),n),c=E.multiply(l),h=c.toRawBytes();return{head:i,prefix:o,scalar:l,point:c,pointBytes:h}}function P(e=new Uint8Array,...t){return to(eQ(a(y(e3(...t),e2("context",e),!!o))),n)}return E._setWindowSize(8),{CURVE:i,getPublicKey:function(e){return O(e).pointBytes},sign:function(e,t,r={}){e=e2("message",e),o&&(e=o(e));let{prefix:i,scalar:a,pointBytes:l}=O(t),c=P(r.context,i,e),h=E.multiply(c).toRawBytes(),u=to(c+P(r.context,h,l,e)*a,n);return e6("signature.s",u,tv,n),e2("result",e3(h,e1(u,s.BYTES)),2*s.BYTES)},verify:function(e,t,r,i=tS){let n,a,l,{context:c,zip215:h}=i,u=s.BYTES;e=e2("signature",e,2*u),t=e2("message",t),r=e2("publicKey",r,u),void 0!==h&&eW("zip215",h),o&&(t=o(t));let f=eQ(e.slice(u,2*u));try{n=x.fromHex(r,h),a=x.fromHex(e.slice(0,u),h),l=E.multiplyUnsafe(f)}catch{return!1}if(!h&&n.isSmallOrder())return!1;let d=P(c,a.toRawBytes(),n.toRawBytes(),t);return a.add(n.multiplyUnsafe(d)).subtract(l).clearCofactor().equals(x.ZERO)},ExtendedPoint:x,utils:{getExtendedPublicKey:O,randomPrivateKey:()=>l(s.BYTES),precompute:(e=8,t=x.BASE)=>(t._setWindowSize(e),t.multiply(BigInt(3)),t)}}}({a:BigInt(-1),d:BigInt("37095705934669439343138083508754565189542113879843219016388785533085940283555"),Fp:tR,n:BigInt("7237005577332262213973186563042994240857116359379907606001950938285454250989"),h:tT,Gx:BigInt("15112221349535400772501151409588531511454012693041857206046113283949847762202"),Gy:BigInt("46316835694926478169428394003475163141307993866256225615783033603165251855960"),hash:eM,randomBytes:ew,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,f,d,p,g,y,m=to(t*t*t,tO),b=(r=e*to(m*m*t,tO),i=BigInt(10),s=BigInt(20),n=BigInt(40),o=BigInt(80),l=ta(a=r*r%tO*r%tO,t_,tO)*a%tO,c=ta(l,tA,tO)*r%tO,h=ta(c,tC,tO)*c%tO,u=ta(h,i,tO)*h%tO,f=ta(u,s,tO)*u%tO,d=ta(f,n,tO)*f%tO,p=ta(d,o,tO)*d%tO,g=ta(p,o,tO)*d%tO,y=ta(g,i,tO)*h%tO,{pow_p_5_8:ta(y,t_,tO)*r%tO,b2:a}).pow_p_5_8,w=to(e*m*b,tO),v=to(t*w*w,tO),x=w,E=to(w*tP,tO),I=v===e,S=v===to(-e,tO),O=v===to(-e*tP,tO);return I&&(w=x),(S||O)&&(w=E),(to(w,tO)&te)===te&&(w=to(-w,tO)),{isValid:I||S,value:w}}}),tU="base64url",tN="utf8",tk="utf8",tj="base58btc";function tD(e){return null!=globalThis.Buffer?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function tL(e=0){return null!=globalThis.Buffer&&null!=globalThis.Buffer.allocUnsafe?tD(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function t$(e,t){t||(t=e.reduce((e,t)=>e+t.length,0));let r=tL(t),i=0;for(let t of e)r.set(t,i),i+=t.length;return tD(r)}var tq=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,f=n-1;(0!==h||u<s)&&-1!==f;f--,u++)h+=a*o[f]>>>0,o[f]=h%256>>>0,h=h/256>>>0;if(0!==h)throw Error("Non-zero carry");s=u,t++}if(" "!==e[t]){for(var d=n-s;d!==n&&0===o[d];)d++;for(var p=new Uint8Array(i+(n-d)),g=i;d!==n;)p[g++]=o[d++];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],f=0,d=o-1;(0!==u||f<i)&&-1!==d;d--,f++)u+=256*c[d]>>>0,c[d]=u%a>>>0,u=u/a>>>0;if(0!==u)throw Error("Non-zero carry");i=f,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 tM=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 tz{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 tF{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 tK(this,e)}}class tV{constructor(e){this.decoders=e}or(e){return tK(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 tK=(e,t)=>new tV({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}});class tH{constructor(e,t,r,i){this.name=e,this.prefix=t,this.baseEncode=r,this.baseDecode=i,this.encoder=new tz(e,t,r),this.decoder=new tF(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}let tW=({name:e,prefix:t,encode:r,decode:i})=>new tH(e,t,r,i),tG=({prefix:e,name:t,alphabet:r})=>{let{encode:i,decode:s}=tq(r,t);return tW({prefix:e,name:t,encode:i,decode:e=>tM(s(e))})},tY=({name:e,prefix:t,bitsPerChar:r,alphabet:i})=>tW({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 tZ=Object.freeze({__proto__:null,identity:tW({prefix:"\0",name:"identity",encode:e=>new TextDecoder().decode(e),decode:e=>new TextEncoder().encode(e)})}),tX=Object.freeze({__proto__:null,base2:tY({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})}),tJ=Object.freeze({__proto__:null,base8:tY({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})}),tQ=Object.freeze({__proto__:null,base10:tG({prefix:"9",name:"base10",alphabet:"0123456789"})}),t0=Object.freeze({__proto__:null,base16:tY({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),base16upper:tY({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})}),t1=Object.freeze({__proto__:null,base32:tY({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),base32upper:tY({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),base32pad:tY({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),base32padupper:tY({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),base32hex:tY({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),base32hexupper:tY({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),base32hexpad:tY({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),base32hexpadupper:tY({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),base32z:tY({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})}),t2=Object.freeze({__proto__:null,base36:tG({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),base36upper:tG({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})}),t3=Object.freeze({__proto__:null,base58btc:tG({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),base58flickr:tG({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})}),t8=Object.freeze({__proto__:null,base64:tY({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),base64pad:tY({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),base64url:tY({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),base64urlpad:tY({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});let t6=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈ðŸ‘
1‡ðŸŽ¶ðŸ˜’🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),t5=t6.reduce((e,t,r)=>(e[r]=t,e),[]),t4=t6.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);var t9=Object.freeze({__proto__:null,base256emoji:tW({prefix:"🚀",name:"base256emoji",encode:function(e){return e.reduce((e,t)=>e+=t5[t],"")},decode:function(e){let t=[];for(let r of e){let e=t4[r.codePointAt(0)];if(void 0===e)throw Error(`Non-base256emoji character: ${r}`);t.push(e)}return new Uint8Array(t)}})});function t7(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,t7.bytes=r-i+1,t}var re=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 rt=(e,t,r=0)=>(t7(e,t,r),t),rr=(e,t)=>{let r=t.byteLength,i=re(e),s=i+re(r),n=new Uint8Array(s+r);return rt(e,n,0),rt(r,n,i),n.set(t,s),new ri(e,r,t,n)};
1class ri{constructor(e,t,r,i){this.code=e,this.size=t,this.digest=r,this.bytes=i}}let rs=({name:e,code:t,encode:r})=>new rn(e,t,r);class rn{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?rr(this.code,t):t.then(e=>rr(this.code,e))}throw Error("Unknown type, must be binary type")}}let ro=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t));var ra=Object.freeze({__proto__:null,sha256:rs({name:"sha2-256",code:18,encode:ro("SHA-256")}),sha512:rs({name:"sha2-512",code:19,encode:ro("SHA-512")})}),rl=Object.freeze({__proto__:null,identity:{code:0,name:"identity",encode:tM,digest:e=>rr(0,tM(e))}});new TextEncoder,new TextDecoder;let rc={...tZ,...tX,...tJ,...tQ,...t0,...t1,...t2,...t3,...t8,...t9};function rh(e,t,r,i){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:i}}}({...ra,...rl});let ru=rh("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),rf=rh("ascii","a",e=>{let t="a";for(let r=0;r<e.length;r++)t+=String.fromCharCode(e[r]);return t},e=>{let t=tL((e=e.substring(1)).length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),rd={utf8:ru,"utf-8":ru,hex:rc.base16,latin1:rf,ascii:rf,binary:rf,...rc};function rp(e,t="utf8"){let r=rd[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 rg(e,t="utf8"){let r=rd[t];if(!r)throw Error(`Unsupported encoding "${t}"`);return("utf8"===t||"utf-8"===t)&&null!=globalThis.Buffer&&null!=globalThis.Buffer.from?tD(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function ry(e){return D(rp(rg(e,tU),tN))}function rm(e){return rp(rg(L(e),tN),tU)}function rb(e){return["did:key","z"+rp(t$([rg("K36",tj),e]),tj)].join(":")}function rw(e){let t=e.split(".");return{header:ry(t[0]),payload:ry(t[1]),signature:rg(t[2],tU),data:rg(t.slice(0,2).join("."),tk)}}function rv(e=ew(32)){let t=tB.getPublicKey(e);return{secretKey:t$([e,t]),publicKey:t}}async function rx(e,t,r,i,s=(0,b.fromMiliseconds)(Date.now())){let n={alg:"EdDSA",typ:"JWT"},o={iss:rb(i.publicKey),sub:e,aud:t,iat:s,exp:s+r},a=rg([rm((l={header:n,payload:o}).header),rm(l.payload)].join("."),tk);var l,c={header:n,payload:o,signature:tB.sign(a,i.secretKey.slice(0,32))};return[rm(c.header),rm(c.payload),rp(c.signature,tU)].join(".")}var rE=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))},rI=function(e,t,r){this.name=e,this.version=t,this.os=r,this.type="browser"},rS=function(e){this.version=e,this.type="node",this.name="node",this.os=m.default.platform},rO=function(e,t,r,i){this.name=e,this.version=t,this.os=r,this.bot=i,this.type="bot-device"},rP=function(){this.type="bot",this.bot=!0,this.name="bot",this.version=null,this.os=null},rA=function(){this.type="react-native",this.name="react-native",this.version=null,this.os=null},r_=/(nuhk|curl|Googlebot|Yammybot|Openbot|Slurp|MSNBot|Ask\ Jeeves\/Teoma|ia_archiver)/,rC=[["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;
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/]],rT=[["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/]],rR=e.i(36610),rB=e.i(275221);let rU="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0;function rN(e){if(!Number.isSafeInteger(e)||e<0)throw Error("positive integer expected, got "+e)}function rk(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 rj(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 rD(e,t){rk(e);let r=t.outputLen;if(e.length<r)throw Error("digestInto() expects output buffer of length at least "+r)}function rL(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function r$(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function rq(e,t){return e<<32-t|e>>>t}let rM=68===new Uint8Array(new Uint32Array([0x11223344]).buffer)[0]?e=>e:function(e){for(let r=0;r<e.length;r++){var t;e[r]=(t=e[r])<<24&0xff000000|t<<8&0xff0000|t>>>8&65280|t>>>24&255}return e};function rz(e){return"string"==typeof e&&(e=function(e){if("string"!=typeof e)throw Error("string expected");return new Uint8Array(new TextEncoder().encode(e))}(e)),rk(e),e}class rF{}function rV(e){let t=t=>e().update(rz(t)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function rK(e=32){if(rU&&"function"==typeof rU.getRandomValues)return rU.getRandomValues(new Uint8Array(e));if(rU&&"function"==typeof rU.randomBytes)return Uint8Array.from(rU.randomBytes(e));throw Error("crypto.getRandomValues must be defined")}
1class rH extends rF{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=r$(this.buffer)}update(e){rj(this),rk(e=rz(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=r$(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){rj(this),rD(e,this),this.finished=!0;let{buffer:t,view:r,blockLen:i,isLE:s}=this,{pos:n}=this;t[n++]=128,rL(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=r$(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 rW=Uint32Array.from([0x6a09e667,0xbb67ae85,0x3c6ef372,0xa54ff53a,0x510e527f,0x9b05688c,0x1f83d9ab,0x5be0cd19]),rG=Uint32Array.from([0xc1059ed8,0x367cd507,0x3070dd17,0xf70e5939,0xffc00b31,0x68581511,0x64f98fa7,0xbefa4fa4]),rY=Uint32Array.from([0xcbbb9d5d,0xc1059ed8,0x629a292a,0x367cd507,0x9159015a,0x3070dd17,0x152fecd8,0xf70e5939,0x67332667,0xffc00b31,0x8eb44a87,0x68581511,0xdb0c2e0d,0x64f98fa7,0x47b5481d,0xbefa4fa4]),rZ=Uint32Array.from([0x6a09e667,0xf3bcc908,0xbb67ae85,0x84caa73b,0x3c6ef372,0xfe94f82b,0xa54ff53a,0x5f1d36f1,0x510e527f,0xade682d1,0x9b05688c,0x2b3e6c1f,0x1f83d9ab,0xfb41bd6b,0x5be0cd19,0x137e2179]),rX=BigInt(0x100000000-1),rJ=BigInt(32);function rQ(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}=function(e,t=!1){return t?{h:Number(e&rX),l:Number(e>>rJ&rX)}:{h:0|Number(e>>rJ&rX),l:0|Number(e&rX)}}(e[n],t);[i[n],s[n]]=[r,o]}return[i,s]}let r0=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]),r1=new Uint32Array(64);class r2 extends rH{constructor(e=32){super(64,e,8,!1),this.A=0|rW[0],this.B=0|rW[1],this.C=0|rW[2],this.D=0|rW[3],this.E=0|rW[4],this.F=0|rW[5],this.G=0|rW[6],this.H=0|rW[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)r1[r]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=r1[e-15],r=r1[e-2],i=rq(t,7)^rq(t,18)^t>>>3,s=rq(r,17)^rq(r,19)^r>>>10;r1[e]=s+r1[e-7]+i+r1[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,f,d;let t=c+(rq(o,6)^rq(o,11)^rq(o,25))+((h=o)&a^~h&l)+r0[e]+r1[e]|0,p=(rq(r,2)^rq(r,13)^rq(r,22))+((u=r)&(f=i)^u&(d=s)^f&d)|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(){rL(r1)}destroy(){this.set(0,0,0,0,0,0,0,0),rL(this.buffer)}}let r3=rQ(["0x428a2f98d728ae22","0x7137449123ef65cd","0xb5c0fbcfec4d3b2f","0xe9b5dba58189dbbc","0x3956c25bf348b538","0x59f111f1b605d019","0x923f82a4af194f9b","0xab1c5ed5da6d8118","0xd807aa98a3030242","0x12835b0145706fbe","0x243185be4ee4b28c","0x550c7dc3d5ffb4e2","0x72be5d74f27b89
16f","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))),r8=r3[0],r6=r3[1],r5=new Uint32Array(80),r4=new Uint32Array(80),r9=rV(()=>new r2);class r7 extends rF{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,function(e){if("function"!=typeof e||"function"!=typeof e.create)throw Error("Hash should be wrapped by utils.createHasher");rN(e.outputLen),rN(e.blockLen)}(e);const r=rz(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),rL(s)}update(e){return rj(this),this.iHash.update(e),this}digestInto(e){rj(this),rk(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 ie=(e,t,r)=>new r7(e,t).update(r).digest();ie.create=(e,t)=>new r7(e,t);let it=BigInt(0),ir=BigInt(1);function ii(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function is(e){if(!ii(e))throw Error("Uint8Array expected")}function io(e,t){if("boolean"!=typeof t)throw Error(e+" boolean expected, got "+t)}function ia(e){let t=e.toString(16);return 1&t.length?"0"+t:t}function il(e){if("string"!=typeof e)throw Error("hex string expected, got "+typeof e);return""===e?it:BigInt("0x"+e)}let ic="function"==typeof Uint8Array.from([]).toHex&&"function"==typeof Uint8Array.fromHex,ih=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function iu(e){if(is(e),ic)return e.toHex();let t="";for(let r=0;r<e.length;r++)t+=ih[e[r]];return t}function id(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:void 0}function ip(e){if("string"!=typeof e)throw Error("hex string expected, got "+typeof e);if(ic)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=id(e.charCodeAt(s)),n=id(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 ig(e){return il(iu(e))}function iy(e){return is(e),il(iu(Uint8Array.from(e).reverse()))}function im(e,t){return ip(e.toString(16).padStart(2*t,"0"))}function ib(e,t){return im(e,t).reverse()}function iw(e,t,r){let i;if("string"==typeof t)try{i=ip(t)}catch(t){throw Error(e+" must be hex string or Uint8Array, cause: "+t)}else if(ii(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 iv(...e){let t=0;for(let r=0;r<e.length;r++){let i=e[r];is(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 ix=e=>"bigint"==typeof e&&it<=e;function iE(e,t,r){return ix(e)&&ix(t)&&ix(r)&&t<=e&&e<r}function iI(e,t,r,i){if(!iE(t,r,i))throw Error("expected valid "+e+": "+r+" <= n < "+i+", got "+t)}let iS=e=>
vendor: 20,574 bytes, line 1
1(ir<<BigInt(e))-ir,iO=e=>new Uint8Array(e),iP={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||ii(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 iA(e,t,r={}){let i=(t,r,i)=>{let s=iP[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 i_(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 iC=BigInt(0),iT=BigInt(1),iR=BigInt(2),iB=BigInt(3),iU=BigInt(4),iN=BigInt(5),ik=BigInt(8);function ij(e,t){let r=e%t;return r>=iC?r:t+r}function iD(e,t,r){let i=e;for(;t-- >iC;)i*=i,i%=r;return i}function iL(e,t){if(e===iC)throw Error("invert: expected non-zero number");if(t<=iC)throw Error("invert: expected positive modulus, got "+t);let r=ij(e,t),i=t,s=iC,n=iT,o=iT,a=iC;for(;r!==iC;){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!==iT)throw Error("invert: does not exist");return ij(s,t)}function i$(e,t){let r=(e.ORDER+iT)/iU,i=e.pow(t,r);if(!e.eql(e.sqr(i),t))throw Error("Cannot find square root");return i}function iq(e,t){let r=(e.ORDER-iN)/ik,i=e.mul(t,iR),s=e.pow(i,r),n=e.mul(t,s),o=e.mul(e.mul(n,iR),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 iM=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function iz(e){return iA(e,iM.reduce((e,t)=>(e[t]="function",e),{ORDER:"bigint",MASK:"bigint",BYTES:"isSafeInteger",BITS:"isSafeInteger"}))}function iF(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 iV(e,t){let r=(e.ORDER-iT)/iR,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 iK(e,t){void 0!==t&&rN(t);let r=void 0!==t?t:e.toString(2).length,i=Math.ceil(r/8);return{nBitLength:r,nByteLength:i}}function iH(e,t,r=!1,i={}){let s;if(e<=iC)throw Error("invalid field: expected ORDER > 0, got "+e);let{nBitLength:n,nByteLength:o}=iK(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:iS(n),ZERO:iC,ONE:iT,create:t=>ij(t,e),isValid:t=>{if("bigint"!=typeof t)throw Error("invalid field element: expected bigint, got "+typeof t);return iC<=t&&t<e},is0:e=>e===iC,isOdd:e=>(e&iT)===iT,neg:t=>ij(-t,e),eql:(e,t)=>e===t,sqr:t=>ij(t*t,e),add:(t,r)=>ij(t+r,e),sub:(t,r)=>ij(t-r,e),mul:(t,r)=>ij(t*r,e),pow:(e,t)=>(function(e,t,r){if(r<iC)throw Error("invalid exponent, negatives unsupported");if(r===iC)return e.ONE;if(r===iT)return t;let i=e.ONE,s=t;for(;r>iC;)r&iT&&(i=e.mul(i,s)),s=e.sqr(s),r>>=iT;return i})(a,e,t),div:(t,r)=>ij(t*iL(r,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>iL(t,e),sqrt:i.sqrt||(t=>(s||(s=e%iU===iB?i$:e%ik===iN?iq:function(e){if(e<BigInt(3))throw Error("sqrt is not defined for small field");let t=e-iT,r=0;for(;t%iR===iC;)t/=iR,r++;let i=iR,s=iH(e);for(;1===iV(s,i);)if(i++>1e3)throw Error("Cannot find square root: probably non-prime P");if(1===r)return i$;let n=s.pow(i,t),o=(t+iT)/iR;return function(e,i){if(e.is0(i))return i;if(1!==iV(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=iT<<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?ib(e,o):im(e,o),fromBytes:e=>{if(e.length!==o)throw Error("Field.fromBytes: expected "+o+" bytes, got "+e.length);return r?iy(e):ig(e)},invertBatch:e=>iF(a,e),cmov:(e,t,r)=>r?t:e});return Object.freeze(a)}function iW(e){if("bigint"!=typeof e)throw Error("field order must be bigint");return Math.ceil(e.toString(2).length/8)}function iG(e){let t=iW(e);return t+Math.ceil(t/2)}let iY=BigInt(0),iZ=BigInt(1);function iX(e,t){let r=t.negate();return e?r:t}function iJ(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error("invalid window size, expected [1.."+t+"], got W="+e)}function iQ(e,t){iJ(e,t);let r=Math.ceil(t/e)+1,i=2**(e-1),s=2**e;return{windows:r,windowSize:i,mask:iS(e),maxNumber:s,shiftBy:BigInt(e)}}function i0(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+=iZ);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 i1=new WeakMap,i2=new WeakMap;function i3(e){return i2.get(e)||1}function i8(e){return iz(e.Fp),iA(e,{n:"bigint",h:"bigint",Gx:"field",Gy:"field"},{nBitLength:"isSafeInteger",nByteLength:"isSafeInteger"}),Object.freeze({...iK(e.n,e.nBitLength),...e,...{p:e.Fp.ORDER}})}function i6(e){void 0!==e.lowS&&io("lowS",e.lowS),void 0!==e.prehash&&io("prehash",e.prehash)}let i5={Err:class extends Error{constructor(e=""){super(e)}},_tlv:{encode:(e,t)=>{let{Err:r}=i5;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=ia(i);if(s.length/2&128)throw new r("tlv.encode: long form length too big");let n=i>127?ia(s.length/2|128):"";return ia(e)+n+s+t},decode(e,t){let{Err:r}=i5,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}=i5;if(e<i4)throw new t("integer: negative integers are not allowed");let r=ia(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}=i5;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 ig(e)}},toSig(e){let{Err:t,_int:r,_tlv:i}=i5,s=iw("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}=i5,i=t.encode(2,r.encode(e.r)),s=t.encode(2,r.encode(e.s));return t.encode(48,i+s)}},i4=BigInt(0),i9=BigInt(1),i7=BigInt(2),se=BigInt(3),st=BigInt(4),sr=BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffffc2f"),si=BigInt("0xfffffffffffffffffffffffffffffffebaaedce6af48a03bbfd25e8cd0364141"),ss=BigInt(0),sn=BigInt(1),so=BigInt(2),sa=(e,t)=>(e+t/so)/t,sl=iH(sr,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%sr,c=l*l*e%sr,h=iD(c,t,sr)*c%sr,u=iD(h,t,sr)*c%sr,f=iD(u,so,sr)*l%sr,d=iD(f,i,sr)*f%sr,p=iD(d,s,sr)*d%sr,g=iD(p,o,sr)*p%sr,y=iD(g,a,sr)*g%sr,m=iD(y,o,sr)*p%sr,b=iD(m,t,sr)*c%sr,w=iD(b,n,sr)*d%sr,v=iD(w,r,sr)*l%sr,x=iD(v,so,sr);if(!sl.eql(sl.sqr(x),e))throw Error("Cannot find square root");return x}}),sc=(f={a:ss,b:BigInt(7),Fp:sl,n:si,Gx:BigInt("55066263022277343669578718895168534326250603453777594175500187360389116729240"),Gy:BigInt("32670510020758816978083085130507043184471273380659243275938904335757337482424"),h:BigInt(1),lowS:!0,endo:{beta:BigInt("0x7ae96a2b657c07106e64479eac3434e99cf0497512f58995c1396c28719501ee"),splitScalar:e=>{let t=BigInt("0x3086d221a7d46bcde86c90e49284eb15"),r=-sn*BigInt("0xe4437ed6010e88286f547fa90abfe4c3"),i=BigInt("0x114ca50f7a8e2f3f657c1108d9d44cfd8"),s=BigInt("0x100000000000000000000000000000000"),n=sa(t*e,si),o=sa(-r*e,si),a=ij(e-n*t-o*i,si),l=ij(-n*r-o*t,si),c=a>s,h=l>s;if(c&&(a=si-a),h&&(l=si-l),a>s||l>s)throw Error("splitScalar: Endomorphism failed, k="+e);return{k1neg:c,k1:a,k2neg:h,k2:l}}}},{...(s=e=>(function(e){let t,r=(iA(t=i8(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 ij(e,s)}let{ProjectivePoint:h,normPrivateKeyToScalar:u,weierstrassEquation:f,isWithinCurveOrder:d}=function(e){var t;let r=function(e){let t=i8(e);iA(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=iH(r.n,r.nBitLength),n=r.toBytes||((e,t,r)=>{let s=t.toAffine();return iv(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,se),st),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(ii(e)&&(e=iu(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:ig(iw("private key",e,s))}catch(t){throw Error("invalid private key, expected hex or "+s+" bytes, got "+typeof e)}return n&&(t=ij(t,o)),iI("private key",t,i9,o),t}function f(e){if(!(e instanceof g))throw Error("ProjectivePoint expected")}let d=i_((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=i_(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=iF(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(iw("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>it;e>>=ir,t+=1);return t}(BigInt(s)),l=1;a>12?l=a-3:a>4?l=a-2:a>0&&(l=2);let c=iS(l),h=Array(Number(c)+1).fill(o),u=Math.floor((t.BITS-1)/l)*l,f=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(f=f.add(t),0!==e)for(let e=0;e<l;e++)f=f.double()}return f}(g,s,e,t)}_setWindowSize(e){b.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){f(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,se),{px:n,py:o,pz:a}=this,l=i.ZERO,c=i.ZERO,h=i.ZERO,u=i.mul(n,n),f=i.mul(o,o),d=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,d),c=i.add(l,c),l=i.sub(f,c),c=i.add(f,c),c=i.mul(l,c),l=i.mul(p,l),h=i.mul(s,h),d=i.mul(e,d),p=i.sub(u,d),p=i.mul(e,p),p=i.add(p,h),h=i.add(u,u),u=i.add(h,u),u=i.add(u,d),u=i.mul(u,p),c=i.add(c,u),d=i.mul(o,a),d=i.add(d,d),u=i.mul(d,p),l=i.sub(l,u),h=i.mul(d,f),h=i.add(h,h),new g(l,c,h=i.add(h,h))}add(e){f(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,d=r.a,p=i.mul(r.b,se),y=i.mul(t,o),m=i.mul(s,a),b=i.mul(n,l),w=i.add(t,s),v=i.add(o,a);w=i.mul(w,v),v=i.add(y,m),w=i.sub(w,v),v=i.add(t,n);let x=i.add(o,l);return v=i.mul(v,x),x=i.add(y,b),v=i.sub(v,x),x=i.add(s,n),c=i.add(a,l),x=i.mul(x,c),c=i.add(m,b),x=i.sub(x,c),u=i.mul(d,v),c=i.mul(p,b),u=i.add(c,u),c=i.sub(m,u),u=i.add(m,u),h=i.mul(c,u),m=i.add(y,y),m=i.add(m,y),b=i.mul(d,b),v=i.mul(p,v),m=i.add(m,b),b=i.sub(y,b),b=i.mul(d,b),v=i.add(v,b),y=i.mul(m,v),h=i.add(h,y),y=i.mul(x,v),c=i.mul(w,c),c=i.sub(c,y),y=i.mul(w,m),u=i.mul(x,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 b.wNAFCached(this,e,g.normalizeZ)}multiplyUnsafe(e){let{endo:t,n:s}=r;iI("scalar",e,i4,s);let n=g.ZERO;if(e===i4)return n;if(this.is0()||e===i9)return this;if(!t||b.hasPrecomputes(this))return b.wNAFCachedUnsafe(this,e,g.normalizeZ);let{k1neg:o,k1:a,k2neg:l,k2:c}=t.splitScalar(e),h=n,u=n,f=this;for(;a>i4||c>i4;)a&i9&&(h=h.add(f)),c&i9&&(u=u.add(f)),f=f.double(),a>>=i9,c>>=i9;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(iI("scalar",e,i9,o),n){let{k1neg:r,k1:o,k2neg:a,k2:l}=n.splitScalar(e),{p:c,f:h}=this.wNAF(o),{p:u,f:f}=this.wNAF(l);c=b.constTimeNegate(r,c),u=b.constTimeNegate(a,u),u=new g(i.mul(u.px,n.beta),u.py,u.pz),t=c.add(u),s=h.add(f)}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!==i4&&t!==i9&&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 d(this,e)}isTorsionFree(){let{h:e,isTorsionFree:t}=r;if(e===i9)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===i9?this:t?t(g,this):this.multiplyUnsafe(r.h)}toRawBytes(e=!0){return io("isCompressed",e),this.assertValidity(),n(g,this,e)}toHex(e=!0){return io("isCompressed",e),iu(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:m}=r,b=(t=y?Math.ceil(m/2):m,{constTimeNegate:iX,hasPrecomputes:e=>1!==i3(e),unsafeLadder(e,t,r=g.ZERO){let i=e;for(;t>iY;)t&iZ&&(r=r.add(i)),i=i.double(),t>>=iZ;return r},precomputeWindow(e,r){let{windows:i,windowSize:s}=iQ(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=iQ(e,t);for(let e=0;e<o.windows;e++){let{nextN:t,offset:a,isZero:l,isNeg:c,isNegF:h,offsetF:u}=i0(i,e,o);i=t,l?n=n.add(iX(h,r[u])):s=s.add(iX(c,r[a]))}return{p:s,f:n}},wNAFUnsafe(e,r,i,s=g.ZERO){let n=iQ(e,t);for(let e=0;e<n.windows&&i!==iY;e++){let{nextN:t,offset:o,isZero:a,isNeg:l}=i0(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=i1.get(t);return i||(i=this.precomputeWindow(t,e),1!==e&&i1.set(t,r(i))),i},wNAFCached(e,t,r){let i=i3(e);return this.wNAF(i,this.getPrecomputes(i,e,r),t)},wNAFCachedUnsafe(e,t,r,i){let s=i3(e);return 1===s?this.unsafeLadder(e,t,i):this.wNAFUnsafe(s,this.getPrecomputes(s,e,r),t,i)},setWindowSize(e,r){iJ(r,t),i2.set(e,r),i1.delete(e)}});return{CURVE:r,ProjectivePoint:g,normPrivateKeyToScalar:u,weierstrassEquation:a,isWithinCurveOrder:function(e){return iE(e,i9,r.n)}}}({...r,toBytes(e,t,r){let s=t.toAffine(),n=i.toBytes(s.x);return(io("isCompressed",r),r)?iv(Uint8Array.from([t.hasEvenY()?2:3]),n):iv(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=ig(s);if(!iE(t,i9,i.ORDER))throw Error("Point is not on curve");let n=f(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&i9)===i9)&&(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)=>ig(e.slice(t,r));class g{constructor(e,t,r){iI("r",e,i9,s),iI("s",t,i9,s),this.r=e,this.s=t,null!=r&&(this.recovery=r),Object.freeze(this)}static fromCompact(e){return new g(p(e=iw("compactSignature",e,2*n),0,n),p(e,n,2*n))}static fromDER(e){let{r:t,s:r}=i5.toSig(iw("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=b(iw("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",f=h.fromHex(u+iu(im(l,i.BYTES))),d=iL(l,s),p=c(-a*d),g=c(n*d),y=h.BASE.multiplyAndAddUnsafe(f,p,g);if(!y)throw Error("point at infinify");return y.assertValidity(),y}hasHighS(){return this.s>s>>i9}normalizeS(){return this.hasHighS()?new g(this.r,c(-this.s),this.recovery):this}toDERRawBytes(){return ip(this.toDERHex())}toDERHex(){return i5.hexFromSig(this)}toCompactRawBytes(){return ip(this.toCompactHex())}toCompactHex(){return iu(im(this.r,n))+iu(im(this.s,n))}}function y(e){if("bigint"==typeof e)return!1;if(e instanceof h)return!0;let t=iw("key",e).length,s=i.BYTES,o=s+1;if(!r.allowedPrivateKeyLengths&&n!==o)return t===o||t===2*s+1}let m=r.bits2int||function(e){if(e.length>8192)throw Error("input is too large");let t=ig(e),r=8*e.length-o;return r>0?t>>BigInt(r):t},b=r.bits2int_modN||function(e){return c(m(e))},w=iS(o);function v(e){return iI("num < 2^"+o,e,i4,w),im(e,n)}let x={lowS:r.lowS,prehash:!1},E={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=x){let{seed:o,k2sig:a}=function(e,t,n=x){if(["recovered","canonical"].some(e=>e in n))throw Error("sign() legacy options not supported");let{hash:o,randomBytes:a}=r,{lowS:l,prehash:f,extraEntropy:p}=n;null==l&&(l=!0),e=iw("msgHash",e),i6(n),f&&(e=iw("prehashed msgHash",o(e)));let y=b(e),w=u(t),E=[v(w),v(y)];if(null!=p&&!1!==p){let e=!0===p?a(i.BYTES):p;E.push(iw("extraEntropy",e))}return{seed:iv(...E),k2sig:function(e){var t;let r=m(e);if(!d(r))return;let i=iL(r,s),n=h.BASE.multiply(r).toAffine(),o=c(n.x);if(o===i4)return;let a=c(i*c(y+o*w));if(a===i4)return;let u=2*(n.x!==o)|Number(n.y&i9),f=a;return l&&a>s>>i9&&(f=(t=a)>s>>i9?c(-t):t,u^=1),new g(o,f,u)}}}
1(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=iO(e),s=iO(e),n=0,o=()=>{i.fill(1),s.fill(0),n=0},a=(...e)=>r(s,i,...e),l=(e=iO(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 iv(...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=E){let o,a;t=iw("msgHash",t),i=iw("publicKey",i);let{lowS:l,prehash:u,format:f}=n;if(i6(n),"strict"in n)throw Error("options.strict was renamed to lowS");if(void 0!==f&&"compact"!==f&&"der"!==f)throw Error("format must be compact or der");let d="string"==typeof e||ii(e),p=!d&&!f&&"object"==typeof e&&null!==e&&"bigint"==typeof e.r&&"bigint"==typeof e.s;if(!d&&!p)throw Error("invalid signature, expected Uint8Array, hex string or Signature instance");try{if(p&&(a=new g(e.r,e.s)),d){try{"compact"!==f&&(a=g.fromDER(e))}catch(e){if(!(e instanceof i5.Err))throw e}a||"der"===f||(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:m}=a,w=b(t),v=iL(m,s),x=c(w*v),I=c(y*v),S=h.BASE.multiplyAndAddUnsafe(o,x,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=iG(r.n);return function(e,t,r=!1){let i=e.length,s=iW(t),n=iG(t);if(i<16||i<n||i>1024)throw Error("expected "+n+"-1024 bytes of input, got "+i);let o=ij(r?iy(e):ig(e),t-iT)+iT;return r?ib(o,s):im(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)=>ie(e,t,function(...e){let t=0;for(let r=0;r<e.length;r++){let i=e[r];rk(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}(...r)),randomBytes:rK}))(r9),create:s});sc.ProjectivePoint;let sh=(n=[["0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa8c7","0x7d3d4c80bc321d5b9f315cea7fd44c5d595d2fc0bf63b92dfff1044f17c6581","0x534c328d23f234e6e2a413deca25caece4506144037c40314ecbd0b53d9dd262","0x8e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38e38daaaaa88c"],["0xd35771193d94918a9ca34ccbb7b640dd86cd409542f8487d9fe6b745781eb49b","0xedadc6f64383dc1df7c4b2d51b54225406d36b641f5e41bbc52a56612a8c6d14","0x0000000000000000000000000000000000000000000000000000000000000001"],["0x4bda12f684bda12f684bda12f684bda12f684bda12f684bda12f684b8e38e23c","0xc75e0c32d5cb7c0fa9d0a54b12a0a6d5647ab046d686da6fdffc90fc201d71a3","0x29a6194691f91a73715209ef6512e576722830a201be2018a765e85a9ecee931","0x2f684bda12f684bda12f684bda12f684bda12f684bda12f684bda12f38e38d84"],["0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffefffff93b","0x7a06534bb8bdb49fd5e9e6632722c2989467c1bfc8e8d978dfb425d2685c2573","0x6484aa716545ca2cf3a70c3fa8fe337e0a3d21162f0d6299a7bf8192bfd2a76f","0x0000000000000000000000000000000000000000000000000000000000000001"]].map(e=>e.map(e=>BigInt(e))).map(e=>Array.from(e).reverse()),(e,t)=>{let[r,i,s,o]=n.map(t=>t.reduce((t,r)=>sl.add(sl.mul(t,e),r))),[a,l]=iF(sl,[i,o],!0);return e=sl.mul(r,a),t=sl.mul(t,sl.mul(s,l)),{x:e,y:t}}),su=function(e,t){if(iz(e),!e.isValid(t.A)||!e.isValid(t.B)||!e.isValid(t.Z))throw Error("mapToCurveSimpleSWU: invalid opts");let r=function(e,t){let r=e.ORDER,i=i4;for(let e=r-i9;e%i7===i4;e/=i7)i+=i9;let s=i,n=i7<<s-i9-i9,o=n*i7,a=(r-i9)/o,l=(a-i9)/i7,c=o-i9,h=e.pow(t,a),u=e.pow(t,(a+i9)/i7),f=(t,r)=>{let i=h,o=e.pow(r,c),a=e.sqr(o);a=e.mul(a,r);let f=e.mul(t,a);f=e.pow(f,l),f=e.mul(f,o),o=e.mul(f,r),a=e.mul(f,t);let d=e.mul(a,o);f=e.pow(d,n);let p=e.eql(f,e.ONE);o=e.mul(a,u),f=e.mul(d,i),a=e.cmov(o,a,p),d=e.cmov(f,d,p);for(let t=s;t>i9;t--){let r=t-i7;r=i7<<r-i9;let s=e.pow(d,r),n=e.eql(s,e.ONE);o=e.mul(a,i),i=e.mul(i,i),s=e.mul(d,i),a=e.cmov(o,a,n),d=e.cmov(s,d,n)}return{isValid:p,value:a}};if(e.ORDER%st===se){let r=(e.ORDER-se)/st,i=e.sqrt(e.neg(t));f=(t,s)=>{let n=e.sqr(s),o=e.mul(t,s);n=e.mul(n,o);let a=e.pow(n,r);a=e.mul(a,o);let l=e.mul(a,i),c=e.mul(e.sqr(a),s),h=e.eql(c,t),u=e.cmov(l,a,h);return{isValid:h,value:u}}}return f}(e,t.Z);if(!e.isOdd)throw Error("Fp.isOdd is not implemented!");return i=>{let s,n,o,a,l,c,h,u;s=e.sqr(i),s=e.mul(s,t.Z),n=e.sqr(s),n=e.add(n,s),o=e.add(n,e.ONE),o=e.mul(o,t.B),a=e.cmov(t.Z,e.neg(n),!e.eql(n,e.ZERO)),a=e.mul(a,t.A),n=e.sqr(o),c=e.sqr(a),l=e.mul(c,t.A),n=e.add(n,l),n=e.mul(n,o),c=e.mul(c,a),l=e.mul(c,t.B),n=e.add(n,l),h=e.mul(s,o);let{isValid:f,value:d}=r(n,c);u=e.mul(s,i),u=e.mul(u,d),h=e.cmov(h,o,f),u=e.cmov(u,d,f);let p=e.isOdd(i)===e.isOdd(u);u=e.cmov(e.neg(u),u,p);let g=iF(e,[a],!0)[0];return{x:h=e.mul(h,g),y:u}}}(sl,{A:BigInt("0x3f8731abdd661adca08a5558f0f5d272e953d363cb6f0e5d405447c01a444533"),B:BigInt("1771"),Z:sl.create(BigInt("-11"))});!function(e,t,r){if("function"!=typeof t)throw Error("mapToCurve() must be defined")}(sc.ProjectivePoint,e=>{let{x:t,y:r}=su(sl.create(e[0]));return sh(t,r)},sl.ORDER);
vendor: 4,183 bytes, line 1
1class sf extends Error{constructor(e,t={}){const r=(()=>{if(t.cause instanceof sf){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 sf&&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 sd(e,t){if(sI(e)>t)throw new s_({givenSize:sI(e),maxSize:t})}function sp(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 sT({size:Math.ceil(s.length/2),targetSize:i,type:"Hex"});return`0x${s["right"===r?"padEnd":"padStart"](2*i,"0")}`}function sg(e,t,r){return JSON.stringify(e,(e,r)=>"function"==typeof t?t(e,r):"bigint"==typeof r?r.toString()+"#__bigint":r,r)}let sy=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function sm(...e){return`0x${e.reduce((e,t)=>e+t.replace("0x",""),"")}`}function sb(e){return e instanceof Uint8Array?sw(e):Array.isArray(e)?sw(new Uint8Array(e)):e}function sw(e,t={}){let r="";for(let t=0;t<e.length;t++)r+=sy[e[t]];let i=`0x${r}`;return"number"==typeof t.size?(sd(i,t.size),sx(i,t.size)):i}function sv(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 sO({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,sp(r,{dir:"left",size:n})):c}function sx(e,t){return sp(e,{dir:"right",size:t})}function sE(e,t,r,i={}){let{strict:s}=i;if("number"==typeof t&&t>0&&t>sI(e)-1)throw new sC({offset:t,position:"start",size:sI(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&&sI(e)!==r-t)throw new sC({offset:r,position:"end",size:sI(e)})}(n,t,r),n}function sI(e){return Math.ceil((e.length-2)/2)}function sS(e){return function(e,t={}){let{dir:r="left"}=t,i=e.replace("0x",""),s=0;for(let e=0;e<i.length-1;e++)if("0"===i["left"===r?e:i.length-e-1].toString())s++;else break;return"0"===(i="left"===r?i.slice(s):i.slice(0,i.length-s))?"0x":"right"===r&&i.length%2==1?`0x${i}0`:`0x${i}`}(e,{dir:"left"})}class sO extends sf{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 sP extends sf{constructor(e){super(`Value \`${"object"==typeof e?sg(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 sA extends sf{constructor(e){super(`Value \`${e}
1\` 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 s_ extends sf{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 sC extends sf{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 sT extends sf{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"})}}function sR(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:void 0}let sB=new TextEncoder;function sU(e){var t;return e instanceof Uint8Array?e:"string"==typeof e?sN(e):(t=e)instanceof Uint8Array?t:new Uint8Array(t)}function sN(e,t={}){let{size:r}=t,i=e;r&&(sd(e,r),i=sx(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=sR(s.charCodeAt(t++)),i=sR(s.charCodeAt(t++));if(void 0===r||void 0===i)throw new sf(`Invalid byte sequence ("${s[t-2]}${s[t-1]}" in "${s}").`);o[e]=16*r+i}return o}class sk extends sf{constructor(e){super(`Value \`${"object"==typeof e?sg(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 sj extends sf{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 sD extends sf{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"})}}let sL=2n**256n-1n;function s$(e,t={}){let{recovered:r}=t;if(void 0===e.r||void 0===e.s||r&&void 0===e.yParity)throw new sZ({signature:e});if(e.r<0n||e.r>sL)throw new sX({value:e.r});if(e.s<0n||e.s>sL)throw new sJ({value:e.s});if("number"==typeof e.yParity&&0!==e.yParity&&1!==e.yParity)throw new sQ({value:e.yParity})}function sq(e){return sM(sw(e))}function sM(e){if(130!==e.length&&132!==e.length)throw new sY({signature:e});let t=BigInt(sE(e,0,32)),r=BigInt(sE(e,32,64)),i=(()=>{let t=Number(`0x${e.slice(130)}`);if(!Number.isNaN(t))try{return sW(t)}catch{throw new sQ({value:t})}})();return void 0===i?{r:t,s:r}:{r:t,s:r,yParity:i}}function sz(e){let t="string"==typeof e?sM(e):e instanceof Uint8Array?sq(e):"string"==typeof e.r?sK(e):e.v?sV(e):{r:e.r,s:e.s,...void 0!==e.yParity?{yParity:e.yParity}:{}};return s$(t),t}function sF(e){let{r:t,s:r}=sc.Signature.fromDER(sb(e).slice(2));return{r:t,s:r}}function sV(e){return{r:e.r,s:e.s,yParity:sW(e.v)}}function sK(e){let t=(()=>{let t=e.v?Number(e.v):void 0,r=e.yParity?Number(e.yParity):void 0;if("number"==typeof t&&"number"!=typeof r&&(r=sW(t)),"number"!=typeof r)throw new sQ({value:e.yParity});return r})();return{r:BigInt(e.r),s:BigInt(e.s),yParity:t}}function sH(e){s$(e);let t=e.r,r=e.s;return sm(sv(t,{size:32}),sv(r,{size:32}),"number"==typeof e.yParity?sv(sG(e.yParity),{size:1}):"0x")}function sW(e){if(0===e||27===e)return 0;if(1===e||28===e)return 1;if(e>=35)return+(e%2==0);throw new s0({value:e})}function sG(e){if(0===e)return 27;if(1===e)return 28;throw new sQ({value:e})}class sY extends sf{constructor({signature:e}){super(`Value \`${e}
1\` is an invalid signature size.`,{metaMessages:["Expected: 64 bytes or 65 bytes.",`Received ${sI(sb(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSerializedSizeError"})}}class sZ extends sf{constructor({signature:e}){super(`Signature \`${sg(e)}\` is missing either an \`r\`, \`s\`, or \`yParity\` property.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.MissingPropertiesError"})}}class sX extends sf{constructor({value:e}){super(`Value \`${e}\` is an invalid r value. r must be a positive integer less than 2^256.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidRError"})}}class sJ extends sf{constructor({value:e}){super(`Value \`${e}\` is an invalid s value. s must be a positive integer less than 2^256.`),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Signature.InvalidSError"})}}class sQ extends sf{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 s0 extends sf{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"})}}e.s(["InvalidRError",0,sX,"InvalidSError",0,sJ,"InvalidSerializedSizeError",0,sY,"InvalidVError",0,s0,"InvalidYParityError",0,sQ,"MissingPropertiesError",0,sZ,"assert",0,s$,"extract",0,function(e){if(void 0!==e.r&&void 0!==e.s)return sz(e)},"from",0,sz,"fromBytes",0,sq,"fromDerBytes",0,function(e){return sF(sw(e))},"fromDerHex",0,sF,"fromHex",0,sM,"fromLegacy",0,sV,"fromRpc",0,sK,"fromTuple",0,function(e){let[t,r,i]=e;return sz({r:"0x"===r?0n:BigInt(r),s:"0x"===i?0n:BigInt(i),yParity:"0x"===t?0:Number(t)})},"toBytes",0,function(e){return sN(sH(e))},"toDerBytes",0,function(e){return new sc.Signature(e.r,e.s).toDERRawBytes()},"toDerHex",0,function(e){let t=new sc.Signature(e.r,e.s);return`0x${t.toDERHex()}`},"toHex",0,sH,"toLegacy",0,function(e){return{r:e.r,s:e.s,v:sG(e.yParity)}},"toRpc",0,function(e){let{r:t,s:r,yParity:i}=e;return{r:sv(t,{size:32}),s:sv(r,{size:32}),yParity:0===i?"0x0":"0x1"}},"toTuple",0,function(e){let{r:t,s:r,yParity:i}=e;return[i?"0x01":"0x",0n===t?"0x":sS(sv(t)),0n===r?"0x":sS(sv(r))]},"vToYParity",0,sW,"validate",0,function(e,t={}){try{return s$(e,t),!0}catch{return!1}},"yParityToV",0,sG],869859);var s1=e.i(869859),s1=s1;class s2 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 s3={checksum:new s2(8192)}.checksum,s8=BigInt(0),s6=BigInt(1),s5=BigInt(2),s4=BigInt(7),s9=BigInt(256),s7=BigInt(113),ne=[],nt=[],nr=[];for(let e=0,t=s6,r=1,i=0;e<24;e++){[r,i]=[i,(2*r+3*i)%5],ne.push(2*(5*i+r)),nt.push((e+1)*(e+2)/2%64);let s=s8;for(let e=0;e<7;e++)(t=(t<<s6^(t>>s4)*s7)%s9)&s5&&(s^=s6<<(s6<<BigInt(e))-s6);nr.push(s)}let ni=rQ(nr,!0),ns=ni[0],nn=ni[1],no=(e,t,r)=>r>32?t<<r-32|e>>>64-r:e<<r|t>>>32-r,na=(e,t,r)=>r>32?e<<r-32|t>>>64-r:t<<r|e>>>32-r;class nl extends rF{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,rN(r),!(0<e&&e<200))throw Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=function(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}(this.state)}clone(){return this._cloneInto()}keccak(){rM(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=no(n,o,1)^r[i],l=na(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=nt[r],n=no(t,s,i),o=na(t,s,i),a=ne[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]^=ns[i],e[1]^=nn[i]}rL(r)}(this.state32,this.rounds),rM(this.state32),this.posOut=0,this.pos=0}update(e){rj(this),rk(e=rz(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){rj(this,!1),rk(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 rN(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(rD(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,rL(this.state)}_cloneInto(e){let{blockLen:t,suffix:r,outputLen:i,rounds:s,enableXOF:n}=this;return e||(e=new nl(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 nc=rV(()=>new nl(136,1,32));function nh(e,t={}){let{as:r="string"==typeof e?"Hex":"Bytes"}=t,i=nc(sU(e));return"Bytes"===r?i:sw(i)}function nu(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 ny({prefix:i,cause:new nb});return}if(!0===r||"bigint"==typeof s&&void 0===n){if(3!==i&&2!==i)throw new ny({prefix:i,cause:new nm});return}throw new ng({publicKey:e})}function nf(e){let t=(()=>
vendor: 3,314 bytes, line 1
1{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 sP(e);if(r&&!/^0x[0-9a-fA-F]*$/.test(e)||!e.startsWith("0x"))throw new sA(e)}(e,{strict:r}),!0}catch{return!1}}(e))return nd(e);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 sk(e);return!0}catch{return!1}}(e))return nd(sw(e));let{prefix:t,x:r,y:i}=e;return"bigint"==typeof r&&"bigint"==typeof i?{prefix:t??4,x:r,y:i}:{prefix:t,x:r}})();return nu(t),t}function nd(e){if(132!==e.length&&130!==e.length&&68!==e.length)throw new nw({publicKey:e});if(130===e.length)return{prefix:4,x:BigInt(sE(e,0,32)),y:BigInt(sE(e,32,64))};if(132===e.length){let t=Number(sE(e,0,1));return{prefix:t,x:BigInt(sE(e,1,33)),y:BigInt(sE(e,33,65))}}return{prefix:Number(sE(e,0,1)),x:BigInt(sE(e,1,33))}}function np(e,t={}){nu(e);let{prefix:r,x:i,y:s}=e,{includePrefix:n=!0}=t;return sm(n?sv(r,{size:1}):"0x",sv(i,{size:32}),"bigint"==typeof s?sv(s,{size:32}):"0x")}class ng extends sf{constructor({publicKey:e}){super(`Value \`${sg(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 ny extends sf{constructor({prefix:e,cause:t}){super(`Prefix "${e}" is invalid.`,{cause:t}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidPrefixError"})}}class nm extends sf{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 nb extends sf{constructor(){super("Prefix must be 4 for uncompressed public keys."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidUncompressedPrefixError"})}}class nw extends sf{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 ${sI(sb(e))} bytes.`]}),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"PublicKey.InvalidSerializedSizeError"})}}let nv=/^0x[a-fA-F0-9]{40}$/;function nx(e,t={}){let{strict:r=!0}=t;if(!nv.test(e))throw new nI({address:e,cause:new nS});if(r){if(e.toLowerCase()===e)return;if(nE(e)!==e)throw new nI({address:e,cause:new nO})}}function nE(e){if(s3.has(e))return s3.get(e);nx(e,{strict:!1});let t=e.substring(2).toLowerCase(),r=nh(function(e,t={}){let{size:r}=t,i=sB.encode(e);if("number"==typeof r){var s;if(i.length>r)throw new sj({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 sD({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 s3.set(e,s),s}class nI extends sf{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 nS extends sf{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 nO extends sf{constructor(){super("Address does not match its checksum counterpart."),Object.defineProperty(this,"name",{enumerable:!0,configurable:!0,writable:!0,value:"Address.InvalidChecksumError"})}}function nP(e){let{privateKey:t}=e;return nf(sc.ProjectivePoint.fromPrivateKey(sb(t).slice(2)))}function nA(e={}){let{as:t="Hex"}=e,r=sc.utils.randomPrivateKey();return"Hex"===t?sw(r):r}function n_(e){return function(e,t={}){let r=nh(`0x${np(e).slice(4)}`).substring(26);return function(e,t={}){let{checksum:r=!1}=t;return(nx(e),r)?nE(e):e}(`0x${r}`,t)}(nC(e))}function nC(e){let{payload:t,signature:r}=e,{r:i,s,yParity:n}=r;return nf(new sc.Signature(BigInt(i),BigInt(s)).addRecoveryBit(n).recoverPublicKey(sb(t).substring(2)))}e.s(["createKeyPair",0,function(e={}){let{as:t="Hex"}=e,r=nA({as:t}),i=nP({privateKey:r});return{privateKey:r,publicKey:i}},"getPublicKey",0,nP,"getSharedSecret",0,function(e){let{as:t="Hex",privateKey:r,publicKey:i}=e,s=sc.ProjectivePoint.fromHex(np(i).slice(2)).multiply(sc.utils.normPrivateKeyToScalar(sb(r).slice(2))).toRawBytes(!0);return"Hex"===t?sw(s):s},"noble",0,sc,"randomPrivateKey",0,nA,"recoverAddress",0,n_,"recoverPublicKey",0,nC,"sign",0,function(e){let{extraEntropy:t=!1,hash:r,payload:i,privateKey:s}=e,{r:n,s:o,recovery:a}=sc.sign(sU(i),sU(s),{extraEntropy:"boolean"==typeof t?t:sb(t).slice(2),lowS:!0,...r?{prehash:!0}:{}});return{r:n,s:o,yParity:a}},"verify",0,function(e){let{address:t,hash:r,payload:i,publicKey:s,signature:n}=e;if(t){var o;return o=n_({payload:i,signature:n}),nx(t,{strict:!1}),nx(o,{strict:!1}),t.toLowerCase()===o.toLowerCase()}return sc.verify(n,sU(i),function(e,t={}){return sN(np(e,t))}(s),...r?[{prehash:!0,lowS:!0}]:[])}],520735);var nT=e.i(520735),nT=nT;function nR(e){return`${e<0?"-":""}0x${Math.abs(e).toString(16).padStart(2,"0")}`}class nB{type;data;constructor(e,t){this.type=e,this.data=t}}class nU extends Error{constructor(e){super(e),Object.setPrototypeOf(this,Object.create(nU.prototype)),Object.defineProperty(this,"name",{configurable:!0,enumerable:!1,value:nU.name})}}function nN(e,t,r){let i=Math.floor(r/0x100000000);e.setUint32(t,i),e.setUint32(t+4,r)}function nk(e,t){return 0x100000000*e.getInt32(t)+e.getUint32(t+4)}let nj={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),nN(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:nk(t,4),nsec:t.getUint32(0)};default:throw new nU(`Unrecognized data size for timestamp (expected 4, 8, or 12): ${e.length}`)}}(e);return new Date(1e3*t.sec+t.nsec/1e6)}};class nD{static defaultCodec=new nD;__brand;builtInEncoders=[];builtInDecoders=[];encoders=[];decoders=[];constructor(){this.register(nj)}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 nB(-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 nB(r,s)}}return e instanceof nB?e:null}decode(e,t,r){let i=t<0?this.builtInDecoders[-1-t]:this.decoders[t];return i?i(e,t,r):new nB(t,e)}}let nL=new TextEncoder;function n$(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 nq=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)}let nz="array",nF="map_key",nV="map_value",nK=e=>{if("string"==typeof e||"number"==typeof e)return e;throw new nU("The type of key must be string or number but "+typeof e)};
1class nH{stack=[];stackHeadPosition=-1;get length(){return this.stackHeadPosition+1}top(){return this.stack[this.stackHeadPosition]}pushArrayState(e){let t=this.getUninitializedStateFromPool();t.type=nz,t.position=0,t.size=e,t.array=Array(e)}pushMapState(e){let t=this.getUninitializedStateFromPool();t.type=nF,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===nz&&(e.size=0,e.array=void 0,e.position=0,e.type=void 0),(e.type===nF||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 nW=new DataView(new ArrayBuffer(0)),nG=new Uint8Array(nW.buffer);try{nW.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 nY=RangeError("Insufficient data"),nZ=new class{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=n$(e,t,r),n=Uint8Array.prototype.slice.call(e,t,t+r);return this.store(n,s),s}};class nX{extensionCodec;context;useBigInt64;rawStrings;maxStrLength;maxBinLength;maxArrayLength;maxMapLength;maxExtLength;keyDecoder;mapKeyConverter;totalPos=0;pos=0;view=nW;bytes=nG;headByte=-1;stack=new nH;entered=!1;constructor(e){this.extensionCodec=e?.extensionCodec??nD.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:nZ,this.mapKeyConverter=e?.mapKeyConverter??nK}clone(){return new nX({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 ${nR(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 nU(`Unrecognized type byte: ${nR(t)}`);this.complete();let r=this.stack;for(;r.length>0;){let t=r.top();if(t.type===nz)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===nF){if("__proto__"===e)throw new nU("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=nF;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 nU(`Unrecognized array type byte: ${nR(e)}`)}}pushMapState(e){if(e>this.maxMapLength)throw new nU(`Max length exceeded: map length (${e}) > maxMapLengthLength (${this.maxMapLength})`);this.stack.pushMapState(e)}pushArrayState(e){if(e>this.maxArrayLength)throw new nU(`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 nU(`Max length exceeded: UTF-8 byte length (${e}) > maxStrLength (${this.maxStrLength})`);if(this.bytes.byteLength<this.pos+t+e)throw nY;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 n$(e,t,r);return i=e.subarray(t,t+r),nq.decode(i)}(this.bytes,i,e),this.pos+=t+e,r}stateIsMapKey(){return this.stack.length>0&&this.stack.top().type===nF}decodeBinary(e,t){if(e>this.maxBinLength)throw new nU(`Max length exceeded: bin length (${e}) > maxBinLength (${this.maxBinLength})`);if(!this.hasRemaining(e+t))throw nY;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 nU(`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=nk(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??nD.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)nL.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),nN(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}}function nQ(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function n0(e,t){return!!Array.isArray(t)&&(0===t.length||(e?t.every(e=>"string"==typeof e):t.every(e=>Number.isSafeInteger(e))))}function n1(e){if("function"!=typeof e)throw Error("function expected");return!0}function n2(e,t){if("string"!=typeof t)throw Error(`${e}: string expected`);return!0}function n3(e){if(!Number.isSafeInteger(e))throw Error(`invalid integer: ${e}`)}function n8(e){if(!Array.isArray(e))throw Error("array expected")}function n6(e,t){if(!n0(!0,t))throw Error(`${e}
1: array of strings expected`)}function n5(e,t){if(!n0(!1,t))throw Error(`${e}: array of numbers expected`)}function n4(...e){let t=e=>e,r=(e,t)=>r=>e(t(r));return{encode:e.map(e=>e.encode).reduceRight(r,t),decode:e.map(e=>e.decode).reduce(r,t)}}function n9(e){let t="string"==typeof e?e.split(""):e,r=t.length;n6("alphabet",t);let i=new Map(t.map((e,t)=>[e,t]));return{encode:i=>(n8(i),i.map(i=>{if(!Number.isSafeInteger(i)||i<0||i>=r)throw Error(`alphabet.encode: digit index outside alphabet "${i}". Allowed: ${e}`);return t[i]})),decode:t=>(n8(t),t.map(t=>{n2("alphabet.decode",t);let r=i.get(t);if(void 0===r)throw Error(`Unknown letter: "${t}". Allowed: ${e}`);return r}))}}function n7(e=""){return n2("join",e),{encode:t=>(n6("join.decode",t),t.join(e)),decode:t=>(n2("join.decode",t),t.split(e))}}function oe(e,t,r){if(t<2)throw Error(`convertRadix: invalid from=${t}, base cannot be less than 2`);if(r<2)throw Error(`convertRadix: invalid to=${r}, base cannot be less than 2`);if(n8(e),!e.length)return[];let i=0,s=[],n=Array.from(e,e=>{if(n3(e),e<0||e>=t)throw Error(`invalid integer: ${e}`);return e}),o=n.length;for(;;){let e=0,a=!0;for(let s=i;s<o;s++){let o=n[s],l=t*e,c=l+o;if(!Number.isSafeInteger(c)||l/t!==e||c-o!==l)throw Error("convertRadix: carry overflow");let h=c/r;e=c%r;let u=Math.floor(h);if(n[s]=u,!Number.isSafeInteger(u)||u*r+e!==c)throw Error("convertRadix: carry overflow");a&&(u?a=!1:i=s)}if(s.push(e),a)break}for(let t=0;t<e.length-1&&0===e[t];t++)s.push(0);return s.reverse()}let ot=(e,t)=>
10===t?e:ot(t,e%t),or=(e,t)=>e+(t-ot(e,t)),oi=(()=>{let e=[];for(let t=0;t<40;t++)e.push(2**t);return e})();function os(e,t,r,i){if(n8(e),t<=0||t>32)throw Error(`convertRadix2: wrong from=${t}`);if(r<=0||r>32)throw Error(`convertRadix2: wrong to=${r}`);if(or(t,r)>32)throw Error(`convertRadix2: carry overflow from=${t} to=${r} carryBits=${or(t,r)}`);let s=0,n=0,o=oi[t],a=oi[r]-1,l=[];for(let i of e){if(n3(i),i>=o)throw Error(`convertRadix2: invalid data word=${i} from=${t}`);if(s=s<<t|i,n+t>32)throw Error(`convertRadix2: carry overflow pos=${n} from=${t}`);for(n+=t;n>=r;n-=r)l.push((s>>n-r&a)>>>0);let e=oi[n];if(void 0===e)throw Error("invalid carry");s&=e-1}if(s=s<<r-n&a,!i&&n>=t)throw Error("Excess padding");if(!i&&s>0)throw Error(`Non-zero padding: ${s}`);return i&&n>0&&l.push(s>>>0),l}let on=n4(function(e=!1){n3(5),!1;if(or(8,5)>32||or(5,8)>32)throw Error("radix2: carry overflow");return{encode:t=>{if(!nQ(t))throw Error("radix2.encode input should be Uint8Array");return os(Array.from(t),8,5,!e)},decode:t=>(n5("radix2.decode",t),Uint8Array.from(os(t,5,8,e)))}}(),n9("ABCDEFGHIJKLMNOPQRSTUVWXYZ234567"),function(e="="){return n3(5),n2("padding",e),{encode(t){for(n6("padding.encode",t);5*t.length%8;)t.push(e);return t},decode(t){n6("padding.decode",t);let r=t.length;if(5*r%8)throw Error("padding: invalid, string should have whole number of bytes");for(;r>0&&t[r-1]===e;r--)if((r-1)*5%8==0)throw Error("padding: invalid, string has too much padding");return t.slice(0,r)}}}(),n7("")),oo="function"==typeof Uint8Array.from([]).toBase64&&"function"==typeof Uint8Array.fromBase64,oa=n4((n3(58),{encode:e=>{if(!nQ(e))throw Error("radix.encode input should be Uint8Array");return oe(Array.from(e),256,58)},decode:e=>(n5("radix.decode",e),Uint8Array.from(oe(e,58,256)))}),n9("123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"),n7("")),ol=n4(n9("qpzry9x8gf2tvdw0s3jn54khce6mua7l"),n7(""));function oc(e){return null!=globalThis.Buffer?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function oh(e=0){return null!=globalThis.Buffer&&null!=globalThis.Buffer.allocUnsafe?oc(globalThis.Buffer.allocUnsafe(e)):new Uint8Array(e)}function ou(e,t){t||(t=e.reduce((e,t)=>e+t.length,0));let r=oh(t),i=0;for(let t of e)r.set(t,i),i+=t.length;return oc(r)}"function"==typeof Uint8Array.from([]).toHex&&"function"==typeof Uint8Array.fromHex||n1(e=>{if("string"!=typeof e||e.length%2!=0)throw TypeError(`hex.decode: expected string, got ${typeof e} with length ${e.length}`);return e.toLowerCase()});let of=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,f=n-1;(0!==h||u<s)&&-1!==f;f--,u++)h+=a*o[f]>>>0,o[f]=h%256>>>0,h=h/256>>>0;if(0!==h)throw Error("Non-zero carry");s=u,t++}if(" "!==e[t]){for(var d=n-s;d!==n&&0===o[d];)d++;for(var p=new Uint8Array(i+(n-d)),g=i;d!==n;)p[g++]=o[d++];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],f=0,d=o-1;(0!==u||f<i)&&-1!==d;d--,f++)u+=256*c[d]>>>0,c[d]=u%a>>>0,u=u/a>>>0;if(0!==u)throw Error("Non-zero carry");i=f,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`)}}},od=new Uint8Array(0),op=(e,t)=>{if(e===t)return!0;
1if(e.byteLength!==t.byteLength)return!1;for(let r=0;r<e.byteLength;r++)if(e[r]!==t[r])return!1;return!0},og=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")},oy=e=>new TextEncoder().encode(e),om=e=>new TextDecoder().decode(e);e.s(["coerce",0,og,"empty",0,od,"equals",0,op,"fromHex",0,e=>{let t=e.match(/../g);return t?new Uint8Array(t.map(e=>parseInt(e,16))):od},"fromString",0,oy,"isBinary",0,e=>e instanceof ArrayBuffer||ArrayBuffer.isView(e),"toHex",0,e=>e.reduce((e,t)=>e+t.toString(16).padStart(2,"0"),""),"toString",0,om],723472);class ob{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 ow{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 ox(this,e)}}class ov{constructor(e){this.decoders=e}or(e){return ox(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 ox=(e,t)=>new ov({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}});
1class oE{constructor(e,t,r,i){this.name=e,this.prefix=t,this.baseEncode=r,this.baseDecode=i,this.encoder=new ob(e,t,r),this.decoder=new ow(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}let oI=({name:e,prefix:t,encode:r,decode:i})=>new oE(e,t,r,i),oS=({prefix:e,name:t,alphabet:r})=>{let{encode:i,decode:s}=of(r,t);return oI({prefix:e,name:t,encode:i,decode:e=>og(s(e))})},oO=({name:e,prefix:t,bitsPerChar:r,alphabet:i})=>oI({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)}),oP=oI({prefix:"\0",name:"identity",encode:e=>om(e),decode:e=>oy(e)});e.s(["identity",0,oP],909184);var oA=e.i(909184);let o_=oO({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1});e.s(["base2",0,o_],347043);var oC=e.i(347043);let oT=oO({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3});e.s(["base8",0,oT],209626);var oR=e.i(209626);let oB=oS({prefix:"9",name:"base10",alphabet:"0123456789"});e.s(["base10",0,oB],238593);var oU=e.i(238593);let oN=oO({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),ok=oO({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4});e.s(["base16",0,oN,"base16upper",0,ok],967748);var oj=e.i(967748);let oD=oO({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),oL=oO({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),o$=oO({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),oq=oO({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),oM=oO({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),oz=oO({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),oF=oO({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),oV=oO({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),oK=oO({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5});e.s(["base32",0,oD,"base32hex",0,oM,"base32hexpad",0,oF,"base32hexpadupper",0,oV,"base32hexupper",0,oz,"base32pad",0,o$,"base32padupper",0,oq,"base32upper",0,oL,"base32z",0,oK],874676);var oH=e.i(874676);let oW=oS({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),oG=oS({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"});e.s(["base36",0,oW,"base36upper",0,oG],133198);var oY=e.i(133198);let oZ=oS({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),oX=oS({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"});e.s(["base58btc",0,oZ,"base58flickr",0,oX],201366);var oJ=e.i(201366);let oQ=oO({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),o0=oO({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),o1=oO({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),o2=oO({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6});e.s(["base64",0,oQ,"base64pad",0,o0,"base64url",0,o1,"base64urlpad",0,o2],428667);var o3=e.i(428667);let o8=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈ðŸ‘
1‡ðŸŽ¶ðŸ˜’🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),o6=o8.reduce((e,t,r)=>(e[r]=t,e),[]),o5=o8.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]),o4=oI({prefix:"🚀",name:"base256emoji",encode:function(e){return e.reduce((e,t)=>e+=o6[t],"")},decode:function(e){let t=[];for(let r of e){let e=o5[r.codePointAt(0)];if(void 0===e)throw Error(`Non-base256emoji character: ${r}`);t.push(e)}return new Uint8Array(t)}});e.s(["base256emoji",0,o4],968655);var o9=e.i(968655);function o7(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,o7.bytes=r-i+1,t}function ae(e,t){var r,i=0,t=t||0,s=0,n=t,o=e.length;do{if(n>=o)throw ae.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 ae.bytes=n-t,i}let at=(e,t=0)=>[ae(e,t),ae.bytes],ar=(e,t,r=0)=>(o7(e,t,r),t),ai=e=>{var t;return(t=e)<128?1:t<16384?2:t<2097152?3:t<0x10000000?4:t<0x800000000?5:t<0x40000000000?6:t<0x2000000000000?7:t<0x100000000000000?8:t<0x8000000000000000?9:10};e.s(["decode",0,at,"encodeTo",0,ar,"encodingLength",0,ai],484226);let as=(e,t)=>{let r=t.byteLength,i=ai(e),s=i+ai(r),n=new Uint8Array(s+r);return ar(e,n,0),ar(r,n,i),n.set(t,s),new aa(e,r,t,n)},an=e=>{let t=og(e),[r,i]=at(t),[s,n]=at(t.subarray(i)),o=t.subarray(i+n);if(o.byteLength!==s)throw Error("Incorrect length");return new aa(r,s,o,t)},ao=(e,t)=>e===t||e.code===t.code&&e.size===t.size&&op(e.bytes,t.bytes);
1class aa{constructor(e,t,r,i){this.code=e,this.size=t,this.digest=r,this.bytes=i}}e.s(["Digest",0,aa,"create",0,as,"decode",0,an,"equals",0,ao],241823);let al=({name:e,code:t,encode:r})=>new ac(e,t,r);class ac{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?as(this.code,t):t.then(e=>as(this.code,e))}throw Error("Unknown type, must be binary type")}}e.s(["Hasher",0,ac,"from",0,al],529451);let ah=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t)),au=al({name:"sha2-256",code:18,encode:ah("SHA-256")}),af=al({name:"sha2-512",code:19,encode:ah("SHA-512")});e.s(["sha256",0,au,"sha512",0,af],609583);var ad=e.i(609583);e.s(["identity",0,{code:0,name:"identity",encode:og,digest:e=>as(0,og(e))}],373173);var ap=e.i(373173);e.s(["code",0,85,"decode",0,e=>og(e),"encode",0,e=>og(e),"name",0,"raw"],25968),e.i(25968);let ag=new TextEncoder,ay=new TextDecoder;e.s(["code",0,512,"decode",0,e=>JSON.parse(ay.decode(e)),"encode",0,e=>ag.encode(JSON.stringify(e)),"name",0,"json"],167008),e.i(167008);
1class am{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:aP,byteLength:aP,code:aO,version:aO,multihash:aO,bytes:aO,_baseCache:aP,asCID:aP})}toV0(){if(0===this.version)return this;{let{code:e,multihash:t}=this;if(e!==ax)throw Error("Cannot convert a non dag-pb CID to CIDv0");if(t.code!==aE)throw Error("Cannot convert non sha2-256 multihash CID to CIDv0");return am.createV0(t)}}toV1(){switch(this.version){case 0:{let{code:e,digest:t}=this.multihash,r=as(e,t);return am.createV1(this.code,r)}case 1:return this;default:throw Error(`Can not convert CID version ${this.version} to version 0. This is a bug please report`)}}equals(e){return e&&this.code===e.code&&this.version===e.version&&ao(this.multihash,e.multihash)}toString(e){let{bytes:t,version:r,_baseCache:i}=this;return 0===r?aw(t,i,e||oZ.encoder):av(t,i,e||oD.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 aA(/^0\.0/,a_),!!(e&&(e[aS]||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 am)return e;if(null!=e&&e.asCID===e){let{version:t,code:r,multihash:i,bytes:s}=e;return new am(t,r,i,s||aI(t,r,i.bytes))}if(null==e||!0!==e[aS])return null;{let{version:t,multihash:r,code:i}=e,s=an(r);return am.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===ax)return new am(e,t,r,r.bytes);throw Error(`Version 0 CID must use dag-pb (code: ${ax}) block encoding`);case 1:{let i=aI(e,t,r.bytes);return new am(e,t,r,i)}default:throw Error("Invalid version")}}static createV0(e){return am.create(0,ax,e)}static createV1(e,t){return am.create(1,e,t)}static decode(e){let[t,r]=am.decodeFirst(e);if(r.length)throw Error("Incorrect length");return t}static decodeFirst(e){let t=am.inspectBytes(e),r=t.size-t.multihashSize,i=og(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 aa(t.multihashCode,t.digestSize,s,i);return[0===t.version?am.createV0(n):am.createV1(t.codec,n),e.subarray(t.size)]}static inspectBytes(e){let t=0,r=()=>{let[r,i]=at(e.subarray(t));return t+=i,r},i=r(),s=ax;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]=ab(e,t),s=am.decode(i);return s._baseCache.set(r,e),s}}let ab=(e,t)=>{switch(e[0]){case"Q":{let r=t||oZ;return[oZ.prefix,r.decode(`${oZ.prefix}${e}`)]}case oZ.prefix:{let r=t||oZ;return[oZ.prefix,r.decode(e)]}case oD.prefix:{let r=t||oD;return[oD.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)]}},aw=(e,t,r)=>{let{prefix:i}=r;if(i!==oZ.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}},av=(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}},ax=112,aE=18,aI=(e,t,r)=>{let i=ai(e),s=i+ai(t),n=new Uint8Array(s+r.byteLength);return ar(e,n,0),ar(t,n,i),n.set(r,s),n},aS=Symbol.for("@ipld/js-cid/CID"),aO={writable:!1,configurable:!1,enumerable:!0},aP={writable:!1,enumerable:!1,configurable:!1},aA=(e,t)=>{if(e.test("0.0.0-dev"))console.warn(t);else throw Error(t)},a_=`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`;e.i(484226),e.i(723472),e.i(529451),e.i(241823);let aC={...oA,...oC,...oR,...oU,...oj,...oH,...oY,...oJ,...o3,...o9};
15function aT(e,t,r,i){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:i}}}({...ad,...ap});let aR=aT("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),aB=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=oh((e=e.substring(1)).length);for(let r=0;r<e.length;r++)t[r]=e.charCodeAt(r);return t}),aU={utf8:aR,"utf-8":aR,hex:aC.base16,latin1:aB,ascii:aB,binary:aB,...aC};function aN(e,t="utf8"){let r=aU[t];if(!r)throw Error(`Unsupported encoding "${t}"`);return("utf8"===t||"utf-8"===t)&&null!=globalThis.Buffer&&null!=globalThis.Buffer.from?oc(globalThis.Buffer.from(e,"utf-8")):r.decoder.decode(`${r.prefix}${e}`)}function ak(e,t="utf8"){let r=aU[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 aj={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 aD=e.i(5625);function aL(e){let[t,r]=e.split(":");return{namespace:t,reference:r}}function a$(e,t){return e.includes(":")?[e]:t.chains||[]}let aq={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}},aM={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 az(e,t){let{message:r,code:i}=aM[e];return{message:t?`${r} ${t}`:r,code:i}}function aF(e,t){let{message:r,code:i}=aq[e];return{message:t?`${r} ${t}`:r,code:i}}var aV=Object.defineProperty,aK=Object.defineProperties,aH=Object.getOwnPropertyDescriptors,aW=Object.getOwnPropertySymbols,aG=Object.prototype.hasOwnProperty,aY=Object.prototype.propertyIsEnumerable,aZ=(e,t,r)=>t in e?aV(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,aX=(e,t)=>{for(var r in t||(t={}))aG.call(t,r)&&aZ(e,r,t[r]);if(aW)for(var r of aW(t))aY.call(t,r)&&aZ(e,r,t[r]);return e},aJ=(e,t,r)=>aZ(e,"symbol"!=typeof t?t+"":t,r);let aQ="react-native",a0="node",a1="browser";function a2(){return"u">typeof m.default&&"u">typeof m.default.versions&&"u">typeof m.default.versions.node}
15function a3(){return!(0,rR.getDocument)()&&!!(0,rR.getNavigator)()&&"ReactNative"===navigator.product}function a8(){return!a2()&&!!(0,rR.getNavigator)()&&!!(0,rR.getDocument)()}function a6(){return a3()?aQ:a2()?a0:a8()?a1:"unknown"}function a5(){var t;try{return a3()&&"u">typeof(null==e.g?void 0:e.g.Application)?null==(t=e.g.Application)?void 0:t.applicationId:void 0}catch{return}}function a4(){return(0,rB.getWindowMetadata)()||{name:"",description:"",url:"",icons:[""]}}function a9(t,r,i){var s;let n,o=function(){if(a6()===aQ&&"u">typeof(null==e.g?void 0:e.g.Platform)){let{OS:t,Version:r}=e.g.Platform;return[t,r].join("-")}let t="u"<typeof document&&"u">typeof navigator&&"ReactNative"===navigator.product?new rA:"u">typeof navigator?function(e){var t=""!==e&&rC.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 rP;var s=i[1]&&i[1].split(".").join("_").split("_").slice(0,3);s?s.length<3&&(s=rE(rE([],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=rT.length;t<r;t++){var i=rT[t],s=i[0];if(i[1].exec(e))return s}return null}(e),a=r_.exec(e);return a&&a[1]?new rO(r,n,o,a[1]):new rI(r,n,o)}(navigator.userAgent):void 0!==m.default&&m.default.version?new rS(m.default.version.slice(1)):null;if(null===t)return"unknown";let r=t.os?t.os.replace(" ","").toLowerCase():"unknown";return"browser"===t.type?[r,t.name,t.version].join("-"):[r,t.version].join("-")}(),a=(n=a6())===a1?[n,(null==(s=(0,rR.getLocation)())?void 0:s.host)||"unknown"].join(":"):n;return[[t,r].join("-"),["js",i].join("-"),o,a].join("/")}function a7(e,t){return e.filter(e=>t.includes(e)).length===e.length}function le(e){return Object.fromEntries(e.entries())}function lt(e){return new Map(Object.entries(e))}function lr(e=b.FIVE_MINUTES,t){let r,i,s,n,o=(0,b.toMiliseconds)(e||b.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=az("EXPIRED"),r=Error(t||e.message);r.code=e.code,a(r)},o),r=e,i=a})}}function li(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 ls(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 ln(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 lo(e,t){return(0,b.fromMiliseconds)((t||Date.now())+(0,b.toMiliseconds)(e))}function la(e){return Date.now()>=(0,b.toMiliseconds)(e)}function ll(e,t){return`${e}${t?`:${t}`:""}`}function lc(e=[],t=[]){return[...new Set([...e,...t])]}async function lh({id:t,topic:r,wcDeepLink:i}){var s,n;try{if(!i)return;let o="string"==typeof i?JSON.parse(i):i,a=o?.href;if("string"!=typeof a)return;let l=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=g.Buffer.from(e).toString("base64");return t?r.replace(/[=]/g,""):r}(i,!0)}`}else s=`${s}/wc?${i}`;return s}(a,t,r),c=a6();if(c===a1){let e;if(!(null!=(s=(0,rR.getDocument)())&&s.hasFocus()))return void console.warn("Document does not have focus, skipping deeplink.");n=l,e="_self",!function(){try{return window.self!==window.top}catch{return!1}}()?("u">typeof window&&(window.TelegramWebviewProxy||window.Telegram||window.TelegramWebviewProxyProto)||n.startsWith("https://")||n.startsWith("http://"))&&(e="_blank"):e="_top",window.open(n,e,"noreferrer noopener")}else c===aQ&&"u">typeof(null==e.g?void 0:e.g.Linking)&&await e.g.Linking.openURL(l)}catch(e){console.error(e)}}async function lu(e,t){let r="";try{if(a8()&&(r=localStorage.getItem(t)))return r;r=await e.getItem(t)}catch(e){console.error(e)}return r}function lf(e,t){if(!e.includes(t))return null;let r=e.split(/([&,?,=])/),i=r.indexOf(t);return r[i+2]}function ld(){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 lp(){return"u">typeof m.default&&"true"===m.default.env.IS_VITEST}function lg(e){return g.Buffer.from(e,"base64").toString("utf-8")}class ly{constructor({limit:e}){aJ(this,"limit"),aJ(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 lm=BigInt(0x100000000-1),lb=BigInt(32);function lw(e,t=!1){return t?{h:Number(e&lm),l:Number(e>>lb&lm)}:{h:0|Number(e>>lb&lm),l:0|Number(e&lm)}}function lv(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}=lw(e[n],t);[i[n],s[n]]=[r,o]}return[i,s]}let lx=(e,t,r)=>e>>>r,lE=(e,t,r)=>e<<32-r|t>>>r,lI=(e,t,r)=>e>>>r|t<<32-r,lS=(e,t,r)=>e<<32-r|t>>>r,lO=(e,t,r)=>e<<64-r|t>>>r-32,lP=(e,t,r)=>e>>>r-32|t<<64-r;function lA(e,t,r,i){let s=(t>>>0)+(i>>>0);return{h:e+r+(s/0x100000000|0)|0,l:0|s}}let l_=(e,t,r)=>(e>>>0)+(t>>>0)+(r>>>0),lC=(e,t,r,i)=>t+r+i+(e/0x100000000|0)|0,lT=(e,t,r,i)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0),lR=(e,t,r,i,s)=>t+r+i+s+(e/0x100000000|0)|0,lB=(e,t,r,i,s)=>(e>>>0)+(t>>>0)+(r>>>0)+(i>>>0)+(s>>>0),lU=(e,t,r,i,s,n)=>t+r+i+s+n+(e/0x100000000|0)|0,lN="object"==typeof globalThis&&"crypto"in globalThis?globalThis.crypto:void 0;function lk(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function lj(e){if(!Number.isSafeInteger(e)||e<0)throw Error("positive integer expected, got "+e)}function lD(e,...t){if(!lk(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 lL(e){if("function"!=typeof e||"function"!=typeof e.create)throw Error("Hash should be wrapped by utils.createHasher");lj(e.outputLen),lj(e.blockLen)}function l$(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 lq(e,t){lD(e);let r=t.outputLen;if(e.length<r)throw Error("digestInto() expects output buffer of length at least "+r)}function lM(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function lz(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}function lF(e){return new DataView(e.buffer,e.byteOffset,e.byteLength)}function lV(e,t){return e<<32-t|e>>>t}let lK=68===new Uint8Array(new Uint32Array([0x11223344]).buffer)[0];function lH(e){return e<<24&0xff000000|e<<8&0xff0000|e>>>8&65280|e>>>24&255}let lW=lK?e=>e:e=>lH(e),lG=lK?e=>e:function(e){for(let t=0;t<e.length;t++)e[t]=lH(e[t]);return e},lY="function"==typeof Uint8Array.from([]).toHex&&"function"==typeof Uint8Array.fromHex,lZ=Array.from({length:256},(e,t)=>t.toString(16).padStart(2,"0"));function lX(e){if(lD(e),lY)return e.toHex();let t="";for(let r=0;r<e.length;r++)t+=lZ[e[r]];return t}function lJ(e){return e>=48&&e<=57?e-48:e>=65&&e<=70?e-55:e>=97&&e<=102?e-87:void 0}function lQ(e){if("string"!=typeof e)throw Error("hex string expected, got "+typeof e);if(lY)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=lJ(e.charCodeAt(s)),n=lJ(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 l0(e){if("string"!=typeof e)throw Error("string expected");return new Uint8Array(new TextEncoder().encode(e))}function l1(e){return"string"==typeof e&&(e=l0(e)),lD(e),e}function l2(...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 l3{}function l8(e){let t=t=>e().update(l1(t)).digest(),r=e();return t.outputLen=r.outputLen,t.blockLen=r.blockLen,t.create=()=>e(),t}function l6(e=32){if(lN&&"function"==typeof lN.getRandomValues)return lN.getRandomValues(new Uint8Array(e));if(lN&&"function"==typeof lN.randomBytes)return Uint8Array.from(lN.randomBytes(e));throw Error("crypto.getRandomValues must be defined")}let l5=BigInt(0),l4=BigInt(1),l9=BigInt(2),l7=BigInt(7),ce=BigInt(256),ct=BigInt(113),cr=[],ci=[],cs=[];for(let e=0,t=l4,r=1,i=0;e<24;e++){[r,i]=[i,(2*r+3*i)%5],cr.push(2*(5*i+r)),ci.push((e+1)*(e+2)/2%64);let s=l5;for(let e=0;e<7;e++)(t=(t<<l4^(t>>l7)*ct)%ce)&l9&&(s^=l4<<(l4<<BigInt(e))-l4);cs.push(s)}let cn=lv(cs,!0),co=cn[0],ca=cn[1],cl=(e,t,r)=>r>32?t<<r-32|e>>>64-r:e<<r|t>>>32-r,cc=(e,t,r)=>r>32?e<<r-32|t>>>64-r:t<<r|e>>>32-r;class ch extends l3{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,lj(r),!(0<e&&e<200))throw Error("only keccak-f1600 function is supported");this.state=new Uint8Array(200),this.state32=lM(this.state)}clone(){return this._cloneInto()}keccak(){lG(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=cl(n,o,1)^r[i],l=cc(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=ci[r],n=cl(t,s,i),o=cc(t,s,i),a=cr[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]^=co[i],e[1]^=ca[i]}lz(r)}(this.state32,this.rounds),lG(this.state32),this.posOut=0,this.pos=0}update(e){l$(this),lD(e=l1(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){l$(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 lj(e),this.xofInto(new Uint8Array(e))}digestInto(e){if(lq(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,lz(this.state)}_cloneInto(e){let{blockLen:t,suffix:r,outputLen:i,rounds:s,enableXOF:n}=this;return e||(e=new ch(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 cu=l8(()=>new ch(136,1,32));
15class cf extends l3{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=lF(this.buffer)}update(e){l$(this),lD(e=l1(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=lF(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){l$(this),lq(e,this),this.finished=!0;let{buffer:t,view:r,blockLen:i,isLE:s}=this,{pos:n}=this;t[n++]=128,lz(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=lF(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 cd=Uint32Array.from([0x6a09e667,0xbb67ae85,0x3c6ef372,0xa54ff53a,0x510e527f,0x9b05688c,0x1f83d9ab,0x5be0cd19]),cp=Uint32Array.from([0xcbbb9d5d,0xc1059ed8,0x629a292a,0x367cd507,0x9159015a,0x3070dd17,0x152fecd8,0xf70e5939,0x67332667,0xffc00b31,0x8eb44a87,0x68581511,0xdb0c2e0d,0x64f98fa7,0x47b5481d,0xbefa4fa4]),cg=Uint32Array.from([0x6a09e667,0xf3bcc908,0xbb67ae85,0x84caa73b,0x3c6ef372,0xfe94f82b,0xa54ff53a,0x5f1d36f1,0x510e527f,0xade682d1,0x9b05688c,0x2b3e6c1f,0x1f83d9ab,0xfb41bd6b,0x5be0cd19,0x137e2179]),cy=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]),cm=new Uint32Array(64);class cb extends cf{constructor(e=32){super(64,e,8,!1),this.A=0|cd[0],this.B=0|cd[1],this.C=0|cd[2],this.D=0|cd[3],this.E=0|cd[4],this.F=0|cd[5],this.G=0|cd[6],this.H=0|cd[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)cm[r]=e.getUint32(t,!1);for(let e=16;e<64;e++){let t=cm[e-15],r=cm[e-2],i=lV(t,7)^lV(t,18)^t>>>3,s=lV(r,17)^lV(r,19)^r>>>10;cm[e]=s+cm[e-7]+i+cm[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,f,d;let t=c+(lV(o,6)^lV(o,11)^lV(o,25))+((h=o)&a^~h&l)+cy[e]+cm[e]|0,p=(lV(r,2)^lV(r,13)^lV(r,22))+((u=r)&(f=i)^u&(d=s)^f&d)|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(){lz(cm)}destroy(){this.set(0,0,0,0,0,0,0,0),lz(this.buffer)}}let cw=lv(["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))),cv=cw[0],cx=cw[1],cE=new Uint32Array(80),cI=new Uint32Array(80);class cS extends cf{constructor(e=64){super(128,e,16,!1),this.Ah=0|cg[0],this.Al=0|cg[1],this.Bh=0|cg[2],this.Bl=0|cg[3],this.Ch=0|cg[4],this.Cl=0|cg[5],this.Dh=0|cg[6],this.Dl=0|cg[7],this.Eh=0|cg[8],this.El=0|cg[9],this.Fh=0|cg[10],this.Fl=0|cg[11],this.Gh=0|cg[12],this.Gl=0|cg[13],this.Hh=0|cg[14],this.Hl=0|cg[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:f,Gl:d,Hh:p,Hl:g}=this;return[e,t,r,i,s,n,o,a,l,c,h,u,f,d,p,g]}set(e,t,r,i,s,n,o,a,l,c,h,u,f,d,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|f,this.Gl=0|d,this.Hh=0|p,this.Hl=0|g}process(e,t){for(let r=0;r<16;r++,t+=4)cE[r]=e.getUint32(t),cI[r]=e.getUint32(t+=4);for(let e=16;e<80;e++){let t=0|cE[e-15],r=0|cI[e-15],i=lI(t,r,1)^lI(t,r,8)^lx(t,r,7),s=lS(t,r,1)^lS(t,r,8)^lE(t,r,7),n=0|cE[e-2],o=0|cI[e-2],a=lI(n,o,19)^lO(n,o,61)^lx(n,o,6),l=lT(s,lS(n,o,19)^lP(n,o,61)^lE(n,o,6),cI[e-7],cI[e-16]),c=lR(l,i,a,cE[e-7],cE[e-16]);cE[e]=0|c,cI[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:f,Fl:d,Gh:p,Gl:g,Hh:y,Hl:m}=this;for(let e=0;e<80;e++){let t=lI(h,u,14)^lI(h,u,18)^lO(h,u,41),b=lS(h,u,14)^lS(h,u,18)^lP(h,u,41),w=h&f^~h&p,v=lB(m,b,u&d^~u&g,cx[e],cI[e]),x=lU(v,y,t,w,cv[e],cE[e]),E=0|v,I=lI(r,i,28)^lO(r,i,34)^lO(r,i,39),S=lS(r,i,28)^lP(r,i,34)^lP(r,i,39),O=r&s^r&o^s&o,P=i&n^i&a^n&a;y=0|p,m=0|g,p=0|f,g=0|d,f=0|h,d=0|u,({h:h,l:u}=lA(0|l,0|c,0|x,0|E)),l=0|o,c=0|a,o=0|s,a=0|n,s=0|r,n=0|i;let A=l_(E,S,P);r=lC(A,x,I,O),i=0|A}({h:r,l:i}=lA(0|this.Ah,0|this.Al,0|r,0|i)),({h:s,l:n}=lA(0|this.Bh,0|this.Bl,0|s,0|n)),({h:o,l:a}=lA(0|this.Ch,0|this.Cl,0|o,0|a)),({h:l,l:c}=lA(0|this.Dh,0|this.Dl,0|l,0|c)),({h:h,l:u}=lA(0|this.Eh,0|this.El,0|h,0|u)),({h:f,l:d}=lA(0|this.Fh,0|this.Fl,0|f,0|d)),({h:p,l:g}=lA(0|this.Gh,0|this.Gl,0|p,0|g)),({h:y,l:m}=lA(0|this.Hh,0|this.Hl,0|y,0|m)),this.set(r,i,s,n,o,a,l,c,h,u,f,d,p,g,y,m)}roundClean(){lz(cE,cI)}destroy(){lz(this.buffer),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}class cO extends cS{constructor(){super(48),this.Ah=0|cp[0],this.Al=0|cp[1],this.Bh=0|cp[2],this.Bl=0|cp[3],this.Ch=0|cp[4],this.Cl=0|cp[5],this.Dh=0|cp[6],this.Dl=0|cp[7],this.Eh=0|cp[8],this.El=0|cp[9],this.Fh=0|cp[10],this.Fl=0|cp[11],this.Gh=0|cp[12],this.Gl=0|cp[13],this.Hh=0|cp[14],this.Hl=0|cp[15]}}let cP=Uint32Array.from([0x22312194,0xfc2bf72c,0x9f555fa3,0xc84c64c2,0x2393b86b,0x6f53b151,0x96387719,0x5940eabd,0x96283ee2,0xa88effe3,0xbe5e1e25,0x53863992,0x2b0199fc,0x2c85b8aa,0xeb72ddc,0x81c52ca2]);class cA extends cS{constructor(){super(32),this.Ah=0|cP[0],this.Al=0|cP[1],this.Bh=0|cP[2],this.Bl=0|cP[3],this.Ch=0|cP[4],this.Cl=0|cP[5],this.Dh=0|cP[6],this.Dl=0|cP[7],this.Eh=0|cP[8],this.El=0|cP[9],this.Fh=0|cP[10],this.Fl=0|cP[11],this.Gh=0|cP[12],this.Gl=0|cP[13],this.Hh=0|cP[14],this.Hl=0|cP[15]}}let c_=l8(()=>new cb),cC=l8(()=>new cS),cT=l8(()=>new cO),cR=l8(()=>new cA),cB=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,
156,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]),cU=Uint32Array.from([0xf3bcc908,0x6a09e667,0x84caa73b,0xbb67ae85,0xfe94f82b,0x3c6ef372,0x5f1d36f1,0xa54ff53a,0xade682d1,0x510e527f,0x2b3e6c1f,0x9b05688c,0xfb41bd6b,0x1f83d9ab,0x137e2179,0x5be0cd19]),cN=new Uint32Array(32);function ck(e,t,r,i,s,n){let o=s[n],a=s[n+1],l=cN[2*e],c=cN[2*e+1],h=cN[2*t],u=cN[2*t+1],f=cN[2*r],d=cN[2*r+1],p=cN[2*i],g=cN[2*i+1],y=l_(l,h,o);c=lC(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:d,l:f}=lA(d,f,g,p)),({Bh:u,Bl:h}={Bh:u^d,Bl:h^f}),({Bh:u,Bl:h}={Bh:lI(u,h,24),Bl:lS(u,h,24)}),cN[2*e]=l,cN[2*e+1]=c,cN[2*t]=h,cN[2*t+1]=u,cN[2*r]=f,cN[2*r+1]=d,cN[2*i]=p,cN[2*i+1]=g}function cj(e,t,r,i,s,n){let o=s[n],a=s[n+1],l=cN[2*e],c=cN[2*e+1],h=cN[2*t],u=cN[2*t+1],f=cN[2*r],d=cN[2*r+1],p=cN[2*i],g=cN[2*i+1],y=l_(l,h,o);c=lC(y,c,u,a),l=0|y,({Dh:g,Dl:p}={Dh:g^c,Dl:p^l}),({Dh:g,Dl:p}={Dh:lI(g,p,16),Dl:lS(g,p,16)}),({h:d,l:f}=lA(d,f,g,p)),({Bh:u,Bl:h}={Bh:u^d,Bl:h^f}),({Bh:u,Bl:h}={Bh:lO(u,h,63),Bl:lP(u,h,63)}),cN[2*e]=l,cN[2*e+1]=c,cN[2*t]=h,cN[2*t+1]=u,cN[2*r]=f,cN[2*r+1]=d,cN[2*i]=p,cN[2*i+1]=g}class cD extends l3{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,this.length=0,this.pos=0,lj(e),lj(t),this.blockLen=e,this.outputLen=t,this.buffer=new Uint8Array(e),this.buffer32=lM(this.buffer)}update(e){l$(this),lD(e=l1(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&&(lG(i),this.compress(i,0,!1),lG(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));lG(e);for(let r=0;a+t<s;r+=i.length,a+=t)this.length+=t,this.compress(e,r,!1);lG(e);continue}r.set(e.subarray(a,a+l),this.pos),this.pos+=l,this.length+=l,a+=l}return this}digestInto(e){l$(this),lq(e,this);let{pos:t,buffer32:r}=this;this.finished=!0,lz(this.buffer.subarray(t)),lG(r),this.compress(r,0,!0),lG(r);let i=lM(e);this.get().forEach((e,t)=>i[t]=lW(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 cL extends cD{constructor(e={}){const t=void 0===e.dkLen?64:e.dkLen;super(128,t),this.v0l=0|cU[0],this.v0h=0|cU[1],this.v1l=0|cU[2],this.v1h=0|cU[3],this.v2l=0|cU[4],this.v2h=0|cU[5],this.v3l=0|cU[6],this.v3h=0|cU[7],this.v4l=0|cU[8],this.v4h=0|cU[9],this.v5l=0|cU[10],this.v5h=0|cU[11],this.v6l=0|cU[12],this.v6h=0|cU[13],this.v7l=0|cU[14],this.v7h=0|cU[15],function(e,t={}){if(lj(64),e<0||e>64)throw Error("outputLen bigger than keyLen");let{key:r,salt:i,personalization:s}=t;if(void 0!==r&&(r.length<1||r.length>64))throw Error("key length must be undefined or 1..64");if(void 0!==i&&16!==i.length)throw Error("salt must be undefined or 16");if(void 0!==s&&16!==s.length)throw Error("personalization must be undefined or 16")}(t,e);let{key:r,personalization:i,salt:s}=e,n=0;if(void 0!==r&&(n=(r=l1(r)).length),this.v0l^=this.outputLen|n<<8|0x1010000,void 0!==s){const e=lM(s=l1(s));this.v4l^=lW(e[0]),this.v4h^=lW(e[1]),this.v5l^=lW(e[2]),this.v5h^=lW(e[3])}if(void 0!==i){const e=lM(i=l1(i));this.v6l^=lW(e[0]),this.v6h^=lW(e[1]),this.v7l^=lW(e[2]),this.v7h^=lW(e[3])}if(void 0!==r){const e=new Uint8Array(this.blockLen);e.set(r),this.update(e)}}get(){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:f,v6h:d,v7l:p,v7h:g}=this;return[e,t,r,i,s,n,o,a,l,c,h,u,f,d,p,g]}set(e,t,r,i,s,n,o,a,l,c,h,u,f,d,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|f,this.v6h=0|d,this.v7l=0|p,this.v7h=0|g}
15compress(e,t,r){this.get().forEach((e,t)=>cN[t]=e),cN.set(cU,16);let{h:i,l:s}=lw(BigInt(this.length));cN[24]=cU[8]^s,cN[25]=cU[9]^i,r&&(cN[28]=~cN[28],cN[29]=~cN[29]);let n=0;for(let r=0;r<12;r++)ck(0,4,8,12,e,t+2*cB[n++]),cj(0,4,8,12,e,t+2*cB[n++]),ck(1,5,9,13,e,t+2*cB[n++]),cj(1,5,9,13,e,t+2*cB[n++]),ck(2,6,10,14,e,t+2*cB[n++]),cj(2,6,10,14,e,t+2*cB[n++]),ck(3,7,11,15,e,t+2*cB[n++]),cj(3,7,11,15,e,t+2*cB[n++]),ck(0,5,10,15,e,t+2*cB[n++]),cj(0,5,10,15,e,t+2*cB[n++]),ck(1,6,11,12,e,t+2*cB[n++]),cj(1,6,11,12,e,t+2*cB[n++]),ck(2,7,8,13,e,t+2*cB[n++]),cj(2,7,8,13,e,t+2*cB[n++]),ck(3,4,9,14,e,t+2*cB[n++]),cj(3,4,9,14,e,t+2*cB[n++]);this.v0l^=cN[0]^cN[16],this.v0h^=cN[1]^cN[17],this.v1l^=cN[2]^cN[18],this.v1h^=cN[3]^cN[19],this.v2l^=cN[4]^cN[20],this.v2h^=cN[5]^cN[21],this.v3l^=cN[6]^cN[22],this.v3h^=cN[7]^cN[23],this.v4l^=cN[8]^cN[24],this.v4h^=cN[9]^cN[25],this.v5l^=cN[10]^cN[26],this.v5h^=cN[11]^cN[27],this.v6l^=cN[12]^cN[28],this.v6h^=cN[13]^cN[29],this.v7l^=cN[14]^cN[30],this.v7h^=cN[15]^cN[31],lz(cN)}destroy(){this.destroyed=!0,lz(this.buffer32),this.set(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}}let c$=(d=e=>new cL(e),(o=(e,t)=>d(t).update(l1(e)).digest()).outputLen=(a=d({})).outputLen,o.blockLen=a.blockLen,o.create=e=>d(e),o);function cq(e){let t=`�Ethereum Signed Message:
16${e.length}`,r=new TextEncoder().encode(t+e);return"0x"+g.Buffer.from(cu(r)).toString("hex")}async function cM(e,t,r,i,s,n){switch(r.t){case"eip191":var o,a,l;let c;return await (o=e,a=t,l=r.s,c=s1.fromHex(l),nT.recoverAddress({payload:cq(a),signature:c}).toLowerCase()===o.toLowerCase());case"eip1271":return await cz(e,t,r.s,i,s,n);default:throw Error(`verifySignature failed: Attempted to verify CacaoSignature with unknown type: ${r.t}`)}}async function cz(e,t,r,i,s,n){let o=aL(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:cq(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:f}=await u.json();return!!f&&f.slice(0,o.length).toLowerCase()===o.toLowerCase()}catch(e){return console.error("isValidEip1271Signature: ",e),!1}}function cF(e){let t=new Uint8Array(c_(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 oa.encode(t)}function cV(e){var t;let r=(t=g.Buffer.from(e,"base64"),new nX(void 0).decode(t)).txn;if(!r)throw Error("Invalid signed transaction: missing 'txn' field");let i=new nJ(void 0).encodeSharedRef(r),s=g.Buffer.from("TX"),n=cR(g.Buffer.concat([s,g.Buffer.from(i)]));return on.encode(n).replace(/=+$/,"")}function cK(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)),g.Buffer.from(t)}var cH=Object.defineProperty,cW=Object.defineProperties,cG=Object.getOwnPropertyDescriptors,cY=Object.getOwnPropertySymbols,cZ=Object.prototype.hasOwnProperty,cX=Object.prototype.propertyIsEnumerable,cJ=(e,t,r)=>t in e?cH(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;let cQ="did:pkh:",c0={eip155:"Ethereum",solana:"Solana",bip122:"Bitcoin"},c1=e=>e?.split(":"),c2=e=>{let t=e&&c1(e);if(t)return t[2]+":"+t[3]},c3=e=>{let t=e&&c1(e);if(t)return t.pop()};async function c8(e){let{cacao:t,projectId:r}=e,{s:i,p:s}=t,n=c6(s,s.iss),o=c3(s.iss);return await cM(o,n,i,c2(s.iss),r)}let c6=(e,t)=>{let r=(e=>{let t=e&&c1(e);if(t)return e.includes(cQ)?t[2]:t[0]})(t);if(!r)throw Error("Invalid issuer: "+t);let i=`${e.domain} wants you to sign in with your ${r?c0[r]||r:""} account:`,s=c3(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&&c1(e);if(t)return e.includes(cQ)?t[3]:t[1]})(t)}`,c=`Nonce: ${e.nonce}`,h=`Issued At: ${e.iat}`,u=e.exp?`Expiration Time: ${e.exp}`:void 0,f=e.nbf?`Not Before: ${e.nbf}`:void 0,d=e.requestId?`Request ID: ${e.requestId}`:void 0,p=e.resources?`Resources:${e.resources.map(e=>`
17- ${e}`).join("")}`:void 0,g=ht(e.resources);return g&&(n=function(e="",t){c5(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,c9(g))),[i,s,"",n,"",o,a,l,c,h,u,f,d,p].filter(e=>null!=e).join(`
18`)};function c5(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 c4(e){return c5(e),`urn:recap:${g.Buffer.from(JSON.stringify(e)).toString("base64").replace(/=/g,"")}`}function c9(e){var t;let r=(t=e.replace("urn:recap:",""),JSON.parse(g.Buffer.from(t,"base64").toString("utf-8")));return c5(r),r}function c7(e){var t;let r=c9(e);c5(r);let i=null==(t=r.att)?void 0:t.eip155;return i?Object.keys(i).map(e=>e.split("/")[1]):[]}function he(e){let t=c9(e);c5(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 ht(e){if(!e)return;let t=e?.[e.length-1];return t&&t.includes("urn:recap:")?t:void 0}function hr(e){return e instanceof Uint8Array||ArrayBuffer.isView(e)&&"Uint8Array"===e.constructor.name}function hi(e){if("boolean"!=typeof e)throw Error(`boolean expected, not ${e}`)}function hs(e){if(!Number.isSafeInteger(e)||e<0)throw Error("positive integer expected, got "+e)}function hn(e,...t){if(!hr(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 ho(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 ha(e){return new Uint32Array(e.buffer,e.byteOffset,Math.floor(e.byteLength/4))}function hl(...e){for(let t=0;t<e.length;t++)e[t].fill(0)}let hc=68===new Uint8Array(new Uint32Array([0x11223344]).buffer)[0];function hh(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(hr(e))e=hd(e);else throw Error("Uint8Array expected, got "+typeof e);return e}function hu(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 hf(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 hd(e){return Uint8Array.from(e)}let hp=e=>Uint8Array.from(e.split("").map(e=>e.charCodeAt(0))),hg=hp("expand 16-byte k"),hy=hp("expand 32-byte k"),hm=ha(hg),hb=ha(hy);function hw(e,t){return e<<t|e>>>32-t}function hv(e){return e.byteOffset%4==0}let hx=0x100000000-1,hE=new Uint32Array,hI=(e,t)=>255&e[t++]|(255&e[t++])<<8;class hS{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,hn(e=hh(e),32);const t=hI(e,0),r=hI(e,2),i=hI(e,4),s=hI(e,6),n=hI(e,8),o=hI(e,10),a=hI(e,12),l=hI(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]=hI(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],f=s[7],d=s[8],p=s[9],g=hI(e,t+0),y=hI(e,t+2),m=hI(e,t+4),b=hI(e,t+6),w=hI(e,t+8),v=hI(e,t+10),x=hI(e,t+12),E=hI(e,t+14),I=i[0]+(8191&g),S=i[1]+((g>>>13|y<<3)&8191),O=i[2]+((y>>>10|m<<6)&8191),P=i[3]+((m>>>7|b<<9)&8191),A=i[4]+((b>>>4|w<<12)&8191),_=i[5]+(w>>>1&8191),C=i[6]+((w>>>14|v<<2)&8191),T=i[7]+((v>>>11|x<<5)&8191),R=i[8]+((x>>>
188|E<<8)&8191),B=i[9]+(E>>>5|2048*!r),U=0,N=0+I*n+5*p*S+5*d*O+5*f*P+5*u*A;U=N>>>13,N&=8191,N+=5*h*_+5*c*C+5*l*T+5*a*R+5*o*B,U+=N>>>13,N&=8191;let k=U+I*o+S*n+5*p*O+5*d*P+5*f*A;U=k>>>13,k&=8191,k+=5*u*_+5*h*C+5*c*T+5*l*R+5*a*B,U+=k>>>13,k&=8191;let j=U+I*a+S*o+O*n+5*p*P+5*d*A;U=j>>>13,j&=8191,j+=5*f*_+5*u*C+5*h*T+5*c*R+5*l*B,U+=j>>>13,j&=8191;let D=U+I*l+S*a+O*o+P*n+5*p*A;U=D>>>13,D&=8191,D+=5*d*_+5*f*C+5*u*T+5*h*R+5*c*B,U+=D>>>13,D&=8191;let L=U+I*c+S*l+O*a+P*o+A*n;U=L>>>13,L&=8191,L+=5*p*_+5*d*C+5*f*T+5*u*R+5*h*B,U+=L>>>13,L&=8191;let $=U+I*h+S*c+O*l+P*a+A*o;U=$>>>13,$&=8191,$+=_*n+5*p*C+5*d*T+5*f*R+5*u*B,U+=$>>>13,$&=8191;let q=U+I*u+S*h+O*c+P*l+A*a;U=q>>>13,q&=8191,q+=_*o+C*n+5*p*T+5*d*R+5*f*B,U+=q>>>13,q&=8191;let M=U+I*f+S*u+O*h+P*c+A*l;U=M>>>13,M&=8191,M+=_*a+C*o+T*n+5*p*R+5*d*B,U+=M>>>13,M&=8191;let z=U+I*d+S*f+O*u+P*h+A*c;U=z>>>13,z&=8191,z+=_*l+C*a+T*o+R*n+5*p*B,U+=z>>>13,z&=8191;let F=U+I*p+S*d+O*f+P*u+A*h;U=F>>>13,F&=8191,F+=_*c+C*l+T*a+R*o+B*n,U+=F>>>13,F&=8191,N=8191&(U=(U=(U<<2)+U|0)+N|0),U>>>=13,k+=U,i[0]=N,i[1]=k,i[2]=j,i[3]=D,i[4]=L,i[5]=$,i[6]=q,i[7]=M,i[8]=z,i[9]=F}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;hl(r)}update(e){ho(this),hn(e=hh(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(){hl(this.h,this.r,this.buffer,this.pad)}digestInto(e){ho(this),function(e,t){hn(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 hO=(p=e=>
18new hS(e),(l=(e,t)=>p(t).update(hh(e)).digest()).outputLen=(c=p(new Uint8Array(32))).outputLen,l.blockLen=c.blockLen,l.create=e=>p(e),l),hP=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 hs(s),hs(o),hi(n),hi(r),(t,a,l,c,h=0)=>{hn(t),hn(a),hn(l);let u=l.length;if(void 0===c&&(c=new Uint8Array(u)),hn(c),hs(h),h<0||h>=hx)throw Error("arx: counter overflow");if(c.length<u)throw Error(`arx: output (${c.length}) is shorter than data (${u})`);let f=[],d=t.length,p,g;if(32===d)f.push(p=hd(t)),g=hb;else if(16===d&&r)(p=new Uint8Array(32)).set(t),p.set(t,16),g=hm,f.push(p);else throw Error(`arx: invalid 32-byte key, got length=${d}`);hv(a)||f.push(a=hd(a));let y=ha(p);if(i){if(24!==a.length)throw Error("arx: extended nonce must be 24 bytes");i(g,y,ha(a.subarray(0,16)),y),a=a.subarray(16)}let m=16-s;if(m!==a.length)throw Error(`arx: nonce must be ${m} or 16 bytes`);if(12!==m){let e=new Uint8Array(12);e.set(a,n?0:12-a.length),a=e,f.push(a)}return function(e,t,r,i,s,n,o,a){let l=s.length,c=new Uint8Array(64),h=ha(c),u=hv(s)&&hv(n),f=u?ha(s):hE,d=u?ha(n):hE;for(let p=0;p<l;o++){if(e(t,r,i,h,o,a),o>=hx)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++)d[r=e+t]=f[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,ha(a),l,c,h,o),hl(...f),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],f=t[2],d=t[3],p=t[4],g=t[5],y=t[6],m=t[7],b=r[0],w=r[1],v=r[2],x=o,E=a,I=l,S=c,O=h,P=u,A=f,_=d,C=p,T=g,R=y,B=m,U=s,N=b,k=w,j=v;for(let e=0;e<n;e+=2)C=C+(U=hw(U^(x=x+O|0),16))|0,x=x+(O=hw(O^C,12))|0,C=C+(U=hw(U^x,8))|0,O=hw(O^C,7),T=T+(N=hw(N^(E=E+P|0),16))|0,E=E+(P=hw(P^T,12))|0,T=T+(N=hw(N^E,8))|0,P=hw(P^T,7),R=R+(k=hw(k^(I=I+A|0),16))|0,I=I+(A=hw(A^R,12))|0,R=R+(k=hw(k^I,8))|0,A=hw(A^R,7),B=B+(j=hw(j^(S=S+_|0),16))|0,S=S+(_=hw(_^B,12))|0,B=B+(j=hw(j^S,8))|0,_=hw(_^B,7),R=R+(j=hw(j^(x=x+P|0),16))|0,x=x+(P=hw(P^R,12))|0,R=R+(j=hw(j^x,8))|0,P=hw(P^R,7),B=B+(U=hw(U^(E=E+A|0),16))|0,E=E+(A=hw(A^B,12))|0,B=B+(U=hw(U^E,8))|0,A=hw(A^B,7),C=C+(N=hw(N^(I=I+_|0),16))|0,I=I+(_=hw(_^C,12))|0,C=C+(N=hw(N^I,8))|0,_=hw(_^C,7),T=T+(k=hw(k^(S=S+O|0),16))|0,S=S+(O=hw(O^T,12))|0,T=T+(k=hw(k^S,8))|0,O=hw(O^T,7);let D=0;i[D++]=o+x|0,i[D++]=a+E|0,i[D++]=l+I|0,i[D++]=c+S|0,i[D++]=h+O|0,i[D++]=u+P|0,i[D++]=f+A|0,i[D++]=d+_|0,i[D++]=p+C|0,i[D++]=g+T|0,i[D++]=y+R|0,i[D++]=m+B|0,i[D++]=s+U|0,i[D++]=b+N|0,i[D++]=w+k|0,i[D++]=v+j|0},{counterRight:!1,counterLength:4,allowShortKeys:!1}),hA=new Uint8Array(16),h_=(e,t)=>{e.update(t);let r=t.length%16;r&&e.update(hA.subarray(r))},hC=new Uint8Array(32);function hT(e,t,r,i,s){var n,o;let a,l,c=e(t,r,hC),h=hO.create(c);s&&h_(h,s),h_(h,i);let u=(n=i.length,o=s?s.length:0,hi(!0),hf(l=new DataView((a=new Uint8Array(16)).buffer,a.byteOffset,a.byteLength),0,BigInt(o),!0),hf(l,8,BigInt(n),!0),a);h.update(u);let f=h.digest();return hl(c,u),f}let hR=((e,t)=>{function r(i,...s){if(hn(i),!hc)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");
18e.varSizeNonce?hn(t):hn(t,e.nonceLength)}let n=e.tagLength;n&&void 0!==s[1]&&hn(s[1]);let o=t(i,...s),a=(e,t)=>{if(void 0!==t){if(2!==e)throw Error("cipher output not supported");hn(t)}},l=!1;return{encrypt(e,t){if(l)throw Error("cannot encrypt() twice with same key + nonce");return l=!0,hn(e),a(o.encrypt.length,t),o.encrypt(e,t)},decrypt(e,t){if(hn(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=hu(n+16,s,!1)).set(i);let o=s.subarray(0,-16);hP(e,t,o,o,1);let a=hT(hP,e,t,o,r);return s.set(a,n),hl(a),s},decrypt(i,s){s=hu(i.length-16,s,!1);let n=i.subarray(0,-16),o=i.subarray(-16),a=hT(hP,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)),hP(e,t,s,s,1),hl(a),s}}));class hB extends l3{constructor(e,t){super(),this.finished=!1,this.destroyed=!1,lL(e);const r=l1(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),lz(s)}update(e){return l$(this),this.iHash.update(e),this}digestInto(e){l$(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 hU=(e,t,r)=>new hB(e,t).update(r).digest();hU.create=(e,t)=>new hB(e,t);let hN=Uint8Array.from([0]),hk=Uint8Array.of(),hj=BigInt(0),hD=BigInt(1);function hL(e,t=""){if("boolean"!=typeof e)throw Error((t&&`"${t}"`)+"expected boolean, got type="+typeof e);return e}function h$(e,t,r=""){let i=lk(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 hq(e){let t=e.toString(16);return 1&t.length?"0"+t:t}function hM(e){if("string"!=typeof e)throw Error("hex string expected, got "+typeof e);return""===e?hj:BigInt("0x"+e)}function hz(e){return lD(e),hM(lX(Uint8Array.from(e).reverse()))}function hF(e,t){return lQ(e.toString(16).padStart(2*t,"0"))}function hV(e,t){return hF(e,t).reverse()}function hK(e,t,r){let i;if("string"==typeof t)try{i=lQ(t)}catch(t){throw Error(e+" must be hex string or Uint8Array, cause: "+t)}else if(lk(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 hH=e=>"bigint"==typeof e&&hj<=e;function hW(e,t,r,i){if(!(hH(t)&&hH(r)&&hH(i))||!(r<=t)||!(t<i))throw Error("expected valid "+e+": "+r+" <= n < "+i+", got "+t)}function hG(e){let t;for(t=0;e>hj;e>>=hD,t+=1);return t}let hY=e=>(hD<<BigInt(e))-hD;function hZ(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}" 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 hX(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 hJ=BigInt(0),hQ=BigInt(1),h0=BigInt(2),h1=BigInt(3),h2=BigInt(4),h3=BigInt(5),h8=BigInt(7),h6=BigInt(8),h5=BigInt(9),h4=BigInt(16);function h9(e,t){let r=e%t;return r>=hJ?r:t+r}function h7(e,t,r){let i=e;for(;t-- >hJ;)i*=i,i%=r;return i}function ue(e,t){if(e===hJ)throw Error("invert: expected non-zero number");if(t<=hJ)throw Error("invert: expected positive modulus, got "+t);let r=h9(e,t),i=t,s=hJ,n=hQ;for(;r!==hJ;){let e=i/r,t=i%r,o=s-n*e;i=r,r=t,s=n,n=o}if(i!==hQ)throw Error("invert: does not exist");return h9(s,t)}function ut(e,t,r){if(!e.eql(e.sqr(t),r))throw Error("Cannot find square root")}function ur(e,t){let r=(e.ORDER+hQ)/h2,i=e.pow(t,r);return ut(e,i,t),i}function ui(e,t){let r=(e.ORDER-h3)/h6,i=e.mul(t,h0),s=e.pow(i,r),n=e.mul(t,s),o=e.mul(e.mul(n,h0),s),a=e.mul(n,e.sub(o,e.ONE));return ut(e,a,t),a}function us(e){if(e<h1)throw Error("sqrt is not defined for small field");let t=e-hQ,r=0;for(;t%h0===hJ;)t/=h0,r++;let i=h0,s=uc(e);for(;1===ua(s,i);)if(i++>1e3)throw Error("Cannot find square root: probably non-prime P");if(1===r)return ur;let n=s.pow(i,t),o=(t+hQ)/h0;return function(e,i){if(e.is0(i))return i;if(1!==ua(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=hQ<<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 un=["create","isValid","is0","neg","inv","sqrt","sqr","eql","add","sub","mul","pow","div","addN","subN","mulN","sqrN"];function uo(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 ua(e,t){let r=(e.ORDER-hQ)/h0,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 ul(e,t){void 0!==t&&lj(t);let r=void 0!==t?t:e.toString(2).length,i=Math.ceil(r/8);return{nBitLength:r,nByteLength:i}}function uc(e,t,r=!1,i={}){let s;if(e<=hJ)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");
vendor: 4,254 bytes, line 18
18t.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}=ul(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:hY(c),ZERO:hJ,ONE:hQ,allowedLengths:l,create:t=>h9(t,e),isValid:t=>{if("bigint"!=typeof t)throw Error("invalid field element: expected bigint, got "+typeof t);return hJ<=t&&t<e},is0:e=>e===hJ,isValidNot0:e=>!u.is0(e)&&u.isValid(e),isOdd:e=>(e&hQ)===hQ,neg:t=>h9(-t,e),eql:(e,t)=>e===t,sqr:t=>h9(t*t,e),add:(t,r)=>h9(t+r,e),sub:(t,r)=>h9(t-r,e),mul:(t,r)=>h9(t*r,e),pow:(e,t)=>(function(e,t,r){if(r<hJ)throw Error("invalid exponent, negatives unsupported");if(r===hJ)return e.ONE;if(r===hQ)return t;let i=e.ONE,s=t;for(;r>hJ;)r&hQ&&(i=e.mul(i,s)),s=e.sqr(s),r>>=hQ;return i})(u,e,t),div:(t,r)=>h9(t*ue(r,e),e),sqrN:e=>e*e,addN:(e,t)=>e+t,subN:(e,t)=>e-t,mulN:(e,t)=>e*t,inv:t=>ue(t,e),sqrt:o||(t=>{let r,i,n,o,a,l;return s||(s=e%h2===h1?ur:e%h6===h3?ui:e%h4===h5?(r=uc(e),n=(i=us(e))(r,r.neg(r.ONE)),o=i(r,n),a=i(r,r.neg(n)),l=(e+h8)/h4,(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 f=e.eql(e.sqr(i),t),d=e.cmov(r,i,f);return ut(e,d,t),d}):us(e)),s(u,t)}),toBytes:e=>r?hV(e,h):hF(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?hz(t):hM(lX(t));if(a&&(s=h9(s,e)),!i&&!u.isValid(s))throw Error("invalid field element: outside of range 0..ORDER");return s},invertBatch:e=>uo(u,e),cmov:(e,t,r)=>r?t:e});return Object.freeze(u)}function uh(e){if("bigint"!=typeof e)throw Error("field order must be bigint");return Math.ceil(e.toString(2).length/8)}function uu(e){let t=uh(e);return t+Math.ceil(t/2)}let uf=BigInt(0),ud=BigInt(1);function up(e,t){let r=t.negate();return e?r:t}function ug(e,t){let r=uo(e.Fp,t.map(e=>e.Z));return t.map((t,i)=>e.fromAffine(t.toAffine(r[i])))}function uy(e,t){if(!Number.isSafeInteger(e)||e<=0||e>t)throw Error("invalid window size, expected [1.."+t+"], got W="+e)}function um(e,t){uy(e,t);let r=Math.ceil(t/e)+1,i=2**(e-1),s=2**e;return{windows:r,windowSize:i,mask:hY(e),maxNumber:s,shiftBy:BigInt(e)}}function ub(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+=ud);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 uw=new WeakMap,uv=new WeakMap;function ux(e){return uv.get(e)||1}function uE(e){if(e!==uf)throw Error("invalid wNAF")}class uI{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>uf;)t&ud&&(r=r.add(i)),i=i.double(),t>>=ud;return r}precomputeWindow(e,t){let{windows:r,windowSize:i}=um(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=um(e,this.bits);for(let e=0;e<n.windows;e++){let{nextN:o,offset:a,isZero:l,isNeg:c,isNegF:h,offsetF:u}=ub(r,e,n);r=o,l?s=s.add(up(h,t[u])):i=i.add(up(c,t[a]))}return uE(r),{p:i,f:s}}wNAFUnsafe(e,t,r,i=this.ZERO){let s=um(e,this.bits);for(let e=0;e<s.windows&&r!==uf;e++){let{nextN:n,offset:o,isZero:a,isNeg:l}=ub(r,e,s);if(r=n,!a){let e=t[o];i=i.add(l?e.negate():e)}}return uE(r),i}getPrecomputes(e,t,r){let i=uw.get(t);return i||(i=this.precomputeWindow(t,e),1!==e&&("function"==typeof r&&(i=r(i)),uw.set(t,i))),i}cached(e,t,r){let i=ux(e);return this.wNAF(i,this.getPrecomputes(i,e,r),t)}unsafe(e,t,r,i){let s=ux(e);return 1===s?this._unsafeLadder(e,t,i):this.wNAFUnsafe(s,this.getPrecomputes(s,e,r),t,i)}createCache(e,t){uy(t,this.bits),uv.set(e,t),uw.delete(e)}hasCache(e){return 1!==ux(e)}}function uS(e,t,r){if(!t)return uc(e,{isLE:r});if(t.ORDER!==e)throw Error("Field.ORDER must match order: Fp == p, Fn == n");return hZ(t,un.reduce((e,t)=>
18(e[t]="function",e),{ORDER:"bigint",MASK:"bigint",BYTES:"number",BITS:"number"})),t}BigInt(0),BigInt(1),BigInt(2),BigInt(8),l0("HashToScalar-");let uO=BigInt(0),uP=BigInt(1),uA=BigInt(2),u_=BigInt(1),uC=BigInt(2),uT=BigInt(3),uR=BigInt(5),uB=BigInt(8),uU=BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffed"),uN={p:uU,n:BigInt("0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed"),h:uB,a:BigInt("0x7fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffec"),d:BigInt("0x52036cee2b6ffe738cc740797779e89800700a4d4141d8ab75eb4dca135978a3"),Gx:BigInt("0x216936d3cd6e53fec0a4e231fdd6dc5c692cc7609525a7b2c9562d608f25d51a"),Gy:BigInt("0x6666666666666666666666666666666666666666666666666666666666666658")},uk=function(e){let{P:t,type:r,adjustScalarBytes:i,powPminus2:s,randomBytes:n}=(hZ(e,{adjustScalarBytes:"function",powPminus2:"function"}),Object.freeze({...e})),o="x25519"===r;if(!o&&"x448"!==r)throw Error("invalid type");let a=n||l6,l=o?255:448,c=o?32:56,h=BigInt(o?9:5),u=BigInt(o?121665:39081),f=o?uA**BigInt(254):uA**BigInt(447),d=f+(o?BigInt(8)*uA**BigInt(251)-uP:BigInt(4)*uA**BigInt(445)-uP)+uP,p=e=>h9(e,t),g=hV(p(h),c);function y(e,r){let n,a=function(e,r){hW("u",e,uO,t),hW("scalar",r,f,d);let i=uP,n=uO,o=e,a=uP,c=uO;for(let t=BigInt(l-1);t>=uO;t--){let s=r>>t&uP;c^=s,({x_2:i,x_3:o}=b(c,i,o)),({x_2:n,x_3:a}=b(c,n,a)),c=s;let l=i+n,h=p(l*l),f=i-n,d=p(f*f),g=h-d,y=o+a,m=p((o-a)*l),w=p(y*f),v=m+w,x=m-w;o=p(v*v),a=p(e*p(x*x)),i=p(h*d),n=p(g*(h+p(u*g)))}return{x_2:i,x_3:o}=b(c,i,o),{x_2:n,x_3:a}=b(c,n,a),p(i*s(n))}((n=hK("u coordinate",r,c),o&&(n[31]&=127),p(hz(n))),hz(i(hK("scalar",e,c))));if(a===uO)throw Error("invalid private or public key received");return hV(p(a),c)}function m(e){return y(e,g)}function b(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:m(t)}},getSharedSecret:(e,t)=>y(e,t),getPublicKey:e=>m(e),scalarMult:y,scalarMultBase:m,utils:{randomSecretKey:v,randomPrivateKey:v},GuBytes:g.slice(),lengths:w}}({P:h=uc(uN.p,{isLE:!0}).ORDER,type:"x25519",powPminus2:e=>{let t,r,i,s,n,o,a,l,c,u,f,d,p,g,{pow_p_5_8:y,b2:m}=(t=BigInt(10),r=BigInt(20),i=BigInt(40),s=BigInt(80),o=h7(n=e*e%uU*e%uU,uC,uU)*n%uU,a=h7(o,u_,uU)*e%uU,l=h7(a,uR,uU)*a%uU,c=h7(l,t,uU)*l%uU,u=h7(c,r,uU)*c%uU,f=h7(u,i,uU)*u%uU,d=h7(f,s,uU)*f%uU,p=h7(d,s,uU)*f%uU,g=h7(p,t,uU)*l%uU,{pow_p_5_8:h7(g,uC,uU)*e%uU,b2:n});return h9(h7(y,uT,h)*m,h)},adjustScalarBytes:function(e){return e[0]&=248,e[31]&=127,e[31]|=64,e}}),uj=(e,t)=>(e+(e>=0?t:-t)/uz)/t;function uD(e){if(!["compact","recovered","der"].includes(e))throw Error('Signature format must be "compact", "recovered", or "der"');return e}function uL(e,t){let r={};for(let i of Object.keys(t))r[i]=void 0===e[i]?t[i]:e[i];return hL(r.lowS,"lowS"),hL(r.prehash,"prehash"),void 0!==r.format&&uD(r.format),r}let u$={Err:class extends Error{constructor(e=""){super(e)}},_tlv:{encode:(e,t)=>{let{Err:r}=u$;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=hq(i);if(s.length/2&128)throw new r("tlv.encode: long form length too big");let n=i>127?hq(s.length/2|128):"";return hq(e)+n+s+t},decode(e,t){let{Err:r}=u$,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}=u$;if(e<uq)throw new t("integer: negative integers are not allowed");let r=hq(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}=u$;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 hM(lX(e))}},toSig(e){let{Err:t,_int:r,_tlv:i}=u$,s=hK("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}=u$,i=t.encode(2,r.encode(e.r)),s=t.encode(2,r.encode(e.s));return t.encode(48,i+s)}},uq=BigInt(0),uM=BigInt(1),uz=BigInt(2),uF=BigInt(3),uV=BigInt(4);function uK(e,t){let r,{BYTES:i}=e;if("bigint"==typeof t)r=t;else{let s=hK("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 uH(e){return Uint8Array.of(e?2:3)}function uW(e,t){return{secretKey:t.BYTES,publicKey:1+e.BYTES,publicKeyUncompressed:1+2*e.BYTES,publicKeyHasPrefix:!0,signature:2*t.BYTES}}function uG(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:uc(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={}){lL(t),hZ(r,{},{hmac:"function",lowS:"boolean",randomBytes:"function",bits2int:"function",bits2int_modN:"function"});let i=r.randomBytes||l6,s=r.hmac||((e,...r)=>hU(t,e,l2(...r))),{Fp:n,Fn:o}=e,{ORDER:a,BITS:l}=o,{keygen:c,getPublicKey:h,getSharedSecret:u,utils:f,lengths:d}=function(e,t={}){let{Fn:r}=e,i=t.randomBytes||l6,s=Object.assign(uW(e.Fp,r),{seed:uu(r.ORDER)});function n(e){try{return!!uK(r,e)}catch{return!1}}function o(e=i(s.seed)){return function(e,t,r=!1){let i=e.length,s=uh(t),n=uu(t);if(i<16||i<n||i>1024)throw Error("expected "+n+"-1024 bytes of input, got "+i);let o=h9(r?hz(e):hM(lX(e)),t-hQ)+hQ;return r?hV(o,s):hF(o,s)}(h$(e,s.seed,"seed"),r.ORDER)}function a(t,i=!0){return e.BASE.multiply(uK(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=hK("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=uK(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=>
vendor: 9,864 bytes, line 18
18uK(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 m{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=d.signature,h$(r,"compact"===i?n:"recovered"===i?n+1:void 0,`${i} signature`),"der"===t){let{r:t,s:r}=u$.toSig(h$(e));return new m(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 m(o.fromBytes(l),o.fromBytes(c),s)}static fromHex(e,t){return this.fromBytes(lQ(e),t)}addRecoveryBit(e){return new m(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*uz<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(l2(uH((1&l)==0),h)),f=o.inv(c),d=w(hK("msgHash",t)),p=o.create(-d*f),g=o.create(s*f),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>>uM}toBytes(e=g){if(uD(e),"der"===e)return lQ(u$.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 l2(Uint8Array.of(this.recovery),t,r)}return l2(t,r)}toHex(e){return lX(this.toBytes(e))}assertValidity(){}static fromCompact(e){return m.fromBytes(hK("sig",e),"compact")}static fromDER(e){return m.fromBytes(hK("sig",e),"der")}normalizeS(){return this.hasHighS()?new m(this.r,o.neg(this.s),this.recovery):this}toDERRawBytes(){return this.toBytes("der")}toDERHex(){return lX(this.toBytes("der"))}toCompactRawBytes(){return this.toBytes("compact")}toCompactHex(){return lX(this.toBytes("compact"))}}let b=r.bits2int||function(e){if(e.length>8192)throw Error("input is too large");let t=hM(lX(e)),r=8*e.length-l;return r>0?t>>BigInt(r):t},w=r.bits2int_modN||function(e){return o.create(b(e))},v=hY(l);function x(e){return hW("num < 2^"+l,e,uq,v),o.toBytes(e)}function E(e,r){return h$(e,void 0,"message"),r?h$(t(e),void 0,"prehashed message"):e}return Object.freeze({keygen:c,getPublicKey:h,getSharedSecret:u,utils:f,lengths:d,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}=uL(s,p),h=w(t=E(t,l)),u=uK(o,r),f=[x(u),x(h)];if(null!=c&&!1!==c){let e=!0===c?i(d.secretKey):c;f.push(hK("extraEntropy",e))}return{seed:l2(...f),k2sig:function(t){let r=b(t);if(!o.isValidNot0(r))return;let i=o.inv(r),s=e.BASE.multiply(r).toAffine(),l=o.create(s.x);if(l===uq)return;let c=o.create(i*o.create(h+l*u));if(c===uq)return;let f=2*(s.x!==l)|Number(s.y&uM),d=c;return n&&c>a>>uM&&(d=o.neg(c),f^=1),new m(l,d,f)}}}(r=hK("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 l2(...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}=uL(s,p);if(i=hK("publicKey",i),r=E(hK("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||lk(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 m(e.r,e.s);else if(r){try{t=m.fromBytes(hK("sig",e),"der")}catch(e){if(!(e instanceof u$.Err))throw e}if(!t)try{t=m.fromBytes(hK("sig",e),"compact")}catch{return!1}}return t||!1}(t):m.fromBytes(hK("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),f=o.create(s*h),d=e.BASE.multiplyUnsafe(u).add(t.multiplyUnsafe(f));return!d.is0()&&o.create(d.x)===s}catch{return!1}},recoverPublicKey:function(e,t,r={}){let{prehash:i}=uL(r,p);return t=E(t,i),m.fromBytes(e,"recovered").recoverPublicKey(t).toBytes()},Signature:m,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>uf))throw Error(`CURVE.${e} must be positive bigint`)}let s=uS(t.p,r.Fp,i),n=uS(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;hZ(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=uW(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(hL(r,"isCompressed"),r)?(h(),l2(uH(!i.isOdd(n)),o)):l2(Uint8Array.of(4),o,i.toBytes(n))},f=t.fromBytes||function(e){h$(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=d(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 d(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=d(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,uF),uV),y=i.mul(i.sqr(n.b),BigInt(27));if(i.is0(i.add(g,y)))throw Error("bad curve params: a or b");function m(e,t,r=!1){if(!i.isValid(t)||r&&i.is0(t))throw Error(`bad point coordinate ${e}`);return t}function b(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=uj(o*e,r),l=uj(-s*e,r),c=e-a*i-l*n,h=-a*s-l*o,u=c<uq,f=h<uq;u&&(c=-c),f&&(h=-h);let d=hY(Math.ceil(hG(r)/2))+uM;if(c<uq||c>=d||h<uq||h>=d)throw Error("splitScalar (endomorphism): failed, k="+e);return{k1neg:u,k1:c,k2neg:f,k2:h}}(e,l.basises,s.ORDER)}let v=hX((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}}),x=hX(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 E(e,t,r,s,n){return r=new I(i.mul(r.X,e),r.Y,r.Z),t=up(s,t),r=up(n,r),t.add(r)}class I{constructor(e,t,r){this.X=m("x",e),this.Y=m("y",t,!0),this.Z=m("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(f(h$(e,void 0,"point")));return t.assertValidity(),t}static fromHex(e){return I.fromBytes(hK("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(uF),this}assertValidity(){x(this)}hasEvenY(){let{y:e}=this.toAffine();if(!i.isOdd)throw Error("Field doesn't support isOdd");return!i.isOdd(e)}equals(e){b(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,uF),{X:s,Y:o,Z:a}=this,l=i.ZERO,c=i.ZERO,h=i.ZERO,u=i.mul(s,s),f=i.mul(o,o),d=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,d),c=i.add(l,c),l=i.sub(f,c),c=i.add(f,c),c=i.mul(l,c),l=i.mul(p,l),h=i.mul(r,h),d=i.mul(e,d),p=i.sub(u,d),p=i.mul(e,p),p=i.add(p,h),h=i.add(u,u),u=i.add(h,u),u=i.add(u,d),u=i.mul(u,p),c=i.add(c,u),d=i.mul(o,a),d=i.add(d,d),u=i.mul(d,p),l=i.sub(l,u),h=i.mul(d,f),h=i.add(h,h),new I(l,c,h=i.add(h,h))}add(e){b(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,f=n.a,d=i.mul(n.b,uF),p=i.mul(t,o),g=i.mul(r,a),y=i.mul(s,l),m=i.add(t,r),w=i.add(o,a);
18m=i.mul(m,w),w=i.add(p,g),m=i.sub(m,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(f,w),c=i.mul(d,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(f,y),w=i.mul(d,w),g=i.add(g,y),y=i.sub(p,y),y=i.mul(f,y),w=i.add(w,y),p=i.mul(g,w),h=i.add(h,p),p=i.mul(v,w),c=i.mul(m,c),c=i.sub(c,p),p=i.mul(m,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=>ug(I,e));if(n){let{k1neg:t,k1:s,k2neg:a,k2:l}=w(e),{p:c,f:h}=o(s),{p:u,f:f}=o(l);i=h.add(f),r=E(n.beta,c,u,t,a)}else{let{p:t,f:s}=o(e);r=t,i=s}return ug(I,[r,i])[0]}multiplyUnsafe(e){let{endo:r}=t;if(!s.isValid(e))throw Error("invalid scalar: out of range");if(e===uq||this.is0())return I.ZERO;if(e===uM)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>uf||i>uf;)r&ud&&(n=n.add(s)),i&ud&&(o=o.add(s)),s=s.double(),r>>=ud,i>>=ud;return{p1:n,p2:o}}(I,this,i,n);return E(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===uM||(e?e(I,this):O.unsafe(this,a).is0())}clearCofactor(){let{clearCofactor:e}=t;return o===uM?this:e?e(I,this):this.multiplyUnsafe(o)}isSmallOrder(){return this.multiplyUnsafe(o).is0()}toBytes(e=!0){return hL(e,"isCompressed"),this.assertValidity(),u(I,this,e)}toHex(e=!0){return lX(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 ug(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=hG(BigInt(s)),l=1;a>12?l=a-3:a>4?l=a-2:a>0&&(l=2);let c=hY(l),h=Array(Number(c)+1).fill(o),u=Math.floor((t.BITS-1)/l)*l,f=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(f=f.add(t),0!==e)for(let e=0;e<l;e++)f=f.double()}return f}(I,s,e,t)}static fromPrivateKey(e){return I.BASE.multiply(uK(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 uI(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,ul(t.Fn.ORDER,t.Fn.BITS))})})({...e,hash:t});return{...r(t),create:r}}let uY={p:BigInt("0xffffffff00000001000000000000000000000000ffffffffffffffffffffffff"),n:BigInt("0xffffffff00000000ffffffffffffffffbce6faada7179e84f3b9cac2fc632551"),h:BigInt(1),a:BigInt("0xffffffff00000001000000000000000000000000fffffffffffffffffffffffc"),b:BigInt("0x5ac635d8aa3a93e7b3ebbd55769886bc651d06b0cc53b0f63bce3c3e27d2604b"),Gx:BigInt("0x6b17d1f2e12c4247f8bce6e563a440f277037d812deb33a0f4a13945d898c296"),Gy:BigInt("0x4fe342e2fe1a7f9b8ee7eb4a7c0f9e162bce33576b315ececbb6406837bf51f5")},uZ={p:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000ffffffff"),n:BigInt("0xffffffffffffffffffffffffffffffffffffffffffffffffc7634d81f4372ddf581a0db248b0a77aecec196accc52973"),h:BigInt(1),a:BigInt("0xfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffeffffffff0000000000000000fffffffc"),b:BigInt("0xb3312fa7e23ee7e4988e056be3f82d19181d9c6efe8141120314088f5013875ac656398d8a2ed19d2a85c8edd3ec2aef"),Gx:BigInt("0xaa87ca22be8b05378eb1c71ef320ad746e1d3b628ba79b9859f741e082542a385502f25dbf55296c3a545e3872760ab7"),Gy:BigInt("0x3617de4a96262c6f5d9e98bf9292dc29f8f41dbd289a147ce9da3113b5f0b8c00a60b1ce1d7e819d7a431d7c90ea0e5f")},uX={p:BigInt("0x1ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff"),n:BigInt("0x01fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffa51868783bf2f966b7fcc0148f709a5d03bb5c9b8899c47aebb6fb71e91386409"),h:BigInt(1),a:BigInt("0x1fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffc"),b:BigInt("0x0051953eb9618e1c9a1f929a21a0b68540eea2da725b99b315f3b8b489918ef109e156193951ec7e937b1652c0bd3bb1bf073573df883d2c34f1ef451fd46b503f00"),Gx:BigInt("0x00c6858e06b70404e9cd9e3ecb662395b4429c648139053fb521f828af606b4d3dbaa14b5e77efe75928fe1dc127a2ffa8de3348b3c1856a429bf97e7e31c2e5bd66"),Gy:BigInt("0x011839296a789a3bc0045c8a5fb42c7d1bd998f54449579b446817afbd17273e662c97ee72995ef42640c550b9013fad0761353c7086a272c24088be94769fd16650")},uJ=uc(uY.p),uQ=uc(uZ.p),u0=uc(uX.p),u1=uG({...uY,Fp:uJ,lowS:!1},c_);uG({...uZ,Fp:uQ,lowS:!1},cT),uG({...uX,Fp:u0,lowS:!1,allowedPrivateKeyLengths:[130,131,132]},cC);let u2="base10",u3="base16",u8="base64pad",u6="base64url",u5="utf8";function u4(){return ak(l6(32),u3)}function u9(e){return ak(c_(aN(e,u3)),u3)}function u7(e){return ak(c_(aN(e,u5)),u3)}function fe(e){return Number(ak(e,u2))}function ft(e){return e.replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function fr(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),r=(4-t.length%4)%4;return t+"=".repeat(r)}function fi(e){if(2===fe(e.type))return ak(ou([e.type,e.sealed]),u8);if(1===fe(e.type)){if(typeof e.senderPublicKey>"u")throw Error("Missing sender public key for type 1 envelope");
18return ak(ou([e.type,e.senderPublicKey,e.iv,e.sealed]),u8)}return ak(ou([e.type,e.iv,e.sealed]),u8)}function fs(e){let t=aN((e.encoding||u8)===u6?fr(e.encoded):e.encoded,u8),r=t.slice(0,1);if(1===fe(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===fe(r))return{type:r,sealed:t.slice(1),iv:l6(12)};let i=t.slice(1,13);return{type:r,sealed:t.slice(13),iv:i}}function fn(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 fo(e){return 1===e.type&&"string"==typeof e.senderPublicKey&&"string"==typeof e.receiverPublicKey}function fa(e){return e?.relay||{protocol:"irn"}}function fl(e){let t=aj[e];if(typeof t>"u")throw Error(`Relay Protocol not supported: ${e}`);return t}var fc=Object.defineProperty,fh=Object.defineProperties,fu=Object.getOwnPropertyDescriptors,ff=Object.getOwnPropertySymbols,fd=Object.prototype.hasOwnProperty,fp=Object.prototype.propertyIsEnumerable,fg=(e,t,r)=>t in e?fc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,fy=(e,t)=>{for(var r in t||(t={}))fd.call(t,r)&&fg(e,r,t[r]);if(ff)for(var r of ff(t))fp.call(t,r)&&fg(e,r,t[r]);return e};function fm(e){var t;if(!e.includes("wc:")){let t=lg(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 fb(e){let t=new URLSearchParams;return Object.entries(fy(fy(fh(fy({},function(e,t="-"){let r={};return Object.keys(e).forEach(i=>{e[i]&&(r["relay"+t+i]=e[i])}),r}(e.relay)),fu({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 fw(e,t,r){return`${e}?wc_ev=${r}&topic=${t}`}var fv=Object.defineProperty,fx=Object.defineProperties,fE=Object.getOwnPropertyDescriptors,fI=Object.getOwnPropertySymbols,fS=Object.prototype.hasOwnProperty,fO=Object.prototype.propertyIsEnumerable,fP=(e,t,r)=>t in e?fv(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,fA=(e,t)=>{for(var r in t||(t={}))fS.call(t,r)&&fP(e,r,t[r]);if(fI)for(var r of fI(t))fO.call(t,r)&&fP(e,r,t[r]);return e},f_=(e,t)=>fx(e,fE(t));function fC(e){let t=[];return e.forEach(e=>{let[r,i]=e.split(":");t.push(`${r}:${i}`)}),t}function fT(e){let t=[];return Object.values(e).forEach(e=>{t.push(...fC(e.accounts))}),[...new Set(t)]}function fR(e){return e.includes(":")}function fB(e){return fR(e)?e.split(":")[0]:e}function fU(e){var t,r,i;let s={};if(!fj(e))return s;for(let[n,o]of Object.entries(e)){let e=fR(n)?[n]:o.chains,a=o.methods||[],l=o.events||[],c=fB(n);s[c]=f_(fA({},s[c]),{chains:lc(e,null==(t=s[c])?void 0:t.chains),methods:lc(a,null==(r=s[c])?void 0:r.methods),events:lc(l,null==(i=s[c])?void 0:i.events)})}return s}function fN(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=lc(r.methods,e):r.methods=e,r.events=["chainChanged","accountsChanged"];return s}function fk(e,t){return!!Array.isArray(e)&&(!("u">typeof t)||!e.length||e.every(t))}function fj(e){return Object.getPrototypeOf(e)===Object.prototype&&Object.keys(e).length}function fD(e){return typeof e>"u"}function fL(e,t){return!!(t&&fD(e))||"string"==typeof e&&!!e.trim().length}function f$(e,t){return!!(t&&fD(e))||"number"==typeof e&&!isNaN(e)}function fq(e){return!!(fL(e,!1)&&e.includes(":"))&&2===e.split(":").length}function fM(e){let t=!0;return fk(e)?e.length&&(t=e.every(e=>fL(e,!1))):t=!1,t}function fz(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,fM(e?.methods)?fM(e?.events)||(s=aF("UNSUPPORTED_EVENTS",`${i}, events should be an array of strings or empty array for no events`)):s=aF("UNSUPPORTED_METHODS",`${i}, methods should be an array of strings or empty array for no methods`),s);n&&(r=n)}),r}function fF(e,t){let r=null;if(e&&fj(e)){let i,s=fz(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,fk(r)?r.forEach(e=>{n||function(e){if(fL(e,!1)&&e.includes(":")){let t=e.split(":");if(3===t.length){let e=t[0]+":"+t[1];return!!t[2]&&fq(e)}}return!1}(e)||(n=aF("UNSUPPORTED_ACCOUNTS",`${s}, account ${e} should be a string and conform to "namespace:chainId:address" format`))}):n=aF("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=az("MISSING_OR_INVALID",`${t}, namespaces should be an object with data`);return r}function fV(e){return fL(e.protocol,!0)}function fK(e){return"u">typeof e}function fH(e,t){return!(!fq(t)||!fT(e).includes(t))}function fW(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=fC(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),f=fG(Object.keys(e)),d=fG(Object.keys(t)),p=f.filter(e=>!d.includes(e));return p.length&&(a=az("NON_CONFORMING_NAMESPACES",`${r} namespaces keys don't satisfy requiredNamespaces.
19      Required: ${p.toString()}
20      Received: ${Object.keys(t).toString()}`)),a7(h,u)||(a=az("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=fC(t[e].accounts);i.includes(e)||(a=az("NON_CONFORMING_NAMESPACES",`${r} namespaces accounts don't satisfy namespace accounts for ${e}
23        Required: ${e}
24        Approved: ${i.toString()}`))}),h.forEach(e=>{a||(a7(l[e].methods,c[e].methods)?a7(l[e].events,c[e].events)||(a=az("NON_CONFORMING_NAMESPACES",`${r} namespaces events don't satisfy namespace events for ${e}`)):a=az("NON_CONFORMING_NAMESPACES",`${r} namespaces methods don't satisfy namespace methods for ${e}`))}),a}function fG(e){return[...new Set(e.map(e=>e.includes(":")?e.split(":")[0]:e))]}function fY(){let e=a6();return new Promise(t=>{switch(e){case a1:t(a8()&&navigator?.onLine);break;case aQ:t(fZ());break;default:t(!0)}})}async function fZ(){if(a3()&&null!=e.g&&e.g.NetInfo){let t=await (null==e.g?void 0:e.g.NetInfo.fetch());return t?.isConnected}return!0}let fX={};class fJ{static get(e){return fX[e]}static set(e,t){fX[e]=t}static delete(e){delete fX[e]}}function fQ(e){return new Uint8Array(e.replace(/^0x/,"").match(/.{1,2}/g).map(e=>parseInt(e,16)))}function f0({logger:e,name:t}){let r="string"==typeof e?(0,G.generatePlatformLogger)({opts:{level:e,name:t}}).logger:e;return r.level="string"==typeof e?e:e.level,r}var f1=e.i(438005);f1.isNode;class f2{}class f3 extends f2{constructor(){super()}}class f8 extends f3{constructor(e){super()}}let f6="INTERNAL_ERROR",f5="SERVER_ERROR",f4=[-32700,-32600,-32601,-32602,-32603],f9={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"},[f6]:{code:-32603,message:"Internal error"},[f5]:{code:-32e3,message:"Server error"}};function f7(e){return Object.keys(f9).includes(e)?f9[e]:f9[f5]}function de(e,t,r){return e.message.includes("getaddrinfo ENOTFOUND")||e.message.includes("connect ECONNREFUSED")?Error(`Unavailable ${r} RPC url at ${t}`):e}
24function dt(e=3){return Date.now()*Math.pow(10,e)+Math.floor(Math.random()*Math.pow(10,e))}function dr(e=6){return BigInt(dt(e))}function di(e,t,r){return{id:r||dt(),jsonrpc:"2.0",method:e,params:t}}function ds(e,t){return{id:e,jsonrpc:"2.0",result:t}}function dn(e,t,r){var i,s,n,o;let a;return{id:e,jsonrpc:"2.0",error:(i=t,s=r,void 0===i?f7(f6):("string"==typeof i&&(i=Object.assign(Object.assign({},f7(f5)),{message:i})),void 0!==s&&(i.data=s),n=i.code,f4.includes(n)&&(o=i.code,i=(a=Object.values(f9).find(e=>e.code===o))||f9[f5]),i))}}function da(e){return"object"==typeof e&&"id"in e&&"jsonrpc"in e&&"2.0"===e.jsonrpc}function dl(e){return da(e)&&"method"in e}function dc(e){return da(e)&&(dh(e)||du(e))}function dh(e){return"result"in e}function du(e){return"error"in e}class df extends f8{constructor(e){super(e),this.events=new y.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(di(e.method,e.params||[],e.id||dr().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=>{du(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),dc(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)}}function dd(e,t){let r=function(e){let t=e.match(RegExp(/^\w+:/,"gi"));if(t&&t.length)return t[0]}(e);return void 0!==r&&new RegExp(t).test(r)}function dp(e){return dd(e,"^https?:")}function dg(e){return dd(e,"^wss?:")}let dy=e=>e.split("?")[0],dm="u">typeof WebSocket?WebSocket:"u">typeof e.g.WebSocket?e.g.WebSocket:"u">typeof window&&"u">typeof window.WebSocket?window.WebSocket:"u">typeof self&&"u">typeof self.WebSocket?self.WebSocket:e.r(756823);class db{constructor(e){if(this.url=e,this.events=new y.EventEmitter,this.registering=!1,!dg(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(L(e))}catch(t){this.onError(e.id,t)}}register(t=this.url){if(!dg(t))throw Error(`Provided URL is not compatible with WebSocket connection: ${t}`);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=t,this.registering=!0,new Promise((r,i)=>{let s=(0,f1.isReactNative)()?void 0:{rejectUnauthorized:!RegExp("wss?://localhost(:d{2,5})?").test(t)},n=new dm(t,[],s);"u">typeof WebSocket||"u">typeof e.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),r(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?D(e.data):e.data;this.events.emit("payload",t)}onError(e,t){let r=this.parseError(t),i=dn(e,r.message||r.toString());this.events.emit("payload",i)}parseError(e,t=this.url){return de(e,dy(t),"WS")}resetMaxListeners(){this.events.getMaxListeners()>10&&this.events.setMaxListeners(10)}emitError(e){let t=this.parseError(Error(e?.message||`WebSocket connection failed for host: ${dy(this.url)}`));return this.events.emit("register_error",t),t}}let dw="core",dv=`wc@2:${dw}:`,dx={database:":memory:"},dE="client_ed25519_seed",dI=b.ONE_DAY,dS=b.SIX_HOURS,dO="wss://relay.walletconnect.org",dP="relayer_message",dA="relayer_message_ack",d_="relayer_connection_stalled",dC="relayer_publish",dT="payload",dR="connect",dB="disconnect",dU="error",dN="2.23.7",dk="link_mode",dj="relay",dD="inbound",dL="WALLETCONNECT_LINK_MODE_APPS",d$="subscription_created",dq="subscription_deleted",dM=(b.THIRTY_DAYS,b.FIVE_SECONDS,b.THIRTY_DAYS,{wc_pairingDelete:{req:{ttl:b.ONE_DAY,prompt:!1,tag:1e3},res:{ttl:b.ONE_DAY,prompt:!1,tag:1001}},wc_pairingPing:{req:{ttl:b.THIRTY_SECONDS,prompt:!1,tag:1002},res:{ttl:b.THIRTY_SECONDS,prompt:!1,tag:1003}},unregistered_method:{req:{ttl:b.ONE_DAY,prompt:!1,tag:0},res:{ttl:b.ONE_DAY,prompt:!1,tag:0}}}),dz="pairing_create",dF="pairing_delete",dV="history_created",dK="history_updated",dH="history_deleted",dW="expirer_created",dG="expirer_deleted",dY="expirer_expired",dZ=(b.ONE_DAY,"https://verify.walletconnect.org"),dX=`${dZ}/v3`,dJ=["https://verify.walletconnect.com",dZ],dQ="malformed_pairing_uri",d0="session_approve_started";var d1=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,f=n-1;(0!==h||u<s)&&-1!==f;f--,u++)h+=a*o[f]>>>0,o[f]=h%256>>>0,h=h/256>>>0;if(0!==h)throw Error("Non-zero carry");s=u,t++}if(" "!==e[t]){for(var d=n-s;d!==n&&0===o[d];)d++;for(var p=new Uint8Array(i+(n-d)),g=i;d!==n;)p[g++]=o[d++];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],f=0,d=o-1;(0!==u||f<i)&&-1!==d;d--,f++)u+=256*c[d]>>>0,c[d]=u%a>>>0,u=u/a>>>0;if(0!==u)throw Error("Non-zero carry");i=f,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 d2=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 d3{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 d8{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 d5(this,e)}}class d6{constructor(e){this.decoders=e}or(e){return d5(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 d5=(e,t)=>new d6({...e.decoders||{[e.prefix]:e},...t.decoders||{[t.prefix]:t}});class d4{constructor(e,t,r,i){this.name=e,this.prefix=t,this.baseEncode=r,this.baseDecode=i,this.encoder=new d3(e,t,r),this.decoder=new d8(e,t,i)}encode(e){return this.encoder.encode(e)}decode(e){return this.decoder.decode(e)}}let d9=({name:e,prefix:t,encode:r,decode:i})=>new d4(e,t,r,i),d7=({prefix:e,name:t,alphabet:r})=>{let{encode:i,decode:s}=d1(r,t);return d9({prefix:e,name:t,encode:i,decode:e=>d2(s(e))})},pe=({name:e,prefix:t,bitsPerChar:r,alphabet:i})=>d9({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 pt=Object.freeze({__proto__:null,identity:d9({prefix:"\0",name:"identity",encode:e=>new TextDecoder().decode(e),decode:e=>new TextEncoder().encode(e)})}),pr=Object.freeze({__proto__:null,base2:pe({prefix:"0",name:"base2",alphabet:"01",bitsPerChar:1})}),pi=Object.freeze({__proto__:null,base8:pe({prefix:"7",name:"base8",alphabet:"01234567",bitsPerChar:3})}),ps=Object.freeze({__proto__:null,base10:d7({prefix:"9",name:"base10",alphabet:"0123456789"})}),pn=Object.freeze({__proto__:null,base16:pe({prefix:"f",name:"base16",alphabet:"0123456789abcdef",bitsPerChar:4}),base16upper:pe({prefix:"F",name:"base16upper",alphabet:"0123456789ABCDEF",bitsPerChar:4})}),po=Object.freeze({__proto__:null,base32:pe({prefix:"b",name:"base32",alphabet:"abcdefghijklmnopqrstuvwxyz234567",bitsPerChar:5}),base32upper:pe({prefix:"B",name:"base32upper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567",bitsPerChar:5}),base32pad:pe({prefix:"c",name:"base32pad",alphabet:"abcdefghijklmnopqrstuvwxyz234567=",bitsPerChar:5}),base32padupper:pe({prefix:"C",name:"base32padupper",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567=",bitsPerChar:5}),base32hex:pe({prefix:"v",name:"base32hex",alphabet:"0123456789abcdefghijklmnopqrstuv",bitsPerChar:5}),base32hexupper:pe({prefix:"V",name:"base32hexupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV",bitsPerChar:5}),base32hexpad:pe({prefix:"t",name:"base32hexpad",alphabet:"0123456789abcdefghijklmnopqrstuv=",bitsPerChar:5}),base32hexpadupper:pe({prefix:"T",name:"base32hexpadupper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUV=",bitsPerChar:5}),base32z:pe({prefix:"h",name:"base32z",alphabet:"ybndrfg8ejkmcpqxot1uwisza345h769",bitsPerChar:5})}),pa=Object.freeze({__proto__:null,base36:d7({prefix:"k",name:"base36",alphabet:"0123456789abcdefghijklmnopqrstuvwxyz"}),base36upper:d7({prefix:"K",name:"base36upper",alphabet:"0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ"})}),pl=Object.freeze({__proto__:null,base58btc:d7({name:"base58btc",prefix:"z",alphabet:"123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz"}),base58flickr:d7({name:"base58flickr",prefix:"Z",alphabet:"123456789abcdefghijkmnopqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"})}),pc=Object.freeze({__proto__:null,base64:pe({prefix:"m",name:"base64",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",bitsPerChar:6}),base64pad:pe({prefix:"M",name:"base64pad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",bitsPerChar:6}),base64url:pe({prefix:"u",name:"base64url",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",bitsPerChar:6}),base64urlpad:pe({prefix:"U",name:"base64urlpad",alphabet:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_=",bitsPerChar:6})});let ph=Array.from("🚀🪐☄🛰🌌🌑🌒🌓🌔🌕🌖🌗🌘🌍🌏🌎🐉☀💻🖥💾💿😂❤😍🤣😊🙏💕😭😘👍😅👏😁🔥🥰💔💖💙😢🤔😆🙄💪😉☺👌🤗💜😔😎😇🌹🤦🎉💞✌✨🤷😱😌🌸🙌😋💗💚😏💛🙂💓🤩😄😀🖤😃💯🙈ðŸ‘
24‡ðŸŽ¶ðŸ˜’🤭❣😜💋👀😪😑💥🙋😞😩😡🤪👊🥳😥🤤👉💃😳✋😚😝😴🌟😬🙃🍀🌷😻😓⭐✅🥺🌈😈🤘💦✔😣🏃💐☹🎊💘😠☝😕🌺🎂🌻😐🖕💝🙊😹🗣💫💀👑🎵🤞😛🔴😤🌼😫⚽🤙☕🏆🤫👈😮🙆🍻🍃🐶💁😲🌿🧡🎁⚡🌞🎈❌✊👋😰🤨😶🤝🚶💰🍓💢🤟🙁🚨💨🤬✈🎀🍺🤓😙💟🌱😖👶🥴▶➡❓💎💸⬇😨🌚🦋😷🕺⚠🙅😟😵👎🤲🤠🤧📌🔵💅🧐🐾🍒😗🤑🌊🤯🐷☎💧😯💆👆🎤🙇🍑❄🌴💣🐸💌📍🥀🤢👅💡💩👐📸👻🤐🤮🎼🥵🚩🍎🍊👼💍📣🥂"),pu=ph.reduce((e,t,r)=>(e[r]=t,e),[]),pf=ph.reduce((e,t,r)=>(e[t.codePointAt(0)]=r,e),[]);var pd=Object.freeze({__proto__:null,base256emoji:d9({prefix:"🚀",name:"base256emoji",encode:function(e){return e.reduce((e,t)=>e+=pu[t],"")},decode:function(e){let t=[];for(let r of e){let e=pf[r.codePointAt(0)];if(void 0===e)throw Error(`Non-base256emoji character: ${r}`);t.push(e)}return new Uint8Array(t)}})});function pp(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,pp.bytes=r-i+1,t}var pg=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 py=(e,t,r=0)=>(pp(e,t,r),t),pm=(e,t)=>{let r=t.byteLength,i=pg(e),s=i+pg(r),n=new Uint8Array(s+r);return py(e,n,0),py(r,n,i),n.set(t,s),new pb(e,r,t,n)};
24class pb{constructor(e,t,r,i){this.code=e,this.size=t,this.digest=r,this.bytes=i}}let pw=({name:e,code:t,encode:r})=>new pv(e,t,r);class pv{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?pm(this.code,t):t.then(e=>pm(this.code,e))}throw Error("Unknown type, must be binary type")}}let px=e=>async t=>new Uint8Array(await crypto.subtle.digest(e,t));var pE=Object.freeze({__proto__:null,sha256:pw({name:"sha2-256",code:18,encode:px("SHA-256")}),sha512:pw({name:"sha2-512",code:19,encode:px("SHA-512")})}),pI=Object.freeze({__proto__:null,identity:{code:0,name:"identity",encode:d2,digest:e=>pm(0,d2(e))}});new TextEncoder,new TextDecoder;let pS={...pt,...pr,...pi,...ps,...pn,...po,...pa,...pl,...pc,...pd};function pO(e){return null!=globalThis.Buffer?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):e}function pP(e,t,r,i){return{name:e,prefix:t,encoder:{name:e,prefix:t,encode:r},decoder:{decode:i}}}({...pE,...pI});let pA=pP("utf8","u",e=>"u"+new TextDecoder("utf8").decode(e),e=>new TextEncoder().encode(e.substring(1))),p_=pP("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?pO(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}),pC={utf8:pA,"utf-8":pA,hex:pS.base16,latin1:p_,ascii:p_,binary:p_,...pS};var pT=Object.defineProperty,pR=(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 pB{constructor(e,t){this.core=e,this.logger=t,pR(this,"keychain",new Map),pR(this,"name","keychain"),pR(this,"version","0.3"),pR(this,"initialized",!1),pR(this,"storagePrefix",dv),pR(this,"init",async()=>{if(!this.initialized){let e=await this.getKeyChain();"u">typeof e&&(this.keychain=e),this.initialized=!0}}),pR(this,"has",e=>(this.isInitialized(),this.keychain.has(e))),pR(this,"set",async(e,t)=>{this.isInitialized(),this.keychain.set(e,t),await this.persist()}),pR(this,"get",e=>{this.isInitialized();let t=this.keychain.get(e);if(typeof t>"u"){let{message:t}=az("NO_MATCHING_KEY",`${this.name}: ${e}`);throw Error(t)}return t}),pR(this,"del",async e=>{this.isInitialized(),this.keychain.delete(e),await this.persist()}),this.core=e,this.logger=(0,G.generateChildLogger)(t,this.name)}get context(){return(0,G.getLoggerContext)(this.logger)}get storageKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//"+this.name}async setKeyChain(e){await this.core.storage.setItem(this.storageKey,le(e))}async getKeyChain(){let e=await this.core.storage.getItem(this.storageKey);return"u">typeof e?lt(e):void 0}async persist(){await this.setKeyChain(this.keychain)}isInitialized(){if(!this.initialized){let{message:e}=az("NOT_INITIALIZED",this.name);throw Error(e)}}}var pU=Object.defineProperty,pN=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?pU(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class pk{constructor(e,t,r){this.core=e,this.logger=t,pN(this,"name","crypto"),pN(this,"keychain"),pN(this,"randomSessionIdentifier",u4()),pN(this,"initialized",!1),pN(this,"clientId"),pN(this,"init",async()=>{this.initialized||(await this.keychain.init(),this.initialized=!0)}),pN(this,"hasKeys",e=>(this.isInitialized(),this.keychain.has(e))),pN(this,"getClientId",async()=>{if(this.isInitialized(),this.clientId)return this.clientId;let e=rb(rv(await this.getClientSeed()).publicKey);return this.clientId=e,e}),pN(this,"generateKeyPair",()=>{let e,t;this.isInitialized();let r=(e=uk.utils.randomPrivateKey(),t=uk.getPublicKey(e),{privateKey:ak(e,u3),publicKey:ak(t,u3)});return this.setPrivateKey(r.publicKey,r.privateKey)}),pN(this,"signJWT",async e=>{this.isInitialized();let t=rv(await this.getClientSeed()),r=this.randomSessionIdentifier;return await rx(r,e,dI,t)}),pN(this,"generateSharedKey",(e,t,r)=>{var i,s,n;let o;this.isInitialized();let a=(i=this.getPrivateKey(e),ak((o=uk.getSharedSecret(aN(i,u3),aN(t,u3)),s=void 0,function(e,t,r,i=32){lL(e),lj(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=hk);let o=new Uint8Array(n*s),a=hU.create(e,t),l=a._cloneInto(),c=new Uint8Array(a.outputLen);for(let e=0;e<n;e++)hN[0]=e+1,l.update(0===e?hk:c).update(r).update(hN).digestInto(c),o.set(c,s*e),a._cloneInto(l);return a.destroy(),l.destroy(),lz(c,hN),o.slice(0,i)}(c_,(n=void 0,lL(c_),void 0===n&&(n=new Uint8Array(c_.outputLen)),hU(c_,l1(n),l1(o))),s,32)),u3));return this.setSymKey(a,r)}),pN(this,"setSymKey",async(e,t)=>{this.isInitialized();let r=t||u9(e);return await this.keychain.set(r,e),r}),pN(this,"deleteKeyPair",async e=>{this.isInitialized(),await this.keychain.del(e)}),pN(this,"deleteSymKey",async e=>{this.isInitialized(),await this.keychain.del(e)}),pN(this,"encode",async(e,t,r)=>{this.isInitialized();let i=fn(r),s=L(t);if(2===i.type){var n;let e,t,i;return n=r?.encoding,e=aN("2",u2),t=l6(12),i=fi({type:e,sealed:aN(s,u5),iv:t}),n===u6?ft(i):i}if(fo(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}`,u2));if(1===fe(r)&&typeof e.senderPublicKey>"u")throw Error("Missing sender public key for type 1 envelope");let i="u">typeof e.senderPublicKey?aN(e.senderPublicKey,u3):void 0,s="u">typeof e.iv?aN(e.iv,u3):l6(12),n=fi({type:r,sealed:hR(aN(e.symKey,u3),s).encrypt
24(aN(e.message,u5)),iv:s,senderPublicKey:i});return e.encoding===u6?ft(n):n}({type:a,symKey:o,message:s,senderPublicKey:l,encoding:r?.encoding})}),pN(this,"decode",async(e,t,r)=>{let i;this.isInitialized();let s=fn({type:fe((i=fs({encoded:t,encoding:r?.encoding})).type),senderPublicKey:"u">typeof i.senderPublicKey?ak(i.senderPublicKey,u3):void 0,receiverPublicKey:r?.receiverPublicKey});if(2===s.type)return D(function(e,t){let{sealed:r}=fs({encoded:e,encoding:t});return ak(r,u5)}(t,r?.encoding));if(fo(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,u3),{sealed:r,iv:i}=fs({encoded:e.encoded,encoding:e.encoding}),s=hR(t,i).decrypt(r);if(null===s)throw Error("Failed to decrypt");return ak(s,u5)}({symKey:i,encoded:t,encoding:r?.encoding});return D(s)}catch(t){this.logger.error(`Failed to decode message from topic: '${e}', clientId: '${await this.getClientId()}'`),this.logger.error(t)}}),pN(this,"getPayloadType",(e,t=u8)=>fe(fs({encoded:e,encoding:t}).type)),pN(this,"getPayloadSenderPublicKey",(e,t=u8)=>{let r=fs({encoded:e,encoding:t});return r.senderPublicKey?ak(r.senderPublicKey,u3):void 0}),this.core=e,this.logger=(0,G.generateChildLogger)(t,this.name),this.keychain=r||new pB(this.core,this.logger)}get context(){return(0,G.getLoggerContext)(this.logger)}async setPrivateKey(e,t){return await this.keychain.set(e,t),e}getPrivateKey(e){return this.keychain.get(e)}async getClientSeed(){let e="";try{e=this.keychain.get(dE)}catch{e=u4(),await this.keychain.set(dE,e)}return function(e,t="utf8"){let r=pC[t];if(!r)throw Error(`Unsupported encoding "${t}"`);return("utf8"===t||"utf-8"===t)&&null!=globalThis.Buffer&&null!=globalThis.Buffer.from?pO(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}=az("NOT_INITIALIZED",this.name);throw Error(e)}}}var pj=Object.defineProperty,pD=Object.defineProperties,pL=Object.getOwnPropertyDescriptors,p$=Object.getOwnPropertySymbols,pq=Object.prototype.hasOwnProperty,pM=Object.prototype.propertyIsEnumerable,pz=(e,t,r)=>t in e?pj(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,pF=(e,t,r)=>pz(e,"symbol"!=typeof t?t+"":t,r);class pV extends ee{constructor(e,t){super(e,t),this.logger=e,this.core=t,pF(this,"messages",new Map),pF(this,"messagesWithoutClientAck",new Map),pF(this,"name","messages"),pF(this,"version","0.3"),pF(this,"initialized",!1),pF(this,"storagePrefix",dv),pF(this,"init",async()=>{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}}}),pF(this,"set",async(e,t,r)=>{this.isInitialized();let i=u7(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===dD){let r=this.messagesWithoutClientAck.get(e)||{};this.messagesWithoutClientAck.set(e,pD(((e,t)=>{for(var r in t||(t={}))pq.call(t,r)&&pz(e,r,t[r]);if(p$)for(var r of p$(t))pM.call(t,r)&&pz(e,r,t[r]);return e})({},r),pL({[i]:t})))}return await this.persist(),i}),pF(this,"get",e=>{this.isInitialized();let t=this.messages.get(e);return typeof t>"u"&&(t={}),t}),pF(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}),pF(this,"has",(e,t)=>(this.isInitialized(),"u">typeof this.get(e)[u7(t)])),pF(this,"ack",async(e,t)=>{this.isInitialized();let r=this.messagesWithoutClientAck.get(e);if(typeof r>"u")return;let i=u7(t);delete r[i],0===Object.keys(r).length?this.messagesWithoutClientAck.delete(e):this.messagesWithoutClientAck.set(e,r),await this.persist()}),pF(this,"del",async e=>{this.isInitialized(),this.messages.delete(e),this.messagesWithoutClientAck.delete(e),await this.persist()}),this.logger=(0,G.generateChildLogger)(e,this.name),this.core=t}
24get context(){return(0,G.getLoggerContext)(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,le(e))}async setRelayerMessagesWithoutClientAck(e){await this.core.storage.setItem(this.storageKeyWithoutClientAck,le(e))}async getRelayerMessages(){let e=await this.core.storage.getItem(this.storageKey);return"u">typeof e?lt(e):void 0}async getRelayerMessagesWithoutClientAck(){let e=await this.core.storage.getItem(this.storageKeyWithoutClientAck);return"u">typeof e?lt(e):void 0}async persist(){await this.setRelayerMessages(this.messages),await this.setRelayerMessagesWithoutClientAck(this.messagesWithoutClientAck)}isInitialized(){if(!this.initialized){let{message:e}=az("NOT_INITIALIZED",this.name);throw Error(e)}}}var pK=Object.defineProperty,pH=Object.defineProperties,pW=Object.getOwnPropertyDescriptors,pG=Object.getOwnPropertySymbols,pY=Object.prototype.hasOwnProperty,pZ=Object.prototype.propertyIsEnumerable,pX=(e,t,r)=>t in e?pK(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,pJ=(e,t)=>{for(var r in t||(t={}))pY.call(t,r)&&pX(e,r,t[r]);if(pG)for(var r of pG(t))pZ.call(t,r)&&pX(e,r,t[r]);return e},pQ=(e,t,r)=>pX(e,"symbol"!=typeof t?t+"":t,r);class p0 extends et{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,pQ(this,"events",new y.EventEmitter),pQ(this,"name","publisher"),pQ(this,"queue",new Map),pQ(this,"publishTimeout",(0,b.toMiliseconds)(b.ONE_MINUTE)),pQ(this,"initialPublishTimeout",(0,b.toMiliseconds)(15*b.ONE_SECOND)),pQ(this,"needsTransportRestart",!1),pQ(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||dS,c=r?.prompt||!1,h=r?.tag||0,u=r?.id||dr().toString(),f=fl(fa().protocol),d={id:u,method:r?.publishMethod||f.publish,params:pJ({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{fD(null==(i=d.params)?void 0:i.prompt)&&(null==(s=d.params)||delete s.prompt),fD(null==(n=d.params)?void 0:n.tag)&&(null==(o=d.params)||delete o.tag);let a=new Promise(async e=>{let t=({id:r})=>{var i;(null==(i=d.id)?void 0:i.toString())===r.toString()&&(this.removeRequestFromQueue(r),this.relayer.events.removeListener(dC,t),e())};this.relayer.events.on(dC,t);let i=li(new Promise((e,t)=>{this.rpcPublish(d,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(dC,t)}catch(e){this.queue.set(u,{request:d,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 li(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)}}),pQ(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:f,ttl:d=b.FIVE_MINUTES}=a,p=a.id||dr().toString(),g=fl(fa().protocol),y=h||g.publish,m={id:p,method:y,params:pJ(pH(pJ({},o),pW({ttl:d,prompt:u,tag:f,attestation:l})),c)},w=`Failed to publish custom payload, please try again. id:${p} tag:${f}`;try{fD(null==(t=m.params)?void 0:t.prompt)&&(null==(r=m.params)||delete r.prompt),fD(null==(i=m.params)?void 0:i.tag)&&(null==(s=m.params)||delete s.tag);let e=new Promise(async e=>{let t=({id:r})=>{var i;(null==(i=m.id)?void 0:i.toString())===r.toString()&&(this.removeRequestFromQueue(r),this.relayer.events.removeListener(dC,t),e())};this.relayer.events.on(dC,t);let r=li(new Promise((e,t)=>
24{this.rpcPublish(m,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:${f}`);try{await r,this.events.removeListener(dC,t)}catch(e){this.queue.set(p,{request:m,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 li(e,this.publishTimeout,w)}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)}}),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)}),this.relayer=e,this.logger=(0,G.generateChildLogger)(t,this.name),this.registerEventListeners()}get context(){return(0,G.getLoggerContext)(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(dC,pJ(pJ({},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,pH(pJ({},e),pW({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(E,()=>{if(this.needsTransportRestart){this.needsTransportRestart=!1,this.relayer.events.emit(d_);return}this.checkQueue()}),this.relayer.on(dA,e=>{this.removeRequestFromQueue(e.id.toString())})}}var p1=Object.defineProperty,p2=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?p1(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class p3{constructor(){p2(this,"map",new Map),p2(this,"set",(e,t)=>{let r=this.get(e);this.exists(e,t)||this.map.set(e,[...r,t])}),p2(this,"get",e=>this.map.get(e)||[]),p2(this,"exists",(e,t)=>this.get(e).includes(t)),p2(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)}),p2(this,"clear",()=>{this.map.clear()})}get topics(){return Array.from(this.map.keys())}}var p8=Object.defineProperty,p6=Object.defineProperties,p5=Object.getOwnPropertyDescriptors,p4=Object.getOwnPropertySymbols,p9=Object.prototype.hasOwnProperty,p7=Object.prototype.propertyIsEnumerable,ge=(e,t,r)=>t in e?p8(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,gt=(e,t)=>{for(var r in t||(t={}))p9.call(t,r)&&ge(e,r,t[r]);if(p4)for(var r of p4(t))p7.call(t,r)&&ge(e,r,t[r]);return e},gr=(e,t,r)=>ge(e,"symbol"!=typeof t?t+"":t,r);class gi extends es{constructor(e,t){super(e,t),this.relayer=e,this.logger=t,gr(this,"subscriptions",new Map),gr(this,"topicMap",new p3),gr(this,"events",new y.EventEmitter),gr(this,"name","subscription"),gr(this,"version","0.3"),gr(this,"pending",new Map),gr(this,"cached",[]),gr(this,"initialized",!1),gr(this,"storagePrefix",dv),gr(this,"subscribeTimeout",(0,b.toMiliseconds)(b.ONE_MINUTE)),gr(this,"initialSubscribeTimeout",(0,b.toMiliseconds)(15*b.ONE_SECOND)),gr(this,"clientId"),gr(this,"batchSubscribeTopicsLimit",500),gr(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),this.registerEventListeners(),await this.restore()),this.initialized=!0}),gr(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=fa(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}}),gr(this,"unsubscribe",async(e,t)=>{this.isInitialized(),"u">typeof t?.id?await this.unsubscribeById(e,t.id,t):await this.unsubscribeByTopic(e,t)}),gr(this,"isSubscribed",e=>new Promise(t=>{t(this.topicMap.topics.includes(e))})),gr(this,"isKnownTopic",e=>new Promise(t=>{t(this.topicMap.topics.includes(e)||this.pending.has(e)||this.cached.some(t=>t.topic===e))})),gr(this,"on",(e,t)=>{this.events.on(e,t)}),gr(this,"once",(e,t)=>{this.events.once(e,t)}),gr(this,"off",(e,t)=>{this.events.off(e,t)}),gr(this,"removeListener",(e,t)=>{this.events.removeListener(e,t)}),gr(this,"start",async()=>{await this.onConnect()}),gr(this,"stop",async()=>{await this.onDisconnect()}),gr(this,"restart",async()=>
24{await this.restore(),await this.onRestart()}),gr(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)}),gr(this,"registerEventListeners",()=>{this.relayer.core.heartbeat.on(E,async()=>{await this.checkPending()}),this.events.on(d$,async e=>{this.logger.info(`Emitting ${d$}`),this.logger.debug({type:"event",event:d$,data:e}),await this.persist()}),this.events.on(dq,async e=>{this.logger.info(`Emitting ${dq}`),this.logger.debug({type:"event",event:dq,data:e}),await this.persist()})}),this.relayer=e,this.logger=(0,G.generateChildLogger)(t,this.name),this.clientId=""}get context(){return(0,G.getLoggerContext)(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=fa(r);await this.restartToComplete({topic:e,id:t,relay:i}),await this.rpcUnsubscribe(e,t,i);let s=aF("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!==dj||await this.restartToComplete({topic:e,id:e,relay:t});let o={method:fl(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===dk)return setTimeout(()=>{(this.relayer.connected||this.relayer.connecting)&&this.relayer.request(o).catch(e=>this.logger.warn(e))},(0,b.toMiliseconds)(b.ONE_SECOND)),n;let t=new Promise(async t=>{let r=i=>{i.topic===e&&(this.events.removeListener(d$,r),t(i.id))};this.events.on(d$,r);try{let i=await li(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(d$,r),t(i)}catch{}}),i=await li(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(d_),a)throw e}return null}async rpcBatchSubscribe(e){if(!e.length)return!0;let t={method:fl(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 li(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(d_),!1}}async rpcBatchFetchMessages(e){let t;if(!e.length)return;let r={method:fl(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 li(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(d_)}return t}rpcUnsubscribe(e,t,r){let i={method:fl(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,p6(gt({},t),p5({id:e}))),this.pending.delete(t.topic)}onBatchSubscribe(e){e.length&&e.forEach(e=>{this.setSubscription(e.id,gt({},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,gt({},t)),this.topicMap.set(t.topic,e),this.events.emit(d$,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}=az("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(dq,p6(gt({},r),p5({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}=az("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=>p6(gt({},e),p5({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,b.toMiliseconds)(b.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}=az("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 u7(e+await this.getClientId())}}var gs=Object.defineProperty,gn=Object.getOwnPropertySymbols,go=Object.prototype.hasOwnProperty,ga=Object.prototype.propertyIsEnumerable,gl=(e,t,r)=>t in e?gs(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,gc=(e,t)=>{for(var r in t||(t={}))go.call(t,r)&&gl(e,r,t[r]);if(gn)for(var r of gn(t))ga.call(t,r)&&gl(e,r,t[r]);return e},gh=(e,t,r)=>gl(e,"symbol"!=typeof t?t+"":t,r);class gu extends er{constructor(t){var r;super(t),gh(this,"protocol","wc"),gh(this,"version",2),gh(this,"core"),gh(this,"logger"),gh(this,"events",new y.EventEmitter),gh(this,"provider"),gh(this,"messages"),gh(this,"subscriber"),gh(this,"publisher"),gh(this,"name","relayer"),gh(this,"transportExplicitlyClosed",!1),gh(this,"initialized",!1),gh(this,"connectionAttemptInProgress",!1),gh(this,"relayUrl"),gh(this,"projectId"),gh(this,"packageName"),gh(this,"bundleId"),gh(this,"hasExperiencedNetworkDisruption",!1),gh(this,"pingTimeout"),gh(this,"heartBeatTimeout",(0,b.toMiliseconds)(b.THIRTY_SECONDS+b.FIVE_SECONDS)),gh(this,"reconnectTimeout"),gh(this,"connectPromise"),gh(this,"reconnectInProgress",!1),gh(this,"requestsInFlight",[]),gh(this,"connectTimeout",(0,b.toMiliseconds)(15*b.ONE_SECOND)),gh(this,"stalledRestartInProgress",!1),gh(this,"stalledRestartTimeout"),gh(this,"stalledRestartBackoff",0),gh(this,"stalledRestartBaseInterval",(0,b.toMiliseconds)(2*b.ONE_SECOND)),gh(this,"stalledRestartMaxInterval",(0,b.toMiliseconds)(b.THIRTY_SECONDS)),gh(this,"request",async e=>{var t,r;this.logger.debug("Publishing Request Payload");let i=e.id||dr().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}}),gh(this,"resetPingTimeout",()=>{a2()&&(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))}),gh(this,"onPayloadHandler",e=>{this.onProviderPayload(e),this.resetPingTimeout()}),gh(this,"onConnectHandler",()=>{this.logger.warn({},"Relayer connected 🛜"),this.startPingTimeout(),this.events.emit("relayer_connect")}),gh(this,"onDisconnectHandler",()=>{this.logger.warn({},"Relayer disconnected 🛑"),this.requestsInFlight=[],this.onProviderDisconnect()}),gh(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))}),gh(this,"registerProviderListeners",()=>{this.provider.on(dT,this.onPayloadHandler),this.provider.on(dR,this.onConnectHandler),this.provider.on(dB,this.onDisconnectHandler),this.provider.on(dU,this.onProviderErrorHandler)}),this.core=t.core,this.logger=f0({logger:null!=(r=t.logger)?r:"error",name:this.name}),this.messages=new pV(this.logger,t.core),this.subscriber=new gi(this,this.logger),this.publisher=new p0(this,this.logger),this.projectId=t?.projectId,this.relayUrl=t?.relayUrl||dO,a3()&&"u">typeof(null==e.g?void 0:e.g.Platform)&&(null==e.g?void 0:e.g.Platform.OS)==="android"?this.packageName=a5():a3()&&"u">typeof(null==e.g?void 0:e.g.Platform)&&(null==e.g?void 0:e.g.Platform.OS)==="ios"&&(this.bundleId=a5()),this.provider={}}
24async 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(0,G.getLoggerContext)(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:dj},"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(d$,l),a())};return await Promise.all([new Promise(e=>{a=e,this.subscriber.on(d$,l)}),new Promise(async(r,i)=>{o=await this.subscriber.subscribe(e,gc({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 li(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 fY())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=lo(b.FIVE_MINUTES);await this.core.pairing.pairings.set(r,{topic:r,expiry:e,relay:{protocol:"irn"},active:!1})}this.events.emit(dP,e),await this.recordMessageEvent(e,dD)}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(dB,r),await li(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(dB,r),clearTimeout(this.reconnectTimeout)}),await new Promise(async(e,r)=>{let i=()=>{t(Error("Connection interrupted while trying to subscribe"))};this.provider.once(dB,i),await this.subscriber.start().then(e).catch(r).finally(()=>{this.provider.off(dB,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,b.toMiliseconds)(+t))),t++}}startPingTimeout(){var e,t,r,i,s;if(a2())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 df(new db(function({protocol:e,version:t,relayUrl:r,sdkVersion:i,auth:s,projectId:n,useOnCloseEvent:o,bundleId:a,packageName:l}){var c,h;let u,f=r.split("?"),d=a9(e,t,i),p=(c=f[1]||"",h={auth:s,ua:d,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 f[0]+"?"+p}({sdkVersion:dN,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}),dl(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:dj,attestation:n};this.logger.debug("Emitting Relayer Payload"),this.logger.trace(gc({type:"event",event:t.id},o)),this.events.emit(t.id,o),await this.acknowledgePayload(e),await this.onMessageEvent(o)}else dc(e)&&this.events.emit(dA,e)}async onMessageEvent(e){await this.shouldIgnoreMessageEvent(e)||(await this.recordMessageEvent(e,dD),this.events.emit(dP,e))}async acknowledgePayload(e){let t=ds(e.id,!0);await this.provider.connection.send(t)}unregisterProviderListeners(){this.provider.off(dT,this.onPayloadHandler),this.provider.off(dR,this.onConnectHandler),this.provider.off(dB,this.onDisconnectHandler),this.provider.off(dU,this.onProviderErrorHandler),clearTimeout(this.pingTimeout)}async registerEventListeners(){let t=await fY();(function(t){var r,i;switch(a6()){case a1:r=t,!a3()&&a8()&&(window.addEventListener("online",()=>r(!0)),window.addEventListener("offline",()=>r(!1)));break;case aQ:i=t,a3()&&null!=e.g&&e.g.NetInfo&&e.g?.NetInfo.addEventListener(e=>i(e?.isConnected))}})(async e=>{t!==e&&(t=e,e?await this.transportOpen().catch(e=>this.logger.error(e,e?.message)):(this.hasExperiencedNetworkDisruption=!0,await this.transportDisconnect(),this.transportExplicitlyClosed=!1))}),this.core.heartbeat.on(E,async()=>{var e;if(!this.transportExplicitlyClosed&&!this.connected&&(!(a8()&&(0,rR.getDocument)())||
24(null==(e=(0,rR.getDocument)())?void 0:e.visibilityState)==="visible"))try{await this.confirmOnlineStateOrThrow(),await this.transportOpen()}catch(e){this.logger.warn(e,e?.message)}}),this.events.on(d_,()=>{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,b.toMiliseconds)(.1)))))}isInitialized(){if(!this.initialized){let{message:e}=az("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 gf(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}function gd(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}let gp="[object Arguments]",gg="[object Object]";function gy(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 gm(){}var gb=Object.defineProperty,gw=Object.getOwnPropertySymbols,gv=Object.prototype.hasOwnProperty,gx=Object.prototype.propertyIsEnumerable,gE=(e,t,r)=>t in e?gb(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,gI=(e,t)=>{for(var r in t||(t={}))gv.call(t,r)&&gE(e,r,t[r]);if(gw)for(var r of gw(t))gx.call(t,r)&&gE(e,r,t[r]);return e},gS=(e,t,r)=>gE(e,"symbol"!=typeof t?t+"":t,r);class gO extends ei{constructor(e,t,r,i=dv,s){super(e,t,r,i),this.core=e,this.logger=t,this.name=r,gS(this,"map",new Map),gS(this,"version","0.3"),gS(this,"cached",[]),gS(this,"initialized",!1),gS(this,"getKey"),gS(this,"storagePrefix",dv),gS(this,"recentlyDeleted",[]),gS(this,"recentlyDeletedLimit",200),gS(this,"init",async()=>{this.initialized||(this.logger.trace("Initialized"),await this.restore(),this.cached.forEach(e=>{var t;this.getKey&&null!==e&&!fD(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)}),gS(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())}),gS(this,"get",e=>(this.isInitialized(),this.logger.debug("Getting value"),this.logger.trace({type:"method",method:"get",key:e}),this.getData(e))),gS(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=gd(r),a=gd(i);if(o===gp&&(o=gg),a===gp&&(a=gg),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 g.Buffer&&g.Buffer.isBuffer(r)!==g.Buffer.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 gg:{if(!(t(r.constructor,i.constructor,s,n)||gy(r)&&gy(i)))return!1;let o=[...Object.keys(r),...gf(r)],a=[...Object.keys(i),...gf(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,gm)})):this.values)),gS(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=gI(gI({},this.getData(e)),t);this.map.set(e,r),await this.persist()}),gS(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=(0,G.generateChildLogger)(t,this.name),this.storagePrefix=i,this.getKey=s}get context(){return(0,G.getLoggerContext)(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}=az("MISSING_OR_INVALID",`Record was recently deleted - ${this.name}: ${e}`);throw this.logger.error(t),Error(t)}let{message:t}=az("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}=az("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}=az("NOT_INITIALIZED",this.name);throw Error(e)}}}var gP=Object.defineProperty,gA=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?gP(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class g_{constructor(e,t){this.core=e,this.logger=t,gA(this,"name","pairing"),gA(this,"version","0.3"),gA(this,"events",new y.default),gA(this,"pairings"),gA(this,"initialized",!1),gA(this,"storagePrefix",dv),gA(this,"ignoredPayloadTypes",[1]),gA(this,"registeredMethods",[]),gA(this,"init",async()=>{this.initialized||(await this.pairings.init(),await this.cleanup(),this.registerRelayerEvents(),this.registerExpirerEvents(),this.initialized=!0,this.logger.trace("Initialized"))}),gA(this,"register",({methods:e})=>{this.isInitialized(),this.registeredMethods=[...new Set([...this.registeredMethods,...e])]}),gA(this,"create",async e=>{this.isInitialized();let t=u4(),r=await this.core.crypto.setSymKey(t),i=lo(b.FIVE_MINUTES),s={protocol:"irn"},n={topic:r,expiry:i,relay:s,active:!1,methods:e?.methods},o=fb({protocol:this.core.protocol,version:this.core.version,topic:r,symKey:t,relay:s,expiryTimestamp:i,methods:e?.methods});return this.events.emit(dz,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}}),gA(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}=fm(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||lo(b.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(dz,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}
24),gA(this,"activate",async({topic:e})=>{this.isInitialized();let t=lo(b.FIVE_MINUTES);this.core.expirer.set(e,t),await this.pairings.update(e,{active:!0,expiry:t})}),gA(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}=lr();this.events.once(ll("pairing_ping",e),({error:e})=>{e?s(e):i()}),await r()}}),gA(this,"updateExpiry",async({topic:e,expiry:t})=>{this.isInitialized(),await this.pairings.update(e,{expiry:t})}),gA(this,"updateMetadata",async({topic:e,metadata:t})=>{this.isInitialized(),await this.pairings.update(e,{peerMetadata:t})}),gA(this,"getPairings",()=>(this.isInitialized(),this.pairings.values)),gA(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",aF("USER_DISCONNECTED")),await this.deletePairing(t))}),gA(this,"formatUriFromPairing",e=>{this.isInitialized();let{topic:t,relay:r,expiry:i,methods:s}=e,n=this.core.crypto.keychain.get(t);return fb({protocol:this.core.protocol,version:this.core.version,topic:t,symKey:n,relay:r,expiryTimestamp:i,methods:s})}),gA(this,"sendRequest",async(e,t,r)=>{let i=di(t,r),s=await this.core.crypto.encode(e,i),n=dM[t].req;return this.core.history.set(e,i),this.core.relayer.publish(e,s,n),i.id}),gA(this,"sendResult",async(e,t,r)=>{let i=ds(e,r),s=await this.core.crypto.encode(t,i),n=dM[(await this.core.history.get(t,e)).request.method].res;await this.core.relayer.publish(t,s,n),await this.core.history.resolve(i)}),gA(this,"sendError",async(e,t,r)=>{let i=dn(e,r),s=await this.core.crypto.encode(t,i),n=(await this.core.history.get(t,e)).request.method,o=dM[n]?dM[n].res:dM.unregistered_method.res;await this.core.relayer.publish(t,s,o),await this.core.history.resolve(i)}),gA(this,"deletePairing",async(e,t)=>{await this.core.relayer.unsubscribe(e),await Promise.all([this.pairings.delete(e,aF("USER_DISCONNECTED")),this.core.crypto.deleteSymKey(e),t?Promise.resolve():this.core.expirer.del(e)])}),gA(this,"cleanup",async()=>{let e=this.pairings.getAll().filter(e=>la(e.expiry));await Promise.all(e.map(e=>this.deletePairing(e.topic)))}),gA(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)}}),gA(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)}),gA(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)}}),gA(this,"onPairingPingResponse",(e,t)=>{let{id:r}=t;setTimeout(()=>{dh(t)?this.events.emit(ll("pairing_ping",r),{}):du(t)&&this.events.emit(ll("pairing_ping",r),{error:t.error})},500)}),gA(this,"onPairingDeleteRequest",async(e,t)=>{let{id:r}=t;try{this.isValidDisconnect({topic:e}),await this.deletePairing(e),this.events.emit(dF,{id:r,topic:e})}catch(t){await this.sendError(r,e,t),this.logger.error(t)}}),gA(this,"onUnknownRpcMethodRequest",async(e,t)=>{let{id:r,method:i}=t;try{if(this.registeredMethods.includes(i))return;let t=aF("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)}}),gA(this,"onUnknownRpcMethodResponse",e=>{this.registeredMethods.includes(e)||this.logger.error(aF("WC_METHOD_UNSUPPORTED",e))}),gA(this,"isValidPair",(e,t)=>{var r;if(!fK(e)){let{message:r}=az("MISSING_OR_INVALID",`pair() params: ${e}`);throw t.setError(dQ),Error(r)}if(!function(e){function t(e){try{return"u">typeof new URL(e)}catch{return!1}}try{if(fL(e,!1)){if(t(e))return!0;let r=lg(e);return t(r)}}catch{}return!1}(e.uri)){let{message:r}=az("MISSING_OR_INVALID",`pair() uri: ${e.uri}`);throw t.setError(dQ),Error(r)}let i=fm(e?.uri);if(!(null!=(r=i?.relay)&&r.protocol)){let{message:e}=az("MISSING_OR_INVALID","pair() uri#relay-protocol");throw t.setError(dQ),Error(e)}if(!(null!=i&&i.symKey)){let{message:e}=az("MISSING_OR_INVALID","pair() uri#symKey");throw t.setError(dQ),Error(e)}if(null!=i&&i.expiryTimestamp&&(0,b.toMiliseconds)(i?.expiryTimestamp)<Date.now()){t.setError("pairing_expired");let{message:e}=az("EXPIRED","pair() URI has expired. Please try again with a new connection URI.");throw Error(e)}}),gA(this,"isValidPing",async e=>{if(!fK(e)){let{message:t}=az("MISSING_OR_INVALID",`ping() params: ${e}`);throw Error(t)}let{topic:t}=e;await this.isValidPairingTopic(t)}),gA(this,"isValidDisconnect",async e=>{if(!fK(e)){let{message:t}=az("MISSING_OR_INVALID",`disconnect() params: ${e}`);throw Error(t)}let{topic:t}=e;await this.isValidPairingTopic(t)}),gA(this,"isValidPairingTopic",async e=>{if(!fL(e,!1)){let{message:t}=az("MISSING_OR_INVALID",`pairing topic should be a string: ${e}`);throw Error(t)}if(!this.pairings.keys.includes(e)){let{message:t}=az("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw Error(t)}if(la(this.pairings.get(e).expiry)){await this.deletePairing(e);let{message:t}=az("EXPIRED",`pairing topic: ${e}`);throw Error(t)}}),this.core=e,this.logger=(0,G.generateChildLogger)(t,this.name),this.pairings=new gO(this.core,this.logger,this.name,this.storagePrefix)}get context(){return(0,G.getLoggerContext)(this.logger)}isInitialized(){if(!this.initialized){let{message:e}=az("NOT_INITIALIZED",this.name);throw Error(e)}}registerRelayerEvents(){this.core.relayer.on(dP,async e=>{let{topic:t,message:r,transportType:i}=e;if(this.pairings.keys.includes(t)&&i!==dk&&!this.ignoredPayloadTypes.includes(this.core.crypto.getPayloadType(r)))try{let e=await this.core.crypto.decode(t,r);dl(e)?(this.core.history.set(t,e),await this.onRelayEventRequest({topic:t,payload:e})):dc(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(dY,async e=>{let{topic:t}=ln(e.target);t&&this.pairings.keys.includes(t)&&(await this.deletePairing(t,!0),this.events.emit("pairing_expire",{topic:t}))})}}var gC=Object.defineProperty,gT=(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 gR extends Q{constructor(e,t){super(e,t),this.core=e,this.logger=t,gT(this,"records",new Map),gT(this,"events",new y.EventEmitter),gT(this,"name","history"),gT(this,"version","0.3"),gT(this,"cac
24hed",[]),gT(this,"initialized",!1),gT(this,"storagePrefix",dv),gT(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)}),gT(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:lo(b.THIRTY_DAYS)};this.records.set(i.id,i),this.persist(),this.events.emit(dV,i)}),gT(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=du(e)?{error:e.error}:{result:e.result},this.records.set(t.id,t),this.persist(),this.events.emit(dK,t))}),gT(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))),gT(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(dH,r)))}),this.persist()}),gT(this,"exists",async(e,t)=>(this.isInitialized(),!!this.records.has(t)&&(await this.getRecord(t)).topic===e)),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)}),this.logger=(0,G.generateChildLogger)(t,this.name)}get context(){return(0,G.getLoggerContext)(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:di(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}=az("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}=az("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(dV,e=>{this.logger.info(`Emitting ${dV}`),this.logger.debug({type:"event",event:dV,record:e})}),this.events.on(dK,e=>{this.logger.info(`Emitting ${dK}`),this.logger.debug({type:"event",event:dK,record:e})}),this.events.on(dH,e=>{this.logger.info(`Emitting ${dH}`),this.logger.debug({type:"event",event:dH,record:e})}),this.core.heartbeat.on(E,()=>{this.cleanup()})}cleanup(){try{this.isInitialized();let e=!1;this.records.forEach(t=>{(0,b.toMiliseconds)(t.expiry||0)-Date.now()<=0&&(this.logger.info(`Deleting expired history log: ${t.id}`),this.records.delete(t.id),this.events.emit(dH,t,!1),e=!0)}),e&&this.persist()}catch(e){this.logger.warn(e)}}isInitialized(){if(!this.initialized){let{message:e}=az("NOT_INITIALIZED",this.name);throw Error(e)}}}var gB=Object.defineProperty,gU=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?gB(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class gN extends en{constructor(e,t){super(e,t),this.core=e,this.logger=t,gU(this,"expirations",new Map),gU(this,"events",new y.EventEmitter),gU(this,"name","expirer"),g
24U(this,"version","0.3"),gU(this,"cached",[]),gU(this,"initialized",!1),gU(this,"storagePrefix",dv),gU(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)}),gU(this,"has",e=>{try{let t=this.formatTarget(e);return"u">typeof this.getExpiration(t)}catch{return!1}}),gU(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(dW,{target:r,expiration:i})}),gU(this,"get",e=>{this.isInitialized();let t=this.formatTarget(e);return this.getExpiration(t)}),gU(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(dG,{target:t,expiration:r})}}),gU(this,"on",(e,t)=>{this.events.on(e,t)}),gU(this,"once",(e,t)=>{this.events.once(e,t)}),gU(this,"off",(e,t)=>{this.events.off(e,t)}),gU(this,"removeListener",(e,t)=>{this.events.removeListener(e,t)}),this.logger=(0,G.generateChildLogger)(t,this.name)}get context(){return(0,G.getLoggerContext)(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 ls("topic",e);if("number"==typeof e)return ls("id",e);let{message:t}=az("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}=az("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}=az("NO_MATCHING_KEY",`${this.name}: ${e}`);throw this.logger.warn(t),Error(t)}return t}checkExpiry(e,t){let{expiry:r}=t;(0,b.toMiliseconds)(r)-Date.now()<=0&&this.expire(e,t)}expire(e,t){this.expirations.delete(e),this.events.emit(dY,{target:e,expiration:t})}checkExpirations(){this.core.relayer.connected&&this.expirations.forEach((e,t)=>this.checkExpiry(t,e))}registerEventListeners(){this.core.heartbeat.on(E,()=>this.checkExpirations()),this.events.on(dW,e=>{this.logger.info(`Emitting ${dW}`),this.logger.debug({type:"event",event:dW,data:e}),this.persist()}),this.events.on(dY,e=>{this.logger.info(`Emitting ${dY}`),this.logger.debug({type:"event",event:dY,data:e}),this.persist()}),this.events.on(dG,e=>{this.logger.info(`Emitting ${dG}`),this.logger.debug({type:"event",event:dG,data:e}),this.persist()})}isInitialized(){if(!this.initialized){let{message:e}=az("NOT_INITIALIZED",this.name);throw Error(e)}}}var gk=Object.defineProperty,gj=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?gk(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class gD extends eo{constructor(e,t,r){super(e,t,r),this.core=e,this.logger=t,this.store=r,gj(this,"name","verify-api"),gj(this,"abortController"),gj(this,"isDevEnv"),gj(this,"verifyUrlV3",dX),gj(this,"storagePrefix",dv),gj(this,"version",2),gj(this,"publicKey"),gj(this,"fetchPromise"),gj(this,"init",async()=>{var e;this.isDevEnv||(this.publicKey=await this.store.getItem(this.storeKey),this.publicKey&&(0,b.toMiliseconds)(null==(e=this.publicKey)?void 0:e.expiresAt)<Date.now()&&(this.logger.debug("verify v2 public key expired"),await this.removePublicKey()))}),gj(this,"register",async e=>{if(!a8()||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,rR.getDocument)(),t=this.startAbortTimer(5*b.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(rw(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""}),gj(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(rw(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)}),gj(this,"fetchAttestation",async(e,t)=>{this.logger.debug(`resolving attestation: ${e} from url: ${t}`);let r=this.startAbortTimer(5*b.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}),gj(this,"getVerifyUrl",e=>{let t=e||dZ;return dJ.includes(t)||(this.logger.info(`verify url: ${t}, not included in trusted list, assigning default: ${dZ}`),t=dZ),t}),gj(this,"fetchPublicKey",async()=>{try{this.logger.debug(`fetching public key from: ${this.verifyUrlV3}`);let e=this.startAbortTimer(b.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)}}),gj(this,"persistPublicKey",async e=>{this.logger.debug(e,"persisting public key to local storage"),await this.store.setItem(this.storeKey,e),this.publicKey=e}),gj(this,"removePublicKey",async()=>{this.logger.debug("removing verify v2 public key from storage"),await this.store.removeItem(this.storeKey),this.publicKey=void 0}),gj(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")}}),gj(this,"getPublicKey",async()=>this.publicKey?this.publicKey:await this.fetchAndPersistPublicKey()),gj(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}),gj(this,"validateAttestation",(e,t)=>{let r=function(e,t){let r,i,[s,n,o]=e.split("."),a=g.Buffer.from(fr(o),"base64");if(64!==a.length)throw Error("Invalid signature length");let l=a.slice(0,32),c=a.slice(32,64),h=c_(`${s}.${n}`),u=(r=g.Buffer.from(t.x,"base64"),i=g.Buffer.from(t.y,"base64"),ou([new Uint8Array([4]),r,i]));if(!u1.verify(ou([l,c]),h,u))throw Error("Invalid signature");return rw(e).payload}(e,t.publicKey),i={hasExpired:(0,b.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=(0,G.generateChildLogger)(t,this.name),this.abortController=new AbortController,this.isDevEnv=lp(),this.init()}get storeKey(){return this.storagePrefix+this.version+this.core.customStoragePrefix+"//verify:public:key"}get context(){return(0,G.getLoggerContext)(this.logger)}startAbortTimer(e){return this.abortController=new AbortController,setTimeout(()=>this.abortController.abort(),(0,b.toMiliseconds)(e))}}var gL=Object.defineProperty,g$=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?gL(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class gq extends ea{constructor(e,t){super(e,t),this.projectId=e,this.logger=t,g$(this,"context","echo"),g$(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=(0,G.generateChildLogger)(t,this.context)}}var gM=Object.defineProperty,gz=Object.getOwnPropertySymbols,gF=Object.prototype.hasOwnProperty,gV=Object.prototype.propertyIsEnumerable,gK=(e,t,r)=>t in e?gM(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,gH=(e,t)=>{for(var r in t||(t={}))gF.call(t,r)&&gK(e,r,t[r]);
24if(gz)for(var r of gz(t))gV.call(t,r)&&gK(e,r,t[r]);return e},gW=(e,t,r)=>gK(e,"symbol"!=typeof t?t+"":t,r);class gG extends el{constructor(e,t,r=!0){super(e,t,r),this.core=e,this.logger=t,gW(this,"context","event-client"),gW(this,"storagePrefix",dv),gW(this,"storageVersion",.1),gW(this,"events",new Map),gW(this,"shouldPersist",!1),gW(this,"init",async()=>{if(!lp())try{let e={eventId:ld(),timestamp:Date.now(),domain:this.getAppDomain(),props:{event:"INIT",type:"",properties:{client_id:await this.core.crypto.getClientId(),user_agent:a9(this.core.relayer.protocol,this.core.relayer.version,dN)}}};await this.sendEvent([e])}catch(e){this.logger.warn(e)}}),gW(this,"createEvent",e=>{let{event:t="ERROR",type:r="",properties:{topic:i,trace:s}}=e,n=ld(),o=this.core.projectId||"",a=gH({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}),gW(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 gH(gH({},i),this.setMethods(i.eventId))}),gW(this,"deleteEvent",e=>{let{eventId:t}=e;this.events.delete(t),this.shouldPersist=!0}),gW(this,"setEventListeners",()=>{this.core.heartbeat.on(E,async()=>{this.shouldPersist&&await this.persist(),this.events.forEach(e=>{(0,b.fromMiliseconds)(Date.now())-(0,b.fromMiliseconds)(e.timestamp)>86400&&(this.events.delete(e.eventId),this.shouldPersist=!0)})})}),gW(this,"setMethods",e=>({addTrace:t=>this.addTrace(e,t),setError:t=>this.setError(e,t)})),gW(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)}),gW(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)}),gW(this,"persist",async()=>{await this.core.storage.setItem(this.storageKey,Array.from(this.events.values())),this.shouldPersist=!1}),gW(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,gH(gH({},e),this.setMethods(e.eventId)))})}catch(e){this.logger.warn(e)}}),gW(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)}}),gW(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-${dN}${t}`,{method:"POST",body:JSON.stringify(e)})}),gW(this,"getAppDomain",()=>a4().url),this.logger=(0,G.generateChildLogger)(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 gY=Object.defineProperty,gZ=Object.getOwnPropertySymbols,gX=Object.prototype.hasOwnProperty,gJ=Object.prototype.propertyIsEnumerable,gQ=(e,t,r)=>t in e?gY(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,g0=(e,t)=>{for(var r in t||(t={}))gX.call(t,r)&&gQ(e,r,t[r]);if(gZ)for(var r of gZ(t))gJ.call(t,r)&&gQ(e,r,t[r]);return e},g1=(e,t,r)=>gQ(e,"symbol"!=typeof t?t+"":t,r);class g2 extends X{constructor(e){var t;super(e),g1(this,"protocol","wc"),g1(this,"version",2),g1(this,"name",dw),g1(this,"relayUrl"),g1(this,"projectId"),g1(this,"customStoragePrefix"),g1(this,"events",new y.EventEmitter),g1(this,"logger"),g1(this,"heartbeat"),g1(this,"relayer"),g1(this,"crypto"),g1(this,"storage"),g1(this,"history"),g1(this,"expirer"),g1(this,"pairing"),g1(this,"verify"),g1(this,"echoClient"),g1(this,"linkModeSupportedApps"),g1(this,"eventClient"),g1(this,"initialized",!1),g1(this,"logChunkController"),g1(this,"on",(e,t)=>this.events.on(e,t)),g1(this,"once",(e,t)=>this.events.once(e,t)),g1(this,"off",(e,t)=>this.events.off(e,t)),g1(this,"removeListener",(e,t)=>this.events.removeListener(e,t)),g1(this,"dispatchEnvelope",({topic:e,message:t,sessionExists:r})=>{if(!e||!t)return;let i={topic:e,message:t,publishedAt:Date.now(),transportType:dk};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||dO,this.customStoragePrefix=null!=e&&e.customStoragePrefix?`:${e.customStoragePrefix}`:"";const i=(0,G.getDefaultLoggerOptions)({level:"string"==typeof e?.logger&&e.logger?e.logger:"error",name:dw}),{logger:s,chunkLoggerController:n}=(0,G.generatePlatformLogger)({opts:i,maxSizeInBytes:e?.maxLogBlobSizeInBytes,loggerOverride:e?.logger});this.logChunkController=n,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=(0,G.generateChildLogger)(s,this.name),this.heartbeat=new I,this.crypto=new pk(this,this.logger,e?.keychain),this.history=new gR(this,this.logger),this.expirer=new gN(this,this.logger),this.storage=null!=e&&e.storage?e.storage:new W(g0(g0({},dx),e?.storageOptions)),this.relayer=new gu({core:this,logger:this.logger,relayUrl:this.relayUrl,projectId:this.projectId}),this.pairing=new g_(this,this.logger),this.verify=new gD(this,this.logger,this.storage),this.echoClient=new gq(this.projectId||"",this.logger),this.linkModeSupportedApps=[],this.eventClient=new gG(this,this.logger,e?.telemetryEnabled),this.setGlobalCore(this)}static async init(e){let t=new g2(e);await t.initialize();let r=await t.crypto.getClientId();return await t.storage.setItem("WALLETCONNECT_CLIENT_ID",r),t}get context(){return(0,G.getLoggerContext)(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(dL,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(dL)||[],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 m.default&&"true"===m.default.env.DISABLE_GLOBAL_CORE}catch{return!0}}}let g3="client",g8=`wc@2:${g3}:`,g6="WALLETCONNECT_DEEPLINK_CHOICE",g5=(b.THIRTY_DAYS,"Proposal expired"),g4=b.SEVEN_DAYS,g9={wc_sessionPropose:{req:{ttl:b.FIVE_MINUTES,prompt:!0,tag:1100},res:{ttl:b.FIVE_MINUTES,prompt:!1,tag:1101},reject:{ttl:b.FIVE_MINUTES,prompt:!1,tag:1120},autoReject:{ttl:b.FIVE_MINUTES,prompt:!1,tag:1121}},wc_sessionSettle:{req:{ttl:b.FIVE_MINUTES,prompt:!1,tag:1102},res:{ttl:b.FIVE_MINUTES,prompt:!1,tag:1103}},wc_sessionUpdate:{req:{ttl:b.ONE_DAY,prompt:!1,tag:1104},res:{ttl:b.ONE_DAY,prompt:!1,tag:1105}},wc_sessionExtend:{req:{ttl:b.ONE_DAY,prompt:!1,tag:1106},res:{ttl:b.ONE_DAY,prompt:!1,tag:1107}},wc_sessionRequest:{req:{ttl:3*b.FIVE_MINUTES,prompt:!0,tag:1108},res:{ttl:3*b.FIVE_MINUTES,prompt:!1,tag:1109}},wc_sessionEvent:{req:{ttl:b.FIVE_MINUTES,prompt:!0,tag:1110},res:{ttl:b.FIVE_MINUTES,prompt:!1,tag:1111}},wc_sessionDelete:{req:{ttl:b.ONE_DAY,prompt:!1,tag:1112},res:{ttl:b.ONE_DAY,prompt:!1,tag:1113}},wc_sessionPing:{req:{ttl:b.ONE_DAY,prompt:!1,tag:1114},res:{ttl:b.ONE_DAY,prompt:!1,tag:1115}},wc_sessionAuthenticate:{req:{ttl:b.ONE_HOUR,prompt:!0,tag:1116},res:{ttl:b.ONE_HOUR,prompt:!1,tag:1117},reject:{ttl:b.FIVE_MINUTES,prompt:!1,tag:1118},autoReject:{ttl:b.FIVE_MINUTES,prompt:!1,tag:1119}}},g7={min:b.FIVE_MINUTES,max:b.SEVEN_DAYS},ye="IDLE",yt="ACTIVE",yr={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:""}},yi=["wc_sessionPropose","wc_sessionRequest","wc_authRequest","wc_sessionAuthenticate"],ys="[email protected]:auth:",yn=`${ys}:PUB_KEY`;var yo=Object.defineProperty,ya=Object.defineProperties,yl=Object.getOwnPropertyDescriptors,yc=Object.getOwnPropertySymbols,yh=Object.prototype.hasOwnProperty,yu=Object.prototype.propertyIsEnumerable,yf=(e,t,r)=>t in e?yo(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,yd=(e,t)=>{for(var r in t||(t={}))yh.call(t,r)&&yf(e,r,t[r]);if(yc)for(var r of yc(t))yu.call(t,r)&&yf(e,r,t[r]);return e},yp=(e,t,r)=>yf(e,"symbol"!=typeof t?t+"":t,r);class yg extends ef{constructor(t){super(t),yp(this,"name","engine"),yp(this,"events",new y.default),yp(this,"initialized",!1),yp(this,"requestQueue",{state:ye,queue:[]}),yp(this,"sessionRequestQueue",{state:ye,queue:[]}),yp(this,"emittedSessionRequests",new ly({limit:500})),yp(this,"requestQueueDelay",b.ONE_SECOND),yp(this,"expectedPairingMethodMap",new Map),yp(this,"recentlyDeletedMap",new Map),yp(this,"recentlyDeletedLimit",200),yp(this,"relayMessageCache",[]),yp(this,"pendingSessions",new Map),yp(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(g9)}),this.initialized=!0,setTimeout(async()=>{await this.processPendingMessageEvents(),this.sessionRequestQueue.queue=this.getPendingSessionRequests(),this.processSessionRequestQueue()},(0,b.toMiliseconds)(this.requestQueueDelay)))}),yp(this,"connect",async e=>{var t;this.isInitialized(),await this.confirmOnlineStateOrThrow();let r=ya(yd({},e),yl({requiredNamespaces:e.requiredNamespaces||{},optionalNamespaces:e.optionalNamespaces||{}}));await this.isValidConnect(r),r.optionalNamespaces=function(e,t){var r,i,s,n,o,a;let l=fU(e),c=fU(t),h={};for(let e of Object.keys(l).concat(Object.keys(c)))h[e]={chains:lc(null==(r=l[e])?void 0:r.chains,null==(i=c[e])?void 0:i.chains),methods:lc(null==(s=l[e])?void 0:s.methods,null==(n=c[e])?void 0:n.methods),events:lc(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)||g9.wc_sessionPropose.req.ttl||b.FIVE_MINUTES;this.validateRequestExpiry(u);let f=i,d,p=!1;try{if(f){let e=this.client.core.pairing.pairings.get(f);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(${f}) failed`),e}if(!f||!p){let{topic:e,uri:t}=await this.client.core.pairing.create({internal:{skipSubscribe:!0}});f=e,d=t}if(!f){let{message:e}=az("NO_MATCHING_KEY",`connect() pairing topic: ${f}`);throw Error(e)}let g=await this.client.core.crypto.generateKeyPair(),y=lo(u),m=yd(ya(yd(yd({requiredNamespaces:s,optionalNamespaces:n,relays:l??[{protocol:"irn"}],proposer:{publicKey:g,metadata:this.client.metadata},expiryTimestamp:y,pairingTopic:f},o&&{sessionProperties:o}),a&&{scopedProperties:a}),yl({id:dt()})),(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}}),w=ll("session_connect",m.id),{reject:v,resolve:x,done:E}=lr(u,g5),I=({id:e})=>
24{e===m.id&&(this.client.events.off("proposal_expire",I),this.pendingSessions.delete(m.id),this.events.emit(w,{error:{message:g5,code:0}}))};return this.client.events.on("proposal_expire",I),this.events.once(w,({error:e,session:t})=>{this.client.events.off("proposal_expire",I),e?v(e):t&&x(t)}),await this.setProposal(m.id,m),await this.sendProposeSession({proposal:m,publishOpts:{internal:{throwOnFailedPublish:!0},tvf:{correlationId:m.id}}}).catch(e=>{throw this.deleteProposal(m.id),e}),{uri:d,approval:E}}),yp(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}}),yp(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:[d0]}});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,f=this.client.proposal.get(n);this.client.core.eventClient.deleteEvent({eventId:s.eventId});let{pairingTopic:d,proposer:p,requiredNamespaces:g,optionalNamespaces:y}=f,m=null==(r=this.client.core.eventClient)?void 0:r.getEvent({topic:d});m||(m=null==(i=this.client.core.eventClient)?void 0:i.createEvent({type:d0,properties:{topic:d,trace:[d0,"session_namespaces_validation_success"]}}));let b=await this.client.core.crypto.generateKeyPair(),w=p.publicKey,v=await this.client.core.crypto.generateSharedKey(b,w),x=ya(yd(yd(yd({relay:{protocol:o??"irn"},namespaces:a,controller:{publicKey:b,metadata:this.client.metadata},expiry:lo(g4)},l&&{sessionProperties:l}),c&&{scopedProperties:c}),h&&{sessionConfig:h}),yl({proposalRequestsResponses:u}));m.addTrace("subscribing_session_topic");try{await this.client.core.relayer.subscribe(v,{transportType:dj,internal:{skipSubscribe:!0}})}catch(e){throw m.setError("subscribe_session_topic_failure"),e}m.addTrace("subscribe_session_topic_success");let E=ya(yd({},x),yl({topic:v,requiredNamespaces:g,optionalNamespaces:y,pairingTopic:d,acknowledged:!1,self:x.controller,peer:{publicKey:p.publicKey,metadata:p.metadata},controller:b,transportType:dj,authentication:u?.authentication,walletPayResult:u?.walletPay}));await this.client.session.set(v,E),m.addTrace("store_session");try{await this.sendApproveSession({sessionTopic:v,proposal:f,pairingProposalResponse:{relay:{protocol:o??"irn"},responderPublicKey:b},sessionSettleRequest:x,publishOpts:{internal:{throwOnFailedPublish:!0},tvf:yd({correlationId:n},this.getTVFApproveParams(E))}}),m.addTrace("session_approve_publish_success")}catch(e){throw this.client.logger.error(e),this.client.session.delete(v,aF("USER_DISCONNECTED")),await this.client.core.relayer.unsubscribe(v),e}return this.client.core.eventClient.deleteEvent({eventId:m.eventId}),await this.client.core.pairing.updateMetadata({topic:d,metadata:p.metadata}),await this.deleteProposal(n),await this.client.core.pairing.activate({topic:d}),await this.setExpiry(v,lo(g4)),{topic:v,acknowledged:()=>Promise.resolve(this.client.session.get(v))}}),yp(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:g9.wc_sessionPropose.reject}),await this.deleteProposal(r)}),yp(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}=lr(b.FIVE_MINUTES,"Session update request expired without receiving any acknowledgement"),o=dt(),a=dr().toString(),l=this.client.session.get(t).namespaces;return this.events.once(ll("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}}),yp(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=dt(),{done:i,resolve:s,reject:n}=lr(b.FIVE_MINUTES,"Session extend request expired without receiving any acknowledgement");return this.events.once(ll("session_extend",r),({error:e})=>{e?n(e):s()}),await this.setExpiry(t,lo(g4)),this.sendRequest({topic:t,method:"wc_sessionExtend",params:{},clientRpcId:r,throwOnFailedPublish:!0}).catch(e=>{n(e)}),{acknowledged:i}}),yp(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=g9.wc_sessionRequest.req.ttl}=e,n=this.client.session.get(i);n?.transportType===dj&&await this.confirmOnlineStateOrThrow();let o=dt(),a=dr().toString(),{done:l,resolve:c,reject:h}=lr(s,"Request expired. Please try again.");this.events.once(ll("session_request",o),({error:e,result:t})=>{e?h(e):c(t)});let u="wc_sessionRequest",f=this.getAppLinkIfEnabled(n.peer.metadata,n.transportType);if(f)return await this.sendRequest({clientRpcId:o,relayRpcId:a,topic:i,method:u,params:{request:ya(yd({},r),yl({expiryTimestamp:lo(s)})),chainId:t},expiry:s,throwOnFailedPublish:!0,appLink:f}).catch(e=>h(e)),this.client.events.emit("session_request_sent",{topic:i,request:r,chainId:t,id:o}),await l();let d={request:ya(yd({},r),yl({expiryTimestamp:lo(s)})),chainId:t};return await Promise.all([new Promise(async e=>{await this.sendRequest({clientRpcId:o,relayRpcId:a,topic:i,method:u,params:d,expiry:s,throwOnFailedPublish:!0,tvf:this.getTVFParams(o,d)}).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 lu(this.client.core.storage,g6);await lh({id:o,topic:i,wcDeepLink:e})}e()}),l()]).then(e=>e[2])}),yp(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===dj&&await this.confirmOnlineStateOrThrow();let l=this.getAppLinkIfEnabled(a.peer.metadata,a.transportType);try{i.addTrace("session_request_response_publish_started"),dh(n)?await this.sendResult({id:o,topic:s,result:n.result,throwOnFailedPublish:!0,appLink:l}
24):du(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}}),yp(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=dt(),r=dr().toString(),{done:i,resolve:s,reject:n}=lr(b.FIVE_MINUTES,"Ping request expired without receiving any acknowledgement");this.events.once(ll("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}))}),yp(this,"emit",async e=>{this.isInitialized(),await this.confirmOnlineStateOrThrow(),await this.isValidEmit(e);let{topic:t,event:r,chainId:i}=e,s=dr().toString(),n=dt();await this.sendRequest({topic:t,method:"wc_sessionEvent",params:{event:r,chainId:i},throwOnFailedPublish:!0,relayRpcId:s,clientRpcId:n})}),yp(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:aF("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}=az("MISMATCHED_TOPIC",`Session or pairing topic not found: ${t}`);throw Error(e)}}),yp(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!!a7(s,i)&&(i.forEach(t=>{let{accounts:i,methods:s,events:o}=e.namespaces[t],a=fC(i),l=r[t];a7(a$(t,l),a)&&a7(l.methods,s)&&a7(l.events,o)||(n=!1)}),n)})(t,e)))),yp(this,"getPendingSessionRequests",()=>this.client.pendingRequest.getAll()),yp(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?dk:dj;c===dj&&await this.confirmOnlineStateOrThrow();let{chains:h,statement:u="",uri:f,domain:d,nonce:p,type:g,exp:y,nbf:m,methods:b=[],expiry:w}=e,v=[...e.resources||[]],{topic:x,uri:E}=await this.client.core.pairing.create({methods:["wc_sessionAuthenticate"],transportType:c});this.client.logger.info({message:"Generated new pairing",pairing:{topic:x,uri:E}});let I=await this.client.core.crypto.generateKeyPair(),S=u9(I);if(await Promise.all([this.client.auth.authKeys.set(yn,{responseTopic:S,publicKey:I}),this.client.auth.pairingTopics.set(S,{topic:S,pairingTopic:x})]),await this.client.core.relayer.subscribe(S,{transportType:c}),this.client.logger.info(`sending request to new pairing topic: ${x}`),b.length>0){let e,t,{namespace:r}=aL(h[0]),a=c4(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",b));ht(v)&&(i=a,s=v.pop(),a=c4((n=c9(i),o=c9(s),c5(n),c5(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]=cW(((e,t)=>{for(var r in t||(t={}))cZ.call(t,r)&&cJ(e,r,t[r]);if(cY)for(var r of cY(t))cX.call(t,r)&&cJ(e,r,t[r]);return e})({},t.att[e]),cG({[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>g9.wc_sessionAuthenticate.req.ttl?w:g9.wc_sessionAuthenticate.req.ttl,P={authPayload:{type:g??"caip122",chains:h,statement:u,aud:f,domain:d,version:"1",nonce:p,iat:new Date().toISOString(),exp:y,nbf:m,resources:v},requester:{publicKey:I,metadata:this.client.metadata},expiryTimestamp:lo(O)},A={requiredNamespaces:{},optionalNamespaces:{eip155:{chains:h,methods:[...new Set(["personal_sign",...b])],events:["chainChanged","accountsChanged"]}},relays:[{protocol:"irn"}],pairingTopic:x,proposer:{publicKey:I,metadata:this.client.metadata},expiryTimestamp:lo(g9.wc_sessionPropose.req.ttl),id:dt()},{done:_,resolve:C,reject:T}=lr(O,"Request expired"),R=dt(),B=ll("session_connect",A.id),U=ll("session_request",R),N=async({error:e,session:t})=>{this.events.off(U,k),e?T(e):t&&C({session:t})},k=async e=>{var r,i,s;let n;if(await this.deletePendingAuthRequest(R,{message:"fulfilled",code:0}),e.error){let t=aF("WC_METHOD_UNSUPPORTED","wc_sessionAuthenticate");return e.error.code===t.code?void 0:(this.events.off(B,N),T(e.error.message))}await this.deleteProposal(A.id),this.events.off(B,N);let{cacaos:o,responder:a}=e.result,l=[],h=[];for(let e of o){await c8({cacao:e,projectId:this.client.core.projectId})||(this.client.logger.error(e,"Signature verification failed"),T(aF("SESSION_SETTLEMENT_FAILED","Signature verification failed")));let{p:t}=e,r=ht(t.resources),i=[c2(t.iss)],s=c3(t.iss);if(r){let e=c7(r),t=he(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:lo(g4),requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:x,namespaces:fN([...new Set(l)],[...new Set(h)]),transportType:c},await this.client.core.relayer.subscribe(u,{transportType:c}),await this.client.session.set(u,n),x&&await this.client.core.pairing.updateMetadata({topic:x,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:dk})),C({auths:o,session:n})};this.events.once(B,N),this.events.once(U,k);try{if(l){let e=di("wc_sessionAuthenticate",P,R);this.client.core.history.set(x,e);let r=await this.client.core.crypto.encode("",e,{type:2,encoding:u6});a=fw(t,x,r)}else await Promise.all([this.sendRequest({topic:x,method:"wc_sessionAuthenticate",params:P,expiry:e.expiry,throwOnFailedPublish:!0,clientRpcId:R}),this.sendRequest({topic:x,method:"wc_sessionPropose",params:A,expiry:g9.wc_sessionPropose.req.ttl,throwOnFailedPublish:!0,clientRpcId:A.id})])}catch(e){throw this.events.off(B,N),this.events.off(U,k),e}return await this.setProposal(A.id,A),await this.setAuthRequest(R,{request:ya(yd({},P),yl({verifyContext:{}})),pairingTopic:x,transportType:c}),{uri:a??E,response:_}}),yp(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||dj;o===dj&&await this.confirmOnlineStateOrThrow();let a=n.requester.publicKey,l=await this.client.core.crypto.generateKeyPair(),c=u9(a),h={type:1,receiverPublicKey:a,senderPublicKey:l},u=[],f=[];for(let e of i){if(!await c8({cacao:e,projectId:this.client.core.projectId})){s.setError("invalid_cacao");let e=aF("SESSION_SETTLEMENT_FAILED","Signature verification failed");
24throw await this.sendError({id:r,topic:c,error:e,encodeOpts:h}),Error(e.message)}s.addTrace("cacaos_verified");let{p:t}=e,i=ht(t.resources),n=[c2(t.iss)],o=c3(t.iss);if(i){let e=c7(i),t=he(i);u.push(...e),n.push(...t)}for(let e of n)f.push(`${e}:${o}`)}let d=await this.client.core.crypto.generateSharedKey(l,a);if(s.addTrace("create_authenticated_session_topic"),u?.length>0){t={topic:d,acknowledged:!0,self:{publicKey:l,metadata:this.client.metadata},peer:{publicKey:a,metadata:n.requester.metadata},controller:a,expiry:lo(g4),authentication:i,requiredNamespaces:{},optionalNamespaces:{},relay:{protocol:"irn"},pairingTopic:n.pairingTopic,namespaces:fN([...new Set(u)],[...new Set(f)]),transportType:o},s.addTrace("subscribing_authenticated_session_topic");try{await this.client.core.relayer.subscribe(d,{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(d,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}}),yp(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===dj&&await this.confirmOnlineStateOrThrow();let s=i.requester.publicKey,n=await this.client.core.crypto.generateKeyPair(),o=u9(s);await this.sendError({id:t,topic:o,error:r,encodeOpts:{type:1,receiverPublicKey:s,senderPublicKey:n},rpcOpts:g9.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)}),yp(this,"formatAuthMessage",e=>{this.isInitialized();let{request:t,iss:r}=e;return c6(t,r)}),yp(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)}),yp(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)}}),yp(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,aF("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(g6).catch(e=>this.client.logger.warn(e)),r===(null==(t=this.sessionRequestQueue.queue[0])?void 0:t.topic)&&(this.sessionRequestQueue.state=ye),await Promise.all(this.getPendingSessionRequests().filter(e=>e.topic===r).map(e=>this.deletePendingSessionRequest(e.id,aF("USER_DISCONNECTED")))),s&&this.client.events.emit("session_delete",{id:n,topic:r})}),yp(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,aF("USER_DISCONNECTED")),t?Promise.resolve():this.client.core.expirer.del(e)]),this.addToRecentlyDeleted(e,"proposal")}),yp(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=ye,this.client.events.emit("session_request_expire",{id:e}))}),yp(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)])}),yp(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}))}),yp(this,"setProposal",async(e,t)=>{this.client.core.expirer.set(e,lo(g9.wc_sessionPropose.req.ttl)),await this.client.proposal.set(e,t)}),yp(this,"setAuthRequest",async(e,t)=>{let{request:r,pairingTopic:i,transportType:s=dj}=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})}),yp(this,"setPendingSessionRequest",async e=>{let{id:t,topic:r,params:i,verifyContext:s}=e,n=i.request.expiryTimestamp||lo(g9.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})}),yp(this,"sendRequest",async t=>{let r,i,{topic:s,method:n,params:o,expiry:a,relayRpcId:l,clientRpcId:c,throwOnFailedPublish:h,appLink:u,tvf:f,publishOpts:d={}}=t,p=di(n,o,c),g=!!u;try{let e=g?u6:u8;r=await this.client.core.crypto.encode(s,p,{encoding:e})}catch(e){throw await this.cleanup(),this.client.logger.error(`sendRequest() -> core.crypto.encode() for topic ${s} failed`),e}if(yi.includes(n)){let e=u7(JSON.stringify(p)),t=u7(r);i=await this.client.core.verify.register({id:t,decryptedId:e})}let y=yd(yd({},g9[n].req),d);if(y.attestation=i,a&&(y.ttl=a),l&&(y.id=l),this.client.core.history.set(s,p),g){let t=fw(u,s,r);await e.g.Linking.openURL(t,this.client.name)}else{let e;y.tvf=ya(yd({},f),yl({correlationId:p.id})),h?(e=yd({},y.internal),y.internal=ya(e,yl({throwOnFailedPublish:!0})),await this.client.core.relayer.publish(s,r,y)):this.client.core.relayer.publish(s,r,y).catch(e=>this.client.logger.error(e))}return p.id}),yp(this,"sendProposeSession",async e=>{let{proposal:t,publishOpts:r}=e,i=di("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:u8}),n=u7(JSON.stringify(i)),o=u7(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:ya(yd({},r),yl({publishMethod:"wc_proposeSession",attestation:a}))})}),yp(this,"sendApproveSession",async e=>{let{sessionTopic:t,pairingProposalResponse:r,proposal:i,sessionSettleRequest:s,publishOpts:n}=e,o=ds(i.id,r),a=await this.client.core.crypto.encode(i.pairingTopic,o,{encoding:u8}),l=di("wc_sessionSettle",s,n?.id),c=await this.client.core.crypto.encode(t,l,{encoding:u8});this.client.core.history.set(t,l),await this.client.core.relayer.publishCustom({payload:{sessionTopic:t,pairingTopic:i.pairingTopic,sessionProposalResponse:a,sessionSettlementRequest:c},opts:ya(yd({},n),yl({publishMethod:"wc_approveSession"}))})}),yp(this,"sendResult",async t=>{let r,i,s,{id:n,topic:o,result:a,throwOnFailedPublish:l,encodeOpts:c,appLink:h}=t,u=ds(n,a),f=h&&"u">typeof(null==e.g?void 0:e.g.Linking);try{let e,t,i=f?u6:u8;r=await this.client.core.crypto.encode(o,u,(e=yd({},c||{}),t={encoding:i},ya(e,yl(t))))}catch(e){throw await this.cleanup(),this.client.logger.error(`sendResult() -> core.crypto.encode() for topic ${o} failed`),e}try{let e=(i=await this.client.core.history.get(o,n)).request;try{s=this.getTVFParams(n,e.params,a)}catch(e){this.client.logger.warn(`sendResult() -> getTVFParams() failed: ${e?.message}`)}}catch(e){throw this.client.logger.error(`sendResult() -> history.get(${o}, ${n}) failed`),e}if(f){let t=fw(h,o,r);await e.g.Linking.openURL(t,this.client.name)}else{let e,t=g9[i.request.method].res;t.tvf=ya(yd({},s),yl({correlationId:n})),l?(e=yd({},t.internal),t.internal=ya(e,yl({throwOnFailedPublish:!0})),await this.client.core.relayer.publish(o,r,t)):this.client.core.relayer.publish(o,r,t).catch(e=>this.client.logger.error(e))}await this.client.core.history.resolve(u)}),yp(this,"sendError",async t=>{let r,i,{id:s,topic:n,error:o,encodeOpts:a,rpcOpts:l,appLink:c}=t,h=dn(s,o),u=c&&"u">typeof(null==e.g?void 0:e.g.Linking);try{let e,t,i=u?u6:u8;r=await this.client.core.crypto.encode(n,h,(e=yd({},a||{}),t={encoding:i},ya(e,yl(t))))}catch(e){throw await this.cleanup(),this.client.logger.error(`sendError() -> core.crypto.encode() for topic ${n} failed`),e}try{i=await this.client.core.history.get(n,s)}catch(e){throw this.client.logger.error(`sendError() -> history.get(${n}, ${s}) failed`),e}if(u){let t=fw(c,n,r);await e.g.Linking.openURL(t,this.client.name)}else{let e=i.request.method,t=l||g9[e].res;this.client.core.relayer.publish(n,r,t)}await this.client.core.history.resolve(h)}),yp(this,"cleanup",async()=>{let e=[],t=[];
24this.client.session.getAll().forEach(t=>{let r=!1;la(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=>{la(e.expiryTimestamp)&&t.push(e.id)}),await Promise.all([...e.map(e=>this.deleteSession({topic:e})),...t.map(e=>this.deleteProposal(e))])}),yp(this,"onProviderMessageEvent",async e=>{!this.initialized||this.relayMessageCache.length>0?this.relayMessageCache.push(e):await this.onRelayMessage(e)}),yp(this,"onRelayEventRequest",async e=>{this.requestQueue.queue.push(e),await this.processRequestsQueue()}),yp(this,"processRequestsQueue",async()=>{if(this.requestQueue.state===yt)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=yt;let e=this.requestQueue.queue.shift();if(e)try{await this.processRequest(e)}catch(e){this.client.logger.warn(e)}}this.requestQueue.state=ye}),yp(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}`)}}),yp(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}`)}}),yp(this,"onRelayEventUnknownPayload",e=>{let{topic:t}=e,{message:r}=az("MISSING_OR_INVALID",`Decoded payload on topic ${t} is not identifiable as a JSON-RPC request or a response.`);throw Error(r)}),yp(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)}),yp(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(yd({},r.params));let a=n.expiryTimestamp||lo(g9.wc_sessionPropose.req.ttl),l=yd({id:o,pairingTopic:t,expiryTimestamp:a,attestation:i,encryptedId:s},n);await this.setProposal(o,l);let c=await this.getVerifyContext({attestationId:i,hash:u7(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:g9.wc_sessionPropose.autoReject}),this.client.logger.error(e)}}),yp(this,"onSessionProposeResponse",async(e,t,r)=>{let{id:i}=t;if(dh(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(du(t)){await this.deleteProposal(i);let e=ll("session_connect",i);if(0===this.events.listenerCount(e))throw Error(`emitting ${e} without any listeners, 954`);this.events.emit(e,{error:t.error})}}),yp(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:f}=t.params,d=[...this.pendingSessions.values()].find(t=>t.sessionTopic===e);if(!d)return this.client.logger.error(`Pending session not found for topic ${e}`);let p=this.client.proposal.get(d.proposalId),g=(r=yd(yd(yd({topic:e,relay:n,expiry:a,namespaces:l,acknowledged:!0,pairingTopic:d.pairingTopic,requiredNamespaces:p.requiredNamespaces,optionalNamespaces:p.optionalNamespaces,controller:o.publicKey,self:{publicKey:d.publicKey,metadata:this.client.metadata},peer:{publicKey:o.publicKey,metadata:o.metadata}},c&&{sessionProperties:c}),h&&{scopedProperties:h}),u&&{sessionConfig:u}),s={transportType:dj,authentication:f?.authentication,walletPayResult:f?.walletPay},ya(r,yl(s)));await this.client.session.set(g.topic,g),await this.setExpiry(g.topic,g.expiry),await this.client.core.pairing.updateMetadata({topic:d.pairingTopic,metadata:g.peer.metadata}
24),this.pendingSessions.delete(d.proposalId),this.deleteProposal(d.proposalId,!1),this.cleanupDuplicatePairings(g),await this.sendResult({id:t.id,topic:e,throwOnFailedPublish:!0,result:!0}),this.client.events.emit("session_connect",{session:g}),this.events.emit(ll("session_connect",d.proposalId),{session:g})}catch(t){await this.sendError({id:r,topic:e,error:t}),this.client.logger.error(t)}}),yp(this,"onSessionSettleResponse",async(e,t)=>{let{id:r}=t;dh(t)?(await this.client.session.update(e,{acknowledged:!0}),this.events.emit(ll("session_approve",r),{})):du(t)&&(await this.client.session.delete(e,aF("USER_DISCONNECTED")),this.events.emit(ll("session_approve",r),{error:t.error}))}),yp(this,"onSessionUpdateRequest",async(e,t)=>{let{params:r,id:i}=t;try{let t=`${e}_session_update`,s=fJ.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:aF("INVALID_UPDATE_REQUEST")});return}this.isValidUpdate(yd({topic:e},r));try{fJ.set(t,i),await this.client.session.update(e,{namespaces:r.namespaces}),await this.sendResult({id:i,topic:e,result:!0})}catch(e){throw fJ.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)}}),yp(this,"isRequestOutOfSync",(e,t)=>t.toString().slice(0,-3)<e.toString().slice(0,-3)),yp(this,"onSessionUpdateResponse",(e,t)=>{let{id:r}=t,i=ll("session_update",r);if(0===this.events.listenerCount(i))throw Error(`emitting ${i} without any listeners`);dh(t)?this.events.emit(ll("session_update",r),{}):du(t)&&this.events.emit(ll("session_update",r),{error:t.error})}),yp(this,"onSessionExtendRequest",async(e,t)=>{let{id:r}=t;try{this.isValidExtend({topic:e}),await this.setExpiry(e,lo(g4)),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)}}),yp(this,"onSessionExtendResponse",(e,t)=>{let{id:r}=t,i=ll("session_extend",r);if(0===this.events.listenerCount(i))throw Error(`emitting ${i} without any listeners`);dh(t)?this.events.emit(ll("session_extend",r),{}):du(t)&&this.events.emit(ll("session_extend",r),{error:t.error})}),yp(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)}}),yp(this,"onSessionPingResponse",(e,t)=>{let{id:r}=t,i=ll("session_ping",r);setTimeout(()=>{if(0===this.events.listenerCount(i))throw Error(`emitting ${i} without any listeners 2176`);dh(t)?this.events.emit(ll("session_ping",r),{}):du(t)&&this.events.emit(ll("session_ping",r),{error:t.error})},500)}),yp(this,"onSessionDeleteRequest",async(e,t)=>{let{id:r}=t;try{await this.isValidDisconnect({topic:e,reason:t.params}),this.cleanupPendingSentRequestsForTopic({topic:e,error:aF("USER_DISCONNECTED")}),await this.deleteSession({topic:e,id:r})}catch(e){this.client.logger.error(e)}}),yp(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(yd({topic:s},h));let e=this.client.session.get(s),n=await this.getVerifyContext({attestationId:o,hash:u7(JSON.stringify(di("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===dk&&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)}}),yp(this,"onSessionRequestResponse",(e,t)=>{let{id:r}=t,i=ll("session_request",r);if(0===this.events.listenerCount(i))throw Error(`emitting ${i} without any listeners`);dh(t)?this.events.emit(ll("session_request",r),{result:t.result}):du(t)&&this.events.emit(ll("session_request",r),{error:t.error})}),yp(this,"onSessionEventRequest",async(e,t)=>{let{id:r,params:i}=t;try{let t=`${e}_session_event_${i.event.name}`,s=fJ.get(t);if(s&&this.isRequestOutOfSync(s,r))return void this.client.logger.info(`Discarding out of sync request - ${r}`);this.isValidEmit(yd({topic:e},i)),this.client.events.emit("session_event",{id:r,topic:e,params:i}
24),fJ.set(t,r)}catch(t){await this.sendError({id:r,topic:e,error:t}),this.client.logger.error(t)}}),yp(this,"onSessionAuthenticateResponse",(e,t)=>{let{id:r}=t;this.client.logger.trace({type:"method",method:"onSessionAuthenticateResponse",topic:e,payload:t}),dh(t)?this.events.emit(ll("session_request",r),{result:t.result}):du(t)&&this.events.emit(ll("session_request",r),{error:t.error})}),yp(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:u7(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===dk&&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:g9.wc_sessionAuthenticate.autoReject,appLink:s})}}),yp(this,"addSessionRequestToSessionRequestQueue",e=>{this.sessionRequestQueue.queue.push(e)}),yp(this,"cleanupAfterResponse",e=>{this.deletePendingSessionRequest(e.response.id,{message:"fulfilled",code:0}),setTimeout(()=>{this.sessionRequestQueue.state=ye,this.processSessionRequestQueue()},(0,b.toMiliseconds)(this.requestQueueDelay))}),yp(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(ll("session_request",e.request.id),{error:t})})}),yp(this,"processSessionRequestQueue",()=>{if(this.sessionRequestQueue.state===yt)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)}}),yp(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=yt,this.emittedSessionRequests.add(e.id),this.client.events.emit("session_request",e))}),yp(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:di("wc_sessionPropose",ya(yd({},t),yl({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})}),yp(this,"isValidConnect",async e=>{let t;if(!fK(e)){let{message:t}=az("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(fD(r)||await this.isValidPairingTopic(r),t=!1,a?a&&fk(a)&&a.length&&a.forEach(e=>{t=fV(e)}):t=!0,!t){let{message:e}=az("MISSING_OR_INVALID",`connect() relays: ${a}`);throw Error(e)}if(i&&!fD(i)&&0!==fj(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&&!fD(s)&&0!==fj(s)&&this.validateNamespaces(s,"optionalNamespaces"),n&&!fD(n)&&this.validateSessionProps(n,"sessionProperties"),o&&!fD(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)}`)}}),yp(this,"validateNamespaces",(e,t)=>{let r=function(e,t,r){let i=null;if(e&&fj(e)){let s,n=fz(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=a$(e,i),o=`${t} ${r}`,a=null,fk(n)&&n.length?n.forEach(e=>{a||fq(e)||(a=aF("UNSUPPORTED_CHAINS",`${o}, chain ${e} should be a string and conform to "namespace:chainId" format`))}):fq(e)||(a=aF("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=az("MISSING_OR_INVALID",`${t}, ${r} should be an object with data`);return i}(e,"connect()",t);if(r)throw Error(r.message)}),yp(this,"isValidApprove",async e=>{if(!fK(e))throw Error(az("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=fF(r,"approve()");if(a)throw Error(a.message);let l=fW(o.requiredNamespaces,r,"approve()");if(l)throw Error(l.message);if(!fL(i,!0)){let{message:e}=az("MISSING_OR_INVALID",`approve() relayProtocol: ${i}`);throw Error(e)}if(s&&!fD(s)&&this.validateSessionProps(s,"sessionProperties"),n&&!fD(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(", ")}`)}}),yp(this,"isValidReject",async e=>{if(!fK(e)){let{message:t}=az("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||!f$(r.code,!1)||!r.message||!fL(r.message,!1)){let{message:e}=az("MISSING_OR_INVALID",`reject() reason: ${JSON.stringify(r)}`);throw Error(e)}}),yp(this,"isValidSessionSettleRequest",e=>{let t;if(!fK(e)){let{message:t}=az("MISSING_OR_INVALID",`onSessionSettleRequest() params: ${e}`);throw Error(t)}let{relay:r,controller:i,namespaces:s,expiry:n}=e;if(!fV(r)){let{message:e}=az("MISSING_OR_INVALID","onSessionSettleRequest() relay protocol should be a string");throw Error(e)}let o=(t=null,fL(i?.publicKey,!1)||(t=az("MISSING_OR_INVALID","onSessionSettleRequest() controller public key should be a string")),t);if(o)throw Error(o.message);let a=fF(s,"onSessionSettleRequest()");if(a)throw Error(a.message);if(la(n)){let{message:e}=az("EXPIRED","onSessionSettleRequest()");throw Error(e)}}),yp(this,"isValidUpdate",async e=>{if(!fK(e)){let{message:t}=az("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=fF(r,"update()");if(s)throw Error(s.message);let n=fW(i.requiredNamespaces,r,"update()");if(n)throw Error(n.message)}),yp(this,"isValidExtend",async e=>{if(!fK(e)){let{message:t}=az("MISSING_OR_INVALID",`extend() params: ${e}`);throw Error(t)}let{topic:t}=e;this.checkRecentlyDeleted(t),await this.isValidSessionTopic(t)}),yp(this,"isValidRequest",async e=>{var t;let r;if(!fK(e)){let{message:t}=az("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(!fH(a,n)){let{message:e}=az("MISSING_OR_INVALID",`request() chainId: ${n}`);throw Error(e)}if(fD(s)||!fL(s.method,!1)){let{message:e}=az("MISSING_OR_INVALID",`request() ${JSON.stringify(s)}`);throw Error(e)}if(!(fL(t=s.method,!1)&&(r=[],Object.values(a).forEach(e=>{fC(e.accounts).includes(n)&&r.push(...e.methods)}),r).includes(t))){let{message:e}=az("MISSING_OR_INVALID",`request() method: ${s.method}`);throw Error(e)}this.validateRequestExpiry(o)}),yp(this,"isValidRespond",async e=>{var t;if(!fK(e)){let{message:t}=az("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(fD(i)||fD(i.result)&&fD(i.error)||!f$(i.id,!1)||!fL(i.jsonrpc,!1)){let{message:e}=az("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}=az("MISMATCHED_TOPIC",`Request response topic mismatch. reqId: ${i.id}, expected topic: ${s.topic}, received topic: ${r}`);throw Error(e)}}),yp(this,"isValidPing",async e=>{if(!fK(e)){let{message:t}=az("MISSING_OR_INVALID",`ping() params: ${e}`);throw Error(t)}let{topic:t}=e;await this.isValidSessionOrPairingTopic(t)}),yp(this,"isValidEmit",async e=>{var t;let r;if(!fK(e)){let{message:t}=az("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(!fH(o,n)){let{message:e}=az("MISSING_OR_INVALID",`emit() chainId: ${n}`);throw Error(e)}if(fD(s)||!fL(s.name,!1)||!(fL(t=s.name,!1)&&(r=[],Object.values(o).forEach(e=>{fC(e.accounts).includes(n)&&r.push(...e.events)}),r).includes(t))){let{message:e}=az("MISSING_OR_INVALID",`emit() event: ${JSON.stringify(s)}`);throw Error(e)}}),yp(this,"isValidDisconnect",async e=>{if(!fK(e)){let{message:t}=az("MISSING_OR_INVALID",`disconnect() params: ${e}`);throw Error(t)}let{topic:t}=e;await this.isValidSessionOrPairingTopic(t)}),yp(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(!fL(r,!1))throw Error("uri is required parameter");if(!fL(i,!1))throw Error("domain is required parameter");if(!fL(s,!1))throw Error("nonce is required parameter");if([...new Set(t.map(e=>aL(e).namespace))].length>1)throw Error("Multi-namespace requests are not supported. Please request single namespace only.");let{namespace:n}=aL(t[0]);if("eip155"!==n)throw Error("Only eip155 namespace is supported for authenticated sessions. Please use .connect() for non-eip155 chains.")}),yp(this,"getVerifyContext",async e=>{let{attestationId:t,hash:r,encryptedId:i,metadata:s,transportType:n}=e,o={verified:{verifyUrl:s.verifyUrl||dZ,validation:"UNKNOWN",origin:s.url||""}};try{if(n===dk){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}),yp(this,"validateSessionProps",(e,t)=>{Object.values(e).forEach((r,i)=>{if(null==r){let{message:s}=az("MISSING_OR_INVALID",`${t} must contain an existing value for each key. Received: ${r} for key ${Object.keys(e)[i]}`);throw Error(s)}})}),yp(this,"getPendingAuthRequest",e=>{let t=this.client.auth.requests.get(e);return"object"==typeof t?t:void 0}),yp(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)}}}),yp(this,"checkRecentlyDeleted",e=>{let t=this.recentlyDeletedMap.get(e);if(t){let{message:r}=az("MISSING_OR_INVALID",`Record was recently deleted - ${t}: ${e}`);throw Error(r)}}),yp(this,"isLinkModeEnabled",(t,r)=>{var i,s,n,o,a,l,c,h,u;return!!t&&r===dk&&(null==(s=null==(i=this.client.metadata)?void 0:i.redirect)?void 0:s.linkMode)===!0&&(null==(o=null==(n=this.client.metadata)?void 0:n.redirect)?void 0:o.universal)!==void 0&&(null==(l=null==(a=this.client.metadata)?void 0:a.redirect)?void 0:l.universal)!==""&&(null==(c=t?.redirect)?void 0:c.universal)!==void 0&&(null==(h=t?.redirect)?void 0:h.universal)!==""&&(null==(u=t?.redirect)?void 0:u.linkMode)===!0&&this.client.core.linkModeSupportedApps.includes(t.redirect.universal)&&"u">typeof(null==e.g?void 0:e.g.Linking)}),yp(this,"getAppLinkIfEnabled",(e,t)=>{var r;return this.isLinkModeEnabled(e,t)?null==(r=e?.redirect)?void 0:r.universal:void 0}),yp(this,"handleLinkModeMessage",({url:e})=>{if(!e||!e.includes("wc_ev")||!e.includes("topic"))return;let t=lf(e,"topic")||"",r=decodeURIComponent(lf(e,"wc_ev")||""),i=this.client.session.keys.includes(t);i&&this.client.session.update(t,{transportType:dk}),this.client.core.dispatchEnvelope({topic:t,message:r,sessionExists:i})}),yp(this,"registerLinkModeListeners",async()=>{var t;if(lp()||a3()&&null!=(t=this.client.metadata.redirect)&&t.linkMode){let t=null==e.g?void 0:e.g.Linking;if("u">typeof t){t.addEventListener("url",this.handleLinkModeMessage,this.client.name);let e=await t.getInitialURL();e&&setTimeout(()=>{this.handleLinkModeMessage({url:e})},50)}}}),yp(this,"getTVFApproveParams",e=>{try{var t,r;let i,s,n=fT(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"),{}}}),yp(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}),yp(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}),yp(this,"extractTxHashesFromResult",(e,t)=>{var r,i,s,n,o;try{if(!t)return[];let a=e.method,l=yr[a];if("sui_signTransaction"===a){let e,r,i,n;return[(s=t.transactionBytes,e=new Uint8Array(g.Buffer.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=c$(i,{dkLen:32}),oa.encode(n))]}if("near_signTransaction"===a)return[cF(t)];if("near_signTransactions"===a)return t.map(e=>cF(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(g.Buffer.from(i.signature,"hex")),o=function({publicKey:e,signature:t,payload:r}){var i,s,n;let o,a=fQ(r.method),l=128|parseInt((null==(i=r.version)?void 0:i.toString())||"4"),c=(s=r.address,o=oa.decode(s)[0],42===o?0:60===o?2:1),h="00"===r.era?new Uint8Array([0]):fQ(r.era);if(1!==h.length&&2!==h.length)throw Error("Invalid era length");let u=parseInt(r.nonce,16),f=new Uint8Array([255&u,u>>8&255]),d=new Uint8Array([0,...e,c,...t,...h,...f,...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")}(d.length+1),l,...d])}({publicKey:function(e){let t=oa.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=fQ(g.Buffer.from(o).toString("hex")),s=(0,aD.blake2b)(r,void 0,32),"0x"+g.Buffer.from(s).toString("hex"))]}if("algo_signTxn"===a)return fk(t)?t.map(e=>cV(e)):[cV(t)];
24if("cosmos_signDirect"===a){let e,r,i,s,n;return[(e=g.Buffer.from(t.signed.bodyBytes,"base64"),r=g.Buffer.from(t.signed.authInfoBytes,"base64"),i=g.Buffer.from(t.signature.signature,"base64"),(s=[]).push(g.Buffer.from([10])),s.push(cK(e.length)),s.push(e),s.push(g.Buffer.from([18])),s.push(cK(r.length)),s.push(r),s.push(g.Buffer.from([26])),s.push(cK(i.length)),s.push(i),n=c_(g.Buffer.concat(s)),g.Buffer.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(fk(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=g.Buffer.from(e,"base64").slice(1,65);return oa.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}=az("NOT_INITIALIZED",this.name);throw Error(e)}}async confirmOnlineStateOrThrow(){await this.client.core.relayer.confirmOnlineStateOrThrow()}registerRelayerEvents(){this.client.core.relayer.on(dP,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(yn)?this.client.auth.authKeys.get(yn):{responseTopic:void 0,publicKey:void 0};try{let e=await this.client.core.crypto.decode(t,r,{receiverPublicKey:n,encoding:s===dk?u6:u8});dl(e)?(this.client.core.history.set(t,e),await this.onRelayEventRequest({topic:t,payload:e,attestation:i,transportType:s,encryptedId:u7(r)})):dc(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(dY,async e=>{let{topic:t,id:r}=ln(e.target);return r&&this.client.pendingRequest.keys.includes(r)?await this.deletePendingSessionRequest(r,az("EXPIRED"),!0):r&&this.client.auth.requests.keys.includes(r)?await this.deletePendingAuthRequest(r,az("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(dz,e=>this.onPairingCreated(e)),this.client.core.pairing.events.on(dF,e=>{this.addToRecentlyDeleted(e.topic,"pairing")})}isValidPairingTopic(e){if(!fL(e,!1)){let{message:t}=az("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}=az("NO_MATCHING_KEY",`pairing topic doesn't exist: ${e}`);throw Error(t)}if(la(this.client.core.pairing.pairings.get(e).expiry)){let{message:t}=az("EXPIRED",`pairing topic: ${e}`);throw Error(t)}}async isValidSessionTopic(e){if(!fL(e,!1)){let{message:t}=az("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}=az("NO_MATCHING_KEY",`session topic doesn't exist: ${e}`);throw Error(t)}if(la(this.client.session.get(e).expiry)){await this.deleteSession({topic:e});let{message:t}=az("EXPIRED",`session topic: ${e}`);throw Error(t)}if(!this.client.core.crypto.keychain.has(e)){let{message:t}=az("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(fL(e,!1)){let{message:t}=az("NO_MATCHING_KEY",`session or pairing topic doesn't exist: ${e}`);throw Error(t)}else{let{message:t}=az("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}=az("MISSING_OR_INVALID",`proposal id should be a number: ${e}`);throw Error(t)}if(!this.client.proposal.keys.includes(e)){let{message:t}=az("NO_MATCHING_KEY",`proposal id doesn't exist: ${e}`);throw Error(t)}if(la(this.client.proposal.get(e).expiryTimestamp)){await this.deleteProposal(e);let{message:t}=az("EXPIRED",`proposal id: ${e}`);throw Error(t)}}
24validateRequestExpiry(e){if(e&&(!f$(e,!1)||!(e<=g7.max)||!(e>=g7.min))){let{message:t}=az("MISSING_OR_INVALID",`request() expiry: ${e}. Expiry must be a number (in seconds) between ${g7.min} and ${g7.max}`);throw Error(t)}}}class yy extends gO{constructor(e,t){super(e,t,"proposal",g8),this.core=e,this.logger=t}}class ym extends gO{constructor(e,t){super(e,t,"session",g8),this.core=e,this.logger=t}}class yb extends gO{constructor(e,t){super(e,t,"request",g8,e=>e.id),this.core=e,this.logger=t}}class yw extends gO{constructor(e,t){super(e,t,"authKeys",ys,()=>yn),this.core=e,this.logger=t}}class yv extends gO{constructor(e,t){super(e,t,"pairingTopics",ys),this.core=e,this.logger=t}}class yx extends gO{constructor(e,t){super(e,t,"requests",ys,e=>e.id),this.core=e,this.logger=t}}var yE=Object.defineProperty,yI=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?yE(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class yS{constructor(e,t){this.core=e,this.logger=t,yI(this,"authKeys"),yI(this,"pairingTopics"),yI(this,"requests"),this.authKeys=new yw(this.core,this.logger),this.pairingTopics=new yv(this.core,this.logger),this.requests=new yx(this.core,this.logger)}
24async init(){await this.authKeys.init(),await this.pairingTopics.init(),await this.requests.init()}}var yO=Object.defineProperty,yP=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?yO(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class yA extends eu{constructor(e){super(e),yP(this,"protocol","wc"),yP(this,"version",2),yP(this,"name",g3),yP(this,"metadata"),yP(this,"core"),yP(this,"logger"),yP(this,"events",new y.EventEmitter),yP(this,"engine"),yP(this,"session"),yP(this,"proposal"),yP(this,"pendingRequest"),yP(this,"auth"),yP(this,"signConfig"),yP(this,"on",(e,t)=>this.events.on(e,t)),yP(this,"once",(e,t)=>this.events.once(e,t)),yP(this,"off",(e,t)=>this.events.off(e,t)),yP(this,"removeListener",(e,t)=>this.events.removeListener(e,t)),yP(this,"removeAllListeners",e=>this.events.removeAllListeners(e)),yP(this,"connect",async e=>{try{return await this.engine.connect(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"pair",async e=>{try{return await this.engine.pair(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"approve",async e=>{try{return await this.engine.approve(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"reject",async e=>{try{return await this.engine.reject(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"update",async e=>{try{return await this.engine.update(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"extend",async e=>{try{return await this.engine.extend(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"request",async e=>{try{return await this.engine.request(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"respond",async e=>{try{return await this.engine.respond(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"ping",async e=>{try{return await this.engine.ping(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"emit",async e=>{try{return await this.engine.emit(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"disconnect",async e=>{try{return await this.engine.disconnect(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"find",e=>{try{return this.engine.find(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"getPendingSessionRequests",()=>{try{return this.engine.getPendingSessionRequests()}catch(e){throw this.logger.error(e.message),e}}),yP(this,"authenticate",async(e,t)=>{try{return await this.engine.authenticate(e,t)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"formatAuthMessage",e=>{try{return this.engine.formatAuthMessage(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"approveSessionAuthenticate",async e=>{try{return await this.engine.approveSessionAuthenticate(e)}catch(e){throw this.logger.error(e.message),e}}),yP(this,"rejectSessionAuthenticate",async e=>{try{return await this.engine.rejectSessionAuthenticate(e)}catch(e){throw this.logger.error(e.message),e}}),this.name=e?.name||g3,this.metadata=function(e){var t,r;let i=a4();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=aX(aX({},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},aK(s,aH(n))}catch(t){return console.warn("Error populating app metadata",t),e||i}}(e?.metadata),this.signConfig=e?.signConfig;const t=f0({logger:e?.logger||"error",name:this.name});this.logger=t,this.core=e?.core||new g2(e),this.session=new ym(this.core,this.logger),this.proposal=new yy(this.core,this.logger),this.pendingRequest=new yb(this.core,this.logger),this.engine=new yg(this),this.auth=new yS(this.core,this.logger)}static async init(e){let t=new yA(e);return await t.initialize(),t}get context(){return(0,G.getLoggerContext)(this.logger)}get pairing(){return this.core.pairing.pairings}async initialize(){this.logger.trace("Initialized");try{await this.core.start(),await this.session.init(),await this.proposal.init(),await this.pendingRequest.init(),await this.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}}}var y_=e.i(320502),yC=Object.defineProperty,yT=Object.defineProperties,yR=Object.getOwnPropertyDescriptors,yB=Object.getOwnPropertySymbols,yU=Object.prototype.hasOwnProperty,yN=Object.prototype.propertyIsEnumerable,yk=(e,t,r)=>t in e?yC(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,yj=(e,t)=>{for(var r in t||(t={}))yU.call(t,r)&&yk(e,r,t[r]);if(yB)for(var r of yB(t))yN.call(t,r)&&yk(e,r,t[r]);return e};let yD={headers:{Accept:"application/json","Content-Type":"application/json"},method:"POST"};class yL{constructor(e,t=!1){if(this.url=e,this.disableProviderPing=t,this.events=new y.EventEmitter,this.isAvailable=!1,this.registering=!1,!dp(e))throw Error(`Provided URL is not compatible with HTTP connection: ${e}`);this.url=e,this.disableProviderPing=t}
24get connected(){return this.isAvailable}get connecting(){return this.registering}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}off(e,t){this.events.off(e,t)}removeListener(e,t){this.events.removeListener(e,t)}async open(e=this.url){await this.register(e)}async close(){if(!this.isAvailable)throw Error("Connection already closed");this.onClose()}async send(e){this.isAvailable||await this.register();try{let t,r,i=L(e),s=await (await (0,y_.default)(this.url,(t=yj({},yD),r={body:i},yT(t,yR(r))))).json();this.onPayload({data:s})}catch(t){this.onError(e.id,t)}}async register(e=this.url){if(!dp(e))throw Error(`Provided URL is not compatible with HTTP 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)=>{this.events.once("register_error",e=>{this.resetMaxListeners(),t(e)}),this.events.once("open",()=>{if(this.resetMaxListeners(),typeof this.isAvailable>"u")return t(Error("HTTP connection is missing or invalid"));e()})})}this.url=e,this.registering=!0;try{if(!this.disableProviderPing){let t,r,i=L({id:1,jsonrpc:"2.0",method:"test",params:[]});await (0,y_.default)(e,(t=yj({},yD),r={body:i},yT(t,yR(r))))}this.onOpen()}catch(t){let e=this.parseError(t);throw this.events.emit("register_error",e),this.onClose(),e}}onOpen(){this.isAvailable=!0,this.registering=!1,this.events.emit("open")}onClose(){this.isAvailable=!1,this.registering=!1,this.events.emit("close")}onPayload(e){if(typeof e.data>"u")return;let t="string"==typeof e.data?D(e.data):e.data;this.events.emit("payload",t)}onError(e,t){let r=this.parseError(t),i=dn(e,r.message||r.toString());this.events.emit("payload",i)}parseError(e,t=this.url){return de(e,t,"HTTP")}resetMaxListeners(){this.events.getMaxListeners()>10&&this.events.setMaxListeners(10)}}function y$(e){return null==e||"object"!=typeof e&&"function"!=typeof e}function yq(e){return Object.getOwnPropertySymbols(e).filter(t=>Object.prototype.propertyIsEnumerable.call(e,t))}function yM(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":Object.prototype.toString.call(e)}let yz="[object String]",yF="[object Number]",yV="[object Boolean]",yK="[object Arguments]",yH="[object Object]";function yW(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function yG(e,t,r,i=new Map,s){let n=s?.(e,t,r,i);if(void 0!==n)return n;if(y$(e))return e;if(i.has(e))return i.get(e);if(Array.isArray(e)){let t=Array(e.length);i.set(e,t);for(let n=0;n<e.length;n++)t[n]=yG(e[n],n,r,i,s);return Object.hasOwn(e,"index")&&(t.index=e.index),Object.hasOwn(e,"input")&&(t.input=e.input),t}if(e instanceof Date)return new Date(e.getTime());if(e instanceof RegExp){let t=new RegExp(e.source,e.flags);return t.lastIndex=e.lastIndex,t}if(e instanceof Map){let t=new Map;for(let[n,o]of(i.set(e,t),e))t.set(n,yG(o,n,r,i,s));return t}if(e instanceof Set){let t=new Set;for(let n of(i.set(e,t),e))t.add(yG(n,void 0,r,i,s));return t}if("u">typeof g.Buffer&&g.Buffer.isBuffer(e))return e.subarray();if(yW(e)){let t=new(Object.getPrototypeOf(e)).constructor(e.length);i.set(e,t);for(let n=0;n<e.length;n++)t[n]=yG(e[n],n,r,i,s);return t}if(e instanceof ArrayBuffer||"u">typeof SharedArrayBuffer&&e instanceof SharedArrayBuffer)return e.slice(0);if(e instanceof DataView){let t=new DataView(e.buffer.slice(0),e.byteOffset,e.byteLength);return i.set(e,t),yY(t,e,r,i,s),t}if("u">typeof File&&e instanceof File){let t=new File([e],e.name,{type:e.type});return i.set(e,t),yY(t,e,r,i,s),t}if("u">typeof Blob&&e instanceof Blob){let t=new Blob([e],{type:e.type});return i.set(e,t),yY(t,e,r,i,s),t}if(e instanceof Error){let t=new e.constructor;return i.set(e,t),t.message=e.message,t.name=e.name,t.stack=e.stack,t.cause=e.cause,yY(t,e,r,i,s),t}if(e instanceof Boolean){let t=new Boolean(e.valueOf());return i.set(e,t),yY(t,e,r,i,s),t}if(e instanceof Number){let t=new Number(e.valueOf());return i.set(e,t),yY(t,e,r,i,s),t}if(e instanceof String){let t=new String(e.valueOf());return i.set(e,t),yY(t,e,r,i,s),t}if("object"==typeof e&&function(e){switch(yM(e)){case yK:case"[object Array]":case"[object ArrayBuffer]":case"[object DataView]":case yV:case"[object Date]":case"[object Float32Array]":case"[object Float64Array
24]":case"[object Int8Array]":case"[object Int16Array]":case"[object Int32Array]":case"[object Map]":case yF:case yH:case"[object RegExp]":case"[object Set]":case yz:case"[object Symbol]":case"[object Uint8Array]":case"[object Uint8ClampedArray]":case"[object Uint16Array]":case"[object Uint32Array]":return!0;default:return!1}}(e)){let t=Object.create(Object.getPrototypeOf(e));return i.set(e,t),yY(t,e,r,i,s),t}return e}function yY(e,t,r=e,i,s){let n=[...Object.keys(t),...yq(t)];for(let o=0;o<n.length;o++){let a=n[o],l=Object.getOwnPropertyDescriptor(e,a);(null==l||l.writable)&&(e[a]=yG(t[a],a,r,i,s))}}function yZ(e){var t;return t=(t,r,i,s)=>{let n;if(void 0!==n)return n;if("object"==typeof e){if(yM(e)===yH&&"function"!=typeof e.constructor){let t={};return s.set(e,t),yY(t,e,i,s),t}switch(Object.prototype.toString.call(e)){case yF:case yz:case yV:{let t=new e.constructor(e?.valueOf());return yY(t,e),t}case yK:{let t={};return yY(t,e),t.length=e.length,t[Symbol.iterator]=e[Symbol.iterator],t}default:return}}},yG(e,void 0,e,new Map,t)}function yX(e){return null!==e&&"object"==typeof e&&"[object Arguments]"===yM(e)}function yJ(e){return"object"==typeof e&&null!==e}function yQ(){}function y0(e){if("object"!=typeof e||null==e)return!1;if(null===Object.getPrototypeOf(e))return!0;if("[object Object]"!==Object.prototype.toString.call(e)){let t=e[Symbol.toStringTag];return null!=t&&!!Object.getOwnPropertyDescriptor(e,Symbol.toStringTag)?.writable&&e.toString()===`[object ${t}]`}let t=e;for(;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}let y1="error",y2="universal_provider",y3=`wc@2:${y2}:`,y8="https://rpc.walletconnect.org/v1/",y6="generic",y5=`${y8}bundler`,y4="call_status",y9="default_chain_changed";var y7=Object.defineProperty,me=Object.defineProperties,mt=Object.getOwnPropertyDescriptors,mr=Object.getOwnPropertySymbols,mi=Object.prototype.hasOwnProperty,ms=Object.prototype.propertyIsEnumerable,mn=(e,t,r)=>t in e?y7(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,mo=(e,t)=>{for(var r in t||(t={}))mi.call(t,r)&&mn(e,r,t[r]);if(mr)for(var r of mr(t))ms.call(t,r)&&mn(e,r,t[r]);return e},ma=(e,t)=>me(e,mt(t));function ml(e,t,r){var i;let s=aL(e);return(null==(i=t.rpcMap)?void 0:i[s.reference])||`${y8}?chainId=${s.namespace}:${s.reference}&projectId=${r}`}function mc(e){return e.map(e=>`${e.split(":")[0]}:${e.split(":")[1]}`)}function mh(e){return Object.fromEntries(Object.entries(e).filter(([e,t])=>{var r,i;return(null==(r=t?.chains)?void 0:r.length)&&(null==(i=t?.chains)?void 0:i.length)>0}))}function mu(e={},t={}){return function(e,...t){return function(e,...t){let r=t.slice(0,-1),i=t[t.length-1],s=e;for(let e=0;e<r.length;e++)s=function e(t,r,i,s){if(y$(t)&&(t=Object(t)),null==r||"object"!=typeof r)return t;if(s.has(r))return function(e){if(y$(e))return e;if(Array.isArray(e)||yW(e)||e instanceof ArrayBuffer||"u">typeof SharedArrayBuffer&&e instanceof SharedArrayBuffer)return e.slice(0);let t=Object.getPrototypeOf(e);if(null==t)return Object.assign(Object.create(t),e);let r=t.constructor;if(e instanceof Date||e instanceof Map||e instanceof Set)return new r(e);if(e instanceof RegExp){let t=new r(e);return t.lastIndex=e.lastIndex,t}if(e instanceof DataView)return new r(e.buffer.slice(0));if(e instanceof Error){let t;return(t=e instanceof AggregateError?new r(e.errors,e.message,{cause:e.cause}):new r(e.message,{cause:e.cause})).stack=e.stack,Object.assign(t,e),t}return"u">typeof File&&e instanceof File?new r([e],e.name,{type:e.type,lastModified:e.lastModified}):"object"==typeof e?Object.assign(Object.create(t),e):e}(s.get(r));if(s.set(r,t),Array.isArray(r)){r=r.slice();for(let e=0;e<r.length;e++)r[e]=r[e]??void 0}let n=[...Object.keys(r),...yq(r)];for(let o=0;o<n.length;o++){let a=n[o];if("__proto__"===a)continue;let l=r[a],c=t[a];if(yX(l)&&(l={...l}),yX(c)&&(c={...c}),"u">typeof g.Buffer&&g.Buffer.isBuffer(l)&&(l=yZ(l)),Array.isArray(l))if(Array.isArray(c)){let e=[],t=Reflect.ownKeys(c);for(let r=0;r<t.length;r++){let i=t[r];e[i]=c[i]}c=e}else if(function(e){var t;return yJ(e)&&null!=e&&"function"!=typeof e&&Number.isSafeInteger(t=e.length)&&t>=0}(c)){let e=[];for(let t=0;t<c.length;t++)e[t]=c[t];c=e}else c=[];let h=i(c,l,a,t,r,s);void 0!==h?t[a]=h:Array.isArray(l)||yJ(c)&&yJ(l)&&(y0(c)||y0(l)||yW(c)||yW(l))?t[a]=e(c,l,i,s):null==c&&y0(l)?t[a]=e({},l,i,s):null==c&&yW(l)?t[a]=yZ(l):(void 0===c||void 0!==l)&&(t[a]=l)}return t}(s,r[e],i,new Map);return s}(e,...t,yQ)}(mh(mf(e)),mh(mf(t)))}function mf(e){var t,r,i,s,n;let o={};if(!fj(e))return o;for(let[a,l]of Object.entries(e)){let e=fR(a)?[a]:l.chains,c=l.methods||[],h=l.events||[],u=l.rpcMap||{},f=fB(a);o[f]=ma(mo(mo({},o[f]),l),{chains:lc(e,null==(t=o[f])?void 0:t.chains),methods:lc(c,null==(r=o[f])?void 0:r.methods),events:lc(h,null==(i=o[f])?void 0:i.events)}),(fj(u)||fj((null==(s=o[f])?void 0:s.rpcMap)||{}))&&(o[f].rpcMap=mo(mo({},u),null==(n=o[f])?void 0:n.rpcMap))}return o}function md(e){return e.includes(":")?e.split(":")[2]:e}function mp(e){let t={};for(let[r,i]of Object.entries(e)){let e=i.methods||[],s=i.events||[],n=i.accounts||[],o=fR(r)?[r]:i.chains?i.chains:mc(i.accounts);t[r]={chains:o,methods:e,events:s,accounts:n}}return t}function mg(e){return"number"==typeof e?e:e.includes("0x")?parseInt(e,16):isNaN(Number(e=e.includes(":")?e.split(":")[1]:e))?e:Number(e)}let my={},mm=e=>my[e],mb=(e,t)=>{my[e]=t};var mw=Object.defineProperty,mv=Object.getOwnPropertySymbols,mx=Object.prototype.hasOwnProperty,mE=Object.prototype.propertyIsEnumerable,mI=(e,t,r)=>t in e?mw(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,mS=(e,t)=>{for(var r in t||(t={}))mx.call(t,r)&&mI(e,r,t[r]);if(mv)for(var r of mv(t))mE.call(t,r)&&mI(e,r,t[r]);return e};let mO="eip155",mP=["atomic","flow-control","paymasterService","sessionKeys","auxiliaryFunds"],mA=e=>e&&e.startsWith("0x")?BigInt(e).toString(10):e,m_=e=>e&&e.startsWith("0x")?e:`0x${BigInt(e).toString(16)}`,mC=e=>Object.keys(e).filter(e=>mP.includes(e)).reduce((t,r)=>(t[r]=mT(e[r]),t),{}),mT=e=>"string"==typeof e&&function(e){try{let t=JSON.parse(e);return"object"==typeof t&&null!==t&&!Array.isArray(t)}catch{return!1}}(e)?JSON.parse(e):e;var mR=Object.defineProperty;class mB{constructor(e){((e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?mR(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r})(this,"storage"),this.storage=e}async getItem(e){return await this.storage.getItem(e)}async setItem(e,t){return await this.storage.setItem(e,t)}async removeItem(e){return await this.storage.removeItem(e)}static getStorage(e){return t||(t=new mB(e)),t}}var mU=Object.defineProperty,mN=Object.defineProperties,mk=Object.getOwnPropertyDescriptors,mj=Object.getOwnPropertySymbols,mD=Object.prototype.hasOwnProperty,mL=Object.prototype.propertyIsEnumerable,m$=(e,t,r)=>t in e?mU(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r;async function mq(e,t){let r,i=aL(e.result.capabilities.caip345.caip2),s=e.result.capabilities.caip345.transactionHashes,n=await Promise.allSettled(s.map(e=>mM(i.reference,e,t))),o=n.filter(e=>"fulfilled"===e.status).map(e=>e.value).filter(e=>e);n.filter(e=>
24"rejected"===e.status).forEach(e=>console.warn("Failed to fetch transaction receipt:",e.reason));let a=!o.length||o.some(e=>!e),l=o.every(e=>e?.status==="0x1"),c=o.every(e=>e?.status==="0x0"),h=o.some(e=>e?.status==="0x0");return a?r=100:l?r=200:c?r=500:h&&(r=600),{id:e.result.id,version:e.request.version,atomic:e.request.atomicRequired,chainId:e.request.chainId,capabilities:e.result.capabilities,receipts:o,status:r}}async function mM(e,t,r){return await r(parseInt(e)).request(di("eth_getTransactionReceipt",[t]))}async function mz({sendCalls:e,storage:t}){let r=await t.getItem(y4);await t.setItem(y4,mN(((e,t)=>{for(var r in t||(t={}))mD.call(t,r)&&m$(e,r,t[r]);if(mj)for(var r of mj(t))mL.call(t,r)&&m$(e,r,t[r]);return e})({},r),mk({[e.result.id]:{request:e.request,result:e.result,expiry:lo(86400)}})))}async function mF({resultId:e,storage:t}){let r=await t.getItem(y4);if(r){for(let i in delete r[e],await t.setItem(y4,r),r)la(r[i].expiry)&&delete r[i];await t.setItem(y4,r)}}async function mV({resultId:e,storage:t}){let r=await t.getItem(y4),i=r?.[e];if(i&&!la(i.expiry))return i;await mF({resultId:e,storage:t})}var mK=Object.defineProperty,mH=Object.defineProperties,mW=Object.getOwnPropertyDescriptors,mG=Object.getOwnPropertySymbols,mY=Object.prototype.hasOwnProperty,mZ=Object.prototype.propertyIsEnumerable,mX=(e,t,r)=>t in e?mK(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,mJ=(e,t)=>{for(var r in t||(t={}))mY.call(t,r)&&mX(e,r,t[r]);if(mG)for(var r of mG(t))mZ.call(t,r)&&mX(e,r,t[r]);return e},mQ=(e,t,r)=>mX(e,"symbol"!=typeof t?t+"":t,r);class m0{constructor(e){mQ(this,"name","eip155"),mQ(this,"client"),mQ(this,"chainId"),mQ(this,"namespace"),mQ(this,"httpProviders"),mQ(this,"events"),mQ(this,"storage"),this.namespace=e.namespace,this.events=mm("events"),this.client=mm("client"),this.httpProviders=this.createHttpProviders(),this.chainId=parseInt(this.getDefaultChain()),this.storage=mB.getStorage(this.client.core.storage)}async request(e){switch(e.request.method){case"eth_requestAccounts":case"eth_accounts":return this.getAccounts();case"wallet_switchEthereumChain":return await this.handleSwitchChain(e);case"eth_chainId":return parseInt(this.getDefaultChain());case"wallet_getCapabilities":return await this.getCapabilities(e);case"wallet_getCallsStatus":return await this.getCallStatus(e);case"wallet_sendCalls":return await this.sendCalls(e)}return this.namespace.methods.includes(e.request.method)?await this.client.request(e):this.getHttpProvider().request(e.request)}updateNamespace(e){this.namespace=Object.assign(this.namespace,e)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(parseInt(e),t);let r=this.chainId;this.chainId=parseInt(e),this.events.emit(y9,{currentCaipChainId:`${this.name}:${e}`,previousCaipChainId:`${this.name}:${r}`})}requestAccounts(){return this.getAccounts()}getDefaultChain(){if(this.chainId)return this.chainId.toString();if(this.namespace.defaultChain)return this.namespace.defaultChain;let e=this.namespace.chains[0];if(!e)throw Error("ChainId not found");return e.split(":")[1]}createHttpProvider(e,t){return new df(new yL(t||ml(`${this.name}:${e}`,this.namespace,this.client.core.projectId),mm("disableProviderPing")))}setHttpProvider(e,t){let r=this.createHttpProvider(e,t);r&&(this.httpProviders[e]=r)}createHttpProviders(){let e={};return this.namespace.chains.forEach(t=>{var r;let i=parseInt(t.includes(":")?t.split(":")[1]:t);e[i]=this.createHttpProvider(i,null==(r=this.namespace.rpcMap)?void 0:r[t])}),e}getAccounts(){let e=this.namespace.accounts;return e?[...new Set(e.filter(e=>e.split(":")[1]===this.chainId.toString()).map(e=>e.split(":")[2]))]:[]}getHttpProvider(e){let t=e||this.chainId;return this.httpProviders[t]||(this.httpProviders=mH(mJ({},this.httpProviders),mW({[t]:this.createHttpProvider(t)})),this.httpProviders[t])}async handleSwitchChain(e){var t,r;let i=e.request.params?null==(t=e.request.params[0])?void 0:t.chainId:"0x0",s=parseInt(i=i.startsWith("0x")?i:`0x${i}`,16);if(this.isChainApproved(s))this.setDefaultChain(`${s}`);else if(this.namespace.methods.includes("wallet_switchEthereumChain"))await this.client.request({topic:e.topic,request:{method:e.request.method,params:[{chainId:i}]},chainId:null==(r=this.namespace.chains)?void 0:r[0]}),this.setDefaultChain(`${s}`);else throw Error(`Failed to switch to chain 'eip155:${s}'. The chain is not approved or the wallet does not support 'wallet_switchEthereumChain' method.`);return null}isChainApproved(e){return this.namespace.chains.includes(`${this.name}:${e}`)}async getCapabilities(e){var t,r,i,s,n;let o,a=null==(r=null==(t=e.request)?void 0:t.params)?void 0:r[0],l=(null==(s=null==(i=e.request)?void 0:i.params)?void 0:s[1])||[];if(!a)throw Error("Missing address parameter in `wallet_getCapabilities` request");let c=this.client.session.get(e.topic),h=(null==(n=c?.sessionProperties)?void 0:n.capabilities)||{},u=l.length>0?l.join(","):`0x${this.chainId.toString(16)}`,f=`${a}${u}`,d=h?.[f];if(d)return d;try{o=((e,t,r)=>{let{sessionProperties:i={},scopedProperties:s={}}=e,n={};if(!fj(s)&&!fj(i))return;let o=mC(i);for(let e of r){let r=mA(e);
24if(!r)continue;n[m_(r)]=o;let i=s?.[`${mO}:${r}`];if(i){let e=i?.[`${mO}:${r}:${t}`];n[m_(r)]=mS(mS({},n[m_(r)]),mC(e||i))}}for(let[e,t]of Object.entries(n))0===Object.keys(t).length&&delete n[e];return Object.keys(n).length>0?n:void 0})(c,a,l)}catch(e){console.warn("Failed to extract capabilities from session",e)}if(o)return o;let p=await this.client.request(e);try{let t,r,i,s;await this.client.session.update(e.topic,{sessionProperties:(i=mJ({},c.sessionProperties||{}),s={capabilities:(t=mJ({},h||{}),r={[f]:p},mH(t,mW(r)))},mH(i,mW(s)))})}catch(e){console.warn("Failed to update session with capabilities",e)}return p}async getCallStatus(e){var t,r,i;let s=this.client.session.get(e.topic),n=null==(t=s.sessionProperties)?void 0:t.bundler_name;if(n){let t=this.getBundlerUrl(e.chainId,n);try{return await this.getUserOperationReceipt(t,e)}catch(e){console.warn("Failed to fetch call status from bundler",e,t)}}let o=null==(r=s.sessionProperties)?void 0:r.bundler_url;if(o)try{return await this.getUserOperationReceipt(o,e)}catch(e){console.warn("Failed to fetch call status from custom bundler",e,o)}let a=await mV({resultId:null==(i=e.request.params)?void 0:i[0],storage:this.storage});if(a)try{return await mq(a,this.getHttpProvider.bind(this))}catch(e){console.warn("Failed to fetch call status from stored send calls",e,a)}if(this.namespace.methods.includes(e.request.method))return await this.client.request(e);throw Error("Fetching call status not approved by the wallet.")}async getUserOperationReceipt(e,t){var r;let i=new URL(e),s=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(di("eth_getUserOperationReceipt",[null==(r=t.request.params)?void 0:r[0]]))});if(!s.ok)throw Error(`Failed to fetch user operation receipt - ${s.status}`);return await s.json()}getBundlerUrl(e,t){return`${y5}?projectId=${this.client.core.projectId}&chainId=${e}&bundler=${t}`}async sendCalls(e){var t,r,i;let s=await this.client.request(e),n=null==(t=e.request.params)?void 0:t[0],o=s?.id,a=s?.capabilities||{},l=null==(r=a?.caip345)?void 0:r.caip2,c=null==(i=a?.caip345)?void 0:i.transactionHashes;return o&&l&&null!=c&&c.length&&await mz({sendCalls:{request:n,result:s},storage:this.storage}),s}}var m1=Object.defineProperty,m2=(e,t,r)=>{let i;return(i="symbol"!=typeof t?t+"":t)in e?m1(e,i,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[i]=r};class m3{constructor(e){m2(this,"name",y6),m2(this,"client"),m2(this,"httpProviders"),m2(this,"events"),m2(this,"namespace"),m2(this,"chainId"),this.namespace=e.namespace,this.events=mm("events"),this.client=mm("client"),this.chainId=this.getDefaultChain(),this.name=this.getNamespaceName(),this.httpProviders=this.createHttpProviders()}updateNamespace(e){this.namespace.chains=[...new Set((this.namespace.chains||[]).concat(e.chains||[]))],this.namespace.accounts=[...new Set((this.namespace.accounts||[]).concat(e.accounts||[]))],this.namespace.methods=[...new Set((this.namespace.methods||[]).concat(e.methods||[]))],this.namespace.events=[...new Set((this.namespace.events||[]).concat(e.events||[]))],this.httpProviders=this.createHttpProviders()}requestAccounts(){return this.getAccounts()}request(e){return this.namespace.methods.includes(e.request.method)?this.client.request(e):this.getHttpProvider(e.chainId).request(e.request)}setDefaultChain(e,t){this.httpProviders[e]||this.setHttpProvider(e,t);let r=this.chainId;this.chainId=e,this.events.emit(y9,{currentCaipChainId:`${this.name}:${e}`,previousCaipChainId:`${this.name}:${r}`})}getDefaultChain(){if(this.chainId)return this.chainId;if(this.namespace.defaultChain)return this.namespace.defaultChain;let e=this.namespace.chains[0];if(!e)throw Error("ChainId not found");return e.split(":")[1]}getNamespaceName(){let e=this.namespace.chains[0];if(!e)throw Error("ChainId not found");return aL(e).namespace}getAccounts(){let e=this.namespace.accounts;return e?[...new Set(e.filter(e=>e.split(":")[1]===this.chainId.toString()).map(e=>e.split(":")[2]))]:[]}createHttpProviders(){var e,t;let r={};return null==(t=null==(e=this.namespace)?void 0:e.accounts)||t.forEach(e
24=>{var t,i;let s=aL(e),n=null==(i=null==(t=this.namespace)?void 0:t.rpcMap)?void 0:i[`${s.namespace}:${s.reference}`];r[s.reference]=this.createHttpProvider(e,n)}),r}getHttpProvider(e){let t=aL(e).reference,r=this.httpProviders[t];if(typeof r>"u")throw Error(`JSON-RPC provider for ${e} not found`);return r}setHttpProvider(e,t){let r=this.createHttpProvider(e,t);r&&(this.httpProviders[e]=r)}createHttpProvider(e,t){return new df(new yL(t||ml(e,this.namespace,this.client.core.projectId),mm("disableProviderPing")))}}var m8=Object.defineProperty,m6=Object.defineProperties,m5=Object.getOwnPropertyDescriptors,m4=Object.getOwnPropertySymbols,m9=Object.prototype.hasOwnProperty,m7=Object.prototype.propertyIsEnumerable,be=(e,t,r)=>t in e?m8(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,bt=(e,t)=>{for(var r in t||(t={}))m9.call(t,r)&&be(e,r,t[r]);if(m4)for(var r of m4(t))m7.call(t,r)&&be(e,r,t[r]);return e},br=(e,t,r)=>be(e,"symbol"!=typeof t?t+"":t,r);class bi{constructor(e){var t,r;br(this,"client"),br(this,"namespaces"),br(this,"optionalNamespaces"),br(this,"sessionProperties"),br(this,"scopedProperties"),br(this,"events",new y.default),br(this,"rpcProviders",{}),br(this,"session"),br(this,"providerOpts"),br(this,"logger"),br(this,"uri"),br(this,"disableProviderPing",!1),br(this,"connectParams"),this.providerOpts=e,this.logger=f0({logger:null!=(t=e.logger)?t:y1,name:null!=(r=this.providerOpts.name)?r:y2}),this.disableProviderPing=e?.disableProviderPing||!1}static async init(e){let t=new bi(e);return await t.initialize(),t}async request(e,t,r){let[i,s]=this.validateChain(t);if(!this.session)throw Error("Please call connect() before request()");return await this.getProvider(i).request({request:bt({},e),chainId:`${i}:${s}`,topic:this.session.topic,expiry:r})}sendAsync(e,t,r,i){let s=new Date().getTime();this.request(e,r,i).then(e=>t(null,ds(s,e))).catch(e=>t(e,void 0))}async enable(){if(!this.client)throw Error("Sign Client not initialized");return this.session||await this.connect({namespaces:this.namespaces,optionalNamespaces:this.optionalNamespaces,sessionProperties:this.sessionProperties,scopedProperties:this.scopedProperties}),await this.requestAccounts()}async disconnect(){var e;if(!this.session)throw Error("Please call connect() before enable()");await this.client.disconnect({topic:null==(e=this.session)?void 0:e.topic,reason:aF("USER_DISCONNECTED")}),await this.cleanup()}async connect(e){if(!this.client)throw Error("Sign Client not initialized");if(this.connectParams=e,this.setNamespaces(e),this.cleanupPendingPairings(),!e.skipPairing)return await this.pair(e.pairingTopic)}async authenticate(e,t){if(!this.client)throw Error("Sign Client not initialized");this.setNamespaces(e),await this.cleanupPendingPairings();let{uri:r,response:i}=await this.client.authenticate(e,t);r&&(this.uri=r,this.events.emit("display_uri",r));let s=await i();if(this.session=s.session,this.session){let e=mp(this.session.namespaces);this.namespaces=mu(this.namespaces,e),await this.persist("namespaces",this.namespaces),this.onConnect()}return s}on(e,t){this.events.on(e,t)}once(e,t){this.events.once(e,t)}removeListener(e,t){this.events.removeListener(e,t)}off(e,t){this.events.off(e,t)}get isWalletConnect(){return!0}async pair(e){var t,r;let{uri:i,approval:s}=await this.client.connect({pairingTopic:e,requiredNamespaces:this.namespaces,optionalNamespaces:this.optionalNamespaces,sessionProperties:this.sessionProperties,scopedProperties:this.scopedProperties,authentication:null==(t=this.connectParams)?void 0:t.authentication,walletPay:null==(r=this.connectParams)?void 0:r.walletPay});i&&(this.uri=i,this.events.emit("display_uri",i));let n=await s();this.session=n;let o=mp(n.namespaces);return this.namespaces=mu(this.namespaces,o),await this.persist("namespaces",this.namespaces),await this.persist("optionalNamespaces",this.optionalNamespaces),this.onConnect(),this.session}setDefaultChain(e,t){try{if(!this.session)return;let[r,i]=this.validateChain(e),s=this.getProvider(r);s?s.setDefaultChain(i,t):this.session&&this.logger.warn(`Provider for namespace '${r}' not found in setDefaultChain`)}catch(e){if(!/Please call connect/.test(e.message))throw e}}async cleanupPendingPairings(e={}){try{this.logger.info("Cleaning up inactive pairings...");let t=this.client.pairing.getAll();if(!fk(t))return;for(let r of t)e.deletePairings?this.client.core.expirer.set(r.topic,0):await this.client.core.relayer.subscriber.unsubscribe(r.topic);this.logger.info(`Inactive pairings cleared: ${t.length}`)}catch(e){this.logger.warn(e,"Failed to cleanup pending pairings")}}abortPairingAttempt(){this.logger.warn("abortPairingAttempt is deprecated. This is now a no-op.")}async checkStorage(){this.namespaces=await this.getFromStore("namespaces")||{},this.optionalNamespaces=await this.getFromStore("optionalNamespaces")||{},this.session&&this.createProviders()}async initialize(){this.logger.trace("Initialized"),await this.createClient(),await this.checkStorage(),this.registerEventListeners()}async createClient(){var e,t;if(this.client=this.providerOpts.client||await yA.init({core:this.providerOpts.core,logger:this.providerOpts.logger||y1,relayUrl:this.providerOpts.relayUrl||"wss://relay.walletconnect.org",projectId:this.providerOpts.projectId,metadata:this.providerOpts.metadata,storageOptions:this.providerOpts.storageOptions,storage:this.providerOpts.storage,name:this.providerOpts.name,customStoragePrefix:this.providerOpts.customStoragePrefix,telemetryEnabled:this.providerOpts.telemetryEnabled}),this.providerOpts.session)try{this.session=this.client.session.get(this.providerOpts.session.topic)}catch(r){throw this.logger.error(r,"Failed to get session"),Error(`The provided session: ${null==(t=null==(e=this.providerOpts)?void 0:e.session)?void 0:t.topic} doesn't exist in the Sign client`)}else{let e=this.client.session.getAll();this.session=e[0]}this.logger.trace("SignClient Initialized")}createProviders(){if(!this.client)throw Error("Sign Client not initialized");if(!this.session)throw Error("Session not initialized. Please call connect() before enable()");let e=[...new Set(Object.keys(this.session.namespaces).map(e=>fB(e)))];mb("client",this.client),mb("events",this.events),mb("disableProviderPing",this.disableProviderPing),e.forEach(e
24=>{if(!this.session)return;let t=function(e,t){let r=Object.keys(t.namespaces).filter(t=>t.includes(e));if(!r.length)return[];let i=[];return r.forEach(e=>{let r=t.namespaces[e].accounts;i.push(...r)}),i}(e,this.session);if(t?.length===0)return;let r=mc(t),i=m6(bt({},mu(this.namespaces,this.optionalNamespaces)[e]),m5({accounts:t,chains:r}));"eip155"===e?this.rpcProviders[e]=new m0({namespace:i}):this.rpcProviders[e]=new m3({namespace:i})})}registerEventListeners(){if(typeof this.client>"u")throw Error("Sign Client is not initialized");this.client.on("session_ping",e=>{var t;let{topic:r}=e;r===(null==(t=this.session)?void 0:t.topic)&&this.events.emit("session_ping",e)}),this.client.on("session_event",e=>{var t;let{params:r,topic:i}=e;if(i!==(null==(t=this.session)?void 0:t.topic))return;let{event:s}=r;if("accountsChanged"===s.name){let e=s.data;e&&fk(e)&&this.events.emit("accountsChanged",e.map(md))}else if("chainChanged"===s.name){let e=r.chainId,t=r.event.data,i=fB(e),s=mg(e)!==mg(t)?`${i}:${mg(t)}`:e;this.onChainChanged({currentCaipChainId:s})}else this.events.emit(s.name,s.data);this.events.emit("session_event",e)}),this.client.on("session_update",({topic:e,params:t})=>{var r,i;if(e!==(null==(r=this.session)?void 0:r.topic))return;let{namespaces:s}=t,n=null==(i=this.client)?void 0:i.session.get(e);this.session=m6(bt({},n),m5({namespaces:s})),this.onSessionUpdate(),this.events.emit("session_update",{topic:e,params:t})}),this.client.on("session_delete",async e=>{var t;e.topic===(null==(t=this.session)?void 0:t.topic)&&(await this.cleanup(),this.events.emit("session_delete",e),this.events.emit("disconnect",m6(bt({},aF("USER_DISCONNECTED")),m5({data:e.topic}))))}),this.on(y9,e=>{this.onChainChanged(m6(bt({},e),m5({internal:!0})))})}getProvider(e){return this.rpcProviders[e]||this.rpcProviders[y6]}onSessionUpdate(){Object.keys(this.rpcProviders).forEach(e=>{var t;this.getProvider(e).updateNamespace(null==(t=this.session)?void 0:t.namespaces[e])})}setNamespaces(e){let{namespaces:t={},optionalNamespaces:r={},sessionProperties:i,scopedProperties:s}=e;this.optionalNamespaces=mu(t,r),this.sessionProperties=i,this.scopedProperties=s}validateChain(e){let[t,r]=e?.split(":")||["",""];if(!this.namespaces||!Object.keys(this.namespaces).length)return[t,r];if(t&&!Object.keys(this.namespaces||{}).map(e=>fB(e)).includes(t))throw Error(`Namespace '${t}' is not configured. Please call connect() first with namespace config.`);if(t&&r)return[t,r];let i=fB(Object.keys(this.namespaces)[0]),s=this.rpcProviders[i].getDefaultChain();return[i,s]}async requestAccounts(){let[e]=this.validateChain();return await this.getProvider(e).requestAccounts()}async onChainChanged({currentCaipChainId:e,previousCaipChainId:t,internal:r=!1}){if(!this.namespaces)return;let[i,s]=this.validateChain(e);if(s){if(this.updateNamespaceChain(i,s),r)this.events.emit("chainChanged",s),this.emitAccountsChangedOnChainChange({namespace:i,currentCaipChainId:e,previousCaipChainId:t});else{let e=this.getProvider(i);e?e.setDefaultChain(s):this.session&&this.logger.warn(`Provider for namespace '${i}' not found during chain change`)}await this.persist("namespaces",this.namespaces)}}emitAccountsChangedOnChainChange({namespace:e,currentCaipChainId:t,previousCaipChainId:r}){var i,s;try{if(r===t)return;let n=null==(s=null==(i=this.session)?void 0:i.namespaces[e])?void 0:s.accounts;if(!n)return;let o=n.filter(e=>e.includes(`${t}:`)).map(md);if(!fk(o))return;this.events.emit("accountsChanged",o)}catch(e){this.logger.warn(e,"Failed to emit accountsChanged on chain change")}}updateNamespaceChain(e,t){if(!this.namespaces)return;let r=this.namespaces[e]?e:`${e}:${t}`;this.namespaces[r]?this.namespaces[r]&&(this.namespaces[r].defaultChain=t):this.namespaces[r]={chains:[],methods:[],events:[],defaultChain:t}}onConnect(){this.createProviders(),this.events.emit("connect",{session:this.session})}async cleanup(){this.connectParams=void 0,this.namespaces=void 0,this.optionalNamespaces=void 0,this.sessionProperties=void 0,await this.deleteFromStore("namespaces"),await this.deleteFromStore("optionalNamespaces"),await this.deleteFromStore("sessionProperties"),this.session=void 0,this.cleanupPendingPairings({deletePairings:!0}),await this.cleanupStorage()}async persist(e,t){var r;let i=(null==(r=this.session)?void 0:r.topic)||"";await this.client.core.storage.setItem(`${y3}/${e}${i}`,t)}async getFromStore(e){var t;let r=(null==(t=this.session)?void 0:t.topic)||"";return await this.client.core.storage.getItem(`${y3}/${e}${r}`)}async deleteFromStore(e){var t;let r=(null==(t=this.session)?void 0:t.topic)||"";await this.client.core.storage.removeItem(`${y3}/${e}${r}`)}async cleanupStorage(){var e;try{if((null==(e=this.client)?void 0:e.session.length)>0)return;for(let e of(await this.client.core.storage.getKeys()))e.startsWith(y3)&&await this.client.core.storage.removeItem(e)}catch(e){this.logger.warn(e,"Failed to cleanup storage")}}}e.s(["default",0,bi],971342);var bs=e.i(401564),bn=e.i(150576),bo=e.i(979484),ba=e.i(960398),bl=e.i(971080),bc=e.i(149454),bh=e.i(653157),bu=e.i(803468),bf=e.i(82283),bd=e.i(221728),bp=e.i(811424),bg=e.i(564126),by=e.i(227302);let bm=null,bb={getSIWX:()=>bf.OptionsController.state.siwx,async initializeIfEnabled(e=ba.ChainController.getActiveCaipAddress()){let t=bf.OptionsController.state.siwx;if(!(t&&e))return;let[r,i,s]=e.split(":");if(ba.ChainController.checkIfSupportedNetwork(r,`${r}:${i}`))try{if(bf.OptionsController.state.remoteFeatures?.emailCapture){let e=ba.ChainController.getAccountData(r)?.user;await bu.ModalController.open({view:"DataCapture",data:{email:e?.email??void 0}});return}if(bm&&await bm,(await t.getSessions(`${r}:${i}`,s)).length)return;await bu.ModalController.open({view:"SIWXSignMessage"})}catch(e){console.error("SIWXUtil:initializeIfEnabled",e),bh.EventsController.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:this.getSIWXEventProperties(e)}),await bl.ConnectionController._getClient()?.disconnect().catch(console.error),bd.RouterController.reset("Connect"),bp.SnackController.showError("A problem occurred while trying initialize authentication")}},async isAuthenticated(e=ba.ChainController.getActiveCaipAddress()){if
24(!bf.OptionsController.state.siwx||!e)return!0;let{chainNamespace:t,chainId:r,address:i}=bn.ParseUtil.parseCaipAddress(e),s=`${t}:${r}`;return(await bb.getSessions({address:i,caipNetworkId:s})).length>0},async requestSignMessage(){let e=bf.OptionsController.state.siwx,t=by.CoreHelperUtil.getPlainAddress(ba.ChainController.getActiveCaipAddress()),r=(0,bg.getActiveCaipNetwork)();if(!e)throw Error("SIWX is not enabled");if(!t)throw Error("No ActiveCaipAddress found");if(!r)throw Error("No ActiveCaipNetwork or client found");try{let i=await e.createMessage({chainId:r.caipNetworkId,accountAddress:t}),s=i.toString(),n="";e.signMessage?n=await e.signMessage({message:s,chainId:r.caipNetworkId,accountAddress:t}):(bc.ConnectorController.getConnectorId(r.chainNamespace)===bs.ConstantsUtil.CONNECTOR_ID.AUTH&&bd.RouterController.pushTransactionStack({}),n=await bl.ConnectionController.signMessage(s)||""),await e.addSession({data:i,message:s,signature:n}),ba.ChainController.setLastConnectedSIWECaipNetwork(r),bu.ModalController.close(),bh.EventsController.sendEvent({type:"track",event:"SIWX_AUTH_SUCCESS",properties:this.getSIWXEventProperties()})}catch(e){bu.ModalController.state.open&&"ApproveTransaction"!==bd.RouterController.state.view||await bu.ModalController.open({view:"SIWXSignMessage"}),bp.SnackController.showError("Error signing message"),bh.EventsController.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:this.getSIWXEventProperties(e)}),console.error("SWIXUtil:requestSignMessage",e)}},async cancelSignMessage(){try{let e=this.getSIWX();if(e?.getRequired?.()){let t=ba.ChainController.getLastConnectedSIWECaipNetwork();if(t){let r=await e?.getSessions(t?.caipNetworkId,by.CoreHelperUtil.getPlainAddress(ba.ChainController.getActiveCaipAddress())||"");r&&r.length>0?await ba.ChainController.switchActiveNetwork(t):await bl.ConnectionController.disconnect()}else await bl.ConnectionController.disconnect()}else bu.ModalController.close();bu.ModalController.close(),bh.EventsController.sendEvent({event:"CLICK_CANCEL_SIWX",type:"track",properties:this.getSIWXEventProperties()})}catch(e){console.error("SIWXUtil:cancelSignMessage",e)}},async getAllSessions(){let e=this.getSIWX(),t=ba.ChainController.getAllRequestedCaipNetworks(),r=[];return await Promise.all(t.map(async t=>{let i=await e?.getSessions(t.caipNetworkId,by.CoreHelperUtil.getPlainAddress(ba.ChainController.getActiveCaipAddress())||"");i&&r.push(...i)})),r},async getSessions(e){let t=bf.OptionsController.state.siwx,r=e?.address;if(!r){let e=ba.ChainController.getActiveCaipAddress();r=by.CoreHelperUtil.getPlainAddress(e)}let i=e?.caipNetworkId;if(!i){let e=ba.ChainController.getActiveCaipNetwork();i=e?.caipNetworkId}return t&&r&&i?t.getSessions(i,r):[]},async isSIWXCloseDisabled(){let e=this.getSIWX();if(e){let t="ApproveTransaction"===bd.RouterController.state.view,r="SIWXSignMessage"===bd.RouterController.state.view;
24if(t||r)return e.getRequired?.()&&0===(await this.getSessions()).length}return!1},async authConnectorAuthenticate({authConnector:e,chainId:t,socialUri:r,preferredAccountType:i,chainNamespace:s}){let n=bb.getSIWX(),o=(0,bg.getActiveCaipNetwork)();if(!n||!s.includes(bs.ConstantsUtil.CHAIN.EVM)||bf.OptionsController.state.remoteFeatures?.emailCapture){let s=await e.connect({chainId:t,socialUri:r,preferredAccountType:i});return{address:s.address,chainId:s.chainId,accounts:s.accounts}}let a=`${s}:${t}`,l=await n.createMessage({chainId:a,accountAddress:"<<AccountAddress>>"}),c={accountAddress:l.accountAddress,chainId:l.chainId,domain:l.domain,uri:l.uri,version:l.version,nonce:l.nonce,notBefore:l.notBefore,statement:l.statement,resources:l.resources,requestId:l.requestId,issuedAt:l.issuedAt,expirationTime:l.expirationTime,serializedMessage:l.toString()},h=await e.connect({chainId:t,socialUri:r,siwxMessage:c,preferredAccountType:i});if(c.accountAddress=h.address,c.serializedMessage=h.message||"",h.signature&&h.message){let e=bb.addEmbeddedWalletSession(c,h.message,h.signature);await e}return ba.ChainController.setLastConnectedSIWECaipNetwork(o),{address:h.address,chainId:h.chainId,accounts:h.accounts}},async addEmbeddedWalletSession(e,t,r){if(bm)return bm;let i=bb.getSIWX();return i?bm=i.addSession({data:e,message:t,signature:r}).finally(()=>{bm=null}):Promise.resolve()},async universalProviderAuthenticate({universalProvider:e,chains:t,methods:r}){let i=bb.getSIWX(),s=(0,bg.getActiveCaipNetwork)(),n=new Set(t.map(e=>e.split(":")[0]));if(!i||1!==n.size||!n.has("eip155"))return!1;let o=await i.createMessage({chainId:(0,bg.getActiveCaipNetwork)()?.caipNetworkId||"",accountAddress:""}),a=await e.authenticate({nonce:o.nonce,domain:o.domain,uri:o.uri,exp:o.expirationTime,iat:o.issuedAt,nbf:o.notBefore,requestId:o.requestId,version:o.version,resources:o.resources,statement:o.statement,chainId:o.chainId,methods:r,chains:[o.chainId,...t.filter(e=>e!==o.chainId)]});bp.SnackController.showLoading("Authenticating...",{autoClose:!1});let l={...a.session.peer.metadata,name:a.session.peer.metadata.name,icon:a.session.peer.metadata.icons?.[0],type:"WALLET_CONNECT"};if(ba.ChainController.setAccountProp("connectedWalletInfo",l,Array.from(n)[0]),a?.auths?.length){let t=a.auths.map(t=>{let r=e.client.formatAuthMessage({request:t.p,iss:t.p.iss});return{data:{...t.p,accountAddress:t.p.iss.split(":").slice(-1).join(""),chainId:t.p.iss.split(":").slice(2,4).join(":"),uri:t.p.aud??"",version:t.p.version||o.version,expirationTime:t.p.exp,issuedAt:t.p.iat,notBefore:t.p.nbf},message:r,signature:t.s.s,cacao:t}});try{await i.setSessions(t),s&&ba.ChainController.setLastConnectedSIWECaipNetwork(s),bh.EventsController.sendEvent({type:"track",event:"SIWX_AUTH_SUCCESS",properties:bb.getSIWXEventProperties()})}catch(t){throw console.error("SIWX:universalProviderAuth - failed to set sessions",t),bh.EventsController.sendEvent({type:"track",event:"SIWX_AUTH_ERROR",properties:bb.getSIWXEventProperties(t)}),await e.disconnect().catch(console.error),t}finally{bp.SnackController.hide()}}return!0},getSIWXEventProperties(e){let t=ba.ChainController.state.activeChain;if(!t)throw Error("SIWXUtil:getSIWXEventProperties - namespace is required");return{network:ba.ChainController.state.activeCaipNetwork?.caipNetworkId||"",isSmartAccount:(0,bg.getPreferredAccountType)(t)===bo.W3mFrameRpcConstants.ACCOUNT_TYPES.SMART_ACCOUNT,message:e?by.CoreHelperUtil.parseError(e):void 0}},async clearSessions(){let e=this.getSIWX();e&&await e.setSessions([])}};e.s(["SIWXUtil",0,bb],218454)},465487,590404,e=>{"use strict";e.i(812207);var t=e.i(108285),r=e.i(654479);e.i(374576);var i=e.i(56350),s=e.i(221728);e.i(404041);var n=e.i(645975),o=t,a=e.i(653157);e.i(225416),e.i(550230);var l=e.i(305840),c=e.i(162611);let h=c.css`
25  :host {
26    display: block;
27  }
28
29  div.container {
30    position: absolute;
31    bottom: 0;
32    left: 0;
33    right: 0;
34    overflow: hidden;
35    height: auto;
36    display: block;
37  }
38
39  div.container[status='hide'] {
40    animation: fade-out;
41    animation-duration: var(--apkt-duration-dynamic);
42    animation-timing-function: ${({easings:e})=>e["ease-out-power-2"]};
43    animation-fill-mode: both;
44    animation-delay: 0s;
45  }
46
47  div.container[status='show'] {
48    animation: fade-in;
49    animation-duration: var(--apkt-duration-dynamic);
50    animation-timing-function: ${({easings:e})=>e["ease-out-power-2"]};
51    animation-fill-mode: both;
52    animation-delay: var(--apkt-duration-dynamic);
53  }
54
55  @keyframes fade-in {
56    from {
57      opacity: 0;
58      filter: blur(6px);
59    }
60    to {
61      opacity: 1;
62      filter: blur(0px);
63    }
64  }
65
66  @keyframes fade-out {
67    from {
68      opacity: 1;
69      filter: blur(0px);
70    }
71    to {
72      opacity: 0;
73      filter: blur(6px);
74    }
75  }
76`;var u=function(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
76);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};let f=class extends o.LitElement{constructor(){super(...arguments),this.resizeObserver=void 0,this.unsubscribe=[],this.status="hide",this.view=s.RouterController.state.view}firstUpdated(){this.status=l.HelpersUtil.hasFooter()?"show":"hide",this.unsubscribe.push(s.RouterController.subscribeKey("view",e=>{this.view=e,this.status=l.HelpersUtil.hasFooter()?"show":"hide","hide"===this.status&&document.documentElement.style.setProperty("--apkt-footer-height","0px")})),this.resizeObserver=new ResizeObserver(e=>{for(let t of e)if(t.target===this.getWrapper()){let e=`${t.contentRect.height}px`;document.documentElement.style.setProperty("--apkt-footer-height",e)}}),this.resizeObserver.observe(this.getWrapper())}render(){return r.html`
77      <div class="container" status=${this.status}>${this.templatePageContainer()}</div>
78    `}templatePageContainer(){return l.HelpersUtil.hasFooter()?r.html` ${this.templateFooter()}`:null}templateFooter(){switch(this.view){case"Networks":return this.templateNetworksFooter();case"Connect":case"ConnectWallets":case"OnRampFiatSelect":case"OnRampTokenSelect":return r.html`<w3m-legal-footer></w3m-legal-footer>`;case"OnRampProviders":return r.html`<w3m-onramp-providers-footer></w3m-onramp-providers-footer>`;default:return null}}templateNetworksFooter(){return r.html` <wui-flex
79      class="footer-in"
80      padding="3"
81      flexDirection="column"
82      gap="3"
83      alignItems="center"
84    >
85      <wui-text variant="md-regular" color="secondary" align="center">
86        Your connected wallet may not support some of the networks available for this dApp
87      </wui-text>
88      <wui-link @click=${this.onNetworkHelp.bind(this)}>
89        <wui-icon size="sm" color="accent-primary" slot="iconLeft" name="helpCircle"></wui-icon>
90        What is a network
91      </wui-link>
92    </wui-flex>`}onNetworkHelp(){a.EventsController.sendEvent({type:"track",event:"CLICK_NETWORK_HELP"}),s.RouterController.push("WhatIsANetwork")}getWrapper(){return this.shadowRoot?.querySelector("div.container")}};f.styles=[h],u([(0,i.state)()],f.prototype,"status",void 0),u([(0,i.state)()],f.prototype,"view",void 0),f=u([(0,n.customElement)("w3m-footer")],f),e.s(["W3mFooter",0,f],590404);let d=c.css`
93  :host {
94    display: block;
95    width: inherit;
96  }
97`;var p=function(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};let g=class extends t.LitElement{constructor(){super(),this.unsubscribe=[],this.viewState=s.RouterController.state.view,this.history=s.RouterController.state.history.join(","),this.unsubscribe.push(s.RouterController.subscribeKey("view",()=>{this.history=s.RouterController.state.history.join(","),document.documentElement.style.setProperty("--apkt-duration-dynamic","var(--apkt-durations-lg)")}))}disconnectedCallback(){this.unsubscribe.forEach(e=>e()),document.documentElement.style.setProperty("--apkt-duration-dynamic","0s")}render(){return r.html`${this.templatePageContainer()}`}templatePageContainer(){return r.html`<w3m-router-container
98      history=${this.history}
99      .setView=${()=>{this.viewState=s.RouterController.state.view}}
100    >
101      ${this.viewTemplate(this.viewState)}
102    </w3m-router-container>`}viewTemplate(e){switch(e){case"AccountSettings":return r.html`<w3m-account-settings-view></w3m-account-settings-view>`;case"Account":return r.html`<w3m-account-view></w3m-account-view>`;case"AllWallets":return r.html`<w3m-all-wallets-view></w3m-all-wallets-view>`;case"ApproveTransaction":return r.html`<w3m-approve-transaction-view></w3m-approve-transaction-view>`;case"BuyInProgress":return r.html`<w3m-buy-in-progress-view></w3m-buy-in-progress-view>`;case"ChooseAccountName":return r.html`<w3m-choose-account-name-view></w3m-choose-account-name-view>`;case"Connect":default:return r.html`<w3m-connect-view></w3m-connect-view>`;case"Create":return r.html`<w3m-connect-view walletGuide="explore"></w3m-connect-view>`;case"ConnectingWalletConnect":return r.html`<w3m-connecting-wc-view></w3m-connecting-wc-view>`;case"ConnectingWalletConnectBasic":return r.html`<w3m-connecting-wc-basic-view></w3m-connecting-wc-basic-view>`;
102case"ConnectingExternal":return r.html`<w3m-connecting-external-view></w3m-connecting-external-view>`;case"ConnectingSiwe":return r.html`<w3m-connecting-siwe-view></w3m-connecting-siwe-view>`;case"ConnectWallets":return r.html`<w3m-connect-wallets-view></w3m-connect-wallets-view>`;case"ConnectSocials":return r.html`<w3m-connect-socials-view></w3m-connect-socials-view>`;case"ConnectingSocial":return r.html`<w3m-connecting-social-view></w3m-connecting-social-view>`;case"DataCapture":return r.html`<w3m-data-capture-view></w3m-data-capture-view>`;case"DataCaptureOtpConfirm":return r.html`<w3m-data-capture-otp-confirm-view></w3m-data-capture-otp-confirm-view>`;case"Downloads":return r.html`<w3m-downloads-view></w3m-downloads-view>`;case"EmailLogin":return r.html`<w3m-email-login-view></w3m-email-login-view>`;case"EmailVerifyOtp":return r.html`<w3m-email-verify-otp-view></w3m-email-verify-otp-view>`;case"EmailVerifyDevice":return r.html`<w3m-email-verify-device-view></w3m-email-verify-device-view>`;case"GetWallet":return r.html`<w3m-get-wallet-view></w3m-get-wallet-view>`;case"Networks":return r.html`<w3m-networks-view></w3m-networks-view>`;case"SwitchNetwork":return r.html`<w3m-network-switch-view></w3m-network-switch-view>`;case"ProfileWallets":return r.html`<w3m-profile-wallets-view></w3m-profile-wallets-view>`;case"Transactions":return r.html`<w3m-transactions-view></w3m-transactions-view>`;case"OnRampProviders":return r.html`<w3m-onramp-providers-view></w3m-onramp-providers-view>`;case"OnRampTokenSelect":return r.html`<w3m-onramp-token-select-view></w3m-onramp-token-select-view>`;case"OnRampFiatSelect":return r.html`<w3m-onramp-fiat-select-view></w3m-onramp-fiat-select-view>`;case"UpgradeEmailWallet":return r.html`<w3m-upgrade-wallet-view></w3m-upgrade-wallet-view>`;case"UpdateEmailWallet":return r.html`<w3m-update-email-wallet-view></w3m-update-email-wallet-view>`;case"UpdateEmailPrimaryOtp":return r.html`<w3m-update-email-primary-otp-view></w3m-update-email-primary-otp-view>`;case"UpdateEmailSecondaryOtp":return r.html`<w3m-update-email-secondary-otp-view></w3m-update-email-secondary-otp-view>`;case"UnsupportedChain":return r.html`<w3m-unsupported-chain-view></w3m-unsupported-chain-view>`;case"Swap":return r.html`<w3m-swap-view></w3m-swap-view>`;case"SwapSelectToken":return r.html`<w3m-swap-select-token-view></w3m-swap-select-token-view>`;case"SwapPreview":return r.html`<w3m-swap-preview-view></w3m-swap-preview-view>`;case"WalletSend":return r.html`<w3m-wallet-send-view></w3m-wallet-send-view>`;case"WalletSendSelectToken":return r.html`<w3m-wallet-send-select-token-view></w3m-wallet-send-select-token-view>`;case"WalletSendPreview":return r.html`<w3m-wallet-send-preview-view></w3m-wallet-send-preview-view>`;case"WalletSendConfirmed":return r.html`<w3m-send-confirmed-view></w3m-send-confirmed-view>`;case"WhatIsABuy":return r.html`<w3m-what-is-a-buy-view></w3m-what-is-a-buy-view>`;case"WalletReceive":return r.html`<w3m-wallet-receive-view></w3m-wallet-receive-view>`;case"WalletCompatibleNetworks":return r.html`<w3m-wallet-compatible-networks-view></w3m-wallet-compatible-networks-view>`;case"WhatIsAWallet":return r.html`<w3m-what-is-a-wallet-view></w3m-what-is-a-wallet-view>`;case"ConnectingMultiChain":return r.html`<w3m-connecting-multi-chain-view></w3m-connecting-multi-chain-view>`;case"WhatIsANetwork":return r.html`<w3m-what-is-a-network-view></w3m-what-is-a-network-view>`;case"ConnectingFarcaster":return r.html`<w3m-connecting-farcaster-view></w3m-connecting-farcaster-view>`;case"SwitchActiveChain":return r.html`<w3m-switch-active-chain-view></w3m-switch-active-chain-view>`;case"RegisterAccountName":return r.html`<w3m-register-account-name-view></w3m-register-account-name-view>`;case"RegisterAccountNameSuccess":return r.html`<w3m-register-account-name-success-view></w3m-register-account-name-success-view>`;case"SmartSessionCreated":return r.html`<w3m-smart-session-created-view></w3m-smart-session-created-view>`;case"SmartSessionList":return r.html`<w3m-smart-session-list-view></w3m-smart-session-list-view>`;case"SIWXSignMessage":return r.html`<w3m-siwx-sign-message-view></w3m-siwx-sign-message-view>`;case"Pay":return r.html`<w3m-pay-view></w3m-pay-view>`;case"PayLoading":return r.html`<w3m-pay-loading-view></w3m-pay-loading-view>`;case"PayQuote":return r.html`<w3m-pay-quote-view></w3m-pay-quote-view>`;case"FundWallet":return r.html`<w3m-fund-wallet-view></w3m-fund-wallet-view>`;case"PayWithExchange":return r.html`<w3m-deposit-from-exchange-view></w3m-deposit-from-exchange-view>`;case"PayWithExchangeSelectAsset":return r.html`<w3m-deposit-from-exchange-select-asset-view></w3m-deposit-from-exchange-select-asset-view>`;case"UsageExceeded":return r.html`<w3m-usage-exceeded-view></w3m-usage-exceeded-view>`;case"SmartAccountSettings":return r.html`<w3m-smart-account-settings-view></w3m-smart-account-settings-view>`}}};g.styles=[d],p([(0,i.state)()],g.prototype,"viewState",void 0),p([(0,i.state)()],g.prototype,"history",void 0),g=p([(0,n.customElement)("w3m-router")],g),e.s(["W3mRouter",0,g],465487)},988016,e=>{"use strict";e.i(630352),e.s([])},987789,e=>{"use strict";e.i(812207);var t=e.i(108285),r=e.i(654479);e.i(374576);var i=e.i(120119);e.i(234051);var s=e.i(829389);e.i(852634),e.i(839009),e.i(912190);var n=e.i(459088),o=e.i(645975),a=t;e.i(720226);var l=e.i(162611);let c=l.css`
103  :host {
104    position: relative;
105    border-radius: ${({borderRadius:e})=>e[2]};
106    width: 40px;
107    height: 40px;
108    overflow: hidden;
109    background: ${({tokens:e})=>e.theme.foregroundPrimary};
110    display: flex;
111    justify-content: center;
112    align-items: center;
113    flex-wrap: wrap;
114    column-gap: ${({spacing:e})=>e[1]};
115    padding: ${({spacing:e})=>e[1]};
116  }
117
118  :host > wui-wallet-image {
119    width: 14px;
120    height: 14px;
121    border-radius: 2px;
122  }
123`;var h=function(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};let u=class extends a.LitElement{constructor(){super(...arguments),this.walletImages=[]}render(){let e=this.walletImages.length<4;return r.html`${this.walletImages.slice(0,4).map(({src:e,walletName:t})=>r.html`
124          <wui-wallet-image
125            size="sm"
126            imageSrc=${e}
127            name=${(0,s.ifDefined)(t)}
128          ></wui-wallet-image>
129        `)}
130    ${e?[...Array(4-this.walletImages.length)].map(()=>r.html` <wui-wallet-image size="sm" name=""></wui-wallet-image>`):null} `}};u.styles=[n.resetStyles,c],h([(0,i.property)({type:Array})],u.prototype,"walletImages",void 0),u=h([(0,o.customElement)("wui-all-wallets-image")],u),e.i(630352);let f=l.css`
131  :host {
132    width: 100%;
133  }
134
135  button {
136    column-gap: ${({spacing:e})=>e[2]};
137    padding: ${({spacing:e})=>e[3]};
138    width: 100%;
139    background-color: transparent;
140    border-radius: ${({borderRadius:e})=>e[4]};
141    color: ${({tokens:e})=>e.theme.textPrimary};
142  }
143
144  button > wui-wallet-image {
145    background: ${({tokens:e})=>e.theme.foregroundSecondary};
146  }
147
148  button > wui-text:nth-child(2) {
149    display: flex;
150    flex: 1;
151  }
152
153  button:hover:enabled {
154    background-color: ${({tokens:e})=>e.theme.foregroundPrimary};
155  }
156
157  button[data-all-wallets='true'] {
158    background-color: ${({tokens:e})=>e.theme.foregroundPrimary};
159  }
160
161  button[data-all-wallets='true']:hover:enabled {
162    background-color: ${({tokens:e})=>e.theme.foregroundSecondary};
163  }
164
165  button:focus-visible:enabled {
166    background-color: ${({tokens:e})=>e.theme.foregroundPrimary};
167    box-shadow: 0 0 0 4px ${({tokens:e})=>e.core.foregroundAccent020};
168  }
169
170  button:disabled {
171    background-color: ${({tokens:e})=>e.theme.foregroundPrimary};
172    opacity: 0.5;
173    cursor: not-allowed;
174  }
175
176  button:disabled > wui-tag {
177    background-color: ${({tokens:e})=>e.core.glass010};
178    color: ${({tokens:e})=>e.theme.foregroundTertiary};
179  }
180
181  wui-flex.namespace-icon {
182    width: 16px;
183    height: 16px;
184    border-radius: ${({borderRadius:e})=>e.round};
185    background-color: ${({tokens:e})=>e.theme.foregroundSecondary};
186    box-shadow: 0 0 0 2px ${({tokens:e})=>e.theme.backgroundPrimary};
187    transition: box-shadow var(--apkt-durations-lg) var(--apkt-easings-ease-out-power-2);
188  }
189
190  button:hover:enabled wui-flex.namespace-icon {
191    box-shadow: 0 0 0 2px ${({tokens:e})=>e.theme.foregroundPrimary};
192  }
193
194  wui-flex.namespace-icon > wui-icon {
195    width: 10px;
196    height: 10px;
197  }
198
199  wui-flex.namespace-icon:not(:first-child) {
200    margin-left: -4px;
201  }
202`;var d=function(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};let p={eip155:"ethereum",solana:"solana",bip122:"bitcoin",polkadot:void 0,cosmos:void 0,sui:void 0,stacks:void 0,ton:"ton",tron:"tron"},g=class extends t.LitElement{constructor(){super(...arguments),this.walletImages=[],this.imageSrc="",this.name="",this.size="md",this.tabIdx=void 0,this.namespaces=[],this.disabled=!1,this.showAllWallets=!1,this.loading=!1,this.loadingSpinnerColor="accent-100"}render(){return this.dataset.size=this.size,r.html`
203      <button
204        ?disabled=${this.disabled}
205        data-all-wallets=${this.showAllWallets}
206        tabindex=${(0,s.ifDefined)(this.tabIdx)}
207      >
208        ${this.templateAllWallets()} ${this.templateWalletImage()}
209        <wui-flex flexDirection="column" justifyContent="center" alignItems="flex-start" gap="1">
210          <wui-text variant="lg-regular" color="inherit">${this.name}</wui-text>
211          ${this.templateNamespaces()}
212        </wui-flex>
213        ${this.templateStatus()}
214        <wui-icon name="chevronRight" size="lg" color="default"></wui-icon>
215      </button>
216    `}templateNamespaces(){return this.namespaces?.length?r.html`<wui-flex alignItems="center" gap="0">
217        ${this.namespaces.map((e,t)=>r.html`<wui-flex
218              alignItems="center"
219              justifyContent="center"
220              zIndex=${(this.namespaces?.length??0)*2-t}
221              class="namespace-icon"
222            >
223              <wui-icon
224                name=${(0,s.ifDefined)(p[e])}
225                size="sm"
226                color="default"
227              ></wui-icon>
228            </wui-flex>`)}
229      </wui-flex>`:null}templateAllWallets(){return this.showAllWallets&&this.imageSrc?r.html` <wui-all-wallets-image .imageeSrc=${this.imageSrc}> </wui-all-wallets-image> `:this.showAllWallets&&this.walletIcon?r.html` <wui-wallet-image .walletIcon=${this.walletIcon} size="sm"> </wui-wallet-image> `:null}templateWalletImage(){return!this.showAllWallets&&this.imageSrc?r.html`<wui-wallet-image
230        size=${(0,s.ifDefined)("sm"===this.size?"sm":"md")}
231        imageSrc=${this.imageSrc}
232        name=${this.name}
233      ></wui-wallet-image>`:this.showAllWallets||this.imageSrc?null:r.html`<wui-wallet-image size="sm" name=${this.name}></wui-wallet-image>`}templateStatus(){return this.loading?r.html`<wui-loading-spinner size="lg" color="accent-primary"></wui-loading-spinner>`:this.tagLabel&&this.tagVariant?r.html`<wui-tag size="sm" variant=${this.tagVariant}>${this.tagLabel}</wui-tag>`:null}};g.styles=[n.resetStyles,n.elementStyles,f],d([(0,i.property)({type:Array})],g.prototype,"walletImages",void 0),d([(0,i.property)()],g.prototype,"imageSrc",void 0),d([(0,i.property)()],g.prototype,"name",void 0),d([(0,i.property)()],g.prototype,"size",void 0),d([(0,i.property)()],g.prototype,"tagLabel",void 0),d([(0,i.property)()],g.prototype,"tagVariant",void 0),d([(0,i.property)()],g.prototype,"walletIcon",void 0),d([(0,i.property)()],g.prototype,"tabIdx",void 0),d([(0,i.property)({type:Array})],g.prototype,"namespaces",void 0),d([(0,i.property)({type:Boolean})],g.prototype,"disabled",void 0),d([(0,i.property)({type:Boolean})],g.prototype,"showAllWallets",void 0),d([(0,i.property)({type:Boolean})],g.prototype,"loading",void 0),d([(0,i.property)({type:String})],g.prototype,"loadingSpinnerColor",void 0),g=d([(0,o.customElement)("wui-list-wallet")],g),e.s([],987789)}]);

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.